From ed35cb4a6394a5121724fc8a2c0ace6eb5be9de1 Mon Sep 17 00:00:00 2001 From: Chet Ramey Date: Wed, 7 Dec 2011 09:24:27 -0500 Subject: [PATCH] commit bash-20080529 snapshot --- CWRU/CWRU.chlog | 61 +- CWRU/CWRU.chlog~ | 66 + doc/Makefile.in | 1 + doc/bash.0 | 1402 +++--- doc/bash.1 | 13 +- doc/bash.1~ | 11 +- doc/bash.html | 485 ++- doc/bash.pdf | Bin 268650 -> 273937 bytes doc/bash.ps | 10196 ++++++++++++++++++++++---------------------- doc/bashref.aux | 102 +- doc/bashref.bt | 31 +- doc/bashref.bts | 32 +- doc/bashref.cp | 48 +- doc/bashref.cps | 48 +- doc/bashref.dvi | Bin 615548 -> 624132 bytes doc/bashref.fn | 193 +- doc/bashref.fns | 193 +- doc/bashref.html | 4460 +++++++++---------- doc/bashref.info | 616 +-- doc/bashref.log | 124 +- doc/bashref.pdf | Bin 545252 -> 551444 bytes doc/bashref.ps | 8397 ++++++++++++++++++------------------ doc/bashref.rw | 12 +- doc/bashref.rws | 12 +- doc/bashref.texi | 9 +- doc/bashref.texi~ | 22 +- doc/bashref.toc | 129 +- doc/bashref.vr | 14 +- doc/bashref.vrs | 14 +- doc/builtins.0 | 458 +- doc/builtins.ps | 2952 ++++++------- doc/rbash.ps | 2 +- doc/version.texi | 6 +- doc/version.texi~ | 4 +- externs.h | 1 + externs.h~ | 1 + jobs.c | 18 +- jobs.c~ | 19 +- jobs.h | 2 + parse.y | 562 ++- parse.y.save1 | 5512 ++++++++++++++++++++++++ parse.y~ | 561 ++- tests/trap.right | 2 - tests/trap.tests | 4 + tests/trap.tests~ | 86 + trap.c | 29 +- trap.c~ | 30 +- trap.h | 1 + 48 files changed, 22325 insertions(+), 14616 deletions(-) create mode 100644 parse.y.save1 create mode 100644 tests/trap.tests~ diff --git a/CWRU/CWRU.chlog b/CWRU/CWRU.chlog index 1e2214d4a..8682715eb 100644 --- a/CWRU/CWRU.chlog +++ b/CWRU/CWRU.chlog @@ -15916,8 +15916,7 @@ doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi 5/26 ---- -parse.y - - recognize new ;& and ;;& case action list terminator tokens and +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 @@ -15932,3 +15931,61 @@ execute_cmd.c 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 + + - 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 + + +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 diff --git a/CWRU/CWRU.chlog~ b/CWRU/CWRU.chlog~ index 64c42ca2b..1a438c5af 100644 --- a/CWRU/CWRU.chlog~ +++ b/CWRU/CWRU.chlog~ @@ -15913,3 +15913,69 @@ doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi - 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 + + - 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 + + +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 diff --git a/doc/Makefile.in b/doc/Makefile.in index 469987d7b..7af67ff3f 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -145,6 +145,7 @@ BASHREF_FILES = $(srcdir)/bashref.texi $(srcdir)/version.texi all: ps info dvi text html nodvi: ps info text html +everything: all pdf PSFILES = bash.ps bashbug.ps article.ps builtins.ps rbash.ps DVIFILES = bashref.dvi bashref.ps diff --git a/doc/bash.0 b/doc/bash.0 index a82dfd999..7dc069cb9 100644 --- a/doc/bash.0 +++ b/doc/bash.0 @@ -217,7 +217,7 @@ DDEEFFIINNIITTIIOONNSS ccoonnttrrooll ooppeerraattoorr A _t_o_k_e_n that performs a control function. It is one of the fol- lowing symbols: - |||| && &&&& ;; ;;;; (( )) || <> + |||| && &&&& ;; ;;;; (( )) || ||&& <> RREESSEERRVVEEDD WWOORRDDSS _R_e_s_e_r_v_e_d _w_o_r_d_s are words that have a special meaning to the shell. The @@ -240,14 +240,18 @@ SSHHEELLLL GGRRAAMMMMAARR the command is terminated by signal _n. PPiippeelliinneess - A _p_i_p_e_l_i_n_e is a sequence of one or more commands separated by the char- - acter ||. The format for a pipeline is: + A _p_i_p_e_l_i_n_e is a sequence of one or more commands separated by one of + the control operators || or ||&&. The format for a pipeline is: - [ttiimmee [--pp]] [ ! ] _c_o_m_m_a_n_d [ || _c_o_m_m_a_n_d_2 ... ] + [ttiimmee [--pp]] [ ! ] _c_o_m_m_a_n_d [ [|||||&&] _c_o_m_m_a_n_d_2 ... ] The standard output of _c_o_m_m_a_n_d is connected via a pipe to the standard input of _c_o_m_m_a_n_d_2. This connection is performed before any redirec- - tions specified by the command (see RREEDDIIRREECCTTIIOONN below). + tions specified by the command (see RREEDDIIRREECCTTIIOONN below). If ||&& is used, + the standard error of _c_o_m_m_a_n_d is connected to _c_o_m_m_a_n_d_2's standard input + through the pipe; it is shorthand for 22>>&&11 ||. This implicit redirect- + ion of the standard error is performed after any redirections specified + by the command. The return status of a pipeline is the exit status of the last command, unless the ppiippeeffaaiill option is enabled. If ppiippeeffaaiill is enabled, the @@ -432,10 +436,14 @@ SSHHEELLLL GGRRAAMMMMAARR substitution. If the shell option nnooccaasseemmaattcchh is enabled, the match is performed without regard to the case of alphabetic characters. When a match is found, the corresponding _l_i_s_t is - executed. After the first match, no subsequent matches are - attempted. The exit status is zero if no pattern matches. Oth- - erwise, it is the exit status of the last command executed in - _l_i_s_t. + executed. If the ;;;; operator is used, no subsequent matches are + attempted after the first pattern match. Using ;;&& in place of + ;;;; causes execution to continue with the _l_i_s_t associated with + the next set of patterns. Using ;;;;&& in place of ;;;; causes the + shell to test the next pattern list in the statement, if any, + and execute any associated _l_i_s_t on a successful match. The exit + status is zero if no pattern matches. Otherwise, it is the exit + status of the last command executed in _l_i_s_t. iiff _l_i_s_t; tthheenn _l_i_s_t_; [ eelliiff _l_i_s_t; tthheenn _l_i_s_t; ] ... [ eellssee _l_i_s_t; ] ffii The iiff _l_i_s_t is executed. If its exit status is zero, the tthheenn @@ -1226,12 +1234,18 @@ EEXXPPAANNSSIIOONN are not sorted; left to right order is preserved. For example, a{{d,c,b}}e expands into `ade ace abe'. - A sequence expression takes the form {{_x...._y}}, where _x and _y are either - integers or single characters. When integers are supplied, the expres- - sion expands to each number between _x and _y, inclusive. When charac- - ters are supplied, the expression expands to each character lexico- - graphically between _x and _y, inclusive. Note that both _x and _y must be - of the same type. + A sequence expression takes the form {{_x...._y[[...._i_n_c_r]]}}_, _w_h_e_r_e _x _a_n_d _y _a_r_e + _e_i_t_h_e_r _i_n_t_e_g_e_r_s _o_r _s_i_n_g_l_e _c_h_a_r_a_c_t_e_r_s_, _a_n_d _i_n_c_r_, _a_n _o_p_t_i_o_n_a_l _i_n_c_r_e_m_e_n_t_, + _i_s _a_n _i_n_t_e_g_e_r_. _W_h_e_n _i_n_t_e_g_e_r_s _a_r_e _s_u_p_p_l_i_e_d_, _t_h_e _e_x_p_r_e_s_s_i_o_n _e_x_p_a_n_d_s _t_o + _e_a_c_h _n_u_m_b_e_r _b_e_t_w_e_e_n _x _a_n_d _y_, _i_n_c_l_u_s_i_v_e_. _S_u_p_p_l_i_e_d _i_n_t_e_g_e_r_s _m_a_y _b_e _p_r_e_- + _f_i_x_e_d _w_i_t_h _0 _t_o _f_o_r_c_e _e_a_c_h _t_e_r_m _t_o _h_a_v_e _t_h_e _s_a_m_e _w_i_d_t_h_. _W_h_e_n _e_i_t_h_e_r _x + _o_r _y _b_e_g_i_n_s _w_i_t_h _a _z_e_r_o_, _t_h_e _s_h_e_l_l _a_t_t_e_m_p_t_s _t_o _f_o_r_c_e _a_l_l _g_e_n_e_r_a_t_e_d + _t_e_r_m_s _t_o _c_o_n_t_a_i_n _t_h_e _s_a_m_e _n_u_m_b_e_r _o_f _d_i_g_i_t_s_, _z_e_r_o_-_p_a_d_d_i_n_g _w_h_e_r_e _n_e_c_e_s_- + _s_a_r_y_. _W_h_e_n _c_h_a_r_a_c_t_e_r_s _a_r_e _s_u_p_p_l_i_e_d_, _t_h_e _e_x_p_r_e_s_s_i_o_n _e_x_p_a_n_d_s _t_o _e_a_c_h + _c_h_a_r_a_c_t_e_r _l_e_x_i_c_o_g_r_a_p_h_i_c_a_l_l_y _b_e_t_w_e_e_n _x _a_n_d _y_, _i_n_c_l_u_s_i_v_e_. _N_o_t_e _t_h_a_t _b_o_t_h + _x _a_n_d _y _m_u_s_t _b_e _o_f _t_h_e _s_a_m_e _t_y_p_e_. _W_h_e_n _t_h_e _i_n_c_r_e_m_e_n_t _i_s _s_u_p_p_l_i_e_d_, _i_t + _i_s _u_s_e_d _a_s _t_h_e _d_i_f_f_e_r_e_n_c_e _b_e_t_w_e_e_n _e_a_c_h _t_e_r_m_. _T_h_e _d_e_f_a_u_l_t _i_n_c_r_e_m_e_n_t _i_s + _1 _o_r _-_1 _a_s _a_p_p_r_o_p_r_i_a_t_e_. Brace expansion is performed before any other expansions, and any char- acters special to other expansions are preserved in the result. It is @@ -1560,39 +1574,44 @@ EEXXPPAANNSSIIOONN The special pattern characters have the following meanings: - ** Matches any string, including the null string. + ** Matches any string, including the null string. When the gglloobb-- + ssttaarr shell option is enabled, and ** is used in a filename expan- + sion context, two adjacent **s used as a single pattern will + match all files and zero or more directories and subdirectories. + If followed by a //, two adjacent **s will match only directories + and subdirectories. ?? Matches any single character. - [[......]] Matches any one of the enclosed characters. A pair of charac- + [[......]] Matches any one of the enclosed characters. A pair of charac- ters separated by a hyphen denotes a _r_a_n_g_e _e_x_p_r_e_s_s_i_o_n; any char- - acter that sorts between those two characters, inclusive, using - the current locale's collating sequence and character set, is - matched. If the first character following the [[ is a !! or a ^^ - then any character not enclosed is matched. The sorting order - of characters in range expressions is determined by the current - locale and the value of the LLCC__CCOOLLLLAATTEE shell variable, if set. - A -- may be matched by including it as the first or last charac- + acter that sorts between those two characters, inclusive, using + the current locale's collating sequence and character set, is + matched. If the first character following the [[ is a !! or a ^^ + then any character not enclosed is matched. The sorting order + of characters in range expressions is determined by the current + locale and the value of the LLCC__CCOOLLLLAATTEE shell variable, if set. + A -- may be matched by including it as the first or last charac- ter in the set. A ]] may be matched by including it as the first character in the set. - Within [[ and ]], _c_h_a_r_a_c_t_e_r _c_l_a_s_s_e_s can be specified using the - syntax [[::_c_l_a_s_s::]], where _c_l_a_s_s is one of the following classes + Within [[ and ]], _c_h_a_r_a_c_t_e_r _c_l_a_s_s_e_s can be specified using the + syntax [[::_c_l_a_s_s::]], where _c_l_a_s_s is one of the following classes defined in the POSIX standard: - aallnnuumm aallpphhaa aasscciiii bbllaannkk ccnnttrrll ddiiggiitt ggrraapphh lloowweerr pprriinntt ppuunncctt + aallnnuumm aallpphhaa aasscciiii bbllaannkk ccnnttrrll ddiiggiitt ggrraapphh lloowweerr pprriinntt ppuunncctt ssppaaccee uuppppeerr wwoorrdd xxddiiggiitt A character class matches any character belonging to that class. - The wwoorrdd character class matches letters, digits, and the char- + The wwoorrdd character class matches letters, digits, and the char- acter _. - Within [[ and ]], an _e_q_u_i_v_a_l_e_n_c_e _c_l_a_s_s can be specified using the - syntax [[==_c==]], which matches all characters with the same colla- - tion weight (as defined by the current locale) as the character + Within [[ and ]], an _e_q_u_i_v_a_l_e_n_c_e _c_l_a_s_s can be specified using the + syntax [[==_c==]], which matches all characters with the same colla- + tion weight (as defined by the current locale) as the character _c. Within [[ and ]], the syntax [[.._s_y_m_b_o_l..]] matches the collating sym- bol _s_y_m_b_o_l. If the eexxttgglloobb shell option is enabled using the sshhoopptt builtin, several - extended pattern matching operators are recognized. In the following + extended pattern matching operators are recognized. In the following description, a _p_a_t_t_e_r_n_-_l_i_s_t is a list of one or more patterns separated by a ||. Composite patterns may be formed using one or more of the fol- lowing sub-patterns: @@ -1610,48 +1629,48 @@ EEXXPPAANNSSIIOONN QQuuoottee RReemmoovvaall After the preceding expansions, all unquoted occurrences of the charac- - ters \\, '', and "" that did not result from one of the above expansions + ters \\, '', and "" that did not result from one of the above expansions are removed. RREEDDIIRREECCTTIIOONN - Before a command is executed, its input and output may be _r_e_d_i_r_e_c_t_e_d - using a special notation interpreted by the shell. Redirection may - also be used to open and close files for the current shell execution + Before a command is executed, its input and output may be _r_e_d_i_r_e_c_t_e_d + using a special notation interpreted by the shell. Redirection may + also be used to open and close files for the current shell execution environment. The following redirection operators may precede or appear anywhere within a _s_i_m_p_l_e _c_o_m_m_a_n_d or may follow a _c_o_m_m_a_n_d. Redirections are processed in the order they appear, from left to right. - In the following descriptions, if the file descriptor number is omit- - ted, and the first character of the redirection operator is <<, the re- - direction refers to the standard input (file descriptor 0). If the - first character of the redirection operator is >>, the redirection + In the following descriptions, if the file descriptor number is omit- + ted, and the first character of the redirection operator is <<, the re- + direction refers to the standard input (file descriptor 0). If the + first character of the redirection operator is >>, the redirection refers to the standard output (file descriptor 1). - The word following the redirection operator in the following descrip- - tions, unless otherwise noted, is subjected to brace expansion, tilde + The word following the redirection operator in the following descrip- + tions, unless otherwise noted, is subjected to brace expansion, tilde expansion, parameter expansion, command substitution, arithmetic expan- - sion, quote removal, pathname expansion, and word splitting. If it + sion, quote removal, pathname expansion, and word splitting. If it expands to more than one word, bbaasshh reports an error. - Note that the order of redirections is significant. For example, the + Note that the order of redirections is significant. For example, the command ls >> dirlist 2>>&&1 - directs both standard output and standard error to the file _d_i_r_l_i_s_t, + directs both standard output and standard error to the file _d_i_r_l_i_s_t, while the command ls 2>>&&1 >> dirlist - directs only the standard output to file _d_i_r_l_i_s_t, because the standard - error was duplicated as standard output before the standard output was + directs only the standard output to file _d_i_r_l_i_s_t, because the standard + error was duplicated as standard output before the standard output was redirected to _d_i_r_l_i_s_t. BBaasshh handles several filenames specially when they are used in redirec- tions, as described in the following table: //ddeevv//ffdd//_f_d - If _f_d is a valid integer, file descriptor _f_d is dupli- + If _f_d is a valid integer, file descriptor _f_d is dupli- cated. //ddeevv//ssttddiinn File descriptor 0 is duplicated. @@ -1661,22 +1680,22 @@ RREEDDIIRREECCTTIIOONN File descriptor 2 is duplicated. //ddeevv//ttccpp//_h_o_s_t//_p_o_r_t If _h_o_s_t is a valid hostname or Internet address, and _p_o_r_t - is an integer port number or service name, bbaasshh attempts + is an integer port number or service name, bbaasshh attempts to open a TCP connection to the corresponding socket. //ddeevv//uuddpp//_h_o_s_t//_p_o_r_t If _h_o_s_t is a valid hostname or Internet address, and _p_o_r_t - is an integer port number or service name, bbaasshh attempts + is an integer port number or service name, bbaasshh attempts to open a UDP connection to the corresponding socket. A failure to open or create a file causes the redirection to fail. - Redirections using file descriptors greater than 9 should be used with - care, as they may conflict with file descriptors the shell uses inter- + Redirections using file descriptors greater than 9 should be used with + care, as they may conflict with file descriptors the shell uses inter- nally. RReeddiirreeccttiinngg IInnppuutt Redirection of input causes the file whose name results from the expan- - sion of _w_o_r_d to be opened for reading on file descriptor _n, or the + sion of _w_o_r_d to be opened for reading on file descriptor _n, or the standard input (file descriptor 0) if _n is not specified. The general format for redirecting input is: @@ -1684,27 +1703,27 @@ RREEDDIIRREECCTTIIOONN [_n]<<_w_o_r_d RReeddiirreeccttiinngg OOuuttppuutt - Redirection of output causes the file whose name results from the + Redirection of output causes the file whose name results from the expansion of _w_o_r_d to be opened for writing on file descriptor _n, or the standard output (file descriptor 1) if _n is not specified. If the file - does not exist it is created; if it does exist it is truncated to zero + does not exist it is created; if it does exist it is truncated to zero size. The general format for redirecting output is: [_n]>>_w_o_r_d - If the redirection operator is >>, and the nnoocclloobbbbeerr option to the sseett - builtin has been enabled, the redirection will fail if the file whose - name results from the expansion of _w_o_r_d exists and is a regular file. + If the redirection operator is >>, and the nnoocclloobbbbeerr option to the sseett + builtin has been enabled, the redirection will fail if the file whose + name results from the expansion of _w_o_r_d exists and is a regular file. If the redirection operator is >>||, or the redirection operator is >> and the nnoocclloobbbbeerr option to the sseett builtin command is not enabled, the re- direction is attempted even if the file named by _w_o_r_d exists. AAppppeennddiinngg RReeddiirreecctteedd OOuuttppuutt - Redirection of output in this fashion causes the file whose name - results from the expansion of _w_o_r_d to be opened for appending on file - descriptor _n, or the standard output (file descriptor 1) if _n is not + Redirection of output in this fashion causes the file whose name + results from the expansion of _w_o_r_d to be opened for appending on file + descriptor _n, or the standard output (file descriptor 1) if _n is not specified. If the file does not exist it is created. The general format for appending output is: @@ -1713,11 +1732,11 @@ RREEDDIIRREECCTTIIOONN RReeddiirreeccttiinngg SSttaannddaarrdd OOuuttppuutt aanndd SSttaannddaarrdd EErrrroorr - BBaasshh allows both the standard output (file descriptor 1) and the stan- - dard error output (file descriptor 2) to be redirected to the file - whose name is the expansion of _w_o_r_d with this construct. + This construct allows both the standard output (file descriptor 1) and + the standard error output (file descriptor 2) to be redirected to the + file whose name is the expansion of _w_o_r_d. - There are two formats for redirecting standard output and standard + There are two formats for redirecting standard output and standard error: &&>>_w_o_r_d @@ -1729,10 +1748,24 @@ RREEDDIIRREECCTTIIOONN >>_w_o_r_d 2>>&&1 + + AAppppeennddiinngg SSttaannddaarrdd OOuuttppuutt aanndd SSttaannddaarrdd EErrrroorr + This construct allows both the standard output (file descriptor 1) and + the standard error output (file descriptor 2) to be appended to the + file whose name is the expansion of _w_o_r_d. + + The format for appending standard output and standard error is: + + &&>>>>_w_o_r_d + + This is semantically equivalent to + + >>>>_w_o_r_d 2>>&&1 + HHeerree DDooccuummeennttss - This type of redirection instructs the shell to read input from the - current source until a line containing only _w_o_r_d (with no trailing - blanks) is seen. All of the lines read up to that point are then used + This type of redirection instructs the shell to read input from the + current source until a line containing only _w_o_r_d (with no trailing + blanks) is seen. All of the lines read up to that point are then used as the standard input for a command. The format of here-documents is: @@ -1741,18 +1774,18 @@ RREEDDIIRREECCTTIIOONN _h_e_r_e_-_d_o_c_u_m_e_n_t _d_e_l_i_m_i_t_e_r - No parameter expansion, command substitution, arithmetic expansion, or + No parameter expansion, command substitution, arithmetic expansion, or pathname expansion is performed on _w_o_r_d. If any characters in _w_o_r_d are - quoted, the _d_e_l_i_m_i_t_e_r is the result of quote removal on _w_o_r_d, and the - lines in the here-document are not expanded. If _w_o_r_d is unquoted, all - lines of the here-document are subjected to parameter expansion, com- - mand substitution, and arithmetic expansion. In the latter case, the - character sequence \\<> is ignored, and \\ must be used to quote + quoted, the _d_e_l_i_m_i_t_e_r is the result of quote removal on _w_o_r_d, and the + lines in the here-document are not expanded. If _w_o_r_d is unquoted, all + lines of the here-document are subjected to parameter expansion, com- + mand substitution, and arithmetic expansion. In the latter case, the + character sequence \\<> is ignored, and \\ must be used to quote the characters \\, $$, and ``. If the redirection operator is <<<<--, then all leading tab characters are - stripped from input lines and the line containing _d_e_l_i_m_i_t_e_r. This - allows here-documents within shell scripts to be indented in a natural + stripped from input lines and the line containing _d_e_l_i_m_i_t_e_r. This + allows here-documents within shell scripts to be indented in a natural fashion. HHeerree SSttrriinnggss @@ -1768,20 +1801,20 @@ RREEDDIIRREECCTTIIOONN [_n]<<&&_w_o_r_d is used to duplicate input file descriptors. If _w_o_r_d expands to one or - more digits, the file descriptor denoted by _n is made to be a copy of - that file descriptor. If the digits in _w_o_r_d do not specify a file - descriptor open for input, a redirection error occurs. If _w_o_r_d evalu- - ates to --, file descriptor _n is closed. If _n is not specified, the + more digits, the file descriptor denoted by _n is made to be a copy of + that file descriptor. If the digits in _w_o_r_d do not specify a file + descriptor open for input, a redirection error occurs. If _w_o_r_d evalu- + ates to --, file descriptor _n is closed. If _n is not specified, the standard input (file descriptor 0) is used. The operator [_n]>>&&_w_o_r_d - is used similarly to duplicate output file descriptors. If _n is not - specified, the standard output (file descriptor 1) is used. If the - digits in _w_o_r_d do not specify a file descriptor open for output, a re- - direction error occurs. As a special case, if _n is omitted, and _w_o_r_d + is used similarly to duplicate output file descriptors. If _n is not + specified, the standard output (file descriptor 1) is used. If the + digits in _w_o_r_d do not specify a file descriptor open for output, a re- + direction error occurs. As a special case, if _n is omitted, and _w_o_r_d does not expand to one or more digits, the standard output and standard error are redirected as described previously. @@ -1790,7 +1823,7 @@ RREEDDIIRREECCTTIIOONN [_n]<<&&_d_i_g_i_t-- - moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard + moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard input (file descriptor 0) if _n is not specified. _d_i_g_i_t is closed after being duplicated to _n. @@ -1798,7 +1831,7 @@ RREEDDIIRREECCTTIIOONN [_n]>>&&_d_i_g_i_t-- - moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard + moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard output (file descriptor 1) if _n is not specified. OOppeenniinngg FFiillee DDeessccrriippttoorrss ffoorr RReeaaddiinngg aanndd WWrriittiinngg @@ -1806,108 +1839,108 @@ RREEDDIIRREECCTTIIOONN [_n]<<>>_w_o_r_d - causes the file whose name is the expansion of _w_o_r_d to be opened for - both reading and writing on file descriptor _n, or on file descriptor 0 + causes the file whose name is the expansion of _w_o_r_d to be opened for + both reading and writing on file descriptor _n, or on file descriptor 0 if _n is not specified. If the file does not exist, it is created. AALLIIAASSEESS - _A_l_i_a_s_e_s allow a string to be substituted for a word when it is used as - the first word of a simple command. The shell maintains a list of - aliases that may be set and unset with the aalliiaass and uunnaalliiaass builtin - commands (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). The first word of each - simple command, if unquoted, is checked to see if it has an alias. If - so, that word is replaced by the text of the alias. The characters //, - $$, ``, and == and any of the shell _m_e_t_a_c_h_a_r_a_c_t_e_r_s or quoting characters + _A_l_i_a_s_e_s allow a string to be substituted for a word when it is used as + the first word of a simple command. The shell maintains a list of + aliases that may be set and unset with the aalliiaass and uunnaalliiaass builtin + commands (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). The first word of each + simple command, if unquoted, is checked to see if it has an alias. If + so, that word is replaced by the text of the alias. The characters //, + $$, ``, and == and any of the shell _m_e_t_a_c_h_a_r_a_c_t_e_r_s or quoting characters listed above may not appear in an alias name. The replacement text may - contain any valid shell input, including shell metacharacters. The - first word of the replacement text is tested for aliases, but a word - that is identical to an alias being expanded is not expanded a second - time. This means that one may alias llss to llss --FF, for instance, and - bbaasshh does not try to recursively expand the replacement text. If the - last character of the alias value is a _b_l_a_n_k, then the next command + contain any valid shell input, including shell metacharacters. The + first word of the replacement text is tested for aliases, but a word + that is identical to an alias being expanded is not expanded a second + time. This means that one may alias llss to llss --FF, for instance, and + bbaasshh does not try to recursively expand the replacement text. If the + last character of the alias value is a _b_l_a_n_k, then the next command word following the alias is also checked for alias expansion. Aliases are created and listed with the aalliiaass command, and removed with the uunnaalliiaass command. - There is no mechanism for using arguments in the replacement text. If - arguments are needed, a shell function should be used (see FFUUNNCCTTIIOONNSS + There is no mechanism for using arguments in the replacement text. If + arguments are needed, a shell function should be used (see FFUUNNCCTTIIOONNSS below). - Aliases are not expanded when the shell is not interactive, unless the - eexxppaanndd__aalliiaasseess shell option is set using sshhoopptt (see the description of + Aliases are not expanded when the shell is not interactive, unless the + eexxppaanndd__aalliiaasseess shell option is set using sshhoopptt (see the description of sshhoopptt under SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). - The rules concerning the definition and use of aliases are somewhat - confusing. BBaasshh always reads at least one complete line of input - before executing any of the commands on that line. Aliases are - expanded when a command is read, not when it is executed. Therefore, - an alias definition appearing on the same line as another command does - not take effect until the next line of input is read. The commands + The rules concerning the definition and use of aliases are somewhat + confusing. BBaasshh always reads at least one complete line of input + before executing any of the commands on that line. Aliases are + expanded when a command is read, not when it is executed. Therefore, + an alias definition appearing on the same line as another command does + not take effect until the next line of input is read. The commands following the alias definition on that line are not affected by the new - alias. This behavior is also an issue when functions are executed. - Aliases are expanded when a function definition is read, not when the - function is executed, because a function definition is itself a com- + alias. This behavior is also an issue when functions are executed. + Aliases are expanded when a function definition is read, not when the + function is executed, because a function definition is itself a com- pound command. As a consequence, aliases defined in a function are not - available until after that function is executed. To be safe, always - put alias definitions on a separate line, and do not use aalliiaass in com- + available until after that function is executed. To be safe, always + put alias definitions on a separate line, and do not use aalliiaass in com- pound commands. For almost every purpose, aliases are superseded by shell functions. FFUUNNCCTTIIOONNSS - A shell function, defined as described above under SSHHEELLLL GGRRAAMMMMAARR, - stores a series of commands for later execution. When the name of a - shell function is used as a simple command name, the list of commands + A shell function, defined as described above under SSHHEELLLL GGRRAAMMMMAARR, + stores a series of commands for later execution. When the name of a + shell function is used as a simple command name, the list of commands associated with that function name is executed. Functions are executed - in the context of the current shell; no new process is created to - interpret them (contrast this with the execution of a shell script). - When a function is executed, the arguments to the function become the + in the context of the current shell; no new process is created to + interpret them (contrast this with the execution of a shell script). + When a function is executed, the arguments to the function become the positional parameters during its execution. The special parameter ## is - updated to reflect the change. Special parameter 0 is unchanged. The - first element of the FFUUNNCCNNAAMMEE variable is set to the name of the func- - tion while the function is executing. All other aspects of the shell - execution environment are identical between a function and its caller + updated to reflect the change. Special parameter 0 is unchanged. The + first element of the FFUUNNCCNNAAMMEE variable is set to the name of the func- + tion while the function is executing. All other aspects of the shell + execution environment are identical between a function and its caller with the exception that the DDEEBBUUGG and RREETTUURRNN traps (see the description - of the ttrraapp builtin under SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below) are not inher- - ited unless the function has been given the ttrraaccee attribute (see the - description of the ddeeccllaarree builtin below) or the --oo ffuunnccttrraaccee shell - option has been enabled with the sseett builtin (in which case all func- + of the ttrraapp builtin under SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below) are not inher- + ited unless the function has been given the ttrraaccee attribute (see the + description of the ddeeccllaarree builtin below) or the --oo ffuunnccttrraaccee shell + option has been enabled with the sseett builtin (in which case all func- tions inherit the DDEEBBUUGG and RREETTUURRNN traps). - Variables local to the function may be declared with the llooccaall builtin + Variables local to the function may be declared with the llooccaall builtin command. Ordinarily, variables and their values are shared between the function and its caller. - If the builtin command rreettuurrnn is executed in a function, the function - completes and execution resumes with the next command after the func- - tion call. Any command associated with the RREETTUURRNN trap is executed + If the builtin command rreettuurrnn is executed in a function, the function + completes and execution resumes with the next command after the func- + tion call. Any command associated with the RREETTUURRNN trap is executed before execution resumes. When a function completes, the values of the - positional parameters and the special parameter ## are restored to the + positional parameters and the special parameter ## are restored to the values they had prior to the function's execution. - Function names and definitions may be listed with the --ff option to the + Function names and definitions may be listed with the --ff option to the ddeeccllaarree or ttyyppeesseett builtin commands. The --FF option to ddeeccllaarree or ttyyppee-- - sseett will list the function names only (and optionally the source file - and line number, if the eexxttddeebbuugg shell option is enabled). Functions - may be exported so that subshells automatically have them defined with - the --ff option to the eexxppoorrtt builtin. A function definition may be - deleted using the --ff option to the uunnsseett builtin. Note that shell + sseett will list the function names only (and optionally the source file + and line number, if the eexxttddeebbuugg shell option is enabled). Functions + may be exported so that subshells automatically have them defined with + the --ff option to the eexxppoorrtt builtin. A function definition may be + deleted using the --ff option to the uunnsseett builtin. Note that shell functions and variables with the same name may result in multiple iden- - tically-named entries in the environment passed to the shell's chil- + tically-named entries in the environment passed to the shell's chil- dren. Care should be taken in cases where this may cause a problem. - Functions may be recursive. No limit is imposed on the number of + Functions may be recursive. No limit is imposed on the number of recursive calls. AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN - The shell allows arithmetic expressions to be evaluated, under certain - circumstances (see the lleett and ddeeccllaarree builtin commands and AArriitthhmmeettiicc - EExxppaannssiioonn). Evaluation is done in fixed-width integers with no check - for overflow, though division by 0 is trapped and flagged as an error. - The operators and their precedence, associativity, and values are the - same as in the C language. The following list of operators is grouped - into levels of equal-precedence operators. The levels are listed in + The shell allows arithmetic expressions to be evaluated, under certain + circumstances (see the lleett and ddeeccllaarree builtin commands and AArriitthhmmeettiicc + EExxppaannssiioonn). Evaluation is done in fixed-width integers with no check + for overflow, though division by 0 is trapped and flagged as an error. + The operators and their precedence, associativity, and values are the + same as in the C language. The following list of operators is grouped + into levels of equal-precedence operators. The levels are listed in order of decreasing precedence. _i_d++++ _i_d---- @@ -1935,39 +1968,39 @@ AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN _e_x_p_r_1 ,, _e_x_p_r_2 comma - Shell variables are allowed as operands; parameter expansion is per- + Shell variables are allowed as operands; parameter expansion is per- formed before the expression is evaluated. Within an expression, shell - variables may also be referenced by name without using the parameter - expansion syntax. A shell variable that is null or unset evaluates to + variables may also be referenced by name without using the parameter + expansion syntax. A shell variable that is null or unset evaluates to 0 when referenced by name without using the parameter expansion syntax. - The value of a variable is evaluated as an arithmetic expression when - it is referenced, or when a variable which has been given the _i_n_t_e_g_e_r + The value of a variable is evaluated as an arithmetic expression when + it is referenced, or when a variable which has been given the _i_n_t_e_g_e_r attribute using ddeeccllaarree --ii is assigned a value. A null value evaluates - to 0. A shell variable need not have its integer attribute turned on + to 0. A shell variable need not have its integer attribute turned on to be used in an expression. Constants with a leading 0 are interpreted as octal numbers. A leading - 0x or 0X denotes hexadecimal. Otherwise, numbers take the form - [_b_a_s_e_#]n, where _b_a_s_e is a decimal number between 2 and 64 representing + 0x or 0X denotes hexadecimal. Otherwise, numbers take the form + [_b_a_s_e_#]n, where _b_a_s_e is a decimal number between 2 and 64 representing the arithmetic base, and _n is a number in that base. If _b_a_s_e_# is omit- - ted, then base 10 is used. The digits greater than 9 are represented - by the lowercase letters, the uppercase letters, @, and _, in that - order. If _b_a_s_e is less than or equal to 36, lowercase and uppercase + ted, then base 10 is used. The digits greater than 9 are represented + by the lowercase letters, the uppercase letters, @, and _, in that + order. If _b_a_s_e is less than or equal to 36, lowercase and uppercase letters may be used interchangeably to represent numbers between 10 and 35. - Operators are evaluated in order of precedence. Sub-expressions in - parentheses are evaluated first and may override the precedence rules + Operators are evaluated in order of precedence. Sub-expressions in + parentheses are evaluated first and may override the precedence rules above. CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS - Conditional expressions are used by the [[[[ compound command and the - tteesstt and [[ builtin commands to test file attributes and perform string - and arithmetic comparisons. Expressions are formed from the following - unary or binary primaries. If any _f_i_l_e argument to one of the pri- + Conditional expressions are used by the [[[[ compound command and the + tteesstt and [[ builtin commands to test file attributes and perform string + and arithmetic comparisons. Expressions are formed from the following + unary or binary primaries. If any _f_i_l_e argument to one of the pri- maries is of the form _/_d_e_v_/_f_d_/_n, then file descriptor _n is checked. If - the _f_i_l_e argument to one of the primaries is one of _/_d_e_v_/_s_t_d_i_n, - _/_d_e_v_/_s_t_d_o_u_t, or _/_d_e_v_/_s_t_d_e_r_r, file descriptor 0, 1, or 2, respectively, + the _f_i_l_e argument to one of the primaries is one of _/_d_e_v_/_s_t_d_i_n, + _/_d_e_v_/_s_t_d_o_u_t, or _/_d_e_v_/_s_t_d_e_r_r, file descriptor 0, 1, or 2, respectively, is checked. Unless otherwise specified, primaries that operate on files follow sym- @@ -2014,20 +2047,20 @@ CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS --SS _f_i_l_e True if _f_i_l_e exists and is a socket. --NN _f_i_l_e - True if _f_i_l_e exists and has been modified since it was last + True if _f_i_l_e exists and has been modified since it was last read. _f_i_l_e_1 -nntt _f_i_l_e_2 - True if _f_i_l_e_1 is newer (according to modification date) than + True if _f_i_l_e_1 is newer (according to modification date) than _f_i_l_e_2, or if _f_i_l_e_1 exists and _f_i_l_e_2 does not. _f_i_l_e_1 -oott _f_i_l_e_2 - True if _f_i_l_e_1 is older than _f_i_l_e_2, or if _f_i_l_e_2 exists and _f_i_l_e_1 + True if _f_i_l_e_1 is older than _f_i_l_e_2, or if _f_i_l_e_2 exists and _f_i_l_e_1 does not. _f_i_l_e_1 --eeff _f_i_l_e_2 - True if _f_i_l_e_1 and _f_i_l_e_2 refer to the same device and inode num- + True if _f_i_l_e_1 and _f_i_l_e_2 refer to the same device and inode num- bers. --oo _o_p_t_n_a_m_e - True if shell option _o_p_t_n_a_m_e is enabled. See the list of - options under the description of the --oo option to the sseett + True if shell option _o_p_t_n_a_m_e is enabled. See the list of + options under the description of the --oo option to the sseett builtin below. --zz _s_t_r_i_n_g True if the length of _s_t_r_i_n_g is zero. @@ -2043,111 +2076,115 @@ CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS True if the strings are not equal. _s_t_r_i_n_g_1 << _s_t_r_i_n_g_2 - True if _s_t_r_i_n_g_1 sorts before _s_t_r_i_n_g_2 lexicographically in the + True if _s_t_r_i_n_g_1 sorts before _s_t_r_i_n_g_2 lexicographically in the current locale. _s_t_r_i_n_g_1 >> _s_t_r_i_n_g_2 - True if _s_t_r_i_n_g_1 sorts after _s_t_r_i_n_g_2 lexicographically in the + True if _s_t_r_i_n_g_1 sorts after _s_t_r_i_n_g_2 lexicographically in the current locale. _a_r_g_1 OOPP _a_r_g_2 - OOPP is one of --eeqq, --nnee, --lltt, --llee, --ggtt, or --ggee. These arithmetic - binary operators return true if _a_r_g_1 is equal to, not equal to, - less than, less than or equal to, greater than, or greater than - or equal to _a_r_g_2, respectively. _A_r_g_1 and _a_r_g_2 may be positive + OOPP is one of --eeqq, --nnee, --lltt, --llee, --ggtt, or --ggee. These arithmetic + binary operators return true if _a_r_g_1 is equal to, not equal to, + less than, less than or equal to, greater than, or greater than + or equal to _a_r_g_2, respectively. _A_r_g_1 and _a_r_g_2 may be positive or negative integers. SSIIMMPPLLEE CCOOMMMMAANNDD EEXXPPAANNSSIIOONN - When a simple command is executed, the shell performs the following + When a simple command is executed, the shell performs the following expansions, assignments, and redirections, from left to right. - 1. The words that the parser has marked as variable assignments - (those preceding the command name) and redirections are saved + 1. The words that the parser has marked as variable assignments + (those preceding the command name) and redirections are saved for later processing. - 2. The words that are not variable assignments or redirections are - expanded. If any words remain after expansion, the first word - is taken to be the name of the command and the remaining words + 2. The words that are not variable assignments or redirections are + expanded. If any words remain after expansion, the first word + is taken to be the name of the command and the remaining words are the arguments. 3. Redirections are performed as described above under RREEDDIIRREECCTTIIOONN. 4. The text after the == in each variable assignment undergoes tilde expansion, parameter expansion, command substitution, arithmetic - expansion, and quote removal before being assigned to the vari- + expansion, and quote removal before being assigned to the vari- able. If no command name results, the variable assignments affect the current - shell environment. Otherwise, the variables are added to the environ- - ment of the executed command and do not affect the current shell envi- - ronment. If any of the assignments attempts to assign a value to a - readonly variable, an error occurs, and the command exits with a non- + shell environment. Otherwise, the variables are added to the environ- + ment of the executed command and do not affect the current shell envi- + ronment. If any of the assignments attempts to assign a value to a + readonly variable, an error occurs, and the command exits with a non- zero status. - If no command name results, redirections are performed, but do not - affect the current shell environment. A redirection error causes the + If no command name results, redirections are performed, but do not + affect the current shell environment. A redirection error causes the command to exit with a non-zero status. - If there is a command name left after expansion, execution proceeds as - described below. Otherwise, the command exits. If one of the expan- - sions contained a command substitution, the exit status of the command - is the exit status of the last command substitution performed. If + If there is a command name left after expansion, execution proceeds as + described below. Otherwise, the command exits. If one of the expan- + sions contained a command substitution, the exit status of the command + is the exit status of the last command substitution performed. If there were no command substitutions, the command exits with a status of zero. CCOOMMMMAANNDD EEXXEECCUUTTIIOONN - After a command has been split into words, if it results in a simple - command and an optional list of arguments, the following actions are + After a command has been split into words, if it results in a simple + command and an optional list of arguments, the following actions are taken. - If the command name contains no slashes, the shell attempts to locate - it. If there exists a shell function by that name, that function is - invoked as described above in FFUUNNCCTTIIOONNSS. If the name does not match a - function, the shell searches for it in the list of shell builtins. If + If the command name contains no slashes, the shell attempts to locate + it. If there exists a shell function by that name, that function is + invoked as described above in FFUUNNCCTTIIOONNSS. If the name does not match a + function, the shell searches for it in the list of shell builtins. If a match is found, that builtin is invoked. - If the name is neither a shell function nor a builtin, and contains no - slashes, bbaasshh searches each element of the PPAATTHH for a directory con- - taining an executable file by that name. BBaasshh uses a hash table to - remember the full pathnames of executable files (see hhaasshh under SSHHEELLLL - BBUUIILLTTIINN CCOOMMMMAANNDDSS below). A full search of the directories in PPAATTHH is - performed only if the command is not found in the hash table. If the - search is unsuccessful, the shell prints an error message and returns - an exit status of 127. - - If the search is successful, or if the command name contains one or + If the name is neither a shell function nor a builtin, and contains no + slashes, bbaasshh searches each element of the PPAATTHH for a directory con- + taining an executable file by that name. BBaasshh uses a hash table to + remember the full pathnames of executable files (see hhaasshh under SSHHEELLLL + BBUUIILLTTIINN CCOOMMMMAANNDDSS below). A full search of the directories in PPAATTHH is + performed only if the command is not found in the hash table. If the + search is unsuccessful, the shell searches for a defined shell function + named ccoommmmaanndd__nnoott__ffoouunndd__hhaannddllee. If that function exists, it is invoked + with the original command and the original command's arguments as its + arguments, and the function's exit status becomes the exit status of + the shell. If that function is not defined, the shell prints an error + message and returns an exit status of 127. + + If the search is successful, or if the command name contains one or more slashes, the shell executes the named program in a separate execu- tion environment. Argument 0 is set to the name given, and the remain- ing arguments to the command are set to the arguments given, if any. - If this execution fails because the file is not in executable format, - and the file is not a directory, it is assumed to be a _s_h_e_l_l _s_c_r_i_p_t, a - file containing shell commands. A subshell is spawned to execute it. - This subshell reinitializes itself, so that the effect is as if a new - shell had been invoked to handle the script, with the exception that - the locations of commands remembered by the parent (see hhaasshh below + If this execution fails because the file is not in executable format, + and the file is not a directory, it is assumed to be a _s_h_e_l_l _s_c_r_i_p_t, a + file containing shell commands. A subshell is spawned to execute it. + This subshell reinitializes itself, so that the effect is as if a new + shell had been invoked to handle the script, with the exception that + the locations of commands remembered by the parent (see hhaasshh below under SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS) are retained by the child. - If the program is a file beginning with ##!!, the remainder of the first - line specifies an interpreter for the program. The shell executes the + If the program is a file beginning with ##!!, the remainder of the first + line specifies an interpreter for the program. The shell executes the specified interpreter on operating systems that do not handle this exe- cutable format themselves. The arguments to the interpreter consist of - a single optional argument following the interpreter name on the first - line of the program, followed by the name of the program, followed by + a single optional argument following the interpreter name on the first + line of the program, followed by the name of the program, followed by the command arguments, if any. CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENNTT - The shell has an _e_x_e_c_u_t_i_o_n _e_n_v_i_r_o_n_m_e_n_t, which consists of the follow- + The shell has an _e_x_e_c_u_t_i_o_n _e_n_v_i_r_o_n_m_e_n_t, which consists of the follow- ing: - +o open files inherited by the shell at invocation, as modified by + +o open files inherited by the shell at invocation, as modified by redirections supplied to the eexxeecc builtin - +o the current working directory as set by ccdd, ppuusshhdd, or ppooppdd, or + +o the current working directory as set by ccdd, ppuusshhdd, or ppooppdd, or inherited by the shell at invocation - +o the file creation mode mask as set by uummaasskk or inherited from + +o the file creation mode mask as set by uummaasskk or inherited from the shell's parent +o current traps set by ttrraapp @@ -2155,234 +2192,234 @@ CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENN +o shell parameters that are set by variable assignment or with sseett or inherited from the shell's parent in the environment - +o shell functions defined during execution or inherited from the + +o shell functions defined during execution or inherited from the shell's parent in the environment - +o options enabled at invocation (either by default or with com- + +o options enabled at invocation (either by default or with com- mand-line arguments) or by sseett +o options enabled by sshhoopptt +o shell aliases defined with aalliiaass - +o various process IDs, including those of background jobs, the + +o various process IDs, including those of background jobs, the value of $$$$, and the value of $$PPPPIIDD - When a simple command other than a builtin or shell function is to be - executed, it is invoked in a separate execution environment that con- - sists of the following. Unless otherwise noted, the values are inher- + When a simple command other than a builtin or shell function is to be + executed, it is invoked in a separate execution environment that con- + sists of the following. Unless otherwise noted, the values are inher- ited from the shell. - +o the shell's open files, plus any modifications and additions + +o the shell's open files, plus any modifications and additions specified by redirections to the command +o the current working directory +o the file creation mode mask - +o shell variables and functions marked for export, along with + +o shell variables and functions marked for export, along with variables exported for the command, passed in the environment +o traps caught by the shell are reset to the values inherited from the shell's parent, and traps ignored by the shell are ignored - A command invoked in this separate environment cannot affect the + A command invoked in this separate environment cannot affect the shell's execution environment. - Command substitution, commands grouped with parentheses, and asynchro- + Command substitution, commands grouped with parentheses, and asynchro- nous commands are invoked in a subshell environment that is a duplicate - of the shell environment, except that traps caught by the shell are + of the shell environment, except that traps caught by the shell are reset to the values that the shell inherited from its parent at invoca- tion. Builtin commands that are invoked as part of a pipeline are also executed in a subshell environment. Changes made to the subshell envi- ronment cannot affect the shell's execution environment. - If a command is followed by a && and job control is not active, the - default standard input for the command is the empty file _/_d_e_v_/_n_u_l_l. - Otherwise, the invoked command inherits the file descriptors of the + If a command is followed by a && and job control is not active, the + default standard input for the command is the empty file _/_d_e_v_/_n_u_l_l. + Otherwise, the invoked command inherits the file descriptors of the calling shell as modified by redirections. EENNVVIIRROONNMMEENNTT - When a program is invoked it is given an array of strings called the + When a program is invoked it is given an array of strings called the _e_n_v_i_r_o_n_m_e_n_t. This is a list of _n_a_m_e-_v_a_l_u_e pairs, of the form _n_a_m_e=_v_a_l_u_e. - The shell provides several ways to manipulate the environment. On + The shell provides several ways to manipulate the environment. On invocation, the shell scans its own environment and creates a parameter - for each name found, automatically marking it for _e_x_p_o_r_t to child pro- - cesses. Executed commands inherit the environment. The eexxppoorrtt and - ddeeccllaarree --xx commands allow parameters and functions to be added to and + for each name found, automatically marking it for _e_x_p_o_r_t to child pro- + cesses. Executed commands inherit the environment. The eexxppoorrtt and + ddeeccllaarree --xx commands allow parameters and functions to be added to and deleted from the environment. If the value of a parameter in the envi- - ronment is modified, the new value becomes part of the environment, - replacing the old. The environment inherited by any executed command - consists of the shell's initial environment, whose values may be modi- - fied in the shell, less any pairs removed by the uunnsseett command, plus + ronment is modified, the new value becomes part of the environment, + replacing the old. The environment inherited by any executed command + consists of the shell's initial environment, whose values may be modi- + fied in the shell, less any pairs removed by the uunnsseett command, plus any additions via the eexxppoorrtt and ddeeccllaarree --xx commands. - The environment for any _s_i_m_p_l_e _c_o_m_m_a_n_d or function may be augmented - temporarily by prefixing it with parameter assignments, as described + The environment for any _s_i_m_p_l_e _c_o_m_m_a_n_d or function may be augmented + temporarily by prefixing it with parameter assignments, as described above in PPAARRAAMMEETTEERRSS. These assignment statements affect only the envi- ronment seen by that command. - If the --kk option is set (see the sseett builtin command below), then _a_l_l - parameter assignments are placed in the environment for a command, not + If the --kk option is set (see the sseett builtin command below), then _a_l_l + parameter assignments are placed in the environment for a command, not just those that precede the command name. - When bbaasshh invokes an external command, the variable __ is set to the - full file name of the command and passed to that command in its envi- + When bbaasshh invokes an external command, the variable __ is set to the + full file name of the command and passed to that command in its envi- ronment. EEXXIITT SSTTAATTUUSS - The exit status of an executed command is the value returned by the + The exit status of an executed command is the value returned by the _w_a_i_t_p_i_d system call or equivalent function. Exit statuses fall between - 0 and 255, though, as explained below, the shell may use values above + 0 and 255, though, as explained below, the shell may use values above 125 specially. Exit statuses from shell builtins and compound commands - are also limited to this range. Under certain circumstances, the shell + are also limited to this range. Under certain circumstances, the shell will use special values to indicate specific failure modes. For the shell's purposes, a command which exits with a zero exit status - has succeeded. An exit status of zero indicates success. A non-zero - exit status indicates failure. When a command terminates on a fatal + has succeeded. An exit status of zero indicates success. A non-zero + exit status indicates failure. When a command terminates on a fatal signal _N, bbaasshh uses the value of 128+_N as the exit status. - If a command is not found, the child process created to execute it - returns a status of 127. If a command is found but is not executable, + If a command is not found, the child process created to execute it + returns a status of 127. If a command is found but is not executable, the return status is 126. If a command fails because of an error during expansion or redirection, the exit status is greater than zero. - Shell builtin commands return a status of 0 (_t_r_u_e) if successful, and - non-zero (_f_a_l_s_e) if an error occurs while they execute. All builtins + Shell builtin commands return a status of 0 (_t_r_u_e) if successful, and + non-zero (_f_a_l_s_e) if an error occurs while they execute. All builtins return an exit status of 2 to indicate incorrect usage. - BBaasshh itself returns the exit status of the last command executed, - unless a syntax error occurs, in which case it exits with a non-zero + BBaasshh itself returns the exit status of the last command executed, + unless a syntax error occurs, in which case it exits with a non-zero value. See also the eexxiitt builtin command below. SSIIGGNNAALLSS - When bbaasshh is interactive, in the absence of any traps, it ignores + When bbaasshh is interactive, in the absence of any traps, it ignores SSIIGGTTEERRMM (so that kkiillll 00 does not kill an interactive shell), and SSIIGGIINNTT - is caught and handled (so that the wwaaiitt builtin is interruptible). In - all cases, bbaasshh ignores SSIIGGQQUUIITT. If job control is in effect, bbaasshh + is caught and handled (so that the wwaaiitt builtin is interruptible). In + all cases, bbaasshh ignores SSIIGGQQUUIITT. If job control is in effect, bbaasshh ignores SSIIGGTTTTIINN, SSIIGGTTTTOOUU, and SSIIGGTTSSTTPP. Non-builtin commands run by bbaasshh have signal handlers set to the values - inherited by the shell from its parent. When job control is not in - effect, asynchronous commands ignore SSIIGGIINNTT and SSIIGGQQUUIITT in addition to - these inherited handlers. Commands run as a result of command substi- + inherited by the shell from its parent. When job control is not in + effect, asynchronous commands ignore SSIIGGIINNTT and SSIIGGQQUUIITT in addition to + these inherited handlers. Commands run as a result of command substi- tution ignore the keyboard-generated job control signals SSIIGGTTTTIINN, SSIIGGTT-- TTOOUU, and SSIIGGTTSSTTPP. - The shell exits by default upon receipt of a SSIIGGHHUUPP. Before exiting, - an interactive shell resends the SSIIGGHHUUPP to all jobs, running or + The shell exits by default upon receipt of a SSIIGGHHUUPP. Before exiting, + an interactive shell resends the SSIIGGHHUUPP to all jobs, running or stopped. Stopped jobs are sent SSIIGGCCOONNTT to ensure that they receive the - SSIIGGHHUUPP. To prevent the shell from sending the signal to a particular - job, it should be removed from the jobs table with the ddiissoowwnn builtin - (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below) or marked to not receive SSIIGGHHUUPP + SSIIGGHHUUPP. To prevent the shell from sending the signal to a particular + job, it should be removed from the jobs table with the ddiissoowwnn builtin + (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below) or marked to not receive SSIIGGHHUUPP using ddiissoowwnn --hh. - If the hhuuppoonneexxiitt shell option has been set with sshhoopptt, bbaasshh sends a + If the hhuuppoonneexxiitt shell option has been set with sshhoopptt, bbaasshh sends a SSIIGGHHUUPP to all jobs when an interactive login shell exits. - If bbaasshh is waiting for a command to complete and receives a signal for + If bbaasshh is waiting for a command to complete and receives a signal for which a trap has been set, the trap will not be executed until the com- - mand completes. When bbaasshh is waiting for an asynchronous command via - the wwaaiitt builtin, the reception of a signal for which a trap has been + mand completes. When bbaasshh is waiting for an asynchronous command via + the wwaaiitt builtin, the reception of a signal for which a trap has been set will cause the wwaaiitt builtin to return immediately with an exit sta- tus greater than 128, immediately after which the trap is executed. JJOOBB CCOONNTTRROOLL - _J_o_b _c_o_n_t_r_o_l refers to the ability to selectively stop (_s_u_s_p_e_n_d) the + _J_o_b _c_o_n_t_r_o_l refers to the ability to selectively stop (_s_u_s_p_e_n_d) the execution of processes and continue (_r_e_s_u_m_e) their execution at a later - point. A user typically employs this facility via an interactive + point. A user typically employs this facility via an interactive interface supplied jointly by the system's terminal driver and bbaasshh. - The shell associates a _j_o_b with each pipeline. It keeps a table of - currently executing jobs, which may be listed with the jjoobbss command. - When bbaasshh starts a job asynchronously (in the _b_a_c_k_g_r_o_u_n_d), it prints a + The shell associates a _j_o_b with each pipeline. It keeps a table of + currently executing jobs, which may be listed with the jjoobbss command. + When bbaasshh starts a job asynchronously (in the _b_a_c_k_g_r_o_u_n_d), it prints a line that looks like: [1] 25647 indicating that this job is job number 1 and that the process ID of the last process in the pipeline associated with this job is 25647. All of - the processes in a single pipeline are members of the same job. BBaasshh + the processes in a single pipeline are members of the same job. BBaasshh uses the _j_o_b abstraction as the basis for job control. - To facilitate the implementation of the user interface to job control, + To facilitate the implementation of the user interface to job control, the operating system maintains the notion of a _c_u_r_r_e_n_t _t_e_r_m_i_n_a_l _p_r_o_c_e_s_s _g_r_o_u_p _I_D. Members of this process group (processes whose process group ID is equal to the current terminal process group ID) receive keyboard- - generated signals such as SSIIGGIINNTT. These processes are said to be in - the _f_o_r_e_g_r_o_u_n_d. _B_a_c_k_g_r_o_u_n_d processes are those whose process group ID + generated signals such as SSIIGGIINNTT. These processes are said to be in + the _f_o_r_e_g_r_o_u_n_d. _B_a_c_k_g_r_o_u_n_d processes are those whose process group ID differs from the terminal's; such processes are immune to keyboard-gen- - erated signals. Only foreground processes are allowed to read from or + erated signals. Only foreground processes are allowed to read from or write to the terminal. Background processes which attempt to read from (write to) the terminal are sent a SSIIGGTTTTIINN ((SSIIGGTTTTOOUU)) signal by the ter- minal driver, which, unless caught, suspends the process. - If the operating system on which bbaasshh is running supports job control, + If the operating system on which bbaasshh is running supports job control, bbaasshh contains facilities to use it. Typing the _s_u_s_p_e_n_d character (typ- ically ^^ZZ, Control-Z) while a process is running causes that process to - be stopped and returns control to bbaasshh. Typing the _d_e_l_a_y_e_d _s_u_s_p_e_n_d - character (typically ^^YY, Control-Y) causes the process to be stopped - when it attempts to read input from the terminal, and control to be - returned to bbaasshh. The user may then manipulate the state of this job, - using the bbgg command to continue it in the background, the ffgg command + be stopped and returns control to bbaasshh. Typing the _d_e_l_a_y_e_d _s_u_s_p_e_n_d + character (typically ^^YY, Control-Y) causes the process to be stopped + when it attempts to read input from the terminal, and control to be + returned to bbaasshh. The user may then manipulate the state of this job, + using the bbgg command to continue it in the background, the ffgg command to continue it in the foreground, or the kkiillll command to kill it. A ^^ZZ takes effect immediately, and has the additional side effect of causing pending output and typeahead to be discarded. There are a number of ways to refer to a job in the shell. The charac- ter %% introduces a job name. Job number _n may be referred to as %%nn. A - job may also be referred to using a prefix of the name used to start - it, or using a substring that appears in its command line. For exam- + job may also be referred to using a prefix of the name used to start + it, or using a substring that appears in its command line. For exam- ple, %%ccee refers to a stopped ccee job. If a prefix matches more than one - job, bbaasshh reports an error. Using %%??ccee, on the other hand, refers to + job, bbaasshh reports an error. Using %%??ccee, on the other hand, refers to any job containing the string ccee in its command line. If the substring - matches more than one job, bbaasshh reports an error. The symbols %%%% and - %%++ refer to the shell's notion of the _c_u_r_r_e_n_t _j_o_b, which is the last - job stopped while it was in the foreground or started in the back- - ground. The _p_r_e_v_i_o_u_s _j_o_b may be referenced using %%--. In output per- + matches more than one job, bbaasshh reports an error. The symbols %%%% and + %%++ refer to the shell's notion of the _c_u_r_r_e_n_t _j_o_b, which is the last + job stopped while it was in the foreground or started in the back- + ground. The _p_r_e_v_i_o_u_s _j_o_b may be referenced using %%--. In output per- taining to jobs (e.g., the output of the jjoobbss command), the current job - is always flagged with a ++, and the previous job with a --. A single % - (with no accompanying job specification) also refers to the current + is always flagged with a ++, and the previous job with a --. A single % + (with no accompanying job specification) also refers to the current job. - Simply naming a job can be used to bring it into the foreground: %%11 is - a synonym for ````ffgg %%11'''', bringing job 1 from the background into the - foreground. Similarly, ````%%11 &&'''' resumes job 1 in the background, + Simply naming a job can be used to bring it into the foreground: %%11 is + a synonym for ````ffgg %%11'''', bringing job 1 from the background into the + foreground. Similarly, ````%%11 &&'''' resumes job 1 in the background, equivalent to ````bbgg %%11''''. - The shell learns immediately whenever a job changes state. Normally, + The shell learns immediately whenever a job changes state. Normally, bbaasshh waits until it is about to print a prompt before reporting changes - in a job's status so as to not interrupt any other output. If the --bb + in a job's status so as to not interrupt any other output. If the --bb option to the sseett builtin command is enabled, bbaasshh reports such changes - immediately. Any trap on SSIIGGCCHHLLDD is executed for each child that + immediately. Any trap on SSIIGGCCHHLLDD is executed for each child that exits. - If an attempt to exit bbaasshh is made while jobs are stopped (or, if the - cchheecckkjjoobbss shell option has been enabled using the sshhoopptt builtin, run- + If an attempt to exit bbaasshh is made while jobs are stopped (or, if the + cchheecckkjjoobbss shell option has been enabled using the sshhoopptt builtin, run- ning), the shell prints a warning message, and, if the cchheecckkjjoobbss option - is enabled, lists the jobs and their statuses. The jjoobbss command may - then be used to inspect their status. If a second attempt to exit is - made without an intervening command, the shell does not print another + is enabled, lists the jobs and their statuses. The jjoobbss command may + then be used to inspect their status. If a second attempt to exit is + made without an intervening command, the shell does not print another warning, and any stopped jobs are terminated. PPRROOMMPPTTIINNGG When executing interactively, bbaasshh displays the primary prompt PPSS11 when - it is ready to read a command, and the secondary prompt PPSS22 when it - needs more input to complete a command. BBaasshh allows these prompt - strings to be customized by inserting a number of backslash-escaped + it is ready to read a command, and the secondary prompt PPSS22 when it + needs more input to complete a command. BBaasshh allows these prompt + strings to be customized by inserting a number of backslash-escaped special characters that are decoded as follows: \\aa an ASCII bell character (07) - \\dd the date in "Weekday Month Date" format (e.g., "Tue May + \\dd the date in "Weekday Month Date" format (e.g., "Tue May 26") \\DD{{_f_o_r_m_a_t}} - the _f_o_r_m_a_t is passed to _s_t_r_f_t_i_m_e(3) and the result is - inserted into the prompt string; an empty _f_o_r_m_a_t results + the _f_o_r_m_a_t is passed to _s_t_r_f_t_i_m_e(3) and the result is + inserted into the prompt string; an empty _f_o_r_m_a_t results in a locale-specific time representation. The braces are required \\ee an ASCII escape character (033) @@ -2392,7 +2429,7 @@ PPRROOMMPPTTIINNGG \\ll the basename of the shell's terminal device name \\nn newline \\rr carriage return - \\ss the name of the shell, the basename of $$00 (the portion + \\ss the name of the shell, the basename of $$00 (the portion following the final slash) \\tt the current time in 24-hour HH:MM:SS format \\TT the current time in 12-hour HH:MM:SS format @@ -2401,7 +2438,7 @@ PPRROOMMPPTTIINNGG \\uu the username of the current user \\vv the version of bbaasshh (e.g., 2.00) \\VV the release of bbaasshh, version + patch level (e.g., 2.00.0) - \\ww the current working directory, with $$HHOOMMEE abbreviated + \\ww the current working directory, with $$HHOOMMEE abbreviated with a tilde \\WW the basename of the current working directory, with $$HHOOMMEE abbreviated with a tilde @@ -2410,63 +2447,63 @@ PPRROOMMPPTTIINNGG \\$$ if the effective UID is 0, a ##, otherwise a $$ \\_n_n_n the character corresponding to the octal number _n_n_n \\\\ a backslash - \\[[ begin a sequence of non-printing characters, which could - be used to embed a terminal control sequence into the + \\[[ begin a sequence of non-printing characters, which could + be used to embed a terminal control sequence into the prompt \\]] end a sequence of non-printing characters - The command number and the history number are usually different: the - history number of a command is its position in the history list, which - may include commands restored from the history file (see HHIISSTTOORRYY - below), while the command number is the position in the sequence of - commands executed during the current shell session. After the string - is decoded, it is expanded via parameter expansion, command substitu- - tion, arithmetic expansion, and quote removal, subject to the value of - the pprroommppttvvaarrss shell option (see the description of the sshhoopptt command + The command number and the history number are usually different: the + history number of a command is its position in the history list, which + may include commands restored from the history file (see HHIISSTTOORRYY + below), while the command number is the position in the sequence of + commands executed during the current shell session. After the string + is decoded, it is expanded via parameter expansion, command substitu- + tion, arithmetic expansion, and quote removal, subject to the value of + the pprroommppttvvaarrss shell option (see the description of the sshhoopptt command under SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). RREEAADDLLIINNEE - This is the library that handles reading input when using an interac- + This is the library that handles reading input when using an interac- tive shell, unless the ----nnooeeddiittiinngg option is given at shell invocation. By default, the line editing commands are similar to those of emacs. A - vi-style line editing interface is also available. To turn off line - editing after the shell is running, use the ++oo eemmaaccss or ++oo vvii options + vi-style line editing interface is also available. To turn off line + editing after the shell is running, use the ++oo eemmaaccss or ++oo vvii options to the sseett builtin (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). RReeaaddlliinnee NNoottaattiioonn In this section, the emacs-style notation is used to denote keystrokes. - Control keys are denoted by C-_k_e_y, e.g., C-n means Control-N. Simi- - larly, _m_e_t_a keys are denoted by M-_k_e_y, so M-x means Meta-X. (On key- - boards without a _m_e_t_a key, M-_x means ESC _x, i.e., press the Escape key + Control keys are denoted by C-_k_e_y, e.g., C-n means Control-N. Simi- + larly, _m_e_t_a keys are denoted by M-_k_e_y, so M-x means Meta-X. (On key- + boards without a _m_e_t_a key, M-_x means ESC _x, i.e., press the Escape key then the _x key. This makes ESC the _m_e_t_a _p_r_e_f_i_x. The combination M-C-_x - means ESC-Control-_x, or press the Escape key then hold the Control key + means ESC-Control-_x, or press the Escape key then hold the Control key while pressing the _x key.) Readline commands may be given numeric _a_r_g_u_m_e_n_t_s, which normally act as - a repeat count. Sometimes, however, it is the sign of the argument - that is significant. Passing a negative argument to a command that - acts in the forward direction (e.g., kkiillll--lliinnee) causes that command to - act in a backward direction. Commands whose behavior with arguments + a repeat count. Sometimes, however, it is the sign of the argument + that is significant. Passing a negative argument to a command that + acts in the forward direction (e.g., kkiillll--lliinnee) causes that command to + act in a backward direction. Commands whose behavior with arguments deviates from this are noted below. - When a command is described as _k_i_l_l_i_n_g text, the text deleted is saved + When a command is described as _k_i_l_l_i_n_g text, the text deleted is saved for possible future retrieval (_y_a_n_k_i_n_g). The killed text is saved in a _k_i_l_l _r_i_n_g. Consecutive kills cause the text to be accumulated into one unit, which can be yanked all at once. Commands which do not kill text separate the chunks of text on the kill ring. RReeaaddlliinnee IInniittiiaalliizzaattiioonn - Readline is customized by putting commands in an initialization file - (the _i_n_p_u_t_r_c file). The name of this file is taken from the value of - the IINNPPUUTTRRCC variable. If that variable is unset, the default is - _~_/_._i_n_p_u_t_r_c. When a program which uses the readline library starts up, + Readline is customized by putting commands in an initialization file + (the _i_n_p_u_t_r_c file). The name of this file is taken from the value of + the IINNPPUUTTRRCC variable. If that variable is unset, the default is + _~_/_._i_n_p_u_t_r_c. When a program which uses the readline library starts up, the initialization file is read, and the key bindings and variables are - set. There are only a few basic constructs allowed in the readline - initialization file. Blank lines are ignored. Lines beginning with a - ## are comments. Lines beginning with a $$ indicate conditional con- + set. There are only a few basic constructs allowed in the readline + initialization file. Blank lines are ignored. Lines beginning with a + ## are comments. Lines beginning with a $$ indicate conditional con- structs. Other lines denote key bindings and variable settings. - The default key-bindings may be changed with an _i_n_p_u_t_r_c file. Other + The default key-bindings may be changed with an _i_n_p_u_t_r_c file. Other programs that use this library may add their own commands and bindings. For example, placing @@ -2474,19 +2511,19 @@ RREEAADDLLIINNEE M-Control-u: universal-argument or C-Meta-u: universal-argument - into the _i_n_p_u_t_r_c would make M-C-u execute the readline command _u_n_i_v_e_r_- + into the _i_n_p_u_t_r_c would make M-C-u execute the readline command _u_n_i_v_e_r_- _s_a_l_-_a_r_g_u_m_e_n_t. - The following symbolic character names are recognized: _R_U_B_O_U_T, _D_E_L, + The following symbolic character names are recognized: _R_U_B_O_U_T, _D_E_L, _E_S_C, _L_F_D, _N_E_W_L_I_N_E, _R_E_T, _R_E_T_U_R_N, _S_P_C, _S_P_A_C_E, and _T_A_B. - In addition to command names, readline allows keys to be bound to a + In addition to command names, readline allows keys to be bound to a string that is inserted when the key is pressed (a _m_a_c_r_o). RReeaaddlliinnee KKeeyy BBiinnddiinnggss - The syntax for controlling key bindings in the _i_n_p_u_t_r_c file is simple. - All that is required is the name of the command or the text of a macro - and a key sequence to which it should be bound. The name may be speci- + The syntax for controlling key bindings in the _i_n_p_u_t_r_c file is simple. + All that is required is the name of the command or the text of a macro + and a key sequence to which it should be bound. The name may be speci- fied in one of two ways: as a symbolic key name, possibly with _M_e_t_a_- or _C_o_n_t_r_o_l_- prefixes, or as a key sequence. @@ -2497,15 +2534,15 @@ RREEAADDLLIINNEE Meta-Rubout: backward-kill-word Control-o: "> output" - In the above example, _C_-_u is bound to the function uunniivveerrssaall--aarrgguummeenntt, - _M_-_D_E_L is bound to the function bbaacckkwwaarrdd--kkiillll--wwoorrdd, and _C_-_o is bound to - run the macro expressed on the right hand side (that is, to insert the + In the above example, _C_-_u is bound to the function uunniivveerrssaall--aarrgguummeenntt, + _M_-_D_E_L is bound to the function bbaacckkwwaarrdd--kkiillll--wwoorrdd, and _C_-_o is bound to + run the macro expressed on the right hand side (that is, to insert the text ``> output'' into the line). - In the second form, ""kkeeyysseeqq"":_f_u_n_c_t_i_o_n_-_n_a_m_e or _m_a_c_r_o, kkeeyysseeqq differs - from kkeeyynnaammee above in that strings denoting an entire key sequence may - be specified by placing the sequence within double quotes. Some GNU - Emacs style key escapes can be used, as in the following example, but + In the second form, ""kkeeyysseeqq"":_f_u_n_c_t_i_o_n_-_n_a_m_e or _m_a_c_r_o, kkeeyysseeqq differs + from kkeeyynnaammee above in that strings denoting an entire key sequence may + be specified by placing the sequence within double quotes. Some GNU + Emacs style key escapes can be used, as in the following example, but the symbolic character names are not recognized. "\C-u": universal-argument @@ -2513,7 +2550,7 @@ RREEAADDLLIINNEE "\e[11~": "Function Key 1" In this example, _C_-_u is again bound to the function uunniivveerrssaall--aarrgguummeenntt. - _C_-_x _C_-_r is bound to the function rree--rreeaadd--iinniitt--ffiillee, and _E_S_C _[ _1 _1 _~ is + _C_-_x _C_-_r is bound to the function rree--rreeaadd--iinniitt--ffiillee, and _E_S_C _[ _1 _1 _~ is bound to insert the text ``Function Key 1''. The full set of GNU Emacs style escape sequences is @@ -2524,7 +2561,7 @@ RREEAADDLLIINNEE \\"" literal " \\'' literal ' - In addition to the GNU Emacs style escape sequences, a second set of + In addition to the GNU Emacs style escape sequences, a second set of backslash escapes is available: \\aa alert (bell) \\bb backspace @@ -2534,20 +2571,20 @@ RREEAADDLLIINNEE \\rr carriage return \\tt horizontal tab \\vv vertical tab - \\_n_n_n the eight-bit character whose value is the octal value + \\_n_n_n the eight-bit character whose value is the octal value _n_n_n (one to three digits) - \\xx_H_H the eight-bit character whose value is the hexadecimal + \\xx_H_H the eight-bit character whose value is the hexadecimal value _H_H (one or two hex digits) When entering the text of a macro, single or double quotes must be used to indicate a macro definition. Unquoted text is assumed to be a func- - tion name. In the macro body, the backslash escapes described above - are expanded. Backslash will quote any other character in the macro + tion name. In the macro body, the backslash escapes described above + are expanded. Backslash will quote any other character in the macro text, including " and '. - BBaasshh allows the current readline key bindings to be displayed or modi- - fied with the bbiinndd builtin command. The editing mode may be switched - during interactive use by using the --oo option to the sseett builtin com- + BBaasshh allows the current readline key bindings to be displayed or modi- + fied with the bbiinndd builtin command. The editing mode may be switched + during interactive use by using the --oo option to the sseett builtin com- mand (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). RReeaaddlliinnee VVaarriiaabblleess @@ -2557,44 +2594,50 @@ RREEAADDLLIINNEE sseett _v_a_r_i_a_b_l_e_-_n_a_m_e _v_a_l_u_e - Except where noted, readline variables can take the values OOnn or OOffff - (without regard to case). Unrecognized variable names are ignored. - When a variable value is read, empty or null values, "on" (case-insen- + Except where noted, readline variables can take the values OOnn or OOffff + (without regard to case). Unrecognized variable names are ignored. + When a variable value is read, empty or null values, "on" (case-insen- sitive), and "1" are equivalent to OOnn. All other values are equivalent to OOffff. The variables and their default values are: bbeellll--ssttyyllee ((aauuddiibbllee)) - Controls what happens when readline wants to ring the terminal + Controls what happens when readline wants to ring the terminal bell. If set to nnoonnee, readline never rings the bell. If set to - vviissiibbllee, readline uses a visible bell if one is available. If + vviissiibbllee, readline uses a visible bell if one is available. If set to aauuddiibbllee, readline attempts to ring the terminal's bell. bbiinndd--ttttyy--ssppeecciiaall--cchhaarrss ((OOnn)) - If set to OOnn, readline attempts to bind the control characters + If set to OOnn, readline attempts to bind the control characters treated specially by the kernel's terminal driver to their read- line equivalents. ccoommmmeenntt--bbeeggiinn ((````##'''')) - The string that is inserted when the readline iinnsseerrtt--ccoommmmeenntt + The string that is inserted when the readline iinnsseerrtt--ccoommmmeenntt command is executed. This command is bound to MM--## in emacs mode and to ## in vi command mode. ccoommpplleettiioonn--iiggnnoorree--ccaassee ((OOffff)) If set to OOnn, readline performs filename matching and completion in a case-insensitive fashion. + ccoommpplleettiioonn--pprreeffiixx--ddiissppllaayy--lleennggtthh ((00)) + The length in characters of the common prefix of a list of pos- + sible completions that is displayed without modification. When + set to a value greater than zero, common prefixes longer than + this value are replaced with an ellipsis when displaying possi- + ble completions. ccoommpplleettiioonn--qquueerryy--iitteemmss ((110000)) - This determines when the user is queried about viewing the num- - ber of possible completions generated by the ppoossssiibbllee--ccoommppllee-- - ttiioonnss command. It may be set to any integer value greater than - or equal to zero. If the number of possible completions is + This determines when the user is queried about viewing the num- + ber of possible completions generated by the ppoossssiibbllee--ccoommppllee-- + ttiioonnss command. It may be set to any integer value greater than + or equal to zero. If the number of possible completions is greater than or equal to the value of this variable, the user is - asked whether or not he wishes to view them; otherwise they are + asked whether or not he wishes to view them; otherwise they are simply listed on the terminal. ccoonnvveerrtt--mmeettaa ((OOnn)) - If set to OOnn, readline will convert characters with the eighth + If set to OOnn, readline will convert characters with the eighth bit set to an ASCII key sequence by stripping the eighth bit and - prefixing an escape character (in effect, using escape as the + prefixing an escape character (in effect, using escape as the _m_e_t_a _p_r_e_f_i_x). ddiissaabbllee--ccoommpplleettiioonn ((OOffff)) If set to OOnn, readline will inhibit word completion. Completion - characters will be inserted into the line as if they had been + characters will be inserted into the line as if they had been mapped to sseellff--iinnsseerrtt. eeddiittiinngg--mmooddee ((eemmaaccss)) Controls whether readline begins with a set of key bindings sim- @@ -2602,64 +2645,69 @@ RREEAADDLLIINNEE vvii. eennaabbllee--kkeeyyppaadd ((OOffff)) When set to OOnn, readline will try to enable the application key- - pad when it is called. Some systems need this to enable the + pad when it is called. Some systems need this to enable the arrow keys. eexxppaanndd--ttiillddee ((OOffff)) - If set to oonn, tilde expansion is performed when readline + If set to oonn, tilde expansion is performed when readline attempts word completion. hhiissttoorryy--pprreesseerrvvee--ppooiinntt ((OOffff)) - If set to oonn, the history code attempts to place point at the - same location on each history line retrieved with pprreevviioouuss--hhiiss-- + If set to oonn, the history code attempts to place point at the + same location on each history line retrieved with pprreevviioouuss--hhiiss-- ttoorryy or nneexxtt--hhiissttoorryy. hhiissttoorryy--ssiizzee ((00)) - Set the maximum number of history entries saved in the history + Set the maximum number of history entries saved in the history list. If set to zero, the number of entries in the history list is not limited. hhoorriizzoonnttaall--ssccrroollll--mmooddee ((OOffff)) - When set to OOnn, makes readline use a single line for display, + When set to OOnn, makes readline use a single line for display, scrolling the input horizontally on a single screen line when it - becomes longer than the screen width rather than wrapping to a + becomes longer than the screen width rather than wrapping to a new line. iinnppuutt--mmeettaa ((OOffff)) - If set to OOnn, readline will enable eight-bit input (that is, it - will not strip the high bit from the characters it reads), + If set to OOnn, readline will enable eight-bit input (that is, it + will not strip the high bit from the characters it reads), regardless of what the terminal claims it can support. The name mmeettaa--ffllaagg is a synonym for this variable. iisseeaarrcchh--tteerrmmiinnaattoorrss ((````CC--[[CC--JJ'''')) - The string of characters that should terminate an incremental - search without subsequently executing the character as a com- - mand. If this variable has not been given a value, the charac- + The string of characters that should terminate an incremental + search without subsequently executing the character as a com- + mand. If this variable has not been given a value, the charac- ters _E_S_C and _C_-_J will terminate an incremental search. kkeeyymmaapp ((eemmaaccss)) - Set the current readline keymap. The set of valid keymap names - is _e_m_a_c_s_, _e_m_a_c_s_-_s_t_a_n_d_a_r_d_, _e_m_a_c_s_-_m_e_t_a_, _e_m_a_c_s_-_c_t_l_x_, _v_i_, _v_i_-_c_o_m_- - _m_a_n_d, and _v_i_-_i_n_s_e_r_t. _v_i is equivalent to _v_i_-_c_o_m_m_a_n_d; _e_m_a_c_s is - equivalent to _e_m_a_c_s_-_s_t_a_n_d_a_r_d. The default value is _e_m_a_c_s; the + Set the current readline keymap. The set of valid keymap names + is _e_m_a_c_s_, _e_m_a_c_s_-_s_t_a_n_d_a_r_d_, _e_m_a_c_s_-_m_e_t_a_, _e_m_a_c_s_-_c_t_l_x_, _v_i_, _v_i_-_c_o_m_- + _m_a_n_d, and _v_i_-_i_n_s_e_r_t. _v_i is equivalent to _v_i_-_c_o_m_m_a_n_d; _e_m_a_c_s is + equivalent to _e_m_a_c_s_-_s_t_a_n_d_a_r_d. The default value is _e_m_a_c_s; the value of eeddiittiinngg--mmooddee also affects the default keymap. mmaarrkk--ddiirreeccttoorriieess ((OOnn)) If set to OOnn, completed directory names have a slash appended. mmaarrkk--mmooddiiffiieedd--lliinneess ((OOffff)) - If set to OOnn, history lines that have been modified are dis- + If set to OOnn, history lines that have been modified are dis- played with a preceding asterisk (**). mmaarrkk--ssyymmlliinnkkeedd--ddiirreeccttoorriieess ((OOffff)) If set to OOnn, completed names which are symbolic links to direc- - tories have a slash appended (subject to the value of + tories have a slash appended (subject to the value of mmaarrkk--ddiirreeccttoorriieess). mmaattcchh--hhiiddddeenn--ffiilleess ((OOnn)) - This variable, when set to OOnn, causes readline to match files - whose names begin with a `.' (hidden files) when performing - filename completion, unless the leading `.' is supplied by the + This variable, when set to OOnn, causes readline to match files + whose names begin with a `.' (hidden files) when performing + filename completion, unless the leading `.' is supplied by the user in the filename to be completed. oouuttppuutt--mmeettaa ((OOffff)) - If set to OOnn, readline will display characters with the eighth + If set to OOnn, readline will display characters with the eighth bit set directly rather than as a meta-prefixed escape sequence. ppaaggee--ccoommpplleettiioonnss ((OOnn)) - If set to OOnn, readline uses an internal _m_o_r_e-like pager to dis- + If set to OOnn, readline uses an internal _m_o_r_e-like pager to dis- play a screenful of possible completions at a time. pprriinntt--ccoommpplleettiioonnss--hhoorriizzoonnttaallllyy ((OOffff)) - If set to OOnn, readline will display completions with matches - sorted horizontally in alphabetical order, rather than down the + If set to OOnn, readline will display completions with matches + sorted horizontally in alphabetical order, rather than down the screen. + rreevveerrtt--aallll--aatt--nneewwlliinnee ((OOffff)) + If set to oonn, readline will undo all changes to history lines + before returning when aacccceepptt--lliinnee is executed. By default, his- + tory lines may be modified and retain individual undo lists + across calls to rreeaaddlliinnee. sshhooww--aallll--iiff--aammbbiigguuoouuss ((OOffff)) This alters the default behavior of the completion functions. If set to oonn, words which have more than one possible completion @@ -3049,6 +3097,10 @@ RREEAADDLLIINNEE Attempt completion on the text before point, comparing the text against lines from the history list for possible completion matches. + ddaabbbbrreevv--eexxppaanndd + Attempt menu completion on the text before point, comparing the + text against lines from the history list for possible completion + matches. ccoommpplleettee--iinnttoo--bbrraacceess ((MM--{{)) Perform filename completion and insert the list of possible com- pletions enclosed within braces so the list is available to the @@ -3504,7 +3556,13 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS Remove any current binding for _k_e_y_s_e_q. --xx _k_e_y_s_e_q::_s_h_e_l_l_-_c_o_m_m_a_n_d Cause _s_h_e_l_l_-_c_o_m_m_a_n_d to be executed whenever _k_e_y_s_e_q is - entered. + entered. When _s_h_e_l_l_-_c_o_m_m_a_n_d is executed, the shell sets + the RREEAADDLLIINNEE__LLIINNEE variable to the contents of the rreeaadd-- + lliinnee line buffer and the RREEAADDLLIINNEE__PPOOIINNTT variable to the + current location of the insertion point. If the executed + command changes the value of RREEAADDLLIINNEE__LLIINNEE or RREEAADD-- + LLIINNEE__PPOOIINNTT, those new values will be reflected in the + editing state. The return value is 0 unless an unrecognized option is given or an error occurred. @@ -3513,8 +3571,8 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS Exit from within a ffoorr, wwhhiillee, uunnttiill, or sseelleecctt loop. If _n is specified, break _n levels. _n must be >= 1. If _n is greater than the number of enclosing loops, all enclosing loops are - exited. The return value is 0 unless the shell is not executing - a loop when bbrreeaakk is executed. + exited. The return value is 0 unless _n is not greater than or + equal to 1. bbuuiillttiinn _s_h_e_l_l_-_b_u_i_l_t_i_n [_a_r_g_u_m_e_n_t_s] Execute the specified shell builtin, passing it _a_r_g_u_m_e_n_t_s, and @@ -3524,6 +3582,19 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS commonly redefined this way. The return status is false if _s_h_e_l_l_-_b_u_i_l_t_i_n is not a shell builtin command. + ccaalllleerr [_e_x_p_r] + Returns the context of any active subroutine call (a shell func- + tion or a script executed with the .. or ssoouurrccee builtins. With- + out _e_x_p_r, ccaalllleerr displays the line number and source filename of + the current subroutine call. If a non-negative integer is sup- + plied as _e_x_p_r, ccaalllleerr displays the line number, subroutine name, + and source file corresponding to that position in the current + execution call stack. This extra information may be used, for + example, to print a stack trace. The current frame is frame 0. + The return value is 0 unless the shell is not executing a sub- + routine call or _e_x_p_r does not correspond to a valid position in + the call stack. + ccdd [--LL||--PP] [_d_i_r] Change the current directory to _d_i_r. The variable HHOOMMEE is the default _d_i_r. The variable CCDDPPAATTHH defines the search path for @@ -3541,19 +3612,6 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS output. The return value is true if the directory was success- fully changed; false otherwise. - ccaalllleerr [_e_x_p_r] - Returns the context of any active subroutine call (a shell func- - tion or a script executed with the .. or ssoouurrccee builtins. With- - out _e_x_p_r, ccaalllleerr displays the line number and source filename of - the current subroutine call. If a non-negative integer is sup- - plied as _e_x_p_r, ccaalllleerr displays the line number, subroutine name, - and source file corresponding to that position in the current - execution call stack. This extra information may be used, for - example, to print a stack trace. The current frame is frame 0. - The return value is 0 unless the shell is not executing a sub- - routine call or _e_x_p_r does not correspond to a valid position in - the call stack. - ccoommmmaanndd [--ppVVvv] _c_o_m_m_a_n_d [_a_r_g ...] Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function lookup. Only builtin commands or commands found in the PPAATTHH are @@ -3585,16 +3643,18 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS The return value is true unless an invalid option is supplied, or no matches were generated. - ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_p_a_t] [--WW - _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] + ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--EE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_p_a_t] + [--WW _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] [--XX _f_i_l_t_e_r_p_a_t] [--PP _p_r_e_f_i_x] [--SS _s_u_f_f_i_x] _n_a_m_e [_n_a_m_e _._._.] - ccoommpplleettee --pprr [_n_a_m_e ...] + ccoommpplleettee --pprr [--EE] [_n_a_m_e ...] Specify how arguments to each _n_a_m_e should be completed. If the --pp option is supplied, or if no options are supplied, existing completion specifications are printed in a way that allows them to be reused as input. The --rr option removes a completion spec- ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- - pletion specifications. + pletion specifications. The --EE option indicates that the + remaining options and actions should apply to ``empty'' command + completion; that is, completion attempted on a blank line. The process of applying these completion specifications when word completion is attempted is described above under PPrroo-- @@ -3726,8 +3786,8 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS sseelleecctt loop. If _n is specified, resume at the _nth enclosing loop. _n must be >= 1. If _n is greater than the number of enclosing loops, the last enclosing loop (the ``top-level'' - loop) is resumed. The return value is 0 unless the shell is not - executing a loop when ccoonnttiinnuuee is executed. + loop) is resumed. The return value is 0 unless _n is not greater + than or equal to 1. ddeeccllaarree [--aaffFFiirrttxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] ttyyppeesseett [--aaffFFiirrttxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] @@ -4008,13 +4068,16 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS printed. The return status is true unless a _n_a_m_e is not found or an invalid option is supplied. - hheellpp [--ss] [_p_a_t_t_e_r_n] + hheellpp [--ddmmss] [_p_a_t_t_e_r_n] Display helpful information about builtin commands. If _p_a_t_t_e_r_n is specified, hheellpp gives detailed help on all commands matching _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control - structures is printed. The --ss option restricts the information - displayed to a short usage synopsis. The return status is 0 - unless no command matches _p_a_t_t_e_r_n. + structures is printed. + --dd Display a short description of each _p_a_t_t_e_r_n + --mm Display the description of each _p_a_t_t_e_r_n in a manpage-like + format + --ss Display only a short usage synopsis for each _p_a_t_t_e_r_n + The return status is 0 unless no command matches _p_a_t_t_e_r_n. hhiissttoorryy [[_n]] hhiissttoorryy --cc @@ -4024,44 +4087,44 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS hhiissttoorryy --ss _a_r_g [_a_r_g _._._.] With no options, display the command history list with line num- bers. Lines listed with a ** have been modified. An argument of - _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- - FFOORRMMAATT is set and not null, it is used as a format string for - _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- - played history entry. No intervening blank is printed between - the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is - supplied, it is used as the name of the history file; if not, - the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the + _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- + FFOORRMMAATT is set and not null, it is used as a format string for + _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- + played history entry. No intervening blank is printed between + the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is + supplied, it is used as the name of the history file; if not, + the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the following meanings: --cc Clear the history list by deleting all the entries. --dd _o_f_f_s_e_t Delete the history entry at position _o_f_f_s_e_t. - --aa Append the ``new'' history lines (history lines entered - since the beginning of the current bbaasshh session) to the + --aa Append the ``new'' history lines (history lines entered + since the beginning of the current bbaasshh session) to the history file. - --nn Read the history lines not already read from the history - file into the current history list. These are lines - appended to the history file since the beginning of the + --nn Read the history lines not already read from the history + file into the current history list. These are lines + appended to the history file since the beginning of the current bbaasshh session. --rr Read the contents of the history file and use them as the current history. - --ww Write the current history to the history file, overwrit- + --ww Write the current history to the history file, overwrit- ing the history file's contents. - --pp Perform history substitution on the following _a_r_g_s and - display the result on the standard output. Does not - store the results in the history list. Each _a_r_g must be + --pp Perform history substitution on the following _a_r_g_s and + display the result on the standard output. Does not + store the results in the history list. Each _a_r_g must be quoted to disable normal history expansion. - --ss Store the _a_r_g_s in the history list as a single entry. - The last command in the history list is removed before + --ss Store the _a_r_g_s in the history list as a single entry. + The last command in the history list is removed before the _a_r_g_s are added. If the HHIISSTTTTIIMMEEFFOORRMMAATT is set, the time stamp information associ- - ated with each history entry is written to the history file, - marked with the history comment character. When the history + ated with each history entry is written to the history file, + marked with the history comment character. When the history file is read, lines beginning with the history comment character - followed immediately by a digit are interpreted as timestamps - for the previous history line. The return value is 0 unless an - invalid option is encountered, an error occurs while reading or - writing the history file, an invalid _o_f_f_s_e_t is supplied as an + followed immediately by a digit are interpreted as timestamps + for the previous history line. The return value is 0 unless an + invalid option is encountered, an error occurs while reading or + writing the history file, an invalid _o_f_f_s_e_t is supplied as an argument to --dd, or the history expansion supplied as an argument to --pp fails. @@ -4070,54 +4133,81 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS The first form lists the active jobs. The options have the fol- lowing meanings: --ll List process IDs in addition to the normal information. - --pp List only the process ID of the job's process group + --pp List only the process ID of the job's process group leader. - --nn Display information only about jobs that have changed - status since the user was last notified of their status. + --nn Display information only about jobs that have changed + status since the user was last notified of their status. --rr Restrict output to running jobs. --ss Restrict output to stopped jobs. - If _j_o_b_s_p_e_c is given, output is restricted to information about - that job. The return status is 0 unless an invalid option is + If _j_o_b_s_p_e_c is given, output is restricted to information about + that job. The return status is 0 unless an invalid option is encountered or an invalid _j_o_b_s_p_e_c is supplied. If the --xx option is supplied, jjoobbss replaces any _j_o_b_s_p_e_c found in - _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and + _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and executes _c_o_m_m_a_n_d passing it _a_r_g_s, returning its exit status. kkiillll [--ss _s_i_g_s_p_e_c | --nn _s_i_g_n_u_m | --_s_i_g_s_p_e_c] [_p_i_d | _j_o_b_s_p_e_c] ... kkiillll --ll [_s_i_g_s_p_e_c | _e_x_i_t___s_t_a_t_u_s] - Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes - named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive - signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or - a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not - present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the - signal names. If any arguments are supplied when --ll is given, - the names of the signals corresponding to the arguments are + Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes + named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive + signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or + a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not + present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the + signal names. If any arguments are supplied when --ll is given, + the names of the signals corresponding to the arguments are listed, and the return status is 0. The _e_x_i_t___s_t_a_t_u_s argument to - --ll is a number specifying either a signal number or the exit - status of a process terminated by a signal. kkiillll returns true - if at least one signal was successfully sent, or false if an + --ll is a number specifying either a signal number or the exit + status of a process terminated by a signal. kkiillll returns true + if at least one signal was successfully sent, or false if an error occurs or an invalid option is encountered. lleett _a_r_g [_a_r_g ...] Each _a_r_g is an arithmetic expression to be evaluated (see AARRIITTHH-- - MMEETTIICC EEVVAALLUUAATTIIOONN). If the last _a_r_g evaluates to 0, lleett returns + MMEETTIICC EEVVAALLUUAATTIIOONN). If the last _a_r_g evaluates to 0, lleett returns 1; 0 is returned otherwise. llooccaall [_o_p_t_i_o_n] [_n_a_m_e[=_v_a_l_u_e] ...] - For each argument, a local variable named _n_a_m_e is created, and - assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted + For each argument, a local variable named _n_a_m_e is created, and + assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted by ddeeccllaarree. When llooccaall is used within a function, it causes the - variable _n_a_m_e to have a visible scope restricted to that func- + variable _n_a_m_e to have a visible scope restricted to that func- tion and its children. With no operands, llooccaall writes a list of - local variables to the standard output. It is an error to use + local variables to the standard output. It is an error to use llooccaall when not within a function. The return status is 0 unless - llooccaall is used outside a function, an invalid _n_a_m_e is supplied, + llooccaall is used outside a function, an invalid _n_a_m_e is supplied, or _n_a_m_e is a readonly variable. llooggoouutt Exit a login shell. + mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u + nt_] _[--tt_] _[--uu _f_d_] _[--CC _c_a_l_l_b_a_c_k_] _[--cc _I_q_u_a_n_t_u_m]] [[_a_r_r_a_y]] RReeaadd lliinneess + ffrroomm tthhee ssttaannddaarrdd iinnppuutt iinnttoo aarrrraayy vvaarriiaabbllee _a_r_r_a_y, or from file + descriptor _f_d if the --uu option is supplied. The variable MMAAPP-- + FFIILLEE is the default _a_r_r_a_y. Options, if supplied, have the fol- + lowing meanings: + --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are + copied. + --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default + index is 0. + --ss Discard the first _c_o_u_n_t lines read. + --tt Remove a trailing line from each line read. + --uu Read lines from file descriptor _f_d instead of the stan- + dard input. + --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The + --cc option specifies _q_u_a_n_t_u_m. + --cc Specify the number of lines read between each call to + _c_a_l_l_b_a_c_k. + + If --CC is specified without --cc, the default quantum is 5000. + + If not supplied with an explicit origin, mmaappffiillee will clear + _a_r_r_a_y before assigning to it. + + mmaappffiillee returns successfully unless an invalid option or option + argument is supplied, or _a_r_r_a_y is invalid or unassignable. + ppooppdd [-nn] [+_n] [-_n] Removes entries from the directory stack. With no arguments, removes the top directory from the stack, and performs a ccdd to @@ -4240,9 +4330,10 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS ters are not echoed. --tt _t_i_m_e_o_u_t Cause rreeaadd to time out and return failure if a complete - line of input is not read within _t_i_m_e_o_u_t seconds. This - option has no effect if rreeaadd is not reading input from - the terminal or a pipe. + line of input is not read within _t_i_m_e_o_u_t seconds. _t_i_m_e_- + _o_u_t may be a decimal number with a fractional portion + following the decimal point. This option has no effect + if rreeaadd is not reading input from the terminal or a pipe. --uu _f_d Read input from file descriptor _f_d. If no _n_a_m_e_s are supplied, the line read is assigned to the vari- @@ -4511,6 +4602,10 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS If set, bbaasshh changes its behavior to that of version 3.1 with respect to quoted arguments to the conditional com- mand's =~ operator. + ddiirrssppeellll + If set, bbaasshh attempts spelling correction on directory + names during word completion if the directory name ini- + tially supplied does not exist. ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in the results of pathname expansion. eexxeeccffaaiill @@ -4560,62 +4655,67 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS ble completions. See SSHHEELLLL VVAARRIIAABBLLEESS above for a description of FFIIGGNNOORREE. This option is enabled by default. + gglloobbssttaarr + If set, the pattern **** used in a filename expansion con- + text will match a files and zero or more directories and + subdirectories. If the pattern is followed by a //, only + directories and subdirectories match. ggnnuu__eerrrrffmmtt If set, shell error messages are written in the standard GNU error message format. hhiissttaappppeenndd - If set, the history list is appended to the file named - by the value of the HHIISSTTFFIILLEE variable when the shell + If set, the history list is appended to the file named + by the value of the HHIISSTTFFIILLEE variable when the shell exits, rather than overwriting the file. hhiissttrreeeeddiitt - If set, and rreeaaddlliinnee is being used, a user is given the + If set, and rreeaaddlliinnee is being used, a user is given the opportunity to re-edit a failed history substitution. hhiissttvveerriiffyy - If set, and rreeaaddlliinnee is being used, the results of his- - tory substitution are not immediately passed to the - shell parser. Instead, the resulting line is loaded + If set, and rreeaaddlliinnee is being used, the results of his- + tory substitution are not immediately passed to the + shell parser. Instead, the resulting line is loaded into the rreeaaddlliinnee editing buffer, allowing further modi- fication. hhoossttccoommpplleettee If set, and rreeaaddlliinnee is being used, bbaasshh will attempt to - perform hostname completion when a word containing a @@ - is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE + perform hostname completion when a word containing a @@ + is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE above). This is enabled by default. hhuuppoonneexxiitt If set, bbaasshh will send SSIIGGHHUUPP to all jobs when an inter- active login shell exits. iinntteerraaccttiivvee__ccoommmmeennttss If set, allow a word beginning with ## to cause that word - and all remaining characters on that line to be ignored - in an interactive shell (see CCOOMMMMEENNTTSS above). This + and all remaining characters on that line to be ignored + in an interactive shell (see CCOOMMMMEENNTTSS above). This option is enabled by default. - lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line + lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line commands are saved to the history with embedded newlines rather than using semicolon separators where possible. llooggiinn__sshheellll - The shell sets this option if it is started as a login - shell (see IINNVVOOCCAATTIIOONN above). The value may not be + The shell sets this option if it is started as a login + shell (see IINNVVOOCCAATTIIOONN above). The value may not be changed. mmaaiillwwaarrnn - If set, and a file that bbaasshh is checking for mail has - been accessed since the last time it was checked, the - message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- + If set, and a file that bbaasshh is checking for mail has + been accessed since the last time it was checked, the + message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- played. nnoo__eemmppttyy__ccmmdd__ccoommpplleettiioonn - If set, and rreeaaddlliinnee is being used, bbaasshh will not + If set, and rreeaaddlliinnee is being used, bbaasshh will not attempt to search the PPAATTHH for possible completions when completion is attempted on an empty line. nnooccaasseegglloobb - If set, bbaasshh matches filenames in a case-insensitive + If set, bbaasshh matches filenames in a case-insensitive fashion when performing pathname expansion (see PPaatthhnnaammee EExxppaannssiioonn above). nnooccaasseemmaattcchh - If set, bbaasshh matches patterns in a case-insensitive + If set, bbaasshh matches patterns in a case-insensitive fashion when performing matching while executing ccaassee or [[[[ conditional commands. nnuullllgglloobb - If set, bbaasshh allows patterns which match no files (see - PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, + If set, bbaasshh allows patterns which match no files (see + PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, rather than themselves. pprrooggccoommpp If set, the programmable completion facilities (see PPrroo-- @@ -4623,47 +4723,47 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS enabled by default. pprroommppttvvaarrss If set, prompt strings undergo parameter expansion, com- - mand substitution, arithmetic expansion, and quote - removal after being expanded as described in PPRROOMMPPTTIINNGG + mand substitution, arithmetic expansion, and quote + removal after being expanded as described in PPRROOMMPPTTIINNGG above. This option is enabled by default. rreessttrriicctteedd__sshheellll - The shell sets this option if it is started in + The shell sets this option if it is started in restricted mode (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). The value - may not be changed. This is not reset when the startup - files are executed, allowing the startup files to dis- + may not be changed. This is not reset when the startup + files are executed, allowing the startup files to dis- cover whether or not a shell is restricted. sshhiifftt__vveerrbboossee - If set, the sshhiifftt builtin prints an error message when + If set, the sshhiifftt builtin prints an error message when the shift count exceeds the number of positional parame- ters. ssoouurrcceeppaatthh If set, the ssoouurrccee (..) builtin uses the value of PPAATTHH to - find the directory containing the file supplied as an + find the directory containing the file supplied as an argument. This option is enabled by default. xxppgg__eecchhoo - If set, the eecchhoo builtin expands backslash-escape + If set, the eecchhoo builtin expands backslash-escape sequences by default. ssuussppeenndd [--ff] - Suspend the execution of this shell until it receives a SSIIGGCCOONNTT - signal. The --ff option says not to complain if this is a login - shell; just suspend anyway. The return status is 0 unless the + Suspend the execution of this shell until it receives a SSIIGGCCOONNTT + signal. The --ff option says not to complain if this is a login + shell; just suspend anyway. The return status is 0 unless the shell is a login shell and --ff is not supplied, or if job control is not enabled. tteesstt _e_x_p_r [[ _e_x_p_r ]] - Return a status of 0 or 1 depending on the evaluation of the - conditional expression _e_x_p_r. Each operator and operand must be - a separate argument. Expressions are composed of the primaries - described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. tteesstt does not + Return a status of 0 or 1 depending on the evaluation of the + conditional expression _e_x_p_r. Each operator and operand must be + a separate argument. Expressions are composed of the primaries + described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. tteesstt does not accept any options, nor does it accept and ignore an argument of ---- as signifying the end of options. - Expressions may be combined using the following operators, + Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation depends on the number of arguments; see below. !! _e_x_p_r True if _e_x_p_r is false. (( _e_x_p_r )) - Returns the value of _e_x_p_r. This may be used to override + Returns the value of _e_x_p_r. This may be used to override the normal precedence of operators. _e_x_p_r_1 -aa _e_x_p_r_2 True if both _e_x_p_r_1 and _e_x_p_r_2 are true. @@ -4680,108 +4780,108 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS null. 2 arguments If the first argument is !!, the expression is true if and - only if the second argument is null. If the first argu- - ment is one of the unary conditional operators listed - above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is + only if the second argument is null. If the first argu- + ment is one of the unary conditional operators listed + above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is true if the unary test is true. If the first argument is not a valid unary conditional operator, the expression is false. 3 arguments - If the second argument is one of the binary conditional + If the second argument is one of the binary conditional operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the result of the expression is the result of the binary test - using the first and third arguments as operands. The --aa - and --oo operators are considered binary operators when - there are three arguments. If the first argument is !!, - the value is the negation of the two-argument test using + using the first and third arguments as operands. The --aa + and --oo operators are considered binary operators when + there are three arguments. If the first argument is !!, + the value is the negation of the two-argument test using the second and third arguments. If the first argument is exactly (( and the third argument is exactly )), the result - is the one-argument test of the second argument. Other- + is the one-argument test of the second argument. Other- wise, the expression is false. 4 arguments If the first argument is !!, the result is the negation of - the three-argument expression composed of the remaining + the three-argument expression composed of the remaining arguments. Otherwise, the expression is parsed and eval- - uated according to precedence using the rules listed + uated according to precedence using the rules listed above. 5 or more arguments - The expression is parsed and evaluated according to + The expression is parsed and evaluated according to precedence using the rules listed above. - ttiimmeess Print the accumulated user and system times for the shell and + ttiimmeess Print the accumulated user and system times for the shell and for processes run from the shell. The return status is 0. ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...] - The command _a_r_g is to be read and executed when the shell - receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a - single _s_i_g_s_p_e_c) or --, each specified signal is reset to its - original disposition (the value it had upon entrance to the - shell). If _a_r_g is the null string the signal specified by each - _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. - If _a_r_g is not present and --pp has been supplied, then the trap - commands associated with each _s_i_g_s_p_e_c are displayed. If no - arguments are supplied or if only --pp is given, ttrraapp prints the - list of commands associated with each signal. The --ll option - causes the shell to print a list of signal names and their cor- - responding numbers. Each _s_i_g_s_p_e_c is either a signal name - defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are - case insensitive and the SIG prefix is optional. If a _s_i_g_s_p_e_c - is EEXXIITT (0) the command _a_r_g is executed on exit from the shell. - If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is executed before every + The command _a_r_g is to be read and executed when the shell + receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a + single _s_i_g_s_p_e_c) or --, each specified signal is reset to its + original disposition (the value it had upon entrance to the + shell). If _a_r_g is the null string the signal specified by each + _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. + If _a_r_g is not present and --pp has been supplied, then the trap + commands associated with each _s_i_g_s_p_e_c are displayed. If no + arguments are supplied or if only --pp is given, ttrraapp prints the + list of commands associated with each signal. The --ll option + causes the shell to print a list of signal names and their cor- + responding numbers. Each _s_i_g_s_p_e_c is either a signal name + defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are + case insensitive and the SIG prefix is optional. If a _s_i_g_s_p_e_c + is EEXXIITT (0) the command _a_r_g is executed on exit from the shell. + If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is executed before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command, _s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the first command executes in - a shell function (see SSHHEELLLL GGRRAAMMMMAARR above). Refer to the - description of the eexxttddeebbuugg option to the sshhoopptt builtin for - details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is EERRRR, - the command _a_r_g is executed whenever a simple command has a - non-zero exit status, subject to the following conditions. The - EERRRR trap is not executed if the failed command is part of the - command list immediately following a wwhhiillee or uunnttiill keyword, - part of the test in an _i_f statement, part of a command executed - in a &&&& or |||| list, or if the command's return value is being - inverted via !!. These are the same conditions obeyed by the + a shell function (see SSHHEELLLL GGRRAAMMMMAARR above). Refer to the + description of the eexxttddeebbuugg option to the sshhoopptt builtin for + details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is EERRRR, + the command _a_r_g is executed whenever a simple command has a + non-zero exit status, subject to the following conditions. The + EERRRR trap is not executed if the failed command is part of the + command list immediately following a wwhhiillee or uunnttiill keyword, + part of the test in an _i_f statement, part of a command executed + in a &&&& or |||| list, or if the command's return value is being + inverted via !!. These are the same conditions obeyed by the eerrrreexxiitt option. If a _s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is exe- cuted each time a shell function or a script executed with the .. - or ssoouurrccee builtins finishes executing. Signals ignored upon - entry to the shell cannot be trapped or reset. Trapped signals + or ssoouurrccee builtins finishes executing. Signals ignored upon + entry to the shell cannot be trapped or reset. Trapped signals that are not being ignored are reset to their original values in - a child process when it is created. The return status is false + a child process when it is created. The return status is false if any _s_i_g_s_p_e_c is invalid; otherwise ttrraapp returns true. ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...] - With no options, indicate how each _n_a_m_e would be interpreted if + With no options, indicate how each _n_a_m_e would be interpreted if used as a command name. If the --tt option is used, ttyyppee prints a - string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or - _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, - builtin, or disk file, respectively. If the _n_a_m_e is not found, - then nothing is printed, and an exit status of false is - returned. If the --pp option is used, ttyyppee either returns the + string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or + _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, + builtin, or disk file, respectively. If the _n_a_m_e is not found, + then nothing is printed, and an exit status of false is + returned. If the --pp option is used, ttyyppee either returns the name of the disk file that would be executed if _n_a_m_e were speci- fied as a command name, or nothing if ``type -t name'' would not - return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, + return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, even if ``type -t name'' would not return _f_i_l_e. If a command is - hashed, --pp and --PP print the hashed value, not necessarily the + hashed, --pp and --PP print the hashed value, not necessarily the file that appears first in PPAATTHH. If the --aa option is used, ttyyppee - prints all of the places that contain an executable named _n_a_m_e. - This includes aliases and functions, if and only if the --pp - option is not also used. The table of hashed commands is not - consulted when using --aa. The --ff option suppresses shell func- - tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if - any of the arguments are found, false if none are found. + prints all of the places that contain an executable named _n_a_m_e. + This includes aliases and functions, if and only if the --pp + option is not also used. The table of hashed commands is not + consulted when using --aa. The --ff option suppresses shell func- + tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if + all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSTTaabbccddeeffiillmmnnppqqrrssttuuvvxx [_l_i_m_i_t]] - Provides control over the resources available to the shell and - to processes started by it, on systems that allow such control. + Provides control over the resources available to the shell and + to processes started by it, on systems that allow such control. The --HH and --SS options specify that the hard or soft limit is set - for the given resource. A hard limit cannot be increased by a - non-root user once it is set; a soft limit may be increased up - to the value of the hard limit. If neither --HH nor --SS is speci- + for the given resource. A hard limit cannot be increased by a + non-root user once it is set; a soft limit may be increased up + to the value of the hard limit. If neither --HH nor --SS is speci- fied, both the soft and hard limits are set. The value of _l_i_m_i_t can be a number in the unit specified for the resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd, which stand for the - current hard limit, the current soft limit, and no limit, - respectively. If _l_i_m_i_t is omitted, the current value of the - soft limit of the resource is printed, unless the --HH option is + current hard limit, the current soft limit, and no limit, + respectively. If _l_i_m_i_t is omitted, the current value of the + soft limit of the resource is printed, unless the --HH option is given. When more than one resource is specified, the limit name and unit are printed before the value. Other options are inter- preted as follows: @@ -4790,7 +4890,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS --cc The maximum size of core files created --dd The maximum size of a process's data segment --ee The maximum scheduling priority ("nice") - --ff The maximum size of files written by the shell and its + --ff The maximum size of files written by the shell and its children --ii The maximum number of pending signals --ll The maximum size that may be locked into memory @@ -4802,65 +4902,65 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS --rr The maximum real-time scheduling priority --ss The maximum stack size --tt The maximum amount of cpu time in seconds - --uu The maximum number of processes available to a single + --uu The maximum number of processes available to a single user - --vv The maximum amount of virtual memory available to the + --vv The maximum amount of virtual memory available to the shell --xx The maximum number of file locks --TT The maximum number of threads If _l_i_m_i_t is given, it is the new value of the specified resource (the --aa option is display only). If no option is given, then --ff - is assumed. Values are in 1024-byte increments, except for --tt, - which is in seconds, --pp, which is in units of 512-byte blocks, - and --TT, --bb, --nn, and --uu, which are unscaled values. The return + is assumed. Values are in 1024-byte increments, except for --tt, + which is in seconds, --pp, which is in units of 512-byte blocks, + and --TT, --bb, --nn, and --uu, which are unscaled values. The return status is 0 unless an invalid option or argument is supplied, or an error occurs while setting a new limit. uummaasskk [--pp] [--SS] [_m_o_d_e] The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with - a digit, it is interpreted as an octal number; otherwise it is - interpreted as a symbolic mode mask similar to that accepted by - _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is - printed. The --SS option causes the mask to be printed in sym- - bolic form; the default output is an octal number. If the --pp + a digit, it is interpreted as an octal number; otherwise it is + interpreted as a symbolic mode mask similar to that accepted by + _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is + printed. The --SS option causes the mask to be printed in sym- + bolic form; the default output is an octal number. If the --pp option is supplied, and _m_o_d_e is omitted, the output is in a form that may be reused as input. The return status is 0 if the mode - was successfully changed or if no _m_o_d_e argument was supplied, + was successfully changed or if no _m_o_d_e argument was supplied, and false otherwise. uunnaalliiaass [-aa] [_n_a_m_e ...] - Remove each _n_a_m_e from the list of defined aliases. If --aa is - supplied, all alias definitions are removed. The return value + Remove each _n_a_m_e from the list of defined aliases. If --aa is + supplied, all alias definitions are removed. The return value is true unless a supplied _n_a_m_e is not a defined alias. uunnsseett [-ffvv] [_n_a_m_e ...] - For each _n_a_m_e, remove the corresponding variable or function. + For each _n_a_m_e, remove the corresponding variable or function. If no options are supplied, or the --vv option is given, each _n_a_m_e - refers to a shell variable. Read-only variables may not be - unset. If --ff is specified, each _n_a_m_e refers to a shell func- - tion, and the function definition is removed. Each unset vari- - able or function is removed from the environment passed to sub- - sequent commands. If any of RRAANNDDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, + refers to a shell variable. Read-only variables may not be + unset. If --ff is specified, each _n_a_m_e refers to a shell func- + tion, and the function definition is removed. Each unset vari- + able or function is removed from the environment passed to sub- + sequent commands. If any of RRAANNDDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they lose their special - properties, even if they are subsequently reset. The exit sta- + properties, even if they are subsequently reset. The exit sta- tus is true unless a _n_a_m_e is readonly. wwaaiitt [_n _._._.] - Wait for each specified process and return its termination sta- - tus. Each _n may be a process ID or a job specification; if a - job spec is given, all processes in that job's pipeline are - waited for. If _n is not given, all currently active child pro- - cesses are waited for, and the return status is zero. If _n - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + Wait for each specified process and return its termination sta- + tus. Each _n may be a process ID or a job specification; if a + job spec is given, all processes in that job's pipeline are + waited for. If _n is not given, all currently active child pro- + cesses are waited for, and the return status is zero. If _n + specifies a non-existent process or job, the return status is + 127. Otherwise, the return status is the exit status of the last process or job waited for. RREESSTTRRIICCTTEEDD SSHHEELLLL If bbaasshh is started with the name rrbbaasshh, or the --rr option is supplied at - invocation, the shell becomes restricted. A restricted shell is used - to set up an environment more controlled than the standard shell. It - behaves identically to bbaasshh with the exception that the following are + invocation, the shell becomes restricted. A restricted shell is used + to set up an environment more controlled than the standard shell. It + behaves identically to bbaasshh with the exception that the following are disallowed or not performed: +o changing directories with ccdd @@ -4869,16 +4969,16 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o specifying command names containing // - +o specifying a file name containing a // as an argument to the .. + +o specifying a file name containing a // as an argument to the .. builtin command - +o Specifying a filename containing a slash as an argument to the + +o Specifying a filename containing a slash as an argument to the --pp option to the hhaasshh builtin command - +o importing function definitions from the shell environment at + +o importing function definitions from the shell environment at startup - +o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at + +o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at startup +o redirecting output using the >, >|, <>, >&, &>, and >> redirect- @@ -4887,10 +4987,10 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o using the eexxeecc builtin command to replace the shell with another command - +o adding or deleting builtin commands with the --ff and --dd options + +o adding or deleting builtin commands with the --ff and --dd options to the eennaabbllee builtin command - +o Using the eennaabbllee builtin command to enable disabled shell + +o Using the eennaabbllee builtin command to enable disabled shell builtins +o specifying the --pp option to the ccoommmmaanndd builtin command @@ -4900,14 +5000,14 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL These restrictions are enforced after any startup files are read. When a command that is found to be a shell script is executed (see CCOOMM-- - MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell + MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell spawned to execute the script. SSEEEE AALLSSOO _B_a_s_h _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Brian Fox and Chet Ramey _T_h_e _G_n_u _R_e_a_d_l_i_n_e _L_i_b_r_a_r_y, Brian Fox and Chet Ramey _T_h_e _G_n_u _H_i_s_t_o_r_y _L_i_b_r_a_r_y, Brian Fox and Chet Ramey - _P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_- + _P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_- _t_i_e_s, IEEE _s_h(1), _k_s_h(1), _c_s_h(1) _e_m_a_c_s(1), _v_i(1) @@ -4923,7 +5023,7 @@ FFIILLEESS _~_/_._b_a_s_h_r_c The individual per-interactive-shell startup file _~_/_._b_a_s_h___l_o_g_o_u_t - The individual login shell cleanup file, executed when a login + The individual login shell cleanup file, executed when a login shell exits _~_/_._i_n_p_u_t_r_c Individual _r_e_a_d_l_i_n_e initialization file @@ -4937,14 +5037,14 @@ AAUUTTHHOORRSS BBUUGG RREEPPOORRTTSS If you find a bug in bbaasshh,, you should report it. But first, you should - make sure that it really is a bug, and that it appears in the latest - version of bbaasshh. The latest version is always available from + make sure that it really is a bug, and that it appears in the latest + version of bbaasshh. The latest version is always available from _f_t_p_:_/_/_f_t_p_._g_n_u_._o_r_g_/_p_u_b_/_b_a_s_h_/. - Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g - command to submit a bug report. If you have a fix, you are encouraged - to mail that as well! Suggestions and `philosophical' bug reports may - be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup + Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g + command to submit a bug report. If you have a fix, you are encouraged + to mail that as well! Suggestions and `philosophical' bug reports may + be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup ggnnuu..bbaasshh..bbuugg. ALL bug reports should include: @@ -4955,7 +5055,7 @@ BBUUGG RREEPPOORRTTSS A description of the bug behaviour A short script or `recipe' which exercises the bug - _b_a_s_h_b_u_g inserts the first three items automatically into the template + _b_a_s_h_b_u_g inserts the first three items automatically into the template it provides for filing a bug report. Comments and bug reports concerning this manual page should be directed @@ -4972,20 +5072,20 @@ BBUUGGSS Shell builtin commands and functions are not stoppable/restartable. Compound commands and command sequences of the form `a ; b ; c' are not - handled gracefully when process suspension is attempted. When a - process is stopped, the shell immediately executes the next command in - the sequence. It suffices to place the sequence of commands between - parentheses to force it into a subshell, which may be stopped as a + handled gracefully when process suspension is attempted. When a + process is stopped, the shell immediately executes the next command in + the sequence. It suffices to place the sequence of commands between + parentheses to force it into a subshell, which may be stopped as a unit. - Commands inside of $$((...)) command substitution are not parsed until - substitution is attempted. This will delay error reporting until some + Commands inside of $$((...)) command substitution are not parsed until + substitution is attempted. This will delay error reporting until some time after the command is entered. For example, unmatched parentheses, - even inside shell comments, will result in error messages while the + even inside shell comments, will result in error messages while the construct is being read. Array variables may not (yet) be exported. -GNU Bash-3.2 2008 April 5 BASH(1) +GNU Bash-4.0 2008 May 25 BASH(1) diff --git a/doc/bash.1 b/doc/bash.1 index ea532b4ee..224bdb37d 100644 --- a/doc/bash.1 +++ b/doc/bash.1 @@ -5,12 +5,12 @@ .\" Case Western Reserve University .\" chet@po.cwru.edu .\" -.\" Last Change: Sun May 25 10:41:29 EDT 2008 +.\" Last Change: Mon Jun 2 20:32:53 EDT 2008 .\" .\" bash_builtins, strip all but Built-Ins section .if \n(zZ=1 .ig zZ .if \n(zY=1 .ig zY -.TH BASH 1 "2008 May 25" "GNU Bash-4.0" +.TH BASH 1 "2008 June 2" "GNU Bash-4.0" .\" .\" There's some problem with having a `@' .\" in a tagged paragraph with the BSD man macros. @@ -1945,6 +1945,14 @@ had been executed. If set, the value is executed as a command prior to issuing each primary prompt. .TP +.B PROMPT_DIRTRIM +If set to a number greater than zero, the value is used as the number of +trailing directory components to retain when expanding the \fB\ew\fB and +\fB\eW\fP prompt string escapes (see +.SM +.B PROMPTING +below). Characters removed are replaced with an ellipsis. +.TP .B PS1 The value of this parameter is expanded (see .SM @@ -4360,6 +4368,7 @@ the release of \fBbash\fP, version + patch level (e.g., 2.00.0) .TP .B \ew the current working directory, with \fB$HOME\fP abbreviated with a tilde +(uses the \fB$PROMPT_DIRTRIM\fP variable) .TP .B \eW the basename of the current working directory, with \fB$HOME\fP diff --git a/doc/bash.1~ b/doc/bash.1~ index d0e0bed6d..30d90470a 100644 --- a/doc/bash.1~ +++ b/doc/bash.1~ @@ -831,7 +831,7 @@ If the \fB;;\fP operator is used, no subsequent matches are attempted after the first pattern match. Using \fB;&\fP in place of \fB;;\fP causes execution to continue with the \fIlist\fP associated with the next set of patterns. -Using \fB;;\fP in place of \fB;;\fP causes the shell to test the next +Using \fB;;&\fP in place of \fB;;\fP causes the shell to test the next pattern list in the statement, if any, and execute any associated \fIlist\fP on a successful match. The exit status is zero if no @@ -1945,6 +1945,14 @@ had been executed. If set, the value is executed as a command prior to issuing each primary prompt. .TP +.B PROMPT_DIRTRIM +If set to a number greater than zero, the value is used as the number of +trailing directory components to retain when expanding the \fB\ew\fB and +\fB\eW\fP prompt string escapes (see +.SM +.B PROMPTING +below). Characters removed are replaced with an ellipsis. +.TP .B PS1 The value of this parameter is expanded (see .SM @@ -4360,6 +4368,7 @@ the release of \fBbash\fP, version + patch level (e.g., 2.00.0) .TP .B \ew the current working directory, with \fB$HOME\fP abbreviated with a tilde +(uses the \fB$PROMPT_DIRTRIM\fP variable) .TP .B \eW the basename of the current working directory, with \fB$HOME\fP diff --git a/doc/bash.html b/doc/bash.html index 963448ee8..dfa3d6517 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -3,7 +3,7 @@ -
BASH(1)2008 April 5BASH(1) +BASH(1)2008 May 25BASH(1)

Index @@ -618,7 +618,7 @@ symbols:

-|| & && ; ;; ( ) | <newline> +|| & && ; ;; ( ) | |& <newline>

@@ -676,14 +676,15 @@ The return value of a simple command is its exit status, or

A pipeline is a sequence of one or more commands separated by -the character -|. +one of the control operators +| +or |&. The format for a pipeline is:

-[time [-p]] [ ! ] command [ | command2 ... ] +[time [-p]] [ ! ] command [ [|||&] command2 ... ]

@@ -700,6 +701,11 @@ command (see below). +If |& is used, the standard error of command is connected to +command2's standard input through the pipe; it is shorthand for +2>&1 |. +This implicit redirection of the standard error is performed after any +redirections specified by the command.

The return status of a pipeline is the exit status of the last @@ -1062,9 +1068,15 @@ If the shell option is enabled, the match is performed without regard to the case of alphabetic characters. -When a match is found, the -corresponding list is executed. After the first match, no -subsequent matches are attempted. The exit status is zero if no +When a match is found, the corresponding list is executed. +If the ;; operator is used, no subsequent matches are attempted after +the first pattern match. +Using ;& in place of ;; causes execution to continue with +the list associated with the next set of patterns. +Using ;;& in place of ;; causes the shell to test the next +pattern list in the statement, if any, and execute any associated list +on a successful match. +The exit status is zero if no pattern matches. Otherwise, it is the exit status of the last command executed in list.

if list; then list; [ elif list; then list; ] ... [ else list; ] fi
@@ -2864,13 +2876,21 @@ string are not sorted; left to right order is preserved. For example, a{d,c,b}e expands into `ade ace abe'.

-A sequence expression takes the form {x..y}, -where x and y are either integers or single characters. +A sequence expression takes the form +{x..y[..incr]}, +where x and y are either integers or single characters, +and incr, an optional increment, is an integer. When integers are supplied, the expression expands to each number between x and y, inclusive. +Supplied integers may be prefixed with 0 to force each term to have the +same width. When either x or y begins with a zero, the shell +attempts to force all generated terms to contain the same number of digits, +zero-padding where necessary. When characters are supplied, the expression expands to each character lexicographically between x and y, inclusive. Note that both x and y must be of the same type. +When the increment is supplied, it is used as the difference between +each term. The default increment is 1 or -1 as appropriate.

Brace expansion is performed before any other expansions, @@ -3684,6 +3704,12 @@ The special pattern characters have the following meanings:

Matches any string, including the null string. +When the globstar shell option is enabled, and * is used in +a filename expansion context, two adjacent *s used as a single +pattern will match all files and zero or more directories and +subdirectories. +If followed by a /, two adjacent *s will match only directories +and subdirectories.
?
@@ -4045,16 +4071,13 @@ The general format for appending output is:

-Bash - -allows both the +This construct allows both the standard output (file descriptor 1) and the standard error output (file descriptor 2) to be redirected to the file whose name is the expansion of -word +word. -with this construct.

There are two formats for redirecting standard output and @@ -4080,7 +4103,39 @@ This is semantically equivalent to >word 2>&1 +

+   +

Appending Standard Output and Standard Error

+ +

+ +This construct allows both the +standard output (file descriptor 1) and +the standard error output (file descriptor 2) +to be appended to the file whose name is the +expansion of +word. + +

+ +The format for appending standard output and standard error is: +

+

+ +&>>word +

+ +

+ +This is semantically equivalent to +

+

+ +>>word 2>&1 +

+ + 

Here Documents

@@ -4152,7 +4207,7 @@ line containing This allows here-documents within shell scripts to be indented in a natural fashion. -  + 

Here Strings

A variant of here documents, the format is: @@ -4169,7 +4224,7 @@ A variant of here documents, the format is: The word is expanded and supplied to the command on its standard input. -  + 

Duplicating File Descriptors

@@ -4230,7 +4285,7 @@ do not specify a file descriptor open for output, a redirection error occurs. As a special case, if n is omitted, and word does not expand to one or more digits, the standard output and standard error are redirected as described previously. -  + 

Moving File Descriptors

@@ -4264,7 +4319,7 @@ moves the file descriptor digit to file descriptor n, or the standard output (file descriptor 1) if n is not specified. -  + 

Opening File Descriptors for Reading and Writing

@@ -4288,7 +4343,7 @@ or on file descriptor 0 if n is not specified. If the file does not exist, it is created. -  + 

ALIASES

Aliases allow a string to be substituted for a word when it is used @@ -4390,7 +4445,7 @@ in compound commands. For almost every purpose, aliases are superseded by shell functions. -  + 

FUNCTIONS

A shell function, defined as described above under @@ -4509,7 +4564,7 @@ Care should be taken in cases where this may cause a problem. Functions may be recursive. No limit is imposed on the number of recursive calls. -  + 

ARITHMETIC EVALUATION

The shell allows arithmetic expressions to be evaluated, under @@ -4632,7 +4687,7 @@ and 35. Operators are evaluated in order of precedence. Sub-expressions in parentheses are evaluated first and may override the precedence rules above. -  + 

CONDITIONAL EXPRESSIONS

Conditional expressions are used by the [[ compound command and @@ -4817,7 +4872,7 @@ and may be positive or negative integers. -  + 

SIMPLE COMMAND EXPANSION

When a simple command is executed, the shell performs the following @@ -4861,7 +4916,7 @@ described below. Otherwise, the command exits. If one of the expansions contained a command substitution, the exit status of the command is the exit status of the last command substitution performed. If there were no command substitutions, the command exits with a status of zero. -  + 

COMMAND EXECUTION

After a command has been split into words, if it results in a @@ -4905,7 +4960,12 @@ A full search of the directories in is performed only if the command is not found in the hash table. -If the search is unsuccessful, the shell prints an error +If the search is unsuccessful, the shell searches for a defined shell +function named command_not_found_handle. +If that function exists, it is invoked with the original command and +the original command's arguments as its arguments, and the function's +exit status becomes the exit status of the shell. +If that function is not defined, the shell prints an error message and returns an exit status of 127.

@@ -4942,7 +5002,7 @@ interpreter consist of a single optional argument following the interpreter name on the first line of the program, followed by the name of the program, followed by the command arguments, if any. -  + 

COMMAND EXECUTION ENVIRONMENT

The shell has an execution environment, which consists of the @@ -5020,7 +5080,7 @@ If a command is followed by a & and job control is not active, the default standard input for the command is the empty file /dev/null. Otherwise, the invoked command inherits the file descriptors of the calling shell as modified by redirections. -  + 

ENVIRONMENT

When a program is invoked it is given an array of strings @@ -5097,7 +5157,7 @@ invokes an external command, the variable is set to the full file name of the command and passed to that command in its environment. -  + 

EXIT STATUS

@@ -5137,7 +5197,7 @@ All builtins return an exit status of 2 to indicate incorrect usage. executed, unless a syntax error occurs, in which case it exits with a non-zero value. See also the exit builtin command below. -  + 

SIGNALS

When bash is interactive, in the absence of any traps, it ignores @@ -5254,7 +5314,7 @@ When bash is waiting for an asynchronous command via the wait builtin, the reception of a signal for which a trap has been set will cause the wait builtin to return immediately with an exit status greater than 128, immediately after which the trap is executed. -  + 

JOB CONTROL

Job control @@ -5482,7 +5542,7 @@ command may then be used to inspect their status. If a second attempt to exit is made without an intervening command, the shell does not print another warning, and any stopped jobs are terminated. -  + 

PROMPTING

When executing interactively, @@ -5651,7 +5711,7 @@ command under below). -  + 

READLINE

This is the library that handles reading input when using an interactive @@ -5675,7 +5735,7 @@ builtin (see below). -  + 

Readline Notation

@@ -5721,7 +5781,7 @@ deleted is saved for possible future retrieval accumulated into one unit, which can be yanked all at once. Commands which do not kill text separate the chunks of text on the kill ring. -  + 

Readline Initialization

@@ -5800,7 +5860,7 @@ and In addition to command names, readline allows keys to be bound to a string that is inserted when the key is pressed (a macro). -  + 

Readline Key Bindings

@@ -6007,7 +6067,7 @@ builtin command (see below). -  + 

Readline Variables

@@ -6073,6 +6133,13 @@ in vi command mode.

If set to On, readline performs filename matching and completion in a case-insensitive fashion. +
completion-prefix-display-length (0) + +
+The length in characters of the common prefix of a list of possible +completions that is displayed without modification. When set to a +value greater than zero, common prefixes longer than this value are +replaced with an ellipsis when displaying possible completions.
completion-query-items (100)
@@ -6209,6 +6276,13 @@ to display a screenful of possible completions at a time.
If set to On, readline will display completions with matches sorted horizontally in alphabetical order, rather than down the screen. +
revert-all-at-newline (Off) + +
+If set to on, readline will undo all changes to history lines +before returning when accept-line is executed. By default, +history lines may be modified and retain individual undo lists across +calls to readline.
show-all-if-ambiguous (Off)
@@ -6238,7 +6312,7 @@ by stat(2) is appended to the filename when listing possible completions. -  + 

Readline Conditional Constructs

@@ -6322,7 +6396,7 @@ would read /etc/inputrc: -  + 

Searching

@@ -6375,7 +6449,7 @@ new search string, any remembered search string is used. Non-incremental searches read the entire search string before starting to search for matching history lines. The search string may be typed by the user or be part of the contents of the current line. -  + 

Readline Command Names

@@ -6387,7 +6461,7 @@ In the following descriptions, point refers to the current cursor position, and mark refers to a cursor position saved by the set-mark command. The text between the point and mark is referred to as the region. -  + 

Commands for Moving

@@ -6432,7 +6506,7 @@ screen. Refresh the current line. -  + 

Commands for Manipulating the History

@@ -6589,7 +6663,7 @@ commands. and emacs as the editor, in that order. -  + 

Commands for Changing Text

@@ -6674,7 +6748,7 @@ Characters bound to backward-delete-char replace the character before point with a space. By default, this command is unbound. -  + 

Killing and Yanking

@@ -6758,7 +6832,7 @@ or -  + 

Numeric Arguments

@@ -6788,7 +6862,7 @@ first time makes the argument count four, a second time makes the argument count sixteen, and so on. -  + 

Completing

@@ -6897,6 +6971,12 @@ treating it as a command name. Attempt completion on the text before point, comparing the text against lines from the history list for possible completion matches. +

dabbrev-expand + +
+Attempt menu completion on the text before point, comparing +the text against lines from the history list for possible +completion matches.
complete-into-braces (M-{)
@@ -6907,7 +6987,7 @@ enclosed within braces so the list is available to the shell (see above). -  + 

Keyboard Macros

@@ -6930,7 +7010,7 @@ Re-execute the last keyboard macro defined, by making the characters in the macro appear as if typed at the keyboard. -  + 

Miscellaneous

@@ -7070,7 +7150,7 @@ Display version information about the current instance of -  + 

Programmable Completion

@@ -7250,7 +7330,7 @@ the programmable completion functions force readline to append a slash to completed names which are symbolic links to directories, subject to the value of the mark-directories readline variable, regardless of the setting of the mark-symlinked-directories readline variable. -  + 

HISTORY

When the @@ -7403,7 +7483,7 @@ builtin below under for information on setting and unsetting shell options. -  + 

HISTORY EXPANSION

@@ -7519,7 +7599,7 @@ above under The shell uses the history comment character to mark history timestamps when writing the history file. -  + 

Event Designators

@@ -7589,7 +7669,7 @@ Equivalent to The entire command line typed so far. -  + 

Word Designators

@@ -7666,7 +7746,7 @@ Abbreviates x-$ like x*, but omits the last word. If a word designator is supplied without an event specification, the previous command is used as the event. -  + 

Modifiers

@@ -7771,7 +7851,7 @@ An a may be used as a synonym for g. Apply the following `s' modifier once to each word in the event line. -  + 

SHELL BUILTIN COMMANDS

@@ -7976,6 +8056,20 @@ Remove any current binding for keyseq.
Cause shell-command to be executed whenever keyseq is entered. +When shell-command is executed, the shell sets the +READLINE_LINE + +variable to the contents of the readline line buffer and the +READLINE_POINT + +variable to the current location of the insertion point. +If the executed command changes the value of +READLINE_LINE + +or +READLINE_POINT, + +those new values will be reflected in the editing state.

@@ -8002,11 +8096,8 @@ must be >= 1. If n is greater than the number of enclosing loops, all enclosing loops -are exited. The return value is 0 unless the shell is not executing -a loop when -break - -is executed. +are exited. +The return value is 0 unless n is not greater than or equal to 1.

builtin shell-builtin [arguments]
Execute the specified shell builtin, passing it arguments, @@ -8020,6 +8111,19 @@ The return status is false if shell-builtin is not a shell builtin command. +
caller [expr]
+Returns the context of any active subroutine call (a shell function or +a script executed with the . or source builtins. +Without expr, caller displays the line number and source +filename of the current subroutine call. +If a non-negative integer is supplied as expr, caller +displays the line number, subroutine name, and source file corresponding +to that position in the current execution call stack. This extra +information may be used, for example, to print a stack trace. The +current frame is frame 0. +The return value is 0 unless the shell is not executing a subroutine +call or expr does not correspond to a valid position in the +call stack.
cd [-L|-P] [dir]
Change the current directory to dir. The variable HOME @@ -8078,19 +8182,6 @@ successful, the absolute pathname of the new working directory is written to the standard output. The return value is true if the directory was successfully changed; false otherwise. -
caller [expr]
-Returns the context of any active subroutine call (a shell function or -a script executed with the . or source builtins. -Without expr, caller displays the line number and source -filename of the current subroutine call. -If a non-negative integer is supplied as expr, caller -displays the line number, subroutine name, and source file corresponding -to that position in the current execution call stack. This extra -information may be used, for example, to print a stack trace. The -current frame is frame 0. -The return value is 0 unless the shell is not executing a subroutine -call or expr does not correspond to a valid position in the -call stack.
command [-pVv] command [arg ...]
Run command @@ -8171,12 +8262,12 @@ will be displayed.

The return value is true unless an invalid option is supplied, or no matches were generated. -

complete [-abcdefgjksuv] [-o comp-option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command]
+
complete [-abcdefgjksuv] [-o comp-option] [-E] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command]

[-X filterpat] [-P prefix] [-S suffix] name [name ...] -
complete -pr [name ...]
+
complete -pr [-E] [name ...]
Specify how arguments to each name should be completed. If the -p option is supplied, or if no options are supplied, @@ -8185,6 +8276,9 @@ them to be reused as input. The -r option removes a completion specification for each name, or, if no names are supplied, all completion specifications. +The -E option indicates that the remaining options and actions should +apply to ``empty'' command completion; that is, completion attempted on a +blank line.

The process of applying these completion specifications when word completion is attempted is described above under Programmable Completion. @@ -8429,11 +8523,8 @@ must be >= 1. If n is greater than the number of enclosing loops, the last enclosing loop -(the ``top-level'' loop) is resumed. The return value is 0 unless the -shell is not executing a loop when -continue - -is executed. +(the ``top-level'' loop) is resumed. +The return value is 0 unless n is not greater than or equal to 1.

declare [-afFirtx] [-p] [name[=value] ...]
typeset [-afFirtx] [-p] [name[=value] ...]
@@ -9192,7 +9283,7 @@ The return status is true unless a name is not found or an invalid option is supplied. -
help [-s] [pattern]
+
help [-dms] [pattern]
Display helpful information about builtin commands. If pattern @@ -9204,8 +9295,24 @@ gives detailed help on all commands matching otherwise help for all the builtins and shell control structures is printed. -The -s option restricts the information displayed to a short -usage synopsis. +
+ +
+
-d + +
+Display a short description of each pattern +
 -m + +
+Display the description of each pattern in a manpage-like format +
-s + +
+Display only a short usage synopsis for each pattern + +
+ The return status is 0 unless no command matches pattern. @@ -9481,6 +9588,88 @@ is supplied, or
Exit a login shell. +
mapfile [-n count] [-O origin] [-s cou
+nt] [-t] [-u fd] [-C callback] [-c Iquantum] [array] +Read lines from the standard input into array variable +array, + +or from file descriptor +fd + +if the +-u + +option is supplied. +The variable MAPFILE is the default array. +Options, if supplied, have the following meanings: +
+ +
+
-n + +
+Copy at most +count + +lines. If count is 0, all lines are copied. +
-O + +
+Begin assigning to +array + +at index +origin. + +The default index is 0. +
-s + +
+Discard the first count lines read. +
-t + +
+Remove a trailing line from each line read. +
-u + +
+Read lines from file descriptor fd instead of the standard input. +
-C + +
+Evaluate +callback + +each time quantum lines are read. The -c option specifies +quantum. + +
-c + +
+Specify the number of lines read between each call to +callback. + + +
+

+ +If +-C + +is specified without +-c, + +the default quantum is 5000. +

+ +If not supplied with an explicit origin, mapfile will clear array +before assigning to it. +

+ +mapfile returns successfully unless an invalid option or option +argument is supplied, or array is invalid or unassignable. +

+
popd [-n] [+n] [-n]
Removes entries from the directory stack. With no arguments, removes the top directory from the stack, and performs a @@ -9736,6 +9925,8 @@ not echoed.
Cause read to time out and return failure if a complete line of input is not read within timeout seconds. +timeout may be a decimal number with a fractional portion following +the decimal point. This option has no effect if read is not reading input from the terminal or a pipe.
-u fd @@ -10435,6 +10626,14 @@ If set, changes its behavior to that of version 3.1 with respect to quoted arguments to the conditional command's =~ operator. +
dirspell + +
+If set, +bash + +attempts spelling correction on directory names during word completion +if the directory name initially supplied does not exist.
dotglob
@@ -10531,6 +10730,13 @@ See SHELL VARIABLES above for a description of FIGNORE. This option is enabled by default. +
globstar + +
+If set, the pattern ** used in a filename expansion context will +match a files and zero or more directories and subdirectories. +If the pattern is followed by a /, only directories and +subdirectories match.
gnu_errfmt
@@ -11079,8 +11285,8 @@ The option suppresses shell function lookup, as with the command builtin. type -returns true if any of the arguments are found, false if -none are found. +returns true if all of the arguments are found, false if +any are not found.
ulimit [-HSTabcdefilmnpqrstuvx [limit]]
Provides control over the resources available to the shell and to processes started by it, on systems that allow such control. @@ -11338,7 +11544,7 @@ process or job waited for. -  + 

RESTRICTED SHELL

@@ -11452,7 +11658,7 @@ turns off any restrictions in the shell spawned to execute the script. -  + 

SEE ALSO

@@ -11466,7 +11672,7 @@ script.
readline(3)
-  + 

FILES

@@ -11503,7 +11709,7 @@ The individual login shell cleanup file, executed when a login shell exits Individual readline initialization file -  + 

AUTHORS

Brian Fox, Free Software Foundation @@ -11516,7 +11722,7 @@ Chet Ramey, Case Western Reserve University
chet@po.cwru.edu -  + 

BUG REPORTS

If you find a bug in @@ -11567,7 +11773,7 @@ Comments and bug reports concerning this manual page should be directed to chet@po.cwru.edu. -  + 

BUGS

@@ -11617,7 +11823,7 @@ Array variables may not (yet) be exported.


-
GNU Bash-3.22008 April 5BASH(1) +GNU Bash-4.02008 May 25BASH(1)

@@ -11667,60 +11873,61 @@ Array variables may not (yet) be exported.
Redirecting Output
Appending Redirected Output
Redirecting Standard Output and Standard Error
-
Here Documents
-
Here Strings
-
Duplicating File Descriptors
-
Moving File Descriptors
-
Opening File Descriptors for Reading and Writing
+
Appending Standard Output and Standard Error
+
Here Documents
+
Here Strings
+
Duplicating File Descriptors
+
Moving File Descriptors
+
Opening File Descriptors for Reading and Writing
-
ALIASES
-
FUNCTIONS
-
ARITHMETIC EVALUATION
-
CONDITIONAL EXPRESSIONS
-
SIMPLE COMMAND EXPANSION
-
COMMAND EXECUTION
-
COMMAND EXECUTION ENVIRONMENT
-
ENVIRONMENT
-
EXIT STATUS
-
SIGNALS
-
JOB CONTROL
-
PROMPTING
-
READLINE
+
ALIASES
+
FUNCTIONS
+
ARITHMETIC EVALUATION
+
CONDITIONAL EXPRESSIONS
+
SIMPLE COMMAND EXPANSION
+
COMMAND EXECUTION
+
COMMAND EXECUTION ENVIRONMENT
+
ENVIRONMENT
+
EXIT STATUS
+
SIGNALS
+
JOB CONTROL
+
PROMPTING
+
READLINE
-
Readline Notation
-
Readline Initialization
-
Readline Key Bindings
-
Readline Variables
-
Readline Conditional Constructs
-
Searching
-
Readline Command Names
-
Commands for Moving
-
Commands for Manipulating the History
-
Commands for Changing Text
-
Killing and Yanking
-
Numeric Arguments
-
Completing
-
Keyboard Macros
-
Miscellaneous
-
Programmable Completion
+
Readline Notation
+
Readline Initialization
+
Readline Key Bindings
+
Readline Variables
+
Readline Conditional Constructs
+
Searching
+
Readline Command Names
+
Commands for Moving
+
Commands for Manipulating the History
+
Commands for Changing Text
+
Killing and Yanking
+
Numeric Arguments
+
Completing
+
Keyboard Macros
+
Miscellaneous
+
Programmable Completion
-
HISTORY
-
HISTORY EXPANSION
+
HISTORY
+
HISTORY EXPANSION
-
Event Designators
-
Word Designators
-
Modifiers
+
Event Designators
+
Word Designators
+
Modifiers
-
SHELL BUILTIN COMMANDS
-
RESTRICTED SHELL
-
SEE ALSO
-
FILES
-
AUTHORS
-
BUG REPORTS
-
BUGS
+
SHELL BUILTIN COMMANDS
+
RESTRICTED SHELL
+
SEE ALSO
+
FILES
+
AUTHORS
+
BUG REPORTS
+
BUGS

This document was created by man2html from bash.1.
-Time: 08 April 2008 09:50:33 EDT +Time: 29 May 2008 11:48:48 EDT diff --git a/doc/bash.pdf b/doc/bash.pdf index 17af04044c3dcf9c3dbabd41201f75ece3cb073d..13481655ce225e29a26de1246bc6b8243831d931 100644 GIT binary patch delta 245968 zc-jCgK-0hKvJjEn5U?{1B|LDw8BR`pNOXsP8|WRRFbny`12u7UDDHE%IQcvL`7d1E z-m{Zh4I2V9IFok`Lx0YJb%aw5y>K0ZqLG(my6}U zF%gC`5v8J#7_?lU30XvG5-cCj!t1Z!hV1Pkcu6A@&LcA}%!o~W+m+o@FtkBemFr;DZntH#4(Po;c)YI~ zWkr8qZ8kyO2X!-4UAY=+Ym{;?=Sh?#X37U|NfB{bNc$j~c}Ns2%4zo*e2D=!%1OI! z!SbjmSP`~=Y^uf2%YPjARur>*>@j73Rm0p)+x*lI)qnQlv0mfnq3nkJE}#jO5iGWN zpc77w7jMEB)v$U26Otq zyFtyQJi}SUlEe(6tw^;Mn7ymIzHLf)y8&9tP5pa0)NMni_cPlsc%B2n&LubDe_lkl zWqqb9*58JGRoQ?o)H%WS%o4{<`0DkKDoS!G!|%ShTok}tEJV0`_1)_k-tcB33l|Z$ z)qjR!LVN%5?IM~vAB2!aNnXsE0mLBbB^j;`SwYRsBF^OjClH@i6TZsRNZObW-=E^E z)qc<%{7gvB*#sWp$t-lbg#cy5*%7;oC~%LYPxe!Ppf)|tga}%~ZwK-UT|K2_YYkw6hDolby8`X{+tP%cM{)wngpT{(d3eQpf zG<9T=80~W&oyCY7W+{h@EK21FSpe3q?d$iaaxyZM6beya+?UNejfdOnUKyGbaXaYc zlBijLwmqX0JrcWDU3(do6;mZ^B6kDvt_HT>4~-GZAubq9zBcYj^G zRWE)2-Sw-VDCsrpvRfm$>r-N&HGzFi^v1RvR`>c;?fAFh4Av5$bDW8jg4b}Q&#t)YcdbbsX3JA7yZyg~lCQ=uS;hU@L z<(pSuEU&%{uD`ze=9?L0a6DYdPk&}8p5eUadwHNRsk+;?KdoBAtKarEpt*_wa9ZYp z{!os{h>bwLshWWfa*8TUB4bPZFkrGNz$QNt2P_65u%qVpfYxdAukYJY^dgH1FF_w4 z#(a}{DCkK+7I$s8)!4;Pz?@ifI>X7jYj%!BdyMn!70mBbN`nBwxyS3i7v^?G@IQok!UP#pT|E+~zT zg}oGW7+FJR}AB%v&C;qYNKJ8Ohinp%f9t)5{H zmQ>oa`p_S|&tmt!G48(X5r1irF#UeF+tk(iTsirVt{)VHd66SeOD`^zw9AQMEpFix zs9fS1?FC92W#8jxq9x3(W^BqW0U#(TrJ@FD1~>{nG0|>{l3t;h7XZDJ->+tVR^8rx=D9D%h4N{H^o>65-Q)1UA#wft+e=RM>s4_FYF@wXVBr zHMHH6j`y5iSt*U5J0d+24;^Sg5yh7kbOD4+2jjFNvuP)Ct+2u?q#855=TYqpCk8 zkaAu9L5F4;KUV#X)WhXWS58XMn{e7<(0-XWUlQu*nenPbsZeFNz0OL(>b|6siSnz@ zz=GT4^Ly2`Dg(`OD+>6?si={@8TB=+l)9n522bO#Ykw!?E``%!jp;Wba2}D(4>NI| z`PDvbsOX+a3X&zoG#N*xVnZ6@V^Pw~D^R>ET==RQQtO|z2&tHSIA~|3NFNTgg6Xhu z6<#~r4TKe-+*}xmpz{HPkV@rfl5~{vHI>_U51auJ7YUoNkI0$=`Fbi#^m$vUr~Q(E zc=Oy>ZGYN;x^W_~>!?!)g1T*SB#;9EUj$5~^nACwHy!Z|^%$b46ha#|JXNTR_0 zhIF&e`pduFsJi#AB|E6xFH)wLCB62pD|h#VSy~%v`d+gVOIhT_*W+9x=P4`FnQxuX zrefJ^*6RI4&!n#KBwM*o&{}*!OO5y6Q-7X@h-F2l3M1P*PKDOoF>pEQmebI~c6pw- zL~(EWt0?V^L*Cc$@9lyW`hOAitFoaE;H?oP0_D6MH9|>b&Xl&oRPs!ZMnKgkPL`!I zHF9;=c8cXR%g{@ye!4n??BJQJkjEW4RJVy+tlr=Rjea8e0|LuD)>5e@{req)RDa7c zf)#0cs;1oOgRm+MR#+-Ct-qjRd1isI_v@o{_XQuO?M_@XQEu~<<+2_txXdN*5E}@t z$UxOUm{OO>Ng~e#ht^sX{^AY>S3iBf$f0gxmWP+GuMb59q)+NwxIMVs<;c9yk9?B+ z7nIiQsIw^d3h5}l6tP#}qHs0UL4UniB-y7HjC56Vq+l!;V4En5^RU-Hrc#7W?a>d7 z%Y`Gu<2P^!YS%?Vjxq*6phg%sWr~rgHbZ>RU!^I)sZ*dOI7K?GrK-KkR_M78chUw zI@bExvy_)E#UO+50BM7&myJ0Cd_n@Nvu(_0flZx zcd5oD2~%yR`CT)Mk?rj%f27fUx;K`LE71Q7oyC!VsZ0Iu1_FRi@e{V)Tie={x?%GvnmugzC>JU#6}jSD2TkX(~s-Xc@{+ ztj&fG(apMVJ)lezpAhPN$4G|I^_*{z60~ROlUkA!6>NB{O%@ zq{e3^$4E&x^D9MxP8ZiG7n0lH^RpOc3h9e+iv%7Z*&0+H$BZdjxOT04g7 z=tiUoLh;{$?3-B=;#}RZ>WhvT6{PSRFu_-DcUs{EPQPZYa41O zo{tsAPJcm=`V9|Yr?A}YE9$jlQ{`?~m7VIQcjmea`QKi$D9Xd}Sjj*uo26}$?I$dI zcO45pg(%~*Pd2C5m#5>4#WG67r-ax1Dk_PX&ya_AX<&iTH=XwL6u+*7V07_lyI|>& z>mDjVRjw9cPkgUFk(+j6==0Hd+=&@=rg*M9Q-Ag=(#Pt^jSxthf7*r6-wh*VE}J2a zRohIOreSasd}xBdeD?BEgX=HB&!6jym1z9i&x1Sn(Zw{$>1z!=-R*wj7|SHX;A})H z$=nw|YV!~3GZEEXC#dLqIlJNcg-ymHyT6az*0`@jMy!bf$hX2zekYzd$ zxjy7#+;)#NNzzRyqpv}r70mU{SFe8v2xb>a6fZ7Vk|TwuAtze;7WtT`YKw^tpODi; zSIe`1;?I8p*}b7w@Z3*b#tZ{;H(g=f2d?!R_tnj7Jc_@ zb@e}32(NM(XR<2s($(fnmQ|dk?CS0;dj03O5r4a4-_e_?5V3hBdS;%`-!IYxTc+$n z=IYty4gK}$tIF=4#7R+@A70nvRzJ4J2^putJWk?@7i#BrWNoKbPhz1=EaEiB0rWEO zd-IIbv&z}^uA#qUe??k`9!MN3H4is;{=iwB%YvH+?X+dnwqaepZ|1gVX`EN~HEp?D z+#jKe(@ekfCOU6dGUai>c{EL{U#|YcY*@s3Axrz#&^9BRdbV%(?ON?UPW3Py5A3?x z)+=7cRhgyH`?eogf5W!zIQ2uju6OMH3brRnT1Cw;wtY9^f4SPm8!b{9i*#mmkP8T+ z_hUWk2qFl1!7jMaQQ$ZaqVOhK@A|RXePs2>4*fW`*SqGN-EG@l!`6Lw(+~T$yQPEB z5q^I8`trZ&Al;@OHuRgjX19x17a33Ej2F>gw@pW3C39_DB|O8^uL`S(^EA5`);H0n zUWq)7(^5pEfBw%b5mDEA?@I)&%-z4ZJ-Km}$1*Xd@i;TT#lEB8H;=0{<@O!B zJ}uAgO!6-BHjhOm?14Xj-dSUPB1pXAN~1qa$fa}Ee@^VvFixzVre=SbRE`c!jbL^g z*39hYnT)y3=;%Y^tgW!Fiw;>Um9^{RL`k#XV=0|=GB0D1S-(X$L%-K1^2B39Rtg*E zr_Ho}dKgw|it0#t)PLGFCiU&1(mYNwA#HYdo5g~JBGN7RzfWUYF7qpixT?gwxMe!8 zZc*WYf2i&*tnMmKQt3b}r8Ou(^@Qkent`my^q-N8SzP48f=YZ9rWd!F5G^B$x(zJ< z{JHC4I*wCSQk?QcCgLoU+?%AMpaaeJ^+zBLJC4nULfm%S_8PID05lqbus6@j*sbtJ zVbLl}H891xhEp_-D)qRL@>1<$3q8PZxRDnnfB(utuV|r@g-%>j1M(^( z-mA<)_GRwS_0ZOUX}d?Iau|pAOFVz^7rTRc%1dNXS%%g*Zv~}Ay_wrxnh&SzJ<;6} zf8IJ!odZxtZ6tb<%q@mR_3qdh?93E*aGeKDS#_TFhQJ8vxM@Ch&E{Mo5b||Y=WbLN zzGb*g5{WwUSL1hl#C?-oNxpxsUApH zfK4Xt(*zi-jotKcf7iSA@K|>MbW5Ip!JqS{z^DUYEzPnLjQ~KnTv$6l_910W%7l9p zm4%4;;HVTrKAzw2jb#opkZ=#B8b?c+M(g`H3bd|rhsp*%w}v;#3fvYD>C?B=f5_kU ztWh*rAgK1&ND}k-rddxhQ~X=P)s7fO57UG!iObB@m|15IS{ay~a2~OyJdk0&1AUQn zmEv(Ojk~;$V+t9Cz6HNS;}fq}n+towZ?VD4R>~2zfd;V#7j+<4YIA2OF3~ z+fKf&ED_TaE~`T@s9X<<7NrS3e;8EA@8~0sb&$+6i-z)RTrw@_6KRVg0@rUpEY?8( z_9pN94KVfw3(dp}d6m^eqoSqV%h8>x9Nx|0Bl;=1c5b-H<2-q^{}oQFAs8aJ3Q=tf z?6=g`od(5{$)bAnG&0YF!<;L*a*|6I;5fd$e*S!7IdEy2+1!R|(tyTxe{F~ExWv3aOK9I+eS*HUF zgAW~7&Gq8<`42d*ea9Ilc6Ln0hyD}B#8lllUXG$0hE)7C0hZtljJ3HLXV7I z(9YM?(sVa4D)m~ofpd1P&HxdSI}?x7LqLd3ah&E0I2fP}nxv=Yj(OiU9moSvcbSe5 z8Cg+2o{qpNbLMxGnIcizjz~_kG}h*P7S0W`*~z#E_UtBFvSTA>$*6Ibo!|E;~*$ zhZ`vQT94-^T^`KhoCl5L4PcS=Gq^HUGBk)vz~rGKb=HPz`1|L7x_ohYb@}qe>!qah z{pJdX^4bxK8i)u&Mw8LjSC{T6TOh#gwl}VT4HL~jRioVW>m#LUyofV@ZSx~IG>C6=E!)Jj)M3)X)`k_V>qnUJly-F!kg|v4Bu2K1ZTIt`~vb~#)Zn%p{G;9KV zpWPUHE%k^|K*^?CtNHJGTay%S2I809*lwDkQ8$z|8{tZH-6LFSRfxhas*WUyp6$k- zz3YtY(eUp&^}B@+C34Vz-BV2cyA|Df)9X#QUX#2y$r=-mvjEJbpICq33+BZ|}EIXN=K|^}B4jD4{;>{gxg3378 zdi>b^dW86;-q{@RoWzjQ**q`kla3^uE%d`?jM>YsF?TEFa+=X=<`TdLhC;ZKMM2a3oi+cT|5VCp?qGz!3@#m> zJXz7cPrm(D{aZQvx8L+6DKWAy@pApiA6yvdfLNR z=daWaZqAG7FVDYce^q`=QyIN{_5EveFz0q3ktCLevA#l28{QKE*7AzJk4YWz-Hd+= zioj7hxf_d8le$xbgDT-FgH`&oZ9N|sNr3vHcdv+Mr0YyYO&g|?G~CLr7ed{9nNSdhjdxRjzX zt1^ll7M8dklC(GtozM>^rK{y~7o&OCo9T-%qWk*>4sov(&&Qn+D7t9V#I*R+~YU%Qbj69hZ= zt5-T1YkM6qj?i30Y{&411zO<_m3IAc$#$iHpWL8Sk>2GbJC0cY@Fw%pRdz0RZuHus~4|+G} zMm`m!isvw6CaecU*06NXAa0d}VSj6e-ZbwkeQ!{=nqxX{;2?ayj=AdB>x{NREWb*G zMzMbS|6KJ305ZGk)xLi-7tbXMHn`NGk3!66m-(Ykc%YWVY zg{qU%v!hmjpQG>di0FKP27>CIj-&c)k&E)*mYabMXH{nJ_7>k1mNeQb{U->8xvIUH zWe%zLSshUQ>Y+tg3>jTWh|?R9Xz=b{QudVYe*--Kxji&QlYV~}q6s%~J(!;_R72)p zq3`S5t@HxQIwg$vkS+dd!$S&AAJ9%qPc27YOz0(jjAAF;zb!q&t2~+a)7j@fQrP=R zuzNGxukz(x7=8Ei(5H!RO1w4SZqauIbBYiV(XJ(ylIeTF@U9H4@a-f2uz+k*VBEbDM0E)_8t(_MiCY{{S%S7e$j^E*t_lHGR^4DM0NRg}!wOj%MQtyQj~^Z@P-xrlaw6@Vp8JN^UzO1{m%knXt;c1g)e zxm>cfz)Vl~>C>ls@QK8fkr@Bce=fHtU%e^F&2SQvZ{gpYlTRm1K0x#z%Po1nIGM*Z z$;e^}PnY=1;`&4_z(~PKQ6;pj$YOgEJ%2x&E&c@y!J{mpSyGko&|-CxloicVvbZ~m z-hTH!V((|CF?GByntB9Gk6BzZ>H? zqe&Sv{rjUY|7RDz${6K&%+;^4wD`jZa!LL~KBxy-Y&OYhp6OMV-F92ID|~{}iGQck z(3nf>A!kxWSst@oKk{$25$9$js?CXh4^NWP3Ot;e*PcvH5<>v&zEkTnT6$j4_VaLs zH1{p1lqw(0IYccf7@4yiqKAH>JWZsp7HdI<5tgd^73uclZa67nlo3JEi()VxP>dTbM2I|=~@C0??ivy^;@w0O2B^zQn&bGLK!{?%Om(o zF{?5c$HWBZ_#dL$=&-IB^TErI(Z3EPT51~OlV#( zvwky352ie$2``NY;nd23`$4Qu!w`$U@A@MlW|B7^M^?#9g5wVC5L#n5SvJpUQSxKi z0@RpI6CO}v(+223@9-3&YLUHy3`9L*@fq%8WhfGRKe0cHa zOUYZk825dPW{>*;524s))3gGO$7RHfWi*b9B>D-??4HEmHuW%?eNM@~-H1WHH2bjl zyI+2|DH^!=b=_=2d?vs~7N1eKGvp!K`f4N837{+jDKc~9XqtKzzFRF>-LB0^Gz!oVZnUT=g;vT&taVJL6yj;4G>) zdl9(tebhHM>v7u+BS-~9WHyg7!99v?eV6@CF(=xS&4EBDxgos}6H=BD^G=Jo;%afeJnXNDAg{E}% zBQm#5x$DvM6Ne~k`n!xI`UcV8N_??22b7aLd9W;}nS(>W3L_0zcI*EsjBrUI+wH46 zNE)#cgNJGvVNGI8lGr>+pyoq{8)S)}e3MJ7HWce2Ucxk}$Ag^NbT`ei-jLR870azy zj(M+*yQ#fx5`VYNW#khIW}lyU^+4c2%f7inM!D(~5X@N^c+Ma(x)myBimQX8O!$pi z^(VtJtObDNZpPxMZpJ~fs@x`lxR+VLI+sxZsHP1vNU9XkZ=1Frg;4;CbDH)B!UFlA zgOB+@hpt+W~BC43mN#iS(7B zls{W zdqIg<=2%?3JpbG4H!sg-6%u1nMhoL+KG7v0Vpw4l!p}J7WkcT}`;%>b4;UqbkY}mQ zxrVVvu-dbM@dH_Rit|7qVHL+DGPUP!^h4^yu76Ol2G0RhU`*IY#CaLj%8SEvStM7}6I)RYp~^KSdg?m5qtV&x{fP4ua|3E7=dX* zt$z}-Is-XZn!tNW7SbRjmrCgx9J;G}WT{=>VbOzn+)zPJ)keeqO0pt|{?I949c;-x zE5C1sahS4_P585EUkJ#yMKRjIyOU&0v1zSrGR9WAqsgE4qFqWE(SZ}7%5RZijaLSH zD4A^X5mi+>P^I&@7gw1&y9f#D7yTLpYu2Y-)fr>3Pa8eCvtUT9b)OPIFtE zqSMYLR%~DGC!+&wNZpRV|9*7g3fmQDmQM^>;#GXDr=YKwDW;p=3ZwuF>mZiFdq=~b z!za`mC(w%iFCO;&doXaBxY>79=qBfSe-`rBR@@B!ADO z;Ei5OYz?4(0L2bslXHNK&hs>kyBBZ>j2#NuKGw#T6*Q}I7Q{9vTrn0`-Ky0AAwc5$ zfvvRBw}N;T7|v8?Hre#SE~8I-&~jQCK)#(qW!M0Zp_DJd$< z?2}HXqtr2eECI-3BTrl=~G>=C-ljtkO|)4xVDEkM@{XMw`~I7!8xuSAYF?JNDhi zX2OJP<6L%AVOHbfkHpw1i-MMMY0Ih=?O_p23RJ^pk4LNE5RA~2jGxY#VyH!#?NYAl z<&4KlynnpuXQ^&dJCF_&4FGLwo|ZNQ>a1mXiv*h*)ONv%0Rg|Y&9FX|f_^+0jX;EB)t+$B zC2^j+?G%x`Ff9<)T%8*^r)kcd{4G<39b1y?$#C0mZVo5|8ygc#YzHQS2beRp^N)vO zjW(3ZJxcp14KX%YzMiQOmhS#4B)7D%Eg%uT{0bU7gbVnJ&gNMO7=Q65OG=lQ*m0%P z#xb0Xs3}L8vd@f}h?umzP>-tOOCYZ2NPrd4u|WY#)JXU2)i*NwuiwZLHpr&Sh^)a< z)b*n(Yn(P)3BWG3=s!~M3ahw|7d+d)9IJPrb1g+DYH~c~9aVwl{H)||%mK~u4rhuX zW5n3t$KL$lh%@ytNPp1~^Z1E+S7AWA%;fMkN!UhQk09WO zZrMP$q)Kv@Mz_tV3bMjTTtS`&M(XMmm>IPX*pH@5QM0ZUSg|>qu;ZNLP^|PC0S#C- z$?@QV$-u$8ukofa;nW?pzq}uuZg6;mWde2B6(vAOcJ%;!WP}}6K*z7u!eJy*e+2W{Nce%6#sP{Ca*RU#14w} zkUy=wu&8h_o_~WZ$=rcTd+B*_c>n~esD?}NI2{!F$se#j&cpv0>r3^Nexdi&tPJ;^ zHt#&ipIF$ zdU^h8F-Z$fp--|5C5KZukB+NS-tTHYqUv4)Drlw{ULoL}n;I~AHz1c`AP!Rncs*8x z>eSrG(|-&yjjv{`QjO!j*^J-=J3W^p#`;>_5rLGxhWhL@*;8pw0z4!y?sPc{pJcGOR_*}}ElpE5n!b!i+;4;& zL(j7~K0*`0ts?dgLE<0uc2!|5{v4+DHDQXQ4Sz3FewiS>u-`+N1rMev;kwU$weIt4 z1(aDgxIAK8hSJCug47M}2E0JNpCk@`eBr(i`7%aZ?)x4iXwwHV54NYwN;nf`I&lJY zWbvb8$Eo#PAz-@)PQDU;x2rBBWyh{zE8BKrE{!-ghPDknonw z-C{osYIq#DI>|CO^Vjz{AJIFJ=dLrbd0?02&Tw$8EnH^v;>wz-@hNiY)W2(W6+XRLgol;EDA>ho|!5_No{4 z$J1bUwLuK2VQ_K3^)n`O!(vTqwttgX`IDgIUBSQZyJ^z_-9Ys@*3XZRNWp22RmT^CD#!5ha{@_ud19yO-e(OZ&E4(CWwh&O zpp@V*SR_EJbnRq(mw@JQz3}^){$3Tw%(5lY?pfFmE2f6veY5*qP|IET%T7pi_}`B$iw z7TF1Bm9t;Zo!(q5zI%DTxOhR%-^n@%4zH{%J^TKLS&m3gljv-2zQibjNmJ*0?_)-_ z73Q4%Y?FqlEO5q9*^ywX)PMY?{@y}=l!48l|B;ebY!!6wyIzF{iNUmxrwYIWz-4Y^b98cLVQmU!Ze(v_Y6>zpATS_rVrmLBFab1^^*v30ez34r z+%aYb0}P__1EnyQQkLyd>o`@UDh2I=T%>jZ3c!k@AMyqHm3*6jA>DHaxXX*=RLV)o zS^zUWeK~!)d;B3v2#pf_$Nah69({9`M_2t(5`72%zdHJGMAZwC`D3|_UM!C03E?7I zEa7d5PZpO)dI1{cEXoT`WDzZYwny=cliA{*un@dTIT5^&@X}&+#AQK58ZB;);qGUD~NfIyC@E7=BHKT$gR21>2 zaye{nqw2%1p1oWA1!ZPR=As~+7KPd6W9cL;2$h9Q&4W$V4AIcy({Ijy3Uf-9lUyd$ zy)r~!De+)!tqz)4eMpj-*Q!r$3;0nci8PLd>(an<*A+bBu>b{ur(Mg2<4 zVl^&^5atOPOF3s8HUe$Y477M6V99^^zo8PdO*?)wC*H*_iileoaRJk2?L23 zzCa0schUN1)v)WDsEqo5p&WL7)Lz08Z3m9Ds;;YMRX0~r+eE{<0@Io!C@WH#6DRi} zBT~ZEE}LCBfXui$uC#1nVf>-o=v65Nw_|3pPuHC};(nE-j8N`;;OWMddyPx9n?vXb zt0hKQu4ClX$<#+>hX>eRw|%v;2fFU+ZQ0dT4_fP&UHu*&y{|TZ%6U_g=N!djsU(!z z=(^eY$jnGlaPxb!sygdUg>rcYk!qj5{PBlByu;l_X<5BvC9sH{}-nh^BDhgn^~Y29>IG+O$J-U3Hgjw?)NjpSzjS1cj4v+pT)g z>2On3>e1By;gr%HLWf)6|A==8Uq%NY&p2WsKGKAb!-tUqVtAy5jATKyJ|6&Bqx-)MP9MFDl=EZ}1yDAI&(iQsJsbw|*IT zeOSXf_0p(SCL(wYe!9i=``!C~sOK7oX(33FOOFKrD#~$&-JoUb+9i0q`O5x^>wMU? zLlt$^wjE?)gca=4 zgG51pBo`Jvs9qJ6iAGvin~mXF9FFhNy1gDuCJat45t-Zx+GW{S$`BKNA^|&6haN?u zZHFYSL5wjDqP|2I@Zfs`pwjLJ2m+(}#HD;D?7mlF&gVghcPr}zC>T0hxw&4K?-8Zc zdQ7GernyhExzGT#TmvdD!C*a!7HhS6mI01`IA>@2MFa~)TMTZdSzK;*6&@mq>dVmY zwS)H2MLfj{krA59QG6OnMzk8d%p%mqtevr3KoS>lNVQ&~T^X1V&COCR?1s5a>lOAL z*)Bu!!sIBl_iS50h&w6+8;6+&h+L6+jWFv(5VaVW3aRz7%4%~C+>i$@MT6vx?-=@j zpq&v^*WJ{8MWT}?SVVA=+R(VY-t)Z%)3S5mVx$2z+#;TOa0MS*f~f`rv<^XfMMBYN znu6q#D50e}XlmFE0ME*0g!gq*cDD}6G?#?%pf)y-$Lbfb4lAswzWtX`f6DJs|9N~| zgWXf$%xT=0<6;IjlSO8O{a`UuZ!qG2j#Xr7_e3THq;grUss{7{xon&QQgCcGcF$4z zppFynOCMBDd`xHs9`-Tvi?{0NdrWR%t-5#kB)v0HQV4CAFUmNLE(2I5z!nZ53t?E) zrvWMvc&|ey6<_T(WoPM*NPWGa9A8<-E@U%3VE{KO+fVZqRHzp*_+D+R4W3Vb3rTmERRwsL45M>yO3>)%+=Yb z!4ZX>a{%@feA%Mpp-@gB^BY4LwKHsiK%UCM6t9f|FrP;zcTe&TC=0UXBa$~27N@=> zWeXx4Q8|>d@l4u0DtGHZ&of16TnKSUmL@~&N$gROyA=v^U{kJ>WKxNL%%vqro;{7z z3A|##^z)O6Isn#AIg!5+IpuLP1dIfJDtPXHtV?rC63VUv9e%X z%orpe;e`fLFnH#Fv+Q}iA4G@-1k+l`Wp=0WXuxmTZh`dz80~uN6_@P>s_SR)bw)Cq zA#o95REkYp+aEZNHg%8i34pb#mR(hrj&sk~`TT?mFPp>bMP%0-#MnePKeH zaX6n0x(miBrUMM_jsAxNZTK&<@16-3Hgpg{?8b{OIA;>D6g_S2dP@iH9r?@ZeAJyIH*LkPrKjn zNEe*lSweB->8H92OB4J60t#IzM==|8Z3-ypCq5h)p5`Ry`PlHm#~j<0t_05uIcfW^ zTGe(OPicW*K;DGMm%i3H!P-1W-{4yO)jG*Ykx!o2xm?`-7wW1BNG<<#B%TUw6oKLx*Guku{ zTX(x`gF`3&&~Y~*s~Q9ySuMBK*q1=%LC!dzwn)RgUN=)BjDhB};!UgdO+^~(=9}pl z2fIPB;Ri17p1VVYO_8u`vudY%a*}v?k-px4X@}-M_@Cct`39<5war8sbBT?PgnI^= zGBam|_*P^Yt*Ix`$RO1uT2pR3Z-GSH^#E_o&?uPJFj6o+QD-n-0Ix0rZ#31^yz)>W>6B1cwLL$&3HY&N7 zzTMWtVA^^k;0`86u(-R}@DK#}TwVZwi3=LwI4@KqHgh9jthO`@8*hiyrnJ^i&JHKa zTyXEVmtVQXQslDjwC1nd-h!gP4l%6DAu=9z5%-l9RCOqq!L^t~r~$lQ_@|%|K?&zh zVP_|AP8X+VZ^u#zPKw0cJW#V~n*nYvW(JOVhSP7aLMnV*8PGSErc6^oiCRd1yd&a* zk(yxmR1d)wD|~xXLL^vos8df}S*V*C_uGWIa8t&y4SVoEH)(c4=zjg(+bC8d1u15L z0;nd^+&3*W-Z68xPodnMa)k!GX^L}U)<|@#x$1YD0VgkN{^@|{O&6|vXMe7{-VCHhcdg)SS>O#H7oZQ{ zT1@<mzxb%d*G?%ZCS z1Ny`6Ea=Z=y4iek_ImLO!1?vd==5)@DGj;X-3N>rR0=z3Pu)HzK_3msPwFP{ z=4zz7+eon%aEp?$Zga@^?gFL4^{I{V`Uy=RZDUA11$(F$vp4bzLH(7kj0U~xW@2)v z(wPf``ztz}m|s`;FPqzcXa}W;xnl&WGfj)YB!$^4rg7ATWSO&@J%-mym3lIf|{RvXnSycT^cF zx#KC{Vd~D!eSC+x+b8?@Y2v=VKY6*_rF_!d<%I*{WfecuWcnI^ci^%N)&lnTc$f9J z6rY6V8Fic7g(Wo%ddP8b;8p~%WXTKmAAJwLG{a-{?o?B^UWGVSb|QJrj4m8Fx?SU) z&viMr4M@%WmG{*oB9{0&N%3UZ`^<@9>y9fkToab0S)0X zq}PygS!!;oL!nfE_$$qcnwq+*b<~sq{Bw6i3HAq}ZCm02+o#}w;;{R}!p?MF zdQ0lZ!2oNePTvpIYRC8=C0x!5yy2YYstJ!h$g&yhJkR}g!SndGRmRDs#A}%0blhJB zS&wB>mxRIl_O)_Ha%mFlr*n01he(@PWKi2b;=gmLSK6Xp6sj=1r;peAwfx`x@N@K{ z?ALQZjTt=80sBSFFfQMew-FQSOn5C^FC}oD)5XzW;h+BkMo=BhWo~41baG{3Z3<;> zWN%_>3NtbwFd%PYY6>(lGcyWhZe(v_Y6_Q;cmWfWKTarr?QYyicKxrXAP^v+0yUSc zVin2wm&c>oXyNfpYz-EHYy?y{WpTGf_B7d+HA&uJUM26CbL*Sz56O!OjDZIxSylJ@ zoLjeljnX8GQu<^5UOt@t>3tD>9?sI}&-m~2*{^4rdLc4@Egz!quFn=}!bNnw#M>o3 zxxPEo3uIA$!J?w#Nm)hL4`=arug|alhK2BI#uLG-5-(k^&UjfRB9E>g&*BgN_A$;r zo=4x&n>k~Nc_n^rp3uMl>3wDPS>!1;&!YvG>aC$!H_K7KlcnY*CXzC%Dzi{mKQ#IU zdsvnynM|2^ely(x-|{rIr)ay`+F6R{R*swavEQD5^CC$zk;kj^PuG7rW64Z4kV%&I zi}=$krxL$smL*x{4z%j$d-5dp=UunMIF%>MlY*z2dH!lH4=cSqtG=5lV^I}}U@4Cl z8KYOyB@+ZIV4Zhs*L;XYKZRo^}1K`R!|7btg;{5?(=kih+lCw z*JtT}C1(ZK4{2wncW#HMIfqzPnTq)9rtVhF>LU8wbj`LNu|-t7gSBJxFeK*-k@F<0 zxH|OEs7HHCKni6d!IMH*eUdzMs0A;|q$s@}%3Pg>4zt;|-H7k|E*fe55zE!vRn%;^ zZ~%PF;gn4IIg|L%EPc^<|4(5DyJfw+$CAx|vY|8GK0%sp_i)>&m4x1xz9^ESu!>8r zrrTtRES%QwMz>FutL`n|g~d9h>bC)!WAD`y&EeiGY+NrL<8~>8Ox@ zh#Diy&q1ci63$brn)k1Nyu7}A|6%HOZ~&eaRuQ+&T7_IDlS!)A=2C#a{3R_(A^*G~`>{uI?pP=o{g*ei-}ljDn(MF@$d#$yPg@Xxr^M@drnN@1NAR-*iy?Hi^P7`$_KgNP&xBh%=j__HNJgW*m z)EV+V^I<;K*ho=+Ck0woX@6U@(bekw>&(YFdeXaT3NlMy8Zt~YcMI*eoBi1u&EeVl zyLPM{K3-MLY&-!G>MlyVl7L%sNw16rH5m2iS0OqTdNL>J-T>uErpHo_vr{{5Y^PFn z!Jy=vOg8qO>cb^ju?mb_2YmuRQ#JbXdP}$N%mR2tdKGKu%sViVyPcz<$zgg6l=%ed zafriZLB3MS*Zjr23+f!wQGRBT(ApFb^h1uL{yeT|IZLuy3MStt1Z=@VkzFvE+>_$Z zJC&BpA+cA~8+ylfb&HBa#xtSJq^{;_@Yb8v6)GkYgn&}RqWfn|`V%;H`bL(qx_;~qSzv;>}mO1L;)s|F+VcE~>Z`p>o#9&tF z-A|T1*9Z@S#nc&9HV3f>JdM&Qir&k2c_P0Q4VLcFxoS3x2b z+rM5~84yLZ-gMte!XqVio_P`zp}r>2BKyt(8JKiYZ)fx@>@#9Yf&o?|=f=OH$iFDn!l3o-~?P2v!5;)#_-Y&7s-@jZ8v% zpC8k&9>9lfaRSFuMDQ0JG}ZnxTUzA7?+)gt7PtJ=d~#R~Y52fto57E6iI*}3au(@7 z2oj_rp5h?ts-7*!97yZ~w-&FkWI;dwoHCxlN=vmni{P7Xv`h(e+~gC+tHp!)VTCQi zFv8%?ip1MJE2+z4o)y8f1SN063*tw2+Pb4&LIIF4wr(N`6`H-_;uJ3ago?wD`6r*3 zcG1TF2H{(K@Ad`MJoofP2gsB+g@=T}y?$4h(x>HDt!1Em<6BT}SUVxzSSAs5M75{Q^ovrF(&1;d;S|4BwYRu8xXxV{?N3g-9#EfLUwh7J+AG+Z z$yPA?cz$-Vj_hT`kh9AUkvEg9S;(f72&dOg!7uQDSfvC%OXQq4$5|4Fg^SXC+5tg@ zIQOOFACM7IGj_RRT>GG!Ag=03XhpD2)FEA48_TUSQxkvEETsitm zlFRHbCECy3v&oEzSGD1wAS3&aL4N%`_SGe^oj`9!2fg|rBvJGDE1!=B7KS||;1SteXCVEA?+)3jkd9ZbF`GR z7b)I0;sT`$8eW#A28#D@s0Q~0{4@m35`7Kk$TC}&XrV$xd6q} zFHCV(MmCH?CgxRHj{wMBWfEp(&hA2)w*_>?K^Mo$J&(j&t*`6bs$jPGrh+F~ zP|jtWTYDKz4GErTR&a+V@l5xy7a)dwuuqBGYHheT1|c9(4u8?|xOX;3PX!Z$sg+C0 zgDCO$NF=-5Cs|TI*}C~H zDg7_W_b4KKS#)!5OpeNDvzn9-#o}*^n*U~2BdeI@&Ohk^Hou+4x~svfVUOw*UToLd?g!{QKN|8exP6 za?y9eUW@N!J+5=WMu0rkM8YTHyem=ldt>==2`wxnhXYP*A`pBM89_L1+QwcChaHMD za(OP1sMtW*^`t}SyFgJbHt&pLe$-dX5$eP6xFGZ57={ler?)6^qC7Na?B-}=E<&R~ z_Z&EU*gF+`Y*6pS7nMU6XKg~Z--OiXs~2Y45Eb7t*tKRH%0Rmcjjj6RdvgBY5)B15 zeM|>4jX)$EWSlw7+JUXJi9JKhL-;?rf!2@UzO>|jrG9T(^ZK6Nx1s0 zYtH}ce)cV7U<`2Tk@o5OlF#g(Jvvi64c6~>{Dl$dSCC`!cp`;@ z*B#Lh_Aam6R32q$XOxKuqsLCe&!*$(3WYl~cl-i@BLu)mx1HBr(RzO5qVHnZXLMPt z>BK~Ckx605AY^4>qNZg5)+ z5(zg-PL1)%V%^4w{2%e)JU5BzONVlNEHXA3W=kipUe1QaPpi7Z7s36@A(Sqv7Izsq+vQ zIV%3rA{gyH>67Nk?>HLj>G$&_Z3uz`f$6Zs`34|%4r7Y#fRuyBplYZsQc7Koej6mg z(h+vT+0cXtv~j>9N|nq3KWuH>XR+*~(VDVwO;I0%ug!m!ank~|hoX27v^w~xJAdfy zd!D+^u6PeD(Lpot^7_Wo!AHtBC=OiWHdD(;N3QZQU$(Oxr#iF${zoro*4sl2S&fQw z{sdenBC^rMw^UKf5!gUFn3r1ZrNkA&=leiFSgLGq@s`l?)?FVeBcPHO>oxt(@bUnK z)vc4MuoSL@U#^|!;@HVfw$@Wb7N2tCm-PP;oc)i(*Pz4ybM`9wG5z0UXgIHHkNXn+ z^2?v%Yh=rs#jQ|&q;D&*?gCCroRtrg);^#{=<$!BrN*TFW+@#%7yAdxR_Ak$-umy$ zZ+jH|zDpAcbiTy*Ke!c)O}TGha|aDR=W_bw$=i`7X(v{!|G>E#E2SBm&cMo1MFv+` zbA|6!XVP@G2eLK7hz>=j&!zG1p+)Y1Z9{P#c5*O4*-SKU@@Ta zv%s0exIS|klR4`b?5A5!aCzj6{BOdOpB=n1DiwH_d9=+ic}mdO(%862dYhNnCKwQ> z@cp|}An70)I<67Xsu&)g!el6Q^BYec{xS(2+h^%5n`Vu6o5T!zg#+IRM-hX$`crIy ze&$HYSNbL@*>}u)E&2kNA`CMSva0|rTMiDb>Q~iAsPv*f)z09+W(iNz_y)uLsY4k^ zzfXj-SdWT0k*t1lhH-a2&Q)}IX(KOmonFV4q|ds-JgwZ{SCkJYZ-Ysj5_1SEwO^iC zvN><}5GyWR7m64;7b}?y5xAlBD(--TiQuqqPjS+Fb80U$64wUjzVU*~8~~Ji-3npP zUGn^L&9wQMYN^03pymDq4eMD`iA3BSh^X+3D17umu)7Jtg)u|;ME%W*^T#Hg#mCfe zFB|8qM9Gcf9uZsMWwb&9gUsMW7ae>W%+wT-NMG+mP7+~dqt(?`>r=tVdr4-En8s;w z=OZ8OoExPQD0P{2cn@FcTXRJQ zt}jO_0Bb`?f4ZmlVmMoBdqTdkse0y?1_n_k5KVKG*sI3&mO$xN?YOP)3p{?^O+79t zT$dC`N(S|5dU;)Uq^yiwB``lbRSi+gLfaR4Czb~TC(<4t4m+!44Q@St{1YN2Ja>b;F@`)N)8UI@eq(P!?hQ43zBlmRu+3&2dbhr;}%lMoOMo)3)g5<2*h<>2& zPY^C+AFbK7zmbBD2&`AuRrV16Iw~asy1d;5ghXb^%ViK*YXRPYn^P`9cEbhvN!_A~ zqYRsg$)EZeaUN1a_5-$lAX7d^@=MR09{KaGvXF&5lM&;g zpXszW{fuu~Iec90*`N6a-GYU`PRudD1LtCAN$fHZ0jjl6WA=wpzpN)!X8rvYhr`Uc zYVF8iSgjSh&@T>kaol!b!H|}4S>mM_q^r$75MGn1-x=DoBK#?hMNjLIxtln2Cc_{c z5C8?K0FVv`4n5I&JF@-$K*S2rkVZ3wHNTlR@=RtXG_|bb)(Ixk+X_AK#p>$iQjsD1 zl<_Fc-MPMJ4`Em^$T@hSkGbPc)K8sarRK`aLtk&OJ3C@2`)8`59(eMWXB%Lsi_}+Q zC(hi|7YK7UQgS)S+Al$K*k)#-2m}L;O`? zjiu((c483j7Za#j{{%sU_5Q4U*7?oIRFI}p(JZ)zmkL?Ew4l&$2iXwF^QgD0U+KoT zoH9;II0>8FV=uw>U?sFqvzTG3<0EB|tOK`t6@rUEnQ>=GmeSXN=`-5|uH8BW*<1QT z37kmvqO`BRDDoUOQXjT+#`zLpZ^@7p7&sPr!a3f3&wd1@;6S!w%8!AWzOGtmP3(Ah zAf*^_?4uszSF;N8C2|%Fc9r52d8OL7D=en(F2L-sPPg!k15#gK;K>mZ}LP+gj0${vvc#^EC-MaUk*3T0E!|Gn=Ed5=Jmf-_8V9DUbVv zm3~#9JfG6iA>~ShGNpYd9PJ!p+;}1XRlop(4aNvN;=0{xAvL&f%u|%vJ%SS(aGX9z zTPEXBqZmUTB$=f-CE`%hFn`ii^#{R|ZeljvsW%Kxy{`UsDcm`l=#rPE0bH)n^uwf1 zd6fDPgxg^b_AvA zwbiPgi^e+Afnn{P?7skwOkIj9iu=<9)7LhSM82Qj#QK9&)vMzMqRmgv)&vaXT`MEefqh38CvZ!@3xKnqnw(1N@_4MTu4Y%JkaTpwhUUFAw7^U3g1Cl;K8Ud z!Jz>E7A~JLdH3(j-SN#xv&BIOOnloWuI!TA%zP>BNtAJ5vRqw51=ph@_(y8?>@Jn_ zq2NXEtRM@eksn|C?de1(fEn8T0LR-s9h0TI10fdSl0N1J`1q^n%>2Xv{|nCV0CEPha(=7{9UX;-EQ-Y z{6sYbN2WKrB+?E6oYjS|1rMoCRKSRLl+ne=MFHF@sKx z4!vj}M;$upvZ(da6jDbMp~PAN?4ckm14>>~GBH1(K}(!3RRzHb$+}j>elyzlt;Jfl zGSPS{eQjRB;^!^POzZ75#9`fKTOqfuu%<&i@i*3{Z`wE|4WBAe`lwZ&(!Xfx5SdcA zIxP@XGPna$BijMtF~zh*;W;B4f?7|Ke(fv<4KRl^qy>XmH5%w!NWbK45ACKJ{s98m8?msEF?C&imxP?N9-i%B$8E>s>@tK z{_PJR_lh+Q$vt?3#qZ=FSnODpucQz9A20d-Y1lPTbu~fir94GAQ9yhP)tAk%P*EJ& zHmRc}qjdb@u_PTqIGj&~39Gtp{LRpqEF4>{LcL3AKN0X=;`|)S7sZd zttSi--~CQ#B)jNTtaHuv=K7JV*=ckvJngcmbKjc{jI2V`>r&?0_Qy1Zs|`yTkS5G( zqECZta!C}e*8kG#_h+f(kHSaf4{k_;NfR(!6(hUlv zB_b(9uI$W+6zi|2CDi^t7=Vj>L8C*cT~{*W?q4E^Ohye%Q%qJnRg0J3hfRl)BCbge>q52Lxe<8XBa5ny)z1F{MDBz!CsW7^C)%``f=4< z`$1o0R*R+Y$nj0$mrN=Q_{W&kY7a0B87P%iE^?>GEevD2uRPso zjARqR-d?1K>^SzvlIR!vmPwskPZRY~!I)n^p8YJjX&*yx-Fvqu6J2@cLnpr0z0S6$ zOfjj_{Za-i3wPASP?|Mzj?DrlFr@-hC?U5!Jp;i{R`@-D`!_eocVAYC07=LU%=Pcl zv5=y)tX+IERyBR~V$XiIu|*&o-S;7n7-xW7$uI(4Vw2ktO%{c;4=O}IWNfBns+dD) z)>J?a%8%9AHc~4beJ6cjn07f(@i%KChdG>dDV}7{XLxS5f;UN%o(R$Aq#GEp+UZ8#;Xq=*>xH24d3Q2v6`wAhQ%vIZ#Aj<_1?)4D-?V9xu!nm)kD z?=Twmb!2fCJcKQPb}}^b*MgQj>ydUgaoCz?PAj4Uvfl=lm624#_-4 zvsL#Kp8e9pPgzh$dv^h*T!G%T1;kZMH(N(&>fp~7G&Fm@EDyqS%H1mD z`1mYnv!v9XvBh})Gw=Qn z!I@E(BP^N67I+{eFxAt{1-Iq=7N(yv#}IpuMzf=9vJcGdbU|JAj-NE#eCTX6!h%vo zB!|CTvgKj;tJwVqa@K%=-{8gCls9f_@Nw9Udu zoCK^)7{BKAqoTQ;WTYa4)zHrrMRu7J_4A(=yA#C+WypXiqGjDz+ABIzc9QF%p@v5z zy9zSt`wy;TGcUr}#i^(RHJn@o-;e6jM6dq7_WH4CrU$>wLu2ffjdaguBBoB0D-XZ& zN|col)x&P=vmc6Mg^VQ#1P`=$9FWztc??%wir5<%u{eK?Z3;q(mb%Yx*c}$YxZy4c zdY>T`>Ue;JP@wR5C-n3MyxiQ7_$t#8<0gy(WsEY4(iP>JVdWR}^_FkjyYwnG)xxec zzG;e2@bZh!L#S}rg{Q`#sJxa9 z@H4Jgo|aQT0Fw#7Qf&j_M%DRl=C{2cCC>z&=``_KPJKA>eE)^C` z&?`BdkQ1)@t{iMj%7L-%HE9mkNsxd z**8s+%s2{vr(D zPn`jsIzTF~27_eu>}-1@{Q7`@PAB&H|8gPh|0fs1#?8r*_+T#veA^vxCVXuxV>l;u|m_IknnYFEBhxS^Y7~C3&Xy9H}(AO-8<;0?s}FAc=k>9xkqya7x?0l~cUk&C~P6Ckv75GzO<-`EugrL+Lsc!QbvH z_)F+x-FDo5Cei+OLI=i7NP2r^duIkxC0Of*b;jV5zdebB^!J9w)n zAxq!mr8g05m+t&DON?5Wbwh6ZAy3^~B$LeCr8}Vi?e=+XuHCm&!Q0*2X}8pNdDK>_ z!=}U=x~O1So2BMCjm_C>w*F?fu<}>0SKe{3SQUq^@*n~JzWvqZHvol9{*IJA?~eDf zerzICaElJu-XjCm8>r;zvV-?$W=XTi} zCC2;96%KG}EP7@E-QA!L-p`-UAkh(O9dQzG`%BNq$p$#JCSE>|oUi+xM7|#PPYOg) z)@00ZQ!Y83T2~oz0Mf9jR`J5|y0e)em)#hIK{$|VkSl_|+Rw&??A@EqahmALswToRTb%7v$QTr%&sYAj#LKF-@$o zqN>7xrT47(7GQ%e2Q|g~ps)Jl+LP95R4ln5Ka<%A=68uo6YP&eTz_7Akl!4(OBqpY z&<=#!zb%Rjqjt=H?R3EJS5oov$B%#@Glnn~tP~C$I<%0g#K>@F9*$wjnkS6B<6z^> zS5bdpzuRphP_jePxnLIP%S3#I3Z}13bx3D8#|$5-y;*9w8?O&gy2S+3-}u4v*la_R z(|L$A8YpV6p^RUrlpIL#7sKZ}0$lQ!O+fCXg5lr;3|%uFzDX%;phNG7j}XV$tj!-* zsMUciX}!9B79tM_E;>gwUTnf?ip`CZxp2o_D270sD)o+=zK>0yTS$ZFC8Y9UY8_eQ zdW*3iixkZPic@n$aR*nOv(BwZE8rVd=f^m#h#IxJS#T&(DU;nij36sF#%WKsB+%Ja z$OE}}Q6;x-XGM52TBsS?++2ZAqyW;!*XT7|(F^+LrZ!(+v+MUx%?^F)>x3csCmhKA zu#)X=f<^wrMO;H5c>kwH)Atmi2Xq78;4gOwf^-lUgsHF_zg#Wh+4Osz5LFLWDV4^7 z37s+!^8>U-uU|UPZ=8SSaEx1zZFAJsZ38WHT+*`(HIR z9EOu2_t;jfvQRI9r3+>o5(;`w9mkR+2b=e^N3L2d>T=DJru~w&0*EIHe1L6t913jb zP;Qe{q2uybU0uI3Juz+5y7?RaJV%0YF~K)%c=t2AUXQ*zY)w$f=mIaxx)k|`r zfLJv}ItDzHa2kT+z}AR1V;WQww}26)i?}A{uM17R;6O3amaWj}qXTe2hThY79?HyU zzX5@tAzS@3r(Eaih28}KCkcb((WfOM=aP;4*tzfF^d_3E6ix z=#ljBCW0ra6gx7%O<0{fv?_B6YH|lIj$C4mK1`LAh$pCrTaDLei$i^O>PGFA{Q2(X zXrYEEWx!u*;`MHnHUnvU3Oox`LilLGfEOZSZnF5wD|#Dg20iQ7=ao@R>Ll%znd=wEl*m)YDHPX zko8RWB~5>PuMOny1El$LBSlfcMe&!=C+oqS>pgx*?;2US94T;rd)fBc(^bf%!{U?u z5bJhQixC}}-sO~}AP8IPatW1v0kJ!Z@3(#bl!EW0*C|)jEHA5j8#6PK>cLUX&$lax z_5E&kd_Y>+yb3E(#jVTHa9*d`Hs!I%R8;Y=w4DYo@Mp8t00y6`d2Eu1C=^5#$ko~X zjF@pzn**36mDpFLkVG+6!x<;G6%q8B@lg?ELY#Km^gKi;dY|LO1IhcMWimCg?1a@| zOSh`X=I^0EXnvKz=b|a#v51BIqg3;ApzG?;8EQk}H?b(MURy;5hl-9)Amu6r3}e9+ zeuQ_WpX*JV0w~y2)s0vJeEJe`0Xq0+pw{E4;;x)`)YPn#swDEwIZM~7q2SFIZvreU z#YvFVm#iQ$*6TYkO)PY!3|gru<2e!Ad61Dsff?$aEqs*mia5GKeo$g2VgEdZQ#-iP zW*fVM9}WZZnM*%qiS{@-`tbpnrWGwA@8}7#(T?G2KsjTKeVmwU-ML9-dYqIN%H^~i zq>&3$Rh`0!4x%nvpOg*R?2nauewLR7pONuJCi~dH?Ba@k2H`m)!ppcHf}$~Nhcd>~}o>nNQdC0KKEGdtwa3xGR|}-JobWS#alxuqm|x_&I?~ibq&SRC$z< z=khy+TM=ttwVIMgv4UKX=Z6#i^nhxyb=P7(a2;2L7sg5tCWtpH8ngC9%=hmSe6bH( z8aXG1ILffKzDJIApC_Eq)vXJf4_1|DM4K3n>;t}rsKt;V$R9g{^I5E?xLEP8=2O{S z)*i2U%@fXfx|jH##yr9K4GOH})!+2vMZ{*A4QAMQne`#!*(|mBIq|o}&g3J4iQN5u zKtpogNv_C*&$k!M&OW5sh6g5M+jyt0R(p`4B+*t)jDMQs=OcBPyl0v8RJ({bj8eo6 z$?MT4g5_111JmemBvMJaZtR$f@?Xt|w}hFeQP3Z8o^YtQmAanpE~XIBld#PY;;%<+ zZRq3wFzM~(XTmq$eOfbYmX1xJT5+HofVRfng>XGcToGUG%hDswcO1C+jX!js_p$ch z9zKs(m!Y16pgve{tr-(Msws{nAchHZYeI7|F|VMJf%OD(f%!e9C>$bMGh*|$MB_ds zYNu9;D8=d-IJ`q&K*MJ25r3v#^Qltp`VR*&^HeZ*@E33XBWweAg;M?5F*@NSKr*{$ zhisI1>nAF#b6HyubwHxe?4xPtID{=Xrd<{V}Ir@=#7jpWpL^7&%j-4H% zb5e{6`cfeU1C*F*QkjYy!Lw4(GuWEs$UO|?Gwaz26qMxw;dmcX+&7cspq#ioK2kNU znYo#E)^Do9UQQR6Hv~A>Rq;R;U^}0_=-2k|^DCi$ME-D~FcxY{ zJtdhH(e2&9lhcwHeg5If8=A2@6&w=I|KFk_Q4lpg-bbTcD)(M0Xn@5dpsDh$r%s(t zAg!a#AuR+CwQf!a%QkQ;QX%@*>+rzeu2Z4F;kHj%3HK}=w zY*g9v)YZSS6td?puap>VQT}pI;}jM?^DnV<_+t$Q1BB6}|2j?Vk0y8fFeZC(JvNLhF==@O0QLz585BKAuPj3RE6I5Crgm7_E`5a z+`M|z$4G&YZQ4O9W7*o7`v}M=Mgr`$#%U55j61Sz>`i`uvSzI-{kK> zk#vMr9^Dnk@N1-^Yn$va-fg0W)E|ZIdi+*H+kY0ce_EYBC!RhbC=5Eq)#0j8Y5#gR z=tyw^F$4X_%@b}aylOOL?t%g@L)2~$Eq zXN}IDdp+{RXtEjHqU2pTvh#%kd5FM&P7WV|@nvs%%FUh~8Q8>2o9-DpfmU4lAwHvL zjaymQMK*!J>0jb>c*)eY7$dj2I3mZfMZ7DwAnuC#n72PSLO)Q0kAygve<_7dP(uUJ zAUg6Gn*i&t4j78r-%i5rA-dd><-FLgHH7GLlbGR2RroC))DjELJShev%^T#(4wj75 z|NEq}4&(U8#|AB&Oy-}?fBAjyxTfFW)4IK-6eFZ3MkWy`zws~g(2KR|v36v+LyHkh zfXK3ZZ#xz#d7aRJmz|E7y-Yi028wq2V<1x{`6ar#7r4&ve>D7NHfZHrZSFK%Fq+pk z`DJLQ^C|BukWAlfo6P9e)X)kppxg27{^{p#t-A0TV4F$6iDgDW>aP)%4%p58%!IAR zmYV@r=Md=2PcZZafh>!;fX5Yx1MZmsL3hvx;n5L|M5WrH5dNh1qp?B;qcVKE()!g6 z<-TOx!bLa2PXR9=RAvu=??4B5+0w&v@A z*gVSoI4?~$6P!uKdS&pk-4i6ZCu&0E{p7S5mH}5MV&oT)0XbpOSdg8X9`LG3{kf1D ze7UqodeAoUP5J2)-zW(X(YXdxM2t^jd>wEQvor4s^SbvUw!2&=ORNuTY7#W9Bc8CVy3#steDPmm_;t%G1Id8tkX11MiN3X53z*lPejj^oP;33Y7`^^UB*SP46F5 z4@&mu5T)oBDarMpJkmZ2*sjrkN}_9>fy@C2sN92ao)fiDklY+V&A`clS5hGeZQjjDFW|4uSf-h-|Q~9Ui6HQa|#KBko;>! zCQ@g}KE7dvxW+I>$ztsx+1|%!Y9KF2!?0fi!5?0*{g*4u6mM8NdK)K!K#ki@uOd3| zgrLp#!4Rvyg;FduL;>>=Yzb9hXLr44cFn2F-q?O21_L)3;ytMG2Ha%zXn)H@lvLAu z**_MY0)6*|X)oFjWKOST`aY2+Pj(VqQ0)|}^;-FYtPk!0(MHoM<)>{DM%=jk{>G?tIM&lAzj%r}SuiF(-oTxSwp{C|M4b0o(2 zivrr~PV1wnKFb=Dft6UY;f-m127c1C$PER}*$s!$vV79gzkj2^gpUS*V1qF5{mx`s z(H|2k`NP;2pJcHtSggZ1w`VZB;PduyO8717JsuVdT+F!m++C`PUuB}_cKP)@QwilV z|MgoTI?dqM&zkhX4Kj)EKl{<6wUM2M_yY*%4p$X6mcTkkzkXe{xn){`Nonv4@sBW^ zGx9_mj0g#!CzS7UXR_yaVbZBo} zNw1Mu&t_XG?doOec7BR6-OMHNS`89R|CuVpMXqxp+k}R(%7lc*f^vuKq$JpX_Q1qL z2c@<2?|8T5_)c4;IJxz)5%!dLfvJ&k-;o=>L;2H%(W@^N zGaL5l1a>5xTwj@QfCjS?G&GJ$(Y#9e4OOAh2~Vd-^{q2q?x4B zyT*EFiKd6LFN@})0Yv8&I_9SEAwWIKhU!u^k42}9wmD4plxbO+^47M7mh`+@%2!hA zvq|>B5KYx&<|=YzPtIgE&Oh<(w0dc)8)7I6HOvXg%se0M&C{7S_}A)Dsg7!E=HeGw zJGKqI9`lgvL)Ir&X7KI1%j5=+Ebt#kCz9T)&ChnpB7=gH7^U4rY)s|%2SCdx?t79L z%k@R)6V{L83hD|R zDPm4W8e&Xl3vg?0%*j^j8%C7UlLAnPIks34=A@*FQj}4GuQfupfN{b4hi4S2mA{sW ztV1V1er?W?UyyEkU2|HhCjyDYMIDKX)}w<$&Nbv}4dAyy{2{(?UrYK=o#XkDP`Jk` zrM73ZQ@Grt^PrP^R^IrO;LJe;f=G3$gBQ;?S{V;bohl8&iv#F}vcY>-D-$|@qF-

`qgNmDeIEy8rt;6nBszIch-6A?*jzs@d>ZS79ncJh88-If9Uf*U*U>j+Qj$EI6H z((&JT3y&ZWexqQ%2oS#fonDS#5HJ|(G)3u+Xspfhg2qp92T`NN%$}NRa!@@ZS*E_S zWT&KsU@G|uM%HY)jlhDN54;`Ji_1oExCkrxai>?W?w|Z2Q*oYHs+#k(E}=>OFwu&= z7fbojx1DL&Dx~13B3K9TL9S2O6&?g|VUh*!mSvAjyni}DBD#HorjmC2h%h@DtV?(r z9G3IE+f6ZhHlOKn@5U{xhA+byd7)jpav)3=gMl7Wn15A7y@4#AUX4eHWR%8HpFfuz zOD#F|Fj+rfn5LS>vSj*3VvbM|lfloM-PtD0@fV?nJ5IR#|7R`ECNTk|gw7R1RMJ0`e6y;%pb*Q2>l8I>vnQ3)zT`J&4x!|DkwuoTpOxF-z z+@(`iFQeYKp1$-d^Q_7jsM!wcCuQGGbmsliN3nzndVwiJmiNUyH(8wVwJn8%2m|5s zY%bcyTIpj)GZ4rZ-6{W~kYcfHW~q?4;cS^_yVgMTk?D#qkQK0EK2r$gTTqiX-#Ku0 zsHmD4(+6Y)7OyH}&K>6qTnNktdvMhv1pD713ZQF>s4V!Sk(^2+7d~mVJbpmw;^nUO zU-|Z6XaLrMNMb;A$E#1bwvKr>6I#(U_+*0fFy8;d-c>abjJ7 z{E_POwiTCfZFOATYQZ?)%+w&~C~k--Z#;^tyLzof+n9)$S!b6d0xub%mm%8w6%wBd zMze9#CIbH*n|fT~ZW%v`o_toRzhNM+D6cZ62w*PLj8XLl|7#p3t9aB%mVPmSln9yq zHJHjOCL%_=ActpC8ZdncW7Qy+A{(h&5D5YU{_y!x1|g!GvLRZ7TG;G<5Cqd->L!W@J${j7GXeIy z7^tbNRB|oxt{bv)2m7fyVBF|YGb`+`>GY|{W(6Xweg1%-E6b-w=Odqz#^ki`#Q1;9~9W|V|R#A=Brj!57G7! zV-~Y`vIc7i|yTb~!7Hs2@iCvaNt>l?YS(X9e~b6t(mmpc(U0CW=Z z(#xFBJMUow9uhFh{WSX6O(XoMH}-|dJ01H<18)Oe+94J^qdH!KmLms6Ow$_{ z9z~82UlWT{TAgt)Hlr$&0Cn*M8W(t>4B)PRkJQ3VXUUaH`Grh3W#2@}CvSsZZu&1w zEV>P$Bo$Q=GdAbzU*a*M{>hK@&*LWlw?MX@zdh;jmb6O3>7I?rp5(U6jR!@tY%I>! zg4^Po@N|>wb-20yta04Q5}S|z)7L?E@*Vu+hK}MI&(?$3lHO~FcR~&U2vhR}WiM6| zx@{5AbgeYkm!ERq6jD9`xn(_(iQ|vyY!Cg!>RuN_9!WJxQ}XzU~3aQ6p}Yvo(@!uEN>%F4?o0-V?3tCgLAY z(ly*A^=FjG%gg)Gn5GTDOfv>cP+FiK1YBx1`<{)s%Lp{AF_YGVntxzP%6tLWEd5x7 z>@u&oki)z(Q!}6NRDX=X3F+iZ_no(sPBmzJ%7NC( z=A%b$)Wo|D=eaQ=B_`)`-W=NoJ(+;&S-?Re8aXignX z&`|5o639REn_4GhP45?1%w(Kx0}x5 zl*u5CiqPUR_~51!)GW88l184uw*i^s2KU~;&{C&H>h@m_Rq7#^6ZWS}cXi}eBN>F@ z8On2FrH3Q~KQ)Unk6Ghn*jk2PhuMj?Z#)b2KY0ya0 zuKfF-V$HK%fR{`6?cZG^j}B^=MjiX)XlfI}K{W1W=mT_qqbqlvp=M7reD<2LE5Q{# z5&`zm8n5Fk4reSPf_>@cXyN@Q#4MroXl^y0F*0FWE?5qML*7^H!2t+_=oZk%`S0O# zGa-kt(X4`61VuSAjUQ*-iBKh}g3h;e4Mk&=Zhmd90A&EVfXga&aId<45_Ifam``); z-Tcca+7<~>v<^57(gr0_a|wF^5>a-9Cvdc3 zw#gF#Kp?w}hk96qY2Ln((~z$@`K{RcrK+sB$i`nO}Cnpzf6C0w%0BigGVa(4f{k{?!VNk4z zbP^tuo~A8bF4u(%JNIO)K08#!`4x2yQp|+ALXj^KUzeF|Y@(KbjA(h95N_m7W>@=J zf366=Q3g@rjo!?G8aJvQfGV)^i5#iBAJCu@%3}T$HUO&J`XYzM_+!Lz>D4`WOYN~z zsmwsJqzFd=QE^XHdN-=w$i~&ZZB3Zi|M`DDdOK_6LwZLllW5@h2d(>iVkFKd3zF$% zEa-kz5G`lb{=|80_CjOj^GG^sCc%J__4C1`bmKDUvFCf_weuOX)4yJ&--vJ$ zr}Wr}cQW+m!%koQob%)?4`HolRaK);ySdV=u}B~2w8q?+)WjXC$H=!@lhcKKq!8S0 z>MOD8Y|y6hW`1AZs|_5u6Bm~-L~f#AKOa-tqb?~-yC%CY=29JGK}zpqdU+Cixtrp$ z?*U$Ca3ZHjwz~e9x;szwkxiFLVWdCZX$9|BV=^EjFN9X2_mQQPUTL~#ZuvVVjZJ2k zo}B@=;Re3nkD)gcM33>4;hG6^;alJAJm`A_BX+gO`EKcOcIJ>DXwInrrg$}%)HLj9 zkB^t~EmfE1W?Jk5d^YWP+xX_`?%TpNjh4ySiaDJ{9NXs9OO*PHIr42dowFrLL#G6f z5T4jR_1ZToKx$JsSKFrT;>Cj=->VB6Aycldi_0%`*krt^9I zdOhOb@aN*ypPB1tTwbDhOspE?!uw{_+Ow<38$iXOt(Tyb-f*&1pSqm2Vl)g`$5|D? zJemn|NGFUr`Genf^MomOhQuoWiT?!l`4dm7LG?Pw}lO+tWjU(U; zF7+N{!;%(6oZM#A%O#3Li1fI);aU4%02M&$ziJ1r4Yr#~={*>-iHX7`Fpq5pTTts{ zDRKgH4_8VWk5`Fr2m$C0YxMEL6EtdDcAGJ%xrDbu5z(MT&ij&#j5Vf|+k^5N2{49Dd7KVm46*~jATy?A$1Ldh{mUPJ>#61^+J8`z zrWngm@M7NcVzd}>EK72i#`;C=Xv;01p%v8HI8E6Tv_fmz;60mPNG%QcMe~Q{7?>^- zZ~BD%Baz2({wz+hwdoU-5`(N8+LGsw$%5r1B(2I)Z?NqAD^!liedSmj9By{dtUc3)R(EnaJl ziSB-{^M2s8vg_1t-%&xo2C`PAF7D;v5gkgmRj=ZO0kg{?+G2@q%k5UJ|6s#!k-%an zx$`JZrOSrJpg)2*?3Kt1+Y`_hLnLKTMls9mQ>T~y^_;kcc`j>$s%~~Bfq$(Lr^es@ zBn5}&Wez}pJhEZ>jIFktwj&q!djU?DKv2*gRx8!E6M9aP$V*~yqR2<|?DS9(dpDKK zc6xf9S8$jI<8O4Q8pQ=48z2y;9+m?$P*kCyy)sV=?v$ppr`&25m{b>uO_IbDj~eX@ zXbd$?Th9{ei3%B3`vI!Kk$*Dry;|9H8-!}wclCiYkn*-OG}%(RB>2-2!*LY1!D*+D z!5Itd?cf-YbBS>67>pi8aO1i`EjP&efv=eL)tZ>OGNp4a&>X~wrWcrLYJ7UAcJ+Gm zvqD{}n@J!uBtzld`8#V&Ix!|c9>qN8vG6Ty6YNxV7#I@G<{8e#@_)=rR;u4J`%G7UT^HfGj?EMp}yTQVIShNamwCkh_O;l{25C;{{syNhmA5*ajHe^!~ zoB5TWQE^C;KT&ZC8Vn_$tvMzLLZD$ty_1gV*pzDMbK6#8-3Q|unvKv{#^X==|2S<8*k9VCBnap@YxLZgjB z&6#tY^@HXegyNVpG~wjEinaRyIEM-jISn>lu&rB!egk{ky?JqOJbi>hs}1@CGy_F=X@ASpu<9BiEy(@ zN_R?&484sX8h>DOtL=dR8r!wDjM)|ejo8M6y&hJ7k92%6rrW7F~dDN(uf6hh$)NrAEl}NVBtJYZ`#-g-LWV>iYZ1*hH(*SH9;N(pOR#{>q}P zZ=HtxMU3zJmkED?^e9RFrAhh=wOon?eSaNtcbN~B90|GMRi+qQJr{Z&F~0c?aTXk` zB_;Q4xfY&(d-3YQY{{aC*^)iDQPz`GeFlI?X8u;-5@DPSF2MW)@silJkf4WQg64&o zZbwSx;?;Cm3q&;bN--A3FO)ETseH}ZrNA;hKBcOGpw8VgD3qioIA zR#$F0J)KKIg1*?@uZFPaOgh**ugu4I6=b!?-f?emDNU5f9SFnN>(OkU(s5a;&0p4C zSMTP#+L|-xbTu2ZfwK(FI6rNy*kPGX5O9CqQ^FTJ1pf=epnP(f;J`e(M}H6lHPv4q z7V>S|bqw5hoqj(7V%-YD!a zlcYuuzaCCxz(Y8tP?&y%8eW&92;*F05Xj698bDJvjq*IPRK@y>+1jOv9f5%mxc~C9 zAGl@o2Rd#7O?hor2U*&x-hUmMiYE4|Y3ham)E!zwOXye%;n;05n4rHrN(vvrfdjH* z_KW@uVBJWi7!HmNeli(66*%k$0n?q)is;0eu91kEY*uVzl+ejUvzBtkTrQ#`D0 zAXnfkm`j@yU%mb|cu}_3^CXIA=*A`bgEZtM5WWG0@>DOMxFK!GVhvj5d~x!3{QEDC zY~_lR4x1bTF*%bgn?ZloSy^w}ND_Y6ujsd-0IP@HO|r>HCovK)e66iuFmU#PqFOR{ zB~syG$NTHIst+DIat$!S!U!UW&F<=|ufF=K^qKgS5g-5T|Jio(`@JOVdg7D!@NYf& zJYjkPvHxXT@@77n`Ba2tp26xEpUhVivjHQL6PXAaCuF{zcyE8sr}KZqMzE9#8j2)_ zMf2rE#0d=pGJlzP4<9~x?9-II!Ic5$)GqPP?Gya|_xr@2GYfn;JRma>;i^aP{ryz< z-tEV`hv~oO{}@;V3ucVtB1Sn+^kL@(NvkS-CC~b_fF_YW4%ftbOwI0z@YzgAP8oBT@M)Mt+Q2OwRgMeH?&5$26fF;$-dgA(B#``m9KS>jZ!G@f$E(QV~nHNvZ56TyMfS zM7w*qT6LF=Xuy0Hx!ps%yUH4p7E4m8rmY}I1yNO1R-|syrmZQy&Ui>U_`+;?xf)$R zp)!=d_?hcNyxO8x%^ArXvMFm-!-tyGJ7vPalbD842PR+Jo8{?-?5c97swP+U8Brr2 zMiE3VN$h_K&-x*F#JV@`-23Pi`IHA}s_<6!V;p)-|FN#M_1bw5WG?*BZrd(u^|=Kw zY+k`{a09xRDlCX;1gXLzNGg2e!{x*L?e#me>@ZI-s}02F0O}_Id|ADcqIFP)+{EYE zL?(b_&fOi($|;XS8nMu;^4?mOP{EmVLa|h%Jy?IB9pU!)lAAsJ&?}mL4-R=LyFCV0 zVLF~+77p_-E4N!fk%3DDa0ySsB?RZVTs-QQ0F99jry>lsV}@WcNg4(;2*=7W$pR_zDq zsjPnwPS<;N2!(^^f8Jf3hA0QzX(~TL?K|y1h*PS+O zn`TdW0UrxPf!;8ruYwN(vr3fN(AxK=uMGXcW73-WSy|;V8gf);5;) zW1j{+qBI(C-(pP(q@||dm%YscSTlhku`Z)(CKdz;X`a>SBrdUM8Y3Wsvt!PE*!mT zqGMm_8Pk_00B&P*=V!=EOxDCpH?106eu*B!&DSmXtY{Q`1HfG zNtm1>upo+j$8JZX7E?d+la9dr=zxE~`f6wH2KgSudxh@X3``_|L(u0;L7^wH2)uQREd!=-rs^69=jhcq{B~UKkoIQGDgy^T(koicFk18E!}JYi%ypzM=Leru{fZw2{> zCF?snR8(q;>kzbG8VoS54ZsU7ukc)>j%>(HWjP4^2$W0+Dr5egftMXC91HyS#GAS9 z@Bb;>4__Ch!p#@HT|s}wwF8T4szr;fA}0!n521C<(s3~wi)7Hz9%xV*caKjM4%ow9 z!&H!tyJsSh(A|xd!B5inNbTQU-d#M*t*MDNRUkk*jGfPi;ZM5xk@xXo?0^|#)bHCc zu-4c(82D&G#$`9(G2k4Vmxy8AJI6Qcy{HT7{HSrHJ58EIuGxQoL_`f|M`<@Xg6u^_ z5(d!hHg>XM?ZPjS$ZN8y%B@C*OWGRiI9dtqya2g=SjV@}RL!7xX?--?6K8VJDx8e` zBSswP0cv({Bo4YDhj;l-X`TJaGXt+Jc+=hw&)m7VZgHbKoOFp-pGFo_hbje#nvI}-M56e;Kyl5Dl_g>FgR%rVx!5`IXJiQ=YiR8~ zu;}geX}-gG*pIY(^d&u;?bJ(W{c+!N3oOz(wv_pQO_fab9ME^+!IDGX2ftP(rfq%#|69HCP%36(~2LBY31SK z?JWwPlbI@$@P`LBcA^5Vs}(T)vPOc>+#tucmDYa?0@%gV8C@gTsBB z!7~9hA&3W-GHylP$|fD8uVg0k@JAJ$l6qV+&O+uxy_e4Ydmb@)2;lADd^UEL{!yV9 zzJY@>n><#XOG^2WARmUJ=3Ud+S*N#tlrm# zI1gvo`H&EUYab4{BbmtKKIsPBEDAab4$L6yD?f)IXP93^fc64^Z|HrROad&Xod)?^ z*#r^=Dm{AITd~&ogK{rw}0tax?U}50SZsI>1BIQiTq?jNvX9^T|Kq?|;Qw zrK*!brDT6dl6}`#Ao^v&2(cPf01BwyC)rlpnvi9$&7O@7dtw42Aqg`iz$Qq^nuq=Z z|H}U3o~$bXQr@0$bhHfuh04s6Cr@VK_b6dJO6ZUM|8jHo^QR)Z@6VFxE&jVd`~8gT z8zTF^9&*!DaQN4ZF4Tng3GX(j48pDc~im)nbKaq#NE1U=Y74ccGbRKMeC;DN8Mdi zx7B~`8vpJe>h(J6w)>`Qdp4Wrg=A@x#h2CcA$poArc};F-0fCT(?zY>1w;Jt6hK7 z-Xp9d6LY~t=C(S5V%TS%vqA}HWVNdik*=?!UA^sggtDqP5Aei3QRYk((mm0&lYk3W zAjSOCLW6LnWfMZ#dZXtF>x9O*Kf+VcWN@v;K-iNMp}^!uW01P~uPm*nFt9F$jN(dH%84buFRaxIfQ`I2_WS9_n^%9c?*rez~ps zhp}fw%6Kl^9%N=V(eJC>zK;&u^Qfjg9VYQ8O`jTEzpZ_?-_}S;ic__s&{wUY7@l!* zgizq2LfXwd_kmjkOVUJzZE(E}+QnfTeP7pL4r47A01O@43xFj}$hqgHW&7gv~=(=blCz~#{z!|T{skiz5P%X_}0Z>k(`-f~_wAIWSIpydsn#*dz=# z^&Ze8OoLsIIf{b{bNPQm4<}rP%&4s;JhyvP{^4)+pz4Bk%gmu7hm9H)%fnuClLPH? z*KGIaQM1=*%}s1H{bJMGU2WJW_6}Han1Z;f5 z1O%Sbx~@F>QYN6*pm7|Y{`i@ZM|QKc0F-1IFZBi>HS&p`Oi_O|eI1Y4Vi-jwGoK&& zLGlFl@u>4jBb3YrXKCvoZ3+hyU9~f$f0ntmhX|qMaMXPgAz*yeAc4|oqGv|wfcRtKkW5Yx`O1{Kj4{WNzd4Pa}T-#bz2){ z;v;OcFj`#O6mx$Ok0|79_8&T{0JEV}By10seH=I?VOdZki+2+>06U z_fSo!CRW*kDtj`<8}i1_uJk2XD&Ne`&cu*r+XFmlRw7x83|XbZfk z;}C3xb_%hu-Qc#``&~}58TbVq+jW<#iSa3bB)!-y?8<*Oo+LOMtqY`L1<8iQ?V!~6 z>Aqn3LeH^kcEDA)Yicc?o*o*i%VvLbUPASkzK-M7$`F;IfpypYv)2Z#Y9OkuwALA} z*l+7)^W7JbsmzirLs@>oXvu_f*+YNN$3|=9fKZ&*Xmd6R`f9UX*CS@K^$CpVgp43+ z@Ejcf#D0JI~EA-Vz{skB5}bRC-E&8sPl1Q07B%feK& zQ9Zpl?7IyjzO2^kXI-QYTReu?*QgBytt$F__4a?iuWnwyoBA&J<_nzn{^O_1k0d1H z|9MeD>OR3l_o4+~?W$+X!#tB-C*AG3je+n~kKoSGWu7XQY3>CaNv&SHYTH4W(86#g z5T!e~=)P`ilS7E4tB7}pR=drl4d_`0f5oO;xmXrRDK84+M<+k{IEeqO2l^8IYwFAL zmw1153(J%Ed9SV1(TAjf)O3xJFIC%JcaLhYsm4Y`Mr3K%Et_?-f3|(~#A_gw+>5l2 zyBRb`k`!e;SoF1DbP_ub5_P%x#q`atY*Lqe)L0Z5TAl!l%l8+v+;%6gKmVY$m~;$^ zaj?b@nl~}XH25I3obg?24lBQDpG6wvw{L$cb;V1N4n-bTFqG(fOp{Swutc^od_sw} zO)T2^!i!@fD63|qSI;oQPY(7L2&o)1fpoq_!y$5rPNmTO1xRq(Cik4uA2u~vh|a^& zdzwOzg_)0qjoCG|9EY|wC7*h?w4q2^H9lm5<9V7uK&2t2c5!t!moKCBQ1U0B=%$2Q&yBrnIw6Js-GZ!70(Q$ih&qbUpW@nU~4%t@K_ zF+@M?^@}Cx(;`Od(V;`|PptdpkDrdx=(Ktf=rCjm-`ndCuYzw<_lZEdlz5$r>6}>%KdMRqu$V z^~9yjsRLR@k%<@LLg8>tRPKd-d_KW5%Lg(bZuVw;wDCeiLlK>^Or2neAIEBAFa(HK zcf%H~49^TxBJ#lRk7!cT!N;Jozq|Upc>UpK@o6R$I?as7AI#`bFiC&&fIkJh)SFKR z{rFgAFy=%a^$|@QcHMeS5PazTt5Z`n!568Y|4iN~T&}qx1r3t=YUEh7Bzfuw=gzTq z`H^cO*1Jq{wNSt)WD$;r1zIl&Q^tPmqVCnu=J)=Fg@GEYl*aL}UhH zfa^mlkVG``T05M9oC+R}_N3Lr24^SW>5gJ_mtj=HQIUT`7sYasjc|t&ugV{nIiz&R zH&^C{6zoQ#x|`A)Fax-`fc;50Y>Ov(Kmi%F{x9SK`T{#GL9TA$r|B z^jnf!ai>3%7#z95W9Jd!(qN8;L8Buuny>e^r1X^={Tp`*bM7>O8yBZbe+r-h@#AuW zI3}5^a1+>_yJLXC_ZB|e=K{gxK`*_W?{N1~zWaZfY(Yo!E`}7PAU~lC%IOROy_594 z=kWN1B(~(?l?KpS@I!yCB6ko`|9)^;+?%1{2JL+_*I7k7_&NI!R~f#9!J=8RyN!aL`=#IQsWCROqM&~523V!PG4?t7=<$D-050tH8w5`kCh z-@$)-hVTVnPDiFCRXiVETJP7Z>q#p+oR{*F`|}6gsMw8vHv=sr!rYM9d4>w!n6d=1 z;gOmxj}=n9`Wg=@G~r2@XOAZgoGKX?L*MAHlvJ+b51(c!9Y6_rGz|u~W>UEHdST)q zt=Xe5apdqp8YR(lg4%b_2hLsg(3#8>EDL|9bZ$(CPLrmwp>=MipVc7S28!1nMgHA- zSm)6shmgT#sNwDdnd64*E{v!~KbQdVF1f8o#n0mAHidXt&7904_xwzNZkS=(+K z$q{|mSIkp948-wt&mCDTAUm>GfoyGLE`p66#6z+rPD0Mm(?iM3L%zTtol||Aiz)3s z1jfQ^ve{jIs_N9K>MvdxFfXJ(=I_<+?B#9d-OIDkdyD_>&%T^7wZJoft#;n4#o0Uz zqQqOQusWx27I$ZQ1LkGi%Zey}$O~_=JM&*%%ohK`Mp(+CAc=|`ix%s%C@+E}_7;z4 z{)eAF`Rvoodqpc_&I7Z=zcAm>=Pz#ybIv>tad_;_qg1W>>FUGc&DHhghpWF|>Xp_a zESNJ+i&&6yt`1vlgtsfdR=dN_s}H-SXuamn+g7!Z-m0m)692dMs@m&+uy9k!u4#|n zx2*_hYo3tNOq)l0MzrTg|8E;XKd7YlFynDh>Zu!15xG^-;KQm?-nN2XQ_%jgIKrL%k|Hu|D^zJFgZiA!XSfmC->S zs^eIe1$mt4EkF9_%Nfsq!yqmq|JW+S)WMtuaU62v0C zkew&$uC0WGVU5Mms~d0Ew1R#-=RCnR6MM}tNJFN9>oz3;S9Vih1haXPhCvA9$YX19 zrz~VK3v!lPRML>^eageOBkYqP4CBHt0TZE;AX4;3%xpA)t=!6grpJ!#S6-CWe}s0G zJr$iNN5#By-V2iE#Dy{mt#Ac6*xS;|%Td!M|Abr^i9W za%&!=AHl$8+thP^DfVTnkl6w^a?ZZ&aK&1B2dVK|i&eE2K%iP};QZaLtk)); zK@sMC)Ma62qK+bfZbZS6A&d&0rq)Jfk_;M zkxkJ*(sxn7=!ZjZyF`Cc%_0VT!_1fE077+fOUL^6IC#Go^;)by%>s`wq0IqgoN$+P zc3}@z2NocIsP1WXmV)N9qF=6=3#1^s0Xiy&6et_9`ZuCwk4XB4U6#iQ-*ZrE#$t=n zM-}L=Z{9C%XS@K}#>~IDHo0LhPgKWxre?a-fGAoVy$7md4dWi4598|l$$^4uoqcl%UX%Ke}`5X@1?K^Fqf|YVVPf%rU{_Hj zg@1E9i%5p?)c^0$ToekrPykDlLm#8H@Lbn_mM~tHk)#SkW7-1n^B%1Oc)%0 z7G_Z|LdN=IQnY(qw9$*Jcb9K&Zr@$Z3Q9*j#ds5KNs!~eivFbLSplWSn zgXHJYTUT28-1@F70T53pi^rF{)cyY#nMv+-T943Xf_iLv)=ET{`|5`T@7dXK_kr-HIj646X zLDgqk&o7|>$Ka!lOe+jmh?^sa-5TY@UYaXtMR$FoH1%u zlGs0V-UbC0-JLGT=u{Bzwnh@7=Tl}wN0mp#b1L& z|5kpWtmS=vG+wh*1D@{pMzEfoarBV3A5-(P5v;f)M_&9ENyH@iGCp800{BqtQn?wN zuPmd;+zOP<^|V-jgC~o3j5O_= z4&COc?Q)mC<>?P!>+W2u=9OsbTZff|nIR89D0-)8+{m(zheYp}p{?L`nAAhK+ z&-Nb)n;&0bjsN2N!5fE~?1M)&P?tAvo~meYLm0V=);3#BZZs%_N2sPfIXZ+mj9KEE z+VIr$5FK5A&YkYGN2yAH?V)W%weR#Xqom7;0v*wPXFs}6o>=$vO0Cq!%SKh<{h?F2 z#o(trOM4@CRgCFZGB$ft@*H)$4;<*NhmF(Y&XPz->w@hCC0!KZGC zh~;)-eDadajb8g(N;A+@^E*`E?zq=|5gGNZl>_O2Iv8kV13?h!(X`)~!7zZ*gRi9; zNR0WYh>@r^#0|TJ=tbz1EG8slw zIO_+0<|d$3Y4kvYo6__epp_(xCmp#etR~IRop@*A2?k)HAq#|QHMp3$K3IdU->Vuu zcVH~Ak0>YN3Cx*9HmB&>r}}1^9|7h?AnQ;tIz;KUX>mf65%6%pFYkZ;WpVrZX}ugr zsT;3A9M?t^KSRiQ5u`30o+4yBq#pJ2p({{-==saGJM8I5_+=Ec2~AmCr5mK>WV+wB z)!IHL*&ZuPQtc}@yK!sB0GynlOISb$t3Bf)=hPbr|29dU%xR?Vt^ zL@Lt5lSvmu=+yL}?Cy4e;%JmlmY4W-$-2dM?ba>54mO}^*0AUQ zAHkWEnoJGNynX+R_X@&rj*ewEXK@xmG5VYy>fV({k0KtG`13!Q zRh<))(83%7H!zd#!bN}E*b)A_@KdlsicqLU^Bmq&v#8oh z^PIp-Vpuep?|E_J1im$S*t4(R-Pr7AWWB+aKIe{HVjs#oc>Ulqk^78&7dH2;u@~a1 zYy0%*#8*@AAep~E!=9_IxlYOXFj`<;5tK$Q_g zqxqqITh&iO(?wNV<$5{IYW#JXwk>Gq4D=bBUG3A8bFhE-P$treIh-ZrV`Rhpp5ifq>60*El)4=^4%u9q;ma=O-mm8gip-D27;FFF>2}*ePR0>!b+Q1d!Lh5fPM4^N1%Kd>lR?%ejt^n# z%T@Pj$0;n>%6Cjhf=z%Cp~w94f(I_qJpGKAgerkv7}reEja?6tK?1d!h*2F zt(sLf%fCR#gLj7BXKw89egqu7J3jj7uC#U?HxWs6CEnUtca;(GqOnjK+Zr zNy&V`BLttth{0-?`*yl6T6BKsDjDSBC=To&?m)hr?zj0eBP)*?pt|RAV++nbvIWFG z?W?!l7lyyfiUI%{jMP-tG=sY!Lf)*3^a+3S8`nUxFH?ZKRb4GtExE^YAx{FO8Rx#x zOl2NGD&k}kXh?;N>yqM^#FWn)j{#iJ8$dXnsq!rmv(sXYNR+lJ6H*1aw{@0chQrO$ zf`_xu>$Jeff6eNur()iqAPwm*Oz|5y-Oc_)#6Lt(tn;ax{M<=&trp48(V_k1A47i) z=Si689S&#R(DNft$BM_KMXRDJ$4!P%hP4wx7O_%+Sc9rgGojB26E0xfmQ_gwm&Y70 zjwra`i6*_x6>s0(zJ#Gu`be@6kLC%Pbj6vhAGw!vV@9EjpYjnO}e5Ke8{0v5kQRt zpF~pXfMZ-yCw~6^m1AKR5t9l49ek!8AlFcdmmt-WqELWi&N>SPQa_SkIwA~^ItrWw z*qWj=AA1Jv&_WVVMN;sE z!2S@6nF+^Lk-hE0I_ z6TqM-A=TQt6AaOWAh6mf;w+0M>AkC@;y>>M;rwvh81ApL#LI`&xX1VP*}Q7AjbB^Q;HmQA973?|RI30QPJRLF0eOCnHG=4ALM~^mGcm z?@R$8dCco4?=}F)3l*Ps0h2}1!b;y{X$`hprLtp_@gq7k2H_WZfq71V$_eS0V!yYQ zb->)Omk3@m*O0p%CV}wf0%w;rM$3Gq)eVCkF zocEQd>fk8@Q&fMVY9WA$LK^@UxiQA6MP}u(6ERch{fN;5*G!^*b0Dw?AXukBUe0rzRx~|Ipp_vO z1LBB6%E9K5;w4UJ!^laPi7i?V(xYXDc0r<+u2v9n78HNe_CfMrxk11kUnx`>>i|{Y zaiBJy|B}u?NXbhg0EomyPaLYw2?Mj)N1_iK0ppi|ffw2uY7-JeT7x&kfJ)(5m%@FT6vz>Rf&H<1m*SP7<8hHk>3j)-H6Rh#2-2hi zIh!^uie`UMFJf>*s3# zPe%!ZqU|U4PalsiE-#OdCc8(G3Pgr&CMjpyOi6#%fz=azaziI%e3|$&al*3(Wnjq*1`YMbOmvx~UQMzwanH>gxClGe^~$YkNP1cyy`Pg|?S|bt8Mx zcIICZ4tQ1Q&}5Zrp_D}BB(|7_LZNlWm9>AxQ<3i|vZ?LdXD85lheq#jU?<&ljlipM zCu1*1JQ1D1#o7DGM_HbCCahxU`--2-^9Bh-R@U$6kVpmJNTdk;H6>ovIpRN{Y}2f< z0uXE5GPN2quD~#^E4FK@?1q6l1liD{+BRv$F#kl|3FqKQS?Y?<7Nsue)0B%Yauh_WsYWgKfF00WT7(-R)q zBI;fiJ9XL12HKlHk0R`b8qev;n1Ky(5f4M+^!^W;mEms~(6mIly!~Y|e zNQ2G&T{f486Fr;jJ()UDxqcq@f{kn#Oo}3e0=_F9faF3s)pG`UKG!`=kXWPU){-F+ z+=Fk%qM&f@5e-&an*yu-jmjk^(`?5U~#NY4vGel^eFh5Tt)JmdKt|Z*3KW zL5ff9@^3`>wOuqAf7s&I;^dharQ1I{Lp=XYtYaQ*sl4*1{~y$OA#(!LP!SsJo@a)k zr~SRa<{JA@YOCdBQ%}7<5%l|bTB64nVJM4PhQp~+trDhLzsVN!fFpYZ#xIk;?PLTC%8o%1J0QuEPJCt^8FsFE`l*_n*6q; z^Nw81z59k5oPFRB{8cAfK^4bUY>kFuA!>Vz=6V4Sot)<;rl5C5+GvcTs`y?Ijo(7|EhI?g+ZNR%eIEO zKtDodk;z6^9OHj?5(<0%IKWXz6JOsnXbd%|uIB5RXe7rTl<6SooV-U&9%@3FXlCgO zDc$FFR?f^(Hi^OD!AP^yNObhqx|GsUIE}yu=i$I;Dlm23^&Vnjgx$3mdkywgEw$LN zPZMRe&GE1!E$IWT6l!aV-zgOIIfv+J9-2Q>vQ4pkK`BGb01q;+sGCDTKHE?(Hcvk7MC-_Cl*EF?9+?98Y@5xJ8fx+wz(^jT9S(G z{S9P&V{@1dplocjX`IGtY}>YN+fQuUX>2sM&BnHE>%Mp9p1B{+pV-~mS-jGG#__uA z;VDYh_ZGl_QDAX8A8$F&@IJ@-87huyiU5-{hern!>^L3g@+42ZUt2jJPW_AElOGy( zD-A^Au6*=v^S@83vlfz(A)#)Rg4Sg-`PfEc~t_{eTD-CxKR#oQYnr zgr6rKJyTFce3m3A(1d zS_1N?+e^ZWDd(RlAqc_f!;&H2p$gZw%Sue#GuffD(8tAkTeZ&x%Iwc)?T06HEGpy7 z&7+bt4eyC=zt5%2{x{o21e5iek+3W`)ldDZj*pzBNBK_$TR!XU^G{p6G7D%ecWqbc zDvd2wbDLGW<_^$VDsMOZ>~2#4Ff2{$eN4M}h*=Y^%?8`XSYVjZ(OJJ#Xo(prycbIh zp7p4>?56Xiyv?ZdxY8U`d(`Fqhm-brsl2)Icegu}i$ka)3!($Ac~i#B5Tn@B-`#74 z!Mo+<7D90JsX?;e>inyrk4%N2gC%{cvb@}q zsh(Mz&KL_#-Q2m|^alxL9)umf+3^A4djr+GsED*(KCG{YCLT#FJ!0IT@GwM14cKF{ z?ftULx{GL5`1`6*-EDLYn1jv6FySOKG=)`L3G%CCz!b)b^C#l8L^v(07PD2_q??$k z|0VnK6jzyLD*rcPDx*@Y-`bk9Qvfqh;(p<7)38yG8k=6pv3Ri9mvbsJBrSy+IG7{c z$h=cK7GX%fC2paX&(%5|b*#ZBdp|Jv(tjNAW2R_$;gM8$fP`QMFqA3W&}eah7TR*l za^e7oq+Ra7JRB{ti*NeG$q$(rC>%{~oS2Yb zPH~i0FYkW0yNiSYTkxl@^!Agm9WequB&V3;uZ%E-=_nN64=vvJ*6mLu*L)P&y1 z?l30z`>Unu|BDA6SmxhQcd!cX{&HvWge=>`=Ye?{B(6FV zTwOezYB$0H79Gr-N*zk>;-#(6WLLMZwP`4OenFqWa3?O-RZu+D*yDISbn7t2Xm@7a z*Eyuq#7uM|?#?aHdtiRNA}=q?vhQnZU?@STwsm(C$Q`}`h<>uJir?3CUtwIqfbLfx zp246Bf!W;1u#S+*P{;_2V}6+&_h>p*{0I`>LwKqN_3o%{$KzXc846fnojyAkp$x5> zD{`tgQy&TgpIUu6$jmX;&hf8L=SP^9(yMVV*-Ew)BvmwMq9M?p2UejO4&q;v<}@=ga&&Mu39`tO9N875lXk82|BUqrJ#kJ z5}{*u{;IR+p!%npxDAF38|zm0Fy&;jz|C~kkYoc$c+$K|G(DaTK8*F^U5E)VObuZ= zjwQ!>o>viQq6`+5)~~KSWEkrvom95AE=o_4ga2%#!ac|~LgJ95Fbc|?RI@Ek>bhuO zYZpksd-*-7WQd()_V*bR_Z2A~1*b*u4;UXKr|6hd9${R83vx7;wraUSHKJ&+BNC!X z!iWU0_ZK77({2!U_odmIT_BtDGSfsnH%u}a8XJ+ulGjSHH%ZH)^?vw-Bbtnevx@}3 za|4R6o5UR>2WQj4LB7=W zJ%jM{p<*_qDQ}s783g!jtFzS%yb3(d(0i~6?~OLfI4WaS@HNfvu3+_$Qk77rK-$&9 zhUIM?nRSu48HlqGD(DK5tCnU7&Ro9@)rH!1r@{j!OE*Y#NX zbqTG}eZJ^s{Zu1Wg;I1+6=y?1)++{z#jCpi=t<`+I6_dC5nQRVsI1GfyeWGdv(LTt zNJ#F-k!-2<^flCv`g$G~E$TRViN2UmK7#Q&LCaUVP@~ZYHf#Uw-m+N~#4NVHFAH}~ z8HRxnuU*5a#iPG9=~5yt{o#IKO7@M}nhA>tXN47bhMLo7$QDo&LtEpWvi=GDvujCl zf_o*I&HF9SL@*rD=!b~iJrG5Ut1kU$NNf^wWpa2_(!IVofKIb~zT|lwklCRn$@F)Z$TVFNzJ|(JwNY=y0IuL{FDGZfWj{zpmM%~M`CjwQnreLABwL36o&*S9Gh*2wDR}HPgS5#K9p0Ggta$HGLJDjn&mg>2=jqj=aB$x11wGton*Ayz}oY^=WpgwVR&Ywj$rMyfzRN*ioy|SQhn=x$S zc`;FA2&!hIvBqIhg``e0iIE4!Vb&E=qJ^x@==@$x}o=@3dw)z~`aJroNDZ5(^&_75e%d({Zhak(qG_ z=Vf)PsbdSul3u|Q{R)l$2U0L=Os1}~_gjmkTVjGyvNKm6SU+^LedrtbSwAavj&_rR zFE^`IE?jb^ji1kBwD0HHq0niJhyc%ujK|}L!5ivf$T>kpQz8(Ytunw-6mPZ~cCI=4 za3M+LRCE4=y*Wptkhok=CwG)%lI|WtzItYEPD~6jgG+TprQ6!iMS%r%sb;vGEbSKr z*|Jk|V#2Ts*`B(u2MtqT8bBb6x1)qyRy>mo)8G7)6qy~pjzB*zYH!yn!tEE8!SG7-mOV_^vMdsjr z1~J{J0}iyrOdS;|VEyeFYJKkKU_(L4<6LM}XR7aynBgu8PleaQDND`?=GmQg%Jg%^ zrEI2n%7aZ6O|A&YU^|RUVxH5PTjDW^U?X}lLJ-Cn-ooqGuy`As5e*cX<6wR@RsY@e zyuh}T6sHUri zlliH%l#$N|`}Wm+De+Photx**UG3&-U0WI~N-E$h;;43|y08%6eK{2n+9pSBPYE-9 zBSuA9731uU^EQMp8E2XFYw5Q;R6Jf(Iqem`}>WQgv9nA z9|5CA6Xf0N~%Kk-V+?J%g?wV=x+OMlX;+eCG1&0ChQ--=pw z2eAoMcrMy@SZ`R2%!V-OAR5qBeB{#-uA`w%QG=}ErMMxF7xL^cfcufmbNFKRmjC0I zwR6B*J;nElD+rKmNI0K#SvTw8-8vz4eg@159sHf#{odw?^Sy;@TU@IzXPPQL%nl56 zD&JTaFC$q>lb)(|6nx z8nK5&Z(~YZRsM^i_6H+hhqfHg$G6V&@lri^<5c$ z__*@t`}5B;GTWkKNsFldek-;Ixg%a?mlI*Pt@Md75l4NYoRamA)2!i8)+Pw74%9WvPtyEM4Q7b4BWYz-P zx0d9Jg?7EAg&}JiYV($QlG)#Ls{nD3j&%L@GwFU)9eedka@?a?3#b6wqrvUka?csm zgk3?TT-9K8<{{VJb0eK5e^8t}J!J)gEZ zMg4)#p!zRD*m3uA!!3AY(m30lT1n^iTmzk_4V!bPV*wqU%2jx+qZ0Qix60rNx6I1u`4n4SQ+` z>09VBa906VRxbUrB>Xn%85v^c+vkQL1RU$|D)$xn?Wjzegsyjm1Au2PEjYRx678Xj zM_s(k%)*XHr6BlRPyW+MGKGhje!iqJC63gx7WYP`q_j0}N3_AJq%ER`>9WGyd;V)s z&Y5_O;scozcNH1&{k;+{(}0V*^6R{`Yey{>;!tINUNh=opP^)W9LJj@163ff;q@-e zK97HSJ6@zEC8qj)9e`(z1I53&tt5zwO1n5$|E-tZ^I>-9n?#E|&*3WDY{k5J@Kd(< zRVhj2R=BO8FKvIfa_2qG9;ZBrQ-?Y0o}GxO}_nG|v zP82ur=>6`yC9Z~}XkUMQc)Q=82F}Ard>T7TZ0YG%F_Wu0H3hUt`#8A*-iBB^lEjGx ziB(mJl>?%0Pg94B`Ub=vDbgh-s{PXH>+qUtGKXV}`=W2V`g|oH`=)nT+mj&%Pbm*E zzJdJTQ}5$f4b#jkJn~CQ^V;iX4Ykld;!K(r8V5x@N}+*7xj2R1 zm@F4^VLn!}i}1Z@%O>-^eD#Yy!);2*WhxkJ@pWqR&2zY(r?&rXyn1`f_4A(%j;_F1 z1<_uX<B#%c2ZiuOd`sKU1dzF36(WZl&Yw212`)7IOoXi_-_82LmSg%=54;0M<+ei*^6*yi|u)9 zb|zyTUJU~+DrT5~y{aL`1dUn>wYV?&$bY0Ww9p11fIFl#@IuW+73)>$>rD&FTj!5r=VnULeyo3>L2C70`D3EG-~t zuC7MAB||j;T(HGmcjIj+TT1c)q@~$CX@#9X1l9*@GLktowuP1pQ)!No}R;7=HrS~xarcmGDgMh)&K@VImYx}H;6 zcF^fY8ic@diz3yLwElD|jIAGxeCLxeNb?1Uw2aLJdNZmVq1g*g9 zC{3@@t}Q*oaZWEAHTaIF8AKE{w52nBgT4q9Ko>%BFV7vh8no#(N;Y`;A$v%BXa*xb zpq^<2#8)=YVuLy|h=6+;?-*rX9IC5lafYRu{67PI*R74xezu~!W!(1U@-X^0ul~<$ zWZ#P6_*VHP~OZTRr`Iwna6@Ib_n9LuBN7GZ7=Cg-6F|6i+pzZm{oyU6t zun?qYT+n#&ha{B!j(rOMOq_H18rOfNSHLDe_51wc4Y@~Q0yhB`jQ86 zBxv_Q>DyFfNBn$h4VYhK?~2+8rZk1Ue*Yu@G9^YxB2naqI47b|u;M&D#Gf;Vjurs#Iu!_cxOULN(+IMf1Y&j{TxpQ4E#p84w!#(%U1 zgU~ln<4p+Q7#SK%1PaUT;WHkV!#(Ih4GS8Gf|vcG~K$@`jNBI{HOTrEnd4wTLb}ietx`yT~$g4^`pZa)}7# z2;61G8NMXy9S{SwEbX-`7@~F^{U`qu2zK32F(Y7}wyRgHq7IYcpv64H-n7%}n97q+6!Q z{E&$J&^6A1suK+|^jss~&oE^8q)-@YDfuD>`Jf#k8I7~iHb?j%JhorjsH|Lybw?NG znYffsG_@Ks4pl~yzha;l(UVdEoXSXbB4x%_81uQK)G9G_qjjx%AYalc0s2FcgTq8^j??xZ&;@h&k49R#`*Id&F2gf{qITIe+ac+7&VFl&@~0T_EaOm zR>Et{ZSdeZ$U~seo6z>i-&BN*nro#_wmcNcH3Q%+%@uIs5a6gvs5C*{tHGcg@}d^& z6o6$yaclP-J}q(2kT!jw(byU3U>kEoOJuv+l3xDEXO++n=hSJsf(J>xkA>JAM8Uyk zeMz!F9{!K^Av|MZ_7Ld!h>J}sZM%u7$8J!{9k)<6bznuv3ZD=7-B|zeF+2&(GOf_t z8yYHx2anR)h%}VnyZl5Z)Li)9F&3*IZ0N`S1qMnGYKG4b>)dG|@0YQu~uv#w5i=yDGWi(##Lsv%=Q?Z6$?gy!F0(h`k z_w~FclO*Uzmx5f%@5P-Pj5gUwBCjA`qy#*+GTb6`jUG6eDT;G)ns;`YnXHN5N3F!d zin}W@Q!d?akqAV~wPYJN5%fZ^Sn@u2vR)0gVxvs98N$jyMqw~zt|yB}ZW<@kh+A3F zIMyXduc9g~SuVIN>Dlj-IK3BaRCC-|&`ur|p3hfL%;lrp5repV8H`9FJhidnLQ{Eo zN%&|h&E)iIUvjlJ+W@Jfd@S0(hRCQCpXVKA1LOq}vSlp6lM+#@IEpqc~1NOu^IV5u5Ni`rR+qw2|+uVTzHCeLXt&t zequIMcO;81+YdxVhDhXXJgnfd@F-1W*~Y6*Hnw5Nh!Y6%3Rh)r77Bdwj38kV{E~;W zA``eQ7{6wd@yhupydt;!?2gReAsGBBW>23bTUqJVQKB)T9LzeR8aa&k-F|Ji;uCG! zFYmYj@MrDjwe8=)Er#Or3>HY)MfSoydK%cm!RLkjW1z*cVi#;0t0i<36UssO_cq^* zPud*mT&P+9Dq2S*rwBy-5z~xy#QXG|v=&z_G3iO)q<&54`ip;;C;^9(-Drs7a_a*2 zi)ntVhortk6S4KUZVDac;c+ClIUqYc(g*H5U}~Mz#2U zVa#Ic=XEpw^|JtsT>I0zu`ph9Y_bM_R*6Q}_VbbK%kHn+Nbs{bxFZaKb4EM9kpy&L zH z-%1NU$Tl4&bcqRc!6r*D$<78{Jz;!SBqijq2gIq9Rv=7$?9oitL( zrSdCoq$CKaqI}O*YXPK=u4bEh&XGJxqj`MgklF(Bk=<(fru}9=r@-Lv=9?}YbTC`2 zfcLdE6s>_E>1>N@G)kR6*WWW;g4ZFo5kDsGSu_Jp&6(;B%5!4pPsLsm#g~$RYO^c& z(sVb63O8_QR817$E0*}z@a1J`Ld3Yg$zV5`VRsX5(azBfB}oO>GR?+-kduG^T{y&G zh8cloYEY-b8cM9TZmA++1iJZeJsuJ)3}G$7H!Rb>JAZl5sYChkToBKF zd&}_N6ugOo2YK}fX6-k*@RJDO_gsPp$}?gqDrQNA9yTs0hJWVH0XNqGZJ=nVCt zd7_c9uC#}O+5{D?1`(66z2n#j#)`agyzlmg+x)cocP$;78@}+If3W%e;|t&S-Ks8=}#@XiG+Lla zZ-H55$mi;7PeQRn+?U=^9wVU`F|7^J^s@wKB%>XxS&az&hLfVcBq5?;#-7S9zsj(H+>#wtph?+70;+PYIk4X^l#OkV< z`sh7W_y9sea(bCBIcZ~XWF*5;Yx}zwOv^g0SjA05CV29>gS|oH;23}I+5YR{>TJ_{ z8>`q}FnV%X>8~WiGAwB~j;gS5G?CzTVr_R8dH@LShE6bZY6}KufM&-ELh_c9&`hQP zzEBi%D{rOPK{ps67i8z^WbrR!{no#!Y(!U@_bAKl=h-eNi8X!S4@vlRpzjOaxGI{jxkR^saS3Kf@wyNlk^pntlz{@M z3bt_rA!09=(`QiBely&!zEql#j7+N3+%UT)*;dD1UC~!K^%5fi@GP^*QCV9098Tes zJ4%i*Fxs{QOJzc$M9uO>EftxaYM5VYEs8>UX&Ja2^4^mh65cYQ6CNyNGbLn{BW~~h z%;Q9qis7!n4-1FX<*a2sd`Gr%t#&mQ+Wlxl3o-3q(>D+aY{{ud^pp;pEc3sPj9G&_ zQ%O=Yw6(}ux+a*J6S#?u7jtBW4!b$rx8sz{KByYZtLpHs>HZCCs?EUTq)hLS7I{fA zg&mbr7}LSk1P5X-0v8~am*Z(DvZfq$Zivsa+paC6LGCCP zU1qIxP!K8_QJ1w*rZ>$W(vTvDU1OsbVe};?5LaP6dj^Nn2%jufo%qI%v*DS$pa+<$ zDtd0f{xgx(9dteKu5#mK4BH?^J>SNB=R`r^b%!CK3vx$WV5g27q}EViK~O(&f9ujM zF+VsH;m_T}Ug0a}$wh9!+_A)LRY8}R0Y`+%ad0rLDxd1c)Udu$?r;vG zjH1M>n)J^QG-g21*XmCrlN;&~y^=AKu;tSa{`cgaP2mCtGtt4~)$!`~WB-TR3v>bi zA~MF#mLAFUfL@1TIXfKPcuR|a2|*|uCa&vfDs2g4f7MMoA;T&&xBbyy`KDy{@(#~* z`4;YO#476{1-7 z|96~N*+xD}w!9roRPb99F7?Ioz)2Y3XliI*Ho8F%g3fl|_hxi)VYrsr?3 zyTyve;aXBM8wr)bk}quC`bC_v^?1p6mAqDrpQ68SIDRwA+`M>USd#P@Jox~iZEjE2 z0v({u8NBG&t`u4hZip_6j+~HdX>$t_`t@*NHqEp^=ugE<6VPt+vsO;9FiM1yY@-R? zg8f%AweqY(dW=6Q%;4o{jFX&?jh!c(glO)#{!~#|USNMZ^OLV9*U_nA60A zEPLkXgDzt3Ga9)VN?nGDu96<~9M!yE)UZ?%SUM&J}7e)zQ`H%HOt#$#A^MvvsU zl#~3lXE5PgyNV`2Qb|M?cKg+3TiPL8b=rAz)yAznF!HH$jbi=kJ+InFtLNp**Oaxj zoO)G-NTcsueodSJRp?{E7p9~qVN-2px91zH)HdCfGpQ(*cC2ugg=6I{IPYgA!}?GH z4KxV-Yn{jr4-7MIhiFr#*VNhi+-Ltz=&T;uYINYq9)OSItSa5yB+g#&&U2F*dGXx z?vqXhKJJqEcr|H!qhkfCQ&A+EQ*}0O>D{pWQi3?|h`LF`wikYLL**G_hcq7SMAOTl zczHdXVPV3p7J=x9G8i)Up(BZqSrE!%vT*OK`yIr`pWJujKzm!M)T5w7T1O^bu9@?3 zL>CnygMPn5zL6HARcsY$*Jqq)N`eGT2(KatE<%5vdQ??9bs$hbewTJ{KzY`7|E+e5 z>Z$$q>LZb>U$JSV;ogV{%)ffEaH)u<&niG*J9JR*uQAozsmx~Zfx}YnZ=0MHdhgSg zksL(7@9m6@a)m~#dOlmBK~nsK5{hYRCGE3MzLDDTp@Mwm02@(|{5CNA=W+*t_sIS5 zxWEz$z5H8wm#?EBNdgy3bQWCLI)YO7D9w>5gLC!w>xkTE?a+btC6P!|D(U7co!xhl zt##z@g`2HANUg2Zi!{zbj8L+SV!Zo;&q`YpEfASHhSdW^kvJ+Pni3TUzLs?*w1ztLjo2S#htYyIB4psx zVcfbP=@)aK0c^qo*tO->^`kK^&9LOfO>pxN9NT*HMNkPo!%-b}D?&Fgv>*i|L=?6X zQb=g5AcB;QJOzSO3CDrbiipH@01kz>5qeCsW>%a%P@gr!VFI+ zK*5J2bu8quX@<hz{65S*Ow%gk(& z;{e&es`ur)=I7JSyR2U4we={?AZx1vB=ViGl?^P3vGvZ#TpK+&*MyQZ)@Y+Jvh^=& z5H8;)I_{Odbay!5?e&MBiW#XC-ju*Um!GiVfJoOp6TTY$Y}53%%utdksjTfL?D|If zB*L+xxjlFNvgbf=u@D5?HyHg{6HTv1+25c-;c(Wt&$JU#>C|>g@HEzz`Q9RgUbC?m z`G#~OISH#mHOt7KoK;no>sHEX;T;h(5C&UXh0%3`lIIrAmWBOhu6dH*AUTOWSt zl?o*o6sjVoC*n@CYxj1`X59#FcY_dU68a9}?5oo?X*ic{90w@IW~%J!Axu#PG_?@C zp4AonIaXb4V=8;|kAo~MJ*QSF;swV8xV)08IENK)Y{pQKIGd%TFk@Z6(&=o0VA0@5 zi4;rW*42GXr6V2aAn?Y83(hC(rWwFul& z@o~VZ!9dZY{gVHjwp22@Y2!_Yg53Q9K*xG_>x-u}!P;UKTo#H>(an<^I=Y)LgQA_V zW%bcpO8Hv3`+h!nw@+;if8Dtv6mye6-2&Lm%J6||XbBnRDP8o8#G+p%R-rYUx&C#; z_};y%dQ>G(4#5@8ipsCWdgE_j+Qb-|uCk8ag|w zEh-CHCX(sD62M`r=jl=rwxd-bV38pDA-QCkc3+{9H=2oH1%70tQdN3^JYyYZDx)P> zML+?nBu)iHgq4(;duJHNcHlSj~J*Etijp~D+~rV{#E2WzVu_}EB>QtrYbo2NZfSprt9rL zVCn!N$VpJ6?xlqqRXw!>I-w!8Z0avXaZCo}{iA^WDxh{bsL0!{SDnMQsv3VScA~kW zZ5zx9LR5`p z4E2%BqZGe2Bprz=TW$)pDU@Sl#L#22{-eYh{ceQZcAt;Ow?h)+aC(B8T778#PS3}) zv&RPgBShAqB_)`S@scXnkil`MXSe)Q@E^zMP*G7LFH+bwm5SA7-D*JCV>3do zHep_QO|Z9RM1Q}-%i~qF9$N{@2v2AA&qBm|MG6*`R#n4wONX@%PG9B41l$3?JV%&a zo_bd(*;&i`gG;conwshrYM%}yvLcXtkQ4+$pVL2M^}{D$NkZRLt@5IoR$aBGpV}rW zI;+3i5U88rAFic>-UiBRJ9Pnwm9;n*OTI#BC~9`uV#G41u`>%X>FAI@KU3t3noW6B z&=nBGRGg}#9IEsOYC_?(gWac0xDE&f;ykY?s$oT>AaG}u`i%-<;kc1w=^jc1Fz(xp)fxcF+7^jk!i4K> z(s??r{|M}l%gK?NFV_=oI20P>N1c!#1R zh?ChffRpPN&*iu=VrPqMc8Rtpx!|_x-U`Bt*7&6(}BZ{QJK!Vg}_d zJ;pyBTPv%WS63}(_UwCSfW3bs^^wFt9Z#6X1OQJ1Fx2JkL2!@Rw!F-=rZ z8k_*~_i~1&^-61|K|Y4~-FUrhPk-r6PMFpB&1(3FjB;=96Ac~_;#`gxwI2+nUcByS zBky9FgF;ik8S>f<^JO?A=G-25^XUkBvm`E@P?&eRy<8m9#$>gIDtMcqz(^D$Omd^v zD#ArPFF+w3d@WmM|m#V%*%7pFykjps5&HMOQ;B7b6vcG6Ca z#vgG*;fb-T(SqJzKf4|$733^peF&zLRAeNz7$>0HS2$#b3Vj8K1LY3q`r=-+&>iM{ zg3;8*L3e=y%^Gj)Msz&V`AQkNkXD{mS0g~Z3c$m=rq3>nH?woILyT3nFMIwWbsOGW zVC(cFsYxOUvI;PDXPGPbi+Vb9Z)C55s@k^8&12-czGB^Nq>pu-5^s((6g>!grqY0G z-jRUyvID}`?^Qzn*>oxO$FCy&@Lm(!MYskpczendy~?@2p96O2jim(wB_XW`SW-fo z0A5HNNdI|0eM)N7o7DqWc1xrW z2aI_~5Mp>?|J-t|ea)rwN?f%+Yll|Al@DXNnEJjkDFT;LI%fikeaO60TkNk(m&f){)-cX=K+MIE zI8JBQ5rJI5hs3G87?#NW2J=iFhH;bj@#4i*BIsZShPHx^N6!da(*1<7J8Q6UC@-sjJl#Fp>4Wkb13l|MeKBlYa7pS>#*;JsD)r<2IaK(y`mPw9S&Q+o zXoL8;_6)sMep9CfNyW9&-RfG`bfkY}M8A`P9Y57~{TSZMFs+eUQErFFa3&=y9H#r$ zq*D+Z`4d)t4KiukMvYw7w6F_LQ@Mc*>9P#4IFG03n)Vxut-Oayel|kp0Ux2y=toOn z_)*U;?Xd)R`71PxWvuzRT$yaTvY}gos)WRPLXa)dgnmoBQrS~SP?4%twRzE@^j7u9 zR}f{*HTZ$`zwZiFyS~8M7WW_|bqKiwtj>U%LOV0n){DBaXbc9_o4^sjHdrYIF74ONiq%aI`_^!D(87!^bknM22zn_picUN0Bc2Ijyk?c=YTqa_?qV)WR@#sen|1{VeI6Af;Lz^V^k`irqhLs7cFIaoP@KBPYQT>QytffNi2OZ>+?L) zlgw+SczACe{cD;K9a3aYOLIT&G1|UPg_PZ(P$Q5yfLwwp%_~TDUXcI?bOxvlaossI%^ef_fOX`l(FI1@tEyF(@GVTpmyVOV( zDutsdUY^<8rc$p#x~^H_bV?QI%HDH%`Ax8xRp%93U96r<*`^)B5~BKNkg95aG3?d3 zgV&n9VJa2DBfHA_qq)R24S(}2(KF`yL_rPbcO^I%o;HQZps5aK-$T(_?jdTb(!q3- zhncCoc~)~qp7|J+i^YekDdzkdA>%PIp5AYDwZ~$)+BC^cq#;_AQwIT{)O)|7ktC3$ z_M@AslY=n;Gz!D;SK$rTT0TW%*p+c?{7vLW7AyCqQH+QVq+@DmZH>eu z!~HmybeCQ9*=bIlyY$i9$uU2|%uoebmWYIATyS94D7Ed@Cc*}G*^v;>=K;18VVI@q zFg%vc{p`$V>mn%JH-kUG9I!Ly{GGgKfHF;+#6)>?n4=HOeq;C_ES40xh7tmjC9>R_ zGt)aG=7h1MMMbD0h~{Qmh~$nDrWG#V^v!$ z_u2*%c-~27qQjPmKibi7&#aYay|L`#qN)MlCp{UQS1Qn%Ex4*saz2dd=ot= zygJmK*+%#VD2j7P@>^x{A9-*e~tL{`hC8YRy8 zUGloMRmzN1^QZrcAqo_NPr{zT(6Xkj+I zMoj{OiBv|%X(9k(nG{Z*E@Y8S9i!FNL9xFoFf!NZB=eKx);)@;AGp0zzp0Df$N7?a1-Y^`mB)Tp*8^fW8Cp64G-fwz>>%FS}a2I z9|ulA-v}>M(j^HmQA--#z$&8gZOzjv5N1L-Vf^9VSw-vCg`o2Xj^>kT2Xk~BYE2kS zbpz@47d0$DM>-J!wo)a zFscmLl}0gN9}UU1Zp&b9Lo+8*;|U6&K$H&}PcYo40#V1i7rQH%QQ>yC`aKZ#{ek<+ zK#^!o`%z?Tjy=(hOH;R`qbkg<_EZ?w#)u-10S$DfbIcaXfF08Y-yP72quqDf)bisF z9#eDPjHqcM`Esxlx_~f{uo`#@I1zl-%-mH- zF%xDU35(O{7=qbz?0kqq{wyE}!RD;oQ&UxFEJyXqXQ1coQ_T1>UYw>3S-KB@tS%>5 zs|3uL?)f_;%nZgeF@rRkw`tGTgA?~O=T+S71I&%>&&OkvcSB^1@ZP7YE$AGchdu(+h!9->lrKb0#NN`;aX(Khym z@RN~_4AFWLwG-r9j2fYjUJhxB?1)i4QsC%gT0+G0*TDb@s!iH^QkN8BhXzY^wG*U* z=1G}6mG0xx5_U|rZ!cfwy@FsKdQ|r1s50n>kfj@7v`ZWDhPqYseo>eLh$I7$#Tw$KcKSq@>)-f5mas-N@<9b<>*v*Mv{CpxQ2TM3QXxl z7;!Uz=`diWG=m4_xxM{9bwtlDc<$|#(Ij+rOikypajKG>17R!m!miKpgKd2#1}TVL z*sr(G-OljkWRPY06fF3Z@4*kD)oDZz^I@VG^I6g=KoB7)Im~y#Y{wECij~6}_@iz> zx;q4#^I+H>Cwq6th>Glgl5U1_3pgxEQ^UWBam%S~#gVKZ>>#R^nZx4gAkc`ko~RSP zpO*fqSK*&zD%cP7)~%Q$>UkR=jqk`r`>mWErFz;Hc2Dq^8tRHg4b1^P=j0hf`5NqXcV*XB`xA#6~)~MG)JM0@J^1wWQnxN6GBKn-sm_oh-J_z6^e$&xIp!j zMa@4EHnZ&kA}LA817nQXaX@u5-$D5jBLibRZ)7*=Nab4O5xd_F?1Ja$KP=RhQVolC zP$^#{ERy-iS7qMUqoI|*nH4OWNPuQOLrUpL7e%RV zTCyn2c+zz)a{JfMRry!vbhYARn&n!t)qe>PW%@do{(hCyAd(JIbR}Wy9DmyqG6yJ% zA9Sj&Q0SKojqd5lyk9(GY}z@3kaerFy!N3SHt!ePHnmk~a6+ z%L2KoV|FpxjgN_pXMml+S1v|duDgOaj0DXep1P$9inOCY;8}1+fU6$Y= ztZw7xpinGojGh+sfA&1Cp5qQu1$~!YA(Je^7wL-T{mLI4zko7@U!kUCy6<$+!(d#>3Xl+3`NKv@N2YwIud5)j8i_^x%CfxD7s3_ z{BRICenbmL9|2FPUJFRDKGXeI=GL6;MOimZ3Y$Ej#csz$KWJzA#FUd86R#X@QQD$k zb&Vm5dC*0u~I({1RgUihy`E?&R9mtcc&_ZxTf^{A&K>5 z4U=SJ<1R4w8-^f0hx&O$zq;L5XUvIrg#hl1g4!uc)R$S?2D|Tjf3Iv(#Ndq`8moo) z+=1B)(^fNR*FRSe2fFe9ux$=Ox&Ta;E!(zj+qP}n_E)xT+j>>6Z0nV6+t&OYF+H>B z-kx=4#65W<)0p`4ku+i98%~|yQQ#Q3W}{K){{$xHew>skOXN2E(mXCO4co5F#nE#C zRLu!61qBgfLI@jY-C;ZxWSqj~bN9R9_s`3H=Z51qXC0zyXLB~-Hm;1dzz2AIQo?Fr ztVyW+|fz>4!Qex?)sPXWXBJ?S72{*wG^SW9Mu({JY#r2lI1itI>GFNLK4>*9tNs zrx&Q>t7`oGxpVZgh1<9jkVlP>Pd#i^@mfpmC3Ffn(zT#m%ZTB~Qny*kpk>mpm{E+^a39uJ*LM5H7ZI|B+r5uE0dK4U>FCPkcolm(1t`7SvCp2APN z+yC5=Hxny*PFg$;eQsmxJCdNM(}D~EBcuk5Ra&P$(pDU9^%+lP*Y3!pN83y6zH_jY zh#3~A4pCCS^)lD{TdFPhjI2mgp(#?7G)jh|{gQ}W!fWv9Mtq!8!XXy4RH(~u@ z{a5$Dpff$M9`TzDAMOvD{Uo7)fg5!(%xDz6E>)zzjg74Xn?hY#*)Vm(DSh8eP6Am` zT%fO_WU8EnVy1FqzIp-=wfP5eF$}lBT$(bs?dT;^)gWibJPO@*&<8w^NmrrD68`SX zOHhm~Aa>09_UAm?IrJ#Qb-f* z_dqkoN6S7J!Oc|mq8~ja51{(pAg|5yGDk$6Gq+^Nz(UR})v?0EkyO6X4yl-Fd~`Cx zjG<2&cjE{B`E*4d$_+#Gi-!Y1^d#WMjKE>vi4G3(I2QxmH!Xq+ov{{tGY5 zRPnl&LwD55m&e3d-}5qnT;oU*e)m^eRs#r#R@Kb=I>93PUp{tCnkp5F&NbT) zPao~^Msorh;Qh+(Te0gz;j&>;9OTH>ulgxfF~OLSZJ{^0G(i&#Vpfcf_d@WI{u;Bu z6kwC!qcbMh2zf|AK`_WzMZK>&y!ZIdOIkV86E;uJm8bStak4h{`R_n(G@GGTwUEX+ z)%>%J-w=w&wrp`+J@;A!-0P*M`wTMq1#)@XQuVTOKad?UW#$p0_4XSvrgjlTJL~!A z!*V&R+dt=b1OmkAGLeC9)9Tzan#=4-eUiUpN)}-F{}B%vN7}8LXNw)W?6MwFoNPJL zbDhZEe^fECP^oUde$QXxB7iB=*aAt@z!af;d2Z=@`qnYoNA3OJ7oka-af+w$cBsx|+=$O|0os`QSam-&Z^L#|K{Z z?n?)$d-Si@o0D(&KZs~Q4eQlj?w+jV=ous1aQQ25GuuOPx`7zc=#zIcfSdydch%kx z6PH&|IH=rV0lEM+R?QdbG3F2Mmmdw39d$Hy z!?kDMJ7vJf1Fy{23q|)!=N3m7bQ*fmLh4NQ_2%{wp(h|XA`YPOPbS$&`hCKR9DBuk zZ?K>lMcujWo3TNOiX-q#stN@~v*kd!8ZP}l8iH)eY&V=L0I z5vV!(8Png)ksnjvNV~A_xfJle*rq+V={@fleeJ-yJGW6x-6oHSpoJ-T)zxd&Y0@;B zK(M-p)s9B$UY6+`(==%o;~q29Nz)t9KStJ&YIaEfImU6*X!EfSFx}LabgHJ&Slom1 z0{*=Rqa5YD(ZwVjo%D=(_Gt>xv?GA|Ith6O-pf$Je=T-su;_5y??@8mu3|HPB6=yF zHAOrfRDZ}tsWo9XpWGBUNv^Lf3JpUi-2B6Czv}U6P6#)GDn^Kogz;Mh1Sx|fdT%^v z#%MwES@I(^B<_(IjZy|`?&yiP z4$Ho#%YD@gA}#VkVa~#Ev+)M%NSp0;|J202GPf+lD4CbS`TAQ8THy7urPB^!r{^3w zjXO?+khWg~>d*Z}*f+0T_Sb6dEfPjN7U|19BsFMpd!!fyQiT}q99qC|J!j{}J-!3l zd+CYrO?O1d(Dj*oC?#$Azu5Vd~-qL_sJg1+=sY<>Nb}7g$7aoy1ts& z%L5NKKrPPK5y+b!31!lpqK zKocki6gL(YGD{T8(Bw%aWdF)&2vfty03%w&#F?REXPPOTR~O$;!UQsU-9eHuLQmSP z(xtbh215yXQB(!@tMjOmpJBqdm0lPX5?QLJSEd?Yfh-Pi9O1SQNno`T!U zFd^Y+jfN#ZRksG!=$s+LFuO~VIYj?xJgR~K6>2J9m}? ziu0o^jOpEjV`zztvDG2N6qG0j++}L@$wyf%I@MI1YX?d)`6I7VZQ;Ko-!naAgn}ia{%2Ft_E7#kbAh3T#SiJ~6_Ppfam zsd1}%CT|+C&HE~yi=U}Jlzm7|XQ_L*EBYmEjzq9k}zBASjn^}8N} z==Xt=;FE+BYsNo)n zLB}sdvJ8gy)kA za&XZ!E#I3SLXkxWlMW0AJ29kh1+GPLe@j<#NycnkK6o%2Bf*t;uQ$*E`s*0A?4}|g z)O`r&cAvxrG$6P+acDmW=!`YtEwGuDt>e`X*wAu2RoL#MDoE`rC88i2WW32{3TKC9 z1mk7mc9S0MW}QR^XT?XdT_{EZo7Lo+Fb#+ZG8LQqoit2|aUjBj*rXm`Lke5_3x}xm zxCz=>vpyD#2>E9v=uZm)p$Yy3*=wK`iX8*a=CSAV2epBQ?pH-{3810R0Uh1^@{HM_ z2aIW_cEzzz2VL1pA>s3jK(r`_zb=0<8rkBC{PhLw(hH9>J$F#^ZH{b#K}he8u^-iV z{yy~Vv6|^OY14oF0|4JoaAok8EzC&j`vl6IDmN2&7}shvN%E2a+7&sC6M-fUh3#_= zhuKs%fr7pIg0vooobBL0#QQuCGh`R9THuq--Eu&@5e*`QU#n;C0H1e(^C!m{o znFr%<1kO^sW4qf_gD+4e49ChBzVv=`mrI$_dj0B(XoVkt)}Lu`-Z*X@!YU8tzB{c9 z))x!25~WhfW+;~cMs!#fdMgaSRy(3;hi?d5ENL{CAwP}UbxyapEvB)X5ZMa)zE}~f zogu5irtnl=_>Ml=WwvNRo1(r!G1QPtl#o+1y}LKpS`E||0iaI#niMZdcg!#7%Vs(u znaZig4K1P>gQAKKa6pi;?nQ3b<$;4{atAk%O0wIhq}U*UZ&c7Jy@a=NJk}>8vEw-I z%1o8vylqEHmhGCLibgDO($T`>s-VwTuWlc2*Zg0netIT#oXDL8(a86ja$mkP%F8Q? z1f_<2pxG5!Ntzb$gKt-6oIfhvcySxQ6)#?}>a#%1MGh2&RWjuhqkDnc>*1k_q7bVQ z#3Xn!O0&lRE^ISPoHh}MH(e1vm5X;JMDD=3oNYc(v$m5u-3o0;=F&VkNQP*&r`)*4 zAnwI$!_3|W-LVk4RK+{s${?=%(63OT`OYttGn04_D8f+$#nA}l^GkU`gHHOJZ+WsN z%=Xzx|65~5nslJkC{VbHjdquHu3K+*D>}KS)`wL9QGL24Dk-K%H+iJ$EaDJ;cv8XK zqc(lXI)ZR>NhwV}Me1MPHF&XNP?~FGmK8xR!WL-&+iVHQ;GL)JekXye&&reOUQ{&Y z-gh_N1l5(tB9TY#f)Zxvig7uAh>T}}yZ`GPwmPY{`D57Y=ZMi21hkC`l>nRejTtHD zL3b;_E@!OC+GznX9qaPx)PparR96klHYl_FKBq{SF7{E%2Rd=P%<5 z!a&%{j(@G~arP&**C3K&e9ixAw?Fjm3dY<3r%SeFl&w>?MrPa&la#oW93mok>Mm+4fZdAka|b8TtXMdskaj9t<@@CATq0#jn2x>TQsBOGl|K%^NwmSPoS)dnp{K~#<#m2fMoz%e5B^=TXEe~B#$~#ON z2~9TU_Bmg^ZAW4}+Xhb$`;f_w&9)W*_-p{hA4YV8l})%W2$PyPF6!-nUb0t8dUnVk zYzXG}v&xN3$QS`hUGhx|y^CqlfM#bwi(4lj_VXSs7MG>lCOr`Dv5H5Zbx8zv zrP&DZF`7raRQrm(K{9wWo2FHnx=(&!obNbJpOjr4&$BJLI9+%A)OAc=CU~Cek=i#F zJ0=yIEUYoYB5gUd25(S#58V|ol@<^ZEAEC3zvH0c!X!pT^?a8O$3aI3JJF2m=#BhH znP#3+r2Pd?dM78#$Xn-d`bAN|37#f@W++~=>7HqaBqS&Q5BpZ$$D%p@!s+>fq*X?c zq5o$)$e&v^H8Ykn5oe~qW>T>Lh&R^rfC3^=MU{{fKX1=R&9_HF3Gh1Q|Iwr}GyQj! z%F4>c`u{1%|D}9<88T$R%z(@I&6Phty3?vi!oaS<$U{Ax4MK^74tZuUW3y3di-d3t(Ip9o@Wf%P@>F z-;nVa8g`&WM7)Xy*2}7+S4AAVOuEsp6J|HymjUgzJ_Pg4jKsW@5W3(}@$S^{TkYbN zPAy%G26|7?=OW>D(34mI#5cK{965(SifYQFYPDu}vj0;w<5SM2GG28+1Lf!o9rFfD@6N8d< zF-9Dq9lg^Hn?sEC*@<)Mt^_aK0-eq5RsG51Wix8O2yuDi)mIZ@7{9HB$T{%+hpMDm zD&>v~V)iSD<=`ooj5z#e;y83J9otvF9`4=oq(H4S149#WumjZAUYnCe zFK~%VbO-69@!b+T8A-G(OhM^T%#aYz9(!O*woS9VUWhswLfZ2S*^%fdqKTKL zPU!)cr#;n?zpw9hswq>*+(-2s!hqlYXch4?nIgFN0nR`8EskxLpKaZ~*Oci#4-uMe zR`>FaJb7I(iJ%xjZd0XGsSg_}N~X}qDL^TS!we3^qK=7+o={`R1h*Obe)o?bUgid- zen-Y!qzIC5Px%4QEgUUU++yOXrR7@%jN7!%^V4g9&yznvz&>UDF6b8XRxrroWM;&v z?-wT^04}=1a^UUIiMm|~Bo=mr13s(9fbxk;aay%GgQ- z_nVzCK@cFcz0_`~F7$3XuS@!pK8HN|yc|F&;EKAA^`LTk!n`}WFRQA|8|D}T_Lbh4 zj~@>)qJAtF0yG>kaoacW#GXA{F}Q8ehl>qT3UFhbGV_l8b$#9L2vHvcX1MQZkmap^ zgRr6MS%)$nO9Jm3ZXHdn7D^*G{+HJqI86!3*?Q&8W(G)il*RAMrX{~3J@!E_lLyES zu;F1ue%eYy++K;!!X?p^dW6!5ak!0t!STka#)mG2Af0Eq@Ru_(| zU})NFb>vb%MKqVnH=&i)6)W#8nqopt>b?`Fz26;~1|0<<4cS|mAqrU&9we;}ScX79 z4w5SLJYn!vb;v~=<4+`C+yUxHn;F zT&3b}2m$w)`w_mG$hqoavgO9>c-~U!L}GMxEl)v>Z1l^IRw(ONcye&A&lSK6~K78t4Qi5S(6Y8wQjp3(WyHXHy}YjYCQ@XRDXQA9Y<%z?kuCP|^6j zcWsK~MfhIcmW%!x5$AQa~w@ZJUeUc-Zy~( z92C~iT1aCOD7NaLlWUR`pzXn|?Y*@}sCIHNAZZ*9*I|d5y3svE%)#uz!{e*;AYTK^ z?P0t*mGUPuoEQgzIqS*ta-iaP(%)$(Md^1i?k@L0s!8SC(kpj{U(WRkX=&L8x3+C> z9i1n=BOadv>`2SubL>BRVtJeij*qYzx?6xBrHZQV`m=WD_2~6Ge@fPY_Md z=!gRK^3{I?0==THC4vJx;W=M64Q|;}$v>jG$GOgli z%|Wmp#J9btRPhX*q^gvcqUKKhA&Zd(U8nPwg8bol29DADBw-fB*{(}yBOq&VrB zm8KqwD7Q}nB^q72-YC7HOF`^GU@L5GBu&qvB)~m`hjT_c9S(*#;YF<@V<4r5J^gLn zgBU$l8faYSYt>J<&iGe<3{5*a2Bcvk%omsO%`}j+fIwdqe~gD}1d@^!cf>76Rf_{d zKbDRze6nN;sMN(y5SA|-3hxA%?H*08$73`*go3JCDnZx~jBuVMv>h9b*jj|n2)4uQ zWZ|TH2h2y~y)`)Xh#%<<>4I=m>20%AI$>uPS~F=6Oa?8#yXtZW8R9-|En+w&!wi5H zbO^!TUO2Qn71@%;#!ljh?6i#&NFOSzH`qfcN8orl{GY_RB&6 z#n7DU)DTAy(!2FT72z@Ika5dGmVeJ?Msfq0r=iv*9~ft9Q(qZsH>B4l_^5kYxiEbW z(SUajN4*`UZtJNRWxPsk9p>EY%BbB1qz1WKuHT0ym$Si8XNFI5|IOOcGh8hYZrez~ z#HKd_C~bkdA_beo_NV17PDJjg+=kU?ZS@9)Kt>$y&qdkUXAy=j0fRi(ZkjR@QRsq- z9^lHs=RjH=QzGPyqsD)k0|Q6iZ+*sKnBYoenlT~=+oKX7J^!Vkyi@-bt*&PHWE8cc zftRD^@5vP0D8>Y+<2M ziIAe?os7T;lsh|}3Fei!*kYkbw@oO#f+U>}%socTN@SY6e#Xz6SF4w9t8O?&6i#g- zDBiJ9j(7^8F;i1>oZ-1|%NJrgy}QTpTwYjyjWty!8Fqd#uSt64#wftC^?L>=;|w1n zNQl)J!HzU_U!Iy6pJ*50tR!X~6=Gnr4+SQMCd zAThn+>`{v>DPs4U$V!2mYz`qHd5!TiM1fd<=M3#8_RxVNME?1W6@_$3-Pmlje%a)~ zEfAr4sHmRlG4hRtP;8)Fszgm2XwvPw1eAK&{dkP7TiA6rZG9rdG4CO@J)rLMOfNpd zJvS}FCN$3afds3p93`65%jcYc^f6;4sc~!w!RKS6k=W`q!rt95Ax;C(Z`uoLY#vT# zuBWpvA7r#=%DO~7?^qda0=|F${C6YSLrxRLs%6@kEJ2`2n}M@8qPT6>1(rC{q0_Vm zvTuHzUykv~q@2^KD3=P>AyXvQXU)B(3Ro(dPK7t?cn3VrowZP)N_}?%DUf()IS2Uy zm!-_VFg^1Gd$LBNIe!@-M;++%9o>^TImRlJs{Is1+Y#kog6QdT#xMw4&c*H{;5~bj zr{HMsBVx02&UpJwfhD&s=j4+Zq!YpHtIB>l9WI#)8^l3mW`3Ju z;Dn8`q2*nEL@S=7YxCQp&6D+CS33MD_OnNg?pXBDLiJe--`D&tE zJPBZ6fO)g!x*cbEPvjaGOl-LK;N&qh3(lSJ*zIg4=WK4+6*{48^*l4Z5tN+{(6M?&>#3Si4d8V zRcQtASG-$>-1-opbZ4-NWI|8yZ&~S=;4plHJGW=f$@$}P|F#{=W z&{$#t4Dw9{Q;?n8)S#`bf;`W>rBQJsXMioBPRhkIH~7ux@Uz89)Tmas8KdROuC&fH z2w%k16GIi2-Ey4+nxTjzuP~?bhd@uvyZ!HU&-vnOF_^^!V;_gWSL&6XFxfS?xa9P=Hs*}t|be2aq3wXSaq5t(h4_V z;;8nC>OlXk=Z3rkrr_c{k^G)OmJb~WGt;di*rI56Z5J$sbY^gyqpk-Qt)7~i*WMql zxArEi&AJKc7C6}aI(Uf>-n7c7%&A7P>jGXkBXz&rK-pvQU(xAzN)@K-(JBzTQs1zo zs)Vf*h#kUj##@}ItgDWG=Mb+3YwRK5w1ZALQnSw#I!&5{&V3lyMeV8_qjJ9t1o1CD zmrRjtFD!wcl`&J|WVQ5(iouM2amkd~X7mp>)aX&uKukXFtp7Af?<7#E_-KB28G25a z(*-k}UAe%bX|Ti7m&Q_1dfsembrqjy%WGDhSe6Q=+B2huW(r*`qXWvF!Fm_KHG}Db zA-31g13q0aM?VeXHbdNjkrB)Mg0)i_*xeRUdNx(B>fGZZ^mo0FyFc-`O)8xdL}nk~ z)-XFGbh|qx?&%EnF+K5-){xFFkHlh<=k-*moPBHyY~fdleCX0$x>4#$|M%A57q2@I z*$z15=~;xVL#CK56)S}>5OYExRU~N*SA=EM-GHIt2QuJWP|pd|`hU4*asKyX04EFE z|D((q_j|yo8H}93jDRauxerP`PxgJdh;}exTV9Ea!47U16{Bkiz346zkt7yr?Ji-$ zfrbUoD{fc9dJY5?(6FSn#BtWsfZp5Koy1HQltaRA&mP{-BXb3Z@|H|L=-=(!9&XbI z;NstE&!dSCJM={|@=Kh2hP#~S=PZs6930;x33dY?( zAJ=p=a(QrV!nxwx-ya&2hS>>JKNTm1XVQ7oZ}@;-5%^>8G66?&6D5&E_2h|)zPc^x z*ipI@ooPN!(twewrOYxk1WwB*!;W?rFCl-Ondi1^$2(ffJsGlAGTQW@V3i(%K1C{7 zn0KBEXN`27L4f}C(cpmhz!E0&%$+lnuWp<=e07qy?o8>%ZH`T@)MiTb741?-AJI^^ zI^xq^U%1?7xkJsYpP~(^DM^k+_1H`GdSXpEZtEC}wNtWl_K`^5oK@AFph05ZVpFMk zQbzv!3|Uwt7o=hEvYteogk^YV!^Uiw*Zo9Y7J={GzA<;I*$t)^!p8G$a?^ zDG(c!r}mC49zr1=Tvf)pH))-@FlaGnuD0AKr_XK=y{3PiBmHsebJp*XA3RDD6OSb9 z`D6Ju{C@c?IIE#&W>nWi9e!q3d23E)zOSpP;Rjo9zklcqTF>v0LvW=uAv~vPoxK<< zez}V<1Gr(DK|+5xVVWi??P<#J&I?`!1tG~OWKF2Oxk2)f~C9cg0eD^bVAoJq!ZLT9OF9mAQJDs-NQ z*I3t&hOKZ{m&podx51ASzPR!}WopSA>buXJfXJ;?zSi2ErIpnMhtZZ!udy|1EK|QM z0?4?N79*ft5o)gWAt7&Y7IH=DN0>3^uX`^j)yfGzwAaVLD!Q3^68IiC4q>!usvvk)|QBolG5 zX{i`f&ffp*x=ph2m_YWDE|X|`<*R5==-ey14Glf|$8fvNuSvX^yg(WPr#}|6(Q_zw zN{$6_tv+VDBz={i5_4fQiq2VvdG$X^_6C`fWS!3*< zhu;{m)^?E*D~=-G~Y0)HchTCYM=Y2;&!JZtLm%-g6xh6i3@SH0gx~i5EQVnBJg@< z;Vmo`QR1jT_p-}n1vP_S08Wrx7ZkZq^|yoJOa+<7mA4BQ;PbNe4na=VWli0@+n;X8 zrL^obe>51Hz}ve8H2m14cEO9>YPOWt1s1v=T}e7@)R%uUm7IiB#gz?yqPavHr+7BwSfDlii+KC zulqMVh=-4?fR#bYz{GwQP`MY4at^RHf91Hk`q*IAQNB(j%xEEEuPz}jL}@xy&D6?J z=!ZilP#K-!ba07ZfOa_|qupgxBDJ>>!PcRX4KL|YlRHor1lveMgodhk9V#TxaXf!f zO37f%0K{Q*T6oHEn>o#Ks%3NRNip2m_wD?Lusv~4C`nLq+1DBfeA8Lp`h)=JZ>Odq ziJ~H=H-s^IS==RmE&TRq(EPC*q|!BUa|8vE6J}s{`2-akz^xCBL>w_V2?~OB**ZFd)MBP(mx3K1kSvH5ZLhSV+i5z zNPw=e!K%G%eP{J=*wQzjN1(eS(XQjDO<$OSM|@727SM0l*-enntQp|URtUwn|MaMF zcj#0y%o--Vdm14r?ndxJbLfwbN1nXXMIkz)JDt@US!=WJaZmf_PNU4FYisVBwKBJz@y0u@Mxl#JP z1|i${8mo-B%-D>E**IJC+JYvfgAxoaKSemL+%7yFGBXC61savIfvt!+3-c%E#zRxI z9m^a%-vQz~c?>hih63Bn3oq)vbR(pQR~eK)#5HE|wE9TKspDiNk7>vR929Lz+bUlM zfMxvm;W~D66kG|J%~`h{k|VC3B?F7N%tJ*{*Gusf)$po-79Xu2IP1f2v+Tzb^(1JOe2L27TvquF7$>#fCrrN*6+F{{QSlY&oE!dma$ z8lGmCN#>fV=x8~C!^ex}NI-wZKlGAQfWMP#p;2(BT+&WgV+|kX9m`94i%y05s={Nj zSdii{h89T?*&7lIR+QmWy)vv8gGG86^dl)d(dBLoSP7pL1F!*xd0U{EV#Ibp=Egd& zGHTqV@z(m$o%&)8Rr`MIqnNi9k6vADCb`kzH9n?|?<-B`>Q0ufX}(i_ox7Yjpd~VX z3BPb`6ZsZ4!9P1MXZ=8i)@Iqs)^=R}uZc1CQwb5e`w)z>?`_@6Ur%wWI72%I?uaTA zY~`o3U-Leg0{8x>M92rk+aR*LenSPX!Z#uUp=SRPu&RzdebOe7-=loY_kGK1doG~Y_BOxP|Qoc5~9ig;K{SAa) zh%=(FgO|4awwA!KCXcPv70YgBG!vnh3f8wJLJcCZzi2gMj*@0jc*C3!FeYn#SfbgG z&Pw^W8b&`UC_6W6;*~ONfwfHxwJ0*Mu{2$8D4*0K;ZM>eacdCb*}H-CkTnvaf%*o&2K@^w4fH~ z@Wx}@8<`d&JMB#u6xP6zaG_RU+A9fuE35VUhe;NMAJ5{eqMaGc^EhT1+ki`yl=Eu` zpUBa5+TfgJqxH}`SrXpt!lG$jo@EmMMV+aslh$PACGkiJKt~0X2K-%x=@$*B zm!4j3iy}sSnj?@Lx?2`;QA`1Im@6r&oRAI|AB0paWIcq9~By z#ttT%e1|{T=TXHN&^P}W0=~CET8%pKUK21!w%M|?vy1NxNoCFYgJ&F7?VYp`%j#)X zeOvG0+g+pn-k~Mpw8yv8D;Kg$_IJEl*48%H;R$-F_pnoPHQ?(gbxOYL)JcZU+g|!Q zjL`oa2OCb(lkj@0yt6+5uMl3*0kO)#kd2qMPXjbIdmZ;0ut(`Yu$eylvU4#0Shs_@ z`tm37*rehz`x3jwbGR;yqN31qR8MjL#ghnFS7!=0Vb~@pp$bknx$<1(_X0X*FaTJ4 zfzU(K3l?a|YIU~dhkm*$CU{`s0G%wF&kcM{)C=r%ssTWxSZ&>f!X^M|mJCX%KpKA% z0Dga3CC8nFjC08?>O8k%xjRts3nE67SCla?28;*7&XsX11}p)vPuXlk{;4+%Qlw{h z9YiJ)0XjY$?}D1(yt@s!Hy)S@PVyC7tp@N z@Bo!SQ9!|0E}H=O^g-=(8`J|rPuKQMa@7mj5fLTxa*x3fI+v)f2FBU+`~^>^q1TEFg1CPk$rvE$Ls zraQTR+b$b;xJ;SDBG*-WnorX;b9suQU_=WdFK2ZKyILa5y|m*w8aL zvTfJSoF@PxIN{Q0OO2cL3{x9o#1^RuEQNm?Z}~8mzgd$ir&+t;G1X|PuV{DJwRUzA zP1R5AWo@*!_%Q4hsynAza3jgA6LQjKLOcgffg6Y983Mpsyu*vugmzq#4}}jyVK96F zDP+w*0X(JZuo8|^nyJ|J=4TkIC6tg-zXB0o1^$4}x>sK)4xSYcanGx1!^QG5g1s^m zSjM8RBqKHE{p5&-20du&Nk}GP20P%589}`LJ)|jrdkoMecqJ2Y@nXMoKRMq>t4SiV zV#OGzF}i!SZBg*keo?8Mg?%J1pd1?tlaz}WB@BJYs)1}J5Rp71WwbolV1y2DLDtO8 zRe1nHl|1n(dhlp2)-+R5UP|NXOf6i$wp56JxAZ3D=UPU;3=@O}g}Ddhv`b}9J$Qul z4x4*RsuKo-;jYjR}U|CevAJC_jmsk2d>{q{U|uiMGhbU@xt7) zi2w0M@$23;Z-2}c&kYxq@K|TtLOw!0pTYI($_XNPXMFPiIC2Lx0A7&DMB zH4hrQZJYvsRcPU!j5;or$sbiGIm}OaJHceU@1ZzrZtc`3DMF~2ID4P`~~b57TN?7*(+dc zDs}WS)V9VI28~R(DST)J5=s7AnkY#rjrl_;EECBUHaB#25nXrs0nTDyLeGnXx$1tO z6qO*xRJe3;lE04HnOgG5Z$x}(S(qITkCDQ)?*ZgeaM$N$afoB-;z*>y zUn_sQ3FC28XHgR%>1%lu1Wla)3~hPatJKC)ETS8^&{It*68Zv1=F)OnFd^EhI#XI3 z(l4chV=aSu@WaVLlWL7vq##9Jy7&q_B!rC;%Bk3zJ8=zM9ydDHsU)%Iq-bg447!+s<$(b=K!MZ4SNNs@PXPQ62wGFB{F4@h?qm79A0c?a$k;t%Y?0dsS_N_r3Xnkc!i#1Q6iksh&D0xn`-Ws=5HyeD6|Aac9W9eQJ(s*NC2AD8>CwQjgHI?G*PEoUvb-~ zdo6TGPuA1G){>wV%boYPZ>E&>6wlu5DFpx_mk3bgwjIJP*as%edIr-^f^i@(qDy)t zw>r`2Hq@&)kz^*>INWrVU^Y09(ChwD_EdKWc2WjZf>b z4#fLOn6HHUvN6odtD7DAKJ4865n%nyTd7RarxC z%y0(0dn3FcTpw=UQ4P#>v~-Nm|CE_9K{c@=I^90?rU-MCoV!=3`k`(KdqtCDYB4D{ z=GgF;jp-o5Ldil(M9r}d#v0f8)E^hn!V+~5CuB?xqJg^O1S*HR!>#}E=zYKOr4C*l zq(y?1#ac>+0wHuFd+8f88!T(0FXbGZSqwDAjEhI82Rr#}4aBTeiK9;)WUX$n-2JozjKwpH7 z{8lCy@4B`@U7(`aM5$qYw(#v@!DUKzNj^cI0k|~t*9Ln!u5J=GBBwV;jwk)=zitBL@Fpvz9&%IQ4}Ea6p&Z&4 z0J?iq)m752vN+%DRW=K|n)n_1ElTzT;NqSQ>8T_CCJ-3O-@O?p4*eIURWKo?b=KiO z2?|4b5< zssH#)S?5P{o0&`kL+wxZTCMOYRvB6U%Qnk21EIdhf=|L(Bht|~Tw^bjJ>Zr?sRL1Cn!6Ev}$=3zCTPWflEhz2xn1P^wjmF zl3Yer^B>PpW{9hXf%V1B_1evR0Qe4o5p<2bK{Od$P@n3m2b!z8dhunh+IB%TnC;94 zOeGz%e+)D?Y8p%Avgp(8V>C|%)-&;3(uDJVu6Kce=uXxoGq9_-|3OqkBhLO4Ue-o2 z0znp$t3Y?ud$rzkuE)A(M<-nH8}1st3n%5~@j>9~*Q1pV0(_TLY0R`S11@Gzt&P0K z(9ES;CSbuA6iSx3t5~{Xn_y1)QVpkz+J%e%j>dBSA2!aZNf$uLvSr)0ZQD9!+qV6c zZQHhO+x97&r>wah6FvRV^Sb{)?iHCUubWZ7pm9Eu=S3I1`U2m*YsIAliZL}6zPdT{ zzlkBayZgIWJ9ETQ^C>N<8O5GtLYuppfUJ1`ppC2Vkr+nNII3F;#r5a%p}85P3caHy zB8ry6Kg}kY904{GH{(ME8O!OOMsTmqc0m)TRmF5~SiD>0#N?LOMtXiw;yTb6@r-| zss%fP(dKMNB+GL8gJKU3$%-<$;r+oOOK`b<@*-!rdw^-NqU^s`R`GPsBBb1Z4D@yz zwRl_qb$(=%u+Oub`Wt+gR^XyHN(2AY*S^Iw3|gH8YHg&H_ov;2T-wcfi#*<+?UevTwV#Cn>bxo0RYez-a-`rxYxVb&?uMdECYaQkd#j0IvS|9B6ob2i?^g=OJzBl_aeD)(U36yWjz{nyVopy zu|d<*QT1_Kn(eFjU8XLqIv}&r!-d;EwG!~RXS>sRTg@0Ng1e0gA6`^to;ux7z5mnx z;G=~)gU_q%%KEVYrS_pq<|~057@JbX7jg(>iVGO!MJ;O+FbY+M%g&W8R4ble**`e} z(Ix1VZ_3li@25knw&9j<&cp0FV`+}G%nHaFyB_>uhoCQELzIx5F(&ZVYe@dQRD5pI z3vj*6uL56&?X#O`v=lCU3pk&oF=9iH%ocBCV)wnad>$IjavlD&uJOHaRW1%&Vwhj$ z8U#Q(x_m=!a;5w5nO$?qQg;?^qfuDux|MTeV1G`MBAHq~=PU{zU<_{uF9s;;RN4Jw zVV4U_H0j$OS|W+QnO20tMgH1HaD7Ilmdq0}kq(L1z6=u>!2sz3-$@e?3M%!N^L2ta zO&rdrNeeFwq*+h0X|y4+WRv%qHxwRVJq5(T+upG?_tK#C^7;$1HQx@1P(@j;;i-Nd zvceZ(9|d`iHu73y2g?C|ZNa`?=FJ|AZI$HUp@tOVczI7*VvIMXX1uVjdSYTq9E6W^ z@Yskm-!+z@hX}PWw5?S5BML>UU)iy?tVu=t^-B36nZ1_U!2Et2rr#Imi}= zr>Z@|?N*lba9h5NU<_wiP-0=|?E~mL^M$GG10jGy5S^>-P9iz0$aW?AFl5}#iOGn6 z%$(+wCC@U>(H8d0h0I*oO^&LLMLzt{Xm(XXAbno;yU?EU&qe&TWKJZ_E$p+06WGxf z$kgQtI*8V<-W$z4m{oGp*Z(or3#sOSctdR*QIlb@uNPg00;xYW&vZ|~WqD%6=34Uh zI>~3$OD(&nhWzsoxlF=%+7OwfiiE&nWm$?b&c)BBQB-Q~DS2RI;=1LR-5(o&yo^`w<;4&kV8_tP_aNUjb=o#8 z-I^wWT#P?GoGo2+DhYcE^|Hwle?BETbfTW#sk8yCsydZZOx%(T>oPNhowx{ISGg{E zaMYEdBcEMLByOZHQ{1D>O*TG(w^Kv={(ks`cE0!KuVV(!cnVgQJ^?ym)}G(b_73!a z1Tl3w4^iESF|ZM|}5SS3dRc)cu4C z_JhcKKMelwn+lfyHiTGMSh)Wu{U1Y!QO?ZX!qt)}-9QVN5-_X1ZND>t?6p!ypYC$-c(MR0$%hr89dU?(AM+~DDXGd=- zb@gQi%TQ?$P+Wu}ttDQ)tMzqw>HDmJHB>7{mRTXQ)3TKl*(Ae)U3)us*beZ*Z1y-? zgzZvs&fCyAr1c5)2T-f@C`+W1l-p=B&Oa~TAmKx{Mve(=;W>1-RZ60_er_LO`Q56v zD2cjQI*k7?k(q|0TP4XD?cY1g_J4j@q;36Cm7aS7(6FZ0A9epYGDMM?c@a3w0rb98 zIp#2M&o(qNG1p2yjyZM7dun8?7#5;ndk?q0`>`#1zxBnxiMO61YnuJ`-}3+X*sL=YqSvi!H@%&{vg~ z_m^A%e3j>6r!^HQV^ve{$9;llYH2AoG3~`Kk$ZH9X^%B`U#Zqx9Isn z-z+q`6M~0K_fhFL%I@ie+fLARlm>C-FffuF4!w9?1vn+LOv#gA{a~#hxo&~A{MA!{ z$hg|E5dTbf$7QUdGXm*SyMQg-cuzFugw&vETC$w0%l+o%s#ed?aKLOK1*I=I<#1bH z7`ZN^dOTGmn;%)M9mse;LlKA1X|^Ckq%cLLV`BaQRWfCzV`ej1J(5Jf&~bALYZv~O z-u7zvt-pNFx07#-7dNOW%#Y_lm2Mf}y?93LG0DprIB`7*4zZ~ zF=~&%I7*p%=OuwEmDogD9OYZ;D7P7xYK<^H4$6 zFQ2AQ4cDJM1MFB7WT1(z!qx#ZT?0$_X$om-RrCICSKG7 zkZ0j!?D3ZcTTP&3&+V&AP?89cP>D{k)gSL~85n&h;!f{(fLTRt0fVd{=y(sv0Q~$T z`yJUjdOFjB23@VWl%uMYn>{j`<<)ELAqZxg3jU6lxkH{erIeu~D3d9YYF?>Mlgo&5 zBN@WTrcP+3+AhzA7M2qGiwEAqZv|gUG0(#B+-C6Ja^U>;)e+y|-x&!2eS#gEkb)&< zFpcrPrEtgYTr1QjbCwSD6FojG=oR@KoN6ctZ@Z|495|FyDKj z1<-tZ2Huj)re8poqP!&Mn(m8Mja0`i{~O-Yd|^U@a>Aa@ml8~DfK0j@WHE`}Qdq!3 zT+OhI9zr+C6s-0Z1;YemB36Nqalsr}k&PWGDw5VyfDEcU^T<7Q#U8 zm+bEbL>Bq=s*qt_v?JlD?$eU8LG)hSDAPQmbw%aMJV=%lIULIc%d;TyNs2h`#&bG4 zMoi>JLXE)J&Rgn1#RYvP@MVFYm#1~jD(@w8CzL(_|4L1~%8Y!@6QhI82KX|1Zb2Om zLGL9-6?*dryj}pdF%Joq`DIlom))G{R|tc?EAb1mw-bj}2b@UxF-I_6%ff)F2hx^h z9G@>wR=4l=8I*8NnKblZx%p-=>9`WecI_|guKrkAgs$ikqcS4jQdHqypMWM7eaLKQ z;ZZd~fDSwH$J}`0(IZ`+-{z1EJfTR#;O!KsF>SBxYTE&reXt~Uq;XHFuFVYhdYJIh z`F9+Q5WjcneK-Df;|G|*lmOvSKJ)z%Gs_a0dipEjrq@!v{TmdlP0C>ulOFpg9z zvHaCh3126`*OK=*^=a&Y63mN$HxY^`?fG5Y%*DJgmd=&7mEP;>BXq&&=u{3G(SK z=J^6n4Pc!!Q+ZiilGuW!M8ElGp{3m8GX>}2)h(^Ko-EDeAj52l5W+f~%UB_ike9r4 z5ktVeUDef}0vj@p^GPGfgGHP^AMV_GR7`d)o9aA~NukQJigeZ%g>dm0yLa*A5B<^L zXvpwTl)|vANk~w18OdoMvp<<*M)s_R3Dp2Cu(~kGyFu%G<455wN+L#SBchM zNfN@Du%Pd=WXRN^2@w+pS`gFf#+p61EBxSZy=v^ENrSTb@kB9R!AX7ZZIQVdQqEF0eYrl>}Xk7SWBGd3nOSo zVC(IW-G|lA5qt6|K|7zxa|fxQB$@$YS$~vTD8=V3m}cW?FwgBZPa9_Vy~d|I1;FIh z-`Xm0i}nExv+}K$?nJ_#9Z$wr#hOd+ShONtg)7C)Rx75CXZq=9QnO3xtKJ>lmHTFw zVQxn1oCLRapCpkgLEWsp&*C!+ig<{kys{R;-wCo7+ks`2yJv1YyWN`1obUiX@O)^D zq&Z{a-6N64qV`Dwch7`87xvy;$$dCrfo3lH43PZ5m9YdoucMcgbDZ6-s5) zET-4K>&tHkcR4al1-v)qDvZIn$wc<8v#UzQpWO zQ<1aPHcC6$i4xPEWu8@sba%iqyq_r=5S4G%7{l&;hE0ZC8JBqNS*3cF&8X$%j_g={ z8PGfsHgd@b3+MznK@;VD}}_e zBN4~?K9mYGZ|dJtGo^+HVNi?xU@4#;Ki=z>?D$}N1SLLL>qXD6A1MG)Icdyz!2HvJ z1Pc2j+N%{-#!6Q*9g!QQ#jd;2j~Uu%uQD$G-}X{-pB>H@zA}^TMR1tLIpc_M*(DDEiPw0`K%fow@DSvrDyHxfI+D z88zDYKM#g%TPt?4FnNHK(og#nB4mdYDksUK%Vki$$Q212i7N_0LF?TLQ%;bqqTu1A z!Nurzv3~{gEbJ2eT#lA2pc+4}wV0IEar$7Jh=M%_MNE=d`mbz%!<9G)ws zszor=ch8ttlR4(7`mW(MN=_EBR?u}&XlA7!vdldN%U9aGpHhoBOu?k1G_@UrRxg%y zjnT$m=47#5%41h?o9XqGem*1Gaw^+u8{5UqQm1In4F#+dp$uWt#e2o3nZ$6i2`t@A z2tx|LCWxm+G*zU*K9G0?>Fj=OSQS$UW(8lKuh~NoAw^9x^G@q2Y#s#$KY3-W#I~lg zvuQ5c3s+xc>z=$!?|v_=~*F`{8`%WB9IpH0j4vb(clJIrb|)y(n`TXEJr8Sl*Js9lZq&r5Aq5$ks3X%_J0*HCH1ikkvT zisHT*mFS}@BpQnJ5>c%o1!P@SXsf-Ot+3b(76IH@9A~{qD4&+5IF>l*-H^_#purE* zc%g@^k`kN0V|jMXLv>5Q{lZ`1(wqs=rTLV?5Lt!J+ylDQKTQ8FhPECRbk+WFICyLq zZ_Pq9^94gjDU!<=zN& zsfTRWns(HAt+bIY{*mR_2&f@FzY;x-tc{km8N-mnCt{NKPQR)M_PvuA!T3dH`T9?q z5}PKC=0Nz=UwuYcc#kgmX<)lZuk{(^elx=Ze&Cz3^?Ck3ApPHR0xK5_)Bj6Z|F4`- zYz<5Sh}FKb-DoAgv@$vzsTQqc6Vt8<2Zsyofy0hGd^k zuoaqx#7uu2Io|KD%Avp6$QkcvBN_*KSUQ;$?w_>Kh7yr8AF%R6t<7lLy^=kWQpCyU zrS<72n<&(F6ZL4FR^!(*Q{$qDO3jaY=pNMt+m~2zOo#XwXqqZGx4j`h2N`iU+Tl|G zNQM-p&oPf=QpPOB%u>-d`m1jsuq!4w5XkVEn{|`D&_e;ETIK{P*WHlLd{@!9n388@e#S*3VznYXBTa=j4QisNPoh=o1Q+2VSqBaSqcoho$8_ChEjzjWHg{mf1*vinjWVTZhMsoYhOnLt2Da+1|zY zo+1mf$d@2_=0g<1Oiv~Vf@x+1W%VvZ&q9&jeI)ORy2y&mGd7V~VEzgDU{YhEp+G>P zo{B21vMW`bb5Uxz3-Bu76!#B0R&6oSlyQCQfvy#Q_|tZ6NX$Yyr#G(GSZ= z0h;ZMvW4TIn)ALKQ((I+E^_Rb3Ih**+EtJCq#+L~NCEwEGUCy)5u>i&1!wxHT9y;} zbvnefGPT7P1zG@IkSKqG5`3klTQUqN7{7Aph@ zNsbO~=Zrsl+5dv}aa*}iD*A7|pS_a(!Ed;m($rr`pTKb-Zt;Kc1F|ZRJ*zZCm}Zqq z1dX(^Jx-ccPlaJFxB;R}e(Tzct~{|okxfK$`6B(e*=YfcM*`AUYzTGs0Hk|Xd?O16K^o&C6fJ^k2c;;A6cJtje^I_!Xv zbSm}gE63JEv=tPa1tAAB&TBdLjD`=y^l^CQJ-V+lDc#Bdi_iusNTdmRCgv#Qc_uVG z#_}+%Cm~r`CeG=qFW^-*7=)mgp5)i%(pC)zm`O~gNh=qo*iu@(3z4q z6Ds9Lg~eVbRh`X|52d;(byQ}k>4wEzhmIk7u1qoZa$i)Kf%aN7Bqy0&PF`2B$wE5G zAsjw^Yg^)<5-89Ca+a|rP8E9ye$=#LYo*~4g}4ELOxFJ3YlO2&I*@LcTc|@}{9*k( z-ywh40`EqM2SW5c^5PnV@0Hd8_3V9?<-*1$P20dYSkP5UQpU+yJh%P( z$VTPk`NrgZ(vv=VF9Sqe<5YnU)Gl{!B8d(-@dQC@QQrKNNV6DkZMV!Vpn-P}o&$)P zE+j8}8(d0b4Ngt)=KkSyu2eK{Gh8q=(9=9hP*q-l z3~tAI#@%Wb!*nX1P>_xHFh8`7^5h&^{~vn)<&*G3)##7M;fhnF_Q$%tD?RR(IE<$} z^QbW;soTVz(9DZP1hMeAEFUvJODrHwz3#z^mp*x+VH3o570WYuPF`>IfdNyxIEYGq z?p4T0xTPs>j}=Jrzy=%=gaB`@P%Ul1Iam!+*XTmgmbR6Jb3)Wi=xi4uM;h9RY?B=f zU9%|DPao&jbOTYh@nRecjL-_^ro$zUR|MZ&I=o}bg4nGZz_KVd8ni`ZU0j9Gk~OinUbN;lEfGX5Nev#v{_DMeh$>MR#v6G#a) zT_#?~D@8#_qI8kE@AxVefhSMtz`G7H{4nYLT~+AR$J(faH{Rcmods2_;ZGL>ynTdoK4y4Q_9pauWeUV4tu2y_Ssct%^*!;3D7;tdrG z&OJM)>riQXiG>977LTKW%!TY?w?u@LjrC;sFFMDayHkmiBRCJ>Fip2hkzu&L)dp!y zH9@B>kn~40jmWQF9>N6e_FB1`|7L3`X;hF9i-#Av-`jODw} zR6K2tY$5L$;ulyi$5j&u*9EdQv;JQrg34%k*JdJv#=&h~AyYf6*qVv@8a7a4WKkI| zkvaOPe{{HziZ|bYZ*#Bnrg%wg*V8;3tY&@P{>pIbT;?kTFyJk7O%8G45RacWNxgC?no-AnySix7wT5eK{~8GIf91g z-~z}gO*)7Sc%@w$0}(D7F2b2KE3i#GL2hLRkIpU)MN(csQ^KEg6Djmr<94g=9_@)e zF(=h7AzsM+WM|z{YJJiT?(?5>;5Wer?QylRn!r3P5+}=q5$O9s^uK}jdv3e>U{q^` zcXNzAsf>aSPcU}8D^O5O?V{coWT$8qjmOHZUklbHS}C!k6N_VI42(7fC`2om>?ZQ4 zc$m+}9062-^yYA5Xd#V_Y0i-WbPgPt-zsg~@MbvD7R~|Ir;AqIuekO`Q_o?zdt9Ge zudlFgg>JewdavsdFmH2tFRr_FXL0Y`TXmFx+SM#NSQTW_MITX%A-}~c*lI~X=HT8F zjCyn6pWhh`S{GRz~gge z8Hv?(G~`HrWf#)#SzVyI_6Ty`ovo&;HChO3;!IBNvxIQ3aE84D-2C$BY)KR0eaBE* zH_yMM6tC8;6VK{WAJq^G>)galFHn#vJ-wH+vI(?n{I+(X#VuZ)uc$%C7d9>SXZz|? zngD9RNyBh7vY&$F+-!-eU(=UKdOE9_k(mg9Z)uT9bt$db2Mf&m!_+oyOR?-76nAx2 z8540JUg9*0@ICntbwQyxepqvt{xUbUL_q=&9I5Hmk^h@f3-EDJ>chXOdINed9KGk! z%W5G8oBW=eVC~J>D43MxbbTbAOVUzCf3`7zTA{ns=Up|>pF?EyuxIURN9z;d=Zp^& z#83BU9PTv)0c*Dzkt3$s#^790OQi4^~ zJaC6#R_D!2@Uw^6Q3HT>uBD_UQEky73;ex3oIQSCm3$;|SZAeLS;mevczXr>b3eBJ-)zkKUrXln08e0WP);uH^axL2alp6z_5||p zzCxqWBJ8TR%`JoA_EW1gLwZ@qm|cx1qGBDtjJB*TnKCi;w7@a)BaPSi+%=}4spLhg z&`}W-2<5S}`za@Df9B@1&Y_Bg@0W@H94Dnky>U~Gg6|{V4}-#99#d;T2H_LD7YjG` zr)r2POZX~uU#4!ZC2-704q&9RKw5?(8})ATXz`ek2r7+5STvEM!Lo@9Sz2Z|K<srnF1shVpmLQ=qVx`LCqg4$wud3dU+$W9mvnTEN za8(G34wtnK%=ck*7p2FobLMO_i_ic4`P-ns+XC>~x`zXFgu{5c4k&DBpXpm*D%?`_zn#sGLf5BwT=E!T;A*k`=DlhXS_pxV?Dq+Lzuz8#esjlmLpg9{ zCe^0I5EV0#3V~6Ku5{~8K48D@D62dw#Vv<$2W=DyC z>om<)*^=UFA#)o8|4C-Lw{O!@3Ko>sN7eLHQ^$R?rT9yj1Yo1JN-GlxFHNnv(XP}D zeW4wPj9J{k^33I)R+-`{?A(h@H3EK3G>#b^p!2Um5wJN9O6otvK~}uQ4TPIr96Ot( zVU$uYP`4z%vUHQVL|_v@)VAcAqP5%UwQthvrwZ zS8z+kB^0jhBVN?sI(Dt`?klcduq-#kIla>m8z*`y$p&xR*p*IHJ6ms^D)L~;x4 zw<(eD5!i&Ns0sBWKD(;9)S4v4X?Yfo^HC3*i|Ug|1R1ExUJr{EVcJ1W<$>iH+YU2n3!6NBAk1Tz-{wUDD8> zR%nyqt>`fzv%!PoI!oshNfQrF71$zUr$s{8!;V+$4d zm*lbzij6^*2pkn12}M9w6di81PGo_2JcR~?3QlvlQxdRE#jwBHuz(IW!f9w1r>#E- z1NfkKj;i07^wGv}OGYmscEMV?7MkbW%(C{DMkz?CfS*}N7y(DJ z39WsoT#aVi#LXq>BL+4UK<35gAp=6V2dIn#gTV@9B2)+sj75HWr>#C>ev2JeWw*5b z0<~gR)Z(zf96J(u8$&1`@HayRd2R6&%*J35#rPdunaA@@46eeWfD6@}o1NdgN)Cb- z=R9H12(B7gPAi75DaEU#upSHEqLaF>0GKhA%CF>24ZGFy0RhoA>Be&nKL|^?XB>H zdS(Pj=(&<)2c^z5a0G*cORK%{n!3$O-Zzx99k-^h;=St0E|gTI(wMgIA`t%S6U+Vh zU*1z!hgy{f_>zn=Anl-q;82}M1MCwhtPDXdA`C0^AAN?c@d79tJ-K{9iES-~c{OcZ zi1AOh@kg*6BO~M&Wl|HE#R8)zg&g&kV*@Q$0z0evZ7-k*W{rYN!R&j*FA$Vtu<;w* zvl*(rXp-$Jg6TUlq0|(G3z51cyO~td?cd0elB!9N$pW(#;#zsV3iX0+0B9AE^e`{f zJVC@@^aeiZ-J6=r9YD+sXZX`3^Csz#r?mr8)oIvquH7K{Wzw!<%xuiI+Y8`c2CK0{ zKnFLif+m)iRH$|TsU9|)wURTrs+PLdGzRBJW$Y=cyzFeVQ~nmC${rz3yEiUf{OEQ% z=oNL|GI5Q{ZBJV(KHd+HfGf;oOiV^eI7$6H&-i}w`M%$$YK!#r`+v%%B6sJ5p|ps9 zaKBqv?Xp3}ml^&=v_|pdR!W%jHi+;er7e~%`)8F1^$A0MDF!1xowe-%Us@xD=D)Q! z?iQiKOF&0MrZkr^;ui5D=z{Rp{n=ixnZ2_DB-v-P3qsrVpUk@B11vNVPp%+>=BcVa zNUEc(af@CKhQjq#O+E-d@R!{ROd3o!jQAy3XMyCbJ>f$|we~R(#2|ijK<}m6oI>oM z^Wb-kD9)>^b}ACOX`Cn|$HCmoo?gm!@sCJ31u`;`%gRZr?Gy9OJ3rRjg0wYHP}*a^ zfUHGe+`w0s;p2c90pn}a?VwF^j$5v?99V*ms!*we&!Ao7agB>y8Sv@6e2T&`(;~Bm zJoz!^nxQkSV1}C7D)!~!l^$(O!#-J_>lPZ(taf3Fl2N-r0q#7F=DBV7aw4c{JRjpS zmNht#0!Rgx<4>VAXKH=ylB&C7Vh5JSm9~nPh3XjG+S6CKh#FnF=yq9OINiyoWYGb)x}Swt0sQi+)UskwhCtDdsesd zQdeF+SW^R<=_6dD!dO*BDCAhKWz!}JroE)Y8CRz#-6C%MrTDl|mwEl;@=dYmyCs#U zAS4pxYIYN{@E9Al8HJRNXUCs=m8p)&;J3Ai1NNNF0B88)&besLEK^<|!xj#n0c?W9 zrk999=C2HqnF#-E(;+cBaTx_Zn0^LwCip*v9sdX?V|lYuyoop@IU z4hpsLdjIiyrq#1yvEWV)IK-0Xzc;c%CTU$pH+iDsh6QB=8*K81_lR5Ai=Rxqe5;Yg z#J~G?0AdH!hyP3!7*uwX*|n3eSOg8rK%qCK&oj|a?z|YX@tg3-w$TfhM#9qwn(U*H zmwH1-rcHqwtPBJp&EthuP~iPI5|?9H$k+0~_UEubWeYE4s3n$|C zi~Y>-JfY-9#2EQ_q=>w7$=N&)ezY^SLD+JY`h4CJ`M->I{Zwyvxe@$AYEcJ6ka?r+a=N zV9}EqW+w5MO!^M$lTs^HQpr+4o1-4%H?S(QGv)ar|UeyFKiagUz^G>tAfp7@<5M0$8 z5244$1^E$sL=dZ|{_!+9>E{$sBzzeSfGM)~-P`e4VcFk>MurucI+W+`;fjf7dry(j z*3$u)$Flu^WVADGUGaK_D%7nwsol8~&R1u2?|OKA-bnLC-;dOJq$?k#o(V@!dBL2z zBKiFQ#CRhZ1jDG@zcH4W!;v+Bv9bB{`oH4%CNEd9K1Ptm>|^>(51sf}zf{~YWj!nE zF?Q~d?x9ZjvU9$`f4)%BMSu;`^MiqL!C09%+0*-i|APs3@!K89KYjf{->%M$r;%vn zi9+>4&X_Ga$F-5s1PvFEwSVeYCzd3VJepr|Z|jc*-QP%*i)`;syfq4-f=unKxt{Jb zEzB#vLyYAVYkoEW>z~mM`zPmZ-4Tlh2X{B4<*-GVM4$8C@p<(OY0UDxJYXCAopiT1|7j95F>3|Ix52Ka?6B?7t%<|b0x%c-fJi=GA;LMu5 z7;T$;k@Yk7<7?Yv=(gFE*>-M$W%6GYBjfBV83CSAhJ}bGsi20kA7I2thDqAkc)eEp ztYUx}GbfYL_~uBs$Qk!q)Fh{@Sx*WIc9`2~Zvrr1tXHv5PSf2dD&8wh{uSIc{{2TK z)kZb-SrTsqal%Z_)Ka~+VXEP-cCfQ%dx5d zU#`Dr&UD3_5mS;u(xL5SDdgZ(RVP7ZTol}q1g6mfVx!)>E!j##@(cPdZ|6*fEqm0O=#(`7jnp_I?#xVeJH*~FtVz-oW*$(C5CW43y36<#l@Q*Femwn?`AfWogI;KMNb2y zvli&a=mbSjopLBx;4n*c<*eVSX$C0CD6C${P=9PtW(G+%8;b=WzT8%(YKs&>>5?jF zUr_9XsQB^mVL(MgvEf~?=8~?aWKR7yJ;ULtv~`P*>iQy-@?mfLD2V zxi;GszvLH*2BkSjR^G3fC5f-L{UJ5O;iMcnww+s&m6^`aa()z=?97LNeS=A^cCc}s zmw*j=Ln^LDIm@&6pM> zU<24C7%jK`7={(qs0n^#QIxt*ue8SRDu$!^eB3IAl=6VbVtMyJ+tt!g zb7~N283Wf;|0r$sB$@JraSO{Q=TEvi?V`K&IvJ`il@{d(dj(o*YkXAM?;CRv)yU=x zsDF5Je!qT$T^eu9aEIWwqz*|Le)E_t7P7rl>Who?$hb3($%44b=#j{ob~?+hXScl+ zPAOL_$uH@ko9&1Kg6RR}tke|JGU3Fi+TgqR6-EVluo$kKjfQ>2-)yXD+jk7Zg-~?K zg|7aUC-uG!m%)(Gr$1!*o*X+V#(#wcey{BuAPDBp+KC$HH>Sr7psbl7=eH`K;oipa z*86v?=aqwhc=+%oEqfl<3i;lGHzpB2F59j>d^XcM|q8w&BPfKSGc_yd4(lePy(P>WSl#IOjK(0M^d$lF1Apb{OIBZS9;r%iGE#sjQ;2AHG3?Q*^9-wTQhtx>+33 z^MwgR3zXNq--~UPG;ZZ6{1w>(hy!QcMYk&xo{>>?v<_GNswB^#Z!1%OI#-bC19dW* zTzMedqW%Fs7VWmLiN)J{abUI|-7V_);Jg_N$Jei*C1|m*`WJ;Si-R*I9XV%W(U3N- zlOSEQpqu|n*a+2=cF}Gjpy=tr-$lO^@5MvqM63vo!Luz$4OjX2WfDEYZ5UKddgC#F zAU$_OwA>>UC7trPp2dv^C7{eeWd{|Uz9GVfuLl4k?UlNXy-O}dLKM&j%_sidS~cUR z2Q8)&o@R{3xq$oa+9gxYE1t7w|_Ii_04)Dl) z8M{C_!>QeShDEWhOfWS|!*1IBq2jPVhA5_m7lu(|J(6Euk#x6%+B^zI1jh+l1dnaq zsZa!HcQVS53PMji9o8Qh=bU8{N8f&g!A(X?BPDAKw&!|Z6c`K(eFSKwcKJOhse}Zm zG2~#JbfUBRX*rwJS)&3o zKZWrxyTBgO4@Tl3O`5|*Drm8L@qy|JFY5x}TJt?smx_`sc`9)s@$I+_mNk0cgZ8$a zYelT6p(^S?YMXp(qx$c56j9?&-?v}6$~v2|7pBS#r<)ol98>*+T!SS#rBhc5d#<^V z_v%?v5&D^o2M>1=9@mEzWTw9JAVXYUUj8xYcqA3q^3kkukNRCHrs!I#DC3idtNk3H zu7~|<)|!|VMEVlA2kZjJ>DHXYIuS~Y)IP^V2JQ~4a63XaDAa!IxcqDeIB)%{^lG7; zjLcVce!9Cjfo%47x$uHr4-!OCX9kgcKbc6U1X>yrNKa*(ku zv+|3)E07_Uf*K=EK4jBlBHZ7(f#UwDTox-uHV=+EVbk3{1!UgVXxdROndmDqAEVvP z>D-jFvH*xj$ON)-{t^>(ZU7WC&I)z~%d=Dq@$Z#EQ-)9}ul713)e$oQAKEB^iVdSH znk%1*MnRRVD>Qi_MULk3+7D8iYlYQD^&2E!=@C*9-h!|ryMpts?WD0$TwX2g1N;qU zA%9U0#LPh%>mN&6rG|hnSM5rjQVA{!12GeP2Z~XxuH@<7c$8Fx2IR&Xe+y@olhC+q zVme`#$YuG6!yqK(wKN1DeG0mF*mE>2MDSCDFu>~@@n6rmyKLCeC`wifn0G`(74Q$b zTpQb}PLu1ooMqiiucqD?{?8ZWY+cDydS2pxx;zUv7khedBCseRSKH2Id+fg+FgfL# zj~PmeIeK_@`!}O{a*bY?|(7opYs%Lp8pz})Q(KgQu%OAPBqp-G^I3=5BC8Fuik7V zlG=+lv&aK7Sw+%lSS9uPA<(bj14n!D5a6K<+Nr#Iw>g(?s{5teC5u(zt*jgP&()qg zxTljdoUZmihjqKt(wq>+^0aL!x0Q5KZM(`Y%;}=z+}K@(s_@>D9v?l?gei&R~t~@T!8=ywx!&N{x&$uvBf(#!U{}(mTRk& zf*v1i^BzbrR)&W<*oqI9fYUTizh?{8l9En})1s{^Gng+rY9+{_2w?iVp4qe9UqFIm zDhCR+W?)QO!sR#NKrslQG3f}=-!yd(Zr=h#Yf3-<>b2CF*GL`lQ5PB2mM9TV63Jt; z&&2_b8!oR(!5|rSiD@QSV_vS|P!SE02zRY?mv*jKtc74mkmA8%Qa4n7UVdJ1N3MBc zwOb*KDWnHPy#MflyCR&r;d+ANi zh5-W7yo!W@%H@IceJ(16K^i;^vDVVesoVu1xUqsH7&|vF>MNSdQV(cr_EzgzRtIfC zLfpz+FQ-0W}Ys;+*j zy4z3=Ub6&?vvmk#!()*Z9)>cHKfOVD7h0HHcPUs+qJKYJTMnZZBpLX-YbmY?*6-6} zkBujTx0yDkCAF+_7)X^br!Du*NRFK;&SFX>S&J`8s<+NZ3JC*mRnu5Ip~GS2EoanB zH#a_Dik8z!9Ug>S(QifDz^8`I!QV7!)SNU3Lg~$-D4H-nOE2Y~6$_GlPUFwjM$x+C z;d)__@Og~L1V46SMF&8jsC4dexpq2g`ZvLroY(^~Iz1S;-+N4WWvV)UGMIytPW}Yyn zHjfO_`;J$kC-us}?`fn+i?J;9qdkO4O=GA}>_{6R(u(NF&;Wern!xxn>^bDx)o#qtEjK;u8$93gzTk@T<%$D{jEg90#9#U#wnNWDH z1u!@eS;fx`8~G;)ZZgopVEUG%xk53L4yiV@1_ffG{g5&Il^#p3N!WxM3OdqduJz-> zdzO(?^QHS0A%KzuVyc785ozuM5COKqKCy-e$*B$-RBY1~P{kgh`V#Z@4pU;F5Z*1Tj;BicZprS8Y@nMEi<5N+CO(N#uF$PQhcm;lG1LSSKZC}m?1HHSOOeoHDNHhP8B+|o9%|Kow7E2h3#9#9*ANn@61nYo~0vLv@u z%zfjb2}t)!t^M)VD0)`>rrSnS6pIX8G;`aED zN?~;Yy-y;HPV3snkz**ih9$@u_^L)$Nr z0LZvkgofEi@DA4!+jM6Ukn-Ba+i>4JIhl`W*I1-i9S#8YA7)z6rqJXJ_|cUm@-$Qs zeM`%U6u4Qcjza$ig0C|uTJf!rd$J$i z&)@FwCqm{%%=|(!L@M#A)iGV++8htA%**?V72q^y9^u;HFAO~1xUC;*KeuwQ@V&$7zY0m>_|`Ac<&0ShE?f4Z0BtAB&@W4cfDFcO_7fWWPLckKRsR!92PBh!ju=JJ?$TgvePJ& zVAJIDkZTCM(!jiTxxVf&B;_W!6x68&_|Gn=Dax@UbFx1kR8|gMjWnOHj51xbaO#9e zbcMx@g3La;fX3`dh0Ghc0gP60pwXbG*rrHwat13OTkYT~)}V=$9k1)6?HZzW9h(z9 zg#3IL^h46@WfcJnLzK&WnJLa28*EP2m}dRV ztH2$8IMyZ6RL#@&nekGVqokM|Y*$On0r=VSaGy!cN)adwL8@Riw`95ilNkiwM(eJh^EqtKV#YsEB%D)`m zq>g(Y1-@D~406?;;Nv^L0sY2vu3m$l+7);N{Hh!z-egl^Zb_eVit!Z( zz(-fx(~Foi2Mq2c5;50^%pA{o-K27l_LfKz6r3&hPya26v?^XAgg>#N`){zw_a%4U zm0jSqS!Tb8B{wq3K{wOdks;=44o5bJG{Z+gr#b9ghSO%s6o|~*?&$Q+ z72)JSy-0jLBdd3S#b-JVuM4W)b^GrnZJbK!CtFK(dA(hNY|ymJ(9d?T<8KDZ@9Wj(`!2vdN&W81i8JCv<=^Agg<)h;mzhi=Vm_4af6Ou*Y$GhG~?!ioGH-; zyVNqij4QwuVgB6HUP{&-+U@s_FKz z0%1%eAd4j@^Q$=(TOezJrd*`Kc2k`_cTeyoa76OV^l-$4 ze@C)j!UvWGvhK@vjtxHh3-&}pTkd#Q*-=)#s1lhE$~?=a)8FGgcSrpVKL~)*QwH_o zjmA-FYh5NY%3R}eyQk3DqpZW${0^x52BW@q7yrL?GPeIewc=oANk`57-*Yyd$)pVl z_swTbL$iX5D-4!feNSP9rcqa|r3|`%al`~jY;c>9sE{c)h8{k=zdk2Eie{%dmE_sG z9jVR98v?SQy{_6hZ-1dM6N){=e|h+Iyxoct^2uo`-&lNH@1C{NG7!N$^q#5SxC3tJ z^<0Qg?70jl>7SpeXnn!D5P%nMV&Jxs@)KrzOx96`fQf{RilR z6a2bAP5`zb9Ztu^U`mN#w@(aCu1)$6yf~#pijsFIXAW3_oSKg|LoZaPM-~g^Ea}@( z%8WSql~3Z~KPg{$$W(NbEPiurTojP9NpkS8v+_hATkMN&j#p_kK>1s044*OSjO^#d z{W$En7Jk`L`0m`7zNQQB1NknBTDWM{7h6tt$7eS;gvV_ED*jr1#WM0e%G6vZp#mrQ zL)a*;Z2lD@w#oslvxa`;X)8kRJ6WFCLA>HYf;aAHX_RvA$q1P&{ZN%+IlKu)~I*wWB6)@b^t0?)UG$B+O9hln6|Y1U+ouk}|O= zPty-s0!3|%RPh&A!jV^=@($1^ z!IpbeiwHG-Tgb}M)4GFworpM8@qHbh3klO3s-^kB1wuhhU@=5N)wM69=A><@ zDi|8>PK8#P&b6eRY%xew!T)1g>=ku9)~~E-QaA z&Ud#a0fR2$;D{jzLaz46BpV7n^oE^GQu%?h4sM(Id!prL2|OHh?tI}FI0_%tN0Gtb zl};3!GV3Y6yox*#p#REjnS{}#`&n{pz%XkHA!3wdLMk`wcP8GPwK7ey8Y}oG zsN^-IrWsU=g!XBtZR(08A4IIjj?s6yWjx@;fIQnA8hdp|`&s#wr`V}Plq{hH z+p2Gkigx|bB-H?e@d;+`z}7yWwg^P{AfhGsTGC)af~v2A#CGiiInyAAlDwY}Y6QEn zFK9G`!+#CP)s-X2C;ER)$Xl#|p_NpPeWN4@?H68r|48tRQ8gw?NRnEa;f>O?WAYav z1FkxRt@JT=i;PuMG4A)n7ZOxK6?Jr9cvYrMYVrAI!k8jeQi)K$&mF^y-n{U6cx1d` zi;YcOr<`-~;?JQ}Bu+zjcbm_TA@{|tE2W(qL|q)DWtv@Gn5LBq@MvOZCc7x`@gNtH z4lM;ZI=w1>{>i~u;mSF-AT^yZCbUX!1n_+q$p4nzj0PWxE|vRVq}L|zsZz{XyzWeg z)~9}6aPB1ic;4H&tu)pLG41+kCksN}L8FL5 z!_TJ5-(qpIKHlf1=SF~Pka?nli;DUw_xAw8(20}~7+=o3qocqBUlbHxWH?A`B0&=TUyDA_~ zXh^!VcCAQmE|Q85V^Er|z`}k>h_~}yDQ?CI;+_C!QI==b8;%m`jv_qN-+Y~;U5Lx_ z)!f4bIib}Fh5cXWhvG4Cvh?1Ziu$~heDQM;T~_sMoD`Gvm)O`@MkRc_{~JIvaPq5K8+PQG!mOPgFifkN!N?*6QW=CLvR zh^#W%Y>-oFdo(ddQ@)WzGJ&HNQB{xS^0Gv!J=7DQy*8D5&fYT2r{S{4MDA|8DaWVI z`Ka;)Kn4r6J2Y~#h_j{$DpZ}&%UFw4d?6&Th`c#GQGC4_uF!L3jw3q3J3){zt5%yH zCFL1%c=|V`Xxrl#z#CaP$I)=mM_|8#-Q>+=d~!Tw&&U?t3R|Z^|Fan+uO0=^mHF3_ zq_cjbe){AMau{jtz9br>+51Ki;?fGAkhRGUqqrZ2*a^1Av~4pN<)XQ)7V@vcS;Ky_S$Eb zOSzh(Q@GwMwqFs3PMP;F5XaVJRyZUT;yvp6IX8x3Bo&L3$csojIvnr=-ou=7E{Jn* zZr7d)j$9NK2%r7Zfo(K0Li%Tnu7;xVv0$>Z-E@qx``i*LAXDxBugSJ742#vq^6!w&O4+P zB|W(EJAPTPLhm{5ro@DZ$Rc?7i;lb4;~Sr#ZPrV{DMOW58O|^Rw+!J-*dvKvpM%+X z_RpGsxQA+-=MW|6>RLQ*7~_@Q8Y#9caVTqQsr5^I3B`zAuu~g&9eZ0Q`E8NGw9!gjbR*)vJ9wQ2ZxPq`kB8kN?VC76l@a;I*mj#Usl3 zwE51YdE&1MD{nW$i;3r9x|B&y>%dsOt!S_VPjs+Np$d8o*zL5k?u5kkEQ9n&OJX;8 zT>K@tV$Ls8ac5&pdT!S`6Hyy7lSMst0#2?UMRU`$b+a(rTQ-YOAI<`Kl>}cgNz#Ko zz^#tx09tNaP5zcQUw;n2PN`eKp*%$c)A5zHguZpnBGk!mZP_m$J2TM7hJmb#1;sj| zYiv2TreBH4q1u&}v(`tD@jj6L zbV+RV{V2Aae;u9#G;XH~=NO4rj<#UVfDx-R`el_m=JITzrEk@$InzYBva{exVGbHy zgExV@;%E1twiR;FyjLX~x105u>Ghf+SI+V(DF6N-oYz|)yL4Ld)#pP7P#DdkD=A;; zfn{L=zowE@?E>$XvfX+#a%nbLOOn+idP>4OSfJ#`Hyu}5Wv2{0H-+&d-^W~_u7rzd`g`A=+G zao2FjPe-X4m=YJswqhj^q0GG~0KKJjlO~^b!JGD*Z)fnla1v+QD%&N@uUSx>X49K- zVeZy(XK0eKz}O;d4f5X=ue*_A8%5`#1jtxE!c)9p$lix=bG0X`6b9qyV>i|rO!h4I z>U4CwZkrAvSNP;ntZ&J<<)frvH>t;(zaUFoi+e^ti)wD2r1oy}X)$TFL(qx!xd{(HWRuY!F8!9Tyh`QQXZ&c3 zK$ZhK8Z2{i$FG{8Z>y1hau;&n2X4~IvXa^#t{l_6V$$o;OElG|bJ<%FQm=S@58_N2 zgf;qf58@qoho>XsZ*9^}fYr@?@f_{xD!td%1Fe0=zo}p&8C<#A5$b#Tu*I>Q619Ej zf}~7Dh02hVodzLy`x-fEi&ET4bo7vkPL>@y&=38eMWg|Q-qt=|S3>X4?>Tfq5EUF` z_kHU2Z2Te3P5Umtw(UEs!j|o4Kl~>(S?3s&tyj*?ZFv^qL%^SIf#sh#UTo~8Rxq1c zQ!*jZdqgd4HCi>joYtvJII^vMbFETW=h#1pU6j)g9x7JO3K`htJlqr|UF94IDI}TT zg(k?ln^IQmw}fC&l2wZ9*p#om6V_0f?-slF(; zA{1B@nX&WAjmQY%pi*W;qmq`L4%btKsh{lgMe zWzFzXXvz^k*&T-D6@2Y#9=G+CK`GdXEq#7AD5af=3=|59n-tFPkFWF{`urP8qxm=# zXaWvINO?`cKBN6P@xhsx+0q67{73eizkWH8 zai;k{*X>LaQ}i8SjCVLaSMb83LHqrauBy+dw+Ltu(`HYrOzCLa|3rM(d=k9k?$VUz zU|DSyFIpssCPkio<_iJ#)96T1uy zHjC8`OuGY@G5s61^fD1~Xt)8IlKfQi^L_QZuTASu#nu1aiMf!_YBg=?N6IYlk)0n` z9Zb$X!*&`ZKDV*#|6ZdQ=Y5C$`k3vN@tKiN8`#BdM-A0~>>+$I4^0jkJpC=*C@bSN zar?Wo7#G@YHBmoSbsNcagSJqEuFOj3&%v`f`Jh((qEJW9*M$-?*+0N_)MV4%Xm@+1 zcc(eChXWc{>kQ&k?^RZ2f>zsX*S7S!EmNYon^M(BX;8?TrK`#0lULbq`>}Z4w$#6k zQeHOqdD>i&<1yc(Yga^RW*l+fo7V%8om&V)_fCG2h5{3zwx(o< zZG~kiTw3`~{IrI(lpeTp4@C|~a^PQK$7d9?#-@Z*STgSK#%igv%vx7RRxL&-D>z~r zxctpRv{cae15+o*47PT6)~nPXnhY+ry`>Apgjr1z^vB>t=fUKqVxESaiuR$`-PItr z-#amOTg0;7U7pYK4CAP57S;yAo8x$F#=%BrLwVB=ifNEAJaxdpVPr&q;6-etf;wlN zV!P?5QFK(^>#&~lW;FzLth)L_oQ@?rX_7f#qa@`{@Z(_qTC7NV^{>`~z7lb9uiVZ> z{Sg%N{Mw*N;+8q%=SNsQTk>g>^+#*Rjs(wTkvSGOpFo8b!LK)`+8DaBOysQtf%z?! zc#EqfP5sicBS(PvRHTgiP}~UHmX|%?I8LmN?K!x-){=0_U3(eKH%l5AWvP20=%rzS z;KxXbT&Nqr$m-_7ztUWB+;A@iLx>>eJ=u9$^k(QBqqZnvMQZCW%_V#$yApf4$qQaX ztIN38G6rMOKfU_W?ZuM)9azQH&M1MdU)t0zG@9x%?ho+9P7exi)}5SDLMLOYr){(p zLp>TR;MUstzUWSvNyz5-xq|$Hcckm1XJ{pYc+k5DruPG3U(uhu|jGS!{^MOb(<2S18+~s z>qFH6rogc8R$HzQ>NFXD^$M+qiuMHQ>xWxyBwY#S1Le30N9 z@BRSkfQz>)7+5E!)ST4(wJAxkrOhew7}d=x_u?VU1hBbqS)&B+i^|X)LjvBd7;#9f1WqZ?X_uMSwTI3zAEr2l*EwgoBTY+r!z0vM)a zI!Ma@_y==>`3Iv|?Lt9xgc)5ZP&J3j7#NDGMIJ=IM(WED+XyQ(?JP|8GtV|kb#DXu zlt~CEfur%%;q8PG1#3nNPS`uKLME0F$TUSauxBO66UI$w?e_+3?{ud9EU9(8q>pQH zH?~NSL+!6BHLDDya6Q$lEBH_fK;2P3{G!R3O0ohe^=JoK88I}MW(0L|-Y2_EtmGzr zZ}%FqOrsMo!#PR^BA&+gY6=G%U*H)lNA{`Gv!w>&PPiW@!JkMl2VQqp=KOFlRyv*p zgcz?hh}O`Ab0om(ZcySHZR7b23o6 zU=`WE->>_l9(n#REXd(#Z`BD2y2nwc%?SchA%pv~&$KbqCYyq%Z&}fNfe{d@q@;7& z4v7vbFg}@iyfYi41+KlB051x!4^bY}O|f`gw(`+o^NqI=;+^0-1p-RbjX^`=pb89? zcE|t-Hcbrc#?{Q_Y`w)Dg=2jCc0J7f7K@ZaP$BQBN-s3uO}<*yE?7S>R7K$O^n&G>1Ld#No$M6Cw`MSljEg?Q-2TT+?Mv*L*2#Fk{DjbJdZICi>;Gyv7(cTiSCDwXfPh@xN0o$e zRk_JiC|Qx{ad$yshxXQLBz9UqRnzlY0HoF z2uyDr=^U$l)E6uPAkvd5k}xey+^@LOFfj|zVhHv0&Jw{sJtL2}QSow@tN0I*3YZGW zSYXGFlF)?uBqa@;Z<>MHlVm4BjEG6&nZj$)^kK{phCmk71AMM+l!K}PF<3p>O~sD< zT_N1LzT(yh^$8~B3@UU-$8#xrB*$WDE|i<_gqlj8?DsVw5`?{emp*Td>k=kTIelB+ zg7^R*jy*Zt!T?e59V2x(s^4EpIIk*;Q&($YP~-8E+1~7;c|nHV)JT2H0t}&A&Bd4~ zvL^gYX7+iTJbs1%-KnDm?HMeQ5&&+*|1G@J@gJ)I^WK3s^gmtrqSveBBbE`2S}nr< zr0bYrMR@?>;?28gJaG*Ve>#|A-Rj&|x7Ppm_*)`PzXW~rmIw1pW@$Mv6i;UcIXWzc z1n;4WgC{YqMP12IOzI}#mhKkI0ihlY*p8v1k@s7!y;;olp`A(%2IiPjrua-lM1M*V z6I8eDmYB)|Gn&9MOLH!M3&9D|4Ez|=g$ZXnT!;dsPRd*`vhg5jqvw#37UwBV`TH}( zkuick2J9ZkguRP@t&NZBvw!X#X=!vh8|3ArnA`8OfyhhBBk_bO5Maok9k70MB!B3^ zSUh+b_*~})h(2`x&O%Jt!7e1Gg?_mYqW>|pu3(|8A)>vGqd4gLBGE}*5az6CSfXKS zX_y6QA?QOfI~L^#a29b$7-u(Ubmk3{+A$>br)&5mPi?p z9m^eF1#fbV*Db{U_amNU^CY5)m&>wofdTCC{uC8XqEwXPloDRIaHODEy^UVMEq^Q5 z8wM){#Lk9I8>D=1xG=y5Z-35B5xm;>E>q|;TR=>VUcq_vOTkm$v}BXvN!6ZlOX$0& zLUM7?CJ15y_Gkasyuv87l#m>igJc2F_FKUo$dJ$3jF0W-VQ9rdIs2_DKCxO_- zzmGwvvAdjKzXsX}ducb0K`x+zJ3#mi(Hz+?gZ44l;6K;BHjd}3M@^UBjBwlltZTN# zm=%!Tk*@7W=51b+Nc%sNv~F(A8sTs1o?+CaDl%DRSEN!y8SJG=0rL-Di0 zpumI&_ivs>I<+wseVJFZ_XZ&WzrutOXYs>gL57SO$C-J@gZ$v>wtKoP#hnM9CFe%E z5gf=e(ud^-lWJrA7iqVP1Vb@w_IUm)|2&91|1FQ;XQw)32C+G443oj{X9>309v~Y5 zx$K=g`Eviq=;-E`V{e1q6~g&}(rWSbY6$;fHi6!bW3&^HrzwFY%)<(F!mz^erV|f_ zTrL<3fJX2rlGU!v@MQ#W5IfG#laI?IEqJ-by*{dWKe9@_g;vdr{uW_-*5%BC@>Du- z{yR&XFtdrjH(N>Hm{Lr%&)0!WM=UK4A;nY2v|n=-JWi5Cjhh0`Ks$mAf&qU@#d7Ti z3%4Aeo?fXK_qfQuUycBvE4#4Atlcxb5Q%wG7J8b->E0r>*}2okjbf9|^UuvVH*7)n z{vydFaY;k?w%0ZE=W@+Ztx_FX+KpWWj^sre;1ifb*1=jLt|C@{)lq^GtzBg% zv9&1mzllxSMfrF5Z`NSbrxm6l@`h>HnY;xZ#~}EDZkUfh529^Hhixzuvj!Rg?~d-E zM8B!Nt$xOyQ7w8QEQ?8a*}rYa=+$6SKp~zeI_Mf%7?A+&! zOVJOv;<?r2S!UW-7-Y=m%(2&Z$mm@CgKy$(zq(-COw75r<^g*=;xg+k!ZruXTUwd(7+-6^oi~@(czjY)Y;I~XhxGf!nQv6L|_;0R7uo!B( ze~AIi4cG$5nGo!%Ol^OFeYU@f=H#RW6|M1IEMfNpH@baYvssAOs!~;{Kp|%GLzu%9 zOU_s{8eDPNMy=(I-cY-Gzsx2YJ5E>UQVikHcZF?-l-FWsym6PLY+d$f!g>{zm08%MX%}vq5!k)?{*&t6w8zP3v7Va zR!UFnyMmoNlF=MON<2iJ?Tr)lwutC60%dk7{uUeh$7tVM#n-!s2bC4u4ZjH`Ad5C+_JMVeHZU-0>5b!CdrCshCMF{tQU&%RFJ zn}Ou{GF4H(fBU^EuQtOs@B~Qvb!Y6)es6`6_=>ira69hnR|3J5cT;p;xWcwu*_qv>yq4-&kL zf*dR%;4@^~j}&-iWEVJK1NudUT=K%Ej^B*Pypx5>=w=>*kzd_4qi6&^KRV?)DPXJy z(C#lERmw+4Y<|yk$y6USgP3*VA)Z>#`LSc9k*DAydz&avVLsOC?<`8a!m=H*N%@uL zEpUpy1H|D!rhP0%`4YDD|Ei~Br%qT2t9c{W$eG}k;PR&9{C@M#&nwi8 zb9U&Kj5fv^{@t+T)2LDQ&$|P~{z0h@A)YlWboVs?ItB8Bd}{$z7)lzyYy>tp8JrHG zcw2=^jWDP4CP}P2_3kkkLDgr2;jDq6gHEo3D7#J9An(8w0obkz-^o^1pjc9DA74G6 zmDo}MEdy&UWTq)*tgJ0!_ zDesvR4TGiBkN`Ozw;b^?2`V~cdO%FW-vl`pzlIP>U7Hvp+WdBhGk#Ob9iR0>c`A*g zPVpY!Izky73sm1+9EWMe-$Q|VMR_y9v!sn-0X znJ$(^6+(sd#cBKUiQr%42$*ziY16?B`a`ZliK5M8TDBQ~6xahKWx>s)a`y{cq=+9I#-noR;pTWP^5QbK|yB3nOfeEDqQln>Lm@WZ&MSjdqK zB8wN#>cz$QQh{9UOlw28Fuk7W>H#+<~B?ad1dh&eXxlTpQ3u?9GInAVs517QzDWG?N+9sr%Cg2HQI@JLaa&RzxjxZnP zi9QA7U`@mwr7xgxL5mvxTUENVE!0STepUe{1-WZJpZ-UIT~PN(p+8PoM{Dy~L7aLG ze{#u|Q*_zSNfJ9YBpvJF-~KoI@f;A$zE z_P{%G%@$#Y2hDk%00GpFN^;0YOLP$$yfbOl%@pSJVTEnX!|fl0Y(&caQH(4S=P za1S!9NKz?0A3J4!1?)!+`NaHz3E8$@jzDzAqc|PwCN1+|=UdEh0JgLu+l;pFIlY?9 zP(+sz0%hfzV$Q>KHTcq8V*fSDf_Y^Ixnl*)G@?8)#S}f}!}z5}byOF+l2LeU`B1)F zJyWs!hv(dZ25yq_*7`Yn`yd}#7E8ES5=BD0k0am1szR)I0=m)8uZ`CZ`xY+bdZdUoBll9Lp{}DaWeyaxJAg3MvmrR>6r&IPK429( za2ZgzMyE`*>YWY7%H+JRTnY>IU!4S#$Xw3 zJ)rh#SBe#Mhl{c%IuH#naa6dq1wj9CmZJq?@5(75fOH$RsDyr(xR35R5_6CzxdDOW z^fx~DQ6Whx=bEWSL~o=eLE)D`3_Wb)l$vYllmfNPg_!^K(yw^fL?jE?uhxC2Ayu{4 zLX4{0u83e;M<@R=V;6E6%?K09NOxql<&ichKtcCIEZi4bHIbPr`7s`0_$e}*v#!VUb9u5rm_+W>PZ;Y`2sZ=P=qohnPr`Hm zKS7B6(0=O8o^+ps@q~M^g9UW)c9lsKW}^;&K_N5cY0xGZ=;#ljKvYxwrrWM_h`*?& z?R+>ovWBUU!bLlfARhg%tAG>Uzg-v>!|XZ;W%QtfA}_KjEl_gFSbuyf5;OV$AM-#D z9gy!J{mjy>waf)vsDHUmNq-SK3LuUdhV$P?2!6J~rMuzUj4*|RS4ltCn|{*YgtL=1^`JfXUwk(x_PwM zgx^;EUcVL*QPII;g35;tTz1XUx9(cnhMIh(M{Kq{wP*k1s^GJ(U1f~fWsOR%M zF)7gqSP2c5yzG{hF-oqT31q~EwU!k|TpOIqxp|hbqB-IvqsN%hhvlM`Hj*ajGfs{t z0fShWENAxl2m`EY4#0$2O?l9s(9>p)_C=Mo^>72!{JyhHKt_m_bvkPgwIW*<Q23zUts_Mw$yX4Jw_L!Ar_W=PhCCCuM2A<_ex__W5fa zB^72?2m~uCMMaBbMs$}RULA3EM!`o+q#!s|1$yG}amk|0NsITwd;IpGh`0HB{dp>UNZB$FFlYJw~qnq|Cg__E?L$$d9&3qijU>{-bj?X7s>?_n zoy%$QTA0j2Yacgm$8yUHRq^Xy1PTep=#+HxHbcTl4R8pvn3lgS*EESwD-w6)6-ful zDj#=n*CL|mpo_HXdG>+ax&^n<9aNXUUv0xSXiI=}*{B@#2)Vntc~~T$>V%m;cAw3- z)dl(~D+ztl>R-t4YeO%U*6FcLteHhi*odsm|85Y1NnRrW+|j3dh4vc{g{as@5B6uW`xCuX7u;H14^EQ;ILgZF3Up1V6+n4O$^dfz<@59iAv##ZRmV+JKw#nk^vQ`IZ2f;0XPoh za94hQ2DQgh|7T^=;$p$ zYzR-MrWK2e@*JLBUCu}*I2T8y`OOn$==GW>Q}s^|pu^T9_H?E= zs@cK88g-Ipq1n)ZwnudP)S0 zbG`VU{#y5M!ptR-xw+pXgTs0{0h<+O=513Vq|o~))ng>&0k1Q=dPlBjsm0JtGntDd z1#3oSLBKAsPQv0qK4vq5D6X!tj!8w>%)BntYiUKt{>&_cviGIhL#KxQhCt7I1l>=^DVn}w2v@(rq zv?E9h$S3v*A^#AY97)6lFR)KEU*dfl?5Xo<5DB(2G7>_dDt|gqDVqPqW<<3z3%U%szSCQ*|aJ>TLVXL$7pb3y_mx)1RjEFLEBo}}pex_}fPD~2Gt z=d@0;?}ts}S7f>n%}f~ML<>)=c5XCn!lA@gU!FU`&({$PPWbDTtr#xk2ih;*Pk8?C z)1NEvzaz-u#13{9U;j=|H+%QvL(DEeS0(w6f#)7-7w6Uoj8<$s)>d{8oKG-{YS+ou zwLhMf3jAwT-_(4}Y3*TLGX^%(?L02{H#N_F95xZwV_ScA7tnI*Z+jlvhxTF+>aVH0 z)t5{wOxaV#EczF0*laHOt=o=n{*m5)d@gBq$lmM`M49tN+Wq<>*q!jcZ@Hf|>8GZm z3p78K12t*qTS24J;_TE5Y(4|sYa;wiMRGTA^IH^HAEh7X$5_8?Yy~Rpt>g(Qgfp1j z@T?zg<8v|`##|HY>94|Dd# ztDAsBBW1=$)*E%CJ=B{j&wo8_D|S1zMA?fWH7i^=*BZP1>D%|#s@>2k;n?X4=+cRx z9%IdY0e*e>y<(4IQ2|H1CN=8qc9uq#Jc@T4<&<$5DaWVgB=NDV58+wi62+2JA@20H zkSU{*2rRh4LE*wbL)>HPN@Ck0&)?4r!eux_Wxq&}nVKG~M}o-rDNhs*7Eot{$YX1M zh=zrjwmpq^>3bO1kLPqEQ6XYcIpIS(<-T3p?>e2Wc5gt5*Z~u6jWnF2e>guIb(zXp z716)X2^)6A;?;LAcWXM61V*l%P#XBsdKceDHB>kMoV`^NDHM~OSYF4&M5K88yxPxe zeDbGN{?$4|mV`ZkX|E57NKKEEU2HH2D`nhe>y)TUm2GZdg5%=6ebVBxHY?Jp`@Cc( zxF9<0cy?72WB|BKVZ08o*M)VE6r1les4Y-fvD_2=It_7qq*?P&cAfe~K4@n@z)<G7JC7<|WqBbCL;*;SWTx(ygUzcGN7LzZs%GNPD4}L6y{do9v9+BG0qH z@AoiIgQ&J7=gTYvuok`9kJHsh{}a?HGeq5DXh?B7e4PAW@`cG|Qem0H<5EWJWFn?h zF~tjxA%Myw9PSfN)NspYK@J)rIhM&sdU^*9C#LYXniPb&C3v5veIY5IToAQ!5!`^7 zL>uzybt#%qyp{33P;M|ZbGJZnhD|SnVGg;J*1_|HLrDO>7pL)vMe(RcGc3m|7!wK0 z_z+IJI-jPTU|x|}%yas7Y*)da%j214$(Qq6%zLgT z#&4wE07bp8zC~{zQze^>%gOuL8nYL%#<1ul${Y1&(z1g^>1 zfz%M6p|RYMJnt`ZS8%zBpj5&t+y+>oJoU<`R0WeaSN=9n`?#gl?(=aZS8>oEq7Ll% zZ){UwC0!CyFubwfU*9GcKaW-`nsA)O?g0p{K=%bbk^iT!7M9vqU0RPA4;ofAO+F$+!2>HpAb&j-!gLx>d11zpDhV`z?XtAtQO=+yrza|!NUo|Wdz5zaU z@*t@gQUV*eG-%Yj>XKnPESd5h2Cn}h;~kqU;ld`}vTd7Pwr$%sx@_;VZS1n$W!tuG zqs#1?=RI@g!^A|apKz~?Ds zzy(5Zpj`x1x!m+u4muGT*0pEzOLQY+UwI7>()*3mAc`c)>Mw`NW(#1OK^*OfX4;W4 zcR8gfFVgOPj2+zXy{g3%*4qg1@0UgfDALh7&Ee>ecGsC;6be>S>9CMfj{L@j_X-9> z<0Lwa4S1t6O^)8h5<3h7&A0a5tS@r-C*4=BodQWktKbWx6!RP^GPzo2E*TQq*mJMq zH><>9#L_f`S~TB}8>bN*DtZ_EfXOhj-6^qF`~*5yqxrVX--d$F>N`EaOknq;gTeI~ zcajA*pyOu{W1PE2BbZi+I>3b!S&WY0x z*nc&zJcC>x#!X&&tIV|k8nw#b4<~lFraYdHmq9TD9)%o!z%w;sUzU4LJ$5k%F`~>) zJ!zvK81n2em?UcL%QjzV@a_7}1cbva z&?Qo+$lc1Nre6UpD}2+sDl3>fCV!Td@y)b6qLE=r%9$Gr0XKW-Igk0WYB<)b!}_c5 z*3+1T=aG;}s{r3?4RixmEEs&fH9P zSdDlB_yJYE{uLxgr@}-QV`vi%TX#v1Ya@1yRrGz!pSYzbiitFa0og_h+zx|r)=~j( zDJxw-o5E+whcH5mao1l?jcRQUS*QuHGl9}b(P`ja;iiKTOTV1$lXA36v^HX5pfrbiIZ|$hWiC7SmIo~B z9RsD_KMY!_5zQ#=bwqTv$N5%BQ-Q8B?e8CbC-gd!eE7PHTQiL(?%rDnt!SXFtt@2H z3%|h(S@p0axe|GH?m02R{iNH_Czt56jFF!E`Z2(+AO{pNrb2Fn0GyEBuEJ8ze)X>O zud2+xa5nz%(;dd2fP{o;J>Zp;bIiJvZOS0-1v6{5lFKLn9dIO9nvT}oo&^a z&T36*hBh&w=4GCnt;yj+Tcu;?#IiCEwHsI~VlFE?N58J5DcoQff}!?(R~4aH#pKgf zxi0|tH>kH-4h>IiSvSf_U7I>A3f`;)FK0wM6eBBiT5%P)0^(@>_itJGad5=@xNqiw z%<#Hz1<2S_5ydzbcwl_y{UW_QA>dw@L8S(X6IR>U$(B~h=@gAMT~FWEc6oOQ;Sgdx zX^OZ#tUbaxEA$+MPZ=S8#rsOM&B}5YiUuHD#<+TA!es}4;mN*jn>ZWMd5I~W>qPoE zCepRPxi-{NRAwJ`W|-kJNkWTG8Xg4s;jyI5@2l#&=;c;ZSCS-J zPtEWu_B}rlYaZZ;F}x`C5Gr^fp#3#)6EXf04*N!{))8o}(NO#EozEbN*=h;-KnZYF zc$H)DtfWD37ZI=-N}*h8*w_`6r$@-jod^EcY)ao;3-6ke^!n(Z&nikVY9`{Z_8LI~ zEYCr5Q)!p&V8maf@2UpZPZZ!}eoG7rNhnIuKtZ3pY$})fDxCYI@q;P)HGidovfSB9 zZ&vWy%utpEu%fgqW5x!-?})6>3T>7cmDmsSdYQ3^1#UwjpV zHQ}~ScVXx}A&V#;f3xnT+Z+jjX>A7+gwjx{t9g6C=3oT-OsAnBmL8v;i-SwS4R`3w z_-^pXDj?pmdb-l{ji&xck#wK8_|(O4@>oWtd%KgKeMX&BG@xR~*P=9=^mkd)bDd_9 zS;uV!&qUwTpARJl+>2w<#1sIP-OJKEd-<+h7!BiU`?E>!-$|*g-hs@Y!gHPscQV+V zos5#24YiltQ6gi!6TG_;_-WYNz38f0Fl<2id6z9eLqmxJ-ZruLlR&#@@r3VsNu@D} z3Q69sD3Qqem&suq4dbW`aPf17%$aJ~NEI8g$mL>P$7BLiqK^evOamav?FcWlNB1H& zf!%;9^{?1OJtO#5ALUi{oykJPnsKvl4F0A z$9K3Okq>r}C7T{f&Dr-eaTvJkQg}>B<4LV+UVD}BhsM^RszkQ_9a|LH$1&w(y(~-+ zr>>e}LC_*)T%^B#sRDqvDUiv)k9GzzM<6?BUL@d;=qJlvfg6zwR$lR$1r~dZ`Z5Qi z`Wd>&y7vh^{HzCpOGhNB{jt7wZ87W12y@u@X<5H%J85X!!}_hTTd^a}u;!fXV)Lmz zG$$TgCP4XWnQECDp$VSuKJrqE;|N#bBE^S9WNFF?>gs@&+XEO^e5LE6j-536cXvY+ zoXu0RO_&{Lk97+%=DB_T=ZAvEb^Z2Wi5t%{%PUeM0!tEU@S@Y=pTwK2uq zr7)yo96S1UV4qD3{4JC-h6JR#@Lh31mJ(4t&T z{ld9s-=v|H_y^$Nu=Gpm36er|=hnN;wl%eC8j~fVJ$I6rW+|sDyZvI$;b`0fNXj9s zfPQ<~^gG^9{rX~TZVHz{5uC*%DB-MDngDIQ6!3lW^<7gnRjHTOcVWht`G>gJ1F)2F z_wzP2&`R%p)Ji-H;OjO+Q`s9CT}{Al=QSd_CJMOQcLDI@M5H6kujSVZ%44HsZ4Klz znWX=Fy4rf?2q@kWv*ve$0=t{l&v)YeIa73s@1lI*O(KNt2%XKv)S<$eBS?1k-7Iz8 zNbN}H%Z1BKqz+$dH|;MRpXuUX?!E;J^(lUX)aZKIB!Zmzi}Nr2*24K%$o+9T7L1UY zkI)Jnc?hu931!f?Pn&F-`9352gZX@KYeyOhBTvH;7h*Xtz~g!|+pJBuOvSKrtmL!E zQOrg!;eLwnOO$UKhuYPx(BhgmlNN(z;o@3!7WdCeoDi{F(J}6s^75iyTMW%h4(=wY z1-??@6ztSQt~TB)#qHa^Pfg{IUZsGk+r3)u{uv;KuUUtJ+}LBz-N>(0v%1{zLRHS8 zj;ga0xcTl-)R&LVN>6mrx-oQLbJ-$d7AtRyU+7r5tJ0*~T6bR@ETj=9BK; zuLNjlTUIu@Uc@1In>{^|67r@wI7*^yEy(f~Oo0?&U&)=LEnNM|Ycej6pLKonL;nh7mT-hDc(cBCgNqK$rSq1&e4h~lD+vwYm3`P6I}i)N6znAD(Vu7 z3U&%2qk-%n5u{G+4UO`qpNmL%P7Yp5KAS53836o1zXW-0{9j#yjJ$bJsEnM20QuK#W{?SuG&Nc+(>2qw|LGHO^`Ydm9v%sO?2X(WI`&Z>xAxsnDBbsM#V}#Z z6Onuvjl_5B8rAsWNtzqiJM)!Agw?iqwnnCS=tC5TlYdDd=7Y<3&?YM~e@iC7rEY48078jviE<>|3|ONnXdZ$!#axe#!&TLu z>O=8#TH*uu(&oF@KHRqSaI(bmYs$RuxaX&CcOsD<7C|rKj(Dl%=wxh&dbg@8!M+!AMf0Z;y3AU>MUl z6_el|6Y0<*O>B2JomPHzr{NA$mXiOd8FNvp%l*rz%F+v@j$eY}CUH1q8Qb!p?1|vI zl9?Au?o(Zo$t2g!FwHE<7TFO)_QjHCa3u6^vwmyV)eyJ66M80aWk3Fhj|=8%#7IA2 zwpOfSBCoNpT5_QVWM#GJ4#x^$+;3S<&Lg;Jfm{GHg_$1{eGf50%~|=D)2zG0qG1?J zEs;1c!0RzU6Df*)TyrQ%hAyp(KU_9a;i(5b94zopEN+X1s4x+~$^X1{3>a%LmK+fK zQ?=qFi(4-+bvd!`LfV7{ir_m=+Z&Z-;5JN=x<<-xGf!pjFyUp>B!IKD@%U$iKlKMu zwU+-~)z*!0E6?_2wQAyT$MsX?wQovkm6L&@z{X)-=?sUJry~54Sdo~sXlIw3Mwqoygf1uYhxFZ+ZA)~ zPz_8L0}uH*lcz2vTWytTIm3$qW*2+-3(v=8zdg(Mkdx>k2Ab~juMLfRd6>t1VK!7I^5KJ*EOPj4)7*bo_cB+TRo%PCfljKve0Elx!dLf`-*9tP@teW@f>X{yT&SgMn!9tKgxHBm3f*7rXwbpLX&~#qr ze4CXju<%@YM``5EC>2;je5lwH5WDr8V8jG4jLc2BH1WLn%atPl^t}4t0FYTwsREvD*eF#jP0+j#S_LOC3Aj^?qBjgCQPRzD%xOfB#*k8GAeFNwk>Yxu}j_L2_tsd!w`OmyWF% zwu~#dyqVvPUbhdPd+qdn^=Q!PC~*&sHRf>VrXQL(g-bY><=~DCOI9q46l)gPtULU-~7s^nt$}!NHq#Q-P1mryV#qkD~mZ9sI5x z7%ez?J>IUTRI1i4LwjcOi_mlf9I*0 z3rgXjZnahiM3{!j<3G%}qTN!({e)Jy0(SPU!mGGx^QEHu;}fQ--K`goe9CQ3ZxL+z zS-Xq}MNzoBYB^W-=kq`9x8Pl%ks|E)V2av=?SnM;bY{c$5N>rLapp_Uw?F4Cr`vwl z+lN+-D#EC0wyn$)pSYq(rAo#3AWPk>aJ=1Y71!?k7~g5urp+%$bVKm=ES=`J0)WsS ztXWqcHG^ZXM zUG*7y=i||qsMjCHz?AwUU&~Hz0tzsOPAPD;Si$sR_>Q!)J5oA*JeJZEHmfVQizq;u znTLd!#&j5iD%s7-j`#nu^k>`?8?=Cy##75kF71nx);s0oGJEhdkF!}e*tX^%e|FQF z_>t6a_hz|d#7%{~Vk)CtaAXqZ)L8BsxG0PfF<1XD9n z;Df7ycjp9VI@helTCG!CE=S8}9!IH1e&L+1+3N_WLD3sMzZwqb-4i1qtgytNH=ZK5 zMDm7DU5c2%W47d9raT%r1q0t<9@`bm8!t^@0*2Exq&)0tsm*|aDlzXxj0Gmft+qL` zEIQYJ)o>!XBg_u$k&x2204nL#!L_zHA2JKK9{XA|Z0O-3JKTz&`Zs8aj&R4nP@t9F zfM+6GrtrEM&^pbSnoPs4yoOMM(2nZ{a^pAQNBd-wmzqg};4tmp1OVYIUP>gISFsS~ zM-4Kk&;HvI@cX?!q z1~q-H-LW>u-9GC2V=yMg%-4&ZPYbBDk;ZwwzR$4kf6qe^8GT>(&YbTo=S;M1A!N*~ zEs6caWVg;kUiw0*u7a!cX|FjlUjRn7bD$0ih_<>k%IEuJe8&XZuaTQ)`(3l&hwaBo zwJ>C_e`diTL!4dD0T?78!EIfap68z6^4g|3bcv9!@0>q(zgkRVmva&YP~%2}l6!$D z#uX#;3B416X&#(SBL$>3t6NQxWxd~&RU5?1Pg5uHOYfx?=jkSgn2-DY1$Z4OaOAbW zyp3PL-F^|AG^}hG!BgYHoiId2i16hW--=Jsx@z)lp1D}a0d6V8GBGB8J*;?J86=zk zighG{YakAcfN9YgRLBSuk8sNRV=5l;)zr*A{LS$pC>FT9896b_+8Dz1!ZRU9s(SRG z`;fJ2|Wu%Xmox1Osh3S?JtbZU(V3K9UVz7>Uet3gS6 z*gEdGBM-MD4@kx}IPTFomqMs%Q3BW=M=LriunMDhv4cL%f}Qwx3@kakcw27Qv<5=> zdb)2l6FR(W%Fw9kuvBd8Pufik7@4Dnf!yiXW&3Ad_;5U-h4{)0I|%WcO4&LM?2ivR z=_gBU(HqZ;U1?h4W=S{D;b86TsW@eicytFtb?dX_3GPeIz$fAW0?FXXymO^S^Gza& zyqkL8puZlCa4osk|KH&^F4q5l_>Gl^gFOTD7E}`OAHZY!=hq8wAcLui;UE??P$;F- zozP&8Va8PQPnS&MG|G?-ih}OPo;x}ThW%u^`VNV@NFvitPy{R{^rkJq^`cn9?4 zpntrxJ~&$((+_C}XfEegbQLijM=%@dqKD_@XVYz4ncU5Gg9s%oL-%4Y(YAj$JKr5Y zkG_ZdA05{^4WAYBFegG&5l}~D@h}q;j)w!lcT|^qmbjiSJp0UfNkmTH`RA3s^p_&^ zclcrT&cir=)p5aLOGS3{ehe_km0!FTx#wYv99!t1b$NSZ>=?iHX#ofkq@c8MzKO4Q z9UO6qycfprSB$-mAyuZIpnXAO{-VltGe?Gyg6mt7IL3TcQg9_gy=gVG{xg~G#+U^# z>5$}?TM=)^tutocy$7ImzBgRcV)?-g5nI4ONomKb>VDtM`lDHR-+rjk0;Rg!X`RR? zFL%cAy{v8@{HPQ@3oAccY5C49@?U2Kg$R_L--uQCYR9=ORN&7fIC3?u`fQHQ)Drco)r(Q9XuUUYxukr6c?!2T+%xw7)hQO@N>Kxs4*L~+s6JS*T ztJif->`ogeIxTPb26F7oCBYUO>aODVbzGjayJ2I03_9oVub9-fV+-mX_T56Tzb^`R zjmt4#g&HyO$)cX2h8Qzna@{0P8>N6hD4^M&p4Sxw1pXz>W3;VEhi4dX#*2WxSaN8` zmbOM1OqEpi>bysh7YMM7^*=e%?VB4mQqKG~Y?biJ0;X39-p;&l6(NYjz~;c;@Jx5U zDufQ|>wE?@lVW>v3Xz@Vg>qTgNXoRXoDJR+iG}@^oBqEpXFBeb&TdIoB@FY{KD%$` zm4w#d3LT%&wEP8A2ad5oJo*7eZeYpGz&Wca2#RvdJQu93(<8XGdWk54L>1lYUXSr0 zzqrf;v*8wOe5p^(JYac>-%AQRje>G@1FVJ~JiZB|2rAp})V(@lY-^OJ;a(j~xwH)m z(ce%@+i2`|n-{`jC-;T)c_TCpDKFySFPZRJb{%CIJ!OkPQ#3so516U>Yg;rqawf!ygJQX`ME{)!8Enu z<0xpy=K&)J5UO9RKvzI$LtfJ+b}m8bH2l|acf6duj1yC~dsoN5N*>jlSs!Xpa|Dgo zrT48$Et*NMbKGNL_4iKKDogU^Ke>d^qUi`jrXJeC*-g*_*zr+_xt#T(AYL;eGL!_e z3)l+&j2`YwjLIoE2bFZQSKY-)2+4nCS-OJ>1@paa&rtBJTgD%lUL1qNmemW5Rr`MnM+l#qwrOMP z%KHej6&2P8%4Pwam93I?6e4hu;f1&88_U%~{OwEvyT@MO?9FitaxS7kxc=!iie(ZZELfRMfSJU9!xl%1F(~2yIB!Fm!q&|hL`a2 zD?7nLE7@*zEO(myGaNyv1fp5onI$8IbnGh2CIx7nSaksJNpeQVM$XvA?{}KbrH+37 z;=(DvpO(rgdly@`I%c|Mu%V4W#N~y7DqKG)ep>!?7;ng4hEcC^Kno3@u znvmDxwJ0+LY}%M~rVP3~b}Ny&l7X(m9>yPwKmbv$kUJg%tqcxZ;?)&CJAY86OvM>X zk|zB9XguK87!bR4)^-10doWw1<1Oa?i~Dw@gI<|1e@_oaxNHFK!U3s6Qzm4+%WdSk z1}7j3SU7fGS`W;!%4O3v_PI0$8B?hX2!5O+Be&cQ50fp2T>8` z$dHG!!N~)&JzjXlj5g9HTv@b4`+Kh?W1ShtzSy}E$oK^y&_mhLax~}h{;=Gmswg`# zU6SCfg0At)-O$@u-pQV_Mt;J#CA*=BXB-kKXCWpdT}JNjr)-b1=8^t}P6gcS$s%Ey z+p@>O{EGz-t-(I$ zuPzhFRwIVBB^%5L38Ul2wIQI+$+%hwERrb#=n){%f$BK$y=MJ%8ZMddP!G+?MLPkl zl?@t58jUx?h`T1ku#3CnpedRmx40Ez+?i@v25UP*%)pcw*&B4v8@q}HVhC@MyggrL z(OS|qcrY6QWp?aCF~Hp&OA*?eDedug`9|?2-6Ufzc7NfWzYWJIOA2W47d2Y6mO=&2 zxH@>O8JHF}>7_d7`-)Au4*ClNOJGSYRg`Y3-Lu>!NrQrF< z`p<(FHyR&@N326R$%KJqYr;M&BmR#b|DJVh5s!!5%?!JOpUcM;j9v`WcbuBFv!|~- z_|SVSAnVt4^j_%h^)>*wq*6ojQmi~t^}raVC%ZSdS0+bAdJt z?{-5y(#3tzUJjv}?nom4!Zj|aqTQ$X%>ZP1e9mNrG@&3wT zGr^gWsuu9JcnZ*sUPxCCLYl~@U>W%|r9}On-bdN-=_2r(VL8ZN*{-J}q&P(^Oq626r9&Y5LB7PP?*V z4>QqQwQf8|P2kkwhh%d3+jlBQpVDd|_}|ngpi;gR>X-U8o`hVK?aZQ5GJw8#z5!pK zLb|&076`MO2~3E?#~APrcKfSFOTV@_^fVK_iyu zK&t=^=)0W{TTCdG!&*B2+$FB7oixKhZ`{{LG63AepdNAEm*?JI%}>9mSE_^v8YT~s zu48>sH%#)no{-^t-_LW%oZz~|fG z7T^lXS)Jx{)%W08j5^1+e#d*I_j(ep`gQjY6LkGvTe;8G#!aXeXP#Y^B7rztYKxSI zhVPvUk{3!sK4;IH-=ODn3iY|U6Qx>RENi&Z%e_&kt3K*|_qf@kggc(*We-h6oUd&GgxH21xKEaZ1OSCP$}o9Xz8N2|d7!Z2i_FE36di08urcAH z2Je`_k?nEMDayXvqaNT|#+C=Qz5ZH&kg(r-y!ck;=QMUm53@AitGP<;%*WNW7GzZj zt2hfjYkE~c8~~{AYirPx&>?bi_&zwQiGkFPPSJ(<5FYRYMbhU9!KnL^(phsH0dW3N zS$^Ml%9ap0j(ulGv@)Uh;!TwbR3n(IYGd{sEzzFuo(V~0%cV1&7vyy(w7ch3arnIf zbGL*bOFtbFs#6|QepZM99i@Zi0YT(c$I6W8GMW`IeB*cax{mk8H9oE?F7MEAhX5mk zRU$LIyPo;-nEgQFqr@0e^B;F~0q8zcBOC;tueOmR>5~cXf~=@OcXqS8`wzr8PbD%> zkA9tn;K+8Vb1WM<^gzo9S)~v+Lm{L2SV=nKA}@{;?Y9Df^q}?YDv+rg!I zM$R)G<^A*GZ*-tH?s-yJXveQH-H_;^VTd?lCd}e5+ctsBR*wMh zOd13i{1`q!d>IX8@6kU^P~H_zdC){O?^qGt1a}6|x8gy@nCtE69YpvG`3|GJ%K-|7 zyy56mn5WL`*yT}Sfr~{cfHMkX?Y>OE)Z&*zCQt~mI9Q>kzbtCEekbdjo{MrlJ`9W9 zln#11_OWm$+S^(+FheT7@KcjoTT|J)?Y;D(aNC6MS3^=C`pP_Awo81!Q5rdx8|a{- zYerxFg2aDLF_!$<;HGPce5d?TQxpv34f*t*rU>j^C(@_Sn)Ed|Bmy?i~d(vIft+GA?-@#lUvU^-(yDa|FE zQ#`6NOiEeA>=f<+aGpHVt_kL?h`rW{oe{WPWus=&)1Trp0ktQJ9 zbuBai|9IpaO4d;MZzlL^I$vm;zK1YkLAwc&;1lEtW!0l6dG`g1KAt(iY>3iW;uZAL$c{sIk<3PRE7}Mnfd#E{ z!2Qa4OFtLPoMXNb_|J@~O>Y7CQzHfELptX4K(-j6qtxsJeP3BrLM*23{+VQN2 zn786yG0Jn^kPvjMP*Fi^0a2PciiN!PKoy)Er7YkBhyz7bTOr2HOs3QY0^`SY!3uJy zTOhwy3V90VED-RI=Z^ibb-F*Q_ zvU#!xE`a<-b&aBh^NO`Mk~q`pI??j)QDHSlvyK~XpIVbWYHW5zO$WB@>9rNFJGrte z#IGZ#OS~#t^=Pb1mNVs@I{T_$&IGA|ZNvYR`MAMfc1{Espu6D5UPN0S)t5O9Zj+cD z;UJoFTFEQzUSxXMqh_EUOW>(kz!@7J;N?-(_T=kX#nxp&@CbrZEX_l@V|OuLO5w99 zTdquW{GyK6wxSK@@WMS$zo zrKU!!$^1bxJ7xoQ^X#(`6%wV$rCL9pu3;7bGe+A*9lzF3t+~xq!dK;(M}b6{)d0Ks z&HT#~$VZfcW_gPR$&a^@S*{D9p}n+8GKonpBv4J7S2t`#s9Zq}f^AQU0M~7CL5ZgN zTkaxfSZdOpK~bJnaayV#Q~6LKSC7rcDU_3yeHKh$f>KN|NIjwn?;)iM=;{HJ}|Riz{{ zoU@Lu22V4DmHCyy!HP#K;VBhUGrm>k3il}hqOA=KR!`g}*dnDnaGVDK)j}T$KPy%I z%qD(TZ=z0zUjhk#BqL_(5OF=CXmg3G0M>y0hK=En@a+anYRg%A_h>WQKtvPg1)YG- zSAL8Y5V-Vm71)Xk!Gi;E0g0$gM7J>GYhx701zH|I1YtgDOlsjDf05Cc!+*aBl~LQlaix;OQ=VC?ApA z^3_{iVdK&;H?33>mjwl?dpe;kKe`=Otn8oK@H{Y;Aws=d+#&%eB(6`D1*OE~L(QeA zEb&Y?6%dWwI;~+(gESP_C6bUH3FgyT)O;{bL~cHFFct5%!lA|)bg@3Rk#{Qbu-F0w zd*WH>FR>DvNewEWqY(&GG#k^0Qi=tgEC8vwZbx~xjVwBGg9Mhk9%mLS% zvQLS7oeju?qJ;qK@0najOMQ3yW9I{*mnj){JSY{^gryD95K;b_h$L@8&DlT9AJG_U zu6uN-936se*wy{_1-+{}7U6g$9d6D8A{8a`IuH<=PEE3+crVy)EDBMv`3An1kzziD z32l>sLw?IQy$)R`v8+7N)7P`B%~+2czJP3(0Cr1F01u!e5`8?$6fU`Md`E)pYHh~; z$UIp>EB$5n?}J1YcuGyIn!;`xBru-XP{#BLVhP&aMpT-M6J>KL!Uf*;mopM`U!KN! z42o*cDdVR8_o`Q3F9>S3+$cdMlpe-8kXcFchN|HdeY-2W#>VPoOo$smIU69dHQZpCknqx$F9TibzUqQ_c$JUWmd zw>DriB_pnCqCl{D7gXfoj-t_~ERUx+-q*hoyH+{csXp8eGMmSkyBjFw{<=hu5uGLb zFcZA`UYUC3@x`eldm;ZPsPEr-cnM`Gcq!o9)T=9D0&H}T>w@oW?Co0w0KWkKTbJrpL*P%Hm69%T z-Xk+Qq@D;KBz0_~`UDwvnBDg}f*WxbzSL*|jr@(m3fq>nM@a~2_wD8nkzVFz3*dS= zHsQ?S2ql%GvPC-nntX?3Kb?%@1>(Wmh!AVxz(k*F72UmUPwVC-oRpv26Q{a0or~EZ zi((N%QL$D=C3CFOd2XCjq04>~`UJk5Fkza-8x?QI0sN%0p2An}dCeIsy%c5O6PK6q(gBE)&b38=Q&r? zkq?Qp`9eOu6o4Y5O_f5Nirjg`T^bbqS10Zu2q8_HI<9f==KzjQSvU(3RiLAS8T9IK z`$SpOQZ4E|DipzC)5mjLR#G*)b+a}+q$Y={Wfn_Iyn8w^eNdJ@P8?Q84N!S(qFQqD zpq>K7bxraqva<)tldI$1Ccg2ifC2*#@QpI)dlbBTtTsFK1TaXaI!>j@H4 zE@B1o$3u%-Jj%mf$OjZA1upG`7Cb3keI5iPBXWD3LASo0@{UU2fC3EMy=^GVnpv$> za+P=Fge1%`lBTBA&W=#d02UqWwR>cIX&nBK_uP$zBJ^FpH+t&wv9g@Kh>XJGneD;4 zCCaGj4Uwk4hVko1-CH1)N(B+el|*$*%+Ztl$iGCPN=M4Tv37_(`BpW3ZSJ?dvkPrk zup{cUcJ=hNF#AMVMx0h^GEbkJZ^@yO$2l^9-vLI&I=*l%081YoGERp)ak3V|xuB1*fA&pDDwc8E9 zeS;bI37uSC-qw8TZ&42hohBz`j&f*A;nn3ZbWn)~^F=feoSx^acnLfd3{(*2gr~~3 zDA#3|)^VR0P-z=$0d7(M>43&z;Sr)4phik`kJ86`kRY%S8dVti;Q3dWyb8v^D<+xq zc~?a5=9T_`pf5d2{dJ&^z3SZG)cJ@0@-AD!=y{I9t9^dK3mC4G4$LW+6@jKYn&4;W z?)wvnxvfrQ*soFgj9FD?YhuU7xl;F@pZ;M%trJ&|30?RC(7&jX(vYf*sOTgot}s{` zGk_E<;x;}#33YK+zKJJ7mH|Ox?4d!*ep}vgZhOXu5qSrLlp9Q2Zpk0y?-aMag;}H6 z72%-R!;jTCfGV>l$35&?OqT>%q{yL&^C_^f$(w^zsN`sJ+$z#J~bR+*uhwUt3|l@Doud6XX;o z3T<3u)NT~%#)$sz?CfmS=L`A2MjsftxOz$vzrMXW1WAf+k&7semuN8Z2eKI%QJA-Z zuE4l1w}auQHgfQrVZ4sCm=BLFSXi*}122(CBh=`y~nud-gaxy(byL)*jFO zwlEC@?A+Ia-qxm@c<~~DPqy?=$Ti_mp@S?DFWt0Ru~0PS4*wF`8Daml4kph6Mg`I> zO%pzBSltqh6va{}FKP#i;CLITVjN=lSwyrld-7RJ$u2dXu`e0)t{hnNuRT{h93=Ok z=!_Cka=s3oFEE9wnmg2~C`Z>}@adJg(iq?XIH-h$_KlK?qE#bJ90tvRqdzWSRq96v zL(WQ=63XH;)1|isy)Les{(Co=CFjm9{Z9Iw&KjA5!DeDFAyv-JU4tAjh-@^v6kVX$ z8Q18%c*f0j*+--*M$YMklzDb&Ui2Yz~rADDBE#hO72;;hGsQWMjKv%9QN1Evo@7N zO#M;M1OxheyU#MWHEAztHnzktFDNc%94vKdvW*16kh1B@MK{tE zi(UIV9d)INzgLU-Ri&7qyokMmb68sweWJR7rB~L%I)zIxAfh)!F0g~QQbiNsCuS=N zb5UaJfOk$Q0K|OdamQETJl^-7{-eeQ}sgmkLi%KcV zHJa%$p!?7D#t|}kFzXqmJZqGQPn>>axxLH^}>RmY%_Bf zpY-d`q?Scy>Y$-EZdVNRRL{Fur1)8p3euN#frt6|VoH&h1;z5037Z8{Mso`4;EF68 zO$B|$3`XE&TB(|W(0U#j7MqjE_)+Fhijd7ad|z)RCtn<~RNE1UzQUaG)P9&Hcx1Z4 zn=d^Zd3VADJUQR`x>&$+a<#%*LPjlDNieHy_2%Kd?1x9A}}CP;!U>7o{nz(ih`MZvR!z$KYRTkEp)8n=>D_0Kw-?CB_aHAtXk5#8Bf zep1xGZ9YM_c0d`hLdw$vm8HzDbV|ZIHl5XWHa`)=PESCfeXah$Xm&RIt?F~Jze>2Y z>n3qm<#owq9qYr35rgS0QXjoNOE$q&8(CPK@u&$TtmN8h(6BI4h#PAxk;wACEvR-W zgmam(59#G7n}5&NT52y!8qB`{azF7f+JV0f=)uoP(03!Kad`%Jc2;Htd8qQQSWK+PY=^?dUZ{Re~6A z|D0_exLPVYtun%-bYg%vj`6DfGeW)?>hy^?P^H?5H!9c8l{Aacfj;!ZmQJXJ?>6$Zn~MF4FRO`ZvA^LY`P0VeTObmxnKeIO%1Z$T0Xf6a}hr zMZg$xwgP8zn$%W`!#%0?%e2Csu7?r{I=G8X$&hrW%zuxLOVW{?+^j9k2jR@kr#)#(Ox6zr(Ne(^?CE=4o zM+mG$WznltQr1s~>5LvHp~7RYOww}>lRgM@J|qrZHt%)_zm0vkEHGQC+Ao3Zql5UrWi@PAm9XgOh%lmx3V zjJX`K>hJa&DS14_28eQ6n(;EMo*HVq^DmJ8Y&2xm>HVromPBnt{<6J zew`7qKX6P3cRoxgim0<0lXw_uGTDP@%Xo#;>(XgFaxI8+=%2(jnAKzD)+=Bj&(J1bIPm8J;LQh#4)#;NUS(Daq)W{$X-w(nT9PIWu<`7tn}>bRkhLIvmXO1$fXPdbT9&N4ld3N zKJ@<#;*9qH&aBq7p0*O7#8O8VlOVr<$;mK8;YX=UPe%Wc_7wr- zHH@TX8_ku_NZ^MO89Y2Sa_e~Aqx%vgSK7sa1o`Ji8aXeg3akis725}tZlUAdB0vHH z!aJc834ic;mJ2DRfiy@|)R{^OmX@>ansn76y(^1`eS(y@Hy%sdhMj@UVzc*7vaN{j zn^kM|Z-Z6{|6*!p3MYsEMYcNz2igGJy0L9*V%xScvCWC?H^#)aZB6VY-Ome?n z_nuRAYyVx)S~E&Ely?NH;+3czCKYU- zJbg0j9yLeWJK+&3Sq=B~G9ft4jQ|DIrh>w0>gwId+86=miRgcFW_0w!Wg!<2=SkwV z=G73vGLD<_;`DRB-rzHyw};tfIx&}Z>pd?^i?u6@AD(y~57KFKDVPd@o829cBQ;QR zq zhGULE($>YcK&{8fz@8|yBN|x9yk^_)Q6fnSBDy)l-L9J?lSF@($16$xI7xi6K4kVw zjSkRkZHCH(RIG828R1IF1==9V`(WF^>^pwII-Hw3DsbyjvLBB~=LUUAj7~4})*(+- zBawba&|q2VXQJsFig2->8D}998G&XlwPAlDdqLoilvuM{9xB`~`>tr{BA0EgFO?2n z?81)hJ7s*U&h4NVSxYIth;#-Sfwsqsq?S~`qy}iNZO7{{*=$wM0s#W)f18ETvh%qf zZ4Lia*{q-i|9;uxJDH~u*ozUF7NLAhPVj_2aqAJv#|3vvE}qTRS;(4R6Lq!RdfGO$ z^Mkvf4Rd8{Vf^#eMc>ltw*4M2h@qgnq(p@Wvfx+RT62??_eAvFLF&=575IYo#t1uJ z71^(5ZdFb5N?+w%&9$){Ds7sQksU;Emx8^CP(v$EsN{*DDTeUCL!)E( zO&5imZYBShIEp$DN1T{f7HkuWT9gC7n(y4IdBP3w%b1JY1>$~pSPA)l8sC3)&Lnlt zqSPbwe7LUH@*g@u9sBBf5=ahse+C@o$hjpbtz;&~l{QFUa#WQJJ=9`)5o4ME_-|9XNopjhT5fql^er$~8QCv(n73$pVY+|H=*9GMRE zCkUDNa0D;j1%g|n2wDVEaJ6W(2S1{})9fut0Mqy5Z*w*3aRyg1;`!Y{=|Tuc zg5}mB2ysUtGGzq^?|U~yvwz~Hcx<3wP@Fl2m)7(#)=au1+0IfwG9R0v_dIA9w_#zB z{jAuZ_c6@IRDxDc_Hn?@U%_3KO{k1kk;d#Xh%O0^eJ9JALCF>kOJwkV#?_vusuz?H9jA2h|*v>anOni@JUfvK%SYUy&H6I-2HV zDEpA~XD~CydIuMKTTizISU$|x2O_5GRuh!M^9^Y88${)u<;|X%;C}EK4QvGtxf6YPy3oFS3a9o2m8wU?4q;WUL%YSkXI&nw(kUiz=l1#i@c{ul`uE-~+oo7J2o`&6Hyi5jXc(gqK zDI#hUfl3JmYFQ6(5&kGCOK6dVPh;2#lvJcRQRiHDMhbW z0MJv-j)tR{S@2yw&IP|WuiiC&uzej)856n=CW4CCl?4yAFt2%kz08Lc(E+Jf*9NIQ zwP9Q!6=K}10)Y(fwQ4XtNktddqRo3(*jI8bZ#$=+pD?6k1x|M{d5UILe_ zH(irh`MXiViAcilpMmf@a{sX*v|g4HCeW#DpyJ!!^@YJdj1LY;DK%06kdpPQ8hrUu zZ!D44LH`yOsWM4OgO~_6qGo+h3={PRJb6>NOhH2!q5r_|4>ZTbQINMC;r?ibN;9&w z71~+VBr&i?DtQ3M7-KZ7V{l;i*62^$lFP2--)3ZMCG2!58u8hrNr4YI%ecGEp(z6$UqU6rsnVZLeE8_pnmwEng zOrMz}O_dN#92okaPusTtq04>tcIxG{uyP;}OmPR=H`m4PS2319vyyX)xzWg3Qb$>2 zrjCg3>E1_N4Y*o95pnb8jomZ!F) zJbDyLg)dJ(tt-r{2>a1w7A9$%=QOkQqyp-kPeRVzSU(wGppM%iB}-;{gdS};JVqJ_ zx@j(HAW}gLl()!Za^G9@226gs7wcRQ?)VpBBCzi{A@ul5pj)mw#1z0u_NPuON>%`N zOHT?PwsDYrl1eY;Tj~l5EffQqOU0d<6X%9D5?6bnm~o)SB@#2{|K8f@I=^6AgBD1* z*;jvNma%xWd}1Kt#8@*DNMc8q8adU>)k(=7H$kScoc`GB{U$*PKR(>dL%=5q+PsVY zy=vdPjI+2b>h>pr4W@N-t<50iYcjMW3pdtV;+_ZG#A{PaD@dA z9~Nile2n<-UAn8YEQI5RK$89w?h33(Mm&->XFhz~9edO1yOpoui>|8xvo0eL8qKLg z1zSj^m&1BU91i1+o~WTge%@(Y3enCFW#TS9Y4|X!o#^%qXt*E)gR0O`)y#&#B3645S4~DC@R0T6`ZXJB zp54n`7kk|1N-nB^=@KdS0Ob^5g2A=|^OEFWK@H+A1f4L)bxl9KUChQVK@E8y%d~SD zH*4R3vLq!na(N1cs_>5w;1l13HpBnPX!D z=S`0tsP%$qJ<7Vd`2l9m)0YW}VxDtkCbs0`&hm}Qt?P2-)${VJCs-Wd_`F=clK7Lr zwwR_B_NZpt@;cB*F6TS~OI9Q1oVlVnK1myl6NuvC+aqoUMU%sr`rRX!Cv zY|z2UMV9Vgf!&)IV%vUTfa6jEY$?T&^xsOW7&F*}%y3S0?n#OgJQT8C&Is|XjFSyqIzfYnWp%?$46KRt?P|g2 zJ;V>5ljeC-14AOp+z;GYp3)%7_jPaOqilJLa0wf~?H!YkvdBSWQPGvZkrfeWll{2z) z>#s`q{z1q^onXN0%fTtNREr7I097HuIJuihzcAj^0oNN5ZFJC$2EJ4Ug!~KHObJhNVbKnzxN1Hu(U<=uY#Cf)}Uik zD2a*uVgybvQpp;QF7NY6qtdmi{H7QfZxmZ~&yt6D4 zH%DUd7uo$*d7W~bA{FPx7_Jcd)l?weFNWw88aPKQ2j21NI=P39}G3;}w4Gm%~|Jl1ZR%EyzFDr$9SJMe<&G4o9pE zraXg^iI%#T7f7JgUIw8XG)2WWYSs9Xv;b;sFV{?Fh`)0vp45=&7y6pZEAa;HIi{ey zwJqk|{l{0voaT+#d%&9HrRp8ccv0|a@1nMx6v;qAk{ayRoo51-cQ2kMy+;dc--&=+e|O!>4}8$gAcWnY%v*a%k641izjoj@p` z{iK+!IbXZPL0#2qPAYHt^3^>WCTmJ}*XX4IF&T7ckb zuql+YN1eM4=dZ5vUbxZR#*0wwK3LVU7DkcQ z0O3J+joe&J(YlI)B^DG(2InOwE!iUVx|C6$hgY!Q16+t<{K_OPK!0wWI}7eJLVFnp zCmL-r5M_eWlo0}YZ_U%70JUCra8{g8F+?u!W3CS zT_EQ>uz-PxPD)54g=0N1-)$W9@$!d}+K9};K8P!=t@Eh70Mi!v%vy;i*}W^V(iM68 zL(g{}b@28(2mV$QQ?NB+V|BLvVZ_9Kof`Y5GsT87E{?vuCchM2rWOA!J%ieb99=g0mj@l+;Uz|4VV~0T zy$MWx@bSOSi4o6PG*9cnl;J&!C_ST4MQS6$gyCzd1#|;Q!^=uNY7ryskm0VjZ$q@8 zNJ+ua^L&m3{eDN51wSNF!RDurb!LWeBj+B6$i+T+`eM0;NXFom{Be?MBa$W!B^RKs zN*$){IFmXo#YI&Acea%W+rj{U%5Skswr|C}pAHW&D zorD=v<^wP@O|PBJbAzY-&XUf1Dzmxe9p%i+DNnRE%kRL5zIvL&E|ur0$n_+8%+Q!k zt$sG$K)QM-59A7b;yk|x@+_0WRY_80aE7wD*Amgefw4CC2(1X>{^`mAoqq{=DEwR{ zF>-jL1nm33QG=bF;|RKR@5ax3hZXe)Y?+`5b=&&pZ9_Di zhoW^oTOyl;{;e%kKX?%3JK+mO*rij*T*1=&yf}(P4kvNd@oIaN@@BSWkmEH-oRY#V z*N?@I4GXJIZ*+l~a>Z$S!RNWk$n(+>TU-iBxM=|S2JJeUAL5K=ELkoHN6Z^fB-thL zPQ_7ZxM~=BwxR`=d@8tq`Qh-rV!Q7*6)Z+pn08wH2ze@ z#K;F9%y$b;uPT~SU<6-otFs15l*|$*wFN9b z{7OHxV)Cd+#9_gXAB~=ms-lc9uZmD}(`@N(R#3(2FoY4ANOmxoCHebPE0jY5jwld~(s>u3BsM&D zy)XO@c(~go6 ztHk{BkhfW`uWm>7en`KeE{x*iMG>zX)n-$}^&8liio)fCoinK7tp%oqEcAZCd#(;d z7Pf#VfryK}NlP=@op^A&>t;V>vrleB7qX8Mea^J3+xlejMF%4bydBSz&vg1g(aAWU zi@mpN`Ez4lop;fCP%MHD{sPbrnI9>vVWN!cMwVYOv?AnK&del#+>E(GZh?}YI5S<^MGmZE&P3XKh}-2qGmH1<>+q^9dk+8>llTw3nqke}nl; zaF45l;PP){CJ{m>QyRJt#2y6kKiLkOp=}(69K%wBXUJ|&JP&xm!zpAr<;v2F7Af=C zW$9P2bc99*LX5ffaRTmid++v5ALUtAhL3H#JfIY9f66=L1i-c>Bco`Hp3W(0O~c@u zE$X0ZRFyqGFf?UY)jTY;Yx}XVpu%ks4X%{TwKr-o-7(ujyj&!l?eJL=id3i4$I)Q_ zH8>a<|Hk3WajEUw6F%q}!F|lkE;cqakMK9AuC<~oZQ^VlcRxS|YTwz##)i##Nej}NI;HM##m$~HnS(GNlC)Do-6E(TAFjRZ+}w0}}_ zoM;8txMvbfQ|8bZ9vY;G&4_eVKVR$!J-&gw=k*6~$~Hm&(HK(9g@UHc4<;pqXMhL! zuYGCM%AdCz?*rg(u9^f@9#zv$HOzm4x)e3xwQDe+4TV);)N2D%w66*XD#7H&ZLPu z=yw%&<$`h2qy1{9`vn7k5v>~%A(IXH#lqN^!f!_M;t2edh8{@jQ$07o^$_~wBr_WP~CKq2QQT;j?ifB}hwDoAQTR(3ty^h*i z>kCT0dvxv88!^1Vc5|9{aD^J%$9>Ry2@n6JTM-3jcFYS2l9p9jArzhq7IN@&bv-}4 zOH!ro4;2u1*T~Z)eb2B>Rwc- zyGdLJ+Xq@qHZC~TcqFxL27=mAn)@27!pYE4S!@+e$OVT`JY_-cZ7<^vM*PD$f}Qod z#d$h3O?or}J&+kDq(wit6_#XvpBiRBjATCK%LZ6BokKGY3{s4#Tskl1QHp6WkdHW} zVYW7}L5!f3)B=`&z`2q<{3^lA4VmXc^xc*C=XzNgAmY-C-FD2CvH3*sAjUYU8<`0< z%!asnL=~{%pA1({>9>^7mfU$Tx(IL>9luhSq9ypn{-}F0$Tv7oooRWy{}rhMj@9Z? zhXT}dc0KPnx1P}%8aXcd4M&kK^AI|SLnD2)<21^g_a5^PlZYl6xj6o-cSl4MK#9Un z7|`%MB<$s{-^wE-{|CKk6>MP0V65C}9c*9{z?AcbBwEh}&2c< z$TSM-L2|7`J=Gb(q_T>blCo+2**1ujpXVmK7^&J#1AJjt!y()IQ&3M98DVR$&_BPX ze5_xzB}i?F5>lic)ywVpkDmU$trCod?{2+~b?@s1r_c>IPrWGQz5IUkk+`0yB(u}r zVURI!fX$rUS%KR*R?CZ%2nwrkJ8d8akb`HQTD?izW(jECEcFHU5;2F-H6#jrn(lVY zPz&V;^tUV{XbrtUuWK>Zg!pIo5&BB$vXH1D6rXa5ug?L5b@!y zDMgRFW9~9_BDhn;!oYZ=I^$_lP&`tF!;JdvZXeF_*BePzuD~Y4jcJ4UUMsHwzAIi! z#>>|JmM*#v7kjKmt@Th|!@a~Vz9x!-Bm^+F7pa#kE_v>Bih3NZ+|Dze+jcJ>|ve6=)8e6g7}o zvImget)rB&ZiR9BUS%}AHL=76wM_Clmi}9+I{Z<4IU+=VZsdC^c`pw&K%zbPa5>%U z&o~*3I=LQgTZ7q4$>EhEG*3~sIis0-t8h_;6%urD@Vq)XJ#;Oc#Q1-^y1{pOi`j#C zrVeQ~l0p>%R%b~p$_xmdvcj`k^l$bC`METO9L*(kFZvIG;vTRNF#55AY9+$6@lJ18 zD|=qcc-y5i9iD(6d=!0Tz&s&qQL7H_>$t1J<`ftd^{Fc87`_A1$>7)GUUfSsD z4txs;^h4SPW8!94jAIu436Ex2+1}B`lI8tISU=CW2P8F}`PX5bfav(JS5sK)uxN1K z7T1Q~ptiVj!M}iu^9dHKM}4fj9ZiukaBL611{|FtlXWSQd z^Y<8MWpR=pF&Wy2Iknl15|$cMCF|QY{V+V*rc}m|1g)}jvedW8{vQjIzj){a&*DFWgPkKKMRKpPwp_`t7>fP zs-M*~NGbVFU#f_EYK9u~ED!Y3T_|$J(EyV5K@`s@JMzdle5d|e^kWsOb~(fropB|d zEZ<@jy!IT3)KMmxFlE&Kc{KJ$M+J7LgauhoNrVbCfQ#hc=x(Axc7otG77WQaBDCtFXj`fU{N%o^&>R?aq9YlH=9?Vt3QKw3FF}{dkus(eo zgcZ$bv*F;fLM>C{819+#(!;^NZ0HluYWe!*(><$9V`Z{ur=9^~Yo?A7F~+4sQty16 z`kG+z!1O^?PU;fi=Y`OL=uewa`m9BN?6%*#ttWXnv2?@-VXb2KJ(=TR=nn0i0Gkxm z`feWK^JI>car|5!$rzKA&!eu}IHLeY(C!jIkFGcovX-C1^&?G`SVk&hm7*{5P;sd; zR56OsHWTqwpT)5QGCL1><3mC|w5)ow!eS2v&>8Du_N9!%4w2@7+=jUGMCEIw%z~6I$7F>HwoK5TrtZhdP2 z5T;CLXYL2WdJ>HZSv_~Gm`IV#{ZnX7)A0wj{vpFTG-kax>8PR znF`Q){F%9y>@5XpT|NPYD|dt0M5h7Cf$~@@2`Mm1CNuDFM^jK4?upd_tbOHxd>HQ=dn zHtDQOW<>O25B_~X6Rp8%3p!>Hi31}`NL_3L`#?(ovKcboT9CC+1!Jc2Z#b58!^A8e zWWmL6ODbm-q#iGYoQ^f%CWtl{$)7vlH;|ps#1e5v{QTu4?ohq=tJuaMR?N)$MC4+W zPBG5(5x0!9o)AIg^IwXJcl7?zsb5Q!y@v172x;T6R5rO6UKh&2%GTGr$X7Kwf{H&* zpg{ELe+Ks{B)WB_VkSWEdHMX+l`oVYTe{PRa*Z;wclV@MH%;Q?e+3IznYsQ?uz-`5`~RveEF@`60$^M~v(}nD{urj; ziKdzXtAcR#nIC8nNuselB`##-lvg8^NP~8vx4iqpmV%79e}C`%ce=~3vrsY~ITX(X zg=Oc9#rBh2UBmPVf#Z3m2ezH5o`3Q63T!TG9diAZ$YSgq^z6Sd7SIEt4#~ zB@U@^Y~2APXn7RceGAb5g9qEmwR_JeF1&F$_AT}3PXwJ>OOebwYO{&7jEB2A8?$%@c_sEC}oH*AeL&rIdIq#cU(QF#Z$ znlU#bIf2GKFVdNL>SCioi`p-A@mT6{C}LaqxzXdWrN)FO7a@(>wTVraoJxa(iDMc2 z*2_EP<3Fn3{Wh^cK;z_7j#$G`#Vw?XM#IktA)MLXRFh5tR-W&$*IgPx2tib_ot>)7 z8^Htr%#wny{iGyforZPUXE!=n;%Y;b(?atIx#b7y{aWl{Bu$^#Ye5-Lc>-2to{vgv zxN5VTZv5*8Q0Q&9x=T2CK^`HDzTdll;2ZA1mQ0a3z?_qSU9O!Enb(7w6)6Oo``WT= zbd!qnqQYzE+b*q<^Pi3D%%03z3piWu3G1KL{Gh zS?D*gN^Dn6^{*DKe1aJKbu2FI?7C<*Y(0=16ztb-lYH|6DEkyNcZMpLeYDQsP?dcA zoDLtn?s;+m-!1eks%%HE%(g&mgudZi8MmlQ#nkYJTLbbDe0mxKA(?i>u$HqMkrU=d z#rv;%KAt^(d!JaV)u=1B6$(Patafae?N*1$wF>Cpv}vDHW}-qNSqi?PqFW) zEr0#~q$gF^_hhm85%ce(KH}t#ewwwadPJS#oTC%lOW@^anGJ?1>ors@->AjH?~W_M zy5+4{0Lp|RuSx;k4#GEz9GMWft*U63A#xwaQtnk4!d;M>6rbPAbEPZ{n@}plMVGzd@fmxadi>V#SRV z&o>RT)2@UA6l;l)D#n0jkkw7r7-O zhc>>vnqU%huKb74bsMMJL;qjcnIOajz9+kFjxyS|uu%2gs6hkBErG8VT6M!jd%|)I81u6rP*^!Dk zvec(7P>gI8vmsf};gkEpyyjN$J3<(CBbkpkf@aD|+HWdyhld1)pfOeRH`6#29JxqG zyPjPEeL?9_4W8gKL_1?LdNWe;SM;P*H{I?^Z$ZkB+>rNU<3CLXqFG~S2P7=@z-(!U zE^Ens{k!(DouP<%)pHGz(h&HP8TSrcQfH}v{n4Z2?4X$r*oeQ-@q%k0WOWBPTGTjx zrTw8uGTxfNOACs%bZM|{RGab3*6%OY5ZqVH;F-Xs#DoY$pKyMJFoMoK0Z!OfM5Gf3 zvq|{5cgi2?;fY@AwzYlzC?b1 z$~+PK{-l}Sz8*N~Stf6b1PU(h!EWaVXAf7%I8 zOyr}0&9hbcmoGzRTqB1C9D0mm#c*csf?gWAdi{NUl3N0sF}*AbZx(n$w$-d~T?-^` zi$CGJTIM_?p*XS);CpkldsJ0wP{w(4no=PIf3$g#lKt^oNWOmJl=p&?xTxtt_xv|Q zt#>1Q>?sK`9TWO*weXZqEF*{z{?=8Ms=OjqMRWQrKU9IKoaI*d0QX#DnV#WIID08+ zk2-l%LW}wzsb+O1ny7$rW!|If_R~^QisY7V>{e0~Zq$G1AAiq4jN$?&%sG(I6k*(Xi0* zGBcVMpo=kM%lUyBg-sh=bWyQac~M6N4c0^ncJ5>M_X zpFxe_k7=%qzM21GYmf7ZG~P!yDB>;ppUk98S;z~d$kTx9!`UT?8HWg%vl~6GX7z|% zf!UdKgXp8XAzNyJgY|)a?P#(2>*_+3mqz;B-)Ey+u7==RS>UDf|6G7&vPy#}M6G~U z1iR}5K1Z*`AN~ky3Wk@Ho3Rn*UG8^tvkLvB4oMI&I-MiCNoxZ3Rshib(O(b$-=dh- zAPt5I&cVi!HYN=w29)S*{124$ThYw7A;yxAgt34EM|hrcC#Y+&<-uo5sY!eRg^(g! zCKm?Jr}!7_FY(>BqW!Mr}ulAO~DWbI6Y&kWcO*U@T+#6xot5f|2j^F=t z0Bu?pG)f~2o^m|Ia_;<#?CbGmhUKj*!r)*$dVY{T(lEo}_Tj%CQ#=#&p?{mK#+>z1 zDg`p#QtG`V5PM@{!?8teO zC#R9AnVD_e^W?t7YZv+M7n*}thj(8-KvBQt!|Uwq%=yf^C!B)RW9NEtuzwN&5i2Br zCJTU*O_>{?w_Eya&`3PF^ut9d6QjNUnbl^1zmsa4Y28(2BWA7#@1h2gRcSuif^)Q~ z4Gk2C^`of__{C2jO{+&c!En4kF(-k^n1%N9l*!%%aMd_3$`T>$HX~>;FL49y`&~~$ zI@?L8wY|d?9BpAgX92nFl8BP3bY;l<0p2u0PK7%Me>W=sQGecV=}d)c-|E-eYCx5a zOCxY{AZ{2u&rZ|U3+XAbwO<)y7W^#b#xV-W5#xc#tFPSW$0KU0SgGDo6iPQvuBRSB z#l4(2*foO&o8iaALAT3bP4G{kgO=8`SiN5bfrNnmb#mK`ammYrkCiQVOkj~Mbg+mU| zzMZd6>C`tXtWr&f-BnE+5N*2W4>UGL`ogGS!C_s~)0`!rA%x%{t|Ir~N_gf+7V4VE zgLU4)9slwBezt6KJ{!S`(WuN5on)^k@S;!Axltj3D!Vw9iP&JhT#zhaInIXfD8o#{ z7N>3P1p9WdR@XFxhh#GE2Ae_{f0PEeevhf-^-y+WmsOlVH0oM}2zBh#EbdEUEkgpA zus(%p)t%TtVm+Vb$Yho(r-ZsucP*E^HNo#k`}Eq-@OcE?OON&XbSz&lI9r#yooS1y z#L5kNn!2U1>3c48NdyZnh+Ntu*+3+h`2$8?d3zGcp;l8*8DI^dSVGS8 zt&I~!Lx6isF`JaqJr7m`K|vuJNbAS;IC#}6!)Znr%r62E%%p59a$Rf3gLe+O#DzEh z3s2P~RJA7=5Bzkec~8E(t|?7$1!ank1|thOUfGA^{8t6}j)tPK1n%lFN^#5X^4eJu z2>$akL1!|qZdKNzep-giyOw|~J)v4n8EpAREY;>4*PZ-v{iW?#E(lzgNnhcOBm`P$ zI`e>nZ4O==g6GfM$v1|Ky9-uj8`{@X#TXDh!SuEr?NCp~OA7P%S9O%wg`$KKVM;44 zO#Zme1AFizQNz&$^zeIS7+t;cZG2B!9iLt-8IkgbDjuQXLenO2TuT7%3GBdJuAis4 zEZNx8@)gS~v1AgBbT-l(r@cfsh=}$h)+eftGk!B)`GNsoabbkeP0~!Pl#cc5PC8 z{9QJQa~Jt!rnq%;+6B{nxTZGHh zoI5`#>;oE&P^FJ#PZD;cN0y4FtD%mBqe8t6?U>`c$Hn_%!T@%e8UQ!qebYj8VSwge z(9!5Kd+iBC-1!2m70F7{XledUNF6C{<4&?0u5rGWdJ%h<7FRwEKk=SOY|(i`_D3&` z$ux;bHY?-!JguppA_(*r^Y3Ijr?-!}N%&iM_8c5Vv8H!=!@ZwHe=Tcl#!lhwR&K%* ziUIy0tC^3eCBOp^^!6&imjByYXS1N>jOM{Kg7jNwY+7o@%PTdRgxhm3rQVAm(fL*; zgX)h_tu3AiRWFgbt{BeB*4+71$BkYeODwOo8#0ow;m;ZmuYtCsvJuAY)IPLxn=T&d zA-eK=Z|rz*WteGAujy)p<@(tQq#7zW3DV{F9%)Z*FkpA_QSn>I^AFCy1A@MWhO+M; zuzltM)S+eHY|?Pb1vh52M@?w|`d}*W=(G@GSZ-TXupDxG|Am!yMFO)~!i;nR38){Q z3pR1PGfQ~T(tEcM#amjSI*NR<H22}Yl~!y zr=-CEV?gKo?8afIcjZ9&HK@!23FF)O$zTa5H-3PoZfVKw@%SJdxvmy?WtWg6MdM2c zzw1_A1Y4#4H+c5-us^Q=$wt!4nxpwGModBlvr*l!j4)UZ97t>8XY{A)cU*569_C_J%ZOMAbGX0UyZ~KxNG_Q#^&cn6O- z&ut2Vh@p8xyONhE+{~Z6<7WRsy5_=mcCb?$1119V<>&{6u8HiANL4kx_0^7A0#0p-}n!jhbv2 z*{E52JK^BH@!(!P0v+E2Q{Qzbtf3bcXyrmsaB}=nzY*<%JWA{sdt??}3mQXaSHi-= zEE=B73>Db~ecAb7q@D%&F(S#7ttDn%iz*FNkalvc>rVIg>pOuO;GBDCkA|~9BRbPt z5PYwbjUaZ1#Z-8~s>4*iXST&FA6PvSUnVX1uqo>I$BWr0a};mnGgaOoWZohzj9CsF{;HNMpi54 zVR$Zqi)alPK?B%nCtQH+o&kKhOcVQq33X(MH&uH7Uxn%%pczUjJ8MhqGHYwtUv-}B z6$;Ofgb9KNPWA76MsFu)q;o?3;ughH-9V6Cbt7Tyg|Y4M!Kp!WpX7nY4D%JE;#4DR ztIK3V#Y_(w-yH2ifsi=ai$k)D>S(Dq(uj!Nz1R2u^U?$FhCE#nt#?-zVT;y;i74dz+? z5140T<6-}Q)ihacFae-OXUlm*+P!B*m4r*1nZjfa(G|SBy^$(c+m1hV#e$WuK~Jnfwuj*=vcn5RN z4@i*|+VB0S+Nn+VCS?VxTjnN)miQG|Q5iHmJBz8JI_bJWq5wD|O!d@c^*^fyLrjK~ zSip#=XNq~`XeAmG!?LEfHU(K6mXhY(hmc?N+KBdJ;`Stu(j?s-{6mPp(2S~WhSY<6 zrR9@znLlEG3IV;6r!}?`djH~loPz7)2e!qQ{T9LGNT^C7tL!cN*hF#$Hn9B`*U(d6 z<VP@*1VGXTNR2e5OawUUtJf1 z3URX8>Zf%526k5Tcdk3i1=;7mW_{oNdTPR##F}EyKQg4}*_kHV>^uFH4F#tviz^`x z?vN50@uhKV+&A7X0W6>=lg)sFKkBv&O~j#hhh3}*=!reIuSr$DSnyC{OQoclpr~0g z{eQ?fhb>DKK*^?U+qP|+m9}m3q;1=_ZQH7}S!w&-UaR{}db)ogBK9Dd=~gN#<&_QwH_7;b#N;E@zkI3Heu=1wA>{y;Lw}Hu8z}VXnqY z+x0R_dK&6CTC>ZdZ?fySS0q5a1!ZBpd%9@2q#eG!FTaiX5)X_^wf`0VwJid4o3xX- z73~D3Y$Yjw_%&M#4jw9A-w9O%jzIU(~%1X8dxu@#Tx?L=dW@(;oG{Cih8KGHXT}K4_ zB3k*lBKvqRRHi*6Nz9x@ND>0{3mX~2gXwU0=Sq*TWTJJxQHn<$tPLEZXOf#pGuRP~ z?(O|Ny*Si6?DjOZsop|;em|cti&$a#zP-Gh&Kf_Jg5h-h!w2xsCknppc8J#B5!U-- z-_FeSdn_bKDVO~9Vyj@(N-RmmyJ&qoxu&(5fqsf&nN&3rJ!?exH!cIP5S(fhIeRax zO>F8FNy2&e*&{9?w9q}rtLK#T-jKX1Gr->@Cx*LIKL`We77^mMPoEQa0(LS}IZ=Rx z?KWvS;W)N3%JsWd`}j_mF)WBvjM|*29aQfn$RY-Rj`Kv=Af{wP|{(Sd7 z#J7iqJU%jxXpEkCw%)Efmrj7uTlDhBwvvEDpczEBI)&JM=&f*yirl6}G{)$_YMKgr zL4G+wI&6^9<9Fza9J)9HyHxyWMFW^9;sx-P_^*az;QmCh^a%p&v+WCZ&aE_xFEfX1 z!M(gU3UdxnS+M2@saYgNOX{x7(aqq=HPjzUsATKyv`u+f^)lN^Guked?Hf@eLpRf- zd`Z&k=B(7>Xun&s5D~8jYll3Y+F+~_)X-EFg3(+R)UbV_=a|LeRKW~ra0vj2kVylZ&dctx6o|S(j?xa2_;3#Hi{&7QvMy4Lg0@+t&zN=HGfxx(xzAve%r8JB3zj-Sk82 zF!i-G1HOsVq%s&fHaJ}+DpdZ9fvm)v?Crpz(thxKJE4HLQL_W$O(t^My@=_Uz|O-+ z3t0;`3Q1&-3je(Dq=A<$l*J3Czaxe-HUV)- znML~+vq>Tg?Z01w*XDS3(KVXBoE1oaK3%-0r^G8O4h*h!4C}WYszqD$TP>kC%lgCg z)U%H^*&qRra%dH-2nUBQ4-rY~8w8<6CwQo1tmuWK?1^EYr(0EvlE^eQ&t9FhD+5 zCdQknN`k<6uMZ6c#9WLC+z)MrtDF>NRDVlp{tlT|tW-vHYk#wg54pyg!E*a0pA-~l z!p{S4n4uK6a9YFl%B>Y2w;J&qwO#2|$`q!~-bTX&2;BRac^TyGg0je6d=WBeT;XrR z-MNy?lFlW>IkH?Xgaw-G`Txb?R=Lr0R46AR6;rVb|Ish@W)JzO($z~wtCB)YD3*xa zz=s5D6|vS&0~_>5#Aji=TCM*syCFp5pvMISmA9r56sV*bFQu749y|0xhKV<@mj?>X z9a8oJe8LUtvij-~%QMj$5e`?_Bf75YfOX1D_2t+}tdD*&W#qKbaKMfH#%mN!Jl$;* z+Exlg**|Ow^$y$=rv!hW>DplTfZh}8UO(ld*;^N5XQxVz`0t|<1lyK$a1rGg@7=a@b^}!;Ml68r4Wi=I zd0VEUFqEVXb9mbn4pnSc?SKU?dIkxxv~-R?S({CGgvgnfQZul>EcoWi^Yr|jw>ZVB zG;^bUh&DnKyKVq3junqARw8Y6w}JPT%7qna_d(iyPkSbOuHr3te~^#ZIUs_lM8+jp ze<-* zkrbu^IyxEb^WF_R{ITZ+EmIr}WR(^8*Vjvp1{Hry{ybk||Mp_`tHqxAdkI)Z;E;E% ztdMHGl4$ld3enA$vpg7=rn7P^<#wYRy?B>H%=3hv=!_$uYhB;|nKwXQje{!n?JBFx zoWaEMY+BXvL3qf;Y-+UMFTz3Yn?D05PU5F=2mf={%Kl2bcgecWgXYUtyi7>lj#-;g zFHyCm7j%1h?NbMgVpZr64IkIwfy@OodA{3nr|KRr-ST5c89K^9&>dD%*h#OncBaZ^ z4h)A`(%rL;6h7@Tz7Aj=FP;%x95CFK$JthD#X>7Tyo{o^okx&0$K$KWjFY2WF?muR z=Lwf$tv-C?xYV3I5c}tey=6;;tNpVh1*|Z&YrpG#x z-gO*)ioZyz9mSC?^pRY(CC&Umw)t5zUFwR}*svcH)dDIPWIyrpf{Z<~%EBgg} zlgc11h1xjuh%+0s+Rb8|Ylz`4n!SBogL5Uv+;Y_PLp8ulo7v<1#Wv48RPY(8jG9k& zqd^c-tKcHgLQb(2L0O$i)F{N&w#6Vm452PpVHHRwv~=!=RchL*WS}1l!rmMMw|@z_ z%A$KJcNyy5aB(+Q_+pn_svQ@e+iMgh?IUb0)@gBlD4G5` zN8~-s2fb90=axLzqbX$cVe;RgvmWP(fXjj8p&O1ZKNK8{lK1(UNi5`Y z8d5P5@_%65ZDmTDuK;Bg}pV7{fr)|q7q5EsNcX#dh zMD^*9OD>}8RUnW8XBQ8=VUJosBo%OhFMR5p6laHbhFKgs+O0^g^`HZF;K#Ci=T-|X z4)^!wa<{r6yVXtnbpH`0dlNOA32~p*Wem29a~*=ayiqQfD16nwlMqD9ImCW{3K6Mm z(Nw_w#tl1mEruEixJ$`!tgCYj<%__(PeX34Dfm99X!Jv7%G{t2tag-LGYN_^R*c3laI zw`c5sLmqJf@jl;vm$4<&40*3F+e}j|Zx+zNIzOVs-+_4H0%ak65uc}gu>hxPs0buY z(FvFa$|J0LKM{+=Ioil6CAW}7v0M{7g&7Y;g?2#-w6*3@Yn)vy<53h=xB%uoT*<94 zEmP-jvpI~U#c_%gGp&pjF=p(Pgz-Cdm$qx*JMfxotwckgT?`)9oNgRKn5Wyix&g?a zAE__*iVs`WQ%k|TNwbRgj;&KOSm2+zUfPuu3V8w^_vZB;CI<7kKF5MRnwqnWaTNaI z+r|I;G+Cfa1h+nOXOPq$n)~+LNLV)A#5DCYlz-*d_Ngi3?z_Sx%n8{a%M_$sZd=`D zCN1w23Iv;@8pgKPZy-agn;4Wm?Es9504XguYWnR^z)IkgxDNaPQsDtVGxB_fpPe^1n zk@(-Ae$QTKUrc6o)ty!BrQete2qLgz^1+wL-5y!e1tO`$-J9NF3qkIby74g^71mZD z2-Nh(fO{U$BN6O&li+}>EpLZ3u}d1Q788sVFg|*`2l+?`(xaZzR7H(t6Yg#IWsek_ zuGr~fC1mQDvk@ov=`OPD?E(6YnHe2gRg@lI_A6hD7xx`9smofK=ics<`F08 z)e)SrtDB=aK0^O}T%APxiGINh$PZ&46b>bmTYyAm`SZShJ-^^Y>v<5AMnG9G#0bA6(;>W! zS$hF(T0iD%Un(wo9H7|Mg?!x=*AgS^BAvw`(W+O@K({5z>TB-6r|NQZ#kVQTTC6;c zGF4SAg($Ry4m`eN-^|=nq5^uq;%|=Qei?eV*cEyu1Y%f#)AH4ak7nk;O9#@#ltHr{ zw1~*wh3M8~c{=dXmy-9Cp~nZ0%)`vTzkEWKwMt4AL@P()0yx;@JP;rYHFtNd5h_ml zE)x*WaTCoAFPhiGS`pJ@bVN^X^GcFE!*ISnJT2D{-0u6l7>%LRVZmmkcm{UOMu;l- zlSgi(@qU#38>3I6dUt9MZ{P&9x#q+uB ze+5l?qcsRBC>twR`nWZSC?Hq+Z_<{OyI*~M04YV0aCb)V3>ZoP=~n^4bZwTBY+Kb> z_Az7vm|BBW5QvcSGvYVxW4w!f9neG)8-A~pFojF!bm!Uj%)IiDXUc-$%lz}tY5eWO zxd|Xytbe~ho-^N}g8=ET;M(W;S$MYDkSPX#4Rcq413??7IS9cC31CWgGK$4}V{b&T zUz6`kkYY%QL5pG4&O`Bys6$~9S&S&))jW0kWV>e`_Oe{X%4B86i^8sfQknobTW zXm0%cEZ~kS({ktL_1P$5EgqdXUm9G7sLlv}gK}vo^vkY4fxDoF?r^OjU7&4W?qoZ2 zR&!R7xzX#Z1u>yg2_dLa%-p!fJ4)Tn_1|URP2a*k9WG@w_fFE3SQuVwS@2o%43T~7 z%_c$G8rIUfA7ae;U*pXC5VQMXQgKv)pEl%)Z2+$CUp#@ltRLm>86I(ynmOiI7dxoU zahsATmQSXQnIcRbmJ3C&Z3Y7Q28@_#GHTtXt?O}vhC@#q9-7&bD_ru7Cvdht{2pqT z5W6w8jG2)gGXnUXi-tOgV7#jrra!a5*l5>Var;F)a)C_JS{HD)Dj!W$)cab5kuyiC&B6I@aDOUf>nO7Mf%cL6<{-A7#jS~<^!BeF*tqG+lNjpJl9Ecf zJ(^XB3+d*t=J~OTi^SHWCI8D~#y%~+b3jccEkOWuu1bXWwfih|K+AI(Hc1ZG<>d*O zKsre}-KauN^kqG;NaP4Qv`1l?bMxE>TLGQ;cw003dr+8Vy<=vv-0@9}OVa>s8mvXV zG6WKs;$&HhDV;^|GSoqI1G`m_M7M`I7}={+c)Ve_U$<48BIf7n6$~Dyv{?XlAmGx_ z5F$*phi!Zr;hk;Vdk+a==C`rA?lz9`J)c4-7}=q6CEU>N{((*~P|Vm2Kp{??*hA6WSK zV1ifWq*%Ug6QZkaiSc$9PcaAw1km6ODIW+C$IkbG=hlO@Kbx~4L10I99mo8mBP5gM zs4vvz0yT;TPWEV4o{8%;29q!)uKhKDb9*G;O_ZS$8HISn0~wd>MdL%>lWJ_`Ox}f$ zW!ODbE8Ou~-tIuKOD_iPD~tZciE(zOV`fEFeb?=>k?vISdz&FaYx_*N%tpp;C}PSU{H=*5qJ`*I>b z)Z`sQzh6RF0R}tRc)d87Qh7ls{`E96B~*lsv>1zFEdnQWiaQ)um}^sW*2NHOm(-gp zTi}X^FbxEm9WM0a)TAohi->#D4K|8CaZy6{eGT^9FYUz6gFenspf(gy46=V|r!;DzK!SdKAQTsv}Y^CFy8`Rqr=#$fkYv3 z&V+W_wIQ{qxnvF#?6~$~jG;8HGuTUg$C0M0PIP*|$E(d;LTb?e{9Lrx7yl*zlyYij zbW^5A08fEi_RE6H(PMBBY+1wiA;)-KU7M`mM;wdjLE$>y3l^cV^k(QmKsHyGtO8K8j!^}K71p>41Ai8yE zX1k={x7I6ey4pyi&m$|3fyG%28lQa2RKfXD07W^}jEdHR`B~59JIf+ki)L!*M>0I@ z><>`Tl|5L67ZumY>^@)pfjHzS@_v*#I9GTc&xTp!Ykj#1=BJU(jYYI}xA)^tCSIGTty$m{JpGHykie+3jy%n_&+qKZ_ zutl?#qNZ6~EA-@N6DiVWr<9#6Y{QWQ^S5M>_sR&^+_Zm;@Zw?CR6;JUpPmuGXWitz zMVG1u?PWE>pKnaBPU*D%|yt0bM1_^)YALhlNksmQk}o>-JGuyMb-v<$`@j zk)Y;pY)1%$SB%AR9t4{i%r9m+6~!Jw|3I{K^fmB+NHOUe;Os8DgrD|Y-`6C$@Qu={ zn(uDgX;7eESEm2DY|)qWO{v_Mt)DJ_A7c;76X(lN(rf_YCVQc3ud7_F__Y@*0PrXG z7k+a1rF%k__;)X?))car0p2(?Ax(+CgK|pjE&$YLJa(sV0vo6w~^h}oG$naWb(ch|7@UC z_P)JKM3RtoR2n<6GI^MbNm#3PGwEff`vlbW%xdc7Ls6>Wmq}f=lKa|4&3=5XApt(H zYNd<;hc4-v1aa+0p=;Yshbp@G#N3xpDX5yS-P~rN?#qw$+pw zG8GOkKe29Bb${MW{4#ZG5rH|zvKODwX%t-t!|E$>&*m1jhv#zGX36_&*9t!KhOnQX zyP{f+HLbW+3i>ild9I}ZifyF&)8B@TL1Kp-j`@v9nO(`c;PFZBKI&O9J1TmO@93iO zK})jv{Q}LY4SfaWtCpHeELdSE+Vo&c)HOqi_8YYVWqnN)XEDHUTr--|?5?&(wQ%w+ zJdDzSQX@Ou*?7>M=+{*v9VnH$Hd?EcW` z2vUv)Ejup!Qh=NkWy39hi=NNSxTiB1%{-QeoxV0nPu#IS*~`P}Ii^o>66~Kt!s8E) z>hxx{E0cNNXF%fsTNgEE2rwt98PmB7BdAoz)(ScEv3+Vnq;xN?`-7&Xy+kA6y7I7)E zPyh;f(?b*ZCuqD+-9IvFWG+GD)0{jS-~L=7L|ff%GNUplZV)GKdn0#ZbC`UyRSB0{ ztD`DBe)q!cE4Ay85IWge%$}X)rH$M#pQ~QZHS{vHJD3SgjN@X?QZ=L9 zZNA4s*)3=QNyie69%XL!AWp68)nC4rM!kR~ONAnaG?*+JlFpmku+yXljRd`38(N$j z*J;+VS?VfZ(2MX`+T=yOyzbGJ1hMb?{o3TZb3n)p7$T%QpKw=H&^h76Lv*Y=HG_o=Psh$$3hoHk@Hg3m-jSp&Xm>3;0DKL*znG zkF1sVgw3s51C-2xZxe~j+KeTK!vTFk?$2iIf&f^sB!fs3K*s0T58ufvF5(#r7s1xLYb<0z-ZLqW^RBFo;ZmQr;zLG0jtNw=gx{|`I;+bRZMQEFj+RXKC%|x4pCAIGpc_p zO2*T;HHYVQ&5`H(%a(E{N2OJnPNgsm80>zLe_%)XM2fTrq|FuzHfbs){-VFru#iIX zUr4KF9iI%(0`~L!fk7$Ys?+~@gW!R(akHkw`hbW6dbO|Yx5vdOljDGnjJP3G=y z3Yd=B?~~=~%vT5vi5TS8 zk$xq`yI01&lgk|O5h`d>2V{y4ngM=>ZwJ8{OQ9g5SwH>P-Fz>Noi*{jmYsiRCwmaa zESL0D$)D>41HYZfbVs4K>cOUkj*>1gO{Fjy~BRL zS@Rb9^X8U1`>Rmi%VM>4{hp(Ps@vTXDc^wOB7w>bt`vlfp^_txNDgqi7PBL|suh9_C@seQ}*B!i7C zQg6xb&Hakqr-i^fb$!$t7J|oB&5swblOL9%WW5{u+VT(=X`GbV@Tw6mtaM?ZzSUP% zZ=UQa#fnl+p{vHXASA0e#02$3&{~W`DxGw8dB6*&2sdkF$g_2_KgCoq-X0ANYX{O1 zw8TU)DYT$?vqr{6Pc19uFQy`w_OQ^FFS!Y6?Yd-hv(&@}<^4u6Vl#scb;|A-Vf5xNs*>Tz$ISGY7j zfK1DX>Gb`6e0!6!D^MsPGn4}m4O+A^WOp%EZQ^k$WhPQZP_U3Y-#)ZF$VOWSWETGL zLoKw6x8|N>jFQQT)^1%jnkU@EnBy>ej25>a>Ni(^5Exc;IfW>wCXHRF`pW>*f#Rd4 zN@am#>@wjApO*?&z&J5fiL`FryQw|-ep1ndKzb7ANk#(Vy||zZ%!dJ-=#t+)D1Bae z0Yvvgf2{wJ=v!nyy_5LAApGOzHKm|q4WP>Mfh8s}g`FJuW|xdnGcM@Z2+hs#3QxKK-FQ)tj6draa+Z44rClXC4^*h&)3(@ zld){maryl357l0sK{k|l?N0d3$*&bVM|J`d*<6%E_&W!=1;ATN1B{Hp`O^Q1T;+qY zEq*$;pNq0LGJX0r*9kndx!hSz&@g@HTPH#P`(YuO|2S*l<~rKGy~2v80*5xQ^i@N2_mVIuxoFz($e2%Cn$=J zRt!J~;>O?xAr)_I2~0zI>AVuDaH=Te5U8Vv@3ib>ozB~A@9`7eL$>>l7pGk_YUM<$ zLQ)%Rf%l)!cQk-ac$^pv&{M7_ro!mp%#YIE;=SJ@h>*KXi4kcc z7}@0E7b}So>EgAQmLDDL2!7-|^qt7`2M853OhwGc5?xA>8bleIMC6Hgga3e(*jq*9qJ+PHII2^w~#Dj{3 zi$c)r`us2<0Ymo;C=vw{sbyE8Af#FG3`2p{@SP|Vh|COZUP$VMbt%A9n=BXX?`LBu ziw9%Rm@%M&n3+A0afl$d@9^y>Yh9iZcLE5f<@c^lnLlO>3MQ3dnI>NZf>0GVBuyKf zSX!0m=8h=Cla{2x9S0QHj|VxFY@^!lz~i&%7#~~c2WS}l^!s}T5$JV3_KHOnkx@Av zdo}@HI7x4I8(9QSoTNP=HX~*;7+gFVmlSgyTnK>2crDS>4;3h8HYd@5a1rbsiQ$SM zIQ1f2QKh6$&cDF8J!ysy3v+-ZDM8kb8xsy;V86YK=(hU4-=?@pA;MchAADp-J$div z*O9#z$*&QnLF^2AY0A^Kcx^O}oSU94!nWLaj($F&qQ*(MHB`JDg%czYcGP8PK0WVe($w+)1ybvmwZ6}|wTcvN{k4v&Z`V0(hjCRjh4vb7K>N|;GEK)zFn*_7> zyVe6Zrz(K5f^+-tYi>UpN3^9y0nci;ZUYu-5L2mU)(4M!xI#hf7oHZc=_D=W$MC#@ z7;%UF-T06|G|{FFdj|rSW(zE<2hMv|W1?7a-XZ_$O92hO3rk7MC11c1a~uUr&jTkU zSvFo!Qtnm~S<)=BP~%XY^`di+3DKBHkn)sdLZ08Cw~lYMA?vXxv@{B{FhLemP62FS zB(af3{7^gV8z54scH)9W5Bc0a77Y**sN`!WCB)2lDzU3Xe}!TU7p8M4bPT53Jw6F8 zLnato>T_6~TY1@h%ogu2LSQfVh)NYY2>9#|k$A1J!;`VV@(gJ|hLHiv*~X~S0qdn0 zF$4nNc}YU^wq%`8?W;b+-yNU{K!E(sg(a?JF^+BXzN|PQMrQZ~OZT>Q0hN1;hHDXb3Wa zt~(~qHz~$0*PmbkPIB;G%JvK3sj zG|IDY;dn7oxP-6~$mH61=}pN7+d8Vf*YCk|!I{`UwzNkdde6^na6nmW_i!xs5Wu&= zY2}7uhNd9oG7-8W6G>X;`<~!K+3H;1YVJ>1N>nY$c@>Up^(coidJJ>*j8e z(v=84ys6|kIB3U<0f>vjh2_$~s>ih$-NZ>a#jK;62Y5BDfpAjoPKRyscX}Xz`%nb- z4vcIWmal~f9YSsc=ow&{SV1WmVdJo1pg^13#gc&=@x0F+t=nuY5NJ>PvmW`m@xr=l z?T7BIhuNvX{QeKO)E&w!)cNoNr?89c{p-YyaYM^p;YBzqtV(DdQnBuK44q? zZ}B$S&&H7$p$@eB?g{+l3H7O2uR*?^;Up&}*a{Wby=c-E9}~ci-{fuL3;5-1Nupq6 z3^vWwNc5r>fP(%CZ+_lH4UX(0dKukvnh@EMfUi*=-+ZeiDD32mOqA8F0!wuoBEhEN zKm^+9ra<#ZT?F?IUN+~t6ZeCN%)hAi3i4s1U7f-~Ido3J$hX(qhBJkGvGS1gXRY2r zZ8TG__*hCUCD2UuImGKfD#%?3p?PpjEGQ+(Ev%H`fPz1VE8C_kBlFeRY*B|b`rjGM z{mG_(P(U0pz7)n&p@_)*?L|Pi733FaV8@o8iXTNc6i`7wE0;)S7HSjSaAeI4{%J!h z;Y8i!20k&02N-4-nfYE(Fq;;X&Pev+HZA<|Pm?Gk7TkAK3iBBE@mr2n78s0-2>A=f zA5Uww-@IQWBFA)faBecP{zMC$9a#htVH zHwbD$fnNFR0nG<%Tk5J_DdFGbnu~9=UsiSpAs~KZQjI}r{kIG#LgKu};XbHZc!A*$ zAwNac0(TM_&M+mZR-OWJ%QfT%Oo%AJC~SO6ap2#{X@~UzxIvz;{fLW|us3q}fQO}Z znPt~uiv0I&kICvDlFl+v?1v9!U)od}3uhAN%bbDm76yZ_qTssAnX0 zJ!uY@7`YA-xZ#&=lx(6zray2fhD#5K*f`twrj2_bp8fdyHDHoy9|j_m!J4v(WP+MM#rADalc<`ph;*Qr?O+=2jik+t-GAOLx2m zsOvaO;jq+c9oOruVJRS%6z4!Z2BGRpu9aHYRQ(y-{o*-Gg6j!-Q=N zX=k(t#mjhy!@4Om1o~qgUMU=YakjKdy$Gn^1}9ABTMSDO`-}L=#g=Z@tP+7@DAS(w zyGon-dCC-+PG5|XF9E|vE-i^VUW7Kt*LuO{w55N%< z8q&NS<*P;j7NovQp`SymsbcGXkWM zNifH3hO=Se8tVNeW^mUx%rKBifDd38Da8v_0}EOL(XuZR88RL3DGd;3Tr5`fMUkPI zFFd=1O(Jl9_0oMUuaVowBk_}77T+pb2MUQ!iCMhF}u?KL!Q$mInlN?eR#wBdK!|uV`NGO%QshG}C`ZF#U zU?n3Wmtw)KoEIwHUS#0*4Y97;9wo#rpr4bXrJ`iK;KuuwQO|-JqSFYpt6R0RTq)cs z&T ziuw3^d3a`)hvsG7o=jFb1uq!sjlGIeFW_a~fEN!PPd+qi-*UhtR^7K1vIUWOqu)GD z)^46Z&O^=U?uV!@KAfsq9|$;C#5T2eH1yqh(u;(yax!`8Ms!?S$=LepZp|)c}hrV z+ISVIQwPKs&u{ZIhoBr$WMGB?+x>ZsrrqAI6SU{K<8!+Iv|I+x6R~&)UXb16jB8m=Te%Nu#o^S3e5V#@NwN&A|kKeO*03tR<4*O zGEqx?BtN$6G~AYWGhMyjJh`VAv)J(TA3<=g&0AvQjFvCE0R@PUFHIRfj9MGWs00Y4 zScU!S5*T40C))ArgU{pzt2@pqv%rv=8I)i&Fq!M))$OkiFU5&Wxsej2yQdKhCey@% zdQDZ4o)96h2BYXxr_|Iq3+!KUgN9AQbZg{`VboO2n1)!^mN8o?CFabzC~>fnpSv%J zoQq3=q1VQgwgZ5@WeMHm6OAl^$O&xVd8s^b=_Xqa(89%%VKOpxQr&zGSb68F2%#Js z6GFlVgLQQ3i|uwmlVghri*RuV+*g6Tvlh0UpOxK|RVcBwB;<%7I}xk{Qx+gALS;rP zD#3m6zYS$neEUrk?5W|;cwj?zE11Vr zY$H217^MpnoE(ZEhr(C1iZp@v_Sh;;PJD)o910Y?aLc0%bEXDQAoM^X62Kq4QY1Wm zc#;pr!w~)?aeMU9M56rFJREE}P;UkqBOMLa$=%vc`|zzjM@-r%vUfAS5dIFG#fO_= zG0VfKUkAwZgGB}!j+>CEzZ2Ku?Aal{I5BbPLHxXLd($O+Q8WMRbfB&oq=laQ#p|e+ z@jNhHbnD%X43^DAcyu{DA>KU);@^x8-Ct*rd7Yf4eUmxL{ z#|Mx;Ziif&v6h-jiEPKZ<|I8s)z(c3ca^H^cS4W#*{^L7VzoVs{Ilsm*$UHoo(Rn! zkM<6C6rpRa+9fQ;{rgYOiyXI>NFl(Ah?;RXw~8fhbo13(Fl=X3_n!K|kS^m|JHM-z zKW4TgIbjTq%A(naIt8KVGlhc+Vd8Ps%uMtbBTZ1Vw@+maPNUAdGNO%Y1E0lDp-GFreuql8M z_ph7O2GYdqB7ckq3$64kD7aud&ei6V)M8Wb&-WCj;YbijLxBzi5kxMRn%0VKf%^>l zS1%Hf#3;EDMk>5-vJhjC3pyQ6&y1TvGv!ZdH&&Z5GMN|F0Kwe(3>zg?&zFRG=1JE$ zD-hNy_h3WtA`=w}78hM1a`!0cV;UeXhV7j3a-1=P_qhYxzZvgE(N6u=XS(+PfSXWjWUfhI_V9^ zdMg@uNINveR*_$si?r0X86?n*nw0~-HlB6E`6f&)sV%u=%`3HVI_WO0x(v_=ktU|m zVUG3?y)!z6jOh{(W@f@jE=0+JyTgm=Q;QbE*3BFqm_SZlEbLfL(e#;H)rgH@qjuW5 zX7mSLHUJJwv(4qhp5Dco)i4_by=uuS0{)_tuTb4~&Yq$b^{7s9;jl-B?_D%lV$8^* zj#OcVT1nlwigz1Xk^b3--U%QmK@6MLmhz+<;)=$Wok8cin$7v_3O|B+h1wyvW;m}} z6|w|Pn>(()I(;OsP^dqeb19B5MZQPuGy6)d#(wHMk^bRh>L&Kjp^V`!%S9>s@684; zr7=d@|I_l}?Y=e@ErL!E86R#ARMp=W^8t>x$MDEjU2 zo%zrG35<*bSz&N8bA^_!#v^m`^-ps0^SCcvW})}Oc(5lS+36&Ma2Mp{X z?>l!##8STg2ndN#8c$Qi*Ivy$cXeCXLvdSXSni>FCuO z`OIBdZ@MH^m=snlRwO)08NmK8BTcQl@b-B-PnD-2oO&uT{WwLz*(2`HlVA)XH0=0# z6xrmq@V?CACF*zd-8-@0)G4S$d{#Y5;dh?i z=%(&LE2c5|UgL!O6;YcKgfFni*20ZdI(9IjO;)v-y?^1G+6v86z7k!nQjgMVvn8i@9>+?kP24g-NXr(V@T-w4QybVN%kJt8ckmha z(s|;K`xb#Z`&f@1*UESt6x|G;3XOfYr2-** z(_eO)HmE%%N`DbNK@+(n{NZp=N^+1!nmfliG|EhdD84|p%44MSK8E4#y}IT->Hd*F`U0RB3#r*P413c3gx z#(+7~ATvjGeY8veJyQ?9Q3&qgqk6Z7)}P#mH*$^@c~KuFN$o3A>F%ipeLkXFf)(UY z8&oV}WPSDAWIU!bDQ3O|)@crry9u03fYY}|-TihYzC2a}6@2o6@?Jx*srFScb`rW% z?1)DEONuh)5u5nCp_KK3B$Wra+fG&U5#YV>$Rx}otcUhMkl;RQd;GJNxk2^>2jutk z1^;elH%ukVla|nb$KO1InSc>ZRCqqQiH-M8fzTMu%U@{TM+UcTK92)sBDu4^CH!3E z1&SD2rnWkV=y7*LHst)YITxzzUc0V6H(RRD*j9Wf1eF(Ow64BOWBzJFXc<`%miTqjOt7~ zZ%;JtJkmCFApZ{lDnQl0Mn|wQr~(QPd!-pEJh~yz$TB^%peAfIx|)Ou0xdj9wZoqv ze~MQAL1)$*)!n2#S8*NlAk__2Ri4T`c`~c?A&4Uq#Q2Z;S>IoL^DYl=#)~-kJ^Xib z@!^7q2Lkn@z7M{=x>(0i!h)+Bo-Xj4tKENv9DoEl4e~OHiZZymzX-p5vAX&j3S2;3%1BJrvjaEFETUX}SZ&*;e zV4Q}gyBYC!X9`k~h!Qo<)`zspQp%&j>3C1SQ9Ftd-#8WjyuFrD4_1@L7M;1>;=b237F5B5@SQc@kC!z^a-AV82}buSG14 zaT(q<{?xc+*)-g^Xgw4V~wH$|D;s6t*S!u_32S^5Y8VF$s&7)GeDbRn2jDth4 zv3rt5xfdr*w-sTq8~S^1O$@lkJbijiN#f$|?<>iQh!Jb_2jA!<$}{8cySb~Urtdtf zX++VD^dNtn`EUp-i0UbLylucomk@wA#yV2@VL=|$A&;?9Z>4H?0a>+>H8`$-rh5o_ zm!k-5fCiU}C+>JKS#VRwcO-wfx6(znp4};l$dg7V6!z&XtQ6i)9a!hD0PCN-4R}IO zwXKI|T1Mp;z`1eb-g0rM$#*&fMV>|3b8CGD4RGq%VcubxRxBzs$}AtA*cl>h$$g#V$Xk7B&`J-8IQrP zKW9e{IpS9sk%LbdVmk`d62Ngh>f<>KlZbx#+~vu+f9rWb5+#X!d%Wds`?>D#?}1g9 zCajUX@JYSQ@2Yv^-e^GJd6s^`Xh2OxnyN*SsK87B+W@W#d5SOgH-TTQkAAd29_voC~ou4(dTSn@H9 zG-kwyaV^%EKtv?D*@k0mDFcgXp|K@IrXpOz0vQ;G<;fS}dMPycz`9uYY*;7yRFuWM9BCQ$78;T(48T;;_005IdN^-|2rPoRA?v(F|-z4Mxu> z5eGW3JI_0a z3oJ3Sor4J1nTd6JSSe0x`?^9_cQK`wmn@b=r7cI!D~5KAeB}>Qny-&$ z%*&Ld)(lCw_cIjL8@01Q$fm9V!8Gf+q*6C?$cdX7jw0vPm0V&(VI+Dev` z#1vP=Kzswhf@;CegJhv@zTd!~A(im1Zu=1#3HNlo6vd18VNeY!ML;%&2+`hb@J{W@#L*mHgYRM4+-VoaH-9 z9%NW|oBe%~2d~3wSS6rF;;aa7=6lpr-e`YN;T8*eT$idDp&jg%s8P@sBh6#*a8-P9 z%%j8il_!lUjp?0U|gr$uo$S`~ujf^bKh?IL8La?H0#K8Ez z9=d9q>3|AK=soeiSryBrUHH83SUT0YW66FR0d=ey|LREpFIso?b{QI`4u;CxMxGND zrD=}KMF1G65Bsh?fPDxYM@NbMPGyoqlCV9I6As=wHC4I(&{9+uaZU* zY~3tauqiGD#bOtp*-kZfuzlteymXVOw^r>2)0 zxR-n4f`TNm_Fgad_(`a6P?i)ypg3?EH7Jr~;rUJgJ=%W)4j<1! zaiy6hdzBAAPMBM&PKuSBrAj}SApdl!?F2MLdZ}xZ5L|VU$8C*`rKueM0Rqgv4hbho z{Uywsp`Rx#`4HCNeW1_^ck9{p6R_z*%wrrM(IWwBtIFfeTRLwTg`MAgJZ} zvIaAciF0tseg^Rj>Ae7Nths;I_Fhnmsx2W;1SLkTY9gRtj#2Ql$i_JkEj6iZx&_?M z_!)R(YDDI*bh9Ig%Q9O~p9z67r6xVWmee&U$!c{YCxN@A_P(YX`t z+>Oh31=Z~p6?70UmVRx3-hl0>r|12?ZNM?B@yssf6x_@B=GWRrSO%d_Z)0{GrssBX z!5n1~rNkU4UXBjD#8J`nMzz)o>ckK143!Nay{qUFm!6vdrGamZ`(AdAMf0Vaf<4G! zSygw7Zj9G30SaeX`UQV{fkO#Cf_zoqDbDKqhX{cZkyMDNrZJ_(= zfc*uKEl@e_P|(Wkp0OymWmZg-^r`OmEf@`U?T4ll$qH8xz_2w(7mwlTG7+r@ZRBoH zf=2uzJzkBk)|%j<0YV!a`48Hj+0(IzDeYz38SJ=|VY`wlmGXaO|AJ&#Nj(EE%thpp z6XGoNnHR}{IS%k6g2W}Pl>Mg>fv2;vUe~tga`D2GlqV+G2lKa9co}X*r8{LQ0Z^Ll zvAa30;)#bObCrYFJ9ZA*ua|MUR0^Np{A2z0WTOn0<@6JNxi*L_s!@^|{(?w8Mkli> zQK}0VHp^XQO=W){@;lKzT!a{m$Lpyd4uF(jTG1jh4N5gH6GPQ!=XW(ER6$ncihd=s zYG%&pD%pb7$d#(6>=b<8|M&;5Rf*~*qs~DA+Op+BxF?xY5{K2?PQF3d4~?IuKqTGb2fhY&1e-au0)&&@8*1_|R2eHm0JJhVed6PkR0u<7qB`Gtq_v;~DIw)r{nPQ)2LZSjR10Q7 zVlv&|5Em?&t;|zxmpy>Iv=Xau)p#7Gxdb!f(Pi*g5lXP@aiVSb>r;fPdr5LihfWP2 z|K>N+aZ~vS6Je-V6}@)xN$jM4BQQg)Zz_mm>IHvknJ0QtvN5^TA~&G_W$6NGvaQBj z@R4ucufz%Aa)U_>@}x|^?gm3qM>CRJ%+28@W>6G0Mo?I&Gdw3Ty7lv0&t}|z(-u;P zA)}C%eW1>`L2D&==;roNO4~%)->yJzkvuNL!`MLbb$oxEhPeg}g8?v3cxwoXie2Bf zcw~Pf8wHQzVCQhZ>D#78F?%-xsv`%tZO7hR`Eq=Riu&NZL4~WN3IUNaOr8$8R@6O=_p9F>&s&H}O8fBVH%GphGvml=`9S=5tnoA!HrOFGFc&2}dP|Ps1o(Jz-gtQkw=&`UFv}SLqX%<~FM%L!=%R z<#Y|6I_~CH-kzv7W8Y$590iQqT+nC5nXU;-ELznvA0I7P;2-8d4%Z@E%l&YN^x{g;JniaAM+r!wyV>9w+N}E&n zj)3R#qx0f3CC>gQ?;0_rfYhq-U%bqUw{Gm)r)MWeJ=rfirSW>mc<0Vq5k-HI>cGZ$ z=g8h_m`|K6Wi)?sg&>0U1(*=Cyf3DK7c<@9T&~eSM1n_Cb9)6jF4tYM{eIx`)JM2K zb|zZC$J+M&-Mo*2AMpf0HpcN<$g(j$Vqq@33o)YS)DKKHFhcX>PTYl*<*_2CEX(xC zouI}NiuTMTx3^9afI=hFA$fo0^AzSOX1Z!jbvDe|r|m|R;>-BSZbTw@RCOaTVac=H z1ab#8!tD6^71Vr=!r31Q0-!$PuW)hi!(Axkw%h`7_5{4UbnCL6Zbw_K35m;Q!E^p* zZw#Hxlj6)yEO*Zb>|#NIGLN!NqpD=69W$DlL_rhPyTW=|G>)Xo5)^;6(;j1`wn-it zqEw#Pe&XI;J=*>p50*-^Gu0#zouQcOCeB5_=99YIs~F$#?L0MYGc{aZC7`g2nQqz2 zZI@u!K2Stdk--~e!4ucaAZaGKafF|aT$R}a6aV}G?2N5=@c$A8Nu1IE7s5Oz(*5I0 zu`}{~MBY2|X$W@x8KQrr;O)*iyl6e@yORv>>ZrXqaSTb#izhA6U#fN2c#CzE1uhX? z6G)%f|8bPS;%~a7&Rye7IU0Cl%OT0>G}RBtG}{I*-YJ&Tx7|Rrd{TdPLC6^N4s}MT z)i%X5Ma{tvi#zc4nAEw6>fN$t&j9OOPM5M-b<#1@YHq}K3|Kb5PVvUE&B(w1;m^Uh zQ1Y!ox3AWq`S9LONHJ;sp*jSV2|H4AV=T>av{zRbe}sSj4Z@jX=a;dn0vrP~H#C>f zssclkprr+WMiPD3SInECDsh4t3~t#cJC%5|wY$m2$|hB^s{)ck2{8yT04Q4j;QbW+ z<95#-ASBu4a>*uv>D%e<(>?l&#FUX3|Cpbf{lz!G{dwcQM1yc_Y^JB9o zZ>}#^F-=l(y@96-{N{Rhp$}jr=Oix^T9o8^e-XWZd3|~PCmaNivV^8dS-?Zr+l!T{f|Hs9_O@V+-Uo(9#Pj%tzeACMQp!)yq~?BP?0(d(uo1}K!)St(A08! zg-Q|WEcjH9WEiXQI4Dh5JWFU^kQL|%CxOIR9TmY5F{yW2CX1~(1r;TDORKc$_WP>c z;xj8m$0XJwp)5_U_NNM;g6PHy5@1@I#nvrvCt{isdbk^PxaZ8P5SrSz6MfNTZ+7j#E8I7r&IotW3jy zm%2s3v2-yyd>Wlql7?}Q)<+kD(k54|)vTMbR=%`~Om#5wod?U5mRY#~5idL`X=b&g zv&>}$qk@B88K_}SINZv17J(Q%>Qduo7DT{D634bgXfWU-oX+YIPeT}fxN$xR?V&7- zS*D-4iB15S1R%mv5p9j_?l?$-!d9<;=!5b+q*t8BiFI@gZzc*ZZ)Gd{YLw*A4MV+d zBtc6XsgS#`#?2iRpxqfjSq`RK?*-~)*||EL<}uHWI@M;=_1n6=C1a;>Gd(xUFl_A1 zXHPk6xFV;!dUFS=J|N~R>tUvlmS-OF(L?9+TRmaLI4P?nPpJ^hyQwUgaucY3Ee|84 z>iWTJZPAkDG!u!38oEy|170u+wbW{~1b2({6V#BPXcl=9eL@{DE)MR#M#nTQESMh; zvl=a+P*`JK8n}0%HE`zYd#@{`C}xEeBrw+#qpK>cmBPJ`9^=YmQ0Pv54ZuPhERcN6 zR~+hRoN{0C1vA|Pa=P7CJ(R_N<9IlZSdPGLqU6zUcd{kNL80fY1HtiXck44UY!ppey42B~PQOuRAD0!<}pz`~<@Vc?lm^kWlc291U); zr>}I!V?_ov*da}ue%n`2sAgHXy95`!u!SsZkG4Rr)O5c_9>kkmlT)abE@C z!h#^o7j=UY;D{R3#a?k&+1{y6$$aUhx=7qh;*kpO$X$6cdJl4URHkEl5Lr|;M>$Z_ z+M$=kIazUGj!e0J={f+0(gpJO)|8_yffPW84b@(f(`AXcDp>?sUJclVjWZV=w&}JK zjN0O9+S};le`3|s*fb)4;EX-l*1g<}%>&u>-5#h`aL#a$oBH#nQvY%Js5JUtbqn^r zy5J>5(bl#f=R5`d?mEC1R7sa!NEwuHWKLb%Jm~6#yeFGLCK~UM33{am?NUgQdBw&m zz`szH%=Zr)nQc8Bn(9GrRjXVvcpD3)j;ao3FUMownhYp;u3(^lT6PaVk1gcFfb6Gk zXRsBVCdEszZR+g;qXPHz0Add$*#{^(Z|gaRYueUrwVqUIASScEUM{xv$7;RV%H8ds zABW?;E}e0bOiO15=6NnM>F=dON>=jH0_m}v2M<^hL_cUTE8iOzB&N^~(yx&B{S)V~ zuh#taTyx-I-j&sV<{72=*J%89E+@l|ZZ*Aay7i$NtspTKl*CW+tx%d^7J84r&7~C( z53!g`O+AbX-b;cxq13nM}@ThV1yug#P}l(9g{%dlS(!{+uwJUte&4Ye1i)$DhyLny}ba$AgY% zoE4G${7FUgoU}tMze3`>g^bR;#Nh~CzCb?DA|r7^=mY3~n4Og34C4IQLU)=GW`UYm zv_C(j;M;^!ItwoP*XPTurgEs3$fbi>Rh3loc<86+AQA8(eI5?qFGl*AdbB(#z32}x zR--lNG!`*`_tZa2H2Haljd=G!?mAsgn66teeG6ZbPmV$rx}(v&v=c#p>(nf$n~RTo z*^Y`4%W88sAA>u= zr0cm8A%7DOtj8Jn0lH;6^O`I*4}kF`uvD~J!PTDdsc4r}xS?N{tI5d7GwybSpiz(mfT(Q^ zl5ieIh>nUn@2k2+u$w$F9kif4w8ZQf)fRDoqjSJye+70uAh7>Xx`SVw>VL@nVSIR{ zt5*@LpaBIceK=li!f>Q{;=zQiKJe4uw8}M1pn>zMaYPxo$%Oyt`2a@IREX)YvTmyO zBWdbZDi7oA@K2ol6TP~;)-&A($AoUDO)|6oWX73QffH^8PB@IgvH#VuP8vA7f~?R ze&;lwu>yuNCi}}3j|*T5e$-A=y+!{iSVu$TpjP|oayI-k(9AO1m=@*$ux<3Vf%V+& z{Edv8=ngl|s@j_U#|dM%mleW#zzYh0aGNL+73Rv@dh0vk!cwOwX~7+fdV7BP;92L@ z)Ws>PR=8JxGs8fd%_v1mEwj1`N6)g%;?l)$miu^4>h?vyPqkVlxZ2A7ZU^S>WYPoQ zV+N}@v=Y%?^$%J*&J$fyfgLh?{*`xq0Tn4>w(6XfBpBQ?Hv?Ic8yFgU!m_k~1`J<* zcg6uk!QEOY=V3t`-d_?=LjF2-YPr&3E{}3E>Yl6CE4sbJQ1UYym`{hQU76)8I3Stk z;D8ysmOH%vI^Vl8TKe_-3yW6(voCl{i&uZcP`BY3NgB|o=-yR=>B}EwaAK19PJO{tv@tJklfwID-p49aT9?o2*-$eH{ z(3!Qm1$yY(t=`Mk7=M4Am?ZfWOJ*yi7wF;2jGnE^5LjQ}J=bE*?L*gp!r$GuX9358 z=%h4d9A% zGjpTp3G_`>bCbccjfdtqfcuB#62g#ms?%QYMxeVIVaQul^+<#&F$Q3JAMQLX9_AKd zD?hjHve!eq3hx%KW>8SBPr06E9Wc{En6A1!faqTcG2FC&&;vDx(wb)rs-{33{6(%- z6?Lk%20f-tKuBEo?U4JMk_{rTQGRce?=C1K%ewn}q2C#}dczk%_cN&Io&Gl=V;}r?yA2l~vZ~y%(c>_tl z5;VTV{sxF1Nh6Ls$$x)IvoRsQCBS7yp4j{|A_x0hE`qssa-XHy|(|Z(?c+ zGcz+emqW7xLw~(l+mhS35q;NJAWxyHA}p@FRGw_dm)){=9b21CYBmp)gwfEJNG(at zc>ck^GXI#yl^0POds0ccY?qBD(C9vW`ZVSbL@-4}|8jq?_p={9Bxu{r2zm{_x3fQH z)EFT5*LshhFJ}vaxkSq~Sf_erc|EfmP?Ru~WE`g%T7T|m(er2X`(H)Rv;`{jy=w4$Aqk1z<@YGxH5FPZ)Ev~h_^LJtcKP@6r`}0a#yDfnnTLFM z1|>LgOMiIeAR`Hm8Cp=Lm#?C{uJilbd4{u$#VP#LozrtS*gn&?=yuK|CM4ltT;!{r z^4<>}Ty$Rw@J0u7Rg{~e+@cRE-|UJ~Y1bAyyMtV%1hbS-=l^G8#jr_ehH09m!Y$pe zy7Xy-F07F|$T?<@VfL8dA0-rLiT5#D9lPBK&VOi@xnqi5Ta?52vJ8{p;#KssJ_c3S zsJT(Q9a_y9!Gwx9I+}0My4vsaa`Sx&W+G&FHOelk|mlP*A5%vLOmLMLnl!q}FX!-(NuB--_DWJjq=FE_ru1-xX6pJkLT* zH-AN=aepDG0TJGG01aI`78;kTCQ{|}DPz<*yEEv!e8iVSRkx3yFsIV)Y3##Uw`OZf z1ePw-rcj{(9W^uf9|~6&;0r z7XeeuJUcP< zD0lbQHLO16@-bXK_Ltv&d-nmNCLKA!eGYAPDAs51{st_NF=@aHl&{z7pz*i5N9~Oo z?oJtWcJGwldPw|%ya`S_-1KNa3(egW&e(UF0n9tstESa)JI?`coJI2&?RlGjo_|wU zn5snAb+y+wKmg1x&hAz|)|qveYB6FRd-Kc3<*Ogxz8syJ0(m9OC)L*`b2aN~@q`B$ z$efgP9q?1Nny!)Pr)q`VRf=l_cF@wwwyt)l&^c)f-^rzI#&EEw(pwWD*S%SwK~gXA0hCt{veC z7&Ho~%Cyr3U~8mnLqz|P_m!s4`&G0nz&E3Vw#U6H+Xh`%^?(qZK$d-Z`cREh5Ax3~ zfiKV}fId&TQgYzo01)tdnky+trq1l!xstIM$Gy1RxUft_!`6*+)#UDRqL(6cn6UK( z(aWb1J%hsLU3oOcw#;|uyni=~y+LDIXElI}!#OF}Yw*_W|65|wQJ2^mar7&!JxLr1 zoqvbWMb89a-Z^=jpYn5L8{2SqZl4PVam@i?zAJ(;aAy*L@xN58x8E#`ILR;% zmwk9`mnjMH1T7c#-R`Q@As-bK6VP(9P;(RuYJ6T=k)d;lOsHb!1AnA#tkIW4UN*V_ zVcS;K<>>f?;v^(&@^lV3OlX*h0jn@G2%Kevnawv4Ea0K7Dpj4g%1EC>)ii~EKY$ta zuu}_zp#_aW%_Lnc9+A4y!*AnQr8r2TyQ-e^1Og*PwAmF+JL(>c;%-J*dYzllWT2^&~in7mdnI&Bw2}e22hNgo!)YD-KkNa`IrR~_aiD$iqI?|p#L3}ugt-ankG=`S)kn)zr1_@ z;pO|c^UPGejQ%xZ%2+F`G)#Q@UD<0m<37YgYGE_k{rhjgezYBd)bVye>OU{m^w%Bm zqibp7qJQqM4cc8sxYq`tCb$P$?pvs?G*fX}#19%U0@@{)p~yE{Gv}?z&dOXMp*_|j z2F2QVTiAyg{ZOwfa-vV5{2JnD=Aa7pt58FE-{ixv0duBuVxU}b5o0az2as4PReCnE za~y@`1>DEn{PoYjqUU*Yvw+cLzMvw3yvc}Z9jM1hCQUGe|Jgw#GQG#kp#=) zvU8W+!2%luGBY+fm;Av3Lx1gC&63=<5x(zJ@Fs3~2POcLAmhqGiWNtx$f+o+_^@)7 zxigp@CLD51a#pK%@T=&Q7fd()iJ4ieoE%dwm+T=4^zYYSH=v)BjL;;*f6Slj{ngj+ zMDj3QWyyE&@59y4S5&=_m_OG0p`S9$@O2!ED{nv<$dZueK| ztC!ce|Ad9$Rmw@h>k3}F-CXgiCPkjye!NQm{-+Nq{cxSU!Z&lqh4kOnur;Npm>Jet#o3$vh;oS?`j=Fiq`!CzJKCKXh_#hdybxvmBGA>ylyK!G8@0 z{CP@t4Q>H;q{@!01Od6(fN-_NqfG9-^-3bDr3g~?C_~rE4N;5noRYFgR`7167s|^L zU%g9jcQP5}d>s4a@tWnNuIjYujxqr~<`Mop_MMzSr#@->>wh0_|BRwBB^u2OQs&m4 zkBt+lCKM#f&4aGp80B!y>8J&}!4=KV+5q#e>6ad*0yYq}S?BX1vVBe%6XxMCMxRo` z>e78WMxSy*GhvOIm%@4uq+4l=m7oOZwxSGQqJ)=By`+RsKDP62IL=8Eg;-gVqAKjR zeY2O#jafkoMt|+|Mu{ch6K5^lNQdCVaWDH>nW>p)xj)QkzJ0Ti7*?a)4~saV1-O`& zc9qhs0-@3*Yv&o*zp5FF_wrFW9pt+GW!L z7x5{63E{Ssl-ESi+PdRz8A6qw+b#I-ovWJc;6b#l%Af!e}t?tuGE>ft@5f!Y%pJae% zEWoq%(Qdcmf|4u?tRt9$)if|myM>UCebT-Lt&ncu@hma7k}oVU1C!OsAoO@c*(B)O|ogHL)U!L zUOF3DYF!3}hZco{pfk}1hAV8@JRfXT#VT(gU09a^5{N)FRiHp1xc?~kCDc`TQ$$6j zs_2vqTZ2tL4Po!XE^|J3D+mu`mOH2tfcU#%QfmWLW;s@9D5@r&BkTi;m6ZjhxnFdk-bCxnC9}0c?wB^w+$u2?|!P zN`wT3GjWcfp#GG7IYR+ZaV+4sFqAW;cdwBT10{sKlR`-$3y}-_7lradxw}*|fsq`5 zl!T@8q%zt)!^+r$Cy$YA9ML*1jZV2`ZGViyw^&vX$V5-0M8UP5@8kpoM_IAg>STha zPhe@F#ahc@s~*dK-3=4ef~9W*u2*rA*A|zygY$AlvdT*taljmCwGV-tW$iCf(Aows z_@j$m#~?*rbU*v`5zO1E76v5Gqg2bljSf<8h7eM5jiu;zePoQjCz)g?*AcN{@PCTn z<_)ti$m#@?(5_k}O=W(~H@siUXDEQN`pLJ|_i^caFykEeI(My@+(?WiC%=#|<6?T{7F>PwrBX8Xr> zoS)88eh$sCYy7{Ywa^Xp$vW67|8HA|yWhtNO6njw9?^&AyO?DMLINZY%|ghJkppN6 zVVyf7p3a{Ra*}bk$AVGM|9=ht+YJv^E(rEt9_!0O=j^vC_AL#rnE?9QHb9J#pKZQ| zEP~#^)N#`sfEhR~EG`y$B^+GLz8V&!;)NSqnBCHy+#^8){;A3j%5 zG)|@i$%=bqmprGm#Z#ELX0>umP1&0}5<`^I$by{H&Jeh7N@QSg2yB7W&)BsR5-TKX|JH ziZdHDVCr~689Y6!y?=cOCF?lJjTtTiJ)?evhSS8;{+0V6J3B}W#?og8iJ7Q_K_but zoT8!Kp@`YW1yi+s=!emiVk#)mJzK4RIMEk)WnMfpkgYuJ4LT`1E{(wnY+i_8QIYyK z_?lw<7A0u3(jm=7q11GQh#D9&8n^Ss7=s*C@D#^b35CGT1%IF|)$6$!!+Cu`Ml81N z8oeM0_o${;(MB258(GSn+<$Vd`^xO;l*n?^`kp$BT(61@!iwg4m=m2HG{GQ989nO$ z82GQI7vptNkD{IiG|o$#NlT8y*;$TLme!2$rB>+KgwJc|j2N&4q;XaLDq#63edw-f zCzaDMLpUi|MSm^4Rp#yH8GHlC3Gi(jS&T*FbTdW@;0=f_sJK?mk5_##Qf-g@+Bg== za#j=Jxa)~55J@>@F8lttlm&P!U~%n=GLRj%gxj{?wfF5jEkpq$Ss{{*{H0d`H+_=~ zeWzXIo??coObMMX8ROg3}w%g?*=yXLLrq-0Kp(VSQs-)`UFq36w1O`7n+Ip5*c*s<8X=Js) zjUcHk?vVKulCbxK1y6{pfKJ&?4JcASOI#mA_J6>+4G+7i;Q%;~bsB<5zFbr}Ray1B z2)>~$fg}o0)~3?yGXwBNv-4%M$5stdn{fnOz#?ZQPClfQJef0N?zn345$l?h zFdpCfrx)i8AFktOn*ocj-JIzJldVzi()Uw@UXwz#>k{d4k*6oKQSM93=l1-n87Yd& zkAEi&6{xr~l^ROp+(6~1nn}+%-%KCm_zl<=;%zVIcAdy*R9#n!l-o}2(y02VXQSF9 z#xS*lL&V9FdNK7m-OG1xZvXW5_3fKKB(MLWYG4kbS~^mAo4w||L1 zl)#!aUph{&h>SRyW(Z8hjS*^a|rA94aW##Tk~CDm7C3eslODXfBc%!E~N2Y6;L zZ$L+~mrak~Zdu{^sbf;USwhCd)LhR|UuN1=bd%Zf##0+} zS}17xw3dcH&AVofTm&i-UVpoLC{08ZF>&0Li#;#|L@h(XG^2rHz)KMf1-V8mu32*rRlhgR4}Avz5-cc==A88At;4vzJwzqBx36%#;Ee7JpMGtlLmP0o^3c zUH>V}(h6nlu%*C0G8pr5T`?5XZF_ypyyBpN2xkVInh>y9bd&6%BvP#GB~77PsOeaI z6#-BBZ3`73Z|$=$_xEhN0Wjl6wH`LK)KAMmsnL9PxQQ1ksl5?{iDf6T=E3@^D2WJe z#0AuusiS@yxn}=7l*DVIQ(^UagGzG=aA(l zOwWSW)VCJAb}9UKq;~cu1tfP>l}@5d^fbIlp(7PgMQ~3^NSSGhAp7-j1b=QkUcPCeI$vOkj>HE& zJk(Mfqd2;CZ7IaV@cVl`5XD=b(VVwb0yy@21F!=*!ZW^v9Tr^U#4mJfcOs$IP)`E` z+{?`!2hF@Z&1L3lEvVLj8w@^}!6S}4OV>@Zd>QVSOcZY6?gp7Hd@F|=fK;SlQ7>v* zQ7AQac-OVkn15q$xhk`}OIhHxO%jsIPyO6HEjtq1gJSpnY>UWAB}zvPe`||)1C5={ zvpCbs08SOeMIta9kGPq3JERsOFb#rI)G&mKG&Xi9o zn)ojlTz?zy+AC?jkN; zXO}o1g%S=1lk0gHTWN;k0!-;?01Kus8@W|Ye}OjwkKOE|p~Xp$jR{s&#GiIz44Nen z)jFxivx?E!tv{L8e3FM|RHGbhwGYr2;Q>quJ%6OA>-1YMs2a{T8}nB_oQjqv#bdm~ zaoTMblRSur(xpZg5~goXdr7=B<)_hy;jlR!?fJWDW}VZ&F;KE_sQnl=R!e-Hf>s__ zfWOq)&q{gMQlirOJ|`=o>eFNet!%Ed{k!kqC$E}mx5`O&y`njA0#c+5GwCgOj1|gA zc@kmeDKcE>_3hQ);Gh2hz!Q78mp#$~90M~mIG0?~0!4r8ZsW!k{_m&Yzsjx6aAtUI zer4Njc8j*zCJtJ_4hmWtS=^OKg`|ARGvrnLj{VNuIHV};A_x|N1Cg9L*YAAi%={cg zAqyhjPC)rH85Fo}bkr;Ei8@9q}t?lO2oZ^oR5 z=9R@a<_Z1&)%S(j=USw3DB=Kr)mwkkk6C1%Ct+s3uk{lvpn%N!2@8`nQG5Tj>h|06 zr3?CvoUW6QinA-(pZiT9>%M&nmd&B=tNI~Wx6OZ!)(WLAPmW5mvBJ z@MMrf+u*4V?q9}wlDM%o#j0w%u?##4Ggv`Ce%i=7sFalO3@2*~5wb`W=7q<`JY)2% za3=mFoqLKYsTradhuPzKwkevqwl4R(L}T8kprmn>S8hiz{k1nZ{Vm3?sN)K`7A zUCE$t@M_)kQhl{)c1DY9D&`QKnb2`sgt33c zqT9uDb;+|V=a4>G7atbM4rvV&t)F45kUOo^^9B1~PpK9*kEuzX0HZM8DFK?`<={eD|X z{M1eWrO3k*Xp)6llI1q9t+gm~wH$w07^Q_p-e+q{(vM`}o-Ez{_)8Y14)W!Tr-1)a zQ?E>Zt!%29Sf;gjk%nnLf$Sk9W&_PQ;T9OyHJ1fU&eI%_XX4*Q9uH#{SqI-v$`!CF zimdRjWvkVml7u8=jsq-yx^*fJ3&C4y#H<@%H}mVTkf%?zM+<#y?z?}zoT8fu zBU{YFF#O4QBc_$E5#kAp9J((4Qw>yxg*me>M*J0;O-z87a%&P)c@!2&!agHYI=q4q zZRM^Rg$c4TAL8WE23V0C$I5E$%gikCSlFW1m-kyqQB*GbYP3nt!Z;mNOpJ<;GWa+w z8GC{l3GfcI3WN9SiRy@+Jdc0AT=l`MumPZ(FslPnU1{(T;E%bB@{q@xA(TjpS^~*r zJC4sd3sW0-^tw>5zm{0K4PILx3$B!Dx{cg!|6ptz3yUy9Si^VqU&C>M#zkI0 zDjp9u5<*yeJ~(F^#9}!g2hpaC9Vf`UX>{iz{%mwR zu5~+(@2lYc5?m}|oG*}{*mqa9pTHZyZF#%^_;(H7E_+w+3xzQdq{uAB{P6zUcRzlZ zC1216|6I0uVjhzxBASdtp6qdHQ0 z0BFSrvmOZXSp32`E{R+;hSM5Xh$2cI0nfGIh_t$y1OUfILphv}0BjZKo}p|m2VTAo z`BFHP2V6SLdM(F`0)5a$+I=aFj}`#t6x@mS+Kv~v7I^{y6@j-BzHaDKUuiHZFw4SE!QNB%4ve+9%C`EJc3Wz}Y}# zj7@g3tUDLqJV%PS3VB?qsFs?vFQV91kVc0xi(-R5!okC$-TCE(vjI0!vjB2ewHaiE zuV-{32PCI_&V+x$ez&CX{cT&Pa^mO=yeuj{193&l?JJu6fIfIB`f%7$I3VuP6)nNC z8?f0pd8+;)-PzV{QW?!Dc(h)S^H4~#VMrtz&L*wa=B?HO*13pu_1Y$WY+TS zEIZ^JLc75I0(N*yE+aILa<+Jw&|U}|Ia?1jQKXs!4&~JhDZV@O`$Ip27w~JA51D^% zOMw#Twxk|j?n^`qN)?*zZeOA!zCxqB-Rhwd_(zcr&9mW6Px^IG933;1tBECRxqV5s zpDwO)V4#0>_pp))Ep!n5p`(y0w?2PJVN8+OO8GPtBgVYt7B2`zRb~({=|BZ7QydzA zBuP9cAAvSvNO)wNV{hOM_@!%4-A--Ww(WLmOl=##+O}=m?$pLiZQIs9+3aSM{lC3G zz@2lQTsdxvdxOIG;)ivq1CO>^wiV-l-un@8GilTL9|T6V~KvKNKfwAR1nX%A`8{gRbPC#RJIW`+ug zeSE#u1mGB;U?r5I6p}dR!ArCtc{kOafA?wa{j~^M)pk>Ksb92&PBOP6DENU#y8Q=8 zNU$FuVAzMT70zWmo58hI5?2Vz#IdC9b?Mn~9YB+cYW7s1tt!xmvT)n-zI77rm)(e5 z^wK_OD^bSWf+Qcep~+&eIKpr3kyWXy097Ef8+-2tUbdO@N4zk=$^Wpi`$6p_b@8rf$vX{E1M;ogqE-MTF~ zekCKistsNbVsPW(3MBnLcL>mKD8rPKCPaLK)S1SYUvSHTVJK(0i8v_Q`^}wK6*`l$ zU(&d8UhuQ7PV#m4jxdm-l-&Y-_>Pj#ET1VMDS-3P&Wn%MTm>O}U1mk=hKUOZAagAW zrj!*HOO1t=8d=HtcqOt%&l8L@)!NuhNdwYxanp2Gp9VJf2pl<`6Ze(Quk2)!F5%#6 z%J*{KU;Zq;xfwD0sv&UYSeb~BerFJ0Z|3k3qvNr~^f~XS{Wi23A}a#?Se`ko6>VDS)>~-^FD#z2yFVkyIplRd7nXcGN?JcQ z;NmFje`8(cR;Jo260tW4IG#0>y1O5P#ZK&VqZC<2fmm@eEq3N|{qSArU$$5OW<2da zed|37Lk7#|5aM7u`;*}A)uNR+PoTch$fZ78s+P-&Bo+4rt+8V64$lLCktkhr)-*@e zRfbhw$Fd}sNn=swZq1rM`aNGgtKt5Q#g56F#7N(q(KOluIf;lwbMhbbmLJ{>j1{xc zzd10CKNrfHruqnlC=44oaY8mmLc#4;0V(ugKS47_OLk2I3si#rLUmCMVhoo(f( zb26_mV9_%8`)=3kD>DxOGi{2LshKlg5zk2CPs{WVo8zlJa|T|jyNuWe>m_`i#(lrL zpkiQ~F9-L*cAzEz`;^DOC*yN-LIdIqgKWk_FWjs@1`F1n)NM;$Ce7MNF$+iP&_4qe zN*cm>KG~8aXc&&F65(pj;?Y_?3elu5UdI`N=ITZ1Vl^bG z@BHGBW})Xa1ayAI-(93ExKr|LL(FKy)a4{?96kaed6VD`%Dm9b^1c6TeEZGb8@J;@ zRBNYMSj71P%?qGsB!9>Y;;gZ7vJa#p;fe~T@14%Tg%Akh&{DNn^Bj`%tc^G71)?l; zTqnHpri1lOCd>o8{AoMXKZF!r3#2GGqUp-?sHU0mXwYlF$vXLX$rM%e{1ieRL_*oH z78075M^MqhLY6-dN{RCkFVFLdzdqGm@2nyxNgm{4KTF-w;0{9NGa6HhN@qJTevfAG z-n{4-Xo-6>U=IQ!wXixqtu`Fhy2fdY( zPms9+M6Lu?3k>e^VuJWFee-RlMB7J0NL%b=XOwz69;_AU%OuCiRr(@a0MruLR1Cm=+R3D|Hr?=2dEEh(gNXEX)56I_u^~kZKdUN5CTdjzmorm_}{8 zLplA-Gdcn87v-p#p>S3XVXJFAcGLL?6#IHx8Q&!vC@K>k&RBpY^j8B&(;*0mB>EK+ zLH|K5aC9W3m@#3pPv)SSS=_nDnnm5gds0CDI47^Sf7(xVLiPPsr2CZQy8CY|ro1~c z*x~55m|~aH{>W3j36$q;W~2#}&D}26UJ}eDvKTm$`q4?S$VSTwCMwFhDeiPQ)NW>1 zis~)?2IG#U81|ZNXKx<{%JExeb2veip2i6``y?1I%%?h26#9j17vVs$j#J$6#I?>E zKb2&9YO%CjC!%w1?28l@GHB;>wg9#nT!pJAc;Sj=E2R`qbuUsq<}2DMO6J;%{WF)H z1m3Y4=t&vm~emCESv!p2K&qix``)MXrU8d`_cI6BAe?PRj7=9{VN*JrF)aL z(%;ETBXQ2v?A1oBk7g zP^6`+zPhlaRpXhfVu~=gpPA*OJ!Sv>XnYeIi=`yXSck1iM&vzEq4d$@1M5-vCww!( zZP22ljq~UCNZ&X3$Dfn;|2a&=!Sa7KP;O>;=Kpt2o3{c(OGDZRqX2SrHk~#`oO+K{ zcV-MR+*$fwI&MNPS14u3kJS{?Wh$xk{JS(!N4xrQ`c=$wh3g94<(@x`>t&Uxwa6o) z@E=@&%}-zceL)r(O^MsIPiOD$*RsB})kPQ4roR5`vMfQnbU&gdz$R{W_L&n`CV1ki z?Zzb}Z{ym23XG1{6VUh>A^F(7xc>rQCz0VRuVOYwM0Gu13Gi%|$3$ zfx%L*iF~~Tss^|99rzdDg*b}7@|l1S6CsP0Ach#s_o?U>5ZzWtb_1R&xarsVy}UvR zSx{Yj$rBu}xMsLQ@{t@Ap$j;CZ&1`3Vo-nnWb76})}Xk8z7G8*KQDo;d{mZ6d03=C?j&i`3`7%E#Ao@62naCy1n#B(L}FVzHaCkCIE?hO3?&95B3j z;FmsNuuIzm=qu~AB?Km8S#=4^nAEty+}ygMu+2z~*95%g)o^x&A}^)55Uk|RcaHw@ zQRU!o3meMe=*^%TZmt?K5^Ubk7n@kH1o{s?_`ZZ?ttQr=Z=u>KTIx>&Vsrn$L8k0Wq< z^RTVE!Fk5AODcg?Bz(J$y=kn&VKLk9kWSfB6Jhgd<9 zi|<#V7pEek{fu%{u25(0y%LeOs@?F4qvtAq_o1iSics#CL3sT6fNxRnT& zNpT+@fmdVL@H>J*If15s5Tjs_4@x{-rLCkLPIx<@rc;UM*Ag+KX1`D3NIiwBoxBwS zupoZO<}Mm1kT+AdSTH2@eqzS4A>V3UdR(3HC>f`;FrdzU_^P`6JQw6MJ_1G*z%5o& zf~fzo?S^+`emte!v5=CJX}NGo?@GO&=up7Wp;p)JV0k&It8n#mIEKgIw{h^dfFP%{ zb{)Km$RGMh#39=sm`-BK%akyIsAhyyzz@!~AD6`ia1}6EM${VTAnGMPje7`Y66+)R?P41HRRcWBo}lENcS2Obh)Re)dkykk0IUaX&UI}I zpj)(HjfHd5F@*K3<;^!;r?tM{mJcbNFPEw}s4)Fgztiyq1(eL$bn;c^Z}7w*(6OL? zGp3V5b-v_pO(o$`@@1?Pq}%WNGkgOAhLQH!Z%Da1s30uV3%=qEP8`hMAOK`}E!}N3 zA3G$OuFBqHndh%6pDHr9gX{ZiLloiF#ap&O1S6*Z>P-lVRs$*|y^JIgP0(>W}E27+| zt+VkZs@9psMv^=Xa)GM?A%>n=B^b*t+dNQXVU``Qo;K1?Ni*06PYm9G+>MmVOK#5{ z_JhP#Zb5CGbshw7!IHWR6&uo4o~!p|2V*%Mi4EO=PCjREKukUTkHq+cfNvpj^atB& zCmUV5Rq#*{`um4J?dmWm@C0@-x1?s@oPp7hJ0QuK+nd^* z;>MnE(*HWAb``{ydQq-{=P!Q9gsDYwpSa6`8`NMF9$#+)NjmI=@Ik^XP4Tk`l3SI0 z6dG6zki3C@qcVb^RSFYVNaWH%?-Kk`qi8C|p&E!+lobhVcyg=9nKks(N`Ej6HoXad zI|Vo{tizj63hEhG1o*)uyKAi*M&jrY#Ck~?+xgf{)=EgF82SKUx8z@OsZj^M77f}@ zwK=DN;ipi)IW-Nhvs+>;u>>m~JhCn^;}l8hJ{P11w*oK~3q21J0lY3xx6f&tVwx&3 z-B}?AL&~=dQP$~NfG){nh~~wO2;Me%jH}@WA|**2=e%M*Z~(_;%Gen!;%rCh+;E}a z)9*76>A8ww($@(%Z|p30Gz><-JI19yX$YZchH>E~;Kj?9qs`GKl2(Ba&JATAph};K za+mq*3usk>UGMJkvK>H@G|m+u2~sdsO6l!1PoOT(2F(lB5Banm)g(-PKTwmJ9Ad!@ z6V+m@(XTG6?q!fL`P9m_bW8T>+@+|fL-q`^!fxy(U!VYMLPXnKirgIg*PV>YT1Tk{ zY{#Bl9L{a7^~bJu7tRn>eHbk$6uDZzG3Aa&D?axTzInP!W1@fc4@N#W;7xuzEMd1? z1>!zhsoFT%BJz->Z9v-TM}QI$q6}=-9cUNuT^n{sKY|>LFD4>L6$@?+F)q8!Z=2rB z2swwx#@ho>k`sgQ7Y&xcu(goQ6WWkw@nATC#H1|h=n-8(l@^VnoR(_rO1~fM-+J@LWV*mRG7>O!5YIn3|;;HAQTJBosL{)woSeYDO|usyLn|Ff9z8zQ{=z+?`@EA)LH(T!W*YB*7Fz z?5#vA97c*w4M{e4JJlMJmfSz7QK<3hbn2WJ<{u51?s2B*)+4i@FdpBwvx>vXXcRCh zbedwM|BguU91mdI8wJg!M)_pgJ{jbP(J(c---wdkpLbplE6E&#g!0|Ie{#HM?xE{g z8>ZRQG^i%^Y7>@lmwi~UswR&kVydIa2$3-po;m!(T83A9W!L>+q58>#BHgA-A*m%d2PjgcXB$FvxA2b9c zqDG`subv9CsJqrFj2u6amFOeO=|1DFtdK4>;*RT=_c;8$Y%WX?!{+(g3o6s`A>!&X z_uKcqD^Sa1Phhqx`aCPmyi%h@`Nazu3PqPqz>!g~H6GCN>j4m%^j!lN5CB<8kff5v z4$R9&KcTxF8zq;mXo~Rm&mO5lHxhVmO`TdJ?{0bd9VMP7?{q$mr0=?*rz3X43b*>Vnb07skaimc#W8L)?`>3F3oZ3Zm;Vl0xF2n~PH$3G$$Q$;scDyBaVCi&9eX3hVQ zWGlo!1O94T!&>+lp#j;WWT>bARumMp=$WI<<7^4#`cp@Z*dJ3*qUf=I(YI5*s63kP zJ4Hh2va=0Toq4)IA?+jHt(u%m_$%#@2+U!qbIm=HBH5&Y6)T&D&BHp@V9z<44}>IH zo_cTVpv8*3u-@9safuj6sK?Gg9UypFY+h%geEH=nnlJ8Z(gV`!o!8&f0UHEVRC5VN z_gs|BDZPKkz?e$Rz`A{_{2G#*QSSmv;u>gbKOl}=*>{R`)$Br7^bL>4@J-sgi9bN4 zk!9WZ^k0YaKTN~l-7f1MKd)>xS}p%Xx?p?t74#_kI`OYYH0*&^BV z?=j@FsZu`OZTr1G=1r%sS1oxsL|z=|cs&v$z2RqBaY1XtewUDsJv$Z}{hALo{LE+h zUf)gGYZ^B1I=u3ESRT*|?DP4ZrnghPrD0P2N6X)7CN9rj-AIR{0 zRQ3=pA6g`wp&gjJ+hw&}L&~-bkX@?0s6;aAzZTQMgM901Qg%DPV_H^PV4ThGTr7_N z5!CiW@1ATfCAz)yHNTl1f!X3hc_hu3%vVWLKOu+%>%R2^6vey|)QlQVa`YziGvTq# zRC5;kp1|Xt)>EA;S?476X(Ti;TThTh1Gq)N$jk(@5ocwT_>f!QWt?lO8$EGFOKiOgW;f zg4O1jwkK!!7Z|EVEr_zLEg@sjm)x<*;}TJPxBDdETA|Is;fF#i%cwI&0-e~yq^#j0 zBwI-w#)46V$V*z}EN;#?(vhG8vEp*ULxGeoT0?O3=|$59t4~}|YNbYta5asii3Jk9 zR4zI)qeosv97nJG$;xtNbLi>IINA?&e7utVm{^;YK(QQMTdSrH{@l<8Q2TxPTno*R zT87(yHrQQWLpK^O7&&OnlVn8#E+|`Rb@*JA)$6gCz1t4py*)57qk5+@rskkiLx4em zTp573d!`@k&K5L6C-ishEO7)Po`d7=<(uw=**ALaU~n0(#KUr=_iozpS(M<)fZ1wa z`hq!WVJKVPDDPv^;G6cnBO{kHac=zwj3?+J%Q2V4>+=!&z6>D$COaLu9|iREy&}Cl z0;WymV*g)BlGb|<_5+-ii9K!R9!wOd(VmPw;7Hv({$;@|L<@~=lTb*2$B2OY)LzBB z7V&l|E|nI_Sc*q_GV zJ^WiAx3(#K3Y=PZ;9t)k_vb&B;Zfh~E}37SzRZ#ux}~n#H1!r4pWkttKotR+1T`A- z7MZI!&eOK-jjiwKnEK@7>M`{g@#n6rZjI{r@y~ntw>ZJi^gBZPBzwye^uSf}Q_iQK zZ|{WLG~P23W?Z@yS=~!jPyc~CqvXgL-@aQM^gZe9MIHC#J)JY<2VZxV!lhe>aBf3k zJ-lCG9tV4s$H=6~P{`N$x*Nblxc)eUQC0Qvm_uImfjUDrI}UyCS$wY2bk<5h4Uu^51MLXl9Uv^*p%PJ@;Iz_9X zT8zukn_#px4-G~#FhwHpQeK%^J=G208;y@5J-*}f-LJ%6-s#`R{Tr}`v6=iZl$|}| z7Kq?p+`wVSz=f9Wy|18nxqAcsMs1EKK`G8fD|?8Z@ut~7WesC%$xULF-c_I&+QUnl z*g2L?M{`Wh0zJDyJ;7R%0iQ}H8f?+n>Q-p3DA;x zR>))xb;#Gd`B|CKY5qR}4g`*80@$;@cOOen#Tc=d$Bta_Y+ZI%Tlfx7OlPVI9wl=}nBfe^ ztzE|}YvS~Sw<5S%ZvP}*?icsMTbI|jg+o)&IKb@6gKysS;sAmJE9wqj#>rx3cg|*t z*iVd5_NvX3ldNVzAoea-|T7+0(M#oR_Gb1Cz4fbArkWZ`(=^4F^?96FA&e4Enhho zD{xRKF}^@FSZ1;^v+T74HaUE9TjzX1q3I5M%2pLgsc|c1E$kjG4HYVlqd`ip?0J{Z zVpT+g9T;$)ZZmGM37X(L%9K>M_u&0D7arK>*hEiWKHzE7{_=`erj+8AmMZLNXqV|^ zN{xLoSrJh`UDKB%a=&Vq>A^h#>!C&bU8Ix{*%Dof>%M{+%aB9(pE~(j>AL1w%;K}{ zLU1>o7C~S?O}JOQDe(|aj57wR=HCTd4K;~VNj28MgX1#0cL>HG$3w9$dD>1;<1K_? z#tYNM@BrrY%PGXl0wQXoi55X?^<(NY&R%{KgJECpx-_k?&4@uWWXtpp?a#B*kw|(? zE$#}~ryAlK#n@@doHt|zXbh*hOja&L3*FRut!5tGDbIQRZ<~1+{pbzMKnZE5num#3wib-Ek}jD)km0J<_}(y zN1)5^SbZ+JfaK5J*t1dlG-zLl%rmnfn1`7H+cm@o1{1x$^WdY+#2Lv11w0|nMJaXV z&4@H!fs+1Xf=n_;bYSH|&CB`r)%M3BuQ^W-5o7$$#`riUVbS0LBx9Z5#i~`Vw_UmF z(A!)-vZ8h#uRw1zwHPP^Sru}8OLMg~1Td4qmECIW?u2dLC_}0HqeRyJ?%R5#AY1EY zz2U%M2fx#(zJ%I&Fdakw+TX|q;CENExuM+WR1X;NLoh~m=Cw^xCmC3yf{0yPD*r_MbSO|XO1N-OELK=e+ zEPMiYSYa)#Tz$yzYQgH&)4d(u`qSyK$=S>}Hq8X&F>`E!=E zz2;~r%V@8}sI`%0052J_)$XP~l@1ab0iRv2qap&Lf6A7M5Vs9i5rDZT%~Y%5O3W)dXO9GTzdatc6Sso= znp_60;j*dyV>vG zaS&f}I%|IAYB-3wns(+|1aK5`^i0BX&D*iS2T}uwd*_nJ=`t7RzDi_8ma%IrjYGuk z7AtsH*09MXE1I^z5HtStld{Vye-p|4;vREb5`9nj0g9y3>|i7nC9mCmik5`!KkmlH z)O(&e>L-NOBpsG$=h5Bd^02Df`%zOm^olnLd-oxA^rTi zT!-g$)~ba6GjV08gx0?0Rk|Qr-A$AF_o73zL!5ct6;1Q6B#=qe64eOahCw{HJv!FY z9}5kJL~N;_#CU^CQKdfhA&7gR_GA#_z?56A+}NamyD@b_Gxs5#_KCev?<8QsAPQ|U zvPpL+D?&N{&+Z)~U0v#vsn{2GymGEUi{QP*?$^I2Rhp=ezkw+orHK!;^k~bZLaYso z89wHX60CRPN`NNsyhUlGu|Y>nqH|n)CZ-WJJjLDFcL*%FhqdJIt&6l&H8x(gI`?M~ z!wck)K6TE_w_u|6#ktgtBg%f+#2P8aFYXqfy+f6k)1-%|Gw5}vrE1-T5m~XtK`g$- z(gFd+UoY?9K66HAUKKe*Io0vCn=QnB&uy62jj9=zGl2Dz=%wmL5%b_SW(1c@=3l1M zQ5X651dii6m8etRh+}c;{nt1A_0fj45gn&cf@yt zNoUA+J-|>OJR$WN@IgKW)I`G22nua{S=fDF=*Al~^Oyb1CJ|QS7wtPj9S>ZkR!!~r z#qv0;AY51Lb5-*ec`n^o8iL+v${-+$FprD5^{CdvM#$ug?s4q#FOA>t$}w$a9lmqB z;HCcidM3K21uIKrz?09HmC`P+rvpwUyHs(P4Y1>FlqN*Qk>1Ax0my&dIQ0yXY4M#Q ztzWJxzJg1~)=A}No?0Gq|53QP7_zcyYTx{H!6LOno(JX{`w9KLZid+vK=q;gUQe6h z7}?I$(~Uo4KjuPS zvE@+yE&nt=k5cd4Ek1f&d3<`RupPNXOEA}N6~$kl8Cq#kRr9h%NX<783(cYb+PD9w zQCZ(QHe_*~_1-S}qd(!x($d#Q{mpNy8_1jE#Eo~giMzbbDLBs}Ny}`&aq6Whl4-EQ zNKp=c8I<%9qOXPZmpxuQokIb8aJl3V)QURUn~U{s=BuIKltqGDTg5oyS{qs&)1KK& z$f5hQ_f*Hc7_!VavJpP;jP`TU*e^-8CMXu@9Q@43tjp z31v*I%VL(kg1=Dw_-C26B3pq6UnSKsIHTA+nmA-A;R`j6%p>mM;wT@qAXxFz+;wB9 z|MI$>X5qg9hXe-48aGcf^@bl9MZ-v%(cP0+1evJVtHSWJf51i>YV(Kt;K_~nk}5+> zDKsRgqhO7fCs8=y;7qUUyQ4IB2J{EOPU#(D=!r?R5q_BJAy2uECCND?g{>Rmt)H?z zbXf|gafEXri!R72W^7yUiyp zsXLth#2Fr(Dp%9$71JJWESF)3=kQx_zIB6w9r3;B&5u(Ob_2ezL&>hS0k5&bPw9}H zs}$q5HGvGMvIL{L5+#f)EkS&Sz>0@u7HsWxl2G9+xgk%1oK1|JJk~k6nt}};j;4cpW^%>UWB* z{NDA}=ER;u=HsbK>t^yIVxOM&`Il$;{O3JI}meBrMT`zvq@Ia=Q=rS*t^9pG|L0t{2-ElUBp^f)s+#{J^z zJrv%t3cB84K)>&AzN|4Jxj_i8H1cfW zlRce(@4j=Ggu-M)85yxkKr@@b^jyQu%@`9cX`X`DprJ*$_Yo(tXB#f>j5zFAmFeK@ zTgfsGE)9r}a>Ihlir~j#-gsL%4DNX2`j0_4^mZvo?tK6y6ti%S{ny*5x41%<4*=Y| zf85(wCFK;PeSm`Ffpc>(r{RKuivrWy>xt_esJ?l1{aFH zoqE-sllT?%>&pJC-N*`*S&&2W&dRk3p(1?T3cQN-!>pxi9+xT6De)-K4B*znw-5Zq z__J!;kW_O5B1SxSpz!aLgb8;HX`@#+?AG@SvmxQn1B}{et}-*}n+2bsJm8su^O#N? zRT%~4r9#7Z^X$3?|E9r$xPCuf%{}s%i=Q} zOP<7du;Rpf^&c9%CXOl;CcspSNgsy>->-b%&EG3HCg{wjXfeZxf7xn=PGSzO_HSpo zpe2!Y0rrTrU(Py@k!z+UYaJY26Df~({U?>p25R$EYN>N%)Oj)!K1=y zvWQ2Fsskh0$314}M1-`faCeM&z->xmVg{QtBIW=W(PIK@Ldn3Dthe2)c;M$0A8vWn zmO&Of9jW+o%L4bPa$dN3cMjDzg0zh&u)&~@FdKo|F5%txEZn41Pq*UQXyBv$X>HM= z$HiMxzCP**gR0r{g+h;;}i_So|a@ zabSUe8sUcKhW+tfJy0K07aKitlU) zF3#bR#f&X-K<#`nY~lKk#gPrXC62S$>U+MR;SUbDjZU3Le4sy7!i9N4XhAGP?u_K0KcNS~}lPr&YwY#j-npwi*D*M=V@*D&E_#G1YUb z_yVPa41)<<#(rrB!N>3lrV z%s&;MKw)TYDMLb7E8kqBoEC*O!cr&A**0?`WjL;ON9rf385d85aV2A-Xl@zoGl7|0 z6T8otr06E9z_Uc+i;Hl{VBo&LhruHT}C(>F&P7f(h0KoIp^olOX z3!5}uFYZ0^zd@##VKCC{(;hAhUFVxW9ulO#5Igw@iJm`PMUfmgrrQgzYAQ1!<3OTB z2>AB+2~7i@H$Q!4pgo`t7!>%r)^&~CzpG8=6>2g4y+0xNS`+yRR6s0tz^0B+9n406 z#ZT&WYS2FyUZK5Q8Y37cT`~Imt4=1VmE>TW4pyD0Lp}ksP4Oq;md=&SS05L`yaMD^+!I){R}!9N{* z#j9!&rMNeON9K1;g?HtRan0Wxe{NJ9I1Wrl8~RX2ai6$UYN4yc8wj9$q+P5Xaq;JX zT(FC}OP! z4#6C68GTOe1aNyK=xAD&$$F=Gb8ape2tR&n!BDM(CDZY&R|n7=D#bz|V?kv3ScZ0j zG>c}G^@&sZi;J_T*3n^mVVgWoc-0(@K$+CI(uY>Np6kVj#!3&ECHqXtfOGj2BOUg} zjji|q-?l{r-nB_nUt`!y^};L7mOu>OWn#;z1sat}D2(h_8gURG{QqcGl(0u7d8f@# z^Ww`;<*mpbX%LM5JwFAis10;ti@>&Odx$p>H(cHmx@ZT$Azg%n3?c~bOXBGBSL_mI zsa0T6B2Wc?fL-QGKW)zBSzY6MXpwysXfS$O{wXw}h;dq3wWg~Hx1*GS5UIxI-5V0$ zWlq9Hb_#9f(IAZ4XoLy$UnxRw2dNt^{PYFQ=8qD`TVV~Yx>*BIia5gx={baWl0_Rb zZwF&URHIOJEFOaTxRLJ|rV4Uk2u=8}*LmEB`)5(E_g@*d@%lu!9zWjw9Vy~pdANqg+P9CVCC)|pyVNkeupjlL7?xB8%5!{ z#8JY2S!fo~mqImOWwYV2JuxKvK4pw4`>_D`88ru1`uD$TO8K}jQ8!mXY?hdjY=f$| zCAXiX;{$-Q;;_IbFK(DLXy)>JKx+1Z+H)X?^WsmLahI7am^{@C!}YunFYmrK5Ne_SUg%K8tN1jcn0~sXSa8XJUmL<^`FNzpTVhEQ3+r{u(_`7 zvt@&agGMl~U#uVbkYM=JH*ay}$}*&u__4f4kC}B~^>E=QB7BzG|ESI_|F}jH7wpmX z;XDHtL0(&WwgP+x69UIR5=zAhBE8~<;64LqX|3im=J?|Q|4ejH|Lnp{BHW1*I|qat zihUo5^?{!&vZJjw)1`ngdJx_S^*z*;LIt*5UzlgyE&pHs&+mnY5L;`e6SFY+T%WePkR|?q~EK1l43u%Pa?EJMP zWS9yvd?A>u13XB`+iz0ghQRCk?%AC^cEF{1dY`znK+5sDmpo$SI*MhG#f;u?a&tN<4dC&<5msT(yccJ0}E`J4m5xm28xo^glk9wEn-vN?( zF8^kIJ3;ZGUsiVJ5Gp9A9{)ZwxI-71A693ztX4uhE zVC=kI&f)Kf$6K9@=~ghYdkS0_4`9MVJ;ydgFcf2^jNAFO%UfFcJ>QRT7lrQbqO#`sLaF_82(=4U zg8Gv7x8u>wg@h5?CyF=Ezz5NTH-{D&<7}b4_E?#p<+Jx=@ZVyh3`|GCZ#$Uk@chj;R!M9oSzfx$4S;qn> zRS_gP5sI<|BkB6MF(;o z+}`ROfy&ZFtTDw1rX$&1@_rJ?m>63K;I{(XCPyYg7EFT5Wl=2;+xp49b9iMjQM7(@ zctSJsQOPGVTt2cI;jMN3!A-aq*h7&B4cDVe&;H!_80n*k+c)d3HekB**N<_K8@K#xLdP*RIyAJ_pW^2aF@|0=z1#%pc2_w(*3ksQc-M#zRX zS1hFzS;RhGXSpwp-=d|7$oS5`;S?7z01K3AR&K?)v~mnQ{H(Nm8*-YA)Y9@@dWDaA zJSmw+nL4sF?)j1{#z-1x{E=c7dkL9f`>L?A>&xZ&Csi}7A3PtDUYz-n{A`LeTJ2CG z#*`)}pGQh^W}VdM05v$ppWAl(f-_8DW;0nxDu z3;+3XA=)B!y#6T2S=|UjUGB3b7yhv>utKSk$=lqtj1N zALWtXb8=+`QEHSCLXW{z&}H1x(Z^S66m<{OH1CxSAJ0!TJHO(&(gIRbOOTo?ko-fV z8F>lQ*cfxjE(J0UX?jTIhTWc{f!L-HcMXtwu!5pYYpQbC>BtvrUTi>^h-NXrumT(L zQo_p~+|3m4!(22Cepsx_Dv^Jxm%@;Q{3eQo)lY{!SEQK3HCO>3Lt@T|i(MIBTYkQ` zLPBb4#%yts{ej0)nEm&yWQlv(=NGq%Iuyd@xMZT-AAef%@~BKB|61y402P}jdDc_K zV7bgFIi)jdZH7pkL@=zGIpeA1&R>y#=X%|CiLk8o8rfg|*K-+Sc7<&6=z;~<0n~i~ z2pD7Es+=rp_Q}sJ()@fh5CqE)q95t6%mt~PPzX$$vS5l}}Td%j75ZGXQ9j^~=<`!d6x-i_QK>85D0x5)|ung{0 zO1$Rx^xiC9jy>NmFx1WBcrMOZti%HfD&x7D976i)SJb~8e^2vveu98Lx`!*o9iCU< zXNj+w%;kMlpPtj;S*PQ3G0d{jC@w?yXCK5;0Fxl$H4Jm$B-bVz-?I7elwcG;%pAJ} z+0QGd{^(+X3r@d10HMeI`>4FoBiql~KE$M%LMl2HLFfB70q22ALhvbh7>sLaOH+|QG+IXE~*!W{^(c8AK=|7A%;n>f*T~pxi3vj$rORCC39XzXqBj_lV zyuWnxDLCrHAKcm{5+p@3({*M15KEvS7KFHAqS>epY%My1pLsT9^*rooRmtQ~g|_m{53EHJ;| z1lmZYCOMYIj+-qoq}k1enRcX8kVF~3te}S3C2<#Qh`Cj^zD>yCeAKNEKQq<>gCztO z)PkMr%lq6N+fFphUY&w(@B-4o5-Oet%G4`qkcu&J31Cn7+m8`4K%`wAzKzy=3Kc=g z;y@N#3e%qk2}!fl8-IRRP&sIU#qTgZ$h(N_N@NUGBF7%YsdCV-5BO5q3XzPQU-e<|}E;*l|y z*d+WKGoVsBg&S{*<4-x_wmx-dC@n(Ga4BO4zvYS3NtP56aOib9Evu7hZjH}THfGi+ zmWXf19x}@P&tR{zC08$h%>ErQoVPiCV<#AbVRJ`6`d(`r011PPf?kZ;-qj4MIR)M0 z7T|byU>PuNPjW4f?Yjh5S5;#_STcXwOG{gJ0>Ct{FQS=_Yq7`cQ+!64_5I+slSLQh zHw5Z^EoN`9PpV(9J?0P91=Gbt)U_Ua-Hq6mpJnNs4 z1FZSq0^BgCa@&~}JNibsGq2Vu7|Pw- zk`8iiLo@>wF=>Uv-xDZHtgF0xj}=cg03nT@;|^RCqJ?CQ!Z}Yt$ z<@~Od)*ueg`tIxV{k9v($LmnI5Q;0<=IF8xND_t{{%p=0j3Al?(Px06P0+yv;)o8ws+P>*{l6$Z$+Nux>Q+h?CwmDo=n%6n5>qspL?=Blx8V)+wn6igYxzT z!*Zg88B97{w`7?_R&pQpfCm~*boA#v?+wT%yr24>eE57enTcDBqu*14V~zY4n5;h_ zUuCjSn7yT4aBDvnH*!R3VedYHTr9IZ5YN?XSMh#RdgN_4Q+SQkc*hxD!5Z&l0l#%A z-J9raCpaUu+iG%K8!!(!GCSX8q0q) zChl*;0#ildpBKLd1%)Tc?-o%966*#19F6SD@|22}PTeky-OxCJ>B< zZiX|=WSKzk^oj-&sFJ(81+<|~We$IuhQ%3i+pbcmkZkfKk%u+&dJ6s3JHLJjjvj%g7LIS}wkVH9errNXTjUp2%keb$TtYz_ z0Meb;!xK;gk)PFxj5-U`M=-m{B}VkQnVuS$PNfIY<@Qj>tuLS#6!e?Jf~S8PzSbKC zZBF>(&TVkM8BqTKK}b=ZBamV!cW%wu_*@vDLHT9*Y~L3&{>3 zM4#|MAecJl)kfaqwj9r$-8m?p=;KF^8 z@l(`Zc*if7yOHbq@#kjOLpp!>tuAU81%Tyve*D@ro8#`r7EU2l$2aTu*#Vl`X{@at zQs#!pbDIYgUYH|rdlc3W=D%v z!wI@+XiZy|Q%E~BH8kaC?56cEvz;o1Aw9R5etxIQgiyFvTh#@SVb~bZAbq%|EE0Hw zuM7+-g;+6Z@*JKO?v8&As6X{b&je$Ys_p_9tYa$_7yoKahlZ-NlVdYLB{@J&2ZbL` zpzW|(hol5PwTB2OcXpGlYt$k_l+qUHb@z!b-F&$`?g=~?&w3k5%{3Ab)UBkeh9ZI$0CTBL0Gn!aOj` z0S$<;H&cT=AgJ(K#s1knf%W(R`X5hwJbfcl+4 zN8gOu`MNix-He_={w8y(2C0W+EdSjMJ(;;oPIKPjqCMAr?O4}4s{C3Vj{8RA6Fg}d zO*qM8_lo|I%zc=-8@vZWF!k9L(*YGPO_+5CR>= zJMWhm+5CV1!Wi%5_%PO_e}UzKY);x$6~EmeSx| zkLan{?=N5MoWE6+gr7A7nlntr%scbVXfeNQD2IPc!AtI67HqruO(_m_H#4W<7bc*L z=5AhCy9;=;MoQ%~hvW3D;3hN><%KzuSn484qVHss-v6o4ZDeREu2Wr^#|yHZMxkEi zXD}{$$KSeYI4xB5@aFs*b8FP;tEq@`8Y{qQ?S9nw1A?^ytm`TKhrj+UdRvW;n~Wsa z8=4}O&|~tLVYB7P7Y^Ren}u0 zl80n>bzM%Ks_G9BB`l)&$NatCUw!>k9z70MH2N0)d%XH^#ncOt`D?w8-rQcTC=qFN zyN0(VKDpgq=>=Gn^C&L_kwtX7zlz_yzP|kx7Jq_QnINesB)oLHxe~G*x)>nQ%_bEAead1b_efr^4*BN+@ieL@SZ0w+?;Xj$8eXm4)XdHH+L$zZOIY zO6?AxKkBE9+CvD!&9jeXKV6imZ<%@gZuVtLWU%nI>-Xh26RIFAD~hRH?)!;gcQI@( za(_Z;CgaEBzG}ze`rYk!!DwT?925ChZ#oj zwa4hRtJgbqs@;oPkJEyLk(tirV zWg!#&0N*au{yn%y1RF0nlRyeNVltZoj&>c-=7z6qF(Wb_SW3olp zUg_mTo)DH~_CPUuy!OC^iy6ihB!6)b7L&L58YhK*jWNPgVg0Nvy?cTKX1uVPR;z-h zH=7zY63yag=Dh%=h4 z>F0oClneQsOgU=Bp&1+z?3qB6rb+zifWGliuHO$$IqZxxYg=%c5+Go_3cW4%YUWR1$YeBn#q$BnNg>&`@hc43UNT0*BodCHHX;Lc4O36 z`%dj+!#G9%eHow%&JE0HaOu`#*%;>;q6h6?MatsGx@{Fq*W=Du+DQ(MPhFc@H)GiJh50Hn-$Z~WDV+4_*`EPobV3anf>%`OHO zxPp6w5%6@ST#(MB-4|m6tjCMw55z`lMaJ!PT5KUL8gR!@01$7%0$^G=5@e4d0zYmV zoi0QM(dBhgw;&}^z?op?i*F%ezY1*x=;LA3GPHn%WmI^uGl{x8C@3|_1a)B5(V<`^ z)OEVOIR8ik5UGDpfaG_RjVTh zVpceO)7Umm^h!BSEdf!2P!`V-Oc0h93G)FXEQ#@kX)8>mW&eaifqM^N^r&nulC$Jl zAl1Y$wHa`ko$53xY&L};%e{TKV-WAD;L<)=qH)q?(aYx-)_)q1FlvZ`Xy5horB*@| zL;@-rGx(E9cA4@D$)(jT6+(lNvbJJ$$HSok!gQk?%%BnFz+U=tkqCj0?8+&j;Xrvr z;S4DBCV+`ishLJ9vp5CC@k?B!$dng?D#>zp^0j{^hJ5%!JEc@qhBt=}U`#etFS_)n-`4z_~u&j4T7 z?{Cnh`)*XM%kXXdbzi5o&dP@;JrR8!l`zQJ54IVCV|?Bw=~s zOG<$uj(_o@_SI?n2x+<R(I^M?IG(gRB)+h|k|L}bx=pAL>8xrb zuVEd-k5(dqYC{Azl%_GE(O`(^O>}G<2>T_wA%8kl`@{I8OEQ@=wI@iEXVy66wI!5N zJxo1kiTg(-Dq)bS^iW(ACgjz7WO07&=$xXqwWs&69rt?XoZ1`fzL@qyXe!oxw7{0F3!E zenI+nN`_!id;T;JSS!{NS>aH}N%<@|;>x+r+<{8&<8^n`4Tx>u?bUuwwH+;(H1z=K zd#4SFMaBs@-qSo8G0eEWdPRsEmeF$3$$z>T0vDA*&7-M(*^joIQF#)odhAP$Hc-h7 z?=zt6Y2l?fPa-cG0LkMY*FSbgp4I*rD7~*AcgtGG*1-j>CnWj*=-e~P3`@siV)~hK zA$QvhjoE9q02ie2`SUzCf&!-P);Uai*<4Pm#~`g4eJ}tsSFxPd9>5Yz&fMC`Wq&4M zUS~-uGu9xsXM_DMPs5-plR7274QdKk;wIR$bG@SlE&_=&sFJ(=9;9GQ2lV}`U+M+^nVrm71WBlp*w3ZVK+F*if8TV*X0QK%dT4FG&KxyL$bmY`udc#kC5A;zGG4(_KFE>nDI4^ndz!XjM&x zEJ698s^E|#bp0$0O{NWM{URYLle1diEHI7ABq!YWm0t`?zv&jKqfAAL_0e!v9TmAk zMpqx5=C%Q)`hB10{ont%&?TOZ!&Vt$TwpJ4>mRWVqO?^$3|(^^tLRXUySCg{7U?|| zMymk1<33ttl4|}j$01D!6Mv;a#3X7t@MJaw$-$9hBxG)D+nsTPoL2WGp|l2933|{> z>SQ=P?H{_PUPE4L-w#L`&(ICq*SSrvpXV9_QGDINBnw+t3g9#WHNG{6IH=GqYmYy7 z(P5{XXhfv8*&06$^}1|kHqJ}R0aDNKnBJAN9RIb)l z>Sn~jmqTvTJOF>8E}Fr@nQ2F~*mv8I=&fpXCfN3M&G>UQ0MT}R7;ws&hOt2QU7Fl% z;Z>~ATY21>8-)Gdsik$dGUwo7%rC8d+jlig*#}WWgGr*uEM$$x0VQyNSGG~r_h9O7 z4c7k>i8hdz7>OXyhvT1k(@@(lk)O}jE|D|n6*H?^tEB$h2xfI4?a zGAXVu^Emv|ibQP3s`I}LWFSret4CsRM$#GiB%|6FrPm}S1? zNbPe+x{KSj9?~XRyu)?_)&Cxrw+D?DS+UUby14z}`Rxz=bz-*ffC*gKRfZ$mFWGfG zt80KSxkNYC`>H#RiJkUtUDPls%JJY5C@erT~0YkyUr7U9VkYi@9%hB}H9xo5uvm~EOPlY&w$0L8t2)P>^zqwBzKv{+9QCfypTb|zX;$_Pas`w zpjeB{q3liz|A92DMHMge2^4;J#_>U3m)Zhg5_0C!EPrHeH@*v%<4~h;;~LM~PcAl5 z9NXtn&kSV@x+oM#++2!_n`=!&QJECEcb!BNCREaZE&Ll@Nn=N4I{O8t7l8RkbK-)Z z&41(m6gC`%`{)jjG+2AoeT3P(|ET9LJO_G#>2#fWOV#y1pPd*Jv z6^S^tsmi?`MWXnF<~)712X=${P(P}T~{ z!bm2m4*;g$@fVAz#LrIbF#uXiy9QJFeTGM#x2yZei$f_7;;;M+fA?j-iU@tV@ z6Gok_+%z=kyC*o2v_7}cbVmqqO?Ta0pSKTbPQq^Km$1bNd6Pk3Coxyyuq-&a+FT=4 zKfQ;bZ#0dl{<_`NYkhlARmpu1wa7=!XMYknp>RQP;f_K;9Gr|et~n!MA#@J`C>5Sc z!YR^86SN#7de-k0IL7x~*Coy1l}eYR?M;MZ3x#F$P=UX|LBm;Mj#n+*F`lM%4dcX( zZnSjODGKTv2z)ki0z{^X%FPt|2fU+kmh&j}N`8Sbsk;JDgHV=dcCe;4f?eQD8#~h! z6~Is^WW+4d_0e7Y?Z5sLy#at(C4@qdCb<-ftAZ_)FlGjWOHz4|Y?ZB)<2drV zT&a~GKoH!8O#(CkYIpMu{uTXWPR|WPaLJXEmy}8+X#velcb`6ex(B}nam0d{ewjb3 z-PITGvfysGii5B5`|j$uE2dru%pcV*cztuVj3Xg~n+k8|^yFr9r59j-LB@lu5K&$P zH@mCw^{eZfU$78fWg?QI$nnz6`by+QB$MFg;VS&$oA)7me;vH0Hxtey^Gf*2JfWX| z@vboYEJd0`A_?%Pdh6p_KWDK$h={T@=4O#~y=`{-4SP~-!Ra7N#_5$4 zF{tj#zO2T&54z24;kN}Yua+GgAp4w?fx(Z z+or7-L0{r0J$_uaL0eyAi6WOt_&`si>z{A_=G)GaG;#+IKi0?F!y{^E1Sb>9s<#`p z-!PW#y6o3xW1Oq%aGbkf(|5a|w5QuHXg$Q1=+^lW49X1rd2-G z@tH$&icK?zWsJaoTJYS4BSIZVah!?paWr9eev?t`V1yW+iAsSm%l{%Kxscofg|k%I z21u-GLWBiuUzclV=VERPj$S1EQ*2>rR7h!U!8ZGCS=EF@$_lJsubYuJUeO*bPLV<8 z<%2Rjr<{vzj5kP?RlVtY{U4XgHM{_s%n};eM~l|iOzM+=-8JoSl23lX+Dklg8@82N zipe4bLtG=A>hFVE@|oz&Sms=Wj-vxWCsG;*ut*eAMW?UFL*EWTxglPn(7?DkIb}F* zlFyHuq|nuprm#WG<+68!jig$mmhRH-j>~&fFI&90~K3I445VRe9R^d0&p$+Px zD);qNv}rNaszfM5a~UyLJffS)0|^RzT7r#MZZl<0J2dOM*NnKTgMHbL7S|x? zh!<>sMmkevSjspK-?r-iG}U2?B&3*`;NWD1gJ8HQSJT-*m`*0$hW0#51rCi1tl9Lz zu6$C?z_}D@lS6do;oQK=p&Xm8J(Umw?q`$#hv)r&8~)I2>vjxw-P&36VyG8^MtMJD)ku{St(A~}2kjbPmhi%vO35?S-mJJ>D^Hl1#aV7M zKL$tY0HbQ*IDtytb{%MH4mQ^Xv<^>mFyi(A!;u!JggCj6{Gv+i18AUWjc=U&aCejy z(g~2~T_8l107Xu^AnxlSnz=F|v6Nl%_w)sf$#-vmBG5Mnq9dK+QV*zl0YYa z#!ojCW&jKi_FYeZLlxL=l|TdiMY*)f@4*x+h$>PEiA$L%PIcl@*4SP49i)LWB7;~1 zh1qk(X`(}La}Ni0d$r|#Nxlr~jS|j9%%KoK4$bCVS!Q6rG)w*v6ojuqz2H#-=!mK` zAS-Ml=+YM#QOaj3QdP=*v%e@F4;OoXn$7Hhw(1!nO|bHg_4}5bJ5+tMAG`iU$;l`` zw=NWgC%qy~dns(fL8%W>VPOTgtw!6;R>#4TSXh9z<*uHw4b-S)+~zqE#&Fp0w@tlX zIPt0T1a2>fp}A{KKZS=Mlw!;g9p)N@zA0DR<2HjMGh^li#Je}&e|udpf_WN${>v46 z`)ZmA-`?q{pyhtP7$cD?L2 zONvlK|Ejt}J5s$l+lWy%J8M6c$av=G|3KWe2ndHQaAJ1isw`!&GIjk_>6R~W5~n4| z48?}wwpq{MMRwQ_QbiiIpnwX0M75M+RxL@G<|O7=cz4)QwHdovnE(-rsZiR)$fr8N zr@V;Hcx_o^QA*{+!Sd&`sUoTJK z-ZW;ZmnX9{Aqnlwy#4E3`YSEr5dMHH7a81|rs3Kb9o~Ym3aC9)aEk z-wp(CO<{y|NUD^|1LJ0YNHfDdizTGJb=b$v4EG#`CFM??n38RZqL+i3MmL96)oPM$ zeP0iI2nEwjm;^l{?F4csz33A-w(vKjogf;pa^Zd;pLQ! zGU28LAIpL3Q{ae{KYbvYF%6wsUd9_oz5JcSj-C~>TH5=$_9o}|_(7tdsmQjvyN z^@-Gr>bZ1U<=~}%%oC0|H*$PxMw^yIY1i+{k){@7VDxKW+wRDW9+ncg$Z|oUE`6fV zuu!&=sankv5(Jszy2YI9WP8xrKPO{qucRo>lQHTBt#F=>7o$hVX`IDYk=)zzgZdWZ8i9XH?bH=B+o zZS!q()G(IgL7^=Uj8HmNDvV?uca`Rhy;pbIBN;Jm&d{vM|?lme-iRqqg zW()eOYN2$@*peoOh@&x8MSN23B5YNagi(K z5e$3uwZAK>ILRu|cI-Udn$cB0;|8gEJB#P&?UYAZW(iI9jzZPeY?@aF9HiGDQe!diQd)l(H@902on`KKk|v7dkxJDP}6Rty*W${^B>&ORS#7fn(%osUj(abR_IXz zYS8+B(9`t74ihx*a%5o&TP*Zz&m7VyZn#RdRu3^@7a2lzHPF2h)sB-=&SEsCZaNXo zqsGyK+K2DM3+)K3>nN9K?j@42s!iqL#hj%fQzm8e{<`wv6{qfAOviK)0Pvb? za*Hh7)nM1_n<&jaS*r5d!2fwZKKa;E3s7h+cN%n#1!MpvIcS^BVi}u%=XZ(@!w=6z|7> zfQ1Sxe4wLv<@^|(glTS-m#>SmC{H=F4~{s?I4J?QW^SSe?uk?9BocRuG8n3q!G3~P z!60ip)KTzCLB{;Fx`NzET*DPUd1;amB;93-Flxpi1^r%EHKh&wGYOAk;p+LjH#a}N z`|cR333Qf|Ib&b$m5w>bxj5jA}tO^J)+xhDFr12qZy zj`E1UkzXDl&q)GE&(jfnIomxF(2nMO%S|2k`|WFZiBGO>Fl2{^-;qx64l_$@b2^y-TNRQGGiIfk(|DNE|>;1 z|C292|72HU(ew|v^7H>+S0WQsVN~O7?m6-&@7k1kGpJar4SnTDcR|{KK`SWLLQ?*l z9t(1|G@VynR`*WztJz!(i>)xCWep3NMt}we7n$7RBkO`&zdPMU-><1r_v~dCg!^9mn<`3tM~4YGfE! zGc;4u245#9Q*i|f0FpyXaL|UAt{e5Q*4NvuUcg>UEmZ924BwiP*ih+PLz@1{vYPNe0y`Eo{#9Fd z%+Jv1=D}xdM(eR%>iB=S_xT@s-+l}NS`0p$ll628jlEf$Y8mx^AHFo2zJ}Buu_W1S zJYe2CIB4F0xN~%OE z2F3gS%xG3sS@k>y$eNnFN7E@Lxw>CH_SL>`5U{5}f4^jGK4ei}5Ri`E=wVGJ)Mo?D ztgoYI$q5p@(g0R-BTfx)Di04}XYz&m4yW(7dh$r1&~x)8mo%&h5C<)NZ^N&@`!RS; zU-=|ae7$5zCIIq~6C?b+dRS6M)#AQkY^d^rh3N~4g> z?H{tw zijEY2n~hu+StrXqDOM!Yi-FgbI-`^J2EB@i91;my~Qv};+GWLe9WRCPz>ltt9{dFUw*uSmCczJkAJ9a&BPH~%o< zVFD2|H^jrZa&A_XEh$>E&6jGW-fwqkca}xH|91?9}e$-b&!O(p9+$f?>f0u#t&@|IgOaJ{f8fhwzCvL zf{lW}c^?JtTX+5W=V&dbNn{^likun80i>W&`Gm)SOD>4}ye}6{17?r?>KO;1@nlXT8HeQZ(}RMFj92SsR2M(unF00jc|J)XCz-8(46ki^ zgAhD~wMTZlrXqJ!9@11K!pq8?#L8Jn%=DttM%YNDa6I7X05Xmvs+f-83ryKBp#UdtK?qQudaG6?lfD>2mfK81JweV5QGo+Q$9AKWsGz|><4+I{KwSg+LayrO&^MY| zu-K5h=m^VaK=Nh-?{S2FmjAzc|18>UQDXjd>nhtw%U4O@J#4e8h1h&^4rd;NJD^GzEHs zRP-RfcUxe*2JSPc`y{1F8h;O=(GZ8w=mIid7pdm4a7ccrl2=&c1T(+)-t+(7w)@J^whS+O@)t$ zV>a+J!bAxbzqId54T?MkQiw%=j@ET|MN{id(2rUa*;fy*>X}HMsRI6O*CO)Qs)|9~ zY#RwD%7N^`M580cdgy}9DHi|=Xcv5{tD*y|HuX}X{(`&^%==I;;Ebwk>QYsqj)3+y zivbi8(eGq32Lnrg>aEI3{9DxrOvOrFzNk70SlJcBWWqf|Kd^g-dQSwtw$IpzieBnq z-I|;U5`dQ;%;O+2h)CLf3o+BkPuksfTLZR(cs!QR44{QY4pn26`>@A{%X9Mc<>$Eq zwusZXmrs`;M|uFvOaF?lJ}#DkGIQ?rl#=r-zrAVdoz|y+F;X2L+qZ3M;2q?eW>-1+ zGvfl1iysJt*r0qXfuA6ciCIYSfGxpP%81e(81<~EkUt^Oibf+a$RHqU7xOsemNblX zSIWA<=ptU!m01jVI@1=J4QyrtF)KLuM($RpayO0wopDz(TlVOu6%!%@C?-RKBg_Kz z3qmJ)4u9Ys1vbh&=nK*~?hn^jSJ}SF_MnQ$4pji~YrdBGEtjG=10n%Um&G^(W&sPA zEI9)r0-qn3P&os!5b>HkQccj4HatI(=dUo}E0+;E13dwEmrpta7y+o4XgUK+4ZHVW z=2KVzolxpsUQL(4Is6hp;{z*RKu?jd08)%D{us~08BWQ;m@$;=Ody^*=eE^TJ+lOK{Pzb{KbB#UK50> zzCky<^z5V00{-F5cDOL1PG!|)JyJ-38KS4;pLY!oRPj5SZikMb3IY1?7G1GAK~c}R z#o~1y+*PeSZZ?0Od-(1(heMN;Z;qwGbI^?S`HEw#c*cetc%UKdX|_ zhto6s@}T~WADeq#b@NPnj{(cf>^ZL0czBvHPFiVw+(&U>8! z8scE=KO7G(^|*XF8WK|Tg)4w-11#c{64$={{3|&J@jU}%p8~rjAjKk&V}^dp_Jl`j zSr}O>B7qH7T+Ao`hF|{&8RIiPmoYs96AU*XFd%PYY6>zqFg2HBOanuIjaut&+sGCE z@26maMM0r9movlR1t=C+x5jRYb~jCwqJUErv_#qLN~D&gd@1?}`zn6NerK*EB{_j( zBoRk5=lY%RoZ+uQ9I+s#AM^KWck%6qEV%D4;@}7T-e3HB!PJ7l{I%Kz*UO8mI1(~g zuCO|%C(F%+-hc%e53)jkM0pV`cNgLH_lxC!uo0Fr5lKm^o{B-T6dC@$0ye|jjJ z`zjb7s^G4AC~0*TN2!RJU&z$T$GYu;b~8Ovh$!W(Fk;=6{loMNJP4G=jO*vO;nPEx zoIV3CBV1fDo=3S90scXo#!9&NKYx7p&!8X5W?gpcU}%F~IjkPkm+d|SCx5r$zN;4n zq~~c4n{BK6YOMsHIKiwAKbE^HDEpaFWhA9J?{z@km(i?t#W2(`p)(A~BDOkV-_`xCw_;NwidILgM-O{L<}%T%8Z&D-!(k0XP}`l=sZ zwpFldcRP46*w#%IRO@=En}7SDZicEeA(V-*Tvd^=vO8{M=I5cqiqq$Pg^JH_tLPNV z)o1T!IZ{L!V%7%GYdhOaM41#O+hQClR6y5#&>!~uZC$N{r+Rn@nsyevIW4wsYWI{n zuMJe8Wg?1cpD_qY5fwg+F9#P8IRb*`Mt~6cq8!Syh$q5J#g$a$_J2_I00EU(t3%gS z4P`E!-3KL78^I69td&_w@GcAA~f_o*j9Zg901XNwM>Z)?6#x_+^ z#aRw?;!~j0>I684(tn^2V2*X&@3-X(?12Xpz-te~{xHnbaFiDsT>v1-tYo?5SRTAJ z#=zip=^C6na{*7I%)0J;9aAuB)~Xf zb0LQZ7>d?iszPE6QqZO;k60|NlfSw7=^wKa1}x<^4ntUW@_%jk2=$Fw==$b*0sM?v zo=}bcH*Ge>eo45J<@2ciZCmLCYT5xw)L!Wb0I(FPOA!`jv83g<;i~HUYJC~>57l-X zY!1!J=OArSH>k8VGSL;!plTKgiI${*-mYzSh_lOpfYp{(r<90!lw_&J#~*M0`q!V| zFFzUw@>#50*%IXr*~^hTS?=6Prx#lOt}gGkm!Uxe7ZQEbc7!e@EstdsbLO|sl_lS4 zm&!o{E*)3}hcRfRNp8i;rRG_E)q#K9ckN*hLRYVqm#SZv6+#0%0T-82LIWy)Zk0J< zMDlMn99ytPj9f_$ykOi!#EcyohccGzEz0}MM9 z+1Dx0qQq=JSH8%l16(VD*PZ;?!AnClf$^MCXtOUOI4e?v;KZmDL>l#Ukpsivd1jGu zqZ32|U_IT94IGs)dvCP|xGR`{(ON6gZq-h~He})adCKD`9l2ZK6sFKpSpn5m*}SVx zyMD58UiuhBW1fP(&Wg3GdNAz~w!jyx*NR?qvg=@B<5!kZ~x0%BaX3#;eTCh{_w zeGuC^*oZy(!V*);=zuGSq1x>S&3PcbRaf@`bO9XZ6>_7Q(3_RYH>H>c3Uj60Qt~qbN@Fw|&e! zo(bdkq_QoA4XB{%p_Io>Md6V~BSHq7=r6u}quVUpU?S{Po*joT7*sln;4>o!gfuhk z<@=3}C`R7mnTj8kWL3F(FhK3;JWxEdtyo|0_P!;Y9+YNL9!oZtctitA0RxxAL<2Sg zKPH#^L<1TGCx~#Tml;I^9W4EUm@0}W%-#3xsxB4rR6`1?hiykgjDC1)Qt^6yZeS-f z%_Nr|(KJr?!5x=kMFS-h*G?HtqEYE>jD*jONS_x`uzb*$nneQ}e{HM&=^Q3;CT!b) z3Np(^u!Xd6MC!zJlT({(d)2nmjBIL_ghe8E?d3VMkRXX^jh?7+Q*~;gLcGYsXG9I* zBicmQ$jk{X7f})0fdB3&8>VUE(Gcgl!uH+obxp`fmdOMgz~V;2;pMo$OQmp~hVPB7 zOth7K`p212*p&IFf9UJ#u3BmONwZ*^j!BgGsUZ!vG*uYduJ-{1j+5uv(G+b5V_&T0U01KyAVZ1~sR@l@acZIxsCFI5ap*O3rownq{31p+`q~JgXBGlM@*MKJ z{~Zk)rxc;-2Nd9=85Ck{G_pPG`=i2*@;(~Cz22Nl5*AOAe+03q<0OrRW=B!xVBy72 z79qZHY%%Q0y&Dv{1fv04Y6ZXf@L`r;#ISkc#YikJ`1uCBFdKqgx`}arxI^9y2lFv~ zgYkJ<01{0qgK@x33a1n z=R!Qo{my1|O_xk6nJ42RMfmkpBZH5Puvfm<_4!dAfA#Q*nr?jwN#^!U(G_IHDDU2% zHYytQR8I2FOYVw|V>SSiRG~H%0%!H7(J&iXnu*-+t&{0xch_#~6?F!`^x8nv*w3l% zx*_BG(P(}$mz2}uJl0alkeNdqkb*OzBW10n&Zmx@UPA`cl~>z?YqvO@(P zO%pqOdzZUO11EnR&#@-)dK)(Nf+zGYh6p#kIz*X`yEhHmU1e^wcjyyTyG4!qJv^^R zaq}iC263|KFmw2Mo-NQ}XQN0tSMCclzx`O>lU?;y7_ohO#g4qEL3@B$MZ>WJLIZ_o zR^~Af(HD^;Gbei3x;kfXqF@Uw0e;G`z0?29WmuKofCPVbIrn1g2=9ByU9Ig%-baY$ zoZxPpGvCPBX|)fZQz*gc#?40f(Tf-$U`bNE1-pLWcJ!jk_{*^~{`hSM6mU|=+=c+6 zxwH)4O24r)Z_aR7%=~t#%@u512=0Dz4i8fG+ROdND??iRcNNFd8z)}t&VcI?trUy5aPcT_kI zr8xPaK{E~HvamxST&erJ1O^H}sTTVWL08fOXkIqKYnLud11*283z8LtDYw18joMeM z`Zt;g_HHQ13kT~s9*fa{nTrLkk%%r)Y=l1gp=;q@^;?zZM$WT;<+`khq_2ra-Yb!- zOF*Z5oa!*NoQuHO<4IuVBb)Zn*yeD2MJgjd^Zw>llVr8y1U*J?LoLT-IrW{r8jz6b z&5Z_iUM6nM3n6JVT9m@oxXBfS^s|i@7_vK5HfXd(#{=yw9np%jZz6=-dToqgI=zgp zil@l~8LMUm(;$CrzGPUFiO7r~fB5NBa1Gvlg@jmKu_P0q!6Bz<`QKn!E;ZsxD~>E^ zlbhwm-|_Q*3AX2TmrGj%9RfBomug!BLw}`O*>2-T7Jc_u5SRf%W2_3RxF?v0bSB7j z(CMD(ILL!L7|f!_T=_rz^@GnpTzjwR$w&yMAMwA^ z-_Yluzt8nPt0=(ck+%vH`BcBD9|rY^F-35O_02MO>PsHzZ$lP_L14aZ=C8*3 z_FdIi&45kskKTY&Hsfw3mlg?ZM9j4>{Cm7GH;d;?M4_?j5A$^*th3G=E;(dDYX1G+jEDbIyWL%sd;bW!C3h%wD^#1D11Pob#}7 z9qK0KS$f`et1u5(ns8TDK_cz0doQ?w2dCvk(OKgVk5wt-!^4o}CdXbc_XVV67b`op zxPpzEcJLnO9uEaG=XtIsK@yW7H8);8czD0)`%#r9#hpvr@|1Fih z5sP!eEaX~*JISiGj$*0{f$tRYso|8|0mU}+#pZZb9Z~@yW zp(HoQ`1#Jp(Jhq&6)i&eAKSC*pia|si%ha|x(W_Mlruk2n4skBfj~7s>$=HktyLDY z$g;w1JB0{W4gnKFsN8yd+*XoWp0DAmAmG9;wqwY5T=)hov8}-uIBtPMfO!Twso9q*r>y(^ zwm4Shjj{k~S${WWy)NhpdhxKSC_%|YD#)r>Z|FV4Vzl!csZy>#o7xR6kfs;RMkNPe z6H7QEofz${i?OE=jl+H%H0oI^VH^(i&~`g2p~2e~NBX|2@JMCCo+G&yg}aY7;q1XB1Z471v_)+rVPjm3oiL>#L`f$ONW zv@Bf30Hr7kLFwLZ+z$1ATP=BvxL?FCS^&(*BZKILM5q*QoTRacl@NM_v}gv!w+oR1 zdgGDpC6rDPkkQE*t#X(aLk^&GIJdwv_`wm$(|>Hu2|#dAlFi|Xw8$VLjj1l!3jArMZ;CiKNMeIfZI2^|!2>=pP*GMsM=bp<7gIcrBG6` zx7y{SL>~-OPy9Ais*%xsX#HmwFfRk{W=hih&IewIyR6n%w;Dr{2pMU}BpJf0KlM@` zj_u-Z1O6r!(nyFeH#|>|LpFiIo@ZUc;Sr1#91=Q_i8r%=ii5>X8JkEJwem5F>$a@2 zpuv4m^I0qb3&K|gdi&Mr(|#JnAQH%&j9&h52Veb19oDs!6d1s!;>}GC;0C8eF;$`8 zxE7)jA?Sq@2Z^Scw)4+A>>;X;o1rF>wTK)?JIdr8DedAaCUjO*c+jNklG7N2kv zy@kV`6bR7vDxrgxm)^}hZ6~S+wKsDHtFMwJ@A%uKSs1vIi3&6+Q2HpvYiPTj2^1%i z){gL=+>;EuhzScMsWDyxP?FbTM!4zJOA0kt50PyA1H*>arN59u;4N~oqEp!Q6{yDj z&>&jVl3RUbqu~Mq!~kdVC6DHpUZ2et9gkE)ZUDFpBto|P;n!?~~6=H-g5!PCduG!Z+D z_fYKyj_D0GIq&ElJ_3Ou&31c+BO}MHE9lNKlWY`7YKg^h49U4v_+*i<_yv@NM3W}A z9cmxn`K71NwYn|?8G;ry+h#r#QymQ5b+Gu!LKy$(Vv4n%$pj z9jsc{-R&hs^c`q06AIWF$==NNIMASNFfc)P(JHC?GDe7Fa)09-5nJ$psHDUtkGM!e zDOGZB@a+vJ{L|Kl?K}m1>uBGnB`8m*!Qj>cHDTf+XKt!y#7Abt!rx6jItg9RF!Xr*(w5nkB)WX; z6e{$DK}p&`qf|5Bv{Y@9%0#x*=J6>RHm8oc;O~im`el9V_m$A0^2J7NQ+G;exaq$` zk6F=Kv4tW`e49R780#Qp?WYYahY|*1;|c&nA@5i9g$m@A-b*Vbv85w$gb|-tZKMF} zJH^hv33t6G6(kflmW>lEsAkmg@wP=*l)jW&k|!HAQaO2E_YNu;+T^bzvK}sL3|(&J zlnXk5kP{)7M%?9?kgUan zm%vD{j7xp4^~@4WX^x84a&oF)3OK&U{~R?qj_9ooAqPe;eSDQXrxvp(-vivfA;7?5nV zk?-#HeaM5_LdF(LBG?)N0X^L!7;ahDgOo-Kb1sk_+F~~mkTh0C{Ag>c9Uwgb z=1W5v?sbq<2Pbn#{rrU1)K~g|ap%hMGz0%kQsC{ly=qx{@;x?WE-TRc{&9V}2dmqFs5o55zVVRr_&4__gzn;FOt>VX6Wq*Ne+$^4e{tE*8 zS16Qj?2e)brbw#2u446kJo?s(LwW@eCn^!d9&D8JfegvsbtlXHz}A@{5mLEJEtf3& zc6MRUlFvr8D8gF2NH7J@-hps6bJe!@Rez6_v}Eq4I=g$?bg{B_xBK<>t^3*QCnB8@ zlWZyjl-LQko+=c7K=!7SzhHOda=y^kx%+8%uIedX<6J~3ba|Ez&HT+Ho{f6cr{VW}hx?ryvBFSyS9Ss{LxfT_!30@k=Q0s4qdTh!jdoc7p?sbU7{? zvv~SgTAwt~^Vr2JO3eNvs(6pqKS*JJNAcwXI-K4rbJK7p31mx^i(P3sY}{2E95YZ(qu!UvaXhF>X9mOP_@Hxq~VZec3JLY_V?u`ewQ}K1HED2XQY@d^ydY9 zMyQYRPhRASuCkp9JM=g_OVHz(b09?8buGd zIoG^4V?kvyb*S%Zr~6RjPQ*7?D@(oTUB|~H5kiKCo^RLE;QfaDq5Y2Mw{!$bD35L;_4-`2hY6*~{E^#Uylx0$wo*88UQ)rl))q^XeGVh|!s~ zYm8fl6*aP9dw@x)DXjq%<@eF7>$vz1nmFG&u@n^`2Auq zy2Ci;{y+KoPSyeguYmTMX>Qp>F*PwTgO$pni#yMmTm!SPD3Kn>^VH$Xlq>j)$)62B zMuMebJdbqGt#<+<>7@S%u}xUL&Qny`m{HpVZvM{*ICnBg~2Cnm0~WuQZ zK2Js_g;~~mQp7q*PTj2*+KOv8t1C z%Wp^X4a*CVOC4q=!)-Y&kd+}Rm{x+jle@?y{od{$Y`Yt5(uI!&^HY^g@MO#kKO_f{ zUzw+d3-Vj{r~?Qsb+%+-upZA@{L2e9O~HztiMT3im_$$w89=gAsHd4f6?}|8Vfz;( z9xE6aL1A7NX;66Tn%SaJ$P2wFG?e+xC@V}{C8-n zw$7%};pMZN;oJl}!q`bWd12S}Boh`kvKw_2f@o@Q6$3%j6L>3UI^7r=RAD{s#WRLMH@M-ZXLrA(6N3A(1@Q z97z>`y?TvFZOgVyw7+)i65+Sq)&j}GSgd$in9B@da0qSCIRmH1XlnH`72DTr@fJyM zSI@Aw*T=p^nKrb98MbERTyH5wLVA+L@NK0vI8yKlX&x*9w6sNfz|s8YOjL0Fl7llSjZz+t=K3sfDzo zlN5Qsi|O#y0(mm`AG5+?HK#qo7Da6OHjxHD%7ni!(z{F0R6#Pl?{CN)LnkSvYf%IE zB+2SLL= zQ9VAV*@gSmps9Ab4;|E3(b=O^g|Qt=@ei3&v^LD}r|3S4CQ0c92*blYCVG@FEJ?1K z35_q7#+Ml^yPb^8oXjn0CTl z_(LX2@oIo^Ljkqt#9vJhFh`TD><#967f^(*y~-ir8ZdxObS^TSB~p!|wC0F%ps+iV ztEH;*Xlef#@+VI=Ojg6OHAm{w`Mul+@~b@8va8;oMk?j`X03*M%Si^9Y8n8l`pz_; zEP@=XEKG4!y$W6vc3jDFDWT6W-LMD(Qjaa}R~Ok`@HXCo5*(b#p6HL@Tkipghx~DJ zj_YEQ()`4@1wsCXX#!Vj+DrE8TsT}XG5!UrsWx~9nsU9s6l(unX4SjGztGV#l9<~a z5ZHEi1c-C}-DDq0&6&X8X%E1S6|l4_rX*E*g_A8J0o3hyRLFqRO@w{`%5;AWgRWEV zBB{-kKh5YSD9q1mdK)9)X&Rd3Zxla_kogm`t9u}0`$+4aN33|Zz=7i~v=Yi_!;w$k zWg75R?155&%A*bl5>#Zl&f}_ag*9ie8{zDdYoOEhpJ+tjuo&AgqF+GXK)$04w9CV^ zFlFRiQVozj+ErgYF)(ts#scd^{uEfFA_j}34U)RP;WMbfziHS?1xPkJ?ae&!CskV_ z+O-5XdMj`a0R&va+{?%6m+VCx=JH((ljSZitR75Z^J5^8o76EYkfvt-OZ@^t^THT0 z>cROutLB_LBxBpdOMJkV-DEPZ+Hb+h*aR0NAe!2M&y(7F{yXK?YM;1wn5GA zcJG7Cai(-aW<0DzL5A0`w2MGcD9)v(J#3CQ4Cy@)Y@tNdsAQ2gi64#yn}S=;`AxNx zI=_99%2PP&+b^OA9Je5{kY-yOY%LNRc;7C8r3JIc?>S)an-2iInwGr$F#;{k#yH7r z8lN1eSV|>$%-@X4zH#>L6N9yp!hIaE=-6P<17QY5GlpOR0$hy`>5IMaCxSyZUqjU3z{ZX1ov8cHB@hA))a$sS_^PG`!5)<*M zVw8D`qf{0fl0FUyQ`_^)kg&so#Z@v=8Ip)-46AiQ#2SLuRsS@nR|$lVbo{-6ra&*0 z;AllypA{km!dC%e0#@_AfkTKCq1*vjMENcQdzkC}Q3WKkQg2V6vOPlMVVnKjS5&Wc zl`ff!FTeqD70oYaR?J^S0WtdvdW;dT`Tr`La)>bXFYI|^7_l8L*sYs@^pYZO!QhIq zdxl2y%dWpk*^OGFr)6g0j=ozl6M>Z$%Zk$wd!ov+9;l)F^Oybk%WoUou!O-O(af8c zF^JgrVqU_DJ;Pd;bOJYh^P%Rg*Zb>d$m!#PRmwv3jiP<-U7Kw=;=&QV z+OtqV7jr|o9Dmw9m+!XucVYa|NQrZXZzZuLNy1dFr#;~Pa&3!tZbL}d`8p|9VPzc+ zbWI(K#tO^n{$W2ly_BBk=~`c!X1Rr~Sy&swofkmJ9$9E; zGxlT0Dbrw(nKm?U^pDiC5B}0-fE|Z1~iE~tE<8@{&?O^|L?N> zi)^t{mYl_jl;WhS#P*-0wZBbmI5#8IWGT}p9Mse5qboD;$~)i|7iygs`!~-gkJ-+A z=Xd~=$z_-Eg;177B=&{T?Rp1R{8e*@3`*}(NwxK_tXVP7p={D}skK|VLX<21QZ`KT zrD<7B)k=u&4(`HYDpu|w0xlDR1^i@81bTGDUj%PrXLtYIJbGg>4>axYe!dlMJS)|k z*F9fxpfS0FKsGFeS^B>lQ_*U%aIFrPyRm?T<&oe=iIR&a)w(+#HqOc#9(B~JsFXZ- zI&Q@R;Fe7hi`kOabpj)~=t}xE|0Ru6>GD!aN8u!?0<{#nCRHNc%AgL;8Hcs@inS09 zzgz4qS>XM~h1U=eM)|^-oHM&D1+0JCtW{)WhHU zhnQMwyvqZAq;HG8{Hk_56t;6Yrg02JbG%5T?D92lm zZ5<&s%58|txwSe?##+Z(ySWo}c4j~Vq5(4&#VjRvx_o6;>!N#0BvN|=<{3?Dxf+wg zFGZp1^E^hY5_-zKvxDnCB_p;FOKh?>3zxE1%efHy;A$GrWst}?(LXM8QBy@1cWt%r zcUu@KiQSdtY@T;jw)1V4vp>lp%|wjXRskpqMoOA82i~1*<@Y++Eg}yC$OM4y*2uWe zcW^pb@Fz4@Tw%`a(J_z8Pi7U-<8SLCJA{bRn~2U!LS#4l4zaHO2Hf=a!d6hA;Agqg zV`3HGQ~3_0(Iw&jcdLcGxAK?x45$LaUA}+;R4y~WMoJP3N4VZe)WY1QBj>{u(vNrd z?zruW$!PU^oPtf!aSd<7TLM6835pA+&4HQ>O3fniT_^LVdybIj;spcO>eak`LbD2P z@{`YGxALg|V>a0bOTq02Oa4TxPr)HniGDIBOi-v(jV(FNAh#wR?{Nq;U?^=9Iz{+^p+O)>1#^$Bh#x#OV!@!&^-WYxgOR<#bij9 zF&EvYP zNV(dM`bbn=2UHdpTH!HHPNmI&j0r$#FPur8U-(;{nN8!-r!qaTKQ@j6X%noJdfc5c z;jgoaPf+I^?ekykJ_5kN9S_;`AMBsw6)UBxSSVK?-FUQP{rS|N7ECZC*P~d%xNV$_ z`k<0LZ>__=$D`9?E&Va zoU4nI=1!T=L%U3zhmnUkZNB?rpAf9Z!~wM%%FG@$WjfvjGA5 zK5aYN`#pnwTTOG8di3|x=`LqITDkO~6ef=9ChijX)ef^y5Zkh%j5FX<02jv=-bX_| z!)gIzQo57i5t6xjs}^q5|54L)ckjdAvh6a6wX^WZ6ETVq5{X_(R-~AnCwWG;Q zNFMIhYdU$avvmS$e0ru0C}FzE5v|1w6gt}f@oWfY-=dGw$vtf6v@vvcT~M^kO^3|; z1sK}5t(WYs%e&~1vZR>ENI)K&U! zV3->&gxu3>_MY$=Iad;f^rd1OmbBsX;WVu48)kanaJH%6xO<{Vj)P+yYvaA&D~w_E z)%`HPm}Z!J@ijO+#4`v>_D_6l8kX>KSb{jmPD2t-S+pg)@5#pj3`Q+d<3N6R5x}?$ z3nh^pg}WqxWg7!^4KZJDyO~T9W%0Du9lF`=V*E37G@olc4WB((uNHH}8#b;Sm$LtI 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

VyMn1}-3j8_c_+4u>Pn-%$^AlO^=HLh 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 VM~iC=XgJ>SNCqLH(^|?5{|`idWHtZ* delta 241109 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ⅆkBC@qZT~NdGl&;^bueUpblC7&Toa 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 z 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.5 E F0(.)A -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(1)203.445 E 0 Cg EP +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(1)202.335 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP @@ -452,8 +452,8 @@ F(ariable)-.25 E F3 -.27(BA)108 679.2 S(SH_ENV).27 E F0 1.01(in the en) (if [ \255n "$BASH_ENV" ]; then . "$BASH_ENV"; fi)144 709.2 Q F0 -.2(bu) 108 727.2 S 2.5(tt).2 G(he v)-2.5 E(alue of the)-.25 E F3 -.666(PA)2.5 G (TH)-.189 E F0 -.25(va)2.25 G -(riable is not used to search for the \214le name.).25 E(GNU Bash-3.2)72 -768 Q(2008 April 5)148.455 E(2)203.445 E 0 Cg EP +(riable is not used to search for the \214le name.).25 E(GNU Bash-4.0)72 +768 Q(2008 May 25)147.345 E(2)202.335 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP @@ -550,15 +550,15 @@ E F1(identi\214er)2.5 E F0(.)A F1(metacharacter)108 451.2 Q F0 2.5(Ac) 475.2 S 2.5(pace tab)-5 F(contr)108 487.2 Q(ol operator)-.18 E F0(A)144 499.2 Q F2(tok)2.5 E(en)-.1 E F0(that performs a control function.)2.5 E (It is one of the follo)5 E(wing symbols:)-.25 E/F6 10/Symbol SF -144 511.2 Q F1 5(&&)5 G 5(&;;)-5 G 5(;\(\)|<)-5 G(newline>)-5 E F5 -(RESER)72 528 Q(VED W)-.602 E(ORDS)-.11 E F2 .307(Reserved wor)108 540 R -(ds)-.37 E F0 .307(are w)2.807 F .307(ords that ha)-.1 F .607 -.15 -(ve a s)-.2 H .306(pecial meaning to the shell.).15 F .306(The follo) -5.306 F .306(wing w)-.25 F .306(ords are recognized as)-.1 F(reserv)108 -552 Q .227(ed when unquoted and either the \214rst w)-.15 F .227 -(ord of a simple command \(see)-.1 F F3 .227(SHELL GRAMMAR)2.727 F F0 -(belo)2.477 E .227(w\) or)-.25 F(the third w)108 564 Q(ord of a)-.1 E F1 -(case)2.5 E F0(or)2.5 E F1 -.25(fo)2.5 G(r).25 E F0(command:)2.5 E F1 +144 511.2 Q F1 5(&&)5 G 5(&;;)-5 G 5(;\(\)||)-5 G 10(&<)-5 G(newline>) +-10 E F5(RESER)72 528 Q(VED W)-.602 E(ORDS)-.11 E F2 .307(Reserved wor) +108 540 R(ds)-.37 E F0 .307(are w)2.807 F .307(ords that ha)-.1 F .607 +-.15(ve a s)-.2 H .306(pecial meaning to the shell.).15 F .306 +(The follo)5.306 F .306(wing w)-.25 F .306(ords are recognized as)-.1 F +(reserv)108 552 Q .227(ed when unquoted and either the \214rst w)-.15 F +.227(ord of a simple command \(see)-.1 F F3 .227(SHELL GRAMMAR)2.727 F +F0(belo)2.477 E .227(w\) or)-.25 F(the third w)108 564 Q(ord of a)-.1 E +F1(case)2.5 E F0(or)2.5 E F1 -.25(fo)2.5 G(r).25 E F0(command:)2.5 E F1 11.916(!c)144 580.8 S 9.416(ase do done elif else esac \214 f)-11.916 F 9.415(or function if in select then until)-.25 F 7.5 (while { } time [[ ]])144 592.8 R F5(SHELL GRAMMAR)72 609.6 Q F1 @@ -575,257 +575,265 @@ E(ords are passed as ar)-.1 E(guments to the in)-.18 E -.2(vo)-.4 G -.1 (alue of a)-.25 F F2 .175(simple command)2.675 F F0 .175(is its e)2.675 F .175(xit status, or 128+)-.15 F F2(n)A F0 .176 (if the command is terminated by signal)3.508 F F2(n)2.676 E F0(.).24 E -F1(Pipelines)87 691.2 Q F0(A)108 703.2 Q F2(pipeline)2.92 E F0 .42 -(is a sequence of one or more commands separated by the character)2.92 F -F1(|)2.919 E F0 5.419(.T)C .419(he format for a pipeline)-5.419 F(is:) -108 715.2 Q(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(3)203.445 E 0 -Cg EP +F1(Pipelines)87 691.2 Q F0(A)108 703.2 Q F2(pipeline)2.996 E F0 .496(is\ + a sequence of one or more commands separated by one of the control ope\ +rators)2.996 F F1(|)2.996 E F0(or)2.996 E F1(|&)2.996 E F0 5.496(.T)C +(he)-5.496 E(format for a pipeline is:)108 715.2 Q(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(3)202.335 E 0 Cg EP %%Page: 4 4 %%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([)144 84 Q/F1 10/Times-Bold@0 SF(time)A F0([)2.5 E F1A F0 -(]] [ ! ])A/F2 10/Times-Italic@0 SF(command)2.5 E F0([)2.5 E F1(|)2.5 E -F2(command2)2.5 E F0(... ])2.5 E .243(The standard output of)108 100.8 R -F2(command)2.943 E F0 .244 +(]] [ ! ])A/F2 10/Times-Italic@0 SF(command)2.5 E F0 2.5([[)2.5 G F1(|) +-2.5 E/F3 10/Symbol SFA F1(|&)A F0(])A F2(command2)2.5 E F0(... ]) +2.5 E .243(The standard output of)108 100.8 R F2(command)2.943 E F0 .244 (is connected via a pipe to the standard input of)3.513 F F2(command2) -2.744 E F0 5.244(.T).02 G .244(his connec-)-5.244 F -(tion is performed before an)108 112.8 Q 2.5(yr)-.15 G -(edirections speci\214ed by the command \(see)-2.5 E/F3 9/Times-Bold@0 -SF(REDIRECTION)2.5 E F0(belo)2.25 E(w\).)-.25 E .48 -(The return status of a pipeline is the e)108 129.6 R .48 +2.744 E F0 5.244(.T).02 G .244(his connec-)-5.244 F .643 +(tion is performed before an)108 112.8 R 3.143(yr)-.15 G .642 +(edirections speci\214ed by the command \(see)-3.143 F/F4 9/Times-Bold@0 +SF(REDIRECTION)3.142 E F0(belo)2.892 E 3.142(w\). If)-.25 F F1(|&)3.142 +E F0(is)3.142 E 1.43(used, the standard error of)108 124.8 R F2(command) +3.93 E F0 1.431(is connected to)3.93 F F2(command2)3.931 E F0 2.531 -.55 +('s s)D 1.431(tandard input through the pipe; it is).55 F 1.197 +(shorthand for)108 136.8 R F1 1.197(2>&1 |)3.697 F F0 6.197(.T)C 1.197 +(his implicit redirection of the standard error is performed after an) +-6.197 F 3.696(yr)-.15 G(edirections)-3.696 E +(speci\214ed by the command.)108 148.8 Q .48 +(The return status of a pipeline is the e)108 165.6 R .48 (xit status of the last command, unless the)-.15 F F1(pipefail)2.98 E F0 -.48(option is enabled.)2.98 F(If)108 141.6 Q F1(pipefail)2.686 E F0 .186 -(is enabled, the pipeline')2.686 F 2.686(sr)-.55 G .186 -(eturn status is the v)-2.686 F .187 -(alue of the last \(rightmost\) command to e)-.25 F .187(xit with a)-.15 -F .611(non-zero status, or zero if all commands e)108 153.6 R .611 -(xit successfully)-.15 F 5.611(.I)-.65 G 3.111(ft)-5.611 G .61 -(he reserv)-3.111 F .61(ed w)-.15 F(ord)-.1 E F1(!)3.11 E F0 .61 -(precedes a pipeline, the)5.61 F -.15(ex)108 165.6 S .55 +.48(option is enabled.)2.98 F(If)108 177.6 Q F1(pipefail)2.687 E F0 .187 +(is enabled, the pipeline')2.687 F 2.687(sr)-.55 G .186 +(eturn status is the v)-2.687 F .186 +(alue of the last \(rightmost\) command to e)-.25 F .186(xit with a)-.15 +F .61(non-zero status, or zero if all commands e)108 189.6 R .611 +(xit successfully)-.15 F 5.611(.I)-.65 G 3.111(ft)-5.611 G .611 +(he reserv)-3.111 F .611(ed w)-.15 F(ord)-.1 E F1(!)3.111 E F0 .611 +(precedes a pipeline, the)5.611 F -.15(ex)108 201.6 S .55 (it status of that pipeline is the logical ne).15 F -.05(ga)-.15 G .55 (tion of the e).05 F .55(xit status as described abo)-.15 F -.15(ve)-.15 G 5.55(.T).15 G .55(he shell w)-5.55 F .55(aits for)-.1 F (all commands in the pipeline to terminate before returning a v)108 -177.6 Q(alue.)-.25 E .299(If the)108 194.4 R F1(time)2.799 E F0(reserv) +213.6 Q(alue.)-.25 E .298(If the)108 230.4 R F1(time)2.799 E F0(reserv) 2.799 E .299(ed w)-.15 F .299(ord precedes a pipeline, the elapsed as w\ -ell as user and system time consumed by its)-.1 F -.15(exe)108 206.4 S -.139(cution are reported when the pipeline terminates.).15 F(The)5.139 E -F12.639 E F0 .14(option changes the output format to that spec-) -2.639 F .78(i\214ed by POSIX.)108 218.4 R(The)5.78 E F3(TIMEFORMA)3.279 -E(T)-.855 E F0 -.25(va)3.029 G .779 -(riable may be set to a format string that speci\214es ho).25 F 3.279 -(wt)-.25 G .779(he timing)-3.279 F -(information should be displayed; see the description of)108 230.4 Q F3 +ell as user and system time consumed by its)-.1 F -.15(exe)108 242.4 S +.14(cution are reported when the pipeline terminates.).15 F(The)5.139 E +F12.639 E F0 .139(option changes the output format to that spec-) +2.639 F .779(i\214ed by POSIX.)108 254.4 R(The)5.779 E F4(TIMEFORMA) +3.279 E(T)-.855 E F0 -.25(va)3.029 G .779 +(riable may be set to a format string that speci\214es ho).25 F 3.28(wt) +-.25 G .78(he timing)-3.28 F +(information should be displayed; see the description of)108 266.4 Q F4 (TIMEFORMA)2.5 E(T)-.855 E F0(under)2.25 E F1(Shell V)2.5 E(ariables) -.92 E F0(belo)2.5 E -.65(w.)-.25 G(Each command in a pipeline is e)108 -247.2 Q -.15(xe)-.15 G +283.2 Q -.15(xe)-.15 G (cuted as a separate process \(i.e., in a subshell\).).15 E F1(Lists)87 -264 Q F0(A)108 276 Q F2(list)2.6 E F0 .1(is a sequence of one or more p\ -ipelines separated by one of the operators)2.6 F F1(;)2.601 E F0(,)A F1 -(&)2.601 E F0(,)A F1(&&)2.601 E F0 2.601(,o)C(r)-2.601 E/F4 10/Symbol SF -2.601 E F0 2.601(,a)C .101(nd option-)-2.601 F -(ally terminated by one of)108 288 Q F1(;)2.5 E F0(,)A F1(&)2.5 E F0 2.5 -(,o)C(r)-2.5 E F1()2.5 E F0(.)A .657(Of these list operators,) -108 304.8 R F1(&&)3.156 E F0(and)3.156 E F43.156 E F0(ha)3.156 E -.956 -.15(ve e)-.2 H .656(qual precedence, follo).15 F .656(wed by)-.25 -F F1(;)3.156 E F0(and)3.156 E F1(&)3.156 E F0 3.156(,w)C .656(hich ha) --3.156 F .956 -.15(ve e)-.2 H .656(qual prece-).15 F(dence.)108 316.8 Q -2.5(As)108 333.6 S(equence of one or more ne)-2.5 E -(wlines may appear in a)-.25 E F2(list)2.5 E F0 -(instead of a semicolon to delimit commands.)2.5 E .029 -(If a command is terminated by the control operator)108 350.4 R F1(&) +300 Q F0(A)108 312 Q F2(list)2.601 E F0 .101(is a sequence of one or mo\ +re pipelines separated by one of the operators)2.601 F F1(;)2.6 E F0(,)A +F1(&)2.6 E F0(,)A F1(&&)2.6 E F0 2.6(,o)C(r)-2.6 E F32.6 E F0 2.6 +(,a)C .1(nd option-)-2.6 F(ally terminated by one of)108 324 Q F1(;)2.5 +E F0(,)A F1(&)2.5 E F0 2.5(,o)C(r)-2.5 E F1()2.5 E F0(.)A .656 +(Of these list operators,)108 340.8 R F1(&&)3.156 E F0(and)3.156 E F3 +3.156 E F0(ha)3.156 E .956 -.15(ve e)-.2 H .656 +(qual precedence, follo).15 F .656(wed by)-.25 F F1(;)3.156 E F0(and) +3.156 E F1(&)3.156 E F0 3.156(,w)C .656(hich ha)-3.156 F .957 -.15(ve e) +-.2 H .657(qual prece-).15 F(dence.)108 352.8 Q 2.5(As)108 369.6 S +(equence of one or more ne)-2.5 E(wlines may appear in a)-.25 E F2(list) +2.5 E F0(instead of a semicolon to delimit commands.)2.5 E .029 +(If a command is terminated by the control operator)108 386.4 R F1(&) 2.529 E F0 2.529(,t)C .029(he shell e)-2.529 F -.15(xe)-.15 G .029 -(cutes the command in the).15 F F2(bac)2.529 E(kgr)-.2 E(ound)-.45 E F0 -(in)2.529 E 2.876(as)108 362.4 S 2.876(ubshell. The)-2.876 F .376 -(shell does not w)2.876 F .375 -(ait for the command to \214nish, and the return status is 0.)-.1 F .375 -(Commands sepa-)5.375 F .848(rated by a)108 374.4 R F1(;)3.348 E F0 .848 -(are e)3.348 F -.15(xe)-.15 G .848(cuted sequentially; the shell w).15 F -.849(aits for each command to terminate in turn.)-.1 F .849(The return) -5.849 F(status is the e)108 386.4 Q(xit status of the last command e) +(cutes the command in the).15 F F2(bac)2.528 E(kgr)-.2 E(ound)-.45 E F0 +(in)2.528 E 2.875(as)108 398.4 S 2.875(ubshell. The)-2.875 F .375 +(shell does not w)2.875 F .375 +(ait for the command to \214nish, and the return status is 0.)-.1 F .376 +(Commands sepa-)5.376 F .849(rated by a)108 410.4 R F1(;)3.349 E F0 .849 +(are e)3.349 F -.15(xe)-.15 G .848(cuted sequentially; the shell w).15 F +.848(aits for each command to terminate in turn.)-.1 F .848(The return) +5.848 F(status is the e)108 422.4 Q(xit status of the last command e) -.15 E -.15(xe)-.15 G(cuted.).15 E .632(AND and OR lists are sequences \ -of one of more pipelines separated by the)108 403.2 R F1(&&)3.132 E F0 -(and)3.132 E F43.132 E F0 .632(control operators,)3.132 F -(respecti)108 415.2 Q -.15(ve)-.25 G(ly).15 E 5(.A)-.65 G +of one of more pipelines separated by the)108 439.2 R F1(&&)3.132 E F0 +(and)3.133 E F33.133 E F0 .633(control operators,)3.133 F +(respecti)108 451.2 Q -.15(ve)-.25 G(ly).15 E 5(.A)-.65 G (ND and OR lists are e)-5 E -.15(xe)-.15 G(cuted with left associati).15 E(vity)-.25 E 5(.A)-.65 G 2.5(nA)-5 G(ND list has the form)-2.5 E F2 -(command1)144 432 Q F1(&&)2.5 E F2(command2)2.5 E(command2)108.2 448.8 Q +(command1)144 468 Q F1(&&)2.5 E F2(command2)2.5 E(command2)108.2 484.8 Q F0(is e)2.52 E -.15(xe)-.15 G(cuted if, and only if,).15 E F2(command1) 2.7 E F0(returns an e)2.5 E(xit status of zero.)-.15 E -(An OR list has the form)108 465.6 Q F2(command1)144 482.4 Q F42.5 -E F2(command2)2.5 E(command2)108.2 504 Q F0 .728(is e)3.248 F -.15(xe) +(An OR list has the form)108 501.6 Q F2(command1)144 518.4 Q F32.5 +E F2(command2)2.5 E(command2)108.2 540 Q F0 .729(is e)3.249 F -.15(xe) -.15 G .729(cuted if and only if).15 F F2(command1)3.429 E F0 .729 -(returns a non-zero e)3.229 F .729(xit status.)-.15 F .729 -(The return status of AND)5.729 F(and OR lists is the e)108 516 Q +(returns a non-zero e)3.229 F .729(xit status.)-.15 F .728 +(The return status of AND)5.729 F(and OR lists is the e)108 552 Q (xit status of the last command e)-.15 E -.15(xe)-.15 G -(cuted in the list.).15 E F1(Compound Commands)87 532.8 Q F0(A)108 544.8 +(cuted in the list.).15 E F1(Compound Commands)87 568.8 Q F0(A)108 580.8 Q F2(compound command)2.5 E F0(is one of the follo)2.5 E(wing:)-.25 E -(\()108 561.6 Q F2(list)A F0(\))A F2(list)17.11 E F0 .011(is e)2.512 F +(\()108 597.6 Q F2(list)A F0(\))A F2(list)17.11 E F0 .011(is e)2.511 F -.15(xe)-.15 G .011(cuted in a subshell en).15 F .011(vironment \(see) --.4 F F3 .011(COMMAND EXECUTION ENVIR)2.511 F(ONMENT)-.27 E F0(belo) -2.261 E(w\).)-.25 E -1.11(Va)144 573.6 S 1.063(riable assignments and b) +-.4 F F4 .011(COMMAND EXECUTION ENVIR)2.511 F(ONMENT)-.27 E F0(belo) +2.262 E(w\).)-.25 E -1.11(Va)144 609.6 S 1.064(riable assignments and b) 1.11 F 1.064(uiltin commands that af)-.2 F 1.064(fect the shell')-.25 F 3.564(se)-.55 G -.4(nv)-3.564 G 1.064(ironment do not remain in).4 F(ef) -144 585.6 Q(fect after the command completes.)-.25 E +144 621.6 Q(fect after the command completes.)-.25 E (The return status is the e)5 E(xit status of)-.15 E F2(list)2.5 E F0(.) -A({)108 602.4 Q F2(list)2.5 E F0 2.5(;})C F2(list)3.89 E F0 .402 -(is simply e)2.902 F -.15(xe)-.15 G .401(cuted in the current shell en) -.15 F(vironment.)-.4 E F2(list)5.401 E F0 .401 -(must be terminated with a ne)2.901 F .401(wline or)-.25 F 3.214 -(semicolon. This)144 614.4 R .714(is kno)3.214 F .714(wn as a)-.25 F F2 +A({)108 638.4 Q F2(list)2.5 E F0 2.5(;})C F2(list)3.89 E F0 .401 +(is simply e)2.901 F -.15(xe)-.15 G .401(cuted in the current shell en) +.15 F(vironment.)-.4 E F2(list)5.401 E F0 .402 +(must be terminated with a ne)2.901 F .402(wline or)-.25 F 3.215 +(semicolon. This)144 650.4 R .715(is kno)3.215 F .715(wn as a)-.25 F F2 (gr)3.215 E .715(oup command)-.45 F F0 5.715(.T)C .715 -(he return status is the e)-5.715 F .715(xit status of)-.15 F F2(list) -3.215 E F0 5.715(.N)C(ote)-5.715 E .22(that unlik)144 626.4 R 2.72(et) --.1 G .22(he metacharacters)-2.72 F F1(\()2.72 E F0(and)2.72 E F1(\)) -2.72 E F0(,)A F1({)2.72 E F0(and)2.72 E F1(})2.719 E F0(are)2.719 E F2 --.37(re)2.719 G .219(served wor).37 F(ds)-.37 E F0 .219 -(and must occur where a reserv)2.719 F(ed)-.15 E -.1(wo)144 638.4 S .256 -(rd is permitted to be recognized.).1 F .256(Since the)5.256 F 2.756(yd) --.15 G 2.756(on)-2.756 G .257(ot cause a w)-2.756 F .257(ord break, the) --.1 F 2.757(ym)-.15 G .257(ust be separated)-2.757 F(from)144 650.4 Q F2 +(he return status is the e)-5.715 F .714(xit status of)-.15 F F2(list) +3.214 E F0 5.714(.N)C(ote)-5.714 E .219(that unlik)144 662.4 R 2.719(et) +-.1 G .219(he metacharacters)-2.719 F F1(\()2.719 E F0(and)2.719 E F1 +(\))2.719 E F0(,)A F1({)2.719 E F0(and)2.719 E F1(})2.719 E F0(are)2.719 +E F2 -.37(re)2.72 G .22(served wor).37 F(ds)-.37 E F0 .22 +(and must occur where a reserv)2.72 F(ed)-.15 E -.1(wo)144 674.4 S .257 +(rd is permitted to be recognized.).1 F .257(Since the)5.257 F 2.757(yd) +-.15 G 2.756(on)-2.757 G .256(ot cause a w)-2.756 F .256(ord break, the) +-.1 F 2.756(ym)-.15 G .256(ust be separated)-2.756 F(from)144 686.4 Q F2 (list)2.5 E F0(by whitespace or another shell metacharacter)2.5 E(.)-.55 -E(\(\()108 667.2 Q F2 -.2(ex)C(pr).2 E(ession)-.37 E F0(\)\))A(The)144 -679.2 Q F2 -.2(ex)2.552 G(pr).2 E(ession)-.37 E F0 .052(is e)2.552 F +E(\(\()108 703.2 Q F2 -.2(ex)C(pr).2 E(ession)-.37 E F0(\)\))A(The)144 +715.2 Q F2 -.2(ex)2.551 G(pr).2 E(ession)-.37 E F0 .051(is e)2.551 F -.25(va)-.25 G .051(luated according to the rules described belo).25 F -2.551(wu)-.25 G(nder)-2.551 E F3 .051(ARITHMETIC EV)2.551 F(ALU)-1.215 E -(A-)-.54 E(TION)144 691.2 Q/F5 9/Times-Roman@0 SF(.)A F0 .411(If the v) -4.91 F .411(alue of the e)-.25 F .411(xpression is non-zero, the return\ - status is 0; otherwise the return status)-.15 F(is 1.)144 703.2 Q -(This is e)5 E(xactly equi)-.15 E -.25(va)-.25 G(lent to).25 E F1(let ") -2.5 E F2 -.2(ex)C(pr).2 E(ession)-.37 E F1(")A F0(.)A(GNU Bash-3.2)72 -768 Q(2008 April 5)148.455 E(4)203.445 E 0 Cg EP +2.552(wu)-.25 G(nder)-2.552 E F4 .052(ARITHMETIC EV)2.552 F(ALU)-1.215 E +(A-)-.54 E(TION)144 727.2 Q/F5 9/Times-Roman@0 SF(.)A F0 .411(If the v) +4.911 F .411(alue of the e)-.25 F .411(xpression is non-zero, the retur\ +n status is 0; otherwise the return status)-.15 F(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(4)202.335 E 0 Cg EP %%Page: 5 5 %%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 -.2(ex) -2.5 G(pr).2 E(ession)-.37 E F1(]])2.5 E F0 1.3 -(Return a status of 0 or 1 depending on the e)144 96 R -.25(va)-.25 G -1.299(luation of the conditional e).25 F(xpression)-.15 E F2 -.2(ex) -3.799 G(pr).2 E(ession)-.37 E F0(.)A 2.273 -(Expressions are composed of the primaries described belo)144 108 R -4.774(wu)-.25 G(nder)-4.774 E/F3 9/Times-Bold@0 SF(CONDITION)4.774 E -2.274(AL EXPRES-)-.18 F(SIONS)144 120 Q/F4 9/Times-Roman@0 SF(.)A F0 -.8 -(Wo)5.633 G 1.133(rd splitting and pathname e).8 F 1.133 +-.35 E(is 1.)144 84 Q(This is e)5 E(xactly equi)-.15 E -.25(va)-.25 G +(lent to).25 E/F1 10/Times-Bold@0 SF(let ")2.5 E/F2 10/Times-Italic@0 SF +-.2(ex)C(pr).2 E(ession)-.37 E F1(")A F0(.)A F1([[)108 100.8 Q F2 -.2 +(ex)2.5 G(pr).2 E(ession)-.37 E F1(]])2.5 E F0 1.299 +(Return a status of 0 or 1 depending on the e)144 112.8 R -.25(va)-.25 G +1.3(luation of the conditional e).25 F(xpression)-.15 E F2 -.2(ex)3.8 G +(pr).2 E(ession)-.37 E F0(.)A 2.274 +(Expressions are composed of the primaries described belo)144 124.8 R +4.773(wu)-.25 G(nder)-4.773 E/F3 9/Times-Bold@0 SF(CONDITION)4.773 E +2.273(AL EXPRES-)-.18 F(SIONS)144 136.8 Q/F4 9/Times-Roman@0 SF(.)A F0 +-.8(Wo)5.632 G 1.133(rd splitting and pathname e).8 F 1.133 (xpansion are not performed on the w)-.15 F 1.133(ords between the)-.1 F -F1([[)3.632 E F0(and)144 132 Q F1(]])2.963 E F0 2.963(;t)C .463(ilde e) --2.963 F .464(xpansion, parameter and v)-.15 F .464(ariable e)-.25 F -.464(xpansion, arithmetic e)-.15 F .464(xpansion, command substi-)-.15 F -1.081(tution, process substitution, and quote remo)144 144 R -.25(va) --.15 G 3.581(la).25 G 1.081(re performed.)-3.581 F 1.081 -(Conditional operators such as)6.081 F F13.58 E F0 -(must be unquoted to be recognized as primaries.)144 156 Q .502 -(When the)144 174 R F1(==)3.002 E F0(and)3.002 E F1(!=)3.002 E F0 .502(\ -operators are used, the string to the right of the operator is consider\ -ed a pat-)3.002 F 1.225 -(tern and matched according to the rules described belo)144 186 R 3.724 -(wu)-.25 G(nder)-3.724 E F1 -.1(Pa)3.724 G(tter).1 E 3.724(nM)-.15 G -(atching)-3.724 E F0 6.224(.I)C 3.724(ft)-6.224 G 1.224(he shell)-3.724 -F(option)144 198 Q F1(nocasematch)3.404 E F0 .904 -(is enabled, the match is performed without re)3.404 F -.05(ga)-.15 G -.905(rd to the case of alphabetic).05 F 2.752(characters. The)144 210 R -.251(return v)2.752 F .251(alue is 0 if the string matches \()-.25 F F1 -(==)A F0 2.751(\)o)C 2.751(rd)-2.751 G .251(oes not match \()-2.751 F F1 -(!=)A F0 2.751(\)t)C .251(he pattern, and)-2.751 F 2.5(1o)144 222 S 2.5 -(therwise. An)-2.5 F 2.5(yp)-.15 G(art of the pattern may be quoted to \ -force it to be matched as a string.)-2.5 E .243 -(An additional binary operator)144 240 R(,)-.4 E F1(=~)2.743 E F0 2.743 -(,i)C 2.743(sa)-2.743 G -.25(va)-2.943 G .243 +F1([[)3.633 E F0(and)144 148.8 Q F1(]])2.964 E F0 2.964(;t)C .464 +(ilde e)-2.964 F .464(xpansion, parameter and v)-.15 F .464(ariable e) +-.25 F .463(xpansion, arithmetic e)-.15 F .463 +(xpansion, command substi-)-.15 F 1.081 +(tution, process substitution, and quote remo)144 160.8 R -.25(va)-.15 G +3.581(la).25 G 1.081(re performed.)-3.581 F 1.081 +(Conditional operators such as)6.081 F F13.581 E F0 +(must be unquoted to be recognized as primaries.)144 172.8 Q .503 +(When the)144 190.8 R F1(==)3.003 E F0(and)3.002 E F1(!=)3.002 E F0 .502 +(operators are used, the string to the right of the operator is conside\ +red a pat-)3.002 F 1.224 +(tern and matched according to the rules described belo)144 202.8 R +3.724(wu)-.25 G(nder)-3.724 E F1 -.1(Pa)3.724 G(tter).1 E 3.725(nM)-.15 +G(atching)-3.725 E F0 6.225(.I)C 3.725(ft)-6.225 G 1.225(he shell)-3.725 +F(option)144 214.8 Q F1(nocasematch)3.405 E F0 .904 +(is enabled, the match is performed without re)3.405 F -.05(ga)-.15 G +.904(rd to the case of alphabetic).05 F 2.751(characters. The)144 226.8 +R .251(return v)2.751 F .251(alue is 0 if the string matches \()-.25 F +F1(==)A F0 2.751(\)o)C 2.751(rd)-2.751 G .251(oes not match \()-2.751 F +F1(!=)A F0 2.751(\)t)C .252(he pattern, and)-2.751 F 2.5(1o)144 238.8 S +2.5(therwise. An)-2.5 F 2.5(yp)-.15 G(art of the pattern may be quoted \ +to force it to be matched as a string.)-2.5 E .243 +(An additional binary operator)144 256.8 R(,)-.4 E F1(=~)2.743 E F0 +2.743(,i)C 2.743(sa)-2.743 G -.25(va)-2.943 G .243 (ilable, with the same precedence as).25 F F1(==)2.743 E F0(and)2.743 E F1(!=)2.743 E F0 5.243(.W)C .243(hen it is)-5.243 F 1.953 (used, the string to the right of the operator is considered an e)144 -252 R 1.953(xtended re)-.15 F 1.953(gular e)-.15 F 1.953(xpression and) --.15 F .207(matched accordingly \(as in)144 264 R F2 -.37(re)2.707 G -.1 -(ge)-.03 G(x)-.1 E F0 2.707(\(3\)\). The)B .207(return v)2.707 F .207 -(alue is 0 if the string matches the pattern, and 1)-.25 F 3.346 -(otherwise. If)144 276 R .846(the re)3.346 F .846(gular e)-.15 F .845 +268.8 R 1.954(xtended re)-.15 F 1.954(gular e)-.15 F 1.954 +(xpression and)-.15 F .207(matched accordingly \(as in)144 280.8 R F2 +-.37(re)2.707 G -.1(ge)-.03 G(x)-.1 E F0 2.707(\(3\)\). The)B .207 +(return v)2.707 F .207 +(alue is 0 if the string matches the pattern, and 1)-.25 F 3.345 +(otherwise. If)144 292.8 R .845(the re)3.345 F .845(gular e)-.15 F .846 (xpression is syntactically incorrect, the conditional e)-.15 F -(xpression')-.15 E 3.345(sr)-.55 G(eturn)-3.345 E -.25(va)144 288 S .666 -(lue is 2.).25 F .667(If the shell option)5.667 F F1(nocasematch)3.167 E -F0 .667(is enabled, the match is performed without re)3.167 F -.05(ga) --.15 G .667(rd to).05 F .379(the case of alphabetic characters.)144 300 -R(An)5.379 E 2.879(yp)-.15 G .378 -(art of the pattern may be quoted to force it to be matched)-2.879 F -.265(as a string.)144 312 R .265 +(xpression')-.15 E 3.346(sr)-.55 G(eturn)-3.346 E -.25(va)144 304.8 S +.667(lue is 2.).25 F .667(If the shell option)5.667 F F1(nocasematch) +3.167 E F0 .667(is enabled, the match is performed without re)3.167 F +-.05(ga)-.15 G .666(rd to).05 F .378(the case of alphabetic characters.) +144 316.8 R(An)5.378 E 2.878(yp)-.15 G .378 +(art of the pattern may be quoted to force it to be matched)-2.878 F +.265(as a string.)144 328.8 R .265 (Substrings matched by parenthesized sube)5.265 F .265 (xpressions within the re)-.15 F .265(gular e)-.15 F .265(xpression are) --.15 F(sa)144 324 Q -.15(ve)-.2 G 3.118(di).15 G 3.118(nt)-3.118 G .618 -(he array v)-3.118 F(ariable)-.25 E F1 -.3(BA)3.117 G(SH_REMA).3 E(TCH) --.95 E F0 5.617(.T)C .617(he element of)-5.617 F F1 -.3(BA)3.117 G -(SH_REMA).3 E(TCH)-.95 E F0 .617(with inde)3.117 F(x)-.15 E 6.882(0i)144 -336 S 6.882(st)-6.882 G 4.382 -(he portion of the string matching the entire re)-6.882 F 4.382(gular e) --.15 F 6.882(xpression. The)-.15 F 4.383(element of)6.883 F F1 -.3(BA) -144 348 S(SH_REMA).3 E(TCH)-.95 E F0 2.088(with inde)4.588 F(x)-.15 E F2 -(n)4.588 E F0 2.088(is the portion of the string matching the)4.588 F F2 -(n)4.587 E F0 2.087(th parenthesized)B(sube)144 360 Q(xpression.)-.15 E -.785(Expressions may be combined using the follo)144 378 R .786 +-.15 F(sa)144 340.8 Q -.15(ve)-.2 G 3.117(di).15 G 3.117(nt)-3.117 G +.617(he array v)-3.117 F(ariable)-.25 E F1 -.3(BA)3.117 G(SH_REMA).3 E +(TCH)-.95 E F0 5.617(.T)C .617(he element of)-5.617 F F1 -.3(BA)3.118 G +(SH_REMA).3 E(TCH)-.95 E F0 .618(with inde)3.118 F(x)-.15 E 6.883(0i)144 +352.8 S 6.883(st)-6.883 G 4.382 +(he portion of the string matching the entire re)-6.883 F 4.382(gular e) +-.15 F 6.882(xpression. The)-.15 F 4.382(element of)6.882 F F1 -.3(BA) +144 364.8 S(SH_REMA).3 E(TCH)-.95 E F0 2.087(with inde)4.587 F(x)-.15 E +F2(n)4.587 E F0 2.088(is the portion of the string matching the)4.587 F +F2(n)4.588 E F0 2.088(th parenthesized)B(sube)144 376.8 Q(xpression.) +-.15 E .786(Expressions may be combined using the follo)144 394.8 R .785 (wing operators, listed in decreasing order of prece-)-.25 F(dence:)144 -390 Q F1(\()144 408 Q F2 -.2(ex)2.5 G(pr).2 E(ession)-.37 E F1(\))2.5 E -F0 .523(Returns the v)180 420 R .522(alue of)-.25 F F2 -.2(ex)3.022 G -(pr).2 E(ession)-.37 E F0 5.522(.T)C .522(his may be used to o)-5.522 F --.15(ve)-.15 G .522(rride the normal precedence of).15 F(operators.)180 -432 Q F1(!)144 444 Q F2 -.2(ex)2.5 G(pr).2 E(ession)-.37 E F0 -.35(Tr) -180 456 S(ue if).35 E F2 -.2(ex)2.5 G(pr).2 E(ession)-.37 E F0(is f)2.74 -E(alse.)-.1 E F2 -.2(ex)144 468 S(pr).2 E(ession1)-.37 E F1(&&)2.5 E F2 --.2(ex)2.5 G(pr).2 E(ession2)-.37 E F0 -.35(Tr)180 480 S(ue if both).35 -E F2 -.2(ex)2.5 G(pr).2 E(ession1)-.37 E F0(and)2.5 E F2 -.2(ex)2.5 G -(pr).2 E(ession2)-.37 E F0(are true.)2.52 E F2 -.2(ex)144 492 S(pr).2 E -(ession1)-.37 E/F5 10/Symbol SF2.5 E F2 -.2(ex)2.5 G(pr).2 E -(ession2)-.37 E F0 -.35(Tr)180 504 S(ue if either).35 E F2 -.2(ex)2.5 G -(pr).2 E(ession1)-.37 E F0(or)2.5 E F2 -.2(ex)2.5 G(pr).2 E(ession2)-.37 -E F0(is true.)2.52 E(The)144 520.8 Q F1(&&)3.298 E F0(and)3.298 E F5 -3.298 E F0 .798(operators do not e)3.298 F -.25(va)-.25 G(luate) -.25 E F2 -.2(ex)3.298 G(pr).2 E(ession2)-.37 E F0 .798(if the v)3.298 F -.798(alue of)-.25 F F2 -.2(ex)3.298 G(pr).2 E(ession1)-.37 E F0 .799 -(is suf)3.298 F .799(\214cient to)-.25 F(determine the return v)144 -532.8 Q(alue of the entire conditional e)-.25 E(xpression.)-.15 E F1 --.25(fo)108 549.6 S(r).25 E F2(name)2.5 E F0([)2.5 E F1(in)2.5 E F2(wor) -2.5 E(d)-.37 E F0 2.5(];)2.5 G F1(do)A F2(list)2.5 E F0(;)2.5 E F1(done) -2.5 E F0 .424(The list of w)144 561.6 R .424(ords follo)-.1 F(wing)-.25 -E F1(in)2.924 E F0 .423(is e)2.924 F .423 -(xpanded, generating a list of items.)-.15 F .423(The v)5.423 F(ariable) --.25 E F2(name)2.923 E F0 .423(is set to)2.923 F .653 -(each element of this list in turn, and)144 573.6 R F2(list)3.153 E F0 -.653(is e)3.153 F -.15(xe)-.15 G .653(cuted each time.).15 F .653 -(If the)5.653 F F1(in)3.153 E F2(wor)3.153 E(d)-.37 E F0 .653 -(is omitted, the)3.153 F F1 -.25(fo)3.153 G(r).25 E F0 .649(command e) -144 585.6 R -.15(xe)-.15 G(cutes).15 E F2(list)3.149 E F0 .648 -(once for each positional parameter that is set \(see)3.148 F F3 -.666 -(PA)3.148 G(RAMETERS).666 E F0(belo)2.898 E(w\).)-.25 E .153 -(The return status is the e)144 597.6 R .153 -(xit status of the last command that e)-.15 F -.15(xe)-.15 G 2.654 -(cutes. If).15 F .154(the e)2.654 F .154(xpansion of the items)-.15 F -(follo)144 609.6 Q(wing)-.25 E F1(in)2.5 E F0 +406.8 Q F1(\()144 424.8 Q F2 -.2(ex)2.5 G(pr).2 E(ession)-.37 E F1(\)) +2.5 E F0 .522(Returns the v)180 436.8 R .522(alue of)-.25 F F2 -.2(ex) +3.022 G(pr).2 E(ession)-.37 E F0 5.522(.T)C .522(his may be used to o) +-5.522 F -.15(ve)-.15 G .522(rride the normal precedence of).15 F +(operators.)180 448.8 Q F1(!)144 460.8 Q F2 -.2(ex)2.5 G(pr).2 E(ession) +-.37 E F0 -.35(Tr)180 472.8 S(ue if).35 E F2 -.2(ex)2.5 G(pr).2 E +(ession)-.37 E F0(is f)2.74 E(alse.)-.1 E F2 -.2(ex)144 484.8 S(pr).2 E +(ession1)-.37 E F1(&&)2.5 E F2 -.2(ex)2.5 G(pr).2 E(ession2)-.37 E F0 +-.35(Tr)180 496.8 S(ue if both).35 E F2 -.2(ex)2.5 G(pr).2 E(ession1) +-.37 E F0(and)2.5 E F2 -.2(ex)2.5 G(pr).2 E(ession2)-.37 E F0(are true.) +2.52 E F2 -.2(ex)144 508.8 S(pr).2 E(ession1)-.37 E/F5 10/Symbol SF +2.5 E F2 -.2(ex)2.5 G(pr).2 E(ession2)-.37 E F0 -.35(Tr)180 520.8 +S(ue if either).35 E F2 -.2(ex)2.5 G(pr).2 E(ession1)-.37 E F0(or)2.5 E +F2 -.2(ex)2.5 G(pr).2 E(ession2)-.37 E F0(is true.)2.52 E(The)144 537.6 +Q F1(&&)3.299 E F0(and)3.299 E F53.298 E F0 .798 +(operators do not e)3.298 F -.25(va)-.25 G(luate).25 E F2 -.2(ex)3.298 G +(pr).2 E(ession2)-.37 E F0 .798(if the v)3.298 F .798(alue of)-.25 F F2 +-.2(ex)3.298 G(pr).2 E(ession1)-.37 E F0 .798(is suf)3.298 F .798 +(\214cient to)-.25 F(determine the return v)144 549.6 Q +(alue of the entire conditional e)-.25 E(xpression.)-.15 E F1 -.25(fo) +108 566.4 S(r).25 E F2(name)2.5 E F0([)2.5 E F1(in)2.5 E F2(wor)2.5 E(d) +-.37 E F0 2.5(];)2.5 G F1(do)A F2(list)2.5 E F0(;)2.5 E F1(done)2.5 E F0 +.423(The list of w)144 578.4 R .423(ords follo)-.1 F(wing)-.25 E F1(in) +2.923 E F0 .423(is e)2.923 F .423(xpanded, generating a list of items.) +-.15 F .424(The v)5.424 F(ariable)-.25 E F2(name)2.924 E F0 .424 +(is set to)2.924 F .653(each element of this list in turn, and)144 590.4 +R F2(list)3.153 E F0 .653(is e)3.153 F -.15(xe)-.15 G .653 +(cuted each time.).15 F .653(If the)5.653 F F1(in)3.153 E F2(wor)3.153 E +(d)-.37 E F0 .653(is omitted, the)3.153 F F1 -.25(fo)3.153 G(r).25 E F0 +.648(command e)144 602.4 R -.15(xe)-.15 G(cutes).15 E F2(list)3.148 E F0 +.648(once for each positional parameter that is set \(see)3.148 F F3 +-.666(PA)3.149 G(RAMETERS).666 E F0(belo)2.899 E(w\).)-.25 E .154 +(The return status is the e)144 614.4 R .153 +(xit status of the last command that e)-.15 F -.15(xe)-.15 G 2.653 +(cutes. If).15 F .153(the e)2.653 F .153(xpansion of the items)-.15 F +(follo)144 626.4 Q(wing)-.25 E F1(in)2.5 E F0 (results in an empty list, no commands are e)2.5 E -.15(xe)-.15 G -(cuted, and the return status is 0.).15 E F1 -.25(fo)108 626.4 S(r).25 E +(cuted, and the return status is 0.).15 E F1 -.25(fo)108 643.2 S(r).25 E F0(\(\()2.5 E F2 -.2(ex)2.5 G(pr1).2 E F0(;)2.5 E F2 -.2(ex)2.5 G(pr2).2 E F0(;)2.5 E F2 -.2(ex)2.5 G(pr3).2 E F0(\)\) ;)2.5 E F1(do)2.5 E F2 -(list)2.5 E F0(;)2.5 E F1(done)2.5 E F0 1.236(First, the arithmetic e) -144 638.4 R(xpression)-.15 E F2 -.2(ex)3.736 G(pr1).2 E F0 1.235(is e) -3.736 F -.25(va)-.25 G 1.235 -(luated according to the rules described belo).25 F 3.735(wu)-.25 G -(nder)-3.735 E F3 .561(ARITHMETIC EV)144 650.4 R(ALU)-1.215 E -.855(AT) --.54 G(ION).855 E F4(.)A F0 .561(The arithmetic e)5.061 F(xpression)-.15 -E F2 -.2(ex)3.061 G(pr2).2 E F0 .562(is then e)3.062 F -.25(va)-.25 G -.562(luated repeatedly until).25 F .592(it e)144 662.4 R -.25(va)-.25 G -.592(luates to zero.).25 F .592(Each time)5.592 F F2 -.2(ex)3.092 G(pr2) +(list)2.5 E F0(;)2.5 E F1(done)2.5 E F0 1.235(First, the arithmetic e) +144 655.2 R(xpression)-.15 E F2 -.2(ex)3.735 G(pr1).2 E F0 1.235(is e) +3.735 F -.25(va)-.25 G 1.236 +(luated according to the rules described belo).25 F 3.736(wu)-.25 G +(nder)-3.736 E F3 .562(ARITHMETIC EV)144 667.2 R(ALU)-1.215 E -.855(AT) +-.54 G(ION).855 E F4(.)A F0 .562(The arithmetic e)5.062 F(xpression)-.15 +E F2 -.2(ex)3.062 G(pr2).2 E F0 .561(is then e)3.061 F -.25(va)-.25 G +.561(luated repeatedly until).25 F .591(it e)144 679.2 R -.25(va)-.25 G +.591(luates to zero.).25 F .592(Each time)5.591 F F2 -.2(ex)3.092 G(pr2) .2 E F0 -.25(eva)3.092 G .592(luates to a non-zero v).25 F(alue,)-.25 E -F2(list)3.092 E F0 .591(is e)3.092 F -.15(xe)-.15 G .591 -(cuted and the arith-).15 F .228(metic e)144 674.4 R(xpression)-.15 E F2 --.2(ex)2.728 G(pr3).2 E F0 .229(is e)2.728 F -.25(va)-.25 G 2.729 +F2(list)3.092 E F0 .592(is e)3.092 F -.15(xe)-.15 G .592 +(cuted and the arith-).15 F .229(metic e)144 691.2 R(xpression)-.15 E F2 +-.2(ex)2.729 G(pr3).2 E F0 .229(is e)2.729 F -.25(va)-.25 G 2.729 (luated. If).25 F(an)2.729 E 2.729(ye)-.15 G .229 (xpression is omitted, it beha)-2.879 F -.15(ve)-.2 G 2.729(sa).15 G -2.729(si)-2.729 G 2.729(fi)-2.729 G 2.729(te)-2.729 G -.25(va)-2.979 G -.229(luates to 1.).25 F .228(The return v)144 686.4 R .228 -(alue is the e)-.25 F .228(xit status of the last command in)-.15 F F2 -(list)2.728 E F0 .227(that is e)2.728 F -.15(xe)-.15 G .227(cuted, or f) -.15 F .227(alse if an)-.1 F 2.727(yo)-.15 G 2.727(ft)-2.727 G(he)-2.727 -E -.15(ex)144 698.4 S(pressions is in).15 E -.25(va)-.4 G(lid.).25 E -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(5)203.445 E 0 Cg EP +2.729(si)-2.729 G 2.729(fi)-2.729 G 2.728(te)-2.729 G -.25(va)-2.978 G +.228(luates to 1.).25 F .227(The return v)144 703.2 R .227 +(alue is the e)-.25 F .227(xit status of the last command in)-.15 F F2 +(list)2.728 E F0 .228(that is e)2.728 F -.15(xe)-.15 G .228(cuted, or f) +.15 F .228(alse if an)-.1 F 2.728(yo)-.15 G 2.728(ft)-2.728 G(he)-2.728 +E -.15(ex)144 715.2 S(pressions is in).15 E -.25(va)-.4 G(lid.).25 E +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(5)202.335 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP @@ -833,502 +841,511 @@ BP /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(select)108 84 Q/F2 10/Times-Italic@0 SF (name)2.5 E F0([)2.5 E F1(in)2.5 E F2(wor)2.5 E(d)-.37 E F0 2.5(];)2.5 G -F1(do)A F2(list)2.5 E F0(;)2.5 E F1(done)2.5 E F0 .432(The list of w)144 -96 R .432(ords follo)-.1 F(wing)-.25 E F1(in)2.932 E F0 .432(is e)2.932 -F .432(xpanded, generating a list of items.)-.15 F .433(The set of e) -5.433 F .433(xpanded w)-.15 F(ords)-.1 E .843 +F1(do)A F2(list)2.5 E F0(;)2.5 E F1(done)2.5 E F0 .433(The list of w)144 +96 R .433(ords follo)-.1 F(wing)-.25 E F1(in)2.933 E F0 .432(is e)2.933 +F .432(xpanded, generating a list of items.)-.15 F .432(The set of e) +5.432 F .432(xpanded w)-.15 F(ords)-.1 E .842 (is printed on the standard error)144 108 R 3.342(,e)-.4 G .842 (ach preceded by a number)-3.342 F 5.842(.I)-.55 G 3.342(ft)-5.842 G(he) --3.342 E F1(in)3.342 E F2(wor)3.342 E(d)-.37 E F0 .842 -(is omitted, the posi-)3.342 F .064(tional parameters are printed \(see) +-3.342 E F1(in)3.342 E F2(wor)3.342 E(d)-.37 E F0 .843 +(is omitted, the posi-)3.343 F .064(tional parameters are printed \(see) 144 120 R/F3 9/Times-Bold@0 SF -.666(PA)2.564 G(RAMETERS).666 E F0(belo) 2.314 E 2.564(w\). The)-.25 F F1(PS3)2.564 E F0 .064 -(prompt is then displayed and a)2.564 F .214 +(prompt is then displayed and a)2.564 F .213 (line read from the standard input.)144 132 R .213 -(If the line consists of a number corresponding to one of the dis-)5.214 -F 1.537(played w)144 144 R 1.537(ords, then the v)-.1 F 1.537(alue of) --.25 F F2(name)4.397 E F0 1.537(is set to that w)4.217 F 4.037(ord. If) --.1 F 1.538(the line is empty)4.038 F 4.038(,t)-.65 G 1.538(he w)-4.038 -F 1.538(ords and)-.1 F .066(prompt are displayed ag)144 156 R 2.566 -(ain. If)-.05 F .065(EOF is read, the command completes.)2.566 F(An) -5.065 E 2.565(yo)-.15 G .065(ther v)-2.565 F .065(alue read causes)-.25 -F F2(name)144 168 Q F0 .759(to be set to null.)3.439 F .759 -(The line read is sa)5.759 F -.15(ve)-.2 G 3.26(di).15 G 3.26(nt)-3.26 G -.76(he v)-3.26 F(ariable)-.25 E F1(REPL)3.26 E(Y)-.92 E F0 5.76(.T)C(he) --5.76 E F2(list)3.35 E F0 .76(is e)3.94 F -.15(xe)-.15 G .76 -(cuted after).15 F .072(each selection until a)144 180 R F1(br)2.571 E -(eak)-.18 E F0 .071(command is e)2.571 F -.15(xe)-.15 G 2.571 +(If the line consists of a number corresponding to one of the dis-)5.213 +F 1.538(played w)144 144 R 1.538(ords, then the v)-.1 F 1.538(alue of) +-.25 F F2(name)4.398 E F0 1.537(is set to that w)4.218 F 4.037(ord. If) +-.1 F 1.537(the line is empty)4.037 F 4.037(,t)-.65 G 1.537(he w)-4.037 +F 1.537(ords and)-.1 F .065(prompt are displayed ag)144 156 R 2.565 +(ain. If)-.05 F .065(EOF is read, the command completes.)2.565 F(An) +5.066 E 2.566(yo)-.15 G .066(ther v)-2.566 F .066(alue read causes)-.25 +F F2(name)144 168 Q F0 .76(to be set to null.)3.44 F .76 +(The line read is sa)5.76 F -.15(ve)-.2 G 3.259(di).15 G 3.259(nt)-3.259 +G .759(he v)-3.259 F(ariable)-.25 E F1(REPL)3.259 E(Y)-.92 E F0 5.759 +(.T)C(he)-5.759 E F2(list)3.349 E F0 .759(is e)3.939 F -.15(xe)-.15 G +.759(cuted after).15 F .071(each selection until a)144 180 R F1(br)2.571 +E(eak)-.18 E F0 .071(command is e)2.571 F -.15(xe)-.15 G 2.571 (cuted. The).15 F -.15(ex)2.571 G .071(it status of).15 F F1(select) -2.571 E F0 .071(is the e)2.571 F .071(xit status of the)-.15 F +2.571 E F0 .071(is the e)2.571 F .072(xit status of the)-.15 F (last command e)144 192 Q -.15(xe)-.15 G(cuted in).15 E F2(list)2.5 E F0 2.5(,o).68 G 2.5(rz)-2.5 G(ero if no commands were e)-2.5 E -.15(xe)-.15 G(cuted.).15 E F1(case)108 208.8 Q F2(wor)2.5 E(d)-.37 E F1(in)2.5 E F0 2.5([[)2.5 G(\(])-2.5 E F2(pattern)2.5 E F0([)2.5 E F1(|)2.5 E F2 (pattern)2.5 E F0 2.5(].)2.5 G(.. \))-2.5 E F2(list)2.5 E F0(;; ] ...) -2.5 E F1(esac)2.5 E F0(A)144 220.8 Q F1(case)3.264 E F0 .764 -(command \214rst e)3.264 F(xpands)-.15 E F2(wor)3.264 E(d)-.37 E F0 +2.5 E F1(esac)2.5 E F0(A)144 220.8 Q F1(case)3.265 E F0 .764 +(command \214rst e)3.265 F(xpands)-.15 E F2(wor)3.264 E(d)-.37 E F0 3.264(,a)C .764(nd tries to match it ag)-3.264 F .764(ainst each)-.05 F -F2(pattern)3.264 E F0 .765(in turn, using the)3.264 F .596 +F2(pattern)3.264 E F0 .764(in turn, using the)3.264 F .595 (same matching rules as for pathname e)144 232.8 R .595(xpansion \(see) --.15 F F1 -.1(Pa)3.095 G .595(thname Expansion).1 F F0(belo)3.095 E -3.095(w\). The)-.25 F F2(wor)3.095 E(d)-.37 E F0(is)3.095 E -.15(ex)144 +-.15 F F1 -.1(Pa)3.095 G .596(thname Expansion).1 F F0(belo)3.096 E +3.096(w\). The)-.25 F F2(wor)3.096 E(d)-.37 E F0(is)3.096 E -.15(ex)144 244.8 S 1.092(panded using tilde e).15 F 1.092 (xpansion, parameter and v)-.15 F 1.092(ariable e)-.25 F 1.092 (xpansion, arithmetic substitution, com-)-.15 F 1.268 (mand substitution, process substitution and quote remo)144 256.8 R -.25 (va)-.15 G 3.768(l. Each).25 F F2(pattern)3.768 E F0 -.15(ex)3.768 G -1.268(amined is e).15 F(xpanded)-.15 E .353(using tilde e)144 268.8 R +1.269(amined is e).15 F(xpanded)-.15 E .353(using tilde e)144 268.8 R .353(xpansion, parameter and v)-.15 F .353(ariable e)-.25 F .353 -(xpansion, arithmetic substitution, command substi-)-.15 F 1.517 -(tution, and process substitution.)144 280.8 R 1.517 -(If the shell option)6.517 F F1(nocasematch)4.016 E F0 1.516 -(is enabled, the match is per)4.016 F(-)-.2 E 1.346(formed without re) -144 292.8 R -.05(ga)-.15 G 1.346 -(rd to the case of alphabetic characters.).05 F 1.347 +(xpansion, arithmetic substitution, command substi-)-.15 F 1.516 +(tution, and process substitution.)144 280.8 R 1.516 +(If the shell option)6.516 F F1(nocasematch)4.016 E F0 1.517 +(is enabled, the match is per)4.017 F(-)-.2 E 1.347(formed without re) +144 292.8 R -.05(ga)-.15 G 1.347 +(rd to the case of alphabetic characters.).05 F 1.346 (When a match is found, the corre-)6.347 F(sponding)144 304.8 Q F2(list) -3.58 E F0 1.08(is e)3.58 F -.15(xe)-.15 G 3.58(cuted. After).15 F 1.079 -(the \214rst match, no subsequent matches are attempted.)3.579 F 1.079 -(The e)6.079 F(xit)-.15 E .006(status is zero if no pattern matches.)144 -316.8 R .006(Otherwise, it is the e)5.006 F .006 -(xit status of the last command e)-.15 F -.15(xe)-.15 G .007(cuted in) -.15 F F2(list)144 328.8 Q F0(.)A F1(if)108 345.6 Q F2(list)2.5 E F0(;)A -F1(then)2.5 E F2(list;)2.5 E F0([)2.5 E F1(elif)2.5 E F2(list)2.5 E F0 -(;)A F1(then)2.5 E F2(list)2.5 E F0 2.5(;].)C(.. [)-2.5 E F1(else)2.5 E -F2(list)2.5 E F0 2.5(;])C F1<8c>A F0(The)144 357.6 Q F1(if)2.978 E F2 -(list)3.068 E F0 .478(is e)3.658 F -.15(xe)-.15 G 2.978(cuted. If).15 F -.478(its e)2.978 F .478(xit status is zero, the)-.15 F F1(then)2.978 E -F2(list)2.978 E F0 .478(is e)2.978 F -.15(xe)-.15 G 2.978 -(cuted. Otherwise,).15 F(each)2.978 E F1(elif)2.977 E F2(list)2.977 E F0 -1.087(is e)144 369.6 R -.15(xe)-.15 G 1.087(cuted in turn, and if its e) -.15 F 1.087(xit status is zero, the corresponding)-.15 F F1(then)3.587 E -F2(list)3.587 E F0 1.088(is e)3.588 F -.15(xe)-.15 G 1.088 -(cuted and the).15 F .104(command completes.)144 381.6 R .103 -(Otherwise, the)5.104 F F1(else)2.603 E F2(list)2.603 E F0 .103(is e) -2.603 F -.15(xe)-.15 G .103(cuted, if present.).15 F .103(The e)5.103 F -.103(xit status is the e)-.15 F .103(xit sta-)-.15 F -(tus of the last command e)144 393.6 Q -.15(xe)-.15 G -(cuted, or zero if no condition tested true.).15 E F1(while)108 410.4 Q -F2(list)2.5 E F0(;)A F1(do)2.5 E F2(list)2.5 E F0(;)A F1(done)2.5 E -(until)108 422.4 Q F2(list)2.5 E F0(;)A F1(do)2.5 E F2(list)2.5 E F0(;)A -F1(done)2.5 E F0(The)144 434.4 Q F1(while)3.103 E F0 .603 -(command continuously e)3.103 F -.15(xe)-.15 G .603(cutes the).15 F F1 +2.776 E F0 .277(is e)2.776 F -.15(xe)-.15 G 2.777(cuted. If).15 F(the) +2.777 E F1(;;)2.777 E F0 .277 +(operator is used, no subsequent matches are attempted after the)2.777 F +.849(\214rst pattern match.)144 316.8 R(Using)5.849 E F1(;&)3.349 E F0 +.849(in place of)3.349 F F1(;;)3.349 E F0 .849(causes e)3.349 F -.15(xe) +-.15 G .849(cution to continue with the).15 F F2(list)3.348 E F0 +(associated)3.348 E .077(with the ne)144 328.8 R .077 +(xt set of patterns.)-.15 F(Using)5.077 E F1(;;&)2.577 E F0 .078 +(in place of)2.577 F F1(;;)2.578 E F0 .078 +(causes the shell to test the ne)2.578 F .078(xt pattern list in)-.15 F +.227(the statement, if an)144 340.8 R 1.527 -.65(y, a)-.15 H .227(nd e) +.65 F -.15(xe)-.15 G .227(cute an).15 F 2.727(ya)-.15 G(ssociated)-2.727 +E F2(list)2.727 E F0 .227(on a successful match.)2.727 F .227(The e) +5.227 F .227(xit status is zero)-.15 F(if no pattern matches.)144 352.8 +Q(Otherwise, it is the e)5 E(xit status of the last command e)-.15 E +-.15(xe)-.15 G(cuted in).15 E F2(list)2.5 E F0(.)A F1(if)108 369.6 Q F2 +(list)2.5 E F0(;)A F1(then)2.5 E F2(list;)2.5 E F0([)2.5 E F1(elif)2.5 E +F2(list)2.5 E F0(;)A F1(then)2.5 E F2(list)2.5 E F0 2.5(;].)C(.. [)-2.5 +E F1(else)2.5 E F2(list)2.5 E F0 2.5(;])C F1<8c>A F0(The)144 381.6 Q F1 +(if)2.977 E F2(list)3.067 E F0 .478(is e)3.658 F -.15(xe)-.15 G 2.978 +(cuted. If).15 F .478(its e)2.978 F .478(xit status is zero, the)-.15 F +F1(then)2.978 E F2(list)2.978 E F0 .478(is e)2.978 F -.15(xe)-.15 G +2.978(cuted. Otherwise,).15 F(each)2.978 E F1(elif)2.978 E F2(list)2.978 +E F0 1.088(is e)144 393.6 R -.15(xe)-.15 G 1.088 +(cuted in turn, and if its e).15 F 1.087 +(xit status is zero, the corresponding)-.15 F F1(then)3.587 E F2(list) +3.587 E F0 1.087(is e)3.587 F -.15(xe)-.15 G 1.087(cuted and the).15 F +.103(command completes.)144 405.6 R .103(Otherwise, the)5.103 F F1(else) +2.603 E F2(list)2.603 E F0 .103(is e)2.603 F -.15(xe)-.15 G .103 +(cuted, if present.).15 F .103(The e)5.103 F .103(xit status is the e) +-.15 F .104(xit sta-)-.15 F(tus of the last command e)144 417.6 Q -.15 +(xe)-.15 G(cuted, or zero if no condition tested true.).15 E F1(while) +108 434.4 Q F2(list)2.5 E F0(;)A F1(do)2.5 E F2(list)2.5 E F0(;)A F1 +(done)2.5 E(until)108 446.4 Q F2(list)2.5 E F0(;)A F1(do)2.5 E F2(list) +2.5 E F0(;)A F1(done)2.5 E F0(The)144 458.4 Q F1(while)3.104 E F0 .603 +(command continuously e)3.104 F -.15(xe)-.15 G .603(cutes the).15 F F1 (do)3.103 E F2(list)3.103 E F0 .603(as long as the last command in)3.103 -F F2(list)3.104 E F0(returns)3.104 E .471(an e)144 446.4 R .471 -(xit status of zero.)-.15 F(The)5.471 E F1(until)2.971 E F0 .471 -(command is identical to the)2.971 F F1(while)2.97 E F0 .47(command, e) -2.97 F .47(xcept that the test)-.15 F .095(is ne)144 458.4 R -.05(ga) --.15 G .095(ted; the).05 F F1(do)2.595 E F2(list)2.685 E F0 .095(is e) -3.275 F -.15(xe)-.15 G .095(cuted as long as the last command in).15 F -F2(list)2.685 E F0 .096(returns a non-zero e)3.276 F .096(xit status.) --.15 F 1.307(The e)144 470.4 R 1.307(xit status of the)-.15 F F1(while) -3.807 E F0(and)3.807 E F1(until)3.807 E F0 1.307(commands is the e)3.807 -F 1.306(xit status of the last)-.15 F F1(do)3.806 E F2(list)3.806 E F0 -(command)3.806 E -.15(exe)144 482.4 S(cuted, or zero if none w).15 E +F F2(list)3.103 E F0(returns)3.103 E .47(an e)144 470.4 R .47 +(xit status of zero.)-.15 F(The)5.47 E F1(until)2.97 E F0 .471 +(command is identical to the)2.97 F F1(while)2.971 E F0 .471(command, e) +2.971 F .471(xcept that the test)-.15 F .096(is ne)144 482.4 R -.05(ga) +-.15 G .096(ted; the).05 F F1(do)2.596 E F2(list)2.686 E F0 .095(is e) +3.276 F -.15(xe)-.15 G .095(cuted as long as the last command in).15 F +F2(list)2.685 E F0 .095(returns a non-zero e)3.275 F .095(xit status.) +-.15 F 1.306(The e)144 494.4 R 1.306(xit status of the)-.15 F F1(while) +3.806 E F0(and)3.806 E F1(until)3.807 E F0 1.307(commands is the e)3.807 +F 1.307(xit status of the last)-.15 F F1(do)3.807 E F2(list)3.807 E F0 +(command)3.807 E -.15(exe)144 506.4 S(cuted, or zero if none w).15 E (as e)-.1 E -.15(xe)-.15 G(cuted.).15 E F1(Shell Function De\214nitions) -87 499.2 Q F0 2.697(As)108 511.2 S .198 -(hell function is an object that is called lik)-2.697 F 2.698(eas)-.1 G -.198(imple command and e)-2.698 F -.15(xe)-.15 G .198 -(cutes a compound command with).15 F 2.5(an)108 523.2 S .5 -.25(ew s) +87 523.2 Q F0 2.698(As)108 535.2 S .198 +(hell function is an object that is called lik)-2.698 F 2.698(eas)-.1 G +.198(imple command and e)-2.698 F -.15(xe)-.15 G .197 +(cutes a compound command with).15 F 2.5(an)108 547.2 S .5 -.25(ew s) -2.5 H(et of positional parameters.).25 E -(Shell functions are declared as follo)5 E(ws:)-.25 E([)108 540 Q F1 +(Shell functions are declared as follo)5 E(ws:)-.25 E([)108 564 Q F1 (function)2.5 E F0(])2.5 E F2(name)2.5 E F0(\(\))2.5 E F2 (compound\255command)2.5 E F0([)2.5 E F2 -.37(re)C(dir).37 E(ection)-.37 -E F0(])A 1.403(This de\214nes a function named)144 552 R F2(name)3.902 E +E F0(])A 1.402(This de\214nes a function named)144 576 R F2(name)3.902 E F0 6.402(.T)C 1.402(he reserv)-6.402 F 1.402(ed w)-.15 F(ord)-.1 E F1 -(function)3.902 E F0 1.402(is optional.)3.902 F 1.402(If the)6.402 F F1 -(function)3.902 E F0(reserv)144 564 Q .162(ed w)-.15 F .162 +(function)3.902 E F0 1.402(is optional.)3.902 F 1.403(If the)6.402 F F1 +(function)3.903 E F0(reserv)144 588 Q .162(ed w)-.15 F .162 (ord is supplied, the parentheses are optional.)-.1 F(The)5.162 E F2 (body)2.662 E F0 .162(of the function is the compound)2.662 F(command) -144 576 Q F2(compound\255command)2.784 E F0(\(see)3.354 E F1 .084 +144 600 Q F2(compound\255command)2.784 E F0(\(see)3.354 E F1 .084 (Compound Commands)2.584 F F0(abo)2.584 E -.15(ve)-.15 G 2.584(\). That) -.15 F .084(command is usually a)2.584 F F2(list)144 588 Q F0 .044 +.15 F .084(command is usually a)2.584 F F2(list)144 612 Q F0 .044 (of commands between { and }, b)2.544 F .044(ut may be an)-.2 F 2.544 (yc)-.15 G .044(ommand listed under)-2.544 F F1 .044(Compound Commands) -2.544 F F0(abo)144 600 Q -.15(ve)-.15 G(.).15 E F2(compound\255command) -6.671 E F0 1.671(is e)4.171 F -.15(xe)-.15 G 1.671(cuted whene).15 F --.15(ve)-.25 G(r).15 E F2(name)4.171 E F0 1.671 -(is speci\214ed as the name of a simple)4.171 F 3.008(command. An)144 -612 R 3.009(yr)-.15 G .509(edirections \(see)-3.009 F F3(REDIRECTION) +2.544 F F0(abo)144 624 Q -.15(ve)-.15 G(.).15 E F2(compound\255command) +6.67 E F0 1.67(is e)4.17 F -.15(xe)-.15 G 1.671(cuted whene).15 F -.15 +(ve)-.25 G(r).15 E F2(name)4.171 E F0 1.671 +(is speci\214ed as the name of a simple)4.171 F 3.009(command. An)144 +636 R 3.009(yr)-.15 G .509(edirections \(see)-3.009 F F3(REDIRECTION) 3.009 E F0(belo)2.759 E .509 -(w\) speci\214ed when a function is de\214ned are)-.25 F .581 -(performed when the function is e)144 624 R -.15(xe)-.15 G 3.081 -(cuted. The).15 F -.15(ex)3.081 G .58 +(w\) speci\214ed when a function is de\214ned are)-.25 F .58 +(performed when the function is e)144 648 R -.15(xe)-.15 G 3.08 +(cuted. The).15 F -.15(ex)3.081 G .581 (it status of a function de\214nition is zero unless a).15 F .177(synta\ x error occurs or a readonly function with the same name already e)144 -636 R 2.678(xists. When)-.15 F -.15(exe)2.678 G .178(cuted, the).15 F --.15(ex)144 648 S .64(it status of a function is the e).15 F .64 +660 R 2.677(xists. When)-.15 F -.15(exe)2.677 G .177(cuted, the).15 F +-.15(ex)144 672 S .64(it status of a function is the e).15 F .64 (xit status of the last command e)-.15 F -.15(xe)-.15 G .64 (cuted in the body).15 F 5.64(.\()-.65 G(See)-5.64 E F3(FUNC-)3.14 E -(TIONS)144 660 Q F0(belo)2.25 E -.65(w.)-.25 G(\)).65 E/F4 10.95 -/Times-Bold@0 SF(COMMENTS)72 676.8 Q F0 .982(In a non-interacti)108 -688.8 R 1.282 -.15(ve s)-.25 H .982(hell, or an interacti).15 F 1.282 +(TIONS)144 684 Q F0(belo)2.25 E -.65(w.)-.25 G(\)).65 E/F4 10.95 +/Times-Bold@0 SF(COMMENTS)72 700.8 Q F0 .982(In a non-interacti)108 +712.8 R 1.282 -.15(ve s)-.25 H .982(hell, or an interacti).15 F 1.282 -.15(ve s)-.25 H .982(hell in which the).15 F F1(interacti)3.482 E -.1 (ve)-.1 G(_comments).1 E F0 .982(option to the)3.482 F F1(shopt)3.482 E -F0 -.2(bu)108 700.8 S .952(iltin is enabled \(see).2 F F3 .952(SHELL B) -3.452 F(UIL)-.09 E .952(TIN COMMANDS)-.828 F F0(belo)3.202 E .952 -(w\), a w)-.25 F .952(ord be)-.1 F .952(ginning with)-.15 F F1(#)3.451 E -F0 .951(causes that w)3.451 F(ord)-.1 E .604 -(and all remaining characters on that line to be ignored.)108 712.8 R -.605(An interacti)5.605 F .905 -.15(ve s)-.25 H .605(hell without the) -.15 F F1(interacti)3.105 E -.1(ve)-.1 G(_com-).1 E(ments)108 724.8 Q F0 -1.337(option enabled does not allo)3.837 F 3.837(wc)-.25 G 3.836 -(omments. The)-3.837 F F1(interacti)3.836 E -.1(ve)-.1 G(_comments).1 E -F0 1.336(option is on by def)3.836 F 1.336(ault in)-.1 F(GNU Bash-3.2)72 -768 Q(2008 April 5)148.455 E(6)203.445 E 0 Cg EP +F0 -.2(bu)108 724.8 S .951(iltin is enabled \(see).2 F F3 .952(SHELL B) +3.451 F(UIL)-.09 E .952(TIN COMMANDS)-.828 F F0(belo)3.202 E .952 +(w\), a w)-.25 F .952(ord be)-.1 F .952(ginning with)-.15 F F1(#)3.452 E +F0 .952(causes that w)3.452 F(ord)-.1 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(6)202.335 E 0 Cg EP %%Page: 7 7 %%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(interacti)108 84 Q .3 -.15(ve s)-.25 H(hells.).15 E/F1 10.95 -/Times-Bold@0 SF -.11(QU)72 100.8 S -.438(OT).11 G(ING).438 E/F2 10 -/Times-Italic@0 SF(Quoting)108 112.8 Q F0 .477(is used to remo)2.977 F +-.35 E .605(and all remaining characters on that line to be ignored.)108 +84 R .604(An interacti)5.605 F .904 -.15(ve s)-.25 H .604 +(hell without the).15 F/F1 10/Times-Bold@0 SF(interacti)3.104 E -.1(ve) +-.1 G(_com-).1 E(ments)108 96 Q F0 1.336(option enabled does not allo) +3.836 F 3.836(wc)-.25 G 3.836(omments. The)-3.836 F F1(interacti)3.836 E +-.1(ve)-.1 G(_comments).1 E F0 1.337(option is on by def)3.837 F 1.337 +(ault in)-.1 F(interacti)108 108 Q .3 -.15(ve s)-.25 H(hells.).15 E/F2 +10.95/Times-Bold@0 SF -.11(QU)72 124.8 S -.438(OT).11 G(ING).438 E/F3 10 +/Times-Italic@0 SF(Quoting)108 136.8 Q F0 .478(is used to remo)2.978 F .777 -.15(ve t)-.15 H .477 (he special meaning of certain characters or w).15 F .477 -(ords to the shell.)-.1 F .478(Quoting can be)5.478 F .185 +(ords to the shell.)-.1 F .477(Quoting can be)5.477 F .184 (used to disable special treatment for special characters, to pre)108 -124.8 R -.15(ve)-.25 G .185(nt reserv).15 F .184(ed w)-.15 F .184 -(ords from being recognized as)-.1 F(such, and to pre)108 136.8 Q -.15 -(ve)-.25 G(nt parameter e).15 E(xpansion.)-.15 E .288(Each of the)108 -153.6 R F2(metac)2.788 E(har)-.15 E(acter)-.15 E(s)-.1 E F0 .288 -(listed abo)2.788 F .588 -.15(ve u)-.15 H(nder).15 E/F3 9/Times-Bold@0 +148.8 R -.15(ve)-.25 G .185(nt reserv).15 F .185(ed w)-.15 F .185 +(ords from being recognized as)-.1 F(such, and to pre)108 160.8 Q -.15 +(ve)-.25 G(nt parameter e).15 E(xpansion.)-.15 E .289(Each of the)108 +177.6 R F3(metac)2.789 E(har)-.15 E(acter)-.15 E(s)-.1 E F0 .288 +(listed abo)2.789 F .588 -.15(ve u)-.15 H(nder).15 E/F4 9/Times-Bold@0 SF(DEFINITIONS)2.788 E F0 .288 (has special meaning to the shell and must be)2.538 F -(quoted if it is to represent itself.)108 165.6 Q 1.345 -(When the command history e)108 182.4 R 1.344(xpansion f)-.15 F 1.344 -(acilities are being used \(see)-.1 F F3(HIST)3.844 E(OR)-.162 E 3.594 -(YE)-.315 G(XP)-3.594 E(ANSION)-.666 E F0(belo)3.594 E 1.344(w\), the) --.25 F F2(history e)108 194.4 Q(xpansion)-.2 E F0(character)2.5 E 2.5 -(,u)-.4 G(sually)-2.5 E/F4 10/Times-Bold@0 SF(!)2.5 E F0 2.5(,m)C -(ust be quoted to pre)-2.5 E -.15(ve)-.25 G(nt history e).15 E -(xpansion.)-.15 E(There are three quoting mechanisms: the)108 211.2 Q F2 -(escape c)2.5 E(har)-.15 E(acter)-.15 E F0 2.5(,s).73 G -(ingle quotes, and double quotes.)-2.5 E 2.974(An)108 228 S .474 -(on-quoted backslash \()-2.974 F F4(\\)A F0 2.974(\)i)C 2.974(st)-2.974 -G(he)-2.974 E F2 .474(escape c)2.974 F(har)-.15 E(acter)-.15 E F0 5.474 +(quoted if it is to represent itself.)108 189.6 Q 1.344 +(When the command history e)108 206.4 R 1.344(xpansion f)-.15 F 1.344 +(acilities are being used \(see)-.1 F F4(HIST)3.844 E(OR)-.162 E 3.594 +(YE)-.315 G(XP)-3.594 E(ANSION)-.666 E F0(belo)3.595 E 1.345(w\), the) +-.25 F F3(history e)108 218.4 Q(xpansion)-.2 E F0(character)2.5 E 2.5 +(,u)-.4 G(sually)-2.5 E F1(!)2.5 E F0 2.5(,m)C(ust be quoted to pre)-2.5 +E -.15(ve)-.25 G(nt history e).15 E(xpansion.)-.15 E +(There are three quoting mechanisms: the)108 235.2 Q F3(escape c)2.5 E +(har)-.15 E(acter)-.15 E F0 2.5(,s).73 G +(ingle quotes, and double quotes.)-2.5 E 2.975(An)108 252 S .475 +(on-quoted backslash \()-2.975 F F1(\\)A F0 2.974(\)i)C 2.974(st)-2.974 +G(he)-2.974 E F3 .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(follo)108 240 Q -1.554(ws, with the e)-.25 F 1.553(xception of . If)-.25 F(a)4.053 E F4(\\)4.053 E F0( pair appears, and the backslash is not itself)-.25 F 1.122 -(quoted, the)108 252 R F4(\\)3.622 E F0(. If)-.25 F(a)4.053 E F1(\\)4.053 E F0( pair appears, and the backslash is not itself)-.25 F 1.123 +(quoted, the)108 276 R F1(\\)3.623 E F0( is treated as a line continuation \(that is, it is remo)-.25 F --.15(ve)-.15 G 3.622(df).15 G 1.123(rom the input stream and)-3.622 F -(ef)108 264 Q(fecti)-.25 E -.15(ve)-.25 G(ly ignored\).).15 E .295 -(Enclosing characters in single quotes preserv)108 280.8 R .295 +-.15(ve)-.15 G 3.622(df).15 G 1.122(rom the input stream and)-3.622 F +(ef)108 288 Q(fecti)-.25 E -.15(ve)-.25 G(ly ignored\).).15 E .295 +(Enclosing characters in single quotes preserv)108 304.8 R .295 (es the literal v)-.15 F .295(alue of each character within the quotes.) -.25 F 2.795(As)5.295 G(in-)-2.795 E -(gle quote may not occur between single quotes, e)108 292.8 Q -.15(ve) --.25 G 2.5(nw).15 G(hen preceded by a backslash.)-2.5 E .033 -(Enclosing characters in double quotes preserv)108 309.6 R .034 +(gle quote may not occur between single quotes, e)108 316.8 Q -.15(ve) +-.25 G 2.5(nw).15 G(hen preceded by a backslash.)-2.5 E .034 +(Enclosing characters in double quotes preserv)108 333.6 R .034 (es the literal v)-.15 F .034 (alue of all characters within the quotes, with the)-.25 F -.15(ex)108 -321.6 S .828(ception of).15 F F4($)3.328 E F0(,)A F4<92>3.328 E F0(,)A -F4(\\)3.328 E F0 3.328(,a)C .828(nd, when history e)-3.328 F .828 -(xpansion is enabled,)-.15 F F4(!)3.328 E F0 5.828(.T)C .828 -(he characters)-5.828 F F4($)3.328 E F0(and)3.328 E F4<92>3.328 E F0 -.827(retain their special)3.328 F .074(meaning within double quotes.)108 -333.6 R .074(The backslash retains its special meaning only when follo) -5.074 F .075(wed by one of the)-.25 F(follo)108 345.6 Q .205 -(wing characters:)-.25 F F4($)2.705 E F0(,)A F4<92>2.705 E F0(,)A F4(") -3.538 E F0(,).833 E F4(\\)2.705 E F0 2.705(,o)C(r)-2.705 E F4() -2.705 E F0 5.205(.A)C .204 -(double quote may be quoted within double quotes by pre-)-2.5 F .081 -(ceding it with a backslash.)108 357.6 R .082(If enabled, history e) -5.082 F .082(xpansion will be performed unless an)-.15 F F4(!)2.582 E F0 -.082(appearing in double)5.082 F(quotes is escaped using a backslash.) -108 369.6 Q(The backslash preceding the)5 E F4(!)2.5 E F0(is not remo)5 -E -.15(ve)-.15 G(d.).15 E(The special parameters)108 386.4 Q F4(*)2.5 E -F0(and)2.5 E F4(@)2.5 E F0(ha)2.5 E .3 -.15(ve s)-.2 H -(pecial meaning when in double quotes \(see).15 E F3 -.666(PA)2.5 G -(RAMETERS).666 E F0(belo)2.25 E(w\).)-.25 E -.8(Wo)108 403.2 S .212 -(rds of the form).8 F F4($)2.712 E F0<08>A F2(string)A F0 2.712<0861>C -.211(re treated specially)-2.712 F 5.211(.T)-.65 G .211(he w)-5.211 F -.211(ord e)-.1 F .211(xpands to)-.15 F F2(string)2.711 E F0 2.711(,w)C -.211(ith backslash-escaped char)-2.711 F(-)-.2 E .604 -(acters replaced as speci\214ed by the ANSI C standard.)108 415.2 R .605 +345.6 S .827(ception of).15 F F1($)3.327 E F0(,)A F1<92>3.328 E F0(,)A +F1(\\)3.328 E F0 3.328(,a)C .828(nd, when history e)-3.328 F .828 +(xpansion is enabled,)-.15 F F1(!)3.328 E F0 5.828(.T)C .828 +(he characters)-5.828 F F1($)3.328 E F0(and)3.328 E F1<92>3.328 E F0 +.828(retain their special)3.328 F .075(meaning within double quotes.)108 +357.6 R .074(The backslash retains its special meaning only when follo) +5.075 F .074(wed by one of the)-.25 F(follo)108 369.6 Q .204 +(wing characters:)-.25 F F1($)2.704 E F0(,)A F1<92>2.704 E F0(,)A F1(") +3.537 E F0(,).833 E F1(\\)2.704 E F0 2.704(,o)C(r)-2.704 E F1() +2.705 E F0 5.205(.A)C .205 +(double quote may be quoted within double quotes by pre-)-2.5 F .082 +(ceding it with a backslash.)108 381.6 R .082(If enabled, history e) +5.082 F .082(xpansion will be performed unless an)-.15 F F1(!)2.581 E F0 +.081(appearing in double)5.081 F(quotes is escaped using a backslash.) +108 393.6 Q(The backslash preceding the)5 E F1(!)2.5 E F0(is not remo)5 +E -.15(ve)-.15 G(d.).15 E(The special parameters)108 410.4 Q F1(*)2.5 E +F0(and)2.5 E F1(@)2.5 E F0(ha)2.5 E .3 -.15(ve s)-.2 H +(pecial meaning when in double quotes \(see).15 E F4 -.666(PA)2.5 G +(RAMETERS).666 E F0(belo)2.25 E(w\).)-.25 E -.8(Wo)108 427.2 S .211 +(rds of the form).8 F F1($)2.711 E F0<08>A F3(string)A F0 2.711<0861>C +.211(re treated specially)-2.711 F 5.211(.T)-.65 G .211(he w)-5.211 F +.211(ord e)-.1 F .212(xpands to)-.15 F F3(string)2.712 E F0 2.712(,w)C +.212(ith backslash-escaped char)-2.712 F(-)-.2 E .605 +(acters replaced as speci\214ed by the ANSI C standard.)108 439.2 R .604 (Backslash escape sequences, if present, are decoded)5.605 F(as follo) -108 427.2 Q(ws:)-.25 E F4(\\a)144 439.2 Q F0(alert \(bell\))28.22 E F4 -(\\b)144 451.2 Q F0(backspace)27.66 E F4(\\e)144 463.2 Q F0 -(an escape character)28.78 E F4(\\f)144 475.2 Q F0(form feed)29.89 E F4 -(\\n)144 487.2 Q F0(ne)27.66 E 2.5(wl)-.25 G(ine)-2.5 E F4(\\r)144 499.2 -Q F0(carriage return)28.78 E F4(\\t)144 511.2 Q F0(horizontal tab)29.89 -E F4(\\v)144 523.2 Q F0 -.15(ve)28.22 G(rtical tab).15 E F4(\\\\)144 -535.2 Q F0(backslash)30.44 E F4<5c08>144 547.2 Q F0(single quote)30.44 E -F4(\\)144 559.2 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 F4(\\x)144 571.2 Q F2(HH)A F0 +108 451.2 Q(ws:)-.25 E F1(\\a)144 463.2 Q F0(alert \(bell\))28.22 E F1 +(\\b)144 475.2 Q F0(backspace)27.66 E F1(\\e)144 487.2 Q F0 +(an escape character)28.78 E F1(\\f)144 499.2 Q F0(form feed)29.89 E F1 +(\\n)144 511.2 Q F0(ne)27.66 E 2.5(wl)-.25 G(ine)-2.5 E F1(\\r)144 523.2 +Q F0(carriage return)28.78 E F1(\\t)144 535.2 Q F0(horizontal tab)29.89 +E F1(\\v)144 547.2 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\\\)144 +559.2 Q F0(backslash)30.44 E F1<5c08>144 571.2 Q F0(single quote)30.44 E +F1(\\)144 583.2 Q F3(nnn)A F0(the eight-bit character whose v)18.22 E +(alue is the octal v)-.25 E(alue)-.25 E F3(nnn)2.5 E F0 +(\(one to three digits\))2.5 E F1(\\x)144 595.2 Q F3(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 F4(\\c)144 583.2 Q F2(x)A F0 2.5 -(ac)24.34 G(ontrol-)-2.5 E F2(x)A F0(character)2.5 E(The e)108 600 Q(xp\ +(xadecimal v)-.15 E(alue)-.25 E F3(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(\\c)144 607.2 Q F3(x)A F0 2.5 +(ac)24.34 G(ontrol-)-2.5 E F3(x)A F0(character)2.5 E(The e)108 624 Q(xp\ anded result is single-quoted, as if the dollar sign had not been prese\ -nt.)-.15 E 2.986(Ad)108 616.8 S .486 -(ouble-quoted string preceded by a dollar sign \()-2.986 F F4($)A F0 -2.986(\)w)C .485(ill cause the string to be translated according to the) --2.986 F .117(current locale.)108 628.8 R .117(If the current locale is) -5.117 F F4(C)2.617 E F0(or)2.617 E F4(POSIX)2.617 E F0 2.617(,t)C .118 -(he dollar sign is ignored.)-2.617 F .118 -(If the string is translated and)5.118 F -(replaced, the replacement is double-quoted.)108 640.8 Q F1 -.81(PA)72 -657.6 S(RAMETERS).81 E F0(A)108 669.6 Q F2(par)4.593 E(ameter)-.15 E F0 -.843(is an entity that stores v)4.073 F 3.343(alues. It)-.25 F .843 -(can be a)3.343 F F2(name)3.342 E F0 3.342(,an).18 G(umber)-3.342 E -3.342(,o)-.4 G 3.342(ro)-3.342 G .842(ne of the special characters) --3.342 F .822(listed belo)108 681.6 R 3.323(wu)-.25 G(nder)-3.323 E F4 -.823(Special P)3.323 F(arameters)-.1 E F0 5.823(.A)C F2(variable)-2.21 E -F0 .823(is a parameter denoted by a)3.503 F F2(name)3.323 E F0 5.823(.A) -.18 G -.25(va)-2.5 G .823(riable has a).25 F F2(value)108 693.6 Q F0 -.369(and zero or more)2.869 F F2(attrib)2.869 E(utes)-.2 E F0 5.369(.A)C -(ttrib)-5.369 E .369(utes are assigned using the)-.2 F F4(declar)2.868 E -(e)-.18 E F0 -.2(bu)2.868 G .368(iltin command \(see).2 F F4(declar) -2.868 E(e)-.18 E F0(belo)108 705.6 Q 2.5(wi)-.25 G(n)-2.5 E F3(SHELL B) +nt.)-.15 E 2.985(Ad)108 640.8 S .485 +(ouble-quoted string preceded by a dollar sign \()-2.985 F F1($)A F0 +2.986(\)w)C .486(ill cause the string to be translated according to the) +-2.986 F .118(current locale.)108 652.8 R .118(If the current locale is) +5.118 F F1(C)2.618 E F0(or)2.618 E F1(POSIX)2.618 E F0 2.618(,t)C .117 +(he dollar sign is ignored.)-2.618 F .117 +(If the string is translated and)5.117 F +(replaced, the replacement is double-quoted.)108 664.8 Q F2 -.81(PA)72 +681.6 S(RAMETERS).81 E F0(A)108 693.6 Q F3(par)4.592 E(ameter)-.15 E F0 +.842(is an entity that stores v)4.072 F 3.342(alues. It)-.25 F .842 +(can be a)3.342 F F3(name)3.343 E F0 3.343(,an).18 G(umber)-3.343 E +3.343(,o)-.4 G 3.343(ro)-3.343 G .843(ne of the special characters) +-3.343 F .823(listed belo)108 705.6 R 3.323(wu)-.25 G(nder)-3.323 E F1 +.823(Special P)3.323 F(arameters)-.1 E F0 5.823(.A)C F3(variable)-2.21 E +F0 .823(is a parameter denoted by a)3.503 F F3(name)3.323 E F0 5.823(.A) +.18 G -.25(va)-2.5 G .823(riable has a).25 F F3(value)108 717.6 Q F0 +.368(and zero or more)2.868 F F3(attrib)2.868 E(utes)-.2 E F0 5.369(.A)C +(ttrib)-5.369 E .369(utes are assigned using the)-.2 F F1(declar)2.869 E +(e)-.18 E F0 -.2(bu)2.869 G .369(iltin command \(see).2 F F1(declar) +2.869 E(e)-.18 E F0(belo)108 729.6 Q 2.5(wi)-.25 G(n)-2.5 E F4(SHELL B) 2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E/F5 9/Times-Roman@0 SF(\).)A F0 -2.754(Ap)108 722.4 S .254(arameter is set if it has been assigned a v) --2.754 F 2.754(alue. The)-.25 F .254(null string is a v)2.754 F .255 -(alid v)-.25 F 2.755(alue. Once)-.25 F 2.755(av)2.755 G .255 -(ariable is set, it)-3.005 F(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 -E(7)203.445 E 0 Cg EP +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(7)202.335 E 0 Cg EP %%Page: 8 8 %%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(may be unset only by using the)108 84 Q/F1 10/Times-Bold@0 SF -(unset)2.5 E F0 -.2(bu)2.5 G(iltin command \(see).2 E/F2 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(A)108 100.8 Q/F3 10/Times-Italic@0 SF(variable)2.79 E F0 -(may be assigned to by a statement of the form)2.68 E F3(name)144 117.6 -Q F0(=[)A F3(value)A F0(])A(If)108 134.4 Q F3(value)3.023 E F0 .233 -(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 .515(and v)108 146.4 R .515(ariable e)-.25 F .515 +-.35 E 2.755(Ap)108 84 S .255 +(arameter is set if it has been assigned a v)-2.755 F 2.754(alue. The) +-.25 F .254(null string is a v)2.754 F .254(alid v)-.25 F 2.754 +(alue. Once)-.25 F 2.754(av)2.754 G .254(ariable is set, it)-3.004 F +(may be unset only by using the)108 96 Q/F1 10/Times-Bold@0 SF(unset)2.5 +E F0 -.2(bu)2.5 G(iltin command \(see).2 E/F2 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(A)108 +112.8 Q/F3 10/Times-Italic@0 SF(variable)2.79 E F0 +(may be assigned to by a statement of the form)2.68 E F3(name)144 129.6 +Q F0(=[)A F3(value)A F0(])A(If)108 146.4 Q F3(value)3.022 E F0 .232 +(is not gi)2.912 F -.15(ve)-.25 G .232(n, the v).15 F .232 +(ariable is assigned the null string.)-.25 F(All)5.233 E F3(values)3.023 +E F0(under)3.003 E .233(go tilde e)-.18 F .233(xpansion, parameter)-.15 +F .515(and v)108 158.4 R .515(ariable e)-.25 F .515 (xpansion, command substitution, arithmetic e)-.15 F .515 (xpansion, and quote remo)-.15 F -.25(va)-.15 G 3.015(l\().25 G(see) --3.015 E F2(EXP)3.015 E(ANSION)-.666 E F0(belo)108 158.4 Q 2.699 -(w\). If)-.25 F .199(the v)2.699 F .199(ariable has its)-.25 F F1 +-3.015 E F2(EXP)3.015 E(ANSION)-.666 E F0(belo)108 170.4 Q 2.698 +(w\). If)-.25 F .198(the v)2.698 F .198(ariable has its)-.25 F F1 (integer)2.698 E F0(attrib)2.698 E .198(ute set, then)-.2 F F3(value) -2.988 E F0 .198(is e)2.878 F -.25(va)-.25 G .198 -(luated as an arithmetic e).25 F .198(xpression e)-.15 F -.15(ve)-.25 G -(n).15 E .901(if the $\(\(...\)\) e)108 170.4 R .901 +2.988 E F0 .198(is e)2.878 F -.25(va)-.25 G .199 +(luated as an arithmetic e).25 F .199(xpression e)-.15 F -.15(ve)-.25 G +(n).15 E .902(if the $\(\(...\)\) e)108 182.4 R .902 (xpansion is not used \(see)-.15 F F1 .901(Arithmetic Expansion)3.401 F -F0(belo)3.401 E 3.402(w\). W)-.25 F .902 -(ord splitting is not performed,)-.8 F 1.179(with the e)108 182.4 R -1.179(xception of)-.15 F F1("$@")3.679 E F0 1.179(as e)3.679 F 1.179 -(xplained belo)-.15 F 3.679(wu)-.25 G(nder)-3.679 E F1 1.178(Special P) -3.678 F(arameters)-.1 E F0 6.178(.P)C 1.178(athname e)-6.328 F 1.178 -(xpansion is not)-.15 F 3.648(performed. Assignment)108 194.4 R 1.148 -(statements may also appear as ar)3.648 F 1.149(guments to the)-.18 F F1 -(alias)3.649 E F0(,)A F1(declar)3.649 E(e)-.18 E F0(,)A F1(typeset)3.649 -E F0(,)A F1(export)3.649 E F0(,)A F1 -.18(re)108 206.4 S(adonly).18 E F0 +F0(belo)3.401 E 3.401(w\). W)-.25 F .901 +(ord splitting is not performed,)-.8 F 1.178(with the e)108 194.4 R +1.178(xception of)-.15 F F1("$@")3.678 E F0 1.178(as e)3.678 F 1.179 +(xplained belo)-.15 F 3.679(wu)-.25 G(nder)-3.679 E F1 1.179(Special P) +3.679 F(arameters)-.1 E F0 6.179(.P)C 1.179(athname e)-6.329 F 1.179 +(xpansion is not)-.15 F 3.649(performed. Assignment)108 206.4 R 1.149 +(statements may also appear as ar)3.649 F 1.148(guments to the)-.18 F F1 +(alias)3.648 E F0(,)A F1(declar)3.648 E(e)-.18 E F0(,)A F1(typeset)3.648 +E F0(,)A F1(export)3.648 E F0(,)A F1 -.18(re)108 218.4 S(adonly).18 E F0 2.5(,a)C(nd)-2.5 E F1(local)2.5 E F0 -.2(bu)2.5 G(iltin commands.).2 E -.377(In the conte)108 223.2 R .377 +.376(In the conte)108 235.2 R .376 (xt where an assignment statement is assigning a v)-.15 F .376 -(alue to a shell v)-.25 F .376(ariable or array inde)-.25 F .376 +(alue to a shell v)-.25 F .377(ariable or array inde)-.25 F .377 (x, the +=)-.15 F .257 -(operator can be used to append to or add to the v)108 235.2 R(ariable') +(operator can be used to append to or add to the v)108 247.2 R(ariable') -.25 E 2.757(sp)-.55 G(re)-2.757 E .257(vious v)-.25 F 2.757(alue. When) --.25 F .257(+= is applied to a v)2.757 F(ariable)-.25 E .373 -(for which the inte)108 247.2 R .373(ger attrib)-.15 F .372 +-.25 F .257(+= is applied to a v)2.757 F(ariable)-.25 E .372 +(for which the inte)108 259.2 R .372(ger attrib)-.15 F .372 (ute has been set,)-.2 F F3(value)2.872 E F0 .372(is e)2.872 F -.25(va) --.25 G .372(luated as an arithmetic e).25 F .372 -(xpression and added to the)-.15 F -.25(va)108 259.2 S(riable').25 E -2.888(sc)-.55 G .388(urrent v)-2.888 F .388(alue, which is also e)-.25 F +-.25 G .372(luated as an arithmetic e).25 F .373 +(xpression and added to the)-.15 F -.25(va)108 271.2 S(riable').25 E +2.889(sc)-.55 G .389(urrent v)-2.889 F .389(alue, which is also e)-.25 F -.25(va)-.25 G 2.889(luated. When).25 F .389 -(+= is applied to an array v)2.889 F .389(ariable using compound)-.25 F -.186(assignment \(see)108 271.2 R F1(Arrays)2.686 E F0(belo)2.686 E .186 +(+= is applied to an array v)2.889 F .388(ariable using compound)-.25 F +.185(assignment \(see)108 283.2 R F1(Arrays)2.685 E F0(belo)2.685 E .185 (w\), the v)-.25 F(ariable')-.25 E 2.685(sv)-.55 G .185 -(alue is not unset \(as it is when using =\), and ne)-2.935 F 2.685(wv) --.25 G .185(alues are)-2.935 F .32(appended to the array be)108 283.2 R +(alue is not unset \(as it is when using =\), and ne)-2.935 F 2.686(wv) +-.25 G .186(alues are)-2.936 F .32(appended to the array be)108 295.2 R .32(ginning at one greater than the array')-.15 F 2.82(sm)-.55 G .32 (aximum inde)-2.82 F 2.82(x. When)-.15 F .32(applied to a string-)2.82 F --.25(va)108 295.2 S(lued v).25 E(ariable,)-.25 E F3(value)2.5 E F0(is e) +-.25(va)108 307.2 S(lued v).25 E(ariable,)-.25 E F3(value)2.5 E F0(is e) 2.5 E(xpanded and appended to the v)-.15 E(ariable')-.25 E 2.5(sv)-.55 G -(alue.)-2.75 E F1 -.2(Po)87 312 S(sitional P).2 E(arameters)-.1 E F0(A) -108 324 Q F3 .706(positional par)4.456 F(ameter)-.15 E F0 .706(is a par\ +(alue.)-2.75 E F1 -.2(Po)87 324 S(sitional P).2 E(arameters)-.1 E F0(A) +108 336 Q F3 .705(positional par)4.455 F(ameter)-.15 E F0 .706(is a par\ ameter 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 336 R 2.944(sa)-.55 +3.935 F(Posi-)5.706 E .445 +(tional parameters are assigned from the shell')108 348 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 348 Q F1(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 +.2 G .444(d, and may be reassigned using).1 F(the)108 360 Q F1(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 statements.)5.833 F(The)5.834 E .334(positional parameters are temporarily replaced when a shell functi\ -on is e)108 360 R -.15(xe)-.15 G .334(cuted \(see).15 F F2(FUNCTIONS) -2.834 E F0(belo)2.584 E(w\).)-.25 E 1.404(When a positional parameter c\ -onsisting of more than a single digit is e)108 376.8 R 1.403 -(xpanded, it must be enclosed in)-.15 F(braces \(see)108 388.8 Q F2(EXP) -2.5 E(ANSION)-.666 E F0(belo)2.25 E(w\).)-.25 E F1(Special P)87 405.6 Q -(arameters)-.1 E F0 1.674(The shell treats se)108 417.6 R -.15(ve)-.25 G -1.674(ral parameters specially).15 F 6.675(.T)-.65 G 1.675 +on is e)108 372 R -.15(xe)-.15 G .333(cuted \(see).15 F F2(FUNCTIONS) +2.833 E F0(belo)2.583 E(w\).)-.25 E 1.403(When a positional parameter c\ +onsisting of more than a single digit is e)108 388.8 R 1.404 +(xpanded, it must be enclosed in)-.15 F(braces \(see)108 400.8 Q F2(EXP) +2.5 E(ANSION)-.666 E F0(belo)2.25 E(w\).)-.25 E F1(Special P)87 417.6 Q +(arameters)-.1 E F0 1.675(The shell treats se)108 429.6 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 429.6 Q(wed.)-.25 E F1(*)108 441.6 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 453.6 R .084(xpands to a single w)-.15 F .084 +(them is not allo)108 441.6 Q(wed.)-.25 E F1(*)108 453.6 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 465.6 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 465.6 R F2(IFS)2.503 E F0 .003(special v)2.253 F +.003(acter of the)144 477.6 R F2(IFS)2.503 E F0 .003(special v)2.253 F 2.503(ariable. That)-.25 F .003(is, ")2.503 F F1($*)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 F1 ($1)A F3(c)A F1($2)A F3(c)A F1(...)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 477.6 R -.768(alue of the)-.25 F F2(IFS)3.268 E F0 -.25(va)3.018 G 3.268 -(riable. If).25 F F2(IFS)3.268 E F0 .769 -(is unset, the parameters are separated by spaces.)3.018 F(If)5.769 E F2 -(IFS)144 489.6 Q F0(is null, the parameters are joined without interv) -2.25 E(ening separators.)-.15 E F1(@)108 501.6 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 513.6 R .113(xpands to a separate w) --.15 F 2.614(ord. That)-.1 F .114(is, ")2.614 F F1($@)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 F1 -($1)A F0 2.614("")C F1($2)-2.614 E F0 2.614(".)C(..)-2.614 E .135 -(If the double-quoted e)144 525.6 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 -537.6 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 549.6 R 2.838(ord. When)-.1 F .337 -(there are no positional parameters, ")2.838 F F1($@)A F0 2.837("a)C(nd) --2.837 E F1($@)2.837 E F0 -.15(ex)2.837 G(pand).15 E -(to nothing \(i.e., the)144 561.6 Q 2.5(ya)-.15 G(re remo)-2.5 E -.15 -(ve)-.15 G(d\).).15 E F1(#)108 573.6 Q F0 +.004(is the \214rst char)2.813 F(-)-.2 E .769(acter of the v)144 489.6 R +.769(alue of the)-.25 F F2(IFS)3.269 E F0 -.25(va)3.019 G 3.269 +(riable. If).25 F F2(IFS)3.268 E F0 .768 +(is unset, the parameters are separated by spaces.)3.018 F(If)5.768 E F2 +(IFS)144 501.6 Q F0(is null, the parameters are joined without interv) +2.25 E(ening separators.)-.15 E F1(@)108 513.6 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 525.6 R .114(xpands to a separate w) +-.15 F 2.614(ord. That)-.1 F .113(is, ")2.613 F F1($@)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 F1 +($1)A F0 2.613("")C F1($2)-2.613 E F0 2.613(".)C(..)-2.613 E .134 +(If the double-quoted e)144 537.6 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 +549.6 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 561.6 R 2.837(ord. When)-.1 F .338 +(there are no positional parameters, ")2.837 F F1($@)A F0 2.838("a)C(nd) +-2.838 E F1($@)2.838 E F0 -.15(ex)2.838 G(pand).15 E +(to nothing \(i.e., the)144 573.6 Q 2.5(ya)-.15 G(re remo)-2.5 E -.15 +(ve)-.15 G(d\).).15 E F1(#)108 585.6 Q F0 (Expands to the number of positional parameters in decimal.)31 E F1(?) -108 585.6 Q F0(Expands to the e)31 E(xit status of the most recently e) +108 597.6 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 F1108 -597.6 Q F0 .881 +609.6 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 F1(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 -609.6 Q F12.5 E F0(option\).)2.5 E F1($)108 621.6 Q F0 .214 +621.6 Q F12.5 E F0(option\).)2.5 E F1($)108 633.6 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 633.6 Q F1(!)108 645.6 Q F0 +(shell, not the subshell.)144 645.6 Q F1(!)108 657.6 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 F1(0)108 657.6 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 F1(bash)4.192 E -F0(is)4.192 E(in)144 669.6 Q -.2(vo)-.4 G -.1(ke).2 G 3.078(dw).1 G .578 -(ith a \214le of commands,)-3.078 F F1($0)3.078 E F0 .578 -(is set to the name of that \214le.)3.078 F(If)5.577 E F1(bash)3.077 E -F0 .577(is started with the)3.077 F F13.077 E F0 .368 -(option, then)144 681.6 R F1($0)2.869 E F0 .369 +(cuted background \(asynchronous\) command.).15 E F1(0)108 669.6 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 681.6 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 F13.078 E F0 .369 +(option, then)144 693.6 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.369 E -(-)-.2 E(wise, it is set to the \214le name used to in)144 693.6 Q -.2 +-.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 \214le name used to in)144 705.6 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 705.6 Q F0 .055 +F1(_)108 717.6 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 .054(he shell or shell script being e).1 F -.15 -(xe)-.15 G(cuted).15 E .691(as passed in the en)144 717.6 R .691 +-.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 729.6 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 729.6 Q .571(vious command, after e)-.25 F 3.071 -(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(GNU Bash-3.2)72 768 -Q(2008 April 5)148.455 E(8)203.445 E 0 Cg EP +3.191(,e)-.65 G .691(xpands to the last ar)-3.341 F .691(gument to the) +-.18 F(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(8)202.335 E 0 Cg EP %%Page: 9 9 %%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)144 84 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 +-.35 E(pre)144 84 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 .771 -.1(ke e).2 H .571(ach command).1 F -.15(exe)144 96 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 -96 Q(ed.)-.1 E/F1 10/Times-Bold@0 SF(Shell V)87 112.8 Q(ariables)-.92 E -F0(The follo)108 124.8 Q(wing v)-.25 E(ariables are set by the shell:) --.25 E F1 -.3(BA)108 141.6 S(SH).3 E F0 +108 Q(ed.)-.1 E/F1 10/Times-Bold@0 SF(Shell V)87 124.8 Q(ariables)-.92 E +F0(The follo)108 136.8 Q(wing v)-.25 E(ariables are set by the shell:) +-.25 E F1 -.3(BA)108 153.6 S(SH).3 E F0 (Expands to the full \214le name 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 153.6 -S(SHPID).3 E F0 .361(Expands to the process id of the current)144 165.6 -R F1(bash)2.861 E F0 2.861(process. This)2.861 F(dif)2.86 E .36 -(fers from)-.25 F F1($$)2.86 E F0 .36(under certain circum-)2.86 F -(stances, such as subshells that do not require)144 177.6 Q F1(bash)2.5 -E F0(to be re-initialized.)2.5 E F1 -.3(BA)108 189.6 S(SH_ARGC).3 E F0 -.934(An array v)144 201.6 R .934(ariable whose v)-.25 F .934 +(ke t).2 H(his instance of).1 E F1(bash)2.5 E F0(.)A F1 -.3(BA)108 165.6 +S(SHPID).3 E F0 .36(Expands to the process id of the current)144 177.6 R +F1(bash)2.861 E F0 2.861(process. This)2.861 F(dif)2.861 E .361 +(fers from)-.25 F F1($$)2.861 E F0 .361(under certain circum-)2.861 F +(stances, such as subshells that do not require)144 189.6 Q F1(bash)2.5 +E F0(to be re-initialized.)2.5 E F1 -.3(BA)108 201.6 S(SH_ARGC).3 E F0 +.935(An array v)144 213.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 213.6 S .535(cution call stack.).15 F +F1(bash)3.434 E F0 -.15(exe)144 225.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 225.6 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 1.525(parameters passed is pushed onto)144 -237.6 R F1 -.3(BA)4.024 G(SH_ARGC).3 E F0 6.524(.T)C 1.524 -(he shell sets)-6.524 F F1 -.3(BA)4.024 G(SH_ARGC).3 E F0 1.524 -(only when in)4.024 F -.15(ex)144 249.6 S(tended deb).15 E +n or script)5.535 F -.15(exe)144 237.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 1.524(parameters passed is pushed onto)144 +249.6 R F1 -.3(BA)4.024 G(SH_ARGC).3 E F0 6.524(.T)C 1.524 +(he shell sets)-6.524 F F1 -.3(BA)4.024 G(SH_ARGC).3 E F0 1.525 +(only when in)4.024 F -.15(ex)144 261.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 261.6 S(SH_ARGV).3 E F0 .979(An array v)144 -273.6 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 285.6 R -1.424(call is at the bottom.)144 297.6 R 1.424(When a subroutine is e) +(w\))-.25 E F1 -.3(BA)108 273.6 S(SH_ARGV).3 E F0 .98(An array v)144 +285.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 297.6 R +1.424(call is at the bottom.)144 309.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 F1 -.3(BA)144 -309.6 S(SH_ARGV).3 E F0 6.091(.T)C 1.091(he shell sets)-6.091 F F1 -.3 -(BA)3.591 G(SH_ARGV).3 E F0 1.091(only when in e)3.591 F 1.091 -(xtended deb)-.15 F 1.09(ugging mode \(see the)-.2 F(description of the) -144 321.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 333.6 S -(SH_COMMAND).3 E F0 1.242(The command currently being e)144 345.6 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 +321.6 S(SH_ARGV).3 E F0 6.09(.T)C 1.09(he shell sets)-6.09 F F1 -.3(BA) +3.591 G(SH_ARGV).3 E F0 1.091(only when in e)3.591 F 1.091(xtended deb) +-.15 F 1.091(ugging mode \(see the)-.2 F(description of the)144 333.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 345.6 S(SH_COMMAND).3 +E F0 1.243(The command currently being e)144 357.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 -357.6 Q -.15(xe)-.15 G(cuting at the time of the trap.).15 E F1 -.3(BA) -108 369.6 S(SH_EXECUTION_STRING).3 E F0(The command ar)144 381.6 Q +369.6 Q -.15(xe)-.15 G(cuting at the time of the trap.).15 E F1 -.3(BA) +108 381.6 S(SH_EXECUTION_STRING).3 E F0(The command ar)144 393.6 Q (gument to the)-.18 E F12.5 E F0(in)2.5 E -.2(vo)-.4 G -(cation option.).2 E F1 -.3(BA)108 393.6 S(SH_LINENO).3 E F0 .034 -(An array v)144 405.6 R .034(ariable whose members are the line numbers\ - in source \214les corresponding to each mem-)-.25 F 2.944(ber of)144 -417.6 R F1(FUNCN)5.444 E(AME)-.2 E F0(.)A F1(${B)7.944 E(ASH_LINENO[)-.3 +(cation option.).2 E F1 -.3(BA)108 405.6 S(SH_LINENO).3 E F0 .034 +(An array v)144 417.6 R .034(ariable whose members are the line numbers\ + in source \214les corresponding to each mem-)-.25 F 2.945(ber of)144 +429.6 R F1(FUNCN)5.445 E(AME)-.2 E F0(.)A F1(${B)7.944 E(ASH_LINENO[)-.3 E/F2 10/Times-Italic@0 SF($i)A F1(]})A F0 2.944 (is the line number in the source \214le where)5.444 F F1(${FUNCN)144 -429.6 Q(AME[)-.2 E F2($i)A F1(]})A F0 -.1(wa)3.312 G 3.311(sc).1 G .811 +441.6 Q(AME[)-.2 E F2($i)A F1(]})A F0 -.1(wa)3.311 G 3.311(sc).1 G .811 (alled \(or)-3.311 F F1(${B)3.311 E(ASH_LINENO[)-.3 E F2($i-1)A F1(]})A F0 .811(if referenced within another shell)3.311 F 4.512 -(function\). The)144 441.6 R 2.012(corresponding source \214le name is) +(function\). The)144 453.6 R 2.012(corresponding source \214le name is) 4.512 F F1(${B)4.512 E(ASH_SOURCE[)-.3 E F2($i)A F1 4.512(]}. Use)B -2.012(LINENO to)4.512 F(obtain the curr)144 453.6 Q(ent line number)-.18 -E(.)-1 E -.3(BA)108 465.6 S(SH_REMA).3 E(TCH)-.95 E F0 .006(An array v) -144 477.6 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 489.6 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 501.6 R(x)-.15 E -F2(n)3.498 E F0 .997(is the portion of the string matching the)3.498 F -F2(n)3.497 E F0 .997(th parenthesized sube)B(xpres-)-.15 E 2.5 -(sion. This)144 513.6 R -.25(va)2.5 G(riable is read-only).25 E(.)-.65 E -F1 -.3(BA)108 525.6 S(SH_SOURCE).3 E F0 .889(An array v)144 537.6 R .889 +2.012(LINENO to)4.512 F(obtain the curr)144 465.6 Q(ent line number)-.18 +E(.)-1 E -.3(BA)108 477.6 S(SH_REMA).3 E(TCH)-.95 E F0 .005(An array v) +144 489.6 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 501.6 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 513.6 R(x)-.15 E +F2(n)3.497 E F0 .997(is the portion of the string matching the)3.497 F +F2(n)3.498 E F0 .998(th parenthesized sube)B(xpres-)-.15 E 2.5 +(sion. This)144 525.6 R -.25(va)2.5 G(riable is read-only).25 E(.)-.65 E +F1 -.3(BA)108 537.6 S(SH_SOURCE).3 E F0 .89(An array v)144 549.6 R .889 (ariable whose members are the source \214lenames corresponding to the \ -elements in the)-.25 F F1(FUNCN)144 549.6 Q(AME)-.2 E F0(array v)2.5 E -(ariable.)-.25 E F1 -.3(BA)108 561.6 S(SH_SUBSHELL).3 E F0 .402 -(Incremented by one each time a subshell or subshell en)144 573.6 R .401 -(vironment is spa)-.4 F 2.901(wned. The)-.15 F .401(initial v)2.901 F -.401(alue is)-.25 F(0.)144 585.6 Q F1 -.3(BA)108 597.6 S(SH_VERSINFO).3 -E F0 2.644(Ar)144 609.6 S .144(eadonly array v)-2.644 F .144 +elements in the)-.25 F F1(FUNCN)144 561.6 Q(AME)-.2 E F0(array v)2.5 E +(ariable.)-.25 E F1 -.3(BA)108 573.6 S(SH_SUBSHELL).3 E F0 .401 +(Incremented by one each time a subshell or subshell en)144 585.6 R .401 +(vironment is spa)-.4 F 2.902(wned. The)-.15 F .402(initial v)2.902 F +.402(alue is)-.25 F(0.)144 597.6 Q F1 -.3(BA)108 609.6 S(SH_VERSINFO).3 +E F0 2.645(Ar)144 621.6 S .145(eadonly array v)-2.645 F .144 (ariable whose members hold v)-.25 F .144 -(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 621.6 S +(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 633.6 S (lues assigned to the array members are as follo).25 E(ws:)-.25 E F1 -.3 -(BA)144 639.6 S(SH_VERSINFO[).3 E F0(0)A F1(])A F0(The major v)24.74 E +(BA)144 651.6 S(SH_VERSINFO[).3 E F0(0)A F1(])A F0(The major v)24.74 E (ersion number \(the)-.15 E F2 -.37(re)2.5 G(lease).37 E F0(\).)A F1 -.3 -(BA)144 651.6 S(SH_VERSINFO[).3 E F0(1)A F1(])A F0(The minor v)24.74 E +(BA)144 663.6 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 663.6 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 675.6 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 687.6 S +144 675.6 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 687.6 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 699.6 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 699.6 S(SH_VERSINFO[).3 E F0(5)A +F2(beta1)2.5 E F0(\).)A F1 -.3(BA)144 711.6 S(SH_VERSINFO[).3 E F0(5)A F1(])A F0(The v)24.74 E(alue of)-.25 E F1(MA)2.5 E(CHTYPE)-.55 E F0(.)A -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(9)203.445 E 0 Cg EP +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(9)202.335 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP @@ -1337,158 +1354,158 @@ BP -.35 E/F1 10/Times-Bold@0 SF -.3(BA)108 84 S(SH_VERSION).3 E F0 (Expands to a string describing the v)144 96 Q (ersion of this instance of)-.15 E F1(bash)2.5 E F0(.)A F1(COMP_CW)108 -112.8 Q(ORD)-.1 E F0 .397(An inde)144 124.8 R 2.897(xi)-.15 G(nto)-2.897 +112.8 Q(ORD)-.1 E F0 .396(An inde)144 124.8 R 2.896(xi)-.15 G(nto)-2.896 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 .396(This v)5.396 F -(ari-)-.25 E 1.18(able is a)144 136.8 R -.25(va)-.2 G 1.181 +(ord containing the current cursor position.)-.1 F .397(This v)5.397 F +(ari-)-.25 E 1.181(able is a)144 136.8 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.181(he programmable completion f)-3.681 F -1.181(acilities \(see)-.1 F F1(Pr)144 148.8 Q(ogrammable Completion)-.18 +(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 148.8 Q(ogrammable Completion)-.18 E F0(belo)2.5 E(w\).)-.25 E F1(COMP_KEY)108 165.6 Q F0(The k)144 177.6 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 194.4 Q F0 -1.208(The current command line.)144 206.4 R 1.208(This v)6.208 F 1.208 +1.207(The current command line.)144 206.4 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.207(xternal com-)-.15 F -2.848(mands in)144 218.4 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.208(xternal com-)-.15 F +2.849(mands in)144 218.4 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.849(ogrammable Completion)-.18 F -F0(belo)144 230.4 Q(w\).)-.25 E F1(COMP_POINT)108 247.2 Q F0 .667 -(The inde)144 259.2 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 +(acilities \(see)-.1 F F1(Pr)5.349 E 2.848(ogrammable Completion)-.18 F +F0(belo)144 230.4 Q(w\).)-.25 E F1(COMP_POINT)108 247.2 Q F0 .666 +(The inde)144 259.2 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 (ot).15 G .666(he be)-3.166 F .666(ginning of the current command.)-.15 -F .666(If the)5.666 F .534 +F .667(If the)5.667 F .535 (current cursor position is at the end of the current command, the v)144 -271.2 R .535(alue of this v)-.25 F .535(ariable is equal to)-.25 F F1 -(${#COMP_LINE})144 283.2 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 +271.2 R .534(alue of this v)-.25 F .534(ariable is equal to)-.25 F F1 +(${#COMP_LINE})144 283.2 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 295.2 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 -312 Q F0 .041(Set to an inte)144 324 R .041(ger v)-.15 F .041(alue corr\ +312 Q F0 .042(Set to an inte)144 324 R .042(ger v)-.15 F .041(alue corr\ esponding to the type of completion attempted that caused a completion) --.25 F .338(function to be called:)144 336 R/F2 10/Times-Italic@0 SF -.5 +-.25 F .337(function to be called:)144 336 R/F2 10/Times-Italic@0 SF -.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 .637 -.15(ve t)-.25 H(abs,).15 E F2(!)144 348 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 +-2.837 F .638 -.15(ve t)-.25 H(abs,).15 E F2(!)144 348 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 E F0 4.092(,t)C 4.092(ol)-4.092 G 1.592(ist completions if the w) --4.092 F 1.592(ord is not)-.1 F 1.553(unmodi\214ed, or)144 360 R F2(%) -4.053 E F0 4.052(,f)C 1.552(or menu completion.)-4.052 F 1.552(This v) +-4.092 F 1.591(ord is not)-.1 F 1.552(unmodi\214ed, or)144 360 R F2(%) +4.052 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 372 S 2.928 +(ilable only in shell functions and).25 F -.15(ex)144 372 S 2.929 (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.429 E(ogrammable)-.18 E(Completion)144 +(acilities \(see)-.1 F F1(Pr)5.428 E(ogrammable)-.18 E(Completion)144 384 Q F0(belo)2.5 E(w\).)-.25 E F1(COMP_W)108 400.8 Q(ORDBREAKS)-.1 E F0 -1.284(The set of characters that the Readline library treats as w)144 -412.8 R 1.283(ord separators when performing w)-.1 F(ord)-.1 E 3.125 -(completion. If)144 424.8 R/F3 9/Times-Bold@0 SF(COMP_W)3.125 E +1.283(The set of characters that the Readline library treats as w)144 +412.8 R 1.284(ord separators when performing w)-.1 F(ord)-.1 E 3.126 +(completion. If)144 424.8 R/F3 9/Times-Bold@0 SF(COMP_W)3.126 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 436.8 Q F1(COMP_W) -108 453.6 Q(ORDS)-.1 E F0 .654(An array v)144 465.6 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 3.566(line. The)144 477.6 R -.1(wo) -3.566 G 1.067 -(rds are split on shell metacharacters as the shell parser w).1 F 1.067 -(ould separate them.)-.1 F(This)6.067 E -.25(va)144 489.6 S .004 +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 436.8 Q F1(COMP_W) +108 453.6 Q(ORDS)-.1 E F0 .653(An array v)144 465.6 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 3.567(line. The)144 477.6 R -.1(wo) +3.567 G 1.067 +(rds are split on shell metacharacters as the shell parser w).1 F 1.066 +(ould separate them.)-.1 F(This)6.066 E -.25(va)144 489.6 S .003 (riable is a).25 F -.25(va)-.2 G .004(ilable only in shell functions in) .25 F -.2(vo)-.4 G -.1(ke).2 G 2.504(db).1 G 2.504(yt)-2.504 G .004 -(he programmable completion f)-2.504 F .003(acilities \(see)-.1 F F1(Pr) +(he programmable completion f)-2.504 F .004(acilities \(see)-.1 F F1(Pr) 144 501.6 Q(ogrammable Completion)-.18 E F0(belo)2.5 E(w\).)-.25 E F1 (DIRST)108 518.4 Q -.55(AC)-.9 G(K).55 E F0 2.26(An array v)144 530.4 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 542.4 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 +1.094(Directories appear in the stack in the order the)144 542.4 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 554.4 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 566.4 Q F0(and)2.746 E F1(popd)2.746 E +F 1.431(ut the)-.2 F F1(pushd)144 566.4 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 578.4 R +F(ariable)-.25 E .351(will not change the current directory)144 578.4 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(it is subsequently reset.)144 590.4 Q F1(EUID)108 -607.2 Q F0 1.104(Expands to the ef)11 F(fecti)-.25 E 1.403 -.15(ve u) +(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 590.4 Q F1(EUID)108 +607.2 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 +(nitialized at shell startup.)-3.603 F 1.104(This v)6.103 F 1.104 (ariable is)-.25 F(readonly)144 619.2 Q(.)-.65 E F1(FUNCN)108 636 Q(AME) --.2 E F0 .478(An array v)144 648 R .479 +-.2 E F0 .479(An array v)144 648 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 660 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 .25 +-.25 F -.15(xe)-.15 G .478(cution call stack.).15 F .276 +(The element with inde)144 660 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 .25 (element is)144 672 R/F4 10/Courier@0 SF("main")2.75 E F0 5.25(.T)C .25 (his v)-5.25 F .25(ariable e)-.25 F .25 (xists only when a shell function is e)-.15 F -.15(xe)-.15 G 2.75 (cuting. Assignments).15 F(to)2.75 E F3(FUNCN)144 684 Q(AME)-.18 E F0 -(ha)2.635 E .685 -.15(ve n)-.2 H 2.885(oe).15 G -.25(ff)-2.885 G .385 +(ha)2.634 E .684 -.15(ve n)-.2 H 2.884(oe).15 G -.25(ff)-2.884 G .384 (ect and return an error status.).25 F(If)5.385 E F3(FUNCN)2.885 E(AME) --.18 E F0 .384(is unset, it loses its special)2.634 F(properties, e)144 +-.18 E F0 .385(is unset, it loses its special)2.635 F(properties, e)144 696 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(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(10)198.445 E 0 Cg EP +-2.5 G(ubsequently reset.)-2.5 E(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(10)197.335 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(GR)108 84 Q(OUPS)-.3 E F0 1.228(An array v) +-.35 E/F1 10/Times-Bold@0 SF(GR)108 84 Q(OUPS)-.3 E F0 1.229(An array v) 144 96 R 1.228(ariable containing the list of groups of which the curre\ -nt user is a member)-.25 F 6.229(.A)-.55 G(ssign-)-6.229 E .597 -(ments to)144 108 R/F2 9/Times-Bold@0 SF(GR)3.097 E(OUPS)-.27 E F0(ha) +nt user is a member)-.25 F 6.228(.A)-.55 G(ssign-)-6.228 E .596 +(ments to)144 108 R/F2 9/Times-Bold@0 SF(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 F2(GR)3.097 E(OUPS) -.27 E F0 .597(is unset, it loses its spe-)2.847 F(cial properties, e) 144 120 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 136.8 Q F0 .355 -(The history number)144 148.8 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 +(ss)-2.5 G(ubsequently reset.)-2.5 E F1(HISTCMD)108 136.8 Q F0 .356 +(The history number)144 148.8 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.856 E F0 .356(is unset, it)2.606 F +(HISTCMD)2.855 E F0 .355(is unset, it)2.605 F (loses its special properties, e)144 160.8 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 177.6 Q(AME)-.2 E F0 (Automatically set to the name of the current host.)144 189.6 Q F1 -(HOSTTYPE)108 206.4 Q F0 .223(Automatically set to a string that unique\ -ly describes the type of machine on which)144 218.4 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 230.4 R +(HOSTTYPE)108 206.4 Q F0 .222(Automatically set to a string that unique\ +ly describes the type of machine on which)144 218.4 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 230.4 R (def)2.5 E(ault is system-dependent.)-.1 E F1(LINENO)108 247.2 Q F0 1.408(Each time this parameter is referenced, the shell substitutes a d\ ecimal number representing the)144 259.2 R .078(current sequential line\ number \(starting with 1\) within a script or function.)144 271.2 R -.078(When not in a script or)5.078 F .306(function, the v)144 283.2 R -.306(alue substituted is not guaranteed to be meaningful.)-.25 F(If) -5.307 E F2(LINENO)2.807 E F0 .307(is unset, it loses its)2.557 F +.079(When not in a script or)5.078 F .307(function, the v)144 283.2 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 295.2 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 312 Q(CHTYPE)-.55 E F0 .898(Automatically set to a string that fully de\ -scribes the system type on which)144 324 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 336 Q +scribes the system type on which)144 324 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 336 Q /F3 10/Times-Italic@0 SF(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(OLDPWD)108 352.8 Q F0 (The pre)144 364.8 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 381.6 Q(ARG)-.9 E F0 1.626 +F1(cd)2.5 E F0(command.)2.5 E F1(OPT)108 381.6 Q(ARG)-.9 E F0 1.627 (The v)144 393.6 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(SHELL)4.127 E -.09(BU)144 405.6 S(IL) +1.626(iltin command \(see).2 F F2(SHELL)4.126 E -.09(BU)144 405.6 S(IL) .09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1(OPTIND)108 -422.4 Q F0 1.652(The inde)144 434.4 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 446.4 S +422.4 Q F0 1.651(The inde)144 434.4 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 F2(SHELL)4.152 E -.09(BU)144 446.4 S (IL).09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1(OSTYPE)108 463.2 Q F0 .329(Automatically set to a string that describes the operat\ -ing system on which)144 475.2 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 487.2 Q +ing system on which)144 475.2 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 487.2 Q (ault is system-dependent.)-.1 E F1(PIPEST)108 504 Q -.95(AT)-.9 G(US) .95 E F0 .61(An array v)144 516 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 @@ -1499,9 +1516,9 @@ ing system on which)144 475.2 R F1(bash)2.83 E F0 .33(is e)2.83 F -.15 2.5(arent. This)-2.5 F -.25(va)2.5 G(riable is readonly).25 E(.)-.65 E F1(PWD)108 561.6 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 578.4 Q F0 .565 -(Each time this parameter is referenced, a random inte)144 590.4 R .566 -(ger between 0 and 32767 is generated.)-.15 F(The)5.566 E .01 +(RANDOM)108 578.4 Q F0 .566 +(Each time this parameter is referenced, a random inte)144 590.4 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 602.4 R .01(alue to)-.25 F F2(RANDOM)2.51 E/F4 9/Times-Roman@0 SF(.)A F0 (If)4.51 E F2(RANDOM)2.51 E F0(is)2.26 E @@ -1512,178 +1529,178 @@ F1(PWD)108 561.6 Q F0(The current w)12.67 E .18 E F0 -.2(bu)2.5 G(iltin command when no ar).2 E (guments are supplied.)-.18 E F1(SECONDS)108 660 Q F0 .795(Each time th\ is parameter is referenced, the number of seconds since shell in)144 672 -R -.2(vo)-.4 G .795(cation is returned.).2 F .713(If a v)144 684 R .712 +R -.2(vo)-.4 G .795(cation is returned.).2 F .712(If a v)144 684 R .712 (alue is assigned to)-.25 F F2(SECONDS)3.212 E F4(,)A F0 .712(the v) 2.962 F .712(alue returned upon subsequent references is the number)-.25 -F .407(of seconds since the assignment plus the v)144 696 R .408 -(alue assigned.)-.25 F(If)5.408 E F2(SECONDS)2.908 E F0 .408 +F .408(of seconds since the assignment plus the v)144 696 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 708 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(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E -(11)198.445 E 0 Cg EP +(ubsequently reset.)-2.5 E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E +(11)197.335 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(SHELLOPTS)108 84 Q F0 3.263(Ac)144 96 S -.763(olon-separated list of enabled shell options.)-3.263 F .763(Each w) +-.35 E/F1 10/Times-Bold@0 SF(SHELLOPTS)108 84 Q F0 3.262(Ac)144 96 S +.763(olon-separated list of enabled shell options.)-3.262 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 F1144 108 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 9 -/Times-Bold@0 SF 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 120 R F2(SHELLOPTS)2.52 E F0 .019 -(are those reported as)2.27 F/F3 10/Times-Italic@0 SF(on)2.749 E F0(by) +(gument for the)-.18 F F1144 108 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 9 +/Times-Bold@0 SF 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 120 R F2(SHELLOPTS)2.519 E F0 .019 +(are those reported as)2.269 F/F3 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 .019(ariable is in the en)-.25 F(vironment)-.4 E(when) -144 132 Q F1(bash)3.141 E F0 .642(starts up, each shell option in the l\ -ist will be enabled before reading an)3.141 F 3.142(ys)-.15 G .642 -(tartup \214les.)-3.142 F(This v)144 144 Q(ariable is read-only)-.25 E +(his v)-2.519 F .02(ariable is in the en)-.25 F(vironment)-.4 E(when)144 +132 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 144 Q(ariable is read-only)-.25 E (.)-.65 E F1(SHL)108 160.8 Q(VL)-.92 E F0 (Incremented by one each time an instance of)144 172.8 Q F1(bash)2.5 E F0(is started.)2.5 E F1(UID)108 189.6 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 .994(The follo)108 206.4 R .994(wing v)-.25 F .994 +E(.)-.65 E .993(The follo)108 206.4 R .993(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 .993 +(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 218.4 -Q -.65(w.)-.25 G F1 -.3(BA)108 235.2 S(SH_ENV).3 E F0 .505 -(If this parameter is set when)144 247.2 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 +Q -.65(w.)-.25 G F1 -.3(BA)108 235.2 S(SH_ENV).3 E F0 .506 +(If this parameter is set when)144 247.2 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 259.2 R F3 -(~/.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 271.2 R .525 +(~/.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 271.2 R .525 (xpansion, command substitution, and arithmetic e)-.15 F .525 (xpansion before being interpreted)-.15 F(as a \214le name.)144 283.2 Q F2 -.666(PA)5 G(TH)-.189 E F0 (is not used to search for the resultant \214le name.)2.25 E F1(CDP)108 -295.2 Q -.95(AT)-.74 G(H).95 E F0 1.248(The search path for the)144 -307.2 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 +295.2 Q -.95(AT)-.74 G(H).95 E F0 1.247(The search path for the)144 +307.2 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 319.2 R -F1(cd)6.295 E F0 6.296(command. A)6.296 F 3.796(sample v)6.296 F 3.796 +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/F4 10/Courier@0 SF(".:~:/usr")144 331.2 Q F0(.)A F1 (COLUMNS)108 343.2 Q F0 .425(Used by the)144 355.2 R F1(select)2.925 E F0 -.2(bu)2.925 G .425(iltin command to determine the terminal width wh\ en printing selection lists.).2 F (Automatically set upon receipt of a SIGWINCH.)144 367.2 Q F1(COMPREPL) -108 379.2 Q(Y)-.92 E F0 .847(An array v)144 391.2 R .848 +108 379.2 Q(Y)-.92 E F0 .848(An array v)144 391.2 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 403.2 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(acility \(see)-.1 E F1(Pr)2.5 E (ogrammable Completion)-.18 E F0(belo)2.5 E(w\).)-.25 E F1(EMA)108 415.2 -Q(CS)-.55 E F0(If)144 427.2 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 F4(t)2.535 E -F0 2.535(,i)C 2.535(ta)-2.535 G .035(ssumes that the)-2.535 F +Q(CS)-.55 E F0(If)144 427.2 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 439.2 Q(uf)-.2 E (fer and disables line editing.)-.25 E F1(FCEDIT)108 451.2 Q F0(The def) 144 463.2 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 475.2 Q F0 2.598(Ac)144 487.2 S .098 -(olon-separated list of suf)-2.598 F<8c78>-.25 E .098 +(iltin command.).2 E F1(FIGNORE)108 475.2 Q F0 2.599(Ac)144 487.2 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.599 E F0(belo)144 499.2 Q 2.705(w\). A)-.25 F .205 -(\214lename whose suf)2.705 F .205(\214x matches one of the entries in) --.25 F F2(FIGNORE)2.705 E F0 .205(is e)2.455 F .204 +(READLINE)2.598 E F0(belo)144 499.2 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 511.2 Q 2.5 (As)5 G(ample v)-2.5 E(alue is)-.25 E F4(".o:~")2.5 E F0(.)A F1 (GLOBIGNORE)108 523.2 Q F0 3.118(Ac)144 535.2 S .618(olon-separated lis\ t of patterns de\214ning the set of \214lenames to be ignored by pathna\ -me e)-3.118 F(xpan-)-.15 E 3.132(sion. If)144 547.2 R 3.132<618c>3.132 G +me e)-3.118 F(xpan-)-.15 E 3.131(sion. If)144 547.2 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 559.2 Q/F5 9/Times-Roman@0 SF(,)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 571.2 Q(OL)-.3 E F0 2.653(Ac)144 583.2 S .153 -(olon-separated list of v)-2.653 F .153(alues controlling ho)-.25 F +(HISTCONTR)108 571.2 Q(OL)-.3 E F0 2.654(Ac)144 583.2 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 595.2 R .491(alues includes)-.25 F F3(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 607.2 R 3.057(Av)5.557 G .557(alue of)-3.307 F F3(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 619.2 S .459(alue of)-3.209 F F3(ignor)2.969 E(eboth)-.37 E F0 -.459(is shorthand for)3.239 F F3(ignor)2.959 E(espace)-.37 E F0(and) -2.959 E F3(ignor)2.958 E(edups)-.37 E F0 5.458(.A)C -.25(va)-2.5 G .458 -(lue of).25 F F3(er)2.958 E(asedups)-.15 E F0(causes)2.958 E .698 +G 2.653(nt)-2.653 G .153(he history list.)-2.653 F .153(If the list) +5.153 F .49(of v)144 595.2 R .49(alues includes)-.25 F F3(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 607.2 R 3.058(Av)5.558 G .558(alue of)-3.308 F F3 +(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 619.2 S .458(alue of)-3.208 F F3(ignor)2.968 E(eboth)-.37 E +F0 .458(is shorthand for)3.238 F F3(ignor)2.959 E(espace)-.37 E F0(and) +2.959 E F3(ignor)2.959 E(edups)-.37 E F0 5.459(.A)C -.25(va)-2.5 G .459 +(lue of).25 F F3(er)2.959 E(asedups)-.15 E F0(causes)2.959 E .699 (all pre)144 631.2 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 643.2 Q -.15(ve)-.2 G 4.297(d. An).15 F 4.297(yv)-.15 G 1.797 -(alue not in the abo)-4.547 F 2.097 -.15(ve l)-.15 H 1.797 +3.198(df).15 G .698(rom the history list before that line is)-3.198 F +(sa)144 643.2 Q -.15(ve)-.2 G 4.296(d. An).15 F 4.296(yv)-.15 G 1.797 +(alue not in the abo)-4.546 F 2.097 -.15(ve l)-.15 H 1.797 (ist is ignored.).15 F(If)6.797 E F1(HISTCONTR)4.297 E(OL)-.3 E F0 1.797 -(is unset, or does not)4.297 F .612(include a v)144 655.2 R .612(alid v) +(is unset, or does not)4.297 F .613(include a v)144 655.2 R .612(alid v) -.25 F .612(alue, all lines read by the shell parser are sa)-.25 F -.15 (ve)-.2 G 3.112(do).15 G 3.112(nt)-3.112 G .612 -(he history list, subject to the)-3.112 F -.25(va)144 667.2 S .986 -(lue of).25 F F1(HISTIGNORE)3.486 E F0 5.986(.T)C .986 +(he history list, subject to the)-3.112 F -.25(va)144 667.2 S .985 +(lue of).25 F F1(HISTIGNORE)3.485 E F0 5.986(.T)C .986 (he second and subsequent lines of a multi-line compound command)-5.986 F(are not tested, and are added to the history re)144 679.2 Q -.05(ga) -.15 G(rdless of the v).05 E(alue of)-.25 E F1(HISTCONTR)2.5 E(OL)-.3 E F0(.)A F1(HISTFILE)108 691.2 Q F0 .181 (The name of the \214le in which command history is sa)144 703.2 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) +-.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 715.2 Q F3(~/.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(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(12)198.445 E -0 Cg EP +(xits.)-.15 E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(12)197.335 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(HISTFILESIZE)108 84 Q F0 1.623 +-.35 E/F1 10/Times-Bold@0 SF(HISTFILESIZE)108 84 Q F0 1.622 (The maximum number of lines contained in the history \214le.)144 96 R -1.622(When this v)6.623 F 1.622(ariable is assigned a)-.25 F -.25(va)144 +1.623(When this v)6.623 F 1.623(ariable is assigned a)-.25 F -.25(va)144 108 S .305(lue, the history \214le is truncated, if necessary).25 F 2.805(,b)-.65 G 2.805(yr)-2.805 G(emo)-2.805 E .305 -(ving the oldest entries, to contain no more)-.15 F .602 -(than that number of lines.)144 120 R .602(The def)5.602 F .602(ault v) --.1 F .602(alue is 500.)-.25 F .601 +(ving the oldest entries, to contain no more)-.15 F .601 +(than that number of lines.)144 120 R .601(The def)5.601 F .602(ault v) +-.1 F .602(alue is 500.)-.25 F .602 (The history \214le is also truncated to this size)5.602 F (after writing it when an interacti)144 132 Q .3 -.15(ve s)-.25 H -(hell e).15 E(xits.)-.15 E F1(HISTIGNORE)108 144 Q F0 2.657(Ac)144 156 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 168 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 180 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 +(hell e).15 E(xits.)-.15 E F1(HISTIGNORE)108 144 Q F0 2.658(Ac)144 156 S +.158(olon-separated list of patterns used to decide which command 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 168 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 180 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 F1(HISTCONTR)144 -192 Q(OL)-.3 E F0 1.155(are applied.)3.655 F 1.154 +192 Q(OL)-.3 E F0 1.154(are applied.)3.654 F 1.154 (In addition to the normal shell pattern matching characters, `)6.154 F -F1(&)A F0(')A 2.514(matches the pre)144 204 R 2.514(vious history line.) +F1(&)A F0(')A 2.515(matches the pre)144 204 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 216 -Q -.15(ve)-.15 G 3.353(db).15 G .853(efore attempting a match.)-3.353 F +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 228 Q -.05 (ga)-.15 G(rdless of the v).05 E(alue of)-.25 E F1(HISTIGNORE)2.5 E F0 (.)A F1(HISTSIZE)108 240 Q F0 1.942 (The number of commands to remember in the command history \(see)144 252 -R/F2 9/Times-Bold@0 SF(HIST)4.443 E(OR)-.162 E(Y)-.315 E F0(belo)4.193 E -4.443(w\). The)-.25 F(def)144 264 Q(ault v)-.1 E(alue is 500.)-.25 E F1 -(HISTTIMEFORMA)108 276 Q(T)-.95 E F0 .952(If this v)144 288 R .952 -(ariable is set and not null, its v)-.25 F .951 +R/F2 9/Times-Bold@0 SF(HIST)4.442 E(OR)-.162 E(Y)-.315 E F0(belo)4.192 E +4.442(w\). The)-.25 F(def)144 264 Q(ault v)-.1 E(alue is 500.)-.25 E F1 +(HISTTIMEFORMA)108 276 Q(T)-.95 E F0 .951(If this v)144 288 R .951 +(ariable is set and not null, its v)-.25 F .952 (alue is used as a format string for)-.25 F/F3 10/Times-Italic@0 SF -(strftime)3.451 E F0 .951(\(3\) to print the)B .672 +(strftime)3.452 E F0 .952(\(3\) to print the)B .673 (time stamp associated with each history entry displayed by the)144 300 -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 +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 312 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\ +(ed across shell sessions.)-.15 F(This)5.145 E(uses the history comment\ character to distinguish timestamps from other history lines.)144 324 Q F1(HOME)108 336 Q F0 1.27 (The home directory of the current user; the def)144 348 R 1.27(ault ar) @@ -1693,58 +1710,58 @@ F1(HOME)108 336 Q F0 1.27 (HOSTFILE)108 372 Q F0 1.015 (Contains the name of a \214le in the same format as)144 384 R F3 (/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 396 R .551 +.551(needs to complete a hostname.)144 396 R .551 (The list of possible hostname completions may be changed while)5.551 F -1.059(the shell is running; the ne)144 408 R 1.059 -(xt time hostname completion is attempted after the v)-.15 F 1.058 -(alue is changed,)-.25 F F1(bash)144 420 Q F0 .715 -(adds the contents of the ne)3.215 F 3.215<778c>-.25 G .715(le to the e) --3.215 F .715(xisting list.)-.15 F(If)5.716 E F2(HOSTFILE)3.216 E F0 -.716(is set, b)2.966 F .716(ut has no v)-.2 F(alue,)-.25 E F1(bash)144 -432 Q F0 2.236(attempts to read)4.736 F F3(/etc/hosts)6.401 E F0 2.235 -(to obtain the list of possible hostname completions.)6.401 F(When)7.235 +1.058(the shell is running; the ne)144 408 R 1.059 +(xt time hostname completion is attempted after the v)-.15 F 1.059 +(alue is changed,)-.25 F F1(bash)144 420 Q F0 .716 +(adds the contents of the ne)3.216 F 3.216<778c>-.25 G .715(le to the e) +-3.216 F .715(xisting list.)-.15 F(If)5.715 E F2(HOSTFILE)3.215 E F0 +.715(is set, b)2.965 F .715(ut has no v)-.2 F(alue,)-.25 E F1(bash)144 +432 Q F0 2.235(attempts to read)4.735 F F3(/etc/hosts)6.401 E F0 2.235 +(to obtain the list of possible hostname completions.)6.401 F(When)7.236 E F2(HOSTFILE)144 444 Q F0(is unset, the hostname list is cleared.)2.25 -E F1(IFS)108 456 Q F0(The)20.44 E F3 .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 +E F1(IFS)108 456 Q F0(The)20.44 E F3 .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 468 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 (`')-.25 E('.)-.74 E F1(IGNOREEOF)108 480 Q F0 .503(Controls the action of an interacti)144 492 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 .503(If set,)5.503 F .426(the v) +(character as the sole input.)2.753 F .504(If set,)5.504 F .426(the v) 144 504 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 +(characters which must be typed as the \214rst characters)2.676 F .302 (on an input line before)144 516 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 528 Q(alue, the def) +(umeric v).15 F .303(alue, or has)-.25 F(no v)144 528 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 F2(EOF)2.5 E F0(signi\214es the end of input to the shell.)2.25 E F1 -(INPUTRC)108 540 Q F0 1.435(The \214lename for the)144 552 R F1 -.18(re) +(INPUTRC)108 540 Q F0 1.436(The \214lename for the)144 552 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 F3(~/.inputr)5.602 E(c) --.37 E F0(\(see)5.602 E F2(READLINE)3.936 E F0(belo)144 564 Q(w\).)-.25 -E F1(LANG)108 576 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 +-.37 E F0(\(see)5.601 E F2(READLINE)3.935 E F0(belo)144 564 Q(w\).)-.25 +E F1(LANG)108 576 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 588 Q F1(LC_)2.5 E F0(.)A F1(LC_ALL)108 600 Q F0 .764 (This v)144 612 R .764(ariable o)-.25 F -.15(ve)-.15 G .764 (rrides the v).15 F .764(alue of)-.25 F F1(LANG)3.264 E F0 .764(and an) 3.264 F 3.264(yo)-.15 G(ther)-3.264 E F1(LC_)3.264 E F0 -.25(va)3.264 G .764(riable specifying a locale cate-).25 F(gory)144 624 Q(.)-.65 E F1 -(LC_COLLA)108 636 Q(TE)-.95 E F0 .412(This v)144 648 R .412(ariable det\ +(LC_COLLA)108 636 Q(TE)-.95 E F0 .411(This v)144 648 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 660 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 +-.25 F(xpansion,)-.15 E 1.465(and determines the beha)144 660 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 672 Q(xpansion and pattern matching.)-.15 E F1(LC_CTYPE)108 684 Q F0 -1.936(This v)144 696 R 1.936 +1.935(This v)144 696 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 708 Q -(xpansion and pattern matching.)-.15 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(13)198.445 E 0 Cg EP +1.936(vior of character classes)-.2 F(within pathname e)144 708 Q +(xpansion and pattern matching.)-.15 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(13)197.335 E 0 Cg EP %%Page: 14 14 %%BeginPageSetup BP @@ -1754,62 +1771,62 @@ BP 96 Q(ariable determines the locale used to translate double-quoted stri\ ngs preceded by a)-.25 E F1($)2.5 E F0(.)A F1(LC_NUMERIC)108 108 Q F0 (This v)144 120 Q(ariable determines the locale cate)-.25 E -(gory used for number formatting.)-.15 E F1(LINES)108 132 Q F0 1.218 -(Used by the)5.99 F F1(select)3.718 E F0 -.2(bu)3.718 G 1.219(iltin com\ +(gory used for number formatting.)-.15 E F1(LINES)108 132 Q F0 1.219 +(Used by the)5.99 F F1(select)3.719 E F0 -.2(bu)3.719 G 1.218(iltin com\ mand to determine the column length for printing selection lists.).2 F (Automatically set upon receipt of a SIGWINCH.)144 144 Q F1(MAIL)108 156 -Q F0 .188(If this parameter is set to a \214le name and the)8.78 F/F2 9 +Q F0 .187(If this parameter is set to a \214le name and the)8.78 F/F2 9 /Times-Bold@0 SF(MAILP)2.687 E -.855(AT)-.666 G(H).855 E F0 -.25(va) -2.437 G .187(riable is not set,).25 F F1(bash)2.687 E F0 .187 -(informs the user)2.687 F(of the arri)144 168 Q -.25(va)-.25 G 2.5(lo) +2.438 G .188(riable is not set,).25 F F1(bash)2.688 E F0 .188 +(informs the user)2.688 F(of the arri)144 168 Q -.25(va)-.25 G 2.5(lo) .25 G 2.5(fm)-2.5 G(ail in the speci\214ed \214le.)-2.5 E F1(MAILCHECK) -108 180 Q F0 .098(Speci\214es ho)144 192 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(to check for mail, the shell does so befo\ -re displaying the primary prompt.)144 204 R .223(If this v)5.223 F .223 +108 180 Q F0 .099(Speci\214es ho)144 192 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 befo\ +re displaying the primary prompt.)144 204 R .224(If this v)5.224 F .224 (ariable is unset,)-.25 F .066(or set to a v)144 216 R .066(alue that i\ s not a number greater than or equal to zero, the shell disables mail c\ -hecking.)-.25 F F1(MAILP)108 228 Q -.95(AT)-.74 G(H).95 E F0 2.815(Ac) -144 240 S .314(olon-separated list of \214le names to be check)-2.815 F +hecking.)-.25 F F1(MAILP)108 228 Q -.95(AT)-.74 G(H).95 E F0 2.814(Ac) +144 240 S .314(olon-separated list of \214le names to be check)-2.814 F .314(ed for mail.)-.1 F .314(The message to be printed when mail)5.314 F (arri)144 252 Q -.15(ve)-.25 G 3.42(si).15 G 3.42(nap)-3.42 G .92(artic\ ular \214le may be speci\214ed by separating the \214le name from the m\ -essage with a)-3.42 F 2.808(`?'. When)144 264 R .308(used in the te) -2.808 F .308(xt of the message,)-.15 F F1($_)2.808 E F0 -.15(ex)2.808 G -.308(pands to the name of the current mail\214le.).15 F(Exam-)5.307 E +essage with a)-3.42 F 2.807(`?'. When)144 264 R .307(used in the te) +2.807 F .308(xt of the message,)-.15 F F1($_)2.808 E F0 -.15(ex)2.808 G +.308(pands to the name of the current mail\214le.).15 F(Exam-)5.308 E (ple:)144 276 Q F1(MAILP)144 288 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 300 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 +(ail":~/shell\255mail?"$_ has mail!"\010).15 E F1(Bash)144 300 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 (ut the location of the user mail \214les that it uses is)-.2 F (system dependent \(e.g., /v)144 312 Q(ar/mail/)-.25 E F1($USER)A F0 -(\).)A F1(OPTERR)108 324 Q F0 .39(If set to the v)144 336 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 348 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 360 Q -.15(xe)-.15 G(cuted.) -.15 E F1 -.74(PA)108 372 S(TH)-.21 E F0 .588 -(The search path for commands.)9.91 F .587 +(\).)A F1(OPTERR)108 324 Q F0 .389(If set to the v)144 336 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 F2 .36(SHELL B)144 348 R(UIL) +-.09 E .36(TIN COMMANDS)-.828 F F0(belo)2.61 E(w\).)-.25 E F2(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(or a shell script is e)144 360 Q -.15(xe) +-.15 G(cuted.).15 E F1 -.74(PA)108 372 S(TH)-.21 E F0 .587 +(The search path for commands.)9.91 F .588 (It is a colon-separated list of directories in which the shell looks) -5.588 F .471(for commands \(see)144 384 R F2 .471(COMMAND EXECUTION) -2.971 F F0(belo)2.722 E 2.972(w\). A)-.25 F .472 +5.587 F .472(for commands \(see)144 384 R F2 .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 396 S -.345(lue of).25 F F1 -.74(PA)2.845 G(TH)-.21 E F0 .345 -(indicates the current directory)2.845 F 5.345(.A)-.65 G .344 -(null directory name may appear as tw)-2.5 F 2.844(oa)-.1 G(djacent) --2.844 E .867(colons, or as an initial or trailing colon.)144 408 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 420 R F1(bash)28.829 E F0 -31.329(.A)C 26.328(common v)-2.501 F 26.328(alue is)-.25 F/F3 10 -/Courier@0 SF(/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin)144 432 -Q F0(.)A F1(POSIXL)108 444 Q(Y_CORRECT)-.92 E F0 .471(If this v)144 456 -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/F4 10/Times-Italic@0 SF -.472(posix mode)2.972 F F0 .472(before reading)2.972 F .011 +.344(lue of).25 F F1 -.74(PA)2.844 G(TH)-.21 E F0 .344 +(indicates the current directory)2.844 F 5.345(.A)-.65 G .345 +(null directory name may appear as tw)-2.5 F 2.845(oa)-.1 G(djacent) +-2.845 E .868(colons, or as an initial or trailing colon.)144 408 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 420 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/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin)144 432 Q F0(.)A +F1(POSIXL)108 444 Q(Y_CORRECT)-.92 E F0 .472(If this v)144 456 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 468 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 480 Q F1(bash)2.5 @@ -1818,43 +1835,43 @@ 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) (xe)-.15 G(cuted.).15 E F1(PR)108 492 Q(OMPT_COMMAND)-.3 E F0 (If set, the v)144 504 Q(alue is e)-.25 E -.15(xe)-.15 G (cuted as a command prior to issuing each primary prompt.).15 E F1(PS1) -108 516 Q F0 .064(The v)19.33 F .065(alue of this parameter is e)-.25 F +108 516 Q F0 .065(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 528 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 540 Q F0 .005(The v)19.33 F .005 +-.74('')2.5 G(.).74 E F1(PS2)108 540 Q F0 .004(The v)19.33 F .004 (alue of this parameter is e)-.25 F .005(xpanded as with)-.15 F F1(PS1) -2.505 E F0 .004(and used as the secondary prompt string.)2.505 F(The) -5.004 E(def)144 552 Q(ault is `)-.1 E(`)-.74 E F1(>)A F0 -.74('')2.5 G -(.).74 E F1(PS3)108 564 Q F0 1.115(The v)19.33 F 1.115 +2.505 E F0 .005(and used as the secondary prompt string.)2.505 F(The) +5.005 E(def)144 552 Q(ault is `)-.1 E(`)-.74 E F1(>)A F0 -.74('')2.5 G +(.).74 E F1(PS3)108 564 Q F0 1.116(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.116(command \(see)3.616 F F2 1.116(SHELL GRAM-)3.616 F(MAR) +3.615 E F0 1.115(command \(see)3.615 F F2 1.115(SHELL GRAM-)3.615 F(MAR) 144 576 Q F0(abo)2.25 E -.15(ve)-.15 G(\).).15 E F1(PS4)108 588 Q F0 -1.099(The v)19.33 F 1.099(alue of this parameter is e)-.25 F 1.099 -(xpanded as with)-.15 F F1(PS1)3.599 E F0 1.099(and the v)3.599 F 1.098 -(alue is printed before each com-)-.25 F(mand)144 600 Q F1(bash)3.725 E -F0 1.225(displays during an e)3.725 F -.15(xe)-.15 G 1.225 -(cution trace.).15 F 1.226(The \214rst character of)6.225 F F2(PS4)3.726 -E F0 1.226(is replicated multiple)3.476 F(times, as necessary)144 612 Q +1.098(The v)19.33 F 1.099(alue of this parameter is e)-.25 F 1.099 +(xpanded as with)-.15 F F1(PS1)3.599 E F0 1.099(and the v)3.599 F 1.099 +(alue is printed before each com-)-.25 F(mand)144 600 Q F1(bash)3.726 E +F0 1.226(displays during an e)3.726 F -.15(xe)-.15 G 1.226 +(cution trace.).15 F 1.225(The \214rst character of)6.226 F F2(PS4)3.725 +E F0 1.225(is replicated multiple)3.475 F(times, as necessary)144 612 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 624 Q F0 .664 +-.74('')2.5 G(.).74 E F1(SHELL)108 624 Q F0 .663 (The full pathname to the shell is k)144 636 R .664(ept in this en)-.1 F -.664(vironment v)-.4 F 3.164(ariable. If)-.25 F .663 +.664(vironment v)-.4 F 3.164(ariable. If)-.25 F .664 (it is not set when the shell)3.164 F(starts,)144 648 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 660 Q(T)-.95 E F0 .826(The v)144 +G(ogin shell.)-2.5 E F1(TIMEFORMA)108 660 Q(T)-.95 E F0 .827(The v)144 672 R .826 (alue of this parameter is used as a format string specifying ho)-.25 F -3.327(wt)-.25 G .827(he timing information for)-3.327 F .649 -(pipelines pre\214x)144 684 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 +3.326(wt)-.25 G .826(he timing information for)-3.326 F .648 +(pipelines pre\214x)144 684 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 696 R .711(xpanded to a time v)-.15 F -.712(alue or other information.)-.25 F .712(The escape sequences)5.712 F +.711(alue or other information.)-.25 F .711(The escape sequences)5.711 F (and their meanings are as follo)144 708 Q -(ws; the braces denote optional portions.)-.25 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(14)198.445 E 0 Cg EP +(ws; the braces denote optional portions.)-.25 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(14)197.335 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP @@ -1869,178 +1886,178 @@ F2(p)A F1(][l]S)A F0(The number of CPU seconds spent in system mode.) (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 +(he number of fractional digits after a decimal)-3.37 F 2.526(point. A) +144 160.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 172.8 R .537(alues of)-.25 F F2 +(p)3.037 E F0 .537(greater than 3 are changed to 3.)3.037 F(If)5.538 E +F2(p)3.038 E F0 .538(is not speci\214ed,)3.038 F(the v)144 184.8 Q +(alue 3 is used.)-.25 E .668(The optional)144 201.6 R F1(l)3.168 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 +F2(MM)3.168 E F0(m)A F2(SS)A F0(.)A F2(FF)A F0 3.167(s. The)B -.25(va) +3.167 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(If this v)144 +230.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 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 271.2 Q F0 .718(If set to a v)144 283.2 R .717 +254.4 Q F1(TMOUT)108 271.2 Q F0 .717(If set to a v)144 283.2 R .717 (alue greater than zero,)-.25 F F1(TMOUT)3.217 E F0 .717 -(is treated as the def)3.217 F .717(ault timeout for the)-.1 F F1 -.18 -(re)3.217 G(ad).18 E F0 -.2(bu)3.217 G(iltin.).2 E(The)144 295.2 Q F1 +(is treated as the def)3.217 F .718(ault timeout for the)-.1 F F1 -.18 +(re)3.218 G(ad).18 E F0 -.2(bu)3.218 G(iltin.).2 E(The)144 295.2 Q F1 (select)2.542 E F0 .042(command terminates if input does not arri)2.542 F .342 -.15(ve a)-.25 H(fter).15 E F1(TMOUT)2.542 E F0 .042 -(seconds when input is com-)2.542 F .886(ing from a terminal.)144 307.2 -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 +(seconds when input is com-)2.542 F .885(ing from a terminal.)144 307.2 +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 319.2 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(seconds if input does not arri)144 -331.2 Q -.15(ve)-.25 G(.).15 E F1(TMPDIR)108 348 Q F0 .274(If set,)144 -360 R F1(Bash)2.774 E F0 .274(uses its v)2.774 F .274 -(alue as the name of a directory in which)-.25 F F1(Bash)2.773 E F0 .273 -(creates temporary \214les for the)2.773 F(shell')144 372 Q 2.5(su)-.55 -G(se.)-2.5 E F1(auto_r)108 388.8 Q(esume)-.18 E F0 .53(This v)144 400.8 -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 412.8 R +331.2 Q -.15(ve)-.25 G(.).15 E F1(TMPDIR)108 348 Q F0 .273(If set,)144 +360 R F1(Bash)2.773 E F0 .273(uses its v)2.773 F .274 +(alue as the name of a directory in which)-.25 F F1(Bash)2.774 E F0 .274 +(creates temporary \214les for the)2.774 F(shell')144 372 Q 2.5(su)-.55 +G(se.)-2.5 E F1(auto_r)108 388.8 Q(esume)-.18 E F0 .531(This v)144 400.8 +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 412.8 R .538(ord simple commands without redirections are treated as candidates\ - for resumption of an)-.1 F -.15(ex)144 424.8 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 -436.8 R(The)6.125 E F2(name)3.985 E F0 1.124(of a stopped job, in this) -3.805 F(conte)144 448.8 Q 1.132 + for resumption of an)-.1 F -.15(ex)144 424.8 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 +436.8 R(The)6.125 E F2(name)3.985 E F0 1.125(of a stopped job, in this) +3.805 F(conte)144 448.8 Q 1.133 (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.633(,t).68 G 1.133 -(he string supplied must)-3.633 F .625 +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 460.8 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 +-.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 472.8 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 484.8 Q F1(%?)3.334 E -F0 .834(job identi\214er \(see)5.834 F/F3 9/Times-Bold@0 SF .834 +-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 484.8 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 .833 -(alue, the supplied string)-.25 F .315 +(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 496.8 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 508.8 Q(.)-.55 -E F1(histchars)108 525.6 Q F0 2.07(The tw)144 537.6 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 549.6 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) +(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 508.8 Q(.)-.55 +E F1(histchars)108 525.6 Q F0 2.069(The tw)144 537.6 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 549.6 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 561.6 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 573.6 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 +(ubstitu-)-3.298 E(tion)144 573.6 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 585.6 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\ +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\ that the remainder of the line is a comment when found as the \214rst \ -char)144 597.6 R(-)-.2 E 1.294(acter of a w)144 609.6 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 621.6 R .379(ords on the line.)-.1 -F .38(It does not necessarily cause the shell parser to treat)5.379 F +char)144 597.6 R(-)-.2 E 1.293(acter of a w)144 609.6 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 621.6 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 633.6 Q F1(Arrays)87 650.4 Q (Bash)108 662.4 Q F0(pro)2.958 E .458(vides one-dimensional array v)-.15 F 2.958(ariables. An)-.25 F 2.958(yv)-.15 G .458 (ariable may be used as an array; the)-3.208 F F1(declar)2.958 E(e)-.18 -E F0 -.2(bu)2.958 G(iltin).2 E .96(will e)108 674.4 R .96 -(xplicitly declare an array)-.15 F 5.96(.T)-.65 G .961 -(here is no maximum limit on the size of an array)-5.96 F 3.461(,n)-.65 -G .961(or an)-3.461 F 3.461(yr)-.15 G(equirement)-3.461 E +E F0 -.2(bu)2.958 G(iltin).2 E .961(will e)108 674.4 R .961 +(xplicitly declare an array)-.15 F 5.961(.T)-.65 G .961 +(here is no maximum limit on the size of an array)-5.961 F 3.46(,n)-.65 +G .96(or an)-3.46 F 3.46(yr)-.15 G(equirement)-3.46 E (that members be inde)108 686.4 Q -.15(xe)-.15 G 2.5(do).15 G 2.5(ra) -2.5 G(ssigned contiguously)-2.5 E 5(.A)-.65 G(rrays are inde)-5 E -.15 (xe)-.15 G 2.5(du).15 G(sing inte)-2.5 E(gers and are zero-based.)-.15 E -1.302(An array is created automatically if an)108 703.2 R 3.801(yv)-.15 -G 1.301(ariable is assigned to using the syntax)-4.051 F F2(name)3.801 E +1.301(An array is created automatically if an)108 703.2 R 3.801(yv)-.15 +G 1.302(ariable is assigned to using the syntax)-4.051 F F2(name)3.802 E F0([)A F2(subscript)A F0(]=)A F2(value)A F0(.)A(The)108 715.2 Q F2 -(subscript)3.181 E F0 .341(is treated as an arithmetic e)3.521 F .342 -(xpression that must e)-.15 F -.25(va)-.25 G .342 -(luate to a number greater than or equal to).25 F 4.077(zero. T)108 -727.2 R 4.077(oe)-.8 G 1.577(xplicitly declare an array)-4.227 F 4.077 +(subscript)3.182 E F0 .342(is treated as an arithmetic e)3.522 F .342 +(xpression that must e)-.15 F -.25(va)-.25 G .341 +(luate to a number greater than or equal to).25 F 4.076(zero. T)108 +727.2 R 4.076(oe)-.8 G 1.577(xplicitly declare an array)-4.226 F 4.077 (,u)-.65 G(se)-4.077 E F1(declar)4.077 E 4.077<65ad>-.18 G(a)-4.077 E F2 -(name)4.077 E F0(\(see)4.077 E F3 1.577(SHELL B)4.077 F(UIL)-.09 E 1.576 -(TIN COMMANDS)-.828 F F0(belo)3.826 E(w\).)-.25 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(15)198.445 E 0 Cg EP +(name)4.077 E F0(\(see)4.077 E F3 1.577(SHELL B)4.077 F(UIL)-.09 E 1.577 +(TIN COMMANDS)-.828 F F0(belo)3.827 E(w\).)-.25 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(15)197.335 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(declar)108 84 Q 3.375<65ad>-.18 G(a)-3.375 -E/F2 10/Times-Italic@0 SF(name)3.375 E F1([)A F2(subscript)A F1(])A F0 -.875(is also accepted; the)3.375 F F2(subscript)3.375 E F0 .875 -(is ignored.)3.375 F(Attrib)5.875 E .876(utes may be speci\214ed for an) +-.35 E/F1 10/Times-Bold@0 SF(declar)108 84 Q 3.376<65ad>-.18 G(a)-3.376 +E/F2 10/Times-Italic@0 SF(name)3.376 E F1([)A F2(subscript)A F1(])A F0 +.876(is also accepted; the)3.376 F F2(subscript)3.375 E F0 .875 +(is ignored.)3.375 F(Attrib)5.875 E .875(utes may be speci\214ed for an) -.2 F(array v)108 96 Q(ariable using the)-.25 E F1(declar)2.5 E(e)-.18 E F0(and)2.5 E F1 -.18(re)2.5 G(adonly).18 E F0 -.2(bu)2.5 G 2.5 (iltins. Each).2 F(attrib)2.5 E(ute applies to all members of an array) -.2 E(.)-.65 E 1.647 (Arrays are assigned to using compound assignments of the form)108 112.8 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.147(,w)C 1.647(here each) --4.147 F F2(value)108 124.8 Q F0 .65(is of the form [)3.15 F F2 +(... 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 124.8 Q F0 .65(is of the form [)3.15 F F2 (subscript)A F0(]=)A F2(string)A F0 5.65(.O)C(nly)-5.65 E F2(string)3.15 E F0 .65(is required.)3.15 F .65(If the optional brack)5.65 F .65 -(ets and subscript are)-.1 F .277(supplied, that inde)108 136.8 R 2.777 -(xi)-.15 G 2.777(sa)-2.777 G .277(ssigned to; otherwise the inde)-2.777 -F 2.777(xo)-.15 G 2.777(ft)-2.777 G .276 -(he element assigned is the last inde)-2.777 F 2.776(xa)-.15 G .276 -(ssigned to)-2.776 F 1.393(by the statement plus one.)108 148.8 R(Inde) -6.393 E 1.393(xing starts at zero.)-.15 F 1.394 -(This syntax is also accepted by the)6.394 F F1(declar)3.894 E(e)-.18 E -F0 -.2(bu)3.894 G(iltin.).2 E(Indi)108 160.8 Q +(ets and subscript are)-.1 F .276(supplied, that inde)108 136.8 R 2.776 +(xi)-.15 G 2.776(sa)-2.776 G .276(ssigned to; otherwise the inde)-2.776 +F 2.777(xo)-.15 G 2.777(ft)-2.777 G .277 +(he element assigned is the last inde)-2.777 F 2.777(xa)-.15 G .277 +(ssigned to)-2.777 F 1.394(by the statement plus one.)108 148.8 R(Inde) +6.394 E 1.394(xing starts at zero.)-.15 F 1.393 +(This syntax is also accepted by the)6.394 F F1(declar)3.893 E(e)-.18 E +F0 -.2(bu)3.893 G(iltin.).2 E(Indi)108 160.8 Q (vidual array elements may be assigned to using the)-.25 E F2(name)2.5 E 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 177.6 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 189.6 R 4.041 +-.15(ve)-.15 G(.).15 E(An)108 177.6 Q 3.575(ye)-.15 G 1.075 +(lement of an array may be referenced using ${)-3.575 F F2(name)A F0([)A +F2(subscript)A F0 3.575(]}. The)B 1.076(braces are required to a)3.576 F +-.2(vo)-.2 G(id).2 E 1.542(con\215icts with pathname e)108 189.6 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 201.6 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 213.6 Q F2(name)A F0 .52([*]} e)B -.52(xpands to a single w)-.15 F .52(ord with the v)-.1 F .521 +-.1 F 1.541(xpands to all members of)-.15 F F2(name)4.041 E F0(.)A 1.056 +(These subscripts dif)108 201.6 R 1.056(fer only when the w)-.25 F 1.057 +(ord appears within double quotes.)-.1 F 1.057(If the w)6.057 F 1.057 +(ord is double-quoted,)-.1 F(${)108 213.6 Q F2(name)A F0 .521([*]} e)B +.521(xpands to a single w)-.15 F .521(ord with the v)-.1 F .52 (alue of each array member separated by the \214rst character)-.25 F -1.375(of the)108 225.6 R/F3 9/Times-Bold@0 SF(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 2.027 +1.374(of the)108 225.6 R/F3 9/Times-Bold@0 SF(IFS)3.874 E F0 1.374 +(special v)3.624 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.375 +(to a separate w)3.875 F 3.875(ord. When)-.1 F 2.028 (there are no array members, ${)108 237.6 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 249.6 R .759 +2.028(xpands to nothing.)-.15 F 2.027(If the double-quoted e)7.028 F +2.027(xpansion occurs)-.15 F .758(within a w)108 249.6 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 +(ginning part of the original w)-.15 F(ord,)-.1 E .516(and the e)108 261.6 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 273.6 R .228(xpansion of the special parameters)-.15 +t of the original w)-.15 F 3.015(ord. This)-.1 F .515(is analogous)3.015 +F .227(to the e)108 273.6 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 +(Special P)2.728 F(arameters)-.1 E F0(abo)2.728 E -.15(ve)-.15 G 2.728 (\). ${#).15 F F2(name)A F0([)A F2(subscript)A F0(]})A -.15(ex)108 285.6 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 .734(ments in the array)108 297.6 -R 5.734(.R)-.65 G .733(eferencing an array v)-5.734 F .733 -(ariable without a subscript is equi)-.25 F -.25(va)-.25 G .733 +(xpansion is the number of ele-)-.15 F .733(ments in the array)108 297.6 +R 5.733(.R)-.65 G .733(eferencing an array v)-5.733 F .733 +(ariable without a subscript is equi)-.25 F -.25(va)-.25 G .734 (lent to referencing element).25 F(zero.)108 309.6 Q(The)108 326.4 Q F1 -(unset)2.766 E F0 -.2(bu)2.766 G .267(iltin is used to destro).2 F 2.767 +(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.767 E(script)108 +(ys the array element at inde)-.1 F(x)-.15 E F2(sub-)2.766 E(script)108 338.4 Q F0 6.38(.C)C 1.38(are must be tak)-6.38 F 1.38(en to a)-.1 F -.2 (vo)-.2 G 1.38(id unw).2 F 1.38(anted side ef)-.1 F 1.38 (fects caused by \214lename generation.)-.25 F F1(unset)6.38 E F2(name) @@ -2048,40 +2065,40 @@ R 5.734(.R)-.65 G .733(eferencing an array v)-5.734 F .733 (,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 367.2 Q F1(declar)3.67 E(e)-.18 -E F0(,)A F1(local)3.67 E F0 3.67(,a)C(nd)-3.67 E F1 -.18(re)3.67 G -(adonly).18 E F0 -.2(bu)3.67 G 1.17(iltins each accept a).2 F F1 -3.671 E F0 1.171(option to specify an array)3.671 F 6.171(.T)-.65 G(he) --6.171 E F1 -.18(re)3.671 G(ad).18 E F0 -.2(bu)3.671 G(iltin).2 E .441 +(he entire array)-2.5 E(.)-.65 E(The)108 367.2 Q F1(declar)3.671 E(e) +-.18 E F0(,)A F1(local)3.671 E F0 3.671(,a)C(nd)-3.671 E F1 -.18(re) +3.671 G(adonly).18 E F0 -.2(bu)3.671 G 1.171(iltins each accept a).2 F +F13.671 E F0 1.17(option to specify an array)3.671 F 6.17(.T)-.65 +G(he)-6.17 E F1 -.18(re)3.67 G(ad).18 E F0 -.2(bu)3.67 G(iltin).2 E .44 (accepts a)108 379.2 R F12.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 F1(set)2.941 E F0(and)2.941 E F1(declar)2.94 E(e)-.18 E F0 -.2 +-5.441 E F1(set)2.941 E F0(and)2.941 E F1(declar)2.941 E(e)-.18 E F0 -.2 (bu)108 391.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 408 Q(ANSION)-.81 E F0 .76(Expansion is perform\ ed on the command line after it has been split into w)108 420 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 432 S .37(pansion performed:).15 F F2(br) +(inds of)-3.26 F -.15(ex)108 432 S .369(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 +(ameter and variable e)-.15 F(xpansion)-.2 E F0(,).24 E F2 .37 (command sub-)2.869 F(stitution)108 444 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 460.8 R .471(xpansions is: brace e)-.15 F .471 +.471(The order of e)108 460.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 +.47(ariable and arithmetic e)-3.221 F(xpansion)-.15 E (and command substitution \(done in a left-to-right f)108 472.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 489.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 506.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 518.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) +(ocess substitution)-.45 E F0(.)A 1.486(Only brace e)108 506.4 R 1.486 +(xpansion, w)-.15 F 1.486(ord splitting, and pathname e)-.1 F 1.487 +(xpansion can change the number of w)-.15 F 1.487(ords of the)-.1 F -.15 +(ex)108 518.4 S 1.165(pansion; other e).15 F 1.165(xpansions e)-.15 F +1.165(xpand a single w)-.15 F 1.165(ord to a single w)-.1 F 3.665 +(ord. The)-.1 F 1.164(only e)3.665 F 1.164(xceptions to this are the) -.15 F -.15(ex)108 530.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 @@ -2092,4338 +2109,4451 @@ Q F2(Br)108.58 559.2 Q .606(ace e)-.15 F(xpansion)-.2 E F0 .606 (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 583.2 R F2(pr)2.652 E(eamble) +(he)-2.915 E .151(form of an optional)108 583.2 R F2(pr)2.651 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 595.2 R .563(wed by an optional)-.25 F F2(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 607.2 R .658(xpanding left to)-.15 F(right.) -108 619.2 Q .718(Brace e)108 636 R .719(xpansions may be nested.)-.15 F +ch resulting string, e)108 607.2 R .659(xpanding left to)-.15 F(right.) +108 619.2 Q .719(Brace e)108 636 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 648 Q 2.5(ed. F)-.15 F(or e)-.15 E(xample, a)-.15 E F1({)A F0(d,c,b) -A F1(})A F0 2.5(ee)C(xpands into `ade ace abe'.)-2.65 E 3.134(As)108 -664.8 S .634(equence e)-3.134 F .634(xpression tak)-.15 F .634 -(es the form)-.1 F F1({)3.134 E F2(x)A F1(..)A F2(y)A F1(})A F0 3.134 -(,w)C(here)-3.134 E F2(x)3.134 E F0(and)3.134 E F2(y)3.133 E F0 .633 -(are either inte)3.133 F .633(gers or single characters.)-.15 F(When) -5.633 E(inte)108 676.8 Q .401(gers are supplied, the e)-.15 F .401 -(xpression e)-.15 F .401(xpands to each number between)-.15 F F2(x)2.901 -E F0(and)2.902 E F2(y)2.902 E F0 2.902(,i)C(nclusi)-2.902 E -.15(ve)-.25 -G 5.402(.W).15 G .402(hen characters)-5.402 F .688(are supplied, the e) -108 688.8 R .688(xpression e)-.15 F .688(xpands to each character le) --.15 F .688(xicographically between)-.15 F F2(x)3.188 E F0(and)3.188 E -F2(y)3.188 E F0 3.187(,i)C(nclusi)-3.187 E -.15(ve)-.25 G 5.687(.N).15 G -(ote)-5.687 E(that both)108 700.8 Q F2(x)2.5 E F0(and)2.5 E F2(y)2.5 E -F0(must be of the same type.)2.5 E .581(Brace e)108 717.6 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 1.209 -(are preserv)108 729.6 R 1.209(ed in the result.)-.15 F 1.209 -(It is strictly te)6.209 F(xtual.)-.15 E F1(Bash)6.209 E F0 1.209 -(does not apply an)3.709 F 3.709(ys)-.15 G 1.208 -(yntactic interpretation to the)-3.709 F(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(16)198.445 E 0 Cg EP +A F1(})A F0 2.5(ee)C(xpands into `ade ace abe'.)-2.65 E 2.991(As)108 +664.8 S .491(equence e)-2.991 F .491(xpression tak)-.15 F .491 +(es the form)-.1 F F1({)2.991 E F2(x)A F1(..)A F2(y)A F1([..)A F2(incr)A +F1(]})A F2 2.991(,w)C(her)-2.991 E 2.991(exa)-.37 G .491(nd y ar)-2.991 +F 2.991(ee)-.37 G .492(ither inte)-2.991 F -.1(ge)-.4 G .692 -.1(rs o).1 +H 2.992(rs).1 G .492(ingle c)-2.992 F(har)-.15 E(acter)-.15 E(s,)-.1 E +.526(and incr)108 676.8 R 3.026(,a)-1.11 G 3.026(no)-3.026 G .526 +(ptional incr)-3.026 F .526(ement, is an inte)-.37 F -.1(ge)-.4 G 5.246 +-1.11(r. W).1 H .526(hen inte)1.11 F -.1(ge)-.4 G .726 -.1(rs a).1 H +1.265 -.37(re s).1 H .525(upplied, the e).37 F(xpr)-.2 E .525(ession e) +-.37 F .525(xpands to eac)-.2 F(h)-.15 E .224(number between x and y)108 +688.8 R 2.724(,i)-.55 G(nclusive)-2.724 E 5.224(.S)-.15 G .224 +(upplied inte)-5.224 F -.1(ge)-.4 G .424 -.1(rs m).1 H .224(ay be pr).1 +F .224(e\214xed with 0 to for)-.37 F .224(ce eac)-.37 F 2.725(ht)-.15 G +.225(erm to have the)-2.725 F .606(same width.)108 700.8 R .606 +(When either x or y be)5.606 F .606(gins with a zer)-.4 F .605 +(o, the shell attempts to for)-.45 F .605(ce all g)-.37 F(ener)-.1 E +.605(ated terms to con-)-.15 F .658(tain the same number of digits, zer) +108 712.8 R .658(o-padding wher)-.45 F 3.158(en)-.37 G(ecessary)-3.158 E +5.658(.W)-.55 G .658(hen c)-5.658 F(har)-.15 E(acter)-.15 E 3.158(sa)-.1 +G 1.398 -.37(re s)-3.158 H .658(upplied, the e).37 F(xpr)-.2 E(es-)-.37 +E .685(sion e)108 724.8 R .685(xpands to eac)-.2 F 3.184(hc)-.15 G(har) +-3.334 E .684(acter le)-.15 F(xico)-.2 E(gr)-.1 E .684 +(aphically between x and y)-.15 F 3.184(,i)-.55 G(nclusive)-3.184 E +5.684(.N)-.15 G .684(ote that both x and y must)-5.684 F F0 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(16)197.335 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(conte)108 84 Q(xt of the e)-.15 E(xpansion or the te)-.15 E -(xt between the braces.)-.15 E 3.632(Ac)108 100.8 S 1.132 -(orrectly-formed brace e)-3.632 F 1.132(xpansion must contain unquoted \ -opening and closing braces, and at least one)-.15 F 3.441 -(unquoted comma or a v)108 112.8 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 2.755(unchanged. A)108 124.8 R/F1 -10/Times-Bold@0 SF({)2.755 E F0(or)2.755 E F1(,)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 136.8 R 2.911(oa)-.8 G -.2(vo)-3.111 G .411 +-.35 E/F1 10/Times-Italic@0 SF .757(be of the same type)108 84 R 5.757 +(.W)-.15 G .757(hen the incr)-5.757 F .757 +(ement is supplied, it is used as the dif)-.37 F(fer)-.18 E .758 +(ence between eac)-.37 F 3.258(ht)-.15 G 3.258(erm. The)-3.258 F +(default incr)108 96 Q(ement is 1 or -1 as appr)-.37 E(opriate)-.45 E(.) +-.15 E F0 .582(Brace e)108 112.8 R .582(xpansion is performed before an) +-.15 F 3.082(yo)-.15 G .581(ther e)-3.082 F .581(xpansions, and an)-.15 +F 3.081(yc)-.15 G .581(haracters special to other e)-3.081 F(xpansions) +-.15 E .015(are preserv)108 124.8 R .015(ed in the result.)-.15 F .015 +(It is strictly te)5.015 F(xtual.)-.15 E/F2 10/Times-Bold@0 SF(Bash) +5.016 E F0 .016(does not apply an)2.516 F 2.516(ys)-.15 G .016 +(yntactic interpretation to the con-)-2.516 F(te)108 136.8 Q +(xt of the e)-.15 E(xpansion or the te)-.15 E(xt between the braces.) +-.15 E 3.633(Ac)108 153.6 S 1.133(orrectly-formed brace e)-3.633 F 1.132 +(xpansion must contain unquoted opening and closing braces, and at leas\ +t one)-.15 F 3.44(unquoted comma or a v)108 165.6 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.441(xpansion is left)-.15 F 2.755 +(unchanged. A)108 177.6 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.91 +(sion. T)108 189.6 R 2.91(oa)-.8 G -.2(vo)-3.11 G .41 (id con\215icts with parameter e).2 F .411(xpansion, the string)-.15 F -F1(${)2.911 E F0 .41(is not considered eligible for brace e)2.911 F -(xpan-)-.15 E(sion.)108 148.8 Q 1.476(This construct is typically used \ +F2(${)2.911 E F0 .411(is not considered eligible for brace e)2.911 F +(xpan-)-.15 E(sion.)108 201.6 Q 1.476(This construct is typically used \ as shorthand when the common pre\214x of the strings to be generated is) -108 165.6 R(longer than in the abo)108 177.6 Q .3 -.15(ve ex)-.15 H -(ample:).15 E(mkdir /usr/local/src/bash/{old,ne)144 194.4 Q -.65(w,)-.25 -G(dist,b).65 E(ugs})-.2 E(or)108 206.4 Q(cho)144 218.4 Q +108 218.4 R(longer than in the abo)108 230.4 Q .3 -.15(ve ex)-.15 H +(ample:).15 E(mkdir /usr/local/src/bash/{old,ne)144 247.2 Q -.65(w,)-.25 +G(dist,b).65 E(ugs})-.2 E(or)108 259.2 Q(cho)144 271.2 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 235.2 R .618 +-.25 E(x}})-.15 E .618(Brace e)108 288 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 -(does not treat open-)3.118 F .247 -(ing or closing braces specially when the)108 247.2 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 259.2 Q -.15 +.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 .248 +(ing or closing braces specially when the)108 300 R 2.748(ya)-.15 G .247 +(ppear as part of a w)-2.748 F .247(ord, and preserv)-.1 F .247 +(es them in the output.)-.15 F F2(Bash)5.247 E F0(remo)108 312 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 271.2 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 283.2 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 -(+B)2.936 E F0 .436(option or disable brace e)2.936 F .436 -(xpansion with the)-.15 F F1(+B)108 295.2 Q F0(option to the)2.5 E F1 -(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 312 S(lde Expansion).18 E F0 1.086(If a w)108 324 R 1.086(ord be)-.1 -F 1.086(gins with an unquoted tilde character \(`)-.15 F F1(~)A F0 1.087 +(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 324 Q F0 .515 +(appears identically in the output.)3.015 F .515(The same w)5.515 F .515 +(ord is output as)-.1 F F1 .514(\214le1 \214le2)4.925 F F0 .514(after e) +3.034 F .514(xpansion by)-.15 F F2(bash)3.014 E F0(.)A .436 +(If strict compatibility with)108 336 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 .437 +(xpansion with the)-.15 F F2(+B)108 348 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 F2 -.18(Ti)87 364.8 S +(lde Expansion).18 E F0 1.087(If a w)108 376.8 R 1.087(ord be)-.1 F +1.087(gins with an unquoted tilde character \(`)-.15 F F2(~)A F0 1.086 ('\), all of the characters preceding the \214rst unquoted)B .185(slash\ \(or all characters, if there is no unquoted slash\) are considered a) -108 336 R F2(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 348 R .726 -(wing the tilde are treated as a possible)-.25 F F2(lo)108 360 Q .523 -(gin name)-.1 F F0 5.523(.I)C 3.023(ft)-5.523 G .523 +108 388.8 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 .726(in the tilde-pre\214x\ + are quoted, the characters in the tilde-pre\214x follo)108 400.8 R .725 +(wing the tilde are treated as a possible)-.25 F F1(lo)108 412.8 Q .522 +(gin name)-.1 F F0 5.522(.I)C 3.022(ft)-5.522 G .522 (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 372 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\ +-3.022 F .523(alue of the shell parameter)-.25 F F3(HOME)108 424.8 Q/F4 +9/Times-Roman@0 SF(.)A F0(If)4.787 E F3(HOME)2.787 E F0 .287 +(is unset, the home directory of the user e)2.537 F -.15(xe)-.15 G .286 +(cuting the shell is substituted instead.).15 F(Other)5.286 E(-)-.2 E(w\ ise, the tilde-pre\214x is replaced with the home directory associated \ -with the speci\214ed login name.)108 384 Q .093 -(If the tilde-pre\214x is a `~+', the v)108 400.8 R .092 +with the speci\214ed login name.)108 436.8 Q .092 +(If the tilde-pre\214x is a `~+', the v)108 453.6 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 412.8 S .903(~\255', the v)-3.403 F .903 +(replaces the tilde-pre\214x.)2.342 F .093(If the tilde-pre\214x is) +5.093 F 3.404(a`)108 465.6 S .904(~\255', the v)-3.404 F .904 (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 424.8 R F2(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\ +.904(if it is set, is substituted.)3.154 F .903(If the characters follo) +5.903 F .903(wing the)-.25 F 1.641 +(tilde in the tilde-pre\214x consist of a number)108 477.6 R F1(N)4.141 +E F0 4.142(,o)C 1.642(ptionally pre\214x)-4.142 F 1.642 +(ed by a `+' or a `\255', the tilde-pre\214x is)-.15 F 1.438(replaced w\ ith the corresponding element from the directory stack, as it w)108 -436.8 R 1.438(ould be displayed by the)-.1 F F1(dirs)3.938 E F0 -.2(bu) -108 448.8 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 +489.6 R 1.437(ould be displayed by the)-.1 F F2(dirs)3.937 E F0 -.2(bu) +108 501.6 S .454(iltin in).2 F -.2(vo)-.4 G -.1(ke).2 G 2.954(dw).1 G +.454(ith the tilde-pre\214x as an ar)-2.954 F 2.954(gument. If)-.18 F +.454(the characters follo)2.954 F .455 (wing the tilde in the tilde-pre\214x)-.25 F (consist of a number without a leading `+' or `\255', `+' is assumed.) -108 460.8 Q(If the login name is in)108 477.6 Q -.25(va)-.4 G +108 513.6 Q(If the login name is in)108 530.4 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 494.4 R .167 +(ord is unchanged.)-.1 E .167(Each v)108 547.2 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 -.282(these cases, tilde e)108 506.4 R .282(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.666 E F0 5.166(.I)C(n)-5.166 E +.281(these cases, tilde e)108 559.2 R .282(xpansion is also performed.) -.15 F(Consequently)5.282 E 2.782(,o)-.65 G .282 (ne may use \214le names with tildes in assign-)-2.782 F(ments to)108 -518.4 Q F3 -.666(PA)2.5 G(TH)-.189 E F4(,)A F3(MAILP)2.25 E -.855(AT) +571.2 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 535.2 S(rameter Expansion).1 E F0 1.605 -(The `)108 547.2 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 559.2 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 571.2 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 -583.2 Q 1.19 +(alue.)-.25 E F2 -.1(Pa)87 588 S(rameter Expansion).1 E F0 1.606(The `) +108 600 R F2($)A F0 4.106('c)C 1.606(haracter introduces parameter e) +-4.106 F 1.605(xpansion, command substitution, or arithmetic e)-.15 F +4.105(xpansion. The)-.15 F .406(parameter name or symbol to be e)108 612 +R .407(xpanded may be enclosed in braces, which are optional b)-.15 F +.407(ut serv)-.2 F 2.907(et)-.15 G 2.907(op)-2.907 G(ro-)-2.907 E .033 +(tect the v)108 624 R .033(ariable to be e)-.25 F .033 +(xpanded from characters immediately follo)-.15 F .032 +(wing it which could be interpreted as part)-.25 F(of the name.)108 636 +Q 1.189 (When braces are used, the matching ending brace is the \214rst `)108 -600 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 -612 R 2.15(xpansion, command substitution, or parameter)-.15 F -.15(ex) -108 624 S(pansion.).15 E(${)108 640.8 Q F2(par)A(ameter)-.15 E F0(})A -1.205(The v)144 652.8 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 664.8 R F2(par) -4.014 E(ameter)-.15 E F0 .264(is follo)3.494 F .264 +652.8 R F2(})A F0 3.69('n)C 1.19(ot escaped by a backslash or within a) +-3.69 F 2.15(quoted string, and not within an embedded arithmetic e)108 +664.8 R 2.15(xpansion, command substitution, or parameter)-.15 F -.15 +(ex)108 676.8 S(pansion.).15 E(${)108 693.6 Q F1(par)A(ameter)-.15 E F0 +(})A 1.204(The v)144 705.6 R 1.204(alue of)-.25 F F1(par)3.704 E(ameter) +-.15 E F0 1.204(is substituted.)3.704 F 1.204 +(The braces are required when)6.204 F F1(par)4.955 E(ameter)-.15 E F0 +1.205(is a positional)4.435 F .264 +(parameter with more than one digit, or when)144 717.6 R F1(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 676.8 Q 1.509 -(If the \214rst character of)108 693.6 R F2(par)4.009 E(ameter)-.15 E F0 -1.509(is an e)4.009 F 1.509(xclamation point, a le)-.15 F -.15(ve)-.25 G -4.009(lo).15 G 4.008(fv)-4.009 G 1.508 -(ariable indirection is introduced.)-4.258 F F1(Bash)108 705.6 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 717.6 R .352(xpanded and that v)-.15 F .351 -(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 729.6 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 F2 -(pr)A(e\214x)-.37 E F0 .02(*} and)B(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(17)198.445 E 0 Cg EP +(be interpreted as part of its name.)144 729.6 Q(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(17)197.335 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(${)108 84 Q/F1 10/Times-Bold@0 SF(!)A/F2 10/Times-Italic@0 SF -(name)A F0([)A F2(@)A F0 .763(]} 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 96 Q .334(In each of the cases belo)108 -112.8 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 1.418(and arithmetic e)108 124.8 -R 3.918(xpansion. When)-.15 F 1.418(not performing substring e)3.918 F -(xpansion,)-.15 E F1(bash)3.918 E F0 1.418 -(tests for a parameter that is)3.918 F(unset or null; omitting the colo\ -n results in a test only for a parameter that is unset.)108 136.8 Q(${) -108 153.6 Q F2(par)A(ameter)-.15 E F1<3aad>A F2(wor)A(d)-.37 E F0(})A F1 -.722(Use Default V)144 165.6 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 177.6 Q(alue of)-.25 E F2 -(par)3.75 E(ameter)-.15 E F0(is substituted.)3.23 E(${)108 189.6 Q F2 -(par)A(ameter)-.15 E F1(:=)A F2(wor)A(d)-.37 E F0(})A F1 2.005 -(Assign Default V)144 201.6 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 213.6 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 +-.35 E 1.508(If the \214rst character of)108 84 R/F1 10/Times-Italic@0 +SF(par)4.009 E(ameter)-.15 E F0 1.509(is an e)4.009 F 1.509 +(xclamation point, a le)-.15 F -.15(ve)-.25 G 4.009(lo).15 G 4.009(fv) +-4.009 G 1.509(ariable indirection is introduced.)-4.259 F/F2 10 +/Times-Bold@0 SF(Bash)108 96 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 F1 +(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 .351(able is then e)108 108 R .351 +(xpanded and that v)-.15 F .352 +(alue is used in the rest of the substitution, rather than the v)-.25 F +.352(alue of)-.25 F F1(par)2.852 E(ame-)-.15 E(ter)108 120 Q F0 2.52 +(itself. This)2.52 F .02(is kno)2.52 F .02(wn as)-.25 F F1(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(pr)A +(e\214x)-.37 E F0 .019(*} and)B(${)108 132 Q F2(!)A F1(name)A F0([)A F1 +(@)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 144 Q +.334(In each of the cases belo)108 160.8 R -.65(w,)-.25 G F1(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 1.417(and arithmetic e)108 172.8 R 3.918(xpansion. When)-.15 F 1.418 +(not performing substring e)3.918 F(xpansion,)-.15 E F2(bash)3.918 E F0 +1.418(tests for a parameter that is)3.918 F(unset or null; omitting the\ + colon results in a test only for a parameter that is unset.)108 184.8 Q +(${)108 201.6 Q F1(par)A(ameter)-.15 E F2<3aad>A F1(wor)A(d)-.37 E F0(}) +A F2 .723(Use Default V)144 213.6 R(alues)-.92 E F0 5.723(.I)C(f)-5.723 +E F1(par)4.473 E(ameter)-.15 E F0 .723(is unset or null, the e)3.953 F +.722(xpansion of)-.15 F F1(wor)3.562 E(d)-.37 E F0 .722(is substituted.) +3.992 F(Other)5.722 E(-)-.2 E(wise, the v)144 225.6 Q(alue of)-.25 E F1 +(par)3.75 E(ameter)-.15 E F0(is substituted.)3.23 E(${)108 237.6 Q F1 +(par)A(ameter)-.15 E F2(:=)A F1(wor)A(d)-.37 E F0(})A F2 2.004 +(Assign Default V)144 249.6 R(alues)-.92 E F0 7.004(.I)C(f)-7.004 E F1 +(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 F1(wor)4.845 E(d)-.37 E F0 2.005 +(is assigned to)5.275 F F1(par)144 261.6 Q(ameter)-.15 E F0 5.279(.T).73 +G .279(he v)-5.279 F .279(alue of)-.25 F F1(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 225.6 Q(ay)-.1 E(.)-.65 E -(${)108 237.6 Q F2(par)A(ameter)-.15 E F1(:?)A F2(wor)A(d)-.37 E F0(})A -F1 .535(Display Err)144 249.6 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 261.6 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 273.6 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 285.6 Q F2(par)A(ameter)-.15 E F1(:+)A F2 -(wor)A(d)-.37 E F0(})A F1 .745(Use Alter)144 297.6 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 +(eters may not be assigned to in this w)144 273.6 Q(ay)-.1 E(.)-.65 E +(${)108 285.6 Q F1(par)A(ameter)-.15 E F2(:?)A F1(wor)A(d)-.37 E F0(})A +F2 .535(Display Err)144 297.6 R .535(or if Null or Unset)-.18 F F0 5.535 +(.I)C(f)-5.535 E F1(par)4.285 E(ameter)-.15 E F0 .535 +(is null or unset, the e)3.765 F .535(xpansion of)-.15 F F1(wor)3.035 E +(d)-.37 E F0 .535(\(or a mes-)3.035 F .662(sage to that ef)144 309.6 R +.662(fect if)-.25 F F1(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 321.6 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 F1(par)2.5 E(ameter)-.15 E F0 +(is substituted.)2.5 E(${)108 333.6 Q F1(par)A(ameter)-.15 E F2(:+)A F1 +(wor)A(d)-.37 E F0(})A F2 .745(Use Alter)144 345.6 R .745(nate V)-.15 F +(alue)-.92 E F0 5.745(.I)C(f)-5.745 E F1(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 309.6 Q F2(wor)2.84 E(d)-.37 E F0 -(is substituted.)3.27 E(${)108 321.6 Q F2(par)A(ameter)-.15 E F1(:)A F2 -(of)A(fset)-.18 E F0(})A(${)108 333.6 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 345.6 R F0 .796(Expands 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 -357.6 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 369.6 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 +(xpan-)-.15 E(sion of)144 357.6 Q F1(wor)2.84 E(d)-.37 E F0 +(is substituted.)3.27 E(${)108 369.6 Q F1(par)A(ameter)-.15 E F2(:)A F1 +(of)A(fset)-.18 E F0(})A(${)108 381.6 Q F1(par)A(ameter)-.15 E F2(:)A F1 +(of)A(fset)-.18 E F2(:)A F1(length)A F0(})A F2 .797 +(Substring Expansion.)144 393.6 R F0 .796(Expands to up to)5.797 F F1 +(length)3.296 E F0 .796(characters of)3.296 F F1(par)3.296 E(ameter)-.15 +E F0 .796(starting at the character)3.296 F .228(speci\214ed by)144 +405.6 R F1(of)2.728 E(fset)-.18 E F0 5.228(.I)C(f)-5.228 E F1(length) +2.728 E F0 .229(is omitted, e)2.729 F .229(xpands to the substring of) +-.15 F F1(par)2.729 E(ameter)-.15 E F0 .229(starting at the char)2.729 F +(-)-.2 E .433(acter speci\214ed by)144 417.6 R F1(of)2.933 E(fset)-.18 E +F0(.)A F1(length)5.433 E F0(and)2.933 E F1(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 -381.6 S(ION).855 E F0(belo)2.577 E(w\).)-.25 E F2(length)5.327 E F0 .327 -(must e)2.827 F -.25(va)-.25 G .326 -(luate to a number greater than or equal to zero.).25 F(If)5.326 E F2 -(of)2.826 E(fset)-.18 E F0 -.25(eva)2.826 G(luates).25 E .015 -(to a number less than zero, the v)144 393.6 R .015 +/Times-Bold@0 SF .432(ARITHMETIC EV)2.933 F(ALU-)-1.215 E -.855(AT)144 +429.6 S(ION).855 E F0(belo)2.576 E(w\).)-.25 E F1(length)5.326 E F0 .326 +(must e)2.826 F -.25(va)-.25 G .326 +(luate to a number greater than or equal to zero.).25 F(If)5.327 E F1 +(of)2.827 E(fset)-.18 E F0 -.25(eva)2.827 G(luates).25 E .016 +(to a number less than zero, the v)144 441.6 R .015 (alue is used as an of)-.25 F .015(fset from the end of the v)-.25 F -.016(alue of)-.25 F F2(par)2.516 E(ameter)-.15 E F0 5.016(.I)C(f)-5.016 -E F2(par)144 405.6 Q(ameter)-.15 E F0(is)3.25 E F1(@)3.25 E F0 3.25(,t)C -.75(he result is)-3.25 F F2(length)3.25 E F0 .75 -(positional parameters be)3.25 F .75(ginning at)-.15 F F2(of)3.25 E -(fset)-.18 E F0 5.75(.I)C(f)-5.75 E F2(par)3.25 E(ameter)-.15 E F0 .75 -(is an)3.25 F 1.834(array name inde)144 417.6 R -.15(xe)-.15 G 4.334(db) -.15 G 4.334(y@o)-4.334 G 4.335(r*)-4.334 G 4.335(,t)-4.335 G 1.835 -(he result is the)-4.335 F F2(length)4.335 E F0 1.835 -(members of the array be)4.335 F 1.835(ginning with)-.15 F(${)144 429.6 -Q F2(par)A(ameter)-.15 E F0([)A F2(of)A(fset)-.18 E F0 2.611(]}. A)B(ne) -2.611 E -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G F2(of)2.761 E(fset)-.18 E -F0 .111(is tak)2.611 F .111(en relati)-.1 F .411 -.15(ve t)-.25 H 2.611 -(oo).15 G .11(ne greater than the maximum inde)-2.611 F 2.61(xo)-.15 G -(f)-2.61 E .92(the speci\214ed array)144 441.6 R 5.92(.N)-.65 G .92 +.015(alue of)-.25 F F1(par)2.515 E(ameter)-.15 E F0 5.015(.I)C(f)-5.015 +E F1(par)144 453.6 Q(ameter)-.15 E F0(is)3.25 E F2(@)3.25 E F0 3.25(,t)C +.75(he result is)-3.25 F F1(length)3.25 E F0 .75 +(positional parameters be)3.25 F .75(ginning at)-.15 F F1(of)3.25 E +(fset)-.18 E F0 5.75(.I)C(f)-5.75 E F1(par)3.25 E(ameter)-.15 E F0 .75 +(is an)3.25 F 1.835(array name inde)144 465.6 R -.15(xe)-.15 G 4.335(db) +.15 G 4.335(y@o)-4.335 G 4.335(r*)-4.335 G 4.335(,t)-4.335 G 1.835 +(he result is the)-4.335 F F1(length)4.335 E F0 1.834 +(members of the array be)4.335 F 1.834(ginning with)-.15 F(${)144 477.6 +Q F1(par)A(ameter)-.15 E F0([)A F1(of)A(fset)-.18 E F0 2.61(]}. A)B(ne) +2.61 E -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G F1(of)2.76 E(fset)-.18 E +F0 .111(is tak)2.61 F .111(en relati)-.1 F .411 -.15(ve t)-.25 H 2.611 +(oo).15 G .111(ne greater than the maximum inde)-2.611 F 2.611(xo)-.15 G +(f)-2.611 E .92(the speci\214ed array)144 489.6 R 5.92(.N)-.65 G .92 (ote that a ne)-5.92 F -.05(ga)-.15 G(ti).05 E 1.22 -.15(ve o)-.25 H -.25(ff).15 G .92(set must be separated from the colon by at least one) -.25 F .641(space to a)144 453.6 R -.2(vo)-.2 G .641 +.25 F .64(space to a)144 501.6 R -.2(vo)-.2 G .641 (id being confused with the :- e).2 F 3.141(xpansion. Substring)-.15 F -(inde)3.141 E .64(xing is zero-based unless the)-.15 F .299 -(positional parameters are used, in which case the inde)144 465.6 R .299 -(xing starts at 1 by def)-.15 F 2.799(ault. If)-.1 F F2(of)2.799 E(fset) --.18 E F0 .299(is 0, and)2.799 F(the positional parameters are used,)144 -477.6 Q F1($0)2.5 E F0(is pre\214x)2.5 E(ed to the list.)-.15 E(${)108 -494.4 Q F1(!)A F2(pr)A(e\214x)-.37 E F1(*)A F0(})A(${)108 506.4 Q F1(!)A -F2(pr)A(e\214x)-.37 E F1(@)A F0(})A .42(Expands to the names of v)144 -518.4 R .42(ariables whose names be)-.25 F .42(gin with)-.15 F F2(pr) +(inde)3.141 E .641(xing is zero-based unless the)-.15 F .299 +(positional parameters are used, in which case the inde)144 513.6 R .299 +(xing starts at 1 by def)-.15 F 2.799(ault. If)-.1 F F1(of)2.799 E(fset) +-.18 E F0 .298(is 0, and)2.799 F(the positional parameters are used,)144 +525.6 Q F2($0)2.5 E F0(is pre\214x)2.5 E(ed to the list.)-.15 E(${)108 +542.4 Q F2(!)A F1(pr)A(e\214x)-.37 E F2(*)A F0(})A(${)108 554.4 Q F2(!)A +F1(pr)A(e\214x)-.37 E F2(@)A F0(})A .42(Expands to the names of v)144 +566.4 R .42(ariables whose names be)-.25 F .42(gin with)-.15 F F1(pr) 2.92 E(e\214x)-.37 E F0 2.92(,s)C .42(eparated by the \214rst character) --2.92 F .098(of the)144 530.4 R F3(IFS)2.598 E F0 .098(special v)2.348 F -2.598(ariable. When)-.25 F F2(@)2.598 E F0 .099(is used and the e)2.598 -F .099(xpansion appears within double quotes, each)-.15 F -.25(va)144 -542.4 S(riable name e).25 E(xpands to a separate w)-.15 E(ord.)-.1 E(${) -108 559.2 Q F1(!)A F2(name)A F0([)A F2(@)A F0(]})A(${)108 571.2 Q F1(!)A -F2(name)A F0([)A F2(*)A F0(]})A(If)144 583.2 Q F2(name)2.922 E F0 .421 -(is an array v)2.922 F .421(ariable, e)-.25 F .421 +-2.92 F .099(of the)144 578.4 R F3(IFS)2.599 E F0 .099(special v)2.349 F +2.599(ariable. When)-.25 F F1(@)2.599 E F0 .098(is used and the e)2.599 +F .098(xpansion appears within double quotes, each)-.15 F -.25(va)144 +590.4 S(riable name e).25 E(xpands to a separate w)-.15 E(ord.)-.1 E(${) +108 607.2 Q F2(!)A F1(name)A F0([)A F1(@)A F0(]})A(${)108 619.2 Q F2(!)A +F1(name)A F0([)A F1(*)A F0(]})A(If)144 631.2 Q F1(name)2.921 E F0 .421 +(is an array v)2.921 F .421(ariable, e)-.25 F .421 (xpands to the list of array indices \(k)-.15 F -.15(ey)-.1 G .421 -(s\) assigned in).15 F F2(name)2.921 E F0 5.421(.I)C(f)-5.421 E F2(name) -2.921 E F0 .237(is not an array)144 595.2 R 2.737(,e)-.65 G .237 -(xpands to 0 if)-2.887 F F2(name)2.737 E F0 .238 -(is set and null otherwise.)2.737 F(When)5.238 E F2(@)2.738 E F0 .238 -(is used and the e)2.738 F(xpansion)-.15 E -(appears within double quotes, each k)144 607.2 Q .3 -.15(ey ex)-.1 H -(pands to a separate w).15 E(ord.)-.1 E(${)108 624 Q F1(#)A F2(par)A -(ameter)-.15 E F0(})A 1.392(The length in characters of the v)144 636 R -1.392(alue of)-.25 F F2(par)3.892 E(ameter)-.15 E F0 1.392 -(is substituted.)3.892 F(If)6.392 E F2(par)5.142 E(ameter)-.15 E F0(is) -4.622 E F1(*)3.891 E F0(or)3.891 E F1(@)3.891 E F0 3.891(,t)C(he)-3.891 -E -.25(va)144 648 S 1.748 +(s\) assigned in).15 F F1(name)2.921 E F0 5.422(.I)C(f)-5.422 E F1(name) +2.922 E F0 .238(is not an array)144 643.2 R 2.738(,e)-.65 G .238 +(xpands to 0 if)-2.888 F F1(name)2.738 E F0 .237 +(is set and null otherwise.)2.738 F(When)5.237 E F1(@)2.737 E F0 .237 +(is used and the e)2.737 F(xpansion)-.15 E +(appears within double quotes, each k)144 655.2 Q .3 -.15(ey ex)-.1 H +(pands to a separate w).15 E(ord.)-.1 E(${)108 672 Q F2(#)A F1(par)A +(ameter)-.15 E F0(})A 1.391(The length in characters of the v)144 684 R +1.392(alue of)-.25 F F1(par)3.892 E(ameter)-.15 E F0 1.392 +(is substituted.)3.892 F(If)6.392 E F1(par)5.142 E(ameter)-.15 E F0(is) +4.622 E F2(*)3.892 E F0(or)3.892 E F2(@)3.892 E F0 3.892(,t)C(he)-3.892 +E -.25(va)144 696 S 1.749 (lue substituted is the number of positional parameters.).25 F(If)6.749 -E F2(par)5.499 E(ameter)-.15 E F0 1.749(is an array name sub-)4.979 F -(scripted by)144 660 Q F1(*)2.5 E F0(or)2.5 E F1(@)2.5 E F0 2.5(,t)C +E F1(par)5.498 E(ameter)-.15 E F0 1.748(is an array name sub-)4.978 F +(scripted by)144 708 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 676.8 Q F2(par)A(ameter)-.15 E F1(#)A F2(wor)A(d) --.37 E F0(})A(${)108 688.8 Q F2(par)A(ameter)-.15 E F1(##)A F2(wor)A(d) --.37 E F0(})A(The)144 700.8 Q F2(wor)3.331 E(d)-.37 E F0 .491(is e)3.761 -F .491(xpanded to produce a pattern just as in pathname e)-.15 F 2.99 -(xpansion. If)-.15 F .49(the pattern matches)2.99 F .411(the be)144 -712.8 R .411(ginning of the v)-.15 F .411(alue of)-.25 F F2(par)2.911 E -(ameter)-.15 E F0 2.911(,t).73 G .411(hen the result of the e)-2.911 F -.411(xpansion is the e)-.15 F .412(xpanded v)-.15 F .412(alue of)-.25 F -F2(par)145.25 724.8 Q(ameter)-.15 E F0 .607 -(with the shortest matching pattern \(the `)3.838 F(`)-.74 E F1(#)A F0 -2.087 -.74('' c)D .607(ase\) or the longest matching pattern \(the).74 F -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(18)198.445 E 0 Cg EP +-.25 E(.)-.65 E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(18)197.335 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 -.74(``)144 84 S/F1 10/Times-Bold@0 SF(##).74 E F0 1.653 -.74 -('' c)D .173(ase\) deleted.).74 F(If)5.173 E/F2 10/Times-Italic@0 SF -(par)3.923 E(ameter)-.15 E F0(is)3.403 E F1(@)2.673 E F0(or)2.673 E F1 -(*)2.673 E F0 2.674(,t)C .174(he pattern remo)-2.674 F -.25(va)-.15 G -2.674(lo).25 G .174(peration is applied to each posi-)-2.674 F .655 -(tional parameter in turn, and the e)144 96 R .654 -(xpansion is the resultant list.)-.15 F(If)5.654 E F2(par)4.404 E -(ameter)-.15 E F0 .654(is an array v)3.884 F(ariable)-.25 E .65 -(subscripted with)144 108 R F1(@)3.15 E F0(or)3.15 E F1(*)3.15 E F0 3.15 -(,t)C .65(he pattern remo)-3.15 F -.25(va)-.15 G 3.151(lo).25 G .651 -(peration is applied to each member of the array in)-3.151 F -(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(The)144 -160.8 Q F2(wor)2.619 E(d)-.37 E F0 .119(is e)2.619 F .119 +-.35 E(${)108 84 Q/F1 10/Times-Italic@0 SF(par)A(ameter)-.15 E/F2 10 +/Times-Bold@0 SF(#)A F1(wor)A(d)-.37 E F0(})A(${)108 96 Q F1(par)A +(ameter)-.15 E F2(##)A F1(wor)A(d)-.37 E F0(})A(The)144 108 Q F1(wor) +3.33 E(d)-.37 E F0 .49(is e)3.76 F .491 +(xpanded to produce a pattern just as in pathname e)-.15 F 2.991 +(xpansion. If)-.15 F .491(the pattern matches)2.991 F .412(the be)144 +120 R .412(ginning of the v)-.15 F .411(alue of)-.25 F F1(par)2.911 E +(ameter)-.15 E F0 2.911(,t).73 G .411(hen the result of the e)-2.911 F +.411(xpansion is the e)-.15 F .411(xpanded v)-.15 F .411(alue of)-.25 F +F1(par)145.25 132 Q(ameter)-.15 E F0 .607 +(with the shortest matching pattern \(the `)3.837 F(`)-.74 E F2(#)A F0 +2.087 -.74('' c)D .607(ase\) or the longest matching pattern \(the).74 F +-.74(``)144 144 S F2(##).74 E F0 1.654 -.74('' c)D .174(ase\) deleted.) +.74 F(If)5.174 E F1(par)3.924 E(ameter)-.15 E F0(is)3.404 E F2(@)2.674 E +F0(or)2.674 E F2(*)2.674 E F0 2.674(,t)C .173(he pattern remo)-2.674 F +-.25(va)-.15 G 2.673(lo).25 G .173(peration is applied to each posi-) +-2.673 F .654(tional parameter in turn, and the e)144 156 R .654 +(xpansion is the resultant list.)-.15 F(If)5.655 E F1(par)4.405 E +(ameter)-.15 E F0 .655(is an array v)3.885 F(ariable)-.25 E .651 +(subscripted with)144 168 R F2(@)3.151 E F0(or)3.151 E F2(*)3.151 E F0 +3.151(,t)C .651(he pattern remo)-3.151 F -.25(va)-.15 G 3.151(lo).25 G +.65(peration is applied to each member of the array in)-3.151 F +(turn, and the e)144 180 Q(xpansion is the resultant list.)-.15 E(${)108 +196.8 Q F1(par)A(ameter)-.15 E F2(%)A F1(wor)A(d)-.37 E F0(})A(${)108 +208.8 Q F1(par)A(ameter)-.15 E F2(%%)A F1(wor)A(d)-.37 E F0(})A(The)144 +220.8 Q F1(wor)2.618 E(d)-.37 E F0 .118(is e)2.618 F .119 (xpanded to produce a pattern just as in pathname e)-.15 F 2.619 -(xpansion. If)-.15 F .118(the pattern matches a)2.619 F 2.401 -(trailing portion of the e)144 172.8 R 2.401(xpanded v)-.15 F 2.401 -(alue of)-.25 F F2(par)4.901 E(ameter)-.15 E F0 4.901(,t).73 G 2.402 -(hen the result of the e)-4.901 F 2.402(xpansion is the)-.15 F -.15(ex) -144 184.8 S 1.153(panded v).15 F 1.153(alue of)-.25 F F2(par)4.902 E +(xpansion. If)-.15 F .119(the pattern matches a)2.619 F 2.402 +(trailing portion of the e)144 232.8 R 2.402(xpanded v)-.15 F 2.401 +(alue of)-.25 F F1(par)4.901 E(ameter)-.15 E F0 4.901(,t).73 G 2.401 +(hen the result of the e)-4.901 F 2.401(xpansion is the)-.15 F -.15(ex) +144 244.8 S 1.152(panded v).15 F 1.152(alue of)-.25 F F1(par)4.902 E (ameter)-.15 E F0 1.152(with the shortest matching pattern \(the `)4.382 -F(`)-.74 E F1(%)A F0 2.632 -.74('' c)D 1.152(ase\) or the longest).74 F -.79(matching pattern \(the `)144 196.8 R(`)-.74 E F1(%%)A F0 2.27 -.74 -('' c)D .79(ase\) deleted.).74 F(If)5.79 E F2(par)4.54 E(ameter)-.15 E -F0(is)4.02 E F1(@)3.29 E F0(or)3.29 E F1(*)3.29 E F0 3.29(,t)C .79 +F(`)-.74 E F2(%)A F0 2.632 -.74('' c)D 1.153(ase\) or the longest).74 F +.79(matching pattern \(the `)144 256.8 R(`)-.74 E F2(%%)A F0 2.27 -.74 +('' c)D .79(ase\) deleted.).74 F(If)5.79 E F1(par)4.54 E(ameter)-.15 E +F0(is)4.02 E F2(@)3.29 E F0(or)3.29 E F2(*)3.29 E F0 3.29(,t)C .79 (he pattern remo)-3.29 F -.25(va)-.15 G 3.29(lo).25 G(pera-)-3.29 E 1.758(tion is applied to each positional parameter in turn, and the e) -144 208.8 R 1.758(xpansion is the resultant list.)-.15 F(If)6.758 E F2 -(par)145.25 220.8 Q(ameter)-.15 E F0 .088(is an array v)3.318 F .089 -(ariable subscripted with)-.25 F F1(@)2.589 E F0(or)2.589 E F1(*)2.589 E -F0 2.589(,t)C .089(he pattern remo)-2.589 F -.25(va)-.15 G 2.589(lo).25 -G .089(peration is applied to)-2.589 F -(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(The)144 261.6 Q F2 +144 268.8 R 1.758(xpansion is the resultant list.)-.15 F(If)6.759 E F1 +(par)145.25 280.8 Q(ameter)-.15 E F0 .089(is an array v)3.319 F .089 +(ariable subscripted with)-.25 F F2(@)2.589 E F0(or)2.589 E F2(*)2.589 E +F0 2.589(,t)C .089(he pattern remo)-2.589 F -.25(va)-.15 G 2.588(lo).25 +G .088(peration is applied to)-2.588 F +(each member of the array in turn, and the e)144 292.8 Q +(xpansion is the resultant list.)-.15 E(${)108 309.6 Q F1(par)A(ameter) +-.15 E F2(/)A F1(pattern)A F2(/)A F1(string)A F0(})A(The)144 321.6 Q F1 (pattern)5.085 E F0 2.585(is e)5.085 F 2.585 (xpanded to produce a pattern just as in pathname e)-.15 F(xpansion.) --.15 E F2 -.8(Pa)7.585 G -.15(ra).8 G(meter).15 E F0(is)5.085 E -.15(ex) -144 273.6 S 1.451(panded and the longest match of).15 F F2(pattern)3.951 -E F0(ag)3.951 E 1.451(ainst its v)-.05 F 1.452(alue is replaced with) --.25 F F2(string)3.952 E F0 6.452(.I)C(f)-6.452 E F2(pattern)3.952 E F0 -(be)144 285.6 Q 1.237(gins with)-.15 F F1(/)3.737 E F0 3.737(,a)C 1.237 -(ll matches of)-3.737 F F2(pattern)3.737 E F0 1.237(are replaced with) -3.737 F F2(string)3.737 E F0 6.237(.N)C 1.237 -(ormally only the \214rst match is)-6.237 F 2.579(replaced. If)144 297.6 -R F2(pattern)2.579 E F0(be)2.579 E .079(gins with)-.15 F F1(#)2.579 E F0 -2.579(,i)C 2.579(tm)-2.579 G .079(ust match at the be)-2.579 F .08 -(ginning of the e)-.15 F .08(xpanded v)-.15 F .08(alue of)-.25 F F2(par) -2.58 E(am-)-.15 E(eter)144 309.6 Q F0 5.762(.I)C(f)-5.762 E F2(pattern) -3.262 E F0(be)3.261 E .761(gins with)-.15 F F1(%)3.261 E F0 3.261(,i)C -3.261(tm)-3.261 G .761(ust match at the end of the e)-3.261 F .761 -(xpanded v)-.15 F .761(alue of)-.25 F F2(par)3.261 E(ameter)-.15 E F0 -5.761(.I)C(f)-5.761 E F2(string)144 321.6 Q F0 1.937 -(is null, matches of)4.437 F F2(pattern)4.437 E F0 1.937 -(are deleted and the)4.437 F F1(/)4.438 E F0(follo)4.438 E(wing)-.25 E -F2(pattern)4.438 E F0 1.938(may be omitted.)4.438 F(If)6.938 E F2(par) -145.25 333.6 Q(ameter)-.15 E F0(is)3.329 E F1(@)2.599 E F0(or)2.598 E F1 +-.15 E F1 -.8(Pa)7.585 G -.15(ra).8 G(meter).15 E F0(is)5.085 E -.15(ex) +144 333.6 S 1.452(panded and the longest match of).15 F F1(pattern)3.951 +E F0(ag)3.951 E 1.451(ainst its v)-.05 F 1.451(alue is replaced with) +-.25 F F1(string)3.951 E F0 6.451(.I)C(f)-6.451 E F1(pattern)3.951 E F0 +(be)144 345.6 Q 1.236(gins with)-.15 F F2(/)3.736 E F0 3.737(,a)C 1.237 +(ll matches of)-3.737 F F1(pattern)3.737 E F0 1.237(are replaced with) +3.737 F F1(string)3.737 E F0 6.237(.N)C 1.237 +(ormally only the \214rst match is)-6.237 F 2.58(replaced. If)144 357.6 +R F1(pattern)2.58 E F0(be)2.58 E .08(gins with)-.15 F F2(#)2.58 E F0 +2.58(,i)C 2.58(tm)-2.58 G .079(ust match at the be)-2.58 F .079 +(ginning of the e)-.15 F .079(xpanded v)-.15 F .079(alue of)-.25 F F1 +(par)2.579 E(am-)-.15 E(eter)144 369.6 Q F0 5.761(.I)C(f)-5.761 E F1 +(pattern)3.261 E F0(be)3.261 E .761(gins with)-.15 F F2(%)3.261 E F0 +3.261(,i)C 3.261(tm)-3.261 G .761(ust match at the end of the e)-3.261 F +.761(xpanded v)-.15 F .761(alue of)-.25 F F1(par)3.262 E(ameter)-.15 E +F0 5.762(.I)C(f)-5.762 E F1(string)144 381.6 Q F0 1.938 +(is null, matches of)4.438 F F1(pattern)4.438 E F0 1.938 +(are deleted and the)4.438 F F2(/)4.437 E F0(follo)4.437 E(wing)-.25 E +F1(pattern)4.437 E F0 1.937(may be omitted.)4.437 F(If)6.937 E F1(par) +145.25 393.6 Q(ameter)-.15 E F0(is)3.328 E F2(@)2.598 E F0(or)2.598 E F2 (*)2.598 E F0 2.598(,t)C .098(he substitution operation is applied to e\ -ach positional parameter in turn, and)-2.598 F .64(the e)144 345.6 R .64 -(xpansion is the resultant list.)-.15 F(If)5.64 E F2(par)4.39 E(ameter) +ach positional parameter in turn, and)-2.598 F .64(the e)144 405.6 R .64 +(xpansion is the resultant list.)-.15 F(If)5.64 E F1(par)4.39 E(ameter) -.15 E F0 .64(is an array v)3.87 F .64(ariable subscripted with)-.25 F -F1(@)3.14 E F0(or)3.14 E F1(*)3.14 E F0 3.14(,t)C(he)-3.14 E 1.446(subs\ +F2(@)3.14 E F0(or)3.14 E F2(*)3.14 E F0 3.14(,t)C(he)-3.14 E 1.446(subs\ titution operation is applied to each member of the array in turn, and \ -the e)144 357.6 R 1.446(xpansion is the)-.15 F(resultant list.)144 369.6 -Q F1(Command Substitution)87 386.4 Q F2 1.697(Command substitution)108 -398.4 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 410.4 Q F1($\()144 432 Q F2 -(command)A F1(\))1.666 E F0(or)108 444 Q F1<92>144 456 Q F2(command)A F1 -<92>A(Bash)108 472.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 484.8 R 3.268(yt)-.15 G .768 +the e)144 417.6 R 1.447(xpansion is the)-.15 F(resultant list.)144 429.6 +Q F2(Command Substitution)87 446.4 Q F1 1.698(Command substitution)108 +458.4 R F0(allo)4.198 E 1.697 +(ws the output of a command to replace the command name.)-.25 F 1.697 +(There are tw)6.697 F(o)-.1 E(forms:)108 470.4 Q F2($\()144 492 Q F1 +(command)A F2(\))1.666 E F0(or)108 504 Q F2<92>144 516 Q F1(command)A F2 +<92>A(Bash)108 532.8 Q F0 .019(performs the e)2.519 F .019 +(xpansion by e)-.15 F -.15(xe)-.15 G(cuting).15 E F1(command)2.519 E F0 +.02(and replacing the command substitution with the stan-)2.519 F .768 +(dard output of the command, with an)108 544.8 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 496.8 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 508.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 525.6 R(xcept)-.15 -E .315(when follo)108 537.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\ +F .768(wlines are not deleted, b)-.25 F(ut)-.2 E(the)108 556.8 Q 3.218 +(ym)-.15 G .718(ay be remo)-3.218 F -.15(ve)-.15 G 3.218(dd).15 G .719 +(uring w)-3.218 F .719(ord splitting.)-.1 F .719 +(The command substitution)5.719 F F2($\(cat)3.219 E F1(\214le)3.219 E F2 +(\))A F0 .719(can be replaced by the)3.219 F(equi)108 568.8 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 585.6 R(xcept)-.15 +E .314(when follo)108 597.6 R .314(wed by)-.25 F F2($)2.814 E F0(,)A F2 +<92>2.814 E F0 2.814(,o)C(r)-2.814 E F2(\\)2.814 E F0 5.314(.T)C .315(h\ e \214rst backquote not preceded by a backslash terminates the command \ -sub-)-5.315 F 3.886(stitution. When)108 549.6 R 1.386(using the $\() -3.886 F F2(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 561.6 Q(.)-.65 E .894 -(Command substitutions may be nested.)108 578.4 R 2.494 -.8(To n)5.894 H +sub-)-5.314 F 3.887(stitution. When)108 609.6 R 1.387(using the $\() +3.887 F F1(command).833 E F0 3.887(\)f)1.666 G 1.386 +(orm, all characters between the parentheses mak)-3.887 F 3.886(eu)-.1 G +3.886(pt)-3.886 G 1.386(he com-)-3.886 F +(mand; none are treated specially)108 621.6 Q(.)-.65 E .894 +(Command substitutions may be nested.)108 638.4 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 590.4 Q .422 -(If the substitution appears within double quotes, w)108 607.2 R .422 -(ord splitting and pathname e)-.1 F .423(xpansion are not performed)-.15 -F(on the results.)108 619.2 Q F1(Arithmetic Expansion)87 636 Q F0 1.035 -(Arithmetic e)108 648 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 +(quotes with backslashes.)108 650.4 Q .422 +(If the substitution appears within double quotes, w)108 667.2 R .422 +(ord splitting and pathname e)-.1 F .422(xpansion are not performed)-.15 +F(on the results.)108 679.2 Q F2(Arithmetic Expansion)87 696 Q F0 1.034 +(Arithmetic e)108 708 R 1.034(xpansion allo)-.15 F 1.034(ws the e)-.25 F +-.25(va)-.25 G 1.034(luation of an arithmetic e).25 F 1.035 (xpression and the substitution of the result.)-.15 F -(The format for arithmetic e)108 660 Q(xpansion is:)-.15 E F1($\(\()144 -676.8 Q F2 -.2(ex)C(pr).2 E(ession)-.37 E F1(\)\))A F0(The)108 693.6 Q -F2 -.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 705.6 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 717.6 Q -.25 -(va)-.15 G 2.5(l. Arithmetic).25 F -.15(ex)2.5 G -(pansions may be nested.).15 E(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(19)198.445 E 0 Cg EP +(The format for arithmetic e)108 720 Q(xpansion is:)-.15 E(GNU Bash-4.0) +72 768 Q(2008 May 25)147.345 E(19)197.335 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 1.378(The e)108 84 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/F1 9/Times-Bold@0 SF 1.378(ARITHMETIC EV)3.878 F -(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E/F2 9/Times-Roman@0 SF(.)A F0 -(If)5.879 E/F3 10/Times-Italic@0 SF -.2(ex)108 96 S(pr).2 E(ession)-.37 -E F0(is in)2.74 E -.25(va)-.4 G(lid,).25 E/F4 10/Times-Bold@0 SF(bash) -2.5 E F0(prints a message indicating f)2.5 E -(ailure and no substitution occurs.)-.1 E F4(Pr)87 112.8 Q -(ocess Substitution)-.18 E F3(Pr)108 124.8 Q .971(ocess substitution) --.45 F F0 .971(is supported on systems that support named pipes \()3.471 -F F3(FIFOs)A F0 3.47(\)o)C 3.47(rt)-3.47 G(he)-3.47 E F4(/de)3.47 E -(v/fd)-.15 E F0 .97(method of)3.47 F .021(naming open \214les.)108 136.8 -R .021(It tak)5.021 F .021(es the form of)-.1 F F4(<\()2.521 E F3(list)A -F4(\)).833 E F0(or)2.521 E F4(>\()2.521 E F3(list)A F4(\)).833 E F0 -5.021(.T)C .021(he process)-5.021 F F3(list)2.521 E F0 .021 -(is run with its input or output con-)2.521 F .059(nected to a)108 148.8 -R F3(FIFO)2.559 E F0 .058(or some \214le in)2.559 F F4(/de)2.558 E(v/fd) +-.35 E/F1 10/Times-Bold@0 SF($\(\()144 84 Q/F2 10/Times-Italic@0 SF -.2 +(ex)C(pr).2 E(ession)-.37 E F1(\)\))A F0(The)108 100.8 Q F2 -.2(ex)2.666 +G(pr).2 E(ession)-.37 E F0 .165 +(is treated as if it were within double quotes, b)2.906 F .165 +(ut a double quote inside the parentheses is not)-.2 F 1.074 +(treated specially)108 112.8 R 6.074(.A)-.65 G 1.074(ll tok)-6.074 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.075 +(xpansion, command)-.15 F(substitution, and quote remo)108 124.8 Q -.25 +(va)-.15 G 2.5(l. Arithmetic).25 F -.15(ex)2.5 G +(pansions may be nested.).15 E 1.379(The e)108 141.6 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.878 E F2 -.2(ex)108 153.6 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 170.4 Q(ocess Substitution)-.18 E F2(Pr)108 182.4 Q .97 +(ocess substitution)-.45 F F0 .971 +(is supported on systems that support named pipes \()3.47 F F2(FIFOs)A +F0 3.471(\)o)C 3.471(rt)-3.471 G(he)-3.471 E F1(/de)3.471 E(v/fd)-.15 E +F0 .971(method of)3.471 F .022(naming open \214les.)108 194.4 R .021 +(It tak)5.022 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 .058(nected to a)108 206.4 +R F2(FIFO)2.558 E F0 .058(or some \214le in)2.558 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 160.8 R 2.63(xpansion. If)-.15 F(the) -2.63 E F4(>\()2.63 E F3(list)A F4(\)).833 E F0 .13 -(form is used, writing to the \214le will pro)2.63 F .131 -(vide input for)-.15 F F3(list)2.631 E F0(.)A(If the)108 172.8 Q F4(<\() -2.5 E F3(list)A F4(\)).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 F3(list)2.5 E F0 -(.)A .897(When a)108 189.6 R -.25(va)-.2 G .896(ilable, process substit\ -ution is performed simultaneously with parameter and v).25 F .896 +-5.058 F .059(gument to the current com-)-.18 F .131 +(mand as the result of the e)108 218.4 R 2.631(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 .13(vide input for) +-.15 F F2(list)2.63 E F0(.)A(If the)108 230.4 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 .896(When a)108 247.2 R -.25(va)-.2 G .896(ilable, process substit\ +ution is performed simultaneously with parameter and v).25 F .897 (ariable e)-.25 F(xpansion,)-.15 E -(command substitution, and arithmetic e)108 201.6 Q(xpansion.)-.15 E F4 --.75(Wo)87 218.4 S(rd Splitting).75 E F0 1.142 -(The shell scans the results of parameter e)108 230.4 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 242.4 Q -F3(wor)2.5 E 2.5(ds)-.37 G(plitting)-2.5 E F0(.).22 E .063 -(The shell treats each character of)108 259.2 R F1(IFS)2.563 E F0 .063 +(command substitution, and arithmetic e)108 259.2 Q(xpansion.)-.15 E F1 +-.75(Wo)87 276 S(rd Splitting).75 E F0 1.143 +(The shell scans the results of parameter e)108 288 R 1.142 +(xpansion, command substitution, and arithmetic e)-.15 F 1.142 +(xpansion that)-.15 F(did not occur within double quotes for)108 300 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 316.8 R F3(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 271.2 R(If)6.788 E F1 -(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 F4()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 283.2 R F4 -()2.522 E F0(,)A F4()2.522 E F0 2.521(,a)C(nd)-2.521 E F4 +-.15 F(ords)-.1 E 1.789(on these characters.)108 328.8 R(If)6.789 E F3 +(IFS)4.289 E F0 1.788(is unset, or its v)4.039 F 1.788(alue is e)-.25 F +(xactly)-.15 E F1()4.288 E F0 4.288(,t)C 1.788 +(he def)-4.288 F 1.788(ault, then)-.1 F .021(sequences of)108 340.8 R F1 +()2.521 E F0(,)A F1()2.521 E F0 2.521(,a)C(nd)-2.521 E F1 ()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 295.2 R 3.086(ys)-.15 G -.586(equence of)-3.086 F F1(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 307.2 Q F1(IFS)3.617 E F0 +(ginning and end of the results of the pre)-.15 F .022(vious e)-.25 F +(xpan-)-.15 E .586(sions are ignored, and an)108 352.8 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 .585 +(es to delimit w)-.15 F(ords.)-.1 E(If)108 364.8 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 F4(space)3.617 -E F0(and)3.617 E F4(tab)3.617 E F0(are)3.617 E .315(ignored at the be) -108 319.2 R .315(ginning and end of the w)-.15 F .315 +(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 376.8 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 F1(IFS)2.815 E F0(\(an)2.566 E F1(IFS)108 331.2 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 F1(IFS)3.554 E F0 1.053(that is not)3.303 F F1 -(IFS)3.553 E F0 1.053(whitespace, along with an)3.303 F 3.553(ya)-.15 G -(djacent)-3.553 E F1(IFS)3.553 E F0 .331 -(whitespace characters, delimits a \214eld.)108 343.2 R 2.831(As)5.331 G -.332(equence of)-2.831 F F1(IFS)2.832 E F0 .332 +(alue of)-.25 F F3(IFS)2.815 E F0(\(an)2.565 E F3(IFS)108 388.8 Q F0 +1.053(whitespace character\).)3.303 F(An)6.053 E 3.553(yc)-.15 G 1.053 +(haracter in)-3.553 F F3(IFS)3.553 E F0 1.053(that is not)3.303 F F3 +(IFS)3.553 E F0 1.054(whitespace, along with an)3.304 F 3.554(ya)-.15 G +(djacent)-3.554 E F3(IFS)3.554 E F0 .332 +(whitespace characters, delimits a \214eld.)108 400.8 R 2.832(As)5.332 G +.332(equence of)-2.832 F F3(IFS)2.832 E F0 .331 (whitespace characters is also treated as a delim-)2.582 F(iter)108 -355.2 Q 5(.I)-.55 G 2.5(ft)-5 G(he v)-2.5 E(alue of)-.25 E F1(IFS)2.5 E -F0(is null, no w)2.25 E(ord splitting occurs.)-.1 E 1.879 -(Explicit null ar)108 372 R 1.879(guments \()-.18 F F4 .833("").833 G F0 -(or)3.545 E F4 .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 384 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 396 Q -(gument results and is retained.)-.18 E(Note that if no e)108 412.8 Q -(xpansion occurs, no splitting is performed.)-.15 E F4 -.1(Pa)87 429.6 S -(thname Expansion).1 E F0 .371(After w)108 441.6 R .371 -(ord splitting, unless the)-.1 F F42.871 E F0 .371 -(option has been set,)2.871 F F4(bash)2.871 E F0 .37(scans each w)2.87 F -.37(ord for the characters)-.1 F F4(*)2.87 E F0(,)A F4(?)2.87 E F0 2.87 -(,a)C(nd)-2.87 E F4([)2.87 E F0(.)A .677 -(If one of these characters appears, then the w)108 453.6 R .677 -(ord is re)-.1 F -.05(ga)-.15 G .677(rded as a).05 F F3(pattern)3.177 E -F0 3.177(,a).24 G .678(nd replaced with an alphabeti-)-3.177 F 1.457 -(cally sorted list of \214le names matching the pattern.)108 465.6 R -1.456(If no matching \214le names are found, and the shell)6.457 F -(option)108 477.6 Q F4(nullglob)3.265 E F0 .765(is disabled, the w)3.265 -F .765(ord is left unchanged.)-.1 F .765(If the)5.765 F F4(nullglob) -3.265 E F0 .765(option is set, and no matches are)3.265 F .306 -(found, the w)108 489.6 R .306(ord is remo)-.1 F -.15(ve)-.15 G 2.806 -(d. If).15 F(the)2.805 E F4(failglob)2.805 E F0 .305 +412.8 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.878 +(Explicit null ar)108 429.6 R 1.878(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.879 +(guments, resulting from the)-.18 F -.15(ex)108 441.6 S .177 +(pansion of parameters that ha).15 F .477 -.15(ve n)-.2 H 2.677(ov).15 G +.177(alues, are remo)-2.927 F -.15(ve)-.15 G 2.676(d. If).15 F 2.676(ap) +2.676 G .176(arameter with no v)-2.676 F .176(alue is e)-.25 F .176 +(xpanded within)-.15 F(double quotes, a null ar)108 453.6 Q +(gument results and is retained.)-.18 E(Note that if no e)108 470.4 Q +(xpansion occurs, no splitting is performed.)-.15 E F1 -.1(Pa)87 487.2 S +(thname Expansion).1 E F0 .37(After w)108 499.2 R .37 +(ord splitting, unless the)-.1 F F12.87 E F0 .37 +(option has been set,)2.87 F F1(bash)2.87 E F0 .371(scans each w)2.871 F +.371(ord for the characters)-.1 F F1(*)2.871 E F0(,)A F1(?)2.871 E F0 +2.871(,a)C(nd)-2.871 E F1([)2.871 E F0(.)A .678 +(If one of these characters appears, then the w)108 511.2 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 .677(nd replaced with an alphabeti-)-3.177 F 1.456 +(cally sorted list of \214le names matching the pattern.)108 523.2 R +1.457(If no matching \214le names are found, and the shell)6.457 F +(option)108 535.2 Q F1(nullglob)3.265 E F0 .765(is disabled, the w)3.265 +F .765(ord is left unchanged.)-.1 F .765(If the)5.765 F F1(nullglob) +3.265 E F0 .765(option is set, and no matches are)3.265 F .305 +(found, the w)108 547.2 R .305(ord is remo)-.1 F -.15(ve)-.15 G 2.805 +(d. If).15 F(the)2.805 E F1(failglob)2.805 E F0 .305 (shell option is set, and no matches are found, an error message)2.805 F -.928(is printed and the command is not e)108 501.6 R -.15(xe)-.15 G -3.428(cuted. If).15 F .928(the shell option)3.428 F F4(nocaseglob)3.428 -E F0 .929(is enabled, the match is per)3.429 F(-)-.2 E .033 -(formed without re)108 513.6 R -.05(ga)-.15 G .033 -(rd to the case of alphabetic characters.).05 F .032 -(When a pattern is used for pathname e)5.032 F(xpansion,)-.15 E .104 -(the character)108 525.6 R F4 -.63(``)2.604 G -.55(.').63 G(')-.08 E F0 -.104(at the start of a name or immediately follo)5.104 F .105 -(wing a slash must be matched e)-.25 F(xplicitly)-.15 E 2.605(,u)-.65 G -(nless)-2.605 E .888(the shell option)108 537.6 R F4(dotglob)3.388 E F0 -.888(is set.)3.388 F .887 -(When matching a pathname, the slash character must al)5.888 F -.1(wa) --.1 G .887(ys be matched).1 F -.15(ex)108 549.6 S(plicitly).15 E 6.165 -(.I)-.65 G 3.665(no)-6.165 G 1.165(ther cases, the)-3.665 F F4 -.63(``) -3.665 G -.55(.').63 G(')-.08 E F0 1.166 -(character is not treated specially)6.165 F 6.166(.S)-.65 G 1.166 -(ee the description of)-6.166 F F4(shopt)3.666 E F0(belo)3.666 E(w)-.25 -E(under)108 561.6 Q F1 .478(SHELL B)2.978 F(UIL)-.09 E .478 -(TIN COMMANDS)-.828 F F0 .477(for a description of the)2.728 F F4 -(nocaseglob)2.977 E F0(,)A F4(nullglob)2.977 E F0(,)A F4(failglob)2.977 -E F0 2.977(,a)C(nd)-2.977 E F4(dotglob)2.977 E F0(shell options.)108 -573.6 Q(The)108 590.4 Q F1(GLOBIGNORE)2.63 E F0 .13(shell v)2.38 F .131 +.929(is printed and the command is not e)108 559.2 R -.15(xe)-.15 G +3.428(cuted. If).15 F .928(the shell option)3.428 F F1(nocaseglob)3.428 +E F0 .928(is enabled, the match is per)3.428 F(-)-.2 E .032 +(formed without re)108 571.2 R -.05(ga)-.15 G .032 +(rd to the case of alphabetic characters.).05 F .033 +(When a pattern is used for pathname e)5.033 F(xpansion,)-.15 E .105 +(the character)108 583.2 R F1 -.63(``)2.605 G -.55(.').63 G(')-.08 E F0 +.105(at the start of a name or immediately follo)5.105 F .104 +(wing a slash must be matched e)-.25 F(xplicitly)-.15 E 2.604(,u)-.65 G +(nless)-2.604 E .887(the shell option)108 595.2 R F1(dotglob)3.387 E F0 +.887(is set.)3.387 F .888 +(When matching a pathname, the slash character must al)5.887 F -.1(wa) +-.1 G .888(ys be matched).1 F -.15(ex)108 607.2 S(plicitly).15 E 6.166 +(.I)-.65 G 3.666(no)-6.166 G 1.166(ther cases, the)-3.666 F F1 -.63(``) +3.666 G -.55(.').63 G(')-.08 E F0 1.166 +(character is not treated specially)6.166 F 6.165(.S)-.65 G 1.165 +(ee the description of)-6.165 F F1(shopt)3.665 E F0(belo)3.665 E(w)-.25 +E(under)108 619.2 Q F3 .477(SHELL B)2.977 F(UIL)-.09 E .477 +(TIN COMMANDS)-.828 F F0 .477(for a description of the)2.727 F F1 +(nocaseglob)2.978 E F0(,)A F1(nullglob)2.978 E F0(,)A F1(failglob)2.978 +E F0 2.978(,a)C(nd)-2.978 E F1(dotglob)2.978 E F0(shell options.)108 +631.2 Q(The)108 648 Q F3(GLOBIGNORE)2.631 E F0 .131(shell v)2.381 F .131 (ariable may be used to restrict the set of \214le names matching a)-.25 -F F3(pattern)2.631 E F0 5.131(.I).24 G(f)-5.131 E F1(GLO-)2.631 E -(BIGNORE)108 602.4 Q F0 2.015(is set, each matching \214le name that al\ -so matches one of the patterns in)4.265 F F1(GLOBIGNORE)4.515 E F0(is) -4.264 E(remo)108 614.4 Q -.15(ve)-.15 G 2.503(df).15 G .003 -(rom the list of matches.)-2.503 F .003(The \214le names)5.003 F F4 -.63 -(``)2.503 G -.55(.').63 G(')-.08 E F0(and)5.003 E F4 -.63(``)2.503 G(..) -.63 E -.63('')-.55 G F0 .004(are al)5.633 F -.1(wa)-.1 G .004 -(ys ignored when).1 F F1(GLOBIGNORE)2.504 E F0(is)2.254 E .046 -(set and not null.)108 626.4 R(Ho)5.046 E(we)-.25 E -.15(ve)-.25 G .846 --.4(r, s).15 H(etting).4 E F1(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 F4(dotglob)2.545 E F0 .613 -(shell option, so all other \214le names be)108 638.4 R .614 -(ginning with a)-.15 F F4 -.63(``)3.114 G -.55(.').63 G(')-.08 E F0 .614 -(will match.)5.614 F 2.214 -.8(To g)5.614 H .614(et the old beha).8 F -.614(vior of ignoring)-.2 F .457(\214le names be)108 650.4 R .457 -(ginning with a)-.15 F F4 -.63(``)2.957 G -.55(.').63 G(')-.08 E F0 -2.957(,m)C(ak)-2.957 E(e)-.1 E F4 -.63(``)2.957 G(.*').63 E(')-.63 E F0 -.457(one of the patterns in)5.457 F F1(GLOBIGNORE)2.957 E F2(.)A F0(The) -4.957 E F4(dotglob)2.956 E F0 .456(option is)2.956 F(disabled when)108 -662.4 Q F1(GLOBIGNORE)2.5 E F0(is unset.)2.25 E F4 -.1(Pa)108 679.2 S -(tter).1 E 2.5(nM)-.15 G(atching)-2.5 E F0(An)108 696 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 708 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 720 R .576 -(The special pattern characters must be quoted if the)5.576 F 3.076(ya) --.15 G(re)-3.076 E(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(20) -198.445 E 0 Cg EP +F F2(pattern)2.63 E F0 5.13(.I).24 G(f)-5.13 E F3(GLO-)2.63 E(BIGNORE) +108 660 Q F0 2.015(is set, each matching \214le name that also matches \ +one of the patterns in)4.264 F F3(GLOBIGNORE)4.515 E F0(is)4.265 E(remo) +108 672 Q -.15(ve)-.15 G 2.504(df).15 G .004(rom the list of matches.) +-2.504 F .003(The \214le names)5.003 F F1 -.63(``)2.503 G -.55(.').63 G +(')-.08 E F0(and)5.003 E F1 -.63(``)2.503 G(..).63 E -.63('')-.55 G F0 +.003(are al)5.633 F -.1(wa)-.1 G .003(ys ignored when).1 F F3 +(GLOBIGNORE)2.503 E F0(is)2.253 E .045(set and not null.)108 684 R(Ho) +5.045 E(we)-.25 E -.15(ve)-.25 G .845 -.4(r, s).15 H(etting).4 E F3 +(GLOBIGNORE)2.545 E F0 .046(to a non-null v)2.296 F .046 +(alue has the ef)-.25 F .046(fect of enabling the)-.25 F F1(dotglob) +2.546 E F0 .614(shell option, so all other \214le names be)108 696 R +.614(ginning with a)-.15 F F1 -.63(``)3.114 G -.55(.').63 G(')-.08 E F0 +.614(will match.)5.614 F 2.213 -.8(To g)5.614 H .613(et the old beha).8 +F .613(vior of ignoring)-.2 F .456(\214le names be)108 708 R .456 +(ginning with a)-.15 F F1 -.63(``)2.957 G -.55(.').63 G(')-.08 E F0 +2.957(,m)C(ak)-2.957 E(e)-.1 E F1 -.63(``)2.957 G(.*').63 E(')-.63 E F0 +.457(one of the patterns in)5.457 F F3(GLOBIGNORE)2.957 E F4(.)A F0(The) +4.957 E F1(dotglob)2.957 E F0 .457(option is)2.957 F(disabled when)108 +720 Q F3(GLOBIGNORE)2.5 E F0(is unset.)2.25 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(20)197.335 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(to be matched literally)108 84 Q(.)-.65 E -(The special pattern characters ha)108 100.8 Q .3 -.15(ve t)-.2 H -(he follo).15 E(wing meanings:)-.25 E/F1 10/Times-Bold@0 SF(*)108 117.6 -Q F0(Matches an)31 E 2.5(ys)-.15 G(tring, including the null string.) --2.5 E F1(?)108 129.6 Q F0(Matches an)31 E 2.5(ys)-.15 G -(ingle character)-2.5 E(.)-.55 E F1([...])108 141.6 Q F0 .257 -(Matches an)21.84 F 2.757(yo)-.15 G .257(ne of the enclosed characters.) --2.757 F 2.757(Ap)5.257 G .257(air of characters separated by a h)-2.757 -F .256(yphen denotes a)-.05 F/F2 10/Times-Italic@0 SF -.15(ra)144 153.6 -S(ng).15 E 3.289(ee)-.1 G(xpr)-3.489 E(ession)-.37 E F0 3.289(;a)C 1.089 --.15(ny c)-3.289 H .789(haracter that sorts between those tw).15 F 3.289 -(oc)-.1 G .789(haracters, inclusi)-3.289 F -.15(ve)-.25 G 3.29(,u).15 G -.79(sing the cur)-3.29 F(-)-.2 E .35(rent locale')144 165.6 R 2.85(sc) --.55 G .35(ollating sequence and character set, is matched.)-2.85 F .349 +-.35 E/F1 10/Times-Bold@0 SF -.1(Pa)108 84 S(tter).1 E 2.5(nM)-.15 G +(atching)-2.5 E F0(An)108 100.8 Q 3.138(yc)-.15 G .638(haracter that ap\ +pears 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 +112.8 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 124.8 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 136.8 Q(.)-.65 E +(The special pattern characters ha)108 153.6 Q .3 -.15(ve t)-.2 H +(he follo).15 E(wing meanings:)-.25 E F1(*)108 170.4 Q F0 .455 +(Matches an)31 F 2.955(ys)-.15 G .455(tring, including the null string.) +-2.955 F .455(When the)5.455 F F1(globstar)2.955 E F0 .455 +(shell option is enabled, and)2.955 F F1(*)2.955 E F0(is)2.955 E .576 +(used in a \214lename e)144 182.4 R .576(xpansion conte)-.15 F .575 +(xt, tw)-.15 F 3.075(oa)-.1 G(djacent)-3.075 E F1(*)3.075 E F0 3.075(su) +C .575(sed as a single pattern will match all \214les)-3.075 F 1.183 +(and zero or more directories and subdirectories.)144 194.4 R 1.183 +(If follo)6.183 F 1.183(wed by a)-.25 F F1(/)3.683 E F0 3.683(,t)C 1.383 +-.1(wo a)-3.683 H(djacent).1 E F1(*)3.683 E F0 3.684(sw)C 1.184 +(ill match)-3.684 F(only directories and subdirectories.)144 206.4 Q F1 +(?)108 218.4 Q F0(Matches an)31 E 2.5(ys)-.15 G(ingle character)-2.5 E +(.)-.55 E F1([...])108 230.4 Q F0 .257(Matches an)21.84 F 2.757(yo)-.15 +G .257(ne of the enclosed characters.)-2.757 F 2.757(Ap)5.257 G .257 +(air of characters separated by a h)-2.757 F .256(yphen denotes a)-.05 F +/F2 10/Times-Italic@0 SF -.15(ra)144 242.4 S(ng).15 E 3.289(ee)-.1 G +(xpr)-3.489 E(ession)-.37 E F0 3.289(;a)C 1.089 -.15(ny c)-3.289 H .789 +(haracter that sorts between those tw).15 F 3.289(oc)-.1 G .789 +(haracters, inclusi)-3.289 F -.15(ve)-.25 G 3.29(,u).15 G .79 +(sing the cur)-3.29 F(-)-.2 E .35(rent locale')144 254.4 R 2.85(sc)-.55 +G .35(ollating sequence and character set, is matched.)-2.85 F .349 (If the \214rst character follo)5.349 F .349(wing the)-.25 F F1([)2.849 -E F0 .563(is a)144 177.6 R F1(!)3.063 E F0 .563(or a)5.563 F F1(^)3.063 +E F0 .563(is a)144 266.4 R F1(!)3.063 E F0 .563(or a)5.563 F F1(^)3.063 E F0 .564(then an)3.063 F 3.064(yc)-.15 G .564 (haracter not enclosed is matched.)-3.064 F .564 -(The sorting order of characters in range)5.564 F -.15(ex)144 189.6 S +(The sorting order of characters in range)5.564 F -.15(ex)144 278.4 S 1.102(pressions is determined by the current locale and the v).15 F 1.102(alue of the)-.25 F F1(LC_COLLA)3.602 E(TE)-.95 E F0 1.102(shell v) -3.602 F(ari-)-.25 E .088(able, if set.)144 201.6 R(A)5.088 E F12.588 +3.602 F(ari-)-.25 E .088(able, if set.)144 290.4 R(A)5.088 E F12.588 E F0 .088(may be matched by including it as the \214rst or last charact\ er in the set.)2.588 F(A)5.089 E F1(])2.589 E F0 .089(may be)2.589 F -(matched by including it as the \214rst character in the set.)144 213.6 -Q -.4(Wi)144 231.6 S(thin).4 E F1([)2.915 E F0(and)2.915 E F1(])2.915 E +(matched by including it as the \214rst character in the set.)144 302.4 +Q -.4(Wi)144 320.4 S(thin).4 E F1([)2.915 E F0(and)2.915 E F1(])2.915 E F0(,)A F2 -.15(ch)2.915 G(ar).15 E .415(acter classes)-.15 F F0 .415 (can be speci\214ed using the syntax)2.915 F F1([:)2.915 E F2(class)A F1 (:])A F0 2.914(,w)C(here)-2.914 E F2(class)2.914 E F0 .414(is one of) -2.914 F(the follo)144 243.6 Q +2.914 F(the follo)144 332.4 Q (wing classes de\214ned in the POSIX standard:)-.25 E F1 5.421 -(alnum alpha ascii blank cntrl digit graph lo)144 255.6 R 5.421 -(wer print punct space upper w)-.1 F(ord)-.1 E(xdigit)144 267.6 Q F0 -2.519(Ac)144 279.6 S .019(haracter class matches an)-2.519 F 2.519(yc) +(alnum alpha ascii blank cntrl digit graph lo)144 344.4 R 5.421 +(wer print punct space upper w)-.1 F(ord)-.1 E(xdigit)144 356.4 Q F0 +2.519(Ac)144 368.4 S .019(haracter class matches an)-2.519 F 2.519(yc) -.15 G .019(haracter belonging to that class.)-2.519 F(The)5.018 E F1 -.1(wo)2.518 G(rd).1 E F0 .018(character class matches)2.518 F -(letters, digits, and the character _.)144 291.6 Q -.4(Wi)144 309.6 S +(letters, digits, and the character _.)144 380.4 Q -.4(Wi)144 398.4 S (thin).4 E F1([)3.546 E F0(and)3.546 E F1(])3.546 E F0 3.546(,a)C(n) -3.546 E F2 1.046(equivalence class)3.546 F F0 1.046 (can be speci\214ed using the syntax)3.546 F F1([=)3.547 E F2(c)A F1(=]) A F0 3.547(,w)C 1.047(hich matches all)-3.547 F(characters with the sam\ e collation weight \(as de\214ned by the current locale\) as the charac\ -ter)144 321.6 Q F2(c)2.5 E F0(.)A -.4(Wi)144 339.6 S(thin).4 E F1([)2.5 +ter)144 410.4 Q F2(c)2.5 E F0(.)A -.4(Wi)144 428.4 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 F2 (symbol)A F1(.])A F0(matches the collating symbol)2.5 E F2(symbol)2.5 E -F0(.)A .705(If the)108 356.4 R F1(extglob)3.205 E F0 .705 +F0(.)A .705(If the)108 445.2 R F1(extglob)3.205 E F0 .705 (shell option is enabled using the)3.205 F F1(shopt)3.205 E F0 -.2(bu) 3.205 G .704(iltin, se).2 F -.15(ve)-.25 G .704(ral e).15 F .704 (xtended pattern matching operators)-.15 F .255(are recognized.)108 -368.4 R .255(In the follo)5.255 F .255(wing description, a)-.25 F F2 +457.2 R .255(In the follo)5.255 F .255(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.756 E F0(.)A(Composite patterns may be formed using one or more of the follo) -108 380.4 Q(wing sub-patterns:)-.25 E F1(?\()144 404.4 Q F2 +108 469.2 Q(wing sub-patterns:)-.25 E F1(?\()144 493.2 Q F2 (pattern-list).833 E F1(\)).833 E F0 -(Matches zero or one occurrence of the gi)180 416.4 Q -.15(ve)-.25 G 2.5 -(np).15 G(atterns)-2.5 E F1(*\()144 428.4 Q F2(pattern-list).833 E F1 -(\)).833 E F0(Matches zero or more occurrences of the gi)180 440.4 Q --.15(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E F1(+\()144 452.4 Q F2 +(Matches zero or one occurrence of the gi)180 505.2 Q -.15(ve)-.25 G 2.5 +(np).15 G(atterns)-2.5 E F1(*\()144 517.2 Q F2(pattern-list).833 E F1 +(\)).833 E F0(Matches zero or more occurrences of the gi)180 529.2 Q +-.15(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E F1(+\()144 541.2 Q F2 (pattern-list).833 E F1(\)).833 E F0 -(Matches one or more occurrences of the gi)180 464.4 Q -.15(ve)-.25 G -2.5(np).15 G(atterns)-2.5 E F1(@\()144 476.4 Q F2(pattern-list).833 E F1 -(\)).833 E F0(Matches one of the gi)180 488.4 Q -.15(ve)-.25 G 2.5(np) -.15 G(atterns)-2.5 E F1(!\()144 500.4 Q F2(pattern-list).833 E F1(\)) -.833 E F0(Matches an)180 512.4 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 529.2 -Q -.1(va)-.1 G(l).1 E F0 1.113(After the preceding e)108 541.2 R 1.113 +(Matches one or more occurrences of the gi)180 553.2 Q -.15(ve)-.25 G +2.5(np).15 G(atterns)-2.5 E F1(@\()144 565.2 Q F2(pattern-list).833 E F1 +(\)).833 E F0(Matches one of the gi)180 577.2 Q -.15(ve)-.25 G 2.5(np) +.15 G(atterns)-2.5 E F1(!\()144 589.2 Q F2(pattern-list).833 E F1(\)) +.833 E F0(Matches an)180 601.2 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 618 Q +-.1(va)-.1 G(l).1 E F0 1.113(After the preceding e)108 630 R 1.113 (xpansions, all unquoted occurrences of the characters)-.15 F F1(\\) 3.613 E F0(,)A F1<08>3.612 E F0 3.612(,a)C(nd)-3.612 E F1(")4.445 E F0 -1.112(that did not result)4.445 F(from one of the abo)108 553.2 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 570 Q F0 .545 -(Before a command is e)108 582 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 .617 -(by the shell.)108 594 R .617(Redirection may also be used to open and \ -close \214les for the current shell e)5.617 F -.15(xe)-.15 G .616 -(cution en).15 F(viron-)-.4 E 3.274(ment. The)108 606 R(follo)3.274 E -.774(wing redirection operators may precede or appear an)-.25 F .774 +1.112(that did not result)4.445 F(from one of the abo)108 642 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 658.8 Q F0 .545(Before a command is e) +108 670.8 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 .617(by the shell.)108 +682.8 R .617(Redirection may also be used to open and close \214les for\ + the current shell e)5.617 F -.15(xe)-.15 G .616(cution en).15 F(viron-) +-.4 E 3.274(ment. The)108 694.8 R(follo)3.274 E .774 +(wing redirection operators may precede or appear an)-.25 F .774 (ywhere within a)-.15 F F2 .775(simple command)3.615 F F0(or)4.045 E -(may follo)108 618 Q 2.5(wa)-.25 G F2(command)A F0 5(.R).77 G +(may follo)108 706.8 Q 2.5(wa)-.25 G F2(command)A F0 5(.R).77 G (edirections are processed in the order the)-5 E 2.5(ya)-.15 G(ppear) --2.5 E 2.5(,f)-.4 G(rom left to right.)-2.5 E .284(In the follo)108 -634.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 646.8 R F1(<)3.012 E F0 3.012(,t)C .512 +-2.5 E 2.5(,f)-.4 G(rom left to right.)-2.5 E 2.575(In the follo)108 +723.6 R 2.574(wing descriptions, if the \214le descriptor number is omi\ +tted, and the \214rst character of the)-.25 F(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(21)197.335 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 .278(redirection operator is)108 84 R/F1 10/Times-Bold@0 SF(<) +2.778 E F0 2.779(,t)C .279 (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 658.8 Q F1(>)2.5 E F0 2.5(,t)C +-2.779 F .279(If the \214rst character)5.279 F +(of the redirection operator is)108 96 Q F1(>)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 675.6 R .825(ord follo)-.1 F .824 +-2.5 E .825(The w)108 112.8 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 .772 -(jected to brace e)108 687.6 R .773(xpansion, tilde e)-.15 F .773 +(jected to brace e)108 124.8 R .773(xpansion, tilde e)-.15 F .773 (xpansion, parameter e)-.15 F .773 (xpansion, command substitution, arithmetic e)-.15 F(xpan-)-.15 E .844 -(sion, quote remo)108 699.6 R -.25(va)-.15 G .843(l, pathname e).25 F +(sion, quote remo)108 136.8 R -.25(va)-.15 G .843(l, pathname e).25 F .843(xpansion, and w)-.15 F .843(ord splitting.)-.1 F .843(If it e)5.843 F .843(xpands to more than one w)-.15 F(ord,)-.1 E F1(bash)3.343 E F0 -(reports an error)108 711.6 Q(.)-.55 E -(Note that the order of redirections is signi\214cant.)108 728.4 Q -.15 -(Fo)5 G 2.5(re).15 G(xample, the command)-2.65 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(21)198.445 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(ls)144 84 Q/F1 10/Times-Bold@0 SF(>)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 100.8 +(reports an error)108 148.8 Q(.)-.55 E +(Note that the order of redirections is signi\214cant.)108 165.6 Q -.15 +(Fo)5 G 2.5(re).15 G(xample, the command)-2.65 E(ls)144 182.4 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 199.2 Q/F2 10/Times-Italic@0 SF(dirlist)2.5 E F0 2.5(,w).68 G -(hile the command)-2.5 E(ls 2)144 117.6 Q F1(>&)A F0(1)A F1(>)2.5 E F0 -(dirlist)2.5 E .387(directs only the standard output to \214le)108 134.4 +(hile the command)-2.5 E(ls 2)144 216 Q F1(>&)A F0(1)A F1(>)2.5 E F0 +(dirlist)2.5 E .387(directs only the standard output to \214le)108 232.8 R F2(dirlist)2.887 E F0 2.887(,b).68 G .388(ecause the standard error w) -2.887 F .388(as duplicated as standard output)-.1 F -(before the standard output w)108 146.4 Q(as redirected to)-.1 E F2 -(dirlist)2.5 E F0(.).68 E F1(Bash)108 163.2 Q F0 .599(handles se)3.099 F +(before the standard output w)108 244.8 Q(as redirected to)-.1 E F2 +(dirlist)2.5 E F0(.).68 E F1(Bash)108 261.6 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 175.2 Q F1(/de)144 192 Q(v/fd/)-.15 E F2(fd)A F0 -(If)180 204 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 216 Q(v/stdin)-.15 E F0(File descriptor 0 is duplicated.)180 -228 Q F1(/de)144 240 Q(v/stdout)-.15 E F0 -(File descriptor 1 is duplicated.)180 252 Q F1(/de)144 264 Q(v/stderr) --.15 E F0(File descriptor 2 is duplicated.)180 276 Q F1(/de)144 288 Q -(v/tcp/)-.15 E F2(host)A F1(/)A F2(port)A F0(If)180 300 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(is an inte)2.997 F .497 -(ger port number or ser)-.15 F(-)-.2 E(vice name,)180 312 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 324 Q(v/udp/)-.15 E F2(host)A F1(/)A F2(port)A F0 -(If)180 336 Q F2(host)2.997 E F0 .497(is a v)2.997 F .497 +(wing)-.25 E(table:)108 273.6 Q F1(/de)144 290.4 Q(v/fd/)-.15 E F2(fd)A +F0(If)180 302.4 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 314.4 Q(v/stdin)-.15 E F0(File descriptor 0 is duplicated.) +180 326.4 Q F1(/de)144 338.4 Q(v/stdout)-.15 E F0 +(File descriptor 1 is duplicated.)180 350.4 Q F1(/de)144 362.4 Q +(v/stderr)-.15 E F0(File descriptor 2 is duplicated.)180 374.4 Q F1(/de) +144 386.4 Q(v/tcp/)-.15 E F2(host)A F1(/)A F2(port)A F0(If)180 398.4 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 +(is an inte)2.997 F .497(ger port number or ser)-.15 F(-)-.2 E +(vice name,)180 410.4 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 422.4 Q(v/udp/)-.15 E F2(host)A F1(/)A F2(port)A F0(If) +180 434.4 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 (is an inte)2.996 F .496(ger port number or ser)-.15 F(-)-.2 E -(vice name,)180 348 Q F1(bash)2.5 E F0 +(vice name,)180 446.4 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 364.8 S +-.1 E 2.5(Af)108 463.2 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 381.6 R 3.447(ym)-.15 G .947 +hould be used with care, as the)108 480 R 3.447(ym)-.15 G .947 (ay con\215ict with \214le)-3.447 F -(descriptors the shell uses internally)108 393.6 Q(.)-.65 E F1(Redir)87 -410.4 Q(ecting Input)-.18 E F0 .391 +(descriptors the shell uses internally)108 492 Q(.)-.65 E F1(Redir)87 +508.8 Q(ecting Input)-.18 E F0 .391 (Redirection of input causes the \214le whose name results from the e) -108 422.4 R .391(xpansion of)-.15 F F2(wor)3.231 E(d)-.37 E F0 .391 -(to be opened for read-)3.661 F(ing on \214le descriptor)108 434.4 Q F2 +108 520.8 R .391(xpansion of)-.15 F F2(wor)3.231 E(d)-.37 E F0 .391 +(to be opened for read-)3.661 F(ing on \214le descriptor)108 532.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 451.2 Q([)144 468 Q F2 -(n)A F0(])A F1(<)A F2(wor)A(d)-.37 E F1(Redir)87 484.8 Q(ecting Output) --.18 E F0 .174 +(The general format for redirecting input is:)108 549.6 Q([)144 566.4 Q +F2(n)A F0(])A F1(<)A F2(wor)A(d)-.37 E F1(Redir)87 583.2 Q +(ecting Output)-.18 E F0 .174 (Redirection of output causes the \214le whose name results from the e) -108 496.8 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 508.8 +108 595.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 607.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 .824(is not speci\214ed.)3.564 F .824(If the \214le does not)5.824 F --.15(ex)108 520.8 S(ist it is created; if it does e).15 E +-.15(ex)108 619.2 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 537.6 Q([)144 554.4 Q +(The general format for redirecting output is:)108 636 Q([)144 652.8 Q F2(n)A F0(])A F1(>)A F2(wor)A(d)-.37 E F0 .154 -(If the redirection operator is)108 571.2 R F1(>)2.654 E F0 2.654(,a)C +(If the redirection operator is)108 669.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 583.2 R +(iltin has been enabled, the redirection).2 F .658(will f)108 681.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 595.2 R F1(>|)2.909 E F0 2.909(,o)C +5.657 F .408(rection operator is)108 693.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 -607.2 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 -624 S(pending Redir).25 E(ected Output)-.18 E F0 .642 -(Redirection of output in this f)108 636 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 648 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 -660 Q(xist it is created.)-.15 E -(The general format for appending output is:)108 676.8 Q([)144 693.6 Q -F2(n)A F0(])A F1(>>)A F2(wor)A(d)-.37 E F0(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(22)198.445 E 0 Cg EP +705.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(GNU Bash-4.0) +72 768 Q(2008 May 25)147.345 E(22)197.335 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(Redir)87 84 Q -(ecting Standard Output and Standard Err)-.18 E(or)-.18 E(Bash)108 96 Q -F0(allo)3.142 E .642(ws both the standard output \(\214le descriptor 1\ -\) and the standard error output \(\214le descriptor 2\) to)-.25 F -(be redirected to the \214le whose name is the e)108 108 Q(xpansion of) --.15 E/F2 10/Times-Italic@0 SF(wor)2.84 E(d)-.37 E F0 -(with this construct.)3.27 E(There are tw)108 124.8 Q 2.5(of)-.1 G +-.35 E/F1 10/Times-Bold@0 SF -.25(Ap)87 84 S(pending Redir).25 E +(ected Output)-.18 E F0 .642(Redirection of output in this f)108 96 R +.642(ashion causes the \214le whose name results from the e)-.1 F .641 +(xpansion of)-.15 F/F2 10/Times-Italic@0 SF(wor)3.481 E(d)-.37 E F0 .641 +(to be)3.911 F .473(opened for appending on \214le descriptor)108 108 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 +120 Q(xist it is created.)-.15 E +(The general format for appending output is:)108 136.8 Q([)144 153.6 Q +F2(n)A F0(])A F1(>>)A F2(wor)A(d)-.37 E F1(Redir)87 175.2 Q +(ecting Standard Output and Standard Err)-.18 E(or)-.18 E F0 .249 +(This construct allo)108 187.2 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 +199.2 Q(xpansion of)-.15 E F2(wor)2.5 E(d)-.37 E F0(.).77 E +(There are tw)108 216 Q 2.5(of)-.1 G (ormats for redirecting standard output and standard error:)-2.5 E F1 -(&>)144 141.6 Q F2(wor)A(d)-.37 E F0(and)108 153.6 Q F1(>&)144 165.6 Q -F2(wor)A(d)-.37 E F0(Of the tw)108 182.4 Q 2.5(of)-.1 G +(&>)144 232.8 Q F2(wor)A(d)-.37 E F0(and)108 244.8 Q F1(>&)144 256.8 Q +F2(wor)A(d)-.37 E F0(Of the tw)108 273.6 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 199.2 Q F2(wor)A(d)-.37 E F0(2)2.5 -E F1(>&)A F0(1)A F1(Her)87 216 Q 2.5(eD)-.18 G(ocuments)-2.5 E F0 .33(T\ -his type of redirection instructs the shell to read input from the curr\ -ent source until a line containing only)108 228 R F2(wor)108.34 240 Q(d) --.37 E F0 .684(\(with no trailing blanks\) is seen.)3.954 F .684 +-.25(va)-.25 G(lent to).25 E F1(>)144 290.4 Q F2(wor)A(d)-.37 E F0(2)2.5 +E F1(>&)A F0(1)A F1 -.25(Ap)87 312 S +(pending Standard Output and Standard Err).25 E(or)-.18 E F0 .248 +(This construct allo)108 324 R .249(ws both the standard output \(\214l\ +e 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 336 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 +352.8 Q F1(&>>)144 369.6 Q F2(wor)A(d)-.37 E F0 +(This is semantically equi)108 386.4 Q -.25(va)-.25 G(lent to).25 E F1 +(>>)144 403.2 Q F2(wor)A(d)-.37 E F0(2)2.5 E F1(>&)A F0(1)A F1(Her)87 +420 Q 2.5(eD)-.18 G(ocuments)-2.5 E F0 .33(This type of redirection ins\ +tructs the shell to read input from the current source until a line con\ +taining only)108 432 R F2(wor)108.34 444 Q(d)-.37 E F0 .683 +(\(with no trailing blanks\) is seen.)3.953 F .684 (All of the lines read up to that point are then used as the standard) -5.684 F(input for a command.)108 252 Q(The format of here-documents is:) -108 268.8 Q F1(<<)144 285.6 Q F0([)A F1A F0(])A F2(wor)A(d)-.37 E -(her)164 297.6 Q(e-document)-.37 E(delimiter)144 309.6 Q F0 .127 -(No parameter e)108 326.4 R .127 +5.684 F(input for a command.)108 456 Q(The format of here-documents is:) +108 472.8 Q F1(<<)144 489.6 Q F0([)A F1A F0(])A F2(wor)A(d)-.37 E +(her)164 501.6 Q(e-document)-.37 E(delimiter)144 513.6 Q F0 .128 +(No parameter e)108 530.4 R .127 (xpansion, command substitution, arithmetic e)-.15 F .127 -(xpansion, or pathname e)-.15 F .128(xpansion is performed)-.15 F(on)108 -338.4 Q F2(wor)3.275 E(d)-.37 E F0 5.775(.I).77 G 3.275(fa)-5.775 G -1.075 -.15(ny c)-3.275 H .774(haracters in).15 F F2(wor)3.614 E(d)-.37 E +(xpansion, or pathname e)-.15 F .127(xpansion is performed)-.15 F(on)108 +542.4 Q F2(wor)3.274 E(d)-.37 E F0 5.774(.I).77 G 3.274(fa)-5.774 G +1.074 -.15(ny c)-3.274 H .774(haracters in).15 F F2(wor)3.614 E(d)-.37 E F0 .774(are quoted, the)4.044 F F2(delimiter)3.624 E F0 .774 -(is the result of quote remo)4.004 F -.25(va)-.15 G 3.274(lo).25 G(n) --3.274 E F2(wor)3.274 E(d)-.37 E F0 3.274(,a).77 G(nd)-3.274 E .904 -(the lines in the here-document are not e)108 350.4 R 3.405(xpanded. If) --.15 F F2(wor)3.405 E(d)-.37 E F0 .905 -(is unquoted, all lines of the here-document are)3.405 F .695 -(subjected to parameter e)108 362.4 R .695 -(xpansion, command substitution, and arithmetic e)-.15 F 3.194 -(xpansion. In)-.15 F .694(the latter case, the)3.194 F -(character sequence)108 374.4 Q F1(\\)2.5 E F0(is ignored, and) +(is the result of quote remo)4.004 F -.25(va)-.15 G 3.275(lo).25 G(n) +-3.275 E F2(wor)3.275 E(d)-.37 E F0 3.275(,a).77 G(nd)-3.275 E .905 +(the lines in the here-document are not e)108 554.4 R 3.405(xpanded. If) +-.15 F F2(wor)3.405 E(d)-.37 E F0 .904 +(is unquoted, all lines of the here-document are)3.405 F .694 +(subjected to parameter e)108 566.4 R .695 +(xpansion, command substitution, and arithmetic e)-.15 F 3.195 +(xpansion. In)-.15 F .695(the latter case, the)3.195 F +(character sequence)108 578.4 Q F1(\\)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 391.2 R F1(<<\255)3.101 E F0 3.101 +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 .602 +(If the redirection operator is)108 595.2 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 403.2 Q F2(delimiter)2.5 E F0 5 + and the line)-3.101 F(containing)108 607.2 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 420 Q 2.5(eS)-.18 G(trings)-2.5 E F0 2.5 -(Av)108 432 S(ariant of here documents, the format is:)-2.75 E F1(<<<) -144 448.8 Q F2(wor)A(d)-.37 E F0(The)108 465.6 Q F2(wor)2.5 E(d)-.37 E +-.25 E(ashion.)-.1 E F1(Her)87 624 Q 2.5(eS)-.18 G(trings)-2.5 E F0 2.5 +(Av)108 636 S(ariant of here documents, the format is:)-2.75 E F1(<<<) +144 652.8 Q F2(wor)A(d)-.37 E F0(The)108 669.6 Q F2(wor)2.5 E(d)-.37 E F0(is e)2.5 E (xpanded and supplied to the command on its standard input.)-.15 E F1 -(Duplicating File Descriptors)87 482.4 Q F0(The redirection operator)108 -494.4 Q([)144 511.2 Q F2(n)A F0(])A F1(<&)A F2(wor)A(d)-.37 E F0 .127 -(is used to duplicate input \214le descriptors.)108 528 R(If)5.127 E F2 -(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 -540 Q F2(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 -.458(do not specify a \214le descriptor open)3.728 F .15 -(for input, a redirection error occurs.)108 552 R(If)5.15 E F2(wor)2.99 -E(d)-.37 E F0 -.25(eva)3.42 G .15(luates to).25 F F12.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 564 Q -(The operator)108 580.8 Q([)144 597.6 Q F2(n)A F0(])A F1(>&)A F2(wor)A -(d)-.37 E F0 .443 -(is used similarly to duplicate output \214le descriptors.)108 614.4 R -(If)5.443 E F2(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 626.4 R 1.358(If the digits in)6.358 F F2(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.596(occurs. As)108 638.4 R 2.596 -(as)2.596 G .096(pecial case, if)-2.596 F F2(n)2.596 E F0 .096 -(is omitted, and)2.596 F F2(wor)2.596 E(d)-.37 E F0 .096(does not e) -2.596 F .096(xpand to one or more digits, the standard out-)-.15 F -(put and standard error are redirected as described pre)108 650.4 Q -(viously)-.25 E(.)-.65 E F1(Mo)87 667.2 Q(ving File Descriptors)-.1 E F0 -(The redirection operator)108 679.2 Q([)144 696 Q F2(n)A F0(])A F1(<&)A -F2(digit)A F1A F0(mo)108 712.8 Q -.15(ve)-.15 G 3.036(st).15 G .536 -(he \214le descriptor)-3.036 F F2(digit)3.036 E F0 .536 -(to \214le descriptor)3.036 F F2(n)3.036 E F0 3.036(,o).24 G 3.036(rt) --3.036 G .535(he standard input \(\214le descriptor 0\) if)-3.036 F F2 -(n)3.035 E F0 .535(is not speci-)3.035 F(\214ed.)108 724.8 Q F2(digit)5 -E F0(is closed after being duplicated to)2.5 E F2(n)2.5 E F0(.)A -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(23)198.445 E 0 Cg EP +(Duplicating File Descriptors)87 686.4 Q F0(The redirection operator)108 +698.4 Q([)144 715.2 Q F2(n)A F0(])A F1(<&)A F2(wor)A(d)-.37 E F0 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(23)197.335 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(Similarly)108 84 Q 2.5(,t)-.65 G(he redirection operator)-2.5 E -([)144 100.8 Q/F1 10/Times-Italic@0 SF(n)A F0(])A/F2 10/Times-Bold@0 SF -(>&)A F1(digit)A F2A F0(mo)108 117.6 Q -.15(ve)-.15 G 2.785(st).15 G -.285(he \214le descriptor)-2.785 F F1(digit)2.785 E F0 .285 -(to \214le descriptor)2.785 F F1(n)2.785 E F0 2.785(,o).24 G 2.785(rt) --2.785 G .286(he standard output \(\214le descriptor 1\) if)-2.785 F F1 -(n)2.786 E F0 .286(is not speci-)2.786 F(\214ed.)108 129.6 Q F2 -(Opening File Descriptors f)87 146.4 Q(or Reading and Writing)-.25 E F0 -(The redirection operator)108 158.4 Q([)144 175.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 -192 R 1.349(xpansion of)-.15 F F1(wor)4.189 E(d)-.37 E F0 1.349 +-.35 E .126(is used to duplicate input \214le descriptors.)108 84 R(If) +5.127 E/F1 10/Times-Italic@0 SF(wor)2.967 E(d)-.37 E F0 -.15(ex)3.397 G +.127(pands to one or more digits, the \214le descriptor denoted).15 F +(by)108 96 Q F1(n)3.318 E F0 .458(is made to be a cop)3.198 F 2.958(yo) +-.1 G 2.958(ft)-2.958 G .457(hat \214le descriptor)-2.958 F 5.457(.I) +-.55 G 2.957(ft)-5.457 G .457(he digits in)-2.957 F F1(wor)3.297 E(d) +-.37 E F0 .457(do not specify a \214le descriptor open)3.727 F .149 +(for input, a redirection error occurs.)108 108 R(If)5.149 E F1(wor) +2.989 E(d)-.37 E F0 -.25(eva)3.419 G .149(luates to).25 F/F2 10 +/Times-Bold@0 SF2.649 E F0 2.65<2c8c>C .15(le descriptor)-2.65 F F1 +(n)3.01 E F0 .15(is closed.)2.89 F(If)5.15 E F1(n)3.01 E F0 .15 +(is not speci\214ed,)2.89 F +(the standard input \(\214le descriptor 0\) is used.)108 120 Q +(The operator)108 136.8 Q([)144 153.6 Q F1(n)A F0(])A F2(>&)A F1(wor)A +(d)-.37 E F0 .444 +(is used similarly to duplicate output \214le descriptors.)108 170.4 R +(If)5.444 E F1(n)3.304 E F0 .443 +(is not speci\214ed, the standard output \(\214le descrip-)3.183 F 1.357 +(tor 1\) is used.)108 182.4 R 1.357(If the digits in)6.357 F F1(wor) +4.197 E(d)-.37 E F0 1.358(do not specify a \214le descriptor open for o\ +utput, a redirection error)4.627 F 2.597(occurs. As)108 194.4 R 2.597 +(as)2.597 G .097(pecial case, if)-2.597 F F1(n)2.596 E F0 .096 +(is omitted, and)2.596 F F1(wor)2.596 E(d)-.37 E F0 .096(does not e) +2.596 F .096(xpand to one or more digits, the standard out-)-.15 F +(put and standard error are redirected as described pre)108 206.4 Q +(viously)-.25 E(.)-.65 E F2(Mo)87 223.2 Q(ving File Descriptors)-.1 E F0 +(The redirection operator)108 235.2 Q([)144 252 Q F1(n)A F0(])A F2(<&)A +F1(digit)A F2A F0(mo)108 268.8 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 F1 +(n)3.036 E F0 .536(is not speci-)3.036 F(\214ed.)108 280.8 Q F1(digit)5 +E F0(is closed after being duplicated to)2.5 E F1(n)2.5 E F0(.)A +(Similarly)108 297.6 Q 2.5(,t)-.65 G(he redirection operator)-2.5 E([) +144 314.4 Q F1(n)A F0(])A F2(>&)A F1(digit)A F2A F0(mo)108 331.2 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 F1(n)2.785 E F0 +.285(is not speci-)2.785 F(\214ed.)108 343.2 Q F2 +(Opening File Descriptors f)87 360 Q(or Reading and Writing)-.25 E F0 +(The redirection operator)108 372 Q([)144 388.8 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 +405.6 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 204 Q F1(n)2.5 E F0 2.5(,o).24 G 2.5(ro)-2.5 G 2.5<6e8c>-2.5 G +108 417.6 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 220.8 Q F1(Aliases)108 232.8 Q F0(allo)3.173 -E 3.173(was)-.25 G .674(tring to be substituted for a w)-3.173 F .674 -(ord when it is used as the \214rst w)-.1 F .674 +/Times-Bold@0 SF(ALIASES)72 434.4 Q F1(Aliases)108 446.4 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 244.8 R F2(alias)2.893 E F0 -(and)2.893 E F2(unalias)2.893 E F0 -.2(bu)2.893 G .393(iltin commands).2 -F(\(see)108 256.8 Q/F4 9/Times-Bold@0 SF 1.979(SHELL B)4.479 F(UIL)-.09 -E 1.979(TIN COMMANDS)-.828 F F0(belo)4.229 E 4.48(w\). The)-.25 F 1.98 -(\214rst w)4.48 F 1.98(ord of each simple command, if unquoted, is)-.1 F -(check)108 268.8 Q .473(ed to see if it has an alias.)-.1 F .473 -(If so, that w)5.473 F .472(ord is replaced by the te)-.1 F .472 -(xt of the alias.)-.15 F .472(The characters)5.472 F F2(/)2.972 E F0(,)A -F2($)2.972 E F0(,)A F2<92>2.972 E F0(,)A(and)108 280.8 Q F2(=)3.611 E F0 -1.111(and an)3.611 F 3.611(yo)-.15 G 3.611(ft)-3.611 G 1.111(he shell) --3.611 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.412 -.15(ve m)-.15 H 1.112 -(ay not appear in an alias).15 F 3.62(name. The)108 292.8 R 1.12 -(replacement te)3.62 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.119 -(The \214rst)6.119 F -.1(wo)108 304.8 S .513(rd of the replacement te).1 -F .513(xt is tested for aliases, b)-.15 F .513(ut a w)-.2 F .514 -(ord that is identical to an alias being e)-.1 F .514(xpanded is)-.15 F -.296(not e)108 316.8 R .296(xpanded a second time.)-.15 F .296 -(This means that one may alias)5.296 F F2(ls)2.796 E F0(to)2.796 E F2 -.296(ls \255F)2.796 F F0 2.796(,f)C .295(or instance, and)-2.796 F F2 -(bash)2.795 E F0 .295(does not try)2.795 F .542(to recursi)108 328.8 R --.15(ve)-.25 G .542(ly e).15 F .542(xpand the replacement te)-.15 F -3.042(xt. If)-.15 F .543(the last character of the alias v)3.042 F .543 -(alue is a)-.25 F F1(blank)3.043 E F0 3.043(,t).67 G .543(hen the ne) --3.043 F(xt)-.15 E(command w)108 340.8 Q(ord follo)-.1 E +ses that may be set and unset with the)108 458.4 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 470.4 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 482.4 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 494.4 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 506.4 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 518.4 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 530.4 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 542.4 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 F1(blank)3.042 E F0 3.042(,t).67 G .542(hen the ne) +-3.042 F(xt)-.15 E(command w)108 554.4 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 357.6 Q F2(alias)2.5 E F0 +E(Aliases are created and listed with the)108 571.2 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 374.4 R .284 +(There is no mechanism for using ar)108 588 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 386.4 Q F4(FUNCTIONS)2.5 E F0(belo)2.25 E(w\).)-.25 E 1.22 -(Aliases are not e)108 403.2 R 1.22 +108 600 Q F4(FUNCTIONS)2.5 E F0(belo)2.25 E(w\).)-.25 E 1.22 +(Aliases are not e)108 616.8 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 F2(expand_aliases)3.72 E F0 1.22 -(shell option is set)3.72 F(using)108 415.2 Q F2(shopt)2.5 E F0 +(shell option is set)3.72 F(using)108 628.8 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 .436 +E .435 (The rules concerning the de\214nition and use of aliases are some)108 -432 R .435(what confusing.)-.25 F F2(Bash)5.435 E F0(al)2.935 E -.1(wa) --.1 G .435(ys reads at least).1 F .337 -(one complete line of input before e)108 444 R -.15(xe)-.15 G .338 +645.6 R .436(what confusing.)-.25 F F2(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 657.6 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 .338(Aliases are e)5.338 F .338 -(xpanded when)-.15 F 3.404(ac)108 456 S .904 -(ommand is read, not when it is e)-3.404 F -.15(xe)-.15 G 3.404 +(he commands on that line.)-2.838 F .337(Aliases are e)5.337 F .337 +(xpanded when)-.15 F 3.403(ac)108 669.6 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.161 -(another command does not tak)108 468 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.162(The commands follo)6.162 F 1.162(wing the)-.25 F .277 -(alias de\214nition on that line are not af)108 480 R .277 +(an alias de\214nition appearing on the same line as)3.404 F 1.162 +(another command does not tak)108 681.6 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 693.6 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 .698(are e)108 -492 R -.15(xe)-.15 G 3.198(cuted. Aliases).15 F .698(are e)3.198 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 .495 -(because a function de\214nition is itself a compound command.)108 504 R -.494(As a consequence, aliases de\214ned in a func-)5.494 F .084 -(tion are not a)108 516 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 .085(ys put alias de\214nitions on a sepa-).1 F -(rate line, and do not use)108 528 Q F2(alias)2.5 E F0 -(in compound commands.)2.5 E -.15(Fo)108 544.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 F3 -(FUNCTIONS)72 561.6 Q F0 3.468(As)108 573.6 S .968 -(hell function, de\214ned as described abo)-3.468 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 -.967(stores a series of commands for)3.217 F 1.001(later e)108 585.6 R --.15(xe)-.15 G 3.501(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.501 F .316 -(mands associated with that function name is e)108 597.6 R -.15(xe)-.15 -G 2.816(cuted. Functions).15 F .316(are e)2.816 F -.15(xe)-.15 G .315 -(cuted in the conte).15 F .315(xt of the current)-.15 F .035 -(shell; no ne)108 609.6 R 2.535(wp)-.25 G .036 -(rocess is created to interpret them \(contrast this with the e)-2.535 F --.15(xe)-.15 G .036(cution of a shell script\).).15 F .036(When a)5.036 -F .64(function is e)108 621.6 R -.15(xe)-.15 G .64(cuted, the ar).15 F +2.777 E .277(vior is also an issue when functions)-.2 F .699(are e)108 +705.6 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 717.6 +R .495(As a consequence, aliases de\214ned in a func-)5.494 F 1.4 +(tion are not a)108 729.6 R -.25(va)-.2 G 1.4 +(ilable until after that function is e).25 F -.15(xe)-.15 G 3.9 +(cuted. T).15 F 3.9(ob)-.8 G 3.9(es)-3.9 G 1.4(afe, al)-3.9 F -.1(wa)-.1 +G 1.4(ys put alias de\214nitions on a).1 F(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(24)197.335 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(separate line, and do not use)108 84 Q/F1 10/Times-Bold@0 SF +(alias)2.5 E F0(in compound commands.)2.5 E -.15(Fo)108 100.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 117.6 Q F0 3.467(As)108 129.6 S .967 +(hell function, de\214ned as described abo)-3.467 F 1.267 -.15(ve u)-.15 +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 141.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 +153.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 165.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 177.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 .532(The special parameter)108 633.6 -R F2(#)3.032 E F0 .532(is updated to re\215ect the change.)3.032 F .533 -(Special parameter 0 is unchanged.)5.532 F .533(The \214rst ele-)5.533 F -1.018(ment of the)108 645.6 R F4(FUNCN)3.518 E(AME)-.18 E F0 -.25(va) -3.268 G 1.017 +-.18 F -.15(xe)-.15 G(cution.).15 E .533(The special parameter)108 189.6 +R F1(#)3.033 E F0 .532(is updated to re\215ect the change.)3.033 F .532 +(Special parameter 0 is unchanged.)5.532 F .532(The \214rst ele-)5.532 F +1.017(ment of the)108 201.6 R F3(FUNCN)3.517 E(AME)-.18 E F0 -.25(va) +3.267 G 1.017 (riable is set to the name of the function while the function is e).25 F --.15(xe)-.15 G 3.517(cuting. All).15 F 1.285 -(other aspects of the shell e)108 657.6 R -.15(xe)-.15 G 1.285 +-.15(xe)-.15 G 3.518(cuting. All).15 F 1.285 +(other aspects of the shell e)108 213.6 R -.15(xe)-.15 G 1.285 (cution en).15 F 1.285 (vironment are identical between a function and its caller with the)-.4 -F -.15(ex)108 669.6 S 2.03(ception that the).15 F F4(DEB)4.53 E(UG)-.09 -E F0(and)4.28 E F2(RETURN)4.53 E F0 2.029 -(traps \(see the description of the)4.53 F F2(trap)4.529 E F0 -.2(bu) -4.529 G 2.029(iltin under).2 F F4(SHELL)4.529 E -.09(BU)108 681.6 S(IL) -.09 E .478(TIN COMMANDS)-.828 F F0(belo)2.728 E .479 +F -.15(ex)108 225.6 S 2.029(ception that the).15 F F3(DEB)4.529 E(UG) +-.09 E F0(and)4.279 E F1(RETURN)4.529 E F0 2.029 +(traps \(see the description of the)4.529 F F1(trap)4.53 E F0 -.2(bu) +4.53 G 2.03(iltin under).2 F F3(SHELL)4.53 E -.09(BU)108 237.6 S(IL).09 +E .479(TIN COMMANDS)-.828 F F0(belo)2.729 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 F2(trace)2.979 E F0(attrib)2.979 E -.479(ute \(see)-.2 F .421(the description of the)108 693.6 R F4(declar) +-.25 G 2.978(nt).15 G(he)-2.978 E F1(trace)2.978 E F0(attrib)2.978 E +.478(ute \(see)-.2 F .42(the description of the)108 249.6 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 F2 .42(\255o functrace)2.92 F F0 .42 -(shell option has been enabled with the)2.92 F F2(set)2.92 E F0 -.2(bu) -108 705.6 S(iltin \(in which case all functions inherit the).2 E F2(DEB) -2.5 E(UG)-.1 E F0(and)2.5 E F2(RETURN)2.5 E F0(traps\).)2.5 E -1.11(Va) -108 722.4 S .655(riables local to the function may be declared with the) -1.11 F F2(local)3.155 E F0 -.2(bu)3.156 G .656(iltin command.).2 F -(Ordinarily)5.656 E 3.156(,v)-.65 G .656(ariables and)-3.406 F -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(24)198.445 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(their v)108 84 Q -(alues are shared between the function and its caller)-.25 E(.)-.55 E -.044(If the b)108 100.8 R .043(uiltin command)-.2 F/F1 10/Times-Bold@0 -SF -.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 112.8 R 1.011 +-.25 F F1 .42(\255o functrace)2.92 F F0 .42 +(shell option has been enabled with the)2.92 F F1(set)2.921 E F0 -.2(bu) +108 261.6 S(iltin \(in which case all functions inherit the).2 E F1(DEB) +2.5 E(UG)-.1 E F0(and)2.5 E F1(RETURN)2.5 E F0(traps\).)2.5 E -1.11(Va) +108 278.4 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 290.4 Q(alues are shared between the function and its caller)-.25 E +(.)-.55 E .043(If the b)108 307.2 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 +.044(cution resumes with).15 F 1.012(the ne)108 319.2 R 1.012 (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 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 124.8 R --.15(xe)-.15 G .214(cution resumes.).15 F .213 -(When a function completes, the v)5.214 F .213 +1.011(ommand associated with the)-3.511 F F1(RETURN)3.511 E F0 1.011 +(trap is e)3.511 F -.15(xe)-.15 G(cuted).15 E .213(before e)108 331.2 R +-.15(xe)-.15 G .213(cution resumes.).15 F .213 +(When a function completes, the v)5.213 F .214 (alues of the positional parameters and the spe-)-.25 F(cial parameter) -108 136.8 Q F1(#)2.5 E F0(are restored to the v)2.5 E(alues the)-.25 E +108 343.2 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 153.6 R F1 +-2.65 G(cution.).15 E 1.359 +(Function names and de\214nitions may be listed with the)108 360 R F1 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 165.6 R F13.39 E F0 .89(option to)3.39 F F1 +F0(or)3.858 E F1(typeset)3.858 E F0 -.2(bu)3.858 G 1.358(iltin com-).2 F +3.39(mands. The)108 372 R F13.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 -.326(\214le and line number)108 177.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 189.6 R -1.598 -.15(ve t)-.2 H 1.298(hem de\214ned with the).15 F F13.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 201.6 R F12.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 213.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 225.6 Q +.327(\214le and line number)108 384 R 2.827(,i)-.4 G 2.827(ft)-2.827 G +(he)-2.827 E F1(extdeb)2.827 E(ug)-.2 E F0 .326 +(shell option is enabled\).)2.827 F .326(Functions may be e)5.326 F .326 +(xported so that subshells)-.15 F 1.297(automatically ha)108 396 R 1.597 +-.15(ve t)-.2 H 1.297(hem de\214ned with the).15 F F13.797 E F0 +1.297(option to the)3.797 F F1(export)3.798 E F0 -.2(bu)3.798 G 3.798 +(iltin. A).2 F 1.298(function de\214nition may be)3.798 F .161 +(deleted using the)108 408 R F12.661 E F0 .161(option to the)2.661 +F F1(unset)2.661 E F0 -.2(bu)2.661 G 2.661(iltin. Note).2 F .16 +(that shell functions and v)2.661 F .16(ariables with the same name)-.25 +F 1.325(may result in multiple identically-named entries in the en)108 +420 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 432 Q (en in cases where this may cause a problem.)-.1 E -(Functions may be recursi)108 242.4 Q -.15(ve)-.25 G 5(.N).15 G 2.5(ol) +(Functions may be recursi)108 448.8 Q -.15(ve)-.25 G 5(.N).15 G 2.5(ol) -5 G(imit is imposed on the number of recursi)-2.5 E .3 -.15(ve c)-.25 H -(alls.).15 E/F2 10.95/Times-Bold@0 SF(ARITHMETIC EV)72 259.2 Q(ALU) --1.478 E -1.04(AT)-.657 G(ION)1.04 E F0 2.297(The shell allo)108 271.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 283.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 295.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 -307.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 319.2 Q -.15 +(alls.).15 E F2(ARITHMETIC EV)72 465.6 Q(ALU)-1.478 E -1.04(AT)-.657 G +(ION)1.04 E F0 2.298(The shell allo)108 477.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.797 E F0 +(and)4.797 E F1(declar)108 489.6 Q(e)-.18 E F0 -.2(bu)2.705 G .205 +(iltin commands and).2 F F1 .205(Arithmetic Expansion)2.705 F F0 2.705 +(\). Ev)B .205(aluation is done in \214x)-.25 F .206(ed-width inte)-.15 +F .206(gers with no)-.15 F .429(check for o)108 501.6 R -.15(ve)-.15 G +(r\215o).15 E 1.729 -.65(w, t)-.25 H .429(hough di).65 F .428 +(vision by 0 is trapped and \215agged as an error)-.25 F 5.428(.T)-.55 G +.428(he operators and their prece-)-5.428 F 1.919(dence, associati)108 +513.6 R(vity)-.25 E 4.419(,a)-.65 G 1.919(nd v)-4.419 F 1.919 +(alues are the same as in the C language.)-.25 F 1.92(The follo)6.92 F +1.92(wing list of operators is)-.25 F(grouped into le)108 525.6 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 336 Q F1(++)A F3(id)2.5 E F1A F0 -.25 -(va)144 348 S(riable post-increment and post-decrement).25 E F1(++)108 -360 Q F3(id)A F12.5 E F3(id)A F0 -.25(va)144 372 S -(riable pre-increment and pre-decrement).25 E F1 2.5108 384 S F0 -(unary minus and plus)19.6 E F1 2.5(!~)108 396 S F0 -(logical and bitwise ne)24.34 E -.05(ga)-.15 G(tion).05 E F1(**)108 408 -Q F0 -.15(ex)26 G(ponentiation).15 E F1 2.5(*/%)108 420 S F0 -(multiplication, di)10.72 E(vision, remainder)-.25 E F1 2.5<2bad>108 432 -S F0(addition, subtraction)19.6 E F1(<< >>)108 444 Q F0 -(left and right bitwise shifts)10.7 E F1(<= >= < >)108 456 Q F0 -(comparison)144 468 Q F1(== !=)108 480 Q F0(equality and inequality) -13.07 E F1(&)108 492 Q F0(bitwise AND)27.67 E F1(^)108 504 Q F0 -(bitwise e)32.67 E(xclusi)-.15 E .3 -.15(ve O)-.25 H(R).15 E F1(|)108 -516 Q F0(bitwise OR)33.8 E F1(&&)108 528 Q F0(logical AND)19.34 E F1(||) -108 540 Q F0(logical OR)31.6 E F3 -.2(ex)108 552 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 564 -Q F1 2.5(=*)108 576 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 588 -Q F3 -.2(ex)108 600 S(pr1).2 E F1(,)2.5 E F3 -.2(ex)2.5 G(pr2).2 E F0 -(comma)144 612 Q .68(Shell v)108 628.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 640.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 652.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 664.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 676.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 .344 -(assigned a v)108 688.8 R 2.844(alue. A)-.25 F .343(null v)2.843 F .343 -(alue e)-.25 F -.25(va)-.25 G .343(luates to 0.).25 F 2.843(As)5.343 G -.343(hell v)-2.843 F .343(ariable need not ha)-.25 F .643 -.15(ve i)-.2 -H .343(ts inte).15 F .343(ger attrib)-.15 F .343(ute turned on)-.2 F -(to be used in an e)108 700.8 Q(xpression.)-.15 E 1.406 -(Constants with a leading 0 are interpreted as octal numbers.)108 717.6 -R 3.906(Al)6.406 G 1.407(eading 0x or 0X denotes he)-3.906 F(xadecimal.) --.15 E 3.461(Otherwise, numbers tak)108 729.6 R 5.961(et)-.1 G 3.461 -(he form [)-5.961 F F3(base#)A F0 3.461(]n, where)B F3(base)5.961 E F0 -3.46(is a decimal number between 2 and 64)5.961 F(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(25)198.445 E 0 Cg EP +-.25 G(ls are listed in order of decreasing precedence.).15 E/F5 10 +/Times-Italic@0 SF(id)108 542.4 Q F1(++)A F5(id)2.5 E F1A F0 -.25 +(va)144 554.4 S(riable post-increment and post-decrement).25 E F1(++)108 +566.4 Q F5(id)A F12.5 E F5(id)A F0 -.25(va)144 578.4 S +(riable pre-increment and pre-decrement).25 E F1 2.5108 590.4 S F0 +(unary minus and plus)19.6 E F1 2.5(!~)108 602.4 S F0 +(logical and bitwise ne)24.34 E -.05(ga)-.15 G(tion).05 E F1(**)108 +614.4 Q F0 -.15(ex)26 G(ponentiation).15 E F1 2.5(*/%)108 626.4 S F0 +(multiplication, di)10.72 E(vision, remainder)-.25 E F1 2.5<2bad>108 +638.4 S F0(addition, subtraction)19.6 E F1(<< >>)108 650.4 Q F0 +(left and right bitwise shifts)10.7 E F1(<= >= < >)108 662.4 Q F0 +(comparison)144 674.4 Q F1(== !=)108 686.4 Q F0(equality and inequality) +13.07 E F1(&)108 698.4 Q F0(bitwise AND)27.67 E F1(^)108 710.4 Q F0 +(bitwise e)32.67 E(xclusi)-.15 E .3 -.15(ve O)-.25 H(R).15 E +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(25)197.335 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 .533(representing the arithmetic base, and)108 84 R/F1 10 -/Times-Italic@0 SF(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 .916(The digits greater than 9 are represented by the lo)108 96 -R .915(wercase letters, the uppercase letters, @, and _, in that)-.25 F -(order)108 108 Q 5.67(.I)-.55 G(f)-5.67 E F1(base)3.17 E F0 .67 -(is less than or equal to 36, lo)3.17 F .671 -(wercase and uppercase letters may be used interchangeably to)-.25 F -(represent numbers between 10 and 35.)108 120 Q .235(Operators are e)108 -136.8 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 -.15(ove)108 148.8 S -(rride the precedence rules abo).15 E -.15(ve)-.15 G(.).15 E/F2 10.95 -/Times-Bold@0 SF(CONDITION)72 165.6 Q(AL EXPRESSIONS)-.219 E F0 .255 -(Conditional e)108 177.6 R .255(xpressions are used by the)-.15 F/F3 10 -/Times-Bold@0 SF([[)2.755 E F0 .255(compound command and the)2.755 F F3 -(test)2.755 E F0(and)2.755 E F3([)2.756 E F0 -.2(bu)2.756 G .256 -(iltin commands to test).2 F .77(\214le attrib)108 189.6 R .77 +-.35 E/F1 10/Times-Bold@0 SF(|)108 84 Q F0(bitwise OR)33.8 E F1(&&)108 +96 Q F0(logical AND)19.34 E F1(||)108 108 Q F0(logical OR)31.6 E/F2 10 +/Times-Italic@0 SF -.2(ex)108 120 S(pr).2 E F1(?)A F2 -.2(ex)C(pr).2 E +F1(:)A F2 -.2(ex)C(pr).2 E F0(conditional operator)144 132 Q F1 2.5(=*) +108 144 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 156 Q F2 -.2(ex)108 +168 S(pr1).2 E F1(,)2.5 E F2 -.2(ex)2.5 G(pr2).2 E F0(comma)144 180 Q +.68(Shell v)108 196.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.507(ated. W)108 208.8 R 1.007(ithin an e)-.4 +F 1.007(xpression, shell v)-.15 F 1.007 +(ariables may also be referenced by name without using the parameter) +-.25 F -.15(ex)108 220.8 S 1.041(pansion syntax.).15 F 3.541(As)6.041 G +1.041(hell v)-3.541 F 1.041(ariable that is null or unset e)-.25 F -.25 +(va)-.25 G 1.04(luates to 0 when referenced by name without).25 F 1.466 +(using the parameter e)108 232.8 R 1.466(xpansion syntax.)-.15 F 1.467 +(The v)6.466 F 1.467(alue of a v)-.25 F 1.467(ariable is e)-.25 F -.25 +(va)-.25 G 1.467(luated as an arithmetic e).25 F(xpression)-.15 E 1.39 +(when it is referenced, or when a v)108 244.8 R 1.389 +(ariable which has been gi)-.25 F -.15(ve)-.25 G 3.889(nt).15 G(he) +-3.889 E F2(inte)3.889 E -.1(ge)-.4 G(r).1 E F0(attrib)3.889 E 1.389 +(ute using)-.2 F F1(declar)3.889 E 3.889(e-)-.18 G(i)-3.889 E F0(is) +3.889 E .343(assigned a v)108 256.8 R 2.843(alue. A)-.25 F .343(null v) +2.843 F .343(alue e)-.25 F -.25(va)-.25 G .343(luates to 0.).25 F 2.843 +(As)5.343 G .343(hell v)-2.843 F .343(ariable need not ha)-.25 F .643 +-.15(ve i)-.2 H .343(ts inte).15 F .344(ger attrib)-.15 F .344 +(ute turned on)-.2 F(to be used in an e)108 268.8 Q(xpression.)-.15 E +1.406(Constants with a leading 0 are interpreted as octal numbers.)108 +285.6 R 3.906(Al)6.406 G 1.406(eading 0x or 0X denotes he)-3.906 F +(xadecimal.)-.15 E .589(Otherwise, numbers tak)108 297.6 R 3.089(et)-.1 +G .589(he form [)-3.089 F F2(base#)A F0 .589(]n, where)B F2(base)3.089 E +F0 .59(is a decimal number between 2 and 64 represent-)3.089 F .093 +(ing the arithmetic base, and)108 309.6 R F2(n)2.593 E F0 .093 +(is a number in that base.)2.593 F(If)5.093 E F2(base#)2.593 E F0 .092 +(is omitted, then base 10 is used.)2.593 F .092(The digits)5.092 F .064 +(greater than 9 are represented by the lo)108 321.6 R .064 +(wercase letters, the uppercase letters, @, and _, in that order)-.25 F +5.065(.I)-.55 G(f)-5.065 E F2(base)2.565 E F0 .433 +(is less than or equal to 36, lo)108 333.6 R .432(wercase and uppercase\ + letters may be used interchangeably to represent num-)-.25 F +(bers between 10 and 35.)108 345.6 Q .234(Operators are e)108 362.4 R +-.25(va)-.25 G .234(luated in order of precedence.).25 F(Sub-e)5.234 E +.234(xpressions in parentheses are e)-.15 F -.25(va)-.25 G .235 +(luated \214rst and may).25 F -.15(ove)108 374.4 S +(rride the precedence rules abo).15 E -.15(ve)-.15 G(.).15 E/F3 10.95 +/Times-Bold@0 SF(CONDITION)72 391.2 Q(AL EXPRESSIONS)-.219 E F0 .256 +(Conditional e)108 403.2 R .256(xpressions are used by the)-.15 F F1([[) +2.755 E F0 .255(compound command and the)2.755 F F1(test)2.755 E F0(and) +2.755 E F1([)2.755 E F0 -.2(bu)2.755 G .255(iltin commands to test).2 F +.77(\214le attrib)108 415.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 201.6 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 -213.6 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 225.6 Q(v/stderr)-.15 E F0 2.5<2c8c>C +(Expressions are formed from the follo)5.77 F(wing)-.25 E 1.041 +(unary or binary primaries.)108 427.2 R 1.041(If an)6.041 F(y)-.15 E F2 +(\214le)3.541 E F0(ar)3.541 E 1.04 +(gument to one of the primaries is of the form)-.18 F F2(/de)3.54 E +(v/fd/n)-.15 E F0 3.54(,t)C 1.04(hen \214le)-3.54 F(descriptor)108 439.2 +Q F2(n)3.788 E F0 1.289(is check)3.788 F 3.789(ed. If)-.1 F(the)3.789 E +F2(\214le)3.789 E F0(ar)3.789 E 1.289 +(gument to one of the primaries is one of)-.18 F F2(/de)3.789 E(v/stdin) +-.15 E F0(,)A F2(/de)3.789 E(v/stdout)-.15 E F0 3.789(,o)C(r)-3.789 E F2 +(/de)108 451.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 +(,i)-.65 G 2.5(sc)-2.5 G(heck)-2.5 E(ed.)-.1 E .722 (Unless otherwise speci\214ed, primaries that operate on \214les follo) -108 242.4 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 254.4 -Q F3108 278.4 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 F3108 290.4 Q F1 -(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex) -2.5 G(ists and is a block special \214le.).15 E F3108 302.4 Q F1 -(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex) -2.5 G(ists and is a character special \214le.).15 E F3108 314.4 Q -F1(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F1(\214le)2.5 E F0 -.15 -(ex)2.5 G(ists and is a directory).15 E(.)-.65 E F3108 326.4 Q F1 -(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex) -2.5 G(ists.).15 E F3108 338.4 Q F1(\214le)2.5 E F0 -.35(Tr)12.25 G -(ue if).35 E F1(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is a re).15 E -(gular \214le.)-.15 E F3108 350.4 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 and is set-group-id.).15 E F3108 362.4 Q F1(\214le)2.5 E F0 --.35(Tr)10.02 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex)2.5 G -(ists and is a symbolic link.).15 E F3108 374.4 Q F1(\214le)2.5 E -F0 -.35(Tr)10.02 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex)2.5 G +108 468 R 3.221(ws)-.25 G .721(ymbolic links and operate on the tar) +-3.221 F(get)-.18 E(of the link, rather than the link itself.)108 480 Q +F1108 504 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.).15 E F1108 516 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 block special \214le.).15 E F1108 528 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 F1108 540 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 F1108 552 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 F1108 564 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 F1108 576 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 F1108 588 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 F1108 600 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 F3108 386.4 Q F1(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 -E F1(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is a named pipe \(FIFO\).) -.15 E F3108 398.4 Q F1(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E -F1(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is readable.).15 E F3108 -410.4 Q F1(\214le)2.5 E F0 -.35(Tr)11.69 G(ue if).35 E F1(\214le)2.5 E -F0 -.15(ex)2.5 G(ists and has a size greater than zero.).15 E F3 -108 422.4 Q F1(fd)2.5 E F0 -.35(Tr)16.69 G(ue if \214le descriptor).35 E -F1(fd)4.47 E F0(is open and refers to a terminal.)3.27 E F3108 -434.4 Q F1(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F1(\214le)2.5 E -F0 -.15(ex)2.5 G(ists and its set-user).15 E(-id bit is set.)-.2 E F3 -108 446.4 Q F1(\214le)2.5 E F0 -.35(Tr)8.36 G(ue if).35 E F1 -(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is writable.).15 E F3108 -458.4 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 and is e).15 E -.15(xe)-.15 G(cutable.).15 E F3 -108 470.4 Q F1(\214le)2.5 E F0 -.35(Tr)7.8 G(ue if).35 E F1 -(\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 F3108 482.4 Q F1 -(\214le)2.5 E F0 -.35(Tr)7.8 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex) +-2.5 E F1108 612 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 F1108 624 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 F1108 +636 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 F1108 +648 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 F1108 660 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 F1108 +672 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 F1108 684 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 F1108 696 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 F3108 494.4 Q F1(\214le)2.5 E F0 -.35 -(Tr)8.91 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex)2.5 G -(ists and is a symbolic link.).15 E F3108 506.4 Q F1(\214le)2.5 E -F0 -.35(Tr)10.02 G(ue if).35 E F1(\214le)2.5 E F0 -.15(ex)2.5 G -(ists and is a sock).15 E(et.)-.1 E F3108 518.4 Q F1(\214le)2.5 E -F0 -.35(Tr)8.36 G(ue if).35 E F1(\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 -(\214le1)108 530.4 Q F02.5 E F3(nt)A F1(\214le2)2.5 E F0 -.35(Tr)144 -542.4 S .039(ue if).35 F F1(\214le1)2.539 E F0 .039(is ne)2.539 F .039 -(wer \(according to modi\214cation date\) than)-.25 F F1(\214le2)2.539 E -F0 2.539(,o)C 2.539(ri)-2.539 G(f)-2.539 E F1(\214le1)2.539 E F0 -.15 -(ex)2.539 G .039(ists and).15 F F1(\214le2)2.539 E F0 .038(does not.) -2.538 F F1(\214le1)108 554.4 Q F02.5 E F3(ot)A F1(\214le2)2.5 E F0 --.35(Tr)144 566.4 S(ue if).35 E F1(\214le1)2.5 E F0(is older than)2.5 E -F1(\214le2)2.5 E F0 2.5(,o)C 2.5(ri)-2.5 G(f)-2.5 E F1(\214le2)2.5 E F0 --.15(ex)2.5 G(ists and).15 E F1(\214le1)2.5 E F0(does not.)2.5 E F1 -(\214le1)108 578.4 Q F3(\255ef)2.5 E F1(\214le2)2.5 E F0 -.35(Tr)144 -590.4 S(ue if).35 E F1(\214le1)2.5 E F0(and)2.5 E F1(\214le2)2.5 E F0 -(refer to the same de)2.5 E(vice and inode numbers.)-.25 E F3108 -602.4 Q F1(optname)2.5 E F0 -.35(Tr)144 614.4 S 1.143 -(ue if shell option).35 F F1(optname)3.873 E F0 1.143(is enabled.)3.823 -F 1.144(See the list of options under the description of the)6.143 F F3 -3.644 E F0(option to the)144 626.4 Q F3(set)2.5 E F0 -.2(bu)2.5 G -(iltin belo).2 E -.65(w.)-.25 G F3108 638.4 Q F1(string)2.5 E F0 --.35(Tr)144 650.4 S(ue if the length of).35 E F1(string)2.5 E F0 -(is zero.)2.5 E F1(string)108 662.4 Q F3108 674.4 Q F1(string)2.5 -E F0 -.35(Tr)144 686.4 S(ue if the length of).35 E F1(string)2.84 E F0 -(is non-zero.)2.72 E F1(string1)108 703.2 Q F3(==)2.5 E F1(string2)2.5 E -F0 -.35(Tr)144 715.2 S(ue if the strings are equal.).35 E F3(=)5 E F0 -(may be used in place of)2.5 E F3(==)2.5 E F0 -(for strict POSIX compliance.)2.5 E(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(26)198.445 E 0 Cg EP +(ve u)-.25 H(ser id.).15 E F1108 708 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 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(26)197.335 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/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 in the current locale.)-.15 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 in the current locale.)-.15 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.635 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(ar) -2.884 E(g1)-.37 E F0 .845(is equal to, not equal to, less than, less th\ -an 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 -.614(When a simple command is e)108 235.2 R -.15(xe)-.15 G .614 -(cuted, the shell performs the follo).15 F .613(wing e)-.25 F .613 +-.35 E/F1 10/Times-Bold@0 SF108 84 Q/F2 10/Times-Italic@0 SF +(\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 F1108 96 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 F1108 108 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 F2 +(\214le1)108 120 Q F02.5 E F1(nt)A F2(\214le2)2.5 E F0 -.35(Tr)144 +132 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 144 Q F02.5 E F1(ot)A F2(\214le2)2.5 E F0 +-.35(Tr)144 156 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 F2 +(\214le1)108 168 Q F1(\255ef)2.5 E F2(\214le2)2.5 E F0 -.35(Tr)144 180 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 F1108 +192 Q F2(optname)2.5 E F0 -.35(Tr)144 204 S 1.144(ue if shell option).35 +F F2(optname)3.874 E F0 1.144(is enabled.)3.824 F 1.143 +(See the list of options under the description of the)6.144 F F1 +3.643 E F0(option to the)144 216 Q F1(set)2.5 E F0 -.2(bu)2.5 G +(iltin belo).2 E -.65(w.)-.25 G F1108 228 Q F2(string)2.5 E F0 +-.35(Tr)144 240 S(ue if the length of).35 E F2(string)2.5 E F0(is zero.) +2.5 E F2(string)108 252 Q F1108 264 Q F2(string)2.5 E F0 -.35(Tr) +144 276 S(ue if the length of).35 E F2(string)2.84 E F0(is non-zero.) +2.72 E F2(string1)108 292.8 Q F1(==)2.5 E F2(string2)2.5 E F0 -.35(Tr) +144 304.8 S(ue if the strings are equal.).35 E F1(=)5 E F0 +(may be used in place of)2.5 E F1(==)2.5 E F0 +(for strict POSIX compliance.)2.5 E F2(string1)108 321.6 Q F1(!=)2.5 E +F2(string2)2.5 E F0 -.35(Tr)144 333.6 S +(ue if the strings are not equal.).35 E F2(string1)108 350.4 Q F1(<)2.5 +E F2(string2)2.5 E F0 -.35(Tr)144 362.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 in the current locale.)-.15 E F2(string1)108 379.2 Q F1 +(>)2.5 E F2(string2)2.5 E F0 -.35(Tr)144 391.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 in the current locale.)-.15 E F2(ar)108.33 408 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 420 +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, less than or e\ +qual to, greater than, or greater than or equal to)144 432 R F2(ar)144 +444 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 460.8 Q(ANSION)-.81 E F0 .613 +(When a simple command is e)108 472.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.348 G 1.848 -(rds that the parser has mark).1 F 1.848(ed as v)-.1 F 1.849 +108 484.8 Q 26(1. The)108 501.6 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.664 G 1.164 +(name\) and redirections are sa)144 513.6 Q -.15(ve)-.2 G 2.5(df).15 G +(or later processing.)-2.5 E 26(2. The)108 530.4 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.663(xpanded. If)-.15 -F(an)3.663 E 3.663(yw)-.15 G 1.163(ords remain)-3.763 F .775(after e)144 -304.8 R .775(xpansion, the \214rst w)-.15 F .775(ord is tak)-.1 F .775 +(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 +542.4 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 the ar)144 554.4 Q(guments.)-.18 E 26(3. Redirections)108 571.2 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.217 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 .339 -(command substitution, arithmetic e)144 362.4 R .339 +(REDIRECTION)2.5 E/F5 9/Times-Roman@0 SF(.)A F0 26(4. The)108 588 R(te) +3.216 E .717(xt after the)-.15 F F1(=)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 600 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 612 Q .332 +(If no command name results, the v)108 628.8 R .332 (ariable assignments af)-.25 F .332(fect the current shell en)-.25 F -2.832(vironment. Otherwise,)-.4 F(the)2.832 E -.25(va)108 403.2 S .757 +2.833(vironment. Otherwise,)-.4 F(the)2.833 E -.25(va)108 640.8 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.177(ronment. If)108 415.2 -R(an)3.177 E 3.177(yo)-.15 G 3.177(ft)-3.177 G .677 -(he assignments attempts to assign a v)-3.177 F .677 -(alue to a readonly v)-.25 F .676(ariable, an error occurs, and)-.25 F -(the command e)108 427.2 Q(xits with a non-zero status.)-.15 E .149 -(If no command name results, redirections are performed, b)108 444 R -.149(ut do not af)-.2 F .15(fect the current shell en)-.25 F 2.65 -(vironment. A)-.4 F(redirection error causes the command to e)108 456 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) +(fect the current shell en)-.25 F(vi-)-.4 E 3.176(ronment. If)108 652.8 +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 664.8 Q(xits with a non-zero status.)-.15 E .15 +(If no command name results, redirections are performed, b)108 681.6 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 693.6 +Q(xit with a non-zero status.)-.15 E 1.064 +(If there is a command name left after e)108 710.4 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 .068(command e)108 -484.8 R 2.568(xits. If)-.15 F .069(one of the e)2.568 F .069 -(xpansions contained a command substitution, the e)-.15 F .069 -(xit status of the command)-.15 F .467(is the e)108 496.8 R .466 -(xit status of the last command substitution performed.)-.15 F .466 -(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 -.546(After a command has been split into w)108 537.6 R .547 +4.864 -.65(w. O)-.25 H 1.064(therwise, the).65 F .069(command e)108 +722.4 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(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(27)197.335 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 .466(is the e)108 84 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 96 Q +(xits with a status of zero.)-.15 E/F1 10.95/Times-Bold@0 SF +(COMMAND EXECUTION)72 112.8 Q F0 .547 +(After a command has been split into w)108 124.8 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 136.8 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 153.6 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 165.6 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/F2 9 +/Times-Bold@0 SF(FUNCTIONS)2.746 E/F3 9/Times-Roman@0 SF(.)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 177.6 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 .31 -(If the name is neither a shell function nor a b)108 607.2 R .309 -(uiltin, and contains no slashes,)-.2 F F2(bash)2.809 E F0 .309 -(searches each element of)2.809 F(the)108 619.2 Q F3 -.666(PA)3.162 G -(TH)-.189 E F0 .662(for a directory containing an e)2.912 F -.15(xe)-.15 -G .662(cutable \214le by that name.).15 F F2(Bash)5.662 E F0 .663 -(uses a hash table to remember)3.162 F 1.915(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.914(TIN COMMANDS) --.828 F F0(belo)4.164 E 4.414(w\). A)-.25 F(full)4.414 E .719 -(search of the directories in)108 643.2 R F3 -.666(PA)3.219 G(TH)-.189 E -F0 .72(is performed only if the command is not found in the hash table.) -2.969 F .72(If the)5.72 F(search is unsuccessful, the shell prints an e\ -rror message and returns an e)108 655.2 Q(xit status of 127.)-.15 E -1.089(If the search is successful, or if the command name contains one \ -or more slashes, the shell e)108 672 R -.15(xe)-.15 G 1.089(cutes the) -.15 F .197(named program in a separate e)108 684 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 696 Q +(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 194.4 R .31 +(uiltin, and contains no slashes,)-.2 F/F4 10/Times-Bold@0 SF(bash)2.81 +E F0 .31(searches each element of)2.81 F(the)108 206.4 Q F2 -.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 F4(Bash)5.662 E F0 +.662(uses a hash table to remember)3.162 F 1.914 +(the full pathnames of e)108 218.4 R -.15(xe)-.15 G 1.915 +(cutable \214les \(see).15 F F4(hash)4.415 E F0(under)4.415 E F2 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 +230.4 R F2 -.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 242.4 R F4(command_not_f)3.456 E +(ound_han-)-.25 E(dle)108 254.4 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 266.4 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 278.4 +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 295.2 R +-.15(xe)-.15 G 1.089(cutes the).15 F .197(named program in a separate e) +108 307.2 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 319.2 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 712.8 R --.15(xe)-.15 G 1.809(cution f).15 F 1.809 +(ve)-.25 G(n, if an).15 E -.65(y.)-.15 G 1.809(If this e)108 336 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 724.8 R F1 .678 -(shell script)3.177 F F0 3.178(,a\214)C .678 +4.309(ti)-4.309 G(s)-4.309 E .677(assumed to be a)108 348 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(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 -E(27)198.445 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 .33(subshell reinitializes itself, so that the ef)108 84 R .33 +(cute it.).15 F(This)5.678 E .33 +(subshell reinitializes itself, so that the ef)108 360 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 96 R 1.219 +(andle the script, with)-2.829 F 1.219(the e)108 372 R 1.219 (xception that the locations of commands remembered by the parent \(see) --.15 F/F1 10/Times-Bold@0 SF(hash)3.719 E F0(belo)3.719 E 3.719(wu)-.25 -G(nder)-3.719 E/F2 9/Times-Bold@0 SF(SHELL)3.719 E -.09(BU)108 108 S(IL) -.09 E(TIN COMMANDS)-.828 E/F3 9/Times-Roman@0 SF(\))A F0 -(are retained by the child.)2.25 E .348(If the program is a \214le be) -108 124.8 R .348(ginning with)-.15 F F1(#!)2.848 E F0 2.848(,t)C .347(h\ +-.15 F F4(hash)3.719 E F0(belo)3.719 E 3.719(wu)-.25 G(nder)-3.719 E F2 +(SHELL)3.719 E -.09(BU)108 384 S(IL).09 E(TIN COMMANDS)-.828 E F3(\))A +F0(are retained by the child.)2.25 E .348(If the program is a \214le be) +108 400.8 R .348(ginning with)-.15 F F4(#!)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 136.8 R .678(shell e)3.178 F -.15(xe)-.15 G +-2.848 F 3.178(gram. The)108 412.8 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 148.8 R 3.693(es. The)-.15 F(ar)3.693 E 1.193 +108 424.8 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 160.8 R +(interpreter name on the \214rst line of the program, follo)108 436.8 R 1.131(wed by the name of the program, follo)-.25 F 1.131(wed by the)-.25 -F(command ar)108 172.8 Q(guments, if an)-.18 E -.65(y.)-.15 G/F4 10.95 -/Times-Bold@0 SF(COMMAND EXECUTION ENVIR)72 189.6 Q(ONMENT)-.329 E F0 -(The shell has an)108 201.6 Q/F5 10/Times-Italic@0 SF -.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 230.4 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 -(exec)3.905 E F0 -.2(bu)144 242.4 S(iltin).2 E 32.5<8374>108 259.2 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) +F(command ar)108 448.8 Q(guments, if an)-.18 E -.65(y.)-.15 G F1 +(COMMAND EXECUTION ENVIR)72 465.6 Q(ONMENT)-.329 E F0(The shell has an) +108 477.6 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 32.5<836f>108 +506.4 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 +F4(exec)3.905 E F0 -.2(bu)144 518.4 S(iltin).2 E 32.5<8374>108 535.2 S +(he current w)-32.5 E(orking directory as set by)-.1 E F4(cd)2.5 E F0(,) +A F4(pushd)2.5 E F0 2.5(,o)C(r)-2.5 E F4(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 276 S(he \214le creation mode mask as set by)-32.5 E F1(umask) +<8374>108 552 S(he \214le creation mode mask as set by)-32.5 E F4(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 292.8 S(urrent traps set by)-32.5 E F1(trap)2.5 E F0 32.5 -<8373>108 309.6 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 +32.5<8363>108 568.8 S(urrent traps set by)-32.5 E F4(trap)2.5 E F0 32.5 +<8373>108 585.6 S .256(hell parameters that are set by v)-32.5 F .256 +(ariable assignment or with)-.25 F F4(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 321.6 Q(vironment)-.4 E 32.5<8373>108 338.4 S +(in the en)144 597.6 Q(vironment)-.4 E 32.5<8373>108 614.4 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 355.2 S +(arent in the en)-2.5 E(vironment)-.4 E 32.5<836f>108 631.2 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 F1(set)2.5 E -F0 32.5<836f>108 372 S(ptions enabled by)-32.5 E F1(shopt)2.5 E F0 32.5 -<8373>108 388.8 S(hell aliases de\214ned with)-32.5 E F1(alias)2.5 E F0 -32.5<8376>108 405.6 S +(ault or with command-line ar)-.1 E(guments\) or by)-.18 E F4(set)2.5 E +F0 32.5<836f>108 648 S(ptions enabled by)-32.5 E F4(shopt)2.5 E F0 32.5 +<8373>108 664.8 S(hell aliases de\214ned with)-32.5 E F4(alias)2.5 E F0 +32.5<8376>108 681.6 S (arious process IDs, including those of background jobs, the v)-32.75 E -(alue of)-.25 E F1($$)2.5 E F0 2.5(,a)C(nd the v)-2.5 E(alue of)-.25 E -F1($PPID)2.5 E F0 .427(When a simple command other than a b)108 422.4 R +(alue of)-.25 E F4($$)2.5 E F0 2.5(,a)C(nd the v)-2.5 E(alue of)-.25 E +F4($PPID)2.5 E F0 .427(When a simple command other than a b)108 698.4 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 434.4 S .133(cution en).15 F .133 +-2.926 G(eparate)-2.926 E -.15(exe)108 710.4 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 446.4 Q 32.5<8374>108 475.2 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 +(the shell.)108 722.4 Q(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(28) +197.335 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 32.5<8374>108 84 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 487.2 Q 32.5<8374>108 504 S(he current w)-32.5 E -(orking directory)-.1 E 32.5<8374>108 520.8 S -(he \214le creation mode mask)-32.5 E 32.5<8373>108 537.6 S .856(hell v) +-3.556 F(mand)144 96 Q 32.5<8374>108 112.8 S(he current w)-32.5 E +(orking directory)-.1 E 32.5<8374>108 129.6 S +(he \214le creation mode mask)-32.5 E 32.5<8373>108 146.4 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 549.6 Q(vironment) --.4 E 32.5<8374>108 566.4 S .307 +(xported for the command,)-.15 F(passed in the en)144 158.4 Q(vironment) +-.4 E 32.5<8374>108 175.2 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 578.4 Q -2.5(Ac)108 595.2 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 187.2 Q +2.5(Ac)108 204 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 612 R -.2(vo)-.4 G -.1(ke) -.2 G 3.078(di).1 G(n)-3.078 E 2.745(as)108 624 S .245(ubshell en)-2.745 -F .245(vironment that is a duplicate of the shell en)-.4 F .244 +ntheses, and asynchronous commands are in)108 220.8 R -.2(vo)-.4 G -.1 +(ke).2 G 3.078(di).1 G(n)-3.078 E 2.745(as)108 232.8 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 636 R .358 +.358(reset to the v)108 244.8 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 648 R --.15(xe)-.15 G .856(cuted in a subshell en).15 F 3.356 +-.4 G -.1(ke).2 G(d).1 E .857(as part of a pipeline are also e)108 256.8 +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 660 Q(fect the shell')-.25 E 2.5(se)-.55 G -.15 -(xe)-2.65 G(cution en).15 E(vironment.)-.4 E .404(If a command is follo) -108 676.8 R .404(wed by a)-.25 F F1(&)2.904 E F0 .405 -(and job control is not acti)2.904 F -.15(ve)-.25 G 2.905(,t).15 G .405 -(he def)-2.905 F .405(ault standard input for the command)-.1 F .198 -(is the empty \214le)108 688.8 R F5(/de)2.698 E(v/null)-.15 E F0 5.198 -(.O)C .198(therwise, the in)-5.198 F -.2(vo)-.4 G -.1(ke).2 G 2.698(dc) -.1 G .197(ommand inherits the \214le descriptors of the calling shell) --2.698 F(as modi\214ed by redirections.)108 700.8 Q(GNU Bash-3.2)72 768 -Q(2008 April 5)148.455 E(28)198.445 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.95/Times-Bold@0 SF(ENVIR)72 84 Q(ONMENT)-.329 E F0 2.353 -(When a program is in)108 96 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/F2 10 -/Times-Italic@0 SF(en)4.853 E(vir)-.4 E(onment)-.45 E F0 7.353(.T).68 G -2.354(his is a list of)-7.353 F F2(name)108 108 Q F0A F2(value)A F0 -(pairs, of the form)2.5 E F2(name)2.5 E F0(=)A F2(value)A F0(.).18 E -1.486(The shell pro)108 124.8 R 1.486(vides se)-.15 F -.15(ve)-.25 G -1.486(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.485 -(cation, the shell scans its o).2 F(wn)-.25 E(en)108 136.8 Q .144(viron\ +-.4 E(ment cannot af)108 268.8 Q(fect the shell')-.25 E 2.5(se)-.55 G +-.15(xe)-2.65 G(cution en).15 E(vironment.)-.4 E .404 +(If a command is follo)108 285.6 R .404(wed by a)-.25 F/F1 10 +/Times-Bold@0 SF(&)2.904 E F0 .405(and job control is not acti)2.904 F +-.15(ve)-.25 G 2.905(,t).15 G .405(he def)-2.905 F .405 +(ault standard input for the command)-.1 F .198(is the empty \214le)108 +297.6 R/F2 10/Times-Italic@0 SF(/de)2.698 E(v/null)-.15 E F0 5.198(.O)C +.198(therwise, the in)-5.198 F -.2(vo)-.4 G -.1(ke).2 G 2.698(dc).1 G +.197(ommand inherits the \214le descriptors of the calling shell)-2.698 +F(as modi\214ed by redirections.)108 309.6 Q/F3 10.95/Times-Bold@0 SF +(ENVIR)72 326.4 Q(ONMENT)-.329 E F0 2.353(When a program is in)108 338.4 +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 F2(en)4.853 E(vir)-.4 E(onment)-.45 +E F0 7.353(.T).68 G 2.354(his is a list of)-7.353 F F2(name)108 350.4 Q +F0A F2(value)A F0(pairs, of the form)2.5 E F2(name)2.5 E F0(=)A F2 +(value)A F0(.).18 E 1.486(The shell pro)108 367.2 R 1.486(vides se)-.15 +F -.15(ve)-.25 G 1.486(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.485 +(cation, the shell scans its o).2 F(wn)-.25 E(en)108 379.2 Q .144(viron\ ment and creates a parameter for each name found, automatically marking\ it for)-.4 F F2 -.2(ex)2.644 G(port).2 E F0 .144(to child pro-)3.324 F -2.704(cesses. Ex)108 148.8 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.703(wp)-.25 G(aram-)-2.703 E 1.153 -(eters and functions to be added to and deleted from the en)108 160.8 R +2.704(cesses. Ex)108 391.2 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.703 +(wp)-.25 G(aram-)-2.703 E 1.153 +(eters and functions to be added to and deleted from the en)108 403.2 R 3.653(vironment. If)-.4 F 1.153(the v)3.653 F 1.154 -(alue of a parameter in the)-.25 F(en)108 172.8 Q .64 +(alue of a parameter in the)-.25 F(en)108 415.2 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 184.8 +-.4 F .64(The en)5.64 F(viron-)-.4 E .58(ment inherited by an)108 427.2 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 -.301(modi\214ed in the shell, less an)108 196.8 R 2.801(yp)-.15 G .301 +.301(modi\214ed in the shell, less an)108 439.2 R 2.801(yp)-.15 G .301 (airs remo)-2.801 F -.15(ve)-.15 G 2.801(db).15 G 2.801(yt)-2.801 G(he) --2.801 E F3(unset)2.801 E F0 .3(command, plus an)2.8 F 2.8(ya)-.15 G .3 -(dditions via the)-2.8 F F3(export)2.8 E F0(and)2.8 E F3(declar)108 -208.8 Q 2.5<65ad>-.18 G(x)-2.5 E F0(commands.)2.5 E .562(The en)108 -225.6 R .562(vironment for an)-.4 F(y)-.15 E F2 .562(simple command) -3.402 F F0 .563 -(or function may be augmented temporarily by pre\214xing it with)3.833 F -.203(parameter assignments, as described abo)108 237.6 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 -.202(fect only the)-.25 F(en)108 249.6 Q -(vironment seen by that command.)-.4 E .81(If the)108 266.4 R F3 -3.31 E F0 .81(option is set \(see the)3.31 F F3(set)3.31 E F0 -.2(bu) +-2.801 E F1(unset)2.801 E F0 .3(command, plus an)2.8 F 2.8(ya)-.15 G .3 +(dditions via the)-2.8 F F1(export)2.8 E F0(and)2.8 E F1(declar)108 +451.2 Q 2.5<65ad>-.18 G(x)-2.5 E F0(commands.)2.5 E .562(The en)108 468 +R .562(vironment for an)-.4 F(y)-.15 E F2 .562(simple command)3.402 F F0 +.563(or function may be augmented temporarily by pre\214xing it with) +3.833 F .203(parameter assignments, as described abo)108 480 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 .202(fect only the)-.25 F(en)108 492 Q +(vironment seen by that command.)-.4 E .81(If the)108 508.8 R F1 +3.31 E F0 .81(option is set \(see the)3.31 F F1(set)3.31 E F0 -.2(bu) 3.31 G .81(iltin command belo).2 F .81(w\), then)-.25 F F2(all)3.64 E F0 -.81(parameter assignments are placed in)3.82 F(the en)108 278.4 Q +.81(parameter assignments are placed in)3.82 F(the en)108 520.8 Q (vironment for a command, not just those that precede the command name.) --.4 E(When)108 295.2 Q F3(bash)3.397 E F0(in)3.397 E -.2(vo)-.4 G -.1 +-.4 E(When)108 537.6 Q F1(bash)3.397 E F0(in)3.397 E -.2(vo)-.4 G -.1 (ke).2 G 3.397(sa).1 G 3.397(ne)-3.397 G .897(xternal command, the v) --3.547 F(ariable)-.25 E F3(_)3.397 E F0 .897 +-3.547 F(ariable)-.25 E F1(_)3.397 E F0 .897 (is set to the full \214le name of the command and)3.397 F -(passed to that command in its en)108 307.2 Q(vironment.)-.4 E F1 -(EXIT ST)72 324 Q -1.04(AT)-.986 G(US)1.04 E F0 .15(The e)108 336 R .15 -(xit status of an e)-.15 F -.15(xe)-.15 G .15(cuted command is the v).15 -F .151(alue returned by the)-.25 F F2(waitpid)2.651 E F0 .151 +(passed to that command in its en)108 549.6 Q(vironment.)-.4 E F3 +(EXIT ST)72 566.4 Q -1.04(AT)-.986 G(US)1.04 E F0 .15(The e)108 578.4 R +.15(xit status of an e)-.15 F -.15(xe)-.15 G .15(cuted command is the v) +.15 F .151(alue returned by the)-.25 F F2(waitpid)2.651 E F0 .151 (system call or equi)2.651 F -.25(va)-.25 G .151(lent func-).25 F 2.848 -(tion. Exit)108 348 R .348(statuses f)2.848 F .347 +(tion. Exit)108 590.4 R .348(statuses f)2.848 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 .347(alues abo)-.25 -F .647 -.15(ve 1)-.15 H(25).15 E(specially)108 360 Q 5.673(.E)-.65 G +F .647 -.15(ve 1)-.15 H(25).15 E(specially)108 602.4 Q 5.673(.E)-.65 G .673(xit statuses from shell b)-5.673 F .673 (uiltins and compound commands are also limited to this range. Under)-.2 -F(certain circumstances, the shell will use special v)108 372 Q +F(certain circumstances, the shell will use special v)108 614.4 Q (alues to indicate speci\214c f)-.25 E(ailure modes.)-.1 E -.15(Fo)108 -388.8 S 3.373(rt).15 G .873(he shell')-3.373 F 3.373(sp)-.55 G .873 +631.2 S 3.373(rt).15 G .873(he shell')-3.373 F 3.373(sp)-.55 G .873 (urposes, a command which e)-3.373 F .873(xits with a zero e)-.15 F .873 (xit status has succeeded.)-.15 F .872(An e)5.872 F .872(xit status of) --.15 F .048(zero indicates success.)108 400.8 R 2.548(An)5.048 G .049 +-.15 F .048(zero indicates success.)108 643.2 R 2.548(An)5.048 G .049 (on-zero e)-2.548 F .049(xit status indicates f)-.15 F 2.549 (ailure. When)-.1 F 2.549(ac)2.549 G .049(ommand terminates on a f) --2.549 F .049(atal sig-)-.1 F(nal)108 412.8 Q F2(N)2.5 E F0(,)A F3(bash) +-2.549 F .049(atal sig-)-.1 F(nal)108 655.2 Q F2(N)2.5 E F0(,)A F1(bash) 2.5 E F0(uses the v)2.5 E(alue of 128+)-.25 E F2(N)A F0(as the e)2.5 E (xit status.)-.15 E .405 -(If a command is not found, the child process created to e)108 429.6 R +(If a command is not found, the child process created to e)108 672 R -.15(xe)-.15 G .404(cute it returns a status of 127.).15 F .404 -(If a command is)5.404 F(found b)108 441.6 Q(ut is not e)-.2 E -.15(xe) --.15 G(cutable, the return status is 126.).15 E(If a command f)108 458.4 +(If a command is)5.404 F(found b)108 684 Q(ut is not e)-.2 E -.15(xe) +-.15 G(cutable, the return status is 126.).15 E(If a command f)108 700.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 .08(Shell b)108 475.2 R .08 +-.15 E .08(Shell b)108 717.6 R .08 (uiltin commands return a status of 0 \()-.2 F F2(true)A F0 2.581(\)i)C 2.581(fs)-2.581 G .081(uccessful, and non-zero \()-2.581 F F2(false)A F0 2.581(\)i)C 2.581(fa)-2.581 G 2.581(ne)-2.581 G .081(rror occurs while) --2.581 F(the)108 487.2 Q 2.5(ye)-.15 G -.15(xe)-2.65 G 2.5(cute. All).15 +-2.581 F(the)108 729.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 504 Q -F0 .202(itself returns the e)2.702 F .202 -(xit status of the last command e)-.15 F -.15(xe)-.15 G .201 -(cuted, unless a syntax error occurs, in which case).15 F(it e)108 516 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 F1 -(SIGN)72 532.8 Q(ALS)-.219 E F0(When)108 544.8 Q F3(bash)3.182 E F0 .682 -(is interacti)3.182 F -.15(ve)-.25 G 3.182(,i).15 G 3.182(nt)-3.182 G -.682(he absence of an)-3.182 F 3.183(yt)-.15 G .683(raps, it ignores) --3.183 F F4(SIGTERM)3.183 E F0 .683(\(so that)2.933 F F3 .683(kill 0) -3.183 F F0 .683(does not kill an)3.183 F(interacti)108 556.8 Q .758 -.15 -(ve s)-.25 H .458(hell\), and).15 F F4(SIGINT)2.958 E F0 .458 -(is caught and handled \(so that the)2.708 F F3(wait)2.958 E F0 -.2(bu) -2.958 G .457(iltin is interruptible\).).2 F .457(In all cases,)5.457 F -F3(bash)108 568.8 Q F0(ignores)2.5 E F4(SIGQ)2.5 E(UIT)-.09 E F5(.)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 585.6 Q 1.064 -(uiltin commands run by)-.2 F F3(bash)3.564 E F0(ha)3.564 E 1.365 -.15 -(ve s)-.2 H 1.065(ignal handlers set to the v).15 F 1.065 -(alues inherited by the shell from its)-.25 F 3.248(parent. When)108 -597.6 R .748(job control is not in ef)3.248 F .747 -(fect, asynchronous commands ignore)-.25 F F4(SIGINT)3.247 E F0(and) -2.997 E F4(SIGQ)3.247 E(UIT)-.09 E F0 .747(in addi-)2.997 F .652 -(tion to these inherited handlers.)108 609.6 R .653 +(xit status of 2 to indicate incorrect usage.)-.15 E(GNU Bash-4.0)72 768 +Q(2008 May 25)147.345 E(29)197.335 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-Bold@0 SF(Bash)108 84 Q F0 .202(itself returns the e) +2.702 F .202(xit status of the last command e)-.15 F -.15(xe)-.15 G .201 +(cuted, unless a syntax error occurs, in which case).15 F(it e)108 96 Q +(xits with a non-zero v)-.15 E 2.5(alue. See)-.25 F(also the)2.5 E F1 +(exit)2.5 E F0 -.2(bu)2.5 G(iltin command belo).2 E -.65(w.)-.25 G/F2 +10.95/Times-Bold@0 SF(SIGN)72 112.8 Q(ALS)-.219 E F0(When)108 124.8 Q F1 +(bash)3.182 E F0 .682(is interacti)3.182 F -.15(ve)-.25 G 3.182(,i).15 G +3.182(nt)-3.182 G .682(he absence of an)-3.182 F 3.183(yt)-.15 G .683 +(raps, it ignores)-3.183 F/F3 9/Times-Bold@0 SF(SIGTERM)3.183 E F0 .683 +(\(so that)2.933 F F1 .683(kill 0)3.183 F F0 .683(does not kill an)3.183 +F(interacti)108 136.8 Q .758 -.15(ve s)-.25 H .458(hell\), and).15 F F3 +(SIGINT)2.958 E F0 .458(is caught and handled \(so that the)2.708 F F1 +(wait)2.958 E F0 -.2(bu)2.958 G .457(iltin is interruptible\).).2 F .457 +(In all cases,)5.457 F F1(bash)108 148.8 Q F0(ignores)2.5 E F3(SIGQ)2.5 +E(UIT)-.09 E/F4 9/Times-Roman@0 SF(.)A F0(If job control is in ef)4.5 E +(fect,)-.25 E F1(bash)2.5 E F0(ignores)2.5 E F3(SIGTTIN)2.5 E F4(,)A F3 +(SIGTT)2.25 E(OU)-.162 E F4(,)A F0(and)2.25 E F3(SIGTSTP)2.5 E F4(.)A F0 +(Non-b)108 165.6 Q 1.064(uiltin commands run by)-.2 F F1(bash)3.564 E F0 +(ha)3.564 E 1.365 -.15(ve s)-.2 H 1.065(ignal handlers set to the v).15 +F 1.065(alues inherited by the shell from its)-.25 F 3.248(parent. When) +108 177.6 R .748(job control is not in ef)3.248 F .747 +(fect, asynchronous commands ignore)-.25 F F3(SIGINT)3.247 E F0(and) +2.997 E F3(SIGQ)3.247 E(UIT)-.09 E F0 .747(in addi-)2.997 F .652 +(tion to these inherited handlers.)108 189.6 R .653 (Commands run as a result of command substitution ignore the k)5.652 F --.15(ey)-.1 G(board-).15 E(generated job control signals)108 621.6 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.046(The shell e)108 638.4 R 2.046 -(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.345 --.15(ve s)-.25 H 2.045(hell resends the).15 F F4(SIGHUP)108 650.4 Q F0 +-.15(ey)-.1 G(board-).15 E(generated job control signals)108 201.6 Q F3 +(SIGTTIN)2.5 E F4(,)A F3(SIGTT)2.25 E(OU)-.162 E F4(,)A F0(and)2.25 E F3 +(SIGTSTP)2.5 E F4(.)A F0 2.046(The shell e)108 218.4 R 2.046 +(xits by def)-.15 F 2.045(ault upon receipt of a)-.1 F F3(SIGHUP)4.545 E +F4(.)A F0 2.045(Before e)6.545 F 2.045(xiting, an interacti)-.15 F 2.345 +-.15(ve s)-.25 H 2.045(hell resends the).15 F F3(SIGHUP)108 230.4 Q F0 1.004(to all jobs, running or stopped.)3.254 F 1.004 -(Stopped jobs are sent)6.004 F F4(SIGCONT)3.505 E F0 1.005 +(Stopped jobs are sent)6.004 F F3(SIGCONT)3.505 E F0 1.005 (to ensure that the)3.255 F 3.505(yr)-.15 G(ecei)-3.505 E 1.305 -.15 -(ve t)-.25 H(he).15 E F4(SIGHUP)108 662.4 Q F5(.)A F0 2.53 -.8(To p)5.43 +(ve t)-.25 H(he).15 E F3(SIGHUP)108 242.4 Q F4(.)A F0 2.53 -.8(To p)5.43 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.429(df).15 G -.929(rom the)-3.429 F 1.356(jobs table with the)108 674.4 R F3(diso) -3.856 E(wn)-.1 E F0 -.2(bu)3.856 G 1.356(iltin \(see).2 F F4 1.356 +.929(rom the)-3.429 F 1.356(jobs table with the)108 254.4 R F1(diso) +3.856 E(wn)-.1 E F0 -.2(bu)3.856 G 1.356(iltin \(see).2 F F3 1.356 (SHELL B)3.856 F(UIL)-.09 E 1.356(TIN COMMANDS)-.828 F F0(belo)3.607 E -1.357(w\) or mark)-.25 F 1.357(ed to not recei)-.1 F -.15(ve)-.25 G F4 -(SIGHUP)108 686.4 Q F0(using)2.25 E F3(diso)2.5 E(wn \255h)-.1 E F0(.)A -.166(If the)108 703.2 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 F4(SIGHUP)2.666 E F0 .166 +1.357(w\) or mark)-.25 F 1.357(ed to not recei)-.1 F -.15(ve)-.25 G F3 +(SIGHUP)108 266.4 Q F0(using)2.25 E F1(diso)2.5 E(wn \255h)-.1 E F0(.)A +.166(If the)108 283.2 R F1(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 F3(SIGHUP)2.666 E F0 .166 (to all jobs when an interacti)2.416 F -.15(ve)-.25 G(login shell e)108 -715.2 Q(xits.)-.15 E(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(29) -198.445 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(If)108 84 Q/F1 10/Times-Bold@0 SF(bash)3.046 E F0 .546(is w)3.046 -F .546(aiting for a command to complete and recei)-.1 F -.15(ve)-.25 G +295.2 Q(xits.)-.15 E(If)108 312 Q F1(bash)3.046 E F0 .546(is w)3.046 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 .663(will not be e)108 96 R -.15(xe)-.15 G .663 +-3.046 F .663(will not be e)108 324 R -.15(xe)-.15 G .663 (cuted until the command completes.).15 F(When)5.663 E F1(bash)3.163 E F0 .662(is w)3.163 F .662(aiting for an asynchronous command)-.1 F .99 -(via the)108 108 R F1(wait)3.49 E F0 -.2(bu)3.49 G .99(iltin, the recep\ +(via the)108 336 R F1(wait)3.49 E F0 -.2(bu)3.49 G .99(iltin, the recep\ tion of a signal for which a trap has been set will cause the).2 F F1 (wait)3.49 E F0 -.2(bu)3.49 G .99(iltin to).2 F -(return immediately with an e)108 120 Q +(return immediately with an e)108 348 Q (xit status greater than 128, immediately after which the trap is e)-.15 -E -.15(xe)-.15 G(cuted.).15 E/F2 10.95/Times-Bold@0 SF(JOB CONTR)72 -136.8 Q(OL)-.329 E/F3 10/Times-Italic@0 SF -.25(Jo)108 148.8 S 4.568(bc) -.25 G(ontr)-4.568 E(ol)-.45 E F0 2.068(refers to the ability to selecti) -5.078 F -.15(ve)-.25 G 2.067(ly stop \().15 F F3(suspend)A F0 4.567(\)t) -C 2.067(he e)-4.567 F -.15(xe)-.15 G 2.067 -(cution of processes and continue).15 F(\()108 160.8 Q F3 -.37(re)C -(sume).37 E F0 3.201(\)t)C .701(heir e)-3.201 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 F2(JOB CONTR)72 364.8 Q(OL)-.329 E/F5 10 +/Times-Italic@0 SF -.25(Jo)108 376.8 S 4.568(bc).25 G(ontr)-4.568 E(ol) +-.45 E F0 2.068(refers to the ability to selecti)5.078 F -.15(ve)-.25 G +2.067(ly stop \().15 F F5(suspend)A F0 4.567(\)t)C 2.067(he e)-4.567 F +-.15(xe)-.15 G 2.067(cution of processes and continue).15 F(\()108 388.8 +Q F5 -.37(re)C(sume).37 E F0 3.201(\)t)C .701(heir e)-3.201 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.002 -.15(ve i)-.25 H(nterf).15 E(ace) --.1 E(supplied jointly by the system')108 172.8 Q 2.5(st)-.55 G +-.1 E(supplied jointly by the system')108 400.8 Q 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 .785(The shell associates a)108 189.6 R F3(job)5.025 E F0 .785 +F0(.)A .785(The shell associates a)108 417.6 R F5(job)5.025 E F0 .785 (with each pipeline.)3.515 F .784(It k)5.785 F .784 (eeps a table of currently e)-.1 F -.15(xe)-.15 G .784 -(cuting jobs, which may be).15 F .34(listed with the)108 201.6 R F1 +(cuting jobs, which may be).15 F .34(listed with the)108 429.6 R F1 (jobs)2.84 E F0 2.84(command. When)2.84 F F1(bash)2.84 E F0 .341 -(starts a job asynchronously \(in the)2.84 F F3(bac)2.841 E(kgr)-.2 E -(ound)-.45 E F0 .341(\), it prints a line).77 F(that looks lik)108 213.6 -Q(e:)-.1 E([1] 25647)144 230.4 Q .241(indicating that this job is job n\ +(starts a job asynchronously \(in the)2.84 F F5(bac)2.841 E(kgr)-.2 E +(ound)-.45 E F0 .341(\), it prints a line).77 F(that looks lik)108 441.6 +Q(e:)-.1 E([1] 25647)144 458.4 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 247.2 R .732(with this job is 25647.)108 259.2 R .733 +ociated)108 475.2 R .732(with this job is 25647.)108 487.2 R .733 (All of the processes in a single pipeline are members of the same job) -5.732 F(.)-.4 E F1(Bash)5.733 E F0(uses)3.233 E(the)108 271.2 Q F3(job) +5.732 F(.)-.4 E F1(Bash)5.733 E F0(uses)3.233 E(the)108 499.2 Q F5(job) 4.24 E F0(abstraction as the basis for job control.)2.73 E 3.063 -.8 -(To f)108 288 T 1.463(acilitate the implementation of the user interf).7 +(To f)108 516 T 1.463(acilitate the implementation of the user interf).7 F 1.462(ace to job control, the operating system maintains the)-.1 F .87 -(notion of a)108 300 R F3(curr)3.37 E .87(ent terminal pr)-.37 F .871 +(notion of a)108 528 R F5(curr)3.37 E .87(ent terminal pr)-.37 F .871 (ocess gr)-.45 F .871(oup ID)-.45 F F0 5.871(.M)C .871 (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 -312 R .323 -.15(ve k)-.25 H -.15(ey).05 G .023 -(board-generated signals such as).15 F/F4 9/Times-Bold@0 SF(SIG-)2.522 E -(INT)108 324 Q/F5 9/Times-Roman@0 SF(.)A F0 1.346 -(These processes are said to be in the)5.846 F F3(for)3.847 E -.4(eg) --.37 G -.45(ro).4 G(und).45 E F0(.).77 E F3(Bac)6.927 E(kgr)-.2 E(ound) --.45 E F0 1.347(processes are those whose process)4.617 F .146 -(group ID dif)108 336 R .146(fers from the terminal')-.25 F .146 +540 R .323 -.15(ve k)-.25 H -.15(ey).05 G .023 +(board-generated signals such as).15 F F3(SIG-)2.522 E(INT)108 552 Q F4 +(.)A F0 1.346(These processes are said to be in the)5.846 F F5(for)3.847 +E -.4(eg)-.37 G -.45(ro).4 G(und).45 E F0(.).77 E F5(Bac)6.927 E(kgr)-.2 +E(ound)-.45 E F0 1.347(processes are those whose process)4.617 F .146 +(group ID dif)108 564 R .146(fers from the terminal')-.25 F .146 (s; such processes are immune to k)-.55 F -.15(ey)-.1 G .145 (board-generated signals.).15 F .145(Only fore-)5.145 F .041 -(ground processes are allo)108 348 R .042 +(ground processes are allo)108 576 R .042 (wed to read from or write to the terminal.)-.25 F .042 (Background processes which attempt to)5.042 F 1.64 -(read from \(write to\) the terminal are sent a)108 360 R F4 1.639 +(read from \(write to\) the terminal are sent a)108 588 R F3 1.639 (SIGTTIN \(SIGTT)4.14 F(OU\))-.162 E F0 1.639 (signal by the terminal dri)3.889 F -.15(ve)-.25 G 2.439 -.4(r, w).15 H -(hich,).4 E(unless caught, suspends the process.)108 372 Q 1.087 -(If the operating system on which)108 388.8 R F1(bash)3.587 E F0 1.088 +(hich,).4 E(unless caught, suspends the process.)108 600 Q 1.087 +(If the operating system on which)108 616.8 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 400.8 S -.302(ping the).8 F F3(suspend)3.142 E F0 .302(character \(typically) +(contains f)3.588 F 1.088(acilities to use it.)-.1 F -.8(Ty)108 628.8 S +.302(ping the).8 F F5(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 412.8 R F1(bash)4.642 E F0 -7.142(.T)C 2.142(yping the)-7.942 F F3 2.142(delayed suspend)4.992 F F0 +F 2.142(stopped and returns control to)108 640.8 R F1(bash)4.642 E F0 +7.142(.T)C 2.142(yping the)-7.942 F F5 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 -424.8 R(to)108 436.8 Q F1(bash)3.392 E F0 5.892(.T)C .892 +652.8 R(to)108 664.8 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 448.8 R F1(fg)3.395 E F0 .895 +(background, the)108 676.8 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 460.8 Q .948(fect immediately) +3.394 E F0(tak)3.394 E(es)-.1 E(ef)108 688.8 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 472.8 Q 1.098(There are a number of w)108 489.6 R 1.097 +108 700.8 Q 1.098(There are a number of w)108 717.6 R 1.097 (ays to refer to a job in the shell.)-.1 F 1.097(The character)6.097 F F1(%)3.597 E F0 1.097(introduces a job name.)3.597 F(Job)6.097 E(number) -108 501.6 Q F3(n)3.13 E F0 .27(may be referred to as)3.01 F F1(%n)2.77 E +108 729.6 Q F5(n)3.13 E F0 .27(may be referred to as)3.01 F F1(%n)2.77 E F0 5.27(.A)C .27 (job may also be referred to using a pre\214x of the name used to start) --2.5 F .277(it, or using a substring that appears in its command line.) -108 513.6 R -.15(Fo)5.277 G 2.777(re).15 G(xample,)-2.927 E F1(%ce)2.777 -E F0 .277(refers to a stopped)2.777 F F1(ce)2.777 E F0(job)2.777 E 5.277 -(.I)-.4 G 2.777(fa)-5.277 G .38(pre\214x matches more than one job,)108 -525.6 R F1(bash)2.88 E F0 .38(reports an error)2.88 F 5.38(.U)-.55 G -(sing)-5.38 E F1(%?ce)2.88 E F0 2.88(,o)C 2.88(nt)-2.88 G .38 -(he other hand, refers to an)-2.88 F 2.88(yj)-.15 G(ob)-2.88 E .623 -(containing the string)108 537.6 R F1(ce)3.123 E F0 .622 -(in its command line.)3.123 F .622 +-2.5 F(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(30)197.335 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 .277(it, or using a substring that appears in its command line.) +108 84 R -.15(Fo)5.277 G 2.777(re).15 G(xample,)-2.927 E/F1 10 +/Times-Bold@0 SF(%ce)2.777 E F0 .277(refers to a stopped)2.777 F F1(ce) +2.777 E F0(job)2.777 E 5.277(.I)-.4 G 2.777(fa)-5.277 G .38 +(pre\214x matches more than one job,)108 96 R F1(bash)2.88 E F0 .38 +(reports an error)2.88 F 5.38(.U)-.55 G(sing)-5.38 E F1(%?ce)2.88 E F0 +2.88(,o)C 2.88(nt)-2.88 G .38(he other hand, refers to an)-2.88 F 2.88 +(yj)-.15 G(ob)-2.88 E .623(containing the string)108 108 R F1(ce)3.123 E +F0 .622(in its command line.)3.123 F .622 (If the substring matches more than one job,)5.622 F F1(bash)3.122 E F0 -.622(reports an)3.122 F(error)108 549.6 Q 5.143(.T)-.55 G .143 -(he symbols)-5.143 F F1(%%)2.643 E F0(and)2.643 E F1(%+)2.643 E F0 .143 +.622(reports an)3.122 F(error)108 120 Q 5.143(.T)-.55 G .143(he symbols) +-5.143 F F1(%%)2.643 E F0(and)2.643 E F1(%+)2.643 E F0 .143 (refer to the shell')2.643 F 2.643(sn)-.55 G .143(otion of the)-2.643 F -F3(curr)2.643 E .143(ent job)-.37 F F0 2.643(,w).23 G .143 -(hich is the last job stopped)-2.643 F 1.209(while it w)108 561.6 R -1.209(as in the fore)-.1 F 1.208(ground or started in the background.) --.15 F(The)6.208 E F3(pr)4.958 E -.15(ev)-.37 G 1.208(ious job).15 F F0 -1.208(may be referenced using)3.938 F F1<25ad>108 573.6 Q F0 5.486(.I)C -2.986(no)-5.486 G .486 +/F2 10/Times-Italic@0 SF(curr)2.643 E .143(ent job)-.37 F F0 2.643(,w) +.23 G .143(hich is the last job stopped)-2.643 F 1.209(while it w)108 +132 R 1.209(as in the fore)-.1 F 1.208 +(ground or started in the background.)-.15 F(The)6.208 E F2(pr)4.958 E +-.15(ev)-.37 G 1.208(ious job).15 F F0 1.208(may be referenced using) +3.938 F F1<25ad>108 144 Q F0 5.486(.I)C 2.986(no)-5.486 G .486 (utput pertaining to jobs \(e.g., the output of the)-2.986 F F1(jobs) 2.987 E F0 .487(command\), the current job is al)2.987 F -.1(wa)-.1 G -.487(ys \215agged).1 F .15(with a)108 585.6 R F1(+)2.65 E F0 2.65(,a)C -.15(nd the pre)-2.65 F .15(vious job with a)-.25 F F12.65 E F0 5.15 -(.A)C .15(single % \(with no accompan)-2.5 F .15 +.487(ys \215agged).1 F .15(with a)108 156 R F1(+)2.65 E F0 2.65(,a)C .15 +(nd the pre)-2.65 F .15(vious job with a)-.25 F F12.65 E F0 5.15(.A) +C .15(single % \(with no accompan)-2.5 F .15 (ying job speci\214cation\) also refers to)-.15 F(the current job)108 -597.6 Q(.)-.4 E .443 -(Simply naming a job can be used to bring it into the fore)108 614.4 R +168 Q(.)-.4 E .443 +(Simply naming a job can be used to bring it into the fore)108 184.8 R (ground:)-.15 E F1(%1)2.944 E F0 .444(is a synon)2.944 F .444(ym for) -.15 F F1 -.63(``)2.944 G .444(fg %1').63 F(')-.63 E F0 2.944(,b)C (ringing)-2.944 E 1.473(job 1 from the background into the fore)108 -626.4 R 3.973(ground. Similarly)-.15 F(,)-.65 E F1 -.63(``)3.972 G 1.472 +196.8 R 3.973(ground. Similarly)-.15 F(,)-.65 E F1 -.63(``)3.972 G 1.472 (%1 &').63 F(')-.63 E F0 1.472(resumes job 1 in the background,)3.972 F -(equi)108 638.4 Q -.25(va)-.25 G(lent to).25 E F1 -.63(``)2.5 G(bg %1') -.63 E(')-.63 E F0(.)A .13(The shell learns immediately whene)108 655.2 R +(equi)108 208.8 Q -.25(va)-.25 G(lent to).25 E F1 -.63(``)2.5 G(bg %1') +.63 E(')-.63 E F0(.)A .13(The shell learns immediately whene)108 225.6 R -.15(ve)-.25 G 2.63(raj).15 G .13(ob changes state.)-2.63 F(Normally) 5.131 E(,)-.65 E F1(bash)2.631 E F0 -.1(wa)2.631 G .131 (its until it is about to print a).1 F .158 -(prompt before reporting changes in a job')108 667.2 R 2.658(ss)-.55 G +(prompt before reporting changes in a job')108 237.6 R 2.658(ss)-.55 G .158(tatus so as to not interrupt an)-2.658 F 2.657(yo)-.15 G .157 (ther output.)-2.657 F .157(If the)5.157 F F12.657 E F0 .157 -(option to)2.657 F(the)108 679.2 Q F1(set)3.951 E F0 -.2(bu)3.951 G +(option to)2.657 F(the)108 249.6 Q F1(set)3.951 E F0 -.2(bu)3.951 G 1.451(iltin command is enabled,).2 F F1(bash)3.951 E F0 1.452 (reports such changes immediately)3.951 F 6.452(.A)-.65 G 1.752 -.15 -(ny t)-6.452 H 1.452(rap on).15 F F4(SIGCHLD)3.952 E F0(is)3.702 E -.15 -(exe)108 691.2 S(cuted for each child that e).15 E(xits.)-.15 E .033 -(If an attempt to e)108 708 R(xit)-.15 E F1(bash)2.533 E F0 .033 -(is made while jobs are stopped \(or)2.533 F 2.532(,i)-.4 G 2.532(ft) --2.532 G(he)-2.532 E F1(checkjobs)2.532 E F0 .032 -(shell option has been enabled)2.532 F 2.019(using the)108 720 R F1 +(ny t)-6.452 H 1.452(rap on).15 F/F3 9/Times-Bold@0 SF(SIGCHLD)3.952 E +F0(is)3.702 E -.15(exe)108 261.6 S(cuted for each child that e).15 E +(xits.)-.15 E .033(If an attempt to e)108 278.4 R(xit)-.15 E F1(bash) +2.533 E F0 .033(is made while jobs are stopped \(or)2.533 F 2.532(,i)-.4 +G 2.532(ft)-2.532 G(he)-2.532 E F1(checkjobs)2.532 E F0 .032 +(shell option has been enabled)2.532 F 2.019(using the)108 290.4 R F1 (shopt)4.519 E F0 -.2(bu)4.519 G 2.019 (iltin, running\), the shell prints a w).2 F 2.02 (arning message, and, if the)-.1 F F1(checkjobs)4.52 E F0 2.02 -(option is)4.52 F(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(30) -198.445 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 .459(enabled, lists the jobs and their statuses.)108 84 R(The) -5.459 E/F1 10/Times-Bold@0 SF(jobs)2.959 E F0 .458 +(option is)4.52 F .459(enabled, lists the jobs and their statuses.)108 +302.4 R(The)5.459 E F1(jobs)2.959 E F0 .458 (command may then be used to inspect their status.)2.958 F .458(If a) -5.458 F .603(second attempt to e)108 96 R .604 +5.458 F .603(second attempt to e)108 314.4 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 108 Q 2.5(ys)-.15 G(topped jobs are terminated.)-2.5 E/F2 -10.95/Times-Bold@0 SF(PR)72 124.8 Q(OMPTING)-.329 E F0 .645(When e)108 -136.8 R -.15(xe)-.15 G .645(cuting interacti).15 F -.15(ve)-.25 G(ly).15 +(and an)108 326.4 Q 2.5(ys)-.15 G(topped jobs are terminated.)-2.5 E/F4 +10.95/Times-Bold@0 SF(PR)72 343.2 Q(OMPTING)-.329 E F0 .645(When e)108 +355.2 R -.15(xe)-.15 G .645(cuting interacti).15 F -.15(ve)-.25 G(ly).15 E(,)-.65 E F1(bash)3.145 E F0 .645(displays the primary prompt)3.145 F -/F3 9/Times-Bold@0 SF(PS1)3.145 E F0 .645 -(when it is ready to read a command,)2.895 F 1.825 -(and the secondary prompt)108 148.8 R F3(PS2)4.325 E F0 1.825 +F3(PS1)3.145 E F0 .645(when it is ready to read a command,)2.895 F 1.825 +(and the secondary prompt)108 367.2 R F3(PS2)4.325 E F0 1.825 (when it needs more input to complete a command.)4.075 F F1(Bash)6.826 E F0(allo)4.326 E 1.826(ws these)-.25 F 1.499(prompt strings to be custom\ ized by inserting a number of backslash-escaped special characters that\ - are)108 160.8 R(decoded as follo)108 172.8 Q(ws:)-.25 E F1(\\a)144 -184.8 Q F0(an ASCII bell character \(07\))28.22 E F1(\\d)144 196.8 Q F0 + are)108 379.2 R(decoded as follo)108 391.2 Q(ws:)-.25 E F1(\\a)144 +403.2 Q F0(an ASCII bell character \(07\))28.22 E F1(\\d)144 415.2 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 208.8 Q/F4 10/Times-Italic@0 SF(format) -A F1(})A F0(the)180 220.8 Q F4(format)3.926 E F0 1.426(is passed to) -3.926 F F4(strftime)3.926 E F0 1.427 +(ue May 26"\))-.45 E F1(\\D{)144 427.2 Q F2(format)A F1(})A F0(the)180 +439.2 Q F2(format)3.926 E F0 1.426(is passed to)3.926 F F2(strftime) +3.926 E F0 1.427 (\(3\) and the result is inserted into the prompt string; an)B(empty)180 -232.8 Q F4(format)2.5 E F0 +451.2 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 244.8 Q F0 -(an ASCII escape character \(033\))28.78 E F1(\\h)144 256.8 Q F0 -(the hostname up to the \214rst `.)27.66 E(')-.7 E F1(\\H)144 268.8 Q F0 -(the hostname)25.44 E F1(\\j)144 280.8 Q F0 +(The braces are required)5 E F1(\\e)144 463.2 Q F0 +(an ASCII escape character \(033\))28.78 E F1(\\h)144 475.2 Q F0 +(the hostname up to the \214rst `.)27.66 E(')-.7 E F1(\\H)144 487.2 Q F0 +(the hostname)25.44 E F1(\\j)144 499.2 Q F0 (the number of jobs currently managed by the shell)29.89 E F1(\\l)144 -292.8 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 304.8 Q F0(ne)27.66 E(wline)-.25 E F1 -(\\r)144 316.8 Q F0(carriage return)28.78 E F1(\\s)144 328.8 Q F0 +511.2 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 523.2 Q F0(ne)27.66 E(wline)-.25 E F1 +(\\r)144 535.2 Q F0(carriage return)28.78 E F1(\\s)144 547.2 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 -340.8 Q F0(the current time in 24-hour HH:MM:SS format)29.89 E F1(\\T) -144 352.8 Q F0(the current time in 12-hour HH:MM:SS format)26.55 E F1 -(\\@)144 364.8 Q F0(the current time in 12-hour am/pm format)23.92 E F1 -(\\A)144 376.8 Q F0(the current time in 24-hour HH:MM format)26 E F1 -(\\u)144 388.8 Q F0(the username of the current user)27.66 E F1(\\v)144 -400.8 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 412.8 Q F0(the release of)26 E F1(bash) +559.2 Q F0(the current time in 24-hour HH:MM:SS format)29.89 E F1(\\T) +144 571.2 Q F0(the current time in 12-hour HH:MM:SS format)26.55 E F1 +(\\@)144 583.2 Q F0(the current time in 12-hour am/pm format)23.92 E F1 +(\\A)144 595.2 Q F0(the current time in 24-hour HH:MM format)26 E F1 +(\\u)144 607.2 Q F0(the username of the current user)27.66 E F1(\\v)144 +619.2 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 631.2 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 424.8 Q F0(the current w)26 E +(e.g., 2.00.0\))-2.5 E F1(\\w)144 643.2 Q F0(the current w)26 E (orking directory)-.1 E 2.5(,w)-.65 G(ith)-2.5 E F1($HOME)2.5 E F0 -(abbre)2.5 E(viated with a tilde)-.25 E F1(\\W)144 436.8 Q F0 +(abbre)2.5 E(viated with a tilde)-.25 E F1(\\W)144 655.2 Q F0 (the basename of the current w)23.22 E(orking directory)-.1 E 2.5(,w) -.65 G(ith)-2.5 E F1($HOME)2.5 E F0(abbre)2.5 E(viated with a tilde)-.25 -E F1(\\!)144 448.8 Q F0(the history number of this command)29.89 E F1 -(\\#)144 460.8 Q F0(the command number of this command)28.22 E F1(\\$) -144 472.8 Q F0(if the ef)28.22 E(fecti)-.25 E .3 -.15(ve U)-.25 H +E F1(\\!)144 667.2 Q F0(the history number of this command)29.89 E F1 +(\\#)144 679.2 Q F0(the command number of this command)28.22 E F1(\\$) +144 691.2 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 484.8 Q F4(nnn)A F0 -(the character corresponding to the octal number)18.22 E F4(nnn)2.5 E F1 -(\\\\)144 496.8 Q F0 2.5(ab)30.44 G(ackslash)-2.5 E F1(\\[)144 508.8 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 520.8 Q F1(\\])144 532.8 Q F0 +(\\)144 703.2 Q F2(nnn)A F0 +(the character corresponding to the octal number)18.22 E F2(nnn)2.5 E F1 +(\\\\)144 715.2 Q F0 2.5(ab)30.44 G(ackslash)-2.5 E(GNU Bash-4.0)72 768 +Q(2008 May 25)147.345 E(31)197.335 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/F1 10/Times-Bold@0 SF(\\[)144 84 Q F0(be)29.89 E 1.257(gin a seq\ +uence of non-printing characters, which could be used to embed a termin\ +al)-.15 F(control sequence into the prompt)180 96 Q F1(\\])144 108 Q F0 (end a sequence of non-printing characters)29.89 E .119 -(The command number and the history number are usually dif)108 549.6 R +(The command number and the history number are usually dif)108 124.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 561.6 R F3(HIST)4.084 E(OR)-.162 E(Y)-.315 E F0 -(belo)108 573.6 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 585.6 R +tory \214le \(see)108 136.8 R/F2 9/Times-Bold@0 SF(HIST)4.084 E(OR)-.162 +E(Y)-.315 E F0(belo)108 148.8 Q .541(w\), while the command number is t\ +he 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 160.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 597.6 R .352(xpansion, and quote remo)-.15 F +.351(tion, arithmetic e)108 172.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 609.6 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 F2(READLINE)72 626.4 Q F0 .151 +F(description of the)108 184.8 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 10.95/Times-Bold@0 SF(READLINE)72 201.6 Q F0 .151 (This is the library that handles reading input when using an interacti) -108 638.4 R .45 -.15(ve s)-.25 H .15(hell, unless the).15 F F1 -(\255\255noediting)2.65 E F0(option)2.65 E .066(is gi)108 650.4 R -.15 +108 213.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 .066(is gi)108 225.6 R -.15 (ve)-.25 G 2.566(na).15 G 2.566(ts)-2.566 G .066(hell in)-2.566 F -.2 (vo)-.4 G 2.566(cation. By).2 F(def)2.566 E .066 (ault, the line editing commands are similar to those of emacs.)-.1 F -2.567(Av)5.067 G(i-style)-2.567 E .566(line editing interf)108 662.4 R +2.567(Av)5.067 G(i-style)-2.567 E .566(line editing interf)108 237.6 R .566(ace is also a)-.1 F -.25(va)-.2 G 3.065(ilable. T).25 F 3.065(ot) -.8 G .565(urn of)-3.065 F 3.065(fl)-.25 G .565 (ine editing after the shell is running, use the)-3.065 F F1 .565 -(+o emacs)3.065 F F0(or)108 674.4 Q 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 \(see).2 E F3(SHELL B)2.5 E(UIL) +(+o emacs)3.065 F F0(or)108 249.6 Q 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 \(see).2 E F2(SHELL B)2.5 E(UIL) -.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1 -(Readline Notation)87 691.2 Q F0 .567 -(In this section, the emacs-style notation is used to denote k)108 703.2 +(Readline Notation)87 266.4 Q F0 .567 +(In this section, the emacs-style notation is used to denote k)108 278.4 R -.15(ey)-.1 G(strok).15 E 3.068(es. Control)-.1 F -.1(ke)3.068 G .568 -(ys are denoted by C\255)-.05 F F4 -.1(ke)C(y)-.2 E F0(,)A 1.153 -(e.g., C\255n means Control\255N.)108 715.2 R(Similarly)6.153 E(,)-.65 E -F4(meta)4.033 E F0 -.1(ke)3.913 G 1.153(ys are denoted by M\255)-.05 F -F4 -.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 727.2 S .83 -(yboards without a)-.05 F F4(meta)3.71 E F0 -.1(ke)3.59 G 2.13 -.65 -(y, M)-.05 H.65 E F4(x)A F0 .83(means ESC)3.33 F F4(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 F4(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(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E -(31)198.445 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 .6(ESC the)108 84 R/F1 10/Times-Italic@0 SF .6(meta pr)3.1 F -(e\214x)-.37 E F0 5.6(.T)C .6(he combination M\255C\255)-5.6 F F1(x)A F0 -.599(means ESC\255Control\255)3.099 F F1(x)A F0 3.099(,o)C 3.099(rp) +(ys are denoted by C\255)-.05 F/F4 10/Times-Italic@0 SF -.1(ke)C(y)-.2 E +F0(,)A 1.153(e.g., C\255n means Control\255N.)108 290.4 R(Similarly) +6.153 E(,)-.65 E F4(meta)4.033 E F0 -.1(ke)3.913 G 1.153 +(ys are denoted by M\255)-.05 F F4 -.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 302.4 S .83(yboards without a)-.05 F F4(meta)3.71 E F0 -.1(ke)3.59 G +2.13 -.65(y, M)-.05 H.65 E F4(x)A F0 .83(means ESC)3.33 F F4(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 F4(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 314.4 R F4 .6(meta pr)3.1 F +(e\214x)-.37 E F0 5.6(.T)C .6(he combination M\255C\255)-5.6 F F4(x)A F0 +.599(means ESC\255Control\255)3.099 F F4(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 96 Q .3 -.15(ey w)-.1 H -(hile pressing the).15 E F1(x)3.27 E F0 -.1(ke)3.03 G -.65(y.)-.05 G(\)) -.65 E .619(Readline commands may be gi)108 112.8 R -.15(ve)-.25 G 3.119 -(nn).15 G(umeric)-3.119 E F1(ar)3.119 E(guments)-.37 E F0 3.119(,w).27 G +(hen hold).15 F(the Control k)108 326.4 Q .3 -.15(ey w)-.1 H +(hile pressing the).15 E F4(x)3.27 E F0 -.1(ke)3.03 G -.65(y.)-.05 G(\)) +.65 E .619(Readline commands may be gi)108 343.2 R -.15(ve)-.25 G 3.119 +(nn).15 G(umeric)-3.119 E F4(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 124.8 Q(we)-.25 E -.15(ve)-.25 G 1.419 -.4(r, i).15 H 3.119(ti).4 G +108 355.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 136.8 R 1.018 -(ard direction \(e.g.,)-.1 F/F2 10/Times-Bold@0 SF(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 148.8 Q +(ument to a command that).18 F 1.018(acts in the forw)108 367.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 379.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 165.6 R F1 +-.25 E -.65(w.)-.25 G .812(When a command is described as)108 396 R F4 (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 F1 -(yank-)-3.311 E(ing)108 177.6 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 +(or possible future retrie)-3.311 F -.25(va)-.25 G 3.311(l\().25 G F4 +(yank-)-3.311 E(ing)108 408 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 F4 .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 189.6 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 420 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 201.6 Q F2(Readline Initialization)87 218.4 Q F0 .091(Readline is c\ -ustomized by putting commands in an initialization \214le \(the)108 -230.4 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 242.4 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 +108 432 Q F1(Readline Initialization)87 448.8 Q F0 .091(Readline is cus\ +tomized by putting commands in an initialization \214le \(the)108 460.8 +R F4(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 472.8 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 F4(~/.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 254.4 R 1.335 -.15(ey b)-.1 H 1.035(indings and).15 F -.25 -(va)108 266.4 S 1.15(riables are set.).25 F 1.15(There are only a fe) +nd the k)108 484.8 R 1.335 -.15(ey b)-.1 H 1.035(indings and).15 F -.25 +(va)108 496.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 278.4 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 290.4 R +(lines are ignored.)108 508.8 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 520.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 307.2 R .987(ault k)-.1 F --.15(ey)-.1 G .987(-bindings may be changed with an).15 F F1(inputr) +(ariable settings.)-.25 E .987(The def)108 537.6 R .987(ault k)-.1 F +-.15(ey)-.1 G .987(-bindings may be changed with an).15 F F4(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 319.2 Q -(wn commands and bindings.)-.25 E -.15(Fo)108 336 S 2.5(re).15 G -(xample, placing)-2.65 E(M\255Control\255u: uni)144 352.8 Q -.15(ve)-.25 -G(rsal\255ar).15 E(gument)-.18 E(or)108 364.8 Q(C\255Meta\255u: uni)144 -376.8 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E(into the)108 388.8 -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 +(programs that use this library may)3.487 F(add their o)108 549.6 Q +(wn commands and bindings.)-.25 E -.15(Fo)108 566.4 S 2.5(re).15 G +(xample, placing)-2.65 E(M\255Control\255u: uni)144 583.2 Q -.15(ve)-.25 +G(rsal\255ar).15 E(gument)-.18 E(or)108 595.2 Q(C\255Meta\255u: uni)144 +607.2 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E(into the)108 619.2 +Q F4(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 F4 (univer)2.5 E(sal\255ar)-.1 E(gument)-.37 E F0(.).68 E 1.26(The follo) -108 405.6 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 417.6 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 434.4 R .209(ws k)-.25 +108 636 R 1.261(wing symbolic character names are recognized:)-.25 F F4 +-.4(RU)3.761 G(BOUT).4 E F0(,)1.27 E F4(DEL)3.761 E F0(,).53 E F4(ESC) +3.761 E F0(,).72 E F4(LFD)3.761 E F0(,).28 E F4(NEWLINE)3.761 E F0(,).73 +E F4(RET)3.761 E F0(,)1.27 E F4(RETURN)108 648 Q F0(,)1.1 E F4(SPC)2.5 E +F0(,).72 E F4(SP)2.5 E -.3(AC)-.9 G(E).3 E F0 2.5(,a).73 G(nd)-2.5 E F4 +-.5(TA)2.5 G(B).5 E F0(.).27 E .209 +(In addition to command names, readline allo)108 664.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 446.4 Q F1(macr)2.5 E(o)-.45 E F0(\).)A F2 -(Readline K)87 463.2 Q(ey Bindings)-.25 E F0 .366 -(The syntax for controlling k)108 475.2 R .666 -.15(ey b)-.1 H .366 -(indings in the).15 F F1(inputr)2.876 E(c)-.37 E F0 .366 +-.1 H(s).15 E(pressed \(a)108 676.8 Q F4(macr)2.5 E(o)-.45 E F0(\).)A F1 +(Readline K)87 693.6 Q(ey Bindings)-.25 E F0 .366 +(The syntax for controlling k)108 705.6 R .666 -.15(ey b)-.1 H .366 +(indings in the).15 F F4(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 487.2 R .383(xt of a macro and a k) +5.366 F .383(command or the te)108 717.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 499.2 R 3.353(ow)-.1 G .853 +(\214ed in one of tw)108 729.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) +(ame, possibly with).15 F F4(Meta\255)3.353 E F0(or)3.353 E F4(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 511.2 Q 1.542(When using the form)108 528 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 540 R(or e)-.15 E(xample:)-.15 E -(Control-u: uni)144 564 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E -(Meta-Rubout: backw)144 576 Q(ard-kill-w)-.1 E(ord)-.1 E -(Control-o: "> output")144 588 Q .698(In the abo)108 604.8 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 616.8 Q F2 -(backward\255kill\255w)2.759 E(ord)-.1 E F0 2.759(,a)C(nd)-2.759 E F1 +(ey)-.1 G(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(32)197.335 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(sequence.)108 84 Q 1.542(When using the form)108 100.8 R/F1 10 +/Times-Bold@0 SF -.1(ke)4.042 G(yname).1 E F0(:)A/F2 10/Times-Italic@0 +SF(function\255name).833 E F0(or)4.042 E F2(macr)4.042 E(o)-.45 E F0(,)A +F2 -.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 112.8 R +(or e)-.15 E(xample:)-.15 E(Control-u: uni)144 136.8 Q -.15(ve)-.25 G +(rsal\255ar).15 E(gument)-.18 E(Meta-Rubout: backw)144 148.8 Q +(ard-kill-w)-.1 E(ord)-.1 E(Control-o: "> output")144 160.8 Q .698 +(In the abo)108 177.6 R .998 -.15(ve ex)-.15 H(ample,).15 E F2(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 F2(M\255DEL)3.878 E F0 .698 +(is bound to the func-)3.728 F(tion)108 189.6 Q F1 +(backward\255kill\255w)2.759 E(ord)-.1 E F0 2.759(,a)C(nd)-2.759 E F2 (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 -628.8 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 645.6 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 +201.6 Q(xt)-.15 E/F3 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 218.4 R F1("k)2.555 +E(eyseq")-.1 E F0(:)A F2(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 657.6 R 1.584 -.15(ey s)-.1 H 1.284(equence m\ +(denoting an entire k)108 230.4 R 1.584 -.15(ey s)-.1 H 1.284(equence m\ ay be speci\214ed by placing the sequence within double quotes.).15 F -(Some)6.284 E .385(GNU Emacs style k)108 669.6 R .685 -.15(ey e)-.1 H +(Some)6.284 E .385(GNU Emacs style k)108 242.4 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 681.6 Q("\\C\255u": uni)144 705.6 Q -.15(ve) +(are not recognized.)108 254.4 Q("\\C\255u": uni)144 278.4 Q -.15(ve) -.25 G(rsal\255ar).15 E(gument)-.18 E -("\\C\255x\\C\255r": re\255read\255init\255\214le)144 717.6 Q -("\\e[11~": "Function K)144 729.6 Q .3 -.15(ey 1)-.25 H(").15 E -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(32)198.445 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 .315(In this e)108 84 R(xample,)-.15 E/F1 10/Times-Italic@0 SF -(C\255u)2.655 E F0 .315(is ag)3.065 F .315(ain bound to the function) --.05 F/F2 10/Times-Bold@0 SF(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 96 Q F2 -.18(re)2.5 G.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/F3 10/Courier@0 SF +("\\C\255x\\C\255r": re\255read\255init\255\214le)144 290.4 Q +("\\e[11~": "Function K)144 302.4 Q .3 -.15(ey 1)-.25 H(").15 E .315 +(In this e)108 319.2 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 331.2 Q F1 -.18(re)2.5 G +.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 (Function Key 1)2.5 E F0(.)A -(The full set of GNU Emacs style escape sequences is)108 112.8 Q F2 -<5c43ad>144 124.8 Q F0(control pre\214x)20.3 E F2<5c4dad>144 136.8 Q F0 -(meta pre\214x)18.08 E F2(\\e)144 148.8 Q F0(an escape character)28.78 E -F2(\\\\)144 160.8 Q F0(backslash)30.44 E F2(\\")144 172.8 Q F0 -(literal ")27.67 E F2<5c08>144 184.8 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 201.6 Q -.25(va)-.2 G(ilable:).25 E F2(\\a)144 213.6 Q -F0(alert \(bell\))28.22 E F2(\\b)144 225.6 Q F0(backspace)27.66 E F2 -(\\d)144 237.6 Q F0(delete)27.66 E F2(\\f)144 249.6 Q F0(form feed)29.89 -E F2(\\n)144 261.6 Q F0(ne)27.66 E(wline)-.25 E F2(\\r)144 273.6 Q F0 -(carriage return)28.78 E F2(\\t)144 285.6 Q F0(horizontal tab)29.89 E F2 -(\\v)144 297.6 Q F0 -.15(ve)28.22 G(rtical tab).15 E F2(\\)144 309.6 Q -F1(nnn)A F0(the eight-bit character whose v)18.22 E(alue is the octal v) --.25 E(alue)-.25 E F1(nnn)2.5 E F0(\(one to three digits\))2.5 E F2(\\x) -144 321.6 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 +(The full set of GNU Emacs style escape sequences is)108 348 Q F1 +<5c43ad>144 360 Q F0(control pre\214x)20.3 E F1<5c4dad>144 372 Q F0 +(meta pre\214x)18.08 E F1(\\e)144 384 Q F0(an escape character)28.78 E +F1(\\\\)144 396 Q F0(backslash)30.44 E F1(\\")144 408 Q F0(literal ") +27.67 E F1<5c08>144 420 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 436.8 Q -.25(va)-.2 G(ilable:).25 E F1(\\a)144 448.8 Q F0 +(alert \(bell\))28.22 E F1(\\b)144 460.8 Q F0(backspace)27.66 E F1(\\d) +144 472.8 Q F0(delete)27.66 E F1(\\f)144 484.8 Q F0(form feed)29.89 E F1 +(\\n)144 496.8 Q F0(ne)27.66 E(wline)-.25 E F1(\\r)144 508.8 Q F0 +(carriage return)28.78 E F1(\\t)144 520.8 Q F0(horizontal tab)29.89 E F1 +(\\v)144 532.8 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\)144 544.8 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 556.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 338.4 R 1.141(xt of a macro, single or double\ +(When entering the te)108 573.6 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 350.4 R .09(xt is assumed to be a function name.)-.15 F +(Unquoted te)108 585.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 -362.4 Q 2.5(xpanded. Backslash)-.15 F(will quote an)2.5 E 2.5(yo)-.15 G +597.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 -F2(Bash)108 379.2 Q F0(allo)2.929 E .429(ws the current readline k)-.25 +F1(Bash)108 614.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 F2(bind)2.93 E F0 +(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 391.2 R .346 -.15 -(ve u)-.25 H .046(se by using the).15 F F22.545 E F0 .045 -(option to the)2.545 F F2(set)2.545 E F0 -.2(bu)2.545 G .045 -(iltin command).2 F(\(see)108 403.2 Q/F4 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 F2 -(Readline V)87 420 Q(ariables)-.92 E F0 .043(Readline has v)108 432 R -.043(ariables that can be used to further customize its beha)-.25 F +(The editing mode may be switched during interacti)108 626.4 R .346 -.15 +(ve u)-.25 H .046(se by using the).15 F F12.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 638.4 Q/F4 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 655.2 Q(ariables)-.92 E F0 .043(Readline has v)108 667.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 F1(inpu-)2.554 E(tr)108 444 Q(c)-.37 E -F0(\214le with a statement of the form)2.81 E F2(set)144 460.8 Q F1 +(riable may be set in the).25 F F2(inpu-)2.554 E(tr)108 679.2 Q(c)-.37 E +F0(\214le with a statement of the form)2.81 E F1(set)144 696 Q F2 (variable\255name value)2.5 E F0 .79(Except where noted, readline v)108 -477.6 R .79(ariables can tak)-.25 F 3.29(et)-.1 G .79(he v)-3.29 F -(alues)-.25 E F2(On)3.29 E F0(or)3.29 E F2(Off)3.29 E F0 .79 +712.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 489.6 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 501.6 Q -.15(ve)-.25 G .468(\), and "1" are equi).15 F --.25(va)-.25 G .468(lent to).25 F F2(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 F2(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 513.6 S(lues are:) -.25 E F2(bell\255style \(audible\))108 530.4 Q F0 .01 -(Controls what happens when readline w)144 542.4 R .011 -(ants to ring the terminal bell.)-.1 F .011(If set to)5.011 F F2(none) +5.79 E 2.392(nized v)108 724.8 R 2.392(ariable names are ignored.)-.25 F +2.392(When a v)7.392 F 2.392(ariable v)-.25 F 2.393 +(alue is read, empty or null v)-.25 F 2.393(alues, "on" \(case-)-.25 F +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(33)197.335 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(insensiti)108 84 Q -.15(ve)-.25 G .636(\), and "1" are equi).15 F +-.25(va)-.25 G .636(lent to).25 F/F1 10/Times-Bold@0 SF(On)3.136 E F0 +5.636(.A)C .636(ll other v)-5.636 F .636(alues are equi)-.25 F -.25(va) +-.25 G .636(lent to).25 F F1(Off)3.136 E F0 5.636(.T)C .636(he v)-5.636 +F .635(ariables and their)-.25 F(def)108 96 Q(ault v)-.1 E(alues are:) +-.25 E F1(bell\255style \(audible\))108 112.8 Q F0 .01 +(Controls what happens when readline w)144 124.8 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 554.4 R .94(If set to)5.94 F F2(visible)3.44 E +.94(rings the bell.)144 136.8 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 F2(audible)3.44 E F0 -(,)A(readline attempts to ring the terminal')144 566.4 Q 2.5(sb)-.55 G -(ell.)-2.5 E F2(bind\255tty\255special\255chars \(On\))108 578.4 Q F0 -.055(If set to)144 590.4 R F2(On)2.555 E F0 2.555(,r)C .056(eadline att\ +(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 148.8 Q 2.5(sb)-.55 G +(ell.)-2.5 E F1(bind\255tty\255special\255chars \(On\))108 160.8 Q F0 +.055(If set to)144 172.8 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 602.4 Q -.15 +(ernel')-.1 E 2.556(st)-.55 G(ermi-)-2.556 E(nal dri)144 184.8 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 F2(comment\255begin \(`)108 614.4 Q(`#')-.63 E('\)) --.63 E F0 .885(The string that is inserted when the readline)144 626.4 R -F2(insert\255comment)3.385 E F0 .884(command is e)3.384 F -.15(xe)-.15 G -3.384(cuted. This).15 F(com-)3.384 E(mand is bound to)144 638.4 Q F2 -(M\255#)2.5 E F0(in emacs mode and to)2.5 E F2(#)2.5 E F0 -(in vi command mode.)2.5 E F2(completion\255ignor)108 650.4 Q -(e\255case \(Off\))-.18 E F0(If set to)144 662.4 Q F2(On)2.5 E F0 2.5 +-.25 G(lents.).25 E F1(comment\255begin \(`)108 196.8 Q(`#')-.63 E('\)) +-.63 E F0 .885(The string that is inserted when the readline)144 208.8 R +F1(insert\255comment)3.385 E F0 .884(command is e)3.384 F -.15(xe)-.15 G +3.384(cuted. This).15 F(com-)3.384 E(mand is bound to)144 220.8 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 232.8 Q +(e\255case \(Off\))-.18 E F0(If set to)144 244.8 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 F2 -(completion\255query\255items \(100\))108 674.4 Q F0 .529 -(This determines when the user is queried about vie)144 686.4 R .53 +insensiti)-2.5 E .3 -.15(ve f)-.25 H(ashion.).05 E F1(completion\255pr) +108 256.8 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 268.8 R 1.275(without modi\214cation.)144 280.8 R +1.275(When set to a v)6.275 F 1.274 +(alue greater than zero, common pre\214x)-.25 F 1.274 +(es longer than this)-.15 F -.25(va)144 292.8 S(lue are replaced with a\ +n ellipsis when displaying possible completions.).25 E F1 +(completion\255query\255items \(100\))108 304.8 Q F0 .529 +(This determines when the user is queried about vie)144 316.8 R .53 (wing the number of possible completions gen-)-.25 F .561(erated by the) -144 698.4 R F2(possible\255completions)3.061 E F0 3.061(command. It) +144 328.8 R F1(possible\255completions)3.061 E F0 3.061(command. It) 3.061 F .561(may be set to an)3.061 F 3.06(yi)-.15 G(nte)-3.06 E .56 (ger v)-.15 F .56(alue greater than or)-.25 F .782(equal to zero.)144 -710.4 R .783(If the number of possible completions is greater than or e\ -qual to the v)5.782 F .783(alue of this)-.25 F -.25(va)144 722.4 S .237 +340.8 R .783(If the number of possible completions is greater than or e\ +qual to the v)5.782 F .783(alue of this)-.25 F -.25(va)144 352.8 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(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(33)198.445 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(on the terminal.)144 84 Q/F1 10/Times-Bold@0 SF(con)108 96 Q -.1 -(ve)-.4 G(rt\255meta \(On\)).1 E F0 .612(If set to)144 108 R F1(On)3.112 -E F0 3.112(,r)C .613(eadline will con)-3.112 F -.15(ve)-.4 G .613 -(rt characters with the eighth bit set to an ASCII k).15 F .913 -.15 -(ey s)-.1 H .613(equence by).15 F .541 +.237(re simply listed)-2.737 F(on the terminal.)144 364.8 Q F1(con)108 +376.8 Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .612(If set to)144 388.8 +R F1(On)3.112 E F0 3.112(,r)C .613(eadline will con)-3.112 F -.15(ve)-.4 +G .613(rt characters with the eighth bit set to an ASCII k).15 F .913 +-.15(ey s)-.1 H .613(equence by).15 F .541 (stripping the eighth bit and pre\214xing an escape character \(in ef) -144 120 R .541(fect, using escape as the)-.25 F/F2 10/Times-Italic@0 SF -.541(meta pr)3.041 F(e-)-.37 E<8c78>144 132 Q F0(\).)A F1 -(disable\255completion \(Off\))108 144 Q F0 .038(If set to)144 156 R F1 -(On)2.538 E F0 2.538(,r)C .038(eadline will inhibit w)-2.538 F .038 +144 400.8 R .541(fect, using escape as the)-.25 F/F2 10/Times-Italic@0 +SF .541(meta pr)3.041 F(e-)-.37 E<8c78>144 412.8 Q F0(\).)A F1 +(disable\255completion \(Off\))108 424.8 Q F0 .038(If set to)144 436.8 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 168 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 180 Q F0 .253 -(Controls whether readline be)144 192 R .253(gins with a set of k)-.15 F -.553 -.15(ey b)-.1 H .253(indings similar to).15 F F2(emacs)2.752 E F0 +144 448.8 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 460.8 Q F0 .253 +(Controls whether readline be)144 472.8 R .253(gins with a set of k)-.15 +F .553 -.15(ey b)-.1 H .253(indings similar to).15 F F2(emacs)2.752 E F0 (or)2.752 E F2(vi)2.752 E F0(.)A F1(editing\255mode)5.252 E F0 -(can be set to either)144 204 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E -F0(.)A F1(enable\255k)108 216 Q(eypad \(Off\))-.1 E F0 .892(When set to) -144 228 R F1(On)3.393 E F0 3.393(,r)C .893 +(can be set to either)144 484.8 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E +F0(.)A F1(enable\255k)108 496.8 Q(eypad \(Off\))-.1 E F0 .892 +(When set to)144 508.8 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 240 Q 2.5(wk)-.25 G -.15(ey)-2.6 -G(s.).15 E F1(expand\255tilde \(Off\))108 252 Q F0(If set to)144 264 Q -F1(on)2.5 E F0 2.5(,t)C(ilde e)-2.5 E +(tems need this to enable the arro)144 520.8 Q 2.5(wk)-.25 G -.15(ey) +-2.6 G(s.).15 E F1(expand\255tilde \(Off\))108 532.8 Q F0(If set to)144 +544.8 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 276 Q(eser)-.18 E -.1(ve)-.1 G -(\255point \(Off\)).1 E F0 1.493(If set to)144 288 R F1(on)3.993 E F0 +-.1 E F1(history\255pr)108 556.8 Q(eser)-.18 E -.1(ve)-.1 G +(\255point \(Off\)).1 E F0 1.493(If set to)144 568.8 R F1(on)3.993 E F0 3.993(,t)C 1.493(he history code attempts to place point at the same lo\ -cation on each history line)-3.993 F(retrie)144 300 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 312 -Q F0 .462(Set the maximum number of history entries sa)144 324 R -.15 -(ve)-.2 G 2.963(di).15 G 2.963(nt)-2.963 G .463(he history list.)-2.963 -F .463(If set to zero, the number of)5.463 F -(entries in the history list is not limited.)144 336 Q F1 -(horizontal\255scr)108 348 Q(oll\255mode \(Off\))-.18 E F0 .449 -(When set to)144 360 R F1(On)2.949 E F0 2.949(,m)C(ak)-2.949 E .448 +cation on each history line)-3.993 F(retrie)144 580.8 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 +592.8 Q F0 .462(Set the maximum number of history entries sa)144 604.8 R +-.15(ve)-.2 G 2.963(di).15 G 2.963(nt)-2.963 G .463(he history list.) +-2.963 F .463(If set to zero, the number of)5.463 F +(entries in the history list is not limited.)144 616.8 Q F1 +(horizontal\255scr)108 628.8 Q(oll\255mode \(Off\))-.18 E F0 .449 +(When set to)144 640.8 R F1(On)2.949 E F0 2.949(,m)C(ak)-2.949 E .448 (es readline use a single line for display)-.1 F 2.948(,s)-.65 G .448 (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 372 R(w)-.25 E(line.)144 384 Q F1(input\255meta \(Off\))108 396 -Q F0 .228(If set to)144 408 R F1(On)2.728 E F0 2.728(,r)C .227(eadline \ -will enable eight-bit input \(that is, it will not strip the high bit f\ -rom the char)-2.728 F(-)-.2 E .956(acters it reads\), re)144 420 R -.05 -(ga)-.15 G .956(rdless of what the terminal claims it can support.).05 F -.957(The name)5.956 F F1(meta\255\215ag)3.457 E F0 .957(is a)3.457 F -(synon)144 432 Q(ym for this v)-.15 E(ariable.)-.25 E F1(isear)108 444 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 456 R -.15(xe)-.15 G(cut-).15 E .934 -(ing the character as a command.)144 468 R .935(If this v)5.935 F .935 -(ariable has not been gi)-.25 F -.15(ve)-.25 G 3.435(nav).15 G .935 -(alue, the characters)-3.685 F F2(ESC)3.435 E F0(and)144 480 Q F2 -(C\255J)2.5 E F0(will terminate an incremental search.)2.5 E F1 -.1(ke) -108 492 S(ymap \(emacs\)).1 E F0 2.021(Set the current readline k)144 -504 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.02 + ne)144 652.8 R(w)-.25 E(line.)144 664.8 Q F1(input\255meta \(Off\))108 +676.8 Q F0 .228(If set to)144 688.8 R F1(On)2.728 E F0 2.728(,r)C .227(\ +eadline will enable eight-bit input \(that is, it will not strip the hi\ +gh bit from the char)-2.728 F(-)-.2 E .956(acters it reads\), re)144 +700.8 R -.05(ga)-.15 G .956 +(rdless of what the terminal claims it can support.).05 F .957(The name) +5.956 F F1(meta\255\215ag)3.457 E F0 .957(is a)3.457 F(synon)144 712.8 Q +(ym for this v)-.15 E(ariable.)-.25 E(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(34)197.335 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(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 .934(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.435(nav).15 G .935(alue, the characters)-3.685 F/F2 10 +/Times-Italic@0 SF(ESC)3.435 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.021(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.02 (emacs, emacs\255standar)4.52 F(d,)-.37 E .068 -(emacs\255meta, emacs\255ctlx, vi, vi\255command)144 516 R F0 2.568(,a)C +(emacs\255meta, emacs\255ctlx, vi, vi\255command)144 156 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.569 E F0(;)A F2(emacs)2.569 E F0 1.544(is equi)144 528 R -.25(va)-.25 +2.569 E F0(;)A F2(emacs)2.569 E F0 1.544(is equi)144 168 R -.25(va)-.25 G 1.544(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.043 E F0(also)4.043 E(af)144 540 Q(fects the def)-.25 -E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1(mark\255dir)108 552 Q -(ectories \(On\))-.18 E F0(If set to)144 564 Q F1(On)2.5 E F0 2.5(,c)C +(editing\255mode)4.043 E F0(also)4.043 E(af)144 180 Q(fects the def)-.25 +E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1(mark\255dir)108 192 Q +(ectories \(On\))-.18 E F0(If set to)144 204 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 576 Q F0(If set to)144 -588 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 216 Q F0(If set to)144 +228 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 600 Q(ed\255dir)-.1 E -(ectories \(Off\))-.18 E F0 .175(If set to)144 612 R F1(On)2.675 E F0 +(*)A F0(\).)A F1(mark\255symlink)108 240 Q(ed\255dir)-.1 E +(ectories \(Off\))-.18 E F0 .175(If set to)144 252 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 624 +-.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 264 Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A F1 -(match\255hidden\255\214les \(On\))108 636 Q F0 .193(This v)144 648 R +(match\255hidden\255\214les \(On\))108 276 Q F0 .193(This v)144 288 R .193(ariable, when set to)-.25 F F1(On)2.693 E F0 2.693(,c)C .192 (auses readline to match \214les whose names be)-2.693 F .192 (gin with a `.)-.15 F 2.692('\()-.7 G(hidden)-2.692 E 1.023 (\214les\) when performing \214lename completion, unless the leading `.) -144 660 R 3.523('i)-.7 G 3.523(ss)-3.523 G 1.024 -(upplied by the user in the)-3.523 F(\214lename to be completed.)144 672 -Q F1(output\255meta \(Off\))108 684 Q F0 .507(If set to)144 696 R F1(On) +144 300 R 3.523('i)-.7 G 3.523(ss)-3.523 G 1.024 +(upplied by the user in the)-3.523 F(\214lename to be completed.)144 312 +Q F1(output\255meta \(Off\))108 324 Q F0 .507(If set to)144 336 R F1(On) 3.007 E F0 3.007(,r)C .507(eadline will display characters with the eig\ -hth bit set directly rather than as a meta-)-3.007 F(pre\214x)144 708 Q -(ed escape sequence.)-.15 E(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E -(34)198.445 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(page\255completions \(On\))108 84 Q F0 .808 -(If set to)144 96 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 108 Q F1 -(print\255completions\255horizontally \(Off\))108 120 Q F0 1.319 -(If set to)144 132 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline will dis\ +hth bit set directly rather than as a meta-)-3.007 F(pre\214x)144 348 Q +(ed escape sequence.)-.15 E F1(page\255completions \(On\))108 360 Q F0 +.808(If set to)144 372 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(ager to display a screenful of possible comple-) +-3.308 F(tions at a time.)144 384 Q F1 +(print\255completions\255horizontally \(Off\))108 396 Q F0 1.319 +(If set to)144 408 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 144 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25 -E F1(sho)108 156 Q(w\255all\255if\255ambiguous \(Off\))-.1 E F0 .477 -(This alters the def)144 168 R .477(ault beha)-.1 F .477 +F(order)144 420 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25 +E F1 -2.29 -.18(re v)108 432 T(ert\255all\255at\255newline \(Off\)).08 E +F0 .872(If set to)144 444 R F1(on)3.372 E F0 3.372(,r)C .873 +(eadline will undo all changes to history lines before returning when) +-3.372 F F1(accept\255line)3.373 E F0(is)3.373 E -.15(exe)144 456 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 468 S(adline) +.18 E F0(.)A F1(sho)108 480 Q(w\255all\255if\255ambiguous \(Off\))-.1 E +F0 .477(This alters the def)144 492 R .477(ault beha)-.1 F .477 (vior of the completion functions.)-.2 F .478(If set to)5.478 F F1(on) 2.978 E F0 2.978(,w)C .478(ords which ha)-3.078 F .778 -.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 180 R(bell.)144 192 Q F1 -(sho)108 204 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345 -(This alters the def)144 216 R 5.345(ault beha)-.1 F 5.345 +isted immediately instead of ringing the)144 504 R(bell.)144 516 Q F1 +(sho)108 528 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345 +(This alters the def)144 540 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 228 Q(w\255all\255if\255ambiguous)-.1 E F0 6.923(.I)C +-.1 F F1(sho)144 552 Q(w\255all\255if\255ambiguous)-.1 E F0 6.923(.I)C 4.423(fs)-6.923 G 1.923(et to)-4.423 F F1(on)4.423 E F0 4.423(,w)C 1.923 (ords which ha)-4.523 F 2.222 -.15(ve m)-.2 H 1.922 -(ore than one possible completion).15 F 1.039(without an)144 240 R 3.539 +(ore than one possible completion).15 F 1.039(without an)144 564 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 252 Q F1 -(visible\255stats \(Off\))108 264 Q F0 .847(If set to)144 276 R F1(On) +s to be listed immediately instead of ringing the bell.)144 576 Q F1 +(visible\255stats \(Off\))108 588 Q F0 .847(If set to)144 600 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(stat)3.346 E F0 .846 (\(2\) is appended to the \214lename)B -(when listing possible completions.)144 288 Q F1 -(Readline Conditional Constructs)87 304.8 Q F0 .05 -(Readline implements a f)108 316.8 R .05(acility similar in spirit to t\ +(when listing possible completions.)144 612 Q F1 +(Readline Conditional Constructs)87 628.8 Q F0 .05 +(Readline implements a f)108 640.8 R .05(acility similar in spirit to t\ he conditional compilation features of the C preprocessor)-.1 F .097 -(which allo)108 328.8 R .097(ws k)-.25 F .396 -.15(ey b)-.1 H .096 +(which allo)108 652.8 R .097(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 .096 -(There are four parser)5.096 F(directi)108 340.8 Q -.15(ve)-.25 G 2.5 -(su).15 G(sed.)-2.5 E F1($if)108 357.6 Q F0(The)24.89 E F1($if)2.962 E +(There are four parser)5.096 F(directi)108 664.8 Q -.15(ve)-.25 G 2.5 +(su).15 G(sed.)-2.5 E F1($if)108 681.6 Q F0(The)24.89 E F1($if)2.962 E F0 .462(construct allo)2.962 F .463(ws bindings to be made based on the\ editing mode, the terminal being used,)-.25 F .478 -(or the application using readline.)144 369.6 R .477(The te)5.477 F .477 +(or the application using readline.)144 693.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 381.6 Q F1(mode)144 398.4 Q F0(The) -12.67 E F1(mode=)3.711 E F0 1.211(form of the)3.711 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 +(are required to isolate it.)144 705.6 Q(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(35)197.335 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/F1 10/Times-Bold@0 SF(mode)144 84 Q F0(The)12.67 E F1(mode=)3.711 +E F0 1.211(form of the)3.711 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 410.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 422.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 434.4 -Q F1(term)144 451.2 Q F0(The)15.46 E F1(term=)3.197 E F0 .696 +(mode. This)180 96 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 108 R/F2 10/Times-Italic@0 SF +(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 120 Q F1(term)144 136.8 Q F0(The)15.46 E F1 +(term=)3.197 E F0 .696 (form may be used to include terminal-speci\214c k)3.197 F .996 -.15 -(ey b)-.1 H .696(indings, perhaps to bind).15 F .654(the k)180 463.2 R +(ey b)-.1 H .696(indings, perhaps to bind).15 F .654(the k)180 148.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 475.2 Q F1(=)3.232 +(wo)3.154 G .654(rd on the right side of).1 F(the)180 160.8 Q F1(=)3.232 E F0 .732(is tested ag)3.232 F .732(ainst the both full name of the ter\ minal and the portion of the terminal)-.05 F(name before the \214rst)180 -487.2 Q F12.5 E F0 5(.T)C(his allo)-5 E(ws)-.25 E F2(sun)2.84 E F0 +172.8 Q F12.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 504 Q F0(The)180 516 -Q F1(application)3.003 E F0 .503 +2.5(,f).77 G(or instance.)-2.5 E F1(application)144 189.6 Q F0(The)180 +201.6 Q F1(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 -528 R F2 .114(application name)2.614 F F0 2.614(,a)C .114 +213.6 R F2 .114(application name)2.614 F F0 2.614(,a)C .114 (nd an initialization \214le can test for a)-2.614 F .5(particular v)180 -540 R 3(alue. This)-.25 F .501(could be used to bind k)3 F .801 -.15 +225.6 R 3(alue. This)-.25 F .501(could be used to bind k)3 F .801 -.15 (ey s)-.1 H .501(equences to functions useful for a spe-).15 F .397 -(ci\214c program.)180 552 R -.15(Fo)5.397 G 2.896(ri).15 G .396 +(ci\214c program.)180 237.6 R -.15(Fo)5.397 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 .396(equence that quotes the).15 F(current or pre)180 564 Q -(vious w)-.25 E(ord in Bash:)-.1 E F1($if)180 588 Q F0(Bash)2.5 E 2.5 -(#Q)180 600 S(uote the current or pre)-2.5 E(vious w)-.25 E(ord)-.1 E -("\\C\255xq": "\\eb\\"\\ef\\"")180 612 Q F1($endif)180 624 Q($endif)108 -640.8 Q F0(This command, as seen in the pre)9.33 E(vious e)-.25 E +(ey s)-.1 H .396(equence that quotes the).15 F(current or pre)180 249.6 +Q(vious w)-.25 E(ord in Bash:)-.1 E F1($if)180 273.6 Q F0(Bash)2.5 E 2.5 +(#Q)180 285.6 S(uote the current or pre)-2.5 E(vious w)-.25 E(ord)-.1 E +("\\C\255xq": "\\eb\\"\\ef\\"")180 297.6 Q F1($endif)180 309.6 Q($endif) +108 326.4 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 657.6 Q F0(Commands in this branch of the)15.45 E F1($if)2.5 E F0 +108 343.2 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 674.4 Q F0 .356 -(This directi)144 686.4 R .656 -.15(ve t)-.25 H(ak).15 E .356 +(cuted if the test f).15 E(ails.)-.1 E F1($include)108 360 Q F0 .356 +(This directi)144 372 R .656 -.15(ve t)-.25 H(ak).15 E .356 (es a single \214lename as an ar)-.1 F .357 (gument and reads commands and bindings from that)-.18 F 2.5(\214le. F) -144 698.4 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3 +144 384 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 722.4 Q F2(/etc/inputr)5.833 E(c)-.37 E F0(GNU Bash-3.2)72 -768 Q(2008 April 5)148.455 E(35)198.445 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/F1 10/Times-Bold@0 SF(Sear)87 84 Q(ching)-.18 E F0 .835 -(Readline pro)108 96 R .835 +($include)144 408 Q F2(/etc/inputr)5.833 E(c)-.37 E F1(Sear)87 424.8 Q +(ching)-.18 E F0 .835(Readline pro)108 436.8 R .835 (vides commands for searching through the command history \(see)-.15 F -/F2 9/Times-Bold@0 SF(HIST)3.334 E(OR)-.162 E(Y)-.315 E F0(belo)3.084 E -.834(w\) for lines)-.25 F(containing a speci\214ed string.)108 108 Q -(There are tw)5 E 2.5(os)-.1 G(earch modes:)-2.5 E/F3 10/Times-Italic@0 -SF(incr)2.51 E(emental)-.37 E F0(and)3.01 E F3(non-incr)2.5 E(emental) --.37 E F0(.).51 E .697(Incremental searches be)108 124.8 R .697 +/F3 9/Times-Bold@0 SF(HIST)3.334 E(OR)-.162 E(Y)-.315 E F0(belo)3.084 E +.834(w\) for lines)-.25 F(containing a speci\214ed string.)108 448.8 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 .697(Incremental searches be)108 465.6 R .697 (gin before the user has \214nished typing the search string.)-.15 F .698(As each character of the)5.698 F .113 -(search string is typed, readline displays the ne)108 136.8 R .112 +(search string is typed, readline displays the ne)108 477.6 R .112 (xt entry from the history matching the string typed so f)-.15 F(ar)-.1 E 5.112(.A)-.55 G(n)-5.112 E .542 -(incremental search requires only as man)108 148.8 R 3.042(yc)-.15 G +(incremental search requires only as man)108 489.6 R 3.042(yc)-.15 G .542(haracters as needed to \214nd the desired history entry)-3.042 F 5.542(.T)-.65 G .542(he char)-5.542 F(-)-.2 E .224 -(acters present in the v)108 160.8 R .224(alue of the)-.25 F F1(isear) +(acters present in the v)108 501.6 R .224(alue of the)-.25 F F1(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 172.8 R .66(ariable has not been assigned a v)-.25 F .66 +(If that v)108 513.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 .097(mental search.)108 184.8 R .096(Control-G will abort an incremen\ +F .097(mental search.)108 525.6 R .096(Control-G will abort an incremen\ tal search and restore the original line.)5.097 F .096 (When the search is)5.096 F(terminated, the history entry containing th\ -e search string becomes the current line.)108 196.8 Q 2.938 -.8(To \214) -108 213.6 T 1.339(nd other matching entries in the history list, type C\ +e search string becomes the current line.)108 537.6 Q 2.938 -.8(To \214) +108 554.4 T 1.339(nd other matching entries in the history list, type C\ ontrol-S or Control-R as appropriate.).8 F 1.339(This will)6.339 F .675 -(search backw)108 225.6 R .675(ard or forw)-.1 F .675 +(search backw)108 566.4 R .675(ard or forw)-.1 F .675 (ard in the history for the ne)-.1 F .674 (xt entry matching the search string typed so f)-.15 F(ar)-.1 E 5.674 -(.A)-.55 G -.15(ny)-5.674 G .174(other k)108 237.6 R .474 -.15(ey s)-.1 +(.A)-.55 G -.15(ny)-5.674 G .174(other k)108 578.4 R .474 -.15(ey s)-.1 H .174 (equence bound to a readline command will terminate the search and e).15 F -.15(xe)-.15 G .175(cute that command.).15 F -.15(Fo)5.175 G(r).15 E -.541(instance, a)108 249.6 R F3(ne)3.041 E(wline)-.15 E F0 .541 +.541(instance, a)108 590.4 R F2(ne)3.041 E(wline)-.15 E F0 .541 (will terminate the search and accept the line, thereby e)3.041 F -.15 -(xe)-.15 G .54(cuting the command from the).15 F(history list.)108 261.6 -Q .653(Readline remembers the last incremental search string.)108 278.4 +(xe)-.15 G .54(cuting the command from the).15 F(history list.)108 602.4 +Q .653(Readline remembers the last incremental search string.)108 619.2 R .653(If tw)5.653 F 3.153(oC)-.1 G .653(ontrol-Rs are typed without an) -3.153 F 3.153(yi)-.15 G(nterv)-3.153 E(en-)-.15 E -(ing characters de\214ning a ne)108 290.4 Q 2.5(ws)-.25 G +(ing characters de\214ning a ne)108 631.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 307.2 R(The searc\ -h string may be typed by the user or be part of the contents of the cur\ -rent line.)108 319.2 Q F1(Readline Command Names)87 336 Q F0 1.391 -(The follo)108 348 R 1.391 +re starting to search for matching history lines.)108 648 R(The search \ +string may be typed by the user or be part of the contents of the curre\ +nt line.)108 660 Q F1(Readline Command Names)87 676.8 Q F0 1.391 +(The follo)108 688.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.892(ya)-.15 G(re)-3.892 E 2.622(bound. Command)108 360 R .122 +3.892(ya)-.15 G(re)-3.892 E 2.622(bound. Command)108 700.8 R .122 (names without an accompan)2.622 F .122(ying k)-.15 F .421 -.15(ey s)-.1 H .121(equence are unbound by def).15 F 2.621(ault. In)-.1 F .121 -(the follo)2.621 F(wing)-.25 E(descriptions,)108 372 Q F3(point)3.41 E -F0 .91(refers to the current cursor position, and)3.41 F F3(mark)3.411 E +(the follo)2.621 F(wing)-.25 E(descriptions,)108 712.8 Q F2(point)3.41 E +F0 .91(refers to the current cursor position, and)3.41 F F2(mark)3.411 E F0 .911(refers to a cursor position sa)3.411 F -.15(ve)-.2 G 3.411(db) -.15 G 3.411(yt)-3.411 G(he)-3.411 E F1(set\255mark)108 384 Q F0 2.5 +.15 G 3.411(yt)-3.411 G(he)-3.411 E F1(set\255mark)108 724.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 F3 -.37(re) -2.5 G(gion)-.03 E F0(.)A F1(Commands f)87 400.8 Q(or Mo)-.25 E(ving)-.1 -E(beginning\255of\255line \(C\255a\))108 412.8 Q F0(Mo)144 424.8 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 436.8 Q F0(Mo)144 448.8 Q .3 -.15 -(ve t)-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E F1 -.25(fo)108 -460.8 S(rward\255char \(C\255f\)).25 E F0(Mo)144 472.8 Q .3 -.15(ve f) --.15 H(orw).15 E(ard a character)-.1 E(.)-.55 E F1 -(backward\255char \(C\255b\))108 484.8 Q F0(Mo)144 496.8 Q .3 -.15(ve b) --.15 H(ack a character).15 E(.)-.55 E F1 -.25(fo)108 508.8 S(rward\255w) -.25 E(ord \(M\255f\))-.1 E F0(Mo)144 520.8 Q .823 -.15(ve f)-.15 H(orw) -.15 E .523(ard to the end of the ne)-.1 F .523(xt w)-.15 F 3.023(ord. W) --.1 F .522(ords are composed of alphanumeric characters \(let-)-.8 F -(ters and digits\).)144 532.8 Q F1(backward\255w)108 544.8 Q -(ord \(M\255b\))-.1 E F0(Mo)144 556.8 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 568.8 Q F1(clear\255scr)108 -580.8 Q(een \(C\255l\))-.18 E F0 .993(Clear the screen lea)144 592.8 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 604.8 Q F1 -.18(re)108 -616.8 S(draw\255curr).18 E(ent\255line)-.18 E F0 -(Refresh the current line.)144 628.8 Q F1(Commands f)87 645.6 Q -(or Manipulating the History)-.25 E(accept\255line \(Newline, Retur)108 -657.6 Q(n\))-.15 E F0 .158(Accept the line re)144 669.6 R -.05(ga)-.15 G -.158(rdless of where the cursor is.).05 F .158 -(If this line is non-empty)5.158 F 2.659(,a)-.65 G .159 -(dd it to the history list)-2.659 F .699(according to the state of the) -144 681.6 R F2(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 693.6 Q F1(pr)108 -705.6 Q -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0 -(Fetch the pre)144 717.6 Q(vious command from the history list, mo)-.25 -E(ving back in the list.)-.15 E(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(36)198.445 E 0 Cg EP +(xt between the point and mark is referred to as the)-.15 E F2 -.37(re) +2.5 G(gion)-.03 E F0(.)A(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(36) +197.335 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(next\255history \(C\255n\))108 84 Q F0 -(Fetch the ne)144 96 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 108 Q F0(Mo)144 120 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 132 Q F0(Mo)144 144 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 -156 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0 1.47 -(Search backw)144 168 R 1.471(ard starting at the current line and mo) --.1 F 1.471(ving `up' through the history as necessary)-.15 F(.)-.65 E -(This is an incremental search.)144 180 Q F1 -.25(fo)108 192 S +-.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 .823 -.15(ve f)-.15 H(orw).15 E .523(ard to the end of the ne)-.1 F +.523(xt w)-.15 F 3.023(ord. W)-.1 F .522 +(ords are composed of alphanumeric characters \(let-)-.8 F +(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 252 Q F1(clear\255scr)108 264 Q +(een \(C\255l\))-.18 E F0 .993(Clear the screen lea)144 276 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 288 Q F1 -.18(re)108 300 +S(draw\255curr).18 E(ent\255line)-.18 E F0(Refresh the current line.)144 +312 Q F1(Commands f)87 328.8 Q(or Manipulating the History)-.25 E +(accept\255line \(Newline, Retur)108 340.8 Q(n\))-.15 E F0 .158 +(Accept the line re)144 352.8 R -.05(ga)-.15 G .158 +(rdless of where the cursor is.).05 F .158(If this line is non-empty) +5.158 F 2.659(,a)-.65 G .159(dd it to the history list)-2.659 F .699 +(according to the state of the)144 364.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 376.8 Q F1(pr)108 +388.8 Q -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0 +(Fetch the pre)144 400.8 Q(vious command from the history list, mo)-.25 +E(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 412.8 +Q F0(Fetch the ne)144 424.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 436.8 Q F0(Mo)144 448.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 460.8 Q F0(Mo)144 472.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 484.8 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0 +1.47(Search backw)144 496.8 R 1.471 +(ard starting at the current line and mo)-.1 F 1.471 +(ving `up' through the history as necessary)-.15 F(.)-.65 E +(This is an incremental search.)144 508.8 Q F1 -.25(fo)108 520.8 S (rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.132 -(Search forw)144 204 R 1.132(ard starting at the current line and mo)-.1 -F 1.131(ving `do)-.15 F 1.131(wn' through the history as necessary)-.25 -F(.)-.65 E(This is an incremental search.)144 216 Q F1(non\255incr)108 -228 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H(rse\255sear).15 E -(ch\255history \(M\255p\))-.18 E F0 .164(Search backw)144 240 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 252 S(tring supplied by the user)-2.5 E -(.)-.55 E F1(non\255incr)108 264 Q(emental\255f)-.18 E(orward\255sear) --.25 E(ch\255history \(M\255n\))-.18 E F0 1.354(Search forw)144 276 R -1.354(ard through the history using a non-incremental search for a stri\ -ng supplied by the)-.1 F(user)144 288 Q(.)-.55 E F1(history\255sear)108 -300 Q(ch\255f)-.18 E(orward)-.25 E F0 .248(Search forw)144 312 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 324 Q -(This is a non-incremental search.)5 E F1(history\255sear)108 336 Q -(ch\255backward)-.18 E F0 .951(Search backw)144 348 R .951(ard through \ -the history for the string of characters between the start of the curre\ -nt)-.1 F(line and the point.)144 360 Q -(This is a non-incremental search.)5 E F1(yank\255nth\255ar)108 372 Q -2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622(Insert the \214rst ar)144 384 -R .622(gument to the pre)-.18 F .622 +(Search forw)144 532.8 R 1.132(ard starting at the current line and mo) +-.1 F 1.131(ving `do)-.15 F 1.131(wn' through the history as necessary) +-.25 F(.)-.65 E(This is an incremental search.)144 544.8 Q F1 +(non\255incr)108 556.8 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H +(rse\255sear).15 E(ch\255history \(M\255p\))-.18 E F0 .164(Search backw) +144 568.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 580.8 S +(tring supplied by the user)-2.5 E(.)-.55 E F1(non\255incr)108 592.8 Q +(emental\255f)-.18 E(orward\255sear)-.25 E(ch\255history \(M\255n\))-.18 +E F0 1.354(Search forw)144 604.8 R 1.354(ard through the history using \ +a non-incremental search for a string supplied by the)-.1 F(user)144 +616.8 Q(.)-.55 E F1(history\255sear)108 628.8 Q(ch\255f)-.18 E(orward) +-.25 E F0 .248(Search forw)144 640.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 652.8 Q(This is a non-incremental search.)5 E F1 +(history\255sear)108 664.8 Q(ch\255backward)-.18 E F0 .951(Search backw) +144 676.8 R .951(ard through the history for the string of characters b\ +etween the start of the current)-.1 F(line and the point.)144 688.8 Q +(This is a non-incremental search.)5 E F1(yank\255nth\255ar)108 700.8 Q +2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622(Insert the \214rst ar)144 +712.8 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 .795(at point.)144 396 R -.4(Wi)5.795 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 +.622(vious line\))-.25 F .795(at point.)144 724.8 R -.4(Wi)5.795 G .794 +(th an ar).4 F(gument)-.18 E/F3 10/Times-Italic@0 SF(n)3.294 E F0 3.294 +(,i).24 G .794(nsert the)-3.294 F F3(n)3.294 E F0 .794(th w)B .794 (ord from the pre)-.1 F .794(vious command \(the w)-.25 F .794 -(ords in the)-.1 F(pre)144 408 Q .291(vious command be)-.25 F .291 -(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 .292 -(ord from the end of)-.1 F .282(the pre)144 420 R .282(vious command.) --.25 F .282(Once the ar)5.282 F(gument)-.18 E F2(n)2.781 E F0 .281 -(is computed, the ar)2.781 F .281(gument is e)-.18 F .281 -(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 432 Q -(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 444 Q -2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.307 -(Insert the last ar)144 456 R 1.307(gument to the pre)-.18 F 1.307 -(vious command \(the last w)-.25 F 1.308(ord of the pre)-.1 F 1.308 -(vious history entry\).)-.25 F -.4(Wi)144 468 S .736(th an ar).4 F .736 -(gument, beha)-.18 F 1.036 -.15(ve ex)-.2 H .736(actly lik).15 F(e)-.1 E -F1(yank\255nth\255ar)3.235 E(g)-.1 E F0 5.735(.S)C(uccessi)-5.735 E -1.035 -.15(ve c)-.25 H .735(alls to).15 F F1(yank\255last\255ar)3.235 E -(g)-.1 E F0(mo)3.235 E -.15(ve)-.15 G .728 -(back through the history list, inserting the last ar)144 480 R .728 -(gument of each line in turn.)-.18 F .729(The history e)5.728 F(xpan-) --.15 E .14(sion f)144 492 R .14(acilities are used to e)-.1 F .14 -(xtract the last ar)-.15 F .14(gument, as if the "!$" history e)-.18 F -.14(xpansion had been speci-)-.15 F(\214ed.)144 504 Q F1 -(shell\255expand\255line \(M\255C\255e\))108 516 Q F0 .622 -(Expand the line as the shell does.)144 528 R .622 +(ords in the)-.1 F(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(37) +197.335 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(pre)144 84 Q .291(vious command be)-.25 F .291(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/F1 10 +/Times-Italic@0 SF(n)2.791 E F0 .291(th w)B .292(ord from the end of)-.1 +F .282(the pre)144 96 R .282(vious command.)-.25 F .282(Once the ar) +5.282 F(gument)-.18 E F1(n)2.781 E F0 .281(is computed, the ar)2.781 F +.281(gument is e)-.18 F .281(xtracted as if the "!)-.15 F F1(n)A F0(")A +(history e)144 108 Q(xpansion had been speci\214ed.)-.15 E/F2 10 +/Times-Bold@0 SF(yank\255last\255ar)108 120 Q 2.5(g\()-.1 G -1.667 +(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.307(Insert the last ar)144 +132 R 1.307(gument to the pre)-.18 F 1.307(vious command \(the last w) +-.25 F 1.308(ord of the pre)-.1 F 1.308(vious history entry\).)-.25 F +-.4(Wi)144 144 S .736(th an ar).4 F .736(gument, beha)-.18 F 1.036 -.15 +(ve ex)-.2 H .736(actly lik).15 F(e)-.1 E F2(yank\255nth\255ar)3.235 E +(g)-.1 E F0 5.735(.S)C(uccessi)-5.735 E 1.035 -.15(ve c)-.25 H .735 +(alls to).15 F F2(yank\255last\255ar)3.235 E(g)-.1 E F0(mo)3.235 E -.15 +(ve)-.15 G .728(back through the history list, inserting the last ar)144 +156 R .728(gument of each line in turn.)-.18 F .729(The history e)5.728 +F(xpan-)-.15 E .14(sion f)144 168 R .14(acilities are used to e)-.1 F +.14(xtract the last ar)-.15 F .14(gument, as if the "!$" history e)-.18 +F .14(xpansion had been speci-)-.15 F(\214ed.)144 180 Q F2 +(shell\255expand\255line \(M\255C\255e\))108 192 Q F0 .622 +(Expand the line as the shell does.)144 204 R .622 (This performs alias and history e)5.622 F .623 -(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 216 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 .939 -(Perform history e)144 564 R .939(xpansion on the current line.)-.15 F +(or a description of history e)-2.5 E(xpansion.)-.15 E F2 +(history\255expand\255line \(M\255^\))108 228 Q F0 .939 +(Perform history e)144 240 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.438(wf)-.25 G .938(or a descrip-) --3.438 F(tion of history e)144 576 Q(xpansion.)-.15 E F1(magic\255space) -108 588 Q F0 1.626(Perform history e)144 600 R 1.626 +-3.438 F(tion of history e)144 252 Q(xpansion.)-.15 E F2(magic\255space) +108 264 Q F0 1.626(Perform history e)144 276 R 1.626 (xpansion on the current line and insert a space.)-.15 F(See)6.627 E F3 (HIST)4.127 E(OR)-.162 E 3.877(YE)-.315 G(XP)-3.877 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 .395 -(Perform alias e)144 636 R .395(xpansion on the current line.)-.15 F +(belo)144 288 Q 2.5(wf)-.25 G(or a description of history e)-2.5 E +(xpansion.)-.15 E F2(alias\255expand\255line)108 300 Q F0 .395 +(Perform alias e)144 312 R .395(xpansion on the current line.)-.15 F (See)5.395 E F3(ALIASES)2.895 E F0(abo)2.645 E .694 -.15(ve f)-.15 H -.394(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-3.2)72 768 Q -(2008 April 5)148.455 E(37)198.445 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(operate\255and\255get\255next \(C\255o\)) -108 84 Q F0 .947(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.248 -.15 +.394(or a description of alias e).15 F(xpan-)-.15 E(sion.)144 324 Q F2 +(history\255and\255alias\255expand\255line)108 336 Q F0 +(Perform history and alias e)144 348 Q(xpansion on the current line.) +-.15 E F2(insert\255last\255ar)108 360 Q(gument \(M\255.)-.1 E 2.5(,M) +.833 G -1.667(\255_ \))-2.5 F F0 2.5(As)144 372 S(ynon)-2.5 E(ym for) +-.15 E F2(yank\255last\255ar)2.5 E(g)-.1 E F0(.)A F2 +(operate\255and\255get\255next \(C\255o\))108 384 Q F0 .947 +(Accept the current line for e)144 396 R -.15(xe)-.15 G .948 +(cution and fetch the ne).15 F .948(xt line relati)-.15 F 1.248 -.15 (ve t)-.25 H 3.448(ot).15 G .948(he current line from the)-3.448 F -(history for editing.)144 108 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 +(history for editing.)144 408 Q(An)5 E 2.5(ya)-.15 G -.18(rg)-2.5 G +(ument is ignored.).18 E F2 +(edit\255and\255execute\255command \(C\255xC\255e\))108 420 Q F0(In)144 +432 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 -($FCEDIT)2.6 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 .357 -(Delete the character at point.)144 184.8 R .358(If point is at the be) +(cute the result as shell commands.).15 F F2(Bash)6.026 E F0 +(attempts to in)144 444 Q -.2(vo)-.4 G -.1(ke).2 G F3($FCEDIT)2.6 E/F4 9 +/Times-Roman@0 SF(,)A F3($EDIT)2.25 E(OR)-.162 E F4(,)A F0(and)2.25 E F1 +(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 F2(Commands f)87 460.8 Q(or Changing T)-.25 E +(ext)-.92 E(delete\255char \(C\255d\))108 472.8 Q F0 .357 +(Delete the character at point.)144 484.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 .553 -(Delete the character behind the cursor)144 220.8 R 5.553(.W)-.55 G .553 +(line, and the last character typed w)144 496.8 Q(as not bound to)-.1 E +F2(delete\255char)2.5 E F0 2.5(,t)C(hen return)-2.5 E F3(EOF)2.5 E F4(.) +A F2(backward\255delete\255char \(Rubout\))108 508.8 Q F0 .553 +(Delete the character behind the cursor)144 520.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 .552(gument, sa)-.18 F .852 -.15(ve t)-.2 H .552(he deleted te).15 F -.552(xt on)-.15 F(the kill ring.)144 232.8 Q F1 -.25(fo)108 244.8 S +.552(xt on)-.15 F(the kill ring.)144 532.8 Q F2 -.25(fo)108 544.8 S (rward\255backward\255delete\255char).25 E F0 .473 -(Delete the character under the cursor)144 256.8 R 2.973(,u)-.4 G .474 +(Delete the character under the cursor)144 556.8 R 2.973(,u)-.4 G .474 (nless the cursor is at the end of the line, in which case the)-2.973 F -(character behind the cursor is deleted.)144 268.8 Q F1 -(quoted\255insert \(C\255q, C\255v\))108 280.8 Q F0 .779(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 568.8 Q F2 +(quoted\255insert \(C\255q, C\255v\))108 580.8 Q F0 .779(Add the ne)144 +592.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.278 E F0 3.278 -(,f)C(or)-3.278 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 .321 -(Drag the character before point forw)144 376.8 R .321(ard o)-.1 F -.15 +G .779(nsert characters lik)-3.279 F(e)-.1 E F2(C\255q)3.278 E F0 3.278 +(,f)C(or)-3.278 E -.15(ex)144 604.8 S(ample.).15 E F2 +(tab\255insert \(C\255v T)108 616.8 Q(AB\))-.9 E F0 +(Insert a tab character)144 628.8 Q(.)-.55 E F2 +(self\255insert \(a, b, A, 1, !, ...\))108 640.8 Q F0 +(Insert the character typed.)144 652.8 Q F2 +(transpose\255chars \(C\255t\))108 664.8 Q F0 .321 +(Drag the character before point forw)144 676.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 .322 (ving point forw)-.15 F .322(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.682(oc)-.1 G 1.182(haracters before point.)-3.682 F(Ne)6.182 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 .023(Drag the w)144 -424.8 R .023(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.524(rt).15 G .024(hat w) --2.524 F .024(ord as well.)-.1 F .024(If point)5.024 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.699(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.998 -.15(ve a)-.25 H -.18(rg).15 G 1.698 -(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.647 +688.8 R 3.682(oc)-.1 G 1.182(haracters before point.)-3.682 F(Ne)6.182 E +-.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 700.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(GNU Bash-4.0) +72 768 Q(2008 May 25)147.345 E(38)197.335 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(transpose\255w)108 84 Q(ords \(M\255t\))-.1 +E F0 .023(Drag the w)144 96 R .023(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.524(rt).15 G .024(hat w)-2.524 F .024(ord as well.)-.1 F .024 +(If point)5.024 F +(is at the end of the line, this transposes the last tw)144 108 Q 2.5 +(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 120 Q +(ord \(M\255u\))-.1 E F0 1.699(Uppercase the current \(or follo)144 132 +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.998 -.15(ve a)-.25 H -.18(rg).15 G 1.698 +(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 144 S(rd, b).1 E +(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 156 Q +(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 168 Q 1.647 (wercase the current \(or follo)-.25 F 1.647(wing\) w)-.25 F 4.147 (ord. W)-.1 F 1.648(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.948 -.15 (ve a)-.25 H -.18(rg).15 G 1.648(ument, lo).18 F 1.648(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.975(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.974 -(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 .437(ggle o).8 F -.15 -(ve)-.15 G .437(rwrite mode.).15 F -.4(Wi)5.437 G .437(th an e).4 F .437 +-.25 F(vious)-.25 E -.1(wo)144 180 S(rd, b).1 E(ut do not mo)-.2 E .3 +-.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 192 Q +(ord \(M\255c\))-.1 E F0 1.975(Capitalize the current \(or follo)144 204 +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.974 +(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 216 S(rd, b).1 +E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108 228 +S(rwrite\255mode).1 E F0 -.8(To)144 240 S .437(ggle o).8 F -.15(ve)-.15 +G .437(rwrite mode.).15 F -.4(Wi)5.437 G .437(th an e).4 F .437 (xplicit positi)-.15 F .738 -.15(ve n)-.25 H .438(umeric ar).15 F .438 (gument, switches to o)-.18 F -.15(ve)-.15 G .438(rwrite mode.).15 F -.4 -(Wi)144 580.8 S .781(th an e).4 F .781(xplicit non-positi)-.15 F 1.081 +(Wi)144 252 S .781(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 .78(This command af)5.781 F -(fects)-.25 E(only)144 592.8 Q F1(emacs)4.394 E F0(mode;)4.394 E F1(vi) +(fects)-.25 E(only)144 264 Q F1(emacs)4.394 E F0(mode;)4.394 E F1(vi) 4.394 E F0 1.894(mode does o)4.394 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.395 G(adline\(\)).37 E F0 1.895(starts in insert)4.395 F 3.969 -(mode. In)144 604.8 R -.15(ove)3.969 G 1.469 -(rwrite mode, characters bound to).15 F F1(self\255insert)3.969 E F0 -1.468(replace the te)3.969 F 1.468(xt at point rather than)-.15 F .957 -(pushing the te)144 616.8 R .957(xt to the right.)-.15 F .958 +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.395 G(adline\(\)).37 E F0 1.895 +(starts in insert)4.395 F 3.969(mode. In)144 276 R -.15(ove)3.969 G +1.469(rwrite mode, characters bound to).15 F F1(self\255insert)3.969 E +F0 1.468(replace the te)3.969 F 1.468(xt at point rather than)-.15 F +.957(pushing the te)144 288 R .957(xt to the right.)-.15 F .958 (Characters bound to)5.957 F F1(backward\255delete\255char)3.458 E F0 -.958(replace the character)3.458 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 +.958(replace the character)3.458 F(before point with a space.)144 300 Q +(By def)5 E(ault, this command is unbound.)-.1 E F1(Killing and Y)87 +316.8 Q(anking)-.85 E(kill\255line \(C\255k\))108 328.8 Q F0 +(Kill the te)144 340.8 Q(xt from point to the end of the line.)-.15 E F1 +(backward\255kill\255line \(C\255x Rubout\))108 352.8 Q F0(Kill backw) +144 364.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1 +(unix\255line\255discard \(C\255u\))108 376.8 Q F0(Kill backw)144 388.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-3.2)72 768 Q(2008 April 5)148.455 E -(38)198.445 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(kill\255whole\255line)108 84 Q F0 +-2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 400.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 .729 -(Kill from point to the end of the current w)144 120 R .728 +412.8 Q F1(kill\255w)108 424.8 Q(ord \(M\255d\))-.1 E F0 .729 +(Kill from point to the end of the current w)144 436.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 132 S +(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 448.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(unix\255w)108 168 Q -(ord\255rubout \(C\255w\))-.1 E F0 .364(Kill the w)144 180 R .364 +(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 460.8 Q +(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 472.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(unix\255w)108 484.8 Q +(ord\255rubout \(C\255w\))-.1 E F0 .364(Kill the w)144 496.8 R .364 (ord behind point, using white space as a w)-.1 F .365(ord boundary)-.1 F 5.365(.T)-.65 G .365(he killed te)-5.365 F .365(xt is sa)-.15 F -.15 (ve)-.2 G 2.865(do).15 G 2.865(nt)-2.865 G(he)-2.865 E(kill-ring.)144 -192 Q F1(unix\255\214lename\255rubout)108 204 Q F0 .167(Kill the w)144 -216 R .166 +508.8 Q F1(unix\255\214lename\255rubout)108 520.8 Q F0 .167(Kill the w) +144 532.8 R .166 (ord behind point, using white space and the slash character as the w) --.1 F .166(ord boundaries.)-.1 F(The)5.166 E(killed te)144 228 Q +-.1 F .166(ord boundaries.)-.1 F(The)5.166 E(killed te)144 544.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 240 Q F0 -(Delete all spaces and tabs around point.)144 252 Q F1(kill\255r)108 264 -Q(egion)-.18 E F0(Kill the te)144 276 Q(xt in the current re)-.15 E -(gion.)-.15 E F1(copy\255r)108 288 Q(egion\255as\255kill)-.18 E F0(Cop) -144 300 Q 2.5(yt)-.1 G(he te)-2.5 E(xt in the re)-.15 E +-2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 556.8 Q F0 +(Delete all spaces and tabs around point.)144 568.8 Q F1(kill\255r)108 +580.8 Q(egion)-.18 E F0(Kill the te)144 592.8 Q(xt in the current re) +-.15 E(gion.)-.15 E F1(copy\255r)108 604.8 Q(egion\255as\255kill)-.18 E +F0(Cop)144 616.8 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 312 Q(ord)-.1 E F0(Cop)144 324 Q 4.8(yt)-.1 G -2.3(he w)-4.8 F 2.3(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.301 -(ord boundaries are the same as)-.1 F F1(back-)4.801 E(ward\255w)144 336 -Q(ord)-.1 E F0(.)A F1(copy\255f)108 348 Q(orward\255w)-.25 E(ord)-.1 E -F0(Cop)144 360 Q 4.508(yt)-.1 G 2.008(he w)-4.508 F 2.008(ord follo)-.1 -F 2.008(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.007(.T) --.55 G 2.007(he w)-7.007 F 2.007(ord boundaries are the same as)-.1 F F1 --.25(fo)4.507 G -.37(r-).25 G(ward\255w)144 372 Q(ord)-.1 E F0(.)A F1 -(yank \(C\255y\))108 384 Q F0 -1(Ya)144 396 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 408 Q F0 -(Rotate the kill ring, and yank the ne)144 420 Q 2.5(wt)-.25 G 2.5 +(copy\255backward\255w)108 628.8 Q(ord)-.1 E F0(Cop)144 640.8 Q 4.8(yt) +-.1 G 2.3(he w)-4.8 F 2.3(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.301 +(ord boundaries are the same as)-.1 F F1(back-)4.801 E(ward\255w)144 +652.8 Q(ord)-.1 E F0(.)A F1(copy\255f)108 664.8 Q(orward\255w)-.25 E +(ord)-.1 E F0(Cop)144 676.8 Q 4.508(yt)-.1 G 2.008(he w)-4.508 F 2.008 +(ord follo)-.1 F 2.008(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 +E 7.007(.T)-.55 G 2.007(he w)-7.007 F 2.007 +(ord boundaries are the same as)-.1 F F1 -.25(fo)4.507 G -.37(r-).25 G +(ward\255w)144 688.8 Q(ord)-.1 E F0(.)A F1(yank \(C\255y\))108 700.8 Q +F0 -1(Ya)144 712.8 S(nk the top of the kill ring into the b)1 E(uf)-.2 E +(fer at point.)-.25 E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(39) +197.335 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/F1 10/Times-Bold@0 SF(yank\255pop \(M\255y\))108 84 Q F0 +(Rotate the kill ring, and yank the ne)144 96 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 436.8 Q -(guments)-.1 E(digit\255ar)108 448.8 Q +F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 112.8 Q +(guments)-.1 E(digit\255ar)108 124.8 Q (gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .641 -(Add this digit to the ar)144 460.8 R .641 +(Add this digit to the ar)144 136.8 R .641 (gument already accumulating, or start a ne)-.18 F 3.141(wa)-.25 G -.18 (rg)-3.141 G 3.142(ument. M\255\255).18 F .642(starts a ne)3.142 F(g-) --.15 E(ati)144 472.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1 -(uni)108 484.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .779 -(This is another w)144 496.8 R .779(ay to specify an ar)-.1 F 3.279 +-.15 E(ati)144 148.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1 +(uni)108 160.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .779 +(This is another w)144 172.8 R .779(ay to specify an ar)-.1 F 3.279 (gument. If)-.18 F .779(this command is follo)3.279 F .778 (wed by one or more digits,)-.25 F 1.376 (optionally with a leading minus sign, those digits de\214ne the ar)144 -508.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144 -520.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F1(uni) +184.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144 +196.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 .898(wise ignored.)144 532.8 R .898 +-.2 F(-)-.2 E .898(wise ignored.)144 208.8 R .898 (As a special case, if this command is immediately follo)5.898 F .898 (wed by a character that is)-.25 F .243 -(neither a digit or minus sign, the ar)144 544.8 R .243 +(neither a digit or minus sign, the ar)144 220.8 R .243 (gument count for the ne)-.18 F .243(xt command is multiplied by four) --.15 F 5.242(.T)-.55 G(he)-5.242 E(ar)144 556.8 Q .378 +-.15 F 5.242(.T)-.55 G(he)-5.242 E(ar)144 232.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 568.8 Q 2.5(,as)-.4 G(econd time mak) +.378(gument count)-.18 F(four)144 244.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 585.6 Q(complete \(T)108 597.6 Q(AB\))-.9 E F0 1.137 -(Attempt to perform completion on the te)144 609.6 R 1.137 +(Completing)87 261.6 Q(complete \(T)108 273.6 Q(AB\))-.9 E F0 1.137 +(Attempt to perform completion on the te)144 285.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 621.6 Q .532(xt as a v) +(attempts completion treating the)3.637 F(te)144 297.6 Q .532(xt as a v) -.15 F .532(ariable \(if the te)-.25 F .532(xt be)-.15 F .533(gins with) -.15 F F1($)3.033 E F0 .533(\), username \(if the te)B .533(xt be)-.15 F .533(gins with)-.15 F F1(~)3.033 E F0 .533(\), hostname \(if the)B(te) -144 633.6 Q .702(xt be)-.15 F .702(gins with)-.15 F F1(@)3.202 E F0 .701 +144 309.6 Q .702(xt be)-.15 F .702(gins with)-.15 F F1(@)3.202 E F0 .701 (\), or command \(including aliases and functions\) in turn.)B .701 (If none of these pro-)5.701 F -(duces a match, \214lename completion is attempted.)144 645.6 Q F1 -(possible\255completions \(M\255?\))108 657.6 Q F0 -(List the possible completions of the te)144 669.6 Q(xt before point.) --.15 E F1(insert\255completions \(M\255*\))108 681.6 Q F0 .783 -(Insert all completions of the te)144 693.6 R .783 +(duces a match, \214lename completion is attempted.)144 321.6 Q F1 +(possible\255completions \(M\255?\))108 333.6 Q F0 +(List the possible completions of the te)144 345.6 Q(xt before point.) +-.15 E F1(insert\255completions \(M\255*\))108 357.6 Q F0 .783 +(Insert all completions of the te)144 369.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.283 E(pletions)144 -705.6 Q F0(.)A(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(39)198.445 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/F1 10/Times-Bold@0 SF(menu\255complete)108 84 Q F0 .929 -(Similar to)144 96 R F1(complete)3.429 E F0 3.429(,b)C .929 -(ut replaces the w)-3.629 F .929 -(ord to be completed with a single match from the list of)-.1 F 1.193 -(possible completions.)144 108 R 1.193(Repeated e)6.193 F -.15(xe)-.15 G -1.193(cution of).15 F F1(menu\255complete)3.694 E F0 1.194 +381.6 Q F0(.)A F1(menu\255complete)108 393.6 Q F0 .929(Similar to)144 +405.6 R F1(complete)3.429 E F0 3.429(,b)C .929(ut replaces the w)-3.629 +F .929(ord to be completed with a single match from the list of)-.1 F +1.193(possible completions.)144 417.6 R 1.193(Repeated e)6.193 F -.15 +(xe)-.15 G 1.193(cution of).15 F F1(menu\255complete)3.694 E F0 1.194 (steps through the list of possible)3.694 F .829 -(completions, inserting each match in turn.)144 120 R .828 +(completions, inserting each match in turn.)144 429.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 132 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.228 E F0 1.73 -(positions forw)144 144 R 1.73(ard in the list of matches; a ne)-.1 F +(\(subject to the setting of)144 441.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.228 E F0 1.73 +(positions forw)144 453.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 156 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(delete\255char\255or\255list)108 168 Q F0 .234 -(Deletes the character under the cursor if not at the be)144 180 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 192 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 -204 Q(ault.)-.1 E F1(complete\255\214lename \(M\255/\))108 216 Q F0 -(Attempt \214lename completion on the te)144 228 Q(xt before point.)-.15 -E F1(possible\255\214lename\255completions \(C\255x /\))108 240 Q F0 -(List the possible completions of the te)144 252 Q +E(through the list.)144 465.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(delete\255char\255or\255list)108 477.6 Q F0 .234 +(Deletes the character under the cursor if not at the be)144 489.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 501.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 513.6 Q(ault.)-.1 E F1 +(complete\255\214lename \(M\255/\))108 525.6 Q F0 +(Attempt \214lename completion on the te)144 537.6 Q(xt before point.) +-.15 E F1(possible\255\214lename\255completions \(C\255x /\))108 549.6 Q +F0(List the possible completions of the te)144 561.6 Q (xt before point, treating it as a \214lename.)-.15 E F1 -(complete\255user)108 264 Q(name \(M\255~\))-.15 E F0 -(Attempt completion on the te)144 276 Q +(complete\255user)108 573.6 Q(name \(M\255~\))-.15 E F0 +(Attempt completion on the te)144 585.6 Q (xt before point, treating it as a username.)-.15 E F1(possible\255user) -108 288 Q(name\255completions \(C\255x ~\))-.15 E F0 -(List the possible completions of the te)144 300 Q +108 597.6 Q(name\255completions \(C\255x ~\))-.15 E F0 +(List the possible completions of the te)144 609.6 Q (xt before point, treating it as a username.)-.15 E F1(complete\255v)108 -312 Q(ariable \(M\255$\))-.1 E F0(Attempt completion on the te)144 324 Q +621.6 Q(ariable \(M\255$\))-.1 E F0(Attempt completion on the te)144 +633.6 Q(xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E +F1(possible\255v)108 645.6 Q(ariable\255completions \(C\255x $\))-.1 E +F0(List the possible completions of the te)144 657.6 Q (xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E F1 -(possible\255v)108 336 Q(ariable\255completions \(C\255x $\))-.1 E F0 -(List the possible completions of the te)144 348 Q -(xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E F1 -(complete\255hostname \(M\255@\))108 360 Q F0 -(Attempt completion on the te)144 372 Q -(xt before point, treating it as a hostname.)-.15 E F1 -(possible\255hostname\255completions \(C\255x @\))108 384 Q F0 -(List the possible completions of the te)144 396 Q +(complete\255hostname \(M\255@\))108 669.6 Q F0 +(Attempt completion on the te)144 681.6 Q (xt before point, treating it as a hostname.)-.15 E F1 -(complete\255command \(M\255!\))108 408 Q F0 .58 -(Attempt completion on the te)144 420 R .581 +(possible\255hostname\255completions \(C\255x @\))108 693.6 Q F0 +(List the possible completions of the te)144 705.6 Q +(xt before point, treating it as a hostname.)-.15 E(GNU Bash-4.0)72 768 +Q(2008 May 25)147.345 E(40)197.335 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(complete\255command \(M\255!\))108 84 Q F0 +.58(Attempt completion on the te)144 96 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 432 R +(Command comple-)5.581 F .715(tion attempts to match the te)144 108 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 444 Q -.15(xe)-.15 G +(\214nally e)144 120 Q -.15(xe)-.15 G (cutable \214lenames, in that order).15 E(.)-.55 E F1 -(possible\255command\255completions \(C\255x !\))108 456 Q F0 -(List the possible completions of the te)144 468 Q +(possible\255command\255completions \(C\255x !\))108 132 Q F0 +(List the possible completions of the te)144 144 Q (xt before point, treating it as a command name.)-.15 E F1 -(dynamic\255complete\255history \(M\255T)108 480 Q(AB\))-.9 E F0 .424 -(Attempt completion on the te)144 492 R .425 +(dynamic\255complete\255history \(M\255T)108 156 Q(AB\))-.9 E F0 .424 +(Attempt completion on the te)144 168 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 504 Q F1 -(complete\255into\255braces \(M\255{\))108 516 Q F0 .4(Perform \214lena\ +(for possible completion matches.)144 180 Q F1(dab)108 192 Q(br)-.1 E +-.15(ev)-.18 G(\255expand).15 E F0 .611 +(Attempt menu completion on the te)144 204 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 216 Q F1 +(complete\255into\255braces \(M\255{\))108 228 Q F0 .4(Perform \214lena\ me completion and insert the list of possible completions enclosed with\ -in braces so)144 528 R(the list is a)144 540 Q -.25(va)-.2 G +in braces so)144 240 R(the list is a)144 252 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 556.8 S(yboard Macr).25 E(os)-.18 -E(start\255kbd\255macr)108 568.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)) -.833 E F0(Be)144 580.8 Q(gin sa)-.15 E +-.15(ve)-.15 G(\).).15 E F1 -.25(Ke)87 268.8 S(yboard Macr).25 E(os)-.18 +E(start\255kbd\255macr)108 280.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)) +.833 E F0(Be)144 292.8 Q(gin sa)-.15 E (ving the characters typed into the current k)-.2 E -.15(ey)-.1 G -(board macro.).15 E F1(end\255kbd\255macr)108 592.8 Q 2.5(o\()-.18 G -(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 604.8 Q +(board macro.).15 E F1(end\255kbd\255macr)108 304.8 Q 2.5(o\()-.18 G +(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 316.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 616.8 Q 2.5(o\()-.18 G(C\255x e\))-2.5 -E F0(Re-e)144 628.8 Q -.15(xe)-.15 G .999(cute the last k).15 F -.15(ey) --.1 G .999(board macro de\214ned, by making the characters in the macro\ - appear as if).15 F(typed at the k)144 640.8 Q -.15(ey)-.1 G(board.).15 -E F1(Miscellaneous)87 657.6 Q -.18(re)108 669.6 S.18 E -(ead\255init\255\214le \(C\255x C\255r\))-.18 E F0 1.777 -(Read in the contents of the)144 681.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 -693.6 Q F1(abort \(C\255g\))108 705.6 Q F0 3.248 -(Abort the current editing command and ring the terminal')144 717.6 R -5.749(sb)-.55 G 3.249(ell \(subject to the setting of)-5.749 F F1 -(bell\255style)144 729.6 Q F0(\).)A(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(40)198.445 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(do\255upper)108 84 Q(case\255v)-.18 E -(ersion \(M\255a, M\255b, M\255)-.1 E/F2 10/Times-Italic@0 SF(x)A F1 2.5 -(,.)C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 96 R F2(x) -4.256 E F0 1.755(is lo)4.256 F 1.755 +(call\255last\255kbd\255macr)108 328.8 Q 2.5(o\()-.18 G(C\255x e\))-2.5 +E F0(Re-e)144 340.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(typed at the k)144 352.8 Q -.15(ey)-.1 G(board.).15 E F1 +(Miscellaneous)87 369.6 Q -.18(re)108 381.6 S.18 E +(ead\255init\255\214le \(C\255x C\255r\))-.18 E F0 1.776 +(Read in the contents of the)144 393.6 R/F2 10/Times-Italic@0 SF(inputr) +4.276 E(c)-.37 E F0 1.777(\214le, and incorporate an)4.276 F 4.277(yb) +-.15 G 1.777(indings or v)-4.277 F 1.777(ariable assignments)-.25 F +(found there.)144 405.6 Q F1(abort \(C\255g\))108 417.6 Q F0 3.249 +(Abort the current editing command and ring the terminal')144 429.6 R +5.748(sb)-.55 G 3.248(ell \(subject to the setting of)-5.748 F F1 +(bell\255style)144 441.6 Q F0(\).)A F1(do\255upper)108 453.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.755(If the meta\214ed character)144 465.6 R F2(x) +4.255 E F0 1.755(is lo)4.255 F 1.756 (wercase, run the command that is bound to the corresponding)-.25 F -(uppercase character)144 108 Q(.)-.55 E F1(pr)108 120 Q -(e\214x\255meta \(ESC\))-.18 E F0(Metafy the ne)144 132 Q +(uppercase character)144 477.6 Q(.)-.55 E F1(pr)108 489.6 Q +(e\214x\255meta \(ESC\))-.18 E F0(Metafy the ne)144 501.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 144 Q F0 -(Incremental undo, separately remembered for each line.)144 156 Q F1 --2.29 -.18(re v)108 168 T(ert\255line \(M\255r\)).08 E F0 1.095 -(Undo all changes made to this line.)144 180 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 +(undo \(C\255_, C\255x C\255u\))108 513.6 Q F0 +(Incremental undo, separately remembered for each line.)144 525.6 Q F1 +-2.29 -.18(re v)108 537.6 T(ert\255line \(M\255r\)).08 E F0 1.095 +(Undo all changes made to this line.)144 549.6 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 192 Q F1 -(tilde\255expand \(M\255&\))108 204 Q F0(Perform tilde e)144 216 Q +(return the line to its initial state.)144 561.6 Q F1 +(tilde\255expand \(M\255&\))108 573.6 Q F0(Perform tilde e)144 585.6 Q (xpansion on the current w)-.15 E(ord.)-.1 E F1 -(set\255mark \(C\255@, M\255\))108 228 Q F0 -(Set the mark to the point.)144 240 Q(If a numeric ar)5 E +(set\255mark \(C\255@, M\255\))108 597.6 Q F0 +(Set the mark to the point.)144 609.6 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 252 Q F0(Sw)144 -264 Q .283(ap the point with the mark.)-.1 F .283 +(exchange\255point\255and\255mark \(C\255x C\255x\))108 621.6 Q F0(Sw) +144 633.6 Q .282(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 276 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 288 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144 300 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 312 Q(vious occurrences.)-.25 E F1(character\255sear)108 324 Q -(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 336 S 1.044 -(haracter is read and point is mo)-3.544 F -.15(ve)-.15 G 3.544(dt).15 G +2.783(dp).15 G .283(osition, and the old)-2.783 F(cursor position is sa) +144 645.6 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 657.6 Q(ch \(C\255]\))-.18 E F0 3.036(Ac)144 +669.6 S .536(haracter is read and point is mo)-3.036 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.535(.A)-.55 G(ne)-2.5 E -.05 +(ga)-.15 G(ti).05 E .835 -.15(ve c)-.25 H(ount).15 E(searches for pre) +144 681.6 Q(vious occurrences.)-.25 E F1(character\255sear)108 693.6 Q +(ch\255backward \(M\255C\255]\))-.18 E F0 3.543(Ac)144 705.6 S 1.043 +(haracter is read and point is mo)-3.543 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 +(vious occurrence of that character)-.25 F 6.044(.A)-.55 G(ne)-2.5 E -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G -(count searches for subsequent occurrences.)144 348 Q F1 -(insert\255comment \(M\255#\))108 360 Q F0 -.4(Wi)144 372 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 384 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 396 R .321 +(count searches for subsequent occurrences.)144 717.6 Q(GNU Bash-4.0)72 +768 Q(2008 May 25)147.345 E(41)197.335 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(insert\255comment \(M\255#\))108 84 Q F0 +-.4(Wi)144 96 S .481(thout a numeric ar).4 F .481(gument, the v)-.18 F +.481(alue of the readline)-.25 F F1(comment\255begin)2.981 E F0 -.25(va) +2.981 G .48(riable is inserted at the).25 F(be)144 108 Q .097 +(ginning of the current line.)-.15 F .098(If a numeric ar)5.097 F .098 +(gument is supplied, this command acts as a toggle:)-.18 F(if)5.098 E +.322(the characters at the be)144 120 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 1.014(inserted, otherwise the characters in)144 408 R F1 -(comment-begin)3.514 E F0 1.014(are deleted from the be)3.514 F 1.013 -(ginning of the line.)-.15 F 1.468 -(In either case, the line is accepted as if a ne)144 420 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 432 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 444 Q -.15 +(comment\255begin)2.821 E F0 2.821(,t)C .321(he v)-2.821 F .321(alue is) +-.25 F 1.013(inserted, otherwise the characters in)144 132 R F1 +(comment-begin)3.514 E F0 1.014(are deleted from the be)3.514 F 1.014 +(ginning of the line.)-.15 F 1.469 +(In either case, the line is accepted as if a ne)144 144 R 1.468 +(wline had been typed.)-.25 F 1.468(The def)6.468 F 1.468(ault v)-.1 F +1.468(alue of)-.25 F F1(com-)3.968 E(ment\255begin)144 156 Q F0 .839 +(causes this command to mak)3.339 F 3.339(et)-.1 G .839 +(he current line a shell comment.)-3.339 F .84(If a numeric ar)5.84 F +(gu-)-.18 E(ment causes the comment character to be remo)144 168 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 456 Q -(ord \(M\255g\))-.1 E F0 .791(The w)144 468 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 480 +(cuted by the shell.).15 E F1(glob\255complete\255w)108 180 Q +(ord \(M\255g\))-.1 E F0 .792(The w)144 192 R .791 +(ord before point is treated as a pattern for pathname e)-.1 F .791 +(xpansion, with an asterisk implicitly)-.15 F 2.5(appended. This)144 204 R(pattern is used to generate a list of matching \214le names for possi\ -ble completions.)2.5 E F1(glob\255expand\255w)108 492 Q -(ord \(C\255x *\))-.1 E F0 .372(The w)144 504 R .372 -(ord before point is treated as a pattern for pathname e)-.1 F .371 +ble completions.)2.5 E F1(glob\255expand\255w)108 216 Q +(ord \(C\255x *\))-.1 E F0 .371(The w)144 228 R .372 +(ord before point is treated as a pattern for pathname e)-.1 F .372 (xpansion, and the list of matching \214le)-.15 F .516 -(names is inserted, replacing the w)144 516 R 3.016(ord. If)-.1 F 3.016 +(names is inserted, replacing the w)144 240 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 528 Q(xpansion.)-.15 E F1(glob\255list\255expansions \(C\255x g\)) -108 540 Q F0 .923(The list of e)144 552 R .923(xpansions that w)-.15 F +144 252 Q(xpansion.)-.15 E F1(glob\255list\255expansions \(C\255x g\)) +108 264 Q F0 .923(The list of e)144 276 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 564 R 3.372(wn. If)-.15 F 3.372(an)3.372 G +.872(the line is redra)144 288 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 576 S(pansion.).15 E F1(dump\255functions)108 588 Q F0 .627 -(Print all of the functions and their k)144 600 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 612 Q -(ay that it can be made part of an)-.1 E F2(inputr)2.5 E(c)-.37 E F0 -(\214le.)2.5 E F1(dump\255v)108 624 Q(ariables)-.1 E F0 1.799 -(Print all of the settable readline v)144 636 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 648 R .304 +(ex)144 300 S(pansion.).15 E F1(dump\255functions)108 312 Q F0 .626 +(Print all of the functions and their k)144 324 R .926 -.15(ey b)-.1 H +.627(indings to the readline output stream.).15 F .627(If a numeric ar) +5.627 F(gu-)-.18 E +(ment is supplied, the output is formatted in such a w)144 336 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 348 Q(ariables)-.1 E F0 +1.8(Print all of the settable readline v)144 360 R 1.799 +(ariables and their v)-.25 F 1.799(alues to the readline output stream.) +-.25 F 1.799(If a)6.799 F .304(numeric ar)144 372 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 660 Q(c)-.37 E F0 -(\214le.)2.5 E F1(dump\255macr)108 672 Q(os)-.18 E F0 .592 -(Print all of the readline k)144 684 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 696 Q +(ay that it can be made part of an)-.1 F F2(inputr)144 384 Q(c)-.37 E F0 +(\214le.)2.5 E F1(dump\255macr)108 396 Q(os)-.18 E F0 .593 +(Print all of the readline k)144 408 R .893 -.15(ey s)-.1 H .592 +(equences bound to macros and the strings the).15 F 3.092(yo)-.15 G +3.092(utput. If)-3.092 F 3.092(an)3.092 G(umeric)-3.092 E(ar)144 420 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 708 Q(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(41) -198.445 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(display\255shell\255v)108 84 Q -(ersion \(C\255x C\255v\))-.1 E F0(Display v)144 96 Q +(ay that it can be made part of an)-.1 F F2(inputr)3.028 E(c)-.37 E F0 +(\214le.)144 432 Q F1(display\255shell\255v)108 444 Q +(ersion \(C\255x C\255v\))-.1 E F0(Display v)144 456 Q (ersion information about the current instance of)-.15 E F1(bash)2.5 E -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 +F0(.)A F1(Pr)87 472.8 Q(ogrammable Completion)-.18 E F0 .147(When w)108 +484.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 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) +F2(compspec)108 496.8 Q F0 3.828(\)h)C 1.329 +(as been de\214ned using the)-3.828 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 148.8 Q(acilities are in)-.1 E -.2 -(vo)-.4 G -.1(ke).2 G(d.).1 E .333 -(First, the command name is identi\214ed.)108 165.6 R .334 +F(UIL)-.09 E 1.329(TIN COMMANDS)-.828 F F0(belo)3.579 E 1.329(w\), the) +-.25 F(programmable completion f)108 508.8 Q(acilities are in)-.1 E -.2 +(vo)-.4 G -.1(ke).2 G(d.).1 E .334 +(First, the command name is identi\214ed.)108 525.6 R .333 (If a compspec has been de\214ned for that command, the compspec is) -5.333 F .587 -(used to generate the list of possible completions for the w)108 177.6 R -3.087(ord. If)-.1 F .587(the command w)3.087 F .586 -(ord is a full pathname, a)-.1 F 1.18 -(compspec for the full pathname is searched for \214rst.)108 189.6 R -1.181(If no compspec is found for the full pathname, an)6.181 F -(attempt is made to \214nd a compspec for the portion follo)108 201.6 Q +5.334 F .587 +(used to generate the list of possible completions for the w)108 537.6 R +3.087(ord. If)-.1 F .587(the command w)3.087 F .587 +(ord is a full pathname, a)-.1 F 1.181 +(compspec for the full pathname is searched for \214rst.)108 549.6 R +1.18(If no compspec is found for the full pathname, an)6.181 F +(attempt is made to \214nd a compspec for the portion follo)108 561.6 Q (wing the \214nal slash.)-.25 E .817(Once a compspec has been found, it\ - is used to generate the list of matching w)108 218.4 R 3.317(ords. If) + is used to generate the list of matching w)108 578.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 -230.4 Q(ault)-.1 E F1(bash)2.5 E F0(completion as described abo)2.5 E .3 +590.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 -.463(First, the actions speci\214ed by the compspec are used.)108 247.2 -R .464(Only matches which are pre\214x)5.464 F .464(ed by the w)-.15 F -.464(ord being)-.1 F .596(completed are returned.)108 259.2 R .596 -(When the)5.596 F F13.096 E F0(or)3.095 E F13.095 E F0 .595 +.464(First, the actions speci\214ed by the compspec are used.)108 607.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 619.2 R .595 +(When the)5.595 F F13.095 E F0(or)3.095 E F13.095 E F0 .596 (option is used for \214lename or directory name completion, the)3.095 F -(shell v)108 271.2 Q(ariable)-.25 E F3(FIGNORE)2.5 E F0 -(is used to \214lter the matches.)2.25 E(An)108 288 Q 2.585(yc)-.15 G +(shell v)108 631.2 Q(ariable)-.25 E F3(FIGNORE)2.5 E F0 +(is used to \214lter the matches.)2.25 E(An)108 648 Q 2.585(yc)-.15 G .085(ompletions speci\214ed by a \214lename e)-2.585 F .085 (xpansion pattern to the)-.15 F F12.585 E F0 .085 (option are generated ne)2.585 F 2.585(xt. The)-.15 F -.1(wo)2.585 G -(rds).1 E .844(generated by the pattern need not match the w)108 300 R -.844(ord being completed.)-.1 F(The)5.844 E F3(GLOBIGNORE)3.343 E F0 -.843(shell v)3.093 F .843(ariable is)-.25 F -(not used to \214lter the matches, b)108 312 Q(ut the)-.2 E F3(FIGNORE) -2.5 E F0 -.25(va)2.25 G(riable is used.).25 E(Ne)108 328.8 Q .32 -(xt, the string speci\214ed as the ar)-.15 F .32(gument to the)-.18 F F1 -2.82 E F0 .321(option is considered.)2.821 F .321 -(The string is \214rst split using the)5.321 F .413(characters in the) -108 340.8 R F3(IFS)2.913 E F0 .412(special v)2.663 F .412 +(rds).1 E .843(generated by the pattern need not match the w)108 660 R +.844(ord being completed.)-.1 F(The)5.844 E F3(GLOBIGNORE)3.344 E F0 +.844(shell v)3.094 F .844(ariable is)-.25 F +(not used to \214lter the matches, b)108 672 Q(ut the)-.2 E F3(FIGNORE) +2.5 E F0 -.25(va)2.25 G(riable is used.).25 E(Ne)108 688.8 Q .321 +(xt, the string speci\214ed as the ar)-.15 F .321(gument to the)-.18 F +F12.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 +700.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 -.412(Each w)5.412 F .412(ord is then e)-.1 F(xpanded)-.15 E .091 -(using brace e)108 352.8 R .091(xpansion, tilde e)-.15 F .092 -(xpansion, parameter and v)-.15 F .092(ariable e)-.25 F .092 -(xpansion, command substitution, and arith-)-.15 F 1.397(metic e)108 -364.8 R 1.396(xpansion, as described abo)-.15 F 1.696 -.15(ve u)-.15 H +.413(Each w)5.412 F .413(ord is then e)-.1 F(xpanded)-.15 E .092 +(using brace e)108 712.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 +724.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 -376.8 Q .509 -.15(ve u)-.15 H(nder).15 E F1 -.75(Wo)2.709 G .209 -(rd Splitting).75 F F0 5.209(.T)C .209(he results of the e)-5.209 F .209 -(xpansion are pre\214x-matched ag)-.15 F .21(ainst the w)-.05 F .21 -(ord being com-)-.1 F(pleted, and the matching w)108 388.8 Q -(ords become the possible completions.)-.1 E 1.238 -(After these matches ha)108 405.6 R 1.538 -.15(ve b)-.2 H 1.238 -(een generated, an).15 F 3.738(ys)-.15 G 1.237 -(hell function or command speci\214ed with the)-3.738 F F13.737 E -F0(and)3.737 E F13.737 E F0 3.375(options is in)108 417.6 R -.2 +1.396(The results are split using the rules described)5.896 F +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(42)197.335 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(abo)108 84 Q .51 -.15(ve u)-.15 H(nder).15 E/F1 10/Times-Bold@0 +SF -.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 96 Q +(ords become the possible completions.)-.1 E 1.237 +(After these matches ha)108 112.8 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 F13.738 E +F0(and)3.738 E F13.738 E F0 3.376(options is in)108 124.8 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.876 E F4(,)A F3(COMP_POINT)5.626 E F4(,)A F3 -(COMP_KEY)108 429.6 Q F4(,)A F0(and)2.408 E F3(COMP_TYPE)2.658 E F0 -.25 -(va)2.408 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 .157 -(Shell V)2.657 F(ariables)-.92 E F0 5.157(.I)C(f)-5.157 E 3.485(as)108 -441.6 S .986(hell function is being in)-3.485 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.986 E .609 -(the function or command is in)108 453.6 R -.2(vo)-.4 G -.1(ke).2 G .608 -(d, the \214rst ar).1 F .608(gument is the name of the command whose ar) --.18 F .608(guments are)-.18 F .073(being completed, the second ar)108 -465.6 R .073(gument is the w)-.18 F .073 -(ord being completed, and the third ar)-.1 F .073(gument is the w)-.18 F -.073(ord pre-)-.1 F .608(ceding the w)108 477.6 R .607 -(ord being completed on the current command line.)-.1 F .607 -(No \214ltering of the generated completions)5.607 F(ag)108 489.6 Q .093 +(d, the).1 F/F2 9/Times-Bold@0 SF(COMP_LINE)5.875 E/F3 9/Times-Roman@0 +SF(,)A F2(COMP_POINT)5.625 E F3(,)A F2(COMP_KEY)108 136.8 Q F3(,)A F0 +(and)2.407 E F2(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 148.8 S .986 +(hell function is being in)-3.486 F -.2(vo)-.4 G -.1(ke).2 G .986 +(d, the).1 F F2(COMP_W)3.486 E(ORDS)-.09 E F0(and)3.236 E F2(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 .608(the function or command is in)108 160.8 R -.2(vo)-.4 +G -.1(ke).2 G .608(d, the \214rst ar).1 F .608 +(gument is the name of the command whose ar)-.18 F .609(guments are)-.18 +F .073(being completed, the second ar)108 172.8 R .073(gument is the w) +-.18 F .073(ord being completed, and the third ar)-.1 F .073 +(gument is the w)-.18 F .072(ord pre-)-.1 F .607(ceding the w)108 184.8 +R .607(ord being completed on the current command line.)-.1 F .608 +(No \214ltering of the generated completions)5.607 F(ag)108 196.8 Q .094 (ainst the w)-.05 F .093(ord being completed is performed; the function\ or command has complete freedom in generat-)-.1 F(ing the matches.)108 -501.6 Q(An)108 518.4 Q 2.938(yf)-.15 G .437(unction speci\214ed with) --2.938 F F12.937 E F0 .437(is in)2.937 F -.2(vo)-.4 G -.1(ke).2 G +208.8 Q(An)108 225.6 Q 2.937(yf)-.15 G .437(unction speci\214ed with) +-2.937 F F12.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 .437 -(acilities, including)-.1 F(the)108 530.4 Q F1(compgen)2.956 E F0 -.2 -(bu)2.956 G .456(iltin described belo).2 F 1.756 -.65(w, t)-.25 H 2.956 -(og).65 G .456(enerate the matches.)-2.956 F .457 -(It must put the possible completions in the)5.456 F F3(COMPREPL)108 -542.4 Q(Y)-.828 E F0(array v)2.25 E(ariable.)-.25 E(Ne)108 559.2 Q .081 -(xt, an)-.15 F 2.581(yc)-.15 G .081(ommand speci\214ed with the)-2.581 F -F12.581 E F0 .081(option is in)2.581 F -.2(vo)-.4 G -.1(ke).2 G -2.581(di).1 G 2.58(na)-2.581 G 2.58(ne)-2.58 G -.4(nv)-2.58 G .08 -(ironment equi).4 F -.25(va)-.25 G .08(lent to command sub-).25 F 2.858 -(stitution. It)108 571.2 R .359(should print a list of completions, one\ - per line, to the standard output.)2.858 F .359(Backslash may be used) -5.359 F(to escape a ne)108 583.2 Q(wline, if necessary)-.25 E(.)-.65 E -.377(After all of the possible completions are generated, an)108 600 R -2.877<798c>-.15 G .377(lter speci\214ed with the)-2.877 F F12.876 -E F0 .376(option is applied to the)2.876 F 3.181(list. The)108 612 R -.681(\214lter is a pattern as used for pathname e)3.181 F .681 -(xpansion; a)-.15 F F1(&)3.181 E F0 .682 -(in the pattern is replaced with the te)3.182 F .682(xt of)-.15 F .523 -(the w)108 624 R .523(ord being completed.)-.1 F 3.023(Al)5.523 G -(iteral)-3.023 E F1(&)3.023 E F0 .522 +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 237.6 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(COMPREPL)108 +249.6 Q(Y)-.828 E F0(array v)2.25 E(ariable.)-.25 E(Ne)108 266.4 Q .08 +(xt, an)-.15 F 2.58(yc)-.15 G .08(ommand speci\214ed with the)-2.58 F F1 +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 278.4 R .359(should print a list of completions, one\ + per line, to the standard output.)2.859 F .358(Backslash may be used) +5.359 F(to escape a ne)108 290.4 Q(wline, if necessary)-.25 E(.)-.65 E +.376(After all of the possible completions are generated, an)108 307.2 R +2.877<798c>-.15 G .377(lter speci\214ed with the)-2.877 F F12.877 +E F0 .377(option is applied to the)2.877 F 3.182(list. The)108 319.2 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 331.2 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.022(db).15 G(efore)-3.022 E .849(attempting a match.)108 636 R -(An)5.849 E 3.349(yc)-.15 G .849 -(ompletion that matches the pattern will be remo)-3.349 F -.15(ve)-.15 G -3.35(df).15 G .85(rom the list.)-3.35 F 3.35(Al)5.85 G(eading)-3.35 E F1 -(!)3.35 E F0(ne)108 648 Q -.05(ga)-.15 G +-.15 G 3.023(db).15 G(efore)-3.023 E .85(attempting a match.)108 343.2 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 355.2 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 664.8 Q 3.087(,a)-.65 G .887 -.15(ny p)-3.087 H -.587(re\214x and suf).15 F .587(\214x speci\214ed with the)-.25 F F1 -3.087 E F0(and)3.087 E F13.087 E F0 .587 +(d.).15 E(Finally)108 372 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 +3.087 E F0(and)3.087 E F13.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 676.8 Q .246(If the pre)108 693.6 R .247 +possible completions.)108 384 Q .247(If the pre)108 400.8 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 .247(as supplied to)-.1 F F1(complete)108 705.6 Q F0 +(option w)2.747 F .246(as supplied to)-.1 F F1(complete)108 412.8 Q F0 (when the compspec w)2.5 E -(as de\214ned, directory name completion is attempted.)-.1 E 2.03 -(If the)108 722.4 R F1 2.03(\255o plusdirs)4.53 F F0 2.03(option w)4.53 -F 2.029(as supplied to)-.1 F F1(complete)4.529 E F0 2.029 -(when the compspec w)4.529 F 2.029(as de\214ned, directory name)-.1 F -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(42)198.445 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(completion is attempted and an)108 84 Q 2.5(ym)-.15 G -(atches are added to the results of the other actions.)-2.5 E .559 -(By def)108 100.8 R .559(ault, if a compspec is found, whate)-.1 F -.15 -(ve)-.25 G 3.059(ri).15 G 3.059(tg)-3.059 G .56 -(enerates is returned to the completion code as the full set)-3.059 F -.632(of possible completions.)108 112.8 R .632(The def)5.632 F(ault)-.1 -E/F1 10/Times-Bold@0 SF(bash)3.132 E F0 .631 -(completions are not attempted, and the readline def)3.131 F .631 -(ault of \214le-)-.1 F .558(name completion is disabled.)108 124.8 R -.558(If the)5.558 F F1 .559(\255o bashdefault)3.059 F F0 .559(option w) -3.059 F .559(as supplied to)-.1 F F1(complete)3.059 E F0 .559 -(when the compspec)3.059 F -.1(wa)108 136.8 S 3.172(sd).1 G .672 -(e\214ned, the)-3.172 F F1(bash)3.172 E F0(def)3.172 E .671 +(as de\214ned, directory name completion is attempted.)-.1 E .461 +(If the)108 429.6 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 441.6 Q 2.5(ym)-.15 G +(atches are added to the results of the other actions.)-2.5 E .56 +(By def)108 458.4 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 470.4 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 482.4 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 494.4 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 .671(If the)5.671 F F13.171 E(default)108 148.8 Q F0 1.207 -(option w)3.706 F 1.207(as supplied to)-.1 F F1(complete)3.707 E F0 +-.1 F .672(If the)5.672 F F13.172 E(default)108 506.4 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.207(ault completion)-.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 -160.8 Q(ault)-.1 E F1(bash)2.5 E F0(completions\) generate no matches.) +518.4 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 177.6 R .632(tions force\ +desired, the programmable completion func-)108 535.2 R .633(tions force\ readline to append a slash to completed names which are symbolic links\ - to directories, subject)108 189.6 R 2.762(to the v)108 201.6 R 2.762 -(alue of the)-.25 F F1(mark\255dir)5.262 E(ectories)-.18 E F0 2.761 -(readline v)5.262 F 2.761(ariable, re)-.25 F -.05(ga)-.15 G 2.761 -(rdless of the setting of the).05 F F1(mark-sym-)5.261 E(link)108 213.6 -Q(ed\255dir)-.1 E(ectories)-.18 E F0(readline v)2.5 E(ariable.)-.25 E/F2 -10.95/Times-Bold@0 SF(HIST)72 230.4 Q(OR)-.197 E(Y)-.383 E F0 .371 -(When the)108 242.4 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/F3 -10/Times-Italic@0 SF .372(command history)2.872 F F0(,)A .032 -(the list of commands pre)108 254.4 R .031(viously typed.)-.25 F .031 + to directories, subject)108 547.2 R 2.761(to the v)108 559.2 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 571.2 +Q(ed\255dir)-.1 E(ectories)-.18 E F0(readline v)2.5 E(ariable.)-.25 E/F4 +10.95/Times-Bold@0 SF(HIST)72 588 Q(OR)-.197 E(Y)-.383 E F0 .372 +(When the)108 600 R F1 .372(\255o history)2.872 F F0 .372(option to the) +2.872 F F1(set)2.872 E F0 -.2(bu)2.872 G .372 +(iltin is enabled, the shell pro).2 F .371(vides access to the)-.15 F/F5 +10/Times-Italic@0 SF .371(command history)2.871 F F0(,)A .031 +(the list of commands pre)108 612 R .031(viously typed.)-.25 F .031 (The v)5.031 F .031(alue of the)-.25 F F1(HISTSIZE)2.531 E F0 -.25(va) -2.531 G .031(riable is used as the number of com-).25 F .429 -(mands to sa)108 266.4 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/F4 -9/Times-Bold@0 SF(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 278.4 R .287(ariable e)-.25 F .287(xpansion \(see)-.15 F F4(EXP) -2.787 E(ANSION)-.666 E F0(abo)2.537 E -.15(ve)-.15 G(\)).15 E -.2(bu)108 -290.4 S 4.065(ta).2 G 1.565(fter history e)-4.065 F 1.565 +2.531 G .031(riable is used as the number of com-).25 F .43(mands to sa) +108 624 R .73 -.15(ve i)-.2 H 2.93(nah).15 G .43(istory list.)-2.93 F +.43(The te)5.43 F .429(xt of the last)-.15 F F2(HISTSIZE)2.929 E F0 .429 +(commands \(def)2.679 F .429(ault 500\) is sa)-.1 F -.15(ve)-.2 G 2.929 +(d. The).15 F(shell)2.929 E .287 +(stores each command in the history list prior to parameter and v)108 +636 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 -.2(bu)108 648 S +4.066(ta).2 G 1.565(fter history e)-4.066 F 1.565 (xpansion is performed, subject to the v)-.15 F 1.565 -(alues of the shell v)-.25 F(ariables)-.25 E F4(HISTIGNORE)4.065 E F0 -(and)3.816 E F4(HISTCONTR)108 302.4 Q(OL)-.27 E/F5 9/Times-Roman@0 SF(.) -A F0 .082 +(alues of the shell v)-.25 F(ariables)-.25 E F2(HISTIGNORE)4.065 E F0 +(and)3.815 E F2(HISTCONTR)108 660 Q(OL)-.27 E F3(.)A F0 .082 (On startup, the history is initialized from the \214le named by the v) -108 319.2 R(ariable)-.25 E F4(HISTFILE)2.582 E F0(\(def)2.332 E(ault)-.1 -E F3(~/.bash_history)2.582 E F0(\).)A .315(The \214le named by the v)108 -331.2 R .315(alue of)-.25 F F4(HISTFILE)2.815 E F0 .315 +108 676.8 R(ariable)-.25 E F2(HISTFILE)2.583 E F0(\(def)2.333 E(ault)-.1 +E F5(~/.bash_history)2.583 E F0(\).)A .315(The \214le named by the v)108 +688.8 R .315(alue of)-.25 F F2(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 .532 -(lines speci\214ed by the v)108 343.2 R .532(alue of)-.25 F F4 -(HISTFILESIZE)3.032 E F5(.)A F0 .532 +(lines speci\214ed by the v)108 700.8 R .532(alue of)-.25 F F2 +(HISTFILESIZE)3.032 E F3(.)A F0 .532 (When the history \214le is read, lines be)5.032 F .532 -(ginning with the his-)-.15 F 1.158(tory comment character follo)108 -355.2 R 1.159(wed immediately by a digit are interpreted as timestamps \ -for the preceding)-.25 F .053(history line.)108 367.2 R .053 -(These timestamps are optionally displayed depending on the v)5.053 F -.052(alue of the)-.25 F F4(HISTTIMEFORMA)2.552 E(T)-.855 E F0 -.25(va) -108 379.2 S 4.386(riable. When).25 F 1.886(an interacti)4.386 F 2.187 --.15(ve s)-.25 H 1.887(hell e).15 F 1.887(xits, the last)-.15 F F4 -($HISTSIZE)4.387 E F0 1.887(lines are copied from the history list to) -4.137 F F4($HISTFILE)108 391.2 Q F5(.)A F0 .056(If the)4.556 F F1 +(ginning with the his-)-.15 F 1.159(tory comment character follo)108 +712.8 R 1.158(wed immediately by a digit are interpreted as timestamps \ +for the preceding)-.25 F .052(history line.)108 724.8 R .053 +(These timestamps are optionally displayed depending on the v)5.052 F +.053(alue of the)-.25 F F2(HISTTIMEFORMA)2.553 E(T)-.855 E F0 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(43)197.335 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 -.25(va)108 84 S 4.387(riable. When).25 F 1.887(an interacti) +4.387 F 2.187 -.15(ve s)-.25 H 1.887(hell e).15 F 1.887(xits, the last) +-.15 F/F1 9/Times-Bold@0 SF($HISTSIZE)4.387 E F0 1.887 +(lines are copied from the history list to)4.137 F F1($HISTFILE)108 96 Q +/F2 9/Times-Roman@0 SF(.)A F0 .056(If the)4.556 F/F3 10/Times-Bold@0 SF (histappend)2.556 E F0 .056 -(shell option is enabled \(see the description of)2.556 F F1(shopt)2.556 -E F0(under)2.556 E F4 .056(SHELL B)2.556 F(UIL)-.09 E(TIN)-.828 E -(COMMANDS)108 403.2 Q F0(belo)2.671 E .422(w\), the lines are appended \ -to the history \214le, otherwise the history \214le is o)-.25 F -.15(ve) --.15 G 2.922(rwritten. If).15 F F4(HISTFILE)108 415.2 Q F0 1.114(is uns\ -et, or if the history \214le is unwritable, the history is not sa)3.364 -F -.15(ve)-.2 G 3.614(d. If).15 F(the)3.614 E F5 -.225(va)3.613 G 1.113 -(riable is set, time).225 F 1.251 -(stamps are written to the history \214le, mark)108 427.2 R(ed)-.09 E F0 -1.252(with the history comment character)3.502 F 3.752(,s)-.4 G 3.752 -(ot)-3.752 G(he)-3.752 E 3.752(ym)-.15 G 1.252(ay be preserv)-3.752 F -(ed)-.15 E .105(across shell sessions.)108 439.2 R .105(This uses the h\ -istory comment character to distinguish timestamps from other history) -5.105 F 2.604(lines. After)108 451.2 R(sa)2.604 E .104(ving the history) --.2 F 2.604(,t)-.65 G .104 -(he history \214le is truncated to contain no more than)-2.604 F F4 -(HISTFILESIZE)2.605 E F0 2.605(lines. If)2.355 F F4(HISTFILESIZE)108 -463.2 Q F0(is not set, no truncation is performed.)2.25 E 1.294(The b) -108 480 R 1.294(uiltin command)-.2 F F1(fc)3.794 E F0(\(see)3.794 E F4 -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 492 S .673(cute a portion of the history list.).15 F(The)5.673 E F1 -(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 504 R .279 +(shell option is enabled \(see the description of)2.556 F F3(shopt)2.556 +E F0(under)2.556 E F1 .056(SHELL B)2.556 F(UIL)-.09 E(TIN)-.828 E +(COMMANDS)108 108 Q F0(belo)2.672 E .422(w\), the lines are appended to\ + the history \214le, otherwise the history \214le is o)-.25 F -.15(ve) +-.15 G 2.921(rwritten. If).15 F F1(HISTFILE)108 120 Q F0 1.114(is unset\ +, or if the history \214le is unwritable, the history is not sa)3.363 F +-.15(ve)-.2 G 3.614(d. If).15 F(the)3.614 E F2 -.225(va)3.614 G 1.114 +(riable is set, time).225 F 1.252 +(stamps are written to the history \214le, mark)108 132 R(ed)-.09 E F0 +1.252(with the history comment character)3.502 F 3.751(,s)-.4 G 3.751 +(ot)-3.751 G(he)-3.751 E 3.751(ym)-.15 G 1.251(ay be preserv)-3.751 F +(ed)-.15 E .105(across shell sessions.)108 144 R .105(This uses the his\ +tory comment character to distinguish timestamps from other history) +5.105 F 2.605(lines. After)108 156 R(sa)2.605 E .105(ving the history) +-.2 F 2.605(,t)-.65 G .104 +(he history \214le is truncated to contain no more than)-2.605 F F1 +(HISTFILESIZE)2.604 E F0 2.604(lines. If)2.354 F F1(HISTFILESIZE)108 168 +Q F0(is not set, no truncation is performed.)2.25 E 1.293(The b)108 +184.8 R 1.293(uiltin command)-.2 F F3(fc)3.793 E F0(\(see)3.793 E F1 +1.293(SHELL B)3.793 F(UIL)-.09 E 1.293(TIN COMMANDS)-.828 F F0(belo) +3.543 E 1.294(w\) may be used to list or edit and re-)-.25 F -.15(exe) +108 196.8 S .674(cute a portion of the history list.).15 F(The)5.673 E +F3(history)3.173 E F0 -.2(bu)3.173 G .673 +(iltin may be used to display or modify the history list).2 F .279 +(and manipulate the history \214le.)108 208.8 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 516 Q -(vide access to the history list.)-.15 E 1.485(The shell allo)108 532.8 -R 1.485(ws control o)-.25 F -.15(ve)-.15 G 3.986(rw).15 G 1.486 +-.2 G .28(ilable in each).25 F(editing mode that pro)108 220.8 Q +(vide access to the history list.)-.15 E 1.486(The shell allo)108 237.6 +R 1.486(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 F4(HISTCONTR)3.986 -E(OL)-.27 E F0(and)3.736 E F4(HISTIGNORE)108 544.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 556.8 Q F0 .75 +-3.986 G 1.486(he history list.)-3.986 F(The)6.485 E F1(HISTCONTR)3.985 +E(OL)-.27 E F0(and)3.735 E F1(HISTIGNORE)108 249.6 Q F0 -.25(va)2.707 G +.457(riables may be set to cause the shell to sa).25 F .758 -.15(ve o) +-.2 H .458(nly a subset of the commands entered.).15 F(The)5.458 E F3 +(cmdhist)108 261.6 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 568.8 R 3.577(,a)-.65 G 1.077 +(the same history entry)108 273.6 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 F1(lithist)3.576 E F0 -.373(shell option causes the shell to sa)108 580.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 592.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 F4 .318(SHELL B)2.818 F -(UIL)-.09 E .318(TIN COMMANDS)-.828 F F0 .318 +1.077(yntactic correctness.)-3.577 F(The)6.077 E F3(lithist)3.577 E F0 +.374(shell option causes the shell to sa)108 285.6 R .674 -.15(ve t)-.2 +H .374(he command with embedded ne).15 F .373 +(wlines instead of semicolons.)-.25 F .373(See the)5.373 F .318 +(description of the)108 297.6 R F3(shopt)2.818 E F0 -.2(bu)2.818 G .318 +(iltin belo).2 F 2.818(wu)-.25 G(nder)-2.818 E F1 .318(SHELL B)2.818 F +(UIL)-.09 E .318(TIN COMMANDS)-.828 F F0 .319 (for information on setting and)2.568 F(unsetting shell options.)108 -604.8 Q F2(HIST)72 621.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 633.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 645.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 657.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 F4 2.014(SHELL B)4.514 F(UIL)-.09 E 2.014 -(TIN COMMANDS)-.828 F F0(belo)108 669.6 Q 2.5(w\). Non-interacti)-.25 F +309.6 Q/F4 10.95/Times-Bold@0 SF(HIST)72 326.4 Q(OR)-.197 E 2.738(YE) +-.383 G(XP)-2.738 E(ANSION)-.81 E F0 .611 +(The shell supports a history e)108 338.4 R .611 +(xpansion feature that is similar to the history e)-.15 F .61 +(xpansion in)-.15 F F3(csh.)3.11 E F0 .61(This section)5.61 F .87 +(describes what syntax features are a)108 350.4 R -.25(va)-.2 G 3.371 +(ilable. This).25 F .871(feature is enabled by def)3.371 F .871 +(ault for interacti)-.1 F 1.171 -.15(ve s)-.25 H .871(hells, and).15 F +2.014(can be disabled using the)108 362.4 R F3(+H)4.514 E F0 2.014 +(option to the)4.514 F F3(set)4.514 E F0 -.2(bu)4.514 G 2.014 +(iltin command \(see).2 F F1 2.013(SHELL B)4.513 F(UIL)-.09 E 2.013 +(TIN COMMANDS)-.828 F F0(belo)108 374.4 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 686.4 R 1.306 +(xpansion by def)-.15 E(ault.)-.1 E 1.305(History e)108 391.2 R 1.305 (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 698.4 R .209(guments to a pre)-.18 F .21 + input stream, making it easy to repeat)-.1 F .21 +(commands, insert the ar)108 403.2 R .21(guments to a pre)-.18 F .209 (vious command into the current input line, or \214x errors in pre)-.25 -F(vious)-.25 E(commands quickly)108 710.4 Q(.)-.65 E 1.164(History e)108 -727.2 R 1.163(xpansion is performed immediately after a complete line i\ -s read, before the shell breaks it into)-.15 F(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(43)198.445 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 -.1(wo)108 84 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 +F(vious)-.25 E(commands quickly)108 415.2 Q(.)-.65 E 1.163(History e)108 +432 R 1.163(xpansion is performed immediately after a complete line is \ +read, before the shell breaks it into)-.15 F -.1(wo)108 444 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 96 R 1.868(second is to select portio\ -ns 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 108 R/F1 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 F1(wor) -3.163 E(ds)-.37 E F0 5.663(.V)C(arious)-6.773 E F1(modi\214er)108 120 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 132 R -.15(ve) --.25 G(ral).15 E F1(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 144 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 156 Q/F2 -10/Times-Bold@0 SF(!)3.333 E F0(by def)3.333 E 2.5(ault. Only)-.1 F -(backslash \()2.5 E F2(\\).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 172.8 Q -.15(ve)-.25 G .03 -(ral characters inhibit history e).15 F .03 +3.2 F 4.367(substitution. The)108 456 R 1.868(second is to select porti\ +ons of that line for inclusion into the current one.)4.367 F 1.868 +(The line)6.868 F .663(selected from the history is the)108 468 R/F5 10 +/Times-Italic@0 SF -.15(ev)3.163 G(ent).15 E F0 3.163(,a)C .663 +(nd the portions of that line that are acted upon are)-3.163 F F5(wor) +3.162 E(ds)-.37 E F0 5.662(.V)C(arious)-6.772 E F5(modi\214er)108 480 Q +(s)-.1 E F0 .226(are a)2.726 F -.25(va)-.2 G .226 +(ilable to manipulate the selected w).25 F 2.726(ords. The)-.1 F .227 +(line is brok)2.726 F .227(en into w)-.1 F .227(ords in the same f)-.1 F +(ashion)-.1 E .352(as when reading input, so that se)108 492 R -.15(ve) +-.25 G(ral).15 E F5(metac)2.852 E(har)-.15 E(acter)-.15 E F0 .351 +(-separated w)B .351(ords surrounded by quotes are considered)-.1 F .624 +(one w)108 504 R 3.124(ord. History)-.1 F -.15(ex)3.124 G .624 +(pansions are introduced by the appearance of the history e).15 F .625 +(xpansion character)-.15 F 3.125(,w)-.4 G(hich)-3.125 E(is)108 516 Q F3 +(!)3.333 E F0(by def)3.333 E 2.5(ault. Only)-.1 F(backslash \()2.5 E F3 +(\\).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 532.8 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 184.8 T -3.163(ni).25 G 3.163(fi)-3.163 G 3.162(ti)-3.163 G 3.162(su)-3.162 G +F .03(xpansion character)-.15 F(,)-.4 E -2.15 -.25(ev e)108 544.8 T +3.162(ni).25 G 3.162(fi)-3.162 G 3.162(ti)-3.162 G 3.162(su)-3.162 G .662(nquoted: space, tab, ne)-3.162 F .662(wline, carriage return, and) --.25 F F2(=)3.162 E F0 5.662(.I)C 3.162(ft)-5.662 G(he)-3.162 E F2 -(extglob)3.162 E F0 .662(shell option is enabled,)3.162 F F2(\()3.162 E -F0(will also inhibit e)108 196.8 Q(xpansion.)-.15 E(Se)108 213.6 Q -.15 -(ve)-.25 G .109(ral shell options settable with the).15 F F2(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.259(If the)108 225.6 R F2 -(histv)3.759 E(erify)-.1 E F0 1.259 -(shell option is enabled \(see the description of the)3.759 F F2(shopt) -3.759 E F0 -.2(bu)3.759 G 1.259(iltin\), and).2 F F2 -.18(re)3.758 G -(adline).18 E F0 1.258(is being)3.758 F 1.497(used, history substitutio\ -ns are not immediately passed to the shell parser)108 237.6 R 6.498(.I) --.55 G 1.498(nstead, the e)-6.498 F 1.498(xpanded line is)-.15 F 2.228 -(reloaded into the)108 249.6 R F2 -.18(re)4.728 G(adline).18 E F0 2.228 +-.25 F F3(=)3.162 E F0 5.662(.I)C 3.162(ft)-5.662 G(he)-3.162 E F3 +(extglob)3.162 E F0 .662(shell option is enabled,)3.162 F F3(\()3.163 E +F0(will also inhibit e)108 556.8 Q(xpansion.)-.15 E(Se)108 573.6 Q -.15 +(ve)-.25 G .11(ral shell options settable with the).15 F F3(shopt)2.61 E +F0 -.2(bu)2.61 G .109(iltin may be used to tailor the beha).2 F .109 +(vior of history e)-.2 F(xpansion.)-.15 E 1.258(If the)108 585.6 R F3 +(histv)3.758 E(erify)-.1 E F0 1.259 +(shell option is enabled \(see the description of the)3.758 F F3(shopt) +3.759 E F0 -.2(bu)3.759 G 1.259(iltin\), and).2 F F3 -.18(re)3.759 G +(adline).18 E F0 1.259(is being)3.759 F 1.498(used, history substitutio\ +ns are not immediately passed to the shell parser)108 597.6 R 6.497(.I) +-.55 G 1.497(nstead, the e)-6.497 F 1.497(xpanded line is)-.15 F 2.228 +(reloaded into the)108 609.6 R F3 -.18(re)4.728 G(adline).18 E F0 2.228 (editing b)4.728 F(uf)-.2 E 2.228(fer for further modi\214cation.)-.25 F -(If)7.228 E F2 -.18(re)4.728 G(adline).18 E F0 2.228 -(is being used, and the)4.728 F F2(histr)108 261.6 Q(eedit)-.18 E F0 +(If)7.228 E F3 -.18(re)4.728 G(adline).18 E F0 2.228 +(is being used, and the)4.728 F F3(histr)108 621.6 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 F2 -.18(re) -3.702 G(adline).18 E F0(editing)3.702 E -.2(bu)108 273.6 S -.25(ff).2 G -1.161(er for correction.).25 F(The)6.161 E F23.661 E F0 1.161 -(option to the)3.661 F F2(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 285.6 -S .055(pansion will do before using it.).15 F(The)5.055 E F22.555 -E F0 .055(option to the)2.555 F F2(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 297.6 Q -.15(xe)-.15 G +(ailed history substitution will be reloaded into the)-.1 F F3 -.18(re) +3.702 G(adline).18 E F0(editing)3.702 E -.2(bu)108 633.6 S -.25(ff).2 G +1.16(er for correction.).25 F(The)6.16 E F33.66 E F0 1.16 +(option to the)3.66 F F3(history)3.66 E F0 -.2(bu)3.661 G 1.161 +(iltin command may be used to see what a history).2 F -.15(ex)108 645.6 +S .056(pansion will do before using it.).15 F(The)5.056 E F32.556 +E F0 .056(option to the)2.556 F F3(history)2.555 E F0 -.2(bu)2.555 G +.055(iltin may be used to add commands to the).2 F +(end of the history list without actually e)108 657.6 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 314.4 R 2.2 +(ilable for subsequent recall.).25 E 2.2(The shell allo)108 674.4 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 -326.4 R F2(histchars)3.646 E F0(abo)3.646 E 1.446 -.15(ve u)-.15 H(nder) -.15 E F2 1.146(Shell V)3.646 F(ariables)-.92 E F0 3.646(\). The)B 1.147 +-.25 F 2.2(xpansion mechanism \(see the)-.15 F 1.147(description of)108 +686.4 R F3(histchars)3.647 E F0(abo)3.647 E 1.447 -.15(ve u)-.15 H(nder) +.15 E F3 1.147(Shell V)3.647 F(ariables)-.92 E F0 3.646(\). The)B 1.146 (shell uses the history comment character to)3.646 F -(mark history timestamps when writing the history \214le.)108 338.4 Q F2 -(Ev)87 355.2 Q(ent Designators)-.1 E F0(An e)108 367.2 Q -.15(ve)-.25 G -(nt designator is a reference to a command line entry in the history li\ -st.).15 E F2(!)108 384 Q F0 1.608(Start a history substitution, e)32.67 -F 1.608(xcept when follo)-.15 F 1.607(wed by a)-.25 F F2(blank)4.107 E -F0 4.107(,n)C -.25(ew)-4.107 G 1.607(line, carriage return, = or \().25 -F(\(when the)144 396 Q F2(extglob)2.5 E F0 -(shell option is enabled using the)2.5 E F2(shopt)2.5 E F0 -.2(bu)2.5 G -(iltin\).).2 E F2(!)108 408 Q F1(n)A F0(Refer to command line)27.67 E F1 -(n)2.5 E F0(.).24 E F2<21ad>108 420 Q F1(n)A F0 -(Refer to the current command line minus)21.97 E F1(n)2.5 E F0(.).24 E -F2(!!)108 432 Q F0(Refer to the pre)29.34 E(vious command.)-.25 E -(This is a synon)5 E(ym for `!\2551'.)-.15 E F2(!)108 444 Q F1(string)A -F0(Refer to the most recent command starting with)9.33 E F1(string)2.5 E -F0(.).22 E F2(!?)108 456 Q F1(string)A F2([?])A F0 1.022 -(Refer to the most recent command containing)144 468 R F1(string)3.522 E -F0 6.022(.T).22 G 1.022(he trailing)-6.022 F F2(?)3.522 E F0 1.022 -(may be omitted if)3.522 F F1(string)3.862 E F0(is)3.742 E(follo)144 480 -Q(wed immediately by a ne)-.25 E(wline.)-.25 E/F3 12/Times-Bold@0 SF(^) -108 497 Q F1(string1)-5 I F3(^)5 I F1(string2)-5 I F3(^)5 I F0 2.63 -(Quick substitution.)144 504 R 2.629(Repeat the last command, replacing) -7.629 F F1(string1)5.469 E F0(with)5.129 E F1(string2)5.129 E F0 7.629 -(.E).02 G(qui)-7.629 E -.25(va)-.25 G 2.629(lent to).25 F -.74(``)144 -516 S(!!:s/).74 E F1(string1)A F0(/)A F1(string2)A F0(/')A 2.5('\()-.74 -G(see)-2.5 E F2(Modi\214ers)2.5 E F0(belo)2.5 E(w\).)-.25 E F2(!#)108 -528 Q F0(The entire command line typed so f)27.67 E(ar)-.1 E(.)-.55 E F2 --.75(Wo)87 544.8 S(rd Designators).75 E F0 -.8(Wo)108 556.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 F2(:)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 568.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 F2(^)3.029 E F0(,)A F2 -($)3.029 E F0(,)A F2(*)3.029 E F0(,)A F23.029 E F0 3.029(,o)C(r) --3.029 E F2(%)3.029 E F0 5.529(.W)C(ords)-6.329 E 1.3 -(are numbered from the be)108 580.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 592.8 Q -F2 2.5(0\()108 609.6 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 621.6 Q -2.5(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E -F1(n)108.36 633.6 Q F0(The)30.64 E F1(n)2.5 E F0(th w)A(ord.)-.1 E F2(^) -108 645.6 Q F0(The \214rst ar)32.67 E 2.5(gument. That)-.18 F(is, w)2.5 -E(ord 1.)-.1 E F2($)108 657.6 Q F0(The last ar)31 E(gument.)-.18 E F2(%) -108 669.6 Q F0(The w)26 E(ord matched by the most recent `?)-.1 E F1 -(string)A F0(?' search.)A F1(x)108.77 681.6 Q F2A F1(y)A F0 2.5(Ar) -20.65 G(ange of w)-2.5 E(ords; `\255)-.1 E F1(y)A F0 2.5('a)C(bbre)-2.5 -E(viates `0\255)-.25 E F1(y)A F0('.)A F2(*)108 693.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 F1(1\255$)A F0 2.815 -('. It)B .315(is not an error to use)2.815 F F2(*)2.815 E F0 .315 -(if there is)2.815 F(just one w)144 705.6 Q(ord in the e)-.1 E -.15(ve) --.25 G(nt; the empty string is returned in that case.).15 E F2(x*)108 -717.6 Q F0(Abbre)26 E(viates)-.25 E F1(x\255$)2.5 E F0(.)A(GNU Bash-3.2) -72 768 Q(2008 April 5)148.455 E(44)198.445 E 0 Cg EP +(mark history timestamps when writing the history \214le.)108 698.4 Q +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(44)197.335 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<78ad>108 84 Q F0(Abbre)25.3 E(viates)-.25 E -/F2 10/Times-Italic@0 SF(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 100.8 Q -(ord designator is supplied without an e)-.1 E -.15(ve)-.25 G +-.35 E/F1 10/Times-Bold@0 SF(Ev)87 84 Q(ent Designators)-.1 E F0(An e) +108 96 Q -.15(ve)-.25 G(nt designator is a reference to a command line \ +entry in the history list.).15 E F1(!)108 112.8 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 124.8 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 136.8 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 +148.8 Q F2(n)A F0(Refer to the current command line minus)21.97 E F2(n) +2.5 E F0(.).24 E F1(!!)108 160.8 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 172.8 Q F2(string)A F0 +(Refer to the most recent command starting with)9.33 E F2(string)2.5 E +F0(.).22 E F1(!?)108 184.8 Q F2(string)A F1([?])A F0 1.022 +(Refer to the most recent command containing)144 196.8 R F2(string)3.522 +E F0 6.022(.T).22 G 1.022(he trailing)-6.022 F F1(?)3.522 E F0 1.022 +(may be omitted if)3.522 F F2(string)3.861 E F0(is)3.741 E(follo)144 +208.8 Q(wed immediately by a ne)-.25 E(wline.)-.25 E/F3 12/Times-Bold@0 +SF(^)108 225.8 Q F2(string1)-5 I F3(^)5 I F2(string2)-5 I F3(^)5 I F0 +2.629(Quick substitution.)144 232.8 R 2.629 +(Repeat the last command, replacing)7.629 F F2(string1)5.469 E F0(with) +5.129 E F2(string2)5.129 E F0 7.629(.E).02 G(qui)-7.629 E -.25(va)-.25 G +2.63(lent to).25 F -.74(``)144 244.8 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 256.8 Q F0 +(The entire command line typed so f)27.67 E(ar)-.1 E(.)-.55 E F1 -.75 +(Wo)87 273.6 S(rd Designators).75 E F0 -.8(Wo)108 285.6 S 1.314 +(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.313 +(separates the e)3.813 F -.15(ve)-.25 G 1.313(nt speci\214cation).15 F +.529(from the w)108 297.6 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 F13.029 E F0 3.029(,o)C(r) +-3.029 E F1(%)3.029 E F0 5.53(.W)C(ords)-6.33 E 1.301 +(are numbered from the be)108 309.6 R 1.301 +(ginning of the line, with the \214rst w)-.15 F 1.3 +(ord being denoted by 0 \(zero\).)-.1 F -.8(Wo)6.3 G 1.3(rds are).8 F +(inserted into the current line separated by single spaces.)108 321.6 Q +F1 2.5(0\()108 338.4 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 350.4 Q +2.5(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E +F2(n)108.36 362.4 Q F0(The)30.64 E F2(n)2.5 E F0(th w)A(ord.)-.1 E F1(^) +108 374.4 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 386.4 Q F0(The last ar)31 E(gument.)-.18 E F1(%) +108 398.4 Q F0(The w)26 E(ord matched by the most recent `?)-.1 E F2 +(string)A F0(?' search.)A F2(x)108.77 410.4 Q F1A 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 422.4 Q F0 .315 +(All of the w)31 F .315(ords b)-.1 F .315(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.816 E F0 .316 +(if there is)2.816 F(just one w)144 434.4 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 +446.4 Q F0(Abbre)26 E(viates)-.25 E F2(x\255$)2.5 E F0(.)A F1<78ad>108 +458.4 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 475.2 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 117.6 Q F0 .183 -(After the optional w)108 129.6 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 141.6 Q F1(h) -108 158.4 Q F0(Remo)30.44 E .3 -.15(ve a t)-.15 H +-.15(ve)-.25 G(nt.).15 E F1(Modi\214ers)87 492 Q F0 .184 +(After the optional w)108 504 R .184(ord designator)-.1 F 2.684(,t)-.4 G +.183(here may appear a sequence of one or more of the follo)-2.684 F +.183(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 516 Q F1(h)108 +532.8 Q F0(Remo)30.44 E .3 -.15(ve a t)-.15 H (railing \214le name component, lea).15 E(ving only the head.)-.2 E F1 -(t)108 170.4 Q F0(Remo)32.67 E .3 -.15(ve a)-.15 H +(t)108 544.8 Q F0(Remo)32.67 E .3 -.15(ve a)-.15 H (ll leading \214le name components, lea).15 E(ving the tail.)-.2 E F1(r) -108 182.4 Q F0(Remo)31.56 E .3 -.15(ve a t)-.15 H(railing suf).15 E +108 556.8 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 194.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 206.4 +(ving the basename.)-.2 E F1(e)108 568.8 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 580.8 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 218.4 Q F0 +E -.15(xe)-.15 G(cute it.).15 E F1(q)108 592.8 Q F0 (Quote the substituted w)30.44 E(ords, escaping further substitutions.) --.1 E F1(x)108 230.4 Q F0(Quote the substituted w)31 E(ords as with)-.1 +-.1 E F1(x)108 604.8 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 242.4 Q F2(old)A F1(/)A -F2(ne)A(w)-.15 E F1(/)A F0(Substitute)144 254.4 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 +2.5 E F0(and ne)2.5 E(wlines.)-.25 E F1(s/)108 616.8 Q F2(old)A F1(/)A +F2(ne)A(w)-.15 E F1(/)A F0(Substitute)144 628.8 Q F2(ne)3.081 E(w)-.15 E +F0 .221(for the \214rst occurrence of)3.031 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 -266.4 R .617 +(yd)-.15 G .221(elimiter can be used in place)-2.721 F .617(of /.)144 +640.8 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 278.4 R F2(old)3.396 E F0(and)3.936 E F2(ne) +5.617 F -.15(ve)-.25 G .617(nt line.).15 F .616(The delimiter may)5.616 +F .666(be quoted in)144 652.8 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 290.4 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 302.4 Q F2(string) +F0 5.666(.A).77 G .275(single backslash will quote the &.)144 664.8 R +(If)5.275 E F2(old)3.004 E F0 .274(is null, it is set to the last)3.544 +F F2(old)3.004 E F0 .274(substituted, or)3.544 F 2.774(,i)-.4 G 2.774 +(fn)-2.774 G 2.774(op)-2.774 G(re)-2.774 E(vi-)-.25 E +(ous history substitutions took place, the last)144 676.8 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 314.4 Q F0(Repeat the pre)27.67 E(vious substitution.)-.25 E F1 -(g)108 326.4 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 338.4 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 350.4 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 362.4 Q F0 -(.)A F1(G)108 374.4 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 391.2 Q(UIL)-.11 E -(TIN COMMANDS)-1.007 E F0 .062(Unless otherwise noted, each b)108 403.2 +(&)108 688.8 Q F0(Repeat the pre)27.67 E(vious substitution.)-.25 E F1 +(g)108 700.8 Q F0 .397(Cause changes to be applied o)31 F -.15(ve)-.15 G +2.897(rt).15 G .398(he entire e)-2.897 F -.15(ve)-.25 G .398(nt line.) +.15 F .398(This is used in conjunction with `)5.398 F F1(:s)A F0 2.898 +('\()C(e.g.,)-2.898 E(`)144 712.8 Q F1(:gs/)A F2(old)A F1(/)A F2(ne)A(w) +-.15 E F1(/)A F0 1.219('\) or `)B F1(:&)A F0 3.719('. If)B 1.219 +(used with `)3.719 F F1(:s)A F0 1.218(', an)B 3.718(yd)-.15 G 1.218 +(elimiter can be used in place of /, and the \214nal)-3.718 F .089 +(delimiter is optional if it is the last character of the e)144 724.8 R +-.15(ve)-.25 G .09(nt line.).15 F(An)5.09 E F1(a)2.59 E F0 .09 +(may be used as a synon)2.59 F .09(ym for)-.15 F(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(45)197.335 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(g)144 84 Q F0(.)A F1(G)108 96 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/F2 10.95/Times-Bold@0 SF(SHELL B)72 112.8 Q(UIL)-.11 E +(TIN COMMANDS)-1.007 E F0 .063(Unless otherwise noted, each b)108 124.8 R .062(uiltin command documented in this section as accepting options p\ -receded by)-.2 F F1108 415.2 Q F0(accepts)3.8 E F13.8 E F0 1.3 +receded by)-.2 F F1108 136.8 Q F0(accepts)3.8 E F13.8 E F0 1.3 (to signify the end of the options.)3.8 F -.15(Fo)6.3 G 3.8(re).15 G 1.3 (xample, the)-3.95 F F1(:)3.8 E F0(,)A F1(true)3.8 E F0(,)A F1(false)3.8 E F0 3.8(,a)C(nd)-3.8 E F1(test)3.8 E F0 -.2(bu)3.8 G 1.3(iltins do not) -.2 F(accept options.)108 427.2 Q F1(:)108 445.2 Q F0([)2.5 E F2(ar)A -(guments)-.37 E F0(])A .451(No ef)144 457.2 R .451 -(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 .452(and performing an)3.222 F -2.952(ys)-.15 G(peci\214ed)-2.952 E 2.5(redirections. A)144 469.2 R -(zero e)2.5 E(xit code is returned.)-.15 E F1(.)110.5 486 Q F2 -(\214lename)6.666 E F0([)2.5 E F2(ar)A(guments)-.37 E F0(])A F1(sour)108 -498 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 510 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.68 -(status of the last command e)144 522 R -.15(xe)-.15 G 1.68(cuted from) -.15 F F2(\214lename)4.18 E F0 6.68(.I).18 G(f)-6.68 E F2(\214lename)6.09 -E F0 1.68(does not contain a slash, \214le)4.36 F .608(names in)144 534 -R/F4 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 .832(need not be e)144 546 R -.15(xe)-.15 G 3.332 -(cutable. When).15 F F1(bash)3.332 E F0 .832(is not in)3.332 F F2 .832 -(posix mode)3.332 F F0 3.332(,t)C .833 -(he current directory is searched if no)-3.332 F .982 -(\214le is found in)144 558 R F4 -.666(PA)3.481 G(TH)-.189 E/F5 9 +.2 F(accept options.)108 148.8 Q F1(:)108 166.8 Q F0([)2.5 E/F3 10 +/Times-Italic@0 SF(ar)A(guments)-.37 E F0(])A .452(No ef)144 178.8 R +.452(fect; the command does nothing be)-.25 F .452(yond e)-.15 F +(xpanding)-.15 E F3(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 +190.8 R(zero e)2.5 E(xit code is returned.)-.15 E F1(.)110.5 207.6 Q F3 +(\214lename)6.666 E F0([)2.5 E F3(ar)A(guments)-.37 E F0(])A F1(sour)108 +219.6 Q(ce)-.18 E F3(\214lename)2.5 E F0([)2.5 E F3(ar)A(guments)-.37 E +F0(])A 1.02(Read and e)144 231.6 R -.15(xe)-.15 G 1.02 +(cute commands from).15 F F3(\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.68(status of the last command e)144 243.6 R -.15(xe)-.15 G +1.68(cuted from).15 F F3(\214lename)4.18 E F0 6.68(.I).18 G(f)-6.68 E F3 +(\214lename)6.09 E F0 1.68(does not contain a slash, \214le)4.36 F .608 +(names in)144 255.6 R/F4 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 F3 +(\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 267.6 +R -.15(xe)-.15 G 3.333(cutable. When).15 F F1(bash)3.333 E F0 .832 +(is not in)3.333 F F3 .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 279.6 R F4 -.666(PA)3.481 G(TH)-.189 E/F5 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 .981(f, the)-.25 F F4 -.666(PA)144 570 -S(TH)-.189 E F0 .112(is not searched.)2.362 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 582 Q F0 .342(is e)2.842 F -.15(xe)-.15 G 2.842 -(cuted. Otherwise).15 F .342(the positional parameters are unchanged.) -2.842 F .341(The return status is the)5.341 F .716 -(status of the last command e)144 594 R .716 +(iltin command is turned of).2 F .982(f, the)-.25 F F4 -.666(PA)144 +291.6 S(TH)-.189 E F0 .112(is not searched.)2.363 F .112(If an)5.112 F +(y)-.15 E F3(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 F3 +(\214lename)144 303.6 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 315.6 R .716 (xited within the script \(0 if no commands are e)-.15 F -.15(xe)-.15 G -.716(cuted\), and f).15 F .716(alse if)-.1 F F2(\214lename)145.91 606 Q -F0(is not found or cannot be read.)2.68 E F1(alias)108 622.8 Q F0([)2.5 -E F1A F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 2.5(].)C -(..])-2.5 E F1(Alias)144 634.8 Q F0 2.725(with no ar)5.225 F 2.724 +.716(cuted\), and f).15 F .715(alse if)-.1 F F3(\214lename)145.91 327.6 +Q F0(is not found or cannot be read.)2.68 E F1(alias)108 344.4 Q F0([) +2.5 E F1A F0 2.5(][)C F3(name)-2.5 E F0([=)A F3(value)A F0 2.5(].) +C(..])-2.5 E F1(Alias)144 356.4 Q F0 2.724(with no ar)5.224 F 2.724 (guments or with the)-.18 F F15.224 E F0 2.724 -(option prints the list of aliases in the form)5.224 F F1(alias)5.224 E -F2(name)144 646.8 Q F0(=)A F2(value)A F0 .58(on standard output.)3.08 F +(option prints the list of aliases in the form)5.224 F F1(alias)5.225 E +F3(name)144 368.4 Q F0(=)A F3(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 658.8 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) +(guments are supplied, an alias is de\214ned for each)-.18 F F3(name) +3.08 E F0(whose)144 380.4 Q F3(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 F3(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 670.8 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 .054(is sup-)2.554 -F 1.314(plied, the name and v)144 682.8 R 1.314 +(stitution when the alias is e)144 392.4 R 2.554(xpanded. F)-.15 F .054 +(or each)-.15 F F3(name)2.554 E F0 .054(in the ar)2.554 F .054 +(gument list for which no)-.18 F F3(value)2.554 E F0 .053(is sup-)2.553 +F 1.313(plied, the name and v)144 404.4 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.313(is gi)3.814 F --.15(ve)-.25 G 3.813(nf).15 G(or)-3.813 E -(which no alias has been de\214ned.)144 694.8 Q(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(45)198.445 E 0 Cg EP -%%Page: 46 46 +(returns true unless a)3.814 F F3(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 416.4 Q F1(bg)108 433.2 Q F0([) +2.5 E F3(jobspec)A F0(...])2.5 E .745(Resume each suspended job)144 +445.2 R F3(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 F3(job-)4.984 E(spec)144 457.2 Q F0 .671 +(is not present, the shell')3.481 F 3.171(sn)-.55 G .672(otion of the) +-3.171 F F3(curr)3.172 E .672(ent job)-.37 F F0 .672(is used.)3.172 F F1 +(bg)5.672 E F3(jobspec)4.912 E F0 .672(returns 0 unless run)3.482 F .419 +(when job control is disabled or)144 469.2 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 F3(jobspec)2.918 E F0 -.1(wa)2.918 G 2.918(sn).1 G +(ot)-2.918 E(found or w)144 481.2 Q(as started without job control.)-.1 +E F1(bind)108 498 Q F0([)2.5 E F1A F3 -.1(ke)2.5 G(ymap)-.2 E F0 +2.5(][)C F1(\255lpsvPSV)-2.5 E F0(])A F1(bind)108 510 Q F0([)2.5 E F1 +A F3 -.1(ke)2.5 G(ymap)-.2 E F0 2.5(][)C F1-2.5 E F3 +(function)2.5 E F0 2.5(][)C F1-2.5 E F3(function)2.5 E F0 2.5(][)C +F1-2.5 E F3 -.1(ke)2.5 G(yseq)-.2 E F0(])A F1(bind)108 522 Q F0([) +2.5 E F1A F3 -.1(ke)2.5 G(ymap)-.2 E F0(])A F12.5 E F3 +(\214lename)2.5 E F1(bind)108 534 Q F0([)2.5 E F1A F3 -.1(ke)2.5 G +(ymap)-.2 E F0(])A F12.5 E F3 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F3 +(shell\255command)A F1(bind)108 546 Q F0([)2.5 E F1A F3 -.1(ke)2.5 +G(ymap)-.2 E F0(])A F3 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F3 +(function\255name)A F1(bind)108 558 Q F3 -.37(re)2.5 G +(adline\255command).37 E F0 .238(Display current)144 570 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 582 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 F3 +(.inputr)144 594 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 606 R(if supplied, ha)2.5 E +.3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 618 +Q F3 -.1(ke)2.5 G(ymap)-.2 E F0(Use)180 630 Q F3 -.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 F3 -.1(ke) +180 642 S(ymap)-.2 E F0 3.192(names are)5.882 F F3 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 654 Q F0 4.43(,a)C(nd)-4.43 E F3(vi\255insert)4.429 E +F0(.).68 E F3(vi)6.929 E F0 1.929(is equi)4.429 F -.25(va)-.25 G 1.929 +(lent to).25 F F3(vi\255command)4.429 E F0(;)A F3(emacs)4.429 E F0 1.929 +(is equi)4.429 F -.25(va)-.25 G 1.929(lent to).25 F F3(emacs\255standar) +180 666 Q(d)-.37 E F0(.)A F1144 678 Q F0(List the names of all) +27.52 E F1 -.18(re)2.5 G(adline).18 E F0(functions.)2.5 E F1144 +690 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 F1144 702 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 +144 714 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 726 S 2.5(yt).1 G(hat the)-2.5 +E 2.5(yc)-.15 G(an be re-read.)-2.5 E(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(46)197.335 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(bg)108 84 Q F0([)2.5 E/F2 10/Times-Italic@0 -SF(jobspec)A F0(...])2.5 E .744(Resume each suspended job)144 96 R F2 -(jobspec)3.244 E F0 .745 -(in the background, as if it had been started with)3.244 F F1(&)3.245 E -F0 5.745(.I)C(f)-5.745 E F2(job-)4.985 E(spec)144 108 Q F0 .672 -(is not present, the shell')3.482 F 3.172(sn)-.55 G .672(otion of the) --3.172 F F2(curr)3.172 E .672(ent job)-.37 F F0 .672(is used.)3.172 F F1 -(bg)5.671 E F2(jobspec)4.911 E F0 .671(returns 0 unless run)3.481 F .418 -(when job control is disabled or)144 120 R 2.919(,w)-.4 G .419 -(hen run with job control enabled, an)-2.919 F 2.919(ys)-.15 G -(peci\214ed)-2.919 E F2(jobspec)2.919 E F0 -.1(wa)2.919 G 2.919(sn).1 G -(ot)-2.919 E(found or w)144 132 Q(as started without job control.)-.1 E -F1(bind)108 148.8 Q F0([)2.5 E F1A F2 -.1(ke)2.5 G(ymap)-.2 E F0 -2.5(][)C F1(\255lpsvPSV)-2.5 E F0(])A F1(bind)108 160.8 Q F0([)2.5 E F1 -A F2 -.1(ke)2.5 G(ymap)-.2 E F0 2.5(][)C F1-2.5 E F2 -(function)2.5 E F0 2.5(][)C F1-2.5 E F2(function)2.5 E F0 2.5(][)C -F1-2.5 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(])A F1(bind)108 172.8 Q F0 -([)2.5 E F1A F2 -.1(ke)2.5 G(ymap)-.2 E F0(])A F12.5 E F2 -(\214lename)2.5 E F1(bind)108 184.8 Q F0([)2.5 E F1A F2 -.1(ke)2.5 -G(ymap)-.2 E F0(])A F12.5 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F2 -(shell\255command)A F1(bind)108 196.8 Q F0([)2.5 E F1A 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 208.8 Q F2 -.37(re)2.5 G -(adline\255command).37 E F0 .239(Display current)144 220.8 R F1 -.18(re) -2.739 G(adline).18 E F0 -.1(ke)2.739 G 2.739(ya)-.05 G .239 -(nd function bindings, bind a k)-2.739 F .539 -.15(ey s)-.1 H .238 -(equence to a).15 F F1 -.18(re)2.738 G(adline).18 E F0 .238(function or) -2.738 F .475(macro, or set a)144 232.8 R F1 -.18(re)2.975 G(adline).18 E -F0 -.25(va)2.975 G 2.975(riable. Each).25 F .476(non-option ar)2.976 F -.476(gument is a command as it w)-.18 F .476(ould appear in)-.1 F F2 -(.inputr)144 244.8 Q(c)-.37 E F0 2.984(,b).31 G .484 -(ut each binding or command must be passed as a separate ar)-3.184 F -.483(gument; e.g., '"\\C\255x\\C\255r":)-.18 F 2.5 -(re\255read\255init\255\214le'. Options,)144 256.8 R(if supplied, ha)2.5 -E .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 -268.8 Q F2 -.1(ke)2.5 G(ymap)-.2 E F0(Use)180 280.8 Q F2 -.1(ke)5.158 G -(ymap)-.2 E F0 2.658(as the k)5.348 F -.15(ey)-.1 G 2.658(map to be af) -.15 F 2.659(fected by the subsequent bindings.)-.25 F(Acceptable)7.659 E -F2 -.1(ke)180 292.8 S(ymap)-.2 E F0 3.193(names are)5.883 F F2 3.193 -(emacs, emacs\255standar)5.693 F 3.192 -(d, emacs\255meta, emacs\255ctlx, vi, vi\255mo)-.37 F(ve)-.1 E(,)-.1 E -(vi\255command)180 304.8 Q F0 4.429(,a)C(nd)-4.429 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.93(lent to).25 F F2 -(emacs\255standar)180 316.8 Q(d)-.37 E F0(.)A F1144 328.8 Q F0 -(List the names of all)27.52 E F1 -.18(re)2.5 G(adline).18 E F0 -(functions.)2.5 E F1144 340.8 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 F1144 352.8 -Q F0(List current)24.19 E F1 -.18(re)2.5 G(adline).18 E F0 -(function names and bindings.)2.5 E F1144 364.8 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 376.8 S 2.5(yt).1 G -(hat the)-2.5 E 2.5(yc)-.15 G(an be re-read.)-2.5 E F1144 388.8 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 F1144 400.8 Q F0(Display)25.3 E F1 -.18(re)2.5 G +-.35 E/F1 10/Times-Bold@0 SF144 84 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 F1144 96 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 F1144 412.8 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 F1144 424.8 Q F2(\214lename)2.5 E F0(Read k)180 -436.8 Q .3 -.15(ey b)-.1 H(indings from).15 E F2(\214lename)2.5 E F0(.)A -F1144 448.8 Q F2(function)2.5 E F0(Query about which k)180 460.8 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 F1144 472.8 Q F2(function) -2.5 E F0(Unbind all k)180 484.8 Q -.15(ey)-.1 G 2.5(sb).15 G -(ound to the named)-2.5 E F2(function)2.5 E F0(.)A F1144 496.8 Q -F2 -.1(ke)2.5 G(yseq)-.2 E F0(Remo)180 508.8 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 F1144 520.8 Q F2 -.1(ke)2.5 G(yseq)-.2 E F1(:)A F2 -(shell\255command)A F0(Cause)180 532.8 Q F2(shell\255command)2.5 E F0 -(to be e)2.5 E -.15(xe)-.15 G(cuted whene).15 E -.15(ve)-.25 G(r).15 E -F2 -.1(ke)2.5 G(yseq)-.2 E F0(is entered.)2.5 E(The return v)144 549.6 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 -566.4 Q(eak)-.18 E F0([)2.5 E F2(n)A F0(])A .054(Exit from within a)144 -578.4 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/F3 10/Symbol SF2.555 E F0(1.)2.555 E(If)144 590.4 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 the shell is not e)144 602.4 Q -.15(xe) --.15 G(cuting a loop when).15 E F1(br)2.5 E(eak)-.18 E F0(is e)2.5 E --.15(xe)-.15 G(cuted.).15 E F1 -.2(bu)108 619.2 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 631.2 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 +(an be re-read.)-2.5 E F1144 108 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 F1144 120 Q/F2 10/Times-Italic@0 SF(\214lename)2.5 E F0 +(Read k)180 132 Q .3 -.15(ey b)-.1 H(indings from).15 E F2(\214lename) +2.5 E F0(.)A F1144 144 Q F2(function)2.5 E F0(Query about which k) +180 156 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 F1144 168 Q F2(function) +2.5 E F0(Unbind all k)180 180 Q -.15(ey)-.1 G 2.5(sb).15 G +(ound to the named)-2.5 E F2(function)2.5 E F0(.)A F1144 192 Q F2 +-.1(ke)2.5 G(yseq)-.2 E F0(Remo)180 204 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 +F1144 216 Q F2 -.1(ke)2.5 G(yseq)-.2 E F1(:)A F2(shell\255command) +A F0(Cause)180 228 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 240 Q F0 1.113(is e)3.613 F -.15(xe)-.15 +G 1.113(cuted, the shell sets the).15 F F1(READLINE_LINE)3.613 E F0 -.25 +(va)3.613 G 1.113(riable to the contents of the).25 F F1 -.18(re)180 252 +S(adline).18 E F0 .587(line b)3.087 F(uf)-.2 E .587(fer and the)-.25 F +F1(READLINE_POINT)3.087 E F0 -.25(va)3.087 G .586 +(riable to the current location of the).25 F 1.24(insertion point.)180 +264 R 1.241(If the e)6.241 F -.15(xe)-.15 G 1.241 +(cuted command changes the v).15 F 1.241(alue of)-.25 F F1 +(READLINE_LINE)3.741 E F0(or)3.741 E F1(READLINE_POINT)180 276 Q F0 2.5 +(,t)C(hose ne)-2.5 E 2.5(wv)-.25 G +(alues will be re\215ected in the editing state.)-2.75 E(The return v) +144 292.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 309.6 Q(eak)-.18 E F0([)2.5 E F2(n)A F0(])A .055 +(Exit from within a)144 321.6 R F1 -.25(fo)2.555 G(r).25 E F0(,)A F1 +(while)2.555 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.414 E F0 .054(must be)2.794 F/F3 10/Symbol SF2.554 +E F0(1.)2.554 E(If)144 333.6 Q F2(n)3.074 E F0 .215(is greater than the\ + number of enclosing loops, all enclosing loops are e)2.954 F 2.715 +(xited. The)-.15 F .215(return v)2.715 F(alue)-.25 E(is 0 unless)144 +345.6 Q F2(n)2.5 E F0(is not greater than or equal to 1.)2.5 E F1 -.2 +(bu)108 362.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 374.4 Q .793 +(ecute the speci\214ed shell b)-.15 F .793(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 .792(xit status.)-.15 F .792(This is useful)5.792 F .615 (when de\214ning a function whose name is the same as a shell b)144 -643.2 R .615(uiltin, retaining the functionality of)-.2 F .57(the b)144 -655.2 R .57(uiltin within the function.)-.2 F(The)5.57 E F1(cd)3.07 E F0 +386.4 R .616(uiltin, retaining the functionality of)-.2 F .57(the b)144 +398.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 667.2 Q(alse if)-.1 +5.57(.T)-.65 G .57(he return status)-5.57 F(is f)144 410.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(cd)108 684 Q F0([)2.5 E F1(\255L|-P)A F0 2.5 -(][)C F2(dir)-2.5 E F0(])A .21(Change the current directory to)144 696 R -F2(dir)2.71 E F0 5.21(.T)C .21(he v)-5.21 F(ariable)-.25 E/F4 9 -/Times-Bold@0 SF(HOME)2.71 E F0 .21(is the def)2.46 F(ault)-.1 E F2(dir) -2.71 E F0 5.21(.T).73 G .21(he v)-5.21 F(ariable)-.25 E F4(CDP)2.71 E --.855(AT)-.666 G(H).855 E F0 .776 -(de\214nes the search path for the directory containing)144 708 R F2 -(dir)3.276 E F0 5.777(.A).73 G(lternati)-5.777 E 1.077 -.15(ve d)-.25 H -.777(irectory names in).15 F F4(CDP)3.277 E -.855(AT)-.666 G(H).855 E F0 -2.328(are separated by a colon \(:\).)144 720 R 4.828(An)7.328 G 2.328 -(ull directory name in)-4.828 F F4(CDP)4.828 E -.855(AT)-.666 G(H).855 E -F0 2.327(is the same as the current)4.578 F(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(46)198.445 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(directory)144 84 Q 2.779(,i)-.65 G .279(.e., `)-2.779 F(`)-.74 E -/F1 10/Times-Bold@0 SF(.)A F0 -.74('')C 5.279(.I).74 G(f)-5.279 E/F2 10 -/Times-Italic@0 SF(dir)3.129 E F0(be)3.509 E .28 -(gins with a slash \(/\), then)-.15 F/F3 9/Times-Bold@0 SF(CDP)2.78 E --.855(AT)-.666 G(H).855 E F0 .28(is not used. The)2.53 F F12.78 E -F0 .28(option says to)2.78 F .506(use the ph)144 96 R .506 -(ysical directory structure instead of follo)-.05 F .505 -(wing symbolic links \(see also the)-.25 F F13.005 E F0 .505 -(option to)3.005 F(the)144 108 Q F1(set)3.036 E F0 -.2(bu)3.036 G .537 -(iltin command\); the).2 F F13.037 E F0 .537 -(option forces symbolic links to be follo)3.037 F 3.037(wed. An)-.25 F -(ar)3.037 E .537(gument of)-.18 F F13.037 E F0 .586(is equi)144 120 -R -.25(va)-.25 G .586(lent to).25 F F3($OLDPWD)3.086 E/F4 9 -/Times-Roman@0 SF(.)A F0 .585(If a non-empty directory name from)5.086 F -F1(CDP)3.085 E -.95(AT)-.74 G(H).95 E F0 .585(is used, or if)3.085 F F1 -3.085 E F0 .585(is the)3.085 F .67(\214rst ar)144 132 R .67(gument,\ - and the directory change is successful, the absolute pathname of the n\ -e)-.18 F 3.17(ww)-.25 G(orking)-3.27 E .888 -(directory is written to the standard output.)144 144 R .888 -(The return v)5.888 F .887(alue is true if the directory w)-.25 F .887 -(as success-)-.1 F(fully changed; f)144 156 Q(alse otherwise.)-.1 E F1 -(caller)108 172.8 Q F0([)2.5 E F2 -.2(ex)C(pr).2 E F0(])A .253 -(Returns the conte)144 184.8 R .254(xt of an)-.15 F 2.754(ya)-.15 G(cti) --2.754 E .554 -.15(ve s)-.25 H .254 +(uiltin command.)-.2 E F1(caller)108 427.2 Q F0([)2.5 E F2 -.2(ex)C(pr) +.2 E F0(])A .253(Returns the conte)144 439.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.754 E F0(or)2.754 E F1(sour)144 196.8 Q +.254(cuted with the).15 F F1(.)2.754 E F0(or)2.754 E F1(sour)144 451.2 Q (ce)-.18 E F0 -.2(bu)3.063 G 3.063(iltins. W).2 F(ithout)-.4 E F2 -.2 (ex)3.062 G(pr).2 E F0(,)A F1(caller)3.062 E F0 .562 (displays the line number and source \214lename of the current)3.062 F -.253(subroutine call.)144 208.8 R .253(If a non-ne)5.253 F -.05(ga)-.15 +.253(subroutine call.)144 463.2 R .253(If a non-ne)5.253 F -.05(ga)-.15 G(ti).05 E .553 -.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 .254 (displays the line number)2.754 F 2.754(,s)-.4 G(ub-)-2.754 E 1.327(rou\ tine name, and source \214le corresponding to that position in the curr\ -ent e)144 220.8 R -.15(xe)-.15 G 1.327(cution call stack.).15 F(This e) -144 232.8 Q(xtra information may be used, for e)-.15 E .001 +ent e)144 475.2 R -.15(xe)-.15 G 1.327(cution call stack.).15 F(This e) +144 487.2 Q(xtra information may be used, for e)-.15 E .001 (xample, to print a stack trace.)-.15 F .001(The current frame is frame) -5.001 F 3.02(0. The)144 244.8 R .52(return v)3.02 F .52 +5.001 F 3.02(0. The)144 499.2 R .52(return v)3.02 F .52 (alue is 0 unless the shell is not e)-.25 F -.15(xe)-.15 G .519 (cuting a subroutine call or).15 F F2 -.2(ex)3.019 G(pr).2 E F0 .519 -(does not corre-)3.019 F(spond to a v)144 256.8 Q -(alid position in the call stack.)-.25 E F1(command)108 273.6 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 285.6 Q F2(command)2.956 E F0(with)3.527 E F2(ar) -3.087 E(gs)-.37 E F0 .257 +(does not corre-)3.019 F(spond to a v)144 511.2 Q +(alid position in the call stack.)-.25 E F1(cd)108 528 Q F0([)2.5 E F1 +(\255L|-P)A F0 2.5(][)C F2(dir)-2.5 E F0(])A .21 +(Change the current directory to)144 540 R F2(dir)2.71 E F0 5.21(.T)C +.21(he v)-5.21 F(ariable)-.25 E/F4 9/Times-Bold@0 SF(HOME)2.71 E F0 .21 +(is the def)2.46 F(ault)-.1 E F2(dir)2.71 E F0 5.21(.T).73 G .21(he v) +-5.21 F(ariable)-.25 E F4(CDP)2.71 E -.855(AT)-.666 G(H).855 E F0 .777 +(de\214nes the search path for the directory containing)144 552 R F2 +(dir)3.276 E F0 5.776(.A).73 G(lternati)-5.776 E 1.076 -.15(ve d)-.25 H +.776(irectory names in).15 F F4(CDP)3.276 E -.855(AT)-.666 G(H).855 E F0 +.764(are separated by a colon \(:\).)144 564 R 3.264(An)5.764 G .764 +(ull directory name in)-3.264 F F4(CDP)3.264 E -.855(AT)-.666 G(H).855 E +F0 .764(is the same as the current direc-)3.014 F(tory)144 576 Q 2.974 +(,i)-.65 G .474(.e., `)-2.974 F(`)-.74 E F1(.)A F0 -.74('')C 5.474(.I) +.74 G(f)-5.474 E F2(dir)3.324 E F0(be)3.704 E .474 +(gins with a slash \(/\), then)-.15 F F4(CDP)2.974 E -.855(AT)-.666 G(H) +.855 E F0 .473(is not used. The)2.724 F F12.973 E F0 .473 +(option says to use)2.973 F .579(the ph)144 588 R .579 +(ysical directory structure instead of follo)-.05 F .579 +(wing symbolic links \(see also the)-.25 F F13.08 E F0 .58 +(option to the)3.08 F F1(set)144 600 Q F0 -.2(bu)3.384 G .884 +(iltin command\); the).2 F F13.384 E F0 .884 +(option forces symbolic links to be follo)3.384 F 3.384(wed. An)-.25 F +(ar)3.383 E .883(gument of)-.18 F F13.383 E F0(is)3.383 E(equi)144 +612 Q -.25(va)-.25 G .062(lent to).25 F F4($OLDPWD)2.562 E/F5 9 +/Times-Roman@0 SF(.)A F0 .062(If a non-empty directory name from)4.562 F +F1(CDP)2.562 E -.95(AT)-.74 G(H).95 E F0 .063(is used, or if)2.562 F F1 +2.563 E F0 .063(is the \214rst)2.563 F(ar)144 624 Q .116(gument, an\ +d the directory change is successful, the absolute pathname of the ne) +-.18 F 2.615(ww)-.25 G .115(orking direc-)-2.715 F 1.164 +(tory is written to the standard output.)144 636 R 1.164(The return v) +6.164 F 1.165(alue is true if the directory w)-.25 F 1.165 +(as successfully)-.1 F(changed; f)144 648 Q(alse otherwise.)-.1 E F1 +(command)108 664.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 676.8 Q F2(command)2.957 +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 297.6 R F3 --.666(PA)3.002 G(TH)-.189 E F0 .502(are e)2.752 F -.15(xe)-.15 G 3.002 +(uiltin commands or)-.2 F .501(commands found in the)144 688.8 R F4 +-.666(PA)3.001 G(TH)-.189 E F0 .502(are e)2.751 F -.15(xe)-.15 G 3.002 (cuted. If).15 F(the)3.002 E F13.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 .231(performed using a def)144 309.6 R .231(ault v)-.1 F .231 +F -.15(ve)-.25 G .502(n, the search for).15 F F2(command)3.202 E F0(is) +3.772 E .232(performed using a def)144 700.8 R .231(ault v)-.1 F .231 (alue for)-.25 F F1 -.74(PA)2.731 G(TH)-.21 E F0 .231 (that is guaranteed to \214nd all of the standard utilities.)2.731 F(If) -5.232 E .175(either the)144 321.6 R F12.675 E F0(or)2.675 E F1 -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 F12.674 E -F0 .174(option causes)2.674 F 3.11(as)144 333.6 S .61(ingle w)-3.11 F +5.231 E .174(either the)144 712.8 R F12.674 E F0(or)2.674 E F1 +2.674 E F0 .175(option is supplied, a description of)2.674 F F2 +(command)2.875 E F0 .175(is printed.)3.445 F(The)5.175 E F12.675 E +F0 .175(option causes)2.675 F 3.11(as)144 724.8 S .61(ingle w)-3.11 F .61(ord indicating the command or \214le name used to in)-.1 F -.2(vo) -.4 G -.1(ke).2 G F2(command)3.41 E F0 .61(to be displayed; the)3.88 F -F1144 345.6 Q F0 .25(option produces a more v)2.75 F .25 -(erbose description.)-.15 F .249(If the)5.25 F F12.749 E F0(or) -2.749 E F12.749 E F0 .249(option is supplied, the e)2.749 F .249 -(xit status)-.15 F 1.004(is 0 if)144 357.6 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 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(47)197.335 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 SF144 84 Q F0 .249 +(option produces a more v)2.749 F .249(erbose description.)-.15 F .249 +(If the)5.249 F F12.749 E F0(or)2.749 E F12.75 E F0 .25 +(option is supplied, the e)2.75 F .25(xit status)-.15 F 1.005(is 0 if) +144 96 R/F2 10/Times-Italic@0 SF(command)3.705 E F0 -.1(wa)4.275 G 3.505 +(sf).1 G 1.005(ound, and 1 if not.)-3.505 F 1.004 (If neither option is supplied and an error occurred or)6.005 F F2 -(command)144.2 369.6 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 381.6 S +(command)144.2 108 Q F0 1.598(cannot be found, the e)4.868 F 1.599 +(xit status is 127.)-.15 F 1.599(Otherwise, the e)6.599 F 1.599 +(xit status of the)-.15 F F1(command)4.099 E F0 -.2(bu)144 120 S (iltin is the e).2 E(xit status of)-.15 E F2(command)2.5 E F0(.).77 E F1 -(compgen)108 398.4 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 410.4 R +(compgen)108 136.8 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(wor)-2.5 E(d) +-.37 E F0(])A .013(Generate possible completion matches for)144 148.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 422.4 R F1(complete)3.482 E F0 -.2(bu)3.481 G .981 +E F0 .013(s, which may be an)B 2.512(yo)-.15 G(ption)-2.512 E .981 +(accepted by the)144 160.8 R F1(complete)3.481 E F0 -.2(bu)3.481 G .981 (iltin with the e).2 F .981(xception of)-.15 F F13.481 E F0(and) -3.481 E F13.481 E F0 3.481(,a)C .981(nd write the matches to the) --3.481 F 1.415(standard output.)144 434.4 R 1.415(When using the)6.415 F +3.481 E F13.481 E F0 3.481(,a)C .982(nd write the matches to the) +-3.481 F 1.415(standard output.)144 172.8 R 1.415(When using the)6.415 F F13.915 E F0(or)3.915 E F13.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 446.4 Q(acilities, while a)-.1 E -.25(va) +F(grammable completion f)144 184.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 470.4 R .352 +-.25 E .352(The matches will be generated in the same w)144 208.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 -482.4 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 494.4 Q F2(wor)2.5 E(d)-.37 E F0 -(will be displayed.)2.5 E(The return v)144 518.4 Q +220.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 232.8 Q F2(wor)2.5 E(d)-.37 E F0 +(will be displayed.)2.5 E(The return v)144 256.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 535.2 Q F0([)3.265 E F1(\255abcdefgjksuv)A F0 3.265(][)C -F1-3.265 E F2(comp-option)3.265 E F0 3.265(][)C F1-3.265 E -F2(action)3.265 E F0 3.265(][)C F1-3.265 E F2(globpat)3.265 E F0 -3.265(][)C F1-3.265 E F2(wor)3.265 E(dlist)-.37 E F0 3.265(][)C F1 --3.265 E F2(function)3.265 E F0 3.265(][)C F1-3.265 E F2 -(command)108 547.2 Q F0(])A([)144 559.2 Q F1A F2(\214lterpat)2.5 E -F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(e\214x)-.37 E F0 2.5(][)C F1 --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 571.2 Q F0([)2.5 E F2(name)A -F0(...])2.5 E .634(Specify ho)144 583.2 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 F13.133 E F0 -.633(option is supplied, or if no)3.133 F .139(options are supplied, e) -144 595.2 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 607.2 R(The)5.31 E F12.81 E F0 .31 +(complete)108 273.6 Q F0([)3.033 E F1(\255abcdefgjksuv)A F0 3.033(][)C +F1-3.033 E F2(comp-option)3.033 E F0 3.033(][)C F1-3.033 E +F0 3.033(][)C F1-3.033 E F2(action)3.033 E F0 3.033(][)C F1 +-3.033 E F2(globpat)3.033 E F0 3.034(][)C F1-3.034 E F2(wor)3.034 +E(dlist)-.37 E F0 3.034(][)C F1-3.034 E F2(function)3.034 E F0(])A +([)108 285.6 Q F1A F2(command)2.5 E F0(])A([)144 297.6 Q F1A +F2(\214lterpat)2.5 E F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(e\214x)-.37 +E F0 2.5(][)C F1-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 309.6 Q F0([) +2.5 E F1A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E .633 +(Specify ho)144 321.6 R 3.133(wa)-.25 G -.18(rg)-3.133 G .633 +(uments to each).18 F F2(name)3.133 E F0 .633(should be completed.)3.133 +F .634(If the)5.634 F F13.134 E F0 .634 +(option is supplied, or if no)3.134 F .14(options are supplied, e)144 +333.6 R .139(xisting completion speci\214cations are printed in a w)-.15 +F .139(ay that allo)-.1 F .139(ws them to be)-.25 F .31 +(reused as input.)144 345.6 R(The)5.31 E F12.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 -(are supplied, all completion speci\214cations.)144 619.2 Q 1.437 +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.393 +(are supplied, all completion speci\214cations.)144 357.6 R(The)6.393 E +F13.893 E F0 1.392(option indicates that the remaining options) +3.892 F 1.304(and actions should apply to `)144 369.6 R(`empty')-.74 E +3.804('c)-.74 G 1.304 +(ommand completion; that is, completion attempted on a)-3.804 F +(blank line.)144 381.6 Q 1.438 (The process of applying these completion speci\214cations when w)144 -643.2 R 1.438(ord completion is attempted is)-.1 F(described abo)144 -655.2 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 679.2 R .856 -.15(ve t)-.2 H .555 +405.6 R 1.437(ord completion is attempted is)-.1 F(described abo)144 +417.6 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E +(ogrammable Completion)-.18 E F0(.)A .555 +(Other options, if speci\214ed, ha)144 441.6 R .855 -.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 F13.055 E F0(,)A F13.055 E F0 3.055 -(,a)C(nd)-3.055 E F13.055 E F0 .722(options \(and, if necessary) -144 691.2 R 3.222(,t)-.65 G(he)-3.222 E F13.222 E F0(and)3.222 E -F13.222 E F0 .723 -(options\) should be quoted to protect them from e)3.222 F(xpan-)-.15 E -(sion before the)144 703.2 Q F1(complete)2.5 E F0 -.2(bu)2.5 G -(iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(47)198.445 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 SF144 84 Q/F2 10/Times-Italic@0 SF -(comp-option)2.5 E F0(The)184 96 Q F2(comp-option)2.791 E F0 .291 +(guments to the)-.18 F F13.056 E F0(,)A F13.056 E F0 3.056 +(,a)C(nd)-3.056 E F13.056 E F0 .723(options \(and, if necessary) +144 453.6 R 3.223(,t)-.65 G(he)-3.223 E F13.223 E F0(and)3.223 E +F13.223 E F0 .722 +(options\) should be quoted to protect them from e)3.223 F(xpan-)-.15 E +(sion before the)144 465.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 F1144 477.6 Q +F2(comp-option)2.5 E F0(The)184 489.6 Q F2(comp-option)2.79 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 108 Q F2 -(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 120 Q F0 -.281(Perform the rest of the def)224 132 R(ault)-.1 E F1(bash)2.781 E F0 -.281(completions if the compspec generates no)2.781 F(matches.)224 144 Q -F1(default)184 156 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 168 Q F1(dir)184 180 Q(names)-.15 E F0(Perform direc\ -tory name completion if the compspec generates no matches.)224 192 Q F1 -(\214lenames)184 204 Q F0 -.7(Te)224 216 S .137(ll readline that the co\ -mpspec generates \214lenames, so it can perform an).7 F 2.637<798c>-.15 -G(le-)-2.637 E .496(name\255speci\214c processing \(lik)224 228 R 2.996 -(ea)-.1 G .496(dding a slash to directory names or suppress-)-2.996 F -(ing trailing spaces\).)224 240 Q -(Intended to be used with shell functions.)5 E F1(nospace)184 252 Q F0 +(yond the simple)-.15 F(generation of completions.)184 501.6 Q F2 +(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 513.6 Q F0 +.281(Perform the rest of the def)224 525.6 R(ault)-.1 E F1(bash)2.781 E +F0 .281(completions if the compspec generates no)2.781 F(matches.)224 +537.6 Q F1(default)184 549.6 Q F0 2.875(Use readline')10 F 5.375(sd)-.55 +G(ef)-5.375 E 2.876 +(ault \214lename completion if the compspec generates no)-.1 F(matches.) +224 561.6 Q F1(dir)184 573.6 Q(names)-.15 E F0(Perform directory name c\ +ompletion if the compspec generates no matches.)224 585.6 Q F1 +(\214lenames)184 597.6 Q F0 -.7(Te)224 609.6 S .137(ll readline that th\ +e compspec generates \214lenames, so it can perform an).7 F 2.636<798c> +-.15 G(le-)-2.636 E .496(name\255speci\214c processing \(lik)224 621.6 R +2.996(ea)-.1 G .496(dding a slash to directory names or suppress-)-2.996 +F(ing trailing spaces\).)224 633.6 Q +(Intended to be used with shell functions.)5 E F1(nospace)184 645.6 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 -264 Q F1(plusdirs)184 276 Q F0 1.985(After an)5.54 F 4.485(ym)-.15 G +657.6 Q F1(plusdirs)184 669.6 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 288 R 3.084(ym)-.15 G +-4.485 F .584(completion is attempted and an)224 681.6 R 3.084(ym)-.15 G .584(atches are added to the results of the other)-3.084 F(actions.)224 -300 Q F1144 312 Q F2(action)2.5 E F0(The)184 324 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 -336 Q F0(Alias names.)20.55 E(May also be speci\214ed as)5 E F12.5 -E F0(.)A F1(arrayv)184 348 Q(ar)-.1 E F0(Array v)224 360 Q -(ariable names.)-.25 E F1 4.7(binding Readline)184 372 R F0 -.1(ke)2.5 G -2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 384 S(iltin).2 E F0 -(Names of shell b)11.85 E(uiltin commands.)-.2 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(command)184 396 -Q F0(Command names.)224 408 Q(May also be speci\214ed as)5 E F12.5 -E F0(.)A F1(dir)184 420 Q(ectory)-.18 E F0(Directory names.)224 432 Q -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(disabled)184 444 -Q F0(Names of disabled shell b)224 456 Q(uiltins.)-.2 E F1(enabled)184 -468 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184 -480 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 F12.5 E F0(.)A F1(\214le)184 -492 Q F0(File names.)27.22 E(May also be speci\214ed as)5 E F12.5 -E F0(.)A F1(function)184 504 Q F0(Names of shell functions.)224 516 Q F1 -(gr)184 528 Q(oup)-.18 E F0(Group names.)14.62 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(helptopic)184 -540 Q F0(Help topics as accepted by the)224 552 Q F1(help)2.5 E F0 -.2 -(bu)2.5 G(iltin.).2 E F1(hostname)184 564 Q F0(Hostnames, as tak)224 576 -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 588 Q F0 +693.6 Q F1144 705.6 Q F2(action)2.5 E F0(The)184 717.6 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(GNU Bash-4.0)72 +768 Q(2008 May 25)147.345 E(48)197.335 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(alias)184 84 Q F0(Alias names.)20.55 E +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(arrayv)184 96 Q +(ar)-.1 E F0(Array v)224 108 Q(ariable names.)-.25 E F1 4.7 +(binding Readline)184 120 R F0 -.1(ke)2.5 G 2.5(yb)-.05 G(inding names.) +-2.5 E F1 -.2(bu)184 132 S(iltin).2 E F0(Names of shell b)11.85 E +(uiltin commands.)-.2 E(May also be speci\214ed as)5 E F12.5 E F0 +(.)A F1(command)184 144 Q F0(Command names.)224 156 Q +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(dir)184 168 Q +(ectory)-.18 E F0(Directory names.)224 180 Q(May also be speci\214ed as) +5 E F12.5 E F0(.)A F1(disabled)184 192 Q F0 +(Names of disabled shell b)224 204 Q(uiltins.)-.2 E F1(enabled)184 216 Q +F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184 228 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 F12.5 E F0(.)A F1(\214le)184 240 Q +F0(File names.)27.22 E(May also be speci\214ed as)5 E F12.5 E F0 +(.)A F1(function)184 252 Q F0(Names of shell functions.)224 264 Q F1(gr) +184 276 Q(oup)-.18 E F0(Group names.)14.62 E(May also be speci\214ed as) +5 E F12.5 E F0(.)A F1(helptopic)184 288 Q F0 +(Help topics as accepted by the)224 300 Q F1(help)2.5 E F0 -.2(bu)2.5 G +(iltin.).2 E F1(hostname)184 312 Q F0(Hostnames, as tak)224 324 Q +(en from the \214le speci\214ed by the)-.1 E/F2 9/Times-Bold@0 SF +(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 336 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 F12.5 E F0(.)A F1 -.1(ke)184 600 S -(yw).1 E(ord)-.1 E F0(Shell reserv)224 612 Q(ed w)-.15 E 2.5(ords. May) +(ay also be speci\214ed as)-5 E F12.5 E F0(.)A F1 -.1(ke)184 348 S +(yw).1 E(ord)-.1 E F0(Shell reserv)224 360 Q(ed w)-.15 E 2.5(ords. May) -.1 F(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1(running)184 -624 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve) --.25 G(.).15 E F1(ser)184 636 Q(vice)-.1 E F0(Service names.)10.67 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(setopt)184 648 Q +372 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve) +-.25 G(.).15 E F1(ser)184 384 Q(vice)-.1 E F0(Service names.)10.67 E +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(setopt)184 396 Q F0 -1.11(Va)14.45 G(lid ar)1.11 E(guments for the)-.18 E F12.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 660 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 672 Q F0 -(Signal names.)14.99 E F1(stopped)184 684 Q F0 +(shopt)184 408 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 420 Q F0 +(Signal names.)14.99 E F1(stopped)184 432 Q F0 (Names of stopped jobs, if job control is acti)6.66 E -.15(ve)-.25 G(.) -.15 E F1(user)184 696 Q F0(User names.)21.67 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1 -.1(va)184 708 S +.15 E F1(user)184 444 Q F0(User names.)21.67 E +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1 -.1(va)184 456 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 F12.5 E F0(.)A(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(48)198.445 E 0 Cg EP -%%Page: 49 49 +(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1144 468 Q/F3 +10/Times-Italic@0 SF(globpat)2.5 E F0 1.41(The \214lename e)184 480 R +1.411(xpansion pattern)-.15 F F3(globpat)3.911 E F0 1.411(is e)3.911 F +1.411(xpanded to generate the possible comple-)-.15 F(tions.)184 492 Q +F1144 504 Q F3(wor)2.5 E(dlist)-.37 E F0(The)184 516 Q F3(wor)3.64 +E(dlist)-.37 E F0 1.14(is split using the characters in the)3.64 F F2 +(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 528 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 540 Q(ord being completed.) +-.1 E F1144 552 Q F3(command)2.5 E(command)184 564 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 576 Q F1144 588 Q F3(function)2.5 E F0 1.18 +(The shell function)184 600 R F3(function)3.68 E F0 1.181(is e)3.681 F +-.15(xe)-.15 G 1.181(cuted in the current shell en).15 F 3.681 +(vironment. When)-.4 F 1.181(it \214n-)3.681 F .932 +(ishes, the possible completions are retrie)184 612 R -.15(ve)-.25 G +3.432(df).15 G .932(rom the v)-3.432 F .932(alue of the)-.25 F F2 +(COMPREPL)3.431 E(Y)-.828 E F0(array)3.181 E -.25(va)184 624 S(riable.) +.25 E F1144 636 Q F3(\214lterpat)2.5 E(\214lterpat)184 648 Q F0 +.733(is a pattern as used for \214lename e)3.233 F 3.233(xpansion. It) +-.15 F .733(is applied to the list of possible)3.233 F 1.596 +(completions generated by the preceding options and ar)184 660 R 1.596 +(guments, and each completion)-.18 F(matching)184 672 Q F3(\214lterpat) +3.204 E F0 .704(is remo)3.204 F -.15(ve)-.15 G 3.204(df).15 G .704 +(rom the list.)-3.204 F 3.204(Al)5.704 G(eading)-3.204 E F1(!)3.204 E F0 +(in)3.204 E F3(\214lterpat)3.205 E F0(ne)3.205 E -.05(ga)-.15 G .705 +(tes the pattern;).05 F(in this case, an)184 684 Q 2.5(yc)-.15 G +(ompletion not matching)-2.5 E F3(\214lterpat)2.5 E F0(is remo)2.5 E +-.15(ve)-.15 G(d.).15 E F1144 696 Q F3(pr)2.5 E(e\214x)-.37 E(pr) +184 708 Q(e\214x)-.37 E F0 .535(is added at the be)3.035 F .534 +(ginning of each possible completion after all other options ha)-.15 F +-.15(ve)-.2 G(been applied.)184 720 Q(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(49)197.335 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 SF144 84 Q/F2 10/Times-Italic@0 SF -(globpat)2.5 E F0 1.411(The \214lename e)184 96 R 1.411 -(xpansion pattern)-.15 F F2(globpat)3.911 E F0 1.411(is e)3.911 F 1.411 -(xpanded to generate the possible comple-)-.15 F(tions.)184 108 Q F1 -144 120 Q F2(wor)2.5 E(dlist)-.37 E F0(The)184 132 Q F2(wor)3.639 -E(dlist)-.37 E F0 1.14(is split using the characters in the)3.639 F/F3 9 -/Times-Bold@0 SF(IFS)3.64 E F0 1.14(special v)3.39 F 1.14 -(ariable as delimiters, and)-.25 F 2.008(each resultant w)184 144 R -2.008(ord is e)-.1 F 4.508(xpanded. The)-.15 F 2.007 -(possible completions are the members of the)4.508 F -(resultant list which match the w)184 156 Q(ord being completed.)-.1 E -F1144 168 Q F2(command)2.5 E(command)184 180 Q F0 1.055(is e)3.555 -F -.15(xe)-.15 G 1.055(cuted in a subshell en).15 F 1.056 -(vironment, and its output is used as the possible)-.4 F(completions.) -184 192 Q F1144 204 Q F2(function)2.5 E F0 1.181 -(The shell function)184 216 R F2(function)3.681 E F0 1.181(is e)3.681 F --.15(xe)-.15 G 1.181(cuted in the current shell en).15 F 3.68 -(vironment. When)-.4 F 1.18(it \214n-)3.68 F .932 -(ishes, the possible completions are retrie)184 228 R -.15(ve)-.25 G -3.432(df).15 G .932(rom the v)-3.432 F .932(alue of the)-.25 F F3 -(COMPREPL)3.432 E(Y)-.828 E F0(array)3.182 E -.25(va)184 240 S(riable.) -.25 E F1144 252 Q F2(\214lterpat)2.5 E(\214lterpat)184 264 Q F0 -.733(is a pattern as used for \214lename e)3.234 F 3.233(xpansion. It) --.15 F .733(is applied to the list of possible)3.233 F 1.596 -(completions generated by the preceding options and ar)184 276 R 1.596 -(guments, and each completion)-.18 F(matching)184 288 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 300 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 F1144 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 -(ginning of each possible completion after all other options ha)-.15 F --.15(ve)-.2 G(been applied.)184 336 Q F1144 348 Q F2(suf)2.5 E -2.81(\214x suf)-.18 F<8c78>-.18 E F0 +-.35 E/F1 10/Times-Bold@0 SF144 84 Q/F2 10/Times-Italic@0 SF(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 .467(The return v)144 364.8 R -.467(alue is true unless an in)-.25 F -.25(va)-.4 G .466 -(lid option is supplied, an option other than).25 F F12.966 E F0 -(or)2.966 E F12.966 E F0 .466(is sup-)2.966 F 1.361 -(plied without a)144 376.8 R F2(name)3.861 E F0(ar)3.861 E 1.361 -(gument, an attempt is made to remo)-.18 F 1.662 -.15(ve a c)-.15 H -1.362(ompletion speci\214cation for a).15 F F2(name)144 388.8 Q F0 +E .3 -.15(ve b)-.2 H(een applied.).15 E .466(The return v)144 100.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 F12.967 E F0 +(or)2.967 E F12.967 E F0 .467(is sup-)2.967 F 1.362 +(plied without a)144 112.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 124.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 405.6 Q F0([)2.5 E F1A F2(option)2.5 E F0 2.5(][)C +F1(compopt)108 141.6 Q F0([)2.5 E F1A F2(option)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 417.6 R F2(name)2.947 E F0 .447 +(Modify completion options for each)144 153.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(cution).15 E .725 -(completion if no)144 429.6 R F2(name)3.225 E F0 3.225(sa)C .725 -(re supplied.)-3.225 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 .726 -(n, display the completion options for).15 F(each)144 441.6 Q F2(name) -3.224 E F0 .724(or the current completion.)3.224 F .724(The possible v) +(s, or for the currently-e)B -.15(xe)-.15 G(cution).15 E .726 +(completion if no)144 165.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 177.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 .723(alid for the)-.25 F F1(com-)3.223 E(plete)144 453.6 Q F0 -.2(bu) +F .724(alid for the)-.25 F F1(com-)3.224 E(plete)144 189.6 Q F0 -.2(bu) 2.5 G(iltin described abo).2 E -.15(ve)-.15 G(.).15 E .327(The return v) -108 470.4 R .327(alue is true unless an in)-.25 F -.25(va)-.4 G .327 +108 206.4 R .327(alue is true unless an in)-.25 F -.25(va)-.4 G .327 (lid option is supplied, an attempt is made to modify the options for a) -.25 F F2(name)108 482.4 Q F0(for which no completion speci\214cation e) -2.5 E(xists, or an output error occurs.)-.15 E F1(continue)108 499.2 Q -F0([)2.5 E F2(n)A F0(])A 1.754(Resume the ne)144 511.2 R 1.754 +.25 F F2(name)108 218.4 Q F0(for which no completion speci\214cation e) +2.5 E(xists, or an output error occurs.)-.15 E F1(continue)108 235.2 Q +F0([)2.5 E F2(n)A F0(])A 1.753(Resume the ne)144 247.2 R 1.753 (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 523.2 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 +(select)4.254 E F0 4.254(loop. If)4.254 F F2(n)4.614 E F0 1.754 +(is speci\214ed,)4.494 F 1.209(resume at the)144 259.2 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/F3 10 /Symbol SF3.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 .668 -(loops, the last enclosing loop \(the `)144 535.2 R(`top-le)-.74 E -.15 -(ve)-.25 G(l').15 E 3.168('l)-.74 G .668(oop\) is resumed.)-3.168 F .667 -(The return v)5.667 F .667(alue is 0 unless the)-.25 F(shell is not e) -144 547.2 Q -.15(xe)-.15 G(cuting a loop when).15 E F1(continue)2.5 E F0 -(is e)2.5 E -.15(xe)-.15 G(cuted.).15 E F1(declar)108 564 Q(e)-.18 E F0 -([)2.5 E F1(\255afFirtx)A F0 2.5(][)C F1-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 -576 Q F0([)2.5 E F1(\255afFirtx)A F0 2.5(][)C F1-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 588 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 600 S -3.483(riables. The).25 F F13.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 -3.482 E F0 .982(is used)3.482 F(with)144 612 Q F2(name)3.579 E F0 -(ar)3.579 E 1.079(guments, additional options are ignored.)-.18 F(When) +(is greater than the number of enclosing)3.949 F .513 +(loops, the last enclosing loop \(the `)144 271.2 R(`top-le)-.74 E -.15 +(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 283.2 Q F1(declar)108 300 Q +(e)-.18 E F0([)2.5 E F1(\255afFirtx)A F0 2.5(][)C F1-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 312 Q F0([)2.5 E F1(\255afFirtx)A F0 2.5(][)C F1-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 324 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)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.764 +(nt).15 G 1.264(hen display the v)-3.764 F 1.264(alues of)-.25 F -.25 +(va)144 336 S 3.482(riables. The).25 F F13.482 E F0 .982 +(option will display the attrib)3.482 F .982(utes and v)-.2 F .983 +(alues of each)-.25 F F2(name)3.483 E F0 5.983(.W).18 G(hen)-5.983 E F1 +3.483 E F0 .983(is used)3.483 F(with)144 348 Q F2(name)3.58 E F0 +(ar)3.58 E 1.079(guments, additional options are ignored.)-.18 F(When) 6.079 E F13.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 624 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 636 R .046 -(If no other options are supplied with)5.046 F F12.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 648 S 1.363(lues of all shell v).25 F 3.863 -(ariables. The)-.25 F F13.863 E F0 1.362 -(option will restrict the display to shell functions.)3.863 F(The)6.362 -E F13.862 E F0 2.422(option inhibits the display of function de\ -\214nitions; only the function name and attrib)144 660 R 2.423(utes are) --.2 F 2.664(printed. If)144 672 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.382 -(where the function is de\214ned are displayed as well.)144 684 R(The) +3.579 E F0(ar)3.579 E(gu-)-.18 E .15(ments, it will display the attrib) +144 360 R .15(utes and v)-.2 F .151(alues of all v)-.25 F .151 +(ariables ha)-.25 F .151(ving the attrib)-.2 F .151 +(utes speci\214ed by the)-.2 F .047(additional options.)144 372 R .047 +(If no other options are supplied with)5.047 F F12.547 E F0(,)A F1 +(declar)2.547 E(e)-.18 E F0 .046(will display the attrib)2.546 F .046 +(utes and)-.2 F -.25(va)144 384 S 1.362(lues of all shell v).25 F 3.862 +(ariables. The)-.25 F F13.862 E F0 1.363 +(option will restrict the display to shell functions.)3.862 F(The)6.363 +E F13.863 E F0 2.422(option inhibits the display of function de\ +\214nitions; only the function name and attrib)144 396 R 2.422(utes are) +-.2 F 2.663(printed. If)144 408 R(the)2.663 E F1(extdeb)2.663 E(ug)-.2 E +F0 .164(shell option is enabled using)2.663 F F1(shopt)2.664 E F0 2.664 +(,t)C .164(he source \214le name and line number)-2.664 F 1.382 +(where the function is de\214ned are displayed as well.)144 420 R(The) 6.382 E F13.882 E F0 1.382(option implies)3.882 F F13.882 E -F0 6.382(.T)C 1.382(he follo)-6.382 F(wing)-.25 E .794 -(options can be used to restrict output to v)144 696 R .794 -(ariables with the speci\214ed attrib)-.25 F .793(ute or to gi)-.2 F -1.093 -.15(ve v)-.25 H(ariables)-.1 E(attrib)144 708 Q(utes:)-.2 E -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(49)198.445 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 SF144 84 Q F0(Each)25.3 E/F2 10 -/Times-Italic@0 SF(name)2.5 E F0(is an array v)2.5 E(ariable \(see)-.25 -E F1(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).).15 E F1144 96 Q -F0(Use function names only)26.97 E(.)-.65 E F1144 108 Q F0 .557 -(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 .558(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E -(TION \))180 120 Q F0(is performed when the v)2.25 E -(ariable is assigned a v)-.25 E(alue.)-.25 E F1144 132 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 144 Q F1 -144 156 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 +F0 6.382(.T)C 1.382(he follo)-6.382 F(wing)-.25 E .793 +(options can be used to restrict output to v)144 432 R .794 +(ariables with the speci\214ed attrib)-.25 F .794(ute or to gi)-.2 F +1.094 -.15(ve v)-.25 H(ariables)-.1 E(attrib)144 444 Q(utes:)-.2 E F1 +144 456 Q F0(Each)25.3 E F2(name)2.5 E F0(is an array v)2.5 E +(ariable \(see)-.25 E F1(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).) +.15 E F1144 468 Q F0(Use function names only)26.97 E(.)-.65 E F1 +144 480 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/F4 9/Times-Bold@0 SF .557 +(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E(TION \))180 492 Q F0 +(is performed when the v)2.25 E(ariable is assigned a v)-.25 E(alue.) +-.25 E F1144 504 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 516 Q F1 +144 528 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 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 168 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E -(ariables.)-.25 E F1144 180 Q F0(Mark)25.3 E F2(name)2.5 E F0 2.5 +-.1 E F0(and)2.929 E F1(RETURN)2.929 E F0(traps from the calling shell.) +180 540 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E +(ariables.)-.25 E F1144 552 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 196.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 -1.236(to destro)144 208.8 R 3.736(ya)-.1 G 3.737(na)-3.736 G 1.237 +(vironment.)-.4 E .12(Using `+' instead of `\255' turns of)144 568.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 +1.237(to destro)144 580.8 R 3.737(ya)-.1 G 3.737(na)-3.737 G 1.237 (rray v)-3.737 F 1.237(ariable and)-.25 F F1 1.237(+r will not r)3.737 F (emo)-.18 E 1.437 -.1(ve t)-.1 H 1.237(he r).1 F 1.237(eadonly attrib) --.18 F 3.737(ute. When)-.2 F 1.237(used in a)3.737 F .312(function, mak) -144 220.8 R .312(es each)-.1 F F2(name)2.812 E F1 .311 -(local, as with the local)2.812 F F0 2.811(command. If)2.811 F 2.811(av) -2.811 G .311(ariable name is follo)-3.061 F .311(wed by)-.25 F(=)144 -232.8 Q F2(value)A F0 3.238(,t)C .738(he v)-3.238 F .738(alue of the v) --.25 F .738(ariable is set to)-.25 F F2(value)3.238 E F0 5.738(.T)C .738 -(he return v)-5.738 F .739(alue is 0 unless an in)-.25 F -.25(va)-.4 G -.739(lid option is).25 F .603 -(encountered, an attempt is made to de\214ne a function using)144 244.8 -R/F4 10/Courier@0 SF .603(\255f foo=bar)3.103 F F0 3.103(,a)C 3.103(na) --3.103 G .603(ttempt is made to)-3.103 F 1.242(assign a v)144 256.8 R -1.242(alue to a readonly v)-.25 F 1.242 -(ariable, an attempt is made to assign a v)-.25 F 1.243 +-.18 F 3.737(ute. When)-.2 F 1.236(used in a)3.737 F .311(function, mak) +144 592.8 R .311(es each)-.1 F F2(name)2.811 E F1 .311 +(local, as with the local)2.811 F F0 2.811(command. If)2.811 F 2.811(av) +2.811 G .312(ariable name is follo)-3.061 F .312(wed by)-.25 F(=)144 +604.8 Q F2(value)A F0 3.239(,t)C .739(he v)-3.239 F .739(alue of the v) +-.25 F .739(ariable is set to)-.25 F F2(value)3.238 E F0 5.738(.T)C .738 +(he return v)-5.738 F .738(alue is 0 unless an in)-.25 F -.25(va)-.4 G +.738(lid option is).25 F .603 +(encountered, an attempt is made to de\214ne a function using)144 616.8 +R/F5 10/Courier@0 SF .603(\255f foo=bar)3.103 F F0 3.103(,a)C 3.103(na) +-3.103 G .604(ttempt is made to)-3.103 F 1.243(assign a v)144 628.8 R +1.243(alue to a readonly v)-.25 F 1.242 +(ariable, an attempt is made to assign a v)-.25 F 1.242 (alue to an array v)-.25 F(ariable)-.25 E 1.386 -(without using the compound assignment syntax \(see)144 268.8 R F1 +(without using the compound assignment syntax \(see)144 640.8 R F1 (Arrays)3.886 E F0(abo)3.886 E -.15(ve)-.15 G 1.386(\), one of the).15 F -F2(names)3.886 E F0 1.386(is not a)3.886 F -.25(va)144 280.8 S .171 +F2(names)3.886 E F0 1.386(is not a)3.886 F -.25(va)144 652.8 S .172 (lid shell v).25 F .171(ariable name, an attempt is made to turn of)-.25 -F 2.671(fr)-.25 G .171(eadonly status for a readonly v)-2.671 F .172 -(ariable, an)-.25 F .96(attempt is made to turn of)144 292.8 R 3.46(fa) +F 2.671(fr)-.25 G .171(eadonly status for a readonly v)-2.671 F .171 +(ariable, an)-.25 F .96(attempt is made to turn of)144 664.8 R 3.46(fa) -.25 G .96(rray status for an array v)-3.46 F .96 -(ariable, or an attempt is made to display a)-.25 F(non-e)144 304.8 Q -(xistent function with)-.15 E F12.5 E F0(.)A F1(dirs [+)108 321.6 +(ariable, or an attempt is made to display a)-.25 F(non-e)144 676.8 Q +(xistent function with)-.15 E F12.5 E F0(.)A F1(dirs [+)108 693.6 Q F2(n)A F1 2.5(][)C-2.5 E F2(n)A F1 2.5(][)C(\255cplv])-2.5 E F0 --.4(Wi)144 333.6 S .328 +-.4(Wi)144 705.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 345.6 R 1.238 -(Directories are added to the list with the)6.238 F F1(pushd)144 357.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 717.6 R 1.238 +(Directories are added to the list with the)6.238 F F1(pushd)144 729.6 Q F0(command; the)2.5 E F1(popd)2.5 E F0(command remo)2.5 E -.15(ve)-.15 G -2.5(se).15 G(ntries from the list.)-2.5 E F1(+)144 369.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 381.6 Q F1144 393.6 Q F2 -(n)A F0 1.194(Displays the)25.3 F F2(n)3.694 E F0 1.194 +2.5(se).15 G(ntries from the list.)-2.5 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(50)197.335 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(+)144 84 Q/F2 10/Times-Italic@0 SF(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 96 Q F1144 108 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 405.6 Q F1144 417.6 Q F0 +(without options, starting with zero.)180 120 Q F1144 132 Q F0 (Clears the directory stack by deleting all of the entries.)25.86 E F1 -144 429.6 Q F0 .324(Produces a longer listing; the def)27.52 F -.324(ault listing format uses a tilde to denote the home direc-)-.1 F -(tory)180 441.6 Q(.)-.65 E F1144 453.6 Q F0 +144 144 Q F0 .324(Produces a longer listing; the def)27.52 F .324 +(ault listing format uses a tilde to denote the home direc-)-.1 F(tory) +180 156 Q(.)-.65 E F1144 168 Q F0 (Print the directory stack with one entry per line.)24.74 E F1144 -465.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 477.6 Q .257(The return v)144 494.4 R .258 +180 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 192 Q .258(The return v)144 208.8 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 506.4 Q F1(diso)108 523.2 Q(wn)-.1 E F0([)2.5 E F1 +.15 F(tory stack.)144 220.8 Q F1(diso)108 237.6 Q(wn)-.1 E F0([)2.5 E F1 (\255ar)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(jobspec)-2.5 E F0 -(...])2.5 E -.4(Wi)144 535.2 S .295(thout options, each).4 F F2(jobspec) +(...])2.5 E -.4(Wi)144 249.6 S .295(thout options, each).4 F F2(jobspec) 4.535 E F0 .295(is remo)3.105 F -.15(ve)-.15 G 2.795(df).15 G .295 (rom the table of acti)-2.795 F .595 -.15(ve j)-.25 H 2.795(obs. If).15 -F F2(jobspec)4.535 E F0 .295(is not present,)3.105 F .243(and neither) -144 547.2 R F1 .243(\255a nor \255r is supplied, the shell')2.743 F +F F2(jobspec)4.535 E F0 .295(is not present,)3.105 F .244(and neither) +144 261.6 R F1 .243(\255a nor \255r is supplied, the shell')2.744 F 2.743(sn)-.37 G .243(otion of the)-2.743 F F2(curr)2.743 E .243(ent job) --.37 F F1 .243(is used.)2.743 F .244(If the \255h option)5.243 F .334 -(is gi)144 559.2 R -.1(ve)-.1 G .334(n, each).1 F F2(jobspec)4.574 E F0 +-.37 F F1 .243(is used.)2.743 F .243(If the \255h option)5.243 F .333 +(is gi)144 273.6 R -.1(ve)-.1 G .333(n, each).1 F F2(jobspec)4.574 E F0 .334(is not remo)3.144 F -.15(ve)-.15 G 2.834(df).15 G .334 (rom the table, b)-2.834 F .334(ut is mark)-.2 F .334(ed so that)-.1 F -F3(SIGHUP)2.834 E F0 .333(is not sent to)2.584 F 1.189 -(the job if the shell recei)144 571.2 R -.15(ve)-.25 G 3.689(sa).15 G F3 -(SIGHUP)A/F5 9/Times-Roman@0 SF(.)A F0 1.189(If no)5.689 F F2(jobspec) +/F3 9/Times-Bold@0 SF(SIGHUP)2.834 E F0 .334(is not sent to)2.584 F 1.19 +(the job if the shell recei)144 285.6 R -.15(ve)-.25 G 3.689(sa).15 G F3 +(SIGHUP)A/F4 9/Times-Roman@0 SF(.)A F0 1.189(If no)5.689 F F2(jobspec) 5.429 E F0 1.189(is present, and neither the)3.999 F F13.689 E F0 -1.19(nor the)3.69 F F13.69 E F0 1.57(option is supplied, the)144 -583.2 R F2(curr)4.07 E 1.57(ent job)-.37 F F0 1.57(is used.)4.07 F 1.569 -(If no)6.569 F F2(jobspec)5.809 E F0 1.569(is supplied, the)4.379 F F1 -4.069 E F0 1.569(option means to)4.069 F(remo)144 595.2 Q .903 --.15(ve o)-.15 H 3.103(rm).15 G .603(ark all jobs; the)-3.103 F F1 -3.103 E F0 .603(option without a)3.103 F F2(jobspec)4.843 E F0(ar)3.414 -E .604(gument restricts operation to running)-.18 F 2.5(jobs. The)144 -607.2 R(return v)2.5 E(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 624 Q +1.189(nor the)3.689 F F13.689 E F0 1.569(option is supplied, the) +144 297.6 R F2(curr)4.069 E 1.569(ent job)-.37 F F0 1.569(is used.)4.069 +F 1.569(If no)6.569 F F2(jobspec)5.809 E F0 1.57(is supplied, the)4.38 F +F14.07 E F0 1.57(option means to)4.07 F(remo)144 309.6 Q .904 -.15 +(ve o)-.15 H 3.104(rm).15 G .604(ark all jobs; the)-3.104 F F1 +3.103 E F0 .603(option without a)3.103 F F2(jobspec)4.843 E F0(ar)3.413 +E .603(gument restricts operation to running)-.18 F 2.5(jobs. The)144 +321.6 R(return v)2.5 E(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 338.4 Q F0([)2.5 E F1(\255neE)A F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.395(Output the)144 636 R F2(ar)2.895 E(g)-.37 E F0 .395 +.394(Output the)144 350.4 R F2(ar)2.894 E(g)-.37 E F0 .394 (s, separated by spaces, follo)B .395(wed by a ne)-.25 F 2.895 -(wline. The)-.25 F .394(return status is al)2.895 F -.1(wa)-.1 G .394 -(ys 0.).1 F(If)5.394 E F12.894 E F0 .548 -(is speci\214ed, the trailing ne)144 648 R .548(wline is suppressed.) +(wline. The)-.25 F .395(return status is al)2.895 F -.1(wa)-.1 G .395 +(ys 0.).1 F(If)5.395 E F12.895 E F0 .549 +(is speci\214ed, the trailing ne)144 362.4 R .548(wline is suppressed.) -.25 F .548(If the)5.548 F F13.048 E F0 .548(option is gi)3.048 F --.15(ve)-.25 G .548(n, interpretation of the fol-).15 F(lo)144 660 Q -.053(wing backslash-escaped characters is enabled.)-.25 F(The)5.053 E F1 -2.553 E F0 .052(option disables the interpretation of these)2.552 -F 1.502(escape characters, e)144 672 R -.15(ve)-.25 G 4.002(no).15 G -4.002(ns)-4.002 G 1.502(ystems where the)-4.002 F 4.002(ya)-.15 G 1.502 -(re interpreted by def)-4.002 F 4.003(ault. The)-.1 F F1(xpg_echo)4.003 -E F0(shell)4.003 E .009 -(option may be used to dynamically determine whether or not)144 684 R F1 -(echo)2.509 E F0 -.15(ex)2.509 G .009(pands these escape characters).15 -F .659(by def)144 696 R(ault.)-.1 E F1(echo)5.659 E F0 .659 -(does not interpret)3.159 F F13.159 E F0 .659 -(to mean the end of options.)3.159 F F1(echo)5.66 E F0 .66 -(interprets the follo)3.16 F(wing)-.25 E(escape sequences:)144 708 Q -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(50)198.445 E 0 Cg EP -%%Page: 51 51 +-.15(ve)-.25 G .548(n, interpretation of the fol-).15 F(lo)144 374.4 Q +.052(wing backslash-escaped characters is enabled.)-.25 F(The)5.052 E F1 +2.552 E F0 .053(option disables the interpretation of these)2.553 +F 1.503(escape characters, e)144 386.4 R -.15(ve)-.25 G 4.003(no).15 G +4.003(ns)-4.003 G 1.502(ystems where the)-4.003 F 4.002(ya)-.15 G 1.502 +(re interpreted by def)-4.002 F 4.002(ault. The)-.1 F F1(xpg_echo)4.002 +E F0(shell)4.002 E .009 +(option may be used to dynamically determine whether or not)144 398.4 R +F1(echo)2.509 E F0 -.15(ex)2.51 G .01(pands these escape characters).15 +F .66(by def)144 410.4 R(ault.)-.1 E F1(echo)5.66 E F0 .66 +(does not interpret)3.16 F F13.16 E F0 .659 +(to mean the end of options.)3.159 F F1(echo)5.659 E F0 .659 +(interprets the follo)3.159 F(wing)-.25 E(escape sequences:)144 422.4 Q +F1(\\a)144 434.4 Q F0(alert \(bell\))28.22 E F1(\\b)144 446.4 Q F0 +(backspace)27.66 E F1(\\c)144 458.4 Q F0(suppress trailing ne)28.78 E +(wline)-.25 E F1(\\e)144 470.4 Q F0(an escape character)28.78 E F1(\\f) +144 482.4 Q F0(form feed)29.89 E F1(\\n)144 494.4 Q F0(ne)27.66 E 2.5 +(wl)-.25 G(ine)-2.5 E F1(\\r)144 506.4 Q F0(carriage return)28.78 E F1 +(\\t)144 518.4 Q F0(horizontal tab)29.89 E F1(\\v)144 530.4 Q F0 -.15 +(ve)28.22 G(rtical tab).15 E F1(\\\\)144 542.4 Q F0(backslash)30.44 E F1 +(\\0)144 554.4 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 566.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 F1(enable)108 583.2 Q F0([)2.5 E +F1A F0 2.5(][)C F1(\255dnps)-2.5 E F0 2.5(][)C F1-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 595.2 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 +607.2 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 +619.2 R .989(uiltins before disk commands.)-.2 F(If)5.989 E F1 +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 631.2 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 643.2 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 F12.581 E F0 .081(option means to load the ne)2.581 F(w) +-.25 E -.2(bu)144 655.2 S 1.525(iltin command).2 F F2(name)4.385 E F0 +1.524(from shared object)4.204 F F2(\214lename)4.024 E F0 4.024(,o).18 G +4.024(ns)-4.024 G 1.524(ystems that support dynamic loading.)-4.024 F +(The)144 667.2 Q F12.866 E F0 .366(option will delete a b)2.866 F +.366(uiltin pre)-.2 F .366(viously loaded with)-.25 F F12.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 679.2 R F12.899 E F0 .399 +(option is supplied, a list of shell b)2.899 F .399(uiltins is printed.) +-.2 F -.4(Wi)5.399 G .399(th no other option ar).4 F .398(guments, the) +-.18 F .098(list consists of all enabled shell b)144 691.2 R 2.598 +(uiltins. If)-.2 F F12.598 E F0 .098(is supplied, only disabled b) +2.598 F .099(uiltins are printed.)-.2 F(If)5.099 E F12.599 E F0 +1.917(is supplied, the list printed includes all b)144 703.2 R 1.916 +(uiltins, with an indication of whether or not each is)-.2 F 2.878 +(enabled. If)144 715.2 R F12.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 727.2 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(GNU Bash-4.0)72 +768 Q(2008 May 25)147.345 E(51)197.335 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(\\a)144 84 Q F0(alert \(bell\))28.22 E F1 -(\\b)144 96 Q F0(backspace)27.66 E F1(\\c)144 108 Q F0 -(suppress trailing ne)28.78 E(wline)-.25 E F1(\\e)144 120 Q F0 -(an escape character)28.78 E F1(\\f)144 132 Q F0(form feed)29.89 E F1 -(\\n)144 144 Q F0(ne)27.66 E 2.5(wl)-.25 G(ine)-2.5 E F1(\\r)144 156 Q -F0(carriage return)28.78 E F1(\\t)144 168 Q F0(horizontal tab)29.89 E F1 -(\\v)144 180 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\\\)144 192 Q F0 -(backslash)30.44 E F1(\\0)144 204 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 216 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 -(enable)108 232.8 Q F0([)2.5 E F1A F0 2.5(][)C F1(\255dnps)-2.5 E -F0 2.5(][)C F1-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 244.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 .833 -(the same name as a shell b)144 256.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.334(nt).15 G(hough)-3.334 E .99 -(the shell normally searches for b)144 268.8 R .989 -(uiltins before disk commands.)-.2 F(If)5.989 E F13.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 280.8 R F2(names)4.082 E F0 1.582(are enabled.) -4.082 F -.15(Fo)6.582 G 4.082(re).15 G 1.582(xample, to use the)-4.232 F -F1(test)4.082 E F0 1.582(binary found via the)4.082 F/F3 9/Times-Bold@0 -SF -.666(PA)4.082 G(TH)-.189 E F0 .081(instead of the shell b)144 292.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 F12.58 E F0 .08 -(option means to load the ne)2.58 F(w)-.25 E -.2(bu)144 304.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 316.8 Q F1 -2.867 E F0 .367(option will delete a b)2.867 F .367(uiltin pre)-.2 F -.367(viously loaded with)-.25 F F12.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 328.8 R F1 -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 .399(guments, the)-.18 F .099(list consists of all enabled shell b)144 -340.8 R 2.598(uiltins. If)-.2 F F12.598 E F0 .098 -(is supplied, only disabled b)2.598 F .098(uiltins are printed.)-.2 F -(If)5.098 E F12.598 E F0 1.916 -(is supplied, the list printed includes all b)144 352.8 R 1.916 -(uiltins, with an indication of whether or not each is)-.2 F 2.879 -(enabled. If)144 364.8 R F12.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 376.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 -388.8 Q F1 -2.3 -.15(ev a)108 405.6 T(l).15 E F0([)2.5 E F2(ar)A(g)-.37 -E F0(...])2.5 E(The)144 417.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 429.6 R -.15(xe)-.15 -G .495(cuted by the shell, and its e).15 F .495 +-.35 E(object.)144 84 Q/F1 10/Times-Bold@0 SF -2.3 -.15(ev a)108 100.8 T +(l).15 E F0([)2.5 E/F2 10/Times-Italic@0 SF(ar)A(g)-.37 E F0(...])2.5 E +(The)144 112.8 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 124.8 R -.15(xe)-.15 G +.495(cuted by the shell, and its e).15 F .495 (xit status is returned as the v)-.15 F .495(alue of)-.25 F F1 -2.3 -.15 (ev a)2.995 H(l).15 E F0 5.495(.I)C 2.995(ft)-5.495 G .495(here are no) --2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 441.6 Q +-2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 136.8 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 458.4 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1-2.5 E F2 +(exec)108 153.6 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1-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 470.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 482.4 R .176 +-.37 E F0(]])A(If)144 165.6 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 177.6 R .177 (guments to)-.18 F F2(command)2.676 E F0 5.176(.I)C 2.676(ft)-5.176 G (he)-2.676 E F12.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 494.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 F12.999 E F0 -.499(option causes)2.999 F F2(com-)3.199 E(mand)144 506.4 Q F0 .638 -(to be e)3.908 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 .176 +(ginning of)-.15 F .499(the zeroth ar)144 189.6 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 F13 E F0 +.5(option causes)3 F F2(com-)3.2 E(mand)144 201.6 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 F13.138 E F0 .638 -(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 518.4 R 1.077(gument to the e)-.18 F -.15 +(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 213.6 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 530.4 Q .617 -.15(ve s)-.25 H .317(hell e).15 F -.317(xits, unless the shell option)-.15 F F1(execfail)2.817 E F0 .318 +.15 F(non-interacti)144 225.6 Q .618 -.15(ve s)-.25 H .318(hell e).15 F +.318(xits, unless the shell option)-.15 F F1(execfail)2.817 E F0 .317 (is enabled, in which case it returns f)2.817 F(ail-)-.1 E 2.505 -(ure. An)144 542.4 R(interacti)2.505 E .305 -.15(ve s)-.25 H .005 +(ure. An)144 237.6 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 554.4 Q 3.036(yr)-.15 G .536 -(edirections tak)-3.036 F 3.036(ee)-.1 G -.25(ff)-3.036 G .536 +(is not speci\214ed,)3.275 F(an)144 249.6 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 566.4 Q 2.5(,t)-.4 G -(he return status is 1.)-2.5 E F1(exit)108 583.2 Q F0([)2.5 E F2(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 595.2 S 2.5(cuted. A).15 F(trap on)2.5 E F3(EXIT)2.5 -E F0(is e)2.25 E -.15(xe)-.15 G(cuted before the shell terminates.).15 E -F1(export)108 612 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 624 Q F0 -.256(The supplied)144 636 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 648 R(the)2.627 E F12.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 -144 660 Q F0 .659(option is supplied, a list of all names that are e) -3.159 F .66(xported in this shell is printed.)-.15 F(The)5.66 E F1 -3.16 E F0(option)3.16 E 1.587(causes the e)144 672 R 1.587 +(If there is a redirection)5.536 F(error)144 261.6 Q 2.5(,t)-.4 G +(he return status is 1.)-2.5 E F1(exit)108 278.4 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 290.4 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 307.2 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 319.2 Q F0 .257(The supplied)144 331.2 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 343.2 R(the)2.626 E F1 +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 F1144 355.2 Q F0 .66 +(option is supplied, a list of all names that are e)3.16 F .659 +(xported in this shell is printed.)-.15 F(The)5.659 E F13.159 E F0 +(option)3.159 E 1.586(causes the e)144 367.2 R 1.586 (xport property to be remo)-.15 F -.15(ve)-.15 G 4.086(df).15 G 1.586 (rom each)-4.086 F F2(name)4.086 E F0 6.586(.I)C 4.086(fav)-6.586 G -1.586(ariable name is follo)-4.336 F 1.586(wed by)-.25 F(=)144 684 Q F2 -(wor)A(d)-.37 E F0 2.803(,t)C .303(he v)-2.803 F .303(alue of the v)-.25 -F .304(ariable is set to)-.25 F F2(wor)2.804 E(d)-.37 E F0(.)A F1 -(export)5.304 E F0 .304(returns an e)2.804 F .304 -(xit status of 0 unless an in)-.15 F -.25(va)-.4 G(lid).25 E .294 -(option is encountered, one of the)144 696 R F2(names)2.793 E F0 .293 +1.587(ariable name is follo)-4.336 F 1.587(wed by)-.25 F(=)144 379.2 Q +F2(wor)A(d)-.37 E F0 2.804(,t)C .304(he v)-2.804 F .304(alue of the v) +-.25 F .304(ariable is set to)-.25 F F2(wor)2.804 E(d)-.37 E F0(.)A F1 +(export)5.304 E F0 .304(returns an e)2.804 F .303 +(xit status of 0 unless an in)-.15 F -.25(va)-.4 G(lid).25 E .293 +(option is encountered, one of the)144 391.2 R F2(names)2.793 E F0 .293 (is not a v)2.793 F .293(alid shell v)-.25 F .293(ariable name, or)-.25 -F F12.793 E F0 .293(is supplied with a)2.793 F F2(name)144.36 708 -Q F0(that is not a function.)2.68 E(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(51)198.445 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(fc)108 84 Q F0([)2.5 E F1A/F2 10 -/Times-Italic@0 SF(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 96 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 .477(Fix Command.)144 108 R .478 -(In the \214rst form, a range of commands from)5.477 F F2<8c72>4.888 E -(st)-.1 E F0(to)3.658 E F2(last)3.068 E F0 .478 -(is selected from the his-)3.658 F .882(tory list.)144 120 R F2 -.45(Fi) -5.882 G -.1(rs).45 G(t).1 E F0(and)4.062 E F2(last)3.472 E F0 .882 +F F12.793 E F0 .294(is supplied with a)2.793 F F2(name)144.36 +403.2 Q F0(that is not a function.)2.68 E F1(fc)108 420 Q F0([)2.5 E F1 +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 +432 Q F0([)2.5 E F2(pat)A F0(=)A F2 -.37(re)C(p).37 E F0 2.5(][)C F2 +(cmd)-2.5 E F0(])A .478(Fix Command.)144 444 R .478 +(In the \214rst form, a range of commands from)5.478 F F2<8c72>4.888 E +(st)-.1 E F0(to)3.658 E F2(last)3.068 E F0 .477 +(is selected from the his-)3.658 F .881(tory list.)144 456 R F2 -.45(Fi) +5.881 G -.1(rs).45 G(t).1 E F0(and)4.061 E F2(last)3.471 E F0 .882 (may be speci\214ed as a string \(to locate the last command be)4.062 F -.881(ginning with)-.15 F .797(that string\) or as a number \(an inde)144 -132 R 3.297(xi)-.15 G .797(nto the history list, where a ne)-3.297 F --.05(ga)-.15 G(ti).05 E 1.097 -.15(ve n)-.25 H .797(umber is used as an) -.15 F(of)144 144 Q .277(fset from the current command number\).)-.25 F -(If)5.277 E F2(last)2.867 E F0 .276 -(is not speci\214ed it is set to the current command)3.457 F .092 -(for listing \(so that)144 156 R/F3 10/Courier@0 SF .092 +.882(ginning with)-.15 F .797(that string\) or as a number \(an inde)144 +468 R 3.297(xi)-.15 G .797(nto the history list, where a ne)-3.297 F +-.05(ga)-.15 G(ti).05 E 1.097 -.15(ve n)-.25 H .796(umber is used as an) +.15 F(of)144 480 Q .276(fset from the current command number\).)-.25 F +(If)5.276 E F2(last)2.866 E F0 .277 +(is not speci\214ed it is set to the current command)3.456 F .093 +(for listing \(so that)144 492 R/F4 10/Courier@0 SF .092 (fc \255l \25510)2.592 F F0 .092(prints the last 10 commands\) and to) 2.592 F F2<8c72>4.502 E(st)-.1 E F0 2.592(otherwise. If)3.272 F F2<8c72> -4.502 E(st)-.1 E F0 .093(is not)3.273 F -(speci\214ed it is set to the pre)144 168 Q -(vious command for editing and \25516 for listing.)-.25 E(The)144 192 Q +4.502 E(st)-.1 E F0 .092(is not)3.272 F +(speci\214ed it is set to the pre)144 504 Q +(vious command for editing and \25516 for listing.)-.25 E(The)144 528 Q F12.522 E F0 .022 (option suppresses the command numbers when listing.)2.522 F(The)5.022 E F12.522 E F0 .022(option re)2.522 F -.15(ve)-.25 G .022 -(rses the order of).15 F .438(the commands.)144 204 R .438(If the)5.438 +(rses the order of).15 F .438(the commands.)144 540 R .438(If the)5.438 F F12.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 216 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) +.334(the editor gi)144 552 R -.15(ve)-.25 G 2.834(nb).15 G(y)-2.834 E F2 +(ename)3.024 E F0 .335(is in)3.014 F -.2(vo)-.4 G -.1(ke).2 G 2.835(do) .1 G 2.835(na\214)-2.835 G .335(le containing those commands.)-2.835 F -(If)5.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 228 R .63(alue of the)-.25 F/F4 9/Times-Bold@0 -SF(FCEDIT)3.13 E F0 -.25(va)2.88 G .631(riable is used, and the v).25 F -.631(alue of)-.25 F F4(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F4(FCEDIT) -3.131 E F0 .631(is not set.)2.881 F .631(If nei-)5.631 F .951(ther v)144 -240 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 252 S(cuted.).15 E .039(In the second form,)144 276 R F2 -(command)2.539 E F0 .039(is re-e)2.539 F -.15(xe)-.15 G .039 -(cuted after each instance of).15 F F2(pat)2.54 E F0 .04(is replaced by) -2.54 F F2 -.37(re)2.54 G(p).37 E F0 5.04(.A)C(useful)-2.5 E .406 -(alias to use with this is)144 288 R F3 .406(r='fc \255s')2.906 F F0 -2.906(,s)C 2.906(ot)-2.906 G .406(hat typing)-2.906 F F3 6.406(rc)2.906 -G(c)-6.406 E F0 .406(runs the last command be)2.906 F .406(ginning with) --.15 F F3(cc)144 300 Q F0(and typing)2.5 E F3(r)2.5 E F0(re-e)2.5 E -.15 -(xe)-.15 G(cutes the last command.).15 E .142 -(If the \214rst form is used, the return v)144 324 R .142 +(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 564 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 576 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 588 S(cuted.).15 E .04(In the second form,)144 612 R F2 +(command)2.54 E F0 .04(is re-e)2.54 F -.15(xe)-.15 G .039 +(cuted after each instance of).15 F F2(pat)2.539 E F0 .039 +(is replaced by)2.539 F F2 -.37(re)2.539 G(p).37 E F0 5.039(.A)C(useful) +-2.5 E .406(alias to use with this is)144 624 R F4 .406(r='fc \255s') +2.906 F F0 2.906(,s)C 2.906(ot)-2.906 G .406(hat typing)-2.906 F F4 +6.406(rc)2.906 G(c)-6.406 E F0 .406(runs the last command be)2.906 F +.407(ginning with)-.15 F F4(cc)144 636 Q F0(and typing)2.5 E F4(r)2.5 E +F0(re-e)2.5 E -.15(xe)-.15 G(cutes the last command.).15 E .142 +(If the \214rst form is used, the return v)144 660 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 336 R +E F2(last)2.732 E F0 .454(specify history lines out of range.)144 672 R .454(If the)5.454 F F12.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 348 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 684 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 -360 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 372 Q +696 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 708 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 388.8 Q F0([)2.5 E F2(jobspec)A F0(])A(Resume) -144 400.8 Q F2(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 F2(jobspec)5.653 E F0 -1.414(is not present, the)4.223 F(shell')144 412.8 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 424.8 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 F2(jobspec)145.74 436.8 Q -F0 .004(does not specify a v)2.815 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 453.6 Q F2 -(optstring name)2.5 E F0([)2.5 E F2(ar)A(gs)-.37 E F0(])A F1(getopts)144 -465.6 Q F0 .793 -(is used by shell procedures to parse positional parameters.)3.293 F F2 -(optstring)6.023 E F0 .793(contains the option)3.513 F .15 -(characters to be recognized; if a character is follo)144 477.6 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 489.6 Q .578 -(gument, which should be separated from it by white space.)-.18 F .579 +(ailure.)-.1 E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(52)197.335 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(fg)108 84 Q F0([)2.5 E/F2 10/Times-Italic@0 +SF(jobspec)A F0(])A(Resume)144 96 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.413(is not present, the)4.223 F(shell')144 108 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 120 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 132 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 148.8 +Q F2(optstring name)2.5 E F0([)2.5 E F2(ar)A(gs)-.37 E F0(])A F1 +(getopts)144 160.8 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 172.8 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 184.8 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 501.6 R 1.665 +(acters may not be used as option characters.)144 196.8 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 .796 -(option in the shell v)144 513.6 R(ariable)-.25 E F2(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 525.6 Q .085 -(gument to be processed into the v)-.18 F(ariable)-.25 E F4(OPTIND)2.585 -E/F5 9/Times-Roman@0 SF(.)A F4(OPTIND)4.585 E F0 .085 -(is initialized to 1 each time the shell)2.335 F .845 -(or a shell script is in)144 537.6 R -.2(vo)-.4 G -.1(ke).2 G 3.345 +4.165 E F0 1.665(places the ne)4.165 F(xt)-.15 E .797 +(option in the shell v)144 208.8 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 220.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 .846 +(or a shell script is in)144 232.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 F1 -(getopts)3.346 E F0 .846(places that ar)3.346 F(gument)-.18 E .804 -(into the v)144 549.6 R(ariable)-.25 E F4(OPT)3.304 E(ARG)-.81 E F5(.)A -F0 .803(The shell does not reset)5.304 F F4(OPTIND)3.303 E F0 .803 -(automatically; it must be manually)3.053 F .293 -(reset between multiple calls to)144 561.6 R F1(getopts)2.793 E F0 .293 +(getopts)3.345 E F0 .845(places that ar)3.345 F(gument)-.18 E .803 +(into the v)144 244.8 R(ariable)-.25 E F3(OPT)3.303 E(ARG)-.81 E F4(.)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 256.8 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 .294(et of parameters)-2.793 F(is to be used.)144 573.6 -Q 2.044(When the end of options is encountered,)144 597.6 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 F1(OPTIND)144 609.6 Q F0 +2.793(ws)-.25 G .293(et of parameters)-2.793 F(is to be used.)144 268.8 +Q 2.043(When the end of options is encountered,)144 292.8 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 F1(OPTIND)144 304.8 Q F0 (is set to the inde)2.5 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 F1(getopts)144 633.6 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 -645.6 Q F0(parses those instead.)2.5 E F1(getopts)144 669.6 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.263 -(reporting is used.)144 681.6 R 1.263 +(is set to ?.)2.5 E F1(getopts)144 328.8 Q F0 2.393 +(normally parses the positional parameters, b)4.893 F 2.392 +(ut if more ar)-.2 F 2.392(guments are gi)-.18 F -.15(ve)-.25 G 4.892 +(ni).15 G(n)-4.892 E F2(ar)4.892 E(gs)-.37 E F0(,).27 E F1(getopts)144 +340.8 Q F0(parses those instead.)2.5 E F1(getopts)144 364.8 Q F0 1.165 +(can report errors in tw)3.665 F 3.665(ow)-.1 G 3.665(ays. If)-3.765 F +1.165(the \214rst character of)3.665 F F2(optstring)3.895 E F0 1.166 +(is a colon,)3.886 F F2(silent)4.006 E F0(error)4.346 E 1.264 +(reporting is used.)144 376.8 R 1.263 (In normal operation diagnostic messages are printed when in)6.263 F --.25(va)-.4 G 1.263(lid options or).25 F .394(missing option ar)144 -693.6 R .394(guments are encountered.)-.18 F .394(If the v)5.394 F -(ariable)-.25 E F4(OPTERR)2.894 E F0 .394 -(is set to 0, no error messages)2.644 F(will be displayed, e)144 705.6 Q +-.25(va)-.4 G 1.263(lid options or).25 F .393(missing option ar)144 +388.8 R .393(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 400.8 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 729.6 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(GNU Bash-3.2)72 768 -Q(2008 April 5)148.455 E(52)198.445 E 0 Cg EP -%%Page: 53 53 +F2(optstring)2.73 E F0(is not a colon.)2.72 E .667(If an in)144 424.8 R +-.25(va)-.4 G .667(lid option is seen,).25 F F1(getopts)3.167 E F0 .667 +(places ? into)3.167 F F2(name)3.527 E F0 .666 +(and, if not silent, prints an error message)3.347 F .399(and unsets)144 +436.8 R F3(OPT)2.899 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 F3 +(OPT)2.899 E(ARG)-.81 E F0 .4(and no)2.65 F +(diagnostic message is printed.)144 448.8 Q 1.242(If a required ar)144 +472.8 R 1.242(gument is not found, and)-.18 F F1(getopts)3.741 E F0 +1.241(is not silent, a question mark \()3.741 F F1(?).833 E F0 3.741 +(\)i).833 G 3.741(sp)-3.741 G 1.241(laced in)-3.741 F F2(name)144 484.8 +Q F0(,).18 E F3(OPT)2.734 E(ARG)-.81 E F0 .234 +(is unset, and a diagnostic message is printed.)2.484 F(If)5.234 E F1 +(getopts)2.734 E F0 .235(is silent, then a colon \()2.734 F F1(:).833 E +F0(\)).833 E(is placed in)144 496.8 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 520.8 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 532.8 Q F1(hash)108 +549.6 Q F0([)2.5 E F1(\255lr)A F0 2.5(][)C F1-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 +-.15(Fo)144 561.6 S 3.554(re).15 G(ach)-3.554 E F2(name)3.554 E F0 3.554 +(,t).18 G 1.054(he full \214le name of the command is determined by sea\ +rching the directories in)-3.554 F F1($P)144 573.6 Q -.95(AT)-.74 G(H) +.95 E F0 .35(and remembered.)2.85 F .35(If the)5.35 F F12.85 E F0 +.349(option is supplied, no path search is performed, and)2.849 F F2 +(\214lename)4.759 E F0 .452 +(is used as the full \214le name of the command.)144 585.6 R(The)5.452 E +F12.952 E F0 .452(option causes the shell to for)2.952 F .453 +(get all remem-)-.18 F .593(bered locations.)144 597.6 R(The)5.593 E F1 +3.093 E F0 .593(option causes the shell to for)3.093 F .592 +(get the remembered location of each)-.18 F F2(name)3.092 E F0(.)A .02 +(If the)144 609.6 R F12.52 E F0 .02 +(option is supplied, the full pathname to which each)2.52 F F2(name) +2.521 E F0 .021(corresponds is printed.)2.521 F .021(If multi-)5.021 F +(ple)144 621.6 Q F2(name)3.704 E F0(ar)3.704 E 1.204 +(guments are supplied with)-.18 F F13.703 E F0 3.703(,t)C(he) +-3.703 E F2(name)3.703 E F0 1.203 +(is printed before the hashed full pathname.)3.703 F(The)144 633.6 Q F1 +3.215 E F0 .715(option causes output to be displayed in a format \ +that may be reused as input.)3.215 F .716(If no ar)5.716 F(gu-)-.18 E +1.184(ments are gi)144 645.6 R -.15(ve)-.25 G 1.184(n, or if only).15 F +F13.684 E F0 1.183 +(is supplied, information about remembered commands is printed.)3.684 F +(The return status is true unless a)144 657.6 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 674.4 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 686.4 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 +698.4 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 710.4 Q +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(53)197.335 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 .4(and unsets)144 84 R/F1 9/Times-Bold@0 SF(OPT)2.9 E(ARG)-.81 E -/F2 9/Times-Roman@0 SF(.)A F0(If)4.899 E/F3 10/Times-Bold@0 SF(getopts) -2.899 E F0 .399(is silent, the option character found is placed in)2.899 -F F1(OPT)2.899 E(ARG)-.81 E F0 .399(and no)2.649 F -(diagnostic message is printed.)144 96 Q 1.241(If a required ar)144 120 -R 1.241(gument is not found, and)-.18 F F3(getopts)3.741 E F0 1.241 -(is not silent, a question mark \()3.741 F F3(?).833 E F0 3.742(\)i).833 -G 3.742(sp)-3.742 G 1.242(laced in)-3.742 F/F4 10/Times-Italic@0 SF -(name)144 132 Q F0(,).18 E F1(OPT)2.735 E(ARG)-.81 E F0 .234 -(is unset, and a diagnostic message is printed.)2.485 F(If)5.234 E F3 -(getopts)2.734 E F0 .234(is silent, then a colon \()2.734 F F3(:).833 E -F0(\)).833 E(is placed in)144 144 Q F4(name)2.86 E F0(and)2.68 E F1(OPT) -2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 E F3 -(getopts)144 168 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 180 Q F3(hash)108 196.8 -Q F0([)2.5 E F3(\255lr)A F0 2.5(][)C F3-2.5 E F4(\214lename)2.5 E -F0 2.5(][)C F3(\255dt)-2.5 E F0 2.5(][)C F4(name)-2.5 E F0(])A -.15(Fo) -144 208.8 S 3.555(re).15 G(ach)-3.555 E F4(name)3.555 E F0 3.555(,t).18 -G 1.054(he full \214le name of the command is determined by searching t\ -he directories in)-3.555 F F3($P)144 220.8 Q -.95(AT)-.74 G(H).95 E F0 -.349(and remembered.)2.849 F .349(If the)5.349 F F32.849 E F0 .349 -(option is supplied, no path search is performed, and)2.849 F F4 -(\214lename)4.76 E F0 .452 -(is used as the full \214le name of the command.)144 232.8 R(The)5.452 E -F32.952 E F0 .452(option causes the shell to for)2.952 F .452 -(get all remem-)-.18 F .592(bered locations.)144 244.8 R(The)5.592 E F3 -3.092 E F0 .593(option causes the shell to for)3.092 F .593 -(get the remembered location of each)-.18 F F4(name)3.093 E F0(.)A .021 -(If the)144 256.8 R F32.521 E F0 .021 -(option is supplied, the full pathname to which each)2.521 F F4(name) -2.52 E F0 .02(corresponds is printed.)2.52 F .02(If multi-)5.02 F(ple) -144 268.8 Q F4(name)3.703 E F0(ar)3.703 E 1.203 -(guments are supplied with)-.18 F F33.703 E F0 3.703(,t)C(he) --3.703 E F4(name)3.703 E F0 1.204 -(is printed before the hashed full pathname.)3.703 F(The)144 280.8 Q F3 -3.216 E F0 .715(option causes output to be displayed in a format \ -that may be reused as input.)3.216 F .715(If no ar)5.715 F(gu-)-.18 E -1.183(ments are gi)144 292.8 R -.15(ve)-.25 G 1.183(n, or if only).15 F -F33.683 E F0 1.184 -(is supplied, information about remembered commands is printed.)3.684 F -(The return status is true unless a)144 304.8 Q F4(name)2.86 E F0 -(is not found or an in)2.68 E -.25(va)-.4 G(lid option is supplied.).25 -E F3(help)108 321.6 Q F0([)2.5 E F3A F0 2.5(][)C F4(pattern)-2.5 E -F0(])A .867(Display helpful information about b)144 333.6 R .867 -(uiltin commands.)-.2 F(If)5.867 E F4(pattern)4.617 E F0 .866 -(is speci\214ed,)3.607 F F3(help)3.366 E F0(gi)3.366 E -.15(ve)-.25 G -3.366(sd).15 G(etailed)-3.366 E .306(help on all commands matching)144 -345.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 .596(tures is printed.)144 357.6 -R(The)5.596 E F33.096 E F0 .596 -(option restricts the information displayed to a short usage synopsis.) -3.096 F(The)5.596 E(return status is 0 unless no command matches)144 -369.6 Q F4(pattern)2.5 E F0(.).24 E F3(history [)108 386.4 Q F4(n)A F3 -(])A(history \255c)108 398.4 Q(history \255d)108 410.4 Q F4(of)2.5 E -(fset)-.18 E F3(history \255anrw)108 422.4 Q F0([)2.5 E F4(\214lename)A -F0(])A F3(history \255p)108 434.4 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 F3(history \255s)108 446.4 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 458.4 S .752 +-.35 E/F1 10/Times-Bold@0 SF144 84 Q F0 +(Display a short description of each)24.74 E/F2 10/Times-Italic@0 SF +(pattern)2.5 E F1(-m)146.5 96 Q F0(Display the description of each)21.84 +E F2(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat)-2.5 E +F1144 108 Q F0(Display only a short usage synopsis for each)26.41 +E F2(pattern)2.5 E F0(The return status is 0 unless no command matches) +108 120 Q F2(pattern)2.5 E F0(.).24 E F1(history [)108 136.8 Q F2(n)A F1 +(])A(history \255c)108 148.8 Q(history \255d)108 160.8 Q F2(of)2.5 E +(fset)-.18 E F1(history \255anrw)108 172.8 Q F0([)2.5 E F2(\214lename)A +F0(])A F1(history \255p)108 184.8 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 196.8 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 208.8 S .752 (th no options, display the command history list with line numbers.).4 F -.752(Lines listed with a)5.752 F F3(*)3.252 E F0(ha)3.252 E -.15(ve)-.2 -G 1.231(been modi\214ed.)144 470.4 R 1.231(An ar)6.231 F 1.231 -(gument of)-.18 F F4(n)4.091 E F0 1.231(lists only the last)3.971 F F4 +.752(Lines listed with a)5.752 F F1(*)3.252 E F0(ha)3.252 E -.15(ve)-.2 +G 1.231(been modi\214ed.)144 220.8 R 1.231(An ar)6.231 F 1.231 +(gument of)-.18 F F2(n)4.091 E F0 1.231(lists only the last)3.971 F F2 (n)4.091 E F0 3.73(lines. If)3.97 F 1.23(the shell v)3.73 F(ariable)-.25 -E F3(HISTTIME-)3.73 E(FORMA)144 482.4 Q(T)-.95 E F0 .249 -(is set and not null, it is used as a format string for)2.749 F F4 +E F1(HISTTIME-)3.73 E(FORMA)144 232.8 Q(T)-.95 E F0 .249 +(is set and not null, it is used as a format string for)2.749 F F2 (strftime)2.75 E F0 .25(\(3\) to display the time stamp)B .379 -(associated with each displayed history entry)144 494.4 R 5.379(.N)-.65 +(associated with each displayed history entry)144 244.8 R 5.379(.N)-.65 G 2.878(oi)-5.379 G(nterv)-2.878 E .378 (ening blank is printed between the format-)-.15 F .814 -(ted time stamp and the history line.)144 506.4 R(If)5.814 E F4 +(ted time stamp and the history line.)144 256.8 R(If)5.814 E F2 (\214lename)3.314 E F0 .814 (is supplied, it is used as the name of the history)3.314 F -(\214le; if not, the v)144 518.4 Q(alue of)-.25 E F1(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 F3144 530.4 Q F0 -(Clear the history list by deleting all the entries.)25.86 E F3144 -542.4 Q F4(of)2.5 E(fset)-.18 E F0(Delete the history entry at position) -180 554.4 Q F4(of)2.5 E(fset)-.18 E F0(.)A F3144 566.4 Q F0 .599 +(\214le; if not, the v)144 268.8 Q(alue of)-.25 E/F3 9/Times-Bold@0 SF +(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 F1144 280.8 Q F0 +(Clear the history list by deleting all the entries.)25.86 E F1144 +292.8 Q F2(of)2.5 E(fset)-.18 E F0(Delete the history entry at position) +180 304.8 Q F2(of)2.5 E(fset)-.18 E F0(.)A F1144 316.8 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 578.4 Q F0 -(session\) to the history \214le.)2.5 E F3144 590.4 Q F0 .854(Rea\ +(ginning of the current)-.15 F F1(bash)180 328.8 Q F0 +(session\) to the history \214le.)2.5 E F1144 340.8 Q F0 .854(Rea\ d the history lines not already read from the history \214le into the c\ urrent history list.)24.74 F .773 -(These are lines appended to the history \214le since the be)180 602.4 R -.772(ginning of the current)-.15 F F3(bash)3.272 E F0(ses-)3.272 E -(sion.)180 614.4 Q F3144 626.4 Q F0(Read the contents of the hist\ -ory \214le and use them as the current history)25.86 E(.)-.65 E F3 -144 638.4 Q F0(Write the current history to the history \214le, o)23.08 +(These are lines appended to the history \214le since the be)180 352.8 R +.772(ginning of the current)-.15 F F1(bash)3.272 E F0(ses-)3.272 E +(sion.)180 364.8 Q F1144 376.8 Q F0(Read the contents of the hist\ +ory \214le and use them as the current history)25.86 E(.)-.65 E F1 +144 388.8 Q F0(Write the current history to the history \214le, o)23.08 E -.15(ve)-.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G -(ontents.)-2.5 E F3144 650.4 Q F0 .625 -(Perform history substitution on the follo)24.74 F(wing)-.25 E F4(ar) +(ontents.)-2.5 E F1144 400.8 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 662.4 R .475 -(not store the results in the history list.)2.975 F(Each)5.475 E F4(ar) +2.975(output. Does)180 412.8 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 674.4 Q(xpansion.)-.15 E F3144 686.4 Q F0 -.362(Store the)26.41 F F4(ar)3.192 E(gs)-.37 E F0 .363 +(normal history e)180 424.8 Q(xpansion.)-.15 E F1144 436.8 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 698.4 Q -.15 -(ve)-.15 G 2.5(db).15 G(efore the)-2.5 E F4(ar)2.83 E(gs)-.37 E F0 -(are added.)2.77 E .28(If the)144 715.2 R F3(HISTTIMEFORMA)2.78 E(T)-.95 +(he last command in the history list is)-5.363 F(remo)180 448.8 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 .28(If the)144 465.6 R F1(HISTTIMEFORMA)2.78 E(T)-.95 E F0 .28 (is set, the time stamp information associated with each history entry) -2.78 F .539(is written to the history \214le, mark)144 727.2 R .539 +2.78 F .539(is written to the history \214le, mark)144 477.6 R .539 (ed with the history comment character)-.1 F 5.54(.W)-.55 G .54 -(hen the history \214le is)-5.54 F(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(53)198.445 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 1.779(read, lines be)144 84 R 1.779 -(ginning with the history comment character follo)-.15 F 1.778 +(hen the history \214le is)-5.54 F 1.779(read, lines be)144 489.6 R +1.779(ginning with the history comment character follo)-.15 F 1.778 (wed immediately by a digit are)-.25 F 1.424 -(interpreted as timestamps for the pre)144 96 R 1.424 +(interpreted as timestamps for the pre)144 501.6 R 1.424 (vious history line.)-.25 F 1.424(The return v)6.424 F 1.424 (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 108 R -.25(va)-.4 G(lid).25 E/F1 10/Times-Italic@0 SF(of) -2.999 E(fset)-.18 E F0(is)2.999 E(supplied as an ar)144 120 Q(gument to) --.18 E/F2 10/Times-Bold@0 SF2.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 -F22.5 E F0 -.1(fa)2.5 G(ils.).1 E F2(jobs)108 136.8 Q F0([)2.5 E -F2(\255lnprs)A F0 2.5(][)C F1(jobspec)A F0(... ])2.5 E F2(jobs \255x)108 -148.8 Q F1(command)2.5 E F0([)2.5 E F1(ar)2.5 E(gs)-.37 E F0(... ])2.5 E -(The \214rst form lists the acti)144 160.8 Q .3 -.15(ve j)-.25 H 2.5 +, an in)144 513.6 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 525.6 Q(gument to)-.18 E F12.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 F12.5 E F0 -.1 +(fa)2.5 G(ils.).1 E F1(jobs)108 542.4 Q F0([)2.5 E F1(\255lnprs)A F0 2.5 +(][)C F2(jobspec)A F0(... ])2.5 E F1(jobs \255x)108 554.4 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 566.4 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 F2144 172.8 Q F0 -(List process IDs in addition to the normal information.)27.52 E F2 -144 184.8 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 F2144 196.8 Q F0 +(wing meanings:)-.25 E F1144 578.4 Q F0 +(List process IDs in addition to the normal information.)27.52 E F1 +144 590.4 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 F1144 602.4 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 208.8 Q F2144 220.8 Q F0 -(Restrict output to running jobs.)25.86 E F2144 232.8 Q F0 -(Restrict output to stopped jobs.)26.41 E(If)144 249.6 Q F1(jobspec) +(\214ed of their status.)180 614.4 Q F1144 626.4 Q F0 +(Restrict output to running jobs.)25.86 E F1144 638.4 Q F0 +(Restrict output to stopped jobs.)26.41 E(If)144 655.2 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 261.6 Q -.25 +-.4 G .313(he return status is 0 unless)-5.313 F(an in)144 667.2 Q -.25 (va)-.4 G(lid option is encountered or an in).25 E -.25(va)-.4 G(lid).25 -E F1(jobspec)4.24 E F0(is supplied.)2.81 E .394(If the)144 278.4 R F2 -2.894 E F0 .394(option is supplied,)2.894 F F2(jobs)2.894 E F0 -.394(replaces an)2.894 F(y)-.15 E F1(jobspec)4.634 E F0 .394(found in) -3.204 F F1(command)3.094 E F0(or)3.664 E F1(ar)3.224 E(gs)-.37 E F0 .395 -(with the corre-)3.164 F(sponding process group ID, and e)144 290.4 Q --.15(xe)-.15 G(cutes).15 E F1(command)2.7 E F0(passing it)3.27 E F1(ar) -2.5 E(gs)-.37 E F0 2.5(,r).27 G(eturning its e)-2.5 E(xit status.)-.15 E -F2(kill)108 307.2 Q F0([)2.5 E F2A F1(sigspec)2.5 E F0(|)2.5 E F2 -2.5 E F1(signum)2.5 E F0(|)2.5 E F22.5 E F1(sigspec)A F0 2.5 -(][)C F1(pid)-2.5 E F0(|)2.5 E F1(jobspec)2.5 E F0 2.5(].)C(..)-2.5 E F2 -(kill \255l)108 319.2 Q F0([)2.5 E F1(sigspec)A F0(|)2.5 E F1 -.2(ex)2.5 -G(it_status).2 E F0(])A .12(Send the signal named by)144 331.2 R F1 -(sigspec)2.96 E F0(or)2.93 E F1(signum)2.96 E F0 .119 -(to the processes named by)2.939 F F1(pid)3.869 E F0(or)3.389 E F1 -(jobspec)2.619 E F0(.).31 E F1(sigspec)5.459 E F0(is)2.929 E .318 -(either a case-insensiti)144 343.2 R .618 -.15(ve s)-.25 H .318 -(ignal name such as).15 F/F3 9/Times-Bold@0 SF(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 355.2 Q F1(signum)4.189 E F0 -1.349(is a signal number)4.169 F 6.349(.I)-.55 G(f)-6.349 E F1(sigspec) +E F2(jobspec)4.24 E F0(is supplied.)2.81 E .394(If the)144 684 R F1 +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 696 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 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(54)197.335 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(kill)108 84 Q F0([)2.5 E F1A/F2 10 +/Times-Italic@0 SF(sigspec)2.5 E F0(|)2.5 E F12.5 E F2(signum)2.5 +E F0(|)2.5 E F12.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 96 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 108 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 120 R .618 -.15(ve s)-.25 H +.318(ignal name such as).15 F/F3 9/Times-Bold@0 SF(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 132 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 F3(SIGTERM)3.849 E F0 -1.348(is assumed.)3.599 F(An)6.348 E(ar)144 367.2 Q .522(gument of)-.18 -F F23.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 F23.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 379.2 -R .28(guments are listed, and the return status is 0.)-.18 F(The)5.28 E -F1 -.2(ex)2.78 G(it_status).2 E F0(ar)144 391.2 Q .377(gument to)-.18 F -F22.877 E F0 .378 +1.348(is assumed.)3.599 F(An)6.348 E(ar)144 144 Q .522(gument of)-.18 F +F13.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 +F13.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 156 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 168 Q .377(gument to)-.18 F F1 +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 403.2 -R F2(kill)5.593 E F0 .593(returns true if at least one signal w)3.093 F +(xit status of a process termi-)-.15 F .594(nated by a signal.)144 180 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 .593(alse if an error)-.1 F -(occurs or an in)144 415.2 Q -.25(va)-.4 G(lid option is encountered.) -.25 E F2(let)108 432 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 444 Q F1(ar)3.964 E(g)-.37 E F0 1.134 +(occurs or an in)144 192 Q -.25(va)-.4 G(lid option is encountered.).25 +E F1(let)108 208.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 220.8 Q F2(ar)3.964 E(g)-.37 E F0 1.134 (is an arithmetic e)3.854 F 1.134(xpression to be e)-.15 F -.25(va)-.25 G 1.135(luated \(see).25 F F3 1.135(ARITHMETIC EV)3.635 F(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF(\).)A F0 1.135(If the) -5.635 F(last)144 456 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 472.8 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 484.8 S +5.635 F(last)144 232.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 249.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 261.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 496.8 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 +(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 273.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 -508.8 Q F1(name)3.721 E F0 .861(to ha)3.541 F 1.161 -.15(ve a v)-.2 H +285.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 F2(local)144 520.8 Q F0 1.164 +-.4(Wi)5.86 G .86(th no operands,).4 F F1(local)144 297.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 532.8 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 -544.8 Q F1(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F2 -(logout)108 561.6 Q F0(Exit a login shell.)9.33 E F2(popd)108 578.4 Q F0 -<5bad>2.5 E F2(n)A F0 2.5(][)C(+)-2.5 E F1(n)A F0 2.5(][)C-2.5 E F1 -(n)A F0(])A(Remo)144 590.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 -602.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 614.4 Q F2144 626.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 638.4 Q F2(+)144 650.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 +6.165 F F1(local)3.665 E F0 1.165(when not)3.665 F .233 +(within a function.)144 309.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 +321.6 Q F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F1 +(logout)108 338.4 Q F0(Exit a login shell.)9.33 E F1(map\214le)108 355.2 +Q F0([)2.5 E F1A F2(count)2.5 E F0 2.5(][)C F1-2.5 E F2 +(origin)2.5 E F0 2.5(][)C F1-2.5 E F2(cou)2.5 E F0(nt)144 367.2 Q +F2 3.212(][)C F1-3.212 E F2 3.212(][)C F1-3.212 E F2 .712 +(fd] [)3.212 F F1A F2(callbac)3.212 E .712(k] [)-.2 F F1A F2 +(Iquantum)3.212 E F1 3.212(][)C F2(arr)-3.212 E(ay)-.15 E F1 3.212(]R)C +.712(ead lines fr)-3.212 F .712(om the standard input into)-.18 F .606 +(array v)144 379.2 R(ariable)-.1 E F2(arr)3.106 E(ay)-.15 E F0 3.106(,o) +.32 G 3.106(rf)-3.106 G .606(rom \214le descriptor)-3.106 F F2(fd)3.106 +E F0 .606(if the)3.106 F F13.106 E F0 .605(option is supplied.) +3.105 F .605(The v)5.605 F(ariable)-.25 E F1(MAP-)3.105 E(FILE)144 391.2 +Q F0(is the def)2.5 E(ault)-.1 E F2(arr)2.5 E(ay)-.15 E F0 5(.O)C +(ptions, if supplied, ha)-5 E .3 -.15(ve t)-.2 H(he follo).15 E +(wing meanings:)-.25 E F1144 403.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 F1144 415.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 F1144 427.2 Q F0 +(Discard the \214rst)26.41 E F2(count)2.5 E F0(lines read.)2.5 E F1 +144 439.2 Q F0(Remo)26.97 E .3 -.15(ve a t)-.15 H +(railing line from each line read.).15 E F1144 451.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 F1144 463.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 F12.5 E F0 +(option speci\214es)2.5 E F2(quantum)2.5 E F0(.).32 E F1144 475.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 492 Q F12.5 E F0 +(is speci\214ed without)2.5 E F12.5 E F0 2.5(,t)C(he def)-2.5 E +(ault quantum is 5000.)-.1 E(If not supplied with an e)144 508.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 525.6 +Q F0 .995(returns successfully unless an in)3.495 F -.25(va)-.4 G .996 +(lid option or option ar).25 F .996(gument is supplied, or)-.18 F F2 +(arr)3.496 E(ay)-.15 E F0(is)3.496 E(in)144 537.6 Q -.25(va)-.4 G +(lid or unassignable.).25 E F1(popd)108 554.4 Q F0<5bad>2.5 E F1(n)A F0 +2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C-2.5 E F2(n)A F0(])A(Remo)144 +566.4 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 578.4 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 590.4 Q F1144 602.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 614.4 Q F1(+)144 626.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 -F2(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero.)-2.64 F -.15(Fo)180 -662.4 S 2.5(re).15 G(xample:)-2.65 E/F5 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 +638.4 S 2.5(re).15 G(xample:)-2.65 E/F5 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 F5(popd +1)2.5 E F0(the second.)2.5 E F2144 674.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 -686.4 R(or e)-.15 E(xample:)-.15 E F5(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 F5(popd -1)2.5 -E F0(the ne)2.5 E(xt to last.)-.15 E .644(If the)144 703.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 715.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 727.2 Q -(ails.)-.1 E(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(54)198.445 E 0 +-.65 E F5(popd +1)2.5 E F0(the second.)2.5 E F1144 650.4 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 662.4 R(or e)-.15 E(xample:)-.15 E F5(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 F5(popd -1)2.5 E F0(the ne)2.5 E(xt to last.)-.15 E .643(If the)144 +679.2 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 691.2 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 703.2 Q +(ails.)-.1 E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(55)197.335 E 0 Cg EP -%%Page: 55 55 +%%Page: 56 56 %%BeginPageSetup BP %%EndPageSetup @@ -6434,53 +6564,53 @@ BP (guments)-.37 E F0 .372(to the standard output under the control of the) 2.872 F F2(format)2.872 E F0 5.372(.T)C(he)-5.372 E F2(format)2.872 E F0 1.804(is a character string which contains three types of objects: plai\ -n characters, which are simply)144 108 R .159 +n characters, which are simply)144 108 R .158 (copied to standard output, character escape sequences, which are con) -144 120 R -.15(ve)-.4 G .158(rted and copied to the stan-).15 F .499(da\ +144 120 R -.15(ve)-.4 G .159(rted and copied to the stan-).15 F .499(da\ rd output, and format speci\214cations, each of which causes printing o\ -f the ne)144 132 R .5(xt successi)-.15 F -.15(ve)-.25 G F2(ar)3.15 E -(gu-)-.37 E(ment)144 144 Q F0 5.424(.I)C 2.924(na)-5.424 G .424 -(ddition to the standard)-2.924 F F2(printf)2.924 E F0 .424 -(\(1\) formats,)B F1(%b)2.924 E F0(causes)2.923 E F1(printf)2.923 E F0 -.423(to e)2.923 F .423(xpand backslash escape)-.15 F .976 +f the ne)144 132 R .499(xt successi)-.15 F -.15(ve)-.25 G F2(ar)3.149 E +(gu-)-.37 E(ment)144 144 Q F0 5.423(.I)C 2.923(na)-5.423 G .423 +(ddition to the standard)-2.923 F F2(printf)2.923 E F0 .424 +(\(1\) formats,)B F1(%b)2.924 E F0(causes)2.924 E F1(printf)2.924 E F0 +.424(to e)2.924 F .424(xpand backslash escape)-.15 F .977 (sequences in the corresponding)144 156 R F2(ar)3.476 E(gument)-.37 E F0 (\(e)3.476 E .976(xcept that)-.15 F F1(\\c)3.476 E F0 .976 -(terminates output, backslashes in)3.476 F F1<5c08>3.477 E F0(,)A F1 -(\\")3.477 E F0(,)A(and)144 168 Q F1(\\?)3.422 E F0 .922(are not remo) -3.422 F -.15(ve)-.15 G .922(d, and octal escapes be).15 F .922 -(ginning with)-.15 F F1(\\0)3.422 E F0 .921 +(terminates output, backslashes in)3.476 F F1<5c08>3.476 E F0(,)A F1 +(\\")3.476 E F0(,)A(and)144 168 Q F1(\\?)3.421 E F0 .921(are not remo) +3.421 F -.15(ve)-.15 G .922(d, and octal escapes be).15 F .922 +(ginning with)-.15 F F1(\\0)3.422 E F0 .922 (may contain up to four digits\), and)3.422 F F1(%q)144 180 Q F0(causes) -3.63 E F1(printf)3.63 E F0 1.13(to output the corresponding)3.63 F F2 -(ar)3.631 E(gument)-.37 E F0 1.131 +3.631 E F1(printf)3.631 E F0 1.131(to output the corresponding)3.631 F +F2(ar)3.631 E(gument)-.37 E F0 1.13 (in a format that can be reused as shell)3.631 F(input.)144 192 Q(The) -144 216 Q F12.904 E F0 .404 -(option causes the output to be assigned to the v)2.904 F(ariable)-.25 E +144 216 Q F12.903 E F0 .404 +(option causes the output to be assigned to the v)2.903 F(ariable)-.25 E F2(var)2.904 E F0 .404(rather than being printed to the)2.904 F -(standard output.)144 228 Q(The)144 252 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 +(standard output.)144 228 Q(The)144 252 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 .924(requires more)3.424 F F2(ar)144 264 Q(guments)-.37 E F0 -.033(than are supplied, the e)2.534 F .033 +3.423 E F0 .923(requires more)3.423 F F2(ar)144 264 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 .033(alue or null string,) +.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 276 Q(The return v)5 E (alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F1(pushd) 108 292.8 Q F0([)2.5 E F1A F0 2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C -2.5 E F2(n)A F0(])A F1(pushd)108 304.8 Q F0([)2.5 E F1A 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 316.8 R 3.14(wt) --.25 G .64(op of the)-3.14 F 1.316(stack the current w)144 328.8 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 +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 316.8 R 3.139(wt) +-.25 G .639(op of the)-3.139 F 1.315(stack the current w)144 328.8 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 340.8 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 352.8 Q +-.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 352.8 Q F1144 364.8 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 376.8 Q F1(+)144 388.8 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) +1.268(Rotates the stack so that the)25.3 F F2(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 400.8 Q F0 2.5(,s)C (tarting with zero\) is at the top.)-2.5 E F1144 412.8 Q F2(n)A F0 .92(Rotates the stack so that the)25.3 F F2(n)3.42 E F0 .92 @@ -6488,26 +6618,26 @@ hen adding directories to the stack, so that)24.74 F F F1(dirs)180 424.8 Q F0 2.5(,s)C(tarting with zero\) is at the top.) -2.5 E F2(dir)144.35 436.8 Q F0(Adds)23.98 E F2(dir)2.85 E F0 (to the directory stack at the top, making it the ne)3.23 E 2.5(wc)-.25 -G(urrent w)-2.5 E(orking directory)-.1 E(.)-.65 E .488(If the)144 453.6 -R F1(pushd)2.988 E F0 .488(command is successful, a)2.988 F F1(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 465.6 R F2(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 -477.6 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent directory stack ele\ -ment is speci\214ed, or the directory change to the)-.15 F -(speci\214ed ne)144 489.6 Q 2.5(wc)-.25 G(urrent directory f)-2.5 E -(ails.)-.1 E F1(pwd)108 506.4 Q F0([)2.5 E F1(\255LP)A F0(])A .845 +G(urrent w)-2.5 E(orking directory)-.1 E(.)-.65 E .489(If the)144 453.6 +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 465.6 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 477.6 +R 3.347(,an)-.65 G(on-e)-3.347 E .847(xistent directory stack element i\ +s speci\214ed, or the directory change to the)-.15 F(speci\214ed ne)144 +489.6 Q 2.5(wc)-.25 G(urrent directory f)-2.5 E(ails.)-.1 E F1(pwd)108 +506.4 Q F0([)2.5 E F1(\255LP)A F0(])A .844 (Print the absolute pathname of the current w)144 518.4 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 +(orking directory)-.1 F 5.845(.T)-.65 G .845 +(he pathname printed contains no)-5.845 F .182(symbolic links if the)144 530.4 R F12.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 .182(iltin command is).2 F 3.264 -(enabled. If)144 542.4 R(the)3.264 E F13.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\ +(set)2.681 E F0 -.2(bu)2.681 G .181(iltin command is).2 F 3.263 +(enabled. If)144 542.4 R(the)3.263 E F13.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 554.4 R -.25(va) -.4 G(lid).25 E(option is supplied.)144 566.4 Q F1 -.18(re)108 583.2 S (ad).18 E F0([)2.5 E F1(\255ers)A F0 2.5(][)C F1-2.5 E F2(aname) @@ -6517,32 +6647,32 @@ F .763(The return)5.763 F 1.36(status is 0 unless an error occurs while\ -2.5 E F2(timeout)2.5 E F0 2.5(][)C F1-2.5 E F2(fd)2.5 E F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E .516(One line is read from the st\ andard input, or from the \214le descriptor)144 595.2 R F2(fd)3.016 E F0 -.516(supplied as an ar)3.016 F .516(gument to)-.18 F(the)144 607.2 Q F1 -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 +.516(supplied as an ar)3.016 F .517(gument to)-.18 F(the)144 607.2 Q F1 +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 619.2 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 631.2 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 643.2 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 +.18 G 2.92(ft)-5.42 G(here)-2.92 E .541(are fe)144 631.2 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 643.2 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.51(\)m)C(ay)-2.51 E 1.89 -(be used to remo)144 655.2 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 +(backslash character \()2.511 F F1(\\)A F0 2.511(\)m)C(ay)-2.511 E 1.891 +(be used to remo)144 655.2 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 667.2 Q .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F1144 679.2 Q F2(aname)2.5 E F0 1.05(The w) -180 691.2 R 1.049 +(wing meanings:)-.25 E F1144 679.2 Q F2(aname)2.5 E F0 1.049 +(The w)180 691.2 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 703.2 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-3.2)72 768 Q -(2008 April 5)148.455 E(55)198.445 E 0 Cg EP -%%Page: 56 56 +-.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 703.2 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.0)72 768 Q(2008 May 25)147.345 +E(56)197.335 E 0 Cg EP +%%Page: 57 57 %%BeginPageSetup BP %%EndPageSetup @@ -6550,120 +6680,122 @@ BP -.35 E/F1 10/Times-Bold@0 SF144 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 (is used to terminate the input line, rather than ne)2.5 E(wline.)-.25 E -F1144 108 Q F0 .372 +F1144 108 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 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(to obtain the line.)180 120 Q F1144 132 Q F2(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-) +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(to obtain the line.)180 120 Q F1144 132 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 144 Q(gins.)-.15 E F1144 156 Q F2(nc)2.5 E(har) --.15 E(s)-.1 E F1 -.18(re)180 168 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) +-.15 E(s)-.1 E F1 -.18(re)180 168 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.)180 180 Q F1144 192 Q F2(pr)2.5 E(ompt)-.45 E F0 -(Display)180 204 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 +(Display)180 204 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 216 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 -144 228 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) +144 228 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 240 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 F1144 252 Q F0(Silent mode.)26.41 E (If input is coming from a terminal, characters are not echoed.)5 E F1 -144 264 Q F2(timeout)2.5 E F0(Cause)180 276 Q F1 -.18(re)3.549 G -(ad).18 E F0 1.048(to time out and return f)3.549 F 1.048 +144 264 Q F2(timeout)2.5 E F0(Cause)180 276 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 288 Q F0 2.92(seconds. This)2.92 F .42(option has no ef)2.92 F .42 -(fect if)-.25 F F1 -.18(re)2.92 G(ad).18 E F0 .42 -(is not reading input from the terminal)2.92 F(or a pipe.)180 300 Q F1 -144 312 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 328.8 R F2(names)3.052 E F0 .192 +180 288 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 .063(the decimal point.)180 300 R .064(This option has no ef) +5.063 F .064(fect if)-.25 F F1 -.18(re)2.564 G(ad).18 E F0 .064 +(is not reading input from the terminal)2.564 F(or a pipe.)180 312 Q F1 +144 324 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 340.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.217 -(unless end-of-\214le is encountered,)144 340.8 R F1 -.18(re)3.717 G(ad) +(unless end-of-\214le is encountered,)144 352.8 R F1 -.18(re)3.717 G(ad) .18 E F0 1.217(times out, or an in)3.717 F -.25(va)-.4 G 1.218 -(lid \214le descriptor is supplied as the).25 F(ar)144 352.8 Q -(gument to)-.18 E F12.5 E F0(.)A F1 -.18(re)108 369.6 S(adonly).18 +(lid \214le descriptor is supplied as the).25 F(ar)144 364.8 Q +(gument to)-.18 E F12.5 E F0(.)A F1 -.18(re)108 381.6 S(adonly).18 E F0([)2.5 E F1(\255apf)A 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 381.6 R -.15(ve)-.25 G(n) +-.37 E F0 2.5(].)C(..])-2.5 E .77(The gi)144 393.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 393.6 R +(may not be changed by subse-)3.54 F 1.096(quent assignment.)144 405.6 R 1.096(If the)6.096 F F13.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 405.6 Q 2.873(ed. The) +(names)3.597 E F0 1.097(are so)3.597 F(mark)144 417.6 Q 2.873(ed. The) -.1 F F12.873 E F0 .373(option restricts the v)2.873 F .372 (ariables to arrays.)-.25 F .372(If no)5.372 F F2(name)3.232 E F0(ar) 3.052 E .372(guments are gi)-.18 F -.15(ve)-.25 G .372(n, or if the).15 -F F1144 417.6 Q F0 .796 +F F1144 429.6 Q F0 .796 (option is supplied, a list of all readonly names is printed.)3.296 F (The)5.796 E F13.296 E F0 .796(option causes output to be)3.296 F -.828(displayed in a format that may be reused as input.)144 429.6 R .828 +.828(displayed in a format that may be reused as input.)144 441.6 R .828 (If a v)5.828 F .828(ariable name is follo)-.25 F .827(wed by =)-.25 F -F2(wor)A(d)-.37 E F0 3.327(,t)C(he)-3.327 E -.25(va)144 441.6 S .404 +F2(wor)A(d)-.37 E F0 3.327(,t)C(he)-3.327 E -.25(va)144 453.6 S .404 (lue of the v).25 F .404(ariable is set to)-.25 F F2(wor)2.904 E(d)-.37 E F0 5.404(.T)C .405(he return status is 0 unless an in)-5.404 F -.25 (va)-.4 G .405(lid option is encountered,).25 F 1.07(one of the)144 -453.6 R F2(names)3.929 E F0 1.069(is not a v)3.839 F 1.069(alid shell v) +465.6 R F2(names)3.929 E F0 1.069(is not a v)3.839 F 1.069(alid shell v) -.25 F 1.069(ariable name, or)-.25 F F13.569 E F0 1.069 (is supplied with a)3.569 F F2(name)3.929 E F0 1.069(that is not a)3.749 -F(function.)144 465.6 Q F1 -.18(re)108 482.4 S(tur).18 E(n)-.15 E F0([) -2.5 E F2(n)A F0(])A .586(Causes a function to e)144 494.4 R .587 +F(function.)144 477.6 Q F1 -.18(re)108 494.4 S(tur).18 E(n)-.15 E F0([) +2.5 E F2(n)A F0(])A .586(Causes a function to e)144 506.4 R .587 (xit with the return v)-.15 F .587(alue speci\214ed by)-.25 F F2(n)3.087 E F0 5.587(.I).24 G(f)-5.587 E F2(n)3.447 E F0 .587 (is omitted, the return status is)3.327 F 1.335 -(that of the last command e)144 506.4 R -.15(xe)-.15 G 1.335 +(that of the last command e)144 518.4 R -.15(xe)-.15 G 1.335 (cuted in the function body).15 F 6.335(.I)-.65 G 3.835(fu)-6.335 G 1.335(sed outside a function, b)-3.835 F 1.335(ut during)-.2 F -.15(exe) -144 518.4 S .794(cution of a script by the).15 F F1(.)3.294 E F0(\() +144 530.4 S .794(cution of a script by the).15 F F1(.)3.294 E F0(\() 5.794 E F1(sour)A(ce)-.18 E F0 3.294(\)c)C .794 (ommand, it causes the shell to stop e)-3.294 F -.15(xe)-.15 G .795 -(cuting that script).15 F .246(and return either)144 530.4 R F2(n)3.106 +(cuting that script).15 F .246(and return either)144 542.4 R F2(n)3.106 E F0 .246(or the e)2.986 F .246(xit status of the last command e)-.15 F -.15(xe)-.15 G .246(cuted within the script as the e).15 F .245 -(xit sta-)-.15 F .081(tus of the script.)144 542.4 R .082 +(xit sta-)-.15 F .081(tus of the script.)144 554.4 R .082 (If used outside a function and not during e)5.082 F -.15(xe)-.15 G .082 (cution of a script by).15 F F1(.)2.582 E F0 2.582(,t).833 G .082 -(he return sta-)-2.582 F 2.306(tus is f)144 554.4 R 4.806(alse. An)-.1 F +(he return sta-)-2.582 F 2.306(tus is f)144 566.4 R 4.806(alse. An)-.1 F 4.806(yc)-.15 G 2.305(ommand associated with the)-4.806 F F1(RETURN) 4.805 E F0 2.305(trap is e)4.805 F -.15(xe)-.15 G 2.305(cuted before e) .15 F -.15(xe)-.15 G(cution).15 E(resumes after the function or script.) -144 566.4 Q F1(set)108 583.2 Q F0([)2.5 E F1 +144 578.4 Q F1(set)108 595.2 Q F0([)2.5 E F1 (\255\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1-2.5 E F2(option)2.5 -E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1(set)108 595.2 Q F0 +E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1(set)108 607.2 Q F0 ([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1(+o)-2.5 E F2(option) -2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 607.2 S +2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 619.2 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 619.2 +(reused as input for setting or resetting the currently-set v)144 631.2 R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .783 -(riables cannot be).25 F 2.946(reset. In)144 631.2 R F2 .447(posix mode) +(riables cannot be).25 F 2.946(reset. In)144 643.2 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 643.2 R 1.031(options are speci\214ed, the)3.531 F +(locale. When)144 655.2 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 .202 -(after the options are processed are treated as v)144 655.2 R .202 +(after the options are processed are treated as v)144 667.2 R .202 (alues for the positional parameters and are assigned,)-.25 F(in order) -144 667.2 Q 2.5(,t)-.4 G(o)-2.5 E F1($1)2.5 E F0(,)A F1($2)2.5 E F0(,)A +144 679.2 Q 2.5(,t)-.4 G(o)-2.5 E F1($1)2.5 E F0(,)A F1($2)2.5 E F0(,)A F1 2.5(... $)2.5 F F2(n)A F0 5(.O)C(ptions, if speci\214ed, ha)-5 E .3 --.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 679.2 Q +-.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 691.2 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 691.2 Q -(vironment of subsequent commands.)-.4 E F1144 703.2 Q F0 .131 +.539(xport to)-.15 F(the en)184 703.2 Q +(vironment of subsequent commands.)-.4 E F1144 715.2 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 715.2 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) --.25 H(nly when job control is enabled.).15 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(56)198.445 E 0 Cg EP -%%Page: 57 57 +(primary prompt.)184 727.2 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) +-.25 H(nly when job control is enabled.).15 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(57)197.335 E 0 Cg EP +%%Page: 58 58 %%BeginPageSetup BP %%EndPageSetup @@ -6745,9 +6877,9 @@ F12.5 E F0(.)A F1(pipefail)184 696 Q F0 1.029 R 1.136 (xit with a non-zero status, or zero if all commands in the pipeline) -.15 F -.15(ex)224 720 S(it successfully).15 E 5(.T)-.65 G -(his option is disabled by def)-5 E(ault.)-.1 E(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(57)198.445 E 0 Cg EP -%%Page: 58 58 +(his option is disabled by def)-5 E(ault.)-.1 E(GNU Bash-4.0)72 768 Q +(2008 May 25)147.345 E(58)197.335 E 0 Cg EP +%%Page: 59 59 %%BeginPageSetup BP %%EndPageSetup @@ -6861,9 +6993,9 @@ F13.445 E F0(and)3.445 E F13.445 E F0 .945 (current set of options may be found in)144 682.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 .066(lid option).25 F -(is encountered.)144 694.8 Q(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 -E(58)198.445 E 0 Cg EP -%%Page: 59 59 +(is encountered.)144 694.8 Q(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E +(59)197.335 E 0 Cg EP +%%Page: 60 60 %%BeginPageSetup BP %%EndPageSetup @@ -6966,665 +7098,677 @@ Q F0 .419(If set,)184 673.2 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 (to the conditional command')184 685.2 Q 2.5(s=)-.55 G 2.5(~o)-2.5 G -(perator)-2.5 E(.)-.55 E F1(dotglob)144 697.2 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 -709.2 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 721.2 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-3.2)72 768 Q -(2008 April 5)148.455 E(59)198.445 E 0 Cg EP -%%Page: 60 60 +(perator)-2.5 E(.)-.55 E F1(dirspell)144 697.2 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 709.2 Q(xist.)-.15 +E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(60)197.335 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/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 +-.35 E/F1 10/Times-Bold@0 SF(dotglob)144 84 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 96 Q +F0 1.387(If set, a non-interacti)7.79 F 1.687 -.15(ve s)-.25 H 1.386 +(hell will not e).15 F 1.386(xit if it cannot e)-.15 F -.15(xe)-.15 G +1.386(cute the \214le speci\214ed as an).15 F(ar)184 108 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 120 Q F0 +.716(If set, aliases are e)184 132 R .717(xpanded as described abo)-.15 +F 1.017 -.15(ve u)-.15 H(nder).15 E/F2 9/Times-Bold@0 SF(ALIASES)3.217 E +/F3 9/Times-Roman@0 SF(.)A F0 .717(This option is enabled)5.217 F +(by def)184 144 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.) +.15 E F1(extdeb)144 156 Q(ug)-.2 E F0(If set, beha)184 168 Q (vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F1(1.)184 -144 Q F0(The)28.5 E F14.25 E F0 1.75(option to the)4.25 F F1 +180 Q F0(The)28.5 E F14.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 156 Q -(gument.)-.18 E F1(2.)184 168 Q F0 1.667(If the command run by the)28.5 +(number corresponding to each function name supplied as an ar)220 192 Q +(gument.)-.18 E F1(2.)184 204 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 -(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 +1.667(alue, the ne)-.25 F(xt)-.15 E(command is skipped and not e)220 216 +Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 228 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 240 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 +(sour)220 252 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 26(4. B)184 -228 R(ASH_ARGC)-.3 E F0(and)3.775 E F1 -.3(BA)3.775 G(SH_ARGV).3 E F0 -1.276(are updated as described in their descrip-)3.775 F(tions abo)220 -240 Q -.15(ve)-.15 G(.).15 E F1(5.)184 252 Q F0 1.359 +264 R(ASH_ARGC)-.3 E F0(and)3.776 E F1 -.3(BA)3.776 G(SH_ARGV).3 E F0 +1.275(are updated as described in their descrip-)3.776 F(tions abo)220 +276 Q -.15(ve)-.15 G(.).15 E F1(5.)184 288 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 +300 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 312 Q F0 .805(Error tracing is enabled:)28.5 F .804 +(command substitution, shell functions, and subshells)5.805 F(in)220 324 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(OR)-.3 E F0 -(trap.)2.5 E F1(extglob)144 300 Q F0 .4(If set, the e)8.89 F .4 +(trap.)2.5 E F1(extglob)144 336 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 348 Q +F0(are enabled.)2.5 E F1(extquote)144 360 Q F0 2.473(If set,)184 372 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 -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 -.585(If set, the suf)184 396 R<8c78>-.25 E .585(es speci\214ed by the) +(pansions).15 E(enclosed in double quotes.)184 384 Q +(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 396 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 408 S(pansion error).15 E(.) +-.55 E F1 -.25(fo)144 420 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0 +.585(If set, the suf)184 432 R<8c78>-.25 E .585(es speci\214ed by the) -.15 F F1(FIGNORE)3.085 E F0 .585(shell v)3.085 F .585(ariable cause w) --.25 F .585(ords to be ignored)-.1 F .32(when performing w)184 408 R .32 +-.25 F .585(ords to be ignored)-.1 F .32(when performing w)184 444 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 3.329 -(pletions. See)184 420 R F2 .829(SHELL V)3.329 F(ARIABLES)-1.215 E F0 -(abo)3.079 E 1.129 -.15(ve f)-.15 H .83(or a description of).15 F F1 -(FIGNORE)3.33 E F0 5.83(.T)C .83(his option)-5.83 F(is enabled by def) -184 432 Q(ault.)-.1 E F1(gnu_errfmt)144 444 Q F0(If set, shell error me\ -ssages are written in the standard GNU error message format.)184 456 Q -F1(histappend)144 468 Q F0 .384 +(he ignored w)-2.82 F .32(ords are the only possible com-)-.1 F 3.33 +(pletions. See)184 456 R F2 .83(SHELL V)3.33 F(ARIABLES)-1.215 E F0(abo) +3.08 E 1.13 -.15(ve f)-.15 H .829(or a description of).15 F F1(FIGNORE) +3.329 E F0 5.829(.T)C .829(his option)-5.829 F(is enabled by def)184 468 +Q(ault.)-.1 E F1(globstar)144 480 Q F0 .439(If set, the pattern)5 F F1 +(**)2.939 E F0 .439(used in a \214lename e)2.939 F .439(xpansion conte) +-.15 F .44(xt will match a \214les and zero or)-.15 F 1.298 +(more directories and subdirectories.)184 492 R 1.298 +(If the pattern is follo)6.298 F 1.298(wed by a)-.25 F F1(/)3.797 E F0 +3.797(,o)C 1.297(nly directories)-3.797 F(and subdirectories match.)184 +504 Q F1(gnu_errfmt)144 516 Q F0(If set, shell error messages are writt\ +en in the standard GNU error message format.)184 528 Q F1(histappend)144 +540 Q F0 .383 (If set, the history list is appended to the \214le named by the v)184 -480 R .383(alue of the)-.25 F F1(HISTFILE)2.883 E F0 -.25(va)2.883 G -(ri-).25 E(able when the shell e)184 492 Q(xits, rather than o)-.15 E --.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 504 Q(eedit)-.18 -E F0 .575(If set, and)184 516 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 528 Q F1(histv)144 540 Q(erify)-.1 E F0 .403 -(If set, and)184 552 R F1 -.18(re)2.903 G(adline).18 E F0 .403 +552 R .384(alue of the)-.25 F F1(HISTFILE)2.884 E F0 -.25(va)2.884 G +(ri-).25 E(able when the shell e)184 564 Q(xits, rather than o)-.15 E +-.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 576 Q(eedit)-.18 +E F0 .576(If set, and)184 588 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 600 Q F1(histv)144 612 Q(erify)-.1 E F0 .402 +(If set, and)184 624 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 564 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 576 S -.25(ff).2 G(er).25 E +2.903 F .662(passed to the shell parser)184 636 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 648 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 588 Q F0 1.182(If set, and)184 600 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 -612 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 624 Q -.15(ve)-.15 G 2.5(\). This).15 F -(is enabled by def)2.5 E(ault.)-.1 E F1(huponexit)144 636 Q F0(If set,) -184 648 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 660 Q -.1(ve)-.1 G(_comments).1 E F0 -.33(If set, allo)184 672 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 684 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 .968(option is)3.468 F(enabled by def)184 696 Q -(ault.)-.1 E F1(lithist)144 708 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 720 Q -(wlines rather than using semicolon separators where possible.)-.25 E -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(60)198.445 E 0 Cg EP -%%Page: 61 61 +(hostcomplete)144 660 Q F0 1.181(If set, and)184 672 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 +684 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 696 Q -.15(ve)-.15 G 2.5(\). This).15 F +(is enabled by def)2.5 E(ault.)-.1 E(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(61)197.335 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/F1 10/Times-Bold@0 SF(login_shell)144 84 Q F0 .486 +-.35 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(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.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 180 Q F0 .486 (The shell sets this option if it is started as a login shell \(see)184 -96 R/F2 9/Times-Bold@0 SF(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 108 S -(lue may not be changed.).25 E F1(mailwar)144 120 Q(n)-.15 E F0 .815 -(If set, and a \214le that)184 132 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 144 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 156 Q F0 .145(If set, and)184 168 R F1 -.18 -(re)2.645 G(adline).18 E F0 .145(is being used,)2.645 F F1(bash)2.646 E -F0 .146(will not attempt to search the)2.646 F F1 -.74(PA)2.646 G(TH) --.21 E F0 .146(for possible)2.646 F -(completions when completion is attempted on an empty line.)184 180 Q F1 -(nocaseglob)144 192 Q F0 .437(If set,)184 204 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 216 S +(no_empty_cmd_completion)144 252 Q F0 .146(If set, and)184 264 R F1 -.18 +(re)2.646 G(adline).18 E F0 .146(is being used,)2.646 F F1(bash)2.646 E +F0 .145(will not attempt to search the)2.646 F F1 -.74(PA)2.645 G(TH) +-.21 E F0 .145(for possible)2.645 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 228 Q F0 1.193(If set,)184 -240 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 252 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 264 Q F0 -.855(If set,)184 276 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 288 S(pand to a null string, rather than themselv) -.15 E(es.)-.15 E F1(pr)144 300 Q(ogcomp)-.18 E F0 .676 -(If set, the programmable completion f)184 312 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 324 Q -(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 336 Q(omptv) --.18 E(ars)-.1 E F0 1.448(If set, prompt strings under)184 348 R 1.448 -(go parameter e)-.18 F 1.447(xpansion, command substitution, arithmetic) --.15 F -.15(ex)184 360 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 372 Q(ault.)-.1 E F1 -.18(re)144 384 +-.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 396 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 408 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 420 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 432 Q(erbose)-.1 E F0 .502(If set, the)184 444 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 456 Q F1(sour) -144 468 Q(cepath)-.18 E F0 .77(If set, the)184 480 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 492 Q 2.5(gument. This)-.18 F -(option is enabled by def)2.5 E(ault.)-.1 E F1(xpg_echo)144 504 Q F0 -(If set, the)184 516 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 528 Q F0([)2.5 E F1A F0(])A .493(Suspend the e)144 540 R -.15 -(xe)-.15 G .493(cution of this shell until it recei).15 F -.15(ve)-.25 G -2.992(sa).15 G F2(SIGCONT)A F0 2.992(signal. The)2.742 F F12.992 E -F0 .492(option says not to)2.992 F .758 -(complain if this is a login shell; just suspend an)144 552 R(yw)-.15 E -(ay)-.1 E 5.758(.T)-.65 G .759 +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 624 Q F0([)2.5 E F1A F0(])A .492 +(Suspend the e)144 636 R -.15(xe)-.15 G .492 +(cution of this shell until it recei).15 F -.15(ve)-.25 G 2.992(sa).15 G +F2(SIGCONT).001 E F0 2.993(signal. The)2.743 F F12.993 E F0 .493 +(option says not to)2.993 F .759 +(complain if this is a login shell; just suspend an)144 648 R(yw)-.15 E +(ay)-.1 E 5.758(.T)-.65 G .758 (he return status is 0 unless the shell is a)-5.758 F(login shell and) -144 564 Q F12.5 E F0 +144 660 Q F12.5 E F0 (is not supplied, or if job control is not enabled.)2.5 E F1(test)108 -576 Q F3 -.2(ex)2.5 G(pr).2 E F1([)108 588 Q F3 -.2(ex)2.5 G(pr).2 E F1 +672 Q F3 -.2(ex)2.5 G(pr).2 E F1([)108 684 Q F3 -.2(ex)2.5 G(pr).2 E F1 (])2.5 E F0 1.15(Return a status of 0 or 1 depending on the e)6.77 F -.25(va)-.25 G 1.15(luation of the conditional e).25 F(xpression)-.15 E -F3 -.2(ex)3.65 G(pr).2 E F0 6.15(.E).73 G(ach)-6.15 E 1.187 -(operator and operand must be a separate ar)144 600 R 3.688 -(gument. Expressions)-.18 F 1.188(are composed of the primaries)3.688 F -1.89(described abo)144 612 R 2.19 -.15(ve u)-.15 H(nder).15 E F2 -(CONDITION)4.39 E 1.89(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A -F1(test)6.39 E F0 1.889(does not accept an)4.389 F 4.389(yo)-.15 G 1.889 -(ptions, nor)-4.389 F(does it accept and ignore an ar)144 624 Q +F3 -.2(ex)3.65 G(pr).2 E F0 6.15(.E).73 G(ach)-6.15 E 1.188 +(operator and operand must be a separate ar)144 696 R 3.688 +(gument. Expressions)-.18 F 1.187(are composed of the primaries)3.688 F +1.889(described abo)144 708 R 2.189 -.15(ve u)-.15 H(nder).15 E F2 +(CONDITION)4.389 E 1.889(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A +F1(test)6.389 E F0 1.89(does not accept an)4.389 F 4.39(yo)-.15 G 1.89 +(ptions, nor)-4.39 F(does it accept and ignore an ar)144 720 Q (gument of)-.18 E F12.5 E F0(as signifying the end of options.)2.5 -E .785(Expressions may be combined using the follo)144 642 R .786 -(wing operators, listed in decreasing order of prece-)-.25 F 2.5 -(dence. The)144 654 R -.25(eva)2.5 G -(luation depends on the number of ar).25 E(guments; see belo)-.18 E -.65 -(w.)-.25 G F1(!)144 666 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 678 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 690 Q F3 -.2(ex) -144 702 S(pr1).2 E F02.5 E F1(a)A F3 -.2(ex)2.5 G(pr2).2 E F0 -.35 -(Tr)180 714 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(GNU Bash-3.2)72 768 Q -(2008 April 5)148.455 E(61)198.445 E 0 Cg EP -%%Page: 62 62 +E(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(62)197.335 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-Italic@0 SF -.2(ex)144 84 S(pr1).2 E F02.5 E/F2 -10/Times-Bold@0 SF(o)A F1 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 96 S -(ue if either).35 E F1 -.2(ex)2.5 G(pr1).2 E F0(or)2.5 E F1 -.2(ex)2.5 G -(pr2).2 E F0(is true.)2.52 E F2(test)144 112.8 Q F0(and)2.5 E F2([)2.5 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 2.5 +(dence. The)144 96 R -.25(eva)2.5 G(luation depends on the number of ar) +.25 E(guments; see belo)-.18 E -.65(w.)-.25 G/F1 10/Times-Bold@0 SF(!) +144 108 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 120 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 132 Q F2 -.2(ex) +144 144 S(pr1).2 E F02.5 E F1(a)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35 +(Tr)180 156 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 168 S(pr1).2 E +F02.5 E F1(o)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 180 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 196.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 130.8 S -.18(rg)-2.5 G(uments).18 E(The e) -180 142.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 154.8 S -.18 -(rg)-2.5 G(ument).18 E(The e)180 166.8 Q +(guments.)-.18 E 2.5(0a)144 214.8 S -.18(rg)-2.5 G(uments).18 E(The e) +180 226.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 238.8 S -.18 +(rg)-2.5 G(ument).18 E(The e)180 250.8 Q (xpression is true if and only if the ar)-.15 E(gument is not null.)-.18 -E 2.5(2a)144 178.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) -180 190.8 R .37(gument is)-.18 F F2(!)2.87 E F0 2.87(,t)C .37(he e)-2.87 +E 2.5(2a)144 262.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) +180 274.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 .38(If the \214rst ar)180 202.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 -214.8 Q .552(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(,)A F0 .552 +(gument is null.)-.18 F .379(If the \214rst ar)180 286.8 R .38 +(gument is one of the unary conditional operators listed abo)-.18 F .68 +-.15(ve u)-.15 H(nder).15 E/F3 9/Times-Bold@0 SF(CONDI-)2.88 E(TION)180 +298.8 Q .553(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 226.8 Q +.552(If the \214rst ar)5.552 F(gu-)-.18 E(ment is not a v)180 310.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 238.8 S -.18(rg)-2.5 G -(uments).18 E .024(If the second ar)180 250.8 R .023 +(xpression is f)-.15 E(alse.)-.1 E 2.5(3a)144 322.8 S -.18(rg)-2.5 G +(uments).18 E .023(If the second ar)180 334.8 R .023 (gument is one of the binary conditional operators listed abo)-.18 F -.323 -.15(ve u)-.15 H(nder).15 E F3(CON-)2.523 E(DITION)180 262.8 Q -1.477(AL EXPRESSIONS)-.18 F F4(,)A F0 1.477(the result of the e)3.727 F +.324 -.15(ve u)-.15 H(nder).15 E F3(CON-)2.524 E(DITION)180 346.8 Q +1.478(AL EXPRESSIONS)-.18 F F4(,)A F0 1.477(the result of the e)3.727 F 1.477(xpression is the result of the binary test)-.15 F .513 -(using the \214rst and third ar)180 274.8 R .513(guments as operands.) --.18 F(The)5.513 E F23.013 E F0(and)3.013 E F23.013 E F0 -.512(operators are considered)3.013 F .972 -(binary operators when there are three ar)180 286.8 R 3.472(guments. If) --.18 F .972(the \214rst ar)3.472 F .972(gument is)-.18 F F2(!)3.472 E F0 -3.472(,t)C .972(he v)-3.472 F .972(alue is)-.25 F .884(the ne)180 298.8 -R -.05(ga)-.15 G .884(tion of the tw).05 F(o-ar)-.1 E .884 -(gument test using the second and third ar)-.18 F 3.383(guments. If)-.18 -F .883(the \214rst)3.383 F(ar)180 310.8 Q .874(gument is e)-.18 F -(xactly)-.15 E F2(\()3.374 E F0 .875(and the third ar)3.374 F .875 -(gument is e)-.18 F(xactly)-.15 E F2(\))3.375 E F0 3.375(,t)C .875 -(he result is the one-ar)-3.375 F(gument)-.18 E(test of the second ar) -180 322.8 Q 2.5(gument. Otherwise,)-.18 F(the e)2.5 E(xpression is f) --.15 E(alse.)-.1 E 2.5(4a)144 334.8 S -.18(rg)-2.5 G(uments).18 E .385 -(If the \214rst ar)180 346.8 R .385(gument is)-.18 F F2(!)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 358.8 R 4.147 -(guments. Otherwise,)-.18 F 1.647(the e)4.147 F 1.648 +(using the \214rst and third ar)180 358.8 R .513(guments as operands.) +-.18 F(The)5.513 E F13.013 E F0(and)3.013 E F13.013 E F0 +.513(operators are considered)3.013 F .972 +(binary operators when there are three ar)180 370.8 R 3.472(guments. If) +-.18 F .972(the \214rst ar)3.472 F .972(gument is)-.18 F F1(!)3.472 E F0 +3.472(,t)C .972(he v)-3.472 F .972(alue is)-.25 F .883(the ne)180 382.8 +R -.05(ga)-.15 G .883(tion of the tw).05 F(o-ar)-.1 E .884 +(gument test using the second and third ar)-.18 F 3.384(guments. If)-.18 +F .884(the \214rst)3.384 F(ar)180 394.8 Q .875(gument is e)-.18 F +(xactly)-.15 E F1(\()3.375 E F0 .875(and the third ar)3.375 F .875 +(gument is e)-.18 F(xactly)-.15 E F1(\))3.375 E F0 3.374(,t)C .874 +(he result is the one-ar)-3.374 F(gument)-.18 E(test of the second ar) +180 406.8 Q 2.5(gument. Otherwise,)-.18 F(the e)2.5 E(xpression is f) +-.15 E(alse.)-.1 E 2.5(4a)144 418.8 S -.18(rg)-2.5 G(uments).18 E .384 +(If the \214rst ar)180 430.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 442.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 370.8 Q -.15(ve) --.15 G(.).15 E 2.5(5o)144 382.8 S 2.5(rm)-2.5 G(ore ar)-2.5 E(guments) --.18 E 1.635(The e)180 394.8 R 1.635(xpression is parsed and e)-.15 F +(according to precedence using the rules listed abo)180 454.8 Q -.15(ve) +-.15 G(.).15 E 2.5(5o)144 466.8 S 2.5(rm)-2.5 G(ore ar)-2.5 E(guments) +-.18 E 1.635(The e)180 478.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 -406.8 Q -.15(ve)-.15 G(.).15 E F2(times)108 423.6 Q F0 1.229(Print the \ +490.8 Q -.15(ve)-.15 G(.).15 E F1(times)108 507.6 Q F0 1.229(Print the \ accumulated user and system times for the shell and for processes run f\ -rom the shell.)13.23 F(The return status is 0.)144 435.6 Q F2(trap)108 -452.4 Q F0([)2.5 E F2(\255lp)A F0 2.5(][)C([)-2.5 E F1(ar)A(g)-.37 E F0 -(])A F1(sigspec)2.5 E F0(...])2.5 E .703(The command)144 464.4 R F1(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 F1(sigspec)3.202 E F0 5.702(.I).31 G(f)-5.702 E F1 -(ar)3.532 E(g)-.37 E F0(is)3.422 E .608(absent \(and there is a single) -144 476.4 R F1(sigspec)3.108 E F0 3.108(\)o)C(r)-3.108 E F23.108 E +rom the shell.)13.23 F(The return status is 0.)144 519.6 Q F1(trap)108 +536.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 548.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 560.4 R F2(sigspec)3.108 E F0 3.108(\)o)C(r)-3.108 E F13.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 488.4 R .659(alue it had upon entrance to the shell\).) --.25 F(If)5.658 E F1(ar)3.488 E(g)-.37 E F0 .658 -(is the null string the signal speci\214ed by each)3.378 F F1(sigspec) -144.34 500.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 F1(ar)3.411 E(g)-.37 E -F0 .581(is not present and)3.301 F F23.081 E F0(has)3.081 E 1.215 -(been supplied, then the trap commands associated with each)144 512.4 R -F1(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 524.4 R F23.36 -E F0 .86(is gi)3.36 F -.15(ve)-.25 G(n,).15 E F2(trap)3.36 E F0 .86 +.658(\(the v)144 572.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 584.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 F13.08 E F0(has)3.08 E 1.214 +(been supplied, then the trap commands associated with each)144 596.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 608.4 R F13.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 536.4 R F22.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 548.4 R F1(sigspec)4.65 E F0 1.811 -(is either a signal name de\214ned in <)4.62 F F1(signal.h)A F0 1.811 -(>, or a signal number)B 6.811(.S)-.55 G(ignal)-6.811 E .745 -(names are case insensiti)144 560.4 R 1.045 -.15(ve a)-.25 H .745 -(nd the SIG pre\214x is optional.).15 F .745(If a)5.745 F F1(sigspec) +(signal. The)144 620.4 R F12.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 632.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 .745 +(names are case insensiti)144 644.4 R 1.045 -.15(ve a)-.25 H .745 +(nd the SIG pre\214x is optional.).15 F .745(If a)5.745 F F2(sigspec) 3.585 E F0(is)3.555 E F3(EXIT)3.245 E F0 .745(\(0\) the command)2.995 F -F1(ar)144.33 572.4 Q(g)-.37 E F0 1.629(is e)4.349 F -.15(xe)-.15 G 1.629 -(cuted on e).15 F 1.63(xit from the shell.)-.15 F 1.63(If a)6.63 F F1 -(sigspec)4.47 E F0(is)4.44 E F3(DEB)4.13 E(UG)-.09 E F4(,)A F0 1.63 -(the command)3.88 F F1(ar)4.46 E(g)-.37 E F0 1.63(is e)4.35 F -.15(xe) --.15 G(cuted).15 E 1.207(before e)144 584.4 R -.15(ve)-.25 G(ry).15 E F1 -1.207(simple command)3.707 F F0(,)A F1(for)3.707 E F0(command,)3.706 E -F1(case)3.706 E F0(command,)3.706 E F1(select)3.706 E F0 1.206 -(command, e)3.706 F -.15(ve)-.25 G 1.206(ry arithmetic).15 F F1(for)144 -596.4 Q F0 .412(command, and before the \214rst command e)2.912 F -.15 -(xe)-.15 G .412(cutes in a shell function \(see).15 F F3 .413 -(SHELL GRAMMAR)2.912 F F0(abo)144 608.4 Q -.15(ve)-.15 G 2.666 -(\). Refer).15 F .166(to the description of the)2.666 F F2(extdeb)2.666 -E(ug)-.2 E F0 .166(option to the)2.666 F F2(shopt)2.666 E F0 -.2(bu) -2.666 G .166(iltin for details of its ef).2 F(fect)-.25 E .508(on the) -144 620.4 R F2(DEB)3.008 E(UG)-.1 E F0 3.008(trap. If)3.008 F(a)3.008 E -F1(sigspec)3.348 E F0(is)3.318 E F3(ERR)3.008 E F4(,)A F0 .508 -(the command)2.758 F F1(ar)3.338 E(g)-.37 E F0 .509(is e)3.228 F -.15 -(xe)-.15 G .509(cuted whene).15 F -.15(ve)-.25 G 3.009(ras).15 G .509 -(imple com-)-3.009 F 2.506(mand has a non\255zero e)144 632.4 R 2.506 +F2(ar)144.33 656.4 Q(g)-.37 E F0 1.63(is e)4.35 F -.15(xe)-.15 G 1.63 +(cuted on e).15 F 1.63(xit from the shell.)-.15 F 1.63(If a)6.63 F F2 +(sigspec)4.47 E F0(is)4.44 E F3(DEB)4.13 E(UG)-.09 E F4(,)A F0 1.629 +(the command)3.88 F F2(ar)4.459 E(g)-.37 E F0 1.629(is e)4.349 F -.15 +(xe)-.15 G(cuted).15 E 1.206(before e)144 668.4 R -.15(ve)-.25 G(ry).15 +E F2 1.206(simple command)3.706 F F0(,)A F2(for)3.706 E F0(command,) +3.706 E F2(case)3.706 E F0(command,)3.706 E F2(select)3.707 E F0 1.207 +(command, e)3.707 F -.15(ve)-.25 G 1.207(ry arithmetic).15 F F2(for)144 +680.4 Q F0 .412(command, and before the \214rst command e)2.913 F -.15 +(xe)-.15 G .412(cutes in a shell function \(see).15 F F3 .412 +(SHELL GRAMMAR)2.912 F F0(abo)144 692.4 Q -.15(ve)-.15 G 2.665 +(\). Refer).15 F .166(to the description of the)2.665 F F1(extdeb)2.666 +E(ug)-.2 E F0 .166(option to the)2.666 F F1(shopt)2.666 E F0 -.2(bu) +2.666 G .166(iltin for details of its ef).2 F(fect)-.25 E .509(on the) +144 704.4 R F1(DEB)3.009 E(UG)-.1 E F0 3.009(trap. If)3.009 F(a)3.009 E +F2(sigspec)3.348 E F0(is)3.318 E F3(ERR)3.008 E F4(,)A F0 .508 +(the command)2.758 F F2(ar)3.338 E(g)-.37 E F0 .508(is e)3.228 F -.15 +(xe)-.15 G .508(cuted whene).15 F -.15(ve)-.25 G 3.008(ras).15 G .508 +(imple com-)-3.008 F 2.506(mand has a non\255zero e)144 716.4 R 2.506 (xit status, subject to the follo)-.15 F 2.506(wing conditions.)-.25 F (The)7.506 E F3(ERR)5.006 E F0 2.506(trap is not)4.756 F -.15(exe)144 -644.4 S .105(cuted if the f).15 F .105 +728.4 S .105(cuted if the f).15 F .105 (ailed command is part of the command list immediately follo)-.1 F .105 -(wing a)-.25 F F2(while)2.605 E F0(or)2.605 E F2(until)2.605 E F0 -.1 -(ke)144 656.4 S(yw)-.05 E .549(ord, part of the test in an)-.1 F F1(if) -3.059 E F0 .549(statement, part of a command e)5.009 F -.15(xe)-.15 G -.549(cuted in a).15 F F2(&&)3.049 E F0(or)3.049 E/F5 10/Symbol SF -3.049 E F0 .549(list, or if)3.049 F .577(the command')144 668.4 R 3.077 -(sr)-.55 G .577(eturn v)-3.077 F .577(alue is being in)-.25 F -.15(ve) --.4 G .577(rted via).15 F F2(!)3.077 E F0 5.578(.T)C .578 -(hese are the same conditions obe)-5.578 F .578(yed by the)-.15 F F2 -(err)144 680.4 Q(exit)-.18 E F0 3.031(option. If)3.031 F(a)3.031 E F1 -(sigspec)3.371 E F0(is)3.341 E F3(RETURN)3.031 E F4(,)A F0 .531 -(the command)2.781 F F1(ar)3.361 E(g)-.37 E F0 .531(is e)3.251 F -.15 -(xe)-.15 G .53(cuted each time a shell function).15 F .316 -(or a script e)144 692.4 R -.15(xe)-.15 G .317(cuted with the).15 F F2 -(.)2.817 E F0(or)2.817 E F2(sour)2.817 E(ce)-.18 E F0 -.2(bu)2.817 G -.317(iltins \214nishes e).2 F -.15(xe)-.15 G 2.817(cuting. Signals).15 F -.317(ignored upon entry to)2.817 F .787 -(the shell cannot be trapped or reset.)144 704.4 R -.35(Tr)5.787 G .787 -(apped signals that are not being ignored are reset to their).35 F 1.1 -(original v)144 716.4 R 1.1 -(alues in a child process when it is created.)-.25 F 1.1 -(The return status is f)6.1 F 1.1(alse if an)-.1 F(y)-.15 E F1(sigspec) -3.94 E F0(is)3.91 E(in)144 728.4 Q -.25(va)-.4 G(lid; otherwise).25 E F2 -(trap)2.5 E F0(returns true.)2.5 E(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(62)198.445 E 0 Cg EP -%%Page: 63 63 +(wing a)-.25 F F1(while)2.605 E F0(or)2.605 E F1(until)2.605 E F0 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(63)197.335 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/F1 10/Times-Bold@0 SF(type)108 84 Q F0([)2.5 E F1(\255aftpP)A F0 -(])A/F2 10/Times-Italic@0 SF(name)2.5 E F0([)2.5 E F2(name)A F0(...])2.5 -E -.4(Wi)144 96 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 -F1144 108 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 120 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 132 R .118 -(xit status of f)-.15 F .118(alse is returned.)-.1 F .119(If the)5.119 F -F12.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 144 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 -156 R/F3 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 -3.141 E F0 .641(option forces a)3.141 F/F4 9/Times-Bold@0 SF -.666 -(PA)3.141 G(TH)-.189 E F0 .113(search for each)144 168 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 F3 .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 F12.612 E F0(and)144 180 Q F1 -2.944 E F0 .444(print the hashed v)2.944 F .444 -(alue, not necessarily the \214le that appears \214rst in)-.25 F F4 --.666(PA)2.945 G(TH)-.189 E/F5 9/Times-Roman@0 SF(.)A F0 .445(If the) -4.945 F F12.945 E F0(option)2.945 E .265(is used,)144 192 R F1 -(type)2.765 E F0 .265(prints all of the places that contain an e)2.765 F --.15(xe)-.15 G .265(cutable named).15 F F2(name)2.765 E F0 5.265(.T).18 -G .265(his includes aliases)-5.265 F .426 -(and functions, if and only if the)144 204 R F12.926 E F0 .426 -(option is not also used.)2.926 F .427 -(The table of hashed commands is not)5.426 F .549(consulted when using) -144 216 R F13.049 E F0 5.549(.T)C(he)-5.549 E F13.049 E F0 -.548(option suppresses shell function lookup, as with the)3.049 F F1 -(command)3.048 E F0 -.2(bu)144 228 S(iltin.).2 E F1(type)5 E F0 -(returns true if an)2.5 E 2.5(yo)-.15 G 2.5(ft)-2.5 G(he ar)-2.5 E -(guments are found, f)-.18 E(alse if none are found.)-.1 E F1(ulimit)108 -244.8 Q F0([)2.5 E F1(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E -F2(limit)A F0(]])A(Pro)144 256.8 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 +-.35 E -.1(ke)144 84 S(yw)-.05 E .549(ord, part of the test in an)-.1 F +/F1 10/Times-Italic@0 SF(if)3.059 E F0 .549 +(statement, part of a command e)5.009 F -.15(xe)-.15 G .549(cuted in a) +.15 F/F2 10/Times-Bold@0 SF(&&)3.049 E F0(or)3.049 E/F3 10/Symbol SF +3.049 E F0 .549(list, or if)3.049 F .578(the command')144 96 R +3.078(sr)-.55 G .578(eturn v)-3.078 F .578(alue is being in)-.25 F -.15 +(ve)-.4 G .578(rted via).15 F F2(!)3.078 E F0 5.577(.T)C .577 +(hese are the same conditions obe)-5.577 F .577(yed by the)-.15 F F2 +(err)144 108 Q(exit)-.18 E F0 3.03(option. If)3.03 F(a)3.03 E F1 +(sigspec)3.37 E F0(is)3.341 E/F4 9/Times-Bold@0 SF(RETURN)3.031 E/F5 9 +/Times-Roman@0 SF(,)A F0 .531(the command)2.781 F F1(ar)3.361 E(g)-.37 E +F0 .531(is e)3.251 F -.15(xe)-.15 G .531 +(cuted each time a shell function).15 F .317(or a script e)144 120 R +-.15(xe)-.15 G .317(cuted with the).15 F F2(.)2.817 E F0(or)2.817 E F2 +(sour)2.817 E(ce)-.18 E F0 -.2(bu)2.817 G .317(iltins \214nishes e).2 F +-.15(xe)-.15 G 2.817(cuting. Signals).15 F .316(ignored upon entry to) +2.817 F .787(the shell cannot be trapped or reset.)144 132 R -.35(Tr) +5.787 G .787 +(apped signals that are not being ignored are reset to their).35 F 1.1 +(original v)144 144 R 1.1(alues in a child process when it is created.) +-.25 F 1.1(The return status is f)6.1 F 1.1(alse if an)-.1 F(y)-.15 E F1 +(sigspec)3.94 E F0(is)3.91 E(in)144 156 Q -.25(va)-.4 G(lid; otherwise) +.25 E F2(trap)2.5 E F0(returns true.)2.5 E F2(type)108 172.8 Q F0([)2.5 +E F2(\255aftpP)A F0(])A F1(name)2.5 E F0([)2.5 E F1(name)A F0(...])2.5 E +-.4(Wi)144 184.8 S .173(th no options, indicate ho).4 F 2.673(we)-.25 G +(ach)-2.673 E F1(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 +F2144 196.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 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.342 G(iltin).2 E F0 3.342(,o).24 G(r)-3.342 E F1 +(\214le)5.252 E F0(if)3.522 E F1(name)144.36 208.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 F1 +(name)2.947 E F0 .087(is not)2.767 F .119 +(found, then nothing is printed, and an e)144 220.8 R .118 +(xit status of f)-.15 F .118(alse is returned.)-.1 F .118(If the)5.118 F +F22.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 232.8 R .855 +(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F1(name)3.715 E F0 +.855(were speci\214ed as a com-)3.535 F .641(mand name, or nothing if) +144 244.8 R/F6 10/Courier@0 SF .641(type -t name)3.141 F F0 -.1(wo)3.141 +G .641(uld not return).1 F F1(\214le)3.14 E F0 5.64(.T).18 G(he)-5.64 E +F23.14 E F0 .64(option forces a)3.14 F F4 -.666(PA)3.14 G(TH)-.189 +E F0 .112(search for each)144 256.8 R F1(name)2.612 E F0 2.612(,e)C -.15 +(ve)-2.862 G 2.613(ni).15 G(f)-2.613 E F6 .113(type -t name)2.613 F F0 +-.1(wo)2.613 G .113(uld not return).1 F F1(\214le)2.613 E F0 5.113(.I) +.18 G 2.613(fac)-5.113 G .113(ommand is hashed,)-2.613 F F22.613 E +F0(and)144 268.8 Q F22.945 E F0 .445(print the hashed v)2.945 F +.444(alue, not necessarily the \214le that appears \214rst in)-.25 F F4 +-.666(PA)2.944 G(TH)-.189 E F5(.)A F0 .444(If the)4.944 F F22.944 +E F0(option)2.944 E .265(is used,)144 280.8 R F2(type)2.765 E F0 .265 +(prints all of the places that contain an e)2.765 F -.15(xe)-.15 G .265 +(cutable named).15 F F1(name)2.765 E F0 5.265(.T).18 G .265 +(his includes aliases)-5.265 F .427(and functions, if and only if the) +144 292.8 R F22.926 E F0 .426(option is not also used.)2.926 F +.426(The table of hashed commands is not)5.426 F .548 +(consulted when using)144 304.8 R F23.048 E F0 5.548(.T)C(he) +-5.548 E F23.048 E F0 .549 +(option suppresses shell function lookup, as with the)3.048 F F2 +(command)3.049 E F0 -.2(bu)144 316.8 S(iltin.).2 E F2(type)5 E F0 +(returns true if all of the ar)2.5 E(guments are found, f)-.18 E +(alse if an)-.1 E 2.5(ya)-.15 G(re not found.)-2.5 E F2(ulimit)108 333.6 +Q F0([)2.5 E F2(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F1 +(limit)A F0(]])A(Pro)144 345.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 -.944(that allo)144 268.8 R 3.444(ws)-.25 G .944(uch control.)-3.444 F -(The)5.944 E F13.444 E F0(and)3.444 E F13.444 E F0 .943 +.943(that allo)144 357.6 R 3.443(ws)-.25 G .943(uch control.)-3.443 F +(The)5.943 E F23.443 E F0(and)3.443 E F23.444 E F0 .944 (options specify that the hard or soft limit is set for the)3.444 F(gi) -144 280.8 Q -.15(ve)-.25 G 2.708(nr).15 G 2.708(esource. A)-2.708 F .208 +144 369.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.708 F .426(be increased up to the v)144 292.8 R .426 -(alue of the hard limit.)-.25 F .425(If neither)5.426 F F12.925 E -F0(nor)2.925 E F12.925 E F0 .425 -(is speci\214ed, both the soft and)2.925 F .139(hard limits are set.)144 -304.8 R .139(The v)5.139 F .139(alue of)-.25 F F2(limit)2.729 E F0 .139 +ft limit may)2.709 F .425(be increased up to the v)144 381.6 R .425 +(alue of the hard limit.)-.25 F .426(If neither)5.425 F F22.926 E +F0(nor)2.926 E F22.926 E F0 .426 +(is speci\214ed, both the soft and)2.926 F .139(hard limits are set.)144 +393.6 R .139(The v)5.139 F .139(alue of)-.25 F F1(limit)2.729 E F0 .139 (can be a number in the unit speci\214ed for the resource or one)3.319 F -.742(of the special v)144 316.8 R(alues)-.25 E F1(hard)3.242 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) +.741(of the special v)144 405.6 R(alues)-.25 E F2(hard)3.241 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 328.8 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 417.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 (is omitted, the current v)3.96 F .78(alue of the soft limit of the)-.25 -F .499(resource is printed, unless the)144 340.8 R F12.999 E F0 -.499(option is gi)2.999 F -.15(ve)-.25 G 2.999(n. When).15 F .498 +F .498(resource is printed, unless the)144 429.6 R F22.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 352.8 Q 2.5 -(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F1 -144 364.8 Q F0(All current limits are reported)25.3 E F1144 -376.8 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E -F1144 388.8 Q F0(The maximum size of core \214les created)25.86 E -F1144 400.8 Q F0(The maximum size of a process')24.74 E 2.5(sd) --.55 G(ata se)-2.5 E(gment)-.15 E F1144 412.8 Q F0 -(The maximum scheduling priority \("nice"\))25.86 E F1144 424.8 Q +(limit name and unit are printed before the v)144 441.6 Q 2.5 +(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F2 +144 453.6 Q F0(All current limits are reported)25.3 E F2144 +465.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E +F2144 477.6 Q F0(The maximum size of core \214les created)25.86 E +F2144 489.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 F2144 501.6 Q F0 +(The maximum scheduling priority \("nice"\))25.86 E F2144 513.6 Q F0(The maximum size of \214les written by the shell and its children) -26.97 E F1144 436.8 Q F0(The maximum number of pending signals) -27.52 E F1144 448.8 Q F0(The maximum size that may be lock)27.52 E -(ed into memory)-.1 E F1144 460.8 Q F0 -(The maximum resident set size)21.97 E F1144 472.8 Q F0 .791(The \ +26.97 E F2144 525.6 Q F0(The maximum number of pending signals) +27.52 E F2144 537.6 Q F0(The maximum size that may be lock)27.52 E +(ed into memory)-.1 E F2144 549.6 Q F0 +(The maximum resident set size)21.97 E F2144 561.6 Q F0 .791(The \ 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 484.8 Q F1144 496.8 Q F0 -(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F1 -144 508.8 Q F0 -(The maximum number of bytes in POSIX message queues)24.74 E F1144 -520.8 Q F0(The maximum real-time scheduling priority)25.86 E F1144 -532.8 Q F0(The maximum stack size)26.41 E F1144 544.8 Q F0 -(The maximum amount of cpu time in seconds)26.97 E F1144 556.8 Q +24.74 F 3.29(wt)-.25 G .79(his v)-3.29 F .79(alue to)-.25 F(be set\))180 +573.6 Q F2144 585.6 Q F0 +(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F2 +144 597.6 Q F0 +(The maximum number of bytes in POSIX message queues)24.74 E F2144 +609.6 Q F0(The maximum real-time scheduling priority)25.86 E F2144 +621.6 Q F0(The maximum stack size)26.41 E F2144 633.6 Q F0 +(The maximum amount of cpu time in seconds)26.97 E F2144 645.6 Q F0(The maximum number of processes a)24.74 E -.25(va)-.2 G -(ilable to a single user).25 E F1144 568.8 Q F0 +(ilable to a single user).25 E F2144 657.6 Q F0 (The maximum amount of virtual memory a)25.3 E -.25(va)-.2 G -(ilable to the shell).25 E F1144 580.8 Q F0 -(The maximum number of \214le locks)25.3 E F1144 592.8 Q F0 -(The maximum number of threads)23.63 E(If)144 609.6 Q F2(limit)2.933 E +(ilable to the shell).25 E F2144 669.6 Q F0 +(The maximum number of \214le locks)25.3 E F2144 681.6 Q F0 +(The maximum number of threads)23.63 E(If)144 698.4 Q F1(limit)2.933 E F0 .343(is gi)3.523 F -.15(ve)-.25 G .343(n, it is the ne).15 F 2.843 -(wv)-.25 G .343(alue of the speci\214ed resource \(the)-3.093 F F1 +(wv)-.25 G .343(alue of the speci\214ed resource \(the)-3.093 F F2 2.843 E F0 .343(option is display only\).)2.843 F .343(If no)5.343 F -.175(option is gi)144 621.6 R -.15(ve)-.25 G .175(n, then).15 F F1 -2.675 E F0 .175(is assumed.)2.675 F -1.11(Va)5.175 G .175 -(lues are in 1024-byte increments, e)1.11 F .176(xcept for)-.15 F F1 -2.676 E F0 2.676(,w)C .176(hich is in)-2.676 F(seconds,)144 633.6 -Q F12.516 E F0 2.516(,w)C .016 -(hich is in units of 512-byte blocks, and)-2.516 F F12.516 E F0(,) -A F12.515 E F0(,)A F12.515 E F0 2.515(,a)C(nd)-2.515 E F1 -2.515 E F0 2.515(,w)C .015(hich are unscaled v)-2.515 F(al-)-.25 E -3.787(ues. The)144 645.6 R 1.287(return status is 0 unless an in)3.787 F --.25(va)-.4 G 1.287(lid option or ar).25 F 1.287 -(gument is supplied, or an error occurs)-.18 F(while setting a ne)144 -657.6 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 674.4 Q F0([)2.5 E F1 -A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(mode)-2.5 E F0(])A .2 -(The user \214le-creation mask is set to)144 686.4 R F2(mode)2.7 E F0 +.176(option is gi)144 710.4 R -.15(ve)-.25 G .176(n, then).15 F F2 +2.676 E F0 .175(is assumed.)2.676 F -1.11(Va)5.175 G .175 +(lues are in 1024-byte increments, e)1.11 F .175(xcept for)-.15 F F2 +2.675 E F0 2.675(,w)C .175(hich is in)-2.675 F(seconds,)144 722.4 +Q F23.563 E F0 3.563(,w)C 1.063 +(hich is in units of 512-byte blocks, and)-3.563 F F23.564 E F0(,) +A F23.564 E F0(,)A F23.564 E F0 3.564(,a)C(nd)-3.564 E F2 +3.564 E F0 3.564(,w)C 1.064(hich are unscaled)-3.564 F +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(64)197.335 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 -.25(va)144 84 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 96 Q 2.5(wl)-.25 G(imit.)-2.5 E/F1 10 +/Times-Bold@0 SF(umask)108 112.8 Q F0([)2.5 E F1A F0 2.5(][)C F1 +-2.5 E F0 2.5(][)C/F2 10/Times-Italic@0 SF(mode)-2.5 E F0(])A .2 +(The user \214le-creation mask is set to)144 124.8 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 698.4 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 -710.4 Q F2(mode)3.263 E F0 .382(is omitted, the current v)3.063 F .382 +pted by)144 136.8 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 +148.8 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 F12.882 E F0 .382 (option causes the mask to be)2.882 F .547 -(printed in symbolic form; the def)144 722.4 R .547 +(printed in symbolic form; the def)144 160.8 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 F13.047 E F0 .547(option is supplied, and)3.047 F -(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(63)198.445 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/F1 10/Times-Italic@0 SF(mode)144.38 84 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 96 Q -(as successfully changed or if no)-.1 E F1(mode)2.5 E F0(ar)2.5 E -(gument w)-.18 E(as supplied, and f)-.1 E(alse otherwise.)-.1 E/F2 10 -/Times-Bold@0 SF(unalias)108 112.8 Q F0<5bad>2.5 E F2(a)A F0 2.5(][)C F1 -(name)-2.5 E F0(...])2.5 E(Remo)144 124.8 Q 1.955 -.15(ve e)-.15 H(ach) -.15 E F1(name)4.155 E F0 1.655(from the list of de\214ned aliases.)4.155 -F(If)6.655 E F24.155 E F0 1.655 -(is supplied, all alias de\214nitions are)4.155 F(remo)144 136.8 Q -.15 -(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E -(alue is true unless a supplied)-.25 E F1(name)2.86 E F0 -(is not a de\214ned alias.)2.68 E F2(unset)108 153.6 Q F0<5bad>2.5 E F2 -(fv)A F0 2.5(][)C F1(name)-2.5 E F0(...])2.5 E -.15(Fo)144 165.6 S 3.107 -(re).15 G(ach)-3.107 E F1(name)3.107 E F0 3.107(,r).18 G(emo)-3.107 E -.907 -.15(ve t)-.15 H .607(he corresponding v).15 F .607 -(ariable or function.)-.25 F .606(If no options are supplied, or the) -5.607 F F2144 177.6 Q F0 .304(option is gi)2.804 F -.15(ve)-.25 G -.304(n, each).15 F F1(name)3.164 E F0 .305(refers to a shell v)2.985 F -2.805(ariable. Read-only)-.25 F -.25(va)2.805 G .305 -(riables may not be unset.).25 F(If)5.305 E F2144 189.6 Q F0 .46 -(is speci\214ed, each)2.96 F F1(name)3.32 E F0 .459 -(refers to a shell function, and the function de\214nition is remo)3.14 -F -.15(ve)-.15 G 2.959(d. Each).15 F .902(unset v)144 201.6 R .902 +(he)-3.047 E F13.047 E F0 .547(option is supplied, and)3.047 F F2 +(mode)144.38 172.8 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 184.8 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 201.6 Q F0<5bad>2.5 E F1(a)A F0 2.5(][)C F2(name)-2.5 E F0 +(...])2.5 E(Remo)144 213.6 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 +F14.155 E F0 1.655(is supplied, all alias de\214nitions are)4.155 +F(remo)144 225.6 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 242.4 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 254.4 S 3.106 +(re).15 G(ach)-3.106 E F2(name)3.106 E F0 3.106(,r).18 G(emo)-3.106 E +.906 -.15(ve t)-.15 H .606(he corresponding v).15 F .607 +(ariable or function.)-.25 F .607(If no options are supplied, or the) +5.607 F F1144 266.4 Q F0 .305(option is gi)2.805 F -.15(ve)-.25 G +.305(n, each).15 F F2(name)3.165 E F0 .305(refers to a shell v)2.985 F +2.805(ariable. Read-only)-.25 F -.25(va)2.805 G .304 +(riables may not be unset.).25 F(If)5.304 E F1144 278.4 Q F0 .459 +(is speci\214ed, each)2.959 F F2(name)3.319 E F0 .459 +(refers to a shell function, and the function de\214nition is remo)3.139 +F -.15(ve)-.15 G 2.96(d. Each).15 F .903(unset v)144 290.4 R .903 (ariable or function is remo)-.25 F -.15(ve)-.15 G 3.402(df).15 G .902 -(rom the en)-3.402 F .903(vironment passed to subsequent commands.)-.4 F -(If)5.903 E(an)144 213.6 Q 4.285(yo)-.15 G(f)-4.285 E/F3 9/Times-Bold@0 -SF(RANDOM)4.285 E/F4 9/Times-Roman@0 SF(,)A F3(SECONDS)4.035 E F4(,)A F3 +(rom the en)-3.402 F .902(vironment passed to subsequent commands.)-.4 F +(If)5.902 E(an)144 302.4 Q 4.284(yo)-.15 G(f)-4.284 E/F3 9/Times-Bold@0 +SF(RANDOM)4.284 E/F4 9/Times-Roman@0 SF(,)A F3(SECONDS)4.035 E F4(,)A F3 (LINENO)4.035 E F4(,)A F3(HISTCMD)4.035 E F4(,)A F3(FUNCN)4.035 E(AME) -.18 E F4(,)A F3(GR)4.035 E(OUPS)-.27 E F4(,)A F0(or)4.035 E F3(DIRST) -4.284 E -.495(AC)-.81 G(K).495 E F0(are)4.034 E .328(unset, the)144 -225.6 R 2.828(yl)-.15 G .328(ose their special properties, e)-2.828 F +4.285 E -.495(AC)-.81 G(K).495 E F0(are)4.035 E .329(unset, the)144 +314.4 R 2.829(yl)-.15 G .328(ose their special properties, e)-2.829 F -.15(ve)-.25 G 2.828(ni).15 G 2.828(ft)-2.828 G(he)-2.828 E 2.828(ya) --.15 G .328(re subsequently reset.)-2.828 F .328(The e)5.328 F .329 -(xit status is true)-.15 F(unless a)144 237.6 Q F1(name)2.86 E F0 -(is readonly)2.68 E(.)-.65 E F2(wait)108 254.4 Q F0([)2.5 E F1 2.5(n.)C -(..)-2.5 E F0(])A -.8(Wa)144 266.4 S .288 +-.15 G .328(re subsequently reset.)-2.828 F .328(The e)5.328 F .328 +(xit status is true)-.15 F(unless a)144 326.4 Q F2(name)2.86 E F0 +(is readonly)2.68 E(.)-.65 E F1(wait)108 343.2 Q F0([)2.5 E F2 2.5(n.)C +(..)-2.5 E F0(])A -.8(Wa)144 355.2 S .288 (it for each speci\214ed process and return its termination status.).8 F -(Each)5.288 E F1(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 278.4 R -.15(ve)-.25 G +(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 367.2 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 -F1(n)3.583 E F0(is)3.463 E 1.266(not gi)144 290.4 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 F1(n)4.125 E F0 .456 -(speci\214es a non-e)144 302.4 R .457 +F2(n)3.582 E F0(is)3.462 E 1.265(not gi)144 379.2 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 391.2 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 314.4 S +(Otherwise, the return status is the)5.457 F -.15(ex)144 403.2 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(RESTRICTED SHELL)72 331.2 Q F0(If)108 343.2 Q -F2(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 F24.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 355.2 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 367.2 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 -(wing are disallo)-.25 E(wed or not performed:)-.25 E 32.5<8363>108 384 -S(hanging directories with)-32.5 E F2(cd)2.5 E F0 32.5<8373>108 400.8 S -(etting or unsetting the v)-32.5 E(alues of)-.25 E F2(SHELL)2.5 E F0(,)A -F2 -.74(PA)2.5 G(TH)-.21 E F0(,)A F2(ENV)2.5 E F0 2.5(,o)C(r)-2.5 E F2 --.3(BA)2.5 G(SH_ENV).3 E F0 32.5<8373>108 417.6 S -(pecifying command names containing)-32.5 E F2(/)2.5 E F0 32.5<8373>108 -434.4 S(pecifying a \214le name 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<8353>108 451.2 S .351 +/F5 10.95/Times-Bold@0 SF(RESTRICTED SHELL)72 420 Q F0(If)108 432 Q F1 +(bash)4.396 E F0 1.896(is started with the name)4.396 F F1(rbash)4.397 E +F0 4.397(,o)C 4.397(rt)-4.397 G(he)-4.397 E F14.397 E F0 1.897 +(option is supplied at in)4.397 F -.2(vo)-.4 G 1.897 +(cation, the shell becomes).2 F 3.446(restricted. A)108 444 R .945 +(restricted shell is used to set up an en)3.446 F .945 +(vironment more controlled than the standard shell.)-.4 F(It)5.945 E +(beha)108 456 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 +472.8 S(hanging directories with)-32.5 E F1(cd)2.5 E F0 32.5<8373>108 +489.6 S(etting or unsetting the v)-32.5 E(alues of)-.25 E F1(SHELL)2.5 E +F0(,)A F1 -.74(PA)2.5 G(TH)-.21 E F0(,)A F1(ENV)2.5 E F0 2.5(,o)C(r)-2.5 +E F1 -.3(BA)2.5 G(SH_ENV).3 E F0 32.5<8373>108 506.4 S +(pecifying command names containing)-32.5 E F1(/)2.5 E F0 32.5<8373>108 +523.2 S(pecifying a \214le name 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<8353>108 540 S .351 (pecifying a \214lename containing a slash as an ar)-32.5 F .351 -(gument to the)-.18 F F22.851 E F0 .351(option to the)2.851 F F2 -(hash)2.851 E F0 -.2(bu)2.851 G .351(iltin com-).2 F(mand)144 463.2 Q -32.5<8369>108 480 S(mporting function de\214nitions from the shell en) --32.5 E(vironment at startup)-.4 E 32.5<8370>108 496.8 S(arsing the v) --32.5 E(alue of)-.25 E F2(SHELLOPTS)2.5 E F0(from the shell en)2.5 E -(vironment at startup)-.4 E 32.5<8372>108 513.6 S(edirecting output usi\ +(gument to the)-.18 F F12.851 E F0 .351(option to the)2.851 F F1 +(hash)2.852 E F0 -.2(bu)2.852 G .352(iltin com-).2 F(mand)144 552 Q 32.5 +<8369>108 568.8 S(mporting function de\214nitions from the shell en) +-32.5 E(vironment at startup)-.4 E 32.5<8370>108 585.6 S(arsing the v) +-32.5 E(alue of)-.25 E F1(SHELLOPTS)2.5 E F0(from the shell en)2.5 E +(vironment at startup)-.4 E 32.5<8372>108 602.4 S(edirecting output usi\ ng the >, >|, <>, >&, &>, and >> redirection operators)-32.5 E 32.5 -<8375>108 530.4 S(sing the)-32.5 E F2(exec)2.5 E F0 -.2(bu)2.5 G +<8375>108 619.2 S(sing the)-32.5 E F1(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 547.2 S(dding or deleting b)-32.5 E(uiltin commands with the)-.2 E -F22.5 E F0(and)2.5 E F22.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<8355>108 564 S -(sing the)-32.5 E F2(enable)2.5 E F0 -.2(bu)2.5 G +108 636 S(dding or deleting b)-32.5 E(uiltin commands with the)-.2 E F1 +2.5 E F0(and)2.5 E F12.5 E F0(options to the)2.5 E F1 +(enable)2.5 E F0 -.2(bu)2.5 G(iltin command).2 E 32.5<8355>108 652.8 S +(sing the)-32.5 E F1(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 580.8 S(pecifying the)-32.5 E F22.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 597.6 -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 614.4 Q 2.5(ys)-.15 G +108 669.6 S(pecifying the)-32.5 E F12.5 E F0(option to the)2.5 E +F1(command)2.5 E F0 -.2(bu)2.5 G(iltin command).2 E 32.5<8374>108 686.4 +S(urning of)-32.5 E 2.5(fr)-.25 G(estricted mode with)-2.5 E F1(set +r) +2.5 E F0(or)2.5 E F1(set +o r)2.5 E(estricted)-.18 E F0(.)A +(These restrictions are enforced after an)108 703.2 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 631.2 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 643.2 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 F5(SEE ALSO)72 -660 Q F1(Bash Refer)108 672 Q(ence Manual)-.37 E F0 2.5(,B)C(rian F)-2.5 -E(ox and Chet Rame)-.15 E(y)-.15 E F1(The Gnu Readline Libr)108 684 Q -(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E -F1(The Gnu History Libr)108 696 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E -(ox and Chet Rame)-.15 E(y)-.15 E(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(64)198.445 E 0 Cg EP -%%Page: 65 65 +(When a command that is found to be a shell script is e)108 720 R -.15 +(xe)-.15 G 1.566(cuted \(see).15 F F3 1.566(COMMAND EXECUTION)4.066 F F0 +(abo)3.816 E -.15(ve)-.15 G(\),).15 E(GNU Bash-4.0)72 768 Q(2008 May 25) +147.345 E(65)197.335 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-Italic@0 SF -.8(Po)108 84 S(rtable Oper).8 E +-.35 E/F1 10/Times-Bold@0 SF(rbash)108 84 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/F2 10.95/Times-Bold@0 SF +(SEE ALSO)72 100.8 Q/F3 10/Times-Italic@0 SF(Bash Refer)108 112.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 F3(The Gnu Readline Libr)108 124.8 Q(ary)-.15 E F0 2.5(,B)C +(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F3(The Gnu History Libr) +108 136.8 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E +(y)-.15 E F3 -.8(Po)108 148.8 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 F1(sh)108 96 Q F0(\(1\),)A F1(ksh)2.5 E F0 -(\(1\),)A F1(csh)2.5 E F0(\(1\))A F1(emacs)108 108 Q F0(\(1\),)A F1(vi) -2.5 E F0(\(1\))A F1 -.37(re)108 120 S(adline).37 E F0(\(3\))A/F2 10.95 -/Times-Bold@0 SF(FILES)72 136.8 Q F1(/bin/bash)109.666 148.8 Q F0(The) -144 160.8 Q/F3 10/Times-Bold@0 SF(bash)2.5 E F0 -.15(exe)2.5 G(cutable) -.15 E F1(/etc/pr)109.666 172.8 Q(o\214le)-.45 E F0 -(The systemwide initialization \214le, e)144 184.8 Q -.15(xe)-.15 G -(cuted for login shells).15 E F1(~/.bash_pr)109.666 196.8 Q(o\214le)-.45 -E F0(The personal initialization \214le, e)144 208.8 Q -.15(xe)-.15 G -(cuted for login shells).15 E F1(~/.bashr)109.666 220.8 Q(c)-.37 E F0 -(The indi)144 232.8 Q(vidual per)-.25 E(-interacti)-.2 E -.15(ve)-.25 G -(-shell startup \214le).15 E F1(~/.bash_lo)109.666 244.8 Q(gout)-.1 E F0 -(The indi)144 256.8 Q(vidual login shell cleanup \214le, e)-.25 E -.15 -(xe)-.15 G(cuted when a login shell e).15 E(xits)-.15 E F1(~/.inputr) -109.666 268.8 Q(c)-.37 E F0(Indi)144 280.8 Q(vidual)-.25 E F1 -.37(re) -2.5 G(adline).37 E F0(initialization \214le)2.5 E F2 -.548(AU)72 297.6 S -(THORS).548 E F0(Brian F)108 309.6 Q(ox, Free Softw)-.15 E(are F)-.1 E -(oundation)-.15 E(bfox@gnu.or)108 321.6 Q(g)-.18 E(Chet Rame)108 338.4 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@po.cwru.edu)108 350.4 Q F2 -.11 -(BU)72 367.2 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .568 -(If you \214nd a b)108 379.2 R .568(ug in)-.2 F F3(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 391.2 R 5.625(ersion of)-.15 -F F3(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 F1(ftp://ftp.gnu.or)108 403.2 Q(g/pub/bash/)-.37 E F0 -(.)A .411(Once you ha)108 420 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 F1(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 432 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 444 Q F1 -.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 F3(gnu.bash.b)2.5 E(ug) --.2 E F0(.)A(ALL b)108 460.8 Q(ug reports should include:)-.2 E(The v) -108 477.6 Q(ersion number of)-.15 E F3(bash)2.5 E F0(The hardw)108 489.6 -Q(are and operating system)-.1 E(The compiler used to compile)108 501.6 -Q 2.5(Ad)108 513.6 S(escription of the b)-2.5 E(ug beha)-.2 E(viour)-.2 -E 2.5(As)108 525.6 S(hort script or `recipe' which e)-2.5 E -.15(xe)-.15 -G(rcises the b).15 E(ug)-.2 E F1(bashb)108.27 542.4 Q(ug)-.2 E F0 +-.8 E F0 2.5(,I)C(EEE)-2.5 E F3(sh)108 160.8 Q F0(\(1\),)A F3(ksh)2.5 E +F0(\(1\),)A F3(csh)2.5 E F0(\(1\))A F3(emacs)108 172.8 Q F0(\(1\),)A F3 +(vi)2.5 E F0(\(1\))A F3 -.37(re)108 184.8 S(adline).37 E F0(\(3\))A F2 +(FILES)72 201.6 Q F3(/bin/bash)109.666 213.6 Q F0(The)144 225.6 Q F1 +(bash)2.5 E F0 -.15(exe)2.5 G(cutable).15 E F3(/etc/pr)109.666 237.6 Q +(o\214le)-.45 E F0(The systemwide initialization \214le, e)144 249.6 Q +-.15(xe)-.15 G(cuted for login shells).15 E F3(~/.bash_pr)109.666 261.6 +Q(o\214le)-.45 E F0(The personal initialization \214le, e)144 273.6 Q +-.15(xe)-.15 G(cuted for login shells).15 E F3(~/.bashr)109.666 285.6 Q +(c)-.37 E F0(The indi)144 297.6 Q(vidual per)-.25 E(-interacti)-.2 E +-.15(ve)-.25 G(-shell startup \214le).15 E F3(~/.bash_lo)109.666 309.6 Q +(gout)-.1 E F0(The indi)144 321.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 F3(~/.inputr)109.666 333.6 +Q(c)-.37 E F0(Indi)144 345.6 Q(vidual)-.25 E F3 -.37(re)2.5 G(adline).37 +E F0(initialization \214le)2.5 E F2 -.548(AU)72 362.4 S(THORS).548 E F0 +(Brian F)108 374.4 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E +(bfox@gnu.or)108 386.4 Q(g)-.18 E(Chet Rame)108 403.2 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@po.cwru.edu)108 415.2 Q F2 -.11(BU)72 432 S +2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .567(If you \214nd a b)108 +444 R .568(ug in)-.2 F F1(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 .568(ug, and)-.2 F 5.626 +(that it appears in the latest v)108 456 R 5.625(ersion of)-.15 F F1 +(bash)8.125 E F0 10.625(.T)C 5.625(he latest v)-10.625 F 5.625 +(ersion is al)-.15 F -.1(wa)-.1 G 5.625(ys a).1 F -.25(va)-.2 G 5.625 +(ilable from).25 F F3(ftp://ftp.gnu.or)108 468 Q(g/pub/bash/)-.37 E F0 +(.)A .41(Once you ha)108 484.8 R .71 -.15(ve d)-.2 H .41 +(etermined that a b).15 F .41(ug actually e)-.2 F .411(xists, use the) +-.15 F F3(bashb)3.181 E(ug)-.2 E F0 .411(command to submit a b)3.131 F +.411(ug report.)-.2 F(If)5.411 E .595(you ha)108 496.8 R .895 -.15 +(ve a \214)-.2 H .595(x, you are encouraged to mail that as well!).15 F +.594(Suggestions and `philosophical' b)5.595 F .594(ug reports may)-.2 F +(be mailed to)108 508.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 F1(gnu.bash.b)2.5 E(ug) +-.2 E F0(.)A(ALL b)108 525.6 Q(ug reports should include:)-.2 E(The v) +108 542.4 Q(ersion number of)-.15 E F1(bash)2.5 E F0(The hardw)108 554.4 +Q(are and operating system)-.1 E(The compiler used to compile)108 566.4 +Q 2.5(Ad)108 578.4 S(escription of the b)-2.5 E(ug beha)-.2 E(viour)-.2 +E 2.5(As)108 590.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 607.2 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 -559.2 Q(ug reports concerning this manual page should be directed to)-.2 -E F1 -.15(ch)2.5 G(et@po.cwru.edu).15 E F0(.).25 E F2 -.11(BU)72 576 S -(GS).11 E F0(It')108 588 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 604.8 R 1.869 -(ferences between)-.25 F F3(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 616.8 Q F0 -(speci\214cation.)2.25 E(Aliases are confusing in some uses.)108 633.6 Q -(Shell b)108 650.4 Q +624 Q(ug reports concerning this manual page should be directed to)-.2 E +F3 -.15(ch)2.5 G(et@po.cwru.edu).15 E F0(.).25 E F2 -.11(BU)72 640.8 S +(GS).11 E F0(It')108 652.8 Q 2.5(st)-.55 G(oo big and too slo)-2.5 E +-.65(w.)-.25 G 1.868(There are some subtle dif)108 669.6 R 1.868 +(ferences between)-.25 F F1(bash)4.369 E F0 1.869(and traditional v) +4.369 F 1.869(ersions of)-.15 F F1(sh)4.369 E F0 4.369(,m)C 1.869 +(ostly because of the)-4.369 F/F4 9/Times-Bold@0 SF(POSIX)108 681.6 Q F0 +(speci\214cation.)2.25 E(Aliases are confusing in some uses.)108 698.4 Q +(Shell b)108 715.2 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 667.2 R .39 -(process suspension is attempted.)108 679.2 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 691.2 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 703.2 Q .956 -(Commands inside of)108 720 R F3($\()3.456 E F0(...)A F3(\))A F0 .956 -(command substitution are not parsed until substitution is attempted.) -3.456 F .955(This will)5.955 F(GNU Bash-3.2)72 768 Q(2008 April 5) -148.455 E(65)198.445 E 0 Cg EP -%%Page: 66 66 +(GNU Bash-4.0)72 768 Q(2008 May 25)147.345 E(66)197.335 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 .567 +-.35 E 1.315(Compound commands and command sequences of the form `a ; b\ + ; c' are not handled gracefully when)108 84 R .389 +(process suspension is attempted.)108 96 R .389 +(When a process is stopped, the shell immediately e)5.389 F -.15(xe)-.15 +G .39(cutes the ne).15 F .39(xt com-)-.15 F .193(mand in the sequence.) +108 108 R .192(It suf)5.193 F .192(\214ces to place the sequence of com\ +mands between parentheses to force it into a)-.25 F +(subshell, which may be stopped as a unit.)108 120 Q .955 +(Commands inside of)108 136.8 R/F1 10/Times-Bold@0 SF($\()3.455 E F0 +(...)A F1(\))A F0 .956 +(command substitution are not parsed until substitution is attempted.) +3.455 F .956(This will)5.956 F .567 (delay error reporting until some time after the command is entered.)108 -84 R -.15(Fo)5.567 G 3.067(re).15 G .568(xample, unmatched parentheses,) --3.217 F -2.15 -.25(ev e)108 96 T 2.5(ni).25 G(nside shell comments, wi\ -ll result in error messages while the construct is being read.)-2.5 E -(Array v)108 112.8 Q(ariables may not \(yet\) be e)-.25 E(xported.)-.15 -E(GNU Bash-3.2)72 768 Q(2008 April 5)148.455 E(66)198.445 E 0 Cg EP +148.8 R -.15(Fo)5.567 G 3.067(re).15 G .567 +(xample, unmatched parentheses,)-3.217 F -2.15 -.25(ev e)108 160.8 T 2.5 +(ni).25 G(nside shell comments, will result in error messages while the\ + construct is being read.)-2.5 E(Array v)108 177.6 Q +(ariables may not \(yet\) be e)-.25 E(xported.)-.15 E(GNU Bash-4.0)72 +768 Q(2008 May 25)147.345 E(67)197.335 E 0 Cg EP %%Trailer end %%EOF diff --git a/doc/bashref.aux b/doc/bashref.aux index a13cfdeca..0894535be 100644 --- a/doc/bashref.aux +++ b/doc/bashref.aux @@ -56,7 +56,7 @@ @xrdef{Compound Commands-pg}{9} @xrdef{Compound Commands-snt}{Section@tie 3.2.4} @xrdef{Looping Constructs-title}{Looping Constructs} -@xrdef{Looping Constructs-pg}{9} +@xrdef{Looping Constructs-pg}{10} @xrdef{Looping Constructs-snt}{Section@tie 3.2.4.1} @xrdef{Conditional Constructs-title}{Conditional Constructs} @xrdef{Conditional Constructs-pg}{10} @@ -71,7 +71,7 @@ @xrdef{Shell Parameters-pg}{15} @xrdef{Shell Parameters-snt}{Section@tie 3.4} @xrdef{Positional Parameters-title}{Positional Parameters} -@xrdef{Positional Parameters-pg}{15} +@xrdef{Positional Parameters-pg}{16} @xrdef{Positional Parameters-snt}{Section@tie 3.4.1} @xrdef{Special Parameters-title}{Special Parameters} @xrdef{Special Parameters-pg}{16} @@ -80,7 +80,7 @@ @xrdef{Shell Expansions-pg}{17} @xrdef{Shell Expansions-snt}{Section@tie 3.5} @xrdef{Brace Expansion-title}{Brace Expansion} -@xrdef{Brace Expansion-pg}{17} +@xrdef{Brace Expansion-pg}{18} @xrdef{Brace Expansion-snt}{Section@tie 3.5.1} @xrdef{Tilde Expansion-title}{Tilde Expansion} @xrdef{Tilde Expansion-pg}{18} @@ -89,7 +89,7 @@ @xrdef{Shell Parameter Expansion-pg}{19} @xrdef{Shell Parameter Expansion-snt}{Section@tie 3.5.3} @xrdef{Command Substitution-title}{Command Substitution} -@xrdef{Command Substitution-pg}{21} +@xrdef{Command Substitution-pg}{22} @xrdef{Command Substitution-snt}{Section@tie 3.5.4} @xrdef{Arithmetic Expansion-title}{Arithmetic Expansion} @xrdef{Arithmetic Expansion-pg}{22} @@ -113,13 +113,13 @@ @xrdef{Redirections-pg}{25} @xrdef{Redirections-snt}{Section@tie 3.6} @xrdef{Executing Commands-title}{Executing Commands} -@xrdef{Executing Commands-pg}{28} +@xrdef{Executing Commands-pg}{29} @xrdef{Executing Commands-snt}{Section@tie 3.7} @xrdef{Simple Command Expansion-title}{Simple Command Expansion} -@xrdef{Simple Command Expansion-pg}{28} +@xrdef{Simple Command Expansion-pg}{29} @xrdef{Simple Command Expansion-snt}{Section@tie 3.7.1} @xrdef{Command Search and Execution-title}{Command Search and Execution} -@xrdef{Command Search and Execution-pg}{29} +@xrdef{Command Search and Execution-pg}{30} @xrdef{Command Search and Execution-snt}{Section@tie 3.7.2} @xrdef{Command Execution Environment-title}{Command Execution Environment} @xrdef{Command Execution Environment-pg}{30} @@ -128,13 +128,13 @@ @xrdef{Environment-pg}{31} @xrdef{Environment-snt}{Section@tie 3.7.4} @xrdef{Exit Status-title}{Exit Status} -@xrdef{Exit Status-pg}{31} +@xrdef{Exit Status-pg}{32} @xrdef{Exit Status-snt}{Section@tie 3.7.5} @xrdef{Signals-title}{Signals} @xrdef{Signals-pg}{32} @xrdef{Signals-snt}{Section@tie 3.7.6} @xrdef{Shell Scripts-title}{Shell Scripts} -@xrdef{Shell Scripts-pg}{32} +@xrdef{Shell Scripts-pg}{33} @xrdef{Shell Scripts-snt}{Section@tie 3.8} @xrdef{Shell Builtin Commands-title}{Shell Builtin Commands} @xrdef{Shell Builtin Commands-pg}{35} @@ -146,16 +146,16 @@ @xrdef{Bash Builtins-pg}{41} @xrdef{Bash Builtins-snt}{Section@tie 4.2} @xrdef{Modifying Shell Behavior-title}{Modifying Shell Behavior} -@xrdef{Modifying Shell Behavior-pg}{49} +@xrdef{Modifying Shell Behavior-pg}{50} @xrdef{Modifying Shell Behavior-snt}{Section@tie 4.3} @xrdef{The Set Builtin-title}{The Set Builtin} -@xrdef{The Set Builtin-pg}{49} +@xrdef{The Set Builtin-pg}{50} @xrdef{The Set Builtin-snt}{Section@tie 4.3.1} @xrdef{The Shopt Builtin-title}{The Shopt Builtin} -@xrdef{The Shopt Builtin-pg}{53} +@xrdef{The Shopt Builtin-pg}{54} @xrdef{The Shopt Builtin-snt}{Section@tie 4.3.2} @xrdef{Special Builtins-title}{Special Builtins} -@xrdef{Special Builtins-pg}{57} +@xrdef{Special Builtins-pg}{58} @xrdef{Special Builtins-snt}{Section@tie 4.4} @xrdef{Shell Variables-title}{Shell Variables} @xrdef{Shell Variables-pg}{59} @@ -260,116 +260,116 @@ @xrdef{Conditional Init Constructs-pg}{100} @xrdef{Conditional Init Constructs-snt}{Section@tie 8.3.2} @xrdef{Sample Init File-title}{Sample Init File} -@xrdef{Sample Init File-pg}{100} +@xrdef{Sample Init File-pg}{101} @xrdef{Sample Init File-snt}{Section@tie 8.3.3} @xrdef{Bindable Readline Commands-title}{Bindable Readline Commands} -@xrdef{Bindable Readline Commands-pg}{103} +@xrdef{Bindable Readline Commands-pg}{104} @xrdef{Bindable Readline Commands-snt}{Section@tie 8.4} @xrdef{Commands For Moving-title}{Commands For Moving} -@xrdef{Commands For Moving-pg}{103} +@xrdef{Commands For Moving-pg}{104} @xrdef{Commands For Moving-snt}{Section@tie 8.4.1} @xrdef{Commands For History-title}{Commands For Manipulating The History} -@xrdef{Commands For History-pg}{103} +@xrdef{Commands For History-pg}{104} @xrdef{Commands For History-snt}{Section@tie 8.4.2} @xrdef{Commands For Text-title}{Commands For Changing Text} -@xrdef{Commands For Text-pg}{105} +@xrdef{Commands For Text-pg}{106} @xrdef{Commands For Text-snt}{Section@tie 8.4.3} @xrdef{Commands For Killing-title}{Killing And Yanking} -@xrdef{Commands For Killing-pg}{106} +@xrdef{Commands For Killing-pg}{107} @xrdef{Commands For Killing-snt}{Section@tie 8.4.4} @xrdef{Numeric Arguments-title}{Specifying Numeric Arguments} -@xrdef{Numeric Arguments-pg}{107} +@xrdef{Numeric Arguments-pg}{108} @xrdef{Numeric Arguments-snt}{Section@tie 8.4.5} @xrdef{Commands For Completion-title}{Letting Readline Type For You} -@xrdef{Commands For Completion-pg}{107} +@xrdef{Commands For Completion-pg}{108} @xrdef{Commands For Completion-snt}{Section@tie 8.4.6} @xrdef{Keyboard Macros-title}{Keyboard Macros} -@xrdef{Keyboard Macros-pg}{108} +@xrdef{Keyboard Macros-pg}{110} @xrdef{Keyboard Macros-snt}{Section@tie 8.4.7} @xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands} -@xrdef{Miscellaneous Commands-pg}{109} +@xrdef{Miscellaneous Commands-pg}{110} @xrdef{Miscellaneous Commands-snt}{Section@tie 8.4.8} @xrdef{Readline vi Mode-title}{Readline vi Mode} -@xrdef{Readline vi Mode-pg}{111} +@xrdef{Readline vi Mode-pg}{112} @xrdef{Readline vi Mode-snt}{Section@tie 8.5} @xrdef{Programmable Completion-title}{Programmable Completion} -@xrdef{Programmable Completion-pg}{111} +@xrdef{Programmable Completion-pg}{112} @xrdef{Programmable Completion-snt}{Section@tie 8.6} @xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins} -@xrdef{Programmable Completion Builtins-pg}{113} +@xrdef{Programmable Completion Builtins-pg}{114} @xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7} @xrdef{Using History Interactively-title}{Using History Interactively} -@xrdef{Using History Interactively-pg}{117} +@xrdef{Using History Interactively-pg}{119} @xrdef{Using History Interactively-snt}{Chapter@tie 9} @xrdef{Bash History Facilities-title}{Bash History Facilities} -@xrdef{Bash History Facilities-pg}{117} +@xrdef{Bash History Facilities-pg}{119} @xrdef{Bash History Facilities-snt}{Section@tie 9.1} @xrdef{Bash History Builtins-title}{Bash History Builtins} -@xrdef{Bash History Builtins-pg}{117} +@xrdef{Bash History Builtins-pg}{119} @xrdef{Bash History Builtins-snt}{Section@tie 9.2} @xrdef{History Interaction-title}{History Expansion} -@xrdef{History Interaction-pg}{119} +@xrdef{History Interaction-pg}{121} @xrdef{History Interaction-snt}{Section@tie 9.3} @xrdef{Event Designators-title}{Event Designators} -@xrdef{Event Designators-pg}{120} +@xrdef{Event Designators-pg}{122} @xrdef{Event Designators-snt}{Section@tie 9.3.1} @xrdef{Word Designators-title}{Word Designators} -@xrdef{Word Designators-pg}{120} +@xrdef{Word Designators-pg}{122} @xrdef{Word Designators-snt}{Section@tie 9.3.2} @xrdef{Modifiers-title}{Modifiers} -@xrdef{Modifiers-pg}{121} +@xrdef{Modifiers-pg}{123} @xrdef{Modifiers-snt}{Section@tie 9.3.3} @xrdef{Installing Bash-title}{Installing Bash} -@xrdef{Installing Bash-pg}{123} +@xrdef{Installing Bash-pg}{125} @xrdef{Installing Bash-snt}{Chapter@tie 10} @xrdef{Basic Installation-title}{Basic Installation} -@xrdef{Basic Installation-pg}{123} +@xrdef{Basic Installation-pg}{125} @xrdef{Basic Installation-snt}{Section@tie 10.1} @xrdef{Compilers and Options-title}{Compilers and Options} -@xrdef{Compilers and Options-pg}{124} +@xrdef{Compilers and Options-pg}{126} @xrdef{Compilers and Options-snt}{Section@tie 10.2} @xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures} -@xrdef{Compiling For Multiple Architectures-pg}{124} +@xrdef{Compiling For Multiple Architectures-pg}{126} @xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3} @xrdef{Installation Names-title}{Installation Names} -@xrdef{Installation Names-pg}{124} +@xrdef{Installation Names-pg}{126} @xrdef{Installation Names-snt}{Section@tie 10.4} @xrdef{Specifying the System Type-title}{Specifying the System Type} -@xrdef{Specifying the System Type-pg}{125} +@xrdef{Specifying the System Type-pg}{127} @xrdef{Specifying the System Type-snt}{Section@tie 10.5} @xrdef{Sharing Defaults-title}{Sharing Defaults} -@xrdef{Sharing Defaults-pg}{125} +@xrdef{Sharing Defaults-pg}{127} @xrdef{Sharing Defaults-snt}{Section@tie 10.6} @xrdef{Operation Controls-title}{Operation Controls} -@xrdef{Operation Controls-pg}{125} +@xrdef{Operation Controls-pg}{127} @xrdef{Operation Controls-snt}{Section@tie 10.7} @xrdef{Optional Features-title}{Optional Features} -@xrdef{Optional Features-pg}{125} +@xrdef{Optional Features-pg}{127} @xrdef{Optional Features-snt}{Section@tie 10.8} @xrdef{Reporting Bugs-title}{Reporting Bugs} -@xrdef{Reporting Bugs-pg}{131} +@xrdef{Reporting Bugs-pg}{133} @xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}} @xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell} -@xrdef{Major Differences From The Bourne Shell-pg}{133} +@xrdef{Major Differences From The Bourne Shell-pg}{135} @xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}} @xrdef{GNU Free Documentation License-title}{GNU Free Documentation License} -@xrdef{GNU Free Documentation License-pg}{139} +@xrdef{GNU Free Documentation License-pg}{141} @xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}} @xrdef{Indexes-title}{Indexes} -@xrdef{Indexes-pg}{147} +@xrdef{Indexes-pg}{149} @xrdef{Indexes-snt}{Appendix@tie @char68{}} @xrdef{Builtin Index-title}{Index of Shell Builtin Commands} -@xrdef{Builtin Index-pg}{148} +@xrdef{Builtin Index-pg}{149} @xrdef{Builtin Index-snt}{Section@tie @char68.1} @xrdef{Reserved Word Index-title}{Index of Shell Reserved Words} -@xrdef{Reserved Word Index-pg}{149} +@xrdef{Reserved Word Index-pg}{150} @xrdef{Reserved Word Index-snt}{Section@tie @char68.2} @xrdef{Variable Index-title}{Parameter and Variable Index} -@xrdef{Variable Index-pg}{149} +@xrdef{Variable Index-pg}{150} @xrdef{Variable Index-snt}{Section@tie @char68.3} @xrdef{Function Index-title}{Function Index} -@xrdef{Function Index-pg}{151} +@xrdef{Function Index-pg}{152} @xrdef{Function Index-snt}{Section@tie @char68.4} @xrdef{Concept Index-title}{Concept Index} -@xrdef{Concept Index-pg}{153} +@xrdef{Concept Index-pg}{154} @xrdef{Concept Index-snt}{Section@tie @char68.5} diff --git a/doc/bashref.bt b/doc/bashref.bt index ea58233c7..6e69b4089 100644 --- a/doc/bashref.bt +++ b/doc/bashref.bt @@ -22,24 +22,25 @@ \entry{alias}{41}{\code {alias}} \entry{bind}{41}{\code {bind}} \entry{builtin}{42}{\code {builtin}} -\entry{caller}{42}{\code {caller}} +\entry{caller}{43}{\code {caller}} \entry{command}{43}{\code {command}} \entry{declare}{43}{\code {declare}} \entry{echo}{44}{\code {echo}} \entry{enable}{45}{\code {enable}} \entry{help}{45}{\code {help}} -\entry{let}{45}{\code {let}} +\entry{let}{46}{\code {let}} \entry{local}{46}{\code {local}} \entry{logout}{46}{\code {logout}} +\entry{mapfile}{46}{\code {mapfile}} \entry{printf}{46}{\code {printf}} -\entry{read}{46}{\code {read}} -\entry{source}{47}{\code {source}} -\entry{type}{47}{\code {type}} -\entry{typeset}{48}{\code {typeset}} -\entry{ulimit}{48}{\code {ulimit}} -\entry{unalias}{49}{\code {unalias}} -\entry{set}{49}{\code {set}} -\entry{shopt}{53}{\code {shopt}} +\entry{read}{47}{\code {read}} +\entry{source}{48}{\code {source}} +\entry{type}{48}{\code {type}} +\entry{typeset}{49}{\code {typeset}} +\entry{ulimit}{49}{\code {ulimit}} +\entry{unalias}{50}{\code {unalias}} +\entry{set}{50}{\code {set}} +\entry{shopt}{54}{\code {shopt}} \entry{dirs}{79}{\code {dirs}} \entry{popd}{80}{\code {popd}} \entry{pushd}{80}{\code {pushd}} @@ -50,8 +51,8 @@ \entry{wait}{89}{\code {wait}} \entry{disown}{89}{\code {disown}} \entry{suspend}{89}{\code {suspend}} -\entry{compgen}{113}{\code {compgen}} -\entry{complete}{113}{\code {complete}} -\entry{compopt}{116}{\code {compopt}} -\entry{fc}{118}{\code {fc}} -\entry{history}{118}{\code {history}} +\entry{compgen}{114}{\code {compgen}} +\entry{complete}{114}{\code {complete}} +\entry{compopt}{117}{\code {compopt}} +\entry{fc}{120}{\code {fc}} +\entry{history}{120}{\code {history}} diff --git a/doc/bashref.bts b/doc/bashref.bts index e5b91ebf4..39a6449f5 100644 --- a/doc/bashref.bts +++ b/doc/bashref.bts @@ -12,12 +12,12 @@ \entry {\code {break}}{35} \entry {\code {builtin}}{42} \initial {C} -\entry {\code {caller}}{42} +\entry {\code {caller}}{43} \entry {\code {cd}}{36} \entry {\code {command}}{43} -\entry {\code {compgen}}{113} -\entry {\code {complete}}{113} -\entry {\code {compopt}}{116} +\entry {\code {compgen}}{114} +\entry {\code {complete}}{114} +\entry {\code {compopt}}{117} \entry {\code {continue}}{36} \initial {D} \entry {\code {declare}}{43} @@ -31,47 +31,49 @@ \entry {\code {exit}}{36} \entry {\code {export}}{36} \initial {F} -\entry {\code {fc}}{118} +\entry {\code {fc}}{120} \entry {\code {fg}}{88} \initial {G} \entry {\code {getopts}}{37} \initial {H} \entry {\code {hash}}{37} \entry {\code {help}}{45} -\entry {\code {history}}{118} +\entry {\code {history}}{120} \initial {J} \entry {\code {jobs}}{88} \initial {K} \entry {\code {kill}}{89} \initial {L} -\entry {\code {let}}{45} +\entry {\code {let}}{46} \entry {\code {local}}{46} \entry {\code {logout}}{46} +\initial {M} +\entry {\code {mapfile}}{46} \initial {P} \entry {\code {popd}}{80} \entry {\code {printf}}{46} \entry {\code {pushd}}{80} \entry {\code {pwd}}{38} \initial {R} -\entry {\code {read}}{46} +\entry {\code {read}}{47} \entry {\code {readonly}}{38} \entry {\code {return}}{38} \initial {S} -\entry {\code {set}}{49} +\entry {\code {set}}{50} \entry {\code {shift}}{38} -\entry {\code {shopt}}{53} -\entry {\code {source}}{47} +\entry {\code {shopt}}{54} +\entry {\code {source}}{48} \entry {\code {suspend}}{89} \initial {T} \entry {\code {test}}{39} \entry {\code {times}}{40} \entry {\code {trap}}{40} -\entry {\code {type}}{47} -\entry {\code {typeset}}{48} +\entry {\code {type}}{48} +\entry {\code {typeset}}{49} \initial {U} -\entry {\code {ulimit}}{48} +\entry {\code {ulimit}}{49} \entry {\code {umask}}{40} -\entry {\code {unalias}}{49} +\entry {\code {unalias}}{50} \entry {\code {unset}}{41} \initial {W} \entry {\code {wait}}{89} diff --git a/doc/bashref.cp b/doc/bashref.cp index 34a52380f..4476e1766 100644 --- a/doc/bashref.cp +++ b/doc/bashref.cp @@ -33,7 +33,7 @@ \entry{command timing}{8}{command timing} \entry{commands, lists}{9}{commands, lists} \entry{commands, compound}{9}{commands, compound} -\entry{commands, looping}{9}{commands, looping} +\entry{commands, looping}{10}{commands, looping} \entry{commands, conditional}{10}{commands, conditional} \entry{commands, grouping}{13}{commands, grouping} \entry{shell function}{14}{shell function} @@ -41,16 +41,16 @@ \entry{parameters}{15}{parameters} \entry{variable, shell}{15}{variable, shell} \entry{shell variable}{15}{shell variable} -\entry{parameters, positional}{15}{parameters, positional} +\entry{parameters, positional}{16}{parameters, positional} \entry{parameters, special}{16}{parameters, special} \entry{expansion}{17}{expansion} -\entry{brace expansion}{17}{brace expansion} -\entry{expansion, brace}{17}{expansion, brace} +\entry{brace expansion}{18}{brace expansion} +\entry{expansion, brace}{18}{expansion, brace} \entry{tilde expansion}{18}{tilde expansion} \entry{expansion, tilde}{18}{expansion, tilde} \entry{parameter expansion}{19}{parameter expansion} \entry{expansion, parameter}{19}{expansion, parameter} -\entry{command substitution}{21}{command substitution} +\entry{command substitution}{22}{command substitution} \entry{expansion, arithmetic}{22}{expansion, arithmetic} \entry{arithmetic expansion}{22}{arithmetic expansion} \entry{process substitution}{22}{process substitution} @@ -62,15 +62,15 @@ \entry{pattern matching}{24}{pattern matching} \entry{matching, pattern}{24}{matching, pattern} \entry{redirection}{25}{redirection} -\entry{command expansion}{28}{command expansion} -\entry{command execution}{29}{command execution} -\entry{command search}{29}{command search} +\entry{command expansion}{29}{command expansion} +\entry{command execution}{30}{command execution} +\entry{command search}{30}{command search} \entry{execution environment}{30}{execution environment} \entry{environment}{31}{environment} -\entry{exit status}{31}{exit status} +\entry{exit status}{32}{exit status} \entry{signal handling}{32}{signal handling} -\entry{shell script}{32}{shell script} -\entry{special builtin}{57}{special builtin} +\entry{shell script}{33}{shell script} +\entry{special builtin}{58}{special builtin} \entry{login shell}{71}{login shell} \entry{interactive shell}{71}{interactive shell} \entry{startup files}{71}{startup files} @@ -102,16 +102,16 @@ \entry{kill ring}{93}{kill ring} \entry{initialization file, readline}{94}{initialization file, readline} \entry{variables, readline}{95}{variables, readline} -\entry{programmable completion}{111}{programmable completion} -\entry{completion builtins}{113}{completion builtins} -\entry{History, how to use}{116}{History, how to use} -\entry{command history}{117}{command history} -\entry{history list}{117}{history list} -\entry{history builtins}{117}{history builtins} -\entry{history expansion}{119}{history expansion} -\entry{event designators}{120}{event designators} -\entry{history events}{120}{history events} -\entry{installation}{123}{installation} -\entry{configuration}{123}{configuration} -\entry{Bash installation}{123}{Bash installation} -\entry{Bash configuration}{123}{Bash configuration} +\entry{programmable completion}{112}{programmable completion} +\entry{completion builtins}{114}{completion builtins} +\entry{History, how to use}{117}{History, how to use} +\entry{command history}{119}{command history} +\entry{history list}{119}{history list} +\entry{history builtins}{119}{history builtins} +\entry{history expansion}{121}{history expansion} +\entry{event designators}{122}{event designators} +\entry{history events}{122}{history events} +\entry{installation}{125}{installation} +\entry{configuration}{125}{configuration} +\entry{Bash installation}{125}{Bash installation} +\entry{Bash configuration}{125}{Bash configuration} diff --git a/doc/bashref.cps b/doc/bashref.cps index 7ea8409d2..f4bcd578c 100644 --- a/doc/bashref.cps +++ b/doc/bashref.cps @@ -6,30 +6,30 @@ \entry {arrays}{78} \initial {B} \entry {background}{87} -\entry {Bash configuration}{123} -\entry {Bash installation}{123} +\entry {Bash configuration}{125} +\entry {Bash installation}{125} \entry {Bourne shell}{5} -\entry {brace expansion}{17} +\entry {brace expansion}{18} \entry {builtin}{3} \initial {C} \entry {command editing}{91} -\entry {command execution}{29} -\entry {command expansion}{28} -\entry {command history}{117} -\entry {command search}{29} -\entry {command substitution}{21} +\entry {command execution}{30} +\entry {command expansion}{29} +\entry {command history}{119} +\entry {command search}{30} +\entry {command substitution}{22} \entry {command timing}{8} \entry {commands, compound}{9} \entry {commands, conditional}{10} \entry {commands, grouping}{13} \entry {commands, lists}{9} -\entry {commands, looping}{9} +\entry {commands, looping}{10} \entry {commands, pipelines}{8} \entry {commands, shell}{8} \entry {commands, simple}{8} \entry {comments, shell}{7} -\entry {completion builtins}{113} -\entry {configuration}{123} +\entry {completion builtins}{114} +\entry {configuration}{125} \entry {control operator}{3} \initial {D} \entry {directory stack}{79} @@ -37,12 +37,12 @@ \entry {editing command lines}{91} \entry {environment}{31} \entry {evaluation, arithmetic}{76} -\entry {event designators}{120} +\entry {event designators}{122} \entry {execution environment}{30} -\entry {exit status}{3, 31} +\entry {exit status}{3, 32} \entry {expansion}{17} \entry {expansion, arithmetic}{22} -\entry {expansion, brace}{17} +\entry {expansion, brace}{18} \entry {expansion, filename}{23} \entry {expansion, parameter}{19} \entry {expansion, pathname}{23} @@ -56,15 +56,15 @@ \entry {foreground}{87} \entry {functions, shell}{14} \initial {H} -\entry {history builtins}{117} -\entry {history events}{120} -\entry {history expansion}{119} -\entry {history list}{117} -\entry {History, how to use}{116} +\entry {history builtins}{119} +\entry {history events}{122} +\entry {history expansion}{121} +\entry {history list}{119} +\entry {History, how to use}{117} \initial {I} \entry {identifier}{3} \entry {initialization file, readline}{94} -\entry {installation}{123} +\entry {installation}{125} \entry {interaction, readline}{91} \entry {interactive shell}{71, 73} \entry {internationalization}{7} @@ -89,7 +89,7 @@ \initial {P} \entry {parameter expansion}{19} \entry {parameters}{15} -\entry {parameters, positional}{15} +\entry {parameters, positional}{16} \entry {parameters, special}{16} \entry {pathname expansion}{23} \entry {pattern matching}{24} @@ -99,7 +99,7 @@ \entry {process group}{3} \entry {process group ID}{3} \entry {process substitution}{22} -\entry {programmable completion}{111} +\entry {programmable completion}{112} \entry {prompting}{81} \initial {Q} \entry {quoting}{6} @@ -113,12 +113,12 @@ \initial {S} \entry {shell arithmetic}{76} \entry {shell function}{14} -\entry {shell script}{32} +\entry {shell script}{33} \entry {shell variable}{15} \entry {shell, interactive}{73} \entry {signal}{4} \entry {signal handling}{32} -\entry {special builtin}{4, 57} +\entry {special builtin}{4, 58} \entry {startup files}{71} \entry {suspending jobs}{87} \initial {T} diff --git a/doc/bashref.dvi b/doc/bashref.dvi index 9460b7bbe8b614b0c89a21fa55f9649bb876ad2d..384bc1beedc2515ebae9e33f1acbb3a9b24a2e28 100644 GIT binary patch delta 27865 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 delta 21276 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 diff --git a/doc/bashref.fn b/doc/bashref.fn index dbd6d08af..a5214216e 100644 --- a/doc/bashref.fn +++ b/doc/bashref.fn @@ -1,96 +1,97 @@ -\entry{beginning-of-line (C-a)}{103}{\code {beginning-of-line (C-a)}} -\entry{end-of-line (C-e)}{103}{\code {end-of-line (C-e)}} -\entry{forward-char (C-f)}{103}{\code {forward-char (C-f)}} -\entry{backward-char (C-b)}{103}{\code {backward-char (C-b)}} -\entry{forward-word (M-f)}{103}{\code {forward-word (M-f)}} -\entry{backward-word (M-b)}{103}{\code {backward-word (M-b)}} -\entry{clear-screen (C-l)}{103}{\code {clear-screen (C-l)}} -\entry{redraw-current-line ()}{103}{\code {redraw-current-line ()}} -\entry{accept-line (Newline or Return)}{103}{\code {accept-line (Newline or Return)}} -\entry{previous-history (C-p)}{104}{\code {previous-history (C-p)}} -\entry{next-history (C-n)}{104}{\code {next-history (C-n)}} -\entry{beginning-of-history (M-<)}{104}{\code {beginning-of-history (M-<)}} -\entry{end-of-history (M->)}{104}{\code {end-of-history (M->)}} -\entry{reverse-search-history (C-r)}{104}{\code {reverse-search-history (C-r)}} -\entry{forward-search-history (C-s)}{104}{\code {forward-search-history (C-s)}} -\entry{non-incremental-reverse-search-history (M-p)}{104}{\code {non-incremental-reverse-search-history (M-p)}} -\entry{non-incremental-forward-search-history (M-n)}{104}{\code {non-incremental-forward-search-history (M-n)}} -\entry{history-search-forward ()}{104}{\code {history-search-forward ()}} -\entry{history-search-backward ()}{104}{\code {history-search-backward ()}} -\entry{yank-nth-arg (M-C-y)}{104}{\code {yank-nth-arg (M-C-y)}} -\entry{yank-last-arg (M-. or M-_)}{104}{\code {yank-last-arg (M-. or M-_)}} -\entry{delete-char (C-d)}{105}{\code {delete-char (C-d)}} -\entry{backward-delete-char (Rubout)}{105}{\code {backward-delete-char (Rubout)}} -\entry{forward-backward-delete-char ()}{105}{\code {forward-backward-delete-char ()}} -\entry{quoted-insert (C-q or C-v)}{105}{\code {quoted-insert (C-q or C-v)}} -\entry{self-insert (a, b, A, 1, !, ...{})}{105}{\code {self-insert (a, b, A, 1, !, \dots {})}} -\entry{transpose-chars (C-t)}{105}{\code {transpose-chars (C-t)}} -\entry{transpose-words (M-t)}{105}{\code {transpose-words (M-t)}} -\entry{upcase-word (M-u)}{105}{\code {upcase-word (M-u)}} -\entry{downcase-word (M-l)}{105}{\code {downcase-word (M-l)}} -\entry{capitalize-word (M-c)}{105}{\code {capitalize-word (M-c)}} -\entry{overwrite-mode ()}{105}{\code {overwrite-mode ()}} -\entry{kill-line (C-k)}{106}{\code {kill-line (C-k)}} -\entry{backward-kill-line (C-x Rubout)}{106}{\code {backward-kill-line (C-x Rubout)}} -\entry{unix-line-discard (C-u)}{106}{\code {unix-line-discard (C-u)}} -\entry{kill-whole-line ()}{106}{\code {kill-whole-line ()}} -\entry{kill-word (M-d)}{106}{\code {kill-word (M-d)}} -\entry{backward-kill-word (M-DEL)}{106}{\code {backward-kill-word (M-\key {DEL})}} -\entry{unix-word-rubout (C-w)}{106}{\code {unix-word-rubout (C-w)}} -\entry{unix-filename-rubout ()}{106}{\code {unix-filename-rubout ()}} -\entry{delete-horizontal-space ()}{106}{\code {delete-horizontal-space ()}} -\entry{kill-region ()}{106}{\code {kill-region ()}} -\entry{copy-region-as-kill ()}{106}{\code {copy-region-as-kill ()}} -\entry{copy-backward-word ()}{106}{\code {copy-backward-word ()}} -\entry{copy-forward-word ()}{106}{\code {copy-forward-word ()}} -\entry{yank (C-y)}{107}{\code {yank (C-y)}} -\entry{yank-pop (M-y)}{107}{\code {yank-pop (M-y)}} -\entry{digit-argument (M-0, M-1, ...{} M--)}{107}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}} -\entry{universal-argument ()}{107}{\code {universal-argument ()}} -\entry{complete (TAB)}{107}{\code {complete (\key {TAB})}} -\entry{possible-completions (M-?)}{107}{\code {possible-completions (M-?)}} -\entry{insert-completions (M-*)}{107}{\code {insert-completions (M-*)}} -\entry{menu-complete ()}{107}{\code {menu-complete ()}} -\entry{delete-char-or-list ()}{108}{\code {delete-char-or-list ()}} -\entry{complete-filename (M-/)}{108}{\code {complete-filename (M-/)}} -\entry{possible-filename-completions (C-x /)}{108}{\code {possible-filename-completions (C-x /)}} -\entry{complete-username (M-~)}{108}{\code {complete-username (M-~)}} -\entry{possible-username-completions (C-x ~)}{108}{\code {possible-username-completions (C-x ~)}} -\entry{complete-variable (M-$)}{108}{\code {complete-variable (M-$)}} -\entry{possible-variable-completions (C-x $)}{108}{\code {possible-variable-completions (C-x $)}} -\entry{complete-hostname (M-@)}{108}{\code {complete-hostname (M-@)}} -\entry{possible-hostname-completions (C-x @)}{108}{\code {possible-hostname-completions (C-x @)}} -\entry{complete-command (M-!)}{108}{\code {complete-command (M-!)}} -\entry{possible-command-completions (C-x !)}{108}{\code {possible-command-completions (C-x !)}} -\entry{dynamic-complete-history (M-TAB)}{108}{\code {dynamic-complete-history (M-\key {TAB})}} -\entry{complete-into-braces (M-{\tt \char 123})}{108}{\code {complete-into-braces (M-{\tt \char 123})}} -\entry{start-kbd-macro (C-x ()}{108}{\code {start-kbd-macro (C-x ()}} -\entry{end-kbd-macro (C-x ))}{109}{\code {end-kbd-macro (C-x ))}} -\entry{call-last-kbd-macro (C-x e)}{109}{\code {call-last-kbd-macro (C-x e)}} -\entry{re-read-init-file (C-x C-r)}{109}{\code {re-read-init-file (C-x C-r)}} -\entry{abort (C-g)}{109}{\code {abort (C-g)}} -\entry{do-uppercase-version (M-a, M-b, M-x, ...{})}{109}{\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}} -\entry{prefix-meta (ESC)}{109}{\code {prefix-meta (\key {ESC})}} -\entry{undo (C-_ or C-x C-u)}{109}{\code {undo (C-_ or C-x C-u)}} -\entry{revert-line (M-r)}{109}{\code {revert-line (M-r)}} -\entry{tilde-expand (M-&)}{109}{\code {tilde-expand (M-&)}} -\entry{set-mark (C-@)}{109}{\code {set-mark (C-@)}} -\entry{exchange-point-and-mark (C-x C-x)}{109}{\code {exchange-point-and-mark (C-x C-x)}} -\entry{character-search (C-])}{109}{\code {character-search (C-])}} -\entry{character-search-backward (M-C-])}{109}{\code {character-search-backward (M-C-])}} -\entry{insert-comment (M-#)}{110}{\code {insert-comment (M-#)}} -\entry{dump-functions ()}{110}{\code {dump-functions ()}} -\entry{dump-variables ()}{110}{\code {dump-variables ()}} -\entry{dump-macros ()}{110}{\code {dump-macros ()}} -\entry{glob-complete-word (M-g)}{110}{\code {glob-complete-word (M-g)}} -\entry{glob-expand-word (C-x *)}{110}{\code {glob-expand-word (C-x *)}} -\entry{glob-list-expansions (C-x g)}{110}{\code {glob-list-expansions (C-x g)}} -\entry{display-shell-version (C-x C-v)}{110}{\code {display-shell-version (C-x C-v)}} -\entry{shell-expand-line (M-C-e)}{110}{\code {shell-expand-line (M-C-e)}} -\entry{history-expand-line (M-^)}{110}{\code {history-expand-line (M-^)}} -\entry{magic-space ()}{111}{\code {magic-space ()}} -\entry{alias-expand-line ()}{111}{\code {alias-expand-line ()}} -\entry{history-and-alias-expand-line ()}{111}{\code {history-and-alias-expand-line ()}} -\entry{insert-last-argument (M-. or M-_)}{111}{\code {insert-last-argument (M-. or M-_)}} -\entry{operate-and-get-next (C-o)}{111}{\code {operate-and-get-next (C-o)}} -\entry{edit-and-execute-command (C-xC-e)}{111}{\code {edit-and-execute-command (C-xC-e)}} +\entry{beginning-of-line (C-a)}{104}{\code {beginning-of-line (C-a)}} +\entry{end-of-line (C-e)}{104}{\code {end-of-line (C-e)}} +\entry{forward-char (C-f)}{104}{\code {forward-char (C-f)}} +\entry{backward-char (C-b)}{104}{\code {backward-char (C-b)}} +\entry{forward-word (M-f)}{104}{\code {forward-word (M-f)}} +\entry{backward-word (M-b)}{104}{\code {backward-word (M-b)}} +\entry{clear-screen (C-l)}{104}{\code {clear-screen (C-l)}} +\entry{redraw-current-line ()}{104}{\code {redraw-current-line ()}} +\entry{accept-line (Newline or Return)}{104}{\code {accept-line (Newline or Return)}} +\entry{previous-history (C-p)}{105}{\code {previous-history (C-p)}} +\entry{next-history (C-n)}{105}{\code {next-history (C-n)}} +\entry{beginning-of-history (M-<)}{105}{\code {beginning-of-history (M-<)}} +\entry{end-of-history (M->)}{105}{\code {end-of-history (M->)}} +\entry{reverse-search-history (C-r)}{105}{\code {reverse-search-history (C-r)}} +\entry{forward-search-history (C-s)}{105}{\code {forward-search-history (C-s)}} +\entry{non-incremental-reverse-search-history (M-p)}{105}{\code {non-incremental-reverse-search-history (M-p)}} +\entry{non-incremental-forward-search-history (M-n)}{105}{\code {non-incremental-forward-search-history (M-n)}} +\entry{history-search-forward ()}{105}{\code {history-search-forward ()}} +\entry{history-search-backward ()}{105}{\code {history-search-backward ()}} +\entry{yank-nth-arg (M-C-y)}{105}{\code {yank-nth-arg (M-C-y)}} +\entry{yank-last-arg (M-. or M-_)}{105}{\code {yank-last-arg (M-. or M-_)}} +\entry{delete-char (C-d)}{106}{\code {delete-char (C-d)}} +\entry{backward-delete-char (Rubout)}{106}{\code {backward-delete-char (Rubout)}} +\entry{forward-backward-delete-char ()}{106}{\code {forward-backward-delete-char ()}} +\entry{quoted-insert (C-q or C-v)}{106}{\code {quoted-insert (C-q or C-v)}} +\entry{self-insert (a, b, A, 1, !, ...{})}{106}{\code {self-insert (a, b, A, 1, !, \dots {})}} +\entry{transpose-chars (C-t)}{106}{\code {transpose-chars (C-t)}} +\entry{transpose-words (M-t)}{106}{\code {transpose-words (M-t)}} +\entry{upcase-word (M-u)}{106}{\code {upcase-word (M-u)}} +\entry{downcase-word (M-l)}{106}{\code {downcase-word (M-l)}} +\entry{capitalize-word (M-c)}{106}{\code {capitalize-word (M-c)}} +\entry{overwrite-mode ()}{106}{\code {overwrite-mode ()}} +\entry{kill-line (C-k)}{107}{\code {kill-line (C-k)}} +\entry{backward-kill-line (C-x Rubout)}{107}{\code {backward-kill-line (C-x Rubout)}} +\entry{unix-line-discard (C-u)}{107}{\code {unix-line-discard (C-u)}} +\entry{kill-whole-line ()}{107}{\code {kill-whole-line ()}} +\entry{kill-word (M-d)}{107}{\code {kill-word (M-d)}} +\entry{backward-kill-word (M-DEL)}{107}{\code {backward-kill-word (M-\key {DEL})}} +\entry{unix-word-rubout (C-w)}{107}{\code {unix-word-rubout (C-w)}} +\entry{unix-filename-rubout ()}{107}{\code {unix-filename-rubout ()}} +\entry{delete-horizontal-space ()}{107}{\code {delete-horizontal-space ()}} +\entry{kill-region ()}{107}{\code {kill-region ()}} +\entry{copy-region-as-kill ()}{107}{\code {copy-region-as-kill ()}} +\entry{copy-backward-word ()}{107}{\code {copy-backward-word ()}} +\entry{copy-forward-word ()}{107}{\code {copy-forward-word ()}} +\entry{yank (C-y)}{108}{\code {yank (C-y)}} +\entry{yank-pop (M-y)}{108}{\code {yank-pop (M-y)}} +\entry{digit-argument (M-0, M-1, ...{} M--)}{108}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}} +\entry{universal-argument ()}{108}{\code {universal-argument ()}} +\entry{complete (TAB)}{108}{\code {complete (\key {TAB})}} +\entry{possible-completions (M-?)}{108}{\code {possible-completions (M-?)}} +\entry{insert-completions (M-*)}{108}{\code {insert-completions (M-*)}} +\entry{menu-complete ()}{108}{\code {menu-complete ()}} +\entry{delete-char-or-list ()}{109}{\code {delete-char-or-list ()}} +\entry{complete-filename (M-/)}{109}{\code {complete-filename (M-/)}} +\entry{possible-filename-completions (C-x /)}{109}{\code {possible-filename-completions (C-x /)}} +\entry{complete-username (M-~)}{109}{\code {complete-username (M-~)}} +\entry{possible-username-completions (C-x ~)}{109}{\code {possible-username-completions (C-x ~)}} +\entry{complete-variable (M-$)}{109}{\code {complete-variable (M-$)}} +\entry{possible-variable-completions (C-x $)}{109}{\code {possible-variable-completions (C-x $)}} +\entry{complete-hostname (M-@)}{109}{\code {complete-hostname (M-@)}} +\entry{possible-hostname-completions (C-x @)}{109}{\code {possible-hostname-completions (C-x @)}} +\entry{complete-command (M-!)}{109}{\code {complete-command (M-!)}} +\entry{possible-command-completions (C-x !)}{109}{\code {possible-command-completions (C-x !)}} +\entry{dynamic-complete-history (M-TAB)}{109}{\code {dynamic-complete-history (M-\key {TAB})}} +\entry{dabbrev-expand ()}{109}{\code {dabbrev-expand ()}} +\entry{complete-into-braces (M-{\tt \char 123})}{109}{\code {complete-into-braces (M-{\tt \char 123})}} +\entry{start-kbd-macro (C-x ()}{110}{\code {start-kbd-macro (C-x ()}} +\entry{end-kbd-macro (C-x ))}{110}{\code {end-kbd-macro (C-x ))}} +\entry{call-last-kbd-macro (C-x e)}{110}{\code {call-last-kbd-macro (C-x e)}} +\entry{re-read-init-file (C-x C-r)}{110}{\code {re-read-init-file (C-x C-r)}} +\entry{abort (C-g)}{110}{\code {abort (C-g)}} +\entry{do-uppercase-version (M-a, M-b, M-x, ...{})}{110}{\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}} +\entry{prefix-meta (ESC)}{110}{\code {prefix-meta (\key {ESC})}} +\entry{undo (C-_ or C-x C-u)}{110}{\code {undo (C-_ or C-x C-u)}} +\entry{revert-line (M-r)}{110}{\code {revert-line (M-r)}} +\entry{tilde-expand (M-&)}{110}{\code {tilde-expand (M-&)}} +\entry{set-mark (C-@)}{110}{\code {set-mark (C-@)}} +\entry{exchange-point-and-mark (C-x C-x)}{110}{\code {exchange-point-and-mark (C-x C-x)}} +\entry{character-search (C-])}{110}{\code {character-search (C-])}} +\entry{character-search-backward (M-C-])}{111}{\code {character-search-backward (M-C-])}} +\entry{insert-comment (M-#)}{111}{\code {insert-comment (M-#)}} +\entry{dump-functions ()}{111}{\code {dump-functions ()}} +\entry{dump-variables ()}{111}{\code {dump-variables ()}} +\entry{dump-macros ()}{111}{\code {dump-macros ()}} +\entry{glob-complete-word (M-g)}{111}{\code {glob-complete-word (M-g)}} +\entry{glob-expand-word (C-x *)}{111}{\code {glob-expand-word (C-x *)}} +\entry{glob-list-expansions (C-x g)}{111}{\code {glob-list-expansions (C-x g)}} +\entry{display-shell-version (C-x C-v)}{111}{\code {display-shell-version (C-x C-v)}} +\entry{shell-expand-line (M-C-e)}{111}{\code {shell-expand-line (M-C-e)}} +\entry{history-expand-line (M-^)}{112}{\code {history-expand-line (M-^)}} +\entry{magic-space ()}{112}{\code {magic-space ()}} +\entry{alias-expand-line ()}{112}{\code {alias-expand-line ()}} +\entry{history-and-alias-expand-line ()}{112}{\code {history-and-alias-expand-line ()}} +\entry{insert-last-argument (M-. or M-_)}{112}{\code {insert-last-argument (M-. or M-_)}} +\entry{operate-and-get-next (C-o)}{112}{\code {operate-and-get-next (C-o)}} +\entry{edit-and-execute-command (C-xC-e)}{112}{\code {edit-and-execute-command (C-xC-e)}} diff --git a/doc/bashref.fns b/doc/bashref.fns index e76ee7f2f..d73457207 100644 --- a/doc/bashref.fns +++ b/doc/bashref.fns @@ -1,116 +1,117 @@ \initial {A} -\entry {\code {abort (C-g)}}{109} -\entry {\code {accept-line (Newline or Return)}}{103} -\entry {\code {alias-expand-line ()}}{111} +\entry {\code {abort (C-g)}}{110} +\entry {\code {accept-line (Newline or Return)}}{104} +\entry {\code {alias-expand-line ()}}{112} \initial {B} -\entry {\code {backward-char (C-b)}}{103} -\entry {\code {backward-delete-char (Rubout)}}{105} -\entry {\code {backward-kill-line (C-x Rubout)}}{106} -\entry {\code {backward-kill-word (M-\key {DEL})}}{106} -\entry {\code {backward-word (M-b)}}{103} -\entry {\code {beginning-of-history (M-<)}}{104} -\entry {\code {beginning-of-line (C-a)}}{103} +\entry {\code {backward-char (C-b)}}{104} +\entry {\code {backward-delete-char (Rubout)}}{106} +\entry {\code {backward-kill-line (C-x Rubout)}}{107} +\entry {\code {backward-kill-word (M-\key {DEL})}}{107} +\entry {\code {backward-word (M-b)}}{104} +\entry {\code {beginning-of-history (M-<)}}{105} +\entry {\code {beginning-of-line (C-a)}}{104} \initial {C} -\entry {\code {call-last-kbd-macro (C-x e)}}{109} -\entry {\code {capitalize-word (M-c)}}{105} -\entry {\code {character-search (C-])}}{109} -\entry {\code {character-search-backward (M-C-])}}{109} -\entry {\code {clear-screen (C-l)}}{103} -\entry {\code {complete (\key {TAB})}}{107} -\entry {\code {complete-command (M-!)}}{108} -\entry {\code {complete-filename (M-/)}}{108} -\entry {\code {complete-hostname (M-@)}}{108} -\entry {\code {complete-into-braces (M-{\tt \char 123})}}{108} -\entry {\code {complete-username (M-~)}}{108} -\entry {\code {complete-variable (M-$)}}{108} -\entry {\code {copy-backward-word ()}}{106} -\entry {\code {copy-forward-word ()}}{106} -\entry {\code {copy-region-as-kill ()}}{106} +\entry {\code {call-last-kbd-macro (C-x e)}}{110} +\entry {\code {capitalize-word (M-c)}}{106} +\entry {\code {character-search (C-])}}{110} +\entry {\code {character-search-backward (M-C-])}}{111} +\entry {\code {clear-screen (C-l)}}{104} +\entry {\code {complete (\key {TAB})}}{108} +\entry {\code {complete-command (M-!)}}{109} +\entry {\code {complete-filename (M-/)}}{109} +\entry {\code {complete-hostname (M-@)}}{109} +\entry {\code {complete-into-braces (M-{\tt \char 123})}}{109} +\entry {\code {complete-username (M-~)}}{109} +\entry {\code {complete-variable (M-$)}}{109} +\entry {\code {copy-backward-word ()}}{107} +\entry {\code {copy-forward-word ()}}{107} +\entry {\code {copy-region-as-kill ()}}{107} \initial {D} -\entry {\code {delete-char (C-d)}}{105} -\entry {\code {delete-char-or-list ()}}{108} -\entry {\code {delete-horizontal-space ()}}{106} -\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{107} -\entry {\code {display-shell-version (C-x C-v)}}{110} -\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{109} -\entry {\code {downcase-word (M-l)}}{105} -\entry {\code {dump-functions ()}}{110} -\entry {\code {dump-macros ()}}{110} -\entry {\code {dump-variables ()}}{110} -\entry {\code {dynamic-complete-history (M-\key {TAB})}}{108} +\entry {\code {dabbrev-expand ()}}{109} +\entry {\code {delete-char (C-d)}}{106} +\entry {\code {delete-char-or-list ()}}{109} +\entry {\code {delete-horizontal-space ()}}{107} +\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{108} +\entry {\code {display-shell-version (C-x C-v)}}{111} +\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{110} +\entry {\code {downcase-word (M-l)}}{106} +\entry {\code {dump-functions ()}}{111} +\entry {\code {dump-macros ()}}{111} +\entry {\code {dump-variables ()}}{111} +\entry {\code {dynamic-complete-history (M-\key {TAB})}}{109} \initial {E} -\entry {\code {edit-and-execute-command (C-xC-e)}}{111} -\entry {\code {end-kbd-macro (C-x ))}}{109} -\entry {\code {end-of-history (M->)}}{104} -\entry {\code {end-of-line (C-e)}}{103} -\entry {\code {exchange-point-and-mark (C-x C-x)}}{109} +\entry {\code {edit-and-execute-command (C-xC-e)}}{112} +\entry {\code {end-kbd-macro (C-x ))}}{110} +\entry {\code {end-of-history (M->)}}{105} +\entry {\code {end-of-line (C-e)}}{104} +\entry {\code {exchange-point-and-mark (C-x C-x)}}{110} \initial {F} -\entry {\code {forward-backward-delete-char ()}}{105} -\entry {\code {forward-char (C-f)}}{103} -\entry {\code {forward-search-history (C-s)}}{104} -\entry {\code {forward-word (M-f)}}{103} +\entry {\code {forward-backward-delete-char ()}}{106} +\entry {\code {forward-char (C-f)}}{104} +\entry {\code {forward-search-history (C-s)}}{105} +\entry {\code {forward-word (M-f)}}{104} \initial {G} -\entry {\code {glob-complete-word (M-g)}}{110} -\entry {\code {glob-expand-word (C-x *)}}{110} -\entry {\code {glob-list-expansions (C-x g)}}{110} +\entry {\code {glob-complete-word (M-g)}}{111} +\entry {\code {glob-expand-word (C-x *)}}{111} +\entry {\code {glob-list-expansions (C-x g)}}{111} \initial {H} -\entry {\code {history-and-alias-expand-line ()}}{111} -\entry {\code {history-expand-line (M-^)}}{110} -\entry {\code {history-search-backward ()}}{104} -\entry {\code {history-search-forward ()}}{104} +\entry {\code {history-and-alias-expand-line ()}}{112} +\entry {\code {history-expand-line (M-^)}}{112} +\entry {\code {history-search-backward ()}}{105} +\entry {\code {history-search-forward ()}}{105} \initial {I} -\entry {\code {insert-comment (M-#)}}{110} -\entry {\code {insert-completions (M-*)}}{107} -\entry {\code {insert-last-argument (M-. or M-_)}}{111} +\entry {\code {insert-comment (M-#)}}{111} +\entry {\code {insert-completions (M-*)}}{108} +\entry {\code {insert-last-argument (M-. or M-_)}}{112} \initial {K} -\entry {\code {kill-line (C-k)}}{106} -\entry {\code {kill-region ()}}{106} -\entry {\code {kill-whole-line ()}}{106} -\entry {\code {kill-word (M-d)}}{106} +\entry {\code {kill-line (C-k)}}{107} +\entry {\code {kill-region ()}}{107} +\entry {\code {kill-whole-line ()}}{107} +\entry {\code {kill-word (M-d)}}{107} \initial {M} -\entry {\code {magic-space ()}}{111} -\entry {\code {menu-complete ()}}{107} +\entry {\code {magic-space ()}}{112} +\entry {\code {menu-complete ()}}{108} \initial {N} -\entry {\code {next-history (C-n)}}{104} -\entry {\code {non-incremental-forward-search-history (M-n)}}{104} -\entry {\code {non-incremental-reverse-search-history (M-p)}}{104} +\entry {\code {next-history (C-n)}}{105} +\entry {\code {non-incremental-forward-search-history (M-n)}}{105} +\entry {\code {non-incremental-reverse-search-history (M-p)}}{105} \initial {O} -\entry {\code {operate-and-get-next (C-o)}}{111} -\entry {\code {overwrite-mode ()}}{105} +\entry {\code {operate-and-get-next (C-o)}}{112} +\entry {\code {overwrite-mode ()}}{106} \initial {P} -\entry {\code {possible-command-completions (C-x !)}}{108} -\entry {\code {possible-completions (M-?)}}{107} -\entry {\code {possible-filename-completions (C-x /)}}{108} -\entry {\code {possible-hostname-completions (C-x @)}}{108} -\entry {\code {possible-username-completions (C-x ~)}}{108} -\entry {\code {possible-variable-completions (C-x $)}}{108} -\entry {\code {prefix-meta (\key {ESC})}}{109} -\entry {\code {previous-history (C-p)}}{104} +\entry {\code {possible-command-completions (C-x !)}}{109} +\entry {\code {possible-completions (M-?)}}{108} +\entry {\code {possible-filename-completions (C-x /)}}{109} +\entry {\code {possible-hostname-completions (C-x @)}}{109} +\entry {\code {possible-username-completions (C-x ~)}}{109} +\entry {\code {possible-variable-completions (C-x $)}}{109} +\entry {\code {prefix-meta (\key {ESC})}}{110} +\entry {\code {previous-history (C-p)}}{105} \initial {Q} -\entry {\code {quoted-insert (C-q or C-v)}}{105} +\entry {\code {quoted-insert (C-q or C-v)}}{106} \initial {R} -\entry {\code {re-read-init-file (C-x C-r)}}{109} -\entry {\code {redraw-current-line ()}}{103} -\entry {\code {reverse-search-history (C-r)}}{104} -\entry {\code {revert-line (M-r)}}{109} +\entry {\code {re-read-init-file (C-x C-r)}}{110} +\entry {\code {redraw-current-line ()}}{104} +\entry {\code {reverse-search-history (C-r)}}{105} +\entry {\code {revert-line (M-r)}}{110} \initial {S} -\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{105} -\entry {\code {set-mark (C-@)}}{109} -\entry {\code {shell-expand-line (M-C-e)}}{110} -\entry {\code {start-kbd-macro (C-x ()}}{108} +\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{106} +\entry {\code {set-mark (C-@)}}{110} +\entry {\code {shell-expand-line (M-C-e)}}{111} +\entry {\code {start-kbd-macro (C-x ()}}{110} \initial {T} -\entry {\code {tilde-expand (M-&)}}{109} -\entry {\code {transpose-chars (C-t)}}{105} -\entry {\code {transpose-words (M-t)}}{105} +\entry {\code {tilde-expand (M-&)}}{110} +\entry {\code {transpose-chars (C-t)}}{106} +\entry {\code {transpose-words (M-t)}}{106} \initial {U} -\entry {\code {undo (C-_ or C-x C-u)}}{109} -\entry {\code {universal-argument ()}}{107} -\entry {\code {unix-filename-rubout ()}}{106} -\entry {\code {unix-line-discard (C-u)}}{106} -\entry {\code {unix-word-rubout (C-w)}}{106} -\entry {\code {upcase-word (M-u)}}{105} +\entry {\code {undo (C-_ or C-x C-u)}}{110} +\entry {\code {universal-argument ()}}{108} +\entry {\code {unix-filename-rubout ()}}{107} +\entry {\code {unix-line-discard (C-u)}}{107} +\entry {\code {unix-word-rubout (C-w)}}{107} +\entry {\code {upcase-word (M-u)}}{106} \initial {Y} -\entry {\code {yank (C-y)}}{107} -\entry {\code {yank-last-arg (M-. or M-_)}}{104} -\entry {\code {yank-nth-arg (M-C-y)}}{104} -\entry {\code {yank-pop (M-y)}}{107} +\entry {\code {yank (C-y)}}{108} +\entry {\code {yank-last-arg (M-. or M-_)}}{105} +\entry {\code {yank-nth-arg (M-C-y)}}{105} +\entry {\code {yank-pop (M-y)}}{108} diff --git a/doc/bashref.html b/doc/bashref.html index 282c2945e..221f90fd8 100644 --- a/doc/bashref.html +++ b/doc/bashref.html @@ -1,6 +1,6 @@ - +

-A pipeline is a sequence of simple commands separated by -`|'. +A pipeline is a sequence of simple commands separated by one of +the control operators `|' or `|&'.

The format for a pipeline is - - +
 
[time [-p]] [!] command1 [| command2 ...]
+
 
[time [-p]] [!] command1 [ [| or |&] command2 ...]
 

The output of each command in the pipeline is connected via a pipe to the input of the next command. -That is, each command reads the previous command's output. +That is, each command reads the previous command's output. This +connection is performed before any redirections specified by the +command. +

+ +If `|&' is used, the standard error of command1 is connected to +command2's standard input through the pipe; it is shorthand for +2>&1 |. This implicit redirection of the standard error is +performed after any redirections specified by the command.

The reserved word time causes timing statistics @@ -895,7 +903,7 @@ The `-p' option changes the output format to that specified by POSIX. The TIMEFORMAT variable may be set to a format string that specifies how the timing information should be displayed. -See section 5.2 Bash Variables, for a description of the available formats. +See section 5.2 Bash Variables, for a description of the available formats. The use of time as a reserved word permits the timing of shell builtins, shell functions, and pipelines. An external time command cannot time these easily. @@ -906,10 +914,10 @@ shell waits for all commands in the pipeline to complete.

Each command in a pipeline is executed in its own subshell -(see section 3.7.3 Command Execution Environment). The exit +(see section 3.7.3 Command Execution Environment). The exit status of a pipeline is the exit status of the last command in the pipeline, unless the pipefail option is enabled -(see section 4.3.1 The Set Builtin). +(see section 4.3.1 The Set Builtin). If pipefail is enabled, the pipeline's return status is the value of the last (rightmost) command to exit with a non-zero status, or zero if all commands exit successfully. @@ -931,7 +939,7 @@ returning a value.

[ >> ]         [Top] [Contents][Index][Index] [ ? ]

3.2.3 Lists of Commands

@@ -958,7 +966,7 @@ the shell executes the command asynchronously in a subshell. This is known as executing the command in the background. The shell does not wait for the command to finish, and the return status is 0 (true). -When job control is not active (see section 7. Job Control), +When job control is not active (see section 7. Job Control), the standard input for asynchronous commands, in the absence of any explicit redirections, is redirected from /dev/null.

@@ -1006,7 +1014,7 @@ executed in the list. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.2.4 Compound Commands

@@ -1042,7 +1050,7 @@ to group commands and execute them as a unit. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.2.4.1 Looping Constructs

@@ -1103,7 +1111,7 @@ An alternate form of the for command is also supported:
 
for (( expr1 ; expr2 ; expr3 )) ; do commands ; done
 
First, the arithmetic expression expr1 is evaluated according -to the rules described below (see section 6.5 Shell Arithmetic). +to the rules described below (see section 6.5 Shell Arithmetic). The arithmetic expression expr2 is then evaluated repeatedly until it evaluates to zero. Each time expr2 evaluates to a non-zero value, commands are @@ -1116,7 +1124,7 @@ that is executed, or false if any of the expressions is invalid.

-The break and continue builtins (see section 4.1 Bourne Shell Builtins) +The break and continue builtins (see section 4.1 Bourne Shell Builtins) may be used to control loop execution.

@@ -1131,7 +1139,7 @@ may be used to control loop execution. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.2.4.2 Conditional Constructs

@@ -1182,13 +1190,16 @@ The syntax of the case command is: case will selectively execute the command-list corresponding to the first pattern that matches word. If the shell option nocasematch -(see the description of shopt in 4.3.2 The Shopt Builtin) +(see the description of shopt in 4.3.2 The Shopt Builtin) is enabled, the match is performed without regard to the case of alphabetic characters. The `|' is used to separate multiple patterns, and the `)' operator terminates a pattern list. A list of patterns and an associated command-list is known -as a clause. Each clause must be terminated with `;;'. +as a clause. +

+ +Each clause must be terminated with `;;', `,&', or `;;&'. The word undergoes tilde expansion, parameter expansion, command substitution, arithmetic expansion, and quote removal before matching is attempted. Each pattern undergoes tilde expansion, parameter @@ -1196,7 +1207,8 @@ expansion, command substitution, and arithmetic expansion.

There may be an arbitrary number of case clauses, each terminated -by a `;;'. The first pattern that matches determines the +by a `;;', `;&', or `;;&'. +The first pattern that matches determines the command-list that is executed.

@@ -1215,6 +1227,17 @@ esac echo " legs."

+

+ +If the `;;' operator is used, no subsequent matches are attempted after +the first pattern match. +Using `;&' in place of `;;' causes execution to continue with +the command-list associated with the next clause, if any. +Using `;;&' in place of `;;' causes the shell to test the patterns +in the next clause, if any, and execute any associated command-list +on a successful match. +

+ The return status is zero if no pattern is matched. Otherwise, the return status is the exit status of the command-list executed.

@@ -1267,11 +1290,11 @@ done

The arithmetic expression is evaluated according to the rules -described below (see section 6.5 Shell Arithmetic). +described below (see section 6.5 Shell Arithmetic). If the value of the expression is non-zero, the return status is 0; otherwise the return status is 1. This is exactly equivalent to
 
let "expression"
-
See section 4.2 Bash Builtin Commands, for a full description of the let builtin. +See section 4.2 Bash Builtin Commands, for a full description of the let builtin.

[[...]] @@ -1283,7 +1306,7 @@ otherwise the return status is 1. This is exactly equivalent to Return a status of 0 or 1 depending on the evaluation of the conditional expression expression. Expressions are composed of the primaries described below in -6.4 Bash Conditional Expressions. +6.4 Bash Conditional Expressions. Word splitting and filename expansion are not performed on the words between the `[[' and `]]'; tilde expansion, parameter and variable expansion, arithmetic expansion, command substitution, process @@ -1296,7 +1319,7 @@ When the `==' and `!=' operators are used, the string right of the operator is considered a pattern and matched according to the rules described below in 3.5.8.1 Pattern Matching. If the shell option nocasematch -(see the description of shopt in 4.3.2 The Shopt Builtin) +(see the description of shopt in 4.3.2 The Shopt Builtin) is enabled, the match is performed without regard to the case of alphabetic characters. The return value is 0 if the string matches (`==') or does not @@ -1314,7 +1337,7 @@ the pattern, and 1 otherwise. If the regular expression is syntactically incorrect, the conditional expression's return value is 2. If the shell option nocasematch -(see the description of shopt in 4.3.2 The Shopt Builtin) +(see the description of shopt in 4.3.2 The Shopt Builtin) is enabled, the match is performed without regard to the case of alphabetic characters. Any part of the pattern may be quoted to force it to be matched as a @@ -1367,7 +1390,7 @@ value of the entire conditional expression. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.2.4.3 Grouping Commands

@@ -1386,7 +1409,7 @@ commands in the list may be redirected to a single stream.

Placing a list of commands between parentheses causes a subshell -environment to be created (see section 3.7.3 Command Execution Environment), and each +environment to be created (see section 3.7.3 Command Execution Environment), and each of the commands in list to be executed in that subshell. Since the list is executed in a subshell, variable assignments do not remain in effect after the subshell completes. @@ -1425,10 +1448,10 @@ The exit status of both of these constructs is the exit status of [ > ]   [ << ] [ Up ] -[ >> ] +[ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.3 Shell Functions

@@ -1464,7 +1487,7 @@ are performed when the function is executed.

A function definition may be deleted using the `-f' option to the -unset builtin (see section 4.1 Bourne Shell Builtins). +unset builtin (see section 4.1 Bourne Shell Builtins).

The exit status of a function definition is zero unless a syntax error @@ -1499,7 +1522,7 @@ are not inherited unless the function has been given the the -o functrace option has been enabled with the set builtin, (in which case all functions inherit the DEBUG and RETURN traps). -See section 4.1 Bourne Shell Builtins, for the description of the +See section 4.1 Bourne Shell Builtins, for the description of the trap builtin.

@@ -1525,7 +1548,7 @@ the function and the commands it invokes. Function names and definitions may be listed with the `-f' option to the declare or typeset -builtin commands (see section 4.2 Bash Builtin Commands). +builtin commands (see section 4.2 Bash Builtin Commands). The `-F' option to declare or typeset will list the function names only (and optionally the source file and line number, if the extdebug @@ -1533,7 +1556,7 @@ shell option is enabled). Functions may be exported so that subshells automatically have them defined with the `-f' option to the export builtin -(see section 4.1 Bourne Shell Builtins). +(see section 4.1 Bourne Shell Builtins). Note that shell functions and variables with the same name may result in multiple identically-named entries in the environment passed to the shell's children. @@ -1555,7 +1578,7 @@ recursive calls. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.4 Shell Parameters

@@ -1574,7 +1597,7 @@ listed below. A variable is a parameter denoted by a name. A variable has a value and zero or more attributes. Attributes are assigned using the declare builtin command -(see the description of the declare builtin in 4.2 Bash Builtin Commands). +(see the description of the declare builtin in 4.2 Bash Builtin Commands).

A parameter is set if it has been assigned a value. The null string is @@ -1602,14 +1625,14 @@ and local builtin commands.

In the context where an assignment statement is assigning a value -to a shell variable or array index (see section 6.7 Arrays), the `+=' +to a shell variable or array index (see section 6.7 Arrays), the `+=' operator can be used to append to or add to the variable's previous value. When `+=' is applied to a variable for which the integer attribute has been set, value 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 section 6.7 Arrays), the +(see section 6.7 Arrays), 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. @@ -1628,7 +1651,7 @@ appended to the variable's value. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.4.1 Positional Parameters

@@ -1643,7 +1666,7 @@ Positional parameter N may be referenced as ${N}, or as $N when N consists of a single digit. Positional parameters may not be assigned to with assignment statements. The set and shift builtins are used to set and -unset them (see section 4. Shell Builtin Commands). +unset them (see section 4. Shell Builtin Commands). The positional parameters are temporarily replaced when a shell function is executed (see section 3.3 Shell Functions). @@ -1664,7 +1687,7 @@ digit is expanded, it must be enclosed in braces. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.4.2 Special Parameters

@@ -1750,8 +1773,8 @@ Expands to the process ID of the most recently executed background
Expands to the name of the shell or shell script. This is set at shell initialization. If Bash is invoked with a file of commands -(see section 3.8 Shell Scripts), $0 is set to the name of that file. -If Bash is started with the `-c' option (see section 6.1 Invoking Bash), +(see section 3.8 Shell Scripts), $0 is set to the name of that file. +If Bash is started with the `-c' option (see section 6.1 Invoking Bash), then $0 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 Bash, as given by argument zero. @@ -1783,7 +1806,7 @@ When checking mail, this parameter holds the name of the mail file. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5 Shell Expansions

@@ -1837,7 +1860,7 @@ can change the number of words of the expansion; other expansions expand a single word to a single word. The only exceptions to this are the expansions of "$@" (see section 3.4.2 Special Parameters) and "${name[@]}" -(see section 6.7 Arrays). +(see section 6.7 Arrays).

After all expansions, quote removal (see section 3.5.9 Quote Removal) @@ -1855,7 +1878,7 @@ is performed. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.1 Brace Expansion

@@ -1883,13 +1906,20 @@ For example, ade ace abe

-A sequence expression takes the form {x..y}, -where x and y are either integers or single characters. +A sequence expression takes the form {x..y[incr]}, +where x and y are either integers or single characters, +and incr, an optional increment, is an integer. When integers are supplied, the expression expands to each number between x and y, inclusive. +Supplied integers may be prefixed with `0' to force each term to have the +same width. When either x or y begins with a zero, the shell +attempts to force all generated terms to contain the same number of digits, +zero-padding where necessary. When characters are supplied, the expression expands to each character lexicographically between x and y, inclusive. Note that both x and y must be of the same type. +When the increment is supplied, it is used as the difference between +each term. The default increment is 1 or -1 as appropriate.

Brace expansion is performed before any other expansions, @@ -1932,7 +1962,7 @@ above example: [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.2 Tilde Expansion

@@ -1964,7 +1994,7 @@ number N, optionally prefixed by a `+' or a `-'
dirs builtin invoked with the characters following tilde -in the tilde-prefix as an argument (see section 6.8 The Directory Stack). +in the tilde-prefix as an argument (see section 6.8 The Directory Stack). If the tilde-prefix, sans the tilde, consists of a number without a leading `+' or `-', `+' is assumed.

@@ -2030,7 +2060,7 @@ The following table shows how Bash treats unquoted tilde-prefixes: [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.3 Shell Parameter Expansion

@@ -2124,7 +2154,7 @@ 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 -(see section 6.5 Shell Arithmetic). +(see section 6.5 Shell Arithmetic). This is referred to as Substring Expansion.

@@ -2246,7 +2276,7 @@ array in turn, and the expansion is the resultant list. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.4 Command Substitution

@@ -2298,7 +2328,7 @@ filename expansion are not performed on the results. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.5 Arithmetic Expansion

@@ -2320,7 +2350,7 @@ Arithmetic expansions may be nested.

The evaluation is performed according to the rules listed below -(see section 6.5 Shell Arithmetic). +(see section 6.5 Shell Arithmetic). If the expression is invalid, Bash prints a message indicating failure to the standard error and no substitution occurs.

@@ -2336,7 +2366,7 @@ failure to the standard error and no substitution occurs. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.6 Process Substitution

@@ -2377,7 +2407,7 @@ expansion. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.7 Word Splitting

@@ -2431,7 +2461,7 @@ is performed. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.8 Filename Expansion

@@ -2446,7 +2476,7 @@ is performed.

After word splitting, unless the `-f' option has been set -(see section 4.3.1 The Set Builtin), Bash scans each word for the characters +(see section 4.3.1 The Set Builtin), Bash scans each word for the characters `*', `?', and `['. If one of these characters appears, then the word is regarded as a pattern, @@ -2470,7 +2500,7 @@ matched explicitly. In other cases, the `.' character is not treated specially.

-See the description of shopt in 4.3.2 The Shopt Builtin, +See the description of shopt in 4.3.2 The Shopt Builtin, for a description of the nocaseglob, nullglob, failglob, and dotglob options.

@@ -2504,7 +2534,7 @@ is unset. [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.8.1 Pattern Matching

@@ -2524,6 +2554,12 @@ The special pattern characters have the following meanings:
*
Matches any string, including the null string. +When the globstar shell option is enabled, and `*' is used in +a filename expansion context, two adjacent `*'s used as a single +pattern will match all files and zero or more directories and +subdirectories. +If followed by a `/', two adjacent `*'s will match only +directories and subdirectories.
?
Matches any single character.
[...] @@ -2614,7 +2650,7 @@ sub-patterns: [ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.5.9 Quote Removal

@@ -2632,12 +2668,12 @@ result from one of the above expansions are removed. - + - + - +
[ < ] [ > ]   [ << ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

3.6 Redirections

@@ -2730,12 +2766,12 @@ internally. - + - + - +
[ < ] [ > ]   [ << ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

3.6.1 Redirecting Input

@@ -2758,10 +2794,10 @@ The general format for redirecting input is: [ > ]   [ << ] [ Up ] -[ >> ] +[ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.6.2 Redirecting Output

@@ -2794,10 +2830,10 @@ is attempted even if the file named by word exists. [ > ]   [ << ] [ Up ] -[ >> ] +[ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.6.3 Appending Redirected Output

@@ -2821,19 +2857,19 @@ The general format for appending output is: [ > ]   [ << ] [ Up ] -[ >> ] +[ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ]

3.6.4 Redirecting Standard Output and Standard Error

-Bash allows both the +This construct allows both the standard output (file descriptor 1) and the standard error output (file descriptor 2) to be redirected to the file whose name is the -expansion of word with this construct. +expansion of word.

There are two formats for redirecting standard output and @@ -2853,14 +2889,42 @@ This is semantically equivalent to [ > ]   [ << ] [ Up ] -[ >> ] +[ >> ]         [Top] [Contents] -[Index] +[Index] [ ? ] -

3.6.5 Here Documents

+

3.6.5 Appending Standard Output and Standard Error

+This construct allows both the +standard output (file descriptor 1) and +the standard error output (file descriptor 2) +to be appended to the file whose name is the +expansion of word. +

+ +The format for appending standard output and standard error is: +
 
&>>word
+
This is semantically equivalent to +
 
>>word 2>&1
+

+ +


+ + + + + + + + + + + +
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top][Contents][Index][ ? ]
+

3.6.6 Here Documents

+ This type of redirection instructs the shell to read input from the current source until a line containing only word (with no trailing blanks) is seen. All of @@ -2895,20 +2959,20 @@ natural fashion.


- + - - - + + + - + - +
[ < ][ > ]   [ << ]
[ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]
-

3.6.6 Here Strings

- +

3.6.7 Here Strings

+ A variant of here documents, the format is:
 
<<< word
 

@@ -2918,20 +2982,20 @@ input.


- + - - - + + + - + - +
[ < ][ > ]   [ << ]
[ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]
-

3.6.7 Duplicating File Descriptors

- +

3.6.8 Duplicating File Descriptors

+ The redirection operator
 
[n]<&word
 
is used to duplicate input file descriptors. @@ -2957,20 +3021,20 @@ error are redirected as described previously.


- + - - - + + + - + - +
[ < ][ > ]   [ << ]
[ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]
-

3.6.8 Moving File Descriptors

- +

3.6.9 Moving File Descriptors

+ The redirection operator
 
[n]<&digit-
 
moves the file descriptor digit to file descriptor n, @@ -2985,20 +3049,20 @@ or the standard output (file descriptor 1) if n is not specified.


- + - - - + + + - + - +
[ < ][ > ]   [ << ]
[ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]
-

3.6.9 Opening File Descriptors for Reading and Writing

- +

3.6.10 Opening File Descriptors for Reading and Writing

+ The redirection operator
 
[n]<>word
 
causes the file whose name is the expansion of word @@ -3009,53 +3073,53 @@ is not specified. If the file does not exist, it is created.
- + - - - + + + - + - +
[ < ][ > ]   [ << ]
[ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

3.7 Executing Commands

- +

- - - + - - + -
3.7.1 Simple Command Expansion  How Bash expands simple commands before +
3.7.1 Simple Command Expansion  How Bash expands simple commands before executing them.
3.7.2 Command Search and Execution  How Bash finds commands and runs them.
3.7.3 Command Execution Environment  The environment in which Bash +
3.7.2 Command Search and Execution  How Bash finds commands and runs them.
3.7.3 Command Execution Environment  The environment in which Bash executes commands that are not shell builtins.
3.7.4 Environment  The environment given to a command.
3.7.5 Exit Status  The status returned by commands and how Bash +
3.7.4 Environment  The environment given to a command.
3.7.5 Exit Status  The status returned by commands and how Bash interprets it.
3.7.6 Signals  What happens when Bash or a command it runs +
3.7.6 Signals  What happens when Bash or a command it runs receives a signal.


- + - - - - - + + + + + - +
[ < ][ > ]   [ << ][ Up ][ >> ]
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

3.7.1 Simple Command Expansion

- +

When a simple command is executed, the shell performs the following @@ -3109,20 +3173,20 @@ were no command substitutions, the command exits with a status of zero.


- + - - - - - + + + + + - +
[ < ][ > ]   [ << ][ Up ][ >> ]
[ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

3.7.2 Command Search and Execution

- +

After a command has been split into words, if it results in a @@ -3149,10 +3213,15 @@ and contains no slashes, Bash searches each element of $PATH for a directory containing an executable file by that name. Bash uses a hash table to remember the full pathnames of executable files to avoid multiple PATH searches -(see the description of hash in 4.1 Bourne Shell Builtins). +(see the description of hash in 4.1 Bourne Shell Builtins). A full search of the directories in $PATH is performed only if the command is not found in the hash table. -If the search is unsuccessful, the shell prints an error +If the search is unsuccessful, the shell searches for a defined shell +function named command_not_found_handle. +If that function exists, it is invoked with the original command and +the original command's arguments as its arguments, and the function's +exit status becomes the exit status of the shell. +If that function is not defined, the shell prints an error message and returns an exit status of 127.

@@ -3168,7 +3237,7 @@ to the command are set to the arguments supplied, if any. If this execution fails because the file is not in executable format, and the file is not a directory, it is assumed to be a shell script and the shell executes it as described in -3.8 Shell Scripts. +3.8 Shell Scripts.

  • @@ -3181,20 +3250,20 @@ the command to complete and collects its exit status.
    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    3.7.3 Command Execution Environment

    - +

    The shell has an execution environment, which consists of the @@ -3237,11 +3306,11 @@ arguments) or by set

  • -options enabled by shopt (see section 4.3.2 The Shopt Builtin) +options enabled by shopt (see section 4.3.2 The Shopt Builtin)

  • -shell aliases defined with alias (see section 6.6 Aliases) +shell aliases defined with alias (see section 6.6 Aliases)

  • @@ -3276,7 +3345,7 @@ the file creation mode mask
  • shell variables and functions marked for export, along with variables -exported for the command, passed in the environment (see section 3.7.4 Environment) +exported for the command, passed in the environment (see section 3.7.4 Environment)

  • @@ -3309,20 +3378,20 @@ shell as modified by redirections.
    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    3.7.4 Environment

    - +

    When a program is invoked it is given an array of strings @@ -3354,7 +3423,7 @@ These assignment statements affect only the environment seen by that command.

    -If the `-k' option is set (see section 4.3.1 The Set Builtin), then all +If the `-k' option is set (see section 4.3.1 The Set Builtin), then all parameter assignments are placed in the environment for a command, not just those that precede the command name.

    @@ -3366,20 +3435,20 @@ command in its environment.


    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    3.7.5 Exit Status

    - +

    The exit status of an executed command is the value returned by the @@ -3423,20 +3492,20 @@ All builtins return an exit status of 2 to indicate incorrect usage.


    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    3.7.6 Signals

    - +

    When Bash is interactive, in the absence of any traps, it ignores @@ -3445,7 +3514,7 @@ and SIGINT is caught and handled (so that the wait builtin is interruptible). When Bash receives a SIGINT, it breaks out of any executing loops. In all cases, Bash ignores SIGQUIT. -If job control is in effect (see section 7. Job Control), Bash +If job control is in effect (see section 7. Job Control), Bash ignores SIGTTIN, SIGTTOU, and SIGTSTP.

    @@ -3467,12 +3536,12 @@ the SIGHUP. To prevent the shell from sending the SIGHUP signal to a particular job, it should be removed from the jobs table with the disown -builtin (see section 7.2 Job Control Builtins) or marked +builtin (see section 7.2 Job Control Builtins) or marked to not receive SIGHUP using disown -h.

    If the huponexit shell option has been set with shopt -(see section 4.3.2 The Shopt Builtin), Bash sends a SIGHUP to all jobs when +(see section 4.3.2 The Shopt Builtin), Bash sends a SIGHUP to all jobs when an interactive login shell exits.

    @@ -3488,26 +3557,26 @@ which the trap is executed.


    - + - - + + - + - +
    [ < ][ > ]
    [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    3.8 Shell Scripts

    - +

    A shell script is a text file containing shell commands. When such a file is used as the first non-option argument when invoking Bash, and neither the `-c' nor `-s' option is supplied -(see section 6.1 Invoking Bash), +(see section 6.1 Invoking Bash), Bash reads and executes commands from the file, then exits. This mode of operation creates a non-interactive shell. The shell first searches for the file in the current directory, and looks in the @@ -3535,7 +3604,7 @@ if filename is an executable shell script. This subshell reinitializes itself, so that the effect is as if a new shell had been invoked to interpret the script, with the exception that the locations of commands remembered by the parent -(see the description of hash in 4.1 Bourne Shell Builtins) +(see the description of hash in 4.1 Bourne Shell Builtins) are retained by the child.

    @@ -3564,29 +3633,29 @@ under another shell.


    - + - - - + + + - + - +
    [ < ][ > ]   [ << ]
    [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    4. Shell Builtin Commands

    - +

    - - - + -
    4.1 Bourne Shell Builtins  Builtin commands inherited from the Bourne +
    4.1 Bourne Shell Builtins  Builtin commands inherited from the Bourne Shell.
    4.2 Bash Builtin Commands  Table of builtins specific to Bash.
    4.3 Modifying Shell Behavior  Builtins to modify shell attributes and +
    4.2 Bash Builtin Commands  Table of builtins specific to Bash.
    4.3 Modifying Shell Behavior  Builtins to modify shell attributes and optional behavior.
    4.4 Special Builtins  Builtin commands classified specially by +
    4.4 Special Builtins  Builtin commands classified specially by POSIX.

    @@ -3606,10 +3675,10 @@ to or have been extended in Bash. Several builtin commands are described in other chapters: builtin commands which provide the Bash interface to the job control -facilities (see section 7.2 Job Control Builtins), the directory stack -(see section 6.8.1 Directory Stack Builtins), the command history -(see section 9.2 Bash History Builtins), and the programmable completion -facilities (see section 8.7 Programmable Completion Builtins). +facilities (see section 7.2 Job Control Builtins), the directory stack +(see section 6.8.1 Directory Stack Builtins), the command history +(see section 9.2 Bash History Builtins), and the programmable completion +facilities (see section 8.7 Programmable Completion Builtins).

    Many of the builtins have been extended by POSIX or Bash. @@ -3624,20 +3693,20 @@ builtins do not accept options.


    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    4.1 Bourne Shell Builtins

    - +

    The following shell builtin commands are inherited from the Bourne Shell. @@ -3921,7 +3990,7 @@ less than zero, non-zero otherwise. Evaluate a conditional expression expr. Each operator and operand must be a separate argument. Expressions are composed of the primaries described below in -6.4 Bash Conditional Expressions. +6.4 Bash Conditional Expressions. test does not accept any options, nor does it accept and ignore an argument of `--' as signifying the end of options.

    @@ -3971,7 +4040,7 @@ expressions using a set of rules based on the number of arguments.

    If the first argument is `!', the expression is true if and only if the second argument is null. If the first argument is one of the unary conditional operators -(see section 6.4 Bash Conditional Expressions), the expression +(see section 6.4 Bash Conditional Expressions), the expression is true if the unary test is true. If the first argument is not a valid unary operator, the expression is false. @@ -3979,7 +4048,7 @@ false.
    3 arguments
    If the second argument is one of the binary conditional -operators (see section 6.4 Bash Conditional Expressions), the +operators (see section 6.4 Bash Conditional Expressions), the result of the expression is the result of the binary test using the first and third arguments as operands. The `-a' and `-o' operators are considered binary operators @@ -4039,7 +4108,7 @@ before every simple command, for command, case command select command, every arithmetic for command, and before the first command executes in a shell function. Refer to the description of the extglob option to the -shopt builtin (see section 4.3.2 The Shopt Builtin) for details of its +shopt builtin (see section 4.3.2 The Shopt Builtin) for details of its effect on the DEBUG trap. If a sigspec is ERR, the command arg is executed whenever a simple command has a non-zero exit status, @@ -4101,20 +4170,20 @@ The return status is zero unless a name is readonly.
    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    4.2 Bash Builtin Commands

    - +

    This section describes builtin commands which are unique to @@ -4135,7 +4204,7 @@ them to be reused as input. If arguments are supplied, an alias is defined for each name whose value is given. If no value is given, the name and value of the alias is printed. -Aliases are described in 6.6 Aliases. +Aliases are described in 6.6 Aliases.

    bind @@ -4148,14 +4217,16 @@ bind [-m keymap] keyseq:function-name bind readline-command

    -Display current Readline (see section 8. Command Line Editing) +Display current Readline (see section 8. Command Line Editing) key and function bindings, bind a key sequence to a Readline function or macro, or set a Readline variable. Each non-option argument is a command as it would appear in a -Readline initialization file (see section 8.3 Readline Init File), +Readline initialization file (see section 8.3 Readline Init File), but each binding or command must be passed as a separate argument; e.g., `"\C-x\C-r":re-read-init-file'. +

    + Options, if supplied, have the following meanings:

    @@ -4227,8 +4298,13 @@ initialization file.

    -x keyseq:shell-command
    Cause shell-command to be executed whenever keyseq is entered. -

    - +When shell-command is executed, the shell sets the +READLINE_LINE variable to the contents of the Readline line +buffer and the READLINE_POINT variable to the current location +of the insertion point. +If the executed command changes the value of READLINE_LINE or +READLINE_POINT, those new values will be reflected in the +editing state.

  • @@ -4319,7 +4395,7 @@ option will restrict the display to shell functions. The `-F' option inhibits the display of function definitions; only the function name and attributes are printed. If the extdebug shell option is enabled using shopt -(see section 4.3.2 The Shopt Builtin), the source file name and line number where +(see section 4.3.2 The Shopt Builtin), the source file name and line number where the function is defined are displayed as well. `-F' implies `-f'. The following options can be used to restrict output to variables with @@ -4328,7 +4404,7 @@ the specified attributes or to give variables attributes:

    -a -
    Each name is an array variable (see section 6.7 Arrays). +
    Each name is an array variable (see section 6.7 Arrays).

    -f @@ -4337,7 +4413,7 @@ the specified attributes or to give variables attributes:
    -i
    The variable is to be treated as -an integer; arithmetic evaluation (see section 6.5 Shell Arithmetic) is +an integer; arithmetic evaluation (see section 6.5 Shell Arithmetic) is performed when the variable is assigned a value.

    @@ -4372,7 +4448,7 @@ The return status is zero unless an invalid option is encountered, an attempt is made to define a function using `-f foo=bar', an attempt is made to assign a value to a readonly variable, an attempt is made to assign a value to an array variable without -using the compound assignment syntax (see section 6.7 Arrays), +using the compound assignment syntax (see section 6.7 Arrays), one of the names is not a valid shell variable name, an attempt is made to turn off readonly status for a readonly variable, an attempt is made to turn off array status for an array variable, @@ -4455,7 +4531,7 @@ The `-d' option will delete a builtin loaded with `-f' If there are no options, a list of the shell builtins is displayed. The `-s' option restricts enable to the POSIX special builtins. If `-s' is used with `-f', the new builtin becomes -a special builtin (see section 4.4 Special Builtins). +a special builtin (see section 4.4 Special Builtins).

    The return status is zero unless a name is not a shell builtin @@ -4464,22 +4540,35 @@ or there is an error loading a new builtin from a shared object.

    help
    -
     
    help [-s] [pattern]
    +
     
    help [-dms] [pattern]
     
    Display helpful information about builtin commands. If pattern is specified, help gives detailed help on all commands matching pattern, otherwise a list of the builtins is printed. -The `-s' option restricts the information displayed to a short -usage synopsis. -The return status is zero unless no command matches pattern.

    +Options, if supplied, have the following meanings: +

    + +

    +
    -d +
    Display a short description of each pattern +
    -m +
    Display the description of each pattern in a manpage-like format +
    -s +
    Display only a short usage synopsis for each pattern +
    +

    + +The return status is zero unless no command matches pattern. +

    +

    let
     
    let expression [expression]
     
    The let builtin allows arithmetic to be performed on shell variables. Each expression is evaluated according to the -rules given below in 6.5 Shell Arithmetic. If the +rules given below in 6.5 Shell Arithmetic. If the last expression evaluates to 0, let returns 1; otherwise 0 is returned.

    @@ -4504,8 +4593,50 @@ readonly variable. parent.

    -

    printf +
    mapfile
    +
     
    mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [
    +-C callback] [-c quantum] [array]
    +
    Read lines from the standard input into array variable array, +or from file descriptor fd +if the `-u' option is supplied. +The variable MAPFILE is the default array. +Options, if supplied, have the following meanings: +
    + +
    -n +
    Copy at most count lines. If count is 0, all lines are copied. +
    -O +
    Begin assigning to array at index origin. +The default index is 0. +
    -s +
    Discard the first count lines read. +
    -t +
    Remove a trailing line from each line read. +
    -u +
    Read lines from file descriptor fd instead of the standard input. +
    -C +
    Evaluate callback each time quantumP lines are read. +The `-c' option specifies quantum. +
    -c +
    Specify the number of lines read between each call to callback. +
    +

    + +If `-C' is specified without `-c', +the default quantum is 5000. +

    + +If not supplied with an explicit origin, mapfile will clear array +before assigning to it. +

    + +mapfile returns successfully unless an invalid option or option +argument is supplied, or array is invalid or unassignable. +

    + +

    printf +
     
    printf [-v var] format [arguments]
     
    Write the formatted arguments to the standard output under the control of the format. @@ -4536,7 +4667,7 @@ non-zero on failure.

    read -
    +
     
    read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-p prompt] [-t timeout] [-u fd] [name ...]
     
    One line is read from the standard input, or from the file descriptor fd supplied as an argument to the `-u' option, and the first word @@ -4571,7 +4702,7 @@ rather than newline.

    -e -
    Readline (see section 8. Command Line Editing) is used to obtain the line. +
    Readline (see section 8. Command Line Editing) is used to obtain the line.

    -i text @@ -4605,6 +4736,8 @@ not echoed.
    -t timeout
    Cause read to time out and return failure if a complete line of input is not read within timeout seconds. +timeout may be a decimal number with a fractional portion following +the decimal point. This option has no effect if read is not reading input from the terminal or a pipe.

    @@ -4617,13 +4750,13 @@ terminal or a pipe.

    source -
    +
     
    source filename
    -
    A synonym for . (see section 4.1 Bourne Shell Builtins). +
    A synonym for . (see section 4.1 Bourne Shell Builtins).

    type -
    +
     
    type [-afptP] [name ...]
     
    For each name, indicate how it would be interpreted if used as a command name. @@ -4661,12 +4794,12 @@ If the `-f' option is used, type does not attempt to f shell functions, as with the command builtin.

    -The return status is zero if any of the names are found, non-zero -if none are found. +The return status is zero if all of the names are found, non-zero +if any are not found.

    typeset -
    +
     
    typeset [-afFrxi] [-p] [name[=value] ...]
     
    The typeset command is supplied for compatibility with the Korn shell; however, it has been deprecated in favor of the declare @@ -4674,7 +4807,7 @@ builtin command.

    ulimit -
    +
     
    ulimit [-abcdefilmnpqrstuvxHST] [limit]
     
    ulimit provides control over the resources available to processes started by the shell, on systems that allow such control. If an @@ -4788,13 +4921,13 @@ or an error occurs while setting a new limit.

    unalias -
    +
     
    unalias [-a] [name ... ]
     

    Remove each name from the list of aliases. If `-a' is supplied, all aliases are removed. -Aliases are described in 6.6 Aliases. +Aliases are described in 6.6 Aliases.

    @@ -4802,44 +4935,44 @@ Aliases are described in 6.6 Aliases.
    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    4.3 Modifying Shell Behavior

    - +
    - - +
    4.3.1 The Set Builtin  Change the values of shell attributes and +
    4.3.1 The Set Builtin  Change the values of shell attributes and positional parameters.
    4.3.2 The Shopt Builtin  Modify shell optional behavior.
    4.3.2 The Shopt Builtin  Modify shell optional behavior.


    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    4.3.1 The Set Builtin

    - +

    This builtin is so complicated that it deserves its own section. set @@ -4849,7 +4982,7 @@ parameters, or to display the names and values of shell variables.

    set -
    +
     
    set [--abefhkmnptuvxBCEHPT] [-o option] [argument ...]
     set [+abefhkmnptuvxBCEHPT] [+o option] [argument ...]
     

    @@ -4907,7 +5040,7 @@ the command name.

    -m -
    Job control is enabled (see section 7. Job Control). +
    Job control is enabled (see section 7. Job Control).

    -n @@ -4932,7 +5065,7 @@ Set the option corresponding to option-name:

    emacs -
    Use an emacs-style line editing interface (see section 8. Command Line Editing). +
    Use an emacs-style line editing interface (see section 8. Command Line Editing).

    errexit @@ -4956,7 +5089,7 @@ Set the option corresponding to option-name:

    history -
    Enable command history, as described in 9.1 Bash History Facilities. +
    Enable command history, as described in 9.1 Bash History Facilities. This option is on by default in interactive shells.

    @@ -5014,7 +5147,7 @@ This option is disabled by default.

    posix
    Change the behavior of Bash where the default operation differs from the POSIX standard to match the standard -(see section 6.11 Bash POSIX Mode). +(see section 6.11 Bash POSIX Mode). This is intended to make Bash behave as a strict superset of that standard.

    @@ -5091,7 +5224,7 @@ The ERR trap is normally not inherited in such cases.

    -H -
    Enable `!' style history substitution (see section 9.3 History Expansion). +
    Enable `!' style history substitution (see section 9.3 History Expansion). This option is on by default for interactive shells.

    @@ -5156,20 +5289,20 @@ The return status is always zero unless an invalid option is supplied.


    - + - - - - - + + + + + - +
    [ < ][ > ]   [ << ][ Up ][ >> ]
    [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

    4.3.2 The Shopt Builtin

    - +

    This builtin allows you to change additional shell optional behavior. @@ -5178,7 +5311,7 @@ This builtin allows you to change additional shell optional behavior.

    shopt -
    +
     
    shopt [-pqsu] [-o] [optname ...]
     
    Toggle the values of variables controlling optional shell behavior. With no options, or with the `-p' option, a list of all settable @@ -5208,7 +5341,7 @@ non-zero otherwise.
    -o
    Restricts the values of optname to be those defined for the `-o' option to the -set builtin (see section 4.3.1 The Set Builtin). +set builtin (see section 4.3.1 The Set Builtin).

    @@ -5262,7 +5395,7 @@ longer exists, a normal path search is performed.

    If set, Bash lists the status of any stopped and running jobs before exiting an interactive shell. If any jobs are running, this causes the exit to be deferred until a second exit is attempted without an -intervening command (see section 7. Job Control). +intervening command (see section 7. Job Control). The shell always postpones exiting if any jobs are stopped.

    @@ -5285,6 +5418,12 @@ changes its behavior to that of version 3.1 with respect to quoted arguments to the conditional command's =~ operator.

    +

    dirspell +
    If set, Bash +attempts spelling correction on directory names during word completion +if the directory name initially supplied does not exist. +

    +

    dotglob
    If set, Bash includes filenames beginning with a `.' in the results of filename expansion. @@ -5299,7 +5438,7 @@ fails.
    expand_aliases
    If set, aliases are expanded as described below under Aliases, -6.6 Aliases. +6.6 Aliases. This option is enabled by default for interactive shells.

    @@ -5309,7 +5448,7 @@ This option is enabled by default for interactive shells.

    1. -The `-F' option to the declare builtin (see section 4.2 Bash Builtin Commands) +The `-F' option to the declare builtin (see section 4.2 Bash Builtin Commands) displays the source file name and line number corresponding to each function name supplied as an argument.

      @@ -5328,7 +5467,7 @@ executed by the . or source builtins), a call to

    2. BASH_ARGC and BASH_ARGV are updated as described in their -descriptions (see section 5.2 Bash Variables). +descriptions (see section 5.2 Bash Variables).

    3. @@ -5364,10 +5503,17 @@ result in an expansion error.
      If set, the suffixes specified by the FIGNORE shell variable cause words to be ignored when performing word completion even if the ignored words are the only possible completions. -See section 5.2 Bash Variables, for a description of FIGNORE. +See section 5.2 Bash Variables, for a description of FIGNORE. This option is enabled by default.

      +

      globstar +
      If set, the pattern `**' used in a filename expansion context will +match a files and zero or more directories and subdirectories. +If the pattern is followed by a `/', only directories and +subdirectories match. +

      +

      gnu_errfmt
      If set, shell error messages are written in the standard GNU error message format. @@ -5395,13 +5541,13 @@ the Readline editing buffer, allowing further modification.
      hostcomplete
      If set, and Readline is being used, Bash will attempt to perform hostname completion when a word containing a `@' is being -completed (see section 8.4.6 Letting Readline Type For You). This option is enabled +completed (see section 8.4.6 Letting Readline Type For You). This option is enabled by default.

      huponexit
      If set, Bash will send SIGHUP to all jobs when an interactive -login shell exits (see section 3.7.6 Signals). +login shell exits (see section 3.7.6 Signals).

      interactive_comments @@ -5419,7 +5565,7 @@ embedded newlines rather than using semicolon separators where possible.
      login_shell
      The shell sets this option if it is started as a login shell -(see section 6.1 Invoking Bash). +(see section 6.1 Invoking Bash). The value may not be changed.

      @@ -5453,7 +5599,7 @@ files to expand to a null string, rather than themselves.

      progcomp
      If set, the programmable completion facilities -(see section 8.6 Programmable Completion) are enabled. +(see section 8.6 Programmable Completion) are enabled. This option is enabled by default.

      @@ -5461,13 +5607,13 @@ This option is enabled by default.

      If set, prompt strings undergo parameter expansion, command substitution, arithmetic expansion, and quote removal after being expanded -as described below (see section 6.9 Controlling the Prompt). +as described below (see section 6.9 Controlling the Prompt). This option is enabled by default.

      restricted_shell
      The shell sets this option if it is started in restricted mode -(see section 6.10 The Restricted Shell). +(see section 6.10 The Restricted Shell). The value may not be changed. This is not reset when the startup files are executed, allowing the startup files to discover whether or not a shell is restricted. @@ -5504,20 +5650,20 @@ When setting or unsetting options, the return status is zero unless an
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      4.4 Special Builtins

      - +

      For historical reasons, the POSIX standard has classified @@ -5543,7 +5689,7 @@ environment after the command completes. When Bash is not executing in POSIX mode, these builtins behave no differently than the rest of the Bash builtin commands. -The Bash POSIX mode is described in 6.11 Bash POSIX Mode. +The Bash POSIX mode is described in 6.11 Bash POSIX Mode.

      These are the POSIX special builtins: @@ -5553,26 +5699,26 @@ shift trap unset


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      5. Shell Variables

      - +

      - - +
      5.1 Bourne Shell Variables  Variables which Bash uses in the same way +
      5.1 Bourne Shell Variables  Variables which Bash uses in the same way as the Bourne Shell.
      5.2 Bash Variables  List of variables that exist in Bash.
      5.2 Bash Variables  List of variables that exist in Bash.

      @@ -5582,20 +5728,20 @@ Bash automatically assigns default values to a number of variables.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      5.1 Bourne Shell Variables

      - +

      Bash uses certain shell variables in the same way as the Bourne shell. @@ -5604,40 +5750,40 @@ In some cases, Bash assigns a default value to the variable.

      - +
      CDPATH -
      +
      A colon-separated list of directories used as a search path for the cd builtin command.

      - +

      HOME -
      +
      The current user's home directory; the default for the cd builtin command. The value of this variable is also used by tilde expansion (see section 3.5.2 Tilde Expansion).

      - +

      IFS -
      +
      A list of characters that separate fields; used when the shell splits words as part of expansion.

      - +

      MAIL -
      +
      If this parameter is set to a filename and the MAILPATH variable is not set, Bash informs the user of the arrival of mail in the specified file.

      - +

      MAILPATH -
      +
      A colon-separated list of filenames which the shell periodically checks for new mail. Each list entry can specify the message that is printed when new mail @@ -5647,21 +5793,21 @@ When used in the text of the message, $_ expands to the name of the current mail file.

      - +

      OPTARG -
      +
      The value of the last option argument processed by the getopts builtin.

      - +

      OPTIND -
      +
      The index of the last option argument processed by the getopts builtin.

      - +

      PATH -
      +
      A colon-separated list of directories in which the shell looks for commands. A zero-length (null) directory name in the value of PATH indicates the @@ -5670,17 +5816,17 @@ A null directory name may appear as two adjacent colons, or as an initial or trailing colon.

      - +

      PS1 -
      +
      The primary prompt string. The default value is `\s-\v\$ '. -See section 6.9 Controlling the Prompt, for the complete list of escape +See section 6.9 Controlling the Prompt, for the complete list of escape sequences that are expanded before PS1 is displayed.

      - +

      PS2 -
      +
      The secondary prompt string. The default value is `> '.

      @@ -5689,20 +5835,20 @@ The secondary prompt string. The default value is `> '.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      5.2 Bash Variables

      - +

      These variables are set or used by Bash, but other shells @@ -5711,28 +5857,28 @@ do not normally treat them specially. A few variables used by Bash are described in different chapters: variables for controlling the job control facilities -(see section 7.3 Job Control Variables). +(see section 7.3 Job Control Variables).

      - +
      BASH -
      +
      The full pathname used to execute the current instance of Bash.

      - +

      BASHPID -
      +
      Expands to the process id of the current Bash process. This differs from $$ under certain circumstances, such as subshells that do not require Bash to be re-initialized.

      - +

      BASH_ARGC -
      +
      An array variable whose values are the number of parameters in each frame of the current bash execution call stack. The number of parameters to the current subroutine (shell function or script executed @@ -5740,50 +5886,50 @@ with . or source) is at the top of the stack. When a subroutine is executed, the number of parameters passed is pushed onto BASH_ARGC. The shell sets BASH_ARGC only when in extended debugging mode -(see 4.3.2 The Shopt Builtin +(see 4.3.2 The Shopt Builtin for a description of the extdebug option to the shopt builtin).

      - +

      BASH_ARGV -
      +
      An array variable containing all of the parameters in the current bash execution call stack. The final parameter of the last subroutine call is at the top of the stack; the first parameter of the initial call is at the bottom. When a subroutine is executed, the parameters supplied are pushed onto BASH_ARGV. The shell sets BASH_ARGV only when in extended debugging mode -(see 4.3.2 The Shopt Builtin +(see 4.3.2 The Shopt Builtin for a description of the extdebug option to the shopt builtin).

      - +

      BASH_COMMAND -
      +
      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 trap.

      - +

      BASH_ENV -
      +
      If this variable is set when Bash is invoked to execute a shell script, its value is expanded and used as the name of a startup file -to read before executing the script. See section 6.2 Bash Startup Files. +to read before executing the script. See section 6.2 Bash Startup Files.

      - +

      BASH_EXECUTION_STRING -
      +
      The command argument to the `-c' invocation option.

      - +

      BASH_LINENO -
      +
      An array variable whose members are the line numbers in source files corresponding to each member of FUNCNAME. ${BASH_LINENO[$i]} is the line number in the source file where @@ -5793,9 +5939,9 @@ The corresponding source file name is ${BASH_SOURCE[$i]}. Use LINENO to obtain the current line number.

      - +

      BASH_REMATCH -
      +
      An array variable whose members are assigned by the `=~' binary operator to the [[ conditional command (see section 3.2.4.2 Conditional Constructs). @@ -5806,24 +5952,24 @@ string matching the nth parenthesized subexpression. This variable is read-only.

      - +

      BASH_SOURCE -
      +
      An array variable whose members are the source filenames corresponding to the elements in the FUNCNAME array variable.

      - +

      BASH_SUBSHELL -
      +
      Incremented by one each time a subshell or subshell environment is spawned. The initial value is 0.

      - +

      BASH_VERSINFO -
      -A readonly array variable (see section 6.7 Arrays) +
      +A readonly array variable (see section 6.7 Arrays) whose members hold version information for this instance of Bash. The values assigned to the array members are as follows:

      @@ -5857,53 +6003,53 @@ The values assigned to the array members are as follows:

      - +

      BASH_VERSION -
      +
      The version number of the current instance of Bash.

      - +

      COLUMNS -
      +
      Used by the select builtin command to determine the terminal width when printing selection lists. Automatically set upon receipt of a SIGWINCH.

      - +

      COMP_CWORD -
      +
      An index into ${COMP_WORDS} of the word containing the current cursor position. This variable is available only in shell functions invoked by the -programmable completion facilities (see section 8.6 Programmable Completion). +programmable completion facilities (see section 8.6 Programmable Completion).

      - +

      COMP_LINE -
      +
      The current command line. This variable is available only in shell functions and external commands invoked by the -programmable completion facilities (see section 8.6 Programmable Completion). +programmable completion facilities (see section 8.6 Programmable Completion).

      - +

      COMP_POINT -
      +
      The index of the current cursor position relative to the beginning 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 ${#COMP_LINE}. This variable is available only in shell functions and external commands invoked by the -programmable completion facilities (see section 8.6 Programmable Completion). +programmable completion facilities (see section 8.6 Programmable Completion).

      - +

      COMP_TYPE -
      +
      Set to an integer value corresponding to the type of completion attempted that caused a completion function to be called: TAB, for normal completion, @@ -5914,47 +6060,47 @@ or `%', for menu completion. This variable is available only in shell functions and external commands invoked by the -programmable completion facilities (see section 8.6 Programmable Completion). +programmable completion facilities (see section 8.6 Programmable Completion).

      - +

      COMP_KEY -
      +
      The key (or final key of a key sequence) used to invoke the current completion function.

      - +

      COMP_WORDBREAKS -
      +
      The set of characters that the Readline library treats as word separators when performing word completion. If COMP_WORDBREAKS is unset, it loses its special properties, even if it is subsequently reset.

      - +

      COMP_WORDS -
      +
      An array variable consisting of the individual words in the current command line. The words are split on shell metacharacters as the shell parser would separate them. This variable is available only in shell functions invoked by the -programmable completion facilities (see section 8.6 Programmable Completion). +programmable completion facilities (see section 8.6 Programmable Completion).

      - +

      COMPREPLY -
      +
      An array variable from which Bash reads the possible completions generated by a shell function invoked by the programmable completion -facility (see section 8.6 Programmable Completion). +facility (see section 8.6 Programmable Completion).

      - +

      DIRSTACK -
      +
      An array variable containing the current contents of the directory stack. Directories appear in the stack in the order they are displayed by the dirs builtin. @@ -5966,31 +6112,31 @@ If DIRSTACK is unset, it loses its special properties, even if it is subsequently reset.

      - +

      EMACS -
      +
      If Bash 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.

      - +

      EUID -
      +
      The numeric effective user id of the current user. This variable is readonly.

      - +

      FCEDIT -
      +
      The editor used as a default by the `-e' option to the fc builtin command.

      - +

      FIGNORE -
      +
      A colon-separated list of suffixes to ignore when performing filename completion. A file name whose suffix matches one of the entries in @@ -5999,9 +6145,9 @@ is excluded from the list of matched file names. A sample value is `.o:~'

      - +

      FUNCNAME -
      +
      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 @@ -6013,9 +6159,9 @@ If FUNCNAME is unset, it loses its special properties, even if it is subsequently reset.

      - +

      GLOBIGNORE -
      +
      A colon-separated list of patterns defining the set of filenames to be ignored by filename expansion. If a filename matched by a filename expansion pattern also matches one @@ -6023,9 +6169,9 @@ of the patterns in GLOBIGNORE, it is removed from the list of matches.

      - +

      GROUPS -
      +
      An array variable containing the list of groups of which the current user is a member. Assignments to GROUPS have no effect and return an error status. @@ -6033,11 +6179,11 @@ If GROUPS is unset, it loses its special properties, even if it is subsequently reset.

      - +

      histchars -
      +
      Up to three characters which control history expansion, quick -substitution, and tokenization (see section 9.3 History Expansion). +substitution, and tokenization (see section 9.3 History Expansion). The first character is the history expansion character, that is, the character which signifies the start of a history expansion, normally `!'. The second character is the @@ -6050,17 +6196,17 @@ remaining words on the line. It does not necessarily cause the shell parser to treat the rest of the line as a comment.

      - +

      HISTCMD -
      +
      The history number, or index in the history list, of the current command. If HISTCMD is unset, it loses its special properties, even if it is subsequently reset.

      - +

      HISTCONTROL -
      +
      A colon-separated list of values controlling how commands are saved on the history list. If the list of values includes `ignorespace', lines which begin @@ -6081,16 +6227,16 @@ not tested, and are added to the history regardless of the value of HISTCONTROL.

      - +

      HISTFILE -
      +
      The name of the file to which the command history is saved. The default value is `~/.bash_history'.

      - +

      HISTFILESIZE -
      +
      The maximum number of lines contained in the history file. When this variable is assigned a value, the history file is truncated, if necessary, by removing the oldest entries, @@ -6100,9 +6246,9 @@ writing it when an interactive shell exits. The default value is 500.

      - +

      HISTIGNORE -
      +
      A colon-separated list of patterns used to decide which command lines should be saved on the history list. Each pattern is anchored at the beginning of the line and must match the complete @@ -6124,16 +6270,16 @@ Combining these two patterns, separating them with a colon, provides the functionality of ignoreboth.

      - +

      HISTSIZE -
      +
      The maximum number of commands to remember on the history list. The default value is 500.

      - +

      HISTTIMEFORMAT -
      +
      If this variable is set and not null, its value is used as a format string for strftime to print the time stamp associated with each history entry displayed by the history builtin. @@ -6143,9 +6289,9 @@ This uses the history comment character to distinguish timestamps from other history lines.

      - +

      HOSTFILE -
      +
      Contains the name of a file in the same format as `/etc/hosts' that should be read when the shell needs to complete a hostname. The list of possible hostname completions may be changed while the shell @@ -6158,21 +6304,21 @@ If HOSTFILE is set, but has no value, Bash attempts to read When HOSTFILE is unset, the hostname list is cleared.

      - +

      HOSTNAME -
      +
      The name of the current host.

      - +

      HOSTTYPE -
      +
      A string describing the machine Bash is running on.

      - +

      IGNOREEOF -
      +
      Controls the action of the shell on receipt of an EOF character as the sole input. If set, the value denotes the number of consecutive EOF characters that can be read as the @@ -6183,30 +6329,30 @@ If the variable does not exist, then EOF signifies the end of input to the shell. This is only in effect for interactive shells.

      - +

      INPUTRC -
      +
      The name of the Readline initialization file, overriding the default of `~/.inputrc'.

      - +

      LANG -
      +
      Used to determine the locale category for any category not specifically selected with a variable starting with LC_.

      - +

      LC_ALL -
      +
      This variable overrides the value of LANG and any other LC_ variable specifying a locale category.

      - +

      LC_COLLATE -
      +
      This variable determines the collation order used when sorting the results of filename expansion, and determines the behavior of range expressions, equivalence classes, @@ -6214,51 +6360,51 @@ and collating sequences within filename expansion and pattern matching (see section 3.5.8 Filename Expansion).

      - +

      LC_CTYPE -
      +
      This variable determines the interpretation of characters and the behavior of character classes within filename expansion and pattern matching (see section 3.5.8 Filename Expansion).

      - +

      LC_MESSAGES -
      +
      This variable determines the locale used to translate double-quoted strings preceded by a `$' (see section 3.1.2.5 Locale-Specific Translation).

      - +

      LC_NUMERIC -
      +
      This variable determines the locale category used for number formatting.

      - +

      LINENO -
      +
      The line number in the script or shell function currently executing.

      - +

      LINES -
      +
      Used by the select builtin command to determine the column length for printing selection lists. Automatically set upon receipt of a SIGWINCH.

      - +

      MACHTYPE -
      +
      A string that fully describes the system type on which Bash is executing, in the standard GNU cpu-company-system format.

      - +

      MAILCHECK -
      +
      How often (in seconds) that the shell should check for mail in the files specified in the MAILPATH or MAIL variables. The default is 60 seconds. When it is time to check @@ -6267,39 +6413,39 @@ If this variable is unset, or set to a value that is not a number greater than or equal to zero, the shell disables mail checking.

      - +

      OLDPWD -
      +
      The previous working directory as set by the cd builtin.

      - +

      OPTERR -
      +
      If set to the value 1, Bash displays error messages generated by the getopts builtin command.

      - +

      OSTYPE -
      +
      A string describing the operating system Bash is running on.

      - +

      PIPESTATUS -
      -An array variable (see section 6.7 Arrays) +
      +An array variable (see section 6.7 Arrays) containing a list of exit status values from the processes in the most-recently-executed foreground pipeline (which may contain only a single command).

      - +

      POSIXLY_CORRECT -
      +
      If this variable is in the environment when bash starts, the shell -enters POSIX mode (see section 6.11 Bash POSIX Mode) before reading the +enters POSIX mode (see section 6.11 Bash POSIX Mode) before reading the startup files, as if the `--posix' invocation option had been supplied. If it is set while the shell is running, bash enables POSIX mode, as if the command @@ -6307,61 +6453,61 @@ as if the command had been executed.

      - +

      PPID -
      +
      The process ID of the shell's parent process. This variable is readonly.

      - +

      PROMPT_COMMAND -
      +
      If set, the value is interpreted as a command to execute before the printing of each primary prompt ($PS1).

      - +

      PS3 -
      +
      The value of this variable is used as the prompt for the select command. If this variable is not set, the select command prompts with `#? '

      - +

      PS4 -
      +
      The value is the prompt printed before the command line is echoed -when the `-x' option is set (see section 4.3.1 The Set Builtin). +when the `-x' option is set (see section 4.3.1 The Set Builtin). The first character of PS4 is replicated multiple times, as necessary, to indicate multiple levels of indirection. The default is `+ '.

      - +

      PWD -
      +
      The current working directory as set by the cd builtin.

      - +

      RANDOM -
      +
      Each time this parameter is referenced, a random integer between 0 and 32767 is generated. Assigning a value to this variable seeds the random number generator.

      - +

      REPLY -
      +
      The default variable for the read builtin.

      - +

      SECONDS -
      +
      This variable expands to the number of seconds since the shell was started. Assignment to this variable resets the count to the value assigned, and the expanded value @@ -6369,20 +6515,20 @@ becomes the value assigned plus the number of seconds since the assignment.

      - +

      SHELL -
      +
      The full pathname to the shell is kept in this environment variable. If it is not set when the shell starts, Bash assigns to it the full pathname of the current user's login shell.

      - +

      SHELLOPTS -
      +
      A colon-separated list of enabled shell options. Each word in the list is a valid argument for the `-o' option to the -set builtin command (see section 4.3.1 The Set Builtin). +set builtin command (see section 4.3.1 The Set Builtin). The options appearing in SHELLOPTS are those reported as `on' by `set -o'. If this variable is in the environment when Bash @@ -6390,16 +6536,16 @@ starts up, each shell option in the list will be enabled before reading any startup files. This variable is readonly.

      - +

      SHLVL -
      +
      Incremented by one each time a new instance of Bash is started. This is intended to be a count of how deeply your Bash shells are nested.

      - +

      TIMEFORMAT -
      +
      The value of this parameter is used as a format string specifying how the timing information for pipelines prefixed with the time reserved word should be displayed. @@ -6452,11 +6598,11 @@ If this variable is not set, Bash acts as if it had the value A trailing newline is added when the format string is displayed.

      - +

      TMOUT -
      +
      If set to a value greater than zero, TMOUT is treated as the -default timeout for the read builtin (see section 4.2 Bash Builtin Commands). +default timeout for the read builtin (see section 4.2 Bash Builtin Commands). The select command (see section 3.2.4.2 Conditional Constructs) terminates if input does not arrive after TMOUT seconds when input is coming from a terminal. @@ -6469,16 +6615,16 @@ Bash terminates after that number of seconds if input does not arrive.

      - +

      TMPDIR -
      +
      If set, Bash uses its value as the name of a directory in which Bash creates temporary files for the shell's use.

      - +

      UID -
      +
      The numeric real user id of the current user. This variable is readonly.

      @@ -6487,59 +6633,59 @@ The numeric real user id of the current user. This variable is readonly.


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6. Bash Features

      - +

      This section describes features unique to Bash.

      - - - - + + - - - - - - - + + + + + +
      6.1 Invoking Bash  Command line options that you can give +
      6.1 Invoking Bash  Command line options that you can give to Bash.
      6.2 Bash Startup Files  When and how Bash executes scripts.
      6.3 Interactive Shells  What an interactive shell is.
      6.4 Bash Conditional Expressions  Primitives used in composing expressions for +
      6.2 Bash Startup Files  When and how Bash executes scripts.
      6.3 Interactive Shells  What an interactive shell is.
      6.4 Bash Conditional Expressions  Primitives used in composing expressions for the test builtin.
      6.5 Shell Arithmetic  Arithmetic on shell variables.
      6.6 Aliases  Substituting one command for another.
      6.7 Arrays  Array Variables.
      6.8 The Directory Stack  History of visited directories.
      6.9 Controlling the Prompt  Controlling the PS1 string.
      6.10 The Restricted Shell  A more controlled mode of shell execution.
      6.11 Bash POSIX Mode  Making Bash behave more closely to what +
      6.5 Shell Arithmetic  Arithmetic on shell variables.
      6.6 Aliases  Substituting one command for another.
      6.7 Arrays  Array Variables.
      6.8 The Directory Stack  History of visited directories.
      6.9 Controlling the Prompt  Controlling the PS1 string.
      6.10 The Restricted Shell  A more controlled mode of shell execution.
      6.11 Bash POSIX Mode  Making Bash behave more closely to what the POSIX standard specifies.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.1 Invoking Bash

      - +

       
      bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o option] [-O shopt_option] [argument ...]
      @@ -6548,7 +6694,7 @@ bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o option] [-O shopt_
       

      In addition to the single-character shell command-line options -(see section 4.3.1 The Set Builtin), there are several multi-character +(see section 4.3.1 The Set Builtin), there are several multi-character options that you can use. These options must appear on the command line before the single-character options to be recognized.

      @@ -6556,10 +6702,10 @@ line before the single-character options to be recognized.

      --debugger
      Arrange for the debugger profile to be executed before the shell -starts. Turns on extended debugging mode (see 4.3.2 The Shopt Builtin +starts. Turns on extended debugging mode (see 4.3.2 The Shopt Builtin for a description of the extdebug option to the shopt builtin) and shell function tracing -(see 4.3.1 The Set Builtin for a description of the -o functrace +(see 4.3.1 The Set Builtin for a description of the -o functrace option).

      @@ -6589,7 +6735,7 @@ in an interactive shell.

      --noediting -
      Do not use the GNU Readline library (see section 8. Command Line Editing) +
      Do not use the GNU Readline library (see section 8. Command Line Editing) to read command lines when the shell is interactive.

      @@ -6610,12 +6756,12 @@ invoked as sh.

      Change the behavior of Bash where the default operation differs from the POSIX standard to match the standard. This is intended to make Bash behave as a strict superset of that -standard. See section 6.11 Bash POSIX Mode, for a description of the Bash +standard. See section 6.11 Bash POSIX Mode, for a description of the Bash POSIX mode.

      --restricted -
      Make the shell a restricted shell (see section 6.10 The Restricted Shell). +
      Make the shell a restricted shell (see section 6.10 The Restricted Shell).

      --verbose @@ -6643,7 +6789,7 @@ positional parameters, starting with $0.
      -i
      Force the shell to run interactively. Interactive shells are -described in 6.3 Interactive Shells. +described in 6.3 Interactive Shells.

      -l @@ -6654,12 +6800,12 @@ When the shell is not interactive, the login shell startup files will be executed. `exec bash -l' or `exec bash --login' will replace the current shell with a Bash login shell. -See section 6.2 Bash Startup Files, for a description of the special behavior +See section 6.2 Bash Startup Files, for a description of the special behavior of a login shell.

      -r -
      Make the shell a restricted shell (see section 6.10 The Restricted Shell). +
      Make the shell a restricted shell (see section 6.10 The Restricted Shell).

      -s @@ -6680,7 +6826,7 @@ This implies the `-n' option; no commands will be executed.
      [-+]O [shopt_option]
      shopt_option is one of the shell options accepted by the -shopt builtin (see section 4.3.2 The Shopt Builtin). +shopt builtin (see section 4.3.2 The Shopt Builtin). If shopt_option is present, `-O' sets the value of that option; `+O' unsets it. If shopt_option is not supplied, the names and values of the shell @@ -6698,24 +6844,24 @@ Any arguments after the -- are treated as filenames and arguments.

      - + A login shell is one whose first character of argument zero is `-', or one invoked with the `--login' option.

      - + An interactive shell is one started without non-option arguments, unless `-s' is specified, without specifying the `-c' option, and whose input and output are both connected to terminals (as determined by isatty(3)), or one -started with the `-i' option. See section 6.3 Interactive Shells, for more +started with the `-i' option. See section 6.3 Interactive Shells, for more information.

      If arguments remain after option processing, and neither the `-c' nor the `-s' option has been supplied, the first argument is assumed to -be the name of a file containing shell commands (see section 3.8 Shell Scripts). +be the name of a file containing shell commands (see section 3.8 Shell Scripts). When Bash is invoked in this fashion, $0 is set to the name of the file, and the positional parameters are set to the remaining arguments. @@ -6726,20 +6872,20 @@ in the script. If no commands are executed, the exit status is 0.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.2 Bash Startup Files

      - +

      This section describes how Bash executes its startup files. @@ -6748,12 +6894,12 @@ Tildes are expanded in file names as described above under Tilde Expansion (see section 3.5.2 Tilde Expansion).

      -Interactive shells are described in 6.3 Interactive Shells. +Interactive shells are described in 6.3 Interactive Shells.

      - +

      Invoked as an interactive login shell, or with `--login'

      - +

      When Bash is invoked as an interactive login shell, or as a @@ -6770,9 +6916,9 @@ When a login shell exits, Bash reads and executes commands from the file `~/.bash_logout', if it exists.

      - +

      Invoked as an interactive non-login shell

      - +

      When an interactive shell that is not a login shell is started, Bash @@ -6787,9 +6933,9 @@ So, typically, your `~/.bash_profile' contains the line after (or before) any login-specific initializations.

      - +

      Invoked non-interactively

      - +

      When Bash is started non-interactively, to run a shell script, @@ -6807,9 +6953,9 @@ As noted above, if a non-interactive shell is invoked with the login shell startup files.

      - +

      Invoked with name sh

      - +

      If Bash is invoked with the name sh, it tries to mimic the @@ -6836,9 +6982,9 @@ When invoked as sh, Bash enters POSIX mode after the startup files are read.

      - +

      Invoked in POSIX mode

      - +

      When Bash is started in POSIX mode, as with the @@ -6850,9 +6996,9 @@ expanded value. No other startup files are read.

      - +

      Invoked by remote shell daemon

      - +

      Bash attempts to determine when it is being run with its standard input @@ -6868,9 +7014,9 @@ The `--norc' option may be used to inhibit this behavior, and the allow them to be specified.

      - +

      Invoked with unequal effective and real UID/GIDs

      - +

      If Bash is started with the effective user (group) id not equal to the @@ -6884,45 +7030,45 @@ the same, but the effective user id is not reset.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.3 Interactive Shells

      - +

      - - - + + +
      6.3.1 What is an Interactive Shell?  What determines whether a shell is Interactive.
      6.3.2 Is this Shell Interactive?  How to tell if a shell is interactive.
      6.3.3 Interactive Shell Behavior  What changes in a interactive shell?
      6.3.1 What is an Interactive Shell?  What determines whether a shell is Interactive.
      6.3.2 Is this Shell Interactive?  How to tell if a shell is interactive.
      6.3.3 Interactive Shell Behavior  What changes in a interactive shell?


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.3.1 What is an Interactive Shell?

      - +

      An interactive shell @@ -6943,20 +7089,20 @@ when an interactive shell is started.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.3.2 Is this Shell Interactive?

      - +

      To determine within a startup script whether or not Bash is @@ -6985,20 +7131,20 @@ fi


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.3.3 Interactive Shell Behavior

      - +

      When the shell is running interactively, it changes its behavior in @@ -7007,11 +7153,11 @@ several ways.

      1. -Startup files are read and executed as described in 6.2 Bash Startup Files. +Startup files are read and executed as described in 6.2 Bash Startup Files.

      2. -Job Control (see section 7. Job Control) is enabled by default. When job +Job Control (see section 7. Job Control) is enabled by default. When job control is in effect, Bash ignores the keyboard-generated job control signals SIGTTIN, SIGTTOU, and SIGTSTP.

        @@ -7025,63 +7171,63 @@ second and subsequent lines of a multi-line command.

      3. Bash executes the value of the PROMPT_COMMAND variable as a command before printing the primary prompt, $PS1 -(see section 5.2 Bash Variables). +(see section 5.2 Bash Variables).

      4. -Readline (see section 8. Command Line Editing) is used to read commands from +Readline (see section 8. Command Line Editing) is used to read commands from the user's terminal.

      5. Bash inspects the value of the ignoreeof option to set -o instead of exiting immediately when it receives an EOF on its -standard input when reading a command (see section 4.3.1 The Set Builtin). +standard input when reading a command (see section 4.3.1 The Set Builtin).

      6. -Command history (see section 9.1 Bash History Facilities) -and history expansion (see section 9.3 History Expansion) +Command history (see section 9.1 Bash History Facilities) +and history expansion (see section 9.3 History Expansion) are enabled by default. Bash will save the command history to the file named by $HISTFILE when an interactive shell exits.

      7. -Alias expansion (see section 6.6 Aliases) is performed by default. +Alias expansion (see section 6.6 Aliases) is performed by default.

      8. In the absence of any traps, Bash ignores SIGTERM -(see section 3.7.6 Signals). +(see section 3.7.6 Signals).

      9. In the absence of any traps, SIGINT is caught and handled -((see section 3.7.6 Signals). +((see section 3.7.6 Signals). SIGINT will interrupt some shell builtins.

      10. An interactive login shell sends a SIGHUP to all jobs on exit -if the huponexit shell option has been enabled (see section 3.7.6 Signals). +if the huponexit shell option has been enabled (see section 3.7.6 Signals).

      11. The `-n' invocation option is ignored, and `set -n' has -no effect (see section 4.3.1 The Set Builtin). +no effect (see section 4.3.1 The Set Builtin).

      12. Bash will check for mail periodically, depending on the values of the MAIL, MAILPATH, and MAILCHECK shell variables -(see section 5.2 Bash Variables). +(see section 5.2 Bash Variables).

      13. Expansion errors due to references to unbound shell variables after `set -u' has been enabled will not cause the shell to exit -(see section 4.3.1 The Set Builtin). +(see section 4.3.1 The Set Builtin).

      14. @@ -7097,12 +7243,12 @@ shell to exit.
      15. When running in POSIX mode, a special builtin returning an error -status will not cause the shell to exit (see section 6.11 Bash POSIX Mode). +status will not cause the shell to exit (see section 6.11 Bash POSIX Mode).

      16. A failed exec will not cause the shell to exit -(see section 4.1 Bourne Shell Builtins). +(see section 4.1 Bourne Shell Builtins).

      17. @@ -7112,13 +7258,13 @@ Parser syntax errors will not cause the shell to exit.
      18. Simple spelling correction for directory arguments to the cd builtin is enabled by default (see the description of the cdspell -option to the shopt builtin in 4.3.2 The Shopt Builtin). +option to the shopt builtin in 4.3.2 The Shopt Builtin).

      19. The shell will check the value of the TMOUT variable and exit if a command is not read within the specified number of seconds after -printing $PS1 (see section 5.2 Bash Variables). +printing $PS1 (see section 5.2 Bash Variables).

      @@ -7126,20 +7272,20 @@ printing $PS1 (see section 5.2 Bash Va
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.4 Bash Conditional Expressions

      - +

      Conditional expressions are used by the [[ compound command @@ -7263,7 +7409,7 @@ inode numbers.

      -o optname
      True if shell option optname is enabled. The list of options appears in the description of the `-o' -option to the set builtin (see section 4.3.1 The Set Builtin). +option to the set builtin (see section 4.3.1 The Set Builtin).

      -z string @@ -7309,20 +7455,20 @@ may be positive or negative integers.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.5 Shell Arithmetic

      - +

      The shell allows arithmetic expressions to be evaluated, as one of @@ -7448,20 +7594,20 @@ rules above.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.6 Aliases

      - +

      Aliases allow a string to be substituted for a word when it is used @@ -7500,7 +7646,7 @@ If arguments are needed, a shell function should be used Aliases are not expanded when the shell is not interactive, unless the expand_aliases shell option is set using -shopt (see section 4.3.2 The Shopt Builtin). +shopt (see section 4.3.2 The Shopt Builtin).

      The rules concerning the definition and use of aliases are @@ -7528,20 +7674,20 @@ For almost every purpose, shell functions are preferred over aliases.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.7 Arrays

      - +

      Bash provides one-dimensional array variables. Any variable may be used as @@ -7630,24 +7776,24 @@ reused as input.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.8 The Directory Stack

      - +

      -
      6.8.1 Directory Stack Builtins  Bash builtin commands to manipulate +
      6.8.1 Directory Stack Builtins  Bash builtin commands to manipulate the directory stack.

      @@ -7666,26 +7812,26 @@ as the value of the DIRSTACK shell variable.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.8.1 Directory Stack Builtins

      - +

      dirs -
      +
       
      dirs [+N | -N] [-clpv]
       
      Display the list of currently remembered directories. Directories are added to the list with the pushd command; the @@ -7714,7 +7860,7 @@ line, prefixing each entry with its index in the stack.

      popd -
      +
       
      popd [+N | -N] [-n]
       

      @@ -7738,7 +7884,7 @@ from the stack, so that only the stack is manipulated.

      - +

      pushd
       
      pushd [-n] [+N | -N | dir ]
       

      @@ -7772,20 +7918,20 @@ executes the equivalent of `cd dir'.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.9 Controlling the Prompt

      - +

      The value of the variable PROMPT_COMMAND is examined just before @@ -7863,7 +8009,7 @@ embed a terminal control sequence into the prompt. The command number and the history number are usually different: the history number of a command is its position in the history list, which may include commands restored from the history file -(see section 9.1 Bash History Facilities), while the command number is +(see section 9.1 Bash History Facilities), while the command number is the position in the sequence of commands executed during the current shell session.

      @@ -7871,25 +8017,25 @@ shell session. After the string is decoded, it is expanded via parameter expansion, command substitution, arithmetic expansion, and quote removal, subject to the value of the -promptvars shell option (see section 4.2 Bash Builtin Commands). +promptvars shell option (see section 4.2 Bash Builtin Commands).


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.10 The Restricted Shell

      - +

      If Bash is started with the name rbash, or the @@ -7942,26 +8088,26 @@ These restrictions are enforced after any startup files are read.

      When a command that is found to be a shell script is executed -(see section 3.8 Shell Scripts), rbash turns off any restrictions in +(see section 3.8 Shell Scripts), rbash turns off any restrictions in the shell spawned to execute the script.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      6.11 Bash POSIX Mode

      - +

      Starting Bash with the `--posix' command-line option or executing @@ -8238,25 +8384,25 @@ the echo builtin to be fully conformant. Bash can be configured to be POSIX-conformant by default, by specifying the `--enable-strict-posix-default' to configure when building -(see section 10.8 Optional Features). +(see section 10.8 Optional Features).


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      7. Job Control

      - +

      This chapter discusses what job control is, how it works, and how @@ -8264,30 +8410,30 @@ Bash allows you to access its facilities.

      - - + -
      7.1 Job Control Basics  How job control works.
      7.2 Job Control Builtins  Bash builtin commands used to interact +
      7.1 Job Control Basics  How job control works.
      7.2 Job Control Builtins  Bash builtin commands used to interact with job control.
      7.3 Job Control Variables  Variables Bash uses to customize job +
      7.3 Job Control Variables  Variables Bash uses to customize job control.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      7.1 Job Control Basics

      - +

      Job control @@ -8377,13 +8523,13 @@ Normally, Bash waits until it is about to print a prompt before reporting changes in a job's status so as to not interrupt any other output. If the `-b' option to the set builtin is enabled, -Bash reports such changes immediately (see section 4.3.1 The Set Builtin). +Bash reports such changes immediately (see section 4.3.1 The Set Builtin). Any trap on SIGCHLD is executed for each child process that exits.

      If an attempt to exit Bash is made while jobs are stopped, (or running, if -the checkjobs option is enabled -- see 4.3.2 The Shopt Builtin), the +the checkjobs option is enabled -- see 4.3.2 The Shopt Builtin), the shell prints a warning message, and if the checkjobs option is enabled, lists the jobs and their statuses. The jobs command may then be used to inspect their status. @@ -8393,26 +8539,26 @@ Bash does not print another warning, and any stopped jobs are terminated.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      7.2 Job Control Builtins

      - +

      bg -
      +
       
      bg [jobspec ...]
       
      Resume each suspended job jobspec in the background, as if it had been started with `&'. @@ -8424,7 +8570,7 @@ that was started without job control.

      fg -
      +
       
      fg [jobspec]
       
      Resume the job jobspec in the foreground and make it the current job. If jobspec is not supplied, the current job is used. @@ -8435,7 +8581,7 @@ job control enabled, jobspec does not specify a valid job or

      jobs -
      +
       
      jobs [-lnprs] [jobspec]
       jobs -x command [arguments]
       

      @@ -8480,7 +8626,7 @@ passing it arguments, returning its exit status.

      kill -
      +
       
      kill [-s sigspec] [-n signum] [-sigspec] jobspec or pid
       kill -l [exit_status]
       
      Send a signal specified by sigspec or signum to the process @@ -8500,7 +8646,7 @@ or non-zero if an error occurs or an invalid option is encountered.

      wait -
      +
       
      wait [jobspec or pid ...]
       
      Wait until the child process specified by each process ID pid or job specification jobspec exits and return the exit status of the @@ -8513,7 +8659,7 @@ of the shell, the return status is 127.

      disown -
      +
       
      disown [-ar] [-h] [jobspec ...]
       
      Without options, each jobspec is removed from the table of active jobs. @@ -8528,7 +8674,7 @@ argument restricts operation to running jobs.

      suspend -
      +
       
      suspend [-f]
       
      Suspend the execution of this shell until it receives a SIGCONT signal. The `-f' option means to suspend @@ -8545,27 +8691,27 @@ supplied process IDs.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      7.3 Job Control Variables

      - +

      - +
      auto_resume -
      +
      This variable controls how the shell interacts with the user and job control. If this variable exists then single word simple commands without redirections are treated as candidates for resumption @@ -8578,7 +8724,7 @@ the string supplied must match the name of a stopped job exactly; if set to `substring', the string supplied needs to match a substring of the name of a stopped job. The `substring' value provides functionality -analogous to the `%?' job ID (see section 7.1 Job Control Basics). +analogous to the `%?' job ID (see section 7.1 Job Control Basics). 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 `%' job ID. @@ -8587,25 +8733,25 @@ analogous to the `%' job ID.

      - +


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8. Command Line Editing

      - +

      This chapter describes the basic features of the GNU @@ -8615,36 +8761,36 @@ used by several different programs, including Bash.

      - - - - + + + - - -
      8.1 Introduction to Line Editing  Notation used in this text.
      8.2 Readline Interaction  The minimum set of commands for editing a line.
      8.3 Readline Init File  Customizing Readline from a user's view.
      8.4 Bindable Readline Commands  A description of most of the Readline commands +
      8.1 Introduction to Line Editing  Notation used in this text.
      8.2 Readline Interaction  The minimum set of commands for editing a line.
      8.3 Readline Init File  Customizing Readline from a user's view.
      8.4 Bindable Readline Commands  A description of most of the Readline commands available for binding
      8.5 Readline vi Mode  A short description of how to make Readline +
      8.5 Readline vi Mode  A short description of how to make Readline behave like the vi editor.
      8.6 Programmable Completion  How to specify the possible completions for +
      8.6 Programmable Completion  How to specify the possible completions for a specific command.
      8.7 Programmable Completion Builtins  Builtin commands to specify how to +
      8.7 Programmable Completion Builtins  Builtin commands to specify how to complete arguments for a particular command.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.1 Introduction to Line Editing

      - +

      The following paragraphs describe the notation used to represent @@ -8681,7 +8827,7 @@ character produced by metafying C-k. In addition, several keys have their own names. Specifically, DEL, ESC, LFD, SPC, RET, and TAB all stand for themselves when seen in this text, or in an init file -(see section 8.3 Readline Init File). +(see section 8.3 Readline Init File). If your keyboard lacks a LFD key, typing C-j will produce the desired character. The RET key may be labeled Return or Enter on @@ -8690,20 +8836,20 @@ some keyboards.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.2 Readline Interaction

      - +

      Often during an interactive session you type in a long line of text, @@ -8719,30 +8865,30 @@ regardless of the location of the cursor within the line.

      - - - - - + + + + +
      8.2.1 Readline Bare Essentials  The least you need to know about Readline.
      8.2.2 Readline Movement Commands  Moving about the input line.
      8.2.3 Readline Killing Commands  How to delete text, and how to get it back!
      8.2.4 Readline Arguments  Giving numeric arguments to commands.
      8.2.5 Searching for Commands in the History  Searching through previous lines.
      8.2.1 Readline Bare Essentials  The least you need to know about Readline.
      8.2.2 Readline Movement Commands  Moving about the input line.
      8.2.3 Readline Killing Commands  How to delete text, and how to get it back!
      8.2.4 Readline Arguments  Giving numeric arguments to commands.
      8.2.5 Searching for Commands in the History  Searching through previous lines.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.2.1 Readline Bare Essentials

      - +

      In order to enter characters into the line, simply type them. The typed @@ -8791,20 +8937,20 @@ than the character to the left of the cursor.)


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.2.2 Readline Movement Commands

      - +

      The above table describes the most basic keystrokes that you need @@ -8835,24 +8981,24 @@ operate on characters while meta keystrokes operate on words.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.2.3 Readline Killing Commands

      - +

      - +

      Killing text means to delete the text from the line, but to save @@ -8872,7 +9018,7 @@ that when you yank it back, you get it all. The kill ring is not line specific; the text that you killed on a previously typed line is available to be yanked back later, when you are typing another line. - +

      Here is the list of commands for killing text. @@ -8920,20 +9066,20 @@ the prior command is C-y or M-y.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.2.4 Readline Arguments

      - +

      You can pass numeric arguments to Readline commands. Sometimes the @@ -8955,24 +9101,24 @@ which will delete the next ten characters on the input line.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.2.5 Searching for Commands in the History

      - +

      Readline provides commands for searching through the command history -(see section 9.1 Bash History Facilities) +(see section 9.1 Bash History Facilities) for lines containing a specified string. There are two search modes: incremental and non-incremental.

      @@ -9018,20 +9164,20 @@ typed by the user or be part of the contents of the current line.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.3 Readline Init File

      - +

      Although the Readline library comes with a set of Emacs-like @@ -9055,43 +9201,43 @@ incorporating any changes that you might have made to it.

      - +
      8.3.1 Readline Init File Syntax  Syntax for the commands in the inputrc file.
      8.3.1 Readline Init File Syntax  Syntax for the commands in the inputrc file.

      - +
      8.3.2 Conditional Init Constructs  Conditional key bindings in the inputrc file.
      8.3.2 Conditional Init Constructs  Conditional key bindings in the inputrc file.

      - +
      8.3.3 Sample Init File  An example inputrc file.
      8.3.3 Sample Init File  An example inputrc file.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.3.1 Readline Init File Syntax

      - +

      There are only a few basic constructs allowed in the Readline init file. Blank lines are ignored. Lines beginning with a `#' are comments. Lines beginning with a `$' indicate conditional -constructs (see section 8.3.2 Conditional Init Constructs). Other lines +constructs (see section 8.3.2 Conditional Init Constructs). Other lines denote variable settings and key bindings.

      @@ -9124,18 +9270,18 @@ value results in the variable being set to off.

      The bind -V command lists the current Readline variable names -and values. See section 4.2 Bash Builtin Commands. +and values. See section 4.2 Bash Builtin Commands.

      A great deal of run-time behavior is changeable with the following variables.

      - +

      bell-style -
      +
      Controls what happens when Readline wants to ring the terminal bell. If set to `none', Readline never rings the bell. If set to `visible', Readline uses a visible bell if one is available. @@ -9144,14 +9290,14 @@ the terminal's bell.

      bind-tty-special-chars -
      +
      If set to `on', Readline attempts to bind the control characters treated specially by the kernel's terminal driver to their Readline equivalents.

      comment-begin -
      +
      The string to insert at the beginning of the line when the insert-comment command is executed. The default value is "#". @@ -9163,8 +9309,16 @@ in a case-insensitive fashion. The default value is `off'.

      +

      completion-prefix-display-length +
      +The length in characters of the common prefix of a list of possible +completions that is displayed without modification. When set to a +value greater than zero, common prefixes longer than this value are +replaced with an ellipsis when displaying possible completions. +

      +

      completion-query-items -
      +
      The number of possible completions that determines when the user is asked whether the list of possibilities should be displayed. If the number of possible completions is greater than this value, @@ -9176,7 +9330,7 @@ The default limit is 100.

      convert-meta -
      +
      If set to `on', Readline will convert characters with the eighth bit set to an ASCII key sequence by stripping the eighth bit and prefixing an ESC character, converting them to a @@ -9184,14 +9338,14 @@ meta-prefixed key sequence. The default value is `on'.

      disable-completion -
      +
      If set to `On', Readline will inhibit word completion. Completion characters will be inserted into the line as if they had been mapped to self-insert. The default is `off'.

      editing-mode -
      +
      The editing-mode variable controls which default set of key bindings is used. By default, Readline starts up in Emacs editing mode, where the keystrokes are most similar to Emacs. This variable can be @@ -9199,20 +9353,20 @@ set to either `emacs' or `vi'.

      enable-keypad -
      +
      When set to `on', Readline will try to enable the application keypad when it is called. Some systems need this to enable the arrow keys. The default is `off'.

      expand-tilde -
      +
      If set to `on', tilde expansion is performed when Readline attempts word completion. The default is `off'.

      history-preserve-point -
      +
      If set to `on', the history code attempts to place the point (the current cursor position) at the same location on each history line retrieved with previous-history @@ -9220,13 +9374,13 @@ or next-history. The default is `off'.

      history-size -
      +
      Set the maximum number of history entries saved in the history list. If set to zero, the number of entries in the history list is not limited.

      horizontal-scroll-mode -
      +
      This variable can be set to either `on' or `off'. Setting it to `on' means that the text of the lines being edited will scroll horizontally on a single screen line when they are longer than the width @@ -9235,8 +9389,8 @@ this variable is set to `off'.

      input-meta -
      - +
      + If set to `on', Readline will enable eight-bit input (it will not clear the eighth bit in the characters it reads), regardless of what the terminal claims it can support. The @@ -9245,15 +9399,15 @@ synonym for this variable.

      isearch-terminators -
      +
      The string of characters that should terminate an incremental search without -subsequently executing the character as a command (see section 8.2.5 Searching for Commands in the History). +subsequently executing the character as a command (see section 8.2.5 Searching for Commands in the History). If this variable has not been given a value, the characters ESC and C-J will terminate an incremental search.

      keymap -
      +
      Sets Readline's idea of the current keymap for key binding commands. Acceptable keymap names are emacs, @@ -9276,14 +9430,14 @@ appended. The default is `on'.

      mark-modified-lines -
      +
      This variable, when set to `on', causes Readline to display an asterisk (`*') at the start of history lines which have been modified. This variable is `off' by default.

      mark-symlinked-directories -
      +
      If set to `on', completed names which are symbolic links to directories have a slash appended (subject to the value of mark-directories). @@ -9291,7 +9445,7 @@ The default is `off'.

      match-hidden-files -
      +
      This variable, when set to `on', causes Readline to match files whose names begin with a `.' (hidden files) when performing filename completion, unless the leading `.' is @@ -9300,14 +9454,14 @@ This variable is `on' by default.

      output-meta -
      +
      If set to `on', Readline will display characters with the eighth bit set directly rather than as a meta-prefixed escape sequence. The default is `off'.

      page-completions -
      +
      If set to `on', Readline uses an internal more-like pager to display a screenful of possible completions at a time. This variable is `on' by default. @@ -9319,8 +9473,16 @@ sorted horizontally in alphabetical order, rather than down the screen. The default is `off'.

      +

      revert-all-at-newline +
      +If set to `on', Readline will undo all changes to history lines +before returning when accept-line is executed. By default, +history lines may be modified and retain individual undo lists across +calls to readline. The default is `off'. +

      +

      show-all-if-ambiguous -
      +
      This alters the default behavior of the completion functions. If set to `on', words which have more than one possible completion cause the @@ -9329,7 +9491,7 @@ The default value is `off'.

      show-all-if-unmodified -
      +
      This alters the default behavior of the completion functions in a fashion similar to show-all-if-ambiguous. If set to `on', @@ -9341,7 +9503,7 @@ The default value is `off'.

      visible-stats -
      +
      If set to `on', a character denoting a file's type is appended to the filename when listing possible completions. The default is `off'. @@ -9374,7 +9536,7 @@ to a string that is inserted when the key is pressed (a macro). The bind -p command displays Readline function names and bindings in a format that can put directly into an initialization file. -See section 4.2 Bash Builtin Commands. +See section 4.2 Bash Builtin Commands.

      @@ -9498,20 +9660,20 @@ insert a single `\' into the line:
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.3.2 Conditional Init Constructs

      - +

      Readline implements a facility similar in spirit to the conditional @@ -9583,20 +9745,20 @@ For example, the following directive reads from `/etc/inputrc':


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.3.3 Sample Init File

      - +

      Here is an example of an inputrc file. This illustrates key @@ -9706,31 +9868,31 @@ $endif


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4 Bindable Readline Commands

      - +

      - - - - - - - - + + + + + + + +
      8.4.1 Commands For Moving  Moving about the line.
      8.4.2 Commands For Manipulating The History  Getting at previous lines.
      8.4.3 Commands For Changing Text  Commands for changing text.
      8.4.4 Killing And Yanking  Commands for killing and yanking.
      8.4.5 Specifying Numeric Arguments  Specifying numeric arguments, repeat counts.
      8.4.6 Letting Readline Type For You  Getting Readline to do the typing for you.
      8.4.7 Keyboard Macros  Saving and re-executing typed characters
      8.4.8 Some Miscellaneous Commands  Other miscellaneous commands.
      8.4.1 Commands For Moving  Moving about the line.
      8.4.2 Commands For Manipulating The History  Getting at previous lines.
      8.4.3 Commands For Changing Text  Commands for changing text.
      8.4.4 Killing And Yanking  Commands for killing and yanking.
      8.4.5 Specifying Numeric Arguments  Specifying numeric arguments, repeat counts.
      8.4.6 Letting Readline Type For You  Getting Readline to do the typing for you.
      8.4.7 Keyboard Macros  Saving and re-executing typed characters
      8.4.8 Some Miscellaneous Commands  Other miscellaneous commands.

      @@ -9738,7 +9900,7 @@ This section describes Readline commands that may be bound to key sequences. You can list your key bindings by executing bind -P or, for a more terse format, suitable for an -inputrc file, bind -p. (See section 4.2 Bash Builtin Commands.) +inputrc file, bind -p. (See section 4.2 Bash Builtin Commands.) Command names without an accompanying key sequence are unbound by default.

      @@ -9750,69 +9912,69 @@ The text between the point and mark is referred to as the region.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.1 Commands For Moving

      - +
      - +
      beginning-of-line (C-a) -
      +
      Move to the start of the current line.

      - +

      end-of-line (C-e) -
      +
      Move to the end of the line.

      - +

      forward-char (C-f) -
      +
      Move forward a character.

      - +

      backward-char (C-b) -
      +
      Move back a character.

      - +

      forward-word (M-f) -
      +
      Move forward to the end of the next word. Words are composed of letters and digits.

      - +

      backward-word (M-b) -
      +
      Move back to the start of the current or previous word. Words are composed of letters and digits.

      - +

      clear-screen (C-l) -
      +
      Clear the screen and redraw the current line, leaving the current line at the top of the screen.

      - +

      redraw-current-line () -
      +
      Refresh the current line. By default, this is unbound.

      @@ -9821,26 +9983,26 @@ Refresh the current line. By default, this is unbound.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.2 Commands For Manipulating The History

      - +

      - +
      accept-line (Newline or Return) -
      +
      Accept the line regardless of where the cursor is. If this line is non-empty, add it to the history list according to the setting of @@ -9849,81 +10011,81 @@ If this line is a modified history line, then restore the history line to its original state.

      - +

      previous-history (C-p) -
      +
      Move `back' through the history list, fetching the previous command.

      - +

      next-history (C-n) -
      +
      Move `forward' through the history list, fetching the next command.

      - +

      beginning-of-history (M-<) -
      +
      Move to the first line in the history.

      - +

      end-of-history (M->) -
      +
      Move to the end of the input history, i.e., the line currently being entered.

      - +

      reverse-search-history (C-r) -
      +
      Search backward starting at the current line and moving `up' through the history as necessary. This is an incremental search.

      - +

      forward-search-history (C-s) -
      +
      Search forward starting at the current line and moving `down' through the the history as necessary. This is an incremental search.

      - +

      non-incremental-reverse-search-history (M-p) -
      +
      Search backward starting at the current line and moving `up' through the history as necessary using a non-incremental search for a string supplied by the user.

      - +

      non-incremental-forward-search-history (M-n) -
      +
      Search forward starting at the current line and moving `down' through the the history as necessary using a non-incremental search for a string supplied by the user.

      - +

      history-search-forward () -
      +
      Search forward through the history for the string of characters between the start of the current line and the point. This is a non-incremental search. By default, this command is unbound.

      - +

      history-search-backward () -
      +
      Search backward through the history for the string of characters between the start of the current line and the point. This is a non-incremental search. By default, this command is unbound.

      - +

      yank-nth-arg (M-C-y) -
      +
      Insert the first argument to the previous command (usually the second word on the previous line) at point. With an argument n, @@ -9934,9 +10096,9 @@ Once the argument n is computed, the argument is extracted as if the `!n' history expansion had been specified.

      - +

      yank-last-arg (M-. or M-_) -
      +
      Insert last argument to the previous command (the last word of the previous history entry). With an argument, behave exactly like yank-nth-arg. @@ -9951,63 +10113,63 @@ as if the `!$' history expansion had been specified.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.3 Commands For Changing Text

      - +

      - +
      delete-char (C-d) -
      +
      Delete the character at point. If point is at the beginning of the line, there are no characters in the line, and the last character typed was not bound to delete-char, then return EOF.

      - +

      backward-delete-char (Rubout) -
      +
      Delete the character behind the cursor. A numeric argument means to kill the characters instead of deleting them.

      - +

      forward-backward-delete-char () -
      +
      Delete the character under the cursor, unless the cursor is at the end of the line, in which case the character behind the cursor is deleted. By default, this is not bound to a key.

      - +

      quoted-insert (C-q or C-v) -
      +
      Add the next character typed to the line verbatim. This is how to insert key sequences like C-q, for example.

      - +

      self-insert (a, b, A, 1, !, ...) -
      +
      Insert yourself.

      - +

      transpose-chars (C-t) -
      +
      Drag the character before the cursor forward over the character at the cursor, moving the cursor forward as well. If the insertion point @@ -10016,39 +10178,39 @@ transposes the last two characters of the line. Negative arguments have no effect.

      - +

      transpose-words (M-t) -
      +
      Drag the word before point past the word after point, moving point past that word as well. If the insertion point is at the end of the line, this transposes the last two words on the line.

      - +

      upcase-word (M-u) -
      +
      Uppercase the current (or following) word. With a negative argument, uppercase the previous word, but do not move the cursor.

      - +

      downcase-word (M-l) -
      +
      Lowercase the current (or following) word. With a negative argument, lowercase the previous word, but do not move the cursor.

      - +

      capitalize-word (M-c) -
      +
      Capitalize the current (or following) word. With a negative argument, capitalize the previous word, but do not move the cursor.

      - +

      overwrite-mode () -
      +
      Toggle overwrite mode. With an explicit positive numeric argument, switches to overwrite mode. With an explicit non-positive numeric argument, switches to insert mode. This command affects only @@ -10070,124 +10232,124 @@ By default, this command is unbound.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.4 Killing And Yanking

      - +

      - +
      kill-line (C-k) -
      +
      Kill the text from point to the end of the line.

      - +

      backward-kill-line (C-x Rubout) -
      +
      Kill backward to the beginning of the line.

      - +

      unix-line-discard (C-u) -
      +
      Kill backward from the cursor to the beginning of the current line.

      - +

      kill-whole-line () -
      +
      Kill all characters on the current line, no matter where point is. By default, this is unbound.

      - +

      kill-word (M-d) -
      +
      Kill from point to the end of the current word, or if between words, to the end of the next word. Word boundaries are the same as forward-word.

      - +

      backward-kill-word (M-DEL) -
      +
      Kill the word behind point. Word boundaries are the same as backward-word.

      - +

      unix-word-rubout (C-w) -
      +
      Kill the word behind point, using white space as a word boundary. The killed text is saved on the kill-ring.

      - +

      unix-filename-rubout () -
      +
      Kill the word behind point, using white space and the slash character as the word boundaries. The killed text is saved on the kill-ring.

      - +

      delete-horizontal-space () -
      +
      Delete all spaces and tabs around point. By default, this is unbound.

      - +

      kill-region () -
      +
      Kill the text in the current region. By default, this command is unbound.

      - +

      copy-region-as-kill () -
      +
      Copy the text in the region to the kill buffer, so it can be yanked right away. By default, this command is unbound.

      - +

      copy-backward-word () -
      +
      Copy the word before point to the kill buffer. The word boundaries are the same as backward-word. By default, this command is unbound.

      - +

      copy-forward-word () -
      +
      Copy the word following point to the kill buffer. The word boundaries are the same as forward-word. By default, this command is unbound.

      - +

      yank (C-y) -
      +
      Yank the top of the kill ring into the buffer at point.

      - +

      yank-pop (M-y) -
      +
      Rotate the kill-ring, and yank the new top. You can only do this if the prior command is yank or yank-pop.
      @@ -10195,32 +10357,32 @@ the prior command is yank or yank-pop.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.5 Specifying Numeric Arguments

      - +
      - +
      digit-argument (M-0, M-1, ... M--) -
      +
      Add this digit to the argument already accumulating, or start a new argument. M-- starts a negative argument.

      - +

      universal-argument () -
      +
      This is another way to specify an argument. If this command is followed by one or more digits, optionally with a leading minus sign, those digits define the argument. @@ -10238,26 +10400,26 @@ By default, this is not bound to a key.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.6 Letting Readline Type For You

      - +

      - +
      complete (TAB) -
      +
      Attempt to perform completion on the text before point. The actual completion performed is application-specific. Bash attempts completion treating the text as a variable (if the @@ -10267,22 +10429,22 @@ command (including aliases and functions) in turn. If none of these produces a match, filename completion is attempted.

      - +

      possible-completions (M-?) -
      +
      List the possible completions of the text before point.

      - +

      insert-completions (M-*) -
      +
      Insert all completions of the text before point that would have been generated by possible-completions.

      - +

      menu-complete () -
      +
      Similar to complete, but replaces the word to be completed with a single match from the list of possible completions. Repeated execution of menu-complete steps through the list @@ -10297,9 +10459,9 @@ This command is intended to be bound to TAB, but is unbound by default.

      - +

      delete-char-or-list () -
      +
      Deletes the character under the cursor if not at the beginning or end of the line (like delete-char). If at the end of the line, behaves identically to @@ -10307,64 +10469,64 @@ If at the end of the line, behaves identically to This command is unbound by default.

      - +

      complete-filename (M-/) -
      +
      Attempt filename completion on the text before point.

      - +

      possible-filename-completions (C-x /) -
      +
      List the possible completions of the text before point, treating it as a filename.

      - +

      complete-username (M-~) -
      +
      Attempt completion on the text before point, treating it as a username.

      - +

      possible-username-completions (C-x ~) -
      +
      List the possible completions of the text before point, treating it as a username.

      - +

      complete-variable (M-$) -
      +
      Attempt completion on the text before point, treating it as a shell variable.

      - +

      possible-variable-completions (C-x $) -
      +
      List the possible completions of the text before point, treating it as a shell variable.

      - +

      complete-hostname (M-@) -
      +
      Attempt completion on the text before point, treating it as a hostname.

      - +

      possible-hostname-completions (C-x @) -
      +
      List the possible completions of the text before point, treating it as a hostname.

      - +

      complete-command (M-!) -
      +
      Attempt completion on the text before point, treating it as a command name. Command completion attempts to match the text against aliases, reserved words, shell @@ -10372,24 +10534,32 @@ functions, shell builtins, and finally executable filenames, in that order.

      - +

      possible-command-completions (C-x !) -
      +
      List the possible completions of the text before point, treating it as a command name.

      - +

      dynamic-complete-history (M-TAB) -
      +
      Attempt completion on the text before point, comparing the text against lines from the history list for possible completion matches.

      - + +

      dabbrev-expand () +
      +Attempt menu completion on the text before point, comparing +the text against lines from the history list for possible +completion matches. +

      + +

      complete-into-braces (M-{) -
      +
      Perform filename completion and insert the list of possible completions enclosed within braces so the list is available to the shell (see section 3.5.1 Brace Expansion). @@ -10400,38 +10570,38 @@ enclosed within braces so the list is available to the shell
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.7 Keyboard Macros

      - +
      - +
      start-kbd-macro (C-x () -
      +
      Begin saving the characters typed into the current keyboard macro.

      - +

      end-kbd-macro (C-x )) -
      +
      Stop saving the characters typed into the current keyboard macro and save the definition.

      - +

      call-last-kbd-macro (C-x e) -
      +
      Re-execute the last keyboard macro defined, by making the characters in the macro appear as if typed at the keyboard.

      @@ -10441,103 +10611,103 @@ in the macro appear as if typed at the keyboard.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.4.8 Some Miscellaneous Commands

      - +
      - +
      re-read-init-file (C-x C-r) -
      +
      Read in the contents of the inputrc file, and incorporate any bindings or variable assignments found there.

      - +

      abort (C-g) -
      +
      Abort the current editing command and ring the terminal's bell (subject to the setting of bell-style).

      - +

      do-uppercase-version (M-a, M-b, M-x, ...) -
      +
      If the metafied character x is lowercase, run the command that is bound to the corresponding uppercase character.

      - +

      prefix-meta (ESC) -
      +
      Metafy the next character typed. This is for keyboards without a meta key. Typing `ESC f' is equivalent to typing M-f.

      - +

      undo (C-_ or C-x C-u) -
      +
      Incremental undo, separately remembered for each line.

      - +

      revert-line (M-r) -
      +
      Undo all changes made to this line. This is like executing the undo command enough times to get back to the beginning.

      - +

      tilde-expand (M-&) -
      +
      Perform tilde expansion on the current word.

      - +

      set-mark (C-@) -
      +
      Set the mark to the point. If a numeric argument is supplied, the mark is set to that position.

      - +

      exchange-point-and-mark (C-x C-x) -
      +
      Swap the point with the mark. The current cursor position is set to the saved position, and the old cursor position is saved as the mark.

      - +

      character-search (C-]) -
      +
      A character is read and point is moved to the next occurrence of that character. A negative count searches for previous occurrences.

      - +

      character-search-backward (M-C-]) -
      +
      A character is read and point is moved to the previous occurrence of that character. A negative count searches for subsequent occurrences.

      - +

      insert-comment (M-#) -
      +
      Without a numeric argument, the value of the comment-begin variable is inserted at the beginning of the current line. If a numeric argument is supplied, this command acts as a toggle: if @@ -10552,115 +10722,115 @@ If a numeric argument causes the comment character to be removed, the line will be executed by the shell.

      - +

      dump-functions () -
      +
      Print all of the functions and their key bindings to the Readline output stream. If a numeric argument is supplied, the output is formatted in such a way that it can be made part of an inputrc file. This command is unbound by default.

      - +

      dump-variables () -
      +
      Print all of the settable variables and their values to the Readline output stream. If a numeric argument is supplied, the output is formatted in such a way that it can be made part of an inputrc file. This command is unbound by default.

      - +

      dump-macros () -
      +
      Print all of the Readline key sequences bound to macros and the strings they output. If a numeric argument is supplied, the output is formatted in such a way that it can be made part of an inputrc file. This command is unbound by default.

      - +

      glob-complete-word (M-g) -
      +
      The word before point is treated as a pattern for pathname expansion, with an asterisk implicitly appended. This pattern is used to generate a list of matching file names for possible completions.

      - +

      glob-expand-word (C-x *) -
      +
      The word before point is treated as a pattern for pathname expansion, and the list of matching file names is inserted, replacing the word. If a numeric argument is supplied, a `*' is appended before pathname expansion.

      - +

      glob-list-expansions (C-x g) -
      +
      The list of expansions that would have been generated by glob-expand-word is displayed, and the line is redrawn. If a numeric argument is supplied, a `*' is appended before pathname expansion.

      - +

      display-shell-version (C-x C-v) -
      +
      Display version information about the current instance of Bash.

      - +

      shell-expand-line (M-C-e) -
      +
      Expand the line as the shell does. This performs alias and history expansion as well as all of the shell word expansions (see section 3.5 Shell Expansions).

      - +

      history-expand-line (M-^) -
      +
      Perform history expansion on the current line.

      - +

      magic-space () -
      +
      Perform history expansion on the current line and insert a space -(see section 9.3 History Expansion). +(see section 9.3 History Expansion).

      - +

      alias-expand-line () -
      -Perform alias expansion on the current line (see section 6.6 Aliases). +
      +Perform alias expansion on the current line (see section 6.6 Aliases).

      - +

      history-and-alias-expand-line () -
      +
      Perform history and alias expansion on the current line.

      - +

      insert-last-argument (M-. or M-_) -
      +
      A synonym for yank-last-arg.

      - +

      operate-and-get-next (C-o) -
      +
      Accept the current line for execution and fetch the next line relative to the current line from the history for editing. Any argument is ignored.

      - +

      edit-and-execute-command (C-xC-e) -
      +
      Invoke an editor on the current command line, and execute the result as shell commands. Bash attempts to invoke @@ -10673,20 +10843,20 @@ as the editor, in that order.
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.5 Readline vi Mode

      - +

      While the Readline library does not have a full set of vi @@ -10697,7 +10867,7 @@ the POSIX 1003.2 standard. In order to switch interactively between emacs and vi editing modes, use the `set -o emacs' and `set -o vi' -commands (see section 4.3.1 The Set Builtin). +commands (see section 4.3.1 The Set Builtin). The Readline default is emacs mode.

      @@ -10711,25 +10881,25 @@ so forth.


      - - - - - - - + +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.6 Programmable Completion

      - +

      When word completion is attempted for an argument to a command for which a completion specification (a compspec) has been defined -using the complete builtin (see section 8.7 Programmable Completion Builtins), +using the complete builtin (see section 8.7 Programmable Completion Builtins), the programmable completion facilities are invoked.

      @@ -10745,7 +10915,7 @@ find a compspec for the portion following the final slash. Once a compspec has been found, it is used to generate the list of matching words. If a compspec is not found, the default Bash completion -described above (see section 8.4.6 Letting Readline Type For You) is performed. +described above (see section 8.4.6 Letting Readline Type For You) is performed.

      First, the actions specified by the compspec are used. @@ -10754,7 +10924,7 @@ returned. When the `-f' or `-d' option is used for filename or directory name completion, the shell variable FIGNORE is used to filter the matches. -See section 5.2 Bash Variables, for a description of FIGNORE. +See section 5.2 Bash Variables, for a description of FIGNORE.

      Any completions specified by a filename expansion pattern to the @@ -10783,7 +10953,7 @@ After these matches have been generated, any shell function or command specified with the `-F' and `-C' options is invoked. When the command or function is invoked, the COMP_LINE, COMP_POINT, COMP_KEY, and COMP_TYPE variables are -assigned values as described above (see section 5.2 Bash Variables). +assigned values as described above (see section 5.2 Bash Variables). If a shell function is being invoked, the COMP_WORDS and COMP_CWORD variables are also set. When the function or command is invoked, the first argument is the @@ -10798,7 +10968,7 @@ the matches. Any function specified with `-F' is invoked first. The function may use any of the shell facilities, including the compgen and compopt builtins described below -(see section 8.7 Programmable Completion Builtins), to generate the matches. +(see section 8.7 Programmable Completion Builtins), to generate the matches. It must put the possible completions in the COMPREPLY array variable.

      @@ -10859,20 +11029,20 @@ of the setting of the mark-symlinked-directories Readline variable.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      8.7 Programmable Completion Builtins

      - +

      Two builtin commands are available to manipulate the programmable completion @@ -10881,7 +11051,7 @@ facilities.

      compgen -
      +
       
      compgen [option] [word]
       

      @@ -10907,11 +11077,11 @@ matches were generated.

      complete -
      -
       
      complete [-abcdefgjksuv] [-o comp-option] [-A action] [-G globpat] [-W wordlist]
      +
      +
       
      complete [-abcdefgjksuv] [-o comp-option] [-E] [-A action] [-G globpat] [-W wordlist]
       [-F function] [-C command] [-X filterpat]
       [-P prefix] [-S suffix] name [name ...]
      -complete -pr [name ...]
      +complete -pr [-E] [name ...]
       

      Specify how arguments to each name should be completed. @@ -10921,10 +11091,13 @@ reused as input. The `-r' option removes a completion specification for each name, or, if no names are supplied, all completion specifications. +The `-E' option indicates that the remaining options and actions should +apply to "empty" command completion; that is, completion attempted on a +blank line.

      The process of applying these completion specifications when word completion -is attempted is described above (see section 8.6 Programmable Completion). +is attempted is described above (see section 8.6 Programmable Completion).

      Other options, if specified, have the following meanings. @@ -10993,7 +11166,7 @@ completions:

      binding -
      Readline key binding names (see section 8.4 Bindable Readline Commands). +
      Readline key binding names (see section 8.4 Bindable Readline Commands).

      builtin @@ -11033,12 +11206,12 @@ completions:

      helptopic -
      Help topics as accepted by the help builtin (see section 4.2 Bash Builtin Commands). +
      Help topics as accepted by the help builtin (see section 4.2 Bash Builtin Commands).

      hostname
      Hostnames, as taken from the file specified by the -HOSTFILE shell variable (see section 5.2 Bash Variables). +HOSTFILE shell variable (see section 5.2 Bash Variables).

      job @@ -11059,12 +11232,12 @@ completions:
      setopt
      Valid arguments for the `-o' option to the set builtin -(see section 4.3.1 The Set Builtin). +(see section 4.3.1 The Set Builtin).

      shopt
      Shell option names as accepted by the shopt builtin -(see section 4.2 Bash Builtin Commands). +(see section 4.2 Bash Builtin Commands).

      signal @@ -11137,7 +11310,7 @@ an error occurs adding a completion specification.

      compopt -
      +
       
      compopt [-o option] [+o option] [name]
       
      Modify completion options for each name according to the options, or for the currently-execution completion if no names @@ -11156,25 +11329,25 @@ specification exists, or an output error occurs.

      - +


      - + - - + + - + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9. Using History Interactively

      - +

      This chapter describes how to use the GNU History Library @@ -11185,34 +11358,34 @@ see the GNU Readline Library Manual.

      - - - +
      9.1 Bash History Facilities  How Bash lets you manipulate your command +
      9.1 Bash History Facilities  How Bash lets you manipulate your command history.
      9.2 Bash History Builtins  The Bash builtin commands that manipulate +
      9.2 Bash History Builtins  The Bash builtin commands that manipulate the command history.
      9.3 History Expansion  What it feels like using History as a user.
      9.3 History Expansion  What it feels like using History as a user.


      - + - - + + - - + + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ][ Up ][ >> ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9.1 Bash History Facilities

      - +

      When the `-o history' option to the set builtin -is enabled (see section 4.3.1 The Set Builtin), +is enabled (see section 4.3.1 The Set Builtin), the shell provides access to the command history, the list of commands previously typed. The value of the HISTSIZE shell variable is used as the @@ -11234,7 +11407,7 @@ 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 (see section 4.2 Bash Builtin Commands), +If the histappend shell option is set (see section 4.2 Bash Builtin Commands), the lines are appended to the history file, otherwise the history file is overwritten. If HISTFILE @@ -11258,7 +11431,7 @@ The history builtin may be used to display or modify the history list and manipulate the history file. When using command-line editing, search commands are available in each editing mode that provide access to the -history list (see section 8.4.2 Commands For Manipulating The History). +history list (see section 8.4.2 Commands For Manipulating The History).

      The shell allows control over which commands are saved on the history @@ -11273,25 +11446,25 @@ The lithist shell option causes the shell to save the command with embedded newlines instead of semicolons. The shopt builtin is used to set these options. -See section 4.2 Bash Builtin Commands, for a description of shopt. +See section 4.2 Bash Builtin Commands, for a description of shopt.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9.2 Bash History Builtins

      - +

      Bash provides two builtin commands which manipulate the @@ -11301,7 +11474,7 @@ history list and history file.

      fc -
      +
       
      fc [-e ename] [-lnr] [first] [last]
       fc -s [pat=rep] [command]
       

      @@ -11331,11 +11504,11 @@ of pat in the selected command is replaced by rep. A useful alias to use with the fc command is r='fc -s', so that typing `r cc' runs the last command beginning with cc -and typing `r' re-executes the last command (see section 6.6 Aliases). +and typing `r' re-executes the last command (see section 6.6 Aliases).

      history -
      +
       
      history [n]
       history -c
       history -d offset
      @@ -11413,20 +11586,20 @@ the value of the HISTFILE variable is used.
       
       
       
      - + - - + + - - + + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ][ Up ][ >> ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9.3 History Expansion

      - +

      The History library provides a history expansion feature that is similar @@ -11456,7 +11629,7 @@ character.

      Several shell options settable with the shopt -builtin (see section 4.2 Bash Builtin Commands) may be used to tailor +builtin (see section 4.2 Bash Builtin Commands) may be used to tailor the behavior of history expansion. If the histverify shell option is enabled, and Readline is being used, history substitutions are not immediately passed to @@ -11476,39 +11649,39 @@ This is most useful in conjunction with Readline. The shell allows control of the various characters used by the history expansion mechanism with the histchars variable, -as explained above (see section 5.2 Bash Variables). The shell uses +as explained above (see section 5.2 Bash Variables). The shell uses the history comment character to mark history timestamps when writing the history file.

      - - - + + +
      9.3.1 Event Designators  How to specify which history line to use.
      9.3.2 Word Designators  Specifying which words are of interest.
      9.3.3 Modifiers  Modifying the results of substitution.
      9.3.1 Event Designators  How to specify which history line to use.
      9.3.2 Word Designators  Specifying which words are of interest.
      9.3.3 Modifiers  Modifying the results of substitution.


      - + - - + + - - + + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ][ Up ][ >> ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9.3.1 Event Designators

      - +

      An event designator is a reference to a command line entry in the history list. - +

      @@ -11556,20 +11729,20 @@ with string2. Equivalent to
      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9.3.2 Word Designators

      - +

      Word designators are used to select desired words from the event. @@ -11651,20 +11824,20 @@ previous command is used as the event.


      - + - - + + - - + + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ][ Up ][ >> ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      9.3.3 Modifiers

      - +

      After the optional word designator, you can add a sequence of one or more @@ -11733,20 +11906,20 @@ or with `&'.


      - + - - + + - + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10. Installing Bash

      - +

      This chapter provides basic instructions for installing Bash on @@ -11758,38 +11931,38 @@ MS-DOS, OS/2, and Windows platforms.

      - - + - - - - + + - - +
      10.1 Basic Installation  Installation instructions.
      10.2 Compilers and Options  How to set special options for various +
      10.1 Basic Installation  Installation instructions.
      10.2 Compilers and Options  How to set special options for various systems.
      10.3 Compiling For Multiple Architectures  How to compile Bash for more +
      10.3 Compiling For Multiple Architectures  How to compile Bash for more than one kind of system from the same source tree.
      10.4 Installation Names  How to set the various paths used by the installation.
      10.5 Specifying the System Type  How to configure Bash for a particular system.
      10.6 Sharing Defaults  How to share default configuration values among GNU +
      10.4 Installation Names  How to set the various paths used by the installation.
      10.5 Specifying the System Type  How to configure Bash for a particular system.
      10.6 Sharing Defaults  How to share default configuration values among GNU programs.
      10.7 Operation Controls  Options recognized by the configuration program.
      10.8 Optional Features  How to enable and disable optional features when +
      10.7 Operation Controls  Options recognized by the configuration program.
      10.8 Optional Features  How to enable and disable optional features when building Bash.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.1 Basic Installation

      - +

      These are installation instructions for Bash. @@ -11879,20 +12052,20 @@ a different kind of computer), type `make distclean'.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.2 Compilers and Options

      - +

      Some systems require unusual options for compilation or linking @@ -11917,20 +12090,20 @@ is available.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.3 Compiling For Multiple Architectures

      - +

      You can compile Bash for more than one kind of computer at the @@ -11969,20 +12142,20 @@ directories for other architectures.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.4 Installation Names

      - +

      By default, `make install' will install into @@ -12003,20 +12176,20 @@ Documentation and other data files will still use the regular prefix.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.5 Specifying the System Type

      - +

      There may be some features configure can not figure out @@ -12035,20 +12208,20 @@ values of each field.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.6 Sharing Defaults

      - +

      If you want to set default values for configure scripts to @@ -12064,20 +12237,20 @@ but not all configure scripts do.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.7 Operation Controls

      - +

      configure recognizes the following options to control how it @@ -12120,20 +12293,20 @@ options. `configure --help' prints the complete list.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      10.8 Optional Features

      - +

      The Bash configure has a number of `--enable-feature' @@ -12240,7 +12413,7 @@ necessary support.

      --enable-alias
      Allow alias expansion and include the alias and unalias -builtins (see section 6.6 Aliases). +builtins (see section 6.6 Aliases).

      --enable-arith-for-command @@ -12251,12 +12424,12 @@ that behaves like the C language for statement
      --enable-array-variables
      Include support for one-dimensional array shell variables -(see section 6.7 Arrays). +(see section 6.7 Arrays).

      --enable-bang-history
      Include support for csh-like history substitution -(see section 9.3 History Expansion). +(see section 9.3 History Expansion).

      --enable-brace-expansion @@ -12290,13 +12463,13 @@ This allows pipelines as well as shell builtins and functions to be timed.
      --enable-directory-stack
      Include support for a csh-like directory stack and the pushd, popd, and dirs builtins -(see section 6.8 The Directory Stack). +(see section 6.8 The Directory Stack).

      --enable-disabled-builtins
      Allow builtin commands to be invoked via `builtin xxx' even after xxx has been disabled using `enable -n xxx'. -See 4.2 Bash Builtin Commands, for details of the builtin and +See 4.2 Bash Builtin Commands, for details of the builtin and enable builtin commands.

      @@ -12312,16 +12485,16 @@ above under 3.5.8.1 Pattern Matching.

      --enable-help-builtin
      Include the help builtin, which displays help on shell builtins and -variables (see section 4.2 Bash Builtin Commands). +variables (see section 4.2 Bash Builtin Commands).

      --enable-history
      Include command history and the fc and history -builtin commands (see section 9.1 Bash History Facilities). +builtin commands (see section 9.1 Bash History Facilities).

      --enable-job-control -
      This enables the job control features (see section 7. Job Control), +
      This enables the job control features (see section 7. Job Control), if the operating system supports them.

      @@ -12344,26 +12517,26 @@ the operating system provides the necessary support.

      --enable-progcomp
      Enable the programmable completion facilities -(see section 8.6 Programmable Completion). +(see section 8.6 Programmable Completion). If Readline is not enabled, this option has no effect.

      --enable-prompt-string-decoding
      Turn on the interpretation of a number of backslash-escaped characters in the $PS1, $PS2, $PS3, and $PS4 prompt -strings. See 6.9 Controlling the Prompt, for a complete list of prompt +strings. See 6.9 Controlling the Prompt, for a complete list of prompt string escape sequences.

      --enable-readline
      Include support for command-line editing and history with the Bash -version of the Readline library (see section 8. Command Line Editing). +version of the Readline library (see section 8. Command Line Editing).

      --enable-restricted
      Include support for a restricted shell. If this is enabled, Bash, when called as rbash, enters a restricted mode. See -6.10 The Restricted Shell, for a description of restricted mode. +6.10 The Restricted Shell, for a description of restricted mode.

      --enable-select @@ -12384,7 +12557,7 @@ literals.

      --enable-strict-posix-default -
      Make Bash POSIX-conformant by default (see section 6.11 Bash POSIX Mode). +
      Make Bash POSIX-conformant by default (see section 6.11 Bash POSIX Mode).

      --enable-usg-echo-default @@ -12397,7 +12570,7 @@ without requiring the `-e' option. This sets the default value of the xpg_echo shell option to on, which makes the Bash echo behave more like the version specified in the Single Unix Specification, version 3. -See section 4.2 Bash Builtin Commands, for a description of the escape sequences that +See section 4.2 Bash Builtin Commands, for a description of the escape sequences that echo recognizes.

      @@ -12415,20 +12588,20 @@ information about its effect.


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      A. Reporting Bugs

      - +

      Please report all bugs you find in Bash. @@ -12473,20 +12646,20 @@ Please send all reports concerning this manual to


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      B. Major Differences From The Bourne Shell

      - +

      Bash implements essentially the same grammar, parameter and @@ -12505,27 +12678,27 @@ last version of the historical Bourne shell) as the baseline reference.

    4. Bash is POSIX-conformant, even where the POSIX specification -differs from traditional sh behavior (see section 6.11 Bash POSIX Mode). +differs from traditional sh behavior (see section 6.11 Bash POSIX Mode).

    5. -Bash has multi-character invocation options (see section 6.1 Invoking Bash). +Bash has multi-character invocation options (see section 6.1 Invoking Bash).

    6. -Bash has command-line editing (see section 8. Command Line Editing) and +Bash has command-line editing (see section 8. Command Line Editing) and the bind builtin.

    7. Bash provides a programmable word completion mechanism -(see section 8.6 Programmable Completion), and builtin commands +(see section 8.6 Programmable Completion), and builtin commands complete, compgen, and compopt, to manipulate it.

    8. -Bash has command history (see section 9.1 Bash History Facilities) and the +Bash has command history (see section 9.1 Bash History Facilities) and the history and fc builtins to manipulate it. The Bash history list maintains timestamp information and uses the value of the HISTTIMEFORMAT variable to display it. @@ -12533,11 +12706,11 @@ value of the HISTTIMEFORMAT variable to display it.
    9. Bash implements csh-like history expansion -(see section 9.3 History Expansion). +(see section 9.3 History Expansion).

    10. -Bash has one-dimensional array variables (see section 6.7 Arrays), and the +Bash has one-dimensional array variables (see section 6.7 Arrays), and the appropriate variable expansions and assignment syntax to use them. Several of the Bash builtins take options to act on arrays. Bash provides a number of built-in array variables. @@ -12599,13 +12772,13 @@ expansion (see section 3.5.2 Tilde Expansion).
    11. Bash implements command aliases and the alias and unalias -builtins (see section 6.6 Aliases). +builtins (see section 6.6 Aliases).

    12. Bash provides shell arithmetic, the (( compound command (see section 3.2.4.2 Conditional Constructs), -and arithmetic expansion (see section 6.5 Shell Arithmetic). +and arithmetic expansion (see section 6.5 Shell Arithmetic).

    13. @@ -12677,7 +12850,7 @@ Bash automatically assigns variables that provide information about the current user (UID, EUID, and GROUPS), the current host (HOSTTYPE, OSTYPE, MACHTYPE, and HOSTNAME), and the instance of Bash that is running (BASH, -BASH_VERSION, and BASH_VERSINFO). See section 5.2 Bash Variables, +BASH_VERSION, and BASH_VERSINFO). See section 5.2 Bash Variables, for details.

      @@ -12706,12 +12879,12 @@ It is possible to have a variable and a function with the same name;

    14. Bash functions are permitted to have local variables using the local builtin, and thus useful recursive functions may be written -(see section 4.2 Bash Builtin Commands). +(see section 4.2 Bash Builtin Commands).

    15. Variable assignments preceding commands affect only that command, even -builtins and functions (see section 3.7.4 Environment). +builtins and functions (see section 3.7.4 Environment). In sh, all variable assignments preceding commands are global unless the command is executed from the file system. @@ -12751,12 +12924,12 @@ with the redirection operators (see section 3.6 Red
    16. The noclobber option is available to avoid overwriting existing -files with output redirection (see section 4.3.1 The Set Builtin). +files with output redirection (see section 4.3.1 The Set Builtin). The `>|' redirection operator may be used to override noclobber.

    17. -The Bash cd and pwd builtins (see section 4.1 Bourne Shell Builtins) +The Bash cd and pwd builtins (see section 4.1 Bourne Shell Builtins) each take `-L' and `-P' options to switch between logical and physical modes.

      @@ -12764,24 +12937,24 @@ physical modes.

    18. Bash allows a function to override a builtin with the same name, and provides access to that builtin's functionality within the function via the -builtin and command builtins (see section 4.2 Bash Builtin Commands). +builtin and command builtins (see section 4.2 Bash Builtin Commands).

    19. The command builtin allows selective disabling of functions -when command lookup is performed (see section 4.2 Bash Builtin Commands). +when command lookup is performed (see section 4.2 Bash Builtin Commands).

    20. Individual builtins may be enabled or disabled using the enable -builtin (see section 4.2 Bash Builtin Commands). +builtin (see section 4.2 Bash Builtin Commands).

    21. The Bash exec builtin takes additional options that allow users to control the contents of the environment passed to the executed command, and what the zeroth argument to the command is to be -(see section 4.1 Bourne Shell Builtins). +(see section 4.1 Bourne Shell Builtins).

    22. @@ -12802,21 +12975,21 @@ and values simultaneously. The Bash hash builtin allows a name to be associated with an arbitrary filename, even when that filename cannot be found by searching the $PATH, using `hash -p' -(see section 4.1 Bourne Shell Builtins). +(see section 4.1 Bourne Shell Builtins).

    23. Bash includes a help builtin for quick reference to shell -facilities (see section 4.2 Bash Builtin Commands). +facilities (see section 4.2 Bash Builtin Commands).

    24. The printf builtin is available to display formatted output -(see section 4.2 Bash Builtin Commands). +(see section 4.2 Bash Builtin Commands).

    25. -The Bash read builtin (see section 4.2 Bash Builtin Commands) +The Bash read builtin (see section 4.2 Bash Builtin Commands) will read a line ending in `\' with the `-r' option, and will use the REPLY variable as a default if no non-option arguments are supplied. @@ -12835,28 +13008,28 @@ until a particular character rather than newline.
    26. The return builtin may be used to abort execution of scripts executed with the . or source builtins -(see section 4.1 Bourne Shell Builtins). +(see section 4.1 Bourne Shell Builtins).

    27. Bash includes the shopt builtin, for finer control of shell -optional capabilities (see section 4.3.2 The Shopt Builtin), and allows these options -to be set and unset at shell invocation (see section 6.1 Invoking Bash). +optional capabilities (see section 4.3.2 The Shopt Builtin), and allows these options +to be set and unset at shell invocation (see section 6.1 Invoking Bash).

    28. Bash has much more optional behavior controllable with the set -builtin (see section 4.3.1 The Set Builtin). +builtin (see section 4.3.1 The Set Builtin).

    29. The `-x' (xtrace) option displays commands other than simple commands when performing an execution trace -(see section 4.3.1 The Set Builtin). +(see section 4.3.1 The Set Builtin).

    30. -The test builtin (see section 4.1 Bourne Shell Builtins) +The test builtin (see section 4.1 Bourne Shell Builtins) is slightly different, as it implements the POSIX algorithm, which specifies the behavior based on the number of arguments.

      @@ -12869,7 +13042,7 @@ debugger.

    31. -The trap builtin (see section 4.1 Bourne Shell Builtins) allows a +The trap builtin (see section 4.1 Bourne Shell Builtins) allows a DEBUG pseudo-signal specification, similar to EXIT. Commands specified with a DEBUG trap are executed before every simple command, for command, case command, @@ -12882,7 +13055,7 @@ The extdebug shell option has additional effects on the DEBUG trap.

      -The trap builtin (see section 4.1 Bourne Shell Builtins) allows an +The trap builtin (see section 4.1 Bourne Shell Builtins) allows an ERR pseudo-signal specification, similar to EXIT and DEBUG. Commands specified with an ERR trap are executed after a simple command fails, with a few exceptions. @@ -12890,7 +13063,7 @@ The ERR trap is not inherited by shell functions unless the -o errtrace option to the set builtin is enabled.

      -The trap builtin (see section 4.1 Bourne Shell Builtins) allows a +The trap builtin (see section 4.1 Bourne Shell Builtins) allows a RETURN pseudo-signal specification, similar to EXIT and DEBUG. Commands specified with an RETURN trap are executed before @@ -12903,36 +13076,36 @@ function has been given the trace attribute or the

    32. The Bash type builtin is more extensive and gives more information -about the names it finds (see section 4.2 Bash Builtin Commands). +about the names it finds (see section 4.2 Bash Builtin Commands).

    33. The Bash umask builtin permits a `-p' option to cause the output to be displayed in the form of a umask command -that may be reused as input (see section 4.1 Bourne Shell Builtins). +that may be reused as input (see section 4.1 Bourne Shell Builtins).

    34. Bash implements a csh-like directory stack, and provides the pushd, popd, and dirs builtins to manipulate it -(see section 6.8 The Directory Stack). +(see section 6.8 The Directory Stack). Bash also makes the directory stack visible as the value of the DIRSTACK shell variable.

    35. Bash interprets special backslash-escaped characters in the prompt -strings when interactive (see section 6.9 Controlling the Prompt). +strings when interactive (see section 6.9 Controlling the Prompt).

    36. -The Bash restricted mode is more useful (see section 6.10 The Restricted Shell); +The Bash restricted mode is more useful (see section 6.10 The Restricted Shell); the SVR4.2 shell restricted mode is too limited.

    37. The disown builtin can remove a job from the internal shell -job table (see section 7.2 Job Control Builtins) or suppress the sending +job table (see section 7.2 Job Control Builtins) or suppress the sending of SIGHUP to a job when the shell exits as the result of a SIGHUP.

      @@ -12963,24 +13136,24 @@ The SVR4.2 sh uses a TIMEOUT variable like Bash uses

      -More features unique to Bash may be found in 6. Bash Features. +More features unique to Bash may be found in 6. Bash Features.


      - + - - - - - + + + + + - +
      [ < ][ > ]   [ << ][ Up ][ >> ]
      [ < ][ > ]   [ << ][ Up ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      B.1 Implementation Differences From The SVR4.2 Shell

      - +

      Since Bash is a completely new implementation, it does not suffer from @@ -13052,20 +13225,20 @@ The SVR4.2 shell behaves differently when invoked as jsh


      - + - - - + + + - + - +
      [ < ][ > ]   [ << ]
      [ < ][ > ]   [ << ] [ Up ][ >> ][ >> ]         [Top] [Contents][Index][Index] [ ? ]

      C. GNU Free Documentation License

      - +

      @@ -13536,9 +13709,9 @@ as a draft) by the Free Software Foundation.

      - +

      ADDENDUM: How to use this License for your documents

      - +

      To use this License in a document you have written, include a copy of @@ -13577,49 +13750,49 @@ to permit their use in free software.


      - + - - + + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents][Index][Index] [ ? ]

      D. Indexes

      - +

      - - - + + - - +
      D.1 Index of Shell Builtin Commands  Index of Bash builtin commands.
      D.2 Index of Shell Reserved Words  Index of Bash reserved words.
      D.3 Parameter and Variable Index  Quick reference helps you find the +
      D.1 Index of Shell Builtin Commands  Index of Bash builtin commands.
      D.2 Index of Shell Reserved Words  Index of Bash reserved words.
      D.3 Parameter and Variable Index  Quick reference helps you find the variable you want.
      D.4 Function Index  Index of bindable Readline functions.
      D.5 Concept Index  General index for concepts described in +
      D.4 Function Index  Index of bindable Readline functions.
      D.5 Concept Index  General index for concepts described in this manual.


      - + - - + + - + - +
      [ < ][ > ]
      [ < ][ > ]   [ << ][ Up ][ Up ] [ >> ]         [Top] [Contents][Index][Index] [ ? ]

      D.1 Index of Shell Builtin Commands

      - + - + - + - + - + - - - - + + + + - - - - - - - + + + + + + + - - - + + + - - - - - - + + + + + + - - + + - + - - - + + + - + - + - - - + + + + + + - - - - + + + + - - - + + + - - - - - + + + + + - - - - - + + + + + - - - - + + + + - +
      Jump to:   .   : @@ -13649,6 +13822,8 @@ to permit their use in free software.   L   +M +   P   R @@ -13666,101 +13841,104 @@ to permit their use in free software.
      Index Entry Section

      .
      .4.1 Bourne Shell Builtins
      .4.1 Bourne Shell Builtins

      :
      :4.1 Bourne Shell Builtins
      :4.1 Bourne Shell Builtins

      [
      [4.1 Bourne Shell Builtins
      [4.1 Bourne Shell Builtins

      A
      alias4.2 Bash Builtin Commands
      alias4.2 Bash Builtin Commands

      B
      bg7.2 Job Control Builtins
      bind4.2 Bash Builtin Commands
      break4.1 Bourne Shell Builtins
      builtin4.2 Bash Builtin Commands
      bg7.2 Job Control Builtins
      bind4.2 Bash Builtin Commands
      break4.1 Bourne Shell Builtins
      builtin4.2 Bash Builtin Commands

      C
      caller4.2 Bash Builtin Commands
      cd4.1 Bourne Shell Builtins
      command4.2 Bash Builtin Commands
      compgen8.7 Programmable Completion Builtins
      complete8.7 Programmable Completion Builtins
      compopt8.7 Programmable Completion Builtins
      continue4.1 Bourne Shell Builtins
      caller4.2 Bash Builtin Commands
      cd4.1 Bourne Shell Builtins
      command4.2 Bash Builtin Commands
      compgen8.7 Programmable Completion Builtins
      complete8.7 Programmable Completion Builtins
      compopt8.7 Programmable Completion Builtins
      continue4.1 Bourne Shell Builtins

      D
      declare4.2 Bash Builtin Commands
      dirs6.8.1 Directory Stack Builtins
      disown7.2 Job Control Builtins
      declare4.2 Bash Builtin Commands
      dirs6.8.1 Directory Stack Builtins
      disown7.2 Job Control Builtins

      E
      echo4.2 Bash Builtin Commands
      enable4.2 Bash Builtin Commands
      eval4.1 Bourne Shell Builtins
      exec4.1 Bourne Shell Builtins
      exit4.1 Bourne Shell Builtins
      export4.1 Bourne Shell Builtins
      echo4.2 Bash Builtin Commands
      enable4.2 Bash Builtin Commands
      eval4.1 Bourne Shell Builtins
      exec4.1 Bourne Shell Builtins
      exit4.1 Bourne Shell Builtins
      export4.1 Bourne Shell Builtins

      F
      fc9.2 Bash History Builtins
      fg7.2 Job Control Builtins
      fc9.2 Bash History Builtins
      fg7.2 Job Control Builtins

      G
      getopts4.1 Bourne Shell Builtins
      getopts4.1 Bourne Shell Builtins

      H
      hash4.1 Bourne Shell Builtins
      help4.2 Bash Builtin Commands
      history9.2 Bash History Builtins
      hash4.1 Bourne Shell Builtins
      help4.2 Bash Builtin Commands
      history9.2 Bash History Builtins

      J
      jobs7.2 Job Control Builtins
      jobs7.2 Job Control Builtins

      K
      kill7.2 Job Control Builtins
      kill7.2 Job Control Builtins

      L
      let4.2 Bash Builtin Commands
      local4.2 Bash Builtin Commands
      logout4.2 Bash Builtin Commands
      let4.2 Bash Builtin Commands
      local4.2 Bash Builtin Commands
      logout4.2 Bash Builtin Commands

      M
      mapfile4.2 Bash Builtin Commands

      P
      popd6.8.1 Directory Stack Builtins
      printf4.2 Bash Builtin Commands
      pushd6.8.1 Directory Stack Builtins
      pwd4.1 Bourne Shell Builtins
      popd6.8.1 Directory Stack Builtins
      printf4.2 Bash Builtin Commands
      pushd6.8.1 Directory Stack Builtins
      pwd4.1 Bourne Shell Builtins

      R
      read4.2 Bash Builtin Commands
      readonly4.1 Bourne Shell Builtins
      return4.1 Bourne Shell Builtins
      read4.2 Bash Builtin Commands
      readonly4.1 Bourne Shell Builtins
      return4.1 Bourne Shell Builtins

      S
      set4.3.1 The Set Builtin
      shift4.1 Bourne Shell Builtins
      shopt4.3.2 The Shopt Builtin
      source4.2 Bash Builtin Commands
      suspend7.2 Job Control Builtins
      set4.3.1 The Set Builtin
      shift4.1 Bourne Shell Builtins
      shopt4.3.2 The Shopt Builtin
      source4.2 Bash Builtin Commands
      suspend7.2 Job Control Builtins

      T
      test4.1 Bourne Shell Builtins
      times4.1 Bourne Shell Builtins
      trap4.1 Bourne Shell Builtins
      type4.2 Bash Builtin Commands
      typeset4.2 Bash Builtin Commands
      test4.1 Bourne Shell Builtins
      times4.1 Bourne Shell Builtins
      trap4.1 Bourne Shell Builtins
      type4.2 Bash Builtin Commands
      typeset4.2 Bash Builtin Commands

      U
      ulimit4.2 Bash Builtin Commands
      umask4.1 Bourne Shell Builtins
      unalias4.2 Bash Builtin Commands
      unset4.1 Bourne Shell Builtins
      ulimit4.2 Bash Builtin Commands
      umask4.1 Bourne Shell Builtins
      unalias4.2 Bash Builtin Commands
      unset4.1 Bourne Shell Builtins

      W
      wait7.2 Job Control Builtins
      wait7.2 Job Control Builtins

      Jump to:   .   @@ -13791,6 +13969,8 @@ to permit their use in free software.   L   +M +   P   R @@ -13807,20 +13987,20 @@ to permit their use in free software.
      - + - - - - + + + + - +
      [ < ][ > ]   [ << ][ Up ]
      [ < ][ > ]   [ << ][ Up ] [ >> ]         [Top] [Contents][Index][Index] [ ? ]

      D.2 Index of Shell Reserved Words

      - +
      Jump to:   !   [ @@ -13936,20 +14116,20 @@ to permit their use in free software.
      - + - - - - + + + + - +
      [ < ][ > ]   [ << ][ Up ]
      [ < ][ > ]   [ << ][ Up ] [ >> ]         [Top] [Contents][Index][Index] [ ? ]

      D.3 Parameter and Variable Index

      - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - + + + + + + + - - - - - - + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - + + + + + + - - + + - +
      Jump to:   !   # @@ -14048,237 +14228,239 @@ to permit their use in free software.
      _3.4.2 Special Parameters

      A
      auto_resume7.3 Job Control Variables
      auto_resume7.3 Job Control Variables
      auto_resume7.3 Job Control Variables
      auto_resume7.3 Job Control Variables

      B
      BASH5.2 Bash Variables
      BASH5.2 Bash Variables
      BASH_ARGC5.2 Bash Variables
      BASH_ARGC5.2 Bash Variables
      BASH_ARGV5.2 Bash Variables
      BASH_ARGV5.2 Bash Variables
      BASH_COMMAND5.2 Bash Variables
      BASH_COMMAND5.2 Bash Variables
      BASH_ENV5.2 Bash Variables
      BASH_ENV5.2 Bash Variables
      BASH_EXECUTION_STRING5.2 Bash Variables
      BASH_EXECUTION_STRING5.2 Bash Variables
      BASH_LINENO5.2 Bash Variables
      BASH_LINENO5.2 Bash Variables
      BASH_REMATCH5.2 Bash Variables
      BASH_REMATCH5.2 Bash Variables
      BASH_SOURCE5.2 Bash Variables
      BASH_SOURCE5.2 Bash Variables
      BASH_SUBSHELL5.2 Bash Variables
      BASH_SUBSHELL5.2 Bash Variables
      BASH_VERSINFO5.2 Bash Variables
      BASH_VERSINFO5.2 Bash Variables
      BASH_VERSION5.2 Bash Variables
      BASH_VERSION5.2 Bash Variables
      BASHPID5.2 Bash Variables
      BASHPID5.2 Bash Variables
      bell-style8.3.1 Readline Init File Syntax
      bind-tty-special-chars8.3.1 Readline Init File Syntax
      BASH5.2 Bash Variables
      BASH5.2 Bash Variables
      BASH_ARGC5.2 Bash Variables
      BASH_ARGC5.2 Bash Variables
      BASH_ARGV5.2 Bash Variables
      BASH_ARGV5.2 Bash Variables
      BASH_COMMAND5.2 Bash Variables
      BASH_COMMAND5.2 Bash Variables
      BASH_ENV5.2 Bash Variables
      BASH_ENV5.2 Bash Variables
      BASH_EXECUTION_STRING5.2 Bash Variables
      BASH_EXECUTION_STRING5.2 Bash Variables
      BASH_LINENO5.2 Bash Variables
      BASH_LINENO5.2 Bash Variables
      BASH_REMATCH5.2 Bash Variables
      BASH_REMATCH5.2 Bash Variables
      BASH_SOURCE5.2 Bash Variables
      BASH_SOURCE5.2 Bash Variables
      BASH_SUBSHELL5.2 Bash Variables
      BASH_SUBSHELL5.2 Bash Variables
      BASH_VERSINFO5.2 Bash Variables
      BASH_VERSINFO5.2 Bash Variables
      BASH_VERSION5.2 Bash Variables
      BASH_VERSION5.2 Bash Variables
      BASHPID5.2 Bash Variables
      BASHPID5.2 Bash Variables
      bell-style8.3.1 Readline Init File Syntax
      bind-tty-special-chars8.3.1 Readline Init File Syntax

      C
      CDPATH5.1 Bourne Shell Variables
      CDPATH5.1 Bourne Shell Variables
      COLUMNS5.2 Bash Variables
      COLUMNS5.2 Bash Variables
      comment-begin8.3.1 Readline Init File Syntax
      COMP_CWORD5.2 Bash Variables
      COMP_CWORD5.2 Bash Variables
      COMP_KEY5.2 Bash Variables
      COMP_KEY5.2 Bash Variables
      COMP_LINE5.2 Bash Variables
      COMP_LINE5.2 Bash Variables
      COMP_POINT5.2 Bash Variables
      COMP_POINT5.2 Bash Variables
      COMP_TYPE5.2 Bash Variables
      COMP_TYPE5.2 Bash Variables
      COMP_WORDBREAKS5.2 Bash Variables
      COMP_WORDBREAKS5.2 Bash Variables
      COMP_WORDS5.2 Bash Variables
      COMP_WORDS5.2 Bash Variables
      completion-query-items8.3.1 Readline Init File Syntax
      COMPREPLY5.2 Bash Variables
      COMPREPLY5.2 Bash Variables
      convert-meta8.3.1 Readline Init File Syntax
      CDPATH5.1 Bourne Shell Variables
      CDPATH5.1 Bourne Shell Variables
      COLUMNS5.2 Bash Variables
      COLUMNS5.2 Bash Variables
      comment-begin8.3.1 Readline Init File Syntax
      COMP_CWORD5.2 Bash Variables
      COMP_CWORD5.2 Bash Variables
      COMP_KEY5.2 Bash Variables
      COMP_KEY5.2 Bash Variables
      COMP_LINE5.2 Bash Variables
      COMP_LINE5.2 Bash Variables
      COMP_POINT5.2 Bash Variables
      COMP_POINT5.2 Bash Variables
      COMP_TYPE5.2 Bash Variables
      COMP_TYPE5.2 Bash Variables
      COMP_WORDBREAKS5.2 Bash Variables
      COMP_WORDBREAKS5.2 Bash Variables
      COMP_WORDS5.2 Bash Variables
      COMP_WORDS5.2 Bash Variables
      completion-prefix-display-length8.3.1 Readline Init File Syntax
      completion-query-items8.3.1 Readline Init File Syntax
      COMPREPLY5.2 Bash Variables
      COMPREPLY5.2 Bash Variables
      convert-meta8.3.1 Readline Init File Syntax

      D
      DIRSTACK5.2 Bash Variables
      DIRSTACK5.2 Bash Variables
      disable-completion8.3.1 Readline Init File Syntax
      DIRSTACK5.2 Bash Variables
      DIRSTACK5.2 Bash Variables
      disable-completion8.3.1 Readline Init File Syntax

      E
      editing-mode8.3.1 Readline Init File Syntax
      EMACS5.2 Bash Variables
      EMACS5.2 Bash Variables
      enable-keypad8.3.1 Readline Init File Syntax
      EUID5.2 Bash Variables
      EUID5.2 Bash Variables
      expand-tilde8.3.1 Readline Init File Syntax
      editing-mode8.3.1 Readline Init File Syntax
      EMACS5.2 Bash Variables
      EMACS5.2 Bash Variables
      enable-keypad8.3.1 Readline Init File Syntax
      EUID5.2 Bash Variables
      EUID5.2 Bash Variables
      expand-tilde8.3.1 Readline Init File Syntax

      F
      FCEDIT5.2 Bash Variables
      FCEDIT5.2 Bash Variables
      FIGNORE5.2 Bash Variables
      FIGNORE5.2 Bash Variables
      FUNCNAME5.2 Bash Variables
      FUNCNAME5.2 Bash Variables
      FCEDIT5.2 Bash Variables
      FCEDIT5.2 Bash Variables
      FIGNORE5.2 Bash Variables
      FIGNORE5.2 Bash Variables
      FUNCNAME5.2 Bash Variables
      FUNCNAME5.2 Bash Variables

      G
      GLOBIGNORE5.2 Bash Variables
      GLOBIGNORE5.2 Bash Variables
      GROUPS5.2 Bash Variables
      GROUPS5.2 Bash Variables
      GLOBIGNORE5.2 Bash Variables
      GLOBIGNORE5.2 Bash Variables
      GROUPS5.2 Bash Variables
      GROUPS5.2 Bash Variables

      H
      histchars5.2 Bash Variables
      histchars5.2 Bash Variables
      HISTCMD5.2 Bash Variables
      HISTCMD5.2 Bash Variables
      HISTCONTROL5.2 Bash Variables
      HISTCONTROL5.2 Bash Variables
      HISTFILE5.2 Bash Variables
      HISTFILE5.2 Bash Variables
      HISTFILESIZE5.2 Bash Variables
      HISTFILESIZE5.2 Bash Variables
      HISTIGNORE5.2 Bash Variables
      HISTIGNORE5.2 Bash Variables
      history-preserve-point8.3.1 Readline Init File Syntax
      history-size8.3.1 Readline Init File Syntax
      HISTSIZE5.2 Bash Variables
      HISTSIZE5.2 Bash Variables
      HISTTIMEFORMAT5.2 Bash Variables
      HISTTIMEFORMAT5.2 Bash Variables
      HOME5.1 Bourne Shell Variables
      HOME5.1 Bourne Shell Variables
      horizontal-scroll-mode8.3.1 Readline Init File Syntax
      HOSTFILE5.2 Bash Variables
      HOSTFILE5.2 Bash Variables
      HOSTNAME5.2 Bash Variables
      HOSTNAME5.2 Bash Variables
      HOSTTYPE5.2 Bash Variables
      HOSTTYPE5.2 Bash Variables
      histchars5.2 Bash Variables
      histchars5.2 Bash Variables
      HISTCMD5.2 Bash Variables
      HISTCMD5.2 Bash Variables
      HISTCONTROL5.2 Bash Variables
      HISTCONTROL5.2 Bash Variables
      HISTFILE5.2 Bash Variables
      HISTFILE5.2 Bash Variables
      HISTFILESIZE5.2 Bash Variables
      HISTFILESIZE5.2 Bash Variables
      HISTIGNORE5.2 Bash Variables
      HISTIGNORE5.2 Bash Variables
      history-preserve-point8.3.1 Readline Init File Syntax
      history-size8.3.1 Readline Init File Syntax
      HISTSIZE5.2 Bash Variables
      HISTSIZE5.2 Bash Variables
      HISTTIMEFORMAT5.2 Bash Variables
      HISTTIMEFORMAT5.2 Bash Variables
      HOME5.1 Bourne Shell Variables
      HOME5.1 Bourne Shell Variables
      horizontal-scroll-mode8.3.1 Readline Init File Syntax
      HOSTFILE5.2 Bash Variables
      HOSTFILE5.2 Bash Variables
      HOSTNAME5.2 Bash Variables
      HOSTNAME5.2 Bash Variables
      HOSTTYPE5.2 Bash Variables
      HOSTTYPE5.2 Bash Variables

      I
      IFS5.1 Bourne Shell Variables
      IFS5.1 Bourne Shell Variables
      IGNOREEOF5.2 Bash Variables
      IGNOREEOF5.2 Bash Variables
      input-meta8.3.1 Readline Init File Syntax
      INPUTRC5.2 Bash Variables
      INPUTRC5.2 Bash Variables
      isearch-terminators8.3.1 Readline Init File Syntax
      IFS5.1 Bourne Shell Variables
      IFS5.1 Bourne Shell Variables
      IGNOREEOF5.2 Bash Variables
      IGNOREEOF5.2 Bash Variables
      input-meta8.3.1 Readline Init File Syntax
      INPUTRC5.2 Bash Variables
      INPUTRC5.2 Bash Variables
      isearch-terminators8.3.1 Readline Init File Syntax

      K
      keymap8.3.1 Readline Init File Syntax
      keymap8.3.1 Readline Init File Syntax

      L
      LANG5.2 Bash Variables
      LANG5.2 Bash Variables
      LC_ALL5.2 Bash Variables
      LC_ALL5.2 Bash Variables
      LC_COLLATE5.2 Bash Variables
      LC_COLLATE5.2 Bash Variables
      LC_CTYPE5.2 Bash Variables
      LC_CTYPE5.2 Bash Variables
      LANG5.2 Bash Variables
      LANG5.2 Bash Variables
      LC_ALL5.2 Bash Variables
      LC_ALL5.2 Bash Variables
      LC_COLLATE5.2 Bash Variables
      LC_COLLATE5.2 Bash Variables
      LC_CTYPE5.2 Bash Variables
      LC_CTYPE5.2 Bash Variables
      LC_MESSAGES3.1.2.5 Locale-Specific Translation
      LC_MESSAGES5.2 Bash Variables
      LC_MESSAGES5.2 Bash Variables
      LC_NUMERIC5.2 Bash Variables
      LC_NUMERIC5.2 Bash Variables
      LINENO5.2 Bash Variables
      LINENO5.2 Bash Variables
      LINES5.2 Bash Variables
      LINES5.2 Bash Variables
      LC_MESSAGES5.2 Bash Variables
      LC_MESSAGES5.2 Bash Variables
      LC_NUMERIC5.2 Bash Variables
      LC_NUMERIC5.2 Bash Variables
      LINENO5.2 Bash Variables
      LINENO5.2 Bash Variables
      LINES5.2 Bash Variables
      LINES5.2 Bash Variables

      M
      MACHTYPE5.2 Bash Variables
      MACHTYPE5.2 Bash Variables
      MAIL5.1 Bourne Shell Variables
      MAIL5.1 Bourne Shell Variables
      MAILCHECK5.2 Bash Variables
      MAILCHECK5.2 Bash Variables
      MAILPATH5.1 Bourne Shell Variables
      MAILPATH5.1 Bourne Shell Variables
      mark-modified-lines8.3.1 Readline Init File Syntax
      mark-symlinked-directories8.3.1 Readline Init File Syntax
      match-hidden-files8.3.1 Readline Init File Syntax
      meta-flag8.3.1 Readline Init File Syntax
      MACHTYPE5.2 Bash Variables
      MACHTYPE5.2 Bash Variables
      MAIL5.1 Bourne Shell Variables
      MAIL5.1 Bourne Shell Variables
      MAILCHECK5.2 Bash Variables
      MAILCHECK5.2 Bash Variables
      MAILPATH5.1 Bourne Shell Variables
      MAILPATH5.1 Bourne Shell Variables
      mark-modified-lines8.3.1 Readline Init File Syntax
      mark-symlinked-directories8.3.1 Readline Init File Syntax
      match-hidden-files8.3.1 Readline Init File Syntax
      meta-flag8.3.1 Readline Init File Syntax

      O
      OLDPWD5.2 Bash Variables
      OLDPWD5.2 Bash Variables
      OPTARG5.1 Bourne Shell Variables
      OPTARG5.1 Bourne Shell Variables
      OPTERR5.2 Bash Variables
      OPTERR5.2 Bash Variables
      OPTIND5.1 Bourne Shell Variables
      OPTIND5.1 Bourne Shell Variables
      OSTYPE5.2 Bash Variables
      OSTYPE5.2 Bash Variables
      output-meta8.3.1 Readline Init File Syntax
      OLDPWD5.2 Bash Variables
      OLDPWD5.2 Bash Variables
      OPTARG5.1 Bourne Shell Variables
      OPTARG5.1 Bourne Shell Variables
      OPTERR5.2 Bash Variables
      OPTERR5.2 Bash Variables
      OPTIND5.1 Bourne Shell Variables
      OPTIND5.1 Bourne Shell Variables
      OSTYPE5.2 Bash Variables
      OSTYPE5.2 Bash Variables
      output-meta8.3.1 Readline Init File Syntax

      P
      page-completions8.3.1 Readline Init File Syntax
      PATH5.1 Bourne Shell Variables
      PATH5.1 Bourne Shell Variables
      PIPESTATUS5.2 Bash Variables
      PIPESTATUS5.2 Bash Variables
      POSIXLY_CORRECT5.2 Bash Variables
      POSIXLY_CORRECT5.2 Bash Variables
      PPID5.2 Bash Variables
      PPID5.2 Bash Variables
      PROMPT_COMMAND5.2 Bash Variables
      PROMPT_COMMAND5.2 Bash Variables
      PS15.1 Bourne Shell Variables
      PS15.1 Bourne Shell Variables
      PS25.1 Bourne Shell Variables
      PS25.1 Bourne Shell Variables
      PS35.2 Bash Variables
      PS35.2 Bash Variables
      PS45.2 Bash Variables
      PS45.2 Bash Variables
      PWD5.2 Bash Variables
      PWD5.2 Bash Variables
      page-completions8.3.1 Readline Init File Syntax
      PATH5.1 Bourne Shell Variables
      PATH5.1 Bourne Shell Variables
      PIPESTATUS5.2 Bash Variables
      PIPESTATUS5.2 Bash Variables
      POSIXLY_CORRECT5.2 Bash Variables
      POSIXLY_CORRECT5.2 Bash Variables
      PPID5.2 Bash Variables
      PPID5.2 Bash Variables
      PROMPT_COMMAND5.2 Bash Variables
      PROMPT_COMMAND5.2 Bash Variables
      PS15.1 Bourne Shell Variables
      PS15.1 Bourne Shell Variables
      PS25.1 Bourne Shell Variables
      PS25.1 Bourne Shell Variables
      PS35.2 Bash Variables
      PS35.2 Bash Variables
      PS45.2 Bash Variables
      PS45.2 Bash Variables
      PWD5.2 Bash Variables
      PWD5.2 Bash Variables

      R
      RANDOM5.2 Bash Variables
      RANDOM5.2 Bash Variables
      REPLY5.2 Bash Variables
      REPLY5.2 Bash Variables
      RANDOM5.2 Bash Variables
      RANDOM5.2 Bash Variables
      REPLY5.2 Bash Variables
      REPLY5.2 Bash Variables
      revert-all-at-newline8.3.1 Readline Init File Syntax

      S
      SECONDS5.2 Bash Variables
      SECONDS5.2 Bash Variables
      SHELL5.2 Bash Variables
      SHELL5.2 Bash Variables
      SHELLOPTS5.2 Bash Variables
      SHELLOPTS5.2 Bash Variables
      SHLVL5.2 Bash Variables
      SHLVL5.2 Bash Variables
      show-all-if-ambiguous8.3.1 Readline Init File Syntax
      show-all-if-unmodified8.3.1 Readline Init File Syntax
      SECONDS5.2 Bash Variables
      SECONDS5.2 Bash Variables
      SHELL5.2 Bash Variables
      SHELL5.2 Bash Variables
      SHELLOPTS5.2 Bash Variables
      SHELLOPTS5.2 Bash Variables
      SHLVL5.2 Bash Variables
      SHLVL5.2 Bash Variables
      show-all-if-ambiguous8.3.1 Readline Init File Syntax
      show-all-if-unmodified8.3.1 Readline Init File Syntax

      T
      TEXTDOMAIN3.1.2.5 Locale-Specific Translation
      TEXTDOMAINDIR3.1.2.5 Locale-Specific Translation
      TIMEFORMAT5.2 Bash Variables
      TIMEFORMAT5.2 Bash Variables
      TMOUT5.2 Bash Variables
      TMOUT5.2 Bash Variables
      TMPDIR5.2 Bash Variables
      TMPDIR5.2 Bash Variables
      TIMEFORMAT5.2 Bash Variables
      TIMEFORMAT5.2 Bash Variables
      TMOUT5.2 Bash Variables
      TMOUT5.2 Bash Variables
      TMPDIR5.2 Bash Variables
      TMPDIR5.2 Bash Variables

      U
      UID5.2 Bash Variables
      UID5.2 Bash Variables
      UID5.2 Bash Variables
      UID5.2 Bash Variables

      V
      visible-stats8.3.1 Readline Init File Syntax
      visible-stats8.3.1 Readline Init File Syntax

      Jump to:   !   @@ -14341,20 +14523,20 @@ to permit their use in free software.
      - + - - - - + + + + - +
      [ < ][ > ]   [ << ][ Up ]
      [ < ][ > ]   [ << ][ Up ] [ >> ]         [Top] [Contents][Index][Index] [ ? ]

      D.4 Function Index

      - + - - - - - - + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - - + + + + - - - - - - + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - + + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - + + + + + + + +
      Jump to:   A   B @@ -14400,236 +14582,238 @@ to permit their use in free software.
      Index Entry Section

      A
      abort (C-g)8.4.8 Some Miscellaneous Commands
      abort (C-g)8.4.8 Some Miscellaneous Commands
      accept-line (Newline or Return)8.4.2 Commands For Manipulating The History
      accept-line (Newline or Return)8.4.2 Commands For Manipulating The History
      alias-expand-line ()8.4.8 Some Miscellaneous Commands
      alias-expand-line ()8.4.8 Some Miscellaneous Commands
      abort (C-g)8.4.8 Some Miscellaneous Commands
      abort (C-g)8.4.8 Some Miscellaneous Commands
      accept-line (Newline or Return)8.4.2 Commands For Manipulating The History
      accept-line (Newline or Return)8.4.2 Commands For Manipulating The History
      alias-expand-line ()8.4.8 Some Miscellaneous Commands
      alias-expand-line ()8.4.8 Some Miscellaneous Commands

      B
      backward-char (C-b)8.4.1 Commands For Moving
      backward-char (C-b)8.4.1 Commands For Moving
      backward-delete-char (Rubout)8.4.3 Commands For Changing Text
      backward-delete-char (Rubout)8.4.3 Commands For Changing Text
      backward-kill-line (C-x Rubout)8.4.4 Killing And Yanking
      backward-kill-line (C-x Rubout)8.4.4 Killing And Yanking
      backward-kill-word (M-DEL)8.4.4 Killing And Yanking
      backward-kill-word (M-DEL)8.4.4 Killing And Yanking
      backward-word (M-b)8.4.1 Commands For Moving
      backward-word (M-b)8.4.1 Commands For Moving
      beginning-of-history (M-&#60;)8.4.2 Commands For Manipulating The History
      beginning-of-history (M-&#60;)8.4.2 Commands For Manipulating The History
      beginning-of-line (C-a)8.4.1 Commands For Moving
      beginning-of-line (C-a)8.4.1 Commands For Moving
      backward-char (C-b)8.4.1 Commands For Moving
      backward-char (C-b)8.4.1 Commands For Moving
      backward-delete-char (Rubout)8.4.3 Commands For Changing Text
      backward-delete-char (Rubout)8.4.3 Commands For Changing Text
      backward-kill-line (C-x Rubout)8.4.4 Killing And Yanking
      backward-kill-line (C-x Rubout)8.4.4 Killing And Yanking
      backward-kill-word (M-DEL)8.4.4 Killing And Yanking
      backward-kill-word (M-DEL)8.4.4 Killing And Yanking
      backward-word (M-b)8.4.1 Commands For Moving
      backward-word (M-b)8.4.1 Commands For Moving
      beginning-of-history (M-&#60;)8.4.2 Commands For Manipulating The History
      beginning-of-history (M-&#60;)8.4.2 Commands For Manipulating The History
      beginning-of-line (C-a)8.4.1 Commands For Moving
      beginning-of-line (C-a)8.4.1 Commands For Moving

      C
      call-last-kbd-macro (C-x e)8.4.7 Keyboard Macros
      call-last-kbd-macro (C-x e)8.4.7 Keyboard Macros
      capitalize-word (M-c)8.4.3 Commands For Changing Text
      capitalize-word (M-c)8.4.3 Commands For Changing Text
      character-search (C-])8.4.8 Some Miscellaneous Commands
      character-search (C-])8.4.8 Some Miscellaneous Commands
      character-search-backward (M-C-])8.4.8 Some Miscellaneous Commands
      character-search-backward (M-C-])8.4.8 Some Miscellaneous Commands
      clear-screen (C-l)8.4.1 Commands For Moving
      clear-screen (C-l)8.4.1 Commands For Moving
      complete (TAB)8.4.6 Letting Readline Type For You
      complete (TAB)8.4.6 Letting Readline Type For You
      complete-command (M-!)8.4.6 Letting Readline Type For You
      complete-command (M-!)8.4.6 Letting Readline Type For You
      complete-filename (M-/)8.4.6 Letting Readline Type For You
      complete-filename (M-/)8.4.6 Letting Readline Type For You
      complete-hostname (M-@)8.4.6 Letting Readline Type For You
      complete-hostname (M-@)8.4.6 Letting Readline Type For You
      complete-into-braces (M-{)8.4.6 Letting Readline Type For You
      complete-into-braces (M-{)8.4.6 Letting Readline Type For You
      complete-username (M-~)8.4.6 Letting Readline Type For You
      complete-username (M-~)8.4.6 Letting Readline Type For You
      complete-variable (M-$)8.4.6 Letting Readline Type For You
      complete-variable (M-$)8.4.6 Letting Readline Type For You
      copy-backward-word ()8.4.4 Killing And Yanking
      copy-backward-word ()8.4.4 Killing And Yanking
      copy-forward-word ()8.4.4 Killing And Yanking
      copy-forward-word ()8.4.4 Killing And Yanking
      copy-region-as-kill ()8.4.4 Killing And Yanking
      copy-region-as-kill ()8.4.4 Killing And Yanking
      call-last-kbd-macro (C-x e)8.4.7 Keyboard Macros
      call-last-kbd-macro (C-x e)8.4.7 Keyboard Macros
      capitalize-word (M-c)8.4.3 Commands For Changing Text
      capitalize-word (M-c)8.4.3 Commands For Changing Text
      character-search (C-])8.4.8 Some Miscellaneous Commands
      character-search (C-])8.4.8 Some Miscellaneous Commands
      character-search-backward (M-C-])8.4.8 Some Miscellaneous Commands
      character-search-backward (M-C-])8.4.8 Some Miscellaneous Commands
      clear-screen (C-l)8.4.1 Commands For Moving
      clear-screen (C-l)8.4.1 Commands For Moving
      complete (TAB)8.4.6 Letting Readline Type For You
      complete (TAB)8.4.6 Letting Readline Type For You
      complete-command (M-!)8.4.6 Letting Readline Type For You
      complete-command (M-!)8.4.6 Letting Readline Type For You
      complete-filename (M-/)8.4.6 Letting Readline Type For You
      complete-filename (M-/)8.4.6 Letting Readline Type For You
      complete-hostname (M-@)8.4.6 Letting Readline Type For You
      complete-hostname (M-@)8.4.6 Letting Readline Type For You
      complete-into-braces (M-{)8.4.6 Letting Readline Type For You
      complete-into-braces (M-{)8.4.6 Letting Readline Type For You
      complete-username (M-~)8.4.6 Letting Readline Type For You
      complete-username (M-~)8.4.6 Letting Readline Type For You
      complete-variable (M-$)8.4.6 Letting Readline Type For You
      complete-variable (M-$)8.4.6 Letting Readline Type For You
      copy-backward-word ()8.4.4 Killing And Yanking
      copy-backward-word ()8.4.4 Killing And Yanking
      copy-forward-word ()8.4.4 Killing And Yanking
      copy-forward-word ()8.4.4 Killing And Yanking
      copy-region-as-kill ()8.4.4 Killing And Yanking
      copy-region-as-kill ()8.4.4 Killing And Yanking

      D
      delete-char (C-d)8.4.3 Commands For Changing Text
      delete-char (C-d)8.4.3 Commands For Changing Text
      delete-char-or-list ()8.4.6 Letting Readline Type For You
      delete-char-or-list ()8.4.6 Letting Readline Type For You
      delete-horizontal-space ()8.4.4 Killing And Yanking
      delete-horizontal-space ()8.4.4 Killing And Yanking
      digit-argument (M-0, M-1, <small>...</small> M--)8.4.5 Specifying Numeric Arguments
      digit-argument (M-0, M-1, <small>...</small> M--)8.4.5 Specifying Numeric Arguments
      display-shell-version (C-x C-v)8.4.8 Some Miscellaneous Commands
      display-shell-version (C-x C-v)8.4.8 Some Miscellaneous Commands
      do-uppercase-version (M-a, M-b, M-x, <small>...</small>)8.4.8 Some Miscellaneous Commands
      do-uppercase-version (M-a, M-b, M-x, <small>...</small>)8.4.8 Some Miscellaneous Commands
      downcase-word (M-l)8.4.3 Commands For Changing Text
      downcase-word (M-l)8.4.3 Commands For Changing Text
      dump-functions ()8.4.8 Some Miscellaneous Commands
      dump-functions ()8.4.8 Some Miscellaneous Commands
      dump-macros ()8.4.8 Some Miscellaneous Commands
      dump-macros ()8.4.8 Some Miscellaneous Commands
      dump-variables ()8.4.8 Some Miscellaneous Commands
      dump-variables ()8.4.8 Some Miscellaneous Commands
      dynamic-complete-history (M-TAB)8.4.6 Letting Readline Type For You
      dynamic-complete-history (M-TAB)8.4.6 Letting Readline Type For You
      dabbrev-expand ()8.4.6 Letting Readline Type For You
      dabbrev-expand ()8.4.6 Letting Readline Type For You
      delete-char (C-d)8.4.3 Commands For Changing Text
      delete-char (C-d)8.4.3 Commands For Changing Text
      delete-char-or-list ()8.4.6 Letting Readline Type For You
      delete-char-or-list ()8.4.6 Letting Readline Type For You
      delete-horizontal-space ()8.4.4 Killing And Yanking
      delete-horizontal-space ()8.4.4 Killing And Yanking
      digit-argument (M-0, M-1, <small>...</small> M--)8.4.5 Specifying Numeric Arguments
      digit-argument (M-0, M-1, <small>...</small> M--)8.4.5 Specifying Numeric Arguments
      display-shell-version (C-x C-v)8.4.8 Some Miscellaneous Commands
      display-shell-version (C-x C-v)8.4.8 Some Miscellaneous Commands
      do-uppercase-version (M-a, M-b, M-x, <small>...</small>)8.4.8 Some Miscellaneous Commands
      do-uppercase-version (M-a, M-b, M-x, <small>...</small>)8.4.8 Some Miscellaneous Commands
      downcase-word (M-l)8.4.3 Commands For Changing Text
      downcase-word (M-l)8.4.3 Commands For Changing Text
      dump-functions ()8.4.8 Some Miscellaneous Commands
      dump-functions ()8.4.8 Some Miscellaneous Commands
      dump-macros ()8.4.8 Some Miscellaneous Commands
      dump-macros ()8.4.8 Some Miscellaneous Commands
      dump-variables ()8.4.8 Some Miscellaneous Commands
      dump-variables ()8.4.8 Some Miscellaneous Commands
      dynamic-complete-history (M-TAB)8.4.6 Letting Readline Type For You
      dynamic-complete-history (M-TAB)8.4.6 Letting Readline Type For You

      E
      edit-and-execute-command (C-xC-e)8.4.8 Some Miscellaneous Commands
      edit-and-execute-command (C-xC-e)8.4.8 Some Miscellaneous Commands
      end-kbd-macro (C-x ))8.4.7 Keyboard Macros
      end-kbd-macro (C-x ))8.4.7 Keyboard Macros
      end-of-history (M-&#62;)8.4.2 Commands For Manipulating The History
      end-of-history (M-&#62;)8.4.2 Commands For Manipulating The History
      end-of-line (C-e)8.4.1 Commands For Moving
      end-of-line (C-e)8.4.1 Commands For Moving
      exchange-point-and-mark (C-x C-x)8.4.8 Some Miscellaneous Commands
      exchange-point-and-mark (C-x C-x)8.4.8 Some Miscellaneous Commands
      edit-and-execute-command (C-xC-e)8.4.8 Some Miscellaneous Commands
      edit-and-execute-command (C-xC-e)8.4.8 Some Miscellaneous Commands
      end-kbd-macro (C-x ))8.4.7 Keyboard Macros
      end-kbd-macro (C-x ))8.4.7 Keyboard Macros
      end-of-history (M-&#62;)8.4.2 Commands For Manipulating The History
      end-of-history (M-&#62;)8.4.2 Commands For Manipulating The History
      end-of-line (C-e)8.4.1 Commands For Moving
      end-of-line (C-e)8.4.1 Commands For Moving
      exchange-point-and-mark (C-x C-x)8.4.8 Some Miscellaneous Commands
      exchange-point-and-mark (C-x C-x)8.4.8 Some Miscellaneous Commands

      F
      forward-backward-delete-char ()8.4.3 Commands For Changing Text
      forward-backward-delete-char ()8.4.3 Commands For Changing Text
      forward-char (C-f)8.4.1 Commands For Moving
      forward-char (C-f)8.4.1 Commands For Moving
      forward-search-history (C-s)8.4.2 Commands For Manipulating The History
      forward-search-history (C-s)8.4.2 Commands For Manipulating The History
      forward-word (M-f)8.4.1 Commands For Moving
      forward-word (M-f)8.4.1 Commands For Moving
      forward-backward-delete-char ()8.4.3 Commands For Changing Text
      forward-backward-delete-char ()8.4.3 Commands For Changing Text
      forward-char (C-f)8.4.1 Commands For Moving
      forward-char (C-f)8.4.1 Commands For Moving
      forward-search-history (C-s)8.4.2 Commands For Manipulating The History
      forward-search-history (C-s)8.4.2 Commands For Manipulating The History
      forward-word (M-f)8.4.1 Commands For Moving
      forward-word (M-f)8.4.1 Commands For Moving

      G
      glob-complete-word (M-g)8.4.8 Some Miscellaneous Commands
      glob-complete-word (M-g)8.4.8 Some Miscellaneous Commands
      glob-expand-word (C-x *)8.4.8 Some Miscellaneous Commands
      glob-expand-word (C-x *)8.4.8 Some Miscellaneous Commands
      glob-list-expansions (C-x g)8.4.8 Some Miscellaneous Commands
      glob-list-expansions (C-x g)8.4.8 Some Miscellaneous Commands
      glob-complete-word (M-g)8.4.8 Some Miscellaneous Commands
      glob-complete-word (M-g)8.4.8 Some Miscellaneous Commands
      glob-expand-word (C-x *)8.4.8 Some Miscellaneous Commands
      glob-expand-word (C-x *)8.4.8 Some Miscellaneous Commands
      glob-list-expansions (C-x g)8.4.8 Some Miscellaneous Commands
      glob-list-expansions (C-x g)8.4.8 Some Miscellaneous Commands

      H
      history-and-alias-expand-line ()8.4.8 Some Miscellaneous Commands
      history-and-alias-expand-line ()8.4.8 Some Miscellaneous Commands
      history-expand-line (M-^)8.4.8 Some Miscellaneous Commands
      history-expand-line (M-^)8.4.8 Some Miscellaneous Commands
      history-search-backward ()8.4.2 Commands For Manipulating The History
      history-search-backward ()8.4.2 Commands For Manipulating The History
      history-search-forward ()8.4.2 Commands For Manipulating The History
      history-search-forward ()8.4.2 Commands For Manipulating The History
      history-and-alias-expand-line ()8.4.8 Some Miscellaneous Commands
      history-and-alias-expand-line ()8.4.8 Some Miscellaneous Commands
      history-expand-line (M-^)8.4.8 Some Miscellaneous Commands
      history-expand-line (M-^)8.4.8 Some Miscellaneous Commands
      history-search-backward ()8.4.2 Commands For Manipulating The History
      history-search-backward ()8.4.2 Commands For Manipulating The History
      history-search-forward ()8.4.2 Commands For Manipulating The History
      history-search-forward ()8.4.2 Commands For Manipulating The History

      I
      insert-comment (M-#)8.4.8 Some Miscellaneous Commands
      insert-comment (M-#)8.4.8 Some Miscellaneous Commands
      insert-completions (M-*)8.4.6 Letting Readline Type For You
      insert-completions (M-*)8.4.6 Letting Readline Type For You
      insert-last-argument (M-. or M-_)8.4.8 Some Miscellaneous Commands
      insert-last-argument (M-. or M-_)8.4.8 Some Miscellaneous Commands
      insert-comment (M-#)8.4.8 Some Miscellaneous Commands
      insert-comment (M-#)8.4.8 Some Miscellaneous Commands
      insert-completions (M-*)8.4.6 Letting Readline Type For You
      insert-completions (M-*)8.4.6 Letting Readline Type For You
      insert-last-argument (M-. or M-_)8.4.8 Some Miscellaneous Commands
      insert-last-argument (M-. or M-_)8.4.8 Some Miscellaneous Commands

      K
      kill-line (C-k)8.4.4 Killing And Yanking
      kill-line (C-k)8.4.4 Killing And Yanking
      kill-region ()8.4.4 Killing And Yanking
      kill-region ()8.4.4 Killing And Yanking
      kill-whole-line ()8.4.4 Killing And Yanking
      kill-whole-line ()8.4.4 Killing And Yanking
      kill-word (M-d)8.4.4 Killing And Yanking
      kill-word (M-d)8.4.4 Killing And Yanking
      kill-line (C-k)8.4.4 Killing And Yanking
      kill-line (C-k)8.4.4 Killing And Yanking
      kill-region ()8.4.4 Killing And Yanking
      kill-region ()8.4.4 Killing And Yanking
      kill-whole-line ()8.4.4 Killing And Yanking
      kill-whole-line ()8.4.4 Killing And Yanking
      kill-word (M-d)8.4.4 Killing And Yanking
      kill-word (M-d)8.4.4 Killing And Yanking

      M
      magic-space ()8.4.8 Some Miscellaneous Commands
      magic-space ()8.4.8 Some Miscellaneous Commands
      menu-complete ()8.4.6 Letting Readline Type For You
      menu-complete ()8.4.6 Letting Readline Type For You
      magic-space ()8.4.8 Some Miscellaneous Commands
      magic-space ()8.4.8 Some Miscellaneous Commands
      menu-complete ()8.4.6 Letting Readline Type For You
      menu-complete ()8.4.6 Letting Readline Type For You

      N
      next-history (C-n)8.4.2 Commands For Manipulating The History
      next-history (C-n)8.4.2 Commands For Manipulating The History
      non-incremental-forward-search-history (M-n)8.4.2 Commands For Manipulating The History
      non-incremental-forward-search-history (M-n)8.4.2 Commands For Manipulating The History
      non-incremental-reverse-search-history (M-p)8.4.2 Commands For Manipulating The History
      non-incremental-reverse-search-history (M-p)8.4.2 Commands For Manipulating The History
      next-history (C-n)8.4.2 Commands For Manipulating The History
      next-history (C-n)8.4.2 Commands For Manipulating The History
      non-incremental-forward-search-history (M-n)8.4.2 Commands For Manipulating The History
      non-incremental-forward-search-history (M-n)8.4.2 Commands For Manipulating The History
      non-incremental-reverse-search-history (M-p)8.4.2 Commands For Manipulating The History
      non-incremental-reverse-search-history (M-p)8.4.2 Commands For Manipulating The History

      O
      operate-and-get-next (C-o)8.4.8 Some Miscellaneous Commands
      operate-and-get-next (C-o)8.4.8 Some Miscellaneous Commands
      overwrite-mode ()8.4.3 Commands For Changing Text
      overwrite-mode ()8.4.3 Commands For Changing Text
      operate-and-get-next (C-o)8.4.8 Some Miscellaneous Commands
      operate-and-get-next (C-o)8.4.8 Some Miscellaneous Commands
      overwrite-mode ()8.4.3 Commands For Changing Text
      overwrite-mode ()8.4.3 Commands For Changing Text

      P
      possible-command-completions (C-x !)8.4.6 Letting Readline Type For You
      possible-command-completions (C-x !)8.4.6 Letting Readline Type For You
      possible-completions (M-?)8.4.6 Letting Readline Type For You
      possible-completions (M-?)8.4.6 Letting Readline Type For You
      possible-filename-completions (C-x /)8.4.6 Letting Readline Type For You
      possible-filename-completions (C-x /)8.4.6 Letting Readline Type For You
      possible-hostname-completions (C-x @)8.4.6 Letting Readline Type For You
      possible-hostname-completions (C-x @)8.4.6 Letting Readline Type For You
      possible-username-completions (C-x ~)8.4.6 Letting Readline Type For You
      possible-username-completions (C-x ~)8.4.6 Letting Readline Type For You
      possible-variable-completions (C-x $)8.4.6 Letting Readline Type For You
      possible-variable-completions (C-x $)8.4.6 Letting Readline Type For You
      prefix-meta (ESC)8.4.8 Some Miscellaneous Commands
      prefix-meta (ESC)8.4.8 Some Miscellaneous Commands
      previous-history (C-p)8.4.2 Commands For Manipulating The History
      previous-history (C-p)8.4.2 Commands For Manipulating The History
      possible-command-completions (C-x !)8.4.6 Letting Readline Type For You
      possible-command-completions (C-x !)8.4.6 Letting Readline Type For You
      possible-completions (M-?)8.4.6 Letting Readline Type For You
      possible-completions (M-?)8.4.6 Letting Readline Type For You
      possible-filename-completions (C-x /)8.4.6 Letting Readline Type For You
      possible-filename-completions (C-x /)8.4.6 Letting Readline Type For You
      possible-hostname-completions (C-x @)8.4.6 Letting Readline Type For You
      possible-hostname-completions (C-x @)8.4.6 Letting Readline Type For You
      possible-username-completions (C-x ~)8.4.6 Letting Readline Type For You
      possible-username-completions (C-x ~)8.4.6 Letting Readline Type For You
      possible-variable-completions (C-x $)8.4.6 Letting Readline Type For You
      possible-variable-completions (C-x $)8.4.6 Letting Readline Type For You
      prefix-meta (ESC)8.4.8 Some Miscellaneous Commands
      prefix-meta (ESC)8.4.8 Some Miscellaneous Commands
      previous-history (C-p)8.4.2 Commands For Manipulating The History
      previous-history (C-p)8.4.2 Commands For Manipulating The History

      Q
      quoted-insert (C-q or C-v)8.4.3 Commands For Changing Text
      quoted-insert (C-q or C-v)8.4.3 Commands For Changing Text
      quoted-insert (C-q or C-v)8.4.3 Commands For Changing Text
      quoted-insert (C-q or C-v)8.4.3 Commands For Changing Text

      R
      re-read-init-file (C-x C-r)8.4.8 Some Miscellaneous Commands
      re-read-init-file (C-x C-r)8.4.8 Some Miscellaneous Commands
      redraw-current-line ()8.4.1 Commands For Moving
      redraw-current-line ()8.4.1 Commands For Moving
      reverse-search-history (C-r)8.4.2 Commands For Manipulating The History
      reverse-search-history (C-r)8.4.2 Commands For Manipulating The History
      revert-line (M-r)8.4.8 Some Miscellaneous Commands
      revert-line (M-r)8.4.8 Some Miscellaneous Commands
      re-read-init-file (C-x C-r)8.4.8 Some Miscellaneous Commands
      re-read-init-file (C-x C-r)8.4.8 Some Miscellaneous Commands
      redraw-current-line ()8.4.1 Commands For Moving
      redraw-current-line ()8.4.1 Commands For Moving
      reverse-search-history (C-r)8.4.2 Commands For Manipulating The History
      reverse-search-history (C-r)8.4.2 Commands For Manipulating The History
      revert-line (M-r)8.4.8 Some Miscellaneous Commands
      revert-line (M-r)8.4.8 Some Miscellaneous Commands

      S
      self-insert (a, b, A, 1, !, <small>...</small>)8.4.3 Commands For Changing Text
      self-insert (a, b, A, 1, !, <small>...</small>)8.4.3 Commands For Changing Text
      set-mark (C-@)8.4.8 Some Miscellaneous Commands
      set-mark (C-@)8.4.8 Some Miscellaneous Commands
      shell-expand-line (M-C-e)8.4.8 Some Miscellaneous Commands
      shell-expand-line (M-C-e)8.4.8 Some Miscellaneous Commands
      start-kbd-macro (C-x ()8.4.7 Keyboard Macros
      start-kbd-macro (C-x ()8.4.7 Keyboard Macros
      self-insert (a, b, A, 1, !, <small>...</small>)8.4.3 Commands For Changing Text
      self-insert (a, b, A, 1, !, <small>...</small>)8.4.3 Commands For Changing Text
      set-mark (C-@)8.4.8 Some Miscellaneous Commands
      set-mark (C-@)8.4.8 Some Miscellaneous Commands
      shell-expand-line (M-C-e)8.4.8 Some Miscellaneous Commands
      shell-expand-line (M-C-e)8.4.8 Some Miscellaneous Commands
      start-kbd-macro (C-x ()8.4.7 Keyboard Macros
      start-kbd-macro (C-x ()8.4.7 Keyboard Macros

      T
      tilde-expand (M-&#38;)8.4.8 Some Miscellaneous Commands
      tilde-expand (M-&#38;)8.4.8 Some Miscellaneous Commands
      transpose-chars (C-t)8.4.3 Commands For Changing Text
      transpose-chars (C-t)8.4.3 Commands For Changing Text
      transpose-words (M-t)8.4.3 Commands For Changing Text
      transpose-words (M-t)8.4.3 Commands For Changing Text
      tilde-expand (M-&#38;)8.4.8 Some Miscellaneous Commands
      tilde-expand (M-&#38;)8.4.8 Some Miscellaneous Commands
      transpose-chars (C-t)8.4.3 Commands For Changing Text
      transpose-chars (C-t)8.4.3 Commands For Changing Text
      transpose-words (M-t)8.4.3 Commands For Changing Text
      transpose-words (M-t)8.4.3 Commands For Changing Text

      U
      undo (C-_ or C-x C-u)8.4.8 Some Miscellaneous Commands
      undo (C-_ or C-x C-u)8.4.8 Some Miscellaneous Commands
      universal-argument ()8.4.5 Specifying Numeric Arguments
      universal-argument ()8.4.5 Specifying Numeric Arguments
      unix-filename-rubout ()8.4.4 Killing And Yanking
      unix-filename-rubout ()8.4.4 Killing And Yanking
      unix-line-discard (C-u)8.4.4 Killing And Yanking
      unix-line-discard (C-u)8.4.4 Killing And Yanking
      unix-word-rubout (C-w)8.4.4 Killing And Yanking
      unix-word-rubout (C-w)8.4.4 Killing And Yanking
      upcase-word (M-u)8.4.3 Commands For Changing Text
      upcase-word (M-u)8.4.3 Commands For Changing Text
      undo (C-_ or C-x C-u)8.4.8 Some Miscellaneous Commands
      undo (C-_ or C-x C-u)8.4.8 Some Miscellaneous Commands
      universal-argument ()8.4.5 Specifying Numeric Arguments
      universal-argument ()8.4.5 Specifying Numeric Arguments
      unix-filename-rubout ()8.4.4 Killing And Yanking
      unix-filename-rubout ()8.4.4 Killing And Yanking
      unix-line-discard (C-u)8.4.4 Killing And Yanking
      unix-line-discard (C-u)8.4.4 Killing And Yanking
      unix-word-rubout (C-w)8.4.4 Killing And Yanking
      unix-word-rubout (C-w)8.4.4 Killing And Yanking
      upcase-word (M-u)8.4.3 Commands For Changing Text
      upcase-word (M-u)8.4.3 Commands For Changing Text

      Y
      yank (C-y)8.4.4 Killing And Yanking
      yank (C-y)8.4.4 Killing And Yanking
      yank-last-arg (M-. or M-_)8.4.2 Commands For Manipulating The History
      yank-last-arg (M-. or M-_)8.4.2 Commands For Manipulating The History
      yank-nth-arg (M-C-y)8.4.2 Commands For Manipulating The History
      yank-nth-arg (M-C-y)8.4.2 Commands For Manipulating The History
      yank-pop (M-y)8.4.4 Killing And Yanking
      yank-pop (M-y)8.4.4 Killing And Yanking
      yank (C-y)8.4.4 Killing And Yanking
      yank (C-y)8.4.4 Killing And Yanking
      yank-last-arg (M-. or M-_)8.4.2 Commands For Manipulating The History
      yank-last-arg (M-. or M-_)8.4.2 Commands For Manipulating The History
      yank-nth-arg (M-C-y)8.4.2 Commands For Manipulating The History
      yank-nth-arg (M-C-y)8.4.2 Commands For Manipulating The History
      yank-pop (M-y)8.4.4 Killing And Yanking
      yank-pop (M-y)8.4.4 Killing And Yanking

      Jump to:   A   @@ -14675,20 +14859,20 @@ to permit their use in free software.
      - + - + - + - +
      [ < ]
      [ < ] [ > ]   [ << ][ Up ][ Up ] [ >> ]         [Top] [Contents][Index][Index] [ ? ]

      D.5 Concept Index

      - + - - + + - - + + - - - + + + - - - - - + + + + + @@ -14769,21 +14953,21 @@ to permit their use in free software. - - + + - + - - - - - + + + + + - + @@ -14791,44 +14975,44 @@ to permit their use in free software. - - + + - + - - - - - + + + + + - - - - - + + + + + - + - - + + - + @@ -14837,7 +15021,7 @@ to permit their use in free software. - + @@ -14851,36 +15035,36 @@ to permit their use in free software. - + - - + + - + - + - + - + - + - + - - - + + + @@ -14889,14 +15073,14 @@ to permit their use in free software. - + - +
      Jump to:   A   B @@ -14738,26 +14922,26 @@ to permit their use in free software.
      Index Entry Section

      A
      alias expansion6.6 Aliases
      arithmetic evaluation6.5 Shell Arithmetic
      alias expansion6.6 Aliases
      arithmetic evaluation6.5 Shell Arithmetic
      arithmetic expansion3.5.5 Arithmetic Expansion
      arithmetic, shell6.5 Shell Arithmetic
      arrays6.7 Arrays
      arithmetic, shell6.5 Shell Arithmetic
      arrays6.7 Arrays

      B
      background7.1 Job Control Basics
      Bash configuration10.1 Basic Installation
      Bash installation10.1 Basic Installation
      background7.1 Job Control Basics
      Bash configuration10.1 Basic Installation
      Bash installation10.1 Basic Installation
      Bourne shell3. Basic Shell Features
      brace expansion3.5.1 Brace Expansion
      builtin2. Definitions

      C
      command editing8.2.1 Readline Bare Essentials
      command execution3.7.2 Command Search and Execution
      command expansion3.7.1 Simple Command Expansion
      command history9.1 Bash History Facilities
      command search3.7.2 Command Search and Execution
      command editing8.2.1 Readline Bare Essentials
      command execution3.7.2 Command Search and Execution
      command expansion3.7.1 Simple Command Expansion
      command history9.1 Bash History Facilities
      command search3.7.2 Command Search and Execution
      command substitution3.5.4 Command Substitution
      command timing3.2.2 Pipelines
      commands, compound3.2.4 Compound Commands
      commands, shell3.2 Shell Commands
      commands, simple3.2.1 Simple Commands
      comments, shell3.1.3 Comments
      completion builtins8.7 Programmable Completion Builtins
      configuration10.1 Basic Installation
      completion builtins8.7 Programmable Completion Builtins
      configuration10.1 Basic Installation
      control operator2. Definitions

      D
      directory stack6.8 The Directory Stack
      directory stack6.8 The Directory Stack

      E
      editing command lines8.2.1 Readline Bare Essentials
      environment3.7.4 Environment
      evaluation, arithmetic6.5 Shell Arithmetic
      event designators9.3.1 Event Designators
      execution environment3.7.3 Command Execution Environment
      editing command lines8.2.1 Readline Bare Essentials
      environment3.7.4 Environment
      evaluation, arithmetic6.5 Shell Arithmetic
      event designators9.3.1 Event Designators
      execution environment3.7.3 Command Execution Environment
      exit status2. Definitions
      exit status3.7.5 Exit Status
      exit status3.7.5 Exit Status
      expansion3.5 Shell Expansions
      expansion, arithmetic3.5.5 Arithmetic Expansion
      expansion, brace3.5.1 Brace Expansion
      expansion, parameter3.5.3 Shell Parameter Expansion
      expansion, pathname3.5.8 Filename Expansion
      expansion, tilde3.5.2 Tilde Expansion
      expressions, arithmetic6.5 Shell Arithmetic
      expressions, conditional6.4 Bash Conditional Expressions
      expressions, arithmetic6.5 Shell Arithmetic
      expressions, conditional6.4 Bash Conditional Expressions

      F
      field2. Definitions
      filename2. Definitions
      filename expansion3.5.8 Filename Expansion
      foreground7.1 Job Control Basics
      foreground7.1 Job Control Basics
      functions, shell3.3 Shell Functions

      H
      history builtins9.2 Bash History Builtins
      history events9.3.1 Event Designators
      history expansion9.3 History Expansion
      history list9.1 Bash History Facilities
      History, how to use8.7 Programmable Completion Builtins
      history builtins9.2 Bash History Builtins
      history events9.3.1 Event Designators
      history expansion9.3 History Expansion
      history list9.1 Bash History Facilities
      History, how to use8.7 Programmable Completion Builtins

      I
      identifier2. Definitions
      initialization file, readline8.3 Readline Init File
      installation10.1 Basic Installation
      interaction, readline8.2 Readline Interaction
      interactive shell6.1 Invoking Bash
      interactive shell6.3 Interactive Shells
      initialization file, readline8.3 Readline Init File
      installation10.1 Basic Installation
      interaction, readline8.2 Readline Interaction
      interactive shell6.1 Invoking Bash
      interactive shell6.3 Interactive Shells
      internationalization3.1.2.5 Locale-Specific Translation

      J
      job2. Definitions
      job control2. Definitions
      job control7.1 Job Control Basics
      job control7.1 Job Control Basics

      K
      kill ring8.2.3 Readline Killing Commands
      killing text8.2.3 Readline Killing Commands
      kill ring8.2.3 Readline Killing Commands
      killing text8.2.3 Readline Killing Commands

      L
      localization3.1.2.5 Locale-Specific Translation
      login shell6.1 Invoking Bash
      login shell6.1 Invoking Bash

      M
      matching, pattern3.5.8.1 Pattern Matching
      N
      name2. Definitions
      native languages3.1.2.5 Locale-Specific Translation
      notation, readline8.2.1 Readline Bare Essentials
      notation, readline8.2.1 Readline Bare Essentials

      O
      operator, shell2. Definitions
      pattern matching3.5.8.1 Pattern Matching
      pipeline3.2.2 Pipelines
      POSIX2. Definitions
      POSIX Mode6.11 Bash POSIX Mode
      POSIX Mode6.11 Bash POSIX Mode
      process group2. Definitions
      process group ID2. Definitions
      process substitution3.5.6 Process Substitution
      programmable completion8.6 Programmable Completion
      prompting6.9 Controlling the Prompt
      programmable completion8.6 Programmable Completion
      prompting6.9 Controlling the Prompt

      Q
      quoting3.1.2 Quoting
      quoting, ANSI3.1.2.4 ANSI-C Quoting

      R
      Readline, how to use7.3 Job Control Variables
      Readline, how to use7.3 Job Control Variables
      redirection3.6 Redirections
      reserved word2. Definitions
      restricted shell6.10 The Restricted Shell
      restricted shell6.10 The Restricted Shell
      return status2. Definitions

      S
      shell arithmetic6.5 Shell Arithmetic
      shell arithmetic6.5 Shell Arithmetic
      shell function3.3 Shell Functions
      shell script3.8 Shell Scripts
      shell script3.8 Shell Scripts
      shell variable3.4 Shell Parameters
      shell, interactive6.3 Interactive Shells
      shell, interactive6.3 Interactive Shells
      signal2. Definitions
      signal handling3.7.6 Signals
      signal handling3.7.6 Signals
      special builtin2. Definitions
      special builtin4.4 Special Builtins
      startup files6.2 Bash Startup Files
      suspending jobs7.1 Job Control Basics
      special builtin4.4 Special Builtins
      startup files6.2 Bash Startup Files
      suspending jobs7.1 Job Control Basics

      T
      tilde expansion3.5.2 Tilde Expansion

      V
      variable, shell3.4 Shell Parameters
      variables, readline8.3.1 Readline Init File Syntax
      variables, readline8.3.1 Readline Init File Syntax

      W
      word2. Definitions
      word splitting3.5.7 Word Splitting

      Y
      yanking text8.2.3 Readline Killing Commands
      yanking text8.2.3 Readline Killing Commands

      Jump to:   A   @@ -14949,7 +15133,7 @@ to permit their use in free software. - +
      [Top] [Contents][Index][Index] [ ? ]

      Table of Contents

      @@ -15056,226 +15240,228 @@ to permit their use in free software.
      3.6.4 Redirecting Standard Output and Standard Error
      -3.6.5 Here Documents +3.6.5 Appending Standard Output and Standard Error +
      +3.6.6 Here Documents
      -3.6.6 Here Strings +3.6.7 Here Strings
      -3.6.7 Duplicating File Descriptors +3.6.8 Duplicating File Descriptors
      -3.6.8 Moving File Descriptors +3.6.9 Moving File Descriptors
      -3.6.9 Opening File Descriptors for Reading and Writing +3.6.10 Opening File Descriptors for Reading and Writing
      -3.7 Executing Commands +3.7 Executing Commands
      -3.8 Shell Scripts +3.8 Shell Scripts
      -4. Shell Builtin Commands +4. Shell Builtin Commands
      -5. Shell Variables +5. Shell Variables
      -6. Bash Features +6. Bash Features
      -7. Job Control +7. Job Control
      -8. Command Line Editing +8. Command Line Editing
      -9. Using History Interactively +9. Using History Interactively
      -10. Installing Bash +10. Installing Bash
      -A. Reporting Bugs +A. Reporting Bugs
      -B. Major Differences From The Bourne Shell +B. Major Differences From The Bourne Shell
      -C. GNU Free Documentation License +C. GNU Free Documentation License
      -D. Indexes +D. Indexes
      @@ -15284,7 +15470,7 @@ to permit their use in free software. - +
      [Top] [Contents][Index][Index] [ ? ]

      Short Table of Contents

      @@ -15295,27 +15481,27 @@ to permit their use in free software.
      3. Basic Shell Features
      -4. Shell Builtin Commands +4. Shell Builtin Commands
      -5. Shell Variables +5. Shell Variables
      -6. Bash Features +6. Bash Features
      -7. Job Control +7. Job Control
      -8. Command Line Editing +8. Command Line Editing
      -9. Using History Interactively +9. Using History Interactively
      -10. Installing Bash +10. Installing Bash
      -A. Reporting Bugs +A. Reporting Bugs
      -B. Major Differences From The Bourne Shell +B. Major Differences From The Bourne Shell
      -C. GNU Free Documentation License +C. GNU Free Documentation License
      -D. Indexes +D. Indexes
      @@ -15324,11 +15510,11 @@ to permit their use in free software. - +
      [Top] [Contents][Index][Index] [ ? ]

      About this document

      -This document was generated by Chet Ramey on April, 8 2008 +This document was generated by Chet Ramey on May, 29 2008 using texi2html

      @@ -15490,7 +15676,7 @@ the following structure:
      This document was generated -by Chet Ramey on April, 8 2008 +by Chet Ramey on May, 29 2008 using texi2html diff --git a/doc/bashref.info b/doc/bashref.info index 434588627..7c5283785 100644 --- a/doc/bashref.info +++ b/doc/bashref.info @@ -1,11 +1,11 @@ This is bashref.info, produced by makeinfo version 4.11 from -/usr/homes/chet/src/bash/src/doc/bashref.texi. +/Users/chet/src/bash/src/doc/bashref.texi. This text is a brief description of the features that are present in -the Bash shell (version 3.2, 5 April 2008). +the Bash shell (version 4.0, 25 May 2008). - This is Edition 3.2, last updated 5 April 2008, of `The GNU Bash -Reference Manual', for `Bash', Version 3.2. + This is Edition 4.0, last updated 25 May 2008, of `The GNU Bash +Reference Manual', for `Bash', Version 4.0. Copyright (C) 1988-2007 Free Software Foundation, Inc. @@ -38,10 +38,10 @@ Bash Features ************* This text is a brief description of the features that are present in -the Bash shell (version 3.2, 5 April 2008). +the Bash shell (version 4.0, 25 May 2008). - This is Edition 3.2, last updated 5 April 2008, of `The GNU Bash -Reference Manual', for `Bash', Version 3.2. + This is Edition 4.0, last updated 25 May 2008, of `The GNU Bash +Reference Manual', for `Bash', Version 4.0. Bash contains features that appear in other popular shells, and some features that only appear in Bash. Some of the shells that Bash has @@ -185,7 +185,8 @@ These definitions are used throughout the remainder of this manual. `control operator' A `token' that performs a control function. It is a `newline' or - one of the following: `||', `&&', `&', `;', `;;', `|', `(', or `)'. + one of the following: `||', `&&', `&', `;', `;;', `|', `|&', `(', + or `)'. `exit status' The value returned by a command to its caller. The value is @@ -554,14 +555,21 @@ File: bashref.info, Node: Pipelines, Next: Lists, Prev: Simple Commands, Up: 3.2.2 Pipelines --------------- -A `pipeline' is a sequence of simple commands separated by `|'. +A `pipeline' is a sequence of simple commands separated by one of the +control operators `|' or `|&'. The format for a pipeline is - [`time' [`-p']] [`!'] COMMAND1 [`|' COMMAND2 ...] + [`time' [`-p']] [`!'] COMMAND1 [ [`|' or `|&'] COMMAND2 ...] The output of each command in the pipeline is connected via a pipe to the input of the next command. That is, each command reads the -previous command's output. +previous command's output. This connection is performed before any +redirections specified by the command. + + If `|&' is used, the standard error of COMMAND1 is connected to +COMMAND2's standard input through the pipe; it is shorthand for `2>&1 +|'. This implicit redirection of the standard error is performed after +any redirections specified by the command. The reserved word `time' causes timing statistics to be printed for the pipeline once it finishes. The statistics currently consist of @@ -754,16 +762,18 @@ File: bashref.info, Node: Conditional Constructs, Next: Command Grouping, Pre the case of alphabetic characters. The `|' is used to separate multiple patterns, and the `)' operator terminates a pattern list. A list of patterns and an associated command-list is known as a - CLAUSE. Each clause must be terminated with `;;'. The WORD - undergoes tilde expansion, parameter expansion, command + CLAUSE. + + Each clause must be terminated with `;;', `,&', or `;;&'. The + WORD undergoes tilde expansion, parameter expansion, command substitution, arithmetic expansion, and quote removal before matching is attempted. Each PATTERN undergoes tilde expansion, parameter expansion, command substitution, and arithmetic expansion. There may be an arbitrary number of `case' clauses, each terminated - by a `;;'. The first pattern that matches determines the - command-list that is executed. + by a `;;', `;&', or `;;&'. The first pattern that matches + determines the command-list that is executed. Here is an example using `case' in a script that could be used to describe one interesting feature of an animal: @@ -778,6 +788,13 @@ File: bashref.info, Node: Conditional Constructs, Next: Command Grouping, Pre esac echo " legs." + If the `;;' operator is used, no subsequent matches are attempted + after the first pattern match. Using `;&' in place of `;;' + causes execution to continue with the COMMAND-LIST associated with + the next clause, if any. Using `;;&' in place of `;;' causes the + shell to test the patterns in the next clause, if any, and execute + any associated COMMAND-LIST on a successful match. + The return status is zero if no PATTERN is matched. Otherwise, the return status is the exit status of the COMMAND-LIST executed. @@ -1213,12 +1230,18 @@ are not sorted; left to right order is preserved. For example, bash$ echo a{d,c,b}e ade ace abe - A sequence expression takes the form `{X..Y}', where X and Y are -either integers or single characters. When integers are supplied, the -expression expands to each number between X and Y, inclusive. When -characters are supplied, the expression expands to each character -lexicographically between X and Y, inclusive. Note that both X and Y -must be of the same type. + A sequence expression takes the form `{X..Y[INCR]}', where X and Y +are either integers or single characters, and INCR, an optional +increment, is an integer. When integers are supplied, the expression +expands to each number between X and Y, inclusive. Supplied integers +may be prefixed with `0' to force each term to have the same width. +When either X or Y begins with a zero, the shell attempts to force all +generated terms to contain the same number of digits, zero-padding +where necessary. When characters are supplied, the expression expands +to each character lexicographically between X and Y, inclusive. Note +that both X and Y must be of the same type. When the increment is +supplied, it is used as the difference between each term. The default +increment is 1 or -1 as appropriate. Brace expansion is performed before any other expansions, and any characters special to other expansions are preserved in the result. It @@ -1627,7 +1650,12 @@ characters must be quoted if they are to be matched literally. The special pattern characters have the following meanings: `*' - Matches any string, including the null string. + Matches any string, including the null string. When the + `globstar' shell option is enabled, and `*' is used in a filename + expansion context, two adjacent `*'s used as a single pattern will + match all files and zero or more directories and subdirectories. + If followed by a `/', two adjacent `*'s will match only + directories and subdirectories. `?' Matches any single character. @@ -1812,9 +1840,9 @@ specified. If the file does not exist it is created. 3.6.4 Redirecting Standard Output and Standard Error ---------------------------------------------------- -Bash allows both the standard output (file descriptor 1) and the -standard error output (file descriptor 2) to be redirected to the file -whose name is the expansion of WORD with this construct. +This construct allows both the standard output (file descriptor 1) and +the standard error output (file descriptor 2) to be redirected to the +file whose name is the expansion of WORD. There are two formats for redirecting standard output and standard error: @@ -1825,7 +1853,19 @@ error: equivalent to >WORD 2>&1 -3.6.5 Here Documents +3.6.5 Appending Standard Output and Standard Error +-------------------------------------------------- + +This construct allows both the standard output (file descriptor 1) and +the standard error output (file descriptor 2) to be appended to the +file whose name is the expansion of WORD. + + The format for appending standard output and standard error is: + &>>WORD + This is semantically equivalent to + >>WORD 2>&1 + +3.6.6 Here Documents -------------------- This type of redirection instructs the shell to read input from the @@ -1852,7 +1892,7 @@ characters are stripped from input lines and the line containing DELIMITER. This allows here-documents within shell scripts to be indented in a natural fashion. -3.6.6 Here Strings +3.6.7 Here Strings ------------------ A variant of here documents, the format is: @@ -1861,7 +1901,7 @@ A variant of here documents, the format is: The WORD is expanded and supplied to the command on its standard input. -3.6.7 Duplicating File Descriptors +3.6.8 Duplicating File Descriptors ---------------------------------- The redirection operator @@ -1882,7 +1922,7 @@ redirection error occurs. As a special case, if N is omitted, and WORD does not expand to one or more digits, the standard output and standard error are redirected as described previously. -3.6.8 Moving File Descriptors +3.6.9 Moving File Descriptors ----------------------------- The redirection operator @@ -1896,8 +1936,8 @@ closed after being duplicated to N. moves the file descriptor DIGIT to file descriptor N, or the standard output (file descriptor 1) if N is not specified. -3.6.9 Opening File Descriptors for Reading and Writing ------------------------------------------------------- +3.6.10 Opening File Descriptors for Reading and Writing +------------------------------------------------------- The redirection operator [N]<>WORD @@ -1993,8 +2033,13 @@ taken. avoid multiple `PATH' searches (see the description of `hash' in *note Bourne Shell Builtins::). A full search of the directories in `$PATH' is performed only if the command is not found in the - hash table. If the search is unsuccessful, the shell prints an - error message and returns an exit status of 127. + hash table. If the search is unsuccessful, the shell searches for + a defined shell function named `command_not_found_handle'. If + that function exists, it is invoked with the original command and + the original command's arguments as its arguments, and the + function's exit status becomes the exit status of the shell. If + that function is not defined, the shell prints an error message + and returns an exit status of 127. 4. If the search is successful, or if the command name contains one or more slashes, the shell executes the named program in a @@ -2674,8 +2719,9 @@ POSIX standard. command as it would appear in a Readline initialization file (*note Readline Init File::), but each binding or command must be passed as a separate argument; e.g., - `"\C-x\C-r":re-read-init-file'. Options, if supplied, have the - following meanings: + `"\C-x\C-r":re-read-init-file'. + + Options, if supplied, have the following meanings: `-m KEYMAP' Use KEYMAP as the keymap to be affected by the subsequent @@ -2726,7 +2772,12 @@ POSIX standard. `-x KEYSEQ:SHELL-COMMAND' Cause SHELL-COMMAND to be executed whenever KEYSEQ is entered. - + When SHELL-COMMAND is executed, the shell sets the + `READLINE_LINE' variable to the contents of the Readline line + buffer and the `READLINE_POINT' variable to the current + location of the insertion point. If the executed command + changes the value of `READLINE_LINE' or `READLINE_POINT', + those new values will be reflected in the editing state. The return status is zero unless an invalid option is supplied or an error occurs. @@ -2922,13 +2973,24 @@ POSIX standard. there is an error loading a new builtin from a shared object. `help' - help [-s] [PATTERN] + help [-dms] [PATTERN] Display helpful information about builtin commands. If PATTERN is specified, `help' gives detailed help on all commands matching - PATTERN, otherwise a list of the builtins is printed. The `-s' - option restricts the information displayed to a short usage - synopsis. The return status is zero unless no command matches - PATTERN. + PATTERN, otherwise a list of the builtins is printed. + + Options, if supplied, have the following meanings: + + `-d' + Display a short description of each PATTERN + + `-m' + Display the description of each PATTERN in a manpage-like + format + + `-s' + Display only a short usage synopsis for each PATTERN + + The return status is zero unless no command matches PATTERN. `let' let EXPRESSION [EXPRESSION] @@ -2951,6 +3013,47 @@ POSIX standard. logout [N] Exit a login shell, returning a status of N to the shell's parent. +`mapfile' + mapfile [-n COUNT] [-O ORIGIN] [-s COUNT] [-t] [-u FD] [ + -C CALLBACK] [-c QUANTUM] [ARRAY] + Read lines from the standard input into array variable ARRAY, or + from file descriptor FD if the `-u' option is supplied. The + variable `MAPFILE' is the default ARRAY. Options, if supplied, + have the following meanings: + `-n' + Copy at most COUNT lines. If COUNT is 0, all lines are + copied. + + `-O' + Begin assigning to ARRAY at index ORIGIN. The default index + is 0. + + `-s' + Discard the first COUNT lines read. + + `-t' + Remove a trailing line from each line read. + + `-u' + Read lines from file descriptor FD instead of the standard + input. + + `-C' + Evaluate CALLBACK each time QUANTUMP lines are read. The + `-c' option specifies QUANTUM. + + `-c' + Specify the number of lines read between each call to + CALLBACK. + + If `-C' is specified without `-c', the default quantum is 5000. + + If not supplied with an explicit origin, `mapfile' will clear ARRAY + before assigning to it. + + `mapfile' returns successfully unless an invalid option or option + argument is supplied, or ARRAY is invalid or unassignable. + `printf' printf [-v VAR] FORMAT [ARGUMENTS] Write the formatted ARGUMENTS to the standard output under the @@ -3033,9 +3136,10 @@ POSIX standard. `-t TIMEOUT' Cause `read' to time out and return failure if a complete - line of input is not read within TIMEOUT seconds. This - option has no effect if `read' is not reading input from the - terminal or a pipe. + line of input is not read within TIMEOUT seconds. TIMEOUT + may be a decimal number with a fractional portion following + the decimal point. This option has no effect if `read' is + not reading input from the terminal or a pipe. `-u FD' Read input from file descriptor FD. @@ -3073,8 +3177,8 @@ POSIX standard. If the `-f' option is used, `type' does not attempt to find shell functions, as with the `command' builtin. - The return status is zero if any of the NAMES are found, non-zero - if none are found. + The return status is zero if all of the NAMES are found, non-zero + if any are not found. `typeset' typeset [-afFrxi] [-p] [NAME[=VALUE] ...] @@ -3533,6 +3637,11 @@ This builtin allows you to change additional shell optional behavior. respect to quoted arguments to the conditional command's =~ operator. + `dirspell' + If set, Bash attempts spelling correction on directory names + during word completion if the directory name initially + supplied does not exist. + `dotglob' If set, Bash includes filenames beginning with a `.' in the results of filename expansion. @@ -3596,6 +3705,12 @@ This builtin allows you to change additional shell optional behavior. *Note Bash Variables::, for a description of `FIGNORE'. This option is enabled by default. + `globstar' + If set, the pattern `**' used in a filename expansion context + will match a files and zero or more directories and + subdirectories. If the pattern is followed by a `/', only + directories and subdirectories match. + `gnu_errfmt' If set, shell error messages are written in the standard GNU error message format. @@ -6118,6 +6233,13 @@ Variable Settings completion in a case-insensitive fashion. The default value is `off'. + `completion-prefix-display-length' + The length in characters of the common prefix of a list of + possible completions that is displayed without modification. + When set to a value greater than zero, common prefixes longer + than this value are replaced with an ellipsis when displaying + possible completions. + `completion-query-items' The number of possible completions that determines when the user is asked whether the list of possibilities should be @@ -6231,6 +6353,12 @@ Variable Settings sorted horizontally in alphabetical order, rather than down the screen. The default is `off'. + `revert-all-at-newline' + If set to `on', Readline will undo all changes to history + lines before returning when `accept-line' is executed. By + default, history lines may be modified and retain individual + undo lists across calls to `readline'. The default is `off'. + `show-all-if-ambiguous' This alters the default behavior of the completion functions. If set to `on', words which have more than one possible @@ -6920,6 +7048,11 @@ File: bashref.info, Node: Commands For Completion, Next: Keyboard Macros, Pre against lines from the history list for possible completion matches. +`dabbrev-expand ()' + Attempt menu completion on the text before point, comparing the + text against lines from the history list for possible completion + matches. + `complete-into-braces (M-{)' Perform filename completion and insert the list of possible completions enclosed within braces so the list is available to the @@ -7235,17 +7368,19 @@ completion facilities. no matches were generated. `complete' - `complete [-abcdefgjksuv] [-o COMP-OPTION] [-A ACTION] [-G GLOBPAT] [-W WORDLIST] + `complete [-abcdefgjksuv] [-o COMP-OPTION] [-E] [-A ACTION] [-G GLOBPAT] [-W WORDLIST] [-F FUNCTION] [-C COMMAND] [-X FILTERPAT] [-P PREFIX] [-S SUFFIX] NAME [NAME ...]' - `complete -pr [NAME ...]' + `complete -pr [-E] [NAME ...]' Specify how arguments to each NAME should be completed. If the `-p' option is supplied, or if no options are supplied, existing completion specifications are printed in a way that allows them to be reused as input. The `-r' option removes a completion specification for each NAME, or, if no NAMEs are supplied, all - completion specifications. + completion specifications. The `-E' option indicates that the + remaining options and actions should apply to "empty" command + completion; that is, completion attempted on a blank line. The process of applying these completion specifications when word completion is attempted is described above (*note Programmable @@ -9118,26 +9253,26 @@ D.1 Index of Shell Builtin Commands * bind: Bash Builtins. (line 21) * break: Bourne Shell Builtins. (line 29) -* builtin: Bash Builtins. (line 92) -* caller: Bash Builtins. (line 100) +* builtin: Bash Builtins. (line 98) +* caller: Bash Builtins. (line 106) * cd: Bourne Shell Builtins. (line 36) -* command: Bash Builtins. (line 117) +* command: Bash Builtins. (line 123) * compgen: Programmable Completion Builtins. (line 10) * complete: Programmable Completion Builtins. (line 28) * compopt: Programmable Completion Builtins. - (line 210) + (line 212) * continue: Bourne Shell Builtins. (line 55) -* declare: Bash Builtins. (line 136) +* declare: Bash Builtins. (line 142) * dirs: Directory Stack Builtins. (line 7) * disown: Job Control Builtins. (line 83) -* echo: Bash Builtins. (line 202) -* enable: Bash Builtins. (line 254) +* echo: Bash Builtins. (line 208) +* enable: Bash Builtins. (line 260) * eval: Bourne Shell Builtins. (line 63) * exec: Bourne Shell Builtins. @@ -9154,24 +9289,25 @@ D.1 Index of Shell Builtin Commands (line 103) * hash: Bourne Shell Builtins. (line 145) -* help: Bash Builtins. (line 282) +* help: Bash Builtins. (line 288) * history: Bash History Builtins. (line 39) * jobs: Job Control Builtins. (line 25) * kill: Job Control Builtins. (line 57) -* let: Bash Builtins. (line 291) -* local: Bash Builtins. (line 298) -* logout: Bash Builtins. (line 308) +* let: Bash Builtins. (line 308) +* local: Bash Builtins. (line 315) +* logout: Bash Builtins. (line 325) +* mapfile: Bash Builtins. (line 329) * popd: Directory Stack Builtins. (line 37) -* printf: Bash Builtins. (line 312) +* printf: Bash Builtins. (line 370) * pushd: Directory Stack Builtins. (line 58) * pwd: Bourne Shell Builtins. (line 163) -* read: Bash Builtins. (line 337) +* read: Bash Builtins. (line 395) * readonly: Bourne Shell Builtins. (line 172) * return: Bourne Shell Builtins. @@ -9180,7 +9316,7 @@ D.1 Index of Shell Builtin Commands * shift: Bourne Shell Builtins. (line 200) * shopt: The Shopt Builtin. (line 9) -* source: Bash Builtins. (line 402) +* source: Bash Builtins. (line 461) * suspend: Job Control Builtins. (line 94) * test: Bourne Shell Builtins. @@ -9189,12 +9325,12 @@ D.1 Index of Shell Builtin Commands (line 280) * trap: Bourne Shell Builtins. (line 285) -* type: Bash Builtins. (line 406) -* typeset: Bash Builtins. (line 437) -* ulimit: Bash Builtins. (line 443) +* type: Bash Builtins. (line 465) +* typeset: Bash Builtins. (line 496) +* ulimit: Bash Builtins. (line 502) * umask: Bourne Shell Builtins. (line 326) -* unalias: Bash Builtins. (line 529) +* unalias: Bash Builtins. (line 588) * unset: Bourne Shell Builtins. (line 343) * wait: Job Control Builtins. @@ -9209,11 +9345,11 @@ D.2 Index of Shell Reserved Words [index] * Menu: -* !: Pipelines. (line 8) +* !: Pipelines. (line 9) * [[: Conditional Constructs. - (line 108) + (line 117) * ]]: Conditional Constructs. - (line 108) + (line 117) * case: Conditional Constructs. (line 28) * do: Looping Constructs. (line 12) @@ -9233,10 +9369,10 @@ D.2 Index of Shell Reserved Words * in: Conditional Constructs. (line 28) * select: Conditional Constructs. - (line 67) + (line 76) * then: Conditional Constructs. (line 7) -* time: Pipelines. (line 8) +* time: Pipelines. (line 9) * until: Looping Constructs. (line 12) * while: Looping Constructs. (line 20) * {: Command Grouping. (line 21) @@ -9291,22 +9427,24 @@ D.3 Parameter and Variable Index * COMP_TYPE: Bash Variables. (line 131) * COMP_WORDBREAKS: Bash Variables. (line 145) * COMP_WORDS: Bash Variables. (line 151) -* completion-query-items: Readline Init File Syntax. +* completion-prefix-display-length: Readline Init File Syntax. (line 60) +* completion-query-items: Readline Init File Syntax. + (line 67) * COMPREPLY: Bash Variables. (line 158) * convert-meta: Readline Init File Syntax. - (line 70) + (line 77) * DIRSTACK: Bash Variables. (line 163) * disable-completion: Readline Init File Syntax. - (line 76) + (line 83) * editing-mode: Readline Init File Syntax. - (line 81) + (line 88) * EMACS: Bash Variables. (line 173) * enable-keypad: Readline Init File Syntax. - (line 87) + (line 94) * EUID: Bash Variables. (line 178) * expand-tilde: Readline Init File Syntax. - (line 92) + (line 99) * FCEDIT: Bash Variables. (line 182) * FIGNORE: Bash Variables. (line 186) * FUNCNAME: Bash Variables. (line 192) @@ -9319,15 +9457,15 @@ D.3 Parameter and Variable Index * HISTFILESIZE: Bash Variables. (line 253) * HISTIGNORE: Bash Variables. (line 261) * history-preserve-point: Readline Init File Syntax. - (line 96) + (line 103) * history-size: Readline Init File Syntax. - (line 102) + (line 109) * HISTSIZE: Bash Variables. (line 280) * HISTTIMEFORMAT: Bash Variables. (line 284) * HOME: Bourne Shell Variables. (line 13) * horizontal-scroll-mode: Readline Init File Syntax. - (line 107) + (line 114) * HOSTFILE: Bash Variables. (line 293) * HOSTNAME: Bash Variables. (line 304) * HOSTTYPE: Bash Variables. (line 307) @@ -9335,12 +9473,12 @@ D.3 Parameter and Variable Index (line 18) * IGNOREEOF: Bash Variables. (line 310) * input-meta: Readline Init File Syntax. - (line 114) + (line 121) * INPUTRC: Bash Variables. (line 320) * isearch-terminators: Readline Init File Syntax. - (line 121) -* keymap: Readline Init File Syntax. (line 128) +* keymap: Readline Init File Syntax. + (line 135) * LANG: Bash Variables. (line 324) * LC_ALL: Bash Variables. (line 328) * LC_COLLATE: Bash Variables. (line 332) @@ -9357,13 +9495,13 @@ D.3 Parameter and Variable Index * MAILPATH: Bourne Shell Variables. (line 27) * mark-modified-lines: Readline Init File Syntax. - (line 141) + (line 148) * mark-symlinked-directories: Readline Init File Syntax. - (line 146) + (line 153) * match-hidden-files: Readline Init File Syntax. - (line 151) + (line 158) * meta-flag: Readline Init File Syntax. - (line 114) + (line 121) * OLDPWD: Bash Variables. (line 373) * OPTARG: Bourne Shell Variables. (line 34) @@ -9372,9 +9510,9 @@ D.3 Parameter and Variable Index (line 38) * OSTYPE: Bash Variables. (line 380) * output-meta: Readline Init File Syntax. - (line 158) + (line 165) * page-completions: Readline Init File Syntax. - (line 163) + (line 170) * PATH: Bourne Shell Variables. (line 42) * PIPESTATUS: Bash Variables. (line 383) @@ -9390,14 +9528,16 @@ D.3 Parameter and Variable Index * PWD: Bash Variables. (line 416) * RANDOM: Bash Variables. (line 419) * REPLY: Bash Variables. (line 424) +* revert-all-at-newline: Readline Init File Syntax. + (line 180) * SECONDS: Bash Variables. (line 427) * SHELL: Bash Variables. (line 433) * SHELLOPTS: Bash Variables. (line 438) * SHLVL: Bash Variables. (line 447) * show-all-if-ambiguous: Readline Init File Syntax. - (line 173) + (line 186) * show-all-if-unmodified: Readline Init File Syntax. - (line 179) + (line 192) * TEXTDOMAIN: Locale Translation. (line 11) * TEXTDOMAINDIR: Locale Translation. (line 11) * TIMEFORMAT: Bash Variables. (line 452) @@ -9405,7 +9545,7 @@ D.3 Parameter and Variable Index * TMPDIR: Bash Variables. (line 502) * UID: Bash Variables. (line 506) * visible-stats: Readline Init File Syntax. - (line 188) + (line 201)  File: bashref.info, Node: Function Index, Next: Concept Index, Prev: Variable Index, Up: Indexes @@ -9543,7 +9683,7 @@ D.5 Concept Index (line 6) * command substitution: Command Substitution. (line 6) -* command timing: Pipelines. (line 8) +* command timing: Pipelines. (line 9) * commands, compound: Compound Commands. (line 6) * commands, conditional: Conditional Constructs. (line 6) @@ -9567,7 +9707,7 @@ D.5 Concept Index * execution environment: Command Execution Environment. (line 6) * exit status <1>: Exit Status. (line 6) -* exit status: Definitions. (line 25) +* exit status: Definitions. (line 26) * expansion: Shell Expansions. (line 6) * expansion, arithmetic: Arithmetic Expansion. (line 6) @@ -9580,8 +9720,8 @@ D.5 Concept Index * expressions, arithmetic: Shell Arithmetic. (line 6) * expressions, conditional: Bash Conditional Expressions. (line 6) -* field: Definitions. (line 29) -* filename: Definitions. (line 34) +* field: Definitions. (line 30) +* filename: Definitions. (line 35) * filename expansion: Filename Expansion. (line 9) * foreground: Job Control Basics. (line 6) * functions, shell: Shell Functions. (line 6) @@ -9592,8 +9732,8 @@ D.5 Concept Index * history list: Bash History Facilities. (line 6) * History, how to use: Programmable Completion Builtins. - (line 222) -* identifier: Definitions. (line 50) + (line 224) +* identifier: Definitions. (line 51) * initialization file, readline: Readline Init File. (line 6) * installation: Basic Installation. (line 6) * interaction, readline: Readline Interaction. @@ -9601,9 +9741,9 @@ D.5 Concept Index * interactive shell <1>: Interactive Shells. (line 6) * interactive shell: Invoking Bash. (line 127) * internationalization: Locale Translation. (line 6) -* job: Definitions. (line 37) +* job: Definitions. (line 38) * job control <1>: Job Control Basics. (line 6) -* job control: Definitions. (line 41) +* job control: Definitions. (line 42) * kill ring: Readline Killing Commands. (line 19) * killing text: Readline Killing Commands. @@ -9611,12 +9751,12 @@ D.5 Concept Index * localization: Locale Translation. (line 6) * login shell: Invoking Bash. (line 124) * matching, pattern: Pattern Matching. (line 6) -* metacharacter: Definitions. (line 45) -* name: Definitions. (line 50) +* metacharacter: Definitions. (line 46) +* name: Definitions. (line 51) * native languages: Locale Translation. (line 6) * notation, readline: Readline Bare Essentials. (line 6) -* operator, shell: Definitions. (line 56) +* operator, shell: Definitions. (line 57) * parameter expansion: Shell Parameter Expansion. (line 6) * parameters: Shell Parameters. (line 6) @@ -9628,8 +9768,8 @@ D.5 Concept Index * pipeline: Pipelines. (line 6) * POSIX: Definitions. (line 9) * POSIX Mode: Bash POSIX Mode. (line 6) -* process group: Definitions. (line 60) -* process group ID: Definitions. (line 64) +* process group: Definitions. (line 61) +* process group ID: Definitions. (line 65) * process substitution: Process Substitution. (line 6) * programmable completion: Programmable Completion. @@ -9640,28 +9780,28 @@ D.5 Concept Index * Readline, how to use: Job Control Variables. (line 24) * redirection: Redirections. (line 6) -* reserved word: Definitions. (line 68) +* reserved word: Definitions. (line 69) * restricted shell: The Restricted Shell. (line 6) -* return status: Definitions. (line 73) +* return status: Definitions. (line 74) * shell arithmetic: Shell Arithmetic. (line 6) * shell function: Shell Functions. (line 6) * shell script: Shell Scripts. (line 6) * shell variable: Shell Parameters. (line 6) * shell, interactive: Interactive Shells. (line 6) -* signal: Definitions. (line 76) +* signal: Definitions. (line 77) * signal handling: Signals. (line 6) * special builtin <1>: Special Builtins. (line 6) -* special builtin: Definitions. (line 80) +* special builtin: Definitions. (line 81) * startup files: Bash Startup Files. (line 6) * suspending jobs: Job Control Basics. (line 6) * tilde expansion: Tilde Expansion. (line 6) -* token: Definitions. (line 84) +* token: Definitions. (line 85) * translation, native languages: Locale Translation. (line 6) * variable, shell: Shell Parameters. (line 6) * variables, readline: Readline Init File Syntax. (line 37) -* word: Definitions. (line 88) +* word: Definitions. (line 89) * word splitting: Word Splitting. (line 6) * yanking text: Readline Killing Commands. (line 6) @@ -9669,131 +9809,131 @@ D.5 Concept Index  Tag Table: -Node: Top1344 -Node: Introduction3175 -Node: What is Bash?3403 -Node: What is a shell?4516 -Node: Definitions7056 -Node: Basic Shell Features9825 -Node: Shell Syntax11044 -Node: Shell Operation12074 -Node: Quoting13368 -Node: Escape Character14671 -Node: Single Quotes15156 -Node: Double Quotes15504 -Node: ANSI-C Quoting16629 -Node: Locale Translation17585 -Node: Comments18481 -Node: Shell Commands19099 -Node: Simple Commands19865 -Node: Pipelines20496 -Node: Lists22371 -Node: Compound Commands24100 -Node: Looping Constructs24884 -Node: Conditional Constructs27331 -Node: Command Grouping34891 -Node: Shell Functions36370 -Node: Shell Parameters40831 -Node: Positional Parameters43161 -Node: Special Parameters44061 -Node: Shell Expansions47025 -Node: Brace Expansion48950 -Node: Tilde Expansion51276 -Node: Shell Parameter Expansion53627 -Node: Command Substitution61327 -Node: Arithmetic Expansion62660 -Node: Process Substitution63510 -Node: Word Splitting64560 -Node: Filename Expansion66183 -Node: Pattern Matching68323 -Node: Quote Removal71641 -Node: Redirections71936 -Node: Executing Commands79666 -Node: Simple Command Expansion80336 -Node: Command Search and Execution82266 -Node: Command Execution Environment84272 -Node: Environment87071 -Node: Exit Status88731 -Node: Signals90352 -Node: Shell Scripts92320 -Node: Shell Builtin Commands94838 -Node: Bourne Shell Builtins96515 -Node: Bash Builtins113745 -Node: Modifying Shell Behavior134539 -Node: The Set Builtin134884 -Node: The Shopt Builtin143732 -Node: Special Builtins154140 -Node: Shell Variables155119 -Node: Bourne Shell Variables155559 -Node: Bash Variables157540 -Node: Bash Features178912 -Node: Invoking Bash179795 -Node: Bash Startup Files185604 -Node: Interactive Shells190573 -Node: What is an Interactive Shell?190983 -Node: Is this Shell Interactive?191632 -Node: Interactive Shell Behavior192447 -Node: Bash Conditional Expressions195727 -Node: Shell Arithmetic199306 -Node: Aliases202052 -Node: Arrays204624 -Node: The Directory Stack207973 -Node: Directory Stack Builtins208687 -Node: Printing a Prompt211579 -Node: The Restricted Shell214293 -Node: Bash POSIX Mode216125 -Node: Job Control223884 -Node: Job Control Basics224344 -Node: Job Control Builtins228853 -Node: Job Control Variables233180 -Node: Command Line Editing234338 -Node: Introduction and Notation235333 -Node: Readline Interaction236955 -Node: Readline Bare Essentials238146 -Node: Readline Movement Commands239935 -Node: Readline Killing Commands240900 -Node: Readline Arguments242820 -Node: Searching243864 -Node: Readline Init File246050 -Node: Readline Init File Syntax247197 -Node: Conditional Init Constructs259766 -Node: Sample Init File262299 -Node: Bindable Readline Commands265416 -Node: Commands For Moving266623 -Node: Commands For History267484 -Node: Commands For Text270639 -Node: Commands For Killing273312 -Node: Numeric Arguments275454 -Node: Commands For Completion276593 -Node: Keyboard Macros280186 -Node: Miscellaneous Commands280757 -Node: Readline vi Mode286068 -Node: Programmable Completion286982 -Node: Programmable Completion Builtins292815 -Node: Using History Interactively301021 -Node: Bash History Facilities301705 -Node: Bash History Builtins304619 -Node: History Interaction308476 -Node: Event Designators311181 -Node: Word Designators312196 -Node: Modifiers313835 -Node: Installing Bash315239 -Node: Basic Installation316376 -Node: Compilers and Options319068 -Node: Compiling For Multiple Architectures319809 -Node: Installation Names321473 -Node: Specifying the System Type322291 -Node: Sharing Defaults323007 -Node: Operation Controls323680 -Node: Optional Features324638 -Node: Reporting Bugs333569 -Node: Major Differences From The Bourne Shell334763 -Node: GNU Free Documentation License351450 -Node: Indexes373911 -Node: Builtin Index374365 -Node: Reserved Word Index381046 -Node: Variable Index383494 -Node: Function Index394799 -Node: Concept Index401531 +Node: Top1338 +Node: Introduction3167 +Node: What is Bash?3395 +Node: What is a shell?4508 +Node: Definitions7048 +Node: Basic Shell Features9828 +Node: Shell Syntax11047 +Node: Shell Operation12077 +Node: Quoting13371 +Node: Escape Character14674 +Node: Single Quotes15159 +Node: Double Quotes15507 +Node: ANSI-C Quoting16632 +Node: Locale Translation17588 +Node: Comments18484 +Node: Shell Commands19102 +Node: Simple Commands19868 +Node: Pipelines20499 +Node: Lists22755 +Node: Compound Commands24484 +Node: Looping Constructs25268 +Node: Conditional Constructs27715 +Node: Command Grouping35721 +Node: Shell Functions37200 +Node: Shell Parameters41661 +Node: Positional Parameters43991 +Node: Special Parameters44891 +Node: Shell Expansions47855 +Node: Brace Expansion49780 +Node: Tilde Expansion52533 +Node: Shell Parameter Expansion54884 +Node: Command Substitution62584 +Node: Arithmetic Expansion63917 +Node: Process Substitution64767 +Node: Word Splitting65817 +Node: Filename Expansion67440 +Node: Pattern Matching69580 +Node: Quote Removal73219 +Node: Redirections73514 +Node: Executing Commands81657 +Node: Simple Command Expansion82327 +Node: Command Search and Execution84257 +Node: Command Execution Environment86594 +Node: Environment89393 +Node: Exit Status91053 +Node: Signals92674 +Node: Shell Scripts94642 +Node: Shell Builtin Commands97160 +Node: Bourne Shell Builtins98837 +Node: Bash Builtins116067 +Node: Modifying Shell Behavior138853 +Node: The Set Builtin139198 +Node: The Shopt Builtin148046 +Node: Special Builtins158908 +Node: Shell Variables159887 +Node: Bourne Shell Variables160327 +Node: Bash Variables162308 +Node: Bash Features183680 +Node: Invoking Bash184563 +Node: Bash Startup Files190372 +Node: Interactive Shells195341 +Node: What is an Interactive Shell?195751 +Node: Is this Shell Interactive?196400 +Node: Interactive Shell Behavior197215 +Node: Bash Conditional Expressions200495 +Node: Shell Arithmetic204074 +Node: Aliases206820 +Node: Arrays209392 +Node: The Directory Stack212741 +Node: Directory Stack Builtins213455 +Node: Printing a Prompt216347 +Node: The Restricted Shell219061 +Node: Bash POSIX Mode220893 +Node: Job Control228652 +Node: Job Control Basics229112 +Node: Job Control Builtins233621 +Node: Job Control Variables237948 +Node: Command Line Editing239106 +Node: Introduction and Notation240101 +Node: Readline Interaction241723 +Node: Readline Bare Essentials242914 +Node: Readline Movement Commands244703 +Node: Readline Killing Commands245668 +Node: Readline Arguments247588 +Node: Searching248632 +Node: Readline Init File250818 +Node: Readline Init File Syntax251965 +Node: Conditional Init Constructs265199 +Node: Sample Init File267732 +Node: Bindable Readline Commands270849 +Node: Commands For Moving272056 +Node: Commands For History272917 +Node: Commands For Text276072 +Node: Commands For Killing278745 +Node: Numeric Arguments280887 +Node: Commands For Completion282026 +Node: Keyboard Macros285793 +Node: Miscellaneous Commands286364 +Node: Readline vi Mode291675 +Node: Programmable Completion292589 +Node: Programmable Completion Builtins298422 +Node: Using History Interactively306805 +Node: Bash History Facilities307489 +Node: Bash History Builtins310403 +Node: History Interaction314260 +Node: Event Designators316965 +Node: Word Designators317980 +Node: Modifiers319619 +Node: Installing Bash321023 +Node: Basic Installation322160 +Node: Compilers and Options324852 +Node: Compiling For Multiple Architectures325593 +Node: Installation Names327257 +Node: Specifying the System Type328075 +Node: Sharing Defaults328791 +Node: Operation Controls329464 +Node: Optional Features330422 +Node: Reporting Bugs339353 +Node: Major Differences From The Bourne Shell340547 +Node: GNU Free Documentation License357234 +Node: Indexes379695 +Node: Builtin Index380149 +Node: Reserved Word Index386903 +Node: Variable Index389351 +Node: Function Index400938 +Node: Concept Index407670  End Tag Table diff --git a/doc/bashref.log b/doc/bashref.log index d98ca0fa5..56b7b4157 100644 --- a/doc/bashref.log +++ b/doc/bashref.log @@ -1,6 +1,6 @@ -This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.4.8) 8 APR 2008 09:50 -**/usr/homes/chet/src/bash/src/doc/bashref.texi -(/usr/homes/chet/src/bash/src/doc/bashref.texi (./texinfo.tex +This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.4.8) 29 MAY 2008 11:48 +**/Users/chet/src/bash/src/doc/bashref.texi +(/Users/chet/src/bash/src/doc/bashref.texi (./texinfo.tex Loading texinfo [version 2003-02-03.16]: Basics, \bindingoffset=\dimen16 \normaloffset=\dimen17 @@ -158,7 +158,7 @@ localization, [1] Chapter 2 [2] [3] Chapter 3 [4] [5] [6] [7] [8] [9] [10] -Overfull \hbox (43.33539pt too wide) in paragraph at lines 843--843 +Overfull \hbox (43.33539pt too wide) in paragraph at lines 850--850 []@texttt case @textttsl word @texttt in [ [(] @textttsl pat-tern @texttt [| @ textttsl pat-tern@texttt ][]) @textttsl command-list @texttt ;;][] esac[][] @@ -171,9 +171,9 @@ textttsl pat-tern@texttt ][]) @textttsl command-list @texttt ;;][] esac[][] .etc. [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] -[26] [27] [28] [29] [30] [31] [32] Chapter 4 [33] [34] [35] [36] [37] [38] +[26] [27] [28] [29] [30] [31] [32] [33] Chapter 4 [34] [35] [36] [37] [38] [39] [40] [41] -Underfull \hbox (badness 5231) in paragraph at lines 3139--3152 +Underfull \hbox (badness 5231) in paragraph at lines 3194--3207 @texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and @@ -185,8 +185,8 @@ m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and .@texttt c .etc. -[42] [43] [44] [45] -Overfull \hbox (102.08961pt too wide) in paragraph at lines 3491--3491 +[42] [43] [44] [45] [46] +Overfull \hbox (102.08961pt too wide) in paragraph at lines 3602--3602 []@texttt read [-ers] [-a @textttsl aname@texttt ] [-d @textttsl de-lim@texttt ] [-i @textttsl text@texttt ] [-n @textttsl nchars@texttt ] [-p @textttsl prom pt@texttt ] [-t @textttsl time- @@ -199,8 +199,8 @@ pt@texttt ] [-t @textttsl time- .@texttt a .etc. -[46] [47] [48] [49] [50] [51] [52] [53] [54] -Underfull \hbox (badness 2573) in paragraph at lines 4133--4137 +[47] [48] [49] [50] [51] [52] [53] [54] +Underfull \hbox (badness 2573) in paragraph at lines 4251--4255 [] []@textrm Error trac-ing is en-abled: com-mand sub-sti-tu-tion, shell @hbox(7.60416+2.12917)x433.62, glue set 2.95305 @@ -215,9 +215,9 @@ Underfull \hbox (badness 2573) in paragraph at lines 4133--4137 .@textrm E .etc. -[55] [56] Chapter 5 [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] +[55] [56] [57] Chapter 5 [58] [59] [60] [61] [62] [63] [64] [65] [66] Chapter 6 [67] [68] -Overfull \hbox (51.96864pt too wide) in paragraph at lines 4950--4950 +Overfull \hbox (51.96864pt too wide) in paragraph at lines 5074--5074 []@texttt bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@t exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- @@ -230,7 +230,7 @@ exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- .etc. -Overfull \hbox (76.23077pt too wide) in paragraph at lines 4951--4951 +Overfull \hbox (76.23077pt too wide) in paragraph at lines 5075--5075 []@texttt bash [long-opt] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@texttt ] [-O @textttsl shopt_option@texttt ] -c @textttsl string @texttt [@textttsl ar - @@ -244,7 +244,7 @@ Overfull \hbox (76.23077pt too wide) in paragraph at lines 4951--4951 .etc. -Overfull \hbox (34.72258pt too wide) in paragraph at lines 4952--4952 +Overfull \hbox (34.72258pt too wide) in paragraph at lines 5076--5076 []@texttt bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@text tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- @@ -257,7 +257,7 @@ tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- .etc. [69] [70] -Underfull \hbox (badness 2245) in paragraph at lines 5126--5128 +Underfull \hbox (badness 2245) in paragraph at lines 5250--5252 []@textrm When a lo-gin shell ex-its, Bash reads and ex-e-cutes com-mands from the file @@ -270,7 +270,7 @@ the file .etc. [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] -Underfull \hbox (badness 2521) in paragraph at lines 6242--6245 +Underfull \hbox (badness 2521) in paragraph at lines 6366--6369 @textrm `@texttt --enable-strict-posix-default[]@textrm '[] to @texttt configur e[] @textrm when build-ing (see Sec-tion 10.8 @@ -283,9 +283,9 @@ e[] @textrm when build-ing (see Sec-tion 10.8 .etc. Chapter 7 [85] [86] [87] [88] [89] -(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [90] -[91] [92] [93] [94] [95] [96] -Underfull \hbox (badness 5231) in paragraph at lines 507--523 +(/Users/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [90] [91] +[92] [93] [94] [95] [96] +Underfull \hbox (badness 5231) in paragraph at lines 514--530 @texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and @@ -297,8 +297,8 @@ m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and .@texttt c .etc. -[97] [98] [99] [100] -Overfull \hbox (26.43913pt too wide) in paragraph at lines 822--822 +[97] [98] [99] [100] [101] +Overfull \hbox (26.43913pt too wide) in paragraph at lines 836--836 []@texttt Meta-Control-h: backward-kill-word Text after the function name is i gnored[] @@ -310,21 +310,9 @@ gnored[] .@texttt t .etc. -[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] -Overfull \hbox (17.80585pt too wide) in paragraph at lines 1671--1671 - []@texttt complete [-abcdefgjksuv] [-o @textttsl comp-option@texttt ] [-A @tex -tttsl ac-tion@texttt ] [-G @textttsl glob- - -@hbox(7.60416+2.43333)x433.62 -.@glue(@leftskip) 86.72375 -.@hbox(0.0+0.0)x0.0 -.@texttt c -.@texttt o -.@texttt m -.etc. - -[113] [114] -Underfull \hbox (badness 2753) in paragraph at lines 1773--1776 +[102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] +[114] [115] +Underfull \hbox (badness 2753) in paragraph at lines 1795--1798 @texttt hostname[]@textrm Hostnames, as taken from the file spec-i-fied by @hbox(7.60416+2.12917)x433.62, glue set 3.02202 @@ -335,9 +323,10 @@ Underfull \hbox (badness 2753) in paragraph at lines 1773--1776 .@texttt o .etc. -[115]) (/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 -[116] [117] [118] [119] [120]) Chapter 10 [121] [122] [123] [124] [125] -Underfull \hbox (badness 2772) in paragraph at lines 6838--6842 +[116]) (/Users/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 +[117] [118] [119] [120] [121] [122]) Chapter 10 [123] [124] [125] [126] +[127] +Underfull \hbox (badness 2772) in paragraph at lines 6962--6966 []@textrm Enable sup-port for large files (@texttt http://www.sas.com/standard s/large_ @@ -349,57 +338,18 @@ s/large_ .@textrm a .etc. -[126] [127] [128] Appendix A [129] [130] Appendix B [131] [132] [133] [134] -[135] [136] [137] Appendix C [138] (./fdl.texi [139] [140] [141] [142] [143] -[144]) Appendix D [145] [146] (./bashref.bts) [147] -Overfull \vbox (45.71959pt too high) has occurred while \output is active -\vbox(643.19986+2.0)x433.62, glue set - 1.0 -.\glue(\topskip) 26.00002 -.\vbox(9.99998+0.0)x433.62 -..\hbox(9.99998+0.0)x433.62, glue set 163.10767fil -...\hbox(0.0+0.0)x0.0 -...\secrm D -...\secrm . -...\secrm 1 -...\kern 8.09999 -...etc. -.\penalty 10000 -.\kern 13.2 -.\penalty 10000 -.etc. - - -[148] (./bashref.rws) (./bashref.vrs [149] [150]) (./bashref.fns [151]) -Overfull \vbox (39.33694pt too high) has occurred while \output is active -\vbox(643.19986+2.0)x433.62 -.\glue(\topskip) 0.0 -.\hbox(682.5368+2.0)x433.62, glue set 18.01016fil -..\vbox(682.5368+0.0)x207.80492, glue set 0.01196 -...\glue(\topskip) 29.75 -...\hbox(6.25+2.0)x207.80492, glue set 20.64868fil [] -...\penalty 20000 -...\glue(\baselineskip) 2.70001 -...\hbox(5.79999+0.0)x189.30504, glue set 163.09688fill, shifted 18.49988 [] -...etc. -..\glue 0.0 plus 1.0fil -..\vbox(682.5368+2.0)x207.80492, glue set 0.96613 -...\glue(\splittopskip) 26.12001 -...\hbox(9.87999+0.0)x207.80492, glue set 195.63828fil [] -...\glue 3.46501 plus 1.05006 -...\penalty 10000 -...\glue 0.0 plus 1.0 -...etc. -.\penalty 10000 - - -[152] (./bashref.cps [153]) [154] ) +[128] [129] [130] Appendix A [131] [132] Appendix B [133] [134] [135] [136] +[137] [138] [139] Appendix C [140] (./fdl.texi [141] [142] [143] [144] [145] +[146]) Appendix D [147] [148] (./bashref.bts [149]) (./bashref.rws) +(./bashref.vrs [150] [151]) (./bashref.fns [152] [153]) (./bashref.cps [154]) +[155] [156] ) Here is how much of TeX's memory you used: 1732 strings out of 97980 - 23667 string characters out of 1221006 - 56767 words of memory out of 1500000 + 23635 string characters out of 1221006 + 51884 words of memory out of 1500000 2583 multiletter control sequences out of 10000+50000 31953 words of font info for 111 fonts, out of 1200000 for 2000 19 hyphenation exceptions out of 8191 - 15i,8n,11p,273b,471s stack positions out of 5000i,500n,6000p,200000b,5000s + 15i,8n,11p,269b,471s stack positions out of 5000i,500n,6000p,200000b,5000s -Output written on bashref.dvi (160 pages, 615548 bytes). +Output written on bashref.dvi (162 pages, 624132 bytes). diff --git a/doc/bashref.pdf b/doc/bashref.pdf index aa77a969946e985243ea3ec4e71814a1a95b18d7..8dbd41d577e60c317ff09f2013a3458394b2aece 100644 GIT binary patch delta 286709 zc-mB(Q*bVTlC5Lg$&PK?wr$&X^2fGqCp)%n+s2M<&6&CP<-GP=*XpYEb=T_SVxp8~ zqWU{fcu5IqO=&e65jkN^Cg$XLdh#X`FaRiwf}Enfr09Rj%E|TA6irKz?2r(u3StUc zB29>hT_6B8TyDxyf2%F& z;dypzdt*!|wbwAzuy;??@bEu!&_YT`H`_HfbD|Qf6X!-N)zCkr zttDE>&lc=L)&i9HRo!GGJW9IPYQ*;i1#qyz@bkmCxH_8|*}-^j z=Bmp%9I+$yylOyoq=49pk&U8ST4|F*f<0h-3Yb*%h1$feoAEhmw%fOpJYbS z^JJ_%bl}_V#nOxkVf2sB%l-X$r_LdL@W?2^$)V@f^J2y<1uU}7|1J41V(0T2^NeQs z&y8ielR25zIKbK0{?Ff+1hlFhwvXlW&OxnfgwEg~!@7rB2UVU37Yh~#G*Jp})l>$I znqWZ<4f31E7a%1cMYG83FuqS>qbjS|+rHI4Zx`u!9~XL1{4LcY!kom$6xm_(*mV>8 zukI|w0a2{7KLYh0J1eC73uxe|v3lU2n*UtV>TyG%X#kI_WXt(q9g zLnPB*`0WTPD8ZB( ztbERj-W&V(izaF3cGgvdq)fmK8dT-VggWZdCcqfK8QWK%R_LUA(F$Q|=i{h?nGyhs(mwic;@Pq^ZViYW zGXY7ZgSd$UKNYmYc(}-Ns-S}9mYap>PRhj*I<|5x#J!yP8~*G`rB=98(j@+ZNVBNt zXBnKx@f!|cwky<2eat<_fu;g zpFb^4A~iy?%ubA}Kz2Wc>|wgj^2vG3GTRwRjl(M|sJ$H7JXiw>WD{O#yVHbDU-1%q z_ZzQ%y)2u1b=&fT?hH|M*nE%JE1g?u*6VK@` zSaDB7Q+P>ao9CrvlP(>AH4ruY7gYNn59fX9R=%tWDcS+SeqQ3(RYI_l{r&@y9dmE_ ze)LDgr@Qst2%0{BO78H|`JMcj4xm8f01K_t$QBzdqn@t(;^mwgCVWm8-gSH7tCt$fPECgM=%O}oQYrySPw z`U|tWW_On7I)Q)d$by#RqFnR~l|H-Bu&3^!{^RsL)F)YY)|?(#0D{`YNp1rMA)_QD zt*PBqNxcCIEv>2`r}4jjlUz$p-PA&F2MWT$mQ2db0g?oitjBDLIan(SMD9)Y%plkT z2L@cb78p$y67klSyv>XY$buDU&$*p3X-7K6sV^9*`su{%Bnv~6Jg6)OwgLwKPj^sX zb6fSQmc~~UVlF*U(bsb`#N9fg&Vu*9f#=i4O!x)*U`WcU=HEc)1yF*eFfb4atwKV@ zLeS5lZzJrx*W3I3K%m?MZ|MQ=&>Xq-72Qy8M!Qdo){#`eA>J|oQlWV$oT|`>4~_f$ zhzHh%50!QhG)iFNN5t@Ak>P+yoj8?>Kuu#XMu$F2AXVaIQ8_kED|rqA2iKm6p~lH0 zU{!3$D__-bEL=(`!7wye?UHPm=)aPGB2tiQexxuXKF!`{lz<1=IrB|K|p}x{tUDNfES69lwU}mjQSM&o{xC1wkHDBWpd#j;g*I+HWvNrqX z@|z`_BPx0@nCH}HhmW{7qY)eK%v7?f^|Gp3R`OP;yvsBLRA0~zbBdRQBil1|PF8h= zGcJlD=j94G4+sT3EMbXiyYBw9cIxT7|AV8-zHoJu`2H%L0R|)Lmj?@J4d|Y;4vZYs z>(*^aWsz>~io==FVgP%2WTbN^c}}TT<^x(SrlBqe%HG~r!2sq6y<+a_i~sX@S{7pH zUAyQLeRiD=@HadNN&=xrbaMBx*tT*#8)iK;>cmE|s?GleF3FTBh8v5t2Q}<*bnfFo zH{=D=KK_U6V;bJC3S=B290Lo^9QSInc(G3}1zAOLCfGacE$`F~2E`fYGq$B(uty=b z5w~?A)xzF=^n?y{q$M_RLI+$%Izjao@z(*~p^172z?!cH(6dxK&psnz^nB*rVVV2w=_v3K=5!tb$6IfDcusUahga%(6VMe&qy*hIfK$ zx_$3MU2Z;!0XJ4PO;;S_=A{iJ{&tHvEvisO(fGW+nttEfh!_7s7(KzFAOQsR&;(3LLSi5EAG;%(&7SzV4I?lf-M@cs){GZ`kP!NF-!W0ue*35!Dg3R4S+# ze1Fw*?kE}7TXZ&=O1esZHpH6YVA=C!X@VmRU~Gr266gaj=OCbW3?NjbZ0~?ifI|X~ zg5a{X)fzO>PjdNnBc2Js0||j^?4iX? zhCAL#d~fwHhAuSz3YBsi*8C`Gs-DI-AOTGo)-Z|I2nFDP)wIOEuZgkdi@yWP?pHWI zT=vM$yz)*Ecr!qRW`3n~B3e1@IqvXI!}ZEd!hnl)ymFt%z8`t=dU*UDaOYx=0BgKf zzFui+$c$P$W9T{8Q z^(zPJ$xx>X9aACpnpTMA$dv#(x%5e_>{l)r3>03Cl#Sb{?I0i}`f$${6MA6a0oF8( zDZoe6G>=aPkg&`#;A(;uLy>}z6tqBigOzg9VDO6hwoX2zwpDfZZt&G^2By(Ob~3wd ziNi*Ds>pBp7cZsDRHzWcZvYZKRu&Q{BhMcs1$8h(>vA@xKIYe7pC}Ol_uWVyScp4SqLyJxsKNul|HBbO~FAzIW4ffwD z0PaaL@~P2E;$fP=1>;j;Arc|KRsGR)5*(#Y3N$WrjwhVMHOp*%HcqO=qqN54{B;hK zDA09@%S{%wr`0Tb*(zYiX$|*)N#eYEq?7HFZc<;83l^NTalVM?r$T4`F}%dGbJF+( zr71<>?1Y3NNYZ4GmK+QboUx78k0V|gQNIk$Qq0B9W(Po=O)3Z}r znGSU(TP}5c>rX0M^z~S?#|*D1Q@@-hGh`mqf?Sz@<*yfZFFHu6f3@%vtImlFPmkqL z%jghEN(1h3OmUoQdSnYCd%)f?C@g!cAxBpf`z}NmN);a2izxMNah&s9CARLK-Q@rU)GV9DQS*{YHURs)>zm*VSDp+p;q0`%Kj$#t+_cgF+E%> zyDuJXp?i+6Dg=SSQ4MICEjZPUF!vNjd|;Fm4+$>T0jG-^#^|{T#keoR5FS?- zU&*pxWk@?FqZ)t7*kJ15kv!{9@)R34fW4bL;)zw_uJhC#%zxlWw+8{Yyhz zMYqE&&>DcgnXcD*;7p+DpWXWfxYzkjipZKS(;!%g;7BT7(`N2wNQ@#eCjl zIRQ)N!iYypWl}ZaVRG!M#?Ge~x)1`u-oxV|k}@HVLPD>6c-zcTo0h7=TXN}6RraeM zMI=1M_k|WNGf=+E*h39+=dKwXs7hNv`tw4tu{j`6YsnYimN$TLeWT=tgQF{)+q20Q zFRW&l3qfL9(-{@Po9iB$8GBnd*` z{w-kgUum?aS9cW^rSMa7ET6tx(i!^3&s`_n{Z77(mrGBpyB3QRW~0E!m3(I=Z@!v> zujzYynNVg*?bl7NK=jasjC=jN$_%zs;YVq7GxK^h`O^a@aZrX=o z{!{a@S$fb4%*a7dy$>7iW<$wsf<-8?v_pYvTGv} zqiiY=L_&q9>(BndAVZ;x^+YlX3M7cp&!gY&+hLJBj*i@vZ~}77=-aw+FdxZ-i9_?j zjPQ^w!zi?D+TAZU_#wxaxx<}T4bLF#qMCMq)hv{dGc$#whF5aN3=_HU2mL#1w#qsPAWuaB zt^AJDcsW57YxmSked%4I;r;h0^?vJih?CJGy&B2Xf9rKO3f+Md zetn0{xGcdyM*ctqx3(GK)sC)n12+y(J;RJB6kbaBIE+ifn{s_QWRVH_@hiVEpD_S-x@ks|yNBr-9*umAyr9$-1U!;a_=Zct@~Oe-ZMCezrEJo_O|8)vl@c=5UF>lHWcA$A785l)3|B(+&@;3>n@vxB%?D9*q zMrG`myHswfr0KsvGo)b?1S{iWl&Tjg3bH9-U!4v`D4y*kJTK+!fQ!%6zz^F`O4nZTu@a0%XY@|raHWI zgN9!=IeQiOsKyNd!#`MQ7!RAQU{QnK7HNL*di6Takb-l5#93*zHRJE(6A<<@4&4l! zT8MKdhxk=hHtkP7mP94T?9DWR-K-g8bCd_hU_~s^t=*DXL&KT4b(d?orTRVB4no7{ zF)Pu^LHbFjEG9;?F)K{&t}VICY&b!NAmrFn3(JhvBx`;nT0KA zhD0kBrRZFT+dHdRUx0Q_oYN`#S*Jj^$m_#nPaKOy36RR&$i#u)>3U3}#U~^fB3V$C z6@&plT8oGpeWvw+TtaADLs219& z^pF$rQB@7Vv+u<;&sVl1GN5Z<)fz2LQK z*CYXQ$~T#N5=>duZ0;Jxo5xA}4>seyL;_>iNxj)bnMKW7Adl=P17V+6QEY8D+X?Q8 zF2`nVHMwgw-`-}XbI;6!q1`Oz$Xo4|)~AXD=?X9ad z{JWfrWAT75%h`Uezl{b$3ys~o)Nn+|rTtd8^kAhMMoo_bzl(i2o=kRcqhE8g)qWgk zI)ctf};dqt6Lz^^MJNgQH$u-&X=q6ou+^raUmz`=WkL$m=2GDS-eUbt%A4Mmj9O==M% z8D@zdFUlm7H2+V;;p}pI59cV!vFitsJS0CLAe1bPe*#q8?Q zn6FC)d`0Z)Ml$83HT{)6{2i$SNvUpjQw45BgmB5!vT$j1ShfVgnuuf{#{yVd+wNe% zRbVx;rpbXpb^ju8v58C+WFt~mUD6H_;*_T9&7Uc^KcyaHSTa*T=7;ta;Tw;(H)X#V z2r0-*csrR~|8 z#*fzSO8-``A~_ z`tG3XGCLRp9&3yvQsAP|(AI>CV2QUh4b& zKE=iUjLIbx?g3Y*J(ytQ<)jDKKM9`6q>ckF>aLB`@TLB0^5atL#jq#cAN#IeMQMg@ z@0m__SZE82@R+@d?n1HcUF=WN2GNqbYxq52c%onT`o9TndX=gGgHsZdP?eRS5s?#7 z5lOD6rfgc0cR&IBH3*&h5=tCxjkY_ci7NYI^&=PbC@-iD=#~+}jS{ zqaPFmCUu?9JH*(Iv2kw_W{lF8{ulb=&Xyxwbn+nAuiJl}!McB#g6Ne`}8IXTfK%MyATbXK)oY zP7qQ_zJZTk;AE-_3iPhKWyl#IO0^{Js|EoXCaqMSU~Ki@Smr44?Be+Kz7f+EsZ~GItsI1Kq+D{0$t+jmI^stV|WUHyqKauCv%aY z9;KBV2!AxGd8zfqTu=7lsYI-I5o5B{*}My-R8Y!NXK!xz>)zy+B?FymNWv;fvrey5 zA*{kw9n!j9@x=X7zcubTn|K&7$V=L4H`4oTY%8piZL3~~U&WcEuF%LmqiaGiFE@+| z`!)BLLMkZ&q#2x%C<-t@$m4vP zQF*$n|7f5rT|VS@v3yhh09GRJH}N8kpCJqyb!GM;8H0t+%oBwZ_+&Q)J|Vg3Sgho?3`%LFCRG{pDOc7aAZ zh2l4*AL$3O7f`j&7LbItl8tmP?*%!?@#dWzB@}J)#u&)X6-!8N$?mu*s3Pp05YY%A zY+6u|9aenLF>^>j@yL0cpYYm@d4@zY`4lH0^?nugA*EAf>lL5>ZF$8s ziy7*tggeei4!8q%Gz2!PjA=k(YQ+IZv;N1-6iRNtg79PvJWLtMHyI)pw5#B1D9;LZ z=O7LKZ|54Y=Vm8IvctfcETXw;O5a-|(Hf#99vdhG>Q&)lESvo@FN<5JMwmHmlu0u` zB`)fvNE6QU$F3ecVEXtGCyoFiD<{A|=zan5&M-0n9x~t!O)v@3Q(9|3KDp~pAI;#7kSdM!UA zq=!a9JEQAJ>p}3R&BD~#z{!pnk7nWB_$pD)JP~i?ffaHc-?!nXeBBbjhWl{A94XU( z^PCPyZbul`1roVrD8Fy33oq~e)a67M61}s{v8k<~giYsi+d$m^Z8~~7MEP)^wiFR# zLm&# zGo;S}&)o7Yt6FcI#BkmtOxoIc5H8x!bdC?`vmkeobN=^jOhDX6d#(s|s%D8x6HSO> z;FcKbDue&nk0#V1ud-x2xAByfvn93}kyeZg%^_oqagrRR=(W6FnS0S`l}j=EvQn*O z>8q0VNe+AuWC+}oqZi8Yh~kQwBd2>U%<>b|WoBW~S=7d0j4@jL!*O~qyo%0*%C8C# zKB;o zdD!2PyQah*4jC>g2=dJ0Pp2DKP%>n2LhlS&yiAl9l{~4kmZmJNBA@oyy{DGKLyX`Y zGJ4}Ctwd6J;g_V9Cy;Nk4y)u%yy60sW$~elBMWrgZif&ZeJ$DlLGSR`dQ-`2sM+i3 z(H5EK`1ZP(kq6p(!TdS617qfK3#mE%1BzMmSTIhQ_(|#;dff>1Umc)i290;E(A$h&x>ndd5C+8U%Wu`=Q8|7xwtspl#krvMx&59eFFBHOH62*hqaHfjTm$HCUn%ohUL;$ zH5*PJ69HJG7In}Hi1thHynGb|qreu-{K7%Gq}Sv`NUQsrlS`!bIQ{_z8L5lO;5-s& zp>epSz^sH}Jo#du*NA!hFvp-y;&d}VbX2?)Hh+UK`FFlg`e-3DE?~^;P5(a_nI+4+ zKfsG-^Ab>)c+cbB!mM6`z63DS; zZVfL9{7QY^qOzKQ^GywF+7*2yY8Xi*B1C@YfBp5C z(Buy3*w~$@yZ{}U{hH91A;vZvqEBYp>uhy)4%0%jm3z}2MON#P!X;l0fAdkAe+?S# zJJ{8BMx@r5!i72{Lv^!ymqW{trdj#EObRoJDo^878$6JzC_Ec zkOJ=)v6@^)im^z{J2UI2&`okK!oKxEL>#kub!%$9M*ssb%T+5eS|yQyux+HGJ;qJb zm-&3wuqhufGpCk_%|!60KZoL{D{?)~+Trh*Fa5ul)asGExk_G1T?9P4J3D-pPjIVc z;7?{6^1uO<#CW^xsz$46P_UTsPepu>Zi;$IoV~SELiaQpFW*5S z^kg$`gw@kRY8#gU@j_f~hBIHh)pdvakDZ+Aac6_l9v06@6~bqb43DvznK^?=n5)6GkfKE9WFmLSr5OFMSVN`93`@OnT* zlvI)cyV`F9^PO%kv3mI$ZbxlpvcGC>Bet8gSS~XrmQ_ytGF7%lx$bA7i=n_=r3$NB zxvOHi=rWbtMM~_76$&#k0yaizQI)xsp&IdElc#nwq)c4}i4QT=$N#n4uK&W;$kwH2qCaIqld+krgW(e>UTh&FZ zC>i<)R5ppb!J#-e9$#wQ>vE#m7`3Ro)I%)GZFf%0A=gc!fXt!=bU`>v| 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

      0x9fzB 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 |*n#oWCSST)|jO&fDQyaQK zUai=53Z>yEl%3cK*;%rQgoX7)_|bA2QT#wt7KF4T;mJ%{a9J_L(bRJDpW5UEkA#=D%HxqPo#*5fNr|(rnb2 z_t`k{8ClK=?ni2Mjy~?#{F|Qk5Dmvbkwd}Jqrx7UWS3au=YIAQuOhsqB%bR{G9^3K zpPPesx*My}WP(xvS*3%cf>Zi=O<^~>Zg91)gAX+>K2%7dde^liVZs7WJrlC79j3&E2$4oj2hzVLjV8?ovP;+A+G9WHeF=yiIGsE!<&NB?U5;nCaD9)mS z&!k5snCrEyBn}Y+aba74E0wnQLSA6@*6a85ySpz!2oM6m5%7|JewqVO&Mfe}Kd~vB z+Vz2vu^Gp2zfetL%Kf^#F63(OE&byqq&K*4zte0Eo$Q=x3$MuDXNat^fCrC#2@OA= z5)A*v*PrSodSVZ8k8A#nY3|4I#&uTRg>Dk5zP!GVi(Tl3aP+%#_v6%mgG#2ibZiRP z_A)a$G2s4p2rdQ$BYD~orrj(CBpn)1NfG7mh|6upmmcx0wq zhvFfPCbfdpb=Umay>n5UN8{hFYMCa^6~t_Kjb_!lRrAin<&3~?&ZSW$+SNXQL0#yA zyk&DM`7+Y#=E>;46U}-*2F*_8 zFQy{3U&H@D05(9$zx4)-{&I5l{`3)>S_(KR*nP69%J6hQxcmDu41tzscRRzBZ`*&e zHvM4WWV_bjnY98waXPXxHrV&}OE?f7D|Sf9Fctj)84g*M?M*}W#C|Sfn5@?^^zM;~ z8DQc>F|-}rgRxVo#CPsUyDEVNzngX21-JU|ZViH*mE;Mc`_N2WDl*xhOj_ z*s>$NDVaVi&O~VNm#PGb3Otz7&KG}&+=n~&ZLwxywSqHOOs&^derTA+=P?@|`Ia}^ zi9aZvxJfA2z@4~2>Z)!KHaMOPg7(98*;Z>aSwIJ_?pVGoSrELYC>}Y#5?vsnDGy8$ z1FlpWy0Ptn3=Li~vPcB??O$6^B8_DDNk^)~K4Ak4cRG2EmQ02PdrQV-$%ua}i4zHx z;A>kFCmgc62Gve%)@^iX!B!htgAH6xG#CeN+QH@%7twb^-P;Jx>$3;aIoTmdC#I<< zJ0!jv#Lw>#4sw*m?guaUO_Z9_mBX+3-WWi^jhH8bD3jQS-`S^7 z8}#)cLH9L=N3M^L|;*;J4C|8wL#E@yM#5p91i(2XNFN19*f04mK2w?f@Ja*5ZG$5aZaGIEm0O z3K`oXL2x9DKo0tO!QY-?jJYsXFc*df%$*pD@mI%V{0%{1auOVXI3E|8aP?wfH()!* z9lStem(`7|XX7fc4m%Mx!8dD0lRIpR^=Mg3WX7jn(7z$N_ZkRD(5h}&-0f_KHc&QAxu*c-3mlTwn8iBrJYwm11dZMDflkKA2mQJ|9CkTj z8}ulk6I%y((0&x~6x@U;IKrdP&mmqMCW3glJs}Ao25yp! zFi?B3V4wyx%;no-AdOpyhl6`gOA+yKR1gnGdc;GzARf{Q@#udvF@UhP4-S3c-7ITl8djqx*_0cpa@*A^O;soNdOrP%n^ z#HPv)C=G;4itIr8w#~b2I#7r@wJei2V^NMo7O3tdp}c$$ma2tjh>M*0=X+yk`1TM8 z_F|)-U4DMD4!ywDeaN|~FvQkTr2>?01aN~Ja^L;F>hgbe&ys~BiIM3mR5Y%biK^?SW|K+an@3YfSHy0l-f4RQ7y10D*LSVpMMy{My z5AD9sT#mCmYWzAai$W{gTdgO1`;d}%!++&PY|o;Ud7TZ3C1dSeE~rA+ODDPDKQAuN zEAY<90Gm~2p} z*=!G~~9uqOr{wjIDg8E{Dw3A1mVe^^ZDu*Aib43zw?v{Gp({4tjUis(c-R`0I?86IXXS z{QLi&LwH&_FS6@L2Gn> zU374&l3~3ezNP((3^s=l4IQXX+{Ae28f!{347*MS&YYf3{`RE8&NCfu%kC|T2K;>Q^JvR@fdDoSl6 z!R{DIkRnKe&1vqVVvmsohZ#5V-%lS8Qi%r`350znst}!#IDN!52OpE)DBVAhIdq64 z*MBaVu^%xez$R-0z3tO-p)eZDjKbjyEwl(`IjY6aK8aJ zByjy!zHiI|4rz+Bh|P+k4G$mv5S~$uRbv!=wIF zhO;;_YYvP`s$q$f<6k1#wq1Hv;{4hj&o%Bc-@cxH>f^O(j(^lLVyy|Cax(euANS@x zD3@`c0u;B}rUJSGe}B7lXKr0#wx%FAMF*nX^G_c>|MUIjFLM_gPV(`MIV4!%tI5?z z8r+)r3BZFGRA^8$_-e9>d8#c2 zT`wTVcdDh;)_!-bRaWGsrs*PI*Q$P`rMA|pZD>I?G&f{CZ3<;ewN-6bclv|@4iNuf z{u)wsPt`Cof+7|KSv*P3PzKJ`c4jR<4Bf=m;g<}RKwn6h7n2#c>`E{ahHNaIyrsFK zYD`{4F-$REe{(QJOK*mHEKTJZ>|?VE`pOsMil`$9MaBqk!a{5 z_yKhhq>T08m-Rw&)J0H4Uy>$G0r>i+0Q=$j=GiwX;4+LS4FbpG27zO45J>h7LWYTH z5N7tMe<|P;HHFoD`~N|oxW4@Sk6&IF>(Wcdv5rIP-qtNRv#qN=QTMx?;)RBUJ&}US zXJXIyIA~ywszL?OktD&|1R){Moh~(o$%zQ+9R)#$Z7CYu9R=L_z=vy`XCaho z(F_7a!4v|Zbn@`%V+#Uc5q$iF-^f?S?MS==e+$U}#>W>|*I#bV&fh zaOz#0fl6koj>=0@%|yzHFR;vwtJ0VoC!xVNG>g>_fBWyUyoOAuYTmWsI`b8aK;StS zxO~cpRn4#qQvbkhMIm~Dlrc#k+Exr4BsBuG0>kil-PA)}_j8Xdw&v9=hvLYl!6uZE zf0RCAfS2pT#2tYz+%#q*!!etg7ewU7)(h({FQ7@d47mgFVKm7>$c{U*djNJZfC_&1 zdXGA-xnr6>=u?kDE-IlwjoTCqr_MEk`ei_2YqBS;Fp2}Q{igQrv1M`AiRhA9da43* z9&3gq)8jAYzKjNkLzK%Hpm^5~95bLIe`7bW7CUs!E}Pjj2wZ77xG7HWLBf^x_I9Wa za{(eo%TJurkVeMRU1RiDLWWvrae-6v2&lBPVDiu5t&R9>{NNjEPVxr>^+fWBbX76e={`+ z90ZeIcnVA=(hcoZ^2z!mQ#XpoAQI&FATmq|*ujA;hzuozNFXL4(%#gLAtT7p^bS$- z-EYgkEIFr0h0{vcPbYxn1c(%`2a%T_&d$F)TX3&X71=+?0A;RQ2Jo4{&zU;PQcj=1 zrVkRN<+r@9C_)nBEeKC@VHop9e|=MgImo)YdNz;Rm!1=_ zqZ`8md{s@;?Tu5@{@OH#w^mC;#>`cBW!d9ri-#5e>b=@DvrpF@*fcUl-SB2aKq*IK zvhNc&4v+CNby%I{h}d7{@1L$NUUAn3q4Z|5*EK*R6I0sgxM_zMGnniQe`q$hn~WNN z#kZZ-3Yy*kU;@8!sVp&S4&8B=XBge0P3%adq>$L!#xXx>qYBO7YH$ zhMC@~u3+W+J{pMOi1T>!W9g|= zKbTa4p*bM@La(R{asir)08m^rM=u31iDjqIrP?$5=DDkedD{z6M-lt{DbXYVsrwz& zYa&@Y90&jxE!_rCSphw*Dw)mT!Pw$RAULiG-63mU&U<*Ay3)3ff2Ry9M+M3}I->B0 zP0?k1hXAA_+;Cj^>H0EBH8wj2)0P5gI7>!RU`>IGXo`k2@r>Uj6dHA$l2~9V!JDUo zT}0B2?Td_C{q^5-m?Ds{;XV&Q8M;DF0`RAg=O52LT)uc02&Q*|08su>DLHW$2<%+| z7mXE&q}L88092U8e^8^v7cGOpMVTA_9;?wFy{s zp-q#FOx=VDZhb)IWu_nKbC2`L=GBg~W5^Smf%JcqN8W#|{_06}(OA;!n=z8ZGv+Fa zBtO-77Sva5TkTi-%HU3zwTECV7&4MM3ZKZ0>?7TGdvMZse{-NL-N4q%erH0H(G*Qm zvUon`)8s&q8wQivXM03lTyjEsArAZZd*m8j#S!B*jMJ=P5K{{O2=DR+P~Bz##0wBu zd(TI=Oa~~kQwWggC2{!IMm#}(WksQ9do$+)0SJVFZCBeQ;a^?XrsKg^5PEHAfV=Qc zzO<%*Hj|fhE)KonU^!=pMaSr!oVBv(7)V0Lm|u*9$4{)%72(mt)&K2@b#Zy~r~d%o z5R2TG0lWefw@0x8#sh!DF#q`iZE%!%cSo}_TGECdByf!K*e>4?`$1uhl?drglJw(I z`myvQYYGQR;iS<*&lQ%Xekjb8i9+xKLclhv;|&Xfn23xu0Lp})H*yUJbn%53cuB%D z5X`CZW|1E!?hWCcH65A=HbX*6^f&k!l@4PQrDp*=?&hS*@{xa8e_fi7O!zW1H~ixg zuzqSK_6oHF*COrUVyy=J?YTX>E1m>3fkPehCmti$^6)jY%#UIhZ8Ot4l@Qp^UmX+^ zgM;E%NRqGwy>DO!h?2Y1cb51g5zfkGRCF~sOX8DSAW4NA$&%eGd z+}sE^2iJMV8>xSiSMH8Qv*+eq(m*0fXT}3R!Q;qPWElhs`(g*7TFbi;j7cL&><1Iv zvBV^~e{h+55)gFB7fS2)(||<8BzlAJRs7l2C+o(LkXZ%6(4p?h&A@cky6Zt>)R4?) z*r8SI0o2lDea4&C&Hj>g*tb0^DFUmwR8kuH((2()Yf66-j*^nx+9z0RG$L6tT$7#u z+<+qqY?$iVcLBdMc?x4zM4I~1R1xSR@^FlKvD1Dm&c@B{nQ}nKEOKGc02Edn#X3m0 z!fAOFfsS9pE=Z4Lh{2tAOxokt-~w9iR&~d7D!tQf3(*z502rbBtypIg7`o{(JAqVz zgCl6;)zE+Mc8ylX6%SLu>vlX^A7(=aaWJGz7@+v$Anqm6<@eXOci;Z?yJy2o);ZjH zR2vEaW!axFn7U^Xp<{>x=}~wD9Qb0s*d~63wL!C`F!Ho>4@?>uZCuGO2;M7R5S%rr zNkYD~5_L_)|J42B$d|DjaEW9LxZp|@7Qv=A;DUc92VBsY1zbQ`3Aj)oW59*e4|W;z zwW}=yE;!3m0aqA=zK9kYy!qko!_E7b<*ZS@lC#Ev%~@m4wD8LbMA=j7Nz;aytK`%b zh(}6{K3fh_PRsLEqq)(lN%Dl8`1Wwfy8VgPMs$Rd&gJtY%1~{(Y{!^Xn;|%JV$X~m zMYVq``@QY01OX7j4nY8?(d}97^g@;p$`855t4oeq@D;Yauj{k!l2)hB@H?h6e>>H)6d5 z<5Efxkz%35mC_zl!?je}W?QfLz7hBsk-C2%96Ui94-$l?E5S4x(`4=%UmL?))1QjE zr%A3Sfg$sTxNA&nY9xk@!F^z75Fb2Iv?d9JX;(Znie-UJE<&VhKmr_11ax1s%AXMs zEyXp46dXj|Krli<0d&ckt#6f4N#Xy5EH5@Jzouhfyimo78@gqZ(Eak=RPtVu_OiTTr$yth!g|FpgCZQs~^((89Dbea*XK& z;|RXS&2eX55wa0vBHfE}i71w~!UwV2_#~lYY_1&2d7yQ}$LSR_RhpR)DoB}QHv?&3 zRi+$=jPApRJcMnA%-BHC;$|1cm#Tm9;-)aN2q}$`O-*!*Uxo+18i?#xd~hcH&?4_S z2PK^x(=I-^VT{lycnsVqETYWL9*C_wQx((9-3tn?vr!b696umRH~~u{KXR32fg-T* zqi{N8B}0)@WH!CchgeSJV=M=4ve7g?HO)Aek}8ppYdBeWZX+O?+ux%x^8SCr23^Qx9M&yBeoz!oCGdRGa|$$ITK0MWSmBIzP{{= zt%Y-l(E^7}lnQa^ANoNyaTXj=n0%)(36cQ-gbxrRYf5%N)oMtnET7u%wVBJ_AQ+P@ z$8`jt@CViGO9<(m6wl=zZQFl~WG?(zyafM_gmEfCg9U4YB60>w$x0UBy=ssDwue~MtP(%VM(4B?D2ORe*93Zd{m&Qt^Who=WUwdor8s|?42THiI;QCm z4^YJ_llEy~(<#GK>Iz(Fm~qI|G2F^lW|c*ClFa)Dl@OS@Fe|cDO{srfu;3LG)z$ey zq+FtK0_IDOs0`v$N6|7J;bOcHe!Hfxu#m#f&ty12x2f^t1vm$@>R?8}8?ozzLmMwF z*OP#{+;jd5sIifqNv?mwV8ATNQj#nU=FPx~JSk(IYWLhS3$A3Z(}zOpA|%TZ$qx3X zFQ{mr{--5JL78sNAsDLF#Y;%X z=Vwpe@^r{)K}ztzR_3BBw18EZgGJbGLglYrcjIW&9wDPR4P!qObj|4436Qco+_`EwuRahFTBu?fjnBkGEZ*6HC1UiBVg4>(6&2LLFNJ_GV$%IXW z0_w2Od|^7v95IH4ee0%KZuD1z6-*8fDEl=Bwx*Y8Gk0thvT7ELX|E`=CzI< ziH$w>dkuP~VKxsSPf9fq*y(M@6u!{GU?n`gPPtB%Y2$oL4WIBw{FY;vy17r$`x=fsp$ zM^QfuCwwmpozFqCwg~J@3$Qai@sBL*&*Z_nI6j`g41O3OPMPV!2=s%DFcY?~UCczi zPy2{K>>sC}KE1$4K)#zJ8XH@+>F!EHaSd5VC0{pDV1a!U6`<=kN@+xHkO=~7P?uV z&Sn*V>D=)?q8K#rpqP;fW#W+bu$-J35ekFGm7PU(OFDAp=!-3RezCoJs#@fu-f%MA zRYg^9T8rt32@Z4?IT5T-sv79AB`RNroz8Ha*dUj|={W0uA!)~U)yN{gi&F$Fb%*G_ zLN+`g?!z_vR6nMAGE%Dw|d#MY(o9Y?b3wtCz$)$}e?pq4`apviu zFL3774Ok{ir$L`L9XLMhEUX#(d)ACUgf-(7V$DPW1E3?WVqN8 z#iGaD2YTEHM?6>SLkEX}S-{gSPQjprAtm{=<=$g|{UfUlkWIDg!dr?CgFZLIeH@~7 zNY6gh$4L@8*cCMu+Ppxy{KnnA`;SJra>WkhI|Lh?%I|y+JVHVrYyN?iTVdM;MzDRs zo5S#Yrq(YDg`fWQbW;0R?i%Z&$xxQF^jJYxuJj(XN`*SHd2AW}l=hx$@4SQy6Gfus zH~eLP8!E|!*wb?(N;Q1@af$B;K9P@krmtN2BNn2pFGbZrhw!I+*u1N_G!UK(^{muX z4-})1!fc1vTSAU#o?RH?b7@=0=$=vj_T$;C^ zUZH*Wng%^aCK~<#LJy|ncH2p0!?pywU4HX_(07hhB*_H#23v0y$|V9j@W;I5GuXBK zfYT8+>Rb-N2b`8?*NsIV_)d-lbNE#YTZ`4J%7&7HFgGhHlHsia$#L_IYQH_7Hl$zt z)!tRdLe6!-;m8}sUJ{SJai6z!Vb~97KaV||4dtta5SqkZ>SFGzxyi8@8v-&&utR)* z_wP2;CC_6GziaJ}JEGNankjjLZFi>bArAws{ohgkVDRw)fK2VngS)TB^xdbYYYv&p zizW}A2$rm`(X(_)-%*9!U4fCLIWjxwCIQb%e+k69vjjhd-1DRi{9%X z_eOYX4mNb#&!M3qTcyb9a01y*sI<*X`ElJo1viZh!qa z7T#Ocop6SGAGT@aY1I#{?zVm;c@TR^wtc+&=go(36G|2tkv^OhZu~f7sgas&eUU^? zjuap#!Y3cAye$)Hr55HX7SQdB`HGGk*(7>wi>R9(Z52JoM^MMRi0ANDN8gljfju3W_Hz z%8ZPiF<3;gcVE`k(XX5S5#NP(?-%VjR6Bh*eL7c7KYaO`zkPT6_aDc#nhwe4hXhQB zO<+y{iRh1OMYv!|WVbw84g4P#qBxlEBy}f{_0u!*l8j|?E)P^&NQ3YLmVaoIYJFS> z3~r7mT)Jo zZxM1YIcpgR!DO_ELlUx-lPBZfH4c9Fjqyl0G|>StN)7ml67Qs1wKsJ;5(${B z%aV5Q>+@MvxnCBQ{fs=((eeXSR87N=uC(GN@E?{xoWH+w2Y%E&*=}p)Wcu5oDEp#% z{0nS^2GOV^ej)=e&K|aQ67+8EtTKZngTudUv3R$tq=_@W4j>E7N`L2O!Q!Mj$mmb1 zr|BpBrXJ{JuPPc0oo3LzAfTXsr!OU-71W|88_sy((Dl?URMSvjQ7yF%YC4?Uj|1yj zS|#`5G`6GE(}%j%S0Aj$3;XP7*t}2KzD6&t-q**f_(kVz0WjNa!wfNxmiT_Icf;`r z;;*qLBoh~){jP0Qg@4iF(CI*F95|g}FbXnnO#AZa&Lsh9C+9Me~=g##}nkbIl`wahAGTOdV+B+sRoJjh$eNUZ#(jIst{@VY`x$ zVF->*OiEfZ2`M?88^5W2YUtf7G862`GN>$AlHwpRmf=%jJmQxs=mIH!OgcvLhQt-) zAw`9fDdj;n1_BpMrjt$pCe`K^HXQ2IMOF`eGnlLky~1SYEO_Y*&d?FV zPqky{Yw zhoaOA(wQXF)dM$F>bxvyKJA*-VBc@|tMZ_OjGn!eH}hJGV&?IsW)3(Pp(8w)_X1L& ztk2BZ?9-K((CGp(e@eWnHi}AQ)ihYE&@!GZ9V>J+zi?00_g@fjN1798a=TWw zPb7L|4s!lCN_r_h?%z$sTYBGH8Pa=CMges&kpxQSrJ zZC6*Sv?&MtOI$<>i(;Y5;umH4dX`$v@$R=uUsB1WysQmBJ*RvsSn3G(8zh>6SaU|i z;^<1^dV&M&J*e|lqGQ>c*fB=&`h#QOo(qQZBOlPt8zUU5H-x%Y4v5&U3_0HmJ3{}t6=7b0GY+LkYQ_F(#tBw=fcD&@VZI09aBx^RwYNA9L zk@fOvd|u*%7DLuz*BAA^X!oG7EPwa<2A+A~9gBX4=Q#)&%CpE{14i~GF40l^anmP>M!-4w>ah{g|IB}6mTjMIu@bZa)(+=jn@rMZJi~O z=pLT^p%BVU?nuYpjkQd_u{+T}|Je%M)*i1e6oql+_Ca+Vs)E@`Y>0a7PoILYZL5s+4pBB`ZU@wPD2(uMiU%tRpC(MQIRrZO5|~c@xFSUwM-qg zk95#}z~sAI$N0+`n;T?vzerFudof!ARha3o+Y2XmM}dPIIry_}ADYfyJ2f-^<@cd{ z-o~+4RJKM3?Qtv3o(<;vZM9t*s5BCL_|K~y!caxAOn-+i8G)DC?gBLsAi)4lJ^7Rf zWeskA6vQ$?mmco|Hh&q9lmRHORT9tL{+6-Wga9*c(Aj6iE`VQDe3*G%SwB_Q-{FxD zMO%O$wmj2N5O@3?qYRFYlmou;8o@Q;J)BNeNsx$J%6hgqsT6}Y@pev+I)HRh^3Kc- z#iX-@5hlRd>FcIebQ*_B?({xIRpxpRa;s(&))jEJD;4xs~;X_phHr~-bn+H;HgFr!j%X;NF`a2 zz&Q|-1B!$WjI$?j+M|Wjpo|f^VPCYpoPPsA~z~qf=+q0 zy83_t+q4K1kf%h=Fc2st8k)m^-iDe9uH3-jEV+2Vzy*&yMAaad*6;!`e`?;8sj91L zn{u*=j00UrC@zD*u)tc01~OM71V^z~3jKgVh66b}dNRK5%NCAZeUq>1u|#Wl&pmJY zATEvLs(C_y@S`;K{&8@O7}-auR=Pu>qcD&yCKbXS=(^+%;~IK~o?WJ8N}XtPiVc__ zot@qa{+Ps*c~%e(86t6hf1S%sU{o54vJrdOc7Darhp}Xv*(ZUhH&cQqC@@K;^a2W; zdbCr|l=eZ9Y)38d4ucE6{>~ZQ&Xm96M2f&F8R^hYq?HxkFQr>EWh)>H!g49GOtlyE zqXM(i&coP|UGUz8cFI~1&l8+e{81WCwzMJq#%JB|^Q>^t zq$4aXWLhekvwhC08`*>En3W2qI?F)cFEw*a4F`|-W&%g-S}>SZ@u9Ra7zrkK_Xe=W z$wOSLszHc*p*b@#IxlWks5BKi;@!={mBrI-&;I(txC^93e@3HJK_0%CUFCE07KfJ_ z_~)x`@FQMu09=$^&-Eb27!`X2J3!bs1Jv>U??cmb=@&=^+wlvy$j2X=>;S; zPzR^3oLdW~(m5yxl4xlYr-?oDMuXvmRG-te5JRJecGJww!wnqX8RapyULAfGrc&I7 zavz42>2P5xe~r~_ANuLWpGm+6+f2AN+oTVxQ3mI_hAad_wAS7lX5;F|b zYX&lC$;m({`ZCF*^y_GfBju#@Kfe}B$P`jtCyJf9;vDn9{h@cloIB8~W(P6u(ma|+ zBpT~djOX|Zg*X2GRk@J&P?KcD9q&l|G)gWRCe>3ix@ea$rVG6!2=Fot3yh9r ze*<2XWJnEF_*&?U2wRGP)OexP?(z;h(KvHqu)$&*QDuG=2UUoCP1jZUwX~>%o0#-$ zg}nr#nFk_rm;%vIAmY{HD*j@C{rI)`Gp-ZjL~6`3r;}LqBo?180~8AX$FHI!pOShU z8!Bj#$SEOl7c*R0(f^3?YBR~FqA!&nR7c6hdIhX!@;CYy#!i~a{=jy;Ge%iDrtQlP z+CBy}x#5APoNjn753#(kK&gT>^?-bwT3`}{Fo%34Y{IT18W4c8pGfdZ#5r)@@Lj3mz6 zq9K+tqTB|QYZHcb!tT5q8kAdg5F+FfNAz}bFgw(l19Q!R7Q;i`Npi$CyPVc3HddCd z0r){S_A+pje^|su{ad{~kF}6zm76?Ic71nbI*S`y(?v}|=xf6^jU1TKfggsM&Mok; z<9S#F8tq*Om`$06RizHAh|1YkI!`-PgG>{?!)m&c^bj!@s|LcRVpVkxpvf0H%Jmb6o*3`FG21e?fx@_?b~ zeB#ch2J3+v7=!PI%+5eX!`nQvc|c+_OtxA$h^=^eaUe2b-yvFl#f}Z90(r&-_8KY@ z3dypF8K5#2Q0*QPO%x?kD=9o^J~<=!vV`U}Oa*a~69oD*q!o;5H(^@bP}Q~_fyk5Z z%afWre+Xv+Vm4tMiDGO0C>dDQ@<`qHT`xBA*c@K!Fy704^=~IoeMli2Sr+^!Ws+R9 zAi0v&7b1O;G0BLg+`L|d{TU9ET9)`>;QWkS46HJ&mc;F1n4eS$(;zEGs385zwA#+A zze?zzvjJV8>kXmaUWEGhG7Ab0p-c;@!}XOpf1TjtA|5RzGtA*vZZn^}M6X$#iIuhn=2y;k_+!^$u%myZLm_z!+?36U+i-mjX<_DnrdfeVawz~t*e8YcM zs9euQJc$VWk18(e@CKb^it(=+xiy`ye^Yjn6kBbUe3VBTn1k2kEN)(^(>Xv}?N~lA zeBflf`(@xh7X;8)dX)%D`S-ng1_=K1y~`CIE0pMkLc7H}NqK#>|2L9ithkP* zi;1ecjdtkD>3||n7UK;L1PB#*u+l;bM)*>ONZarya1yVZXAAT&_@#PEe|o0^iP?GK z<&(azRp_pYWRnE|m~6=rf?=EDQn&r~yU$gqR;55m`tmzjC{$$JuFl>S)BKvFE21(its-@i1{oP z=arj<12eCzp3dvHv*RkGe_WxQ!^fg$gYclUIGHfBXUjDtF$5E!LUh~;FQE+MS{%QK z5pGFxVFE1_v@ee%MTjZQdje2!tVB=7rkf^OD*~% z?TIUiIbH#@>Zi5*-8B`;AUkqco6CO-wxPCa#-=(nztd~2{4w_P;~)M5t*DRGmvNs0 z6SoWn0|OKRF}DyI13m+PAW8>_I(M*?9n51yXL`A-`k}=Dp)=*sh4Y>noX?RJoMmX^ z-0Sf}y?kYHzNu<3CjmW?5wnGh<2Xf};Ziib+pC|}m+!78 zcG6Ph*=e@LJx9-nff6aI2+6x!IIXCyijWI-b6g~SG>}PuZVM(aGMpC33}K99#>nYq z&NazQ;gn^DNtSt98$(fMM&Yi0Sx-|!DiS9@+6}kc6vv01bv_&`3K4kd4k&_Tj;Y`2 z0tTZl;CrVFm=AP8E}25Pep(Z|Q0bL(p4xQ!RS|NRB?$M{38^S6yY6@x$lv;Q&%R0! zB8Q~V?J*O7fkN^V!^93X7=5)IcV=MPz@l}$tlNi**YE+BEUBddvY47E%g6Qw+u>`rd?f3zQX^Olds2*8Zq({r{6kqK|PJ09A`el&?sMku!`2s#RQj${~Z zeR%@<+!eh;xh~w8ldPjr-mqhibbqWj3wDvYic0O^7pAr84)>D zteT0`U~lcDeujG_Y;hZdTU!8b3ift5zzL7EMG$^q!wvR^gw^e1yu>CIN=-_)DOXC4 zx#Ah^wk!CwrlpAzvXlXJ(#WAR3(*PlT*)A5D;ZLxg62Fut$vu9|E0E>+TpahSCH2j znwWQgF}Cc=4eIlsGzBSwh<#DjwBBWpid4R>HsJJMu&_Z+pxWM+yrkhG4?ee!_U8He^)!<}O&^CFELIu0-g^BDG2ke!;A(FM7-=cMGj)WCFBcw44b!_yVow>KyOh{<|? zNf=8L<&}*jiGq|B1qtF2DddS}yxHxL&7P>3?mZOfDrMs(|n5d>bDFo~sLttRS@BU4z^7$O`(Q$Q>*0C(7_kaA;lb?TTyBWA^ z5xc7AKNFdu%W@)n4SxmKN+j5tQDPl`-RlO`QFPGI5Kcft9;)OkI`EY^K)N}>x$&1n z+o}uC^+-n_ZZ_@F)lLKndD0KeRAuz#x8Y`{zldG${a0$catJ%erm>!b1Lqi7cqymx z=9|=hX#48(G*HB2p|DmLGg z!rBxn0Vn{dnLcVsiEu*w*<=%Kg7eW3L9BYw5{q0LrNW$WaY2 z&^F2fardGHTe&6URvc=5%VRQsWGsj$K_#0!p%>Q!Ge&y?C>ZYxVW{{_s0ktVe+PJSo7m3d9+%j94hf0}bg`l^fi-gQVsCere=PrnU<$lvuuGLBT z)-+A$`zsZVcbl7Sf8h4%v>enzp5O4|iS6V2Lcieq;eH2S&6O*uKGz9uOV2cP=hT)B zlE|PNNVU)>_kXwcsHgjZL_O}!G7f7AZ8F~>o0Pp4CpYNXV`re<)ejQE4ZG&cAN*w2 zZK6ylS2?V&-~KvtX#lN%rkec$q>cOcXfoGK!|@fLSJ2Sk9pW5%8%`qV_z#dhCr}{& zv``U9JM63}lxtIf81n+&G?u*7;^eqTZE$VV(F^(`7xUk|o(8Vi1@io#)TwsTe7y5| z^!HMH{(C77(?RSyg^05OmA{d}3>e@DdI$Ar@1TR;;d1?l{{kulnA!K2ai0Pcw^btp zu?Yg`C$|VK18oHaO1)|{mvNs06Ss^q16~OMGPmnH0~rN>sSetLE2%guuN)98KqpZ@ z)~Gh4cUWZYZQrts=|ubp1_z7vPV2;&bix4z_ki6o1TzJ#1Vg}8HgbUauCdRQ;Bf{A z9Z6>3IJwR^Ltb|^p&+3mr$Vj2B2~x>5JnF;#ENrZP;DuTA&9C6gh2#?j%~0Eu3al5 z;?$H}8!||LTnXZg?6ohDfw_)0T;Oscf@@(viwCQ04t0Ljdq`rLk@Ci5DRBZ9FQBHG zyawScEEvqrf*aXc2!TH#8PbHJXJ$wy7(>c}{RY>{PC2B|2|cO7xzDffO@M z^}W$~$bdM!Hi>N69f$?xe0lhaCFPNawtz>X52Px8Br9P2goOuEn=grnbxc_h@q%lW zz)*4G#+(N#1O_v3B%X~NLmawu5^4;!3pGYk3PT8^q9>UQ1VP-)??}v8#6od;A4p8< zr`dG@vOFwQ5HP%u-)f72vQuRd+W0bv3}Iv{2;$xhA#z*l>`JWOr9Fa5l-o$O4ErqD zp?QaYpw7iO?;$ClsOtXisG}^ou){CcO0>NVD}EHxY->0Q3CpiH7{oc0i?azrzRYG% zP$pat2D2yNOwKUWULau3jX1kBNrX6|C(fb3@>yUDVxpc4a;r|k&n7eD^e8Y1ZC_C& zM1+bz3+D1`e?dr~=LT=<6l8Wa8~`pS4WCZM&Bk0a4?STDw%@TmD71%r3i&s{PFe-Z3*Rn z449$A(Gf}#9>6db;g_Q<3{da4bw?U!$&V{_$m*e3r^1yZ$wKekzhy;S=#|3SzfoCJ zMaL}*a9uZ@mpZ|6H%YA~OwVIvy;E>5K(jR*+qP}nwr$(?6Fb?lo$T1QZ6`anZRdZ_ zd9Tj*-%L$aS6@ukRQKvxYq}XNy(>$b4bpg?6R6=$Q+nA>jA>5jhc z7lym#wyU3AT=35a12?uQA1y+$@$ytwgdGnfdG*tGL1dk{kDbYskK28=nmvG+|50AC4TK;$6TSG#9dvl1ES<^ zB?e@~Le_3iMS9War|Gl2Q3t@&GZ|i>KU7X_y7vJw&BxHo_6xG#-knAnnfv!5Q%hb} z^m`(Z^Jt+hjZZJBy~(3<%3qHLZ|jxmaM(QFZN&RciSl)&YJ`pF3fBmcn%E&S%+#0X>DlHBHdB?z`vC=cNEeSv3^PcXw7% zD~ka+7S909X}WFd>@Giraced(_`MPoB5XQxG0q$uSekuqE?q?Wa(K zW%)l^t~v8lT!rKcN=Nefcxp>AWg1o3h;D{->MY2zsZp&fae2fnDFblxSq>|D!5}f& zY3_~7b}K5sf_8M!SzOTgA2lP4Kl|^61Bz*HLN;HY-}yg~wwWap{|&I(5}^MGf&JQ8 zEkNZUfTP+1?Lakw!IYqd-v4XAu?Ky{0&xA`R#X~O@tYiI+po0ER7yBl%p?_%srt#& zXx9`%rUfx_^NTF@(5dw5NoDuDuL9)_tPgConMcPRb*_l`*|NeMTpchh7l< z(GDWPpG6g}^+~`8H(hwfL#(<<$;_T@$wASzBII1#Kr%JVuwSN?#yIy}Hur@Hg*B5C zn5k$jDH=&$u^0^%&KJ^0FqmXy(095||=Ms37KKeZ!M zBd#7e$Kln0>mWy}_~g3~E@dzwMPI62#uOe^fefI6?O%DUxPUt)(&$hNubpLW?Pb;;og9Y1?6N@)nlxiUb#b-XsNjB>XGQl5oB8(D z>p#($Ef?GYyt#khzk<8j3an)V{H6*yBjRFmS;Kn~4WKg;kAKl^U9}PO;=5e&;F* zIRTKjJ3dkgFhsn&-qL&Ci^nnPVE0imfp{fhnETqsG58bHwzKfkyT22@4D#e5^_AAxxDhGI>@(*e5R`_5?F@{?Q36Z#kzMxsC}~n-oBli2y9J);?mJgm;s*cH zZW6pz2Y5r=vWFFCZWGS~H3SDES#i<(uf3}nR16tT zRZdM^L7G-nUR9er-S`!Ryp5>^v>g;eNk>CQT&C@&9W;yz_@~Wn9~27)45`-)^nabx zi!VW!0qp;`X>F>OZrvsaO2Dq6aWi6K5UEBfw(PGsn z;jUyI;}qz5oUz$))2sOls+5Z z{py4Ax{p9ru-35S>&+rfuxf&TYL4;EL$GI1PD~5sndWy2;c)aestZ_pCe>GzBwW+R zSP7{i#2xCIjrB4f`%D)9(W@e1u{7Y*nMd;){!cB8+*#1HQzPq6|74F8{iRLZ80|h4 z`73zI68C}nAuOJaBVX*k{9^RPvazv^4Q&nPd6>SxJW^~A|Hu!5TkcW5M)OBtBfyCJ zJ3bS@`rJzF$-;V-ORcq#lL5;WR4`7k zg{Eb?JcxIu5Wfl2cv=yhF(R5>B8%}jQ&d+^d{--$5u24(R8L(f9E0WGFNz$^)8;%o z65TcqCt7ki)7>GK-Je>$x=>|(_{nbFX>V@;6wwVezI{)_65bj}^uRl5Iki$hq3ecny@;FXVoykhVA><r-9*8|A={br&b{zHNTskQB#l~l?BFeyZh1cq4@ZoyUdov5ZZ3^^IjJQ{ zc#>n4cw^Ak7v&_Md`;>>>+lym zLoxSCf2KS36|n+kqHzn7NFy68MQ*`W@j!bbmZ#U8l_d~uOB3>%99e&B@_JjkoZ2&O zqb9`MF4JBvnV=QmQ&3Vrm-ekU4kHu&4MNUuxtN~FnI2TiryZUCg{krB`Mm1^>kGEccG3yAoHuww0)snlLG_Y^!^VC#^FMD+NKNV^FUb^Oe} zo~Xg8GDn&~Csjdn#4{WtL{Rr)FMY@`ubg|@zuG9|N@n6O;_)ZH|pkT+e*F82Ph{_;TalLm+zhCa%roNu8x#v%Sz?DvO_dVm`4 z^i^&L**{&F;R3;5&@WcB5jl7dsR-Wf1TeL!vYk{u zNBIm~$`X)D+%af!CNy4VmrAadK@-h7XgT0He3cFX|Cn<{^eE9`AqNRzMb(hT3o+dN+nW2U&HDNgP+i*-WIDT=e8 zh0*9K{Jo=yV&(+=?8_X{g%Qp2?U@$qYgGIMk4z(j(wzk1Uy}^|dp?@|e|$2Yl4uh5 zHFx`wb}raD29cD!@sQ8)>!=ux(A-!$A`1&bpnUf+DlefGdsNfqp~`0HMu12UodJAf zH&z_24hJ)Z1Y3{i5{V$!V3N_dM|T};c(HmNKO$jCB9=`VkI&p>W1D5m$s4@LDsQwCU?3Gn*J<;tp<=1KSRiIVZZ#w3Xvo4E7wTok`RLoimHlfsqW8EG zOR#Y2y*7C@<$S#?mP9~VQK26k$v^~F&Z0b_3Vu*e)Wm;cJb`^ksQ3iKgKXekLu^IE zZf3=mWBYWs8d{8vLR?9H{4`|~cig(Nis7VYgbKSndM`)V>?meeSgmvv7hoLH|M8l0 z%8DTr4#{cAykb&$!8U&&HgrYcq?B`%;#zigNfo42`k;{RK3?{y223t2$xxx+4`Fhm zJE_3RkPkBBN@t8LPorUGUv<;xD9;F|a~-_iy@S}7eTjszmO^XyY&rdYzf$@yG$MXu z$PeW3SH1w*!y*mLJWsZhHK6UYh}LlHfqXjTe7F6fE*X2a0es8FFf*c(jzpwRH3s@N z`yhyusqJne{w$X<3dZT!rQDQ2@P-HsJDlv$lM7y5h?z{d13&FfR3Zerz$4aWlRC~D zrk_9mB>KaA#}Z7*mEIndfz2Q%1iA6w!zWwNeuVC2y!^}(gbKGTDj?n&ks82C@9$78 z)6@X;g+0MII_TqMUM=&PkCMe}iV^sSR~b4D$;k3G zlwjwuk!=@sw1e6eU*!)mBRngUx*78g z1Ek&=CQ=stt{>2Z0hCH$LEn8!2b62cLyDW6e_2F^g2(o9s_=4`?>Agj9bTsPosr!! z3DIcYfOdQogR&x9QaP;G6^cWfSGjhGI#@q>HH&HJbXAiNgI+=Xj~_Bq5)f)C-E8bXgJ>dLfi}1B4fS&7m(~ef!3v8 z*n%LY=RSkN1GJpQ6H)$NI#`5&L4laTT@fQ7Da2f3Nc@Q}X)QZlD?x;0x5nX@SpH)FIR6I^0UE-QopYyb-qcP09H+UT*_#et!-bZH!ZK0g36#MYPH&ZQJvL9nK0ooVpaV z9K-c(M?Jr-5k2l0iVi2Ud`_RcGZH#5z(#KV|4l1 zt;Yo8kz?MSQL-;=>op)_49@H!b0^2V3tESp*>UB;ykFjiG!~@|%p4fj z$923v^1tJ%biFVKnE$hYhF#m1a>d^ePtCMVZ4kAlC{tI0980^9!_lC`Pg?TL{}bE> z-E(__JEIY^DJr1~V^PMGZch=3xaIhei%bD%n~9lA`3D3|gpq{j3;g2bkx38~_KX7xOrTjpSA!D?V-U|oV{9HGAjQy)iHk*km2MZ+ zeB2VZmO@UUz+wOj5~;O6_}N>BvTbWC^Emla)}=Sr%D;eTWM(q8wGk!vcl^Nm7+$05xV}DMJNOcAj7hR)Pypz)U)Rx~ z9g;}1TVJ>R5EYFqH6DIvT74rw6!&sYNAt${^>fDwWD{!8Av8Wj>KFAPRKYN^gZ4rE zvHF1S5860kbU^}TG+qiZzKtrdq*Mg7pJGVOZt<@B7$YV)^8-9yypG^)lQ{H2Av`t$ zg`od_{gtoXrli|HafyLLoN;qv)Vb8$d*#`gM7y3FvhUlyn1j;(f!OIkjbzh3oLPa# z(OHCV@x`^Kx|J=}rf8hLeb3&4>wuyFgPk(v<%o3Ws$L#=J9W0AB=8ns;|&F@1PP|o z1|tS{CUI|pv>7HQRT~7mI(+aLm#FKMR{;SZ5R=F$tmR%IAtHS%-$d`n;NK1r)x&N5rKR2< zX(Y)tn;%Ide)(v$!OlJJRj-zbv`bvIv#$n zfpUj+-$|ners=`M*@c0BGDIVi$s^@yjDw`@?C(OYUduOPb>O;51nZyB!G5#H(Tu>63YDuc*d4cjpp6+N)2{uIh2Gx zEleLUsO9J|+ZmU7VGcEqh_(_KN)X2YDhX@l$rc+RyGN!x=B1GSkE5i+`KQNE7=qk% z0mfj2WAXVNC6wdITa6@!o+b$g1HPYi_>#gq1mZOq0|=J31JRxcIU3aTh?eQH9frq>70tPa9u zn4a@pj*nG-1rz`lmx%!wDjMuPb$4JcO&IU!JKe%4VgRkogkVxqD!FDoZnNUdt0z~{ zT{R7ey7D1}wwYs6hx_ zLK%U8f_+d*aC(zzS%ih%6l<%TTJNi<)Yz^U@!M|GY(sc)qn9^~0-ENT1;3bR>v1_L zSePRpR!)+pWG0liHQ$CA;ENTK}q~Os4d(V#?tw)_b>v>oTlQ#DqKVJELm!p zGje^`UD3cmsPiT77)qC-&XQLc_?RH>bDZ!%Wc8f&*9IIaKe)BOb*k3)XX(wNzfwMH zZqs22ymRt#jPmQ`v9?^SRuSx~;1RhE& z2eT_594jwgvMWbhZs$N-3{IWXIn}Si%yesZrBHohm5~-hnl(9%#DLg?N-{5)C`52>{7;GZd*(qBTN)vOiY^9F#K{#XaiLF5yqM z5Yc$&@J}B@1j)980BY^BfPga#iM@akO2jH&ReT|o6%DcJV$o4iAV-EjW_kx z*b$Cqa!9v{&~9^{$TC>^2>>ekZ^vw{!t*PUoV z>0e&JS9dbYa_$OZi*D_p%xiPGHKb=LS7g7K0);?-5a4khi%SAzlz-ziSBV&YNhujE zWzf@~Bj2goh*uQVS5NO;;dVft-{yB;ayBFfJ=4`9t$_<%amgTc^Jgj-wHr*D4hwP( z3gdKu8K|v+j&RJ~=~84!yg;i^X|ui8X|i`Kz(AeSG;Jc22gh((K4J)5FGxV^lud`{ z7Y;6(9KaGedT2Vo9c`jR%q5F*S1v01v?LM|i7dALnFvM`+t3W(pFjzhGUr2Pg%SiBqH_$!NAR?IKq zDzzBJ+~ou0g-p4>`{L`0gO{})<-F=qEvZsL8eH~@&(O_Sm2h*@RO*QW@KFA@C_kKA99^{j;{`qiEIy}U~F z8W8c(rcUmXoOEg)?-Vb!`Eq!+E|47-&NdplTW);&@6}XNEXS3Z{A#O*1kz{j)C;tx z^<18lE)`^OG_naDh=jT4HX{~zbH3Tsayr;>ZZ(yBMr_(oDW;1A`wW$S z^VsvrUwkRkF;xbT2fa`(@~gW#g_>danZPXl`+-iYz|z?}mPTbyofBl#A70MrFA?#<(P455;XWx?o!Gf9iym|cFxZLq!K8t1Jr<`QyK2ra)4(N2YCYD|S zcd#B@th%}nlC1@m%oLdQ(j0EXij8Jk%@V7gg<0!f?AlGR0Eeueo$za?I6_6hyDbn~BAnw@U^&G{8A!c>8v}CqWjqtb zzNeVwb~_lW9^R|xr|YJ8$Qd!E_egv&Pd{SK@keWut2a?QsEwl5JM2w|bmbPl$xbk{ zWmnOYQ9ilGeo;z5}ywzv8+frNBBmoezI zk;{?qLHJCdl^*ez3V0>up;#>6tS^Gb_R;fna^zivziz}qyo%d*;_a(!5OB5M^edWL z=>UGV%ENPvVS%;10}xSzpGV8PU=%oRfYDU%76|4mw753|cg1#ROuB9046eTuvXkBW z<7*{4moDSEvij=B!(ETJBR7ChOovr7oIgu?85+%1as)rn-%=9Z^(tY@o;L61MJ#!H zy@GTcy_3!P`zE5M78-?}Hr?6)n=(662^9m7CSo}0#cM^10AEu>Ny*9%?WF1kAq{_0 zeS^!bzKp*0!Dl*yD{j+9Tbm?OhMm`~=T{b9m6S(gjIA(T$s95GYV#?ysfAm8jdbQ1W_Y9wvNomMr>u{9)_+v}ew!P4$Qtska zbDV&J(eb3*0529qWZe0nz-k}ys2tA7Kv93w$(PtW4Xka+St{#N?AyBCjlZ!Aq3vIj z8PD56eTs_ZC1Os_ij$_uE#}cU!9W^kdPDN=oNBGlHsrWjEH_`%774^$HA9GsJ=77uJ&w>s{hErfuvhS!FzRC{elnH-th+{!hQM+o&AK;P%sT-{-mS`xT) z?}It=QMgW=6|XW-y`032g^uBazill_GyKYUk@4Yu3@j1Zwz7T*P@LIl9EMpbXMLbuXT>483* z{a0&ez}+d`0L?o+E7GQGB}|PB#hyVoGY^VFZ!PLmTTsU;KK&d$z04tzLUqNphpX-s z2o#N-?Eu^^rZa&U@?8!jHh6U1hSlh;&x)tw2xKQor+7}i?r_o;2vDGJMRcKg8HN2r|LmlvWbA*U&MDR)*>k3gx;NumF}`e z*$pM$uedUHiQJlKR)ko&ZY4FaHqZP|3%ae7DTt_Vqyy5(rSlrXw)eLbcLm4Sh zhGe>%?4&kW^(P{eQnMH%Xzax0c@mV}s5wxm!o)bBq+(h+4Q0ww%Fm!I^rlt%>;Hm6 zsqPDMEC8{de`kE1k(0HQcc>Wk&d{}x9C6ZM6^g*@wZqlBaoS_yTw(WgFoXcYCsU}G zBY_rq7FlZIIji1R`ZL8m_$b+LF@#co?Hxlj+N_@!D3B-ak@Q8MEfeR^nMpW~0`!^k z(!s@cM=c ztP;G*@$7qC^jK&R(`d19s)rgF3Jxe`9j1oV6h^AY=6KOS&@Jx5-bqD4Lrl=e!HwDK zs+;7H?!?+C17cblsIB$G(Hz+HaCSVvsu0-@*p{XjF=QT%6ml2gz1xYQ*|FL!lq35i z@_=EvqVoi40?TQl&nY?C%ms1h4By{E#CN(I{)@_@mPFnhtB0D#FqQ!_&ro%I|H7Pe z=;`H3mNv;_1uamnBgEmvV{A!jAfi0%S6-J{JRUA$U<-s8F6usDM}12Z?B(<<<5nCy zx{=1+tw4-8HuTXV)d-vj6c^oi?l>3aG(fUDDE-UWG&^@jtTD=HM5!*5V?8j`Cj}CH z`vvYHX;fLO?u;;y#i-x@rC9lJBs6!b@==SDptdBa87>KLR#OR&had%qv`r3M2)RR0 zENYp-S{vqm+T{{6%|9{N5xsvdHJs#b+$*-p8+g^y@=Wh?{*&6L#Diuu_lP!29DpW2 z`e>pSr2MsGJsgj9@2JKMJaWp>!S&!I@wtcW^`sH>MwKidEI2lx`r%u^`RX&al`> zWgN?_%GmHbI;L>rGuEg4XzoyU7{K6OrZr9XW@E|9rVDG(xX}C_=aT#!-m}j<`m)pZ zt!B09b3X-9u~F&Xd`;E5gd9;ug^-cAJdKwCX)<_6&A;mLZ*i7PsH1h|R#qOTI4=ta z+DKI`RGxIdq$M&bI(XAFV**_El#-^cB(#d?TZ>8NPO0kvV~&*9(vrKA#*x~A{Sd8cd{{aeQ`F1Y z_q^+$Emc%N^;X-5gw`>mQZ#wxy2l+B4DJox&a>9doXR2_D{0=!>mzq+=HeJr;uR$zR3 zxpGQ|Kj8?5<;aic3-snsk%_W?Bl|V4E3WkgWIYlQrIQ+ZV^W)?51O=84cQn zkc>}Wqr11gKKYpo-C0L$?mGE!?4Q>CO@11@9B;)w16*qi?+}VEr9au>dbh=)n*{u{ zjejhQ^3#PO;?_C}{o*fNpLu7+BgfMjsd(UyXqsCkL27zD<;1x=O0on7tGUxTM!GG+ zM|66a1M_daXP5lLwN(_H6+SAp@>HhiI7B2U&VQ7PlFgxZF4vI&Tgs62l*vySbG-R^ zG3<2p0T%i%KKw)mw3t6(tD~|?}uGEDHaK7=sJBh zO_67wR>4QEQ9@{#y)x? zkhY@4u2>}{mG@XrrP0U#b-JnO0#XCS1y7=0pR;$ndWpEOkKlw_I4G*>&#qs0Ddnjc z(PIrE26aFLBBF=y+kH^>xXpv=E|IRhq9)p0W5ar#`ety#dJ1@F@XSY;u_)hwh>?CP z_HM!su;f+*97T#Dn33i+aFJFM7N}xi?$@(sOo)C%sm>00kT>4Z29y&dY4!kWXL`cu zC|Dv>D&Vk^1{aJuN|mae`l@!~OY_}U*6+8RAoYMr7W0rdJ|=Q63GYK$Gv!mYSHIju zhq+Pn=6Jq#3ki(~&HAC+EBFv-H3J4FRLRj2=u3wIFs!zTX87)53<}xL7X+cF)^DGB zCBdwTu_QfXCnV!qiNsmA{fD9CIYfd#560LjV?-J}!tUs#SBYe;35$a+u(|`G2WApl z)TK$##;HZ{`X`qgif;i15@Ie7kybIXYWsp$|5PiRL&zNPx!HqQAM{GCE|5=i%wa|k zXe?al80Q6F#f82qWm!2~)&r1`g=Fajq>xO%9 zykq<#gH8*#=TaRCs@RBzH!K96GqY`BM6m$U54v~Pa;^kMC9#XU`PIO`Z8dT`3T04+^Zo2_}HgU(#`1ZO&o;$`tdtkTgT^e2kM`BhT`nn zQ19~VLT+aYt`~nu)m+ily0#CV=S17iIk*yYZ=N9jIJUtx8yMoBE2AEz_pW~5Q1t(^ zP}HKp+t{W98JqwszH|Y5`cWlgo&x7qQb1T#r+bfUkR5G2;yOdI8ZdJPkwKRQ2HxF6bGka;ocMbk!e7UkGH*>Rx%?*5mC`kow5- z!X6Wam{vWJi)uKK5ku9UWjW{DW3fUQI#E^9ZNOS)$w3d2dFFIjlRw_sC~QS}-a{(A z=&;-Tw>t~6K>+vWZCMAboTWqu;B}DW>zl%2lI^Zb_-J_C%ea}I7C*sOz37aQYhuNO z1}%t@%Z-VB&x{&WD&8EFK0w~p48f)G52(-duwBYT-@Ht_Ac7Ijva-!TfF$yWFxO}z=c+|Q>{L}WHZP~-jxu2?eFQb|b*ykv?RxhyM zyuMCp8%^N^=FkMjeN;Il|G+4@@%dWR*F2}R#K^@)(04_>azgi5^H|AeV6(x*hWz$I zeORj+f9c$UUpdJ?nB_YrYiFAY-uv?MZlY|0d$D=k$@`N2pF@EI@6g@UVo%$e*U z+OKnSQ|Cj7V@F~PQ&R#xE+Ew1MF9B^MO?&#GAdHb)*TgzBr9(HMy33!+JRoHB_cL7bivM^|B$4!o%28rcv8Yg|~Ed_~oxN6JpoeuZ$N1{sOzD!S@Q zUwUEG`TU0UZD9wcX27UTZXeFAgU@^&t)rb)=(1u_X%4ItMURb=!ke7@d4Z}hrTYJq}#`uv{!5(RGL z{x^Y>;DTYNGjW4pqyu(Aane(z!O_waOhIANqj16O0L=eC{jltxt^Xyw*mA(DflJM! zN(^w18fSU3fw-@3wpf7EG@8oLtNyl9d0YJWUkJ-AmoG>t_+iG3)b-N1qz_9s`fe!S zziulc5(-4=XAP@&`f}YYx};CGt8_*5ee=pBA2~2a7fl!CH}h{_{{^HhIG$KREUiFf z(|n}g+=wB|clLbF4G9YR$vFF~6jt-wCEmPLM$4jTj%enJ#(O+cCz_ zeMqjw>V**VBB=7~U|`XdDK+(!ACOT-^bP>0AXbO>k}UGMExRub zB9Qzs@b2e0EnNxG{ReQiW}Ff75%Ry%_jWnBOr2eJ?hS;ya_Pe2R|p{<@$@aD&mf(V z+Wd*6d_pOFNQ{{>VgS9O5GrYCC2aqEUtTU}+UN;PZnpnJ>D#*X6Ab@2=_<%sp!;gp z@wW?9vv=EEyCgya;IN&x8hgl+I2$=-?aFyP7`MNUXn6=`EdW3@q{@o~9;8ep2^Lkn z9*-PE}bLf@T^T%A#fAd0Faji6N-Q_IjI#D<#NwbmN&?q_jm~E*566 za=Me5;;NI%Cd@j7V9`dlTwy45Rx%+Ki{wgn_}cIRM&BQ`{UbLIGuzyWL_WwHsLVp2 zVzm)02OHNU&<@zJw4Z2|kq9Nwb9OO>Fka=qKg$eqW_n$pwZ<5bozOBT?v`N9!38Ok zfd%{}gWR+dMJhByC+=6faEdhjaIwzb0LGT2;H`UPfWXYuB>$K2A^FJiVAkz;v0s?P zkhhOg3Hd1RS&x9*L#v1Y7fys*H1=oj1hC&QTT{7kMG4?P!<2U9Px{A^e&UenBiWi}f3 zPOggU^^kT>II-V0Z7Ql?BKxU!n73%-aiV_~l+!}Q90FB4r)qv*xd06X+SS#szgTl5 z$GzvTBQ*dCmJgKaO#|qPCE0(f$#z14TT`%#C5VwbT%NqjN!#vcVxz5u6p9ocqDj@uoiB+08GAF2R zp(`0hIS3t?XG2*u!TlS|^y~ya3H{%^9m7}^Tp8ei4Uy4eP7?KRq&Yzzd>h}{e*J=O zs&gg}GL{~PFPU@eP7%RodRzuyR9HU5K5Q*SO(+(9|9#gBx~=vyUWZ;0@3Rhr@I=sg zqK16&7)^Vyp0Rt(g4%G{7lDK&Ip&hF4qF8|?L{8At=dWvcKUUf_NUe)RW({}o zBnBWOMuwhg4EgjzeYO^XUtY6qX`o#JlkDYXFsQQzKIl8 zigBAG#XmAM1mi`}6d+g-^uYGeBq_+prU;;vA@JVffaDZH!=L>+oRrs)rD*6GrDGUA zc%urwi)9IlI-e}4&1d83eN@aOCWeSSiMh!vp|Qj&$17_+)+w8-{c~W&Wi5?ZKSFK7 zHT$}bn1|pPwVttiot-YQ3tZlbU;vLk{4Y=$5?2?rR2uno=lO*b9%?PCVz5a-3KpQ! z&}I^2W-Q3-z6pkC(x`|8-R=#%!|oD2Ff($6yN}d(4o}LJvar=?RD|;{0;*y z+IlIz{Ry^lJSU)~w_gz*i!-m5aj9=v1?0qPUa^w7j0fugJ!MkSn%SfTElN1pdPq}_ ztSQ{#gf0hL!m6K2tUq8E86IB{%?DsuonT@?>*$LOSpC5#cjD zFAp`Q410QfEP#xbgLbe=|A#wubkV85m*?8zoDQ$WB6oI*JNi8?D_$B1lh{t-u-thV zEqkyRC#lrWFmnw%I_^^h$>1?0ibP0Z6-J1exd}WHxO0riC8bTAevy7e{54C{qaxE%E`bofg>OyA=5Nhek3@6PX8g< zrA1_d%yA)nXWC9rM~k&~^n*0PkAxcL_k6YKulrvx}>jx`QLVZ*WmP-TB8 zesZtwUn1UAm$GyLL*P;G=0DD60A;r|6^oteeL!*+zhPLNcn}XcL#u(AZ(X;v1?6CwZUF zezowMjrOJv|EZUl;WkOvob0M@vG%8(e8La4{db`pM=cWi!-T5A`R3St*XZ{?@mUMB zA*2C%1U@I4atR`B%orKdy8Z55{9|r*WzW2RR)4zP9oj7QpW)}-tG-U@=bimo<(L?i z$8z@3sL_;3u;iaRq@M24$nVgXaw_uON_#8pip4VMTndRQd6F`zX+N3mK+zt#b1lBX zi(Mg_Ix&`^UE(<=clp27_8^1rJFTM2;2Hs`D6TauhL3k})UTtte1L<7-#9H+_EO&3nc=^CWaVET2zGg_MT&LIr+ zm+??lrut^xoC69YOrF&(u}Ojn+5bVYGBC73K~2a2_a1o@@B3g)D$asP7fa>!Xbn7_kG ze9#p$H|}5_(BvB0LsA`P9kCBBsZOI6!hJPj7dHuz01FprV34gH6TJDm!W5^In=yM0 zSi_{HSWk#Pm0AX~zIT5ek7z591XTcDXoIwm7i{!TLRruVi}wSWJJqf*n=9991+>** ziAUCxj(eErD3T@bu1~7{&~gJzSE+(F4RFv2m+wbXuMr8C_hG{)E&qfZRG_8Qc&LQ4 zhoR9p!oDgZ+ul9-0ZP;w>+T0+D(*zXR2Cx6m+dV3CIj$sn~mi^8BGHELoO}G2oqes5UCx96ahfmX&(P8ghxwOu_OL3 zlj=hCpF7OW!u0?A4A%Wq%z+kgTPJiSMZTC7rpJ*i^O=x&(^|=MK@^ot=7lhQn7(KHdcMggmF$%a(ZwQl8{&rSm^N^8 zdaIl@ZE4kOuv=FINmq%jLx%xa$X5b^%nHe4D5jLNd~{zv@OfFgX;a+A_||^>^y-10 zcR}6FJ`@PmehF>7LiXPc7o>iiyEI>R;zC)4Q9~xi7Q9pqCKG}Y@5IaIce6m-Ia)XS z;WogEk$kFrsX3WCYcWTG5i18`fc!kcZMsLW5}v$#C9Hlywx^y%&wYg7uwnq47dA*x1O zXs=sWj-I?mzAPQUYxDel;Q}DHP&@L^kcdlF{(oG(V{Dd3K7U~v&o|(OCtrsX&|a|j`?RC3i}92IwLrA^~}5=9q}fy_=NO zP@~QHY6SY8fL7s}Ui4UWGnw2C;U6H&;`aEmi z8*f>L`ft_gC=tb~TX1l??rcxt6lwZfKp-}pL*zfc(wFaT&0GDcQnC?_GL-@_c!a&p`$7Hq^G~3Z7reN}pb|ng_8aY#RUxpbC9&8PNiD#A@h%pTCQD zu{S~~QwiZCFF*EnCeN0DB3?~lM^04@}txofwB$kDV66y;W z3L>p>_jNQ_Mk(=PzPU~ia~Y3N{<;?7jOU!Yfe_vU(m(2f>r6=>`S?I5mF$hL`spa| zXNq4w@yp6BfTc&&)P&w{S}^SCG>3T)I0ong-Eujp6TK~v!9z`TDa zdjtC+`0pb0h#Qc3+ys-(IE;+w`r$CqlOF~WOU~k6mWV6UWYjZb9rjap17Ft{;+e=` z5;ozEmK4dUV^Thp$!t~YjSng9@gA5TMreuz&pGAgfIh0MV<;W4eUpOeK~B2kW6l9V z4Q~Ha|7w~NFMGtG1kdCIu6Obhue;VH%>IzYIk=y8l0oPN1b{#;>BNxb~;$wu)UiKM;8 zp|BMKEo%k|aWf@(l~ZvaRHjhz67kdkN`&os@!I}^DR?YR&vvnd#Nz_1VzmPd?I&8i zO_>c4C z0E86oI$2qC4)Kaw`d^54c@o-_)j2KTzGq|LPS$h^>@ zTxK&KY}Wggpq5hj8Y=~!XjSgKy#?eXoW6dX36h7jG%-%QX)c{a;VBt*IRyJl zj4$Pdh|P=*DAtQ{F5+6S-XH;7*j3CMldQNOIf?U!Fjro;8I{GZDb?0y9W=)7(WMnryFx5sBCN9X4RL@Q2Ud`@sKV~jo@s-eVIfA4dh;TM=(zzg+%^441hFyb^Mdr z5jL3NfRLyS=8r_%0{ijR<>~i*Vb=@=+6#rbnkAObFtEmObnr1MAc{3sf@!9e`*(HX zDpenVH+sO)Js(r6j#H+rTVaiDR;coMoVVIbn>eNL5J~|nK!F}NNs3%awY;s53pgJq z#kgf}V@1ENW#yb0>ZxX3OizRvjt<9x8yoKEib#~L%YdBR=togv@H5p2uzoaD z^Bl&!L=VS!9^%`lcKL&K=pbxTG=Ei!%MzyTabsggZ1VgQ-uMQuvi6YMw)3zr^kUqQ z3komoHvJH9ZT8ks-z*}VQO>Qo2!~XwnRRMdP`KXezChjHT$MhI)7r+e$(fX-nz#VfKTY7IVC~S(WBvSOFl9e$ zU2fnyNM0_mv0yi7%w1UhIi3eOWd$p<$*uW7gpi_Yto$ z|Ce=Y{m6{B1-)}cuFrC5bOiB1i%4nW;gnh%krY0Q&mY3>lmHimFQDIftL6E@k9 ze`@JH`SW`}@&|m{fof-XqIzaPC`rQ$B*l&Ltt>ntlj}i9 z)*zk&9Y$&g@e<=TC?_3ot7wo*dGKDy^pp(U!>g+CDNsvUI=C*A`C!f`huxkXPV2rZ zqiCp!BdPr*lwu;+#8ODB`$z$mR1$2|15&C=@r4@<(VykSR)48yZWL!(Y~HKOwc~Wr z>=gCT1lU77%W^{$$({Q&2EeoL#H60a}fq0H(Ken2(+!0(P{xDAe(;Z0Qprm z#u2>~)h_>B-0l_JJPEnPR(*mJE+(;DN-54xU>OzhtmEjavZ<*n=-q2Z#$r z>vo$wMl5X!f{hvW`oV%$;Dlg|Y30C{>{8*8ioVUCJQ$18fu_ov?#gYi%5{Y9ub5X~ zd6cfI{7WEX=K8y_KezyW3`y{sZIL+I@nu@`Ymj9 z9g{3`tHeIgxLe|w=LNA$nHZR#9zTLUpX)MWDo3eaP6rOr{@mpg$^ZOjua>+Y zB3D!G+q#}7einJ=38Tgk2eklOG>h`M#k07J>)^#Sw{-v)0@hlC1?Zw^d^r~^s;5m7 zkF-Tyc^H{kSQ_jJm+D4`NL3r(tsG?zns(&sh|lwRUKM=lGujsPkqAE?dE76uCfW-g zw(l&^kK8{gFY50-T@obEymAX`h{Z84N1mBxVmB7_1!H}RUAO9vT(7phQ6d6are)_@ z64}Sb;1VLR!kOqV3Rgq1tapdTw&Hok6y8U!c!N9CQBzmlk#~(zJRrFtnuj0+_Tnb}(B|4mS2QYkn|% z0CI(g!#FvWaxotoz4sXg1syqI+)36f*rEcopMv2V^+QYG^u)1S?4`xD-~U{Oxt&M z&$RP=t8$=nX=KCjIPf*QOCzsS+@8m|jz?1<2Xuc=aG--{K(eJ-6-S}aXmz(7@N?Yh z2=Gtg@l@QG(<92eh&jfUH=#-Bdj*v6PJ9E1Rj4p>B=Zy zQeS)RZNq<nL2aL4(s0M_GF)ma&%zF3&V&B}$RFHQCTRGd=HiR!=<^<|4nEu*DQ z65OBU7PO2*bU}O+u7Su4j}9hBfB4lp5*#^~^iz75po;5e2-#xSmcBzgqlgM5Xryx0 z%^7rTXq+_nghVc^kYpk*I9Z6z>nPoSTA0G@Sv{y`SI(5<%D$l?fTWs2@JRRM8GNA% zDmLsy;^MvI^3peRe^irIz@7A_@N z)%fa~;{Eu3k`?l1aIPK#lq%14`)<1xidA$FwtN&?i&0QapVLSf%x@fYr5b@uTtiVe@sK&#NzL z8a*}0q!L%(%ZrbDE_eSf78aK9E0n1@pBk#>9p9@~&^YZY9YvYqrK_uTYH1$fiyhBj z_?hKx&Ggpa_T28G)Vz`$&z@C591K*n&Oz8Ky7?^7p+~y^0nFGPwV3&FVH(Xv!C z^aSKOLm!0bh4o{>rd#>R3897o^`Wm>qp$mYZ4haSiHF_wV9~ufkq)aGv83H<@oR#b zG?F*01SGd}4FokPsi7lr>#Mvu8fps>=sJ+L z+(mFU+3AS308aWS>yb-LbdJgIq44J1hOY9zgqhNz9<4TQtq|a`uTM`LY5jRkdn@@& z8Od0rVm6ObU_9eRL@R!mTaKvOKFO^&w-?SJM)X}(o}#~xb)sX)qun%qIZOXq8|!gW z*i4mIXF!pY2mNs^bckLJ=MUlsl}^}0pPq>l zAPI00KC%SGu?#BQC?i0a_zzqj7|O?Bufhq8`b6Y0&bidoVn41i&sWc6oVC#Uc>PYZ z8;(O=o!!q;e zsVxot0Zci@CwSZ#dOoCoE4f1^rZ($$7E8;<8XDn}E#u$s`!*8B#CRO%N{Pn`L@2~~ zQ$M#~Bg@T!eM)_Kw#;F&V}HU7o@1NJm#%5#yUkbJSZqI~0G9eQbg;eY55mchRz#ukhkJ=yI4#p_#t_e zdRG2<468S>wk(^TKLK(BPOR}S3&hfu*+SX{w#BH)8^}K4FNrEO2^OH)SRd}KM9VOyWM%p9lX6eJy$iPa) zHhn*1J4<$RbRsxQwfVwX^f+)njtk)pJ2_&m{rbc2*ct!~fn$oYAvQ$>n*tsvG5cS( zdqYOf$xW5bp}mSW4#|(QlN3Jk0l0eC&F?Dlag`g4QZtoXU#;JKlBUU~LX;1bP2`c4 z%W@VizCr(24?Qq>}!(CZEX(v``v zh*AG+EPsM;U#At8G}?Rlmt&2j0Wp<-9!SJ*KE|!k{|@#OoR!XYm&G-7kYXqz|G57} z(-eaWC(dTQdR{tQ)S4Rk0kAzccV%nN7EkoabMu1ANs5~L18W-BFH&KvK0vlTkNA{^ zAW=E^NpR;6l~+>iLQ1AJ6kh}uLsdVQ&Kk-mA?d{9&DlCy*zvfy0e^)~oIsv@uB@_! zPd6^;AdcReDfmpT8LmMJT$D`a5N|VW1H)~S9wDzudqtM9F z1mdp3%vSY-?!XG_&qx20{nb5=<&@r_1W=YMz{i|u4cgJJlD9A30B3@0HoVE=dP3Im zr=^R603TklsX-5FS5p2uw`MQdc!tC=Rm#;?>i0}G11PR092be5f3L{vf>4W+3Y7*X zMhSxEfn)~xPklr%zfDS;O@Lq@FW@{$fbH4Z_4xdrqN-2-8rz~%cvq2ds9eMfI!Hiw zFM+X}_>t0Z;hTGrHl-Ao%4a)Lf2s~xr8(z2Yz?s<%X#0~W)s{*XBR`J4?hJ60TN^o zIqOpi0QpBO{Hq*Q??eSTQDu++eHJqdVo{8x10(GJ3Pf~k&yWVfiOJI=xXkN$ho^Yw zNy$$!J_EV@MJwP$XcDFvS<2U_o}cjl-WLh&G6EBt>f9!d`*lB@K&I?RSyp9Rr-^n# z>T9qN85t;pA^C&XuPrtz+uM~AI;N}Pe6mfh>W(+ zK!b|!hu>^=5xY%}rWUd>q7L*4NUeT>mt%uwp{{vOn@ri>0%?Adf3cv(%|oKCFV#Xg z-vQNG2frN`s@UFW`cvaPHUnxdb@A2c20z`bw@Y@r$Xlm)(P?I&cbZ9G2NEss5Uy#n zfa5A>2fZ}RWtR?k245r3B8JSsuS;Vwe~;(Eq9``i8atoWp|2KyMh_f^5>#*97bh9a zR?|V{xGGm?|E{yz@cCP7|bPLupn}5m73V_$yR!Ug+Wt@1ZgW_6$u!9mU4i?Eu^z7&F zKdYQEh>@&6bM=b)RxN2zr0^B63OVpzR%aA4zw%EE_{tJx5nAY=x}*5$95-u~7lIWRDKq7NSkO33rIP4`1eb}sx&A<; zqSo%d!~`+oMfcCJTcX5~?6bHZUnY+?`=f}?s1k+I9Ejm^y0!u~xDVcR zdtCAexJUtjgGkB3o}Ul*xp`c$)Lnx$T&w?vhR8Cng9udtiUU0L1O!cj);nh7LJ~PncDL=XrxOM;abafusOb* z8M~PT^~QDZ(N4v{bG*mRN1d;=GME88KD)E>`VK5>tT#F*4otI4RSqM9Hk52pkHPH^ zO9C}OrVm%QCOju`N=HFj??I6&Kf>zjc&Lq$`rO%6)DXdp+PIJ^1ci!{JgMKJiwHYi z&#jG-{ekt(j5nip!|AlgC(OP{?!Zu!Fm9d}HX&um+kj6)q}*$|Z_gXfQ;Um%Mmk|c z{XoH}nct1x*rTv>`NCO!yo}M`gh?+N$#@t*79pCgU^}pD<^tMjM2kuY_38r@NSiVo zPphI1!7)E~7Ud{RT}8}H$)oHce#;N?Ez=|dIY*xg?@3Tr1k82`cp=LUz%3m~ZnjaG z4Z-^P&Q^_(&^)^Ct{3X#q)Rs1RO`YfdUDbfZWBp<9_p_GEE6 z1k5eL=ZLDU45uY#BchH`up*wB22k_@bU=d)Rlw24;{I4I{;54oc>PoTvC%Qezt+Gl2h2HM+8#| z%x@Bm#WNzH4v_-Eq)9~Nga987dhV^mzrJXByt;(7!_ykX zZt4z{YPyzeTPTaYXyqC{@|drNbr;__f)3%VA zvvFD50HEH1h%YqDqS?kzc7KDAOJVdMGzw#iS6(qA7T#_705 z?RkvsxW@1UuutB38t-z@X|(S8jC83JKFi;)As&d+u)c2X=24I!777BzWDHp_=$s14 zk}SuSn@yEbTkOlJ7{s(Tu7BKRQca0uj8yuno+AFE!1I|iPupQfkZFHpfN7Gm>W#@j zXeI$167@1?el%py;2N9i@5U5-SY~P$ezP_Y$muQMdak|5mTN7JXQO3L5F{^&z}-?> zqOy-Hv|&TjZQu*Nv|!3l$=qpzBd>-g?k^S0e*Y3)~f{G=M~EIkZ5SI&f6Qt{OWXbsNJ zOpppiw9epDnZl|1WHcC8Ixb3gEcqWjR|)ep)`!u%&*b#%az!N@Mp}ASYgM;u1QSOG z!e=Xi#lbt5aF9z`p|J4Cc7{vM_(uI`0Xz<%`q^HdtK7PDEz4_4-H8=K#wJRjr(P+`B$hbKrKs({Zem?2bhXTS(l@gh(jhuWh7k1!I%W zvX>bZ%xk`jpT=cKkQE=#Eu_l`QlTP1kB6U753)pc0Uuo36)jzxKLf<~vd;QL*O-hEOsAmS~yV$@X)i-4rTe&(T0pKSn*~c3dTyf8)=@>doj0 zv{~sdtU-3nXp{!0?@R~%4opaS)!(SGf)EXn)RtDC)=Tf1Rq#yO;+V|hH(>_=9H~I; z%m{nGlDI2WTQ#2PaVs}o_5+?-UW8)=Jf|VVh?8xGF^c<*Bhg>K)6i~d@ZmIK1&34> z#ZRG_#D4q}&1cgm!J%!P;bbz6gt20p(g!!DO6Ms?wXS z-}L^vc(p$CcQ>!>sX9WJ7`kexF~FMu{_5-K|A@0u+5f~Dy#^R(8kXGunQ&!e`ri|- z%l}`dKq-j8s%Ryq#9X1%=!ND7Mv1fA$mM9}O(&X)QP{OE7Wnnz%vqc}voce1CbbmL zlI`#|eTO`xga_#n`2B^V>rlHx@qc55EImOnL9OJn{*!A8VUq?J)EP1H+LE0*;Snsr zyUev})rD}sgEaq`cZ#EP^76&wNo&=sZ9RG>l_gTC7io2SO{HqtfHA{nz13jl5`JbE z5eLl@fmh-^; zTHCH`@!PgfHSbV`HxnK7mpoUZ*U9Ao?@O@G2pa5)32or$KjN({moG61fIy@Qv4BL@ z$WUxP*coE9OVWw&wk)+~7?so{gXt&Qh?>XflQRg`>fkvbND98az1jQ}&k!HzTt3ZL zRydU6E$YrfJ*}}yZ(*ZV+8hh5p^C?gp81Zh8db~tK{({oLrS#i{T(3MENuY*EMi{? z)%ul8%obxLq!luDqu2htHxw49RqWd2RBr(Y=M)O+Ob)NQUNb3~+yN!%?!({v1_$b` zl$6S2Aun}*sJa=V6C2!GdHfrm>@V{1x3vWz0;9dO_RzpE@2h%PrV72qj<1eZ*yZFl za*8`o4{y$IZBNd9&NqaOtUF}D^)IZjZnprVT7}0tYqkL=dSvP1+!AuVhBTl21n)22 zOn>emG;PVrCiVI{TnJIgV#-X{&@R!&sc4zORgwC&YeR1iYUHr70%jU=?^x7uPOy2I z;NTlDt4n?c=rj_mX~5$Tv9M=}1@!&3uQ2IWjorW^7g4?gGkkOdS<)xqKL=XjBGDWDi-W`B9$?8V*HM~^PeOJf3|=TzF8&gxSi*%L3ezl8Mw8FiA1{NundW>ZB7JrdUW`RkF=Aax@=~^Q z8+Vwyk@BlajK~7xSCceUku=nhi2F*}dUHq5(2Rv)3e;EKVdH|`8;nBCHwjIx|B-JX z%BvURWQQ7s2((2y98CSg_hePrb#KDl1Rl2?0*Jt3{W5d3Ze9QcU)`l6^x993eH;Qs zCwnwjyPZa>mMlr*ja$~IFGo)vngXG z;!RF~f%;5^U^FHSDiyky>6-}gRUWLh>-D=GN)6hivc0(axWE~NOuUtBL@`g&^)*F2 z9|R4dY#sl#n&JRh_FF`dfswChj+3RP&)b?h2gkkK^!j7-2>ooyr-%(19lq$_-5pdav*Ry4o zdV0}g8X2)u^5vseGkWBp3BPO$Cml5ji|7?Z_!SiR6-1ndhUHSTYF1D4N2Z(<=kTu! z!Fecm%jW29;+dxvkK=rf1}9(b8S`&|ed3NsL}6kO%fCn)s4h)**bHo{V@M;SeST*1 zel23uu5bdZ_DD0*x8Re;si1!C=z_wa6Rde`O}Ne5gW-v@Dkg)`;WF*gN@JJBmd}!o zo3373!kkpl`1luB;Qg82wiMv#d>}FFr8d%nZRJe0+Hs(9T;vSgOVzj4VxS5)?b_uQ4!cnz;s;Er65xe<#j4n*UjMcDVnOI4_N{ z6cAt3iwsbTeDL>S{?qdGQ52vGeej>#I69OUx0&(}9ea)#c z5fI=KpxyO@!#nqBcTL5WFpq`n=5I)T?gE%b&DIH z{b;XbsuQl5X{>C9LIsf~)jmBApB^*Z@`n}K0&7T1h_yEI&tS&ntI&^Ip;A`1#W5X zifGp0&FJu!^EHbZs%_`>X9b8aVqEj?YxmY(?TcryZSU#;OH})ibFYIIX);dSkN;i6 zX;_I9%3j&)D}6b!Hz@+m`&KWnL`kvktn*X=Y^fVSJ8|R zTL7pW>mR(oG5mw4X)ZT%ug4DpeQ9}f_XAn)zWZ2RW`~5`1gDraXaIvDsXfPGSGmAZ zy!d`npoW>)!}4iZpZ@%A-e*3*Rta7SX>_95U^gO75>i%IJ85h=M<{t%0fvb=7?_2%#mR0O=q23E-D@8%~GxxG3Y7gk4rC7 zskus~?R4%<9he!PSR9k8KvRvugF^W?B!54#q3s^)0|bU*8$j5%5ZuvFPqo@}DcKJC zu#ejOOVK8Q23F|JZpU6!x#{@j_~J!uvmg!dn@pW(24+a~F-$G8-K+Mwjeh{I;TWby zHVvv|j_bv?8%b<1W1>;E6qW_j*)k!Ixxqc`&_B~dkPpORZhu$opLE9}|WyBg9v?O{2 z2-+02L;t#)ztTy$GJ31zf_>CUq*Yb8GBYULsp5DNi2~vzdUmz=1Ze5@hsQ-2{?;>! z&k)dq?1Dd4ITP6W5Q9=YKP+*ldMOcB77`NN)J7!*VwR~yh+>7rZV*XON?FS)PiE{F z&~QIDv$~p zMPI`k(uTfoY2src^M}Aznee@s8DwUPwFlS~14XoB!S;I*sJAF36geI%PfPp~d-wT+ zKjFV;8;V;i4_Z^Y%$l68MCPKJ3dxi9L%T5_WdLRuh1L3938r~;so2Fr0MJ2GcqhYmOKiAMn8OVio*u{O zb!=9)a~&53PZ*$z2gIzTdRPIIsNF=vS*C&R634X{Jf^mKg_8y^tRHdz?FEC=zv+h= z3BgAl(#**+zpsZbAiZYxPvO;{X zhY?g9M%fGwcH`*fJX8)XY)xmVg50#tbMuc1wlwS7Nx(HyvSA*47lYuavRH~*${eT9 zdJl}wBBe79^ak5-_~RdkZ0ZrKAGK}nUr?-N=z!0G@Ih1Oj`0i(MsVv8fhBC_pnM;HzKE&?I0FD#8tOK_B6CC77hDy5) zamH3t<#=&_jN8AHmkN#3h0oJjNc~K>w2ieJighDtvd3TCrovkyQCJhF2HgG+-$lV- zh?x##(t<`IoQ|*)nf$rE#4r{x34nV*4fgL-{Z%4)ayd+{X`T$uA@aOS_r`BjX8LCYD(>a!oINla99TE*>bL0TFFNE{HWzHd|8%$$AFzh}H0Ng^Qj{QGG zt=IdHsDhjSz2+`K;s4J@0<6?4P?)qAz5me4#liCbYm=R>J7h=by){5KM0AU6xI|n} zd|f+lwhROj`wSr9rc*beiBKAy*_iQp{P|2ICfju4o_=XtOCrrIqf*V% zx|_b4EMw@A_mIL%8NWHNmsz48FI2wD?fD>+O!OoyRj%ZHQ;sVG_@$d^-4$`A_q(R_ zmq7KbZu6(~tF?X_d;m_hW==MOF{IUh7P)Q5tH@nEhG>u_?zPy0|Ze=z%>%n2hk!4}7n9v}HZLm$6V#Fmj z$L^@wLrZ<+ruh^&QfBGCf|rn<_N%TEg<9RAnHiOrj950%o!w9yr7Xz0`sn?wkg2kR z8~S}0*T)<>DS>WX`t)`t7aZ#Mo)r(S!sN)KE36$=P6=Ruj!f~~_Jpts0Ro-JI=^%p z#__<2a(;Pg-mhZFHG7EEs4z{Y0-~h>B*{w$vi6JY%0*!iH4eB zIbInaxvVTMe}&-Ijzd~}yOA0o)S`sJ6mE_-@Sgqwa$5fAbf5*DA-Id;RXof`Cz8ji z7)Y>mR0}p}O&M8?^Tk+v^IXi}_;T}9Ck}Wr+fDXJPEcwIO&~X#IbK&*oOjMIwvSCi(yXMxb?>O+yhA5hy z$2h5SF0`MF*h)qnKNh8%kV-#}2rhdVJ=nSj5PSeTH`hfP;$!SDzElsuCbAmuFN;Ow zwxnCOZI-*X_6tE2s5EslcpJ*=m>VtO*!1-;S)X+EM9>VTvKT)B721Q55o5c3M6tKZ7KRrhC7gV0P#gHT3; z%{9Bqq0(XHGnxbpOnrci_yDCyC67Y_W!eH~as?DJ6Xcf@q22;5RoVbcU$bNbJ8Xr< z{oplb5d&;L5#M~f4QcRto<#TrjN{@ASKSk}vWxx|$Tfc&4Znb`uFo>(Lo_=8&d6kB zUt;G%jDJX8jZY^<7rQ8F!wd;Vz#X#r~}OF$s^@H7zyMoAlgu(iVN&U zBG}g=RmR@8!)Bx8ijk$q@I5sE@>Hgv>G8SWoa|5B;kF~OL$Mb|r#gqrG^@Sv0*PI- zgyI26T*F!D!4YXH{6vC+S^iN#rj4`sYZu4?(U}pMuUuIq(>nwdEFkd~5kN#0!n+Pd z;K}|EU^7=P2qP&Jw8L72r?!6C+Mx~pQwll>GH3e?HML*nfJ7GP9;AIh!y6r8nbr-l zfxS`3OpY%*w`B%Tzf@-V?+*VB>TBb#@8$5j!<@xrWO@x~fV?JTQ_Uv-mti=^5B?Mx zjI&82FuwPnr_T}iyPv2f&^oOL3w5;Qk|mCqKgVx?vRUGsirY>ke)n-=6RL@m0X#f2n@(*Pk4|?4b5rK(}^pUrLoHZhp3W znc`#HxXev~0QX)1b;-cqKKaPn45Aq($#s)c>xXwQ?_)m&W2bjhx0XxamUHnw^hxz1 zzkPweP~1yzTfI`rJG5&Yi)_t?wd<5Zr2*F{L5xez|J@4XdB)-Ad73@R;3**|e(d#A z!gox)?RI#Vz*`xKV15Iva=m`CZ=Y~*+dwGs$N6A-hwu9kvCgY~_I^YL<2=fUV|Ez4qO`d}#mL*H|3~_GiUg!dl^)MO|>|imF|Q z-}i@_49jrGV(rkDzs|(HG=vv!YlIX3=GqW%>O5DYi%6pqjnP3gBHKS4OPc!JHd{9P zts)RAI|w&!ka@@*cM*Nfd2zCFtEI95h$U3^HH?ry?F`=}COaG!fT0Na0pzmVx0 zya=DhAaq9D14t}V$t!HR} z`NPgq<@8>NpgW%m7m6%ipOEWJKJHM8z1@JiM32#ycjbbPvG-4wA<#9^3 z+I&J!+j5W8E7EYy8?U^K0Z|nq$sfO}{oqIi@RjX3V7un$9`D%Om?Fpw}ZdDqXTuGZoh2~5hW4{C`WpZ$?Id3f^;`N zw6B2ZY}(ksl$D7I*u-19r*4*>o+Ih&F zGaQSxuQg$4tC-J|6$uC;_wnMjwGN{g9-6Dn2=d1;It5y2?$u#Y+mOOX###FaSM zRTn_4`MW!6$Eju*AP1Y00&zp&4)a(VW{wqbPnt*_^WM^j1&jC}z=JX(;Lq}R<|K+M zbj8+)zMR9)`zB_dN6q(yIw}}fG-|CRBTb;RBLTi&JL7)6pC5%CFbehQZE7(|A1EIIpSxdAH!o=hfO-L0RUvLJ z3R5)g^t5)p_M86mE^iE^H~Tcm-Rm3IDXN_Zw^ zm!;0t&PWWfM|Sz4Pm!_7SX6`ogIZ!<3(oRr8*b`_$D1jUi$VuyOKscn zy-)){(@HK?*fqmP*Pl=83RG9h<+m!E$~8d~!-)y|^Unzx&xc|_ec`S7NTVd-HOSRv zP9UU)vXQb-HIFkj3Zw^!{^oCQlNtQQPW z4M_?gbSo#<>1F0P-+`4cJKhSH6)XPPNkSSPPI)&wZ+{>q0>9G=oV#~FD$h$HiJm-Q zGjRKwk|bwvLNZ|A6=9-sXoF!Ev?DVP(s*HBQyd$9hR!KnIo)JD)p?K(mna4r|LzqS zC6%BK7g8P^`v2kT9h(CUl&;;_wr$(S#I`fRB$YN+sVXu_pV*%!+HKf zf9Pv<)mpto;^%eIDUCZu?H4P<=D1r}Otg$hOMCx~=DEgbm`(j|QME!lGb6CnBrZ$P z@=TVL9CjGB8$*4Uew-S~youAe%L1q#e*~b1(lwoO`WgQq$Cgz5D{q?5Y$9JB->;XW zs6Bw>IiB=E^CUEu?A^DXqo};K6opW-@p;?XPR&ipJRrF_si0 zmMhoqr=+M3qOWCx%e{T zcDnLOqdUU!02X^_nNx5+KQJH<;>G#{O$q!>KY5R?jD9tehUv~yzcg#vNjlsvpdbhX zCYp0@?5RfMssV9R?Vg4mHDWIPAMSZNFNh3tb#z0e3-8n>IPJWD_D~kZxM1^Lki#=u ze{uZ3I_Pq#QEPbna>2xu#*r}@{7{P<8CKe3oGkJQ7dG75Wvu)9`SI-gNM>xSafHBCdK1w)@k^Jyg(n@i}2=JB} zg;$;FOv|zUb%KoiAf!W+CG2Az@p{kIh zUcWYYYPq5%2E*s)gK=Qx{ZJity3EfS{-rGQ@SKH@Q^3C4VG~PHI~B|m#Tv*nh9LHb z$-F-XHFU@!Ct)*LT^4Lebeh`I#%#h(CxLoqNFl+E=ZbX}@nGY+x#%~ZDiTvvRF2`* z>1_QT$|AS95#V$3^;vHuccyoLlEsZv-uk3)yaF{M<5QZHl?!WMnNk$xN^sZo9psvo ztMSxjeI!2;07r?Ncml#-P*+0jhoRu@i>!l}ls}5i){AndG5QXN|E&0F?hwqW zd$tf(06Qxu*Z<$ph-Z+vz;plUJG42GUGjUsiE^zzlG+$ILJx~3P1hE_*;X)|&B4aR z!Y0%o0JhFk7)FRfN=8*HioU*-nG$$pn68;FXC@*oxP=WOBRRq+9`}EF#baTYMaj81 zJUo=pC=4CRS{j(mHI(ldR0D-cb6yRc*;dO?!Wxf%mh|BWv&%n^h`GPpq&4)%Ba`V4 z`U_gCJA7NkW(DwEU6rsjF7jYicWQs4NVBi@QH)_6SK0aw5csBC=(IC zYA=@*Q0?6z1fSv5DduBxDj8=cRx=mqFJmL4cnIywwvul#Sx=5I z$BL-M3nQCV10Gyz$&?E4+cnO!{mdoBN{0!_kx-hTjr3;8{; zg#j^;u%Knd`OpLKGd7e=7!M~$7cDbHvvK-^sw_B}`Qwxs`S-spEoPI{tHaO;;uQ8^ zipuU8YH9g9*g0UV;T{c=cNLWeVA!=T*-~QZTtgZ|ft6-3O^~=q@eMK@vONB5^5sau(c zH>M;AY!8=<(+ZY=9Aaskf~Dn{HZ@kr#0n#CY7c*ijZsCrC9hXG)Kr9rWdq= z89>sZq5H|+l&Of4jqM>YUq*g^=o!xh+eWkyOk!#XG9jW>Y4x=*G9kuCjcn}BxG0l} z3qoT7RZCG=q(FNX5Km+^fGiDjd9$lIV(CSNxQvC5v@mZmP%%e;;4)8EeqG*Phn0&J zg}n=&9eO6CAD}^;TFrxL$J$%)3?$2H&lxfu^MqePNR znoAVkQjL+yZx-%JsvKV!aR{KvziwB#w@`WvIy8>@(JF1T6ABdPC^@~;TC}x zL?!}pL{8zZP?B~v9F9EecI`8E`E-vd)DepuHADN8YcKeXYKGyiP5I|}!+pW>8>lB} zI*OBRBgiPd8pX{|H}LEqq}}!&jLbRtJ;+7=v&m_1Es2Xxz6EoSyX z$xUg7IT3(1#0j%R{|f7w<{G0vqGNjWC@!U0(5scxuxFPH9;5J;Z!m#OrIugsJK1FK zrHyjpIZ%miLzvvYS>K+lyB`XJUn}%#pqOR}D_i6Q&yznRrPJ9_&)LyU!94-0|3Q-c z^h{F_r}R@$LcI)=6C~ok1b(k)%_vUz47V3XqG+NC2%apU;~%g58em;XPCqN0gebM* zQ5tB*x~?bU+3XT>*>bONMq5p=G~$L5>{^`5OexlvJXOm3G0f1s0Q+0lq~gIALOx0+ z!ZAQKaZo=SbLO`!ruTAG#DIN^O-JCGK%dM?ta|=LZ%wn_@t3r)89?3kRe1i4kq>n&2h9(6D9})p z?{P{u84&BMQn;c&#icU83t1rHOL^7?5uh}rGp8JqCn)1P>t?0g)D<`9nsry=lvbL@ z;$UlMesu}Q!r%d~2nKa`CJ3?$E0{O6#3Gn>N1zbpB<*#;bj_2lj;AzG?rsSfH8 zNz6PmZ+GQbXy{;-C>m?5ct|EK=w`eZl|j9RT&db3!6xguOkFMb!<1Wtj&rw2WKqfu zqIN;UG?^s?BP6^@J=hN(d%gJ0KHXNm&GfT@b3iEHL5cghtZ;E1Vw`SX_3xBqJP32o zC?rBeGa-mE$^wdz46_SA0)3FjDh)~Wd;TbSLGimft94MYc!-DjY_T(Vf(~DCfVLr1 z&2fdKWKmNG;e;?qT;B}UFs}{o&*(b~G zWNbsC<}NTt`sFEb{b$0>R`h_3w z^kl2P)?HyPa1kY26x_mgKD~#q5P8M$)>eeXvvI(#v?-; z7(>wb4aCp4?kevX^(VlqdZ*U=l)UXi2{k8H`0KtdFloH}W;v(x-dt&ZEj${y;)Yh;A<}~TYmh_ zG5Fb@DT+?oE4D6Yj3tMkXAPqZH6N_N&up_Rq3=(pJ5hm$o6j3x3ZG{;ZBNJOV5z4) zskmrFks(G3{#9#zM&nO5dEDo?{hd7OYT(KkDYc)vn{eqr<9g3v$d$#zQg*4KQuo-6 z+Bj;Amra@c77P^KVE?!gy<_EDczm_GSpGfoi`T7aomrW6+*r9nH|E}=?{x%kb#)P~ znmYh|wv^e$>->2~QwR+1(zR81n`E}Q$mkC|5007}{KdmEgRoZ)W=6+LU;b-CH85)Z z@ux4MAxB~Br{(3zXE_DaIEe*h(v<^e_nP7kN&1P5r~=}|x7r=I2GvzH2PXH6 zryqFGs3#_dn;!??@W1w3;LL5!oKlO&A&^oH-66>S_jPl~9pVqb#=-S}nrd{6VmDe* zft!-s4J&_4B{IqQbG<~v0QxukQ$~Bp1dt`&M_ueSHVWR%&nNByQpxdqz76WgLwlaA zo}PSe+==?Bh2byn%}%eESMZ%f+=~0D0o%k21tx6`Yof1LT92L@r9|9oRZ{nYZ{Jh^ zD_DN}IaJ)o+Fq67+cq|&+t+HnOi*a6C@Ymu>0W=+$Kz#%idmbI%SwgSM(3*?{9cS= zVS9GuJMQuXnJkQiCns0uzLEO6hBTzdRl((Gr;KTDaqxF$v1Bgo3LBeG=<_ z3qM74ZWTGug-f_*OrW#yQl+M(=8XS>GwFU!)$(^ISR;v0pN6`x2(vR3@`Mrihc!f? za|z)wMrRJYlP@m`+rGNg`$Z(BF@J5@T%4OsCfCmLasBpC=g^V!{Lid=Z|ZVwH~&gP zUFp~oN}C`x6Pi6cl)Oz;hI`nkJ~t}a`YNy=yUwGzE4hsI^kRJ-6JP|Nt}t`E=F7mF zk{~YS(eK~z!yBpdxg>DmK}rIWv2>CJ+3hl}e7phmIIV2GOz z1J%Sx_Hus=(Ae3k6%zVa@KqpWFpFf;-l9-_m7H^gWMNZ=udqc`3E~Dkny2@KcIFD) z(C`So$n;;rW}YOouD(hBMIf;AW53F_)y@-Tx?T{VgrHNn6hs3Nq)e?J2WgYCl1R3H zOnN6pBc;0L+3HA%!=e?c^1P}&3h16(>(K)=8oN|hRpqIXB4y|KR!|SphtOVG5dkEucfHW<*c#`Y`9^yVMMkmQjJNS z=vb)`JXJL_RtU0XXO5$;aF+%Q3)7zUS=Xp@Pge;W{?QM6T^E@par*s?06md~(? z!~}cbcG4U;VGtjhrDMi0!?*yQS*`!%Q)ol6lLGQ_>bJf-SRJ2ZX2(zMPeR;pzB->X zy+!cV(5@txKZJ%$GE}|YY|swJmpW6tOc^6dN6mbKi~c)CVN^IJoXG(TJt`@3NL_5u zo6Jx{-4t-7@+n8=`3Wm(R(fm{r{oZf+?%vH5Od;dxtv@B17V~|CF@j%vr@N9d=eFb z6H+fF68c6q*5?ko?*NuCzg|<(D&8iZW2j98&A5&fKn1`C4{U222)GCG^YI_%g^86ceHmsD44qxo^USmdP=2ztt4ZtNl;@MdbHWv6?Nl8a>!Q*|^r(1P@ zx~lwI0nzF^++;y+Su_2|>=UVdJoYfV9>!#FJQ8bOqOEEZMpJK=S8t-Sl__Nh*yw0!wwpadm6q~eQdXjqfr=6LVl<)cm=p}TgIr(|oLiTKh z)XtW>^!_02e6URtF<|<$>K1pW#^fUOPamU?79ue=FZ)78bs{~L27;nBTGQA(D1TV# zbbrF=nZ{T&!e-}tzJ5j3Ze1lloSJoeJWsR zZD}bkhE5EEl6OxYwS2tW&U1qg@x7Zfp*Uw$^O0JdeHQRS1@T02LEEDV{8!E%U z(wX8ktf6URkw_fGh4CrX9CKZn!XCi)hK`U_fX{TbUu&MIm0zbbaDgJ4d1Np*!OpYK zF|b4QQB{r}Jc%3!A8ggtdHl;f7i&QIlDHhJcY2od^}(0Z<8znzi8qx*Ik9gM^N4A! zjukZlZ=LjII-~^BkLbQXMMMATp17d4B3w+wj!~&^9HJ&zh2H(c*~ej+m>ZZ8VOVK8 z$k58~=U>1^1ItS`6lnIo=cG5823_y4=??t>wX-OC=00-n^_ikW=6Fc{_DWnr%8SOW zK2s7iQe(WC%-5Lnxa`WE-?24#<47}j|Fk*&{w&Tq@OU;=q@RfaiS=RD1}&x&P&Tl_ zPD8WXn!e52uZ8kJwZvK zx+JGA5R6NDsEtR>?kFL)rgucvf5=;nl4gP#jUG=;RG>fBshM6};sE0nG80OFW+m;>>IjY5)|JesBg8w7yn4`dO62ETHQ&)oj8`0wa zKPLPxZJqx{w0v)BZuQJaOeD^)^O*^id?MTdL?QyNltq5xR>jn;On{6Lg9^~cfumcL` z?NQqvSDzg>z*mcZshm$u8fu!k-Y{~Ncii#Q{NaHvN++#ylf*n6t8VQ;2$d(a8B`}c zv8-BL@sxuf?`TgsC*m!o)VGFDa-p&espvei_y?b3JNWN|(#lrUpII{cto7H=dmD^1F1<7eJ%gnZEX_{Jfr)jKisWL>Ravt@terjN-x(0o z(F?SaBf@2qmI&|YSg6krBh76#<{D!*WtLZ0rR%Aw&5rq+*CckBubEE14ZjXz;wbC3 z@9^Er4LU?&-Uu4$4Z)HfOIAs_yX;fPr|u2$uFw~WVxPSvsa+Lxes5g=bJ^7`GDDOY zS+*tP0Su^ZldrDoz;Xi{-jQ_b7Py^=6Hop4frIsm=dU0RQtga>+s$L&Jahc8EXaHv zU;lEcGfYwe;{ar_FYkc3!FZP#x^VjWkFemsvH+tTc|+8R%r4?MSNXY|A7YbO@5EE1 zVvs3^wmn>|_c1b_cW1e%bG1L~Ne0V~g~{p_;OiN}%l*eE5k-_WvK4W{c85R?0g7cM z2nzL^06!wHSBk`vD99Um&N$6W1J!GV3-fNVC9sk|B1LAm+A3Pvc@cq&R-3cbreAN$ zI`9J>>es@Pc9M?@ej-@k{vwym2>+mtO02`2_tIQ^!`ce!CTxJjdt?5;#e1vK&PCN} zfHHRaA3B5dmB<=GF_Z=B{v9<;|)vw=vHy{G9_{$sMot?=8@3PbV`KB0FB~)2SDWMWZ4X@r8P`t9v8= zzE+is^2%mNCvt6$ZxLp`4A>)-E4ag@V1 z#H=Ql6p1E$pIjJ1EiB(lD}KP^)Xa`2>F;}OT4}5-$YcM&nMyc8nCDzkH@TS<9i*uY zY=~gnrcHrhn{qdFQ6IkuSxvrVS4XG269C)nE1df>-xzxUj1{nbVYUJ%Ckiz20CiuE z^bm;UGS#JeRf!EmkaPLt6BM5IWzdOs3yQH4&j?slH`kGYd_rM3cpv)6dpOUs=l#`Q znOU?!;wSEQ@iDDQH8{uC#I|h5>g1je%s=DpH5bN4Cl9NMB$GxbpHDf+^an zn+`byI}DRtP(;&`n``(pl|Hj?W+}4G%uS*-OV?@~UTa!w+o*&kKHFb*v&Qo;AODYM zhUHE#j2&{lteZ-A_fLXTc27@J7DTng$~-~5pvhUsnhS%>KPBOHqO9BfG<_Hn>4Z3M z9qQ&xn#yM-g+<~XmmuB~fYsT*YAw7F*IJOD=I|zmaLg^sZ(wbb@@HLC^*-^26jW&I z8JvXsS}cevvDvIpd4#kAT)3zf7Bhl*E~Zd_KZOoZIXg3q5?vekd0OCX{TIc*Pk0R^ zMf@+`69-7S_G}fR^Db&N@jY$!GA1u`2D=H6u827(T_ayS>m(^u0J*K7FZOPub@2vC z2jbxA`j0|!sDZSUVLXM3QcA8Isvf~(LtZFK1snEOqel`lc;jGtX)@}E%22i>7keFA z&j$Ii%&U>ZgN>}Q&bsvshvXtF{H0_jaKB!v`-EwsX31g3r#C-!2HXUDWWdAd*BHaK z=|V24a&x!(SRh7p#yiU5gqv{^8jgY_7^-T*-ucLmk%h#aZqH7_&+{K3?3Wmm=a#kN0f8R09lUR z7rMvf@Y&UKUUW~wwV3iMJSvg~N=YDug4qx9pyX8f+WrOzb$TDOC??|>W6qiAtw2Z) zlfJOps|M7Rpcgy;BgDU71>8{!JxU0o!NijjIm9Bc7KZjuXt;6{f446AE8u*P#k{Sg$INaUK?ey znf<|o*Q?pxbHw6jZ@qo<>SVt&7F^2M+WxcK_Je`1r3U+R@UG$8#%3zpeGahl?qgWx zpzLlJDXVfZ)NUF1oBx?Nc3~EN!1C+o-SJtr{Sy*7)-b!#F9y!{8u)Bxxh5(ZsYsfi zDqQeUv$?N^R(yZAXIqRcJUvUs(K6@th$7J%XRYmn6<5lkS4`z+Lw zexqgcW3a5NhoOtlB*nCqGNr>;CAPVncD0Fb9EREagsW2Y0-PEg2(kddhSc0Rhmqe) zSS~IV2miXM-WaPLn{CvHkrP9^IM9Tlr{!7Z-p8L@c}%AV(`!KJLYsv!D(uou-5=;t zAQu8=+2J{w+f=Yd?w4c<<<0g^=htlu-F{n2Qz-iS^C85Xz#f!g)*gy%bUin!I*)hh zsw}?##A9R9w~3C$;h_W$7Tup2R``DlH8?-)X$8E+*FY-Rs^<~uMK;A zSk<%GX)EKRQ+UE=(&B$yA`XfMaEpkTQj6u)iHc-K%22>pVXFYD9~LM13)=qYekL1>lrq>ERE{hcefp?BoX&r+ zORrg`griT*Z>zD5Lf+T4?H(W>f%TsyzP+{C7B4)0hU4KEX^4l^oc$Iug?7cs=iFY% z=*(Fjt_;Zt4Oay4zZb3=QzTE@6`i?8%KIJ9hbiV5*$HpaY|ipmAH^40V$j`Uz@;%< zsaG7jmB?UR>oShxyyzbi(c~u!VqASb!ywS>(mIezG0h^+OrmM>8I(I{ARSkUo+ECT zI2z09B4WVzrBKaH%fZL)gj~;6miUpp#WMX&k|^`GmY)EAvD|Ruvdc6T#AyG-fk<`p z(O7XbcFQbnzfyGO{1U}+6%vz%MH7p*TcQ}p2F$u5`&CuLu@ukeF8*2q63O+yWRgF= zLawot3qnb$=frE29&7D6<}BiT-wWA_gHhz~i6w8?1|}jAm~F>zu^LVEj*d8fQ|yNv zV~Qe!IQWlEER$u|f6crNxkK6+T!G1Suej z3?CM6;ty%ibu7GTNPinO6dxJ-olwZuqG%x+I@k)H=xa+;GltF))mW! z_y#E5cFw2htHO*mYef5u$vn?q7QS&SAu3YZ2G_-&xc2ERe-2eu5X4gB*8c#gQ3qu!86GKuRFL;58MFtfw-lS{@OKdBRnA2Q z(4&CnddoUm(&95I^eDUq2kYSXt9z(bQBGG_p;mj_q-9g;%{b*Us!=k#s&NyeJl$RwwEl>%oW7`W8JkNP27_4hO!TWc|<44tIWx=Ypj;Qsmd!>fc~Rkim)2HJ2fH#N1IH_wk< zG*u^X;TztG7&Y`=xq|#NG0;$Dj=LmQh>1T%QYCOrd~Pwh425)bYJsU)(f>lP!^Vfy z8hKj%swFVR>#$0>rB#{I)}PjNiNdyr zo%?qaOBQG1wLZ=K%$Lrx%$A}~LTmCd0)%kLs@D(BjBjlP8I!U%&L(G!<=MqQlK~WS*XQRfOD4r3JQ2 zQwqAf0dkU1@o2pZtGmran?%bE*G99o%whq&b(ZIn`m;XKm5cx`qXk>hgpMKa09yclGI9%{$xU*{5@rYyT?IzKXfu}r7I7ouPke)8| zw%BwwZ!;I{iZMoO4QGjRM3Ig=Y$hB^csla;q%M{ZMdT@Ui;1iSa@t2nm@3j7z6=w{ z*Yd)x2mBj#D3nU`)3%)@W*oiVygh6n+_yGT#1+{n#a{$nK=B{QqW|UE#NWFmY^U2M zY)4$@czh}ZHlK3o3pIEtX3?gy4pLpFSF(dMA8tC#x;#__XMOG-sCO;QubLM* zm<;(tIyzJ+m-ooMb{BDF-IIU?BRhaA2OTp&r&oxfQ!C)ym>_v_Z0y;h%hjl5AX2Nk(8qzq%l zy-40&KdPhTw%!fg@XNLlcry~b+;|X4bcB^+8Sf&{i^k5^Vljx?3a2;s;2@zG=eS=M z(H6`JX`>r)G_@SkvIf*i- z-Bk7{bcyPnrn2U3(#J z&(5u6i(47E5*}xr1c`df$SR>mp$j&D!zMEgNvNl0IzXL$liFg(6+0FSBDCqZVWj_( z_efBRSwNOkEHf*6b5)d!TZ%e?KMC=mC^>#x=>Jz2moSzTB@*Mgp*vxF&baKsIWn$3 zmKV|+v@Z!6y-D^3a7Zh+>?3arg+JnIYS^4~B447;Uabf-^`~a0p^$OxWi^!4W>c%n z&%3F6n?*yaH&A4|2rb}W-*Og1=W+&4zD_c*K?iNmw^-E_<{5i9utQ?Xbw+z0lAi{L zAPDA&E~I0Vc{+(BMdw&2$e`eo$lbPK881{9hyDy4J|GAH3WN!VpLGiKwGvMwrwyP* z!PL$EX#2282T5zE2!g2!{Sau8aerC<;h)G=eGCUn!gF!Cr4(RtryD})=^}P@WrcLL z*1s5@!FL}jpRLFlvAxj?U#=pIt!8H_t0XR0FK?Q}P1WA9Jul5>5sdtI#=`w#-Y%SM zJ+1rv_loBmu%ZZxh=+X8RoFe0N`8xtj}OB6-BB>OS_Q-TPVJ}HEE#Biu4zByM&GL2 zF76`U^|4w-l5Z!<;LnfZOfPnE_o3}bt*hmjY9J@K^d{Xj?4Oy$6k@iDD~F84(yFRB zS8*OMO-Kw8qryjD!dB!+$4u0zDx_|>H(1%}2)PxH)2(5cf5e*|8mUS@pek4G)W{w{?e0%&{p6Sk(bY%iuf-N0_}YN=sRHl#fZm&3v(;3$sjoJQ@G zx-zUIGS;%*#?H?@|7i_rpiz&VJ4jB=RIEJj^r%#DgjYDb^cWQ#(JeWcYd!;CIG^sd zCw(p#3dQp3pRgMYZ-0!qV>dsGu0xyOhXXr)RYkxwZ(Jz@Iu&e=fRwgsIBg=0Lgc@b z_a5(WDuW`)%F|Lr`?zYZ;s`muDlopb`$rel*%8p$l`#pU5{cZfkPmz_-@l344}{mq zF31p$gf=U5u^-VKS&dGg%@xFcQo9;lgu0zW=*S@{8*(?brUiSuFN17J+C-VZlV`1B zr_B2j*hb-Nl(@m_0lSOP={HdyHSeMr!@YlrmOD+<+g9n=#^vwTBMX}NMfI&Tn)u2F z8FQka#+h5`)yr^a?p?G^5!WIAhC$N5W({Nbum2)MjNTb*NmhY9MSCm0#LZ?0rJ*;3OT}YRs1AMg=Ty8 zku9ecA=jtHo_)eDCjlT5H~G+^%xJNcq1(;XtrEXwS5&HJ9qQ`JB=*ko)eOcR7xD>~ z+PX0!GAmkGaqYus0q}4UA~^pO(XvTI$rZo^DKL+2QTUt5S$*8;r2DTV4{e%+{Ug{k zK6!d_BzTEqkP)hqytDd&d|`G@qnwD-{)=e^knlN4-|VGG*MhwY>}by^$=)ikM&g-I zT-rw)hiO618Kj}iGJhZ3ZmT%+k>-(~O$s)?Jf$4ABDI>uVdH>WHelNh5LeY;-)!b&Mv`vgF-j9VZXd<=r22>|F2k zcy&L&4n@T3 zRrxJ`jR+rL(~mAxR>=bw4<#?@Dx^FLWIP$}=wY87YPvsgyV<4AZ&>zP%iy+4mtwNO zaXPU;hB6r`!Az$MpZDyHAm7@5AFPQW`Rc!|JS_12_>-y~IrwQ)$J{bh-NV?+pAw}i ziIeI;ByWcr(;%REbOYO$RCk{b$r;!fdOdG_$`cd>+(TW&1rUau0VO}FbZ@lElZy}tu&W^{!GmUe#NQNr+0SoZ_q7%sz)|8mF^G zp(GI+!W-PLcD%1Qr3Jx5ni^SVdp5Qi)=;#5L<391AjfSRO3=)KqSl>Zaduup{KWJ% zCS`5?lxbWZ&hS1l`pHr?B=omAY{=kYy{eENXE1V@g?dz)0`Kwhg07H&=Tn%VMlpof zeuNCH*FMDs@p0#N-h?N3xjp7n{4c3KG4}gG!2`Fy<@U+{L<`lXBXiETx4g|Ee`biR zz;twpMMF5sgHSCl3cCDbX@y!+O)5<>R|kWr2Ds@o98#cFU}M`jNZbN?ASpAF@GdRZ zrWz)Hfnttd`YSlAky8Hxz-d@%k7*qG*{u3O;MR)?TN^}FgTsA|FZWVeCG(QF??jQX z1Tq_YW^yVAAeQ&)6Ux)iL zBBaes5}p{aFi zir0}e5*T>-44oF><-9G1LDEa2ObU^~WEP`?B%F9Ies2?HV_IkMf{xqNn?sVKsdJ>= zYV_GYhF5d{auK!^+bQO*6?a6S$u3rk79nBe!5WeHTG@2OZbdoQz*eFnqr!Fe@_a;h za=l(SqwEnHmal@CyfckM7iCRxCiB^bTcf(LamY%rhPWRn$B78(5`mLQM22}F})pHAykbx|OmZgp1!B+Nq+#4ep}54zj0 z%u(1<@XKsn@0ZD&C?C6D78#$$G*Je}TQsfO`Fi$?qx0ATmT`(cRAmqIGE62gRWFaO;5D_TC>5QGGlB5F0&>+-2{C+ulMGt zT1WTED?f7(z+Ict@*CV1#A8>zeT7M< zn*XWXdor417g_}mSEb4$K~Pl$NvexfhlooEyY2#p$|VPngQ;hhdKWGHRP0^d8s~D@ zER3Z{)Kco9foxRzp?X4JJliN*-n<{bu9+#fX700OrcgVvKHwYrPXsv^Oi|G~mPh^) zjiAGvu9GVT%|=<|AT_PX6_<-Jr$eVWhtvdNVjPF54_xiO;+Q9&Exx1Z=e3?m-~+ij zy8i%cQL@-6IrHcWzJrIQ_|DGw%zV^hI{PV(mw)+c;x9SB#@O?>bibYx-*oNEM+kmy z{;IwRwg0i9oQ%0#>Fwfy(-69d5(FooL8f&?u2ls7Z+G++JD|51)O-_-Gl8(7>&hzB zvmLW`xN*lK#~#dr-!fH3b~huosJ&w{f#D6H7XnAaSjcYz;ZU>ymgu4*byQ_GCYvTP zdIMljcEi9Ct||6#5-6CmPJ7@a)}wa{irXo!|Bg&*-Mp42J_e-b7G zSp+eYrxdp63`}&U|6cDk+bVcxkM^gVlEM4b4CIMqhkAu-vN*w>iEzH>^Jr-u)2r&B z!Vvej^)jBeE$Cuy_qb-2^gAEq2$%$-n)QK;@Djxpsd&-Y@DjKZ^XUvuGa z?XHf`*NhtN3=C_R4g=OM6EfPv^QVE8FjgPb2Z0qjPpynCNrs@XZuO1wnst|8HC!LM z4fq_XlKQq6*Y}H=6_X&$0d#B334m-4YtuDaN|R46$Z&{33FG;qZlCTAPYdEN&QEE- ze62D;t)`=HIKw@VZhPu(4-tipcLxyFBiNbEV4JPXgA0-)Fr41pqiba~Ceio;a7716 zU_f=0y_ByoNx_s+iJJ`;bT$w+7*xfW^9o4QAM_aho0*~++Ytffrhi29S9_de-SzVe zEhIfccKv$dsk>mxR!$B{QoO-t=L(jXcb|M7;f}=l6aGZnsTSPra21jyO}-FmP`GP4 zQN0bkiS#v+K`tWwLt#n%0x)d?H3chRsCP9x3q6>t<{GK~7Og;(_fvr@^;scwBUNpa z5Aw`rI*vg|$m-o?P&t?E*Y5xH_X!`it4o}7v&Z5qhtY7#TWkLz5Z22;hj^88JzH0^ z;kAzlEeYL)X37~u0ApA-`!uKt^=wJOz)@Bykn+6n?{tWGFA)XoG6sF8{ zIuS9BwM3qU{PQG>jQUku)xwHNn2vLveJ~haL(09pzi)bt@+7H0I3o|jjceM$y1-JAR-?3Ln4^~~~k%q1y+$uY}$cR+^=rJVQ5=Z3h9 zv9Pj|F^Q2AXm=Z)H=HIiOQi8{sCSzP<8jE6G>~JNL`6#JG7=<2rhe>KjW}Hn)a%VH zqj&(Nu*HTQ1)#vflz3a0y^p~JWg;Yxok7O%)JUfz_*EAN(H!cH!$YnExvkD7NwT$z zCg<`}%z7V85KJ7t%TacdQB9GU($jYMv(kssJALA**e!Pc;Xmr*NU_8zndD{c!^hvS zS3bu!l_?kQQf{$YxvbNX=+`+y&uqTUnhmI(mVyovFj<=~;P%zPSaXZ|Z!jxl4R^Dpp=m`y7kHF-2HG#99{u?A7m`134gPa?`6=-yCX!L%$&b0A9asVV@#(64!I|Lb^ae?k9AM#;E z<5ZiIz7|u~d(FKaQ=7%h{ihOjO|^~lXA0O2?}IEzRgFn33}e#9-y=eViUb&v;Bq|# zt3RPCExS7R){mazbG%A3sx=xe7e1*C#Gnbj&Eu#h8SyaKrI4B>3T?&YGjD&2Bl>6& zjxO~>Lu8kZh_unnJ?RnvdRdj;>y{FzkvLTDrYiZ`+sjiqTTm!vdnkVJ(X`c0*j}+!yx+cywqX&&dkRfaggQh-`Y9#Y{T+&- za4l{HI?Um^4=eXcUyEela5sf;3RYc&(LvZA%HeyU6Z?J*ki>%0E1vO99;{`ijD@&U zx4P2ozh`@oW~+x?$M6GKbdw#FCSeNw;^8?)bgXkrUkFco9>{zAag{-WWKzruuZ(Jx zzv&*X61b559~b8kSXmct+t{{Mv2EK<#kOsn*w%?{qhh<_RBYQ$#jo!BZ|A+%?tHD? z8RJ`Xt$73t>4KmI;Ng3s@6GOxT{J}I5U)bunDNteuX$`R{Nw~3ce5DW=h1Lpdrp}3 zXo&W^RJ6aa=t!b|AfKLjb2r+$_m)MXB$uFiozp+N8B)Y4C@LF#&Fw_NV||J5-2&AZ z)>F;wsYK+K%x>T1bj9S!!S8~~QuV>>Xbs0|Sne!_R{)y=&{0f%Lq;Iv2A_kmEmP?# z`$`8fv$QSAK_Z9L^s~L*)N5l2ucnD%>Hmp-K;*0#a#PaJkE07=IlUn3Z0aKD@LfkH zge_bc5r#4!oeR~k7?=m6tWT@jsGCb!azSwd?@<>Kp^S0LReM#bL0=p zaXyqs9)v!a4O?^{D?@ z$ZKqzAWXpgx+zLMMmFBf@<~K30L>W(>sx* zuymh|fXkOiPNh;)c&(_3xBNL~3`gr;Vt%gYQP!%hxcWSe4!8*qKXy%YtZJl4fgrKl zf53ytbt1N%s^jCp7j^jy0AoSSs!1Im*pimWlV3ahZ=PCZ&Ar(!%r3q zV{=zqPV1&uF26a7c?&pd6d`6*)3lsW7diWorUPf>wx(V`xV>J>op`UX5o?gQj~Rje zm||l?5*W`|rvd-7^(?<+`Te6{?;Vid*ub?)I0!JjOuMF_E8NC=ElX$vyfbmUuNwVl zecR;_*ucaSP*R{%04OH#yBxv}*wqJ721qVh{qp#3Bi=So4Io6qHB!g zncQalKJx&#CVBD+MQkQJpQS)}6y$w31!<|PGnaa_T|l2+w6~6D5+5N=QnGg?#ft)) zr-rLQCR^gT`NQSK%{_s%n3CvosVR#6$JlBEt**W}55@pN(I#WKfKRJe2uKJp1?UhQ z`g$74;n!;sMM1plF!rs8v*$B&YuhM6QSzpmVRhmm5Xn5Mx%V`IYAohh$fsnJ?8TkU zu%A!VRcG0DHyp$xW**)dBvNcR>fGlqgORQH(c#E*z=YmqF*}F%H+I~&Q9eSGs|!@I z%odA@B`X^dp>miiya~AWjSSYA0UB=Fj~}?|UoSX;D!NZK>lUYmDjt#(SV1qOx?-I7 zmnj;mg$OOdx&kJYnrA&Y}ZFVk>MN}0HpMh$rNH# zUwCXjIUhZlWyBx#o-A2Ij%;<{AdDUi7Yqnhs_9Ta&nxh?J{`EudaVQBF(u$o>F)YY zRa6BVLy8rMmff>5$5gKM;6M7$C$?k5c+P$WR`xwN*(DBe?H;pemo}WhU4LERu6mFS zwM%#)oYFUM#KbPeSAXlA0$6~J%YGwi!g9%4rQIJ9d=p7>q*48`?EnUvPh!z2Pgv{q zl{yOb8vW23jP5Ar`5W)fOl-XJ3NncdGcMW9UH(S&a0qHyWkuW28#q0`J zleeyf{%d7$Rez1j4+S0k3ypF|2Ce^&y%1mT^n9OP-Jg$SR0w;)?Wtvsbv|Mj(Z#UO zJTx@yWAYrQC=@AAGakoGD`GTC(;K2rUNKIKgCx1(^?drUY0?+TbN?e1 zti3x59eq608%(bM{w{V1&JC3vJTMOW=_^da2~NLnTYoUc^9i~;D$2vFsMji9FGF52 z#!GLvkQT9h1DnPD3-bq|MFBxb4pVC5lqN4yN42^2>5EC-62QJf!Ei<}*MPu;8@M-J zO_#2;z~^;1m06N;T>B&ZY>BR_*n1=sL#eR%KzL3;VpiH={l|$>c=Zo*K zwD3$A9<-^JF3i|19&_B5@9{wcaHcP$>*}A5`tTc71Ax!{z|nh$bYXs{pjeLLOJoFx zNaalkQGsr+YE6{ukPN|Ur|duF=59|@G%D?poq$DNk?p^spD3d!&`#NC!5hpSJ@iwU zTtby;WxPzAw0#a;aXCgm{Kw`ZS5P0pMR5FK#oU;^SYJq%8zqR{IhV_`MDkoRP&k?F_Z z=C%WZZ|2#>Uic-hl@nM_CVfr;wai)*9yGesp&u&1hD}|G6KO~`#jzxur5At-&Z;FSJ%^jNQW@PS3@w&v`U;>N>QC2 z!NOQ^ZtIvijUn?2aOz33m}1Q#?8kQ?*Avu>JFI49!R#3`qmbBT1sSm2%1MHFTs_P^ z07}tvm$w7M7l!&rh8P{6Uu#faq}DiI3Occzr)}10E&>{)cFCmNYk(uYT4F z66QTPwC+fd-)weSjsi)cqr#~uct1Rp853Lyu`ZAcrRe;gd4Vm2RgLIFGMdivBG{191adHGh9OKtGBwn@3U5dvHEfIheQfIZ~zLD#|aVC|TPKVg{m(0nD zf=RZ}Rdydosm$dcy=zGt!--bj9(r{k#hrooQBh;X6sQ>G;4k6hp)8fv#pu2{oDjsu zw4ZaRTAq@uy~?UYNSVarC-l(+03NPAS}T;mJf%6rf7>Ps(q;B9OrMU_F}N!6&!((! z$Fgjm0A4Z!4_N{*g3G!5Jsj`Huk|OV$1dD1jV=J@J{ULx=D})f4gSFjolkO(Cvvgk zts1xQO?J5VvkyVRumuJ9B|51+W^OoE$(@;M9P%ish_v!DjRn3e;HL){;F}l%9~9`v zspC!+>HK{kd~74vJv5&?+I`eQpL^qUHoI>JR#2f_-Jfliw;lkM^@R?BxRlvo7!oGa z*pFetwLlsORoBnyGrwjHe0dbt@cD%Zi*FwkVZE;5$j2V&h-?R;&s?Qp-So@~9qs1a zao^7GJ1B}Pc&~cig4uHqpeMH_Jh3(+tGiW8OlO=YmwvD(Q}kmP7%!&7pvBCYA2e0= z2peb~65}I%W(%}C{X+_KFXKKyqm3*TnRN@~f{Fu*`rOLHtRKIp?AEg!UV4N z1$umI%tpbm5*#7Cca@#k`6+vA%-T%#7FVS-s=Ct0GMN#)7eBlK)@#$G#*Tl77Njh@ zT>rT))p?L>NiVL4W+B&yuF|+|P3R(c16_~BMw+ZYGIl~WrqI9sSzOS}JBhP9U-9dC znK8tY4iPkwriuQC#rOTgZkL2!=xXpm!8B;s{03&zydzXc!$lMr93LWwip(A!%UxeY zb@gY1(ZDF}y}S1=AWgHvcL&|cLM&BxxhrS(V(wZ8$~Y{Vqz z=m@VhUG2w=@*X&R%Ads!@0~@`6{g!5xQ{W>tcf(E} zU->F2h3}O|z}aE#z%^kdapZs_rzCR4>Gsc)W~HN^GZ*r@IvNeXLuL^tYU#)jRt&jS zvOFxirL4L8_MZyRYS1?{&cjh5&!s6Rak2_%N#?6^OjLh&nyzgV z8*=mD(Wf`!Oz=_V+4*Nl@}L?fV5XWvDOk;bQE2n~@y$MTCj!@`b~n)`IOp3^BC6fDT}5F+$A1{;ZUqwz@>1z`N*2boAHtGnTpGFQ@I4_nIr5 zN)%+;ni?e3(?lFX2TGfX&~ZD|tfigKZjrcD)~3o~J_v*Lh0d$!>qSiWCk8xasJ916 z;w!2IU;RI$`ugb{vfu58)&*_9dPf0ylDAhZJ67;ZN476!>grae@791Gu?~?5Om1GX zqPaS8+>||_HQtA#30Psquk}ygDn2=ruD^)JxX_g22q@SdC+|i`5%1ivc1_D5@)(ai zSyNEe7qeSp+VxZwqRf#9>kHTJ+GuY6;_v9c_Oye;Css-u*}8Mqi+s2NZV;B1O=FPl zz=$tG<%O|=IJdJT^y@lIk&*E?g7&~nw` zq}`KSOnAZ%y;$;SXT|+7@-G`Q00v9p3=s%<%>D!1Bk2Wu<^*xmA-~^f>H%EU4%#a3 zj*;*u;Ad%Sn8{(%WDr2+)U;R#^J(0Iy&6onE)-?pbKAUgP!?eBs`IYCL`uz5rhiv3B;pv;y-;co`{n|_I2Dze7BCFK3S=>xmVg{ln@pHscm3GkCjkuIk9EGjfC1wg*6U2bYF#v^@{`oX3GBa;j1ZIzqKr zP>0w-ooDwQ1SwFnl*14ul&Yr z{N)3~g|!#5kh%?Z5F`t07D>!NN$HkCbZ4&cH*~GsQE%Y!lfZ!I?`r=0l%I)(QoS|h zW(1(fCJKs@ID=~H_qZMxgvz$=^TEi3nFSFGI4GDCu+%``Ej}o6R+yXS>-B{+2cy~+ zqj1eukrbw3PQ>3|1&_Qg*&m|C%sd(=u*^0D+-34DoD3q}PMX|dP%-qRcS2DejOx!F zWtJdf=8xY^bxLSrUtBd!5Xqpb?bdugxG8|8XUt=Iy{+@AR{2zap0T*XFu1Qpg}5KM z%6t!LqY9GNn^2bv3JGe;tTj^I=>x}$?EcM^dImW^THucuC>C05V|Q_(XXh={*w)+B zyO@VYtcX|ix+zr7=stOb2;^Az*DhinvsgyMie=a`ZP(d?*ruR5e;f=?5u0GZe8&SQ z-T!`%L%hHma;Jk!90@~Wm4!G%|E3+hM0>RH(PWvbuZyw`Z!Njm-9%K{TGCWl<7%s~ z7?=_-au_tjKonmy+mWSLqM2FcKTjOJ!vr>_@$W zU5Tp4V?9>HFZSL|JIDHV69m{HigIk-UouT6r(JU<`W5(F0ra&!DS?}4(ATYiJz=g9 z2LxWC$>2BWSkw76iIVr0pC|{u<$H-I_BXT~kiQS~+;eA43{GNRG)vfSHWE8f0FrH87LS1i}R{`^Okpo?Xwl~Eyo8y~3i^irsOWvlEdjb+4+3$c4NR}cUgZ}|2 z1`xat0_T5{It-xEJ{Sp5sqY^<8y6tT0KtZz-VX~gE7nXlhwXqlq5G1m3J)Jaa{!?9(|Qi@kZN9he}y(ik4WAYRf0WhXm zoj>YceCOudw(m<ZT|85d=h6(z)kQ?z#VtQzMS+zHl0qL3hS9@gCQ1gy1kj@uuAJu>l<7c{J`mdEG4LGF z^*XwXIciv!6NQ8mtFw=zD& zEftdsN#~D{c8IL|sw0Z_>t%|G0DyQ>Gf8DhbLw; z_O>c2gwdl}(x)N)8+2Q4)@w!?sGVLICL(z4e-XpQ>E#sz$3PxfUN}1#uVt4qx4x9~fPWSVQ)-)su0sQ49RFYDcMMKxTqOc*V>6ka-IF?m3RcN&`?Mno$gm?2* zKNmEA5+YS?YHd+eZc{`KW+B3wh9@0!G>{Pek!~s9+wS0A0q|kxkeGpWfO-Dn z#use>{*tlhd=4Yx{a!sbKZdZgUL4=oL^uuH$`R zICn|g8zuA~FgJe<&q0oKdqtXj=qQ>hbb?}ZGME9?r%%-<8l28Gi`+8V`eYEo5sMO4 zF`^BYRjW4HX{;}{0eF=1YAu3X!c^^QsFC2?ehF$Gb9X8A2Y(JxKYMhnPgMwx&rb`j zY&O6kIHEW=p1>nF1BMw!QruRH+`Y`1#RQTvGJrPk=c2@ajG_*oJWs1g_&wYD7E zMn1(2ci~ZqDdv+5p~ere&KZ0>;=e~weav@rJ|^p%<&Hk%00;z>xkHQ{MF&M#eIT$b z891N?Q$i`^Ku0CIsj?#NBF7BK>wgk|d0f;1aYc-c`QB2y>71+D*|VhZCopHaV#rJJ z{DfC+?0UJ?KCWiQd+Ivuu$t*^<5S{X=7fz#>UFO#fbs>RM1X3VjmR-Q;n}Vv2cEcUtrWYK* zd0*;h6GLkyi<0BKgZ(zX=A|FdrjDo`5m`%SFd?3J$#O{n*_TL#+ffGfBYK%|LfUl> zR~~j{5IiA;pKpF)EoodOiw4P3qifV$_Cr!XD6jG#Hrkwn;7};vj)O>%n~6(0`%Abu z_8ztacv)!J2wv?@4R%!v^1E4;~n)kiZn zN-m&EcxrX(J$$uWA=IskF#(J$4u;61^GC!kLE?OveaZqzKcXEI9s21vq+6d^X; zaR9TZVTJ)t8XLfL%1P@E+V|)4 z?B4;iVX0~;)tB|=z5EIj~3VqMTn-hDfgU)V}xPgIv$KBa#W~WW&f;w#&S*_UKWT=*ZC2~U_ z99zA=4WGYN$HM9NQ(0ls;)O`V>V+;w98AlRVy^zyZC0?^xN{@`)}erXDWvkcW8vyy zriFbHJN`b*`H-#yPP(t5eK%5S& zX?+#LXJM7fNW$hMmlu`6mZu;L2JFpjjJhbWzBurrVCm%;pD}BaHU!1|Z&HoQVa(JF zYuXut4eHCc2Wk)i#eCL8vgWsQ0n2Ndn<+lVUKE9``${3Naq*IlWF@gg4a_KB#S;j0 z2tFHT0JtNev*X|fvWckaX`o0-=nQJbiA0@ZbOG1v3maH+SeJ3?|aDDAbIPlZi>4v z^~OD<^x(FEG4Xprs;eR$4z+X?Mzc#fCXj(bH< z-)bVQM@L+WhACb|4B~is3+>Zon|8-FIMJJfrxp#nX|e3>R9(urfTc^Xxm8~l5BGR0 zunn-tkZdsVcUP&457Wc)B-fU`#iiuTf{0J2B$<1FlQCFt7ZabWIR3!4hMHbzP#ae+ zBk$aJj6;UN+o@0RltC@Zaxs}EYCAYsCLts{lDjE1XqbnB!ZA3aQ->~5jpvW9-UUQ8 z*j8bR>S4)jVgfGLxkw(=gm~yf-gIvkZX(~%KTc5z$%UGZ%EsG(y<7QyIZCB65Ca0n zz^VrTnD734xGE!RjN z+R5hqASpy;fmFw|V$W~?y;mD?FL|pE=$>I3=e%B^+ z>>vyCSi_VnZW2QE*HvX~Y2+W=e1}q#mQv>a*k0ium_g_%tIuf47=dt7`I7)( z0}neU&M9H~?Xt26-6g%s=i)B4~O}y@1XJ^9KQg`bdctd{G`QKG<&u-2<$C z-e>aS)a_Q{Z<BixgEj?F{65`b<08K!qpxuD-`Ve9{kYO&7;XO0 zG$RDUsBedTsW4SEys3QfoHFGsr0r^}!~gXMqZ;_TB89 z1G`0F;8hfUPoG@9X|QrhW_VkUq^r`A0V#*f_-a2U>>n^G_%TO_FHG{UJ8B2rv+5PT6E3HUH3c>q%R zc?x%ve*_fm$P*UAR&hpI#vC)!AIM|Z^XItz;Qqkj~K^QDyzh29e2ix{S#y{UMnsa0pEcmg?e8n*4gpkm6dl zw(!Gzf7m&6Q?RxzHoDiEy{F%;dut7B1`BF?A~&?|WD{+cY?J_*7Qcr$4e+7?fKB>x z0Uzy24`7}>BB4t}5^+qoQGmp>=jBL3Ok>ruV+1%jd&i5>vg$W>&||I?K74@e@zn0! zVCnVdbRY0T`W#+xM-%FHH34j2SJs_*}uG4tEZjxkcE#^^&8oN4U@)-Cwg}uz54QW8c~p>I3;&LY)u3Rvq-fjmYlRE8fla# zc#8?5k0~*L(aey|x$gUQ!V++M0x#0#uy*6%;qo}t8`_t9if4%rEvDpKmePrT=~2{) z?{bTRqJ#iP&=g@=VD&|w=XXd_#NQ=M;f9AZtab+6hLg_%(~!O)YghhqKGb~5_pIAq zjvd#bxD8g)eB%Iy>!DHglt}DC`>`wzehDimX2cU6vn|7F{%uxwDGRt99xLI7U9~GD zr9#4bF=mDwl#!tvTsWN#O_!>y8k4ln2>Zq6Xa5JLMNa z{*3iXqQ*QO;-Ql9jRu2F^rzlMFKCkA7@SBhoU~|@c;8?fBBfYUeHj+cmq)7Hb7I_? zn#+!q_;cLeC}J1fp4XtZ!{g%!b4Y~s(IK$r@k*_bC9>BV+`&koj?+o0T&aW)H&_HbS8py zBZK*VPK@3~jbw$J7!oxb-~miNQZ`W$$C!}j?b6>}7%+M^Ey2%-ObGbGpy$R7#uQkE z+W;77Znr~4Wz(rUo$S{3PfCos@xHFZn_Nl=0P43UOe-GdYAH!p)q@FJqwxV7qj}4Z zJKUn4tQsSyP83>bLu)i@n=~5%M9|-QRg@OA?p#7Zckh|%2CH*1Z-5>(P24TxuP6Nd z6+Is+TQHBBDDEr-s;~8^E;)kBNu;f?NF%=BP zfPQvNP0qEt1n0IGQ?G6U;u4kXy=}?pJxAFz^GDw!|{*iTC!2a`}=kl{9 zWoi#T-+dW!10TmLlPv5bm9Q_ziO3p#hX|xoQZtN5s_B#uB!DTABqL4^T=|mI2D6`f zPL~4=;!tHZbWXTBjafri(_!*EV1EnFof>^Fd|b<(1bDKYca{{C+#W@_VKygOlhMc4 z3oMUoQws4J-NYB3?Fuo14H2$w|4vu4-uw*W%B|iFL8cR*UiiE}O(YY-i#Dn4ypoxIoHyl54`>(=L#yA{W;hQv z{UxLU-BjCKX1U33u2f0f9^mN!K^lOhl#_$P8RTAbdw&@S3_U~8lm56Df zy1%dRgv_>plgwaF9%6!s%rqdR_l|mdl#2$X!BS0qZSm@pufS};cJe9sVjemjSG`GwsjQfAD10KX2B;Zr%$d{NrWf!K9f+YFOF z)PPVaGqJ019VsI*s!ua{6s;y4<=_T6DtW!5sVk{Y>b!@ZzSC&LmTF2GCx3k=R1K!I zGkuG->^dtsUE3{FC+KNo!#vcU>qyev?NJovin0(9+vsC0;5S~Tf%V2uoeYyeIQHSTf(Fq&jcCL}s=IMJZ|j%~m*T@@PU zPREU%YI-Q}4F*R~R~d{dKo>s|@{(})k0PM-M&2G0SI6%(j+ zt|LBDWVT(GNEO8mOW!W4nc4Xh-MXWG<%-_}dm+Ah!xX?lvwjS|nc1ZQBy-|k0w_JR zW#1V);hYaXfpCwcPhUUx#8U*zKHu;$_C4u2ZM;{LRXR2j)0i1guh6LkMohh5cytZ3 zo_aJlE(RIYzrbR0^TCSTu~f|AFO!9H(G$o)h82uIqqE+5G4ZI~Z5I6S><@f_LnQJ? zd|zQ-&-zhtEdUqx_E)lSJ^}$@2H)O8`Hx^*Y0y zt7Aay#jIs}VsfnZnE&0y9?)1UJcmM z+-W2(D?RoGODf)hdO4VZY4FR@a`c|<(Gvv`Vg1|&D_(| z9@4g5w2~+v^J37>jf=igrQMxmoo;R`xbL5A;N1s!8*+?Q8vOdtTUtN=c?&boKW||o z07VCae?iznuyFCP0XI=0MZjMnf`FuGkd$C#+CZ6qUqJHF5USr%bt=WroSO^Y4fS=V zbp-Oi+M3T@J=c>ttuu=-rdVZk#Oiw`6DPd&NRT;|MXPKPt&k&V^=Cc=GTrtID#bfz zVMKZm@-<*|C!hhbjS){nKF$?zxJp}{-D@|^odpj>{KXvOeM{bkoE+}t=<+Ngx$oI! zjIuf8)bPUZ)MoSAs5+Gm!@yTGNEU!vWC0=W;eu24Q_rql_hn*U zd#m0#%9{y9s01mn5}^I5@aD^}@N{>Keu0HMkP~-^F&K6aa(L}QZujfH8i_;1b7>k9 zC@S~#emHm38b1A&uVdw({@R9tRgtf2yYOP1!x*v#(ileChgj`u^(fS50yp9$EdBF@ zaLC<7?DlDenM~o5HT=HJ`{X80bO;*khi16vYs#ae3%u$?a(L|3hZvWOcX#_Wh_ESqjJCe}Vf``I zmtUUALrH2ZG|EW0__3odOrW~;71|C!zk^@N24Z#=e{?%1+T1W%VxWTkx2;P!^L(I-8BC#xoXvL$!-DkL z?#-FsIYppX)A3#mtrLn>8L5;hX$8b$$ovv8l?E}Izz(*!BI3>_zl_|y+u}==5yb=n zVYD91Bh2C|WbsB}oanYI+zX97S@Cp@+|gDaUz4IUSMo?&Jq7)^U|=>T8%+oz7*ac_ zFQ<2rq{q5|K+IvVYpK6(tvAgBQeB|&@FwMwMm(2|le?1_WoRErZD}5;5T93nr%S$2 ztOsgN#}rL|AmYJ1le>amPE&txa;;(kq?EBEwok5{>L(JDH{sqQY3m()@JMi?t3kJo zMHUoW1{hsWR}d9!jDEqS_Fx?m72o@rR1H{DFP75(osR z@V|Cn@#vh@`+Gm^LeDsLn&6P)+fCB`E+&OO)Tv-0WCO^CJ0~V)#M9>6W^?)iJf=ig zDpT}*JTp}drjCF!eSRFJGeyb8E`2PScupmIt zf`c;QDDIV$YpV&KSRQ%xD8Z`+v{0Z|x4^q&!+6z~$b8O%=F?0`4D29kdkrvz=5Lo% z5MKt)=fIX4tekrkam+ ztEOc;kRLRT{(Qj0&pB|w;X2rY`}x5#@mKmSpI5`1rtcOXZb`5m1+AqWaQI0kueie` zstJ3bE?KllUtP$NYT1l_#o5V{PekNO84d>JLI$cMk~NAr-0g+(SLCUB>)4dOD}+bu2wWS zkkHu*nLa{RI0+q}jfR`F?t6bXaFr{tRl>shZL7p}AXhqhaaKBy7N65ASLJ$>T%F)4 z^a(wvvp@46WHzB8|F>F>1_tsUU)Wh#fpxf$@qm)`kH*i}qwL3FRxlaX$R=6peLRV> zm6hD68r-K6OLUGh{1%nDgfmh!Hlyic1GV;?8h>|h9-cy%bd-x&9z zo_#9T)XTjuNHwAIMBc<+o|o^xXQ=3(%>POQSi+g4spSr_!SJGD|5sn}jvV z{KwN+HOb`i+{|gtSSRdiow0d^_HmVjrX`A``0*gBQW@U*+8eo+mW4t6)9(N-+{ zTSHujY^)^6R0mJ-%0v^`?}rlK4bU8FW%DyI4WBj?j@v(VkQrDOE;xtNiZ5JJ{-!nP z&+n2HdrpT#AgPz>7U*(Ow0=pMZ;A zVvF9L(}0tX&7$flw^_%|0n+Y)@uD`O4;f=@eV zv#AA%6Jh&RVvdXZ3XEoZPNJJkq?J{haTP>9!lNSZUL=P3FET1&1{^wmaJ4M*2ANqG z(2OA5XceqTLY=ZO**Aa=pLhI}8$kQ>BSUb4t~-+#`wYxY@{5+_2bu{RT=JS5!;vY47xxi5v>* zs+c8;5Z22d@!czlzr!You(4yyJMc;IGkQk{Rl@U0SM1SobuUnnD@F^=7y)#1Gd91W zCw;LC9>E$DLk-tEaO2qy3gyL<811vBcE*-5nRZ4J|Jo83X#H)%$#f?v`R(HQf!K^A z3Bj0})l{XYKV)xfQIwq00DXC|?~!6zcpdMCr514y)bwWw^0+A#<^S$Jec%^-l7u&J zcb#TdlE`69$-|VaAJIBzgaE97V>sx$1TsONzS1J~u`@t68K*--6USBF zgtV!A#HH3S*yT7V{u3Fidmcf5D9nIS>UIV01srs=c5Slb&RI>8jjU`8O09zz{z@ei zpd(+zd>DjoM5y-@3Y|t4NEO=_Fx6b3hqxYB_h!U1EDgk@V59cVD+Sd1xBnI&T+url z>e0**T~6!z>ry&-2v6yy1up6;wkG1BP#eR0{qFo*L0J1VC4oS;1>t_=v8C~=C~u{K zUNs3rX|xWdg9$vPG9tV8bIi#QzCqN4k-=s;y+|X~;nB<|w=fgK`>frh%i56)he5m< z&5&AULam9c&Btko)(e2{8GXw^+?_wgjTp+*uwDesBnJffy%_V2r`mb7Vonwks&SHR z+@BwppO$;sgFQrJ?d?24b&p<>K|NEZ9cQFeczhQL3W1Tm7DwB#t~6v^>#3K6$J2Gi zUCS{$&~YYK9JLEi-i?Peyt*f;lGLQQtOE@3w)&zmBSKVb@CST?FljaTGnZv>ho9m3-i@3% zQ37W{IossF398Fp#joL|ia9pgk(2-G3qWDAfOk*do~6 zKw}a}4B!_IYFUUte#UoY-CW6`$&=RVblj1t=$?q%JrJo7=*B5a{$jadz!?S}(;o5Oo4QgPz=Y{oHLE1<3>Ww}9BSqw6O%1~mgOA*1$i&54o+Td?Oz{L=g4sF zjih&UR9ARI*dv~z@(V=tCJ~xeT%kxe<)Vz|-paEs((62as_I853V)!R*WClaeve$5 zlX(I;ilN_5JvDwA!c=Uzq$oBt8XRLbfjL%XLv{#S2K03J#=k?tMX>1S{0wEgoFNk(kfTw&*8Cm>E-`e5Vks*0H~ z9>XNbz{EJ=R{IFlUwDC*ucJPF zxnH+ASc)S8L*s)RPkQT|B$7KMH_S2J;IFT%d^$`j?xlSaO3s1I?G(-7YNcsqm}DkE zulQ-NW*+UBGFY{^p&*-35cP%g=_QC|DWrf2lgEMZu?*PJAsIlgG;`8DA{jr=w8M5=oRB$Y z=E32Xbg)}EF!3yDBJ-@Bioz*Zv$nx0i6<;&(>f@VMQDnY!-aBY@f3HZNQ)a*AU{Z2 z0!tBO^TH>9Sab`Yd9}{7T%N!{V%#m)xJ&00`rbn@~R+mZgMvyq{GwO$3W?u{Rp?Z$4 zvea*kLcE#%OvQ*QekrfMm_9z=%5LlXc)K347|lZ9zNm@LbE5b^RGm|BB~a6@qaE9s z*mfqE*tU&{C$@KN+qP}nwr$%v-}nEgPSv?t)felwyPmhY-)@Xy86$a!xDA2oFvNp6 zc1+dZGOQ}|wzpOaB3Vfojt?{U%us6#=9X7C0%LTd>_xHy z5$i6?y7*>WN(r?f)n?Nw8k8fD|R>n3ZM#!6XNlQnNXI~ zcI471uxl;gdFepEZZu+Dh7(!+ApS5*Pj}5L32G67Ypm50d_*z7qIR(b_f%E}F>tVW z0Xf6XHv(EzgqtH;Df2Vpb?Ev?Mp=9$-fODrv&@MY(3D1EYi_~Z2@w~n)AaJ?O7wMe z49bmuC-eRs6^5_@_3M*jyE@NZbP03uWWDFq?k)%uPi#mK%~q)Z)YGdBdOs~v8OJm8 z95LPR-^Bbdes?hE)3V}TY9Rt9J@BuDBm4Cz@VGe6n8a!GPJc#|QS?yb2fmRq!2uLD zuwj#&t-I$UhH}S=-fnJ^l+zev3?QIB@0$=@_#$(6VoQxu`cNV_Wu`x&oVR&qb{geB zgH=EikCp>N$))L!^0IhHBsa}vFwtd2`B7ZLo?S?ROozetd!xC~3HQL32&lqRJ?98daIh2>J1EM8B2l1BM4; z@?YA`sdNxTfwL}msHF_s^1wa&`Z$EK;71l?&O^Pj7hFud_2Vu3XlCG!y3_HV0k@=pB^-Py(L|6@v8IP)OxRPbu)s_J%daVTuT1E) zKkrYSK0)&|F4sqSgU5fs)-e;E6v4sxQ^Eyn)^2ijLCH!cOEtnSBNZiNck0vfh&-x& z$Gd2wsgCNNMigfE5gQ)ICg-2Sti!X!BATI<cKfh^61I-Ahz4asqEMHUC`c^bf9~;H7QEnK&XYZ3#Vt)YR*e4*-47^G5?%7kSkG zK6r(rheL0=xBX`0m$O9#V((2i69-sklsn*mh17FL_L`wkXAc%KqSx>dW-4$_0ds24 z!5CQ{77g*dhLwdQ?Wdq$PHyQxPmTGC9GTQcJ+!&Z0#WP0pMVFK9?^ofodgVe>OVKm zPeUuVD~}_iTsirE3I^`3oR+gtM#QSWyOTHixT zrB4|l2Uq}EI5_|R34kH3i~pXG{n_s67i9?D9F80eAppD+kCCUKkAkmt(Zbr!np|`&>k-XL%)D#?Pl-5yNmp6)Mt(pxe1MPo>>uXp2@(pD2Ai(u zvEfMR2ls_bB)dp9^XR8!s{UENniixytdYJF-L^i~)Tx)Zo7II5VW8{6;zm7V#xFUE zOLSfR<&{OQLu>hmblO9sy72x$YCw;_D4EzHklY>5sUyF<)P3u?S12NjtQESwUxtg8 zy%j48ZaB?2v%4}!4%=^rY4+*Le!=zTjtsV~jom5#*2n@%5fQwj(5>Y zTZfSL5Qcl`L|EG?3wR9p_~?Wp9_mAcW|m)~oj(Xa{Kj7wn-6Ig^aIj04F~O_bsN`? zbr`8G>ngh1eaC2VvBjiHu_=pOlrw+M;2_B7+XD;FnMeN?S8nvTzoiI@21Tv%=p+wc>%v$34n5q~2 z4r5|p4qV7TG?GkEpzJMbC!r z5wD_0NT^;y%2%;|^}I(9!?P$*)<`j-eu+X3oK~6y?UuMebxj@!ipXTuSH?}30PP}-sjC_ok2wid5B097?0`KM+@>q!&#v!gO201hc}AYi1%}4Q`p| zwce^r$7akqx=F9Tn`Hn5WIdIQN?he_r;+?~0%4I4p+ZE6=1u&k=8cttp<02ndCr6r z&1FsU#mQpZm~5o{&j>_5ZDSSZ5t@%{rEOOcRcqyW`e@kYRg5@|VmeKJAnG7IHO7gM zC!-|lKoYlkybZ0Eq9!H0ZT3H5vvwd`?PnHJTaBJZ=Ba>!uWB~5nBSo#4F#q#G15#A ziY}amF<}Ut%BnWw1QLHT6O@Qdau1EAL2p+P;%uiadM!yWSOqW(4+oU`>#ZJtImK~Z zATvwH6ZWl*b2 zKvV4jYs(FeKynH~dV}iCdPW9M;yC-;86FVtl<|U>Uj2Ew0b`~{8`60b(M+*!T}Nq7 z2~?cRtyxlGikN!gUAGi@hDvP|b94bkRjo^NzEMLpbb$-|c(G-r=Yh5W1RkS-`@yS6 zdcK&34JjLek7|puJ#vR5SJ_9d*zd0^svc@PJVVgIG;BhE6irQxN7C3eN{0%~UY%a3 zZd{ff?IS1>EdUm-OKpV_We9{3otTu-fQxwkh>bfW16(>ruuK3#!=AL!Frx8ms&DgN zwcJx?x9vqm)V~46KaV3_GdVr)F7#=&=zi(|kjvdbSY-uyB+$HqE{_fi)y0*s=yj*3 zjP&$tKEiJr?J0QZu}rQu1KJ z1fK|FT3~`Ow?iDY^kJmVs|rII@NZonEQ2$Ns!oct?C&^;`^Ifj#K}TSHG8jo&J{wT zvM*3-xqB&|fT~oo=_O3cUl}9z{~kCm3zlf4lqeE@;7sjNvhV$4i~5}d#4p5ec>QQv zWw#?o^a7O%k}3(aoC2FURo+Zn;XMmgSZrK7#O+#n;=~94tnII9lu`fL0dj&AokX)t zDM3vXL~xGIGHu}mKn<$StD1+kVSv1rI1FzNnOil4xU$Cxk|qm!=YgglPWleXg@+!n zPG^eH9ky^b9H^4)uV2Tx@tLZbm>9XHMh0aqhAkPg6Y)hNg(3|&F6Z>qb2uIh=a_y8 zZJ~mr6ITAzJo08>VdnNH0jE@kyhMJ^QS4BMdfq03No5dt&htgs{oLA%a6;7~_piPX zaZ?{NY@s`ZPP8yoIfBPWQj^zc0wOi&bkLezFW`k`7Koqd2ug(=2ldZq);$V^it`mM zL3+b-_8yGcgk<`p8-_Ab!1$M;^SFKy%e06=PxV0?PP1JxA!ib41A#0M8J=Yzvd4Uw zl3ZZAnzj>|(Z>af>;@xjb;k=zh%RTr*8n#IPHA!OpT$OPLN#Kt2rDXg#ULb!XbiqM z4SUBDs=zB8d&ji8(`g+&Z`&kb!pguzzunqzO&j(0r|*EHjsnRPC)po=m(|H6Iby~* zaC74ZRd?E9cV___AYbAa@O=OZpR#jlq^oAiX_B*NT343d(UB2Ur^ncvF><@J_kr2a z>H5Y<$%mjmJYv`AtOLloSW=UYc@vdKbn7o-MVBokeo|usZ1fXPcOx&saMpc-9?38{ z-KG<6*OaoX&SCcq@IwZvw-}Pe!%u9u>+AJz^^64RUpE^d;gYf=#yFn(;OY)80?NzY`wZo~?gx*P zPO6k0i}Esn@0ldXC$1jF*w-{1=Ogym8S{qX_$}!xbMZb< zjp@rp?)Il;HB<1o8KkSbsoHY19juoJ+ zER=^MYnKCw(BcF>?k~qHEoPMes1Ad|sN?tBHV-al}?IsYBQ?>c4-ZPOmD@Nq?y%GX8f?7~x%_~*`Y&;7WBQBMBpBjB>c)>NSMF z{UUyV9~%v>W{f+X&$f!x(qc&nB^hzpBgF?Kq-!fPJ8n*BV~4j4t%DtAqH5z>IWtV%0gmA{S^d6%DCj?Im5c)qrs`!rcSh~jLm;1N1OqSsOd$x~6 zYE@(t8WgqW#d$>}pAK+HxGgKoLH;jAZi{dTlh137lzCnNv-A({ZxFWA37q<{AN>Mn z6zU4N)G@#r*8GO!S7&fQM){olV=H?}UU^x~oTN+}Pk1mb*5ny%FDcq@3*!})$K852 zm+zDx(2Hj`f&bzzO$wnpfH);v5`d7fI}Vc&n+Kb+L;8JH}-{#OTnm19)6DXM$qEbXIwFCigZTm^oYF5`lxXdn;FqB zaB(!KENSd?e@KSc7~#b~g2I}4fn3-+NV0Aadjv$?{WpZhVXPLbiU#v+G;73dg=7QM z)jR)ay4`qV003!`{n72uqqTFvwn1FT2+*CUVfLO*2&^}Mn{s{p)idM{ac8^?6O*y+ zdYc;>OW`*s{FhT)f#0>=3}lm5!0a@JRfN1; zSv8z=yB(IJb|k3HmOvCS4;jaX)Q+557q&wrTB-K9_^ah+j8tFE-s0nEso;zqCpPCs zEaxR{zWw@oGGcdVAr$(sF4z70mGa!9p=AC1I=DY|F-3ZAsXW#J0a5LkW6GS6++;N= zmU#^+#`K$$%70nq`PV0vfsE$IqCcWus@T~%-t~XX=sDqQf?INEbN#9Rc^%IJf{JvP z1Urvl*;^#Zzu)P(Q`>Lw+E&v1VO;$;7)wa$RVL3N&j0Y9MYv}bIK1>&7j-{^i#AmB z`pTWMfw;`Cs{HkB)D|8}b=xtp^EUzeM%A`ZZFk|cq1zB+@c}1s0zUY(TH|JpVcWA} zp}h2pW)fj>t{ipmAEk12klk|vg z2%Fc{E{;zZ%#od<8*>czHA3vA+ZI>B6uTnXaW7CXxg|Nx&(^Ugwh!_*C5;rOA!xVy zfp!&K(iGVQe&NeS0k8B@qv+lKtuBM@MSD6Ne76CUg8x`CF-&e*v^o%gua9g@hi^=K z_@)~N#r)2Cyv?%z{Od>HkWPu9*`-D}zQz8t``ffFmMZ2ZZdIESY3bKD$ZyJ+=MeW0!1lX}UPdgqthlr8e|EvLOD7 z4vdMugRi4M;Nib|ZuqJ(nYc2SfIYv zJoD^E1F?roJWQWyX=x@lPnP}RRxcI;id~M)0Zw{)a%AqYKorD z!J&GM9Nh?+j)JEr<%bkkXIH%qFFj}zEW}30xtN%f5=b5hCZ;=N7Jr|>#XthG<>n8X zc`Bt{%`;qzpf1W5u@8~yl8lRP(Ca;^fc&9xG;27~ZV4^JM_YR_QI{bc>Nrn%dw7UB zrE(pS<7<9Kpt>vm+0EDC`)7dB5vJ~%Q2bk+tFIidY~jyTb(LA8NZ}#3V8mmzm6!QR z9RdISZP$22bzf1Bk#0&_EsL7-fGI@IKMRhVm`$23=h^zua4{?I@n5p%WWF_Nqn9CUc@2Betjs9hBl)T58}e$iz{BAU^#S)w-0RQ5Y0#*bq=#>Q;E;03 z`y9&I=Qq1yg;kJo#qonxQb0pFyj#Am>vjTVpk7zBpIYKKE$6-#<~Z!zrjn7;1bQf{<$Krs6^&laDz)Ia(Y04 zUYkt(n^5W}TkO75pLFbn=xSk}`_HpQdEsVmB9;k`bR2H87n?L_!P2_1xR@)ywuZYm0wKY)C7MiRHcxLJ1p;1}UsJ z5OwDD$Jx38%L{xI!k)*%e?B>%PQO;L19rF3FeFa{*O$6O*Kywwd2}#mfs-f8)JERd zh>8a%M!)W85Z+2PFq>{L%g3tc) zRDw6{{uP9Ra09>z0^!EABHw#wiq&t9ZHr*#6`KGL^-2HQx(b0UPWA*HX2>chBUWDuo#Smx z)2+i4cs~@W;nCqc29cACg>m2aCMrhT!2}EUN6fGTBz|SB7Iog|ep?82zXtvc0mm|j zCzaMAPPecNT#~G26xSjHK-@PA%x2~=!NvSa#H|^rdwRoqzH>;h*6e@aWXpP8(2W53 z^_R0sU=8+=t|;V%Gy%!xp$rsv<8O3vm2-Y`8E3961s{J}A$@0I)x$R(@~H74pkK=v zX}XPsxPjQjSFqL`jNTLt64lCdWp(fdNv3w-AG#)?wF-DgG~#^Bw^7ajFii#=au!!n zgfSC1(fKhJ?*K-r4VkdnLqvrdHbxZ_C4wqa62Q2$E(mFrwMO5VC9Tg}{p-ZV_4+&x z%`bv>B+<_-)rDsu#QTAu?enX*GW-sUD@j#>v5w+)(^;#@y*zFyW>fQ?zd|<%Lfh$T zx8>Nqa#6A8ZT50{8@j0h=st?!@^`|JZT2-uXR+}Qj9ge+ZiuFBV=MDfdz;C~@jN>BGQdDY?=dLAwVBxm4l(?~QXT_(0jbg3MWT3Tg?v z^5K7;fBc(jOll#RD8V@0vsE*(_S@ZlK8BsC6fhYS_Hh(eIQQ;_fL8ZK<+`@&Ip-m< zl=J@5unffU6%nXQ@lWP(`^$+hr$!IS6YR6^VXwKx3GA>N8adFrBGosx777iFeRUD< zkraeHT=%{(=3cvfc2Kp#zv;DxR9EU>XHT}5It{pAxaryF;?dkg()t(e@x=mc$VnUu==ZP~r9}!|WGA)NGlhnR$d}6i(JVs- z!jzDLj;er3t`VZFNvxr45lda~u|=&6vdPJm{KMygh}2#U;I2;=jwFPH%#&fT!4g@H zCJ&71yjwaliQ!UdJoDY9jhlx*E%V*yu0MfHYc5oP@`qFYJ7Xi`nC>#@BBE8KoNN*7 z8Sy_DT8h3$Z?>ocM5i=zrDf-rssM0cwUKw3(Sv6hCrU$7%$g(XRGG0jRz)bjRGLb@ zZfl@Dq7qX(5Q17WkO**qB`9T*t(@9NG<2x3(H~d#k1*!&o?HE8i^UWkD%Pa?%F!A3|Dwf5Q4%pik2*htd7?f z>VAj-J%kB5B~si5z(wK^=`iHAu zOIIli4_cdYpKB6!vUlTx44%Op1akxnzS|U87zRKDepPjRkMB9It{wOv2hheLKLj&W z1SF}br=>i?UQnHcpv<$;3Dep24ypxG9{-x}s$mN{X`|sWyN4*VEt6n=Kg&WLa$e?yYY zwhf6U!uM@BDJ3Bi?yD}Iuw*REt-n6093~wSD@x<|i<7xVuAZB#ZVNolID!;)|-*ZdFVWGl;IP)YN{1D&>oM6_~=Wm&44F?+a-{3B;oS*7Y^uj-C^oL zTSt}ums<-Zxn&)Mm{AxlM`j~f}GhNE~Z9ct>)Blm6K8?YWd zp%I-nB@=uWJgDX=r<#V?WHqrVThx{$&1F;QAb%I>D|q)j`dr~PszCl8(gVK6O1+ZZ z2(e1-^#@hK`HvK2d>)$Hm+|3bio?`BPx(MYEm&YJPfS0jsGL>cXc#^gR~?SHTvAAj zl12zA<-FZtBRW@7IdXl`{4J3|>Wb}lrJ%4%f+O+5$`K61;1DO4R1?dJP??$wOp(^n zn1Utz_rr;DU7}rdheH|gV{E8&emwdo)t|y@-wtmYs7bCqjK!gvjY>XzU{{$)rP}N^ zjU1)F^R)+DF>b&AUm;@12jEN*PzS)JwDSS}r8KJpT0j$8Y%~B5un;hxNOk}F%U%-j zKMoSO1Op0~lwc!JjFd4+z&{`}3oF)xn%+#m zhKjP86|5Nz)}x@Y#fUe=08uFF?*gUM$Pb0{QVzn9f&QDNLFX#UG#@w#7x_4jlJEHh zKfE6YTblI^Nt)aVoF!=uE)&Ypp3gT2Y_ei;8+L2G*6w1k9|;LHUGv438T-|0RMe4* z6-{>?@UTrZAJr_&VI}qyqbRQ!xVYg$SoL3KNo+_A&r4prq-M(~ zi`o@42)=w+dO+Z-7v8iwoD(d|^WoPe`mh2muqpu6_du;(ms+PP{G)sj;x2H3a|D8X zx?IymigCjunrSmK0iu4Pg7lMNW2xNwobuC1QG__jUdD7nid0G3m6+4RFQaZlzc)GEZt~^N z2RDsja~g1yEZGnriSfe-_aqgjnohoMVCSDUPTn_10}?|vl$x~LcKMNp2t#Uz^qx zS7W&Y-(1_8cE{3qH<^V?*`mNK{^-@{$i}be(Q!3c1>>e>gmtOfu(z!(-rx+>10;iq zCaKev+X=~{FIV$EhZ?{JX^Sy*4^KXc-NGS?BhMPVVd^|tW8ub~XDt@N&^BJJfvq?l z5fw4(n~(lBk`@{D9WRBSW}c!CaIc{G!g_I@*MtN~w0AyLsyWKw!4iKvIxm4-ru}YI zuZ~LUZv<8~4SWH5w&rm^NwsI5-@Dn*Uvto~8@8j~Goos|)5ZwR7+ z(k1q8=l|$Wqi00zRqrDnUwRj>`wV>%Rwhq8YzqhIseKH#2WTBrTU&S@AeQG}Lp+wh zL+5i*nrd3PA}P8-tY()i`zi?08MmPJFBppg0qLTOOYdD-Ohq-BgxaDKSC?>s$;$41 z%_vt<#&di!D^=A5P;qc_nz`Uz!!Ojd9K7RnoYxj>?$;9h_m1Syyz5o%S9Xf!)9CD* zcBLVL)R_;>wICpbx_&B9HZ4Jk%mK;?O%{TJh{XXicsP7t%g|G1wrxqDMN!^BX9PKZ_QeVg3c

      %6YhMo+(ug9TUMasTjD31Jv-!`)DAr1v$|3EL8k2v)v+B&)nb`*Siwu>Z2& zk~PI~f+DtaI>a?Q;w;ne2)IQoJk$v!n0Ov*lGUCB>kdVKJ* zF!4hI#>>FoT=4U6`uKdDf#>x(&}dK_^5X3U+sC?})S3A?s}YSV;T`s)3Q>%R)`I6t z*!$4*#5LL_dlZ4AcKlrf8L&@v3;1T{VZs0QDF{NJ6f8v)-+DM6SXDFkGZ~OBEe_g6 zGcss=XJV&HGoUwdiE(p@(Rs5czP17v5<9#4 z8(@!2cP6T9aXq%oc4&8u0Qf{;YNsH4UfR!zCLe?IBuW*gL+Xv#Td9yb9c!wtHPh>Th|1g0C1Q$x{FR8X;RJPpa4&@-RdqwI}V zRPyIBeiEACQ_Rs_FiG-24pY&5db3hV;pJ@|0DD}AS560RAzKj_z}k)lhQ+g;*2V<~ z>hRnk-~*}-){Gz8N^sH^LBSF)IE4x|*IlRD^zY>AhVxrl>%$V35I&MjutNxd^+~bd zAd%>ve*^|2g=Uf|IfU|Z+k~jPaIqnmy=)pgLXKFCYaB2nProX)xBlMtkEu8IS$dnH zbQ}f*ft;v_S;ii+hJ9+q&n@#bF)Y<>^&StXBx*{%tR-I8tPb3$+!>&U6X8#hBMM`p z_fxL~-Sx{G3iSsbRo9FifQW1ZA#&~eab9Oq0+YBDH6TaFoxX1O-*NPQf>A_DRJj~v zU8(iA2}<@XxrLHegbIgblEu)@lbmF?AqDy1gruyoR!_P;&nM92=|mQaO~VZ+{rl~) z#HGd54N>Jt;xf_$0;L8k4Tvbplv42NW>y>A$e?SUCZV8}fA#k=M8np(qV<`~;S-e#y~viUOuU0^66v_UxrLOdt%-`0>5)uZ0%1z)j^k39RM4)_Ct3rs z$ExxpY9s!2`Oti{&n@4xlvu=$LX*WWejpiZ1!qc?!XCL1HS8a~mFl*mIYx2OiP`@l zN0)3ZO5*>S?lP>{b2iHZ;s^a)CYMO*6(wd$#~?XTJHB+V5xUpZ z_lhpS7Rrvvia<&sClJ!{Vy0h&`+KC-7~0?-__YXnudFRux>|KEPOf@U=A|WJu7#Q1wCo)!*neC_@gSLfaV+5iEB)0aJ{N;yIRM7I+%&@?!Hop+?H}T1Zofr(e*8AOXjEFig)Mz@-OB6#-h%h~i&HUvI$y z^zP`QYC{$%0FEGz*dWom5*5&1E5vLb%8|?*R2%^~wMtf9|b-K`ip@^=b7@^#jz3}l_Dq<@Zz_QbcZ zkVVZ8ce>uM$D!<8(p+O-=HEBKVO#D+`S(`D(ug(Z;`+3!6)gz`m!1hl()ed|%`AY)2`0$dNmW z!(h~}&EJX8g|12IBNOUaFoapTlK6mviY??S-?s0;SA#3$d@IuL$i}zltv~sRRb&V> z6%)@EbU6%ghm+LQlXKm=H}Czvp0Z~T2s5MH4%a!oQre|kmVTK-Hm~Gpg2wfTIB7DQ2o(fj*Ah zR+Q-d;(7?eSWa8e#OzlFx3DDuBeFW{DeX&aa_d#mdr|J_n79Q&=SjcvV3N`tisR&n z2?fGi?j=;PPMO1IgDyMohM}^aM2Z|sfDNupVgEmc(37B|lv|a`RCY-w*o4du_`q{Q zpn_Oha-Pl(%(#E3{JJ9G=rC!hvwk_>&N9^BpgPA+>E70%(O**tTSZiOB?Fd~k#Mg0 z`ni=s-okHCU!;xg_n%5&)TPYT_y9s0z9n-k7*EPZZ;#(_aa_|IvnQ)7Ns zBglD3^=51UU{u`lq}TEYDZp+IY877)FOfaTNv<&%x8k~|X^A|~5vk>bnyvnW=) z#sM&V)_f$9$H6dA-tx}K=uW^5O0Uw<>1->{ja8>;OR0$9Wu@1ntIhFYLefn( zy5@;Cn|7SbT*FJcTY5Ou^HZ&JmQimq-Ti{-MGw4r5807`-aGpgW;-*Xd-CaN)KD?fVwIRjD1SYOYbPNg+4c9&x zg*B~aVGowdKXnKD3D}}u;N-xeAX^jI3U?}oD0Vef<&+wp4)Z-cZ5+MsPFo|J4PI*; zSgBS6+zT`&;9kH^UN)d~{w_@AwIK>L~Ma5 ztx_2xKlBByWg}X?!Ps22<%(91R{gkWjvf{kD-G1Qh0W{(UV({ytz^PM6;nb9-SnkK zc=q*AXi;4_d0_a!&Yqu>y}%r3c0OTfVyh!W=B8ox_9=WU4j0OP9#Z<}S&i)`TJ%ey z+YGK2rtx;e?%vu|5;~BJ^#)wTTm#{YoBSA!l>>&=J|WcNkQ>jqd!Y9&t9ex@aXK4< z>Ncm_ouhO2#ky}>}Gpop{39~_Hd!KA| zC$lDk5Vfh2gp9at>1>i{A8$#dOjP>7lYmYH<7D=60P`y3)D{o|XK_XJ~4*1pO zGlf_gGWtp?5B4=g8KbZjl&~Fvcx=FD>CpU>-y=SA=LG&Sa#_7I%nk%iV4PBbwO+{s zPQ>(aBb!O9MT9v_t#NVUjbfhJ$I|oH<%2ZNH#NYga+Q)sBs^4?{Z0+lOljXEG`Q(G z4mGGiCjq-nc6nmNURNrr#GbPnO+^~M?{E$-+_$cfX4wZQwS=rvDo z$h?1sF$Sy_h3ox0@nDU~wUB@`(Z*PIiQIJ60v^Gx$~;!iTe^aplCb{snpiW9Zs@(_ z1aM+vwfC5Y^Fnr{`D`S-n0ytFy`W><6ETuXbEwMRUossP zvW%*@dZB`NERjkOhn6m!Aci&Z+>C0~S}jG$GPhQi3;8x7xg)OXm%-6Pzof&n9$x*` z0zc{~E{$avK)V50GR|wK{w*;YI)FNGzNH|Wh!1ULk5wT>BC_ZGyo`8Me5JrpkfkOz zULd)uEi@q(#q>V>5+0H?OY-L1PwM;)RX^EO>INw?>{y)g&@d=QzCEg#d6ezSF*a_n zoZVOxGP3iIBLNhaj-tQA%~abMi`{Yz2H!Nr&X7j+m4Xa0ok$ehid=2Cj?C1?@IFjS zC?LnWOKYX>faofmh?!KZcje4lB#o>i7D#nS0MbuX6c<>tqog=?=8A4F4%H$s$J`hk zW3LpWU~|4}uA446K3`alZpQe`p5@wCH=o%9;Tx|R%Br8ZTtDKgT25h}0;1Cv+1-LZ zh3#nsy10G0FD*zpLJW0n3{4ycMJ7HPb(F7cyWY_;eurELdJMFP1#TdQdEFxa1_H%3 zUoEF`Iqx9Mv?P!u_zfsMNI#!bl0PWiM6S)D|egt7P2+g)Bt+=Ogx4z)Jgf$UUuoCeEAQm6p#g#Py zh))ncV}492PP*XyJ5#)r1QJ>T91~9e-G%n=kG(ws(GCS^ek@w-?%)iRG6&r51wNey zQMbS8LFoA?pMb&%udyJ4W{&`r&-HceVpNOi1OcHt<%=Q z%tRnY*FfU^AG9A8)V5|N2zQ1()BKUw-YC9xB0e%LcLES#-gm609*Jq1!Mw{4Ep)X* z-ilLJAOCh4&H~*(nMKQtx#v~pP$F@Z4JW`C_jRXSw$j#Pzo8j3(EWP4mAJP2AfbAN z_t)Ef6-Z{-Jybp-)x632kb%Ch%UU$U>Pn?uc2pi01 zjW(z87tCz4Pm7K`a6qOp@9$17DwUzx8!u?9Z!v*c?+n>sF~%TcWdE%VRsa>FHp1V< z9)-Ac*b50V09dj3m|GzpUia492B0Lv8ZD1aSkXUk+101gHsmyLm?|+sD zz@=pQ{f9k0Qvh{9qqm%=9W2Az@P{Fj#2S`{vzpP`>y#8lRCmuXo$WHx2r%3_%Cm)X zdi#-S`m2%-B@8z2hPJBkc8jDq^1Jru0YKzonX9>F=BF%{OZ9c=M6+p~^U}P8sw=l{ z*X*tG4o=$F5V<)u5k0jTmImyF2)6qZs}EW%eyH<~0pl~UJJtub3+4cwV}$x=5Urw^ zT(+;0l8>#qhyE|8UBN{+dA}fgmfF?LjI;2>l4~1(;yIXS*^2*oN&O&I1gW!Cq3HyT z0qQZ1#%+e0?do(_y2X~9OLI|cUbico1*J9#ZyFl)>YUS2pQUTqVZU5HT2QX{80*Ec zsMJr zx1e3Z3}H$ex8-#^&k+3f`@B*DG~%#8f)ydp%`hA2W+?OSIw-_K%`4jc`bO14HFr@b z!ihl!TP4zMFkJRKWejamz@CD%$fo0Lw#hku(Zm*U(*Nu{bj<#CQtljL-qJlSu-~&% zs?i+Lv>N@lSl1C=k-(?p-@`pSr}H>^v1-x+$MXSZPriM>?__LX03y`fr^Ie3h3qTn zF!B^I{fVIPWgqA`+T%GZfSz-)9_voGklmDoi&F4jSZ#!WuA(V=EI zC`^^f!x&S*D1;3%Z5|u{#o!7wgt(+1GBW{afoP5L2hG$YGb2bfo&2Dl&Xn43RLS(L zj(w`p70s8|*?8a|89Hkv>neL0yc)k^{Px&=8uSxuHoDT08$>E!F@pg#AOa^HFWIm^ z=vQ$%VQ-|Mo6f)~4_Z{@W$r?$Fm;Qi5v1Kq{1U9qUnfS1V|4sah4ZTGQdgo8o9A}m z(L3beN%1xsp(z#QgnbRrKeA3a;OQu={a+MqrB3RHbg{2aLZH0#GDT7$7gloAiV+>Q zzohOgcC!nl?6kkFSxV0BCsWX*%0ewOD7)3@K2dLIaw#}+|8zu^mFaw4yBvihgtB)< zaKS~eIfk3Av(}ei!Pmgo0Dj+8#>j-{?qY<$se9^1%nT?Hh^{B1lv8(Fi;9iDF4o&5*MFmEAPvf`e+}B-&pJl^hmqVHrsKMc=1QLtk7XHa(GJCeLFFV5g5-u7oq%dqhnZAb0k91pML}K zG?+pctgAUwcI-nE%UvxiIM~F%H3p$XG?N!|ksXV7)K##czw$jz&`rZ$lH|6PMpu(g zG(r8n{B)%`B=8+uC}kZA%iyYk)`50|Am)*TS7BnP1_eboZL9))uG6t_kfQx{_& zZ}g!kkLhzK=&<}NhGodhfn5+(V zsK_Qou>~`2UV3)L6{$`3W8If*I=SZ5ZagWM^lp=rBTxwxXbIt~&eE4rqHJldg3Kj(aR8TS^;tOmvd7!3~s-W{%eMqx!ZR zkE{jf%b)+FC+t)!1#XI_A&S#x)No`%C}-A?z)K@(Q}OP3*zlCAe#F zcXxLS?hpvB8+W${0wK7&1_Gp;^a5 zgMZKsFxST9j*tGNt>K&sX(Usp#OL+r2!N96gHG&K7RW~byP@7uuVTpBx%>)`SdsOB z#wkHMW^O;Z|EdeqygTKtrpqS7iS2u$qC3O%=qSI(YTrUBZu1gxsplN}m~CSN+2YmwI$Uy<&Q23Y#{9l=9CD zzWe!hbOL^l^1gxrJJGK|u+`kCZi^_Ic{4X6$pfKg~y^#_&i}-epAr| z+j=(F81~19cD?q``T}F;8haz)h<@=vI=LfL-%to%UMQkdHpHR19xK*m#chKxV$b%6S4vU%$4I8zqWqGh4rVWIHrx8G|n zh)0O=>UW%uvZqLn@I=cN>?Vll>(|b3;}s7i?bj)QbY=s_4Gb1L1h4qj38#>0x8N}{ z2Pm2bK{QP$NN(^H8zci5R13la6cSds(K{b>;5#H?7Yw8FjgRP; z$DK49#RB;|+>j*gr@4vru<1sPKVBxB=?v;R#8h??Ir_eCXrkBAAua^H2*O_AwV(+` zQfd$OnBnwGq0?4k_w2l1TpBHo9|)pZ8dQLn1?7@2&zb#6Mf`ih;7P5dFbU~xUyMUU zF<2siDhF#aTgD2v7;C{-BWBB0X!Go$GI;Z(iFdtMj~8^fI+LjG)xQu7s0aBLAjn@` zAD2h(W29cTIpJN$dYECpRFXDa{&1R6B_0Jn`ov$w&5BT%QRyn-B+R&?he+r@E#*up z`jby#xEix7JL5J4N7$I^O*Q>ydTaW{Z$u;onQ0vr!3tA@;q_Ul=tOESP$?crFXE7R}{u_nA|cvkkfWZ7AnUd#Lr3ImPJqJ4Di3| zfjIDSd6VBs11$ogwiSL&p^2c!LF8PfYl%PvRBEwdsLJ;GY;56ZfhtK|BQnJhkceYQ zI7C1dqmY_fVrt;HKcMCPr@mjIZaOpD1$8qr>JPDBx>d#V1`fnVf_E_CVzFISWmGrk z;AgKhXNfWWyM@xfJ@WZIt}QDC%g6dv0IIPYhh1e8Ql`6XK7DvzRZ-r_56T~(wyuLS zSPMsgwzdrpgjCoXuKVtHrn-!kqz%1*Ip416to)*bq4I=6%kQSLM&-XwJ2Cu&UfeNH zfol$$^`&y@`y69?&7WU2J*se*UBQ_z|H=z zrw@;~(J-C>d#hW{x2~G>O~D%w6zwos6NOs%g)$^S4L^h^W)@pl^X^kPVc}CB1Rsfu z8}s+=8K=Mp((bnCQ7m-xw<(^Z%LLY->!Q&0lI=4*Y-GQC!B%r(E}~RaQbqKT(}e#9s|d6GrKLNyR;7lKthsZHhAE3Gd#^W*%C_`dsU1}O(SMhw zd3Q%%car1Y$Q$El9jsn2<337THx~O2rLZmid1PHxpO6Iv6kC!Kq; z&)4yA&b29y$7hGF!+#siL+|*4qCP#}g2T$}|51wFhT*B-Wj?2@g@P~!wp%q7gBUo1 z1ZDr2W-V%IY^8eR(x1FRR{FD!gwh`ee1sF&~B5K@D76d}C8zn!H-o zDz+nBM&B>tVe$X!jx8!~SCD4^g>PHBI_>1>*RiQ^nf^E0~u6d!~_G{ zfD|;|P?=a0z`3K=Jd^vu`u(Si*=PFv66>It^2y){Z?sME5@$vU%)ShP^1BPU4@UCe zkWbSP@=<6pKi{Dhl`a02L6^#Z<~Ruih5w&_G^|G;7$`1waMBKWVaS<8NK{-Rc3pKjvw$Uz!XL zD=%Gx#vBR$UUD=rew_zG|6E^a^BTkjx%h1b;>3y;|35gPXaZ4yYt2DOP~5CwQ(F)d zIIZd5>tm{apK$7d03L4!3F2{c{|~Gv=&7kmDzuQbfJ~twS^wb&8=UFM7vC&6W*m zrI;*P#;O&2=JN7-c@=@mIC&EsRQ)&%^uQ3!(*shH`H(b5eU$}|%g;y@*hSy<3-^{i zUG92Ed#80$VLj_vPrUdrM{E;&{)XDGrom8lN|T>uGM;y%`Z6x!CwlGJa?k;B=`T;Q zV8Ix#hvfKo zK4YS>ZPx41(q@>tI5!(_Z@U6k!k0kXSju0R&~rlZPmSBx5EL#i{kwtW2ThvGk%=!A z8xN%`md72j^stH@=o!LDvKO~lcf3_;x|M=Yu{_mWA!L`|;@&AW6m6nK);I(mQjIlX-k zZilOvLHDhdK0c&-j}RM3=;hqE6uE?!9GMNe$j*Mf9l6AC@fcB+_QO^fpNDkiGO6yL z%@=JvA>)UOMxBOf&2RT85{a6FBr{by0Q=eY*ey%2g0(&XX3j@obZfmep_j72(S zxXY_U1dT*_uD;`O^`C599Ut{%HMtwlCg|)?>a;ibW%UsfbjG*a+m2#h_|^8uc&CO_ zgTLp%6ms%}tIVdyxK%u1`4ElVg4K!|hAf`Pxlr zbCY*FTMagloxG@&8I(z4S{hoqH*WzlI&E;P3sNT3jIq#`$TQEMBA6lm3i{>1 z$O{nwvBfeSefgW75>*^9Tr6xd(c;qTd3d~=rMI~yVQhk4wa^)O);ufbs6|fBIJUmj!#hK4k>?JQpi?XZa@OsU|z0G0` z(jIv&ra9TY1p|DE^BopSalnQyQh&ILWxVdH$aVE;4Q&R6$O=C|!PQq}KtkK;ni9*7`4^_Jy$f__nP*sqkm}F2m zpeic?FHhH5_&WHV#-D3k;^MMXe&#=czqTTsF|17NxXZdMf>W zs$w0NW6Gr}TGZJ+AJ+!}@3R7R`o(AY;}E2{NBwGymLpDrHV6FJ;T(ZPVg`#m`KhKB zd5|W{SlMf*d^m_u;$&|5jru2v(Vnp@Qd5738FFh`zKnFH0}rTf9s8$Jg{0?NM|{cE z61Sq;Z0A|gqZL1G+iu~DMBhlU!^MCdDX8MGU`rLP`lJATMyC{bHw}vh*+#_oD4(fo&Ako_Br zQn!dNX>d&C7vCscykcFI&}?aM=f`!8Roo^W03wY-bnZX8si+r3_y0egM~421M$;n@ zGnlpyBm{7Au>SYSoNeHmFN;02`Ji!$Uy)8iXv2~aX|v>92Vu?A-jqgBY%Ly_UtwXF ztnh~RGjecaE))dc=_F`uvlQCkm@;J8rbMZvA5 zcZ(>J;vsliS`s|tUe9Y=)N*YA!X=(yk1grnulqzi%0&4-H<)OIfJ~RaodoKrX!4Ey z)eQj2XS@*9{42XwpWKCTD$Q@;8>FOYx`+1g2@ayFma?uNJfWcG_O;ZSHyj$^kt6b} zu;TR1Aqu?;L)^c!bp??^bJ#Js4N)^}mm0ote~^e;pve%U%c39xA*T~SW~;N7g*BTl zo(EkXgJG=opspFMjp(+Spp1+v?MU|4IC~ACYUv=3WV`W3uPb%Pxuvy&Zrj*oX)|hg zV8zL*%S7lAyLlJ z&~-=&-~(n}X*HM0m=l1;p{F$T*RN++Gsqc@%EXbSZSMMjuGQyy{|oY1sMQnn$~=gm zawDqK7G$@^vb;l-KXpQ5H%LfSXCZj9x9HGgTogCypjHMkr!f?XF1!p}j^315)>E!N zgE5z3=<-zX!+hl>!#4!m0QST$j9j3Z;1>r_-dU4BY&_y8KM7#sL3eF6%C|9mv1z1U zH~Bi`!M99qQ4<+6_U}gNaoV>rN)qHpTW+F6sKiQW9AZUgceTx7`bgG>?J`A z898Hv*0N;oS8l*e85dbpYTM#WnbPJ_tMM?!-=w4z8i6~RK5}J_cML#DT^n~gLT=Wx z9qr&EV9JcZ8W_y0V8vs)sPrucwC1}c^%cekNNGGt)7y{Enod@Y`~5z=HaBx)&)fg- zs_;ypObIe`L67~SjG@(nxwa+0GuvT;RFD+SM~QO=YXifAt^FxdZSvm)yY<-Rp8(@a zi$Pifl7+)Huc>&bij%blRuA6TX+4c+Viop)$cBul_|^OZWiHNnemaZBQ?gj(o9fy_ zE3OAyt_KbFI8wNbO&BSthGN4A5V-a3^`#s!&S+G03a_Fv#2oxcKazaQDDp{YTYU24 zGXBf=D1d2^b;L|M^(JZM=1%8?qA6+Cn_`N=n_n3({vBm<@CplSs$AEuCYLc?CB@F+ z`)#SMI=}B5Tl@{I3i}e4v7Tv@oJl_7K?RQ31i^v*ipBHy1}zBvc-0oA3QL)=aq`wd z-N~tzB|B7N*4@P)wE{V$x^v@s3FyS-oDqj)4}jn-hvCT<0c1Ugc!0F(#td_Hn2wvk zOYlfN-nz@{0SP5-BYoZk$gq{0dK&*5?WON}BIsZiszK9f-lp!jd9D0simkSwnz|f) zMb&v*L8{vFeHF2E@v2$o<*=eG+VVqwx90@kZ@>A0n~6(yu7T#WTAzG7A+;zcn-5zp zAz)=*HF1e#uIOM0vHAwv(EB^7lGUqMaEaG7@y)JUvK98a==Kf`o@ZN-eA;Ibr2w;o zNF2^nW*H`AGbW|f5`@fjCyRFNRW!p8>MT{DY4S45A4rivBapKRu zMU6Y9$kR$@b>3^m<-K*CX`whB&>X5STtnDCITn8P$7a8Hi^a*qsEZ~kn8?os-#a*7Fmk z83T|xnqZ?>Z@z&sB&gq3jT0_CL^0_q3ng1=F3Up5WNc9MY;SI?7CG?B$@RI+~Bv}{& z`TR4KaJ07b|FDs@QluPC2 zJ}LjQx=0fW!Hr%X7;cxNt{Oig)Jgi+_)Cd}XdfMl!p)dUQOiV@rxgN0VnOnas<;P& z>9E{L*@tnpatV$}eLcWK@c4xR!rZX>gRz5~7WyIvF9ulU-nW!g+gJJfm*+wi0V6Uh z8!_^WD77eW*h8OZAgRsMW^-wVHEPF(1bZ)DBn%mg=VwNU6BGclRQ zQ!7$0)cj8{Diakt&heY_I}nAulB}GV)C9(v=8p$`o*<_Hvx=W|#kJ-< zJ}|q^TOyAe5HRnOzn+u|TOsKee#Ieyw8REXrvBvoZ0IfR|1t!XAOktpo$xyVQ@RuO zlLe-%a)k1BlQllDlP^9KmM90nNWYtGDRqaC+JrV#olWnEGfV3EhZe5ERds@YZIL@i z@X&THM!6~!1ry{i1xAj`G(FV!+#7Y=*c(|g8Gbcf+-Xy}SYskGyUC4QIp>`}SJ5vW zK{*aq#fzziI+kwn4S5#SUw>8Y67xr`I=8*KCz>0YJ5B`(!Wu026#^}&5I0gqZ!(u( zxq7N|Wm&22Y4TR(MEHG=hUSQUa!KP$g20d4l9s)HfxrzG*+VLV9dh9?!OSiVvEpxUf=9Bas+H zQ-9ug8C+jiI!Y+NHGml6+d7M%^I);&Ms*}yj@ zrgwh$POFNm>UBr0A8+l#HErFszKbP^C!T=*S;7SK0txj(y;-2An=~-?fj0V~msET2 z;;H+x^jm90S&f>pk-O{EIBPQCbQ6vw5{oCw9Rss#G@gNr6I1pNv0;1$P2M4RT-Z&om*dsD!F%{^~Y94X02XHQQ<38OA7+C7=CndoWFn^o9pm zKGdp%wn=fCt`Nm6jOOnjlJcFJ#fPVy6ig9fkRh4o{aZF4ibq~m9vcSDhF`XN;3K)dZ544#lz-R+dt1 zyX(RlZ&7bx5|=5gFZ=TFwa6a1VcVh3><|d6v#^4XB7t4siFH{!5b`~mh8F7l= zXei2fnuLx(1<=I0|6)}!4rCg_3QWGmm~4C`qte0?9u>?Hc|H?_r8HKi(a%nf@#*BC-Q0#-Vyx@1 zcF#PD(u7z=;Y;onHr0)5H5||n+-N)c_cVJGy&rdsL*afsRH1pdfbWH4z22pY?L0Vq z&25mulIWcr7EK%Yn|yDno*V)c8G4FTD@%rq2z)MR@YV3kI#~YJIV@oA;wZzUEOTr5 z#N)gRBe;Rqy>upHN|J;}vNFp6oz{8iS2Y;TzJ$KrM`yG7<2fqV9`GjW%&jS~Yj(>9 z|4Jxw=B#Jx$Bi9L*8BC=A0v9&ss^MI4gAzEK!3OyD<5ZQ?zvfa`@s#srg*oM~;Ep^0?RQ`*Tg?bq}LFV6}g| z%8V5QqtRcRmO1;G6GjP$CsR~*>y5Ivpy*HQrQBArNAC0~NLXE(*q zj-I~E+$h>5Af^duR~nIBp-YDa@@n%v8yaER?;rYmRoY1Jp}aXmt$7)@tp*L>VL;f+ z5Ss*Kf{~ht5-9j&Hz!N!c^A7y!72`&uO|%rN}43L)!G=g7+m^6@Szy+ue{z`cAAlL zOrrQXXXCy-5|~kAK17Cp#c&y*E!+y9?Rfs3ye=v65iZn- zgQo|na@0>d>3_%sY6a-Uf*>AQSvDx|ev^3wNIcurU&*Q>DXpqN^U&TyA$A;Hj&2($<4-qNyj< z{%9NmV^W__h{{sZ>UHLBU+=x9Iz;YpOx;GL=(}&l*`nVae!3?jUP{M&fC6 zV5SM6q6s82Z;UZX!r?Y1Q{sZ#Y-P07bQG?&OU8wF#x}Zk>)Il*+!9%vi?p~3no&P zyocX0)-|`@FEEDmrr~YZLv-CJRJNS>DPI&3cuIY>YCURolSq0&)-mZQiYm5N38x7! zdzX;Sl>&hVNCH@k>3NvyM~?w(qwl?lR>JFdLOd)4YJ(D4f~5Oaqiq~$`YdRWW)CqJ z3J41aKZtsOBJ7EC)Xu;~%O=@00{1-!db{nOQ4=XOr$Bh%85%LQT7`j??_R!QfAXmmTJ#d3%+e06wFykI6rh3S=O6Ul2#}-C*OBDxGR8jE^2<| zV!f$TB!LF*rzhr%#6o|cU30)S?u0Lg5fSKPwA-8>5W9|a!r3g|Oj$Fs^+`;A_c3Wm zR#xT#m_%;q(tolK39j2s;GT!^Oz##6s13}S1?3kkX`Em$xuSu!qgu_p^&bp=whpPS zH0ddr)RN%Q`5)C7jNsK~73!UhuG`l3Oif3a9rEuJis2s`vqojWml%H0S%g<9DkYcr z72%+IQaQ#Ao@k%wrH)w( zwd5*BN3{!QChh6L=2p{(~47kyVDcO~6lviwqu z_oQp9=B@f*ggw^$Vy)&ol7(J?)^~r3f;ii#j7lWOg#j^a(TaJlJWVgxwllN-hmevc zp#FR+{oBD4lQW)TS=wLrGG>^=^k24XvD5$%8=fvMF37ZS-0D0Zv;p%KN!v zrR`})*fTm@cjL=4{jr76F5iv6Hvo);7eDy(P@QI+yPva`NhujR$zh*ee*=1+*c0nr z##AzPB&ET#=xJ5F8bc^ie^vB)!oS0Bo_lUOKAnULsUYW|}4`fW7i8uVrEs~JrKYZA= z2k@pNgzt8uR!HGKtSeY<6gcEwh-1k<O>UAjugZ?R}GDA`%U#(a5{briqtk4# zX=}{Ytb;e6fXKYW|e&XO-RpF!(1bU(aQ&KSerU#9w2fmv3Sg$x(fvWo&u-wZzr4 zk2D-G%oyRAL0mDFeuju)9Ny|dB76nYesMl%UyFb<1E6~E8=(NVhC+Wh`l*AHRU8{# zI7iT@8ED6s<$zH|!rrB+YAhZ58fshYWxlp2thOdO2Ex3lX_4w2(;oDsY6Wji9Apq#e0 z+V_<@1iq~j4@x{jLs<35(v34-^{47#Gt!@`@W61v%vG|9pUtj#NKRhaASMXjq=*rLLN;$}Z>T zUhnC+KHrSfBxf_3h%6_FFlGxA|fHcZ$hf9&a^J;CV;DV=X z1G1H0ujW>{Xk?K?2kF<~$;{j+2Kr&3=MZ>=;ZxkzwY{&_ziVwT7oOfoCT1$5HzGjz z(j5AtTkL2Is*&G8{;Y94BeY7fl{yVX2pq7L(>`|^WhgtPmNgZE>Q^j?46Gf8<*Y>2 z85tbZ&Z~VeDA2jHS`G89niwa!gQ&mO0xC#&Mzs%IE3ok(w{}mo9Pjo2-beOyTa>?z zGz@D>ir?$ruGL>5P>lUyK$bN?HF2h@(5FgOYG|^=Es5wwkFSpjXGdR=hrSY3RF~T+ zuE59Ss^rrtd%E&uV?>39X~#m+%Nuj=sEg2?n%#8c3_CqlW)@kM1n=`I)&FWN1~v*6 zJF4%9S!o+aKwf5MP1{@QQgg3i9P8Kt|hA z=W#?|M1xA!ABUiSB3I}K%$Y9W`xaHT8OUJR7#gKwzr7(tnYEPPp;?ut@>&q~MFc&E zK6qqUQ;@qz!G`{NjKe}}3#F@FnblyC6tY8>Z zOZ~1qD_yx_t|)Cb?)*+yuwhS~PJ?h&BAgtIExeZwJ1x|%A^Ec7Mp=|J!$Mep!(bu)x7Y1wPy zVR6`jV=Gd&jl_Xm>Q>L^jBBvLT7}`?HBT$lHmLI_wBUcq*56*14ht=gMpAGR(qR2j z#Id@Nzg5}YsyzLn%<2;uAY7cftvQfB&nW9iM;vA4&rw&dzTaF;=ICx&-djaF={EB4s`elr}r^{_ZV-zZhMzU?AR80u8}^w^UzyTNi#*p3#wPEwMT7J#B19vI3dc@Z}GJaqaF%lLp_`f1pj&# zz6i3$gu+x#0(9WgyU|%Eq0}QxepI+%Fh2|)Pr&b>U&gG?d(nv}-dFre2gMhs35d#i ze%ojod8v0?`%9Loe`5QaWl0jwz95Q{ERpMbz3i&LV^V!BEonR8ur9%?OXi-fhHIx; zuyMOQS@^NXV}(#sQiIq5lVF$2H4K666hKXUTIFaI0W|1OG&U|m64+Dwg$k3Gij1u} zNjodlwisaguRdmpEOpV?mYaTdh_IaV7I_xup^u-lS?2WUBB#n$F6eF18|$wZ-_&Xj zpwHdSe9p0zmpA>WaD_svn+SM-^YDjN`~!AkPc`E*`Fy5ho&Bg0_#=Y#yRP!hD%A~N zN4lGQc{yKdBEe`yX^M=`qOOg{WbFO{kh}=QhzR$`9HEmWD`UPRy~A4#QKl! z_-~2?T)GMJ0oXYC*#76X9oH3U{P2qxMmGcws{)}5WA2pV-HAQbtRvGE<6*K8LcRQ% zmTER%#eei@!S!X!#N0xp2pf8?gIeS(^9DoX`<}aJ?N3*yD>rv9c|G zKkN$Z36&))AM0>bo)U!^`4jaV_zo#PAH~!blOC9N1@rCDM+^?|x**M- z(K@~G$P{ORC`S40(1}VzCkf%I#1B(RU6q`0(33eNyG0jQKftfwUljHeI2x;CdB6Nr z`sp$cgzAYLx4LD5!lFZHlw*YN~~vtvwaZpWW#TVZ%4a!H!$xfV#vv+b%nCm}zHf%vdcM~Ra_ zjZuCo$nL zF`OvRo*sXoq3>m-!e^2u>T9#t=Fbu(cWQ=h^U0#=$nH2wiY;9L3i4Ts+8nJha}JeC zR+$z^;8XbJklO6(H=Fh86*LOt7r9u85w%lIOZ+S<@B5wYtM`TAKNcY}kJy(lo{QkF zWv%bk*Td$8gF*AI9^T>2`lALp^RbMcK#C56nG+Gme7Rzd5&Z85Ekk+yW@V;C9&~JP z9C#}iy@h8FwY?J{O(_WyUgdYE|L?yReHIXGU3~WqmB_c(X+Ofqa`#}EZX(y*eo$Y& zwWgh9sZ-lkWq*f-I$&s+ptxI_krvSQ<$?DuQcC*VNYxqRG$Va8e%-D`C;-`$2*9Zx9+zxpx&aUNdOp7u?SM`H_3vQ5YkPov&@Y9|*Ln4R=(C;q5(rS*(m8{OyQ zOh8LvQiNJbZ~lXKLik%r@8xavL_z07`O+NRpaS54P4bNV-Y1NNJX=@n$8?ldpYkUd z#@4Vye;)HN)O=aAJayQ+Y8Yd!E+>d?h9-W-Ho=%op~&ImK*;;D?!f_ zKZg@33bf%nhc;Sr!YMx5^Ys#W*{wHs$>WqYt$$w(4niy6`GqH)&vyORM}D?mPvhfQ zf{*eETJJA-g`aUlEva<>$HFehs=iRl6J&h&RkPAqCNQZeFz2+GDR8BV2=9|a2;U-x zxw5`WBkuv9-aw&8ud{=D+gj$n2(R3n6EO{W|LCIF>at({$D?0)u*-4Zn=noiS^S7} z*`1!-QYo3>s$hrWyVeWGH;Y*dzmoWfkg*k6r*hZ$j_?8Y1}*~R9bQeKu5V zTO5{!d^IF8oQ`b54K7k|6CG~syMla(_UP8whCl3cBzj8%SJN|FpjJd{7MZkd^Rs7- znfD2Ve^@*F`RIBquwIfMy!m!{f7r{)EJwuYYh78ltH_Y&x;0RhS>0s|5VfEys zCG-PZP8eWwL}9p5jk*3MV1aY(VV#gP6tu*Zr2gx$*MDVz|7D=Ih&sStK*CB%E9ol7 zws1MYRtdtSD^NUxlUDzk<)?C3XINcLMLh}imai4CR8X)IQra4lQ7xHOupTTh)e6kA z{|Tg7`xmIMCM&Ng2hLuD%>(|&Znk7!T}9hZL(|Rd&2v7HlApQrzE5O+ALLvwKBBNK zET&K5w^E*+&U7v2ux@Mh=+o8@P2>i%?A7bHq+()ZIaSiRZ6hcMrsXq(J+M!fPeoo% zftORhkL=Bh7op9EoA-@HuQqT3-xv96Q6srv?g${W76skwnJI`If`dG~t}ajU`;Y)1`1g`3R1nPD?YM085zzrHVslyk3&y38Vl;ym>OaV8O){Rp{iyz zY7!amB{?;|ybQ-buf%)#ei?)5RUn@lEn1`q3mqPWoib$tV(5bpAAqCtqzHw{&TG~z zdIYGXa#PjEK~@!fe<8SvQmHO&$fP9jamCd;2+OUWhI9c5F2Oaeuw8M+pmHl;;(gfu+8xZH<>pWObQq;wU#wM!7+qQ3vU$r7P6 z?55uEb_J=OzOSu{{Fq9*lPWS=d9X}+s6o4mHI_%DhkG8MD*-$HEkK5UI6ky_sui~6(u-)>S zFTvyI;@naG{YK-VRC%5aGWg3cpegW>{CqrymOX zrpu3w4ZmFtwKA4RW1+d%H$|KX&^teWUHI)79MN>d=s;@gvOsV#cjS!$FaYKjdG!Kd z1CD$HK}re2*3aDIc_BKb=HK}e7f%=&4<9tGB=sHA5e674q8SH_nj+D(5D_s;H~cj@q`|9@h*3dCYtM& z=IhF|VpfDc{iNMoWCi@K@C*k3J_bVPv z`Soxk9HIR73V5^;?>T#mV|QpN4U8>u_8mzV@=_K=;fuCi^<^Auy@2J375`t*i#z{B zv!VZB^~a8d+QD4W_HatU5%Y3zjb0G3zEkw$7o0d)%NIYa9HBsZxoak^Bknb7p*V)S%F!NvHI{vOdhXw7D>ASDLD_6 zPT9>yD;qrEm3M8EHQ>m{xTS`jneMeRcf+Eul&H0hCh-k+TemW@?x02Tp=pDNtA*Ot zr>)XFo^Slex0F<^-9l-$n!Jbeis0A`UuZAI0O~k?$@polfft>1AQ5UH>gwCiuUU5} zDn4bnPv31%>DcEhe)&gTyy|`lG0?p=n!vhY?k$b+QV%fdNe zm!D8rVC~(1oDf%6RZ$QJ|Jj8tfaCx>@4?alvP&?KYLa>|*MEEw(E5D0Einq|N^x*> zrtHLU(*}wVaiKBMccf$LMyn}Qd1`ZQaKz&2xTDAD?-f+K?%WQ>)&xGDHaFJ@uqZ_U zLLzeQf^!&_JTbRn++UB*P+(tiWQb`3Y%DB1%rI*Fp!QzOIb2b0Zgdj`5JWvJ`dB(( zYuTPCmX`s6CyuRP77UNT>Yn*vJOFh{m)h^eit1+~2SZrIz1<_erE$>d%#NL>L5B{59!m>Zp#~YQf%|*ty8j8r1f>Y0>~J<6nR>vE#iaZo8*VNY zJ_yMiGWePv$q&JuOLP1>q3%80?pG_&u1R+rRN|Gop`S2gqcm5RfF?E|zGzR5S(huoj8sYP)=DpmP%Es9%71!H0 zC$&yKo#(Y?QrtK#m#iaOlXqN7u_)X03JX>w{xL_V(SJBO z6FGF}_+IaGO*h3&v2QN9JEr$eQO0c#DqEgl-dp-|_KxJ_$kbjH?){{@r`y}Wt-&fk zWAvz#A-MvBmxojQn#RV_vHd?Oo=MlALO!At&-6mt${a`ukws#liZi z^h?IOtF0@q9s-W;`|Oy{di?YJ7Juce6X-)MK{{{>NNi*WMrT4b4fO+0LJC|fN}sQ7 zqb1m9zRR!NHsid=F(Krr!K5^&6Hcc}>I#da!(2@)=Q{n^tc>2DK%_j{mJvZ+ki~D) zr&M3NDqh-+MemVC!u@rJ%XAAKGI6A3D6?WePLT#4Id8Gj|$rcxdr z9x*yF)9Bsws$ioP;nv?|5#ur*^&d#$He@JG5SG40YdX0nA-hBTx@y9ym9F28p>~bz zDHPWjFg2{)JKLO#vpfR!25D0kZFzoB9-BKu(DnGGsbJ>)H2COVc?*pcdFzg%^Yc*o zijko;McCftX5*bAN?Yu2BY%PwcQnll6(;QNJ=ZsE)Ls3SE2>yk)9hP*N3vW|m1SS9z$pQl!?zADrOuD>Sznt zOsCdW=NqiAx|N=GD@>_+rf_f=twa?mDqlU1Cf!20jTN)c{tULl=YM-sg|{yxS$oyA zxU`>3VfN?W8>8#xNtE>IoC^~fSG##8-9Gm2?uL_vDbpHtGOrY|rmpk<`9{V5@j9Fd zW+!Y*$mGd4;xC)YJg+*ObWoMMBvp+XrKj2*MB9;?>Q9}#q@!6D*;&7Y*;qTq{m#Ys z3wEcq7w%kkJbNIX)_?p|+}r12Ij7rAyX1jg+N|3S#pj#T8OV%@m>=f#v8rs8|?t%9z zLkHey7M*VWWw*z4WpJG^_nKi#eSvC(VI(zSaPVwST*#Hw+kX(POQF4xb0)<#zDVKpO1QVCL>IQKM zL0ME$LsTn6O_$N*1|XMJ>jr%RGMCfq1|okoXeg+H6rrl1DBOYtDI5Y+a0nLMNdm!w zYmnf9V1Wd8r#a``+jsQ2{nDe~di37=Va+-JJ=eGYy~bE$u`=l!@hX7ec3@RF49P3V zCnyC_(lOQ$6aWbF2?!_>u(B#4z(6Df4pRmq!BPN0Nl77qD%kFBaQ8@wib)BI5fFc{ z0+iq`-Ux`}3nYL;iSrMYI6wgkMnLR=Fn|sa`2q~RYhn*{1{lHZAz-989{`}>>+|G?6KIluwpf2Be0F8?fffDvwYTmX(g zNjU*`oFF*N*&6@?I}q^e!tdq--_d{kkHP*MuD>@|b$52w1w#L5|EF31RtG{M&ffn} zz@aYgNH7AR0|$W-u)j;qz<cM!m&X*BILg zl0T1L%}aSyBFfX16vEvI7b|YGTi1HF`zxO$Vqd!mkR|b1$gqD_MfsOPW^-dcH3(ZY zEnIiwrO^9fJ!7}Oz|DVDGL_Et#KuCaj3{1JXPibGERuYgHo%7}wU=1dAM2Z7gUZrh9(bVsLj`|&aX zKT}*3vJ;o22X2414o!3%s8UW2vdACeV}G?^B~A#u@j=1j3Ix;`W_$}kLC@ZT`ze44 zocqg8x9c7JL=wiN(JKL$u&i|3dRmK&Iu*UCo^yWwWO1sL@KSS9(GRKx$_Yho8Htdk z{Y&*~&LH~W?b?U*Ee1F@;CKjfF3P`zUr%X1@TC|eh!TJLdQ6NWr#2=Nm@t?93lp&! zJV4(?BEb)tr4#p~+msKC$SVTY!zDu5vm*C*0-q*#rhj4PwvBpEObQoAYR(}Z{k$#L~03Zucd`A8AkzP|fRnox7Rq6NwD zbnle2f}MZy9^g^+PqtS|*G!gc@#iB?W+_WZsY5CUiZPsbtxbhG)ES%UrkQmk4ZnZ# zQ%T7aU(>f}SE9LZ+Rtb!x8*WamoG=Jor~1PPbT{5wXB*H%DI#kdOSnQ!OYGF@!{6( z;_KFNjMJDbrSN-Tq3Y|WS5uE}GIC@~vWTaAt_XkS$KowFLR+F4QjywNfjNqPU&(xy zRSo2Y4lm!I+@xzjow$2j8(rkbVDFVw@83kW-(JbS3Tko?4Q@(G;P&$~U2~UZndjfN zlG@EdbDpXZw9KQouD)m|n;K%~rbk`fI;XYt1~_?RoWJ^o0l4ldZ%(~Mo1tEzh30(I zoxFd9m^n;x3SPU#oQnpI-%vFr(zI;K&wGY)#muFOij@X+cxYDKjItE%<=-c*jh>#Q z{aI*)F|vdbMRqd{&}PTZooQ8xt`URPAe%M-+%vGN@NhT(+eLsErZh$VD607yBRIZ&E9|i5J55V?o{L$c`k_Lb6 z?sJ2?_>52$hA(NNCW0d0B}uAWdK&W6>Kqh+ysve0kshu~LMrhe$2{!kh050ww#;%B zv?zo=%gvj9TQMF@gKp!!{-wSz+++rhI!|;i!MGG459M#In=b@#f+LsBh%SrFq`*X!JS+;1L>P zfU7~xQ5yVI*hcoAl~-78=_*|f;OVxX(S7U+&S*J_=t=j_mm7--II$0}`J5Gr3>mA* zjCf|omyDD^I5M<4Cf-?uHp{KObVL5R&ysW*gnxD)HzU`?HE|LE0ec z%{O?X`Ii=%_^oet$32yLl?$sjy?{Agm!)mDhn4T`b#es5I}Y}|@VdHcy;~h-2L1O( z7hbM+g@k8}vi4$&ORoBy zVJz0U_l?#G>9qE`TjPe3NZP4gaJJBh_@7UASbaBw2%(I>Y>1e{WRQOI4>4&4VLYX3 zx}54nO!p~K@h?0g$&WHk2`$JIssts=Y)`q^WaLr@@}{0XhB9h-+zNlUIeUoTF7xmb ztZnqJCZr;b3~-K1V|t5N);xZXGKzQS`YD=5(UY<$*D$(b1|3_x;|aB^_Il|+oWT2x zT4c5UZ3-8wPKa2)^!!r?MXHiZJ9(Z0wV3{Qt>(~i7HK!^vBU?BMFwApYeL56SlD-s z@c8xd?2%k$Q;lBwgGYa-dtH(dMW>OzTOsF-Nsg#JkV0&iJi_;e_zcZH)bXJ}O^UT5 zZ``ZNDpXbc-a1j7Aw5t+Qt9DJ`>^=MUQX!B1Dl6aIgwv0ucCBk!q?19ttwd#vzfdV zUGp%_b_RL9Uyh{H0Gk4Jm{z8r;XGs`)p*~~TCE%|T#24CSucN^{>Y1|nALE7+6iX0 z^Y@gbqwP|U(hoi9He0*8eh>|m=>KXqY~AjsR|$^b?Lyh4K5-u!QrB-(YC*|9`?d{| z;e*qX#FD34`_XH0&H8fu&}hwX%@Sb|2TL`vr@e_FoUI#%NLe$BOtBO8IM&z^JU=%5 zxJc1GmF?hK@MM6&YyW@X-AFhu; z><5ob5*2t82Qc_^(9zy9hsLqh7*kF55moyHsJxscCt`ohUK-r_sW4b4Rl2Ad6^m&( z@aQPyNeljzC@Rf_HkuE}LU3V*2`pt95Oq~6TYCHrDqin7{#$tUsK$xb8N0b7{3)au ztBaNstjYg73lA1!Vw@Pu9OZSDN*o+3_L~)bg%Af*n2z3hcOVDRtw8Kh!K@IQ8!cfmRzH9B`uWe~#mDb zpeeDJ#lKZr>N9b;FNeMcS&3mYj+SpcuqWmko1<9d9_1a==i3wN0p=Pw%rl`6sP7H; zEDL{)2HCL^b@ZSoWdZ~m zh@3mgpyS5(cC;jQ$@4XA=9pg1+{c@nFRFhYxRIoZ|EhMgoJIy{Axe*~B^NtPqpKu- zl%#ckf56k~;E&DRhtABTUC8B0!wwm|%=*;4ZNj=u;;}Ivgm>%Udp)&mE9d@wTEAGX zI<7&H>gfVa=6g~00_{S2XOzTKo#TeR;*(1G!^st-nZNF-t!3@CHLhS|v6p91+$DcY z)sd0-u<3dT@0CZ!!hRl4dwmLGTS5QDR;Uw7lTQ5b?5%XO)(&DkY{u15L4h5(n=W&W z<@e!;c_r*j70n&8DAxF_nM~0Drl5Zhn@&2`g~is1Zl?;X@V>(jl`@e;bt`p4ErsZs ziDFfp{rqI_R&%{REYq;=i;N$6M@4^SiR(%A%9M^f8WAz#?@Z91c-UHAMh8V%i{A2u zjKeaI8s)iW6?0jOQsNyOM5{+lQ#8$K)-1~msMn0oSDk*xAI!LaqojjSF$sD_wJUO2 zoy|a=1-Its|2WhOC@wII$aiR5q&oD&QM;sdajcUb_Bn5FQ&9TAY^UBAg0g?C;#npy zQ9pR}B7kS=m$Q0c1F2iJZ<$kvi7WO}DV9bWVd|C4s)YqBAWFY#ipx3q)4_ z(-lvHT*kU)^cE%;J3%ghw>zZl(~9@vVkdUkH^ORE=&>cCSbLkYJXe3O$f+;P3J<2m zQ!;;*_xlY@63kMZw01m56OO&eeQQJx`=phQYIH@(Z!SU+QsF zoi?0&X?;X?Mj2MV>fe8{CCl2}O>3LR$wXxWCH-{zcI8(A`Y=WLXShIj7ky2M8}?AR zUb|vqNWQj+TFba&NLID_@YFH-3qt z#+KbDc0uZrfU(MBcU|II2u4QTLiMMu4>Ezbn!J(PJ+-C;cxD=dUC(T07$?yTe%y?B zK6SoR_qm;L-ZXTUG!nrPE&Deg0zzN87h<;u_G!l_LsOCmthPuUqV1+tr4rTM=Ez*5 zWC$&L7uXk0TRnf%s)`cWOEWR6Y#*OZG#n5ik%WGm2DlXx zC}Ab7FWgdel!}i+1UX&Aof1zwcbFCBSX4Sm(KBHEy>HTHHa@?sE^|9Q%4Mwao7PY9 z$=K8G(RnWDH{E15y}o~=UY{D&lJ-Po>dU}~1Um;?BZPm@%r0xIKjMIDYe(|8yrT&r zKMNSGit4VAB?_=+LKD9x%??fx)$U;kwPnFMolnASzBhUmd39B8U#s&1hv4OAIvv+X zY!PnXcU0uJh{VntxmWeq_4E9rEcMF@SqKdest8U>w1XaV>;To<@7nM+6X4s|zS(n; zI*-A&#A1JMDtwsvZU;X=dN|oEf3Lx_E3yc{vvWhJ7K**IZ2d7VYnluZ{BxQt_=)?; zk1K4y2_}32(N1dyqc^hd&l~p354{NH=>s?jh!66QvQ1K7a(59vV@DtE7A<$Rk{pMyt*N#TFF#o3I(%Ok}&6_^LuoialK(4+YP}uYwsTGRE z`f+x0?x{gRk+f0ccyA8=OY;WO)sFRDHhP%$Jnl~QHHqGO#r1dJfHa?IhNG zzlh%{OLLHf`kY_S}^wpC#7}Nj;gjeZ@98!>vUA4F&&+p4MTgE7UF-4 zejJ1%tyPeEB{Klgh%PK4<5hO{P*~byNMQ=7$Sqg8v5bkaP-vIi%E zuAdi<`HKfhb7h_bshmn*O|WwWek3q&pE>a>+vTb+lEt9Uj-2BFUGxi)Pbh!F2}k-= zj-SrJ-anqQ8e?$V;8bm2-ii2q?5w5;~$^9vRHjI%=d2lUG=mYD|F?j7iGvHu$rDpjcZvp9G=jo z^H{6ATlKlvh7B)7cgs(C-6%QN7TJTUuMmF&Q}PofJWru>LYh$0G)G(z*_^ry{4Xzp z|8MYrqJh0L7>Gc^p+Lk-0)qblIrRTzm!T#F6ql9(2W|#JT2@O+QMU>L2O$D~vXz;R zwh{l|zxA)SAq0W+ei-2Kui!uYf7T-ZQQwRRjqnFrgM>gJksIU9{r8jYKbBKNLQyaT z(g|qd4MD;nXxP7m|B9uojPef>5d#W}ir?%qkc0$KLL3zGpM9oCgr^T&OBE;%0^K-7 z|5TwqXfzz@{pU`&`QpE8N5sv4eBf|@IFvLyhaQ3ZNPva^r~PsF^gZ*|k*`lm2c)Fr zak+`=L&@1nLU^=UKj-3>WX_`7%llL$6WzPV*WRaVC~8oW+&;0pAd+|!3E(fIt0*9Q zFc$K%y@40l(vWv$;U|U{C~F6Id^IV0g=!xeSMtY;;FAfTVf6Rml5_2UD9~v?S&ydL zt+qcPXp^<_b);UTdHqt`l{$!wKqbE@CO+X^s%YDjQ-oD(_&yi;^!@leSk4?ydmX2G zLcn!Z3l=0%NK1$?_m7YrW;aHt*P1VPL`)*Iz6@SmXtD(Hwx6pO!p3zdzh>P$1`y%MnVwy^NA8g;u><8t1Cz}&aN5%@+R2+5gXZuaUGTgl!WEi%Y zA@}Zy%lS66P>T}y@JurMMf0;sj}T_-TJGO69Y-&(&H48|VbsBa%tX|s z{iBWOh_hZvYN|rXCL2?^;Ld~4d#T01$vGDX>WwdjUz6WbR3Yzpq)#t0$Tf1z)~RYl z8=oA_PS>5MZnUF6qu!}ZoT;and>PlZa(89PDdp8@iXGB_J-O?GmnnTsM&bqjHACNB zh<0iE!Yq+k=|@lXif8z%c+HpB=Fb%cN|`$tmp%)q7>AGf(-|#;j>qpn%%AzHX04Y5 zQlI!?Cz&f~se0{Qk~t@bNv31WD%vjYIOcnxe)aEt34CBSP)kTMJY-Qvaw}ud%<+i= ze^-ol74wXL=;cPXK4sBLk#&xq1{fv;{?Uym8u>gHe|3 z%D%Pyq}E|yKZw(2Nexym?wH!>)|0$wRnIfl|Lg*W%P1c?gB=|PM)nDJ>*QO&kp}9q z>0Y>h7U^MEk8kZfI{{dn=0s5ifsv9y>)eg7E4d>axBRiFGgID5S6=9Hg30JmQ}FRl zM&a%3yO^xh`z~atp(rm$w;cJ7-CfgRW{T6daa2hb5UEEE?GQ8e9zG_+Fpn7lWeWvE zExZE7(0YGrTs`j6q>{aFpL@SAjdIJ`G=SfK?1)FjNxaaSj~fhp=Q_tWkG=;>qah4C z=j(uWWreW^bm3Cj>TqFh^O8q2wkPVdF2McW_sXl%**(`;QkLtjl+8N&0s$MlG-#|h zGedOSm4G5rNDt1oZ_55a!u#jlpG)jDTu%~jqdzl6TOYY%BGqIAqm{19p4RWh^Eq>W zj`{{;i;5#vb?FpWTNyT)C9wBmsrmWFnxNGALRn>9Z`B9{?7v3gvR&!uo#(CY#k{*1 zo?pn)(-3#wOU75voqv*kY{`C?e9JlK!&>PE0h7Y~$->@jZ;k;;@pCW@lZL4N`=y2P zt!V|pH>@PD#r8NB-vk+4k}V)JxHQ{;>GnOn68kpsmXk5gexMH?F@<7w<{=NQ$SviP z>^RLTeFT_ftCH{&F0K*nvPmDId_{s8g z?}0fgO;`08_>uuDoM~!Z)XeE!VC6L_I(9;j>S`o_g37F5O0#|YYk0j-tk!^k_?BQ> z!|$3oPQ8MLhs+wERMse6OxogkP@w+Hb)*TMkAVBCTvb9qePY z5*a%Qa`u9olW2oA)I2>XYEmfTXcHTIX~8Q)uZB^c+rNnTUAO&M+CC9dG83k?ut6!< z12BQQYv($Lwur}20vbdcFMuU~#>QuK`+c+Bk}piJ-p^GxvQOvs90;kJFO~4D3(Nh! zOXsD?3xG@~t2E`&w6T1UE%q|>s7)(Zi?60v6WlBdV@$&bxOumvoC;xn9tQ3=n+ zZROxU3N4X#YL8P(OFPU;fgnSQea-BC#PR5bjZT9Xw>Y6Or0AXeXiTp(9L@}XRpJ`V zp93qg(iSdzQ|&;QR=d>d>6(yLb60tPbm51+jK+`KUXGp8qw0%0o8)&kNOPDN7=i`o z;4#u?`&maGU?J+c!0$VMKQFqBNgE@a@-hzR79wqRO!^Yp#h=UIU73d8BRQ6po4snT zFXgtPBJi4SPTD$Bu;)^mH7ps(oiea@ zFSN?te%JT;3RK3mkDN>81pIM9ni`&H!Kt+fumbOUa*G%(Q>xLuBiqbbg1S!DhS2T_ zlMZTnp$HlJ?B0-nx8$85yZwqJ##k20B5SFc#5&-mi*$z|v^dt5HvzWlKjykxP)^`l z)wMnr+r-Af{!wznH@Saf#-w=9Q4d-+tP}8h>M?M)f~>%zp{x?JHvV$KMr2zP)k1e4 zNGjVouFJnmfRYtS!fU*BIfcPK-Kvn+#)y#!ph==JFUEO)yQ9IxImgqv2JT~#-%Q6c zXUUvziR1~iB&@8xpJ8;N)v?Kt%HCdLA%V7SI?N9YUP&*R#j>lgApD<-D9ZCwg5^%E zG3+(-Bg_JHCM;TELDQbQd*JF_O_pH}$UQ67-_OffwTzm|^T?@An$v&l_Iywd1b(Gd z`86LIe_FqPMuXa%mCuNJpt}7@RUqA-Ds8!TGF6l4E*(Fn!Q4k7y3YpBdQLt9zI!=# z7N+|_c!jzaC$Ugh2&8yRS)b2(ClLI`!(VGTiH9z{uIlxpYO(lV+tzr6D~EtQ4<)wU zh>6tP($!Eg03Z^YpS!UHI>zY(G)M8<xrKe4FV2-inY+2zej#PKA~)s9L9{fi;H`aNye)>KV_MfY zgb8pon1~c8zSl%Yk7(HKUgkJ;_+=ur(*T>SNMRDa?HcAsC#a5C9Nm#s+SHsO*fe;@ z4n>WBEOguGn+2Y*G*G$8*okfAj~<%a-MN?q( za&W2e+n3!waB20Uv6n=9%f^*Ql}N8dB9~SZLFY{3O|){dNxlP=L65zCO$JWO+?YR6 zq_LxQxM=k$0%ecBLKa2I>mV& zcXZz_<3Y&6v;l@9A$#`o({z8%>J*w(^bVkNJFX{0vXYt)yIvJPVA$Ng7{wLPSjMV& z{gn~j!XU;QVGSd4V;SMz<&`><7g^oVSE)$J3u{fPg4q`0%wjEa&Jc2X7O?WZ5?0?C$m z7c$b_RP-3(tzm~CK(!iD9Bc%obtdQVjmgNripsvqV2SnEH+z3}5@Qk%c2rq^5lTIR z+N2t|iJOQKZxnvJ*i@nz@dBzRN4#!WhYU<;sEeenRM`-4v2T~nNRs`85h;fe2OK> z5chbVj5-%M3G@yZwzjsZ0nNF8RQ%W3PsYXr6W9YG19rU8?;GgvScJOCA8L9FOfN2^ z{KOo-p;Tt7Ekejlga z6W$<`?au#&rABtMcpNl^=IkXZh<~}Q-sn+`n?10)6z;07vJu80M{ZwIKE^@8gKxB- zr+k(QRu7Jxwag|`-*stpA9d?@uW#_};KSL)Z_XK`6CEU{g9dDLKa^H0c!QSgyS^b!z$% zVU_t)!T>_m+2c&`tEkBpYYUwWO4mxiHn1dge%^s~A4lgezn%<;>&UZ`!1QgdpAE)GZF)7xw6Vtsr zV?-~`m4gBF$wSf;4ESP!Cy#MCu$AA`9mMV^obL7(gE;zsm2A1Fo3>8zLNAQOiL1cM zQzJtFyfc+R2mYrA`Ix&%F1O>c=Sc$IXQVwbzrDx|o)QW%wG7-nap(w?NS;(nUwx)2 zteV;0RhI^LO}Q@mV?Cr?ju3o8_Nskpsb_5~uWs^6Yc|KWm7PcMr&}0P*=F`f zCC(Sq5gufJDizZi9+|h*1pD9KON{Cg{IQ3$?O+WQ!PW)(1=wM z|J`Zx8+`5Qz@EJDz)N32E?d&~t;B1M4;)OYL9&_Oe|9J&N~~74`<`z)vxY(2R%E!$ zP^d=!O5QulyZj)WSVSVxgB?kQL02Y0|z43WwAd7FooIsI@uu)(?kLwAlB ziXvJR+e-(*IFW_qW3QGf%iCyZ%8Z-px{|78VJ1e+icYtKefO6bb$E46FI!#HgaiXQ z28OnOP+sNQ6;V-iDX6SO4PtZ&;6RPzG+leo=(Kw{ng2bXu3I7J%|W&SO{_X^nytA| zfu&Vori>LRv0(fm7nHRV{wBMNmF?h|CDWUnPOCr!%&&vJD;G%OXGQJe&-m1jBHt%;A2Ms(-nEILBnSO3FVg=H_&*TdMBJ5NCA{ zdoYmYzZd*7X8rH@Z=W13-GRC+Oe`#{e}#X)|D5Un+kTP|Q#+6)#2l#RYzzSzJA(cz z@xOA3iP^b(G5&oe`86nK$hv1x}`r|3Cc!T8jx0kOxZjL z#Fz>HlaaZ#)4p}%6M$^!PLrymO-2JAvw4<`Dy7EYpPQvvF!%h;9bjRV7B>V<*~Z7e z1RM0plo+d6;|Ne3%Qs%Nj&+kKIS&vAz<b4GuO4=;;J{D1Ef?d)Cd;JdK8pJ3$WUSh#kr0SKx#6gi^IxKQWDX(X;YpSr$g?o3(&cy zV!tn6ML&i_7^g3^`g~qYs~^@@v5zWO1}#VwF+lee2g2Q)o#akAGSP`pcV3&SBZw`- zZW!_e3!Kg60QjA59vtkhe-wUjeurXHsq`i}ClnLa{uVNk1ASQZJfU z#ar14<>dJemBwWFOw&P^qe>+_0JF1#l9UC#Vn}DJP6L-vitn|Wg|)k;!u%U?P#&zG$>-QM%>1fr z`M7&lWV&DV$ZEJrJ%e5q6n0Njaonhe~R9)R4>~}U(526+|FXDZc|QckJZFQuTmeHXOVSf670G9KV;#X(0fnxQm4Q z8uj@P{EtKF{lP@B5h{A8h{4@2?x|Qk3w`f{%npER*48bC%)ZmT&dhJw>m> zQ#L|X)-mAW=pRl24;lWrjCmniWHSY`*=+SMeoP)4h3SKSFt`ntgvXf-C>w8-Xh?Wa zQr|wh6s-Guf5kkL$a&-+PPzNX2SnO}LL)1(M}<-qT%-L|a98`|Q$M-XHDtU6-#=z` zOgsC#d?F#6aTjNG9zQ>(5yE?NlCBeMF(K=oS7TW=_>3O?2tH5K=e*q584?c)ChI#u@%wQf8(VVWY zl#t3?^nTB^hhK|N0Yl@b)y6QE-dAQPhvUO^r@N+Zp(#F}*!#yO_*h zQqCsx8V#RIv}3A@=m@XE&p_^>-X5yihk!#-=5T(fkhK(H!=A=g^_hB0jwvPx3kjF4 zU5KaAiXS`dk-BW6#4v0Ah*$!2m=%u(a71H|f37?)i=Fg`1PqolTlL~8ngNNO? zW}c;hROim>_@3iqdoEFJK)X(=*ew*LqL0)&73qVLikTUcsM}K+S^Y+BDAHH?2TW*7 z3KAB5v>y==2w;u{y)K)GMU%g-_@b_8Nkdjki@%U!WnGiwx3|@+hNAOGA``7)sD{(P zf6_RzE!T>R@6zA@ku*gQB~VUQGI{vBS3Wos`5bU|^cXy>EFv(5Z5Wp!J#ya|LVMi% zk%j|1xjp2@kai7T3!Q znEM%2jZD=;Un%quM^!~had#i|xBVm6#49@B$?IP^0 zKGSF@+RwCrdglpj{(&UVeuL6exB}|yh{ot{_(olET&=#ZOg(pSAmxKjW8eMzIDwH3 zT5{OfVl0*2Es5_?IzEeh&9F|#8)H1E(KsK{F_#)36|EP;4R-S(_o&^E&=e*Ke{K3k zzwu)|qBWw@XCf@uY3bbC0ZOKKwxa3RP!v8Y6ccVNzBAgVCY9DW$cI)J<8m;0~~ zuy?awKpW|?6Renjq2)ZWhSn=n)gU`v+af_#$Gs?CkI|H!)Q#@KHHp3u6~-NDBTkl{ zrgHBFdx)Aw%W-uiHD{3F*feYIe_D}bNP1NWkJH^;|_3-ja>j2zXxsT5I7Q&h2z_H}!<96Zs&+Y^iK z>E0>%E*gLN{_(*H->Ftw`{5viYzN9yp?j6npOwnT(jJVUSwn!Cr*&STKuQjK37lK z31r<&!Ve82U$?q`$N^2BZrxBkR;;=kJj2pU+zU2Bi!nUva}Npv%GcszcR}Nh_EoOA zzs==69;f-7O7_$!n>z`*e_?kkb~t03?L4A%s7O=#D3B3zZtpTKQbP2fOpb$gHbQWP z*mnxWY0=~n^R_FtRY!~_0vfbV43g0?mJCT+dx3HjGf53Y+?@MyHJ|Mb9NVj5B%Uj! z$VUCq>M%Fe0zlV7AMTQ?*RQ6)@|UVn?&^J`E)zpYms{L$mz)%Re_dgP^DVtjn9S5y z5I^|<8cyjkH_98vsL!-cEYjfGt7EgKB%6>46)05Z08nTp6L~V;oY3;m>MqGdP#HID zxR(tu%k<^&ZhzAODqCm?7<2`d@9FU3Z|&7s z)mdVZC6HIP07^Nm>tzMCJk{zimWusi)(aUKEAeCQw6ye3Tr!K*!qOgasuoa=$K~o~ zn58d<28=qR0}WmZV~wNh{gLaBX-%O7oh_*$wJL@{+f1%}MqZ#4UeDb^DBrYEIy7er& zdb=3jpwI|JPpdSvw@ui*ab)ntH8ej1Zka8~-lKnv{pjVBEBUG#*XDV>s~(I27bRW4 zHqv(@d(>!+^&M`FJr9Zt>V#3B)(lyCAdGY zpM_%H3^{_c?m;|ymHPQp%=ebDFgmgCXK8-f?wJWzht$h(PfCNV4;0CQU({y~wX5@) z6hnvccRmw}BVLKUk}AjN<}n<$et?u!)7W%mPcT+dDK`VFJ*J z{D+&k);oD?DezYtg_N{2f)D)r`tpUcKNTh*!r-meZrzkS)fcCf*TDWXlveXDf7?1_ zZuq{oXRcVieW|Dbc+e|NrMSqLr^tX=M$cS~XamXvOE_bE1|5*Rb5@7j z<#gPJJ%3m$@i7p`yK74MW$qiE;x;Oto9wlz#{p2%Ivg zw>qKnb9&7^WPWd@Fz}m(OL2*me@U$-jZWJdBTXf+EGp3udt7glQSqA4VANp~7UaS* z(Lrm8w=hp1oKW92@8?$?jOr6tk?LSwQJLThHiJNstgi0TX^INF&5g3^XbNULF*P4+ z3kcVg#gwb5Y>|*N{j>;%uL%EjEG77!ra!Zc3)H(b%a2OnBO$-dw~e8re{!owdcw~k zxURh9DJMJ?2&}hmQ`(lcY*>P&;bSIyqRjTOL00hhQUtla^m*>zJfZZc58??U0oK;p z%)t9ce9Y~|mSW7#iY~93ZEU{?p;(_nRPFZnkoIvWl1DlNOrcXTEjA5#I>KiXIOMS$ zdGB?uO!9I1O>M1Bkt{kHe{Bat&DRHb-%0tf8rtS|ST@Ll(p0o|kH7>e8mn(J*DkTb z8V8OcIT|vt+%2@#5xO6G9A&=?F{C6o3T7Sr?qm#Kd^F(_(la5VvQc}P9;q=T_Fd}p zBPNa&r}2gns4o|$&^u#pV(*TzijW2zsMhchLy{#1^#xVy7eFEnf8{=m{Jjgi+8rP6bYBJ+z~GmBH0z@BaImp9 zf;?n@dpSLvv__RFr}QK_y0iYUVDuFoEhT+zE6UWlHB7*YBZTN>!Rl?=L%GNaM za%qB?^-z*#`{i4U=97&6w-ifu#JiKH zJnI;41cuWunc{|(>z{o!l$Y?S_my|uh}OJc5ztn~g{1<`f5W9>ZM;ax{eEWdF~{4y z3T=cBCdilD)8MpC%4RuS(i7(Y-g;#aUOsq3!45sqaH?*&jmHTOo_5^7%r!2&qWr!f z4UO<{S_BsxG51CM_xDUOrAB-(GoF9tRi^uFL-pkf|5@#Yh`rGl1*onL>r zALqIr*K=Rb>$>~noSBy&DYa^;*~v$EgSk7xNmy?BV$zv+G_M(ZF~NE{3x#Vy&RGRe z+MJqblN-j$xek9zlSB$L0woaMA}E^?_iqo?V|)gTC9TA_RI{~o*j^bH)rhV4sQ8pz zRKj*9t4K^xUV5l{_x*Dg=}G_1oT$#(UCesQS#oJX8ZXcNG6=B>6>N(FG5$KXg-ui5 z{$5z$oqKo9{<3p@k?d`pcQ}Yn+-Hj~o8`QZ6t!t30oj}vq?@`?{yp`_$B(n3+mPSU zA7v&Q-`EE8SvCgOPx69FN4q7=V>2^K_ozIvaw--ANiFK=I}COko+HJ}QMW+{qf7cA zJ|e|)R`7~xRvrq?i|9wRtdCA1-oB3PA3X2n-$2$F9OyRX_Si!`YodvI+4q$!gWltv zmr|jgJ;UKGdEY!W?(Ys)!l2D(>s%Gw+3P1q@?Xrae@yPlu_6kq$=nFoC2?Fc_xdA! z2dlB|s#_Sr?v;9GbCWJ-m102rS`&$OdU~_St39P1r}gdS*#3RTx*V`)uD0@3xq2S9$UP&>atq}6Gbc`NB&ZqnDP^%ys3kUOn*Xm%_2)eU6#e25u}D4bY5l8(Ej$&I zY}YqP9u0|HN{zi@G%-nTy-I0$KC32Qex_ydnjMREKD^RDlt22<&#T|s6`C#16``;A zwq|-wC4}@XSe&0s4&f6qa^^5L_j-O!2`e@Aj!l^xYp|!i-Zb0jD7>38-$<2|H0XuJ zM$L-uJlD!4OW&`26}1Om439FkZc$!;Z*iyml$c8VsEkWlywzfi`ioz|K@YB)Om5Th zC3Jl2Jy&0lQ!{?I$AIe7GZq=la^ktrO(2g`tQjYO*h<)dxH!I{fbOU?3fcVQ-N_pD*bR+)e$k*0d`8C|CwN0Wi;*(#2PArFF#;Qk$gTAm}e zjg$Um9^VE%&%I-{e7A-wafG&OCvM$i-g#64!dgGdvQ-4Ha>)5@F0MzAsZ2(3L7ZN!Fby`e#o3RNZ2x}oq(I>+*8$w3%bk*FHJSd| zLqYx+bA4t~w-wqE{;KgJ+;HyAH4PmJ{(+P){KZ|29p%N>P0`Cas&QT7ZUt1mK3|$0 zFB&&|DlYcCO&58^lm8sC$<q-Pza3B|eM9 znw~$So!&zAN3w^%JJL72P8!!VNbj;0^qc9D?P9LDY|Y??uzplZtF;Alwy~~$(ET|p zf2oBJH{^&Tz87FMr`?@U9dy&Gw|19J>OFuics748qyR_Yj}gZ-i`^l>38DagIDv zyr@Ex-C$;7LvI+j(LKkS9)B;3@%mlP;a3ONF=J&y-;Kw={y>=cdQ=Dto!6s&^v0wG znqn&FU8wv#>?v;55vQivTv`VS2EjK5*hAH7Y+C^nGJ?4cqb8ciwWKqymLK-N`zm9 zz0*6Dp9z>eXD%-HeJ4Oi`|YPxu?Io|g=ouf`*pvbzEQS9Jm-8Ycd039rF)Bl^V=+i zh}eAbn0}*od;DTXj~A2V+B4aA=M#pWVWFz^W}&d^Q*PCSV&m}*F87de)!Uq z21N1LxOM%P{*zK3t_gRBB!dW_CjzFIpx-D~ImE7#j}7y!+(4}dG>0%FWC9{X4ba$@ zGp|J+j6T;CbPX|2V_BY1E^f=9|Nd5MscXUb&Q8W>pMa-7x9ca{${^#h;#>9HYE5OMS_zakcC-Q&wMzcclmSi3G^mVYdg}s~wn( zr@11Y&bBZ%Cw-!@+e`xIeEei1p>z7|xEXy%qSHtskpg`X_ZkVSuiE`Snb$-x&-`)hLJtZPp8bEfKGpQ1tV@5l5IHM*@i z8I`M)Zw8n-nn|?(rWw|!JJtyQG35I+J5bms=8a}Atd-o+Hg^g2AQp&tD;Oc37mW=5 zvOA7>_1GMKUN^N|h4_t_{3pf;__J?iSfZ4tQ{C9BRo1-*yJuVqtF_G?Y+jVAkO<7z z@|dlBW-ULP<6d`r{W|UTz?V#s){o0UbQEelH)o5BS=wENnW5#89@DwZv~LC$eSf}x zR4~d+V)UnScII;k`0Is{OGasaxc6ywt--o1-xH>$Mnwbi^d(%w-Wu+`PU$~KAOg@_+l1Ei}y zM4XFO4zVWZF!0c2kAD3C8iXv|E8bs7o=dh7f9qTZ8{Kx3TMqt1U#k+i9G-Jgm&tA? z`bY47b+2E~=i;-?Cd5k-2RCCz`m0Gou_k1xXZ-Bie9=;RZCSq_lou1duas?=j7xj@ z+?`}8)8AiS9mc%z?pE=wEya87!}b$6Ca>id3buz=Y}9F(g8Q^i+m;umM8BHySG<~1 ziIh#9Qh8Wnwxim@t8bRDmYcc7@LiUCS4Y=#Fz>ySu5Y(@kB|c&6r$Q_F8qZh>n=87 zWb88Mlu`{U3Jan6-21)`;r!x)2~X=?eus?3b)k3RkK*1?P4V7+{7YOp=)o`B*dGFx z{uj@Wn>~H@YM$emasYoz1BDEz9_4F{SKiYs_%W?p{AeX zQ7X-J86nnJ5_i4-JshjJ`!SW_wV=r}c5H}JJ^0BFjCG{!&FtjqtHo`%t1q9P87=f2 z@{L>1PCBilvGw;4#l2z4;d~AGrPIVD6CS-cszM43X&>(-AwJoXO4e*Jqn$^s3p(Bz z{q$v|=YmX1T6}$SxyLZ^e18pFNzi%m?#uc_PJBaRT^`_bon3sJ?Q<&0%}fDW@ubq& zKA1ARX}h!z`XS=IhDVp^-k5iq9J$n=+xy?G|7=CJeK3gL-F+|-zEkLrMO>?KF~9## zPBnG4V<#UOJ|@xXw(Kf+^D0}q=)*rQY=g9O_oMcg}0658%yRq4DEjGa%BrI=N_n_5SW5O@n2M|QMOxs?tf8E%_gRuH?Hm)01**7lp7^g3TW%t~Ts> z+)j0J8j{O*j`V`AEk>rlN>!MNQ_X*WTX9L^+*;UxPy;mwBYIvTcI<08t4lvQd{ENM z;{of7HA0o4kFxvO_ta zsyk))4xQ>6lQCWAy_MigLHgAGdZ-)QPi}t(mHYOBM7b0{M;n6Mlu^#9HWGLHrrj-U zPs^MpDfJ3)s`@K5(t1$4QrsCc{y@ua?P{65+_#1+e=XuF>G*2TxxTw+U_mDG3EP_3 z9=Y}Vd}3ge?;RT6d&CUFyzyhIb<-&lPhxzC;6Ec%Kh+pgiL{lk&(@y`Wb(O;6-)>T zlB!cZU7PrR#K!Y1-__FAoUv3FGn>n~H)|hUtk7dn=N*Lkd#~@a@b;8q51J#TLRXP- zF0EIG8%(7iwu=gO%WEBU6+BML_5fiU5Arby^DNX3ucYQS>o#sb z^R-hXZ5wo9SxAAYuS7|s7`g`z531xR+SMnG%|5gz8n)h-P;v-lEXrp?gg<>9jW)8Z zYtF>P`aX#G%tP8w6Xm`4fYWTfR!FGQXGXn|!DlV`z&EDYK`TR0T+Rm(HPPpab>E9K zE<>zOLYq&M6LW~J^bpSqd&K>;o8a!PC-3Y#h>>d^QM^!7<2B;+R_XySHo93*u{iT-4eV7 z`P$L5r0vEQHEx;1Q=a=OXs)h)&*%fIYSFg#u=95n{mJk-`6QF6CAUjE=WgH5q|{$U z-^c)OuDcF(gnx8@FdwG!wmv{kDt4Aj)t5|O%Jo$CO}$97PPRO9NbwJyREIB%7rE!u;~Ep95KCe4)e@ogr}=oU zzR0_E=_aqyR+cVQHBX7%+Ke}qAJQ9yR74#t z_n!UsnjF3TLOSj*%hH(kA9g2|>WOcBKgTAkXcnD)_&GzVc53Cn?rS%)(3@YqVx{7r zl;!z?%Vm}Y9{1#LiGzmHWR8%@6VRDca=t1CShLHbOn!k@O+s3aG*ZngTUbc;ZUt79 z_?&-Mg#3*9jCl5ED)C^xCdz}$>_HgF(`Ihmq>+)a53Z5{nHd-{pg#NNSAATm@! zm$BTm2*tWp;SdF03-I(RwtCd(Z{|p@cWt$KIt!za^kt%!&VhfpMWR3qKY5yGv2yZdS&W^Z?dzMvhtUwJW(~;_~&X;fESK)t*=fmp>Av z-SUN%KJ%lk;YA)A61r87s}?i|H2OBxkP0}N!N*!c$=4o>gSp z&D=ipdFzXnYh!^Un{I`RsqU!dnbB8)0dIZ`)Qy_lyNs03N7SDWoNfwYCU48B7~6ni zTgC^9UT^MPBl&AvGUNMfpz^m+YVX@_$>4Ok-o;;z1DHLt*lpdR&?ni%sAro2xo_>ivxeii0tCbN}cNEfN&on`p}_yHs#2o z8PT$x^D6t)3tuUkdl?-ZTXi)hgI-&})}-(Xd$!aWAc=d;?bYWXLR-5 z{e}>CW^LR1Ia<(o{aSfpQ*^^?F%t(CNde;;f&1`Ufw8ZN-zIHQp$S4CNWw>pdp{tl~zaR##;64#^??NLvsCP^^B_wIt^%7cARfYw`$U%ty`fI`Seed>ZmLcB= zy?%Hb{P<bT|?ot!e1XpeSk2<22ZGHT>bHY=O(=IdE zsU|XQww-j!Uzr+d_6NB}!_jW)>{~S2BCF>6--gt3xwsdDqRC8kX<9so%?%ADbE{C@ zIUNyQFvQ$l`OpxZ!L0)*O^YrunUCkqfj5o|PuX;9?zx@0IOZ-w-WFN*f~*zBnPqb3 zWeC^I2bVKJ9r5{&nr@TtUFKX+N}De}V{fX*sH52#LJkyl^O75`N_c7t@`ouU8CHfo zatNNGS}D(Iz1C7|Y)cDAG#I%*_`*4qZ?~n&$=lRnA@aNavH#s3^ZhOQ_g{lId^0mW zbbXhjbzuHi_SrAypa_hFgLFDM|*6D)yd@8ZKiJ|h( zeG}q{W2HhM<)yipKhd64Pr0PjG#a+a-&MBwKH3u=#=z?|fpd&1^QCX3wv|^^&M7g$ zI|+a5x6Wl~@gzQvH~T&W(R+N`3cByK?=Ocl4v5rwePUk}auw?vy*en_HI($yS26OmC+7-)qQTtF&ItL5HbC zysm8QQT8_MsgdCH2%3F!W1~0Sx*1*2gMK^R<^FukvZcg$EbEdP+nwy?)g`jfoI8)T zpSF;kTk-Z?kTP<6+RgWUJ}E2g1zg+#%a%O0aL1^^zF+;UPKN^^*tDKz`R`sgF-p)HAZyoKt zI3hROf@H4e<96?I?Sx{R=ZeQoB){a*T&nyi{=2#B*>}y1j$Qbj9E;_83aiCt3GC`&RDuM@2EYSw2^6z@n28~3j4gx;V@r9%iCC!NNwnF z^GcZhRVvr^gAiF+)NeMA7+DO$?c#-|gnFDhH*rxKPu&0cx z?F+xha#&5tKfmfd3N_!;c}7?)a}Q%RubHcOJ3QRysgwA6rv;YFiD-C{9s2p2NqWGDTG5CZ+&GN%oBcYtjc!>zoy+3w%7rxX_k4XZQP_6^WB+Yp zNUwi+COV!}%nq@s930;3_rsa`(k6hm_9H+|rf@;To};bI2B==vblzEFuBW-8q$aaAOA#@vVLyF8mk&uy z5ADGH=67V9jS`TiGcK4HkQ&J)OT|7kK<=hd@V`6T$OF%A{BG3uxP6TAwLg1nSgS)q zF~?9A2X6Uy%s@`PNX9$<=e>p^*)(T$(DT{sQ>kYWY4Q%5abp!u0hIxoPTn57+TDF~ zA@Wz%jDAH9c>(f1(Uw7X$)~k$o>F<< z9}5|b80IITJG41k6SO_=F@A_##vdb&?q7dv_F=XY-uyJHp!udaNSY)%JQ{%89omwn z`YRQ)KyDaXToyjBy&@h#?;xUv-3Up9@&-#)Wy@~&xK6jSB3#@=+zZWOoN z(rg5a*>bCY10Y2~xPO|OiVykC2hYEhHbWJufLJ@QkSx;?k>>Vi=AP})mP zE>AVPXTK>G3$k65+n*NS=Mva{I#I)(yQ_8@w=A}EwTPtUKzxCsGuiTKJuk%>V^=v{ z?&+$Ba(`)dlE88k5-RlZLCVqP^2t~tH$}0OMCP=6lW-u>SIC@P7aAbf3i(`SrDY!Jqq2M)DiZW8iOmWL1}c z-oNEotFR1@v~BuUgm`mZ3&W}MRDbuQ>eqs#7am?--*MudE;p$Q*|Ir9t*nq=rgS}& zigsm|dEO+xKG)|mC$)vFK$rwB>CuzbO6=`@m;tmUc#I_|Bit2s6H_f?@ii zm(knWs^i}t_+ATMMUz}+(IGAuCQER?k&|7y$ z#>Bi<2}|(x8K}J~`ubPiaLIg@>wS)}gouSR4i_t%s90_pSmuw2>5+sNEQdw9!AUxs z_oF`)k=(!rO{YBlb*V9LIs>oG_olCRVmY2KbGa45tt)%TK_KjPj-#qeQqxGa*?j`@MeqH zFO+>}9#t!nyxglOcA6S&Y$*Cj^Tl{GTQxVSxyC=eT(w=cfu%3>37DNJo8s1j&6Tj|_k}QlEZ?(`)NAIlWwgc$WG-=}tq8 z$-u)4y>X^_55H~4RY;D73?#ftu}xWx9}c|Edm}!g8_QfKUq_VD{-9{d4CCooeIbHu zO_?=&ec?2VQ>~mZiBW1eJErw)Ed861LXuYsVVA-&bH<&WPlCIzKTYGjXKk5f*C2Nm z)Bf7V&T%vU?ch*w_V9-H~gA(&rha)*)90_Y3oDK+W}nqq{@Pc;NX=)s)*N3laA|81#-W%hh>fzc>Ut3 zN=47Stv}d>%On=?PGQchKNH3NxYz6Z{T6Q?zi`?QajdfIgBWnX%sXSBsKL9xmKiQ4K~`Q@0(;!3zku0WO*e-@yKa@`_dB8h^@5Ihg_59i&rk< z+!AU%^Iwr;jZ<3^7=6XAi3~g*^`kkX8PEh)OS$HXz97hd>C?sF-Wf`Ew*t*q8l|#! zj;2@nvO-?o61s`jxwTaOJM0p(#i?q4zqXp;E-MdM_FLoqQJB86p6{<5N^n9WHNAF~ zv4wq#6WS@M;l?eq@4jQbkp&4mf}swHPo2J8OXy#@BGuiH7_0} zTgSQVW7PS~u8^+brthV4>j5Q&6&5+3kI)v?s{+@qrIXv2O2ZeZ1-I5NmJ31)f_kjL z;@Mv=8O;pNJhiVRhNMUMcnB{2?S|ZHCTR+*WqAK<@J>l|vBD3ZH)r=VM;^)OnB-pY zpm7Wtd9#SbDnf!6O(|oIw{MHvTw%*&%<$TaL594S?6UY{!D(~ z)9C_Zbb>!=)mNU4P_#_^kldSzb;n#52ogpOf()a$xAA3WOMfB@oblV9PszP>USE5lq!%Fgh--yA}}873|DM_McGuG3e()i~@p(H$Zg)_`tPk@J6aB+}YD z&&WUfXwU8~H#{@2l=9>k?RYf8Bx$^qGX!DImAp*nayGB61GDC^q*wd-DgEUeK^)8d zw*&p$BA5(s5w~75=aVh${elT$4SkY+Z?9;)J^K0J8-Eqo{q4HEgv&`$r;7#!ttg`_ zqoSueQ3ZBh*rp1GJ=Q?&>zt}0QJ3o2W~w%y1vM(zMOZ70$TQ!|W@sAP7_Euc+{;xI zIrWl%yw1Wea_%>2=N2O)rbwpc+cr&aRFAbWog4k;tU%*~)YdbSUq+WLqXTpLEAs1> zy&hGVx?5y^s%??7Hd@l1evOPW+9Ku-dms>T;8^N51;xtDetff z>&5OQpQaWGiAU<_(8BBIQIP)ZH?6-bBvB2SbDjYo4LfbjrQ1zmkoeG!wSb6LvTQ~xgnqtXdI{iyBjGBf)%b`_0WfdOAxbx(T@S^Y7WAV&#p z(}!pJ60`NOu5Ae(X}S~P=(KdNhvNwmkADU^Ezf+QqjZ(I?mU#2)QL^W@XOljF^=EZ zAu4nk48V(&b!}g>Rk= zY07lU(n|qMpJ?ngO>2LDZ>H!p*4jJg>fp|<7}g{=g?+IQVghnV(HF`e5tN!Tpc&I% z6b|D~t>Y(>Ep=iAMa->NM9m28{5a4o>*UW29;stm(|tauq&1z_m7FW$)hL_f7WDX! zOr7;O4>s(p3x8KKChN25fxK|_IkfC$$(JqjeRdJN@E-I4gU<}Z*5}Tz&ijQ5NJvzR z1K)K88EnCz8b=VPm~4!g`=-)z4qAlo?bORPr$KY`!4ZQzufM`2@@~#*)asX3aJ+`C zbTjcJH*Pa^a;AY_;h~>$OnYI+ArzTtcATr1< zki=2nsoj~r;Z|QZQwhf{l8sWYpA{;N0T?T9vYA2Gi#wrdRD17Ji_-l4ziAy^YyO>+O;5#1L%yuVNNd)h z;8&Ly#^!Wt$T)aJGF-SuQ}&|l?XKO(*GUU=@ISDCp5d&U-TcVkI*>=|TU(#=&8dVo zsh=YYThwN+sdu^EU3N17EzcnIaL(l8#oT(07MTTo&grk~Y!%Z^3zlmhpCSz+oCKEW zoLamLkj78KV-8NgS^e!Z`_knE$4nWFzyD?g}-li6i!d@Q#1qhh8fO2LaX<*y)kNtif~N zyZM}XhCAt;BrSxC4T;?IN1kcB&~4d_E$`TV2un+~Qy0Hl?w1nU#G}FWx!-SXiK%9= zp}$USQ=jE5pGA;A6<=jyNc|cyY}LBWXJy6rMbNb|)myyR8w^#iu;|~I2-f59vx9h1 z-H77Avcb21=R*7Fomn1z`D8b-rI4m{d+m1)8@x}n$ttq$lZihi3195R3?c>=r@0X1 zE2k`yLPi&<=WQ=G$~~<`Y!i~SYz6TDVr$_NI7v~ne_VWi(A;&UDzfueT3VWWIl zGY+w73BQ92TU#Tm!p>~OG$Xxqy~xzx+rNE~|BG@OKKMK*n3v7>u^R6qj!4L=6m8_n zTr>?f_uQ)*MB!zJ%{OIJ)LnM;LP62NQePfBX^@Uo1}1GR=RSO?I-&4s>_U6*s7R|) zc^RE3PjT3{p#u5>f%#h2xY>(^ct@08tf_k46cW%5$G?wY^vi;19jSCZ3Zf`nfhQ8l}=1++x` zoZV!=?ZoIUzpCWRsQAXYSAZ-@NPhqBt83-M5{IAqO_bfR*Cq7YdAKbRgNhq3v=VPk zyToV^ofGt9n?&8b2u_~`v&D*Mh_JLG0>Gx1+i|Wum?X{a%SW z|C>8b1i2z}Dqd^$-7A6U?A2=T%>~TelHWFFF_eMS`8? zPc=qhSA<9(f!^f`=g}6oQu7%BhKxzw<&j(DT9S;w)X_J z{ru!0&Qe1I=i7gUM~Gr9z}-Yan??=O^4ylKS4Qd@|J;|CE32Q}Zt?0A7u*bEHrVcb zNrfHt4n_VNYUqbNnrq(sqf7s>w+g_d|mX8v<4%+mlB-=}J z^CBz}8mX;XYn4&~cZAxYTrGk^La76bVg@87;`Z115WH-xB>@Be|@ zc1asfo(ER24QX^-OJa-n^D8koopxv8{iW@C!R=IQS}+WDLDZ&o<(bUS^|$30UYEO^ zgJ2z;${^WKINZg$QuBqb(%K}_1h>|kGt8A#w-jFEeiYQ=?cpE)YOae?^R&MFMKK3M z>_e$|Ybj28v#IlCarZ*(bvR~TQ0oo(Oiv6o=A4c{e|OI>ohj9Om?``@huw`xW8!m^ z2Ss|Fq#qj+S?kO$ltGnOpAAd>`lOLe41SV;l`(?&bM_YBvD?C`TD>U|ee3g7DBeVH z*1KM=C7J^LNq!ylGfe-Z?1S;sUVP1s&3E<$Lwdpw%3in*5=%bcc3gQ;{j>V*^9N4( zbv(iRi3!XtyKd55Icl5XBWsGu+UjkL^A{62mxDl5jjZco&07<@b~C_UX7zG1s5&!s z9$U<(;$?YJ69;i%C(#;ta6Vbo3S5%2^er~uV<_JyJhT!-BHefM`RI)h2+NaqR|>B< zrF1&YI}URFVtE#j$$HP|yIOm@FI&t{LA^8DUDOdV4qJj7SONWOpSrsjVT`w259r%J zG&^KXK2>^ZVJlbol)MH_f|*xlB@1(XZ&`z-5;3way>5}FXC$|(udWnXtS(!fL8kFn z>Z`~fi$KdDO9rPdSstkR?0MX7f@MPOpAVAvvbUdPQBrNc?4pUX4YkxnRVi6?j+ZIC zRha%hGh3^dW>eZ^*)-Zq)?iPro)Y3}+vDoP8tZr^(e2{<`)%>{8lOkP%q|( zG#~i+=eM--pOSDXWYp_TOk2Bd6+s)^(8}%mW*nhiJkramZX zH$r2^eE@EKMr3N}2krZEdvmpCa&%0qyS1CD%nRjXq>k#8=UXO6UhQSLY2G|rWyi&<0^3pdN=^;F=K6UfZ(Xg6b+z7HJMCu^y|8Gr#Ob~*n@4iQOU$GVG&4)= z${^cSk#9<4n=$v(LtCE4k!IdoZVrT27+$uZ`+WRXi1}-K zQXzXySiL~qepfTO688DbXh){BV&^?p-zjqi z7h@Ci?hEB5WIv6|AXlhiw6yjOtfq;Ua+kK^dJq6QEnBc`ed-5uKf^qPoiiZNAxqO# z`ab-2$`|w(Zq=Ic-x22A%Oq=oEH10=e}-&K)b1v}*rBO^a;e8BGGZXw@& zBTpkXMw~x%mq@H_J8Vdk@{%n1<$h)U#vmoEiS79vqF&`K`R_W7G7~RJ^0JqB10%7; zzTkjrRO58Lh6g zw|rcnnT1`9%H;zb&CkD}-$~${eC3+&EayS!!H5?-T>dg)+&I@vGDciw3fXB~rUSVO zF4Y>uMy0K&cg;Zl_~&n*C4&S>5E3|fM{*XN7LH69N23LzDU!1R#SxP~Nl%Clh+rep5&1iaPE>JP1OJz!6WAv*O+r08->GkkjHm z0Suh;G&wES8?Aery+KFkvQW(3_@bI&x#Dm~BkvUDw+S zqiU&nca5U&N2|{JLT(#H8++EhTVk+Ow+0PuWo{+;Y*qPemH&M?w!Q6BwL16bl~rCx z*HAPCRV{5HEyK-dRcmtdl6{x?M;cGSf`X##6Cv6>*x9d4Jg4Q}bu~S@5J6Ni4;FkR5EeCIcjYbkMQ*FIiS8FhZglgM<(F3?Ay-J7X*qE;Pj2whw_)HTP2Cpn@e2R(aT{mFQ)nwa^!X*ftt z%^>Kf4G~tUhN4BvzqyN6phdQR@7%}W2}elMYBf_>edM==P^A8&Up814|0gWD;OfU^ zv`Q|HsXa8Tx7?M@bwywF&jb}ejA{7Fy93VQH+s&!l6p@qqoxamowVwGn0 zHqJ^-NZblL@2?|DazC_~rL}HCHb6Xuog<(#Jg()!m(CCpV(35uc{-!eM0R}vOR0RA z%S$4%C)^249vU;juI$xUto}avRg<*nqKn}pjpCJ3*s?gKi?CjJ7<$lA)I%NmTTHk# zx~fX?Jrl}L!UwZY5C1R5gGf&?8f=;7icp7Cd*5g z-T9=LGTJ1inYiaq;uVic7rON8yX-f^i@tRa_N=`_LRS9wt|CXZ*Ds~O=l)%UKm@QwYFI#(7Nex|)hBh%q#foG3xNCae! zIZx6y?^fpU#{I%C@w3;Ft2N#xZKk&No;_uxRh$)@2V)C1WF^k}%f62Cn?tzUQw0^s zs&+RAFxE}Ts>*QIqNnkW`DMInBfiaQz1n@eqI0iUG~M1D6m*@rpTx3+}bsLKz> zjRE$_mj2(|0>+aMw6hpd=IUNs}Ld+zer{pPdAZVv8E+=PA9*AwEuyWirq zSR2YEIqLn9O^w29HcQXaw`M1>74hC3mKfDPi4N0;4<%Lpa#$04o^ON@7a!P((P-8h zpmoDuIrnX=D>6=rqrFr{VUp{$s~e-J4|zTKV^BP+A353tft=_O!TnGeZMpC7o=kp;`&P=;;0zf7EjW z-m^Ab_i=W22vYlCVP0xsx@-S=c;=6^xY;~v1xsbDJJx$HxjI`YKB=_N<=mQYewUJb z$HU2AAMZa_9u{ou^=Kw3tKk&~DSk_~AN1UCjAssMb9FX|W!`$ZqxWYkqS)lew$bT! z|M(y5UJbho=~J(~l={fmL*A9A$bRq+F34(=lG&MD_UmI(H5r~*>3(S*86_xYVbQdd zxzL4;CYu}zzWt+;GQluyeVpfq&r2GRS=-G~=3ud_w6^b=rSACLb#l7H{DupbaYuED zzq3POa&m2F{ZbGWPN5xIrqvIZU5*sdXYGhrcy2YIpZMA-h)TLG2zS3trYRykN#Lfw ze$f?3khhc*+s7)GG+qRcWKYfowQ<}z0i73yST?%}VMBpcs;ciAug`xHe_mHQ^Ni9q zO9Lv=*c_Rs&(m_w$Fp4ZeM$XTF=q2}jIB92q!M5}>UmN@4SYnoA3%^dTTq?TyG^{Y=LdyrO zxgEr4d<#4D2i3*m^z%x!lApYL=kpoKm!-$OS~>S{G!uUx{k=jI8R_C0rTwMu4Tb+0 zv1qc+)uYpf1c||=IFMh**(U?Xjh?o=lKKr?STabM1c^RAwRURA&fqROld>NlT@)#Y zM^|8Uj(?_PQCcd9PJmS0+&lQ_*WcS3KmrtSF$uJ!1O_&ZH4! zcM6HY;2Il2wnyOE0vQL6dJn{gvugsK1%}YL$4wwRVhP;h@#A_k$PRb?7a2W(qk2IC zxb}_puGc!3eB9!2u%ltQX*LEQ2US0kaRMxls}l_$LJa zJQ8g}DXwkdX5)018;L>T#J(NshU0L+lTiXrpc{VZ6bH_{2?WNW+CeNN5-^-jJLnef zOgD%Q*VGO&I7ZM803D2hAh<_e0JXLQ#C1rW?f~7!VVeMg>35LPF&bzCaUTo(^&P}| z$fE89+2h0y=Yl!`))Cskqa%UB3=%NHutYV1m~d-tAVy(0-a!QZiNrrqgbveo1G>Ch z01cttfQBQq*#Z*6arFR6E^P)rs`Y@3aY?NpT3q3Oh`0A2dfWz(3wuGl$K-{>3GH@Z z;zr*;RMz#+!-c+oLK*u3Z3o`~^yojdj7LX4Qs5pBfOrncki$Guib&wo2*IZjf=?sl z|0j*$LBK1`?;v`d{~*Zl5Yge9zXOIc4*>>*bO0X}h5%(+T>$#@A7UFmMv}PfVLVM0w+EWqBw^yc_5`Q{1g8f0>cptgE?`o<3R9T`hnn& z{D%zwv)Xk6usWv?uRd9K;|hs3u3 zAQOJ1pfL zd@ATsc&kx(t5N9Vr6T*l0`9}5KlgzJ0FtCcC9gceXKgz@E8;w13Dat4hW$OC76O9-`nB%)(D57k5}^&gN<KV|sN0f*w1-5>!-E4zos%&C9q5gtK~HQ|#DhvPK@ZXGSXwe?>B@Z|u< zmjfK%V&RzM04$#Z8{;&81DR$f`-hr-gM_HycqSYH#l7AGn0|-z+6TbA0y$uW*1_SS zgGU$!I0A195^o9;e!Pqg1U8Dr05_yb5ZDj^z_~*T{^v3huLFhGp$P`$JpjUrqox4j zdW5|22snQJg76VW;gzBB%FuXaar^)LM&J{Vz$YGoPdoyj_-P72Qw|AW4h_{Y0xA%1 z4F-yHA_i>qKAdqr1#l!!|3mNoLk6T^paPE#LEvv?zi_|?f&Wkj<+0xs zl=yQF0l_O$JOgk>$p8*1%|GOVM-bc^>tRjd72%H?1oTLe9Nt-ck`eeMBk)N^93}a9 z@3Y}+1O>-83VcUFArQxh?Jy0HUpY!JE$%iQpjws^3^}$IinkU9#a#pg*7h7uUpNh< zG?pGn%@HDII7W21H?#od$YgwRBJhe4Kye zA|;Nr9Tx^G5?>H_S5QcNzenN1$-z80F?K*+BqJd2CI?_!1S4P(6%&vNB)&qCK!uJU zs;WDjFFCZ>pYtDD`wyj_1q(4C@g<7Hmnae_(WAA-Tma9T1>o^<|3jPX|9SutUtUNU zURC5Fsr)dcS9$)S(*F>K1)v zdBInRVYpldFf;Bc8<>^^C=0rA;O)bO158bfz(qBJI8GrEsQ<^nojP|I9DJD~ft{1X z3g$js$I}hsIfX<@;N%6t9C7?$790mVkZ2!%umUj(N6ZfhI2vF|20B^?AD9jpP2mT2 zoru6OmkyV}4)hbmae|QeibbMeM=Ef-0zd$yc>oFQf5-+uN@S=c2M}*K_AynAP5k0 z)L4-CR*S@UAr$^I3VGOAWcVZ~#no?HyBh&-0Ql=YULyW3gaX25DGVOQHFJTfaH=A} zpWobI3K}O5N5}tO4AC&0qX<|@@<=wNxUQX>jfJ&4V9oKHwfI$wJ2r~Pcm-$@u64wZo5GDN|=Y%mN81B0EI#{gA`z|Dz*QLGRILQqr z42ppOOfx*hAaG9sC@%qr9q#G>yGTL;gN9>H2!cUiCfrcE*!~P#4>gfMH z{&z8Oa=}k7hM*-dC&!>Dj0B<4Ferg@NW}jbsBlO`LNE}5#YdN${~ZH5Bw>M|a0TLE zArb@(Hzp3|W0ino5QvitF~A?(ISKH2Ed1npgam;eC|m+AK_~)w!WlRMctL;>jKK)h zLxEbv%ftS^L5KwOWJ;kh41yqH!0iJ`U?7ShU{GMQK?!+?|J6ZuC=iBIgn%yq-Pjod z<~t<;+|ptpU`+s^a5Dgqmq4HqCzB3?p@lFfAWoJw z90EZSS^>x9!oZADa5w=Q1|b*&-rxuW0o(%NfDuR(gn*8gI9U~N;HV=s0)^8#6agnF z4mfa*os1?N14E(-M4)jgha%7?i}-L05wr{h1h~l&h```}!hukrPy}p@1i=_W0z;4w z;Jzo103;B24KzXc$>;#LJD3E41Q;&rPy!rEzy@xUC&rKv7=obT0(X=N#9>*%Py}>@ z#L4&~VMlk86C#i}2oey1ff3Tt5-0sYBGCv!5h&c_LlFqb$?PFf5+~15Ao6f1L0zFR zxbKG|U`QAN9f3Mo+$bm%Lm&bzf#X4e8L$#)LOL9JGCsiRaPkZSL_km08sHlWLLd)t z6h^>99w+$B{|JQPssWp%A%yx-sFUX>aIz6}bU*|gM~4R7f}BhpKqowW(7*vekRSB_ zk18agtH7lM0wv%Q0sqt{?5eOvVTG+`QaL6OLj6r~F&XM=n|4T$ePnIRH z7zrZ~h=xiK3PeCo#sUJ7AQ%I7^#5Fvut&th^b-g~oje#I5IDiXaHs@LFb0R9-~{r} zkdx7ZpkP=Gj9@WL0zpV5Xt|KXx+O%8b{j{!g) z0){>52@JR}!wD9{5QIGF$uk=eNDu`G42nkm|LFMFys`h6C_(5k=A;tf76B*7F$@S6 zoPbC0;)Z}gB~Ek)EI>pfkOWpE5Ck~}cqgwDfI#TUYX{`;ZGgZ);3zqnI-mm}FjxYC zu#?Bj(T0E#DmmG&f$G4Z33dtaVo#tLfk6D@VgH{J2tl)e0}Y)Z$575&kkB#CozBwFYY5{L(&pg0oM5fx3|0-lc-K`hU{&G`G^$m|AnmsEL=8|M``JAU2JA?H;K$9HT!8>te56^of8>)v`oaKcyHSozn@a;u_c zBRTsb++29Zw(#Sow6*3t*$CpnY~~0~5||CRTcRy}8^-zWUHW;QaAzZRMgjnX;iM!} zH^_WMKrCiW$F~zslR(23cKOka+aw@!E%=H_O{w{MBs_2X{|1ySK}emO1Vpi9;Sxsv zA>-s0D#o^Zl6;;&>M`P(=ziqINONSp8%A*Zg==`mI;OlcUXH=}thK>%yfoxa_2BXA z#NdoZI(UUEYR|;~G$D*s@5>vFUpI%?w{9O`uE?$rwu{(dO*clm_$dAgK z+XP-6mKdlhFU$2gVNG?6U2t|B&J%yZxU0_B=^R;%;#}<)$VeracPdK9wm@@~b zR;-PQvE%j5oI7A$xNs9^*Fs`pG1BP;xJD5&cRIQwpoj$~9G!;crQqimxL%XCYuME_ zF`u+*@8ExWCOrdf<|J(x@kv|-U0aqNQmbRX`IPfM7&I(^bSkT7@2F_tT=Xm*3si8L z;C~C$xM}~#ppneyh3kvI81hUceJzfS%X$DLp09r;=RmYhNQC@R3p6e!%jmug zIn^$bo)b_}+QQxHW!$Lyd0ZjOh6;C>FhV6J>?6ONz>#?Fhs5o925Qk0gB^iGG;!m3 zDtu;~TtALeHu4S%cjmxt-B2}pU$t?tH{u}GH6PN~O`HF0_dFWOg*O5Ff(sV?%Q$fj zc+sJtlXqe4M|FH|T>zzIlGzlmvTF?^IRXlYJg(+LGP_L{hc(s@g30Wj6AYTrvUHLM zM#-;9vQ^?*es-F#zcA=?2lP4@jUaFc*U(2%rUSPdE?ju@%>M!i@+iiDtzH$yag8;E z-c>dvcq_<(N9wSh0VDMSxKK2cvjr#AT}6nN5geUxEm!3=A#yo-#S<54iTE_)3Kuxw z``5O#gC_#2I+Q17VGha9hhYR0tjW}l0E#5>;{7=9>aS06>ab4+=nX$&AS3|fy@Jb$9ho1SL z)q<>c7|G`;+@NbUj*WUt!&szftRBTXI0gy{O$Y}PMzRJB97^y(0Q2@os&ys)XBV07 z0D{8>djyU(b&ajP5_g|bIWH4hrePN96RUQRh`?3cnU0LO97RPNW2@qSoxqD)s&{5&gU??Kt`i5WV$cUSjnloe?J0G6=c>zM_w^1rl&BNo-33lCmdP**pM*HyBY$a z5@-G+CPYt*4X>PVSSRl9pFezYva_*p^&MEKqQIf?MPec=bDN5w6=U6UTXO&l9MwV+ z+vWuI*VviKif|1bozer38Txop)3HLmZO?}F4Qbg}%!1)n8y4st8FlHTb_n!bL(sR2 zU*`)Mb&2pC+-&a3Mf+P}?A!q%>ouY0M25IK$~s+=GL*)5aJU2N=73_>C}{wBdcI{3`FwGp)+^aYMFVMH9AxINg-Zp6(wGPlx% zg?;Qk`QMY(7Z>A;&9K#BSf|d0KzSlI2=9x|(_Su`E-TWQ1&=!Rly!CmtA*aWa#0_x zh1uq6%%#_bzEZ*1SJP5g^SON-&_fcuY-_TMYGHTw;K|jpv!FOiDBbp9OM|m<0c^$7JD0$BqR~Gv?OXG8plKyl9=^%A)P4B126ma!zEmjH& zi+j5}^JtZggIj9!AP3qg#0mnjCM;BxZDI#oWiM8%-g0kU^h%?lr?o+{<>)*ap(w$j zte{<{85;eLJ}xF`dL@Y(3r?l=i&RHPn^dF?nf4mdyOVQkx`Rf=z%1b$Oy*9fLXCDM z?4ZBz;CTZ=LywDEXwde~K)J@nA1O&kHu(7XN+0jjn16oy?c*Q6e|q}vyQgn|`S{oG Zw|{H?`|-m!pSLZw^7QrB-~aT()Bg&9RLlSX diff --git a/doc/bashref.ps b/doc/bashref.ps index a1b4062d9..313ebb83c 100644 --- a/doc/bashref.ps +++ b/doc/bashref.ps @@ -1,7 +1,7 @@ %!PS-Adobe-2.0 %%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software %%Title: bashref.dvi -%%Pages: 160 +%%Pages: 162 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMBXTI10 CMTI10 @@ -11,7 +11,7 @@ %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi %DVIPSParameters: dpi=600 -%DVIPSSource: TeX output 2008.04.08:0950 +%DVIPSSource: TeX output 2008.05.29:1148 %%BeginProcSet: tex.pro 0 0 %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -4490,9 +4490,9 @@ TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi) 48 50 65 68 61 68 102 34 65 1[34 68 61 37 56 68 55 68 60 34 6[93 1[127 2[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 2[34 41 34 4[34 26[68 72 11[{}62 109.091 /CMBX12 rf -/Fl 135[56 2[56 54 42 55 1[51 58 56 68 47 1[39 27 56 -58 49 51 57 54 53 56 46[50 2[50 1[34 45[{}23 90.9091 +61 61 1[34 41 34 4[34 26[68 72 11[{}63 109.091 /CMBX12 +rf /Fl 135[56 2[56 54 42 55 1[51 58 56 68 47 1[39 27 +56 58 49 51 57 54 53 56 46[50 2[50 1[34 45[{}23 90.9091 /CMCSC10 rf /Fm 135[42 1[42 1[30 37 38 1[46 46 51 74 23 2[28 1[42 1[42 46 42 1[46 50[28 33[51 12[{}18 90.9091 /CMTI10 rf /Fn 209[43 46[{}1 119.552 /CMBXTI10 rf /Fo @@ -4536,8 +4536,8 @@ letter %%Page: 1 1 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(3.2,)g(for)f -Fs(Bash)g Ft(V)-8 b(ersion)31 b(3.2.)3333 1697 y(April)f(2008)150 +b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(4.0,)g(for)f +Fs(Bash)g Ft(V)-8 b(ersion)31 b(4.0.)3364 1697 y(Ma)m(y)g(2008)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 @@ -4545,21 +4545,21 @@ 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 (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(3.2,)c(5)e(April)h -(2008\).)150 3133 y(This)36 b(is)g(Edition)h(3.2,)j(last)d(up)s(dated)e -(5)i(April)g(2008,)j(of)c Fq(The)h(GNU)g(Bash)g(Reference)g(Man)m(ual)p -Ft(,)i(for)150 3243 y Fs(Bash)p Ft(,)29 b(V)-8 b(ersion)31 -b(3.2.)150 3377 y(Cop)m(yrigh)m(t)602 3374 y(c)577 3377 -y Fp(\015)f Ft(1988{2007)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 -b(oundation,)31 b(Inc.)150 3512 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.2)g(or)f(an)m(y)g(later)390 3975 y(v)m(ersion)28 +(the)h(Bash)f(shell)h(\(v)m(ersion)150 2999 y(4.0,)c(25)f(Ma)m(y)g +(2008\).)150 3133 y(This)k(is)h(Edition)f(4.0,)k(last)d(up)s(dated)e +(25)j(Ma)m(y)g(2008,)i(of)c Fq(The)h(GNU)g(Bash)g(Reference)g(Man)m +(ual)p Ft(,)i(for)150 3243 y Fs(Bash)p Ft(,)29 b(V)-8 +b(ersion)31 b(4.0.)150 3377 y(Cop)m(yrigh)m(t)602 3374 +y(c)577 3377 y Fp(\015)f Ft(1988{2007)35 b(F)-8 b(ree)31 +b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)150 3512 +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.2)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 @@ -4631,7 +4631,7 @@ g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)44 b Ft(8)748 2852 y(3.2.3)93 b(Lists)30 b(of)h(Commands)23 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -54 b Ft(8)748 2961 y(3.2.4)93 b(Comp)s(ound)28 b(Commands)17 +54 b Ft(9)748 2961 y(3.2.4)93 b(Comp)s(ound)28 b(Commands)17 b Fm(.)d(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Ft(9)1047 3071 y(3.2.4.1)93 b(Lo)s(oping)30 b(Constructs)c Fm(.)15 b(.)g(.)g(.)g(.)g @@ -4643,13 +4643,13 @@ b Fm(.)h(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)42 b Ft(13)449 3400 y(3.3)92 b(Shell)30 b(F)-8 b(unctions)8 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)38 b Ft(13)449 3509 y(3.4)92 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)38 b Ft(14)449 3509 y(3.4)92 b(Shell)30 b(P)m(arameters)20 b Fm(.)c(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 b Ft(15)748 3619 y(3.4.1)93 b(P)m(ositional)32 b(P)m(arameters)14 b Fm(.)i(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Ft(15)748 3729 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Ft(16)748 3729 y(3.4.2)93 b(Sp)s(ecial)30 b(P)m(arameters)f Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Ft(16)449 @@ -4666,7 +4666,7 @@ b Ft(18)748 4167 y(3.5.3)93 b(Shell)30 b(P)m(arameter)h(Expansion)18 b Fm(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) h(.)f(.)g(.)g(.)47 b Ft(19)748 4276 y(3.5.4)93 b(Command)29 b(Substitution)f Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Ft(21)748 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Ft(22)748 4386 y(3.5.5)93 b(Arithmetic)31 b(Expansion)12 b Fm(.)j(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)42 b Ft(22)748 4496 y(3.5.6)93 b(Pro)s(cess)30 @@ -4675,12 +4675,12 @@ b(Substitution)19 b Fm(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g b Ft(22)748 4605 y(3.5.7)93 b(W)-8 b(ord)30 b(Splitting)c Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 -b Ft(22)748 4715 y(3.5.8)93 b(Filename)31 b(Expansion)25 +b Ft(23)748 4715 y(3.5.8)93 b(Filename)31 b(Expansion)25 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(23)1047 4824 y(3.5.8.1)93 b(P)m(attern)31 b(Matc)m(hing)20 b Fm(.)d(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)49 b Ft(23)748 4934 y(3.5.9)93 b(Quote)30 +(.)g(.)g(.)g(.)49 b Ft(24)748 4934 y(3.5.9)93 b(Quote)30 b(Remo)m(v)-5 b(al)15 b Fm(.)i(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)44 b Ft(25)449 5044 y(3.6)92 b(Redirections)24 @@ -4697,126 +4697,131 @@ b Ft(26)p eop end TeXDict begin -2 3 bop 150 -116 a Ft(ii)2612 b(Bash)31 b(Reference)g(Man)m(ual)748 83 y(3.6.3)93 b(App)s(ending)28 b(Redirected)j(Output)16 b Fm(.)e(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45 b Ft(26)748 193 y(3.6.4)93 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45 b Ft(27)748 193 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)g(and)h(Standard)f(Error)954 302 y Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 -b Ft(26)748 412 y(3.6.5)93 b(Here)30 b(Do)s(cumen)m(ts)13 -b Fm(.)k(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 -b Ft(27)748 521 y(3.6.6)93 b(Here)30 b(Strings)10 b Fm(.)15 -b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39 -b Ft(27)748 631 y(3.6.7)93 b(Duplicating)31 b(File)h(Descriptors)17 -b Fm(.)f(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)47 b Ft(27)748 741 y(3.6.8)93 b(Mo)m(ving)31 -b(File)h(Descriptors)15 b Fm(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)44 -b Ft(28)748 850 y(3.6.9)93 b(Op)s(ening)29 b(File)i(Descriptors)g(for)f -(Reading)h(and)f(W)-8 b(riting)954 960 y Fm(.)16 b(.)f(.)g(.)g(.)g(.)g +b Ft(27)748 412 y(3.6.5)93 b(App)s(ending)28 b(Standard)h(Output)h(and) +f(Standard)h(Error)954 521 y Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b Ft(28)449 1069 y(3.7)92 -b(Executing)31 b(Commands)25 b Fm(.)15 b(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)56 b Ft(28)748 1179 y(3.7.1)93 -b(Simple)30 b(Command)f(Expansion)c Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(28)748 -1289 y(3.7.2)93 b(Command)29 b(Searc)m(h)i(and)e(Execution)13 -b Fm(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)42 -b Ft(29)748 1398 y(3.7.3)93 b(Command)29 b(Execution)i(En)m(vironmen)m -(t)18 b Fm(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 -b Ft(29)748 1508 y(3.7.4)93 b(En)m(vironmen)m(t)21 b -Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.) -50 b Ft(30)748 1617 y(3.7.5)93 b(Exit)30 b(Status)8 b -Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)54 b Ft(27)748 631 y(3.6.6)93 b(Here)30 +b(Do)s(cumen)m(ts)13 b Fm(.)k(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)g(.)43 b Ft(27)748 741 y(3.6.7)93 b(Here)30 b(Strings)10 +b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)39 b Ft(28)748 850 y(3.6.8)93 b(Duplicating)31 b(File)h +(Descriptors)17 b Fm(.)f(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Ft(28)748 960 y(3.6.9)93 +b(Mo)m(ving)31 b(File)h(Descriptors)15 b Fm(.)h(.)f(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)44 +b Ft(28)748 1069 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f +(for)f(Reading)h(and)e(W)-8 b(riting)954 1179 y Fm(.)16 +b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.) -f(.)g(.)37 b Ft(31)748 1727 y(3.7.6)93 b(Signals)10 b +f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)54 b +Ft(29)449 1289 y(3.7)92 b(Executing)31 b(Commands)25 +b Fm(.)15 b(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +56 b Ft(29)748 1398 y(3.7.1)93 b(Simple)30 b(Command)f(Expansion)c Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)39 b Ft(31)449 1836 y(3.8)92 -b(Shell)30 b(Scripts)21 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 -b Ft(32)150 2079 y Fr(4)135 b(Shell)45 b(Builtin)g(Commands)38 -b Fn(.)19 b(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h -(.)f(.)82 b Fr(35)449 2216 y Ft(4.1)92 b(Bourne)30 b(Shell)g(Builtins) -16 b Fm(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)55 b Ft(29)748 1508 y(3.7.2)93 b(Command)29 +b(Searc)m(h)i(and)e(Execution)13 b Fm(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)42 b Ft(30)748 1617 y(3.7.3)93 +b(Command)29 b(Execution)i(En)m(vironmen)m(t)18 b Fm(.)d(.)g(.)g(.)g(.) +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)47 b Ft(30)748 1727 +y(3.7.4)93 b(En)m(vironmen)m(t)21 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)50 b Ft(31)748 1836 +y(3.7.5)93 b(Exit)30 b(Status)8 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)37 b Ft(32)748 +1946 y(3.7.6)93 b(Signals)10 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g +(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)39 +b Ft(32)449 2056 y(3.8)92 b(Shell)30 b(Scripts)21 b Fm(.)15 +b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) +g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Ft(33)150 2283 y Fr(4)135 +b(Shell)45 b(Builtin)g(Commands)38 b Fn(.)19 b(.)h(.)f(.)h(.)f(.)g(.)h +(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)82 b Fr(35)449 +2420 y Ft(4.1)92 b(Bourne)30 b(Shell)g(Builtins)16 b +Fm(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)45 b Ft(35)449 2325 y(4.2)92 b(Bash)30 b(Builtin)h(Commands)17 +45 b Ft(35)449 2529 y(4.2)92 b(Bash)30 b(Builtin)h(Commands)17 b Fm(.)d(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.) f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 -b Ft(41)449 2435 y(4.3)92 b(Mo)s(difying)30 b(Shell)h(Beha)m(vior)23 +b Ft(41)449 2639 y(4.3)92 b(Mo)s(difying)30 b(Shell)h(Beha)m(vior)23 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 -b Ft(49)748 2545 y(4.3.1)93 b(The)29 b(Set)i(Builtin)11 +b Ft(50)748 2749 y(4.3.1)93 b(The)29 b(Set)i(Builtin)11 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)40 -b Ft(49)748 2654 y(4.3.2)93 b(The)29 b(Shopt)h(Builtin)23 +b Ft(50)748 2858 y(4.3.2)93 b(The)29 b(Shopt)h(Builtin)23 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)52 -b Ft(53)449 2764 y(4.4)92 b(Sp)s(ecial)31 b(Builtins)22 +b Ft(53)449 2968 y(4.4)92 b(Sp)s(ecial)31 b(Builtins)22 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)52 b Ft(57)150 3006 y Fr(5)135 +g(.)g(.)g(.)g(.)g(.)g(.)52 b Ft(58)150 3195 y Fr(5)135 b(Shell)45 b(V)-11 b(ariables)10 b Fn(.)21 b(.)e(.)h(.)f(.)g(.)h(.)f(.) h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f -(.)h(.)f(.)55 b Fr(59)449 3143 y Ft(5.1)92 b(Bourne)30 +(.)h(.)f(.)55 b Fr(59)449 3332 y Ft(5.1)92 b(Bourne)30 b(Shell)g(V)-8 b(ariables)11 b Fm(.)17 b(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Ft(59)449 3253 y(5.2)92 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Ft(59)449 3442 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)17 b Fm(.)g(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 -b Ft(59)150 3495 y Fr(6)135 b(Bash)44 b(F)-11 b(eatures)31 +b Ft(59)150 3669 y Fr(6)135 b(Bash)44 b(F)-11 b(eatures)31 b Fn(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f (.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)75 b Fr(69)449 -3632 y Ft(6.1)92 b(In)m(v)m(oking)31 b(Bash)e Fm(.)15 +3806 y Ft(6.1)92 b(In)m(v)m(oking)31 b(Bash)e Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h (.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)58 b Ft(69)449 3742 y(6.2)92 b(Bash)30 +g(.)g(.)g(.)g(.)g(.)58 b Ft(69)449 3915 y(6.2)92 b(Bash)30 b(Startup)g(Files)c Fm(.)15 b(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(71)449 3851 y(6.3)92 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(71)449 4025 y(6.3)92 b(In)m(teractiv)m(e)33 b(Shells)14 b Fm(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)43 -b Ft(73)748 3961 y(6.3.1)93 b(What)31 b(is)f(an)g(In)m(teractiv)m(e)j +b Ft(73)748 4134 y(6.3.1)93 b(What)31 b(is)f(an)g(In)m(teractiv)m(e)j (Shell?)20 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)49 b Ft(73)748 4071 y(6.3.2)93 +(.)g(.)g(.)g(.)g(.)g(.)49 b Ft(73)748 4244 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m(e?)10 b Fm(.)18 b(.)d(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)40 b Ft(73)748 4180 y(6.3.3)93 +(.)g(.)g(.)g(.)g(.)g(.)40 b Ft(73)748 4354 y(6.3.3)93 b(In)m(teractiv)m(e)32 b(Shell)f(Beha)m(vior)22 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)51 b Ft(73)449 4290 y(6.4)92 b(Bash)30 +(.)g(.)g(.)g(.)51 b Ft(73)449 4463 y(6.4)92 b(Bash)30 b(Conditional)h(Expressions)20 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.) -f(.)49 b Ft(74)449 4399 y(6.5)92 b(Shell)30 b(Arithmetic)f +f(.)49 b Ft(74)449 4573 y(6.5)92 b(Shell)30 b(Arithmetic)f Fm(.)15 b(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)h(.)f(.)g(.)57 b Ft(76)449 4509 y(6.6)92 b(Aliases)25 +g(.)g(.)h(.)f(.)g(.)57 b Ft(76)449 4682 y(6.6)92 b(Aliases)25 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)53 -b Ft(77)449 4619 y(6.7)92 b(Arra)m(ys)29 b Fm(.)15 b(.)g(.)g(.)g(.)g(.) +b Ft(77)449 4792 y(6.7)92 b(Arra)m(ys)29 b Fm(.)15 b(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Ft(78)449 4728 y(6.8)92 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Ft(78)449 4902 y(6.8)92 b(The)30 b(Directory)i(Stac)m(k)15 b Fm(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.) f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)44 b Ft(79)748 -4838 y(6.8.1)93 b(Directory)31 b(Stac)m(k)h(Builtins)10 +5011 y(6.8.1)93 b(Directory)31 b(Stac)m(k)h(Builtins)10 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Ft(79)449 4947 y(6.9)92 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)40 b Ft(79)449 5121 y(6.9)92 b(Con)m(trolling)31 b(the)g(Prompt)15 b Fm(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)44 b Ft(80)449 5057 y(6.10)92 +g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)44 b Ft(80)449 5230 y(6.10)92 b(The)30 b(Restricted)i(Shell)11 b Fm(.)k(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)40 b Ft(82)449 5166 +g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)40 b Ft(82)449 5340 y(6.11)92 b(Bash)31 b(POSIX)e(Mo)s(de)16 b Fm(.)f(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)45 b @@ -4861,124 +4866,124 @@ Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g g(.)g(.)g(.)g(.)56 b Ft(94)748 1695 y(8.3.1)93 b(Readline)31 b(Init)f(File)h(Syn)m(tax)12 b Fm(.)k(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)41 -b Ft(94)748 1805 y(8.3.2)93 b(Conditional)30 b(Init)h(Constructs)e +b Ft(94)748 1805 y(8.3.2)93 b(Conditional)30 b(Init)h(Constructs)d Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)59 b Ft(99)748 1914 y(8.3.3)93 b(Sample)30 +(.)g(.)g(.)58 b Ft(100)748 1914 y(8.3.3)93 b(Sample)30 b(Init)g(File)20 b Fm(.)c(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -50 b Ft(100)449 2024 y(8.4)92 b(Bindable)31 b(Readline)g(Commands)11 +50 b Ft(101)449 2024 y(8.4)92 b(Bindable)31 b(Readline)g(Commands)11 b Fm(.)j(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Ft(103)748 2134 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Ft(104)748 2134 y(8.4.1)93 b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)c Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(103)748 2243 y(8.4.2)93 +(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(104)748 2243 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f(History)17 -b Fm(.)e(.)g(.)g(.)h(.)f(.)46 b Ft(103)748 2353 y(8.4.3)93 +b Fm(.)e(.)g(.)g(.)h(.)f(.)46 b Ft(104)748 2353 y(8.4.3)93 b(Commands)29 b(F)-8 b(or)31 b(Changing)f(T)-8 b(ext)29 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -58 b Ft(105)748 2462 y(8.4.4)93 b(Killing)31 b(And)e(Y)-8 +58 b Ft(106)748 2462 y(8.4.4)93 b(Killing)31 b(And)e(Y)-8 b(anking)16 b Fm(.)g(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)46 b -Ft(106)748 2572 y(8.4.5)93 b(Sp)s(ecifying)29 b(Numeric)i(Argumen)m(ts) +Ft(107)748 2572 y(8.4.5)93 b(Sp)s(ecifying)29 b(Numeric)i(Argumen)m(ts) 23 b Fm(.)15 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)53 b Ft(107)748 2682 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s +(.)53 b Ft(108)748 2682 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)18 b Fm(.)e(.)f(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Ft(107)748 2791 y(8.4.7)93 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)48 b Ft(108)748 2791 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)10 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)h(.) f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)40 b Ft(108)748 2901 y(8.4.8)93 b(Some)30 +(.)g(.)g(.)40 b Ft(109)748 2901 y(8.4.8)93 b(Some)30 b(Miscellaneous)i(Commands)12 b Fm(.)i(.)h(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Ft(109)449 3010 y(8.5)92 +(.)g(.)g(.)g(.)g(.)g(.)g(.)42 b Ft(110)449 3010 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)c Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(111)449 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)55 b Ft(112)449 3120 y(8.6)92 b(Programmable)31 b(Completion)12 b Fm(.)j(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Ft(111)449 3230 y(8.7)92 +(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Ft(112)449 3230 y(8.7)92 b(Programmable)31 b(Completion)g(Builtins)12 b Fm(.)j(.)g(.)g(.)h(.)f (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)42 -b Ft(113)150 3472 y Fr(9)135 b(Using)45 b(History)h(In)l(teractiv)l +b Ft(114)150 3472 y Fr(9)135 b(Using)45 b(History)h(In)l(teractiv)l (ely)14 b Fn(.)22 b(.)d(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f -(.)58 b Fr(117)449 3609 y Ft(9.1)92 b(Bash)30 b(History)h(F)-8 +(.)58 b Fr(119)449 3609 y Ft(9.1)92 b(Bash)30 b(History)h(F)-8 b(acilities)11 b Fm(.)19 b(.)c(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)41 b Ft(117)449 3719 y(9.2)92 b(Bash)30 b(History)h +g(.)g(.)g(.)41 b Ft(119)449 3719 y(9.2)92 b(Bash)30 b(History)h (Builtins)9 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)h(.)f(.)38 b Ft(117)449 3828 y(9.3)92 b(History)31 +g(.)h(.)f(.)38 b Ft(119)449 3828 y(9.3)92 b(History)31 b(Expansion)d Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)58 b Ft(119)748 3938 y(9.3.1)93 b(Ev)m(en)m(t)31 +g(.)g(.)g(.)g(.)g(.)58 b Ft(121)748 3938 y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)21 b Fm(.)c(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 -b Ft(119)748 4047 y(9.3.2)93 b(W)-8 b(ord)30 b(Designators)g +b Ft(121)748 4047 y(9.3.2)93 b(W)-8 b(ord)30 b(Designators)g Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Ft(120)748 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)58 b Ft(122)748 4157 y(9.3.3)93 b(Mo)s(di\014ers)27 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)57 b Ft(121)150 +g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)57 b Ft(123)150 4399 y Fr(10)135 b(Installing)46 b(Bash)30 b Fn(.)20 b(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f -(.)h(.)f(.)g(.)h(.)f(.)h(.)74 b Fr(123)449 4536 y Ft(10.1)92 +(.)h(.)f(.)g(.)h(.)f(.)h(.)74 b Fr(125)449 4536 y Ft(10.1)92 b(Basic)32 b(Installation)d Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Ft(123)449 4646 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)57 b Ft(125)449 4646 y(10.2)92 b(Compilers)30 b(and)g(Options)22 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)51 -b Ft(123)449 4755 y(10.3)92 b(Compiling)31 b(F)-8 b(or)31 +b Ft(125)449 4755 y(10.3)92 b(Compiling)31 b(F)-8 b(or)31 b(Multiple)g(Arc)m(hitectures)12 b Fm(.)k(.)f(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)41 b Ft(124)449 +(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)41 b Ft(126)449 4865 y(10.4)92 b(Installation)32 b(Names)22 b Fm(.)16 b(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)51 -b Ft(124)449 4975 y(10.5)92 b(Sp)s(ecifying)30 b(the)h(System)f(T)m(yp) +b Ft(126)449 4975 y(10.5)92 b(Sp)s(ecifying)30 b(the)h(System)f(T)m(yp) s(e)11 b Fm(.)k(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Ft(124)449 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)41 b Ft(126)449 5084 y(10.6)92 b(Sharing)30 b(Defaults)21 b Fm(.)16 b(.)f(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 -b Ft(125)449 5194 y(10.7)92 b(Op)s(eration)30 b(Con)m(trols)12 +b Ft(127)449 5194 y(10.7)92 b(Op)s(eration)30 b(Con)m(trols)12 b Fm(.)k(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g -(.)41 b Ft(125)449 5303 y(10.8)92 b(Optional)31 b(F)-8 +(.)41 b Ft(127)449 5303 y(10.8)92 b(Optional)31 b(F)-8 b(eatures)17 b Fm(.)g(.)e(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)47 b Ft(125)p eop end +g(.)g(.)g(.)g(.)g(.)47 b Ft(127)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)99 b(Rep)t(orting)46 b(Bugs)12 b Fn(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f -(.)h(.)f(.)g(.)h(.)f(.)h(.)56 b Fr(131)150 353 y(App)t(endix)44 +(.)h(.)f(.)g(.)h(.)f(.)h(.)56 b Fr(133)150 353 y(App)t(endix)44 b(B)105 b(Ma)7 b(jor)46 b(Di\013erences)g(F)-11 b(rom)45 b(The)f(Bourne)419 486 y(Shell)17 b Fn(.)j(.)f(.)h(.)f(.)h(.)f(.)g(.)h (.)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(.)f(.)61 b Fr(133)449 623 +h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)61 b Fr(135)449 623 y Ft(B.1)92 b(Implemen)m(tation)31 b(Di\013erences)h(F)-8 b(rom)31 b(The)f(SVR4.2)h(Shell)21 b Fm(.)15 b(.)g(.)g(.)g(.)50 -b Ft(137)150 865 y Fr(App)t(endix)44 b(C)104 b(GNU)46 +b Ft(139)150 865 y Fr(App)t(endix)44 b(C)104 b(GNU)46 b(F)-11 b(ree)44 b(Do)t(cumen)l(tation)j(License)454 998 y Fn(.)19 b(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f (.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.) -f(.)g(.)h(.)f(.)h(.)f(.)79 b Fr(139)150 1268 y(App)t(endix)44 +f(.)g(.)h(.)f(.)h(.)f(.)79 b Fr(141)150 1268 y(App)t(endix)44 b(D)98 b(Indexes)36 b Fn(.)20 b(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)f(.)g(.)h -(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)79 b Fr(147)449 +(.)f(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)h(.)f(.)h(.)79 b Fr(149)449 1405 y Ft(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h(Commands)21 b Fm(.)14 b(.)h(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)51 b Ft(147)449 1514 y(D.2)92 +(.)g(.)g(.)g(.)g(.)g(.)51 b Ft(149)449 1514 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8 b(ords)13 b Fm(.)j(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) -g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Ft(149)449 1624 +g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)43 b Ft(150)449 1624 y(D.3)92 b(P)m(arameter)32 b(and)d(V)-8 b(ariable)32 b(Index)21 b Fm(.)15 b(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g -(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Ft(149)449 +(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)51 b Ft(150)449 1733 y(D.4)92 b(F)-8 b(unction)31 b(Index)19 b Fm(.)c(.)g(.)g(.)g(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)49 -b Ft(151)449 1843 y(D.5)92 b(Concept)31 b(Index)9 b Fm(.)k(.)j(.)f(.)g +b Ft(152)449 1843 y(D.5)92 b(Concept)31 b(Index)9 b Fm(.)k(.)j(.)f(.)g (.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.) g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g -(.)38 b Ft(153)p eop end +(.)38 b Ft(154)p eop end %%Page: 1 7 TeXDict begin 1 6 bop 150 -116 a Ft(Chapter)30 b(1:)41 b(In)m(tro)s(duction)2592 b(1)150 299 y Fo(1)80 b(In)l(tro)t(duction) @@ -5095,49 +5100,50 @@ Ft(A)20 b Fs(token)f Ft(that)i(p)s(erforms)e(a)i(con)m(trol)g (function.)37 b(It)21 b(is)f(a)h Fs(newline)d Ft(or)j(one)f(of)h(the)f (follo)m(wing:)630 1593 y(`)p Fs(||)p Ft(',)31 b(`)p Fs(&&)p Ft(',)f(`)p Fs(&)p Ft(',)h(`)p Fs(;)p Ft(',)g(`)p -Fs(;;)p Ft(',)f(`)p Fs(|)p Ft(',)h(`)p Fs(\()p Ft(',)g(or)f(`)p -Fs(\))p Ft('.)150 1750 y Fs(exit)f(status)630 1860 y -Ft(The)f(v)-5 b(alue)29 b(returned)e(b)m(y)h(a)h(command)f(to)h(its)g -(caller.)41 b(The)28 b(v)-5 b(alue)29 b(is)f(restricted)h(to)h(eigh)m -(t)630 1969 y(bits,)h(so)f(the)h(maxim)m(um)f(v)-5 b(alue)31 -b(is)f(255.)150 2126 y Fs(field)240 b Ft(A)27 b(unit)g(of)g(text)h -(that)g(is)f(the)g(result)g(of)g(one)h(of)f(the)g(shell)g(expansions.) -40 b(After)27 b(expansion,)630 2236 y(when)e(executing)h(a)g(command,)h -(the)f(resulting)f(\014elds)g(are)h(used)f(as)h(the)g(command)f(name) -630 2346 y(and)30 b(argumen)m(ts.)150 2503 y Fs(filename)96 -b Ft(A)30 b(string)h(of)f(c)m(haracters)i(used)e(to)h(iden)m(tify)g(a)f -(\014le.)150 2659 y Fs(job)336 b Ft(A)31 b(set)h(of)f(pro)s(cesses)g -(comprising)g(a)g(pip)s(eline,)g(and)g(an)m(y)g(pro)s(cesses)g -(descended)g(from)f(it,)630 2769 y(that)h(are)g(all)g(in)f(the)h(same)f -(pro)s(cess)g(group.)150 2926 y Fs(job)f(control)630 -3036 y Ft(A)22 b(mec)m(hanism)g(b)m(y)f(whic)m(h)h(users)f(can)h -(selectiv)m(ely)i(stop)e(\(susp)s(end\))e(and)h(restart)i(\(resume\)) -630 3145 y(execution)32 b(of)e(pro)s(cesses.)150 3302 -y Fs(metacharacter)630 3412 y Ft(A)25 b(c)m(haracter)i(that,)g(when)d -(unquoted,)i(separates)g(w)m(ords.)38 b(A)26 b(metac)m(haracter)i(is)d -(a)g Fs(blank)630 3521 y Ft(or)30 b(one)h(of)g(the)f(follo)m(wing)i(c)m -(haracters:)42 b(`)p Fs(|)p Ft(',)31 b(`)p Fs(&)p Ft(',)g(`)p -Fs(;)p Ft(',)g(`)p Fs(\()p Ft(',)f(`)p Fs(\))p Ft(',)h(`)p -Fs(<)p Ft(',)g(or)f(`)p Fs(>)p Ft('.)150 3678 y Fs(name)288 -b Ft(A)37 b Fs(word)f Ft(consisting)i(solely)h(of)e(letters,)j(n)m(um)m -(b)s(ers,)e(and)f(underscores,)h(and)f(b)s(eginning)630 -3788 y(with)23 b(a)g(letter)h(or)f(underscore.)38 b Fs(Name)p -Ft(s)22 b(are)h(used)f(as)i(shell)f(v)-5 b(ariable)24 -b(and)e(function)h(names.)630 3898 y(Also)31 b(referred)f(to)h(as)f(an) -h Fs(identifier)p Ft(.)150 4055 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 -4164 y(tions],)31 b(page)g(25,)h(for)e(a)h(list)g(of)f(redirection)h -(op)s(erators.)150 4321 y Fs(process)d(group)630 4431 -y Ft(A)i(collection)k(of)c(related)h(pro)s(cesses)g(eac)m(h)g(ha)m -(ving)g(the)g(same)f(pro)s(cess)g(group)g Fl(id)p Ft(.)150 -4588 y Fs(process)e(group)h(ID)630 4697 y Ft(A)h(unique)g(iden)m -(ti\014er)h(that)f(represen)m(ts)h(a)g Fs(process)d(group)h -Ft(during)g(its)i(lifetime.)150 4854 y Fs(reserved)d(word)630 -4964 y Ft(A)h Fs(word)e Ft(that)i(has)f(a)h(sp)s(ecial)g(meaning)f(to)h -(the)g(shell.)40 b(Most)30 b(reserv)m(ed)e(w)m(ords)g(in)m(tro)s(duce) -630 5073 y(shell)j(\015o)m(w)f(con)m(trol)i(constructs,)f(suc)m(h)f(as) -g Fs(for)g Ft(and)g Fs(while)p Ft(.)150 5230 y Fs(return)f(status)630 +Fs(;;)p Ft(',)f(`)p Fs(|)p Ft(',)h(`)p Fs(|&)p Ft(',)f(`)p +Fs(\()p Ft(',)h(or)g(`)p Fs(\))p Ft('.)150 1750 y Fs(exit)e(status)630 +1860 y Ft(The)f(v)-5 b(alue)29 b(returned)e(b)m(y)h(a)h(command)f(to)h +(its)g(caller.)41 b(The)28 b(v)-5 b(alue)29 b(is)f(restricted)h(to)h +(eigh)m(t)630 1969 y(bits,)h(so)f(the)h(maxim)m(um)f(v)-5 +b(alue)31 b(is)f(255.)150 2126 y Fs(field)240 b Ft(A)27 +b(unit)g(of)g(text)h(that)g(is)f(the)g(result)g(of)g(one)h(of)f(the)g +(shell)g(expansions.)40 b(After)27 b(expansion,)630 2236 +y(when)e(executing)h(a)g(command,)h(the)f(resulting)f(\014elds)g(are)h +(used)f(as)h(the)g(command)f(name)630 2346 y(and)30 b(argumen)m(ts.)150 +2503 y Fs(filename)96 b Ft(A)30 b(string)h(of)f(c)m(haracters)i(used)e +(to)h(iden)m(tify)g(a)f(\014le.)150 2659 y Fs(job)336 +b Ft(A)31 b(set)h(of)f(pro)s(cesses)g(comprising)g(a)g(pip)s(eline,)g +(and)g(an)m(y)g(pro)s(cesses)g(descended)g(from)f(it,)630 +2769 y(that)h(are)g(all)g(in)f(the)h(same)f(pro)s(cess)g(group.)150 +2926 y Fs(job)f(control)630 3036 y Ft(A)22 b(mec)m(hanism)g(b)m(y)f +(whic)m(h)h(users)f(can)h(selectiv)m(ely)i(stop)e(\(susp)s(end\))e(and) +h(restart)i(\(resume\))630 3145 y(execution)32 b(of)e(pro)s(cesses.)150 +3302 y Fs(metacharacter)630 3412 y Ft(A)25 b(c)m(haracter)i(that,)g +(when)d(unquoted,)i(separates)g(w)m(ords.)38 b(A)26 b(metac)m(haracter) +i(is)d(a)g Fs(blank)630 3521 y Ft(or)30 b(one)h(of)g(the)f(follo)m +(wing)i(c)m(haracters:)42 b(`)p Fs(|)p Ft(',)31 b(`)p +Fs(&)p Ft(',)g(`)p Fs(;)p Ft(',)g(`)p Fs(\()p Ft(',)f(`)p +Fs(\))p Ft(',)h(`)p Fs(<)p Ft(',)g(or)f(`)p Fs(>)p Ft('.)150 +3678 y Fs(name)288 b Ft(A)37 b Fs(word)f Ft(consisting)i(solely)h(of)e +(letters,)j(n)m(um)m(b)s(ers,)e(and)f(underscores,)h(and)f(b)s +(eginning)630 3788 y(with)23 b(a)g(letter)h(or)f(underscore.)38 +b Fs(Name)p Ft(s)22 b(are)h(used)f(as)i(shell)f(v)-5 +b(ariable)24 b(and)e(function)h(names.)630 3898 y(Also)31 +b(referred)f(to)h(as)f(an)h Fs(identifier)p Ft(.)150 +4055 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 4164 y(tions],)31 +b(page)g(25,)h(for)e(a)h(list)g(of)f(redirection)h(op)s(erators.)150 +4321 y Fs(process)d(group)630 4431 y Ft(A)i(collection)k(of)c(related)h +(pro)s(cesses)g(eac)m(h)g(ha)m(ving)g(the)g(same)f(pro)s(cess)g(group)g +Fl(id)p Ft(.)150 4588 y Fs(process)e(group)h(ID)630 4697 +y Ft(A)h(unique)g(iden)m(ti\014er)h(that)f(represen)m(ts)h(a)g +Fs(process)d(group)h Ft(during)g(its)i(lifetime.)150 +4854 y Fs(reserved)d(word)630 4964 y Ft(A)h Fs(word)e +Ft(that)i(has)f(a)h(sp)s(ecial)g(meaning)f(to)h(the)g(shell.)40 +b(Most)30 b(reserv)m(ed)e(w)m(ords)g(in)m(tro)s(duce)630 +5073 y(shell)j(\015o)m(w)f(con)m(trol)i(constructs,)f(suc)m(h)f(as)g +Fs(for)g Ft(and)g Fs(while)p Ft(.)150 5230 y Fs(return)f(status)630 5340 y Ft(A)h(synon)m(ym)g(for)g Fs(exit)g(status)p Ft(.)p eop end %%Page: 4 10 @@ -5196,7 +5202,7 @@ y Ft(The)28 b(follo)m(wing)i(is)f(a)g(brief)f(description)h(of)g(the)g (shell's)g(op)s(eration)h(when)d(it)j(reads)e(and)g(executes)j(a)150 3375 y(command.)40 b(Basically)-8 b(,)34 b(the)c(shell)h(do)s(es)f(the) h(follo)m(wing:)199 3513 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(32\),)k +(\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(33\),)k (from)41 b(a)i(string)330 3623 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 3732 y(page)j(69\),)h(or) @@ -5220,10 +5226,10 @@ b(page)h(23\))h(and)e(commands)g(and)g(argumen)m(ts.)199 4935 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 5071 y(6.)61 b(Executes)31 b(the)g(command)f(\(see)h(Section)g(3.7)h -([Executing)f(Commands],)f(page)h(28\).)199 5208 y(7.)61 +([Executing)f(Commands],)f(page)h(29\).)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(31\).)p +y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(32\).)p eop end %%Page: 6 12 TeXDict begin 6 11 bop 150 -116 a Ft(6)2617 b(Bash)31 @@ -5240,11 +5246,11 @@ e(sp)s(ecial)i(meaning)150 995 y(to)40 b(the)g(shell)f(and)g(m)m(ust)g (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 1105 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(119\),)47 b(the)150 1214 y Fq(history)30 +(teraction],)j(page)c(121\),)47 b(the)150 1214 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 1324 y(Section)22 b(9.1)g([Bash)f(History)h(F) --8 b(acilities],)26 b(page)c(117,)j(for)20 b(more)h(details)h +-8 b(acilities],)26 b(page)c(119,)j(for)20 b(more)h(details)h (concerning)g(history)f(expansion.)275 1453 y(There)37 b(are)h(three)f(quoting)h(mec)m(hanisms:)56 b(the)38 b Fq(escap)s(e)g(c)m(haracter)p Ft(,)j(single)d(quotes,)i(and)d(double) @@ -5349,7 +5355,7 @@ Fs(TEXTDOMAIN)p Ft(.mo.)150 4415 y Fk(3.1.3)63 b(Commen)m(ts)275 (teractiv)m(e)k(shell)d(in)f(whic)m(h)h(the)f Fs(interactive_comments) 150 4792 y Ft(option)41 b(to)h(the)f Fs(shopt)e Ft(builtin)i(is)g (enabled)g(\(see)g(Section)h(4.3.2)h([The)d(Shopt)g(Builtin],)45 -b(page)c(53\),)150 4902 y(a)d(w)m(ord)f(b)s(eginning)g(with)h(`)p +b(page)c(54\),)150 4902 y(a)d(w)m(ord)f(b)s(eginning)g(with)h(`)p Fs(#)p Ft(')g(causes)g(that)g(w)m(ord)g(and)f(all)h(remaining)g(c)m (haracters)h(on)f(that)g(line)g(to)150 5011 y(b)s(e)33 b(ignored.)52 b(An)33 b(in)m(teractiv)m(e)k(shell)d(without)g(the)h @@ -5363,1967 +5369,2023 @@ eop end %%Page: 8 14 TeXDict begin 8 13 bop 150 -116 a Ft(8)2617 b(Bash)31 b(Reference)g(Man)m(ual)150 299 y Fr(3.2)68 b(Shell)45 -b(Commands)275 553 y Ft(A)32 b(simple)g(shell)g(command)g(suc)m(h)g(as) +b(Commands)275 544 y Ft(A)32 b(simple)g(shell)g(command)g(suc)m(h)g(as) h Fs(echo)c(a)h(b)g(c)i Ft(consists)g(of)h(the)f(command)g(itself)h -(follo)m(w)m(ed)h(b)m(y)150 663 y(argumen)m(ts,)d(separated)g(b)m(y)f -(spaces.)275 808 y(More)h(complex)h(shell)f(commands)g(are)g(comp)s +(follo)m(w)m(ed)h(b)m(y)150 654 y(argumen)m(ts,)d(separated)g(b)m(y)f +(spaces.)275 790 y(More)h(complex)h(shell)f(commands)g(are)g(comp)s (osed)g(of)g(simple)g(commands)g(arranged)g(together)h(in)150 -917 y(a)f(v)-5 b(ariet)m(y)32 b(of)f(w)m(a)m(ys:)41 b(in)31 +899 y(a)f(v)-5 b(ariet)m(y)32 b(of)f(w)m(a)m(ys:)41 b(in)31 b(a)g(pip)s(eline)f(in)g(whic)m(h)g(the)h(output)f(of)h(one)f(command)h -(b)s(ecomes)f(the)h(input)f(of)150 1027 y(a)h(second,)f(in)h(a)f(lo)s +(b)s(ecomes)f(the)h(input)f(of)150 1009 y(a)h(second,)f(in)h(a)f(lo)s (op)h(or)f(conditional)i(construct,)f(or)f(in)g(some)h(other)g -(grouping.)150 1272 y Fk(3.2.1)63 b(Simple)41 b(Commands)275 -1526 y Ft(A)26 b(simple)h(command)g(is)f(the)h(kind)f(of)h(command)g +(grouping.)150 1235 y Fk(3.2.1)63 b(Simple)41 b(Commands)275 +1481 y Ft(A)26 b(simple)h(command)g(is)f(the)h(kind)f(of)h(command)g (encoun)m(tered)g(most)g(often.)40 b(It's)27 b(just)f(a)i(sequence)150 -1636 y(of)f(w)m(ords)f(separated)h(b)m(y)g Fs(blank)p +1590 y(of)f(w)m(ords)f(separated)h(b)m(y)g Fs(blank)p Ft(s,)f(terminated)h(b)m(y)g(one)g(of)g(the)g(shell's)g(con)m(trol)h -(op)s(erators)f(\(see)h(Chap-)150 1745 y(ter)34 b(2)g([De\014nitions],) +(op)s(erators)f(\(see)h(Chap-)150 1700 y(ter)34 b(2)g([De\014nitions],) i(page)f(3\).)51 b(The)34 b(\014rst)f(w)m(ord)g(generally)i(sp)s (eci\014es)e(a)i(command)e(to)i(b)s(e)e(executed,)150 -1855 y(with)d(the)h(rest)f(of)h(the)f(w)m(ords)g(b)s(eing)g(that)h -(command's)f(argumen)m(ts.)275 2000 y(The)h(return)h(status)g(\(see)i -(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(31\))g(of)g(a)g(simple)f -(command)g(is)h(its)150 2109 y(exit)38 b(status)f(as)g(pro)m(vided)f(b) +1809 y(with)d(the)h(rest)f(of)h(the)f(w)m(ords)g(b)s(eing)g(that)h +(command's)f(argumen)m(ts.)275 1945 y(The)h(return)h(status)g(\(see)i +(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(32\))g(of)g(a)g(simple)f +(command)g(is)h(its)150 2055 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 2219 y(w)m(as)31 -b(terminated)g(b)m(y)f(signal)h Fq(n)p Ft(.)150 2463 -y Fk(3.2.2)63 b(Pip)s(elines)275 2718 y Ft(A)30 b Fs(pipeline)e -Ft(is)j(a)f(sequence)h(of)g(simple)f(commands)g(separated)h(b)m(y)f(`)p -Fs(|)p Ft('.)275 2863 y(The)f(format)i(for)f(a)h(pip)s(eline)f(is)390 -3007 y Fs([time)46 b([-p]])h([!])g Fj(command1)56 b Fs([|)47 -b Fj(command2)56 b Fs(...)o(])150 3152 y Ft(The)36 b(output)h(of)g(eac) -m(h)h(command)e(in)h(the)g(pip)s(eline)f(is)h(connected)h(via)f(a)g -(pip)s(e)f(to)i(the)f(input)f(of)h(the)150 3262 y(next)31 -b(command.)40 b(That)30 b(is,)h(eac)m(h)h(command)e(reads)g(the)g -(previous)g(command's)g(output.)275 3407 y(The)36 b(reserv)m(ed)g(w)m -(ord)g Fs(time)g Ft(causes)h(timing)g(statistics)h(to)f(b)s(e)f(prin)m -(ted)g(for)g(the)h(pip)s(eline)f(once)h(it)150 3516 y(\014nishes.)51 -b(The)34 b(statistics)i(curren)m(tly)e(consist)h(of)f(elapsed)h(\(w)m -(all-clo)s(c)m(k\))i(time)e(and)f(user)f(and)h(system)150 -3626 y(time)i(consumed)f(b)m(y)g(the)h(command's)f(execution.)57 -b(The)35 b(`)p Fs(-p)p Ft(')h(option)f(c)m(hanges)i(the)f(output)f -(format)150 3735 y(to)i(that)f(sp)s(eci\014ed)f(b)m(y)h +(128)p Fs(+)p Fq(n)g Ft(if)g(the)g(command)150 2164 y(w)m(as)31 +b(terminated)g(b)m(y)f(signal)h Fq(n)p Ft(.)150 2391 +y Fk(3.2.2)63 b(Pip)s(elines)275 2636 y Ft(A)26 b Fs(pipeline)e +Ft(is)i(a)h(sequence)g(of)f(simple)h(commands)e(separated)i(b)m(y)f +(one)h(of)g(the)f(con)m(trol)i(op)s(erators)150 2746 +y(`)p Fs(|)p Ft(')j(or)f(`)p Fs(|&)p Ft('.)275 2882 y(The)f(format)i +(for)f(a)h(pip)s(eline)f(is)390 3017 y Fs([time)46 b([-p]])h([!])g +Fj(command1)56 b Fs([)47 b([|)g(or)h(|&])e Fj(command2)56 +b Fs(...])150 3153 y Ft(The)25 b(output)f(of)i(eac)m(h)g(command)f(in)f +(the)i(pip)s(eline)e(is)i(connected)g(via)f(a)h(pip)s(e)e(to)i(the)f +(input)f(of)h(the)h(next)150 3263 y(command.)40 b(That)29 +b(is,)h(eac)m(h)h(command)e(reads)g(the)h(previous)f(command's)g +(output.)40 b(This)29 b(connection)150 3372 y(is)h(p)s(erformed)f(b)s +(efore)h(an)m(y)h(redirections)g(sp)s(eci\014ed)f(b)m(y)g(the)g +(command.)275 3508 y(If)j(`)p Fs(|&)p Ft(')h(is)h(used,)f(the)h +(standard)e(error)h(of)g Fq(command1)42 b Ft(is)34 b(connected)h(to)g +Fq(command2)7 b Ft('s)35 b(standard)150 3618 y(input)25 +b(through)g(the)h(pip)s(e;)h(it)f(is)g(shorthand)f(for)g +Fs(2>&1)k(|)p Ft(.)39 b(This)25 b(implicit)i(redirection)g(of)f(the)g +(standard)150 3727 y(error)k(is)g(p)s(erformed)f(after)i(an)m(y)g +(redirections)g(sp)s(eci\014ed)e(b)m(y)i(the)f(command.)275 +3863 y(The)36 b(reserv)m(ed)g(w)m(ord)g Fs(time)g Ft(causes)h(timing)g +(statistics)h(to)f(b)s(e)f(prin)m(ted)g(for)g(the)h(pip)s(eline)f(once) +h(it)150 3973 y(\014nishes.)51 b(The)34 b(statistics)i(curren)m(tly)e +(consist)h(of)f(elapsed)h(\(w)m(all-clo)s(c)m(k\))i(time)e(and)f(user)f +(and)h(system)150 4082 y(time)i(consumed)f(b)m(y)g(the)h(command's)f +(execution.)57 b(The)35 b(`)p Fs(-p)p Ft(')h(option)f(c)m(hanges)i(the) +f(output)f(format)150 4192 y(to)i(that)f(sp)s(eci\014ed)f(b)m(y)h Fl(posix)p Ft(.)57 b(The)35 b Fs(TIMEFORMAT)e Ft(v)-5 b(ariable)37 b(ma)m(y)g(b)s(e)e(set)h(to)h(a)f(format)g(string)g(that) -150 3845 y(sp)s(eci\014es)29 b(ho)m(w)g(the)g(timing)g(information)h +150 4301 y(sp)s(eci\014es)29 b(ho)m(w)g(the)g(timing)g(information)h (should)d(b)s(e)i(displa)m(y)m(ed.)41 b(See)29 b(Section)h(5.2)g([Bash) -f(V)-8 b(ariables],)150 3955 y(page)29 b(59,)h(for)e(a)g(description)h +f(V)-8 b(ariables],)150 4411 y(page)29 b(59,)h(for)e(a)g(description)h (of)f(the)g(a)m(v)-5 b(ailable)31 b(formats.)40 b(The)28 b(use)g(of)g Fs(time)f Ft(as)i(a)f(reserv)m(ed)h(w)m(ord)f(p)s(er-)150 -4064 y(mits)g(the)g(timing)g(of)g(shell)g(builtins,)g(shell)g +4521 y(mits)g(the)g(timing)g(of)g(shell)g(builtins,)g(shell)g (functions,)g(and)f(pip)s(elines.)40 b(An)27 b(external)i -Fs(time)d Ft(command)150 4174 y(cannot)31 b(time)g(these)g(easily)-8 -b(.)275 4318 y(If)24 b(the)h(pip)s(eline)g(is)g(not)g(executed)h(async) +Fs(time)d Ft(command)150 4630 y(cannot)31 b(time)g(these)g(easily)-8 +b(.)275 4766 y(If)24 b(the)h(pip)s(eline)g(is)g(not)g(executed)h(async) m(hronously)f(\(see)h(Section)g(3.2.3)h([Lists],)g(page)e(9\),)i(the)f -(shell)150 4428 y(w)m(aits)31 b(for)f(all)i(commands)e(in)g(the)g(pip)s -(eline)g(to)h(complete.)275 4573 y(Eac)m(h)25 b(command)g(in)g(a)g(pip) +(shell)150 4875 y(w)m(aits)31 b(for)f(all)i(commands)e(in)g(the)g(pip)s +(eline)g(to)h(complete.)275 5011 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 4682 y(Execution)36 b(En)m(vironmen)m +(Section)g(3.7.3)h([Command)150 5121 y(Execution)36 b(En)m(vironmen)m (t],)i(page)e(30\).)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 4792 y(last)27 +g(is)f(the)h(exit)h(status)f(of)g(the)150 5230 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 4902 y(Set)34 b(Builtin],)j(page)e(49\).)53 +([The)150 5340 y(Set)34 b(Builtin],)j(page)e(50\).)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 -5011 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(exit)150 -5121 y(successfully)-8 b(.)67 b(If)38 b(the)h(reserv)m(ed)g(w)m(ord)g -(`)p Fs(!)p Ft(')g(precedes)g(the)g(pip)s(eline,)h(the)g(exit)f(status) -g(is)g(the)g(logical)150 5230 y(negation)h(of)f(the)f(exit)i(status)f -(as)f(describ)s(ed)g(ab)s(o)m(v)m(e.)66 b(The)38 b(shell)h(w)m(aits)h -(for)e(all)h(commands)g(in)f(the)150 5340 y(pip)s(eline)30 -b(to)h(terminate)g(b)s(efore)f(returning)g(a)h(v)-5 b(alue.)p -eop end +(return)f(status)h(is)h(the)f(v)-5 b(alue)35 b(of)p eop +end %%Page: 9 15 TeXDict begin 9 14 bop 150 -116 a Ft(Chapter)30 b(3:)41 b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(9)150 299 -y Fk(3.2.3)63 b(Lists)41 b(of)h(Commands)275 541 y Ft(A)29 -b Fs(list)f Ft(is)i(a)f(sequence)h(of)g(one)f(or)h(more)f(pip)s(elines) -g(separated)h(b)m(y)f(one)h(of)f(the)h(op)s(erators)g(`)p -Fs(;)p Ft(',)g(`)p Fs(&)p Ft(',)150 651 y(`)p Fs(&&)p -Ft(',)h(or)f(`)p Fs(||)p Ft(',)g(and)g(optionally)i(terminated)f(b)m(y) -f(one)h(of)f(`)p Fs(;)p Ft(',)h(`)p Fs(&)p Ft(',)g(or)f(a)h -Fs(newline)p Ft(.)275 783 y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p +y(the)32 b(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(exit)150 +408 y(successfully)-8 b(.)67 b(If)38 b(the)h(reserv)m(ed)g(w)m(ord)g(`) +p Fs(!)p Ft(')g(precedes)g(the)g(pip)s(eline,)h(the)g(exit)f(status)g +(is)g(the)g(logical)150 518 y(negation)h(of)f(the)f(exit)i(status)f(as) +f(describ)s(ed)g(ab)s(o)m(v)m(e.)66 b(The)38 b(shell)h(w)m(aits)h(for)e +(all)h(commands)g(in)f(the)150 628 y(pip)s(eline)30 b(to)h(terminate)g +(b)s(efore)f(returning)g(a)h(v)-5 b(alue.)150 881 y Fk(3.2.3)63 +b(Lists)41 b(of)h(Commands)275 1139 y Ft(A)29 b Fs(list)f +Ft(is)i(a)f(sequence)h(of)g(one)f(or)h(more)f(pip)s(elines)g(separated) +h(b)m(y)f(one)h(of)f(the)h(op)s(erators)g(`)p Fs(;)p +Ft(',)g(`)p Fs(&)p Ft(',)150 1249 y(`)p Fs(&&)p Ft(',)h(or)f(`)p +Fs(||)p Ft(',)g(and)g(optionally)i(terminated)f(b)m(y)f(one)h(of)f(`)p +Fs(;)p Ft(',)h(`)p Fs(&)p Ft(',)g(or)f(a)h Fs(newline)p +Ft(.)275 1398 y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p Fs(&&)p Ft(')d(and)g(`)p Fs(||)p Ft(')h(ha)m(v)m(e)h(equal)f (precedence,)i(follo)m(w)m(ed)f(b)m(y)f(`)p Fs(;)p Ft(')g(and)f(`)p -Fs(&)p Ft(',)i(whic)m(h)150 893 y(ha)m(v)m(e)32 b(equal)e(precedence.) -275 1026 y(A)f(sequence)h(of)g(one)g(or)g(more)g(newlines)f(ma)m(y)h +Fs(&)p Ft(',)i(whic)m(h)150 1507 y(ha)m(v)m(e)32 b(equal)e(precedence.) +275 1656 y(A)f(sequence)h(of)g(one)g(or)g(more)g(newlines)f(ma)m(y)h (app)s(ear)f(in)h(a)g Fs(list)e Ft(to)j(delimit)f(commands,)g(equiv-) -150 1135 y(alen)m(t)i(to)f(a)g(semicolon.)275 1268 y(If)c(a)h(command)f +150 1766 y(alen)m(t)i(to)f(a)g(semicolon.)275 1915 y(If)c(a)h(command)f (is)h(terminated)g(b)m(y)g(the)g(con)m(trol)h(op)s(erator)f(`)p Fs(&)p Ft(',)h(the)e(shell)h(executes)h(the)f(command)150 -1378 y(async)m(hronously)g(in)h(a)g(subshell.)39 b(This)28 +2024 y(async)m(hronously)g(in)h(a)g(subshell.)39 b(This)28 b(is)h(kno)m(wn)f(as)h(executing)h(the)f(command)g(in)f(the)h -Fq(bac)m(kground)p Ft(.)150 1487 y(The)f(shell)h(do)s(es)f(not)h(w)m +Fq(bac)m(kground)p Ft(.)150 2134 y(The)f(shell)h(do)s(es)f(not)h(w)m (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 1597 y(job)g(con)m(trol)h +(status)i(is)g(0)g(\(true\).)40 b(When)150 2243 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(87\),)j(the)d(standard)e(input)g(for)150 1706 +(page)e(87\),)j(the)d(standard)e(input)g(for)150 2353 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 -1816 y Fs(/dev/null)p Ft(.)275 1949 y(Commands)19 b(separated)j(b)m(y)f +2463 y Fs(/dev/null)p Ft(.)275 2612 y(Commands)19 b(separated)j(b)m(y)f (a)g(`)p Fs(;)p Ft(')g(are)h(executed)g(sequen)m(tially;)k(the)21 -b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150 2058 +b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150 2721 y(to)31 b(terminate)h(in)e(turn.)39 b(The)30 b(return)f(status)i(is)f (the)h(exit)g(status)g(of)g(the)f(last)h(command)f(executed.)275 -2191 y Fl(and)g Ft(and)h Fl(or)g Ft(lists)h(are)g(sequences)f(of)h(one) +2870 y Fl(and)g Ft(and)h Fl(or)g Ft(lists)h(are)g(sequences)f(of)h(one) g(or)f(more)h(pip)s(elines)e(separated)i(b)m(y)g(the)f(con)m(trol)i(op) -s(er-)150 2301 y(ators)e(`)p Fs(&&)p Ft(')f(and)g(`)p +s(er-)150 2980 y(ators)e(`)p Fs(&&)p Ft(')f(and)g(`)p Fs(||)p Ft(',)h(resp)s(ectiv)m(ely)-8 b(.)42 b Fl(and)30 b Ft(and)f Fl(or)h Ft(lists)h(are)g(executed)g(with)f(left)h(asso)s -(ciativit)m(y)-8 b(.)275 2433 y(An)30 b Fl(and)f Ft(list)i(has)f(the)h -(form)390 2566 y Fj(command1)56 b Fs(&&)47 b Fj(command2)150 -2699 y Fq(command2)38 b Ft(is)30 b(executed)i(if,)e(and)g(only)g(if,)h +(ciativit)m(y)-8 b(.)275 3129 y(An)30 b Fl(and)f Ft(list)i(has)f(the)h +(form)390 3277 y Fj(command1)56 b Fs(&&)47 b Fj(command2)150 +3426 y Fq(command2)38 b Ft(is)30 b(executed)i(if,)e(and)g(only)g(if,)h Fq(command1)38 b Ft(returns)29 b(an)h(exit)h(status)g(of)g(zero.)275 -2831 y(An)f Fl(or)f Ft(list)i(has)f(the)h(form)390 2964 -y Fj(command1)56 b Fs(||)47 b Fj(command2)150 3097 y +3575 y(An)f Fl(or)f Ft(list)i(has)f(the)h(form)390 3724 +y Fj(command1)56 b Fs(||)47 b Fj(command2)150 3873 y Fq(command2)38 b Ft(is)30 b(executed)i(if,)e(and)g(only)g(if,)h Fq(command1)38 b Ft(returns)29 b(a)i(non-zero)g(exit)g(status.)275 -3229 y(The)h(return)g(status)i(of)f Fl(and)f Ft(and)h +4022 y(The)h(return)g(status)i(of)f Fl(and)f Ft(and)h Fl(or)f Ft(lists)i(is)f(the)g(exit)h(status)g(of)f(the)g(last)h -(command)f(executed)150 3339 y(in)d(the)h(list.)150 3558 -y Fk(3.2.4)63 b(Comp)s(ound)42 b(Commands)275 3800 y +(command)f(executed)150 4132 y(in)d(the)h(list.)150 4385 +y Fk(3.2.4)63 b(Comp)s(ound)42 b(Commands)275 4643 y Ft(Comp)s(ound)e(commands)i(are)h(the)g(shell)g(programming)f (constructs.)77 b(Eac)m(h)44 b(construct)e(b)s(egins)150 -3910 y(with)d(a)g(reserv)m(ed)g(w)m(ord)f(or)h(con)m(trol)h(op)s +4753 y(with)d(a)g(reserv)m(ed)g(w)m(ord)f(or)h(con)m(trol)h(op)s (erator)f(and)g(is)g(terminated)g(b)m(y)g(a)g(corresp)s(onding)f -(reserv)m(ed)150 4019 y(w)m(ord)k(or)h(op)s(erator.)77 +(reserv)m(ed)150 4862 y(w)m(ord)k(or)h(op)s(erator.)77 b(An)m(y)42 b(redirections)h(\(see)h(Section)f(3.6)h([Redirections],)j -(page)c(25\))g(asso)s(ciated)150 4129 y(with)26 b(a)g(comp)s(ound)f +(page)c(25\))g(asso)s(ciated)150 4972 y(with)26 b(a)g(comp)s(ound)f (command)h(apply)g(to)h(all)g(commands)f(within)f(that)i(comp)s(ound)e -(command)h(unless)150 4239 y(explicitly)32 b(o)m(v)m(erridden.)275 -4371 y(Bash)45 b(pro)m(vides)h(lo)s(oping)g(constructs,)j(conditional)e +(command)h(unless)150 5081 y(explicitly)32 b(o)m(v)m(erridden.)275 +5230 y(Bash)45 b(pro)m(vides)h(lo)s(oping)g(constructs,)j(conditional)e (commands,)j(and)44 b(mec)m(hanisms)i(to)g(group)150 -4481 y(commands)30 b(and)g(execute)i(them)e(as)g(a)h(unit.)150 -4700 y Fk(3.2.4.1)63 b(Lo)s(oping)43 b(Constructs)275 -4942 y Ft(Bash)30 b(supp)s(orts)f(the)h(follo)m(wing)i(lo)s(oping)f -(constructs.)275 5075 y(Note)k(that)f(wherev)m(er)g(a)g(`)p -Fs(;)p Ft(')g(app)s(ears)f(in)h(the)g(description)g(of)g(a)g(command's) -g(syn)m(tax,)i(it)e(ma)m(y)h(b)s(e)150 5184 y(replaced)c(with)f(one)h -(or)f(more)g(newlines.)150 5340 y Fs(until)240 b Ft(The)30 -b(syn)m(tax)h(of)f(the)h Fs(until)e Ft(command)h(is:)p +5340 y(commands)30 b(and)g(execute)i(them)e(as)g(a)h(unit.)p eop end %%Page: 10 16 TeXDict begin 10 15 bop 150 -116 a Ft(10)2572 b(Bash)31 -b(Reference)g(Man)m(ual)870 299 y Fs(until)46 b Fj(test-commands)11 -b Fs(;)44 b(do)j Fj(consequent-commands)11 b Fs(;)42 -b(done)630 434 y Ft(Execute)g Fq(consequen)m(t-commands)k -Ft(as)41 b(long)h(as)f Fq(test-commands)46 b Ft(has)41 -b(an)g(exit)h(status)630 543 y(whic)m(h)c(is)h(not)g(zero.)67 -b(The)38 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)g(the)g -(last)g(command)630 653 y(executed)31 b(in)f Fq(consequen)m(t-commands) -p Ft(,)i(or)e(zero)h(if)g(none)f(w)m(as)h(executed.)150 -813 y Fs(while)240 b Ft(The)30 b(syn)m(tax)h(of)f(the)h -Fs(while)e Ft(command)h(is:)870 948 y Fs(while)46 b Fj(test-commands)11 -b Fs(;)44 b(do)j Fj(consequent-commands)11 b Fs(;)42 -b(done)630 1083 y Ft(Execute)g Fq(consequen)m(t-commands)k +b(Reference)g(Man)m(ual)150 299 y Fk(3.2.4.1)63 b(Lo)s(oping)43 +b(Constructs)275 544 y Ft(Bash)30 b(supp)s(orts)f(the)h(follo)m(wing)i +(lo)s(oping)f(constructs.)275 680 y(Note)k(that)f(wherev)m(er)g(a)g(`)p +Fs(;)p Ft(')g(app)s(ears)f(in)h(the)g(description)g(of)g(a)g(command's) +g(syn)m(tax,)i(it)e(ma)m(y)h(b)s(e)150 790 y(replaced)c(with)f(one)h +(or)f(more)g(newlines.)150 951 y Fs(until)240 b Ft(The)30 +b(syn)m(tax)h(of)f(the)h Fs(until)e Ft(command)h(is:)870 +1086 y Fs(until)46 b Fj(test-commands)11 b Fs(;)44 b(do)j +Fj(consequent-commands)11 b Fs(;)42 b(done)630 1222 y +Ft(Execute)g Fq(consequen)m(t-commands)k Ft(as)41 b(long)h(as)f +Fq(test-commands)46 b Ft(has)41 b(an)g(exit)h(status)630 +1331 y(whic)m(h)c(is)h(not)g(zero.)67 b(The)38 b(return)g(status)h(is)f +(the)h(exit)h(status)f(of)g(the)g(last)g(command)630 +1441 y(executed)31 b(in)f Fq(consequen)m(t-commands)p +Ft(,)i(or)e(zero)h(if)g(none)f(w)m(as)h(executed.)150 +1602 y Fs(while)240 b Ft(The)30 b(syn)m(tax)h(of)f(the)h +Fs(while)e Ft(command)h(is:)870 1737 y Fs(while)46 b +Fj(test-commands)11 b Fs(;)44 b(do)j Fj(consequent-commands)11 +b Fs(;)42 b(done)630 1872 y Ft(Execute)g Fq(consequen)m(t-commands)k Ft(as)41 b(long)h(as)f Fq(test-commands)46 b Ft(has)41 -b(an)g(exit)h(status)630 1193 y(of)34 b(zero.)53 b(The)34 +b(an)g(exit)h(status)630 1982 y(of)34 b(zero.)53 b(The)34 b(return)f(status)h(is)h(the)f(exit)h(status)g(of)f(the)g(last)h -(command)f(executed)h(in)630 1302 y Fq(consequen)m(t-commands)p +(command)f(executed)h(in)630 2091 y Fq(consequen)m(t-commands)p Ft(,)c(or)g(zero)g(if)f(none)g(w)m(as)h(executed.)150 -1463 y Fs(for)336 b Ft(The)30 b(syn)m(tax)h(of)f(the)h -Fs(for)e Ft(command)i(is:)870 1598 y Fs(for)47 b Fj(name)57 +2252 y Fs(for)336 b Ft(The)30 b(syn)m(tax)h(of)f(the)h +Fs(for)e Ft(command)i(is:)870 2387 y Fs(for)47 b Fj(name)57 b Fs([in)47 b Fj(words)57 b Fs(...)o(];)47 b(do)g Fj(commands)11 -b Fs(;)45 b(done)630 1733 y Ft(Expand)31 b Fq(w)m(ords)p +b Fs(;)45 b(done)630 2522 y Ft(Expand)31 b Fq(w)m(ords)p Ft(,)j(and)e(execute)i Fq(commands)i Ft(once)d(for)g(eac)m(h)h(mem)m(b) -s(er)e(in)g(the)h(resultan)m(t)630 1842 y(list,)c(with)f +s(er)e(in)g(the)h(resultan)m(t)630 2632 y(list,)c(with)f Fq(name)33 b Ft(b)s(ound)26 b(to)j(the)f(curren)m(t)g(mem)m(b)s(er.)40 b(If)27 b(`)p Fs(in)j Fj(words)11 b Ft(')27 b(is)h(not)g(presen)m(t,)h -(the)630 1952 y Fs(for)g Ft(command)g(executes)i(the)e +(the)630 2741 y Fs(for)g Ft(command)g(executes)i(the)e Fq(commands)k Ft(once)d(for)f(eac)m(h)i(p)s(ositional)f(parameter)g -(that)630 2061 y(is)d(set,)h(as)f(if)g(`)p Fs(in)j("$@")p +(that)630 2851 y(is)d(set,)h(as)f(if)g(`)p Fs(in)j("$@")p Ft(')c(had)g(b)s(een)g(sp)s(eci\014ed)g(\(see)i(Section)f(3.4.2)i([Sp)s -(ecial)e(P)m(arameters],)630 2171 y(page)c(16\).)39 b(The)21 +(ecial)e(P)m(arameters],)630 2961 y(page)c(16\).)39 b(The)21 b(return)g(status)h(is)g(the)g(exit)h(status)f(of)g(the)g(last)g -(command)g(that)g(executes.)630 2281 y(If)i(there)h(are)h(no)e(items)i +(command)g(that)g(executes.)630 3070 y(If)i(there)h(are)h(no)e(items)i (in)e(the)h(expansion)g(of)g Fq(w)m(ords)p Ft(,)h(no)f(commands)f(are)h -(executed,)j(and)630 2390 y(the)j(return)e(status)i(is)f(zero.)630 -2525 y(An)g(alternate)i(form)e(of)h(the)f Fs(for)g Ft(command)g(is)g -(also)h(supp)s(orted:)870 2660 y Fs(for)47 b(\(\()g Fj(expr1)57 +(executed,)j(and)630 3180 y(the)j(return)e(status)i(is)f(zero.)630 +3315 y(An)g(alternate)i(form)e(of)h(the)f Fs(for)g Ft(command)g(is)g +(also)h(supp)s(orted:)870 3450 y Fs(for)47 b(\(\()g Fj(expr1)57 b Fs(;)47 b Fj(expr2)57 b Fs(;)48 b Fj(expr3)57 b Fs(\)\))47 -b(;)g(do)g Fj(commands)57 b Fs(;)47 b(done)630 2795 y +b(;)g(do)g Fj(commands)57 b Fs(;)47 b(done)630 3585 y Ft(First,)38 b(the)f(arithmetic)h(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 2905 y(scrib)s(ed)41 b(b)s(elo)m(w)h(\(see)h(Section)g(6.5)g +630 3695 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(76\).)77 b(The)42 b(arithmetic)630 -3014 y(expression)33 b Fq(expr2)41 b Ft(is)34 b(then)f(ev)-5 +3805 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 3124 y(time)23 +b(aluates)35 b(to)g(zero.)51 b(Eac)m(h)630 3914 y(time)23 b Fq(expr2)30 b Ft(ev)-5 b(aluates)25 b(to)e(a)g(non-zero)h(v)-5 b(alue,)25 b Fq(commands)h Ft(are)d(executed)g(and)g(the)g(arith-)630 -3233 y(metic)29 b(expression)f Fq(expr3)36 b Ft(is)28 +4024 y(metic)29 b(expression)f Fq(expr3)36 b Ft(is)28 b(ev)-5 b(aluated.)41 b(If)28 b(an)m(y)h(expression)f(is)g(omitted,)i -(it)f(b)s(eha)m(v)m(es)g(as)630 3343 y(if)i(it)h(ev)-5 +(it)f(b)s(eha)m(v)m(es)g(as)630 4133 y(if)i(it)h(ev)-5 b(aluates)32 b(to)g(1.)44 b(The)30 b(return)g(v)-5 b(alue)32 b(is)f(the)g(exit)h(status)g(of)f(the)g(last)h(command)f(in)630 -3453 y Fq(list)i Ft(that)e(is)f(executed,)i(or)e(false)h(if)g(an)m(y)f +4243 y Fq(list)i Ft(that)e(is)f(executed,)i(or)e(false)h(if)g(an)m(y)f (of)h(the)f(expressions)g(is)h(in)m(v)-5 b(alid.)275 -3613 y(The)26 b Fs(break)g Ft(and)h Fs(continue)e Ft(builtins)i(\(see)h +4404 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(35\))g(ma)m(y) -150 3723 y(b)s(e)i(used)f(to)i(con)m(trol)h(lo)s(op)f(execution.)150 -3949 y Fk(3.2.4.2)63 b(Conditional)42 b(Constructs)150 -4193 y Fs(if)384 b Ft(The)30 b(syn)m(tax)h(of)f(the)h -Fs(if)f Ft(command)g(is:)870 4328 y Fs(if)47 b Fj(test-commands)11 -b Fs(;)44 b(then)965 4438 y Fj(consequent-commands)11 -b Fs(;)870 4547 y([elif)46 b Fj(more-test-commands)11 -b Fs(;)42 b(then)965 4657 y Fj(more-consequents)11 b -Fs(;])870 4767 y([else)46 b Fj(alternate-consequents)11 -b Fs(;])870 4876 y(fi)630 5011 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 5121 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 5230 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 5340 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)p eop end +150 4514 y(b)s(e)i(used)f(to)i(con)m(trol)h(lo)s(op)f(execution.)150 +4741 y Fk(3.2.4.2)63 b(Conditional)42 b(Constructs)150 +4986 y Fs(if)384 b Ft(The)30 b(syn)m(tax)h(of)f(the)h +Fs(if)f Ft(command)g(is:)870 5121 y Fs(if)47 b Fj(test-commands)11 +b Fs(;)44 b(then)965 5230 y Fj(consequent-commands)11 +b Fs(;)870 5340 y([elif)46 b Fj(more-test-commands)11 +b Fs(;)42 b(then)p eop end %%Page: 11 17 TeXDict begin 11 16 bop 150 -116 a Ft(Chapter)30 b(3:)41 -b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(11)630 299 -y(`)p Fs(else)29 b Fj(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 408 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 518 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 -628 y(or)30 b(zero)i(if)e(no)g(condition)h(tested)g(true.)150 -788 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 923 y Fs(case)47 b Fj(word)57 -b Fs(in)47 b([)g([\(])g Fj(pattern)57 b Fs([|)47 b Fj(pattern)11 -b Fs(]...)l(\))48 b Fj(command-list)55 b Fs(;;]...)46 -b(esac)630 1058 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 1167 y Ft(that)42 b(matc)m(hes)g Fq(w)m(ord)p -Ft(.)73 b(If)41 b(the)g(shell)g(option)h Fs(nocasematch)c -Ft(\(see)k(the)g(description)f(of)630 1277 y Fs(shopt)34 -b Ft(in)h(Section)h(4.3.2)h([The)e(Shopt)f(Builtin],)k(page)e(53\))g -(is)g(enabled,)g(the)g(matc)m(h)g(is)630 1386 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 -1496 y(to)39 b(separate)f(m)m(ultiple)h(patterns,)h(and)d(the)h(`)p -Fs(\))p Ft(')g(op)s(erator)g(terminates)h(a)f(pattern)g(list.)630 -1606 y(A)33 b(list)h(of)f(patterns)g(and)f(an)h(asso)s(ciated)h -(command-list)g(is)f(kno)m(wn)f(as)i(a)f Fq(clause)p -Ft(.)49 b(Eac)m(h)630 1715 y(clause)44 b(m)m(ust)f(b)s(e)f(terminated)i -(with)e(`)p Fs(;;)p Ft('.)79 b(The)43 b Fq(w)m(ord)j -Ft(undergo)s(es)c(tilde)i(expansion,)630 1825 y(parameter)32 -b(expansion,)g(command)f(substitution,)h(arithmetic)h(expansion,)e(and) -g(quote)630 1934 y(remo)m(v)-5 b(al)25 b(b)s(efore)e(matc)m(hing)i(is)f -(attempted.)39 b(Eac)m(h)25 b Fq(pattern)f Ft(undergo)s(es)e(tilde)j -(expansion,)630 2044 y(parameter)31 b(expansion,)f(command)g -(substitution,)h(and)f(arithmetic)h(expansion.)630 2179 -y(There)f(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 2288 y(The)f(\014rst)f(pattern)i(that)g(matc)m(hes)g -(determines)g(the)f(command-list)i(that)f(is)f(executed.)630 -2423 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 2533 y(in)m(teresting)d(feature)f(of)f(an)g(animal:)870 -2668 y Fs(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f(animal:)f(") -870 2777 y(read)h(ANIMAL)870 2887 y(echo)g(-n)g("The)f($ANIMAL)g(has)h -(")870 2996 y(case)g($ANIMAL)e(in)965 3106 y(horse)i(|)g(dog)g(|)h -(cat\))e(echo)h(-n)g("four";;)965 3216 y(man)g(|)h(kangaroo)d(\))j -(echo)e(-n)i("two";;)965 3325 y(*\))g(echo)e(-n)h("an)g(unknown)f -(number)g(of";;)870 3435 y(esac)870 3544 y(echo)h(")g(legs.")630 -3679 y Ft(The)26 b(return)f(status)h(is)g(zero)h(if)f(no)g +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(11)965 299 +y Fj(more-consequents)11 b Fs(;])870 408 y([else)46 b +Fj(alternate-consequents)11 b Fs(;])870 518 y(fi)630 +646 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 756 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 865 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 975 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 1084 y(`)p Fs(else)29 b Fj +(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 1194 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 1303 +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 1413 y(or)30 b(zero)i(if)e(no)g +(condition)h(tested)g(true.)150 1559 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 +1687 y Fs(case)47 b Fj(word)57 b Fs(in)47 b([)g([\(])g +Fj(pattern)57 b Fs([|)47 b Fj(pattern)11 b Fs(]...)l(\))48 +b Fj(command-list)55 b Fs(;;]...)46 b(esac)630 1815 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 +1924 y Ft(that)42 b(matc)m(hes)g Fq(w)m(ord)p Ft(.)73 +b(If)41 b(the)g(shell)g(option)h Fs(nocasematch)c Ft(\(see)k(the)g +(description)f(of)630 2034 y Fs(shopt)34 b Ft(in)h(Section)h(4.3.2)h +([The)e(Shopt)f(Builtin],)k(page)e(54\))g(is)g(enabled,)g(the)g(matc)m +(h)g(is)630 2144 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 2253 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 2363 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)p Ft(.)630 2491 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 2600 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g +(expansion,)g(command)f(substitution,)h(arithmetic)630 +2710 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 2819 y Ft(undergo)s(es)38 b(tilde)h(expansion,)i +(parameter)e(expansion,)i(command)d(substitution,)j(and)630 +2929 y(arithmetic)32 b(expansion.)630 3057 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 3166 +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 3276 y(is)k(executed.)630 3404 +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 +3513 y(in)m(teresting)d(feature)f(of)f(an)g(animal:)870 +3641 y Fs(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f(animal:)f(") +870 3751 y(read)h(ANIMAL)870 3861 y(echo)g(-n)g("The)f($ANIMAL)g(has)h +(")870 3970 y(case)g($ANIMAL)e(in)965 4080 y(horse)i(|)g(dog)g(|)h +(cat\))e(echo)h(-n)g("four";;)965 4189 y(man)g(|)h(kangaroo)d(\))j +(echo)e(-n)i("two";;)965 4299 y(*\))g(echo)e(-n)h("an)g(unknown)f +(number)g(of";;)870 4408 y(esac)870 4518 y(echo)h(")g(legs.")630 +4664 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 4774 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 4883 +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 4993 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 5103 y(an)m(y)h(asso)s(ciated)h +Fq(command-list)h Ft(on)d(a)h(successful)f(matc)m(h.)630 +5230 y(The)c(return)f(status)h(is)g(zero)h(if)f(no)g Fq(pattern)g Ft(is)g(matc)m(hed.)40 b(Otherwise,)27 b(the)g(return)e -(status)630 3789 y(is)30 b(the)h(exit)g(status)g(of)f(the)h -Fq(command-list)i Ft(executed.)150 3949 y Fs(select)630 -4084 y Ft(The)g Fs(select)f Ft(construct)i(allo)m(ws)h(the)f(easy)g +(status)630 5340 y(is)30 b(the)h(exit)g(status)g(of)f(the)h +Fq(command-list)i Ft(executed.)p eop end +%%Page: 12 18 +TeXDict begin 12 17 bop 150 -116 a Ft(12)2572 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fs(select)630 434 y +Ft(The)i Fs(select)f Ft(construct)i(allo)m(ws)h(the)f(easy)g (generation)h(of)e(men)m(us.)50 b(It)34 b(has)f(almost)i(the)630 -4194 y(same)c(syn)m(tax)g(as)f(the)h Fs(for)e Ft(command:)870 -4328 y Fs(select)46 b Fj(name)57 b Fs([in)47 b Fj(words)57 +544 y(same)c(syn)m(tax)g(as)f(the)h Fs(for)e Ft(command:)870 +679 y Fs(select)46 b Fj(name)57 b Fs([in)47 b Fj(words)57 b Fs(...)o(];)47 b(do)h Fj(commands)11 b Fs(;)44 b(done)630 -4463 y Ft(The)d(list)i(of)e(w)m(ords)h(follo)m(wing)h +815 y Ft(The)d(list)i(of)e(w)m(ords)h(follo)m(wing)h Fs(in)e Ft(is)h(expanded,)i(generating)f(a)f(list)g(of)g(items.)75 -b(The)630 4573 y(set)41 b(of)f(expanded)f(w)m(ords)g(is)i(prin)m(ted)e +b(The)630 924 y(set)41 b(of)f(expanded)f(w)m(ords)g(is)i(prin)m(ted)e (on)h(the)g(standard)f(error)h(output)g(stream,)j(eac)m(h)630 -4682 y(preceded)30 b(b)m(y)g(a)h(n)m(um)m(b)s(er.)40 +1034 y(preceded)30 b(b)m(y)g(a)h(n)m(um)m(b)s(er.)40 b(If)29 b(the)i(`)p Fs(in)f Fj(words)11 b Ft(')29 b(is)h(omitted,)i -(the)e(p)s(ositional)i(parameters)630 4792 y(are)22 b(prin)m(ted,)h(as) +(the)e(p)s(ositional)i(parameters)630 1143 y(are)22 b(prin)m(ted,)h(as) f(if)f(`)p Fs(in)30 b("$@")p Ft(')21 b(had)g(b)s(een)f(sp)s(eci\014ed.) 37 b(The)21 b Fs(PS3)g Ft(prompt)g(is)g(then)g(displa)m(y)m(ed)630 -4902 y(and)38 b(a)h(line)g(is)f(read)h(from)f(the)h(standard)e(input.) +1253 y(and)38 b(a)h(line)g(is)f(read)h(from)f(the)h(standard)e(input.) 65 b(If)38 b(the)h(line)g(consists)g(of)f(a)h(n)m(um)m(b)s(er)630 -5011 y(corresp)s(onding)33 b(to)i(one)f(of)g(the)g(displa)m(y)m(ed)h(w) +1363 y(corresp)s(onding)33 b(to)i(one)f(of)g(the)g(displa)m(y)m(ed)h(w) m(ords,)f(then)g(the)g(v)-5 b(alue)34 b(of)h Fq(name)k -Ft(is)34 b(set)g(to)630 5121 y(that)g(w)m(ord.)49 b(If)32 +Ft(is)34 b(set)g(to)630 1472 y(that)g(w)m(ord.)49 b(If)32 b(the)i(line)f(is)h(empt)m(y)-8 b(,)35 b(the)e(w)m(ords)g(and)f(prompt) -h(are)g(displa)m(y)m(ed)h(again.)50 b(If)630 5230 y Fs(EOF)23 +h(are)g(displa)m(y)m(ed)h(again.)50 b(If)630 1582 y Fs(EOF)23 b Ft(is)g(read,)j(the)d Fs(select)f Ft(command)i(completes.)40 b(An)m(y)23 b(other)h(v)-5 b(alue)24 b(read)g(causes)g -Fq(name)630 5340 y Ft(to)31 b(b)s(e)f(set)h(to)g(n)m(ull.)41 +Fq(name)630 1691 y Ft(to)31 b(b)s(e)f(set)h(to)g(n)m(ull.)41 b(The)29 b(line)i(read)f(is)h(sa)m(v)m(ed)g(in)f(the)h(v)-5 -b(ariable)31 b Fs(REPLY)p Ft(.)p eop end -%%Page: 12 18 -TeXDict begin 12 17 bop 150 -116 a Ft(12)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(The)42 b Fq(commands)j +b(ariable)31 b Fs(REPLY)p Ft(.)630 1827 y(The)42 b Fq(commands)j Ft(are)d(executed)h(after)g(eac)m(h)g(selection)h(un)m(til)e(a)h -Fs(break)d Ft(command)i(is)630 408 y(executed,)32 b(at)f(whic)m(h)f(p)s -(oin)m(t)g(the)h Fs(select)d Ft(command)i(completes.)630 -542 y(Here)39 b(is)g(an)g(example)h(that)f(allo)m(ws)i(the)e(user)f(to) -i(pic)m(k)f(a)g(\014lename)h(from)e(the)h(curren)m(t)630 -651 y(directory)-8 b(,)32 b(and)d(displa)m(ys)i(the)f(name)h(and)f -(index)f(of)i(the)g(\014le)f(selected.)870 784 y Fs(select)46 -b(fname)g(in)i(*;)870 894 y(do)870 1003 y(echo)f(you)g(picked)f($fname) -g(\\\($REPLY\\\))870 1113 y(break;)870 1223 y(done)150 -1379 y(\(\(...)o(\)\))870 1512 y(\(\()h Fj(expression)56 -b Fs(\)\))630 1645 y Ft(The)33 b(arithmetic)i Fq(expression)f +Fs(break)d Ft(command)i(is)630 1936 y(executed,)32 b(at)f(whic)m(h)f(p) +s(oin)m(t)g(the)h Fs(select)d Ft(command)i(completes.)630 +2072 y(Here)39 b(is)g(an)g(example)h(that)f(allo)m(ws)i(the)e(user)f +(to)i(pic)m(k)f(a)g(\014lename)h(from)e(the)h(curren)m(t)630 +2181 y(directory)-8 b(,)32 b(and)d(displa)m(ys)i(the)f(name)h(and)f +(index)f(of)i(the)g(\014le)f(selected.)870 2317 y Fs(select)46 +b(fname)g(in)i(*;)870 2426 y(do)870 2536 y(echo)f(you)g(picked)f +($fname)g(\\\($REPLY\\\))870 2645 y(break;)870 2755 y(done)150 +2916 y(\(\(...)o(\)\))870 3051 y(\(\()h Fj(expression)56 +b Fs(\)\))630 3187 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 1755 y(\(see)j(Section)f(6.5)h([Shell)f +(ed)g(b)s(elo)m(w)630 3296 y(\(see)j(Section)f(6.5)h([Shell)f (Arithmetic],)i(page)f(76\).)55 b(If)34 b(the)h(v)-5 -b(alue)35 b(of)g(the)g(expression)g(is)630 1864 y(non-zero,)27 +b(alue)35 b(of)g(the)g(expression)g(is)630 3406 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 1974 y(equiv)-5 -b(alen)m(t)32 b(to)870 2107 y Fs(let)47 b(")p Fj(expression)11 -b Fs(")630 2240 y Ft(See)25 b(Section)h(4.2)h([Bash)e(Builtins],)i +(is)g(1.)39 b(This)25 b(is)g(exactly)630 3516 y(equiv)-5 +b(alen)m(t)32 b(to)870 3651 y Fs(let)47 b(")p Fj(expression)11 +b Fs(")630 3786 y Ft(See)25 b(Section)h(4.2)h([Bash)e(Builtins],)i (page)f(41,)i(for)c(a)i(full)f(description)g(of)g(the)h -Fs(let)e Ft(builtin.)150 2397 y Fs([[...)o(]])870 2530 -y([[)47 b Fj(expression)56 b Fs(]])630 2663 y Ft(Return)25 +Fs(let)e Ft(builtin.)150 3948 y Fs([[...)o(]])870 4083 +y([[)47 b Fj(expression)56 b Fs(]])630 4218 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 b(aluation)27 b(of)e(the)h(conditional)h(expres-)630 -2772 y(sion)j Fq(expression)p Ft(.)41 b(Expressions)29 +4328 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 2882 y(Section)36 b(6.4)h([Bash)f(Conditional)g +(w)h(in)630 4437 y(Section)36 b(6.4)h([Bash)f(Conditional)g (Expressions],)h(page)f(75.)57 b(W)-8 b(ord)36 b(splitting)h(and)e -(\014le-)630 2992 y(name)24 b(expansion)h(are)g(not)f(p)s(erformed)f +(\014le-)630 4547 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 3101 y(expansion,)31 +Ft(')f(and)g(`)p Fs(]])p Ft(';)i(tilde)630 4657 y(expansion,)31 b(parameter)g(and)f(v)-5 b(ariable)31 b(expansion,)g(arithmetic)g -(expansion,)g(command)630 3211 y(substitution,)40 b(pro)s(cess)f +(expansion,)g(command)630 4766 y(substitution,)40 b(pro)s(cess)f (substitution,)h(and)e(quote)h(remo)m(v)-5 b(al)40 b(are)f(p)s -(erformed.)63 b(Condi-)630 3320 y(tional)32 b(op)s(erators)e(suc)m(h)g +(erformed.)63 b(Condi-)630 4876 y(tional)32 b(op)s(erators)e(suc)m(h)g (as)h(`)p Fs(-f)p Ft(')f(m)m(ust)g(b)s(e)g(unquoted)g(to)h(b)s(e)e -(recognized)j(as)f(primaries.)630 3453 y(When)22 b(the)h(`)p +(recognized)j(as)f(primaries.)630 5011 y(When)22 b(the)h(`)p Fs(==)p Ft(')f(and)g(`)p Fs(!=)p Ft(')g(op)s(erators)h(are)g(used,)g (the)g(string)f(to)i(the)e(righ)m(t)h(of)g(the)g(op)s(erator)630 -3563 y(is)31 b(considered)g(a)h(pattern)f(and)g(matc)m(hed)h(according) +5121 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 -3673 y(Section)37 b(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)j(page)c(24.) +5230 y(Section)37 b(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)j(page)c(24.) 59 b(If)36 b(the)g(shell)g(option)h Fs(nocasematch)630 -3782 y Ft(\(see)42 b(the)f(description)g(of)h Fs(shopt)d +5340 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(53\))630 3892 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 -4001 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 -Ft('\))f(or)g(do)s(es)f(not)h(matc)m(h)630 4111 y(\(`)p -Fs(!=)p Ft('\)the)33 b(pattern,)g(and)f(1)g(otherwise.)47 -b(An)m(y)32 b(part)g(of)h(the)f(pattern)g(ma)m(y)h(b)s(e)f(quoted)g(to) -630 4221 y(force)f(it)g(to)g(b)s(e)f(matc)m(hed)h(as)f(a)h(string.)630 -4354 y(An)i(additional)i(binary)e(op)s(erator,)i(`)p +b(page)d(54\))p eop end +%%Page: 13 19 +TeXDict begin 13 18 bop 150 -116 a Ft(Chapter)30 b(3:)41 +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(13)630 299 +y(is)40 b(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 408 +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 Ft('\))f(or)g(do)s(es)f(not) +h(matc)m(h)630 518 y(\(`)p Fs(!=)p Ft('\)the)33 b(pattern,)g(and)f(1)g +(otherwise.)47 b(An)m(y)32 b(part)g(of)h(the)f(pattern)g(ma)m(y)h(b)s +(e)f(quoted)g(to)630 628 y(force)f(it)g(to)g(b)s(e)f(matc)m(hed)h(as)f +(a)h(string.)630 757 y(An)i(additional)i(binary)e(op)s(erator,)i(`)p Fs(=~)p Ft(',)g(is)f(a)m(v)-5 b(ailable,)37 b(with)c(the)h(same)g -(precedence)h(as)630 4463 y(`)p Fs(==)p Ft(')29 b(and)f(`)p +(precedence)h(as)630 867 y(`)p Fs(==)p Ft(')29 b(and)f(`)p Fs(!=)p Ft('.)40 b(When)29 b(it)g(is)g(used,)f(the)h(string)g(to)h(the) e(righ)m(t)i(of)f(the)g(op)s(erator)g(is)g(consid-)630 -4573 y(ered)34 b(an)g(extended)g(regular)g(expression)g(and)f(matc)m +976 y(ered)34 b(an)g(extended)g(regular)g(expression)g(and)f(matc)m (hed)i(accordingly)g(\(as)f(in)g Fm(r)-5 b(e)g(gex)11 -b Ft(3\)\).)630 4682 y(The)29 b(return)f(v)-5 b(alue)30 +b Ft(3\)\).)630 1086 y(The)29 b(return)f(v)-5 b(alue)30 b(is)g(0)g(if)f(the)h(string)g(matc)m(hes)g(the)g(pattern,)g(and)f(1)h -(otherwise.)41 b(If)29 b(the)630 4792 y(regular)e(expression)g(is)h +(otherwise.)41 b(If)29 b(the)630 1196 y(regular)e(expression)g(is)h (syn)m(tactically)i(incorrect,)f(the)e(conditional)i(expression's)e -(return)630 4902 y(v)-5 b(alue)40 b(is)g(2.)68 b(If)39 +(return)630 1305 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 5011 y(Section)32 b(4.3.2)g([The)f(Shopt)f -(Builtin],)i(page)g(53\))g(is)f(enabled,)g(the)g(matc)m(h)h(is)e(p)s -(erformed)630 5121 y(without)36 b(regard)g(to)h(the)f(case)h(of)f +g(of)f Fs(shopt)f Ft(in)630 1415 y(Section)32 b(4.3.2)g([The)f(Shopt)f +(Builtin],)i(page)g(54\))g(is)f(enabled,)g(the)g(matc)m(h)h(is)e(p)s +(erformed)630 1524 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 5230 y(ma)m(y)g(b)s(e)g(quoted)g(to)g(force)g(it)h(to)f(b) +(pattern)630 1634 y(ma)m(y)g(b)s(e)g(quoted)g(to)g(force)g(it)h(to)f(b) s(e)f(matc)m(hed)i(as)f(a)g(string.)57 b(Substrings)34 -b(matc)m(hed)j(b)m(y)630 5340 y(paren)m(thesized)44 b(sub)s +b(matc)m(hed)j(b)m(y)630 1743 y(paren)m(thesized)44 b(sub)s (expressions)e(within)i(the)g(regular)g(expression)g(are)g(sa)m(v)m(ed) -h(in)f(the)p eop end -%%Page: 13 19 -TeXDict begin 13 18 bop 150 -116 a Ft(Chapter)30 b(3:)41 -b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(13)630 299 -y(arra)m(y)38 b(v)-5 b(ariable)38 b Fs(BASH_REMATCH)p -Ft(.)59 b(The)36 b(elemen)m(t)j(of)f Fs(BASH_REMATCH)c -Ft(with)j(index)g(0)h(is)630 408 y(the)c(p)s(ortion)f(of)h(the)f -(string)h(matc)m(hing)g(the)g(en)m(tire)h(regular)e(expression.)50 -b(The)33 b(elemen)m(t)630 518 y(of)39 b Fs(BASH_REMATCH)c -Ft(with)j(index)g Fq(n)f Ft(is)i(the)f(p)s(ortion)g(of)h(the)f(string)h -(matc)m(hing)g(the)g Fq(n)p Ft(th)630 628 y(paren)m(thesized)31 -b(sub)s(expression.)630 765 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m -(bined)i(using)f(the)h(follo)m(wing)h(op)s(erators,)g(listed)f(in)f -(decreasing)630 874 y(order)30 b(of)g(precedence:)630 -1039 y Fs(\()g Fj(expression)38 b Fs(\))1110 1148 y Ft(Returns)30 -b(the)h(v)-5 b(alue)31 b(of)g Fq(expression)p Ft(.)42 -b(This)30 b(ma)m(y)i(b)s(e)e(used)g(to)i(o)m(v)m(erride)g(the)1110 -1258 y(normal)e(precedence)h(of)g(op)s(erators.)630 1423 -y Fs(!)f Fj(expression)1110 1532 y Ft(T)-8 b(rue)30 b(if)g -Fq(expression)g Ft(is)h(false.)630 1697 y Fj(expression1)38 -b Fs(&&)30 b Fj(expression2)1110 1806 y Ft(T)-8 b(rue)30 -b(if)g(b)s(oth)g Fq(expression1)38 b Ft(and)29 b Fq(expression2)38 -b Ft(are)31 b(true.)630 1971 y Fj(expression1)38 b Fs(||)30 -b Fj(expression2)1110 2080 y Ft(T)-8 b(rue)30 b(if)g(either)h -Fq(expression1)38 b Ft(or)30 b Fq(expression2)38 b Ft(is)30 -b(true.)630 2245 y(The)25 b Fs(&&)g Ft(and)g Fs(||)f -Ft(op)s(erators)i(do)f(not)h(ev)-5 b(aluate)27 b Fq(expression2)33 -b Ft(if)26 b(the)f(v)-5 b(alue)26 b(of)g Fq(expression1)630 -2355 y Ft(is)k(su\016cien)m(t)h(to)g(determine)g(the)f(return)g(v)-5 -b(alue)31 b(of)f(the)h(en)m(tire)g(conditional)h(expression.)150 -2589 y Fk(3.2.4.3)63 b(Grouping)43 b(Commands)275 2838 -y Ft(Bash)22 b(pro)m(vides)g(t)m(w)m(o)h(w)m(a)m(ys)g(to)g(group)f(a)g -(list)h(of)f(commands)g(to)g(b)s(e)g(executed)h(as)f(a)h(unit.)37 -b(When)22 b(com-)150 2948 y(mands)30 b(are)i(group)s(ed,)f -(redirections)h(ma)m(y)g(b)s(e)e(applied)i(to)g(the)f(en)m(tire)h -(command)g(list.)44 b(F)-8 b(or)32 b(example,)150 3057 -y(the)f(output)f(of)g(all)h(the)g(commands)f(in)g(the)h(list)g(ma)m(y)g -(b)s(e)e(redirected)i(to)g(a)g(single)g(stream.)150 3225 -y Fs(\(\))870 3362 y(\()47 b Fj(list)58 b Fs(\))630 3499 -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 -3608 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(30\),)630 3718 +h(in)f(the)630 1853 y(arra)m(y)38 b(v)-5 b(ariable)38 +b Fs(BASH_REMATCH)p Ft(.)59 b(The)36 b(elemen)m(t)j(of)f +Fs(BASH_REMATCH)c Ft(with)j(index)g(0)h(is)630 1963 y(the)c(p)s(ortion) +f(of)h(the)f(string)h(matc)m(hing)g(the)g(en)m(tire)h(regular)e +(expression.)50 b(The)33 b(elemen)m(t)630 2072 y(of)39 +b Fs(BASH_REMATCH)c Ft(with)j(index)g Fq(n)f Ft(is)i(the)f(p)s(ortion)g +(of)h(the)f(string)h(matc)m(hing)g(the)g Fq(n)p Ft(th)630 +2182 y(paren)m(thesized)31 b(sub)s(expression.)630 2311 +y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f(the)h(follo)m +(wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630 +2421 y(order)30 b(of)g(precedence:)630 2570 y Fs(\()g +Fj(expression)38 b Fs(\))1110 2680 y Ft(Returns)30 b(the)h(v)-5 +b(alue)31 b(of)g Fq(expression)p Ft(.)42 b(This)30 b(ma)m(y)i(b)s(e)e +(used)g(to)i(o)m(v)m(erride)g(the)1110 2790 y(normal)e(precedence)h(of) +g(op)s(erators.)630 2939 y Fs(!)f Fj(expression)1110 +3049 y Ft(T)-8 b(rue)30 b(if)g Fq(expression)g Ft(is)h(false.)630 +3198 y Fj(expression1)38 b Fs(&&)30 b Fj(expression2)1110 +3308 y Ft(T)-8 b(rue)30 b(if)g(b)s(oth)g Fq(expression1)38 +b Ft(and)29 b Fq(expression2)38 b Ft(are)31 b(true.)630 +3457 y Fj(expression1)38 b Fs(||)30 b Fj(expression2)1110 +3567 y Ft(T)-8 b(rue)30 b(if)g(either)h Fq(expression1)38 +b Ft(or)30 b Fq(expression2)38 b Ft(is)30 b(true.)630 +3716 y(The)25 b Fs(&&)g Ft(and)g Fs(||)f Ft(op)s(erators)i(do)f(not)h +(ev)-5 b(aluate)27 b Fq(expression2)33 b Ft(if)26 b(the)f(v)-5 +b(alue)26 b(of)g Fq(expression1)630 3826 y Ft(is)k(su\016cien)m(t)h(to) +g(determine)g(the)f(return)g(v)-5 b(alue)31 b(of)f(the)h(en)m(tire)g +(conditional)h(expression.)150 4035 y Fk(3.2.4.3)63 b(Grouping)43 +b(Commands)275 4274 y Ft(Bash)22 b(pro)m(vides)g(t)m(w)m(o)h(w)m(a)m +(ys)g(to)g(group)f(a)g(list)h(of)f(commands)g(to)g(b)s(e)g(executed)h +(as)f(a)h(unit.)37 b(When)22 b(com-)150 4384 y(mands)30 +b(are)i(group)s(ed,)f(redirections)h(ma)m(y)g(b)s(e)e(applied)i(to)g +(the)f(en)m(tire)h(command)g(list.)44 b(F)-8 b(or)32 +b(example,)150 4493 y(the)f(output)f(of)g(all)h(the)g(commands)f(in)g +(the)h(list)g(ma)m(y)g(b)s(e)e(redirected)i(to)g(a)g(single)g(stream.) +150 4643 y Fs(\(\))870 4772 y(\()47 b Fj(list)58 b Fs(\))630 +4902 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 +5011 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(30\),)630 5121 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 3827 y Ft(is)i(executed)g(in)f(a)h(subshell,)g(v)-5 +b(the)f Fq(list)630 5230 y Ft(is)i(executed)g(in)f(a)h(subshell,)g(v)-5 b(ariable)29 b(assignmen)m(ts)g(do)g(not)g(remain)f(in)g(e\013ect)j -(after)e(the)630 3937 y(subshell)g(completes.)150 4102 -y Fs({})870 4239 y({)47 b Fj(list)11 b Fs(;)46 b(})630 -4376 y Ft(Placing)30 b(a)g(list)g(of)g(commands)f(b)s(et)m(w)m(een)h -(curly)f(braces)g(causes)h(the)f(list)h(to)g(b)s(e)f(executed)630 -4485 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 4595 y(follo)m(wing)32 b Fq(list)h Ft(is)d(required.)275 -4762 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 -4872 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 4981 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 5091 -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 5200 y(from)30 b(the)g Fq(list)j Ft(b)m(y)e(whitespace.) -275 5340 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)p -Ft(.)p eop end +(after)e(the)630 5340 y(subshell)g(completes.)p eop end %%Page: 14 20 TeXDict begin 14 19 bop 150 -116 a Ft(14)2572 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fr(3.3)68 b(Shell)45 -b(F)-11 b(unctions)275 555 y Ft(Shell)27 b(functions)g(are)g(a)h(w)m(a) -m(y)g(to)g(group)f(commands)g(for)g(later)i(execution)f(using)f(a)h -(single)g(name)f(for)150 664 y(the)35 b(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 -774 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 -883 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 993 y(pro)s(cess)30 b(is)g(created)i(to)f(in)m -(terpret)g(them.)275 1139 y(F)-8 b(unctions)30 b(are)h(declared)g -(using)f(this)g(syn)m(tax:)390 1285 y Fs([)47 b(function)f(])h -Fj(name)58 b Fs(\(\))47 b Fj(compound-command)54 b Fs([)47 -b Fj(redirections)55 b Fs(])275 1431 y Ft(This)31 b(de\014nes)h(a)h -(shell)g(function)g(named)f Fq(name)p Ft(.)48 b(The)32 -b(reserv)m(ed)h(w)m(ord)f Fs(function)f Ft(is)h(optional.)49 -b(If)150 1541 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 1650 -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)150 1760 -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 1870 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 1979 y Ft(is)37 b(sp)s(eci\014ed)g(as)g(the)h(name)f(of)g +b(Reference)g(Man)m(ual)150 299 y Fs({})870 431 y({)47 +b Fj(list)11 b Fs(;)46 b(})630 564 y Ft(Placing)30 b(a)g(list)g(of)g +(commands)f(b)s(et)m(w)m(een)h(curly)f(braces)g(causes)h(the)f(list)h +(to)g(b)s(e)f(executed)630 673 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 783 y(follo)m(wing)32 +b Fq(list)h Ft(is)d(required.)275 938 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 1048 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 1157 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 1267 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 +1377 y(from)30 b(the)g Fq(list)j Ft(b)m(y)e(whitespace.)275 +1509 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)p Ft(.)150 1760 +y Fr(3.3)68 b(Shell)45 b(F)-11 b(unctions)275 2002 y +Ft(Shell)27 b(functions)g(are)g(a)h(w)m(a)m(y)g(to)g(group)f(commands)g +(for)g(later)i(execution)f(using)f(a)h(single)g(name)f(for)150 +2112 y(the)35 b(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 2221 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 2331 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 2440 y(pro)s(cess)30 +b(is)g(created)i(to)f(in)m(terpret)g(them.)275 2573 y(F)-8 +b(unctions)30 b(are)h(declared)g(using)f(this)g(syn)m(tax:)390 +2705 y Fs([)47 b(function)f(])h Fj(name)58 b Fs(\(\))47 +b Fj(compound-command)54 b Fs([)47 b Fj(redirections)55 +b Fs(])275 2838 y Ft(This)31 b(de\014nes)h(a)h(shell)g(function)g +(named)f Fq(name)p Ft(.)48 b(The)32 b(reserv)m(ed)h(w)m(ord)f +Fs(function)f Ft(is)h(optional.)49 b(If)150 2947 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 3057 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)150 3166 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 +3276 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 3386 y Ft(is)37 b(sp)s(eci\014ed)g(as)g(the)h(name)f(of)g (a)h(command.)61 b(An)m(y)37 b(redirections)h(\(see)g(Section)g(3.6)g -([Redirections],)150 2089 y(page)31 b(25\))h(asso)s(ciated)g(with)e +([Redirections],)150 3495 y(page)31 b(25\))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 2235 y(A)41 b(function)f(de\014nition)h(ma)m(y)g(b) +(is)h(executed.)275 3628 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 2345 y(Section)31 b(4.1)h([Bourne)e -(Shell)g(Builtins],)h(page)h(35\).)275 2491 y(The)26 +Fs(unset)e Ft(builtin)i(\(see)150 3737 y(Section)31 b(4.1)h([Bourne)e +(Shell)g(Builtins],)h(page)h(35\).)275 3870 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 -2600 y(function)k(with)f(the)i(same)f(name)g(already)h(exists.)46 +3979 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 -2710 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 2856 y(Note)22 b(that)f(for)f +4089 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 4221 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 2966 y(the)38 b(b)s(o)s(dy)d(of)j +(curly)f(braces)h(that)g(surround)150 4331 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 -3075 y(is)38 b(b)s(ecause)g(the)h(braces)f(are)h(reserv)m(ed)f(w)m +4440 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 3185 y(separated)26 b(from)f(the)h(command)f(list)i(b)m(y)e +(are)150 4550 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 3294 y(using)i(the)g(braces,)h(the)g +b(Also,)28 b(when)150 4660 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 3440 y(When)i(a)i(function)f +e(`)p Fs(&)p Ft(',)h(or)g(a)f(newline.)275 4792 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 3550 y(rameters)42 b(during)e(its)i +g(the)h(p)s(ositional)g(pa-)150 4902 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(15\).)75 b(The)150 3660 y(sp)s(ecial)37 +(arameters],)i(page)c(16\).)75 b(The)150 5011 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 -3769 y(re\015ect)h(the)f(c)m(hange.)56 b(Sp)s(ecial)35 +5121 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 3879 +b(\014rst)f(elemen)m(t)j(of)e(the)g Fs(FUNCNAME)150 5230 y Ft(v)-5 b(ariable)27 b(is)g(set)g(to)h(the)f(name)f(of)h(the)g (function)f(while)h(the)g(function)f(is)h(executing.)40 -b(All)28 b(other)f(asp)s(ects)150 3988 y(of)32 b(the)g(shell)g +b(All)28 b(other)f(asp)s(ects)150 5340 y(of)32 b(the)g(shell)g (execution)i(en)m(vironmen)m(t)e(are)h(iden)m(tical)g(b)s(et)m(w)m(een) -g(a)f(function)g(and)f(its)i(caller)g(with)f(the)150 -4098 y(exception)h(that)f(the)g Fs(DEBUG)f Ft(and)g Fs(RETURN)f +g(a)f(function)g(and)f(its)i(caller)g(with)f(the)p eop +end +%%Page: 15 21 +TeXDict begin 15 20 bop 150 -116 a Ft(Chapter)30 b(3:)41 +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(15)150 299 +y(exception)33 b(that)f(the)g Fs(DEBUG)f Ft(and)g Fs(RETURN)f Ft(traps)h(are)h(not)g(inherited)g(unless)f(the)h(function)f(has)h(b)s -(een)150 4208 y(giv)m(en)h(the)f Fs(trace)e Ft(attribute)j(using)e(the) -h Fs(declare)e Ft(builtin)h(or)h(the)g Fs(-o)e(functrace)f -Ft(option)j(has)g(b)s(een)150 4317 y(enabled)39 b(with)f(the)h +(een)150 408 y(giv)m(en)h(the)f Fs(trace)e Ft(attribute)j(using)e(the)h +Fs(declare)e Ft(builtin)h(or)h(the)g Fs(-o)e(functrace)f +Ft(option)j(has)g(b)s(een)150 518 y(enabled)39 b(with)f(the)h Fs(set)e Ft(builtin,)k(\(in)e(whic)m(h)f(case)i(all)f(functions)f -(inherit)h(the)f Fs(DEBUG)g Ft(and)g Fs(RETURN)150 4427 +(inherit)h(the)f Fs(DEBUG)g Ft(and)g Fs(RETURN)150 628 y Ft(traps\).)66 b(See)40 b(Section)f(4.1)h([Bourne)f(Shell)g (Builtins],)j(page)e(35,)i(for)d(the)g(description)g(of)g(the)g -Fs(trap)150 4536 y Ft(builtin.)275 4682 y(If)e(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 4792 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 4902 y(with)36 b(the)h +Fs(trap)150 737 y Ft(builtin.)275 875 y(If)e(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 985 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 1094 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 5011 y(the)h(v)-5 +57 b(When)37 b(a)f(function)g(completes,)150 1204 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 -5121 y(v)-5 b(alues)26 b(they)f(had)g(prior)f(to)i(the)g(function's)f +1313 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 5230 y(that)j(is)g(the)f(function's)h +(to)g Fs(return)p Ft(,)150 1423 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 5340 y(of)h(the)f(last)h(command)f -(executed)i(b)s(efore)e(the)g Fs(return)p Ft(.)p eop -end -%%Page: 15 21 -TeXDict begin 15 20 bop 150 -116 a Ft(Chapter)30 b(3:)41 -b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(15)275 299 +(is)f(the)h(exit)h(status)150 1533 y(of)h(the)f(last)h(command)f +(executed)i(b)s(efore)e(the)g Fs(return)p Ft(.)275 1670 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 408 y(are)31 b(visible)g(only)f(to)h(the)g +b(v)-5 b(ariables)150 1780 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 -548 y(F)-8 b(unction)38 b(names)f(and)g(de\014nitions)g(ma)m(y)i(b)s(e) -e(listed)h(with)f(the)h(`)p Fs(-f)p Ft(')f(option)h(to)h(the)e -Fs(declare)f Ft(or)150 657 y Fs(typeset)d Ft(builtin)h(commands)h +1918 y(F)-8 b(unction)38 b(names)f(and)g(de\014nitions)g(ma)m(y)i(b)s +(e)e(listed)h(with)f(the)h(`)p Fs(-f)p Ft(')f(option)h(to)h(the)e +Fs(declare)f Ft(or)150 2027 y Fs(typeset)d Ft(builtin)h(commands)h (\(see)h(Section)g(4.2)g([Bash)f(Builtins],)i(page)f(41\).)55 -b(The)35 b(`)p Fs(-F)p Ft(')g(option)g(to)150 767 y Fs(declare)f -Ft(or)i Fs(typeset)e Ft(will)i(list)h(the)f(function)g(names)g(only)g -(\(and)g(optionally)h(the)f(source)g(\014le)h(and)150 -876 y(line)c(n)m(um)m(b)s(er,)g(if)f(the)h Fs(extdebug)e +b(The)35 b(`)p Fs(-F)p Ft(')g(option)g(to)150 2137 y +Fs(declare)f Ft(or)i Fs(typeset)e Ft(will)i(list)h(the)f(function)g +(names)g(only)g(\(and)g(optionally)h(the)f(source)g(\014le)h(and)150 +2247 y(line)c(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 986 y(subshells)f +b(ma)m(y)h(b)s(e)e(exp)s(orted)g(so)h(that)150 2356 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)150 -1095 y(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(35\).)47 +2466 y(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(35\).)47 b(Note)33 b(that)g(shell)f(functions)g(and)f(v)-5 b(ariables)33 -b(with)150 1205 y(the)d(same)g(name)g(ma)m(y)g(result)g(in)g(m)m +b(with)150 2575 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 1315 y(to)h(the)g(shell's)f(c)m(hildren.)41 +(vironmen)m(t)g(passed)150 2685 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 1454 y(F)-8 b(unctions)30 +m(y)h(cause)g(a)g(problem.)275 2823 y(F)-8 b(unctions)30 b(ma)m(y)h(b)s(e)f(recursiv)m(e.)41 b(No)31 b(limit)g(is)g(placed)g(on) f(the)g(n)m(um)m(b)s(er)g(of)g(recursiv)m(e)h(calls.)150 -1722 y Fr(3.4)68 b(Shell)45 b(P)l(arameters)275 1971 +3088 y Fr(3.4)68 b(Shell)45 b(P)l(arameters)275 3336 y Ft(A)32 b Fq(parameter)40 b Ft(is)32 b(an)h(en)m(tit)m(y)h(that)f (stores)g(v)-5 b(alues.)48 b(It)33 b(can)g(b)s(e)e(a)i Fs(name)p Ft(,)g(a)g(n)m(um)m(b)s(er,)f(or)g(one)h(of)g(the)150 -2081 y(sp)s(ecial)i(c)m(haracters)h(listed)g(b)s(elo)m(w.)53 +3445 y(sp)s(ecial)i(c)m(haracters)h(listed)g(b)s(elo)m(w.)53 b(A)35 b Fq(v)-5 b(ariable)41 b Ft(is)34 b(a)h(parameter)h(denoted)e(b) m(y)h(a)g Fs(name)p Ft(.)52 b(A)35 b(v)-5 b(ariable)150 -2190 y(has)29 b(a)h Fq(v)-5 b(alue)35 b Ft(and)28 b(zero)j(or)e(more)g +3555 y(has)29 b(a)h Fq(v)-5 b(alue)35 b Ft(and)28 b(zero)j(or)e(more)g Fq(attributes)p Ft(.)41 b(A)m(ttributes)30 b(are)g(assigned)g(using)f -(the)g Fs(declare)e Ft(builtin)150 2300 y(command)22 +(the)g Fs(declare)e Ft(builtin)150 3665 y(command)22 b(\(see)h(the)f(description)g(of)g(the)g Fs(declare)f Ft(builtin)g(in)h(Section)h(4.2)g([Bash)f(Builtins],)j(page)d(41\).)275 -2439 y(A)28 b(parameter)h(is)g(set)g(if)f(it)h(has)f(b)s(een)g +3802 y(A)28 b(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 2548 y(a)31 +(v)-5 b(alid)28 b(v)-5 b(alue.)41 b(Once)150 3912 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 -2688 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 2827 y Fj(name)11 -b Fs(=[)p Fj(value)g Fs(])150 2966 y Ft(If)34 b Fq(v)-5 +4050 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 4188 y Fj(name)11 +b Fs(=[)p Fj(value)g Fs(])150 4325 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 -3075 y(pansion,)h(parameter)f(and)f(v)-5 b(ariable)36 +4435 y(pansion,)h(parameter)f(and)f(v)-5 b(ariable)36 b(expansion,)f(command)g(substitution,)h(arithmetic)g(expansion,)150 -3185 y(and)k(quote)h(remo)m(v)-5 b(al)42 b(\(detailed)h(b)s(elo)m(w\).) +4545 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 3294 y Fq(v)-5 b(alue)38 +Ft(attribute)i(set,)j(then)150 4654 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 3404 y(\(see)e(Section)g(3.5.5)i([Arithmetic)e(Expansion],)f +(used)150 4764 y(\(see)e(Section)g(3.5.5)i([Arithmetic)e(Expansion],)f (page)h(22\).)42 b(W)-8 b(ord)31 b(splitting)g(is)g(not)f(p)s -(erformed,)f(with)150 3514 y(the)35 b(exception)h(of)f +(erformed,)f(with)150 4873 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 -3623 y(men)m(t)33 b(statemen)m(ts)h(ma)m(y)f(also)g(app)s(ear)f(as)g +4983 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 3733 +Ft(,)g Fs(typeset)p Ft(,)g Fs(export)p Ft(,)150 5093 y Fs(readonly)p Ft(,)d(and)i Fs(local)f Ft(builtin)h(commands.)275 -3872 y(In)f(the)h(con)m(text)i(where)d(an)h(assignmen)m(t)h(statemen)m +5230 y(In)f(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 3981 y(arra)m(y)f(index)g(\(see)h(Section)g(6.7)g +b(ariable)31 b(or)150 5340 y(arra)m(y)f(index)g(\(see)h(Section)g(6.7)g ([Arra)m(ys],)g(page)g(78\),)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 4091 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 4201 y(in)m(teger)k(attribute)e -(has)g(b)s(een)g(set,)j Fq(v)-5 b(alue)44 b Ft(is)38 -b(ev)-5 b(aluated)39 b(as)g(an)f(arithmetic)h(expression)f(and)g(added) -150 4310 y(to)e(the)f(v)-5 b(ariable's)36 b(curren)m(t)f(v)-5 +(can)h(b)s(e)e(used)g(to)i(app)s(end)d(to)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)150 299 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 408 y(in)m(teger)k(attribute)e(has)g(b)s +(een)g(set,)j Fq(v)-5 b(alue)44 b Ft(is)38 b(ev)-5 b(aluated)39 +b(as)g(an)f(arithmetic)h(expression)f(and)g(added)150 +518 y(to)e(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 -4420 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(78\),)h(the)e(v)-5 -b(ariable's)25 b(v)-5 b(alue)150 4529 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 +628 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(78\),)h(the)e(v)-5 +b(ariable's)25 b(v)-5 b(alue)150 737 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 -4639 y(at)e(one)g(greater)h(than)f(the)g(arra)m(y's)g(maxim)m(um)f +847 y(at)e(one)g(greater)h(than)f(the)g(arra)m(y's)g(maxim)m(um)f (index.)40 b(When)30 b(applied)f(to)i(a)f(string-v)-5 -b(alued)30 b(v)-5 b(ariable,)150 4748 y Fq(v)g(alue)36 +b(alued)30 b(v)-5 b(ariable,)150 956 y Fq(v)g(alue)36 b Ft(is)30 b(expanded)g(and)g(app)s(ended)e(to)j(the)g(v)-5 -b(ariable's)31 b(v)-5 b(alue.)150 4982 y Fk(3.4.1)63 -b(P)m(ositional)41 b(P)m(arameters)275 5230 y Ft(A)36 +b(ariable's)31 b(v)-5 b(alue.)150 1197 y Fk(3.4.1)63 +b(P)m(ositional)41 b(P)m(arameters)275 1450 y Ft(A)36 b Fq(p)s(ositional)i(parameter)44 b Ft(is)37 b(a)g(parameter)g(denoted) g(b)m(y)g(one)g(or)g(more)g(digits,)i(other)e(than)g(the)150 -5340 y(single)k(digit)f Fs(0)p Ft(.)69 b(P)m(ositional)42 +1559 y(single)k(digit)f Fs(0)p Ft(.)69 b(P)m(ositional)42 b(parameters)f(are)f(assigned)g(from)g(the)g(shell's)g(argumen)m(ts)g -(when)f(it)i(is)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)150 299 y(in)m(v)m(ok)m(ed,)40 -b(and)d(ma)m(y)g(b)s(e)g(reassigned)g(using)f(the)i Fs(set)e -Ft(builtin)g(command.)61 b(P)m(ositional)39 b(parameter)e -Fs(N)150 408 y Ft(ma)m(y)27 b(b)s(e)g(referenced)f(as)h -Fs(${N})p Ft(,)g(or)g(as)g Fs($N)f Ft(when)g Fs(N)g Ft(consists)i(of)f -(a)g(single)g(digit.)41 b(P)m(ositional)29 b(parameters)150 -518 y(ma)m(y)j(not)f(b)s(e)g(assigned)h(to)g(with)f(assignmen)m(t)h -(statemen)m(ts.)45 b(The)30 b Fs(set)h Ft(and)g Fs(shift)e -Ft(builtins)i(are)h(used)150 628 y(to)h(set)f(and)f(unset)h(them)g -(\(see)h(Chapter)e(4)h([Shell)g(Builtin)h(Commands],)e(page)i(35\).)47 -b(The)31 b(p)s(ositional)150 737 y(parameters)24 b(are)g(temp)s -(orarily)g(replaced)h(when)d(a)j(shell)f(function)f(is)h(executed)h -(\(see)f(Section)h(3.3)g([Shell)150 847 y(F)-8 b(unctions],)31 -b(page)h(14\).)275 979 y(When)27 b(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 1088 y(b)s(e)h(enclosed)h(in)f(braces.)150 -1304 y Fk(3.4.2)63 b(Sp)s(ecial)41 b(P)m(arameters)275 -1545 y Ft(The)27 b(shell)h(treats)h(sev)m(eral)g(parameters)g(sp)s -(ecially)-8 b(.)41 b(These)28 b(parameters)g(ma)m(y)g(only)g(b)s(e)g -(referenced;)150 1655 y(assignmen)m(t)j(to)g(them)g(is)f(not)h(allo)m -(w)m(ed.)150 1808 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 1918 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 2028 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 2137 y Fs("$*")h -Ft(is)i(equiv)-5 b(alen)m(t)33 b(to)h Fs("$1)p Fj(c)11 -b Fs($2)p Fj(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 2247 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 2356 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 2510 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 2620 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 2729 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 2839 -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 -2949 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 -3058 y(the)37 b(last)g(part)g(of)f(the)h(original)h(w)m(ord.)59 +(when)f(it)i(is)150 1669 y(in)m(v)m(ok)m(ed,)f(and)d(ma)m(y)g(b)s(e)g +(reassigned)g(using)f(the)i Fs(set)e Ft(builtin)g(command.)61 +b(P)m(ositional)39 b(parameter)e Fs(N)150 1779 y Ft(ma)m(y)27 +b(b)s(e)g(referenced)f(as)h Fs(${N})p Ft(,)g(or)g(as)g +Fs($N)f Ft(when)g Fs(N)g Ft(consists)i(of)f(a)g(single)g(digit.)41 +b(P)m(ositional)29 b(parameters)150 1888 y(ma)m(y)j(not)f(b)s(e)g +(assigned)h(to)g(with)f(assignmen)m(t)h(statemen)m(ts.)45 +b(The)30 b Fs(set)h Ft(and)g Fs(shift)e Ft(builtins)i(are)h(used)150 +1998 y(to)h(set)f(and)f(unset)h(them)g(\(see)h(Chapter)e(4)h([Shell)g +(Builtin)h(Commands],)e(page)i(35\).)47 b(The)31 b(p)s(ositional)150 +2107 y(parameters)24 b(are)g(temp)s(orarily)g(replaced)h(when)d(a)j +(shell)f(function)f(is)h(executed)h(\(see)f(Section)h(3.3)g([Shell)150 +2217 y(F)-8 b(unctions],)31 b(page)h(14\).)275 2360 y(When)27 +b(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 2469 +y(b)s(e)h(enclosed)h(in)f(braces.)150 2710 y Fk(3.4.2)63 +b(Sp)s(ecial)41 b(P)m(arameters)275 2963 y Ft(The)27 +b(shell)h(treats)h(sev)m(eral)g(parameters)g(sp)s(ecially)-8 +b(.)41 b(These)28 b(parameters)g(ma)m(y)g(only)g(b)s(e)g(referenced;) +150 3072 y(assignmen)m(t)j(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150 +3244 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 3354 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 +3463 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 3573 y Fs("$*")h Ft(is)i(equiv)-5 +b(alen)m(t)33 b(to)h Fs("$1)p Fj(c)11 b Fs($2)p Fj(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 3683 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 +3792 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 3960 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 +4070 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 +4179 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 4289 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 4398 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 +4508 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 -3168 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 3321 y Fs(#)432 +4617 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 4785 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 3475 y Fs(?)432 b Ft(Expands)29 +(parameters)g(in)f(decimal.)150 4953 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 3629 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 -3739 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 3848 y(option\).)150 4002 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 -4112 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 4265 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 4375 y(c)m(hronous\))30 -b(command.)150 4529 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 4638 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 4748 y(page)39 b(32\),)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 4857 y(option)i(\(see)g(Section)h(6.1)f([In)m(v)m(oking)h -(Bash],)h(page)e(69\),)j(then)d Fs($0)e Ft(is)i(set)g(to)g(the)g -(\014rst)630 4967 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 5077 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 -5230 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 5340 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)p eop end +Fs(-i)p Ft(')630 5340 y(option\).)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)630 299 -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 408 -y(after)35 b(expansion.)54 b(Also)36 b(set)f(to)h(the)f(full)f +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(17)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 585 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 695 y(c)m(hronous\))30 b(command.)150 871 +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 981 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 1090 y(page)39 b(33\),)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 1200 y(option)i(\(see)g(Section)h(6.1)f +([In)m(v)m(oking)h(Bash],)h(page)e(69\),)j(then)d Fs($0)e +Ft(is)i(set)g(to)g(the)g(\014rst)630 1309 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 1419 +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 1595 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 +1705 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 +1815 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 +1924 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 -518 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 628 y(c)m(hec)m(king)32 +2034 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 2143 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 901 y Fr(3.5)68 b(Shell)45 b(Expansions)275 -1151 y Ft(Expansion)29 b(is)h(p)s(erformed)e(on)i(the)g(command)g(line) +(\014le.)150 2443 y Fr(3.5)68 b(Shell)45 b(Expansions)275 +2704 y Ft(Expansion)29 b(is)h(p)s(erformed)e(on)i(the)g(command)g(line) g(after)h(it)f(has)g(b)s(een)f(split)h(in)m(to)h Fs(token)p -Ft(s.)39 b(There)150 1261 y(are)31 b(sev)m(en)g(kinds)e(of)i(expansion) -f(p)s(erformed:)225 1401 y Fp(\017)60 b Ft(brace)31 b(expansion)225 -1539 y Fp(\017)60 b Ft(tilde)31 b(expansion)225 1677 +Ft(s.)39 b(There)150 2814 y(are)31 b(sev)m(en)g(kinds)e(of)i(expansion) +f(p)s(erformed:)225 2966 y Fp(\017)60 b Ft(brace)31 b(expansion)225 +3109 y Fp(\017)60 b Ft(tilde)31 b(expansion)225 3252 y Fp(\017)60 b Ft(parameter)31 b(and)f(v)-5 b(ariable)31 -b(expansion)225 1814 y Fp(\017)60 b Ft(command)30 b(substitution)225 -1952 y Fp(\017)60 b Ft(arithmetic)32 b(expansion)225 -2089 y Fp(\017)60 b Ft(w)m(ord)30 b(splitting)225 2227 -y Fp(\017)60 b Ft(\014lename)31 b(expansion)275 2396 +b(expansion)225 3395 y Fp(\017)60 b Ft(command)30 b(substitution)225 +3538 y Fp(\017)60 b Ft(arithmetic)32 b(expansion)225 +3681 y Fp(\017)60 b Ft(w)m(ord)30 b(splitting)225 3824 +y Fp(\017)60 b Ft(\014lename)31 b(expansion)275 4009 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 2505 y(arithmetic)46 b(expansion)f(and)g(command)f +b(and)150 4118 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 2615 y(splitting,)31 b(and)f(\014lename)h(expansion.)275 -2756 y(On)42 b(systems)h(that)h(can)g(supp)s(ort)e(it,)47 +(ord)150 4228 y(splitting,)31 b(and)f(\014lename)h(expansion.)275 +4379 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 2865 y(substitution)p +b(ailable:)69 b Fq(pro)s(cess)150 4489 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 -2975 y(expansion)30 b(and)g(command)g(substitution.)275 -3116 y(Only)35 b(brace)i(expansion,)h(w)m(ord)e(splitting,)j(and)d +4599 y(expansion)30 b(and)g(command)g(substitution.)275 +4750 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 -3225 y(of)h(w)m(ords)f(of)g(the)h(expansion;)i(other)e(expansions)f +4860 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 3335 y(only)32 b(exceptions)i(to)f(this)f(are)h(the)f +b(The)150 4969 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 3444 y(page)e(16\))h(and)d Fs("${)p +(P)m(arameters],)150 5079 y(page)e(16\))h(and)d Fs("${)p Fj(name)11 b Fs([@]}")27 b Ft(\(see)k(Section)h(6.7)f([Arra)m(ys],)g -(page)g(78\).)275 3585 y(After)41 b(all)i(expansions,)h +(page)g(78\).)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(25\))h(is)150 3695 y(p)s(erformed.)150 -3931 y Fk(3.5.1)63 b(Brace)40 b(Expansion)275 4182 y -Ft(Brace)21 b(expansion)g(is)g(a)g(mec)m(hanism)g(b)m(y)g(whic)m(h)f -(arbitrary)h(strings)f(ma)m(y)i(b)s(e)e(generated.)38 -b(This)20 b(mec)m(h-)150 4291 y(anism)35 b(is)h(similar)f(to)h +(v)-5 b(al],)47 b(page)42 b(25\))h(is)150 5340 y(p)s(erformed.)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 Fk(3.5.1)63 b(Brace)40 +b(Expansion)275 545 y Ft(Brace)21 b(expansion)g(is)g(a)g(mec)m(hanism)g +(b)m(y)g(whic)m(h)f(arbitrary)h(strings)f(ma)m(y)i(b)s(e)e(generated.) +38 b(This)20 b(mec)m(h-)150 654 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(23\),)150 4401 y(but)24 b(the)i(\014le)f(names)g +(Expansion],)f(page)g(23\),)150 764 y(but)24 b(the)i(\014le)f(names)g (generated)h(need)f(not)g(exist.)40 b(P)m(atterns)26 b(to)g(b)s(e)e(brace)i(expanded)e(tak)m(e)j(the)e(form)g(of)150 -4511 y(an)30 b(optional)h Fq(pream)m(ble)p Ft(,)g(follo)m(w)m(ed)g(b)m +874 y(an)30 b(optional)h Fq(pream)m(ble)p Ft(,)g(follo)m(w)m(ed)g(b)m (y)f(either)g(a)h(series)f(of)g(comma-separated)i(strings)d(or)h(a)h -(seqeunce)150 4620 y(expression)36 b(b)s(et)m(w)m(een)g(a)h(pair)e(of)i +(seqeunce)150 983 y(expression)36 b(b)s(et)m(w)m(een)g(a)h(pair)e(of)i (braces,)g(follo)m(w)m(ed)h(b)m(y)e(an)g(optional)h Fq(p)s(ostscript)p -Ft(.)57 b(The)36 b(pream)m(ble)g(is)150 4730 y(pre\014xed)28 +Ft(.)57 b(The)36 b(pream)m(ble)g(is)150 1093 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 -4839 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ) -m(t.)275 4980 y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59 +1202 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ) +m(t.)275 1339 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 5090 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 5230 y Fs(bash$)46 -b(echo)h(a{d,c,b}e)390 5340 y(ade)g(ace)g(abe)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)275 299 y(A)24 b(sequence)h(expression)g(tak)m -(es)h(the)f(form)f Fs({)p Fj(x)p Fs(..)p Fj(y)11 b Fs(})p -Ft(,)23 b(where)i Fq(x)30 b Ft(and)24 b Fq(y)33 b Ft(are)25 -b(either)g(in)m(tegers)h(or)e(single)150 408 y(c)m(haracters.)43 -b(When)30 b(in)m(tegers)i(are)f(supplied,)e(the)i(expression)f(expands) -g(to)h(eac)m(h)h(n)m(um)m(b)s(er)d(b)s(et)m(w)m(een)i -Fq(x)150 518 y Ft(and)i Fq(y)p Ft(,)i(inclusiv)m(e.)53 -b(When)34 b(c)m(haracters)h(are)f(supplied,)g(the)h(expression)e -(expands)g(to)i(eac)m(h)g(c)m(haracter)150 628 y(lexicographically)e(b) -s(et)m(w)m(een)e Fq(x)37 b Ft(and)30 b Fq(y)p Ft(,)h(inclusiv)m(e.)42 -b(Note)31 b(that)g(b)s(oth)f Fq(x)37 b Ft(and)30 b Fq(y)38 -b Ft(m)m(ust)30 b(b)s(e)g(of)h(the)g(same)150 737 y(t)m(yp)s(e.)275 -874 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 -983 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 1093 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 1202 -y(T)-8 b(o)37 b(a)m(v)m(oid)g(con\015icts)g(with)f(parameter)h +(sorted;)150 1448 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 1584 y Fs(bash$)46 +b(echo)h(a{d,c,b}e)390 1694 y(ade)g(ace)g(abe)275 1830 +y Ft(A)29 b(sequence)g(expression)g(tak)m(es)h(the)f(form)g +Fs({)p Fj(x)p Fs(..)p Fj(y)11 b Fs([)p Fj(incr)g Fs(]})p +Ft(,)25 b(where)k Fq(x)35 b Ft(and)28 b Fq(y)37 b Ft(are)29 +b(either)h(in)m(tegers)150 1940 y(or)42 b(single)h(c)m(haracters,)48 +b(and)41 b Fq(incr)p Ft(,)46 b(an)c(optional)i(incremen)m(t,)i(is)c(an) +h(in)m(teger.)78 b(When)42 b(in)m(tegers)i(are)150 2049 +y(supplied,)f(the)f(expression)f(expands)f(to)i(eac)m(h)h(n)m(um)m(b)s +(er)d(b)s(et)m(w)m(een)i Fq(x)47 b Ft(and)41 b Fq(y)p +Ft(,)j(inclusiv)m(e.)75 b(Supplied)150 2159 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 2269 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 +2378 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 2488 y(expression)h(expands)g(to)h(eac)m(h)h(c)m(haracter)g +(lexicographically)i(b)s(et)m(w)m(een)d Fq(x)44 b Ft(and)37 +b Fq(y)p Ft(,)i(inclusiv)m(e.)64 b(Note)150 2597 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 +2707 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 2843 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 2953 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 3062 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 +3172 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 1312 y(brace)31 b(expansion.)275 -1448 y(A)e(correctly-formed)i(brace)f(expansion)f(m)m(ust)h(con)m(tain) +(eligible)i(for)150 3282 y(brace)31 b(expansion.)275 +3418 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 -1558 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5 +3527 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 1667 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275 -1804 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 3637 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275 +3773 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 1913 y(expression.)51 +(considered)g(part)g(of)g(a)h(brace)150 3883 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 2023 y(eligible)e(for)e(brace)h(expansion.)275 2159 +150 3993 y(eligible)e(for)e(brace)h(expansion.)275 4129 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 -2269 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 2405 y Fs(mkdir)46 b(/usr/local/src/bash/{old,n)o -(ew,)o(dist)o(,bug)o(s})275 2541 y Ft(or)390 2677 y Fs(chown)g(root)h +4238 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 4375 y Fs(mkdir)46 b(/usr/local/src/bash/{old,n)o +(ew,)o(dist)o(,bug)o(s})275 4511 y Ft(or)390 4647 y Fs(chown)g(root)h (/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150 -2905 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)275 3151 y +4875 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)275 5121 y Ft(If)i(a)i(w)m(ord)e(b)s(egins)h(with)f(an)h(unquoted)f(tilde)i(c)m (haracter)h(\(`)p Fs(~)p Ft('\),)i(all)d(of)g(the)f(c)m(haracters)h(up) -e(to)150 3261 y(the)35 b(\014rst)f(unquoted)f(slash)i(\(or)g(all)g(c)m +e(to)150 5230 y(the)35 b(\014rst)f(unquoted)f(slash)i(\(or)g(all)g(c)m (haracters,)i(if)e(there)g(is)f(no)h(unquoted)e(slash\))i(are)g -(considered)g(a)150 3370 y Fq(tilde-pre\014x)p Ft(.)55 +(considered)g(a)150 5340 y Fq(tilde-pre\014x)p Ft(.)55 b(If)35 b(none)g(of)g(the)g(c)m(haracters)i(in)d(the)i(tilde-pre\014x)f -(are)g(quoted,)i(the)e(c)m(haracters)i(in)e(the)150 3480 +(are)g(quoted,)i(the)e(c)m(haracters)i(in)e(the)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(tilde-pre\014x)27 b(follo)m(wing)h(the)f(tilde)h(are)f(treated)h(as)f (a)g(p)s(ossible)f Fq(login)i(name)p Ft(.)39 b(If)27 -b(this)f(login)i(name)f(is)g(the)150 3589 y(n)m(ull)k(string,)h(the)f +b(this)f(login)i(name)f(is)g(the)150 408 y(n)m(ull)k(string,)h(the)f (tilde)h(is)g(replaced)g(with)f(the)g(v)-5 b(alue)32 b(of)f(the)h Fs(HOME)e Ft(shell)h(v)-5 b(ariable.)45 -b(If)31 b Fs(HOME)f Ft(is)h(unset,)150 3699 y(the)37 -b(home)f(directory)h(of)g(the)f(user)g(executing)i(the)f(shell)f(is)h -(substituted)f(instead.)59 b(Otherwise,)38 b(the)150 -3809 y(tilde-pre\014x)30 b(is)h(replaced)g(with)f(the)g(home)h -(directory)g(asso)s(ciated)g(with)f(the)h(sp)s(eci\014ed)f(login)h -(name.)275 3945 y(If)h(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 4054 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 4191 y(If)f(the)h(c)m(haracters)h(follo)m(wing)h(the) -e(tilde)g(in)g(the)g(tilde-pre\014x)g(consist)g(of)g(a)h(n)m(um)m(b)s -(er)d Fq(N)p Ft(,)j(optionally)150 4300 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 4410 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 4519 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 4629 y(page)c(79\).)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 4739 y(`)p Fs(-)p -Ft(',)31 b(`)p Fs(+)p Ft(')f(is)h(assumed.)275 4875 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 -5011 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 5121 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 5230 y(ma)m(y)27 b(use)e(\014le)h(names)g(with)g(tildes)g(in) -g(assignmen)m(ts)h(to)g Fs(PATH)p Ft(,)f Fs(MAILPATH)p -Ft(,)e(and)i Fs(CDPATH)p Ft(,)f(and)h(the)g(shell)150 -5340 y(assigns)31 b(the)f(expanded)g(v)-5 b(alue.)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)275 299 -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 472 y Fs(~)432 b Ft(The)30 -b(v)-5 b(alue)31 b(of)f Fs($HOME)150 641 y(~/foo)240 -b Ft(`)p Fs($HOME/foo)p Ft(')150 809 y Fs(~fred/foo)630 -919 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 1087 y(~+/foo)192 -b Ft(`)p Fs($PWD/foo)p Ft(')150 1256 y Fs(~-/foo)g Ft(`)p -Fs(${OLDPWD-'~-'}/foo)p Ft(')150 1424 y Fs(~)p Fj(N)384 +b(If)31 b Fs(HOME)f Ft(is)h(unset,)150 518 y(the)37 b(home)f(directory) +h(of)g(the)f(user)g(executing)i(the)f(shell)f(is)h(substituted)f +(instead.)59 b(Otherwise,)38 b(the)150 628 y(tilde-pre\014x)30 +b(is)h(replaced)g(with)f(the)g(home)h(directory)g(asso)s(ciated)g(with) +f(the)h(sp)s(eci\014ed)f(login)h(name.)275 765 y(If)h(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 875 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 1012 +y(If)f(the)h(c)m(haracters)h(follo)m(wing)h(the)e(tilde)g(in)g(the)g +(tilde-pre\014x)g(consist)g(of)g(a)h(n)m(um)m(b)s(er)d +Fq(N)p Ft(,)j(optionally)150 1122 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 +1231 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 1341 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 1451 y(page)c(79\).)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 +1560 y(`)p Fs(-)p Ft(',)31 b(`)p Fs(+)p Ft(')f(is)h(assumed.)275 +1698 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 1835 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 1945 +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 2054 +y(ma)m(y)27 b(use)e(\014le)h(names)g(with)g(tildes)g(in)g(assignmen)m +(ts)h(to)g Fs(PATH)p Ft(,)f Fs(MAILPATH)p Ft(,)e(and)i +Fs(CDPATH)p Ft(,)f(and)h(the)g(shell)150 2164 y(assigns)31 +b(the)f(expanded)g(v)-5 b(alue.)275 2301 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 2465 y Fs(~)432 b Ft(The)30 b(v)-5 +b(alue)31 b(of)f Fs($HOME)150 2627 y(~/foo)240 b Ft(`)p +Fs($HOME/foo)p Ft(')150 2790 y Fs(~fred/foo)630 2899 +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 3062 y(~+/foo)192 +b Ft(`)p Fs($PWD/foo)p Ft(')150 3224 y Fs(~-/foo)g Ft(`)p +Fs(${OLDPWD-'~-'}/foo)p Ft(')150 3386 y Fs(~)p Fj(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 Fj(N)11 b Ft(')150 1593 y Fs(~+)p +(y)f(`)p Fs(dirs)g(+)p Fj(N)11 b Ft(')150 3549 y Fs(~+)p Fj(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 Fj(N)11 b Ft(')150 1761 +(ed)h(b)m(y)f(`)p Fs(dirs)g(+)p Fj(N)11 b Ft(')150 3711 y Fs(~-)p Fj(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 Fj(N)11 -b Ft(')150 2004 y Fk(3.5.3)63 b(Shell)41 b(P)m(arameter)f(Expansion)275 -2257 y Ft(The)26 b(`)p Fs($)p Ft(')i(c)m(haracter)h(in)m(tro)s(duces)e +b Ft(')150 3941 y Fk(3.5.3)63 b(Shell)41 b(P)m(arameter)f(Expansion)275 +4188 y Ft(The)26 b(`)p Fs($)p Ft(')i(c)m(haracter)h(in)m(tro)s(duces)e (parameter)h(expansion,)g(command)f(substitution,)h(or)g(arithmetic)150 -2367 y(expansion.)38 b(The)22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h +4298 y(expansion.)38 b(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 2476 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect) +(whic)m(h)150 4408 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 2586 y(follo)m(wing)g(it)f(whic)m(h)f +(haracters)i(immediately)150 4517 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 -2729 y(When)44 b(braces)i(are)f(used,)j(the)e(matc)m(hing)g(ending)f +4655 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 2839 y(bac)m(kslash)40 b(or)f(within)g(a)g(quoted)g(string,) +(y)f(a)150 4764 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 2949 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275 -3092 y(The)40 b(basic)h(form)g(of)g(parameter)h(expansion)e(is)h($)p +150 4874 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275 +5011 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 3202 y(substituted.)43 +b(alue)42 b(of)f Fq(parameter)48 b Ft(is)150 5121 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 -3311 y(than)h(one)g(digit,)i(or)e(when)g Fq(parameter)39 +5230 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 3421 y(as)f(part)f(of)g(its)h -(name.)275 3565 y(If)26 b(the)i(\014rst)f(c)m(haracter)i(of)e -Fq(parameter)35 b Ft(is)27 b(an)g(exclamation)j(p)s(oin)m(t,)e(a)g(lev) -m(el)h(of)e(v)-5 b(ariable)29 b(indirection)150 3674 -y(is)38 b(in)m(tro)s(duced.)62 b(Bash)38 b(uses)f(the)h(v)-5 +(not)f(to)h(b)s(e)f(in)m(terpreted)150 5340 y(as)f(part)f(of)g(its)h +(name.)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)275 299 y(If)26 b(the)i(\014rst)f(c)m(haracter) +i(of)e Fq(parameter)35 b Ft(is)27 b(an)g(exclamation)j(p)s(oin)m(t,)e +(a)g(lev)m(el)h(of)e(v)-5 b(ariable)29 b(indirection)150 +408 y(is)38 b(in)m(tro)s(duced.)62 b(Bash)38 b(uses)f(the)h(v)-5 b(alue)38 b(of)g(the)g(v)-5 b(ariable)39 b(formed)e(from)g(the)h(rest)g -(of)g Fq(parameter)45 b Ft(as)150 3784 y(the)32 b(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 -3893 y(of)h(the)f(substitution,)i(rather)e(than)g(the)h(v)-5 +(of)g Fq(parameter)45 b Ft(as)150 518 y(the)32 b(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 +628 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 4003 y(expansion)p +b(is)g(kno)m(wn)g(as)h Fs(indirect)150 737 y(expansion)p Ft(.)81 b(The)44 b(exceptions)h(to)h(this)e(are)h(the)g(expansions)f (of)h($)p Fs({)p Ft(!)p Fq(pre\014x*)8 b Fs(})43 b Ft(and)h($)p Fs({)p Ft(!)p Fq(name)5 b Ft([)p Fs(@)p Ft(])p Fs(})150 -4112 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 4222 y(in)m(tro)s(duce)i -(indirection.)275 4366 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 4475 y(command)30 b(substitution,)g(and)g -(arithmetic)i(expansion.)275 4619 y(When)h(not)g(p)s(erforming)f +847 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 956 y(in)m(tro)s(duce)i(indirection.)275 +1083 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 1192 y(command)30 b(substitution,)g(and)g +(arithmetic)i(expansion.)275 1319 y(When)h(not)g(p)s(erforming)f (substring)g(expansion,)j(Bash)e(tests)h(for)f(a)h(parameter)g(that)g -(is)f(unset)g(or)150 4729 y(n)m(ull;)38 b(omitting)e(the)f(colon)h +(is)f(unset)g(or)150 1428 y(n)m(ull;)38 b(omitting)e(the)f(colon)h (results)f(in)g(a)h(test)g(only)f(for)g(a)g(parameter)h(that)f(is)h -(unset.)54 b(Put)35 b(another)150 4838 y(w)m(a)m(y)-8 +(unset.)54 b(Put)35 b(another)150 1538 y(w)m(a)m(y)-8 b(,)31 b(if)e(the)g(colon)h(is)f(included,)f(the)h(op)s(erator)h(tests) f(for)g(b)s(oth)f(existence)i(and)f(that)g(the)g(v)-5 -b(alue)30 b(is)f(not)150 4948 y(n)m(ull;)i(if)f(the)g(colon)i(is)e +b(alue)30 b(is)f(not)150 1648 y(n)m(ull;)i(if)f(the)g(colon)i(is)e (omitted,)i(the)e(op)s(erator)h(tests)g(only)g(for)f(existence.)150 -5121 y Fs(${)p Fj(parameter)11 b Fs(:)p Fp(\000)p Fj(word)g -Fs(})630 5230 y Ft(If)30 b Fq(parameter)37 b Ft(is)30 +1791 y Fs(${)p Fj(parameter)11 b Fs(:)p Fp(\000)p Fj(word)g +Fs(})630 1901 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 5340 y(the)31 -b(v)-5 b(alue)30 b(of)h Fq(parameter)37 b Ft(is)31 b(substituted.)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(${)p Fj(parameter)11 -b Fs(:=)p Fj(word)g Fs(})630 408 y Ft(If)33 b Fq(parameter)40 -b Ft(is)33 b(unset)f(or)h(n)m(ull,)h(the)f(expansion)g(of)g -Fq(w)m(ord)j Ft(is)d(assigned)g(to)h Fq(parameter)p Ft(.)630 -518 y(The)c(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 628 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 788 y Fs(${)p Fj(parameter)11 -b Fs(:?)p Fj(word)g Fs(})630 897 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 -1007 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 1117 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 1277 y Fs(${)p Fj(parameter)11 b Fs(:+)p -Fj(word)g Fs(})630 1386 y Ft(If)35 b Fq(parameter)42 +Ft(is)c(substituted.)40 b(Otherwise,)630 2010 y(the)31 +b(v)-5 b(alue)30 b(of)h Fq(parameter)37 b Ft(is)31 b(substituted.)150 +2153 y Fs(${)p Fj(parameter)11 b Fs(:=)p Fj(word)g Fs(})630 +2263 y Ft(If)33 b Fq(parameter)40 b Ft(is)33 b(unset)f(or)h(n)m(ull,)h +(the)f(expansion)g(of)g Fq(w)m(ord)j Ft(is)d(assigned)g(to)h +Fq(parameter)p Ft(.)630 2373 y(The)c(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 2482 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 +2626 y Fs(${)p Fj(parameter)11 b Fs(:?)p Fj(word)g Fs(})630 +2735 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 2845 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 2954 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 3098 y Fs(${)p Fj(parameter)11 +b Fs(:+)p Fj(word)g Fs(})630 3207 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 1496 y(of)31 b Fq(w)m(ord)i -Ft(is)e(substituted.)150 1656 y Fs(${)p Fj(parameter)11 -b Fs(:)p Fj(offset)g Fs(})150 1766 y(${)p Fj(parameter)g +(otherwise)e(the)h(expansion)630 3317 y(of)31 b Fq(w)m(ord)i +Ft(is)e(substituted.)150 3460 y Fs(${)p Fj(parameter)11 +b Fs(:)p Fj(offset)g Fs(})150 3570 y(${)p Fj(parameter)g Fs(:)p Fj(offset)g Fs(:)p Fj(le)o(ngt)o(h)g Fs(})630 -1875 y Ft(Expands)44 b(to)i(up)e(to)i Fq(length)g Ft(c)m(haracters)h +3679 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 -1985 y(sp)s(eci\014ed)30 b(b)m(y)h Fq(o\013set)p Ft(.)42 +3789 y(sp)s(eci\014ed)30 b(b)m(y)h Fq(o\013set)p Ft(.)42 b(If)31 b Fq(length)g Ft(is)g(omitted,)h(expands)e(to)h(the)g -(substring)f(of)g Fq(parameter)630 2094 y Ft(starting)38 +(substring)f(of)g Fq(parameter)630 3898 y Ft(starting)38 b(at)g(the)f(c)m(haracter)i(sp)s(eci\014ed)e(b)m(y)g Fq(o\013set)p Ft(.)62 b Fq(length)38 b Ft(and)f Fq(o\013set)j -Ft(are)e(arithmetic)630 2204 y(expressions)30 b(\(see)i(Section)g(6.5)g +Ft(are)e(arithmetic)630 4008 y(expressions)30 b(\(see)i(Section)g(6.5)g ([Shell)f(Arithmetic],)h(page)g(76\).)43 b(This)30 b(is)h(referred)f -(to)i(as)630 2314 y(Substring)d(Expansion.)630 2449 y +(to)i(as)630 4118 y(Substring)d(Expansion.)630 4244 y Fq(length)j Ft(m)m(ust)f(ev)-5 b(aluate)33 b(to)f(a)g(n)m(um)m(b)s(er)e (greater)i(than)f(or)g(equal)h(to)g(zero.)45 b(If)30 -b Fq(o\013set)35 b Ft(ev)-5 b(al-)630 2558 y(uates)36 +b Fq(o\013set)35 b Ft(ev)-5 b(al-)630 4354 y(uates)36 b(to)h(a)f(n)m(um)m(b)s(er)e(less)i(than)f(zero,)j(the)e(v)-5 b(alue)36 b(is)g(used)f(as)g(an)h(o\013set)h(from)e(the)h(end)630 -2668 y(of)i(the)f(v)-5 b(alue)38 b(of)g Fq(parameter)p +4463 y(of)i(the)f(v)-5 b(alue)38 b(of)g Fq(parameter)p Ft(.)62 b(If)37 b Fq(parameter)45 b Ft(is)37 b(`)p Fs(@)p Ft(',)j(the)d(result)h(is)f Fq(length)h Ft(p)s(ositional)630 -2777 y(parameters)d(b)s(eginning)e(at)i Fq(o\013set)p +4573 y(parameters)d(b)s(eginning)e(at)i Fq(o\013set)p Ft(.)54 b(If)34 b Fq(parameter)41 b Ft(is)34 b(an)h(arra)m(y)f(name)h -(indexed)f(b)m(y)g(`)p Fs(@)p Ft(')630 2887 y(or)f(`)p +(indexed)f(b)m(y)g(`)p Fs(@)p Ft(')630 4682 y(or)f(`)p Fs(*)p Ft(',)g(the)g(result)g(is)g(the)g Fq(length)g Ft(mem)m(b)s(ers)f(of)h(the)g(arra)m(y)g(b)s(eginning)f(with)g -Fs(${)p Fj(param-)630 2996 y(eter)11 b Fs([)p Fj(offset)g +Fs(${)p Fj(param-)630 4792 y(eter)11 b Fs([)p Fj(offset)g Fs(]})p Ft(.)65 b(A)40 b(negativ)m(e)j Fq(o\013set)g Ft(is)d(tak)m(en)h(relativ)m(e)h(to)f(one)g(greater)g(than)f(the)630 -3106 y(maxim)m(um)h(index)f(of)i(the)f(sp)s(eci\014ed)f(arra)m(y)-8 +4902 y(maxim)m(um)h(index)f(of)i(the)f(sp)s(eci\014ed)f(arra)m(y)-8 b(.)73 b(Note)43 b(that)e(a)h(negativ)m(e)h(o\013set)f(m)m(ust)f(b)s(e) -630 3216 y(separated)27 b(from)e(the)i(colon)g(b)m(y)f(at)h(least)g +630 5011 y(separated)27 b(from)e(the)i(colon)g(b)m(y)f(at)h(least)g (one)f(space)h(to)g(a)m(v)m(oid)h(b)s(eing)d(confused)h(with)g(the)630 -3325 y(`)p Fs(:-)p Ft(')31 b(expansion.)43 b(Substring)29 +5121 y(`)p Fs(:-)p Ft(')31 b(expansion.)43 b(Substring)29 b(indexing)i(is)g(zero-based)h(unless)e(the)i(p)s(ositional)g(parame-) -630 3435 y(ters)j(are)f(used,)h(in)f(whic)m(h)g(case)i(the)e(indexing)h +630 5230 y(ters)j(are)f(used,)h(in)f(whic)m(h)g(case)i(the)e(indexing)h (starts)f(at)i(1)e(b)m(y)h(default.)53 b(If)33 b Fq(o\013set)38 -b Ft(is)c(0,)630 3544 y(and)c(the)g(p)s(ositional)i(parameters)e(are)h -(used,)f Fs($@)g Ft(is)g(pre\014xed)f(to)i(the)g(list.)150 -3705 y Fs(${!)p Fj(prefix)11 b Fs(*})150 3814 y(${!)p -Fj(prefix)g Fs(@})630 3924 y Ft(Expands)24 b(to)h(the)g(names)g(of)g(v) --5 b(ariables)26 b(whose)f(names)f(b)s(egin)h(with)f -Fq(pre\014x)p Ft(,)i(separated)f(b)m(y)630 4033 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 4143 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 -4253 y(w)m(ord.)150 4413 y Fs(${!)p Fj(name)11 b Fs([@]})150 -4522 y(${!)p Fj(name)g Fs([*]})630 4632 y Ft(If)26 b +b Ft(is)c(0,)630 5340 y(and)c(the)g(p)s(ositional)i(parameters)e(are)h +(used,)f Fs($@)g Ft(is)g(pre\014xed)f(to)i(the)g(list.)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 Fs(${!)p Fj(prefix)11 b Fs(*})150 408 y(${!)p Fj(prefix)g +Fs(@})630 518 y Ft(Expands)24 b(to)h(the)g(names)g(of)g(v)-5 +b(ariables)26 b(whose)f(names)f(b)s(egin)h(with)f Fq(pre\014x)p +Ft(,)i(separated)f(b)m(y)630 628 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 +737 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 +847 y(w)m(ord.)150 1000 y Fs(${!)p Fj(name)11 b Fs([@]})150 +1110 y(${!)p Fj(name)g Fs([*]})630 1219 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 4741 y(in)c Fq(name)p Ft(.)39 b(If)24 b +(assigned)630 1329 y(in)c Fq(name)p Ft(.)39 b(If)24 b Fq(name)30 b Ft(is)24 b(not)h(an)f(arra)m(y)-8 b(,)27 b(expands)c(to)j(0)f(if)f Fq(name)30 b Ft(is)24 b(set)h(and)f(n)m(ull)g -(otherwise.)630 4851 y(When)39 b(`)p Fs(@)p Ft(')h(is)f(used)g(and)f +(otherwise.)630 1439 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 4961 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150 -5121 y Fs(${#)p Fj(parameter)11 b Fs(})630 5230 y Ft(The)40 +(k)m(ey)630 1548 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150 +1702 y Fs(${#)p Fj(parameter)11 b Fs(})630 1811 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 +1921 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: 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)630 299 -y(parameters.)45 b(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 580 y Fs(${)p Fj(parameter)11 -b Fs(#)p Fj(word)g Fs(})150 690 y(${)p Fj(parameter)g -Fs(##)p Fj(word)g Fs(})630 800 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 909 y(Section)k(3.5.8)h([Filename)g -(Expansion],)g(page)f(23\).)56 b(If)35 b(the)h(pattern)f(matc)m(hes)i -(the)e(b)s(e-)630 1019 y(ginning)28 b(of)g(the)h(expanded)e(v)-5 -b(alue)29 b(of)f Fq(parameter)p Ft(,)h(then)f(the)g(result)g(of)h(the)f -(expansion)g(is)630 1128 y(the)36 b(expanded)f(v)-5 b(alue)36 +(b)s(er)f(of)h(p)s(ositional)630 2030 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 2140 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 2293 y +Fs(${)p Fj(parameter)11 b Fs(#)p Fj(word)g Fs(})150 2403 +y(${)p Fj(parameter)g Fs(##)p Fj(word)g Fs(})630 2513 +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 +2622 y(Section)k(3.5.8)h([Filename)g(Expansion],)g(page)f(23\).)56 +b(If)35 b(the)h(pattern)f(matc)m(hes)i(the)e(b)s(e-)630 +2732 y(ginning)28 b(of)g(the)h(expanded)e(v)-5 b(alue)29 +b(of)f Fq(parameter)p Ft(,)h(then)f(the)g(result)g(of)h(the)f +(expansion)g(is)630 2841 y(the)36 b(expanded)f(v)-5 b(alue)36 b(of)g Fq(parameter)43 b Ft(with)35 b(the)h(shortest)g(matc)m(hing)h -(pattern)f(\(the)g(`)p Fs(#)p Ft(')630 1238 y(case\))26 +(pattern)f(\(the)g(`)p Fs(#)p Ft(')630 2951 y(case\))26 b(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 1347 y(or)j(`)p Fs(*)p +b Ft(is)25 b(`)p Fs(@)p Ft(')630 3061 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 -1457 y(turn,)i(and)g(the)h(expansion)g(is)g(the)g(resultan)m(t)g(list.) +3170 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 1567 y(subscripted)39 b(with)g(`)p Fs(@)p +b(ariable)630 3280 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 -1676 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 1848 +3389 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 3543 y Fs(${)p Fj(parameter)11 b Fs(\045)p Fj(word)g Fs(})150 -1958 y(${)p Fj(parameter)g Fs(\045\045)p Fj(word)g Fs(})630 -2067 y Ft(The)35 b Fq(w)m(ord)k Ft(is)c(expanded)g(to)h(pro)s(duce)e(a) +3652 y(${)p Fj(parameter)g Fs(\045\045)p Fj(word)g Fs(})630 +3762 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 2177 y(the)43 b(pattern)g(matc)m(hes)h(a)g(trailing)g(p)s +b(If)630 3871 y(the)43 b(pattern)g(matc)m(hes)h(a)g(trailing)g(p)s (ortion)e(of)h(the)g(expanded)g(v)-5 b(alue)43 b(of)g -Fq(parameter)p Ft(,)630 2286 y(then)c(the)g(result)g(of)h(the)f +Fq(parameter)p Ft(,)630 3981 y(then)c(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 2396 y(matc)m(hing)31 +b Ft(with)39 b(the)h(shortest)630 4091 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 -2506 y(deleted.)49 b(If)32 b Fq(parameter)40 b Ft(is)33 +4200 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 2615 y(eac)m(h)38 +b(al)34 b(op)s(eration)g(is)f(applied)f(to)630 4310 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 2725 y Fq(parameter)38 +(the)f(resultan)m(t)h(list.)61 b(If)630 4419 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 2834 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m +b(al)630 4529 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 2944 y(the)h(resultan)m(t)g(list.)150 3116 y +(is)630 4639 y(the)h(resultan)m(t)g(list.)150 4792 y Fs(${)p Fj(parameter)11 b Fs(/)p Fj(pattern)g Fs(/)p -Fj(s)o(tri)o(ng)f Fs(})630 3225 y Ft(The)37 b Fq(pattern)g +Fj(s)o(tri)o(ng)f Fs(})630 4902 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 3335 y Fq(P)m(arameter)46 +(\014lename)i(expansion.)630 5011 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 -3445 y(replaced)34 b(with)e Fq(string)p Ft(.)49 b(If)33 +5121 y(replaced)34 b(with)e Fq(string)p Ft(.)49 b(If)33 b Fq(pattern)g Ft(b)s(egins)g(with)f(`)p Fs(/)p Ft(',)j(all)f(matc)m -(hes)g(of)f Fq(pattern)g Ft(are)h(re-)630 3554 y(placed)28 +(hes)g(of)f Fq(pattern)g Ft(are)h(re-)630 5230 y(placed)28 b(with)f Fq(string)p Ft(.)40 b(Normally)28 b(only)f(the)h(\014rst)e (matc)m(h)j(is)e(replaced.)40 b(If)27 b Fq(pattern)g -Ft(b)s(egins)630 3664 y(with)34 b(`)p Fs(#)p Ft(',)h(it)g(m)m(ust)f +Ft(b)s(egins)630 5340 y(with)34 b(`)p Fs(#)p Ft(',)h(it)g(m)m(ust)f (matc)m(h)h(at)f(the)h(b)s(eginning)e(of)h(the)g(expanded)f(v)-5 -b(alue)35 b(of)f Fq(parameter)p Ft(.)630 3773 y(If)g -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 3883 y Fq(parameter)p Ft(.)41 b(If)29 -b Fq(string)37 b Ft(is)29 b(n)m(ull,)h(matc)m(hes)h(of)e -Fq(pattern)h Ft(are)g(deleted)g(and)f(the)g Fs(/)g Ft(follo)m(wing)630 -3993 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 -4102 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 -4212 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 4321 -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 -4431 y(expansion)g(is)h(the)f(resultan)m(t)h(list.)150 -4680 y Fk(3.5.4)63 b(Command)41 b(Substitution)275 4936 -y Ft(Command)29 b(substitution)i(allo)m(ws)h(the)f(output)g(of)g(a)g -(command)g(to)g(replace)h(the)f(command)g(itself.)150 -5046 y(Command)e(substitution)h(o)s(ccurs)h(when)e(a)i(command)f(is)g -(enclosed)h(as)g(follo)m(ws:)390 5193 y Fs($\()p Fj(command)11 -b Fs(\))150 5340 y Ft(or)p eop end +b(alue)35 b(of)f Fq(parameter)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)390 299 y Fs(`)p Fj(command)11 -b Fs(`)150 450 y Ft(Bash)45 b(p)s(erforms)f(the)h(expansion)f(b)m(y)h +b(Reference)g(Man)m(ual)630 299 y(If)j 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 408 y +Fq(parameter)p Ft(.)41 b(If)29 b Fq(string)37 b Ft(is)29 +b(n)m(ull,)h(matc)m(hes)h(of)e Fq(pattern)h Ft(are)g(deleted)g(and)f +(the)g Fs(/)g Ft(follo)m(wing)630 518 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 628 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 737 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 847 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 956 y(expansion)g(is)h(the)f(resultan)m(t)h(list.)150 +1179 y Fk(3.5.4)63 b(Command)41 b(Substitution)275 1423 +y Ft(Command)29 b(substitution)i(allo)m(ws)h(the)f(output)g(of)g(a)g +(command)g(to)g(replace)h(the)f(command)g(itself.)150 +1532 y(Command)e(substitution)h(o)s(ccurs)h(when)e(a)i(command)f(is)g +(enclosed)h(as)g(follo)m(ws:)390 1666 y Fs($\()p Fj(command)11 +b Fs(\))150 1801 y Ft(or)390 1935 y Fs(`)p Fj(command)g +Fs(`)150 2069 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 -560 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 -669 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 779 y(command)21 b(substitution)g Fs($\(cat)29 +2178 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 +2288 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 2397 y(command)21 b(substitution)g Fs($\(cat)29 b Fj(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 -Fj(file)11 b Fs(\))p Ft(.)275 930 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 1039 y(meaning)k(except)h(when)e(follo)m +Fj(file)11 b Fs(\))p Ft(.)275 2531 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 2641 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 1149 y(bac)m(kslash)j(terminates)g(the)f(command)g +(b)m(y)g(a)150 2751 y(bac)m(kslash)j(terminates)g(the)f(command)g (substitution.)69 b(When)40 b(using)g(the)g Fs($\()p -Fj(command)11 b Fs(\))37 b Ft(form,)42 b(all)150 1259 +Fj(command)11 b Fs(\))37 b Ft(form,)42 b(all)150 2860 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 1410 y(Command)22 b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39 +b(.)275 2994 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 1519 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m -(kslashes.)275 1670 y(If)e(the)i(substitution)e(app)s(ears)h(within)g +(escap)s(e)150 3104 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m +(kslashes.)275 3238 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 1780 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150 -2037 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)275 2298 +150 3347 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150 +3570 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)275 3814 y Ft(Arithmetic)33 b(expansion)f(allo)m(ws)i(the)e(ev)-5 b(aluation)34 b(of)f(an)f(arithmetic)i(expression)e(and)g(the)g -(substi-)150 2408 y(tution)f(of)f(the)h(result.)40 b(The)30 -b(format)h(for)f(arithmetic)i(expansion)e(is:)390 2559 -y Fs($\(\()47 b Fj(expression)55 b Fs(\)\))275 2710 y +(substi-)150 3923 y(tution)f(of)f(the)h(result.)40 b(The)30 +b(format)h(for)f(arithmetic)i(expansion)e(is:)390 4058 +y Fs($\(\()47 b Fj(expression)55 b Fs(\)\))275 4192 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 -2819 y(the)27 b(paren)m(theses)g(is)g(not)g(treated)h(sp)s(ecially)-8 +4301 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 2929 y(pansion,)h(command)f(substitution,)h(and)f +(parameter)h(ex-)150 4411 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 3080 y(The)34 b(ev)-5 b(aluation)37 +(b)s(e)f(nested.)275 4545 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 3190 y(Arithmetic],)32 +(w)g(\(see)g(Section)g(6.5)h([Shell)150 4654 y(Arithmetic],)32 b(page)f(76\).)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 -3299 y(to)f(the)g(standard)e(error)h(and)g(no)g(substitution)g(o)s -(ccurs.)150 3557 y Fk(3.5.6)63 b(Pro)s(cess)42 b(Substitution)275 -3817 y Ft(Pro)s(cess)33 b(substitution)h(is)g(supp)s(orted)e(on)h +4764 y(to)f(the)g(standard)e(error)h(and)g(no)g(substitution)g(o)s +(ccurs.)150 4987 y Fk(3.5.6)63 b(Pro)s(cess)42 b(Substitution)275 +5230 y Ft(Pro)s(cess)33 b(substitution)h(is)g(supp)s(orted)e(on)h (systems)h(that)h(supp)s(ort)d(named)h(pip)s(es)g(\()p -Fl(fif)n(o)p Ft(s\))h(or)g(the)150 3927 y(`)p Fs(/dev/fd)p +Fl(fif)n(o)p Ft(s\))h(or)g(the)150 5340 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)390 4078 y Fs(<\()p -Fj(list)11 b Fs(\))150 4229 y Ft(or)390 4380 y Fs(>\()p -Fj(list)g Fs(\))150 4531 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 4641 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 4751 y(expansion.)40 b(If)28 b(the)h -Fs(>\()p Fj(list)11 b Fs(\))26 b Ft(form)i(is)h(used,)f(writing)h(to)g -(the)g(\014le)f(will)h(pro)m(vide)g(input)f(for)g Fq(list)p -Ft(.)41 b(If)28 b(the)150 4860 y Fs(<\()p Fj(list)11 +b(It)30 b(tak)m(es)i(the)f(form)f(of)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)390 299 +y Fs(<\()p Fj(list)11 b Fs(\))150 431 y Ft(or)390 563 +y Fs(>\()p Fj(list)g Fs(\))150 695 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 804 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 914 y(expansion.)40 b(If)28 +b(the)h Fs(>\()p Fj(list)11 b Fs(\))26 b Ft(form)i(is)h(used,)f +(writing)h(to)g(the)g(\014le)f(will)h(pro)m(vide)g(input)f(for)g +Fq(list)p Ft(.)41 b(If)28 b(the)150 1024 y Fs(<\()p Fj(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 4970 y Fq(list)p Ft(.)41 b(Note)31 b(that)f(no)g(space)g(ma)m(y)g +150 1133 y Fq(list)p Ft(.)41 b(Note)31 b(that)f(no)g(space)g(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)h(left)g(paren)m(thesis,)h(otherwise)150 -5079 y(the)g(construct)f(w)m(ould)g(b)s(e)g(in)m(terpreted)h(as)f(a)h -(redirection.)275 5230 y(When)36 b(a)m(v)-5 b(ailable,)40 +1243 y(the)g(construct)f(w)m(ould)g(b)s(e)g(in)m(terpreted)h(as)f(a)h +(redirection.)275 1375 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 5340 y(v)-5 b(ariable)31 +(with)g(parameter)g(and)150 1484 y(v)-5 b(ariable)31 b(expansion,)g(command)f(substitution,)g(and)g(arithmetic)i(expansion.) -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 Fk(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)275 544 y -Ft(The)35 b(shell)i(scans)f(the)g(results)g(of)g(parameter)h +150 1701 y Fk(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)275 +1943 y Ft(The)35 b(shell)i(scans)f(the)g(results)g(of)g(parameter)h (expansion,)h(command)d(substitution,)j(and)e(arith-)150 -654 y(metic)31 b(expansion)g(that)g(did)e(not)i(o)s(ccur)f(within)g -(double)g(quotes)h(for)f(w)m(ord)g(splitting.)275 790 +2052 y(metic)31 b(expansion)g(that)g(did)e(not)i(o)s(ccur)f(within)g +(double)g(quotes)h(for)f(w)m(ord)g(splitting.)275 2184 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 900 y(other)40 b(expansions)f(in)m(to)i(w)m(ords)e(on)h +(of)i(the)150 2294 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 1009 y Fs +(its)h(v)-5 b(alue)40 b(is)g(exactly)150 2403 y Fs ()p Ft(,)26 b(the)32 b(default,)g(then)f (sequences)h(of)62 b Fs()p Ft(,)30 b Fs()p -Ft(,)h(and)f Fs()150 1119 y Ft(at)39 b(the)f(b)s(eginning)g +Ft(,)h(and)f Fs()150 2513 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 1228 y(sequence)31 +(are)g(ignored,)j(and)d(an)m(y)150 2623 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 1338 y(a)g(v)-5 b(alue)30 b(other)g(than)g(the)g +b Fs(IFS)g Ft(has)150 2732 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 1448 y Ft(are)36 b(ignored)g(at)g(the)g +Fs(space)e Ft(and)g Fs(tab)150 2842 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 1557 y(in)f(the)g(v)-5 +g(whitespace)h(c)m(haracter)g(is)150 2951 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 1667 y Ft(whitespace,)27 +Ft(that)i(is)f(not)g Fs(IFS)150 3061 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 -1776 y(of)35 b Fs(IFS)f Ft(whitespace)h(c)m(haracters)i(is)d(also)i +3171 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 1886 -y(w)m(ord)30 b(splitting)h(o)s(ccurs.)275 2022 y(Explicit)44 +b(alue)35 b(of)g Fs(IFS)f Ft(is)h(n)m(ull,)h(no)150 3280 +y(w)m(ord)30 b(splitting)h(o)s(ccurs.)275 3412 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 2132 y(resulting)24 b(from)f(the)g(expansion)g(of)h +(argumen)m(ts,)150 3522 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 -2241 y(with)30 b(no)g(v)-5 b(alue)31 b(is)g(expanded)e(within)h(double) +3631 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 2377 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 2604 y Fk(3.5.8)63 -b(Filename)41 b(Expansion)275 2850 y Ft(After)h(w)m(ord)g(splitting,)k +275 3763 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 3980 y Fk(3.5.8)63 +b(Filename)41 b(Expansion)275 4222 y Ft(After)h(w)m(ord)g(splitting,)k (unless)c(the)g(`)p Fs(-f)p Ft(')g(option)h(has)f(b)s(een)g(set)g -(\(see)i(Section)f(4.3.1)h([The)e(Set)150 2959 y(Builtin],)48 -b(page)c(49\),)k(Bash)43 b(scans)h(eac)m(h)g(w)m(ord)f(for)g(the)h(c)m +(\(see)i(Section)f(4.3.1)h([The)e(Set)150 4331 y(Builtin],)48 +b(page)c(50\),)k(Bash)43 b(scans)h(eac)m(h)g(w)m(ord)f(for)g(the)h(c)m (haracters)h(`)p Fs(*)p Ft(',)i(`)p Fs(?)p Ft(',)g(and)42 -b(`)p Fs([)p Ft('.)80 b(If)43 b(one)h(of)150 3069 y(these)d(c)m +b(`)p Fs([)p Ft('.)80 b(If)43 b(one)h(of)150 4441 y(these)d(c)m (haracters)g(app)s(ears,)i(then)d(the)g(w)m(ord)g(is)g(regarded)g(as)h (a)g Fq(pattern)p Ft(,)i(and)c(replaced)i(with)f(an)150 -3179 y(alphab)s(etically)h(sorted)f(list)g(of)g(\014le)g(names)g(matc)m +4550 y(alphab)s(etically)h(sorted)f(list)g(of)g(\014le)g(names)g(matc)m (hing)h(the)f(pattern.)68 b(If)40 b(no)f(matc)m(hing)i(\014le)f(names) -150 3288 y(are)e(found,)g(and)f(the)h(shell)f(option)h +150 4660 y(are)e(found,)g(and)f(the)h(shell)f(option)h Fs(nullglob)e Ft(is)h(disabled,)i(the)f(w)m(ord)f(is)h(left)g(unc)m -(hanged.)62 b(If)37 b(the)150 3398 y Fs(nullglob)32 b +(hanged.)62 b(If)37 b(the)150 4770 y Fs(nullglob)32 b Ft(option)i(is)g(set,)h(and)f(no)f(matc)m(hes)i(are)g(found,)e(the)h(w) m(ord)g(is)g(remo)m(v)m(ed.)52 b(If)33 b(the)h Fs(failglob)150 -3507 y Ft(shell)27 b(option)g(is)g(set,)h(and)e(no)g(matc)m(hes)i(are)f +4879 y Ft(shell)27 b(option)g(is)g(set,)h(and)e(no)g(matc)m(hes)i(are)f (found,)f(an)h(error)f(message)i(is)e(prin)m(ted)g(and)g(the)h(command) -150 3617 y(is)h(not)h(executed.)41 b(If)28 b(the)g(shell)h(option)g +150 4989 y(is)h(not)h(executed.)41 b(If)28 b(the)g(shell)h(option)g Fs(nocaseglob)c Ft(is)k(enabled,)g(the)f(matc)m(h)i(is)e(p)s(erformed)f -(without)150 3727 y(regard)j(to)h(the)g(case)g(of)g(alphab)s(etic)g(c)m -(haracters.)275 3863 y(When)21 b(a)i(pattern)f(is)g(used)g(for)f +(without)150 5098 y(regard)j(to)h(the)g(case)g(of)g(alphab)s(etic)g(c)m +(haracters.)275 5230 y(When)21 b(a)i(pattern)f(is)g(used)g(for)f (\014lename)i(generation,)i(the)d(c)m(haracter)i(`)p Fs(.)p Ft(')e(at)h(the)f(start)h(of)f(a)h(\014lename)150 -3972 y(or)g(immediately)i(follo)m(wing)g(a)f(slash)f(m)m(ust)h(b)s(e)f +5340 y(or)g(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 4082 y Ft(is)31 b(set.)45 b(When)31 b(matc)m(hing)h(a)g -(\014le)f(name,)h(the)g(slash)f(c)m(haracter)i(m)m(ust)e(alw)m(a)m(ys)i -(b)s(e)e(matc)m(hed)h(explicitly)-8 b(.)150 4191 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(.)275 4327 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(53,)g(for)f(a)g(descrip-)150 4437 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 4573 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 -4682 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 4792 y(in)33 b Fs(GLOBIGNORE)d Ft(is)j(remo)m(v)m(ed)h +Fs(dotglob)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)150 299 y(is)g(set.)45 b(When)31 +b(matc)m(hing)h(a)g(\014le)f(name,)h(the)g(slash)f(c)m(haracter)i(m)m +(ust)e(alw)m(a)m(ys)i(b)s(e)e(matc)m(hed)h(explicitly)-8 +b(.)150 408 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(.)275 556 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(54,)g(for)f +(a)g(descrip-)150 665 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 813 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 922 +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 1032 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 -4902 y(ignored)g(when)e Fs(GLOBIGNORE)f Ft(is)j(set)g(and)f(not)h(n)m +1141 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 5011 y(v)-5 b(alue)34 b(has)f(the)h +Ft(to)j(a)g(non-n)m(ull)150 1251 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 5121 y(with)43 +e(all)g(other)g(\014lenames)g(b)s(eginning)150 1361 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 5230 y(`)p Fs(.)p Ft(',)c(mak)m(e)g(`)p +(eginning)f(with)g(a)150 1470 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 -5340 y Fs(GLOBIGNORE)28 b Ft(is)i(unset.)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)150 299 y Fk(3.5.8.1)63 b(P)m(attern)40 -b(Matc)m(hing)275 547 y Ft(An)m(y)33 b(c)m(haracter)i(that)f(app)s -(ears)f(in)g(a)h(pattern,)g(other)g(than)f(the)g(sp)s(ecial)h(pattern)g -(c)m(haracters)h(de-)150 657 y(scrib)s(ed)30 b(b)s(elo)m(w,)h(matc)m -(hes)h(itself.)43 b(The)31 b Fl(nul)f Ft(c)m(haracter)i(ma)m(y)f(not)h -(o)s(ccur)e(in)h(a)g(pattern.)42 b(A)31 b(bac)m(kslash)150 -766 y(escap)s(es)36 b(the)f(follo)m(wing)i(c)m(haracter;)j(the)c -(escaping)g(bac)m(kslash)g(is)f(discarded)g(when)g(matc)m(hing.)56 -b(The)150 876 y(sp)s(ecial)31 b(pattern)f(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 1014 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 1180 y Fs(*)432 -b Ft(Matc)m(hes)32 b(an)m(y)f(string,)f(including)g(the)h(n)m(ull)f -(string.)150 1343 y Fs(?)432 b Ft(Matc)m(hes)32 b(an)m(y)f(single)g(c)m -(haracter.)150 1506 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 -1616 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 1726 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 1835 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 -1945 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 2054 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 -2164 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 2273 y(determined)e(b)m(y)g(the)g(curren)m(t)f -(lo)s(cale)j(and)e(the)g(v)-5 b(alue)23 b(of)g(the)h -Fs(LC_COLLATE)c Ft(shell)j(v)-5 b(ariable,)630 2383 y(if)30 -b(set.)630 2520 y(F)-8 b(or)34 b(example,)g(in)f(the)g(default)g(C)f +1580 y Fs(GLOBIGNORE)28 b Ft(is)i(unset.)150 1830 y Fk(3.5.8.1)63 +b(P)m(attern)40 b(Matc)m(hing)275 2086 y Ft(An)m(y)33 +b(c)m(haracter)i(that)f(app)s(ears)f(in)g(a)h(pattern,)g(other)g(than)f +(the)g(sp)s(ecial)h(pattern)g(c)m(haracters)h(de-)150 +2196 y(scrib)s(ed)30 b(b)s(elo)m(w,)h(matc)m(hes)h(itself.)43 +b(The)31 b Fl(nul)f Ft(c)m(haracter)i(ma)m(y)f(not)h(o)s(ccur)e(in)h(a) +g(pattern.)42 b(A)31 b(bac)m(kslash)150 2306 y(escap)s(es)36 +b(the)f(follo)m(wing)i(c)m(haracter;)j(the)c(escaping)g(bac)m(kslash)g +(is)f(discarded)g(when)g(matc)m(hing.)56 b(The)150 2415 +y(sp)s(ecial)31 b(pattern)f(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 2563 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 2741 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 +2851 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 2960 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 +3070 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 3180 y(and)k(sub)s(directories.)150 +3352 y Fs(?)432 b Ft(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.) +150 3524 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 3634 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 3743 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 3853 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 3962 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 4072 +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 4181 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 4291 y(determined)e(b)m(y)g(the)g(curren) +m(t)f(lo)s(cale)j(and)e(the)g(v)-5 b(alue)23 b(of)g(the)h +Fs(LC_COLLATE)c Ft(shell)j(v)-5 b(ariable,)630 4401 y(if)30 +b(set.)630 4542 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 2629 +b(alen)m(t)34 b(to)g(`)p Fs([abcdxyz])p Ft('.)630 4651 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 2739 +(order,)76 b(and)67 b(in)g(these)h(lo)s(cales)630 4761 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 2848 y(to)34 b(`)p Fs([aBbCcDdxXyYz])p +(equiv)-5 b(alen)m(t)630 4870 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 2958 y(ranges)e(in)f(brac)m(k)m(et)i +(in)m(terpretation)h(of)630 4980 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 3067 y(the)e Fs(LC_COLLATE)c +(cale)i(b)m(y)f(setting)630 5089 y(the)e Fs(LC_COLLATE)c Ft(or)k Fs(LC_ALL)d Ft(en)m(vironmen)m(t)j(v)-5 b(ariable)31 -b(to)g(the)g(v)-5 b(alue)31 b(`)p Fs(C)p Ft('.)630 3204 +b(to)g(the)g(v)-5 b(alue)31 b(`)p Fs(C)p Ft('.)630 5230 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 -3314 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 -3450 y Fs(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g(digit)g(graph)g -(lower)870 3560 y(print)g(punct)g(space)f(upper)h(word)190 -b(xdigit)630 3696 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 3806 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('.)630 3942 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 4052 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 4161 -y(curren)m(t)g(lo)s(cale\))j(as)d(the)h(c)m(haracter)h -Fq(c)p Ft(.)630 4298 y(Within)22 b(`)p Fs([)p Ft(')f(and)g(`)p -Fs(])p Ft(',)j(the)d(syn)m(tax)h Fs([.)p Fq(sym)m(b)s(ol)t -Fs(.])e Ft(matc)m(hes)i(the)g(collating)i(sym)m(b)s(ol)d -Fq(sym)m(b)s(ol)p Ft(.)275 4463 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 4573 -y(matc)m(hing)37 b(op)s(erators)e(are)h(recognized.)58 +5340 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:)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)870 299 +y Fs(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g(digit)g(graph)g(lower) +870 408 y(print)g(punct)g(space)f(upper)h(word)190 b(xdigit)630 +540 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 649 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('.)630 +781 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 890 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 1000 y(curren)m(t)g(lo)s(cale\))j(as)d +(the)h(c)m(haracter)h Fq(c)p Ft(.)630 1131 y(Within)22 +b(`)p Fs([)p Ft(')f(and)g(`)p Fs(])p Ft(',)j(the)d(syn)m(tax)h +Fs([.)p Fq(sym)m(b)s(ol)t Fs(.])e Ft(matc)m(hes)i(the)g(collating)i +(sym)m(b)s(ol)d Fq(sym)m(b)s(ol)p Ft(.)275 1285 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 +1394 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 4682 y(one)d(or)f(more)h(patterns)f +Ft(is)d(a)g(list)g(of)150 1504 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 -4792 y(more)e(of)f(the)h(follo)m(wing)g(sub-patterns:)150 -4957 y Fs(?\()p Fj(pattern-list)11 b Fs(\))630 5067 y +1613 y(more)e(of)f(the)h(follo)m(wing)g(sub-patterns:)150 +1766 y Fs(?\()p Fj(pattern-list)11 b Fs(\))630 1876 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 5230 y Fs(*\()p Fj(pattern-list)11 -b Fs(\))630 5340 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.)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)150 299 -y Fs(+\()p Fj(pattern-list)11 b Fs(\))630 408 y Ft(Matc)m(hes)32 +(en)g(patterns.)150 2029 y Fs(*\()p Fj(pattern-list)11 +b Fs(\))630 2139 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 2292 +y Fs(+\()p Fj(pattern-list)11 b Fs(\))630 2402 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 568 y Fs(@\()p Fj(pattern-list)11 b Fs(\))630 678 +150 2555 y Fs(@\()p Fj(pattern-list)11 b Fs(\))630 2664 y Ft(Matc)m(hes)32 b(one)f(of)f(the)h(giv)m(en)g(patterns.)150 -838 y Fs(!\()p Fj(pattern-list)11 b Fs(\))630 947 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 -1172 y Fk(3.5.9)63 b(Quote)41 b(Remo)m(v)-7 b(al)275 -1416 y Ft(After)32 b(the)h(preceding)f(expansions,)h(all)g(unquoted)f -(o)s(ccurrences)g(of)h(the)f(c)m(haracters)i(`)p Fs(\\)p -Ft(',)f(`)p Fs(')p Ft(',)h(and)150 1526 y(`)p Fs(")p -Ft(')d(that)g(did)e(not)i(result)f(from)g(one)h(of)f(the)h(ab)s(o)m(v)m -(e)g(expansions)f(are)h(remo)m(v)m(ed.)150 1784 y Fr(3.6)68 -b(Redirections)275 2029 y Ft(Before)33 b(a)h(command)e(is)h(executed,)i -(its)e(input)f(and)h(output)f(ma)m(y)i(b)s(e)e Fq(redirected)37 -b Ft(using)32 b(a)h(sp)s(ecial)150 2138 y(notation)g(in)m(terpreted)g -(b)m(y)f(the)g(shell.)46 b(Redirection)33 b(ma)m(y)g(also)g(b)s(e)f -(used)f(to)i(op)s(en)e(and)h(close)h(\014les)f(for)150 -2248 y(the)h(curren)m(t)g(shell)g(execution)h(en)m(vironmen)m(t.)49 -b(The)33 b(follo)m(wing)h(redirection)g(op)s(erators)f(ma)m(y)h -(precede)150 2357 y(or)29 b(app)s(ear)g(an)m(ywhere)g(within)g(a)h -(simple)f(command)g(or)h(ma)m(y)g(follo)m(w)g(a)g(command.)40 -b(Redirections)31 b(are)150 2467 y(pro)s(cessed)f(in)g(the)g(order)g -(they)h(app)s(ear,)f(from)g(left)h(to)g(righ)m(t.)275 -2602 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g +2817 y Fs(!\()p Fj(pattern-list)11 b Fs(\))630 2927 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 3142 y Fk(3.5.9)63 b(Quote)41 b(Remo)m(v)-7 +b(al)275 3383 y Ft(After)32 b(the)h(preceding)f(expansions,)h(all)g +(unquoted)f(o)s(ccurrences)g(of)h(the)f(c)m(haracters)i(`)p +Fs(\\)p Ft(',)f(`)p Fs(')p Ft(',)h(and)150 3492 y(`)p +Fs(")p Ft(')d(that)g(did)e(not)i(result)f(from)g(one)h(of)f(the)h(ab)s +(o)m(v)m(e)g(expansions)f(are)h(remo)m(v)m(ed.)150 3740 +y Fr(3.6)68 b(Redirections)275 3981 y Ft(Before)33 b(a)h(command)e(is)h +(executed,)i(its)e(input)f(and)h(output)f(ma)m(y)i(b)s(e)e +Fq(redirected)37 b Ft(using)32 b(a)h(sp)s(ecial)150 4091 +y(notation)g(in)m(terpreted)g(b)m(y)f(the)g(shell.)46 +b(Redirection)33 b(ma)m(y)g(also)g(b)s(e)f(used)f(to)i(op)s(en)e(and)h +(close)h(\014les)f(for)150 4201 y(the)h(curren)m(t)g(shell)g(execution) +h(en)m(vironmen)m(t.)49 b(The)33 b(follo)m(wing)h(redirection)g(op)s +(erators)f(ma)m(y)h(precede)150 4310 y(or)29 b(app)s(ear)g(an)m(ywhere) +g(within)g(a)h(simple)f(command)g(or)h(ma)m(y)g(follo)m(w)g(a)g +(command.)40 b(Redirections)31 b(are)150 4420 y(pro)s(cessed)f(in)g +(the)g(order)g(they)h(app)s(ear,)f(from)g(left)h(to)g(righ)m(t.)275 +4551 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 2711 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g +(c)m(har-)150 4661 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 2821 y(descriptor)33 +(standard)f(input)f(\(\014le)150 4770 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 2931 y(to)e(the)g(standard)e(output)h(\(\014le)h -(descriptor)f(1\).)275 3065 y(The)h(w)m(ord)h(follo)m(wing)i(the)f +g(refers)150 4880 y(to)e(the)g(standard)e(output)h(\(\014le)h +(descriptor)f(1\).)275 5011 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 3175 y(wise)21 b(noted,)i(is)e(sub)5 +(unless)e(other-)150 5121 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)150 3285 y(substitution,)31 b(arithmetic)h +e(expansion,)i(command)150 5230 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 3394 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 -3529 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 -3664 y Fs(ls)47 b(>)h Fj(dirlist)56 b Fs(2>&1)150 3799 -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 3908 y(\014le)h Fq(dirlist)p Ft(,)h(while)f(the)h(command)390 -4043 y Fs(ls)47 b(2>&1)g(>)g Fj(dirlist)150 4178 y Ft(directs)34 -b(only)g(the)f(standard)g(output)g(to)h(\014le)g Fq(dirlist)p -Ft(,)h(b)s(ecause)e(the)h(standard)f(error)g(w)m(as)h(duplicated)150 -4287 y(as)d(standard)e(output)h(b)s(efore)g(the)h(standard)e(output)h -(w)m(as)h(redirected)g(to)g Fq(dirlist)p Ft(.)275 4422 -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 -4532 y(in)k(the)h(follo)m(wing)g(table:)150 4692 y Fs(/dev/fd/)p -Fj(fd)630 4801 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 -4961 y Fs(/dev/stdin)630 5071 y Ft(File)i(descriptor)e(0)h(is)f -(duplicated.)150 5230 y Fs(/dev/stdout)630 5340 y Ft(File)i(descriptor) -e(1)h(is)f(duplicated.)p eop end +(and)f(w)m(ord)h(splitting.)150 5340 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.)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)150 299 y Fs(/dev/stderr)630 -408 y Ft(File)h(descriptor)e(2)h(is)f(duplicated.)150 -568 y Fs(/dev/tcp/)p Fj(host)11 b Fs(/)p Fj(port)630 -677 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 787 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 897 y(corresp)s(onding)29 -b(so)s(c)m(k)m(et.)150 1056 y Fs(/dev/udp/)p Fj(host)11 -b Fs(/)p Fj(port)630 1166 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5 +b(Reference)g(Man)m(ual)275 299 y(Note)g(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 436 y Fs(ls)47 b(>)h Fj(dirlist)56 +b Fs(2>&1)150 572 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 682 y(\014le)h Fq(dirlist)p +Ft(,)h(while)f(the)h(command)390 819 y Fs(ls)47 b(2>&1)g(>)g +Fj(dirlist)150 956 y Ft(directs)34 b(only)g(the)f(standard)g(output)g +(to)h(\014le)g Fq(dirlist)p Ft(,)h(b)s(ecause)e(the)h(standard)f(error) +g(w)m(as)h(duplicated)150 1065 y(as)d(standard)e(output)h(b)s(efore)g +(the)h(standard)e(output)h(w)m(as)h(redirected)g(to)g +Fq(dirlist)p Ft(.)275 1202 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 1311 y(in)k(the)h(follo)m(wing)g +(table:)150 1474 y Fs(/dev/fd/)p Fj(fd)630 1584 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 1745 y Fs(/dev/stdin)630 +1855 y Ft(File)i(descriptor)e(0)h(is)f(duplicated.)150 +2017 y Fs(/dev/stdout)630 2126 y Ft(File)i(descriptor)e(1)h(is)f +(duplicated.)150 2288 y Fs(/dev/stderr)630 2398 y Ft(File)i(descriptor) +e(2)h(is)f(duplicated.)150 2559 y Fs(/dev/tcp/)p Fj(host)11 +b Fs(/)p Fj(port)630 2669 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 1275 +Fq(p)s(ort)j Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 2778 +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 2888 y(corresp)s(onding)29 +b(so)s(c)m(k)m(et.)150 3050 y Fs(/dev/udp/)p Fj(host)11 +b Fs(/)p Fj(port)630 3159 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 3269 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 1385 y(corresp)s(onding)29 -b(so)s(c)m(k)m(et.)275 1544 y(A)h(failure)h(to)g(op)s(en)e(or)i(create) +(en)e(a)h(UDP)g(connection)g(to)h(the)630 3378 y(corresp)s(onding)29 +b(so)s(c)m(k)m(et.)275 3541 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 -1679 y(Redirections)f(using)e(\014le)i(descriptors)f(greater)h(than)f +3678 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 -1788 y(con\015ict)i(with)f(\014le)h(descriptors)f(the)g(shell)h(uses)f -(in)m(ternally)-8 b(.)150 2012 y Fk(3.6.1)63 b(Redirecting)40 -b(Input)275 2257 y Ft(Redirection)35 b(of)f(input)g(causes)g(the)h +3788 y(con\015ict)i(with)f(\014le)h(descriptors)f(the)g(shell)h(uses)f +(in)m(ternally)-8 b(.)150 4016 y Fk(3.6.1)63 b(Redirecting)40 +b(Input)275 4263 y Ft(Redirection)35 b(of)f(input)g(causes)g(the)h (\014le)f(whose)g(name)h(results)f(from)g(the)g(expansion)g(of)h -Fq(w)m(ord)i Ft(to)150 2366 y(b)s(e)d(op)s(ened)g(for)g(reading)g(on)h +Fq(w)m(ord)i Ft(to)150 4372 y(b)s(e)d(op)s(ened)g(for)g(reading)g(on)h (\014le)f(descriptor)h Fs(n)p Ft(,)g(or)g(the)f(standard)g(input)g (\(\014le)h(descriptor)f(0\))h(if)g Fs(n)f Ft(is)150 -2476 y(not)d(sp)s(eci\014ed.)275 2610 y(The)e(general)j(format)e(for)h -(redirecting)g(input)e(is:)390 2745 y Fs([)p Fj(n)11 -b Fs(]<)p Fj(word)150 2969 y Fk(3.6.2)63 b(Redirecting)40 -b(Output)275 3213 y Ft(Redirection)31 b(of)f(output)g(causes)h(the)g +4482 y(not)d(sp)s(eci\014ed.)275 4619 y(The)e(general)j(format)e(for)h +(redirecting)g(input)e(is:)390 4755 y Fs([)p Fj(n)11 +b Fs(]<)p Fj(word)150 4984 y Fk(3.6.2)63 b(Redirecting)40 +b(Output)275 5230 y Ft(Redirection)31 b(of)f(output)g(causes)h(the)g (\014le)f(whose)g(name)h(results)f(from)f(the)i(expansion)f(of)h -Fq(w)m(ord)i Ft(to)150 3323 y(b)s(e)e(op)s(ened)g(for)g(writing)h(on)f +Fq(w)m(ord)i Ft(to)150 5340 y(b)s(e)e(op)s(ened)g(for)g(writing)h(on)f (\014le)h(descriptor)f Fq(n)p Ft(,)h(or)f(the)h(standard)f(output)g -(\(\014le)h(descriptor)f(1\))h(if)g Fq(n)f Ft(is)150 -3432 y(not)j(sp)s(eci\014ed.)50 b(If)33 b(the)h(\014le)g(do)s(es)f(not) -h(exist)g(it)g(is)g(created;)j(if)c(it)h(do)s(es)g(exist)g(it)g(is)g -(truncated)g(to)g(zero)150 3542 y(size.)275 3676 y(The)29 +(\(\014le)h(descriptor)f(1\))h(if)g Fq(n)f Ft(is)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(not)34 b(sp)s(eci\014ed.)50 b(If)33 b(the)h(\014le)g(do)s(es)f(not)h +(exist)g(it)g(is)g(created;)j(if)c(it)h(do)s(es)g(exist)g(it)g(is)g +(truncated)g(to)g(zero)150 408 y(size.)275 569 y(The)29 b(general)j(format)e(for)h(redirecting)g(output)f(is:)390 -3811 y Fs([)p Fj(n)11 b Fs(]>[|])p Fj(word)275 3945 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 4055 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 -4164 y Ft(exists)f(and)f(is)g(a)h(regular)g(\014le.)41 +730 y Fs([)p Fj(n)11 b Fs(]>[|])p Fj(word)275 891 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 1001 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 1110 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 -4274 y(`)p Fs(>)p Ft(')36 b(and)f(the)g Fs(noclobber)e +1220 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 4384 y(named)30 b(b)m(y)g -Fq(w)m(ord)k Ft(exists.)150 4608 y Fk(3.6.3)63 b(App)s(ending)42 -b(Redirected)e(Output)275 4852 y Ft(Redirection)29 b(of)g(output)f(in)g +(ev)m(en)h(if)e(the)h(\014le)150 1329 y(named)30 b(b)m(y)g +Fq(w)m(ord)k Ft(exists.)150 1606 y Fk(3.6.3)63 b(App)s(ending)42 +b(Redirected)e(Output)275 1877 y Ft(Redirection)29 b(of)g(output)f(in)g (this)h(fashion)f(causes)h(the)g(\014le)g(whose)f(name)h(results)f -(from)g(the)h(expan-)150 4961 y(sion)34 b(of)f Fq(w)m(ord)k +(from)g(the)h(expan-)150 1986 y(sion)34 b(of)f Fq(w)m(ord)k Ft(to)e(b)s(e)e(op)s(ened)g(for)g(app)s(ending)f(on)i(\014le)f (descriptor)h Fq(n)p Ft(,)g(or)g(the)f(standard)g(output)g(\(\014le)150 -5071 y(descriptor)d(1\))h(if)g Fq(n)f Ft(is)g(not)h(sp)s(eci\014ed.)40 +2096 y(descriptor)d(1\))h(if)g Fq(n)f Ft(is)g(not)h(sp)s(eci\014ed.)40 b(If)29 b(the)i(\014le)f(do)s(es)h(not)f(exist)h(it)g(is)g(created.)275 -5205 y(The)e(general)j(format)e(for)h(app)s(ending)e(output)h(is:)390 -5340 y Fs([)p Fj(n)11 b Fs(]>>)p Fj(word)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 Fk(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g(Standard)g -(Error)275 542 y Ft(Bash)31 b(allo)m(ws)h(b)s(oth)e(the)h(standard)g -(output)f(\(\014le)i(descriptor)e(1\))i(and)e(the)i(standard)e(error)g -(output)150 652 y(\(\014le)d(descriptor)g(2\))h(to)f(b)s(e)g -(redirected)g(to)h(the)f(\014le)g(whose)f(name)h(is)g(the)g(expansion)g -(of)g Fq(w)m(ord)j Ft(with)d(this)150 761 y(construct.)275 -895 y(There)i(are)i(t)m(w)m(o)h(formats)e(for)h(redirecting)g(standard) -e(output)h(and)g(standard)f(error:)390 1028 y Fs(&>)p -Fj(word)150 1162 y Ft(and)390 1296 y Fs(>&)p Fj(word)150 -1429 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 1563 y Fs(>)p Fj(word)57 b Fs(2>&1)150 -1784 y Fk(3.6.5)63 b(Here)41 b(Do)s(cumen)m(ts)275 2027 -y Ft(This)28 b(t)m(yp)s(e)h(of)h(redirection)g(instructs)f(the)g(shell) -h(to)g(read)f(input)f(from)h(the)g(curren)m(t)h(source)f(un)m(til)h(a) -150 2137 y(line)h(con)m(taining)g(only)g Fq(w)m(ord)i -Ft(\(with)d(no)h(trailing)g(blanks\))f(is)g(seen.)41 +2257 y(The)e(general)j(format)e(for)h(app)s(ending)e(output)h(is:)390 +2418 y Fs([)p Fj(n)11 b Fs(]>>)p Fj(word)150 2694 y Fk(3.6.4)63 +b(Redirecting)40 b(Standard)h(Output)g(and)g(Standard)g(Error)275 +2965 y Ft(This)23 b(construct)i(allo)m(ws)h(b)s(oth)e(the)h(standard)f +(output)g(\(\014le)h(descriptor)f(1\))i(and)e(the)h(standard)e(error) +150 3075 y(output)30 b(\(\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)p Ft(.)275 3235 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 +3396 y Fs(&>)p Fj(word)150 3557 y Ft(and)390 3718 y Fs(>&)p +Fj(word)150 3879 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 4040 y Fs(>)p Fj(word)57 b Fs(2>&1)150 +4317 y Fk(3.6.5)63 b(App)s(ending)42 b(Standard)f(Output)g(and)g +(Standard)g(Error)275 4587 y Ft(This)23 b(construct)i(allo)m(ws)h(b)s +(oth)e(the)h(standard)f(output)g(\(\014le)h(descriptor)f(1\))i(and)e +(the)h(standard)e(error)150 4697 y(output)30 b(\(\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)p Ft(.)275 4857 +y(The)f(format)i(for)f(app)s(ending)f(standard)h(output)g(and)f +(standard)h(error)g(is:)390 5018 y Fs(&>>)p Fj(word)150 +5179 y Ft(This)g(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32 +b(to)390 5340 y Fs(>>)p Fj(word)57 b Fs(2>&1)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 Fk(3.6.6)63 b(Here)41 +b(Do)s(cumen)m(ts)275 560 y Ft(This)28 b(t)m(yp)s(e)h(of)h(redirection) +g(instructs)f(the)g(shell)h(to)g(read)f(input)f(from)h(the)g(curren)m +(t)h(source)f(un)m(til)h(a)150 669 y(line)h(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 -2246 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 2380 y(The)e(format)i(of)g(here-do)s(cumen)m -(ts)f(is:)390 2514 y Fs(<<[)p Fp(\000)p Fs(])p Fj(word)772 -2623 y(here-document)390 2733 y(delimiter)275 2866 y +779 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 930 y(The)e(format)i(of)g(here-do)s(cumen)m(ts) +f(is:)390 1081 y Fs(<<[)p Fp(\000)p Fs(])p Fj(word)772 +1191 y(here-document)390 1300 y(delimiter)275 1451 y Ft(No)j(parameter)h(expansion,)g(command)f(substitution,)h(arithmetic)h -(expansion,)f(or)f(\014lename)g(ex-)150 2976 y(pansion)i(is)g(p)s +(expansion,)f(or)f(\014lename)g(ex-)150 1561 y(pansion)i(is)g(p)s (erformed)e(on)i Fq(w)m(ord)p Ft(.)55 b(If)34 b(an)m(y)i(c)m(haracters) g(in)f Fq(w)m(ord)j Ft(are)d(quoted,)i(the)e Fq(delimiter)43 -b Ft(is)35 b(the)150 3085 y(result)40 b(of)h(quote)g(remo)m(v)-5 +b Ft(is)35 b(the)150 1670 y(result)40 b(of)h(quote)g(remo)m(v)-5 b(al)42 b(on)e Fq(w)m(ord)p Ft(,)j(and)d(the)g(lines)h(in)f(the)h -(here-do)s(cumen)m(t)f(are)h(not)f(expanded.)150 3195 +(here-do)s(cumen)m(t)f(are)h(not)f(expanded.)150 1780 y(If)32 b Fq(w)m(ord)k Ft(is)d(unquoted,)f(all)i(lines)f(of)f(the)h (here-do)s(cumen)m(t)g(are)g(sub)5 b(jected)32 b(to)i(parameter)f -(expansion,)150 3305 y(command)25 b(substitution,)g(and)g(arithmetic)h +(expansion,)150 1890 y(command)25 b(substitution,)g(and)g(arithmetic)h (expansion.)39 b(In)24 b(the)h(latter)h(case,)h(the)e(c)m(haracter)i -(sequence)150 3414 y Fs(\\newline)h Ft(is)j(ignored,)f(and)g(`)p +(sequence)150 1999 y Fs(\\newline)h 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 3548 y(If)21 b(the)i(redirection)g(op)s(erator)g(is)f +Fs(`)p Ft('.)275 2150 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 3657 y(lines)33 b(and)f(the)h(line)h +e(stripp)s(ed)f(from)h(input)150 2260 y(lines)33 b(and)f(the)h(line)h (con)m(taining)g Fq(delimiter)p Ft(.)49 b(This)32 b(allo)m(ws)i (here-do)s(cumen)m(ts)f(within)f(shell)i(scripts)e(to)150 -3767 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)150 -3988 y Fk(3.6.6)63 b(Here)41 b(Strings)275 4232 y Ft(A)30 +2369 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)150 +2627 y Fk(3.6.7)63 b(Here)41 b(Strings)275 2888 y Ft(A)30 b(v)-5 b(arian)m(t)31 b(of)g(here)f(do)s(cumen)m(ts,)g(the)h(format)g -(is:)390 4365 y Fs(<<<)47 b Fj(word)275 4499 y Ft(The)29 +(is:)390 3039 y Fs(<<<)47 b Fj(word)275 3190 y Ft(The)29 b Fq(w)m(ord)34 b Ft(is)c(expanded)g(and)g(supplied)f(to)i(the)f -(command)h(on)f(its)h(standard)e(input.)150 4720 y Fk(3.6.7)63 -b(Duplicating)41 b(File)g(Descriptors)275 4963 y Ft(The)29 -b(redirection)i(op)s(erator)390 5097 y Fs([)p Fj(n)11 -b Fs(]<&)p Fj(word)150 5230 y Ft(is)35 b(used)e(to)j(duplicate)f(input) +(command)h(on)f(its)h(standard)e(input.)150 3447 y Fk(3.6.8)63 +b(Duplicating)41 b(File)g(Descriptors)275 3708 y Ft(The)29 +b(redirection)i(op)s(erator)390 3859 y Fs([)p Fj(n)11 +b Fs(]<&)p Fj(word)150 4010 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 5340 y(descriptor)e +(one)g(or)g(more)g(digits,)h(the)f(\014le)150 4120 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)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(do)e(not)h(sp)s(ecify)f(a)h(\014le)f +Fq(w)m(ord)150 4229 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 -408 y(to)31 b(`)p Fs(-)p Ft(',)g(\014le)g(descriptor)g +4339 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 -518 y(is)g(used.)275 653 y(The)f(op)s(erator)390 788 -y Fs([)p Fj(n)11 b Fs(]>&)p Fj(word)150 923 y Ft(is)40 +4448 y(is)g(used.)275 4599 y(The)f(op)s(erator)390 4751 +y Fs([)p Fj(n)11 b Fs(]>&)p Fj(word)150 4902 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 -1033 y(output)30 b(\(\014le)g(descriptor)g(1\))h(is)f(used.)39 +5011 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 -1142 y(for)38 b(output,)i(a)e(redirection)h(error)f(o)s(ccurs.)63 +5121 y(for)38 b(output,)i(a)e(redirection)h(error)f(o)s(ccurs.)63 b(As)38 b(a)h(sp)s(ecial)f(case,)k(if)c Fq(n)f Ft(is)h(omitted,)k(and) -37 b Fq(w)m(ord)k Ft(do)s(es)150 1252 y(not)28 b(expand)f(to)i(one)f +37 b Fq(w)m(ord)k Ft(do)s(es)150 5230 y(not)28 b(expand)f(to)i(one)f (or)f(more)h(digits,)i(the)e(standard)e(output)i(and)f(standard)g -(error)g(are)i(redirected)f(as)150 1361 y(describ)s(ed)h(previously)-8 -b(.)150 1587 y Fk(3.6.8)63 b(Mo)m(ving)41 b(File)h(Descriptors)275 -1831 y Ft(The)29 b(redirection)i(op)s(erator)390 1966 -y Fs([)p Fj(n)11 b Fs(]<&)p Fj(digit)p Fs(-)150 2101 -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 2211 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 2346 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s -(erator)390 2481 y Fs([)p Fj(n)11 b Fs(]>&)p Fj(digit)p -Fs(-)150 2616 y Ft(mo)m(v)m(es)29 b(the)g(\014le)f(descriptor)f +(error)g(are)i(redirected)f(as)150 5340 y(describ)s(ed)h(previously)-8 +b(.)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 Fk(3.6.9)63 b(Mo)m(ving)41 b(File)h(Descriptors)275 +542 y Ft(The)29 b(redirection)i(op)s(erator)390 675 y +Fs([)p Fj(n)11 b Fs(]<&)p Fj(digit)p Fs(-)150 808 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 918 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 1051 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s +(erator)390 1184 y Fs([)p Fj(n)11 b Fs(]>&)p Fj(digit)p +Fs(-)150 1317 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 -2725 y(if)i Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)150 -2951 y Fk(3.6.9)63 b(Op)s(ening)42 b(File)f(Descriptors)h(for)g -(Reading)f(and)g(W)-10 b(riting)275 3195 y Ft(The)29 -b(redirection)i(op)s(erator)390 3330 y Fs([)p Fj(n)11 -b Fs(]<>)p Fj(word)150 3465 y Ft(causes)39 b(the)g(\014le)g(whose)g +1427 y(if)i Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)150 +1647 y Fk(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g +(Reading)e(and)h(W)-10 b(riting)275 1890 y Ft(The)29 +b(redirection)i(op)s(erator)390 2023 y Fs([)p Fj(n)11 +b Fs(]<>)p Fj(word)150 2157 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 3575 y(writing)33 +(ened)f(for)g(b)s(oth)h(reading)g(and)150 2266 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 3684 y(exist,)e(it)g(is)g -(created.)150 3943 y Fr(3.7)68 b(Executing)46 b(Commands)150 -4278 y Fk(3.7.1)63 b(Simple)41 b(Command)h(Expansion)275 -4522 y Ft(When)35 b(a)h(simple)f(command)h(is)f(executed,)j(the)e +b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 2376 y(exist,)e(it)g(is)g +(created.)150 2629 y Fr(3.7)68 b(Executing)46 b(Commands)150 +2959 y Fk(3.7.1)63 b(Simple)41 b(Command)h(Expansion)275 +3202 y Ft(When)35 b(a)h(simple)f(command)h(is)f(executed,)j(the)e (shell)g(p)s(erforms)e(the)i(follo)m(wing)h(expansions,)f(as-)150 -4632 y(signmen)m(ts,)31 b(and)f(redirections,)h(from)f(left)h(to)g -(righ)m(t.)199 4767 y(1.)61 b(The)38 b(w)m(ords)f(that)i(the)g(parser)e +3312 y(signmen)m(ts,)31 b(and)f(redirections,)h(from)f(left)h(to)g +(righ)m(t.)199 3445 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 4876 y(command)30 b(name\))h(and)f(redirections)h +(preceding)f(the)330 3554 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 -5011 y(2.)61 b(The)39 b(w)m(ords)g(that)i(are)f(not)g(v)-5 +3688 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 5121 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g +(\(see)h(Sec-)330 3797 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g (17\).)61 b(If)37 b(an)m(y)g(w)m(ords)f(remain)h(after)h(expansion,)h -(the)e(\014rst)330 5230 y(w)m(ord)31 b(is)g(tak)m(en)h(to)g(b)s(e)f +(the)e(\014rst)330 3907 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 5340 y(men)m(ts.)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)199 299 -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 -(25\).)199 444 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 554 -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 -663 y(b)s(eing)30 b(assigned)h(to)g(the)f(v)-5 b(ariable.)275 -855 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 965 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 1074 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 1184 -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 1293 y(status.)275 1449 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 1559 y(shell)d(en)m(vironmen)m(t.)41 +(are)g(the)h(argu-)330 4016 y(men)m(ts.)199 4150 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(25\).)199 +4283 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 4392 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 4502 y(b)s(eing)30 +b(assigned)h(to)g(the)f(v)-5 b(ariable.)275 4659 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 4768 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 4878 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 4988 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 +5097 y(status.)275 5230 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 5340 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 1715 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 1825 y(Otherwise,)39 +(with)f(a)h(non-zero)g(status.)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)275 299 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 408 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 1934 y(tion,)i(the)d(exit)h +(con)m(tained)h(a)g(command)f(substitu-)150 518 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 2044 y(p)s(erformed.)55 +(last)g(command)f(substitution)150 628 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 2153 y(zero.)150 -2421 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h(Execution)275 -2686 y Ft(After)35 b(a)h(command)f(has)h(b)s(een)e(split)i(in)m(to)g(w) +(command)h(exits)g(with)f(a)h(status)g(of)150 737 y(zero.)150 +969 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h(Execution)275 +1217 y Ft(After)35 b(a)h(command)f(has)h(b)s(een)e(split)i(in)m(to)g(w) m(ords,)h(if)e(it)h(results)g(in)f(a)h(simple)f(command)g(and)g(an)150 -2796 y(optional)d(list)f(of)f(argumen)m(ts,)h(the)g(follo)m(wing)g -(actions)h(are)f(tak)m(en.)199 2952 y(1.)61 b(If)24 b(the)g(command)g +1327 y(optional)d(list)f(of)f(argumen)m(ts,)h(the)g(follo)m(wing)g +(actions)h(are)f(tak)m(en.)199 1465 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 3062 y(a)h(shell)g +s(cate)h(it.)39 b(If)24 b(there)g(exists)330 1575 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 -3171 y(F)-8 b(unctions],)31 b(page)h(14.)199 3317 y(2.)61 +1684 y(F)-8 b(unctions],)31 b(page)h(14.)199 1821 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 -3426 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 3571 y(3.)61 b(If)40 b(the)g(name)h(is)f +1930 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 2067 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 3681 y(searc)m(hes)c(eac)m(h)g +(tains)h(no)g(slashes,)i(Bash)330 2176 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 3791 y(name.)56 +(an)f(executable)h(\014le)f(b)m(y)g(that)330 2286 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 3900 +f(pathnames)g(of)h(executable)h(\014les)e(to)330 2396 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 4010 y(Builtins],)37 b(page)f(35\).)55 b(A)35 b(full)g(searc)m(h)g +330 2505 y(Builtins],)37 b(page)f(35\).)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 4119 y(command)c(is)g(not)g(found)f(in)g(the)i(hash)e -(table.)43 b(If)31 b(the)g(searc)m(h)h(is)f(unsuccessful,)f(the)h -(shell)g(prin)m(ts)330 4229 y(an)f(error)g(message)i(and)e(returns)f -(an)h(exit)h(status)g(of)f(127.)199 4374 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 4484 -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 -4593 y(is)30 b(set)h(to)h(the)e(name)h(giv)m(en,)g(and)f(the)h +(if)g(the)330 2615 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 2724 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 2834 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 2944 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 3053 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 3163 y(127.)199 +3299 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 3409 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 3518 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 4703 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8 -b(.)199 4848 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g +330 3628 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8 +b(.)199 3764 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 4958 y(a)d(directory)-8 b(,)34 +(\014le)g(is)g(not)330 3874 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 -5067 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(32.)199 -5213 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async) +3984 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(33.)199 +4120 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 5322 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)p +(to)330 4230 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150 +4462 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)275 +4710 y Ft(The)29 b(shell)i(has)f(an)g Fq(execution)i(en)m(vironmen)m(t) +p Ft(,)f(whic)m(h)f(consists)h(of)g(the)f(follo)m(wing:)225 +4848 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 4957 y(the)g Fs(exec)e +Ft(builtin)225 5094 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 5204 y(in)m(v)m(o)s(cation)225 5340 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)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 Fk(3.7.3)63 b(Command)41 -b(Execution)f(En)m(vironmen)m(t)275 551 y Ft(The)29 b(shell)i(has)f(an) -g Fq(execution)i(en)m(vironmen)m(t)p Ft(,)f(whic)m(h)f(consists)h(of)g -(the)f(follo)m(wing:)225 693 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 802 y(the)g Fs(exec)e Ft(builtin)225 940 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 1050 y(in)m(v)m(o)s(cation)225 -1188 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 1327 y Fp(\017)60 b Ft(curren)m(t)30 -b(traps)g(set)h(b)m(y)f Fs(trap)225 1465 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 1574 y(shell's)i(paren)m(t)f(in)g(the)h(en)m(vironmen)m -(t)225 1713 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 1822 y(en)m(vironmen)m(t)225 1961 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 2070 y(b)m(y)c Fs(set)225 2208 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(53\))225 2347 -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(77\))225 -2485 y Fp(\017)60 b Ft(v)-5 b(arious)50 b(pro)s(cess)f +%%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)225 299 +y Fp(\017)60 b Ft(curren)m(t)30 b(traps)g(set)h(b)m(y)f +Fs(trap)225 432 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 541 y(shell's)i(paren)m(t)f +(in)g(the)h(en)m(vironmen)m(t)225 674 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 +783 y(en)m(vironmen)m(t)225 916 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 1026 +y(b)m(y)c Fs(set)225 1158 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(54\))225 1291 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(77\))225 +1424 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 2595 y(page)31 +(\(see)i(Section)g(3.2.3)g([Lists],)330 1533 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 2765 y Ft(When)k(a)g(simple)h(command)f +b(alue)31 b(of)f Fs($PPID)275 1689 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 2875 y(in)m(v)m(ok)m(ed)25 b(in)f(a)g +(executed,)i(it)f(is)150 1799 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 2984 y(noted,)31 +f(follo)m(wing.)40 b(Unless)24 b(otherwise)150 1908 y(noted,)31 b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225 -3127 y Fp(\017)60 b Ft(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e +2041 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 3236 y(the)g(command)225 3374 +(y)g(redirections)g(to)330 2151 y(the)g(command)225 2283 y Fp(\017)60 b Ft(the)31 b(curren)m(t)f(w)m(orking)g(directory)225 -3513 y Fp(\017)60 b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225 -3651 y Fp(\017)60 b Ft(shell)32 b(v)-5 b(ariables)33 +2416 y Fp(\017)60 b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225 +2549 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 3761 y(command,)e(passed)g +b(ariables)32 b(exp)s(orted)g(for)g(the)330 2658 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(31\))225 3899 y Fp(\017)60 b +(vironmen)m(t],)e(page)g(31\))225 2791 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 4008 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored) -275 4179 y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g +(and)330 2900 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored) +275 3056 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 -4289 y(en)m(vironmen)m(t.)275 4431 y(Command)35 b(substitution,)j +3166 y(en)m(vironmen)m(t.)275 3299 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 4540 y(mands)c(are)h(in)m(v)m(ok)m(ed)i(in)d(a)i +(hronous)g(com-)150 3408 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 4650 y(except)i(that)g(traps)f(caugh)m +(shell)g(en)m(vironmen)m(t,)150 3518 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 -4760 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49 +3627 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 4869 y(executed)41 +(of)h(a)f(pip)s(eline)g(are)h(also)150 3737 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 -4979 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275 -5121 y(If)38 b(a)h(command)f(is)g(follo)m(w)m(ed)j(b)m(y)d(a)h(`)p +3846 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275 +3979 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 5230 y(input)e(for)g(the)h(command)f(is)h(the)g +(default)g(standard)150 4089 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 5340 y(inherits)30 +b(the)f(in)m(v)m(ok)m(ed)h(command)150 4198 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.)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 Fk(3.7.4)63 b(En)m(vironmen)m(t)275 547 y Ft(When)31 -b(a)g(program)h(is)f(in)m(v)m(ok)m(ed)i(it)f(is)f(giv)m(en)h(an)g(arra) -m(y)g(of)f(strings)g(called)i(the)e Fq(en)m(vironmen)m(t)p -Ft(.)45 b(This)150 656 y(is)30 b(a)h(list)g(of)g(name-v)-5 -b(alue)31 b(pairs,)f(of)h(the)f(form)g Fs(name=value)p -Ft(.)275 795 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 904 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 1014 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 -1123 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 1233 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 -1343 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 1452 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 1562 y(mo)s(di\014ed)26 +(di\014ed)g(b)m(y)g(redirections.)150 4417 y Fk(3.7.4)63 +b(En)m(vironmen)m(t)275 4659 y Ft(When)31 b(a)g(program)h(is)f(in)m(v)m +(ok)m(ed)i(it)f(is)f(giv)m(en)h(an)g(arra)m(y)g(of)f(strings)g(called)i +(the)e Fq(en)m(vironmen)m(t)p Ft(.)45 b(This)150 4769 +y(is)30 b(a)h(list)g(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f +(form)g Fs(name=value)p Ft(.)275 4902 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 5011 +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 +5121 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 5230 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 5340 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)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(new)g(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 +408 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 518 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 1671 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 1810 +(plus)150 628 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 758 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 -1919 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h +868 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 -2029 y(page)g(15.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g +978 y(page)g(15.)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.)275 2167 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(49\),)i -(then)e(all)g(parameter)150 2277 y(assignmen)m(ts)i(are)g(placed)h(in)e +(command.)275 1108 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(50\),)i +(then)e(all)g(parameter)150 1218 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 2386 y(command)g(name.)275 -2525 y(When)f(Bash)h(in)m(v)m(ok)m(es)i(an)e(external)g(command,)g(the) +(that)f(precede)g(the)150 1327 y(command)g(name.)275 +1458 y(When)f(Bash)h(in)m(v)m(ok)m(es)i(an)e(external)g(command,)g(the) g(v)-5 b(ariable)31 b(`)p Fs($_)p Ft(')f(is)g(set)g(to)h(the)f(full)f -(path)h(name)150 2634 y(of)h(the)f(command)g(and)g(passed)g(to)h(that)g -(command)f(in)g(its)h(en)m(vironmen)m(t.)150 2866 y Fk(3.7.5)63 -b(Exit)40 b(Status)275 3114 y Ft(The)24 b(exit)i(status)f(of)g(an)g +(path)h(name)150 1568 y(of)h(the)f(command)g(and)g(passed)g(to)h(that)g +(command)f(in)g(its)h(en)m(vironmen)m(t.)150 1780 y Fk(3.7.5)63 +b(Exit)40 b(Status)275 2021 y Ft(The)24 b(exit)i(status)f(of)g(an)g (executed)h(command)e(is)h(the)h(v)-5 b(alue)25 b(returned)f(b)m(y)h -(the)g Fq(w)m(aitpid)k Ft(system)c(call)150 3224 y(or)e(equiv)-5 +(the)g Fq(w)m(aitpid)k Ft(system)c(call)150 2130 y(or)e(equiv)-5 b(alen)m(t)25 b(function.)38 b(Exit)24 b(statuses)g(fall)f(b)s(et)m(w)m (een)h(0)g(and)f(255,)j(though,)f(as)e(explained)h(b)s(elo)m(w,)h(the) -150 3333 y(shell)35 b(ma)m(y)g(use)f(v)-5 b(alues)35 +150 2240 y(shell)35 b(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 -3443 y(commands)j(are)g(also)h(limited)g(to)g(this)f(range.)58 +2349 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 -3552 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 3691 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s +2459 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 2590 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 3800 y(A)e(non-zero)h(exit)g(status)g +(status)f(has)f(succeeded.)150 2699 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 3910 y(there)34 +(tuitiv)m(e)i(sc)m(heme)e(is)f(used)g(so)150 2809 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 4020 y(failure)38 b(mo)s(des.)62 b(When)38 +b(arious)150 2918 y(failure)38 b(mo)s(des.)62 b(When)38 b(a)g(command)f(terminates)i(on)e(a)i(fatal)g(signal)f(whose)g(n)m(um)m -(b)s(er)e(is)i Fq(N)p Ft(,)g(Bash)150 4129 y(uses)30 +(b)s(er)e(is)i Fq(N)p Ft(,)g(Bash)150 3028 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 4267 y(If)k(a)h(command)g(is)g(not)g(found,) +b(the)h(exit)g(status.)275 3159 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 4377 y(127.)42 b(If)30 b(a)h(command)f(is)g(found) +(a)j(status)f(of)150 3268 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 -4515 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f +3399 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 -4625 y(is)c(greater)i(than)e(zero.)275 4763 y(The)38 +3509 y(is)c(greater)i(than)e(zero.)275 3639 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 4873 +(commands)e(\(see)h(Section)h(3.2.4.2)h([Con-)150 3749 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 -4982 y(page)31 b(9\).)275 5121 y(All)40 b(of)g(the)h(Bash)f(builtins)f +3858 y(page)31 b(9\).)275 3989 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 5230 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m +(a)g(non-zero)150 4099 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 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: 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 Fk(3.7.6)63 b(Signals)275 -555 y Ft(When)27 b(Bash)h(is)h(in)m(teractiv)m(e,)i(in)d(the)g(absence) -h(of)f(an)m(y)g(traps,)h(it)f(ignores)h Fs(SIGTERM)d -Ft(\(so)i(that)h(`)p Fs(kill)150 665 y(0)p Ft(')k(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 774 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 884 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 993 y(page)f(87\),)h(Bash)e(ignores)h -Fs(SIGTTIN)p Ft(,)e Fs(SIGTTOU)p Ft(,)g(and)g Fs(SIGTSTP)p -Ft(.)275 1140 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 1250 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 1359 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 1469 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 1578 y Fs(SIGTTOU)p Ft(,)h(and)g Fs(SIGTSTP)p -Ft(.)275 1725 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f +(constructs.)50 b(All)35 b(builtins)150 4208 y(return)29 +b(an)i(exit)g(status)g(of)f(2)h(to)g(indicate)g(incorrect)h(usage.)150 +4421 y Fk(3.7.6)63 b(Signals)275 4661 y Ft(When)27 b(Bash)h(is)h(in)m +(teractiv)m(e,)i(in)d(the)g(absence)h(of)f(an)m(y)g(traps,)h(it)f +(ignores)h Fs(SIGTERM)d Ft(\(so)i(that)h(`)p Fs(kill)150 +4771 y(0)p Ft(')k(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 4881 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 4990 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 5100 y(page)f(87\),)h +(Bash)e(ignores)h Fs(SIGTTIN)p Ft(,)e Fs(SIGTTOU)p Ft(,)g(and)g +Fs(SIGTSTP)p Ft(.)275 5230 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 5340 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)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(ignore)36 b 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 +408 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 518 y Fs(SIGTTOU)p Ft(,)h(and)g Fs(SIGTSTP)p +Ft(.)275 662 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 1835 y(resends)41 b(the)i +(in)m(teractiv)m(e)j(shell)150 771 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 1944 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e +Ft(to)150 881 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 2054 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 +g(sending)f(the)h Fs(SIGHUP)e Ft(signal)150 991 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 -2163 y(Section)f(7.2)g([Job)f(Con)m(trol)h(Builtins],)g(page)g(88\))h +1100 y(Section)f(7.2)g([Job)f(Con)m(trol)h(Builtins],)g(page)g(88\))h (or)e(mark)m(ed)g(to)h(not)f(receiv)m(e)i Fs(SIGHUP)d -Ft(using)h Fs(disown)150 2273 y(-h)p Ft(.)275 2419 y(If)38 +Ft(using)h Fs(disown)150 1210 y(-h)p Ft(.)275 1354 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 -2529 y(Builtin],)31 b(page)g(53\),)h(Bash)f(sends)e(a)i +1463 y(Builtin],)31 b(page)g(54\),)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 2676 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g +e(shell)g(exits.)275 1607 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 2785 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g +m(h)h(a)g(trap)150 1717 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 2895 y(w)m(aiting)j(for)f(an)g(async)m +b(When)35 b(Bash)g(is)150 1826 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 3004 y(whic)m(h)d(a)g(trap)g +(reception)g(of)f(a)g(signal)h(for)150 1936 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 -3114 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 3402 y Fr(3.8)68 b(Shell)45 -b(Scripts)275 3658 y Ft(A)c(shell)h(script)g(is)g(a)g(text)h(\014le)f +2045 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 2326 y Fr(3.8)68 b(Shell)45 +b(Scripts)275 2580 y Ft(A)c(shell)h(script)g(is)g(a)g(text)h(\014le)f (con)m(taining)h(shell)f(commands.)75 b(When)41 b(suc)m(h)h(a)g(\014le) -g(is)g(used)f(as)150 3767 y(the)33 b(\014rst)f(non-option)h(argumen)m +g(is)g(used)f(as)150 2689 y(the)33 b(\014rst)f(non-option)h(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(')f(option)i(is)150 -3877 y(supplied)j(\(see)j(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)h +2799 y(supplied)j(\(see)j(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)h (page)f(69\),)i(Bash)d(reads)f(and)g(executes)i(commands)150 -3987 y(from)31 b(the)h(\014le,)h(then)e(exits.)46 b(This)31 +2908 y(from)31 b(the)h(\014le,)h(then)e(exits.)46 b(This)31 b(mo)s(de)g(of)h(op)s(eration)h(creates)g(a)f(non-in)m(teractiv)m(e)i -(shell.)45 b(The)32 b(shell)150 4096 y(\014rst)26 b(searc)m(hes)h(for)f +(shell.)45 b(The)32 b(shell)150 3018 y(\014rst)26 b(searc)m(hes)h(for)f (the)g(\014le)h(in)f(the)g(curren)m(t)h(directory)-8 b(,)28 b(and)e(lo)s(oks)g(in)h(the)f(directories)h(in)f -Fs($PATH)f Ft(if)i(not)150 4206 y(found)i(there.)275 -4352 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f +Fs($PATH)f Ft(if)i(not)150 3128 y(found)i(there.)275 +3271 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 4462 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j +(\014le,)150 3381 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 4571 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m +(remain-)150 3491 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 4681 y(parameters)31 b(are)f(unset.)275 -4828 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 3600 y(parameters)31 b(are)f(unset.)275 +3744 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 -4937 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h +3854 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 5047 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 5193 -y Fs(filename)46 b Fj(arguments)150 5340 y Ft(is)30 b(equiv)-5 -b(alen)m(t)32 b(to)f(executing)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)390 299 -y Fs(bash)47 b(filename)e Fj(arguments)150 433 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 543 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 653 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 -762 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(35\))h(are)e(retained)h -(b)m(y)f(the)h(c)m(hild.)275 897 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 1006 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 -1116 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 1225 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 1360 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 1469 y(in)m(terpreter)33 b(name)h(on)f(the)g +(command,)h(it)150 3963 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 4107 +y Fs(filename)46 b Fj(arguments)150 4251 y Ft(is)30 b(equiv)-5 +b(alen)m(t)32 b(to)f(executing)390 4395 y Fs(bash)47 +b(filename)e Fj(arguments)150 4539 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 +4648 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 4758 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 4867 y([Bourne)30 +b(Shell)h(Builtins],)g(page)g(35\))h(are)e(retained)h(b)m(y)f(the)h(c)m +(hild.)275 5011 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 5121 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 5230 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 5340 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.)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)275 299 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 408 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 1579 y(follo)m(w)m(ed)g +e(the)g(name)g(of)g(the)h(script)f(\014le,)150 518 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 -1689 y(that)24 b(do)g(not)f(handle)g(it)h(themselv)m(es.)40 +628 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 1798 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 1933 y(Bash)h(scripts)g +(the)f(in)m(terpreter)150 737 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 872 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 2042 y(`)p +(Bash)f(has)g(b)s(een)f(installed)i(in)150 981 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 2152 y(under)29 b(another)h(shell.)p +(is)f(executed)150 1091 y(under)29 b(another)h(shell.)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)p eop end %%Page: 35 41 TeXDict begin 35 40 bop 150 -116 a Ft(Chapter)30 b(4:)41 b(Shell)30 b(Builtin)h(Commands)2069 b(35)150 299 y Fo(4)80 @@ -7348,9 +7410,9 @@ b(Builtin)150 864 y(commands)f(are)h(necessary)g(to)g(implemen)m(t)g (Builtins],)150 1573 y(page)40 b(88\),)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 (79\),)j(the)150 1682 y(command)23 b(history)h(\(see)g(Section)g(9.2)h -([Bash)f(History)g(Builtins],)h(page)g(117\),)h(and)d(the)h +([Bash)f(History)g(Builtins],)h(page)g(119\),)h(and)d(the)h (programmable)150 1792 y(completion)32 b(facilities)g(\(see)g(Section)f -(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(113\).)275 +(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(114\).)275 1927 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 2062 y(Unless)20 b(otherwise)h(noted,)h(eac)m(h)g(builtin)e(command)g(do)s(cumen)m(ted)g @@ -7772,7 +7834,7 @@ b(If)27 b(a)i Fq(sigsp)s(ec)k Ft(is)28 b Fs(DEBUG)p Ft(,)630 44 b(Refer)31 b(to)h(the)g(description)f(of)h(the)630 3712 y Fs(extglob)40 b Ft(option)i(to)g(the)g Fs(shopt)e Ft(builtin)h(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)630 -3821 y(page)g(53\))g(for)e(details)i(of)f(its)h(e\013ect)g(on)f(the)g +3821 y(page)g(54\))g(for)e(details)i(of)f(its)h(e\013ect)g(on)f(the)g Fs(DEBUG)f Ft(trap.)69 b(If)39 b(a)i Fq(sigsp)s(ec)k Ft(is)40 b Fs(ERR)p Ft(,)i(the)630 3931 y(command)h Fq(arg)52 b Ft(is)44 b(executed)g(whenev)m(er)g(a)g(simple)f(command)h(has)f(a)h @@ -7804,1109 +7866,1165 @@ b(not)h(sp)s(ecify)f(a)g(v)-5 b(alid)31 b(signal.)150 %%Page: 41 47 TeXDict begin 41 46 bop 150 -116 a Ft(Chapter)30 b(4:)41 b(Shell)30 b(Builtin)h(Commands)2069 b(41)870 299 y Fs(umask)46 -b([-p])h([-S])g([)p Fj(mode)11 b Fs(])630 435 y Ft(Set)30 +b([-p])h([-S])g([)p Fj(mode)11 b Fs(])630 429 y Ft(Set)30 b(the)f(shell)h(pro)s(cess's)f(\014le)h(creation)g(mask)g(to)g Fq(mo)s(de)p Ft(.)40 b(If)29 b Fq(mo)s(de)34 b Ft(b)s(egins)29 -b(with)g(a)h(digit,)630 544 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s +b(with)g(a)h(digit,)630 538 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s (ctal)i(n)m(um)m(b)s(er;)e(if)g(not,)h(it)g(is)f(in)m(terpreted)g(as)g -(a)h(sym)m(b)s(olic)f(mo)s(de)630 654 y(mask)i(similar)g(to)g(that)h +(a)h(sym)m(b)s(olic)f(mo)s(de)630 648 y(mask)i(similar)g(to)g(that)h (accepted)g(b)m(y)f(the)g Fs(chmod)e Ft(command.)40 b(If)28 -b Fq(mo)s(de)34 b Ft(is)28 b(omitted,)j(the)630 763 y(curren)m(t)36 +b Fq(mo)s(de)34 b Ft(is)28 b(omitted,)j(the)630 758 y(curren)m(t)36 b(v)-5 b(alue)36 b(of)g(the)h(mask)f(is)g(prin)m(ted.)57 b(If)35 b(the)h(`)p Fs(-S)p Ft(')g(option)h(is)f(supplied)f(without)h -(a)630 873 y Fq(mo)s(de)k Ft(argumen)m(t,)d(the)e(mask)g(is)g(prin)m +(a)630 867 y Fq(mo)s(de)k Ft(argumen)m(t,)d(the)e(mask)g(is)g(prin)m (ted)g(in)g(a)h(sym)m(b)s(olic)f(format.)55 b(If)35 b(the)g(`)p -Fs(-p)p Ft(')g(option)630 983 y(is)f(supplied,)f(and)g +Fs(-p)p Ft(')g(option)630 977 y(is)f(supplied,)f(and)g Fq(mo)s(de)38 b Ft(is)33 b(omitted,)j(the)e(output)f(is)g(in)h(a)g -(form)f(that)h(ma)m(y)g(b)s(e)f(reused)630 1092 y(as)e(input.)41 +(form)f(that)h(ma)m(y)g(b)s(e)f(reused)630 1086 y(as)e(input.)41 b(The)31 b(return)f(status)h(is)g(zero)h(if)e(the)h(mo)s(de)g(is)g -(successfully)g(c)m(hanged)g(or)g(if)g(no)630 1202 y +(successfully)g(c)m(hanged)g(or)g(if)g(no)630 1196 y Fq(mo)s(de)k Ft(argumen)m(t)c(is)f(supplied,)g(and)f(non-zero)i -(otherwise.)630 1337 y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in) +(otherwise.)630 1326 y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in) m(terpreted)h(as)f(an)g(o)s(ctal)i(n)m(um)m(b)s(er,)e(eac)m(h)i(n)m(um) -m(b)s(er)d(of)630 1447 y(the)f(umask)g(is)h(subtracted)f(from)f +m(b)s(er)d(of)630 1435 y(the)f(umask)g(is)h(subtracted)f(from)f Fs(7)p Ft(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Fs(022)e -Ft(results)h(in)g(p)s(ermissions)630 1557 y(of)d Fs(755)p -Ft(.)150 1718 y Fs(unset)870 1854 y(unset)46 b([-fv])h([)p -Fj(name)11 b Fs(])630 1990 y Ft(Eac)m(h)34 b(v)-5 b(ariable)33 +Ft(results)h(in)g(p)s(ermissions)630 1545 y(of)d Fs(755)p +Ft(.)150 1695 y Fs(unset)870 1825 y(unset)46 b([-fv])h([)p +Fj(name)11 b Fs(])630 1955 y Ft(Eac)m(h)34 b(v)-5 b(ariable)33 b(or)g(function)g Fq(name)38 b Ft(is)33 b(remo)m(v)m(ed.)50 b(If)32 b(no)h(options)h(are)f(supplied,)g(or)g(the)630 -2099 y(`)p Fs(-v)p Ft(')h(option)h(is)g(giv)m(en,)h(eac)m(h)g +2064 y(`)p Fs(-v)p Ft(')h(option)h(is)g(giv)m(en,)h(eac)m(h)g Fq(name)k Ft(refers)34 b(to)h(a)g(shell)f(v)-5 b(ariable.)54 -b(If)34 b(the)h(`)p Fs(-f)p Ft(')f(option)h(is)630 2209 +b(If)34 b(the)h(`)p Fs(-f)p Ft(')f(option)h(is)630 2174 y(giv)m(en,)27 b(the)d Fq(name)5 b Ft(s)25 b(refer)f(to)h(shell)g (functions,)g(and)f(the)g(function)g(de\014nition)g(is)h(remo)m(v)m -(ed.)630 2319 y(Readonly)32 b(v)-5 b(ariables)33 b(and)f(functions)f +(ed.)630 2284 y(Readonly)32 b(v)-5 b(ariables)33 b(and)f(functions)f (ma)m(y)i(not)f(b)s(e)g(unset.)45 b(The)32 b(return)f(status)h(is)g -(zero)630 2428 y(unless)e(a)g Fq(name)36 b Ft(is)30 b(readonly)-8 -b(.)150 2692 y Fr(4.2)68 b(Bash)45 b(Builtin)g(Commands)275 -2938 y Ft(This)30 b(section)j(describ)s(es)e(builtin)h(commands)f(whic) +(zero)630 2393 y(unless)e(a)g Fq(name)36 b Ft(is)30 b(readonly)-8 +b(.)150 2637 y Fr(4.2)68 b(Bash)45 b(Builtin)g(Commands)275 +2876 y Ft(This)30 b(section)j(describ)s(es)e(builtin)h(commands)f(whic) m(h)g(are)i(unique)d(to)j(or)f(ha)m(v)m(e)h(b)s(een)e(extended)g(in)150 -3048 y(Bash.)41 b(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 3211 -y Fs(alias)870 3346 y(alias)46 b([-p])h([)p Fj(name)11 -b Fs([=)p Fj(value)g Fs(])43 b(...)o(])630 3482 y Ft(Without)h(argumen) +2986 y(Bash.)41 b(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 3136 +y Fs(alias)870 3266 y(alias)46 b([-p])h([)p Fj(name)11 +b Fs([=)p Fj(value)g Fs(])43 b(...)o(])630 3396 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 -3592 y(on)36 b(the)g(standard)f(output)h(in)f(a)i(form)e(that)i(allo)m +3505 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 -3701 y(argumen)m(ts)29 b(are)g(supplied,)f(an)h(alias)h(is)f(de\014ned) +3615 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 3811 y(If)39 b(no)h Fq(v)-5 +b Ft(is)29 b(giv)m(en.)630 3725 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 3920 y(describ)s(ed)29 b(in)h(Section)i(6.6)f([Aliases],)h -(page)f(77.)150 4082 y Fs(bind)870 4218 y(bind)47 b([-m)g -Fj(keymap)11 b Fs(])45 b([-lpsvPSV])870 4328 y(bind)i([-m)g +b(are)630 3834 y(describ)s(ed)29 b(in)h(Section)i(6.6)f([Aliases],)h +(page)f(77.)150 3984 y Fs(bind)870 4114 y(bind)47 b([-m)g +Fj(keymap)11 b Fs(])45 b([-lpsvPSV])870 4224 y(bind)i([-m)g Fj(keymap)11 b Fs(])45 b([-q)i Fj(function)11 b Fs(])45 b([-u)h Fj(function)11 b Fs(])45 b([-r)i Fj(keyseq)11 -b Fs(])870 4437 y(bind)47 b([-m)g Fj(keymap)11 b Fs(])45 -b(-f)i Fj(filename)870 4547 y Fs(bind)g([-m)g Fj(keymap)11 -b Fs(])45 b(-x)i Fj(keyseq:shell-command)870 4656 y Fs(bind)g([-m)g +b Fs(])870 4333 y(bind)47 b([-m)g Fj(keymap)11 b Fs(])45 +b(-f)i Fj(filename)870 4443 y Fs(bind)g([-m)g Fj(keymap)11 +b Fs(])45 b(-x)i Fj(keyseq:shell-command)870 4553 y Fs(bind)g([-m)g Fj(keymap)11 b Fs(])45 b Fj(keyseq:function-name)870 -4766 y Fs(bind)i Fj(readline-command)630 4902 y Ft(Displa)m(y)26 +4662 y Fs(bind)i Fj(readline-command)630 4792 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(91\))g(k)m(ey)630 5011 y(and)36 b(function)g +(Editing],)i(page)f(91\))g(k)m(ey)630 4902 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 5121 y(or)44 b(set)h(a)g(Readline)f(v)-5 +(function)f(or)h(macro,)630 5011 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 5230 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline) +(command)f(as)g(it)630 5121 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 5340 y(File],)g(page)c(94\),)k(but)38 b(eac)m(h)i(binding)e(or)h -(command)g(m)m(ust)g(b)s(e)f(passed)g(as)i(a)f(separate)p -eop end +630 5230 y(File],)g(page)c(94\),)k(but)38 b(eac)m(h)i(binding)e(or)h +(command)g(m)m(ust)g(b)s(e)f(passed)g(as)i(a)f(separate)630 +5340 y(argumen)m(t;)31 b(e.g.,)h(`)p Fs("\\C-x\\C-r":re-read-init-f)o +(ile)p Ft('.)p eop end %%Page: 42 48 TeXDict begin 42 47 bop 150 -116 a Ft(42)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(argumen)m(t;)36 b(e.g.,)f(`)p -Fs("\\C-x\\C-r":re-read-init-fi)o(le)p Ft('.)43 b(Options,)34 -b(if)g(supplied,)f(ha)m(v)m(e)630 408 y(the)e(follo)m(wing)g(meanings:) -630 576 y Fs(-m)f Fj(keymap)1110 686 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 795 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 905 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 1014 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 1124 -y(to)31 b Fs(emacs-standard)p Ft(.)630 1292 y Fs(-l)384 -b Ft(List)31 b(the)f(names)g(of)h(all)g(Readline)g(functions.)630 -1459 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 -1569 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 1736 y Fs(-P)384 b Ft(List)31 -b(curren)m(t)f(Readline)h(function)f(names)g(and)g(bindings.)630 -1904 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 2014 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 -2181 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 2349 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 2458 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 2568 y(Readline)d(initialization)i(\014le.) -630 2736 y Fs(-S)384 b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g +b(Reference)g(Man)m(ual)630 299 y(Options,)f(if)h(supplied,)e(ha)m(v)m +(e)i(the)g(follo)m(wing)h(meanings:)630 456 y Fs(-m)e +Fj(keymap)1110 566 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 +676 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 785 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 +895 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 1004 y(to)31 b Fs(emacs-standard)p +Ft(.)630 1162 y Fs(-l)384 b Ft(List)31 b(the)f(names)g(of)h(all)g +(Readline)g(functions.)630 1319 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 1429 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 1587 +y Fs(-P)384 b Ft(List)31 b(curren)m(t)f(Readline)h(function)f(names)g +(and)g(bindings.)630 1744 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 1854 +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 2011 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 2169 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 -2845 y(they)31 b(output.)630 3013 y Fs(-f)f Fj(filename)1110 -3122 y Ft(Read)h(k)m(ey)g(bindings)e(from)h Fq(\014lename)p -Ft(.)630 3290 y Fs(-q)g Fj(function)1110 3400 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 3567 y Fs(-u)g Fj(function)1110 -3677 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 3844 y Fs(-r)g Fj(keyseq)1110 -3954 y Ft(Remo)m(v)m(e)i(an)m(y)f(curren)m(t)f(binding)f(for)h -Fq(k)m(eyseq)p Ft(.)630 4122 y Fs(-x)g Fj(keyseq:shell-command)1110 -4231 y Ft(Cause)g Fq(shell-command)k Ft(to)e(b)s(e)d(executed)j(whenev) -m(er)e Fq(k)m(eyseq)j Ft(is)e(en)m(tered.)630 4399 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 -4566 y Fs(builtin)870 4705 y(builtin)46 b([)p Fj(shell-builtin)54 -b Fs([)p Fj(args)11 b Fs(]])630 4844 y Ft(Run)35 b(a)i(shell)f +2278 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 2388 +y(Readline)d(initialization)i(\014le.)630 2545 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 2655 y(they)31 b(output.)630 +2813 y Fs(-f)f Fj(filename)1110 2922 y Ft(Read)h(k)m(ey)g(bindings)e +(from)h Fq(\014lename)p Ft(.)630 3080 y Fs(-q)g Fj(function)1110 +3189 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 3347 y Fs(-u)g +Fj(function)1110 3456 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 3614 y Fs(-r)g +Fj(keyseq)1110 3724 y Ft(Remo)m(v)m(e)i(an)m(y)f(curren)m(t)f(binding)f +(for)h Fq(k)m(eyseq)p Ft(.)630 3881 y Fs(-x)g Fj(keyseq:shell-command) +1110 3991 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 +4100 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 4210 +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 4319 +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 4429 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 4539 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 4648 y(editing)h(state.) +630 4806 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 4963 y Fs(builtin)870 5097 y(builtin)46 b([)p Fj(shell-builtin)54 +b Fs([)p Fj(args)11 b Fs(]])630 5230 y Ft(Run)35 b(a)i(shell)f (builtin,)i(passing)e(it)h Fq(args)p Ft(,)h(and)e(return)f(its)i(exit)g -(status.)59 b(This)35 b(is)i(useful)630 4953 y(when)29 +(status.)59 b(This)35 b(is)i(useful)630 5340 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 5063 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 5172 y(zero)e(if)g -Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f(builtin)g(command.)150 -5340 y Fs(caller)p eop end +(a)g(shell)f(builtin,)g(retaining)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(caller)46 -b([)p Fj(expr)11 b Fs(])630 434 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 544 y(executed)c(with)f(the)h Fs(.)f -Ft(or)g Fs(source)f Ft(builtins\).)630 679 y(Without)45 -b Fq(expr)p Ft(,)j Fs(caller)43 b Ft(displa)m(ys)i(the)f(line)h(n)m(um) -m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 789 -y(curren)m(t)35 b(subroutine)g(call.)58 b(If)35 b(a)h(non-negativ)m(e)i -(in)m(teger)f(is)f(supplied)e(as)i Fq(expr)p Ft(,)h Fs(caller)630 -898 y Ft(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d +b(Shell)30 b(Builtin)h(Commands)2069 b(43)630 299 y(the)34 +b(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 408 y(zero)e(if)g +Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f(builtin)g(command.)150 +567 y Fs(caller)870 701 y(caller)46 b([)p Fj(expr)11 +b Fs(])630 835 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 944 y(executed)c(with)f(the)h Fs(.)f Ft(or)g +Fs(source)f Ft(builtins\).)630 1078 y(Without)45 b Fq(expr)p +Ft(,)j Fs(caller)43 b Ft(displa)m(ys)i(the)f(line)h(n)m(um)m(b)s(er)f +(and)g(source)g(\014lename)h(of)g(the)630 1188 y(curren)m(t)35 +b(subroutine)g(call.)58 b(If)35 b(a)h(non-negativ)m(e)i(in)m(teger)f +(is)f(supplied)e(as)i Fq(expr)p Ft(,)h Fs(caller)630 +1297 y Ft(displa)m(ys)k(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 -1008 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g +1407 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 -1118 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m +1517 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 -1253 y(The)e(return)f(v)-5 b(alue)29 b(is)h(0)f(unless)g(the)g(shell)g +1650 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 1363 y Ft(do)s(es)g(not)h(corresp)s(ond)e(to)i(a)g(v)-5 +Fq(expr)630 1760 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 -1524 y Fs(command)870 1659 y(command)46 b([-pVv])g Fj(command)56 -b Fs([)p Fj(arguments)g Fs(...)o(])630 1794 y Ft(Runs)32 +1918 y Fs(command)870 2052 y(command)46 b([-pVv])g Fj(command)56 +b Fs([)p Fj(arguments)g Fs(...)o(])630 2186 y Ft(Runs)32 b Fq(command)k Ft(with)d Fq(argumen)m(ts)k Ft(ignoring)c(an)m(y)g -(shell)h(function)e(named)h Fq(command)p Ft(.)630 1904 +(shell)h(function)e(named)h Fq(command)p Ft(.)630 2296 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 2014 y(executed.)g(If)23 +h(searc)m(hing)h(the)f Fs(PATH)f Ft(are)630 2405 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 -2123 y(function)33 b(will)g(execute)i(the)f(external)g(command)f +2515 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 -2233 y(recursiv)m(ely)-8 b(.)84 b(The)44 b(`)p Fs(-p)p +2625 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 2342 y(guaran)m(teed)35 +b(alue)45 b(for)f Fs(PATH)g Ft(that)h(is)630 2734 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 2452 +b(The)33 b(return)g(status)h(in)f(this)h(case)630 2844 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 -2562 y Fq(command)34 b Ft(otherwise.)630 2697 y(If)25 +2953 y Fq(command)34 b Ft(otherwise.)630 3087 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 2807 y(The)i(`)p +Fq(command)i Ft(is)d(prin)m(ted.)630 3197 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 2916 y(to)36 +(the)f(command)g(or)g(\014le)g(name)g(used)630 3306 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 3026 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e +(ose)630 3416 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 -3135 y(non-zero)31 b(if)f(not.)150 3296 y Fs(declare)870 -3432 y(declare)46 b([-afFirtx])f([-p])h([)p Fj(name)11 -b Fs([=)p Fj(value)g Fs(])44 b(...)o(])630 3567 y Ft(Declare)29 +3526 y(non-zero)31 b(if)f(not.)150 3684 y Fs(declare)870 +3818 y(declare)46 b([-afFirtx])f([-p])h([)p Fj(name)11 +b Fs([=)p Fj(value)g Fs(])44 b(...)o(])630 3952 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 3677 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31 -b(instead.)630 3812 y(The)d(`)p Fs(-p)p Ft(')g(option)g(will)h(displa)m +(y)630 4061 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31 +b(instead.)630 4195 y(The)d(`)p Fs(-p)p Ft(')g(option)g(will)h(displa)m (y)f(the)h(attributes)f(and)g(v)-5 b(alues)28 b(of)h(eac)m(h)g -Fq(name)p Ft(.)40 b(When)28 b(`)p Fs(-p)p Ft(')630 3922 +Fq(name)p Ft(.)40 b(When)28 b(`)p Fs(-p)p Ft(')630 4305 y(is)i(used)g(with)g Fq(name)36 b Ft(argumen)m(ts,)31 -b(additional)g(options)f(are)h(ignored.)630 4057 y(When)36 +b(additional)g(options)f(are)h(ignored.)630 4439 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 -4167 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5 +4548 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 4276 y(tional)h(options.)41 b(If)30 +(the)g(addi-)630 4658 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 -4386 y(the)f(attributes)g(and)e(v)-5 b(alues)30 b(of)g(all)g(shell)g(v) +4768 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 4495 y(displa)m(y)h(to)g(shell)f(functions.)630 -4631 y(The)36 b(`)p Fs(-F)p Ft(')h(option)g(inhibits)f(the)h(displa)m +(restrict)g(the)630 4877 y(displa)m(y)h(to)g(shell)f(functions.)630 +5011 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 -4740 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40 +5121 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 4850 y Fs(shopt)24 b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f -(Builtin],)k(page)e(53\),)i(the)d(source)h(\014le)f(name)h(and)630 -4960 y(line)38 b(n)m(um)m(b)s(er)e(where)i(the)g(function)f(is)h +630 5230 y Fs(shopt)24 b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f +(Builtin],)k(page)e(54\),)i(the)d(source)h(\014le)f(name)h(and)630 +5340 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 5069 y(`)p Fs(-f)p -Ft('.)i(The)28 b(follo)m(wing)i(options)f(can)f(b)s(e)g(used)g(to)h -(restrict)g(output)f(to)h(v)-5 b(ariables)30 b(with)e(the)630 -5179 y(sp)s(eci\014ed)i(attributes)h(or)f(to)h(giv)m(e)h(v)-5 -b(ariables)31 b(attributes:)630 5340 y Fs(-a)384 b Ft(Eac)m(h)30 -b Fq(name)k Ft(is)29 b(an)g(arra)m(y)h(v)-5 b(ariable)30 -b(\(see)g(Section)g(6.7)g([Arra)m(ys],)h(page)e(78\).)p -eop end +b(`)p Fs(-F)p Ft(')38 b(implies)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)630 299 y Fs(-f)384 b Ft(Use)31 -b(function)f(names)g(only)-8 b(.)630 455 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 -565 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(76\))h -(is)f(p)s(erformed)e(when)h(the)1110 675 y(v)-5 b(ariable)31 -b(is)g(assigned)f(a)h(v)-5 b(alue.)630 831 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 941 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h(statemen) -m(ts)h(or)f(unset.)630 1097 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 1207 -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 1316 y(has)h(no)g(sp)s -(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 1473 y -Fs(-x)384 b Ft(Mark)30 b(eac)m(h)h Fq(name)k Ft(for)29 +b(Reference)g(Man)m(ual)630 299 y(`)p Fs(-f)p Ft('.)40 +b(The)28 b(follo)m(wing)i(options)f(can)f(b)s(e)g(used)g(to)h(restrict) +g(output)f(to)h(v)-5 b(ariables)30 b(with)e(the)630 408 +y(sp)s(eci\014ed)i(attributes)h(or)f(to)h(giv)m(e)h(v)-5 +b(ariables)31 b(attributes:)630 569 y Fs(-a)384 b Ft(Eac)m(h)30 +b Fq(name)k Ft(is)29 b(an)g(arra)m(y)h(v)-5 b(ariable)30 +b(\(see)g(Section)g(6.7)g([Arra)m(ys],)h(page)e(78\).)630 +729 y Fs(-f)384 b Ft(Use)31 b(function)f(names)g(only)-8 +b(.)630 889 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 999 y(\(see)29 b(Section)f(6.5)h +([Shell)f(Arithmetic],)i(page)e(76\))h(is)f(p)s(erformed)e(when)h(the) +1110 1108 y(v)-5 b(ariable)31 b(is)g(assigned)f(a)h(v)-5 +b(alue.)630 1268 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 1378 y(b)m(y)30 b(subsequen)m(t)g +(assignmen)m(t)h(statemen)m(ts)h(or)f(unset.)630 1538 +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 1648 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 +1757 y(has)h(no)g(sp)s(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 +1917 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 -1583 y(ronmen)m(t.)630 1739 y(Using)e(`)p Fs(+)p Ft(')h(instead)f(of)g +2027 y(ronmen)m(t.)630 2187 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 1849 y(`)p Fs(+a)p Ft(')h(ma)m(y)h(not)f +(the)g(exceptions)h(that)630 2297 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 1958 y(readonly)e(attribute.)41 b(When)30 b(used)f(in)g(a)h +(the)630 2406 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 2068 y(as)24 b(with)g(the)g Fs(local)e +b Ft(lo)s(cal,)630 2516 y(as)24 b(with)g(the)g Fs(local)e Ft(command.)39 b(If)23 b(a)i(v)-5 b(ariable)24 b(name)g(is)g(follo)m(w) m(ed)i(b)m(y)e(=)p Fq(v)-5 b(alue)p Ft(,)25 b(the)f(v)-5 -b(alue)630 2178 y(of)31 b(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g -Fq(v)-5 b(alue)p Ft(.)630 2311 y(The)35 b(return)f(status)i(is)g(zero)g +b(alue)630 2626 y(of)31 b(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g +Fq(v)-5 b(alue)p Ft(.)630 2760 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 2420 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g +(an)f(attempt)630 2870 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 2530 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5 +(assign)630 2980 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 2639 y(arra)m(y)30 b(v)-5 b(ariable)30 +b(alue)42 b(to)h(an)630 3089 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 2749 y([Arra)m(ys],)47 b(page)c(78\),)48 +(\(see)h(Section)f(6.7)630 3199 y([Arra)m(ys],)47 b(page)c(78\),)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 -2859 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g +3308 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 -2968 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g +3418 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 -3078 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g(`)p -Fs(-f)p Ft('.)150 3234 y Fs(echo)870 3367 y(echo)47 b([-neE])f([)p -Fj(arg)57 b Fs(...)o(])630 3500 y Ft(Output)31 b(the)i +3528 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g(`)p +Fs(-f)p Ft('.)150 3688 y Fs(echo)870 3823 y(echo)47 b([-neE])f([)p +Fj(arg)57 b Fs(...)o(])630 3957 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 3610 y(status)40 +(a)h(newline.)47 b(The)32 b(return)630 4067 y(status)40 b(is)g(alw)m(a)m(ys)h(0.)69 b(If)39 b(`)p Fs(-n)p Ft(')h(is)f(sp)s (eci\014ed,)j(the)e(trailing)h(newline)e(is)h(suppressed.)66 -b(If)630 3720 y(the)29 b(`)p Fs(-e)p Ft(')g(option)g(is)h(giv)m(en,)g +b(If)630 4177 y(the)29 b(`)p Fs(-e)p Ft(')g(option)g(is)h(giv)m(en,)g (in)m(terpretation)g(of)g(the)f(follo)m(wing)h(bac)m(kslash-escap)s(ed) -g(c)m(har-)630 3829 y(acters)38 b(is)f(enabled.)60 b(The)36 +g(c)m(har-)630 4286 y(acters)38 b(is)f(enabled.)60 b(The)36 b(`)p Fs(-E)p Ft(')h(option)g(disables)g(the)g(in)m(terpretation)h(of)f -(these)g(escap)s(e)630 3939 y(c)m(haracters,)h(ev)m(en)d(on)g(systems)g +(these)g(escap)s(e)630 4396 y(c)m(haracters,)h(ev)m(en)d(on)g(systems)g (where)f(they)h(are)g(in)m(terpreted)h(b)m(y)e(default.)55 -b(The)34 b Fs(xpg_)630 4048 y(echo)d Ft(shell)h(option)h(ma)m(y)g(b)s +b(The)34 b Fs(xpg_)630 4505 y(echo)d Ft(shell)h(option)h(ma)m(y)g(b)s (e)e(used)h(to)h(dynamically)g(determine)f(whether)f(or)i(not)f -Fs(echo)630 4158 y Ft(expands)39 b(these)i(escap)s(e)g(c)m(haracters)g +Fs(echo)630 4615 y Ft(expands)39 b(these)i(escap)s(e)g(c)m(haracters)g (b)m(y)g(default.)70 b Fs(echo)39 b Ft(do)s(es)h(not)g(in)m(terpret)h -(`)p Fs(--)p Ft(')f(to)630 4268 y(mean)30 b(the)h(end)f(of)g(options.) -630 4401 y Fs(echo)f Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e) -f(sequences:)630 4557 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 -4714 y Fs(\\b)384 b Ft(bac)m(kspace)630 4870 y Fs(\\c)g -Ft(suppress)28 b(trailing)k(newline)630 5027 y Fs(\\e)384 -b Ft(escap)s(e)630 5183 y Fs(\\f)g Ft(form)30 b(feed)630 -5340 y Fs(\\n)384 b Ft(new)30 b(line)p eop end +(`)p Fs(--)p Ft(')f(to)630 4725 y(mean)30 b(the)h(end)f(of)g(options.) +630 4859 y Fs(echo)f Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e) +f(sequences:)630 5020 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 +5180 y Fs(\\b)384 b Ft(bac)m(kspace)630 5340 y Fs(\\c)g +Ft(suppress)28 b(trailing)k(newline)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(\\r)384 -b Ft(carriage)32 b(return)630 459 y Fs(\\t)384 b Ft(horizon)m(tal)32 -b(tab)630 619 y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 -779 y Fs(\\\\)384 b Ft(bac)m(kslash)630 940 y Fs(\\0)p +b(Shell)30 b(Builtin)h(Commands)2069 b(45)630 299 y Fs(\\e)384 +b Ft(escap)s(e)630 462 y Fs(\\f)g Ft(form)30 b(feed)630 +624 y Fs(\\n)384 b Ft(new)30 b(line)630 787 y Fs(\\r)384 +b Ft(carriage)32 b(return)630 950 y Fs(\\t)384 b Ft(horizon)m(tal)32 +b(tab)630 1112 y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 +1275 y Fs(\\\\)384 b Ft(bac)m(kslash)630 1438 y Fs(\\0)p Fj(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 1049 y(three)e(o)s(ctal)g(digits\))630 -1209 y Fs(\\x)p Fj(HH)288 b Ft(the)40 b(eigh)m(t-bit)h(c)m(haracter)g +Ft(\(zero)i(to)1110 1548 y(three)e(o)s(ctal)g(digits\))630 +1710 y Fs(\\x)p Fj(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 1319 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e -(digits\))150 1479 y Fs(enable)870 1614 y(enable)46 b([-a])h([-dnps])f +b(alue)40 b Fq(HH)1110 1820 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e +(digits\))150 1983 y Fs(enable)870 2119 y(enable)46 b([-a])h([-dnps])f ([-f)g Fj(filename)11 b Fs(])45 b([)p Fj(name)57 b Fs(...)o(])630 -1749 y Ft(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56 +2255 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 -1858 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 1968 y(sp)s(ecifying)27 +2364 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 2474 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 2078 y(b)s(efore)32 +(searc)m(hes)h(for)f(builtins)630 2584 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 -2187 y Fq(name)5 b Ft(s)44 b(are)h(enabled.)82 b(F)-8 +2693 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 2297 y Ft(instead)31 b(of)f(the)h(shell)f(builtin)g +(via)h Fs($PATH)630 2803 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 2432 y(If)42 b(the)h(`)p Fs(-p)p Ft(')f(option)h(is)f +Ft('.)630 2939 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 2541 y(builtins)37 b(is)h(prin)m(ted.)63 +(list)g(of)g(shell)630 3049 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 2651 y(shell)33 b(builtins.)46 b(The)32 +(all)h(enabled)630 3158 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 2760 y(whether)c(or)g(not)h(it)g(is)f -(enabled.)630 2895 y(The)40 b(`)p Fs(-f)p Ft(')g(option)g(means)g(to)h +(with)g(an)g(indication)i(of)630 3268 y(whether)c(or)g(not)h(it)g(is)f +(enabled.)630 3404 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 3005 y(ob)5 b(ject)27 b Fq(\014lename)p +Ft(from)40 b(shared)630 3513 y(ob)5 b(ject)27 b Fq(\014lename)p Ft(,)g(on)f(systems)g(that)h(supp)s(ort)d(dynamic)i(loading.)40 -b(The)26 b(`)p Fs(-d)p Ft(')g(option)h(will)630 3114 +b(The)26 b(`)p Fs(-d)p Ft(')g(option)h(will)630 3623 y(delete)32 b(a)e(builtin)g(loaded)h(with)f(`)p Fs(-f)p -Ft('.)630 3249 y(If)h(there)g(are)g(no)g(options,)h(a)f(list)h(of)f +Ft('.)630 3759 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 3359 y(restricts)f Fs(enable)e +b(`)p Fs(-s)p Ft(')f(option)630 3869 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 3469 y(builtin)i(b)s(ecomes)h(a)f(sp)s(ecial)h +Ft(',)h(the)f(new)630 3978 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 -(57\).)630 3603 y(The)26 b(return)f(status)h(is)g(zero)h(unless)e(a)i +(58\).)630 4115 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 3713 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g -(ob)5 b(ject.)150 3873 y Fs(help)870 4008 y(help)47 b([-s])f([)p -Fj(pattern)11 b Fs(])630 4143 y Ft(Displa)m(y)40 b(helpful)e +(error)630 4224 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g +(ob)5 b(ject.)150 4387 y Fs(help)870 4523 y(help)47 b([-dms])f([)p +Fj(pattern)11 b Fs(])630 4659 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 4253 y Fs(help)28 +b Fq(pattern)h Ft(is)g(sp)s(eci\014ed,)630 4769 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 4362 -y(the)36 b(builtins)f(is)h(prin)m(ted.)56 b(The)35 b(`)p -Fs(-s)p Ft(')h(option)g(restricts)g(the)g(information)g(displa)m(y)m -(ed)g(to)630 4472 y(a)c(short)g(usage)h(synopsis.)44 -b(The)32 b(return)f(status)h(is)g(zero)h(unless)e(no)h(command)g(matc)m -(hes)630 4581 y Fq(pattern)p Ft(.)150 4741 y Fs(let)870 -4876 y(let)47 b Fj(expression)55 b Fs([)p Fj(expression)11 -b Fs(])630 5011 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 5121 y Fq(expression)31 +Fq(pattern)p Ft(,)g(otherwise)f(a)g(list)h(of)630 4878 +y(the)h(builtins)e(is)i(prin)m(ted.)630 5015 y(Options,)f(if)h +(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630 +5177 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 5340 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)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 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 455 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 610 +y Fs(let)870 743 y(let)47 b Fj(expression)55 b Fs([)p +Fj(expression)11 b Fs(])630 876 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 985 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 5230 +h(b)s(elo)m(w)f(in)f(Section)i(6.5)g([Shell)630 1095 y(Arithmetic],)51 b(page)46 b(76.)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 5340 y(otherwise)31 b(0)g(is)f(returned.)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)150 299 y Fs(local)870 436 y(local)46 -b([)p Fj(option)11 b Fs(])45 b Fj(name)11 b Fs([=)p Fj(value)g -Fs(])44 b(...)630 573 y Ft(F)-8 b(or)27 b(eac)m(h)g(argumen)m(t,)g(a)f -(lo)s(cal)h(v)-5 b(ariable)27 b(named)e Fq(name)31 b -Ft(is)26 b(created,)i(and)d(assigned)h Fq(v)-5 b(alue)p -Ft(.)630 682 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 792 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 -902 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 1011 -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 1121 y(readonly)30 b(v)-5 -b(ariable.)150 1285 y Fs(logout)870 1422 y(logout)46 -b([)p Fj(n)11 b Fs(])630 1559 y Ft(Exit)31 b(a)g(login)g(shell,)g +b Ft(returns)g(1;)630 1204 y(otherwise)31 b(0)g(is)f(returned.)150 +1360 y Fs(local)870 1493 y(local)46 b([)p Fj(option)11 +b Fs(])45 b Fj(name)11 b Fs([=)p Fj(value)g Fs(])44 b(...)630 +1625 y Ft(F)-8 b(or)27 b(eac)m(h)g(argumen)m(t,)g(a)f(lo)s(cal)h(v)-5 +b(ariable)27 b(named)e Fq(name)31 b Ft(is)26 b(created,)i(and)d +(assigned)h Fq(v)-5 b(alue)p Ft(.)630 1735 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 +1845 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 1954 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 2064 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 2173 y(readonly)30 b(v)-5 +b(ariable.)150 2329 y Fs(logout)870 2462 y(logout)46 +b([)p Fj(n)11 b Fs(])630 2594 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 1724 y Fs(printf)870 1861 y(printf)46 b([-v)h -Fj(var)11 b Fs(])46 b Fj(format)57 b Fs([)p Fj(arguments)11 -b Fs(])630 1998 y Ft(W)-8 b(rite)27 b(the)g(formatted)f +(t.)150 2750 y Fs(mapfile)870 2883 y(mapfile)46 b([-n)h +Fj(count)11 b Fs(])45 b([-O)i Fj(origin)11 b Fs(])46 +b([-s)g Fj(count)11 b Fs(])46 b([-t])h([-u)g Fj(fd)11 +b Fs(])46 b([)870 2992 y(-C)h Fj(callback)11 b Fs(])45 +b([-c)i Fj(quantum)11 b Fs(])45 b([)p Fj(array)11 b Fs(])630 +3125 y Ft(Read)35 b(lines)h(from)f(the)g(standard)g(input)f(in)m(to)i +(arra)m(y)g(v)-5 b(ariable)36 b Fq(arra)m(y)p Ft(,)h(or)f(from)e +(\014le)i(de-)630 3235 y(scriptor)f Fq(fd)j Ft(if)d(the)h(`)p +Fs(-u)p Ft(')f(option)h(is)f(supplied.)54 b(The)35 b(v)-5 +b(ariable)36 b Fs(MAPFILE)d Ft(is)i(the)h(default)630 +3344 y Fq(arra)m(y)p Ft(.)41 b(Options,)30 b(if)h(supplied,)e(ha)m(v)m +(e)j(the)e(follo)m(wing)i(meanings:)630 3500 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 +3656 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 3811 y Fs(-s)384 b Ft(Discard)31 b(the)f(\014rst)g +Fq(coun)m(t)j Ft(lines)e(read.)630 3967 y Fs(-t)384 b +Ft(Remo)m(v)m(e)32 b(a)f(trailing)g(line)g(from)f(eac)m(h)i(line)e +(read.)630 4123 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 +4279 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 4388 y(option)31 b(sp)s(eci\014es)f +Fq(quan)m(tum)p Ft(.)630 4544 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)p Ft(.)630 4700 y(If)f(`)p +Fs(-C)p Ft(')g(is)h(sp)s(eci\014ed)e(without)i(`)p Fs(-c)p +Ft(',)f(the)h(default)f(quan)m(tum)g(is)h(5000.)630 4832 +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 4942 y(to)31 b(it.)630 5075 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 +5184 y(supplied,)29 b(or)i Fq(arra)m(y)38 b Ft(is)31 +b(in)m(v)-5 b(alid)31 b(or)f(unassignable.)150 5340 y +Fs(printf)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)870 299 y Fs(printf)46 +b([-v)h Fj(var)11 b Fs(])46 b Fj(format)57 b Fs([)p Fj(arguments)11 +b Fs(])630 445 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 2107 y Fq(format)p Ft(.)41 b(The)28 +(trol)i(of)e(the)630 555 y Fq(format)p Ft(.)41 b(The)28 b Fq(format)j Ft(is)e(a)g(c)m(haracter)i(string)d(whic)m(h)h(con)m (tains)h(three)f(t)m(yp)s(es)g(of)g(ob)5 b(jects:)630 -2217 y(plain)28 b(c)m(haracters,)j(whic)m(h)d(are)h(simply)f(copied)h +664 y(plain)28 b(c)m(haracters,)j(whic)m(h)d(are)h(simply)f(copied)h (to)h(standard)d(output,)i(c)m(haracter)h(escap)s(e)630 -2326 y(sequences,)g(whic)m(h)f(are)g(con)m(v)m(erted)i(and)d(copied)i -(to)f(the)h(standard)e(output,)h(and)g(format)630 2436 +774 y(sequences,)g(whic)m(h)f(are)g(con)m(v)m(erted)i(and)d(copied)i +(to)f(the)h(standard)e(output,)h(and)g(format)630 883 y(sp)s(eci\014cations,)39 b(eac)m(h)e(of)g(whic)m(h)f(causes)g(prin)m (ting)g(of)h(the)f(next)h(successiv)m(e)g Fq(argumen)m(t)p -Ft(.)630 2545 y(In)31 b(addition)h(to)h(the)e(standard)g +Ft(.)630 993 y(In)31 b(addition)h(to)h(the)e(standard)g Fs(printf\(1\))f Ft(formats,)i(`)p Fs(\045b)p Ft(')g(causes)g -Fs(printf)e Ft(to)j(expand)630 2655 y(bac)m(kslash)39 +Fs(printf)e Ft(to)j(expand)630 1103 y(bac)m(kslash)39 b(escap)s(e)g(sequences)f(in)h(the)f(corresp)s(onding)f Fq(argumen)m(t)p Ft(,)k(\(except)f(that)f(`)p Fs(\\c)p -Ft(')630 2765 y(terminates)44 b(output,)j(bac)m(kslashes)d(in)f(`)p +Ft(')630 1212 y(terminates)44 b(output,)j(bac)m(kslashes)d(in)f(`)p Fs(\\')p Ft(',)k(`)p Fs(\\")p Ft(',)g(and)c(`)p Fs(\\?)p -Ft(')g(are)h(not)g(remo)m(v)m(ed,)k(and)630 2874 y(o)s(ctal)25 +Ft(')g(are)h(not)g(remo)m(v)m(ed,)k(and)630 1322 y(o)s(ctal)25 b(escap)s(es)f(b)s(eginning)f(with)g(`)p Fs(\\0)p Ft(')h(ma)m(y)g(con)m (tain)h(up)e(to)h(four)f(digits\),)j(and)d(`)p Fs(\045q)p -Ft(')h(causes)630 2984 y Fs(printf)31 b Ft(to)i(output)f(the)h(corresp) +Ft(')h(causes)630 1431 y Fs(printf)31 b Ft(to)i(output)f(the)h(corresp) s(onding)f Fq(argumen)m(t)j Ft(in)d(a)h(format)g(that)g(can)g(b)s(e)f -(reused)630 3093 y(as)f(shell)f(input.)630 3230 y(The)24 +(reused)630 1541 y(as)f(shell)f(input.)630 1687 y(The)24 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)f(v)-5 b(ariable)25 b Fq(v)-5 b(ar)32 -b Ft(rather)24 b(than)630 3340 y(b)s(eing)30 b(prin)m(ted)g(to)h(the)g -(standard)e(output.)630 3477 y(The)i Fq(format)i Ft(is)f(reused)e(as)i +b Ft(rather)24 b(than)630 1797 y(b)s(eing)30 b(prin)m(ted)g(to)h(the)g +(standard)e(output.)630 1943 y(The)i Fq(format)i Ft(is)f(reused)e(as)i (necessary)f(to)i(consume)e(all)h(of)f(the)h Fq(argumen)m(ts)p -Ft(.)44 b(If)30 b(the)i Fq(for-)630 3587 y(mat)c Ft(requires)e(more)g +Ft(.)44 b(If)30 b(the)i Fq(for-)630 2052 y(mat)c 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 3696 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g +(sp)s(eci\014cations)630 2162 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 3806 y(return)29 b(v)-5 +s(een)g(supplied.)38 b(The)630 2271 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 -3970 y Fs(read)870 4107 y(read)47 b([-ers])f([-a)h Fj(aname)11 +2454 y Fs(read)870 2600 y(read)47 b([-ers])f([-a)h Fj(aname)11 b Fs(])45 b([-d)i Fj(delim)11 b Fs(])46 b([-i)h Fj(text)11 b Fs(])46 b([-n)g Fj(nchars)11 b Fs(])46 b([-p)h Fj(prompt)11 -b Fs(])45 b([-t)i Fj(time-)870 4217 y(out)11 b Fs(])46 +b Fs(])45 b([-t)i Fj(time-)870 2710 y(out)11 b Fs(])46 b([-u)h Fj(fd)11 b Fs(])46 b([)p Fj(name)57 b Fs(...])630 -4354 y Ft(One)26 b(line)h(is)g(read)f(from)h(the)f(standard)g(input,)h +2856 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 -4463 y(as)37 b(an)g(argumen)m(t)h(to)f(the)h(`)p Fs(-u)p +2966 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 4573 y Fq(name)p Ft(,)29 b(the)f(second)h(w)m(ord)e +(the)h(\014rst)630 3075 y Fq(name)p Ft(,)29 b(the)f(second)h(w)m(ord)e (to)i(the)g(second)f Fq(name)p Ft(,)h(and)e(so)i(on,)g(with)f(lefto)m -(v)m(er)i(w)m(ords)e(and)630 4682 y(their)g(in)m(terv)m(ening)h +(v)m(er)i(w)m(ords)e(and)630 3185 y(their)g(in)m(terv)m(ening)h (separators)g(assigned)f(to)h(the)f(last)h Fq(name)p Ft(.)40 b(If)27 b(there)i(are)f(few)m(er)g(w)m(ords)630 -4792 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 4902 y(empt)m(y)31 +3294 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 3404 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 5011 y(the)37 b(line)h(in)m(to)g(w)m +b(are)g(used)f(to)h(split)630 3513 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 -5121 y(sp)s(ecial)h(meaning)g(for)f(the)g(next)h(c)m(haracter)h(read)e +3623 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 -5230 y(names)28 b(are)h(supplied,)f(the)g(line)h(read)g(is)f(assigned)h +3733 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 5340 y(co)s(de)i(is)f(zero,)i(unless)e(end-of-\014le)h(is) +b(return)630 3842 y(co)s(de)i(is)f(zero,)i(unless)e(end-of-\014le)h(is) f(encoun)m(tered,)h Fs(read)f Ft(times)h(out,)g(or)f(an)h(in)m(v)-5 -b(alid)30 b(\014le)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(descriptor)35 -b(is)h(supplied)e(as)i(the)f(argumen)m(t)h(to)g(`)p Fs(-u)p -Ft('.)56 b(Options,)37 b(if)e(supplied,)h(ha)m(v)m(e)h(the)630 -408 y(follo)m(wing)32 b(meanings:)630 562 y Fs(-a)e Fj(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 671 y Fq(aname)p -Ft(,)29 b(starting)h(at)f(0.)40 b(All)29 b(elemen)m(ts)h(are)e(remo)m -(v)m(ed)i(from)d Fq(aname)34 b Ft(b)s(efore)1110 781 -y(the)d(assignmen)m(t.)41 b(Other)30 b Fq(name)36 b Ft(argumen)m(ts)30 -b(are)h(ignored.)630 934 y Fs(-d)f Fj(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 1044 y(rather)30 -b(than)g(newline.)630 1198 y Fs(-e)384 b Ft(Readline)28 -b(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)i(page)f(91\))h(is) -f(used)1110 1307 y(to)j(obtain)g(the)g(line.)630 1461 -y Fs(-i)f Fj(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 1570 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.) -630 1724 y Fs(-n)f Fj(nchars)1110 1833 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 1943 y(for)30 b(a)h(complete)h(line)e -(of)h(input.)630 2096 y Fs(-p)f Fj(prompt)1110 2206 y -Ft(Displa)m(y)38 b Fq(prompt)p Ft(,)g(without)e(a)h(trailing)h -(newline,)h(b)s(efore)d(attempting)i(to)1110 2315 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 2425 y(from)30 b(a)h(terminal.)630 -2578 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 2688 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 -2798 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 2951 y Fs(-s)384 +b(alid)30 b(\014le)630 3952 y(descriptor)35 b(is)h(supplied)e(as)i(the) +f(argumen)m(t)h(to)g(`)p Fs(-u)p Ft('.)56 b(Options,)37 +b(if)e(supplied,)h(ha)m(v)m(e)h(the)630 4061 y(follo)m(wing)32 +b(meanings:)630 4244 y Fs(-a)e Fj(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 4354 y Fq(aname)p Ft(,)29 +b(starting)h(at)f(0.)40 b(All)29 b(elemen)m(ts)h(are)e(remo)m(v)m(ed)i +(from)d Fq(aname)34 b Ft(b)s(efore)1110 4463 y(the)d(assignmen)m(t.)41 +b(Other)30 b Fq(name)36 b Ft(argumen)m(ts)30 b(are)h(ignored.)630 +4646 y Fs(-d)f Fj(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 +4755 y(rather)30 b(than)g(newline.)630 4938 y Fs(-e)384 +b Ft(Readline)28 b(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)i +(page)f(91\))h(is)f(used)1110 5048 y(to)j(obtain)g(the)g(line.)630 +5230 y Fs(-i)f Fj(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 5340 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s +(egins.)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(-n)f Fj(nchars)1110 +408 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 518 +y(for)30 b(a)h(complete)h(line)e(of)h(input.)630 682 +y Fs(-p)f Fj(prompt)1110 792 y Ft(Displa)m(y)38 b Fq(prompt)p +Ft(,)g(without)e(a)h(trailing)h(newline,)h(b)s(efore)d(attempting)i(to) +1110 902 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 1011 y(from)30 +b(a)h(terminal.)630 1176 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 1285 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 +1395 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 1559 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 3061 -y(ec)m(ho)s(ed.)630 3214 y Fs(-t)i Fj(timeout)1110 3324 -y Ft(Cause)42 b Fs(read)g Ft(to)h(time)h(out)f(and)f(return)f(failure)i -(if)g(a)g(complete)h(line)f(of)1110 3433 y(input)26 b(is)h(not)h(read)f -(within)f Fq(timeout)k Ft(seconds.)40 b(This)26 b(option)i(has)e(no)h -(e\013ect)1110 3543 y(if)j Fs(read)g Ft(is)g(not)h(reading)f(input)f -(from)h(the)h(terminal)g(or)f(a)h(pip)s(e.)630 3696 y -Fs(-u)f Fj(fd)258 b Ft(Read)31 b(input)e(from)h(\014le)g(descriptor)h -Fq(fd)p Ft(.)150 3850 y Fs(source)870 3981 y(source)46 -b Fj(filename)630 4113 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 -(35\).)150 4266 y Fs(type)870 4398 y(type)47 b([-afptP])e([)p -Fj(name)57 b Fs(...)o(])630 4529 y Ft(F)-8 b(or)42 b(eac)m(h)g -Fq(name)p Ft(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m -(terpreted)g(if)g(used)f(as)i(a)f(command)630 4639 y(name.)630 -4770 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 4880 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 4989 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 5099 -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 5230 -y(If)39 b(the)g(`)p Fs(-p)p Ft(')g(option)h(is)f(used,)i +(a)h(terminal,)h(c)m(haracters)g(are)f(not)1110 1669 +y(ec)m(ho)s(ed.)630 1833 y Fs(-t)i Fj(timeout)1110 1943 +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 2052 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 +2162 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 +2271 y(option)31 b(has)f(no)g(e\013ect)i(if)f Fs(read)e +Ft(is)h(not)h(reading)f(input)g(from)g(the)g(terminal)1110 +2381 y(or)g(a)h(pip)s(e.)630 2545 y Fs(-u)f Fj(fd)258 +b Ft(Read)31 b(input)e(from)h(\014le)g(descriptor)h Fq(fd)p +Ft(.)150 2710 y Fs(source)870 2847 y(source)46 b Fj(filename)630 +2984 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(35\).)150 3148 +y Fs(type)870 3285 y(type)47 b([-afptP])e([)p Fj(name)57 +b Fs(...)o(])630 3422 y Ft(F)-8 b(or)42 b(eac)m(h)g Fq(name)p +Ft(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m(terpreted)g(if) +g(used)f(as)i(a)f(command)630 3532 y(name.)630 3669 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 3778 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 +3888 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 3998 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 +4134 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 5340 y(w)m(ould)30 b(b)s(e)g(executed,)h(or)g(nothing)f(if)g +(that)630 4244 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('.)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(The)23 b(`)p Fs(-P)p -Ft(')h(option)g(forces)g(a)g(path)g(searc)m(h)g(for)g(eac)m(h)g -Fq(name)p Ft(,)i(ev)m(en)e(if)g(`)p Fs(-t)p Ft(')g(w)m(ould)f(not)h -(return)630 408 y(`)p Fs(file)p Ft('.)630 542 y(If)34 -b(a)i(command)e(is)h(hashed,)g(`)p Fs(-p)p Ft(')g(and)f(`)p -Fs(-P)p Ft(')h(prin)m(t)f(the)h(hashed)f(v)-5 b(alue,)37 -b(not)e(necessarily)630 651 y(the)c(\014le)f(that)h(app)s(ears)f -(\014rst)f(in)h Fs($PATH)p Ft(.)630 785 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 894 -y(cutable)d(named)f Fq(\014le)p Ft(.)50 b(This)33 b(includes)g(aliases) -i(and)e(functions,)h(if)f(and)g(only)h(if)f(the)h(`)p -Fs(-p)p Ft(')630 1004 y(option)d(is)f(not)h(also)g(used.)630 -1137 y(If)26 b(the)h(`)p Fs(-f)p Ft(')g(option)g(is)g(used,)g +Ft('.)630 4381 y(The)23 b(`)p Fs(-P)p Ft(')h(option)g(forces)g(a)g +(path)g(searc)m(h)g(for)g(eac)m(h)g Fq(name)p Ft(,)i(ev)m(en)e(if)g(`)p +Fs(-t)p Ft(')g(w)m(ould)f(not)h(return)630 4491 y(`)p +Fs(file)p Ft('.)630 4628 y(If)34 b(a)i(command)e(is)h(hashed,)g(`)p +Fs(-p)p Ft(')g(and)f(`)p Fs(-P)p Ft(')h(prin)m(t)f(the)h(hashed)f(v)-5 +b(alue,)37 b(not)e(necessarily)630 4737 y(the)c(\014le)f(that)h(app)s +(ears)f(\014rst)f(in)h Fs($PATH)p Ft(.)630 4874 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 4984 y(cutable)d(named)f Fq(\014le)p Ft(.)50 b(This)33 +b(includes)g(aliases)i(and)e(functions,)h(if)f(and)g(only)h(if)f(the)h +(`)p Fs(-p)p Ft(')630 5093 y(option)d(is)f(not)h(also)g(used.)630 +5230 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 1247 y(the)k Fs(command)d -Ft(builtin.)630 1380 y(The)35 b(return)g(status)h(is)g(zero)g(if)g(an)m -(y)g(of)g(the)g Fq(names)k Ft(are)c(found,)g(non-zero)g(if)g(none)g -(are)630 1490 y(found.)150 1647 y Fs(typeset)870 1781 -y(typeset)46 b([-afFrxi])f([-p])i([)p Fj(name)11 b Fs([=)p -Fj(value)g Fs(])43 b(...)o(])630 1914 y Ft(The)29 b Fs(typeset)f +(functions,)g(as)g(with)630 5340 y(the)k Fs(command)d +Ft(builtin.)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(The)31 +b(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 +408 y(found.)150 569 y Fs(typeset)870 704 y(typeset)46 +b([-afFrxi])f([-p])i([)p Fj(name)11 b Fs([=)p Fj(value)g +Fs(])43 b(...)o(])630 838 y Ft(The)29 b Fs(typeset)f Ft(command)h(is)g(supplied)g(for)g(compatibilit)m(y)j(with)d(the)h -(Korn)e(shell;)j(ho)m(w-)630 2024 y(ev)m(er,)g(it)g(has)f(b)s(een)g +(Korn)e(shell;)j(ho)m(w-)630 948 y(ev)m(er,)g(it)g(has)f(b)s(een)g (deprecated)h(in)f(fa)m(v)m(or)i(of)e(the)h Fs(declare)d -Ft(builtin)i(command.)150 2181 y Fs(ulimit)870 2314 y(ulimit)46 +Ft(builtin)i(command.)150 1108 y Fs(ulimit)870 1243 y(ulimit)46 b([-abcdefilmnpqrstuvxHST])41 b([)p Fj(limit)11 b Fs(])630 -2448 y(ulimit)25 b Ft(pro)m(vides)h(con)m(trol)i(o)m(v)m(er)g(the)f +1378 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 2557 y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc)m(h)e +(y)g(the)630 1487 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 2667 y(as)i(follo)m(ws:)630 2824 y Fs(-S)384 +(terpreted)630 1597 y(as)i(follo)m(ws:)630 1757 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 2981 y Fs(-H)384 b Ft(Change)30 +(with)e(a)h(resource.)630 1917 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 3139 y Fs(-a)384 b Ft(All)31 b(curren)m(t)f(limits)h -(are)g(rep)s(orted.)630 3296 y Fs(-b)384 b Ft(The)30 +(resource.)630 2078 y Fs(-a)384 b Ft(All)31 b(curren)m(t)f(limits)h +(are)g(rep)s(orted.)630 2238 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 -3453 y Fs(-c)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g(core)g(\014les) -f(created.)630 3610 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 3768 y Fs(-e)384 +2398 y Fs(-c)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g(core)g(\014les) +f(created.)630 2558 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 2718 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 3925 y Fs(-f)384 b +Fs(")p Ft(nice)p Fs(")p Ft(\).)630 2878 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 4082 y Fs(-i)384 +(shell)h(and)f(its)h(c)m(hildren.)630 3039 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 4239 y Fs(-l)384 b Ft(The)30 b(maxim)m(um)g(size)h(that)g +(signals.)630 3199 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 4397 y Fs(-m)384 b Ft(The)30 b(maxim)m(um)g(residen)m(t)h(set)g -(size.)630 4554 y Fs(-n)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er) -f(of)i(op)s(en)e(\014le)i(descriptors.)630 4711 y Fs(-p)384 -b Ft(The)30 b(pip)s(e)f(bu\013er)h(size.)630 4868 y Fs(-q)384 +b(.)630 3359 y Fs(-m)384 b Ft(The)30 b(maxim)m(um)g(residen)m(t)h(set)g +(size.)630 3519 y Fs(-n)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er) +f(of)i(op)s(en)e(\014le)i(descriptors.)630 3679 y Fs(-p)384 +b Ft(The)30 b(pip)s(e)f(bu\013er)h(size.)630 3839 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 5026 y Fs(-r)384 b Ft(The)30 +(POSIX)f(message)j(queues.)630 4000 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 5183 y Fs(-s)384 b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.) -630 5340 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.)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(-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 464 y Fs(-v)384 +b(.)630 4160 y Fs(-s)384 b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.) +630 4320 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 4480 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 4640 y Fs(-v)384 b Ft(The)29 b(maxim)m(um)h(amoun)m(t)g(of)g(virtual)g(memory)g(a)m(v)-5 -b(ailable)32 b(to)e(the)g(pro)s(cess.)630 629 y Fs(-x)384 +b(ailable)32 b(to)e(the)g(pro)s(cess.)630 4800 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 794 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 959 y(If)i Fq(limit)j Ft(is)e(giv)m(en,)h(it)f(is)g +(ks.)630 4961 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 5121 y(If)i Fq(limit)j Ft(is)e(giv)m(en,)h(it)f(is)g (the)g(new)f(v)-5 b(alue)34 b(of)f(the)h(sp)s(eci\014ed)f(resource;)i -(the)f(sp)s(ecial)g Fq(limit)630 1069 y Ft(v)-5 b(alues)27 +(the)f(sp)s(ecial)g Fq(limit)630 5230 y Ft(v)-5 b(alues)27 b Fs(hard)p Ft(,)g Fs(soft)p Ft(,)g(and)g Fs(unlimited)d Ft(stand)j(for)g(the)g(curren)m(t)g(hard)f(limit,)j(the)e(curren)m(t) -630 1178 y(soft)38 b(limit,)j(and)d(no)f(limit,)k(resp)s(ectiv)m(ely)-8 -b(.)66 b(A)38 b(hard)f(limit)h(cannot)h(b)s(e)e(increased)i(b)m(y)f(a) -630 1288 y(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)k(a)c(soft)g -(limit)h(ma)m(y)g(b)s(e)e(increased)h(up)f(to)i(the)f(v)-5 -b(alue)38 b(of)630 1398 y(the)c(hard)f(limit.)51 b(Otherwise,)35 -b(the)f(curren)m(t)f(v)-5 b(alue)35 b(of)f(the)f(soft)i(limit)f(for)g -(the)g(sp)s(eci\014ed)630 1507 y(resource)27 b(is)h(prin)m(ted,)f -(unless)g(the)g(`)p Fs(-H)p Ft(')g(option)h(is)f(supplied.)38 -b(When)27 b(setting)h(new)f(limits,)630 1617 y(if)40 -b(neither)f(`)p Fs(-H)p Ft(')h(nor)f(`)p Fs(-S)p Ft(')h(is)f(supplied,) -i(b)s(oth)e(the)h(hard)f(and)g(soft)h(limits)g(are)g(set.)69 -b(If)630 1726 y(no)35 b(option)h(is)f(giv)m(en,)j(then)d(`)p -Fs(-f)p Ft(')g(is)g(assumed.)55 b(V)-8 b(alues)36 b(are)f(in)g(1024-b)m -(yte)j(incremen)m(ts,)630 1836 y(except)d(for)f(`)p Fs(-t)p -Ft(',)g(whic)m(h)g(is)g(in)g(seconds,)h(`)p Fs(-p)p Ft(',)g(whic)m(h)e -(is)h(in)g(units)f(of)h(512-b)m(yte)i(blo)s(c)m(ks,)630 -1946 y(and)30 b(`)p Fs(-n)p Ft(')g(and)g(`)p Fs(-u)p +630 5340 y(soft)38 b(limit,)j(and)d(no)f(limit,)k(resp)s(ectiv)m(ely)-8 +b(.)66 b(A)38 b(hard)f(limit)h(cannot)h(b)s(e)e(increased)i(b)m(y)f(a)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(non-ro)s(ot)37 b(user)f(once)i(it)g +(is)f(set;)k(a)c(soft)g(limit)h(ma)m(y)g(b)s(e)e(increased)h(up)f(to)i +(the)f(v)-5 b(alue)38 b(of)630 408 y(the)c(hard)f(limit.)51 +b(Otherwise,)35 b(the)f(curren)m(t)f(v)-5 b(alue)35 b(of)f(the)f(soft)i +(limit)f(for)g(the)g(sp)s(eci\014ed)630 518 y(resource)27 +b(is)h(prin)m(ted,)f(unless)g(the)g(`)p Fs(-H)p Ft(')g(option)h(is)f +(supplied.)38 b(When)27 b(setting)h(new)f(limits,)630 +628 y(if)40 b(neither)f(`)p Fs(-H)p Ft(')h(nor)f(`)p +Fs(-S)p Ft(')h(is)f(supplied,)i(b)s(oth)e(the)h(hard)f(and)g(soft)h +(limits)g(are)g(set.)69 b(If)630 737 y(no)35 b(option)h(is)f(giv)m(en,) +j(then)d(`)p Fs(-f)p Ft(')g(is)g(assumed.)55 b(V)-8 b(alues)36 +b(are)f(in)g(1024-b)m(yte)j(incremen)m(ts,)630 847 y(except)d(for)f(`)p +Fs(-t)p Ft(',)g(whic)m(h)g(is)g(in)g(seconds,)h(`)p Fs(-p)p +Ft(',)g(whic)m(h)e(is)h(in)g(units)f(of)h(512-b)m(yte)i(blo)s(c)m(ks,) +630 956 y(and)30 b(`)p Fs(-n)p Ft(')g(and)g(`)p Fs(-u)p Ft(',)g(whic)m(h)g(are)h(unscaled)f(v)-5 b(alues.)630 -2083 y(The)34 b(return)g(status)h(is)f(zero)i(unless)e(an)g(in)m(v)-5 +1090 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 -2193 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f(limit.) -150 2358 y Fs(unalias)870 2495 y(unalias)46 b([-a])g([)p -Fj(name)57 b Fs(...)47 b(])630 2632 y Ft(Remo)m(v)m(e)39 +1199 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f(limit.) +150 1356 y Fs(unalias)870 1489 y(unalias)46 b([-a])g([)p +Fj(name)57 b Fs(...)47 b(])630 1623 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 -2742 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(77.)150 3014 y Fr(4.3)68 -b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 3359 y Fk(4.3.1)63 -b(The)41 b(Set)g(Builtin)275 3609 y Ft(This)27 b(builtin)h(is)h(so)f +1732 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(77.)150 1986 y Fr(4.3)68 +b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 2316 y Fk(4.3.1)63 +b(The)41 b(Set)g(Builtin)275 2559 y Ft(This)27 b(builtin)h(is)h(so)f (complicated)i(that)f(it)g(deserv)m(es)g(its)g(o)m(wn)f(section.)42 b Fs(set)27 b Ft(allo)m(ws)j(y)m(ou)f(to)g(c)m(hange)150 -3718 y(the)k(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f +2669 y(the)k(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 3828 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150 -3996 y Fs(set)870 4133 y(set)47 b([--abefhkmnptuvxBCEHPT])41 +(and)150 2778 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150 +2935 y Fs(set)870 3068 y(set)47 b([--abefhkmnptuvxBCEHPT])41 b([-o)47 b Fj(option)11 b Fs(])46 b([)p Fj(argument)55 -b Fs(...])870 4243 y(set)47 b([+abefhkmnptuvxBCEHPT])42 +b Fs(...])870 3178 y(set)47 b([+abefhkmnptuvxBCEHPT])42 b([+o)47 b Fj(option)11 b Fs(])45 b([)p Fj(argument)56 -b Fs(...)o(])630 4380 y Ft(If)22 b(no)h(options)g(or)g(argumen)m(ts)g +b Fs(...)o(])630 3311 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 4490 y(shell)j(v)-5 b(ariables)27 +b(alues)23 b(of)g(all)630 3421 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 4599 y(that)i(ma)m(y)h(b)s(e)e(reused)g +(cale,)k(in)c(a)i(format)630 3530 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 4709 y(Read-only)37 b(v)-5 b(ariables)37 +(v)-5 b(ariables.)630 3640 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 4818 y(listed.)630 -4956 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 3750 y(listed.)630 +3883 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 -5065 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630 -5230 y Fs(-a)384 b Ft(Mark)32 b(v)-5 b(ariables)33 b(and)e(function)h +3992 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630 +4149 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 -5340 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f -(commands.)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(-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 408 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 -566 y Fs(-e)384 b Ft(Exit)37 b(immediately)h(if)e(a)h(simple)f(command) -g(\(see)i(Section)f(3.2.1)h([Simple)1110 676 y(Commands],)31 +4259 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f +(commands.)630 4416 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 +4525 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 4682 y Fs(-e)384 +b Ft(Exit)37 b(immediately)h(if)e(a)h(simple)f(command)g(\(see)i +(Section)f(3.2.1)h([Simple)1110 4792 y(Commands],)31 b(page)i(8\))f(exits)g(with)g(a)g(non-zero)g(status,)g(unless)f(the)h -(com-)1110 785 y(mand)f(that)h(fails)h(is)f(part)f(of)h(the)g(command)g -(list)g(immediately)h(follo)m(wing)1110 895 y(a)41 b -Fs(while)d Ft(or)j Fs(until)e Ft(k)m(eyw)m(ord,)k(part)d(of)g(the)h -(test)g(in)f(an)g Fs(if)g Ft(statemen)m(t,)1110 1004 +(com-)1110 4902 y(mand)f(that)h(fails)h(is)f(part)f(of)h(the)g(command) +g(list)g(immediately)h(follo)m(wing)1110 5011 y(a)41 +b Fs(while)d Ft(or)j Fs(until)e Ft(k)m(eyw)m(ord,)k(part)d(of)g(the)h +(test)g(in)f(an)g Fs(if)g Ft(statemen)m(t,)1110 5121 y(part)33 b(of)h(a)g(command)f(executed)i(in)e(a)h Fs(&&)f Ft(or)g Fs(||b)g Ft(list,)i(an)m(y)f(command)f(in)1110 -1114 y(a)g(pip)s(eline)e(but)h(the)g(last,)i(or)f(if)f(the)g(command's) -g(return)f(status)i(is)f(b)s(eing)1110 1224 y(in)m(v)m(erted)38 +5230 y(a)g(pip)s(eline)e(but)h(the)g(last,)i(or)f(if)f(the)g(command's) +g(return)f(status)i(is)f(b)s(eing)1110 5340 y(in)m(v)m(erted)38 b(using)e Fs(!)p Ft(.)60 b(F)-8 b(ailing)39 b(simple)e(commands)f(that) -i(are)f(part)g(of)g(shell)1110 1333 y(functions)e(or)g(command)g(lists) -h(enclosed)g(in)f(braces)g(or)h(paren)m(theses)f(sat-)1110 -1443 y(isfying)d(the)f(ab)s(o)m(v)m(e)i(conditions)f(do)g(not)f(cause)h -(the)g(shell)g(to)g(exit.)45 b(A)32 b(trap)1110 1552 -y(on)e Fs(ERR)p Ft(,)g(if)g(set,)i(is)e(executed)h(b)s(efore)f(the)h -(shell)f(exits.)630 1710 y Fs(-f)384 b Ft(Disable)31 -b(\014le)g(name)f(generation)i(\(globbing\).)630 1867 +i(are)f(part)g(of)g(shell)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)1110 299 y(functions)35 +b(or)g(command)g(lists)h(enclosed)g(in)f(braces)g(or)h(paren)m(theses)f +(sat-)1110 408 y(isfying)d(the)f(ab)s(o)m(v)m(e)i(conditions)f(do)g +(not)f(cause)h(the)g(shell)g(to)g(exit.)45 b(A)32 b(trap)1110 +518 y(on)e Fs(ERR)p Ft(,)g(if)g(set,)i(is)e(executed)h(b)s(efore)f(the) +h(shell)f(exits.)630 677 y Fs(-f)384 b Ft(Disable)31 +b(\014le)g(name)f(generation)i(\(globbing\).)630 836 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 -1977 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g -(default.)630 2134 y Fs(-k)384 b Ft(All)34 b(argumen)m(ts)g(in)f(the)h +945 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g +(default.)630 1104 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 -2244 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 2354 y(command)30 -b(name.)630 2511 y Fs(-m)384 b Ft(Job)30 b(con)m(trol)i(is)e(enabled)h +1214 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 1324 y(command)30 +b(name.)630 1482 y Fs(-m)384 b Ft(Job)30 b(con)m(trol)i(is)e(enabled)h (\(see)g(Chapter)f(7)g([Job)h(Con)m(trol],)g(page)g(87\).)630 -2669 y Fs(-n)384 b Ft(Read)21 b(commands)f(but)g(do)h(not)g(execute)h +1641 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 -2778 y(a)42 b(script)g(for)g(syn)m(tax)g(errors.)75 b(This)41 +1751 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 -2888 y(shells.)630 3045 y Fs(-o)30 b Fj(option-name)1110 -3155 y Ft(Set)h(the)f(option)h(corresp)s(onding)e(to)i -Fq(option-name)5 b Ft(:)1110 3313 y Fs(allexport)1590 -3422 y Ft(Same)30 b(as)h Fs(-a)p Ft(.)1110 3580 y Fs(braceexpand)1590 -3689 y Ft(Same)f(as)h Fs(-B)p Ft(.)1110 3847 y Fs(emacs)240 +1861 y(shells.)630 2019 y Fs(-o)30 b Fj(option-name)1110 +2129 y Ft(Set)h(the)f(option)h(corresp)s(onding)e(to)i +Fq(option-name)5 b Ft(:)1110 2288 y Fs(allexport)1590 +2398 y Ft(Same)30 b(as)h Fs(-a)p Ft(.)1110 2556 y Fs(braceexpand)1590 +2666 y Ft(Same)f(as)h Fs(-B)p Ft(.)1110 2825 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 3956 y([Command)30 -b(Line)g(Editing],)h(page)g(91\).)1110 4114 y Fs(errexit)144 -b Ft(Same)30 b(as)h Fs(-e)p Ft(.)1110 4271 y Fs(errtrace)96 -b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110 4429 y Fs(functrace)1590 -4539 y Ft(Same)f(as)h Fs(-T)p Ft(.)1110 4696 y Fs(hashall)144 -b Ft(Same)30 b(as)h Fs(-h)p Ft(.)1110 4854 y Fs(histexpand)1590 -4963 y Ft(Same)f(as)h Fs(-H)p Ft(.)1110 5121 y Fs(history)144 +(terface)h(\(see)g(Chapter)e(8)1590 2934 y([Command)30 +b(Line)g(Editing],)h(page)g(91\).)1110 3093 y Fs(errexit)144 +b Ft(Same)30 b(as)h Fs(-e)p Ft(.)1110 3252 y Fs(errtrace)96 +b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110 3411 y Fs(functrace)1590 +3521 y Ft(Same)f(as)h Fs(-T)p Ft(.)1110 3680 y Fs(hashall)144 +b Ft(Same)30 b(as)h Fs(-h)p Ft(.)1110 3839 y Fs(histexpand)1590 +3948 y Ft(Same)f(as)h Fs(-H)p Ft(.)1110 4107 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(117.)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: 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)1110 299 y -Fs(ignoreeof)1590 408 y Ft(An)30 b(in)m(teractiv)m(e)j(shell)e(will)g -(not)f(exit)h(up)s(on)e(reading)i(EOF.)1110 558 y Fs(keyword)144 -b Ft(Same)30 b(as)h Fs(-k)p Ft(.)1110 708 y Fs(monitor)144 -b Ft(Same)30 b(as)h Fs(-m)p Ft(.)1110 858 y Fs(noclobber)1590 -968 y Ft(Same)f(as)h Fs(-C)p Ft(.)1110 1118 y Fs(noexec)192 -b Ft(Same)30 b(as)h Fs(-n)p Ft(.)1110 1268 y Fs(noglob)192 -b Ft(Same)30 b(as)h Fs(-f)p Ft(.)1110 1418 y Fs(nolog)240 -b Ft(Curren)m(tly)30 b(ignored.)1110 1568 y Fs(notify)192 -b Ft(Same)30 b(as)h Fs(-b)p Ft(.)1110 1718 y Fs(nounset)144 -b Ft(Same)30 b(as)h Fs(-u)p Ft(.)1110 1868 y Fs(onecmd)192 -b Ft(Same)30 b(as)h Fs(-t)p Ft(.)1110 2018 y Fs(physical)96 -b Ft(Same)30 b(as)h Fs(-P)p Ft(.)1110 2168 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 2277 y(the)33 -b(last)h(\(righ)m(tmost\))h(command)e(to)h(exit)g(with)f(a)g(non-zero) -1590 2387 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 2496 y(cessfully)-8 b(.)41 +(Section)h(9.1)1590 4217 y([Bash)d(History)g(F)-8 b(acilities],)41 +b(page)c(119.)60 b(This)36 b(option)h(is)f(on)1590 4326 +y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110 +4485 y Fs(ignoreeof)1590 4595 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 4754 +y Fs(keyword)144 b Ft(Same)30 b(as)h Fs(-k)p Ft(.)1110 +4913 y Fs(monitor)144 b Ft(Same)30 b(as)h Fs(-m)p Ft(.)1110 +5071 y Fs(noclobber)1590 5181 y Ft(Same)f(as)h Fs(-C)p +Ft(.)1110 5340 y Fs(noexec)192 b Ft(Same)30 b(as)h Fs(-n)p +Ft(.)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)1110 299 y Fs(noglob)192 b Ft(Same)30 +b(as)h Fs(-f)p Ft(.)1110 456 y Fs(nolog)240 b Ft(Curren)m(tly)30 +b(ignored.)1110 614 y Fs(notify)192 b Ft(Same)30 b(as)h +Fs(-b)p Ft(.)1110 771 y Fs(nounset)144 b Ft(Same)30 b(as)h +Fs(-u)p Ft(.)1110 929 y Fs(onecmd)192 b Ft(Same)30 b(as)h +Fs(-t)p Ft(.)1110 1087 y Fs(physical)96 b Ft(Same)30 +b(as)h Fs(-P)p Ft(.)1110 1244 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 1354 y(the)33 b(last)h(\(righ)m +(tmost\))h(command)e(to)h(exit)g(with)f(a)g(non-zero)1590 +1463 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 1573 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h(default.)1110 -2646 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 2756 y(tion)25 +1730 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 1840 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 2866 y(dard)32 b(\(see)i(Section)g(6.11)h([Bash)e -(POSIX)f(Mo)s(de],)j(page)e(82\).)1590 2975 y(This)k(is)g(in)m(tended)g +(the)f(stan-)1590 1950 y(dard)32 b(\(see)i(Section)g(6.11)h([Bash)e +(POSIX)f(Mo)s(de],)j(page)e(82\).)1590 2059 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 -3085 y(p)s(erset)30 b(of)h(that)f(standard.)1110 3235 -y Fs(privileged)1590 3344 y Ft(Same)g(as)h Fs(-p)p Ft(.)1110 -3494 y Fs(verbose)144 b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110 -3644 y Fs(vi)384 b Ft(Use)31 b(a)g Fs(vi)p Ft(-st)m(yle)g(line)g -(editing)g(in)m(terface.)1110 3794 y Fs(xtrace)192 b -Ft(Same)30 b(as)h Fs(-x)p Ft(.)630 3944 y Fs(-p)384 b +2169 y(p)s(erset)30 b(of)h(that)f(standard.)1110 2326 +y Fs(privileged)1590 2436 y Ft(Same)g(as)h Fs(-p)p Ft(.)1110 +2593 y Fs(verbose)144 b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110 +2751 y Fs(vi)384 b Ft(Use)31 b(a)g Fs(vi)p Ft(-st)m(yle)g(line)g +(editing)g(in)m(terface.)1110 2908 y Fs(xtrace)192 b +Ft(Same)30 b(as)h Fs(-x)p Ft(.)630 3066 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 -4054 y Ft(\014les)k(are)h(not)g(pro)s(cessed,)h(shell)f(functions)f -(are)h(not)f(inherited)h(from)f(the)1110 4163 y(en)m(vironmen)m(t,)f +3176 y Ft(\014les)k(are)h(not)g(pro)s(cessed,)h(shell)f(functions)f +(are)h(not)f(inherited)h(from)f(the)1110 3285 y(en)m(vironmen)m(t,)f (and)d(the)h Fs(SHELLOPTS)e Ft(v)-5 b(ariable,)35 b(if)f(it)h(app)s -(ears)e(in)h(the)g(en-)1110 4273 y(vironmen)m(t,)d(is)f(ignored.)41 +(ears)e(in)h(the)g(en-)1110 3395 y(vironmen)m(t,)d(is)f(ignored.)41 b(If)29 b(the)i(shell)f(is)g(started)h(with)f(the)g(e\013ectiv)m(e)j -(user)1110 4383 y(\(group\))d(id)g(not)g(equal)h(to)f(the)g(real)h +(user)1110 3504 y(\(group\))d(id)g(not)g(equal)h(to)f(the)g(real)h (user)e(\(group\))i(id,)f(and)f(the)h Fs(-p)f Ft(option)1110 -4492 y(is)40 b(not)g(supplied,)i(these)e(actions)i(are)e(tak)m(en)h -(and)f(the)g(e\013ectiv)m(e)j(user)c(id)1110 4602 y(is)d(set)h(to)h +3614 y(is)40 b(not)g(supplied,)i(these)e(actions)i(are)e(tak)m(en)h +(and)f(the)g(e\013ectiv)m(e)j(user)c(id)1110 3724 y(is)d(set)h(to)h (the)e(real)h(user)f(id.)58 b(If)36 b(the)h Fs(-p)f Ft(option)g(is)h -(supplied)e(at)i(startup,)1110 4711 y(the)29 b(e\013ectiv)m(e)j(user)d +(supplied)e(at)i(startup,)1110 3833 y(the)29 b(e\013ectiv)m(e)j(user)d (id)g(is)g(not)h(reset.)40 b(T)-8 b(urning)29 b(this)g(option)g(o\013)h -(causes)g(the)1110 4821 y(e\013ectiv)m(e)e(user)d(and)g(group)g(ids)h +(causes)g(the)1110 3943 y(e\013ectiv)m(e)e(user)d(and)g(group)g(ids)h (to)g(b)s(e)f(set)h(to)h(the)f(real)g(user)f(and)g(group)g(ids.)630 -4971 y Fs(-t)384 b Ft(Exit)31 b(after)g(reading)f(and)g(executing)h -(one)g(command.)630 5121 y Fs(-u)384 b Ft(T)-8 b(reat)38 +4100 y Fs(-t)384 b Ft(Exit)31 b(after)g(reading)f(and)g(executing)h +(one)g(command.)630 4258 y Fs(-u)384 b Ft(T)-8 b(reat)38 b(unset)e(v)-5 b(ariables)37 b(as)h(an)e(error)h(when)e(p)s(erforming)h -(parameter)h(ex-)1110 5230 y(pansion.)58 b(An)36 b(error)f(message)j +(parameter)h(ex-)1110 4367 y(pansion.)58 b(An)36 b(error)f(message)j (will)e(b)s(e)g(written)g(to)h(the)g(standard)e(error,)1110 -5340 y(and)30 b(a)h(non-in)m(teractiv)m(e)i(shell)d(will)h(exit.)p +4477 y(and)30 b(a)h(non-in)m(teractiv)m(e)i(shell)d(will)h(exit.)630 +4634 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 4792 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 4902 y Fs(select)29 b Ft(commands,)j(and)e +(arithmetic)j Fs(for)d Ft(commands)h(and)f(their)i(argu-)1110 +5011 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 5121 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 5230 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 5340 y(argumen)m(ts.)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(-v)384 b Ft(Prin)m(t)30 -b(shell)h(input)e(lines)i(as)g(they)f(are)h(read.)630 -458 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 -568 y Fs(select)29 b Ft(commands,)j(and)e(arithmetic)j -Fs(for)d Ft(commands)h(and)f(their)i(argu-)1110 677 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 787 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 897 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 1006 y(argumen)m(ts.)630 1166 y Fs(-B)384 +%%Page: 53 59 +TeXDict begin 53 58 bop 150 -116 a Ft(Chapter)30 b(4:)41 +b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y Fs(-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 1275 y(Expansion],)30 -b(page)h(17\).)42 b(This)30 b(option)h(is)f(on)g(b)m(y)h(default.)630 -1435 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 1544 y(existing)31 -b(\014les.)630 1704 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 1813 y(substitutions,)35 b(and)e(commands)g(executed)i(in)f(a)g -(subshell)f(en)m(vironmen)m(t.)1110 1923 y(The)d Fs(ERR)f +(Section)g(3.5.1)g([Brace)1110 408 y(Expansion],)30 b(page)h(18\).)42 +b(This)30 b(option)h(is)f(on)g(b)m(y)h(default.)630 556 +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 666 y(existing)31 +b(\014les.)630 814 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 +923 y(substitutions,)35 b(and)e(commands)g(executed)i(in)f(a)g +(subshell)f(en)m(vironmen)m(t.)1110 1033 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 -2082 y Fs(-H)384 b Ft(Enable)38 b(`)p Fs(!)p Ft(')h(st)m(yle)h(history) +1181 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 -2192 y(teraction],)g(page)d(119\).)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 2301 y(shells.)630 -2461 y Fs(-P)384 b Ft(If)43 b(set,)k(do)c(not)g(follo)m(w)h(sym)m(b)s +1290 y(teraction],)g(page)d(121\).)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 1400 y(shells.)630 +1548 y Fs(-P)384 b Ft(If)43 b(set,)k(do)c(not)g(follo)m(w)h(sym)m(b)s (olic)g(links)e(when)g(p)s(erforming)g(commands)1110 -2570 y(suc)m(h)29 b(as)h Fs(cd)f Ft(whic)m(h)g(c)m(hange)h(the)g +1657 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 -2680 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 2790 +1767 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 1877 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 2899 y(directory)-8 b(.)1110 -3034 y(F)g(or)31 b(example,)g(if)f(`)p Fs(/usr/sys)p +i(the)f(curren)m(t)1110 1986 y(directory)-8 b(.)1110 +2115 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 3143 y(then:)1350 3278 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i -($PWD)1350 3387 y(/usr/sys)1350 3497 y($)g(cd)h(..;)f(pwd)1350 -3606 y(/usr)1110 3741 y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:) -1350 3875 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 -3985 y(/usr/local/sys)1350 4095 y($)g(cd)h(..;)f(pwd)1350 -4204 y(/usr/local)630 4364 y(-T)384 b Ft(If)34 b(set,)j(an)m(y)e(trap)g +Ft(')1110 2224 y(then:)1350 2353 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i +($PWD)1350 2463 y(/usr/sys)1350 2572 y($)g(cd)h(..;)f(pwd)1350 +2682 y(/usr)1110 2811 y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:) +1350 2939 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 +3049 y(/usr/local/sys)1350 3158 y($)g(cd)h(..;)f(pwd)1350 +3268 y(/usr/local)630 3416 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 4473 y(tions,)k(command)d(substitutions,)h(and)f -(commands)g(executed)h(in)f(a)h(sub-)1110 4583 y(shell)33 +(shell)i(func-)1110 3525 y(tions,)k(command)d(substitutions,)h(and)f +(commands)g(executed)h(in)f(a)h(sub-)1110 3635 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 4692 -y(inherited)d(in)g(suc)m(h)g(cases.)630 4852 y Fs(--)384 +Fs(RETURN)f Ft(traps)h(are)i(normally)f(not)1110 3745 +y(inherited)d(in)g(suc)m(h)g(cases.)630 3892 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 4961 y(are)h(unset.)49 +(the)h(p)s(ositional)h(parameters)1110 4002 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 5071 y(gumen)m(ts)p Ft(,)d(ev)m(en)g(if)f(some)h(of) -g(them)f(b)s(egin)g(with)g(a)h(`)p Fs(-)p Ft('.)630 5230 +(the)g Fq(ar-)1110 4112 y(gumen)m(ts)p Ft(,)d(ev)m(en)g(if)f(some)h(of) +g(them)f(b)s(egin)g(with)g(a)h(`)p Fs(-)p Ft('.)630 4260 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 -5340 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)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)1110 299 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 408 y(remain)k(unc)m(hanged.)630 -568 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 678 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 -787 y(found)29 b(in)h Fs($-)p Ft(.)630 922 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 1032 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 -1166 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 1391 -y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)275 1635 y Ft(This)29 -b(builtin)h(allo)m(ws)i(y)m(ou)e(to)i(c)m(hange)f(additional)g(shell)g -(optional)g(b)s(eha)m(vior.)150 1795 y Fs(shopt)870 1930 -y(shopt)46 b([-pqsu])g([-o])h([)p Fj(optname)56 b Fs(...)o(])630 -2065 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 2174 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 2284 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 2393 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 2503 y(follo)m(wing)32 -b(meanings:)630 2663 y Fs(-s)384 b Ft(Enable)30 b(\(set\))i(eac)m(h)f -Fq(optname)p Ft(.)630 2822 y Fs(-u)384 b Ft(Disable)31 -b(\(unset\))g(eac)m(h)h Fq(optname)p Ft(.)630 2982 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 3092 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 -3201 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 3311 -y(non-zero)31 b(otherwise.)630 3471 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 -3580 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(49\).)630 3740 -y(If)29 b(either)i(`)p Fs(-s)p Ft(')f(or)g(`)p Fs(-u)p -Ft(')f(is)h(used)g(with)f(no)h Fq(optname)35 b Ft(argumen)m(ts,)c(the)f -(displa)m(y)g(is)g(limited)630 3849 y(to)h(those)g(options)g(whic)m(h)f -(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m(ely)-8 b(.)630 -3984 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 -4119 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 -4228 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 4338 -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 4473 y(The)f(list)h(of)f -Fs(shopt)f Ft(options)i(is:)630 4632 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 4742 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 4851 y(used)g(b)m(y)g(in)m -(teractiv)m(e)j(shells.)630 5011 y Fs(cdable_vars)1110 -5121 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 5230 -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 5340 -y(the)g(directory)f(to)i(c)m(hange)f(to.)p eop end +4369 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 +4479 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 +4588 y(remain)k(unc)m(hanged.)630 4736 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 +4846 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 4955 y(found)29 b(in)h Fs($-)p Ft(.)630 5084 +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 5194 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 5322 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.)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(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 408 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 518 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 628 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 -737 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 889 y Fs(checkhash)1110 -998 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 1108 +b(Reference)g(Man)m(ual)150 299 y Fk(4.3.2)63 b(The)41 +b(Shopt)h(Builtin)275 544 y Ft(This)29 b(builtin)h(allo)m(ws)i(y)m(ou)e +(to)i(c)m(hange)f(additional)g(shell)g(optional)g(b)s(eha)m(vior.)150 +704 y Fs(shopt)870 839 y(shopt)46 b([-pqsu])g([-o])h([)p +Fj(optname)56 b Fs(...)o(])630 974 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 +1083 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 1193 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 1303 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 1412 y(follo)m(wing)32 b(meanings:)630 1572 y Fs(-s)384 +b Ft(Enable)30 b(\(set\))i(eac)m(h)f Fq(optname)p Ft(.)630 +1732 y Fs(-u)384 b Ft(Disable)31 b(\(unset\))g(eac)m(h)h +Fq(optname)p Ft(.)630 1893 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 2002 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 2112 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 2221 y(non-zero)31 b(otherwise.)630 +2381 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 2491 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(50\).)630 2651 y(If)29 b(either)i(`)p Fs(-s)p +Ft(')f(or)g(`)p Fs(-u)p Ft(')f(is)h(used)g(with)f(no)h +Fq(optname)35 b Ft(argumen)m(ts,)c(the)f(displa)m(y)g(is)g(limited)630 +2761 y(to)h(those)g(options)g(whic)m(h)f(are)h(set)f(or)h(unset,)f +(resp)s(ectiv)m(ely)-8 b(.)630 2896 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 3030 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 3140 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 3250 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 +3384 y(The)f(list)h(of)f Fs(shopt)f Ft(options)i(is:)630 +3545 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 +3654 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 +3764 y(used)g(b)m(y)g(in)m(teractiv)m(e)j(shells.)630 +3924 y Fs(cdable_vars)1110 4033 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 4143 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 4253 y(the)g(directory)f(to)i(c)m(hange)f(to.)630 +4413 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 4522 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 +4632 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 4742 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 4851 +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 5011 y Fs(checkhash)1110 +5121 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 5230 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 1217 -y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630 -1369 y Fs(checkjobs)1110 1478 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 1588 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 -1697 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 1807 y(in)m(terv)m(ening)j +b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 5340 +y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)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 Fs(checkjobs)1110 +408 y Ft(If)28 b(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 518 +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 +628 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 737 y(in)m(terv)m(ening)j (command)e(\(see)h(Chapter)f(7)h([Job)f(Con)m(trol],)i(page)f(87\).)42 -b(The)1110 1917 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 2068 y Fs(checkwinsize)1110 -2178 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 2287 y(necessary)-8 +b(The)1110 847 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 1009 y Fs(checkwinsize)1110 +1118 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 1228 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 2438 y Fs(cmdhist)144 +Ft(and)g Fs(COLUMNS)p Ft(.)630 1390 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 2548 y(in)c(the)g(same)g +(of)g(a)h(m)m(ultiple-line)g(command)1110 1499 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 2658 y(commands.)630 -2809 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 1609 y(commands.)630 +1771 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 2919 y(to)k(quoted)g(argumen)m(ts)f(to)h(the)g(conditional)h -(command's)e(=)p Fs(~)g Ft(op)s(erator.)630 3070 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 -3180 y(\014lename)j(expansion.)630 3331 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 -3440 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 3550 -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 3701 y Fs(expand_aliases)1110 -3811 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 3921 y(tion)38 +1110 1880 y(to)k(quoted)g(argumen)m(ts)f(to)h(the)g(conditional)h +(command's)e(=)p Fs(~)g Ft(op)s(erator.)630 2042 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 2151 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 +2261 y(exist.)630 2423 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 2532 y(\014lename)j(expansion.)630 +2694 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 2804 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 +2913 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 3075 y Fs(expand_aliases)1110 +3185 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 3294 y(tion)38 b(6.6)h([Aliases],)j(page)d(77.)64 b(This)37 b(option)h(is)g(enabled)g -(b)m(y)g(default)g(for)1110 4030 y(in)m(teractiv)m(e)33 -b(shells.)630 4181 y Fs(extdebug)96 b Ft(If)30 b(set,)h(b)s(eha)m(vior) +(b)m(y)g(default)g(for)1110 3404 y(in)m(teractiv)m(e)33 +b(shells.)630 3566 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 -4312 y(1.)61 b(The)32 b(`)p Fs(-F)p Ft(')g(option)h(to)g(the)g +3701 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 -4422 y(Builtins],)29 b(page)g(41\))g(displa)m(ys)f(the)g(source)h -(\014le)f(name)g(and)f(line)h(n)m(um-)1290 4531 y(b)s(er)h(corresp)s +3811 y(Builtins],)29 b(page)g(41\))g(displa)m(ys)f(the)g(source)h +(\014le)f(name)g(and)f(line)h(n)m(um-)1290 3921 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 4641 y(men)m(t.)1159 4771 y(2.)61 b(If)20 b(the)h(command)g(run)e +1290 4030 y(men)m(t.)1159 4166 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 4881 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 4275 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g +(not)i(executed.)1159 4411 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 +b(of)f(2,)1290 4521 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 4630 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: 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)1159 299 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 -b(\(see)i(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)32 -b(page)f(59\).)1159 551 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 -661 y(functions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)j(with)d -Fs(\()h Fj(command)39 b Fs(\))30 b Ft(inherit)g(the)1290 -770 y Fs(DEBUG)f Ft(and)h Fs(RETURN)e Ft(traps.)1159 -913 y(6.)61 b(Error)74 b(tracing)i(is)f(enabled:)131 -b(command)74 b(substitution,)87 b(shell)1290 1022 y(functions,)30 +Ft(builtins\),)j(a)g(call)g(to)1290 4740 y Fs(return)29 +b Ft(is)h(sim)m(ulated.)1159 4876 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 4985 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g +(V)-8 b(ariables],)32 b(page)f(59\).)1159 5121 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 5230 y(functions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)j(with)d Fs(\()h -Fj(command)39 b Fs(\))30 b Ft(inherit)g(the)1290 1132 -y Fs(ERROR)f Ft(trap.)630 1307 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 1417 y(Section)j(3.5.8.1)i([P)m -(attern)f(Matc)m(hing],)g(page)f(24\))h(are)f(enabled.)630 -1592 y Fs(extquote)96 b Ft(If)49 b(set,)54 b Fs($')p -Fj(string)11 b Fs(')46 b Ft(and)j Fs($")p Fj(string)11 -b Fs(")46 b Ft(quoting)k(is)f(p)s(erformed)e(within)1110 -1702 y Fs(${)p Fj(parameter)11 b Fs(})30 b Ft(expansions)j(enclosed)h -(in)g(double)f(quotes.)51 b(This)32 b(option)1110 1811 -y(is)e(enabled)h(b)m(y)f(default.)630 1987 y Fs(failglob)96 -b Ft(If)30 b(set,)g(patterns)g(whic)m(h)g(fail)h(to)g(matc)m(h)g -(\014lenames)f(during)e(pathname)i(ex-)1110 2096 y(pansion)g(result)g -(in)g(an)g(expansion)h(error.)630 2271 y Fs(force_fignore)1110 -2381 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 -2491 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 2600 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 2710 y([Bash)24 b(V)-8 -b(ariables],)27 b(page)e(59,)h(for)d(a)h(description)g(of)g -Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 2819 y(is)30 -b(enabled)h(b)m(y)f(default.)630 2995 y Fs(gnu_errfmt)1110 -3104 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 3214 y(message)c(format.)630 -3389 y Fs(histappend)1110 3499 y Ft(If)c(set,)j(the)e(history)g(list)g +Fj(command)39 b Fs(\))30 b Ft(inherit)g(the)1290 5340 +y Fs(DEBUG)f Ft(and)h Fs(RETURN)e Ft(traps.)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)1159 299 y(6.)61 b(Error)74 b(tracing)i(is)f +(enabled:)131 b(command)74 b(substitution,)87 b(shell)1290 +408 y(functions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)j(with)d +Fs(\()h Fj(command)39 b Fs(\))30 b Ft(inherit)g(the)1290 +518 y Fs(ERROR)f Ft(trap.)630 667 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 777 y(Section)j(3.5.8.1)i +([P)m(attern)f(Matc)m(hing],)g(page)f(24\))h(are)f(enabled.)630 +927 y Fs(extquote)96 b Ft(If)49 b(set,)54 b Fs($')p Fj(string)11 +b Fs(')46 b Ft(and)j Fs($")p Fj(string)11 b Fs(")46 b +Ft(quoting)k(is)f(p)s(erformed)e(within)1110 1036 y Fs(${)p +Fj(parameter)11 b Fs(})30 b Ft(expansions)j(enclosed)h(in)g(double)f +(quotes.)51 b(This)32 b(option)1110 1146 y(is)e(enabled)h(b)m(y)f +(default.)630 1295 y Fs(failglob)96 b Ft(If)30 b(set,)g(patterns)g +(whic)m(h)g(fail)h(to)g(matc)m(h)g(\014lenames)f(during)e(pathname)i +(ex-)1110 1405 y(pansion)g(result)g(in)g(an)g(expansion)h(error.)630 +1554 y Fs(force_fignore)1110 1664 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 1773 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 +1883 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 1993 y([Bash)24 +b(V)-8 b(ariables],)27 b(page)e(59,)h(for)d(a)h(description)g(of)g +Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 2102 y(is)30 +b(enabled)h(b)m(y)f(default.)630 2252 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 2361 +y(matc)m(h)f(a)g(\014les)f(and)f(zero)i(or)g(more)f(directories)h(and)f +(sub)s(directories.)66 b(If)1110 2471 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 2580 y(matc)m(h.)630 2730 y Fs(gnu_errfmt)1110 +2839 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 2949 y(message)c(format.)630 +3098 y Fs(histappend)1110 3208 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 3608 y(the)d Fs(HISTFILE)d Ft(v)-5 +b(alue)29 b(of)1110 3318 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 3718 y(the)31 b(\014le.)630 3893 y Fs(histreedit)1110 -4003 y Ft(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g +(erwriting)1110 3427 y(the)31 b(\014le.)630 3577 y Fs(histreedit)1110 +3686 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 -4113 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630 -4288 y Fs(histverify)1110 4398 y Ft(If)35 b(set,)i(and)e(Readline)h(is) +3796 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630 +3945 y Fs(histverify)1110 4055 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 -4507 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 4617 y(resulting)i(line)f(is)h +4164 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 4274 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 4726 y(further)29 b(mo)s(di\014cation.)630 4902 -y Fs(hostcomplete)1110 5011 y Ft(If)38 b(set,)j(and)c(Readline)i(is)f +1110 4384 y(further)29 b(mo)s(di\014cation.)630 4533 +y Fs(hostcomplete)1110 4643 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 -5121 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 5230 y(pleted)g(\(see)h +4752 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 4862 y(pleted)g(\(see)h (Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g -(107\).)1110 5340 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.) -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(huponexit)1110 408 -y Ft(If)h(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 518 y(shell)31 -b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g(page)f(32\).)630 -667 y Fs(interactive_comments)1110 777 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 887 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 996 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630 -1146 y Fs(lithist)144 b Ft(If)22 b(enabled,)i(and)d(the)h +(108\).)1110 4971 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.) +630 5121 y Fs(huponexit)1110 5230 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 5340 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g +(page)f(32\).)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 +(interactive_comments)1110 408 y Ft(Allo)m(w)27 b(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 518 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 +628 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630 +777 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 -1255 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 1365 y(semicolon)32 -b(separators)f(where)e(p)s(ossible.)630 1514 y Fs(login_shell)1110 -1624 y Ft(The)35 b(shell)h(sets)g(this)f(option)h(if)g(it)g(is)f +887 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 996 y(semicolon)32 +b(separators)f(where)e(p)s(ossible.)630 1146 y Fs(login_shell)1110 +1255 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 -1733 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(69\).)41 +1365 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(69\).)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 -1883 y Fs(mailwarn)96 b Ft(If)34 b(set,)i(and)e(a)h(\014le)g(that)g +1514 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 1993 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m +1110 1624 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 Fj(mail-)1110 -2102 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.) -630 2252 y Fs(no_empty_cmd_completion)1110 2361 y Ft(If)f(set,)g(and)g +1733 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.) +630 1883 y Fs(no_empty_cmd_completion)1110 1993 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 2471 y(the)25 b Fs(PATH)f Ft(for)h(p)s(ossible)f +(searc)m(h)1110 2102 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 -2580 y(an)k(empt)m(y)h(line.)630 2730 y Fs(nocaseglob)1110 -2839 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 2949 y(p)s(erforming)29 -b(\014lename)i(expansion.)630 3098 y Fs(nocasematch)1110 -3208 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 3318 y(p)s(erforming)31 +2212 y(an)k(empt)m(y)h(line.)630 2361 y Fs(nocaseglob)1110 +2471 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 2580 y(p)s(erforming)29 +b(\014lename)i(expansion.)630 2730 y Fs(nocasematch)1110 +2839 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 2949 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 3427 y(mands.)630 -3577 y Fs(nullglob)96 b Ft(If)23 b(set,)j(Bash)e(allo)m(ws)g +Fs([[)g Ft(conditional)h(com-)1110 3059 y(mands.)630 +3208 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 3686 y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g -(themselv)m(es.)630 3836 y Fs(progcomp)96 b Ft(If)25 +(expand)1110 3318 y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g +(themselv)m(es.)630 3467 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 3945 y(grammable)45 b(Completion],)k(page)c -(111\))h(are)f(enabled.)82 b(This)44 b(option)h(is)1110 -4055 y(enabled)30 b(b)m(y)h(default.)630 4204 y Fs(promptvars)1110 -4314 y Ft(If)24 b(set,)i(prompt)d(strings)h(undergo)f(parameter)i -(expansion,)g(command)f(sub-)1110 4423 y(stitution,)34 +(Section)f(8.6)h([Pro-)1110 3577 y(grammable)45 b(Completion],)k(page)c +(112\))h(are)f(enabled.)82 b(This)44 b(option)h(is)1110 +3686 y(enabled)30 b(b)m(y)h(default.)630 3836 y Fs(promptvars)1110 +3945 y Ft(If)24 b(set,)i(prompt)d(strings)h(undergo)f(parameter)i +(expansion,)g(command)f(sub-)1110 4055 y(stitution,)34 b(arithmetic)f(expansion,)g(and)e(quote)i(remo)m(v)-5 -b(al)33 b(after)g(b)s(eing)e(ex-)1110 4533 y(panded)39 +b(al)33 b(after)g(b)s(eing)e(ex-)1110 4164 y(panded)39 b(as)i(describ)s(ed)e(b)s(elo)m(w)i(\(see)g(Section)g(6.9)g([Prin)m -(ting)g(a)g(Prompt],)1110 4643 y(page)31 b(81\).)42 b(This)30 -b(option)g(is)h(enabled)f(b)m(y)g(default.)630 4792 y -Fs(restricted_shell)1110 4902 y Ft(The)40 b(shell)h(sets)g(this)g +(ting)g(a)g(Prompt],)1110 4274 y(page)31 b(81\).)42 b(This)30 +b(option)g(is)h(enabled)f(b)m(y)g(default.)630 4423 y +Fs(restricted_shell)1110 4533 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 5011 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e +1110 4643 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e (82\).)56 b(The)34 b(v)-5 b(alue)35 b(ma)m(y)h(not)1110 -5121 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 5230 +4752 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 4862 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 5340 -y(stricted.)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(shift_verbose) -1110 408 y Ft(If)36 b(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 -518 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 677 y Fs(sourcepath)1110 -787 y Ft(If)22 b(set,)j(the)e Fs(source)e Ft(builtin)h(uses)g(the)h(v) +(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110 4971 +y(stricted.)630 5121 y Fs(shift_verbose)1110 5230 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 5340 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.)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(sourcepath)1110 +408 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 -897 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 1006 y(b)m(y)j(default.) -630 1166 y Fs(xpg_echo)96 b Ft(If)31 b(set,)h(the)g Fs(echo)e +518 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 628 y(b)m(y)j(default.) +630 787 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 1275 y(fault.)630 1435 y(The)c(return)f(status)i(when)f +(de-)1110 897 y(fault.)630 1056 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 1544 y(zero)40 b(otherwise.)66 +Ft(are)d(enabled,)g(non-)630 1166 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 1654 y(unless)30 b(an)g Fq(optname)36 +(status)h(is)g(zero)630 1275 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 -1911 y Fr(4.4)68 b(Sp)t(ecial)45 b(Builtins)275 2155 +1533 y Fr(4.4)68 b(Sp)t(ecial)45 b(Builtins)275 1777 y Ft(F)-8 b(or)40 b(historical)i(reasons,)g(the)f Fl(posix)e Ft(standard)g(has)h(classi\014ed)g(sev)m(eral)i(builtin)d(commands)h -(as)150 2265 y Fm(sp)-5 b(e)g(cial)p Ft(.)84 b(When)44 +(as)150 1886 y Fm(sp)-5 b(e)g(cial)p Ft(.)84 b(When)44 b(Bash)g(is)g(executing)i(in)d Fl(posix)h Ft(mo)s(de,)j(the)e(sp)s -(ecial)f(builtins)g(di\013er)g(from)g(other)150 2374 +(ecial)f(builtins)g(di\013er)g(from)g(other)150 1996 y(builtin)30 b(commands)g(in)g(three)h(resp)s(ects:)199 -2509 y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h +2130 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 -2643 y(2.)61 b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error) +2265 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 -2778 y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f +2399 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 2888 y(after)i(the)f(command)h(completes.)275 -3047 y(When)36 b(Bash)g(is)h(not)f(executing)i(in)e Fl(posix)f +(t)330 2509 y(after)i(the)f(command)h(completes.)275 +2668 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 3156 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e +(tly)h(than)150 2778 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 3266 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g -(82.)275 3401 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h -(builtins:)390 3535 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h -(exit)g(export)f(readonly)f(return)h(set)390 3645 y(shift)g(trap)h +(ed)f(in)h(Section)h(6.11)150 2888 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g +(82.)275 3022 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h +(builtins:)390 3156 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h +(exit)g(export)f(readonly)f(return)h(set)390 3266 y(shift)g(trap)h (unset)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)p eop end %%Page: 59 65 TeXDict begin 59 64 bop 150 -116 a Ft(Chapter)30 b(5:)41 b(Shell)30 b(V)-8 b(ariables)2459 b(59)150 299 y Fo(5)80 @@ -8992,7 +9110,7 @@ b(The)25 b(n)m(um)m(b)s(er)g(of)h(parameters)g(to)g(the)g(curren)m(t) 1217 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 1326 y(debugging)23 b(mo)s(de)f(\(see)h(Section)g(4.3.2)i -([The)d(Shopt)g(Builtin],)j(page)e(53)h(for)e(a)h(description)630 +([The)d(Shopt)g(Builtin],)j(page)e(54)h(for)e(a)h(description)630 1436 y(of)31 b(the)f Fs(extdebug)e Ft(option)j(to)g(the)g Fs(shopt)e Ft(builtin\).)150 1587 y Fs(BASH_ARGV)630 1696 y Ft(An)24 b(arra)m(y)g(v)-5 b(ariable)25 b(con)m(taining)h(all)f @@ -9005,7 +9123,7 @@ Fs(shopt)e Ft(builtin\).)150 1587 y Fs(BASH_ARGV)630 (on)m(to)i Fs(BASH_ARGV)p Ft(.)66 b(The)40 b(shell)630 2134 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 -2244 y(Shopt)i(Builtin],)h(page)g(53)g(for)f(a)h(description)f(of)h +2244 y(Shopt)i(Builtin],)h(page)g(54)g(for)f(a)h(description)f(of)h (the)f Fs(extdebug)e Ft(option)j(to)g(the)f Fs(shopt)630 2354 y Ft(builtin\).)150 2504 y Fs(BASH_COMMAND)630 2614 y Ft(The)39 b(command)h(curren)m(tly)g(b)s(eing)f(executed)i(or)e(ab)s @@ -9081,13 +9199,13 @@ Fs(${COMP_WORDS})c Ft(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 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 3654 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g -([Programmable)g(Completion],)630 3764 y(page)31 b(111\).)150 +([Programmable)g(Completion],)630 3764 y(page)31 b(112\).)150 3924 y Fs(COMP_LINE)630 4033 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 4143 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 4253 -y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(111\).)150 +y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(112\).)150 4413 y Fs(COMP_POINT)630 4522 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 4632 y(command.)40 b(If)27 b(the)h(curren)m(t)g @@ -9098,7 +9216,7 @@ b(This)29 b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630 4851 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 4961 y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g -(Completion],)h(page)f(111\).)150 5121 y Fs(COMP_TYPE)630 +(Completion],)h(page)f(112\).)150 5121 y Fs(COMP_TYPE)630 5230 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 5340 y(caused)e(a)h(completion)h(function)e(to)h @@ -9115,7 +9233,7 @@ g(unmo)s(di\014ed,)f(or)h(`)p Fs(\045)p Ft(',)h(for)630 b(is)g(a)m(v)-5 b(ailable)28 b(only)f(in)f(shell)g(functions)g(and)g (external)630 628 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 -737 y([Programmable)e(Completion],)h(page)f(111\).)150 +737 y([Programmable)e(Completion],)h(page)f(112\).)150 902 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 1011 y(function.)150 1176 @@ -9133,12 +9251,12 @@ m(haracters)h(as)e(the)h(shell)f(parser)f(w)m(ould)630 b(is)g(a)m(v)-5 b(ailable)32 b(only)d(in)g(shell)h(functions)f(in)m(v)m (ok)m(ed)i(b)m(y)f(the)630 2107 y(programmable)42 b(completion)h (facilities)h(\(see)e(Section)h(8.6)f([Programmable)h(Comple-)630 -2217 y(tion],)31 b(page)g(111\).)150 2381 y Fs(COMPREPLY)630 +2217 y(tion],)31 b(page)g(112\).)150 2381 y Fs(COMPREPLY)630 2491 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 2600 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 -2710 y(tion)d(8.6)g([Programmable)g(Completion],)h(page)f(111\).)150 +2710 y(tion)d(8.6)g([Programmable)g(Completion],)h(page)f(112\).)150 2874 y Fs(DIRSTACK)96 b Ft(An)26 b(arra)m(y)h(v)-5 b(ariable)28 b(con)m(taining)g(the)f(curren)m(t)f(con)m(ten)m(ts)j(of)e(the)f (directory)i(stac)m(k.)41 b(Direc-)630 2984 y(tories)33 @@ -9202,7 +9320,7 @@ b(If)630 1150 y Fs(GROUPS)29 b Ft(is)h(unset,)g(it)h(loses)g(its)g(sp)s (reset.)150 1344 y Fs(histchars)630 1454 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 1563 y(tok)m(enization)k(\(see)f(Section)f -(9.3)h([History)f(In)m(teraction],)i(page)f(119\).)41 +(9.3)h([History)f(In)m(teraction],)i(page)f(121\).)41 b(The)29 b(\014rst)e(c)m(harac-)630 1673 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 1783 y(start)25 @@ -9432,7 +9550,7 @@ Ft(')150 1121 y Fs(PS4)336 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 1230 y(option)32 b(is)f(set)h(\(see)g(Section)h(4.3.1)g([The)e(Set)g -(Builtin],)i(page)f(49\).)45 b(The)31 b(\014rst)f(c)m(haracter)630 +(Builtin],)i(page)f(50\).)45 b(The)31 b(\014rst)f(c)m(haracter)630 1340 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 1450 y(indirection.)41 b(The)30 b(default)h(is)f(`)p @@ -9462,7 +9580,7 @@ b(it)i(is)f(not)630 2929 y(set)36 b(when)f(the)h(shell)g(starts,)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 3422 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 3532 y(Set)k(Builtin],)h(page)f(49\).)42 +(Section)f(4.3.1)h([The)630 3532 y(Set)k(Builtin],)h(page)f(50\).)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 3641 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 @@ -9558,7 +9676,7 @@ b([-o)k Fj(option)11 b Fs(])46 b([-O)h Fj(shopt_option)11 b Fs(])43 b([)p Fj(ar-)390 1565 y(gument)57 b Fs(...)o(])275 1701 y Ft(In)22 b(addition)i(to)g(the)g(single-c)m(haracter)i(shell)e (command-line)g(options)f(\(see)i(Section)f(4.3.1)i([The)d(Set)150 -1810 y(Builtin],)k(page)e(49\),)i(there)e(are)g(sev)m(eral)h(m)m +1810 y(Builtin],)k(page)e(50\),)i(there)e(are)g(sev)m(eral)h(m)m (ulti-c)m(haracter)h(options)e(that)g(y)m(ou)g(can)g(use.)38 b(These)25 b(options)150 1920 y(m)m(ust)30 b(app)s(ear)g(on)g(the)h (command)f(line)h(b)s(efore)f(the)g(single-c)m(haracter)j(options)e(to) @@ -9566,11 +9684,11 @@ g(b)s(e)f(recognized.)150 2081 y Fs(--debugger)630 2191 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 2301 y(on)25 b(extended)g(debugging)g(mo)s(de)f(\(see)i -(Section)g(4.3.2)h([The)d(Shopt)h(Builtin],)i(page)e(53)h(for)630 +(Section)g(4.3.2)h([The)d(Shopt)h(Builtin],)i(page)e(54)h(for)630 2410 y(a)35 b(description)f(of)h(the)g Fs(extdebug)d Ft(option)j(to)g(the)f Fs(shopt)f Ft(builtin\))i(and)f(shell)g (function)630 2520 y(tracing)d(\(see)g(Section)h(4.3.1)g([The)e(Set)g -(Builtin],)h(page)g(49)h(for)e(a)g(description)h(of)f(the)h +(Builtin],)h(page)g(50)h(for)e(a)g(description)h(of)f(the)h Fs(-o)630 2629 y(functrace)d Ft(option\).)150 2790 y Fs(--dump-po-strings)630 2900 y Ft(A)37 b(list)g(of)f(all)i (double-quoted)e(strings)g(preceded)g(b)m(y)h(`)p Fs($)p @@ -9665,7 +9783,7 @@ b(implies)i(the)f(`)p Fs(-n)p Ft(')h(option;)g(no)f(commands)g(will)h b Fs(])630 4792 y Fq(shopt)p 854 4792 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 4902 y(Section)28 b(4.3.2)g([The)f -(Shopt)f(Builtin],)i(page)f(53\).)41 b(If)26 b Fq(shopt)p +(Shopt)f(Builtin],)i(page)f(54\).)41 b(If)26 b Fq(shopt)p 2690 4902 V 40 w(option)h Ft(is)g(presen)m(t,)h(`)p Fs(-O)p Ft(')f(sets)630 5011 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 @@ -9701,7 +9819,7 @@ Fs(-c)p Ft(')f(nor)h(the)g(`)p Fs(-s)p Ft(')f(option)150 1403 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 1512 y(commands)30 b(\(see)g(Section)h(3.8)g([Shell)f -(Scripts],)g(page)h(32\).)41 b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i +(Scripts],)g(page)h(33\).)41 b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i (in)d(this)h(fashion,)150 1622 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(remaining)150 1731 y(argumen)m(ts.)h(Bash)26 @@ -9902,10 +10020,10 @@ Fs(ignoreeof)e Ft(option)j(to)g Fs(set)29 b(-o)36 b Ft(instead)h(of)f (exiting)i(imme-)330 1300 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 1409 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g -(49\).)199 1560 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(117\))h(and)d +(50\).)199 1560 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(119\))h(and)d (history)330 1670 y(expansion)23 b(\(see)i(Section)f(9.3)h([History)f -(In)m(teraction],)j(page)d(119\))h(are)f(enabled)g(b)m(y)f(default.)39 +(In)m(teraction],)j(page)d(121\))h(are)f(enabled)g(b)m(y)f(default.)39 b(Bash)330 1779 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 1889 y(exits.)199 2040 y(8.)61 @@ -9924,7 +10042,7 @@ g(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(32\).)154 2863 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 -2972 y(Set)j(Builtin],)g(page)g(49\).)154 3123 y(13.)61 +2972 y(Set)j(Builtin],)g(page)g(50\).)154 3123 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 3233 y(and)f @@ -9934,7 +10052,7 @@ 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 3494 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(49\).)154 3644 y(15.)61 b(The)48 +(Builtin],)g(page)g(50\).)154 3644 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 3754 y Fs(${)p Fj(var)11 b Fs(:?)p Fj(word)g Fs(})26 @@ -9955,7 +10073,7 @@ b(syn)m(tax)f(errors)g(will)h(not)g(cause)g(the)f(shell)h(to)g(exit.) (enabled)f(b)m(y)h(default)330 4838 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 4947 y(Shopt)30 -b(Builtin],)h(page)g(53\).)154 5098 y(21.)61 b(The)42 +b(Builtin],)h(page)g(54\).)154 5098 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 5208 y(read)30 b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s @@ -10051,7 +10169,7 @@ Fq(optname)47 b Ft(is)41 b(enabled.)73 b(The)41 b(list)h(of)f(options)g (app)s(ears)g(in)g(the)630 789 y(description)h(of)f(the)h(`)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 898 y(Builtin],)31 -b(page)g(49\).)150 1060 y Fs(-z)f Fj(string)630 1169 +b(page)g(50\).)150 1060 y Fs(-z)f Fj(string)630 1169 y Ft(T)-8 b(rue)30 b(if)g(the)h(length)g(of)f Fq(string)38 b Ft(is)31 b(zero.)150 1330 y Fs(-n)f Fj(string)150 1440 y(string)192 b Ft(T)-8 b(rue)30 b(if)g(the)h(length)g(of)f @@ -10196,7 +10314,7 @@ b(unctions],)150 1802 y(page)31 b(14\).)275 1951 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 2061 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(53\).)275 2210 y(The)38 b(rules)h(concerning)h(the) +(Builtin],)h(page)g(54\).)275 2210 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 2320 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 @@ -10473,7 +10591,7 @@ b(the)26 b(history)g(n)m(um)m(b)s(er)150 823 y(of)h(a)f(command)h(is)f (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 932 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(117\),)j(while)d(the)f(command)150 +b(acilities],)45 b(page)40 b(119\),)j(while)d(the)f(command)150 1042 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 1152 y(session.)275 1283 y(After)35 b(the)g(string)g(is)g(deco)s(ded,)h @@ -10527,7 +10645,7 @@ Ft('.)275 4393 y(These)g(restrictions)h(are)g(enforced)f(after)h(an)m (y)g(startup)f(\014les)g(are)h(read.)275 4524 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 4633 y(Scripts],)25 -b(page)e(32\),)j Fs(rbash)c Ft(turns)g(o\013)i(an)m(y)f(restrictions)h +b(page)e(33\),)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 4880 y Fr(6.11)68 b(Bash)45 b(POSIX)f(Mo)t(de)275 5121 y Ft(Starting)21 b(Bash)g(with)f(the)h(`)p Fs(--posix)p @@ -10737,7 +10855,7 @@ Fl(posix)p Ft(-conforman)m(t)h(b)m(y)f(default,)77 b(b)m(y)66 b(sp)s(ecifying)h(the)150 1544 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 1654 y([Optional)31 b(F)-8 b(eatures],)32 -b(page)f(125\).)p eop end +b(page)f(127\).)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)p eop end @@ -10855,13 +10973,13 @@ g(to)g(not)g(in)m(terrupt)150 1113 y(an)m(y)g(other)g(output.)39 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 1222 y(immediately)g(\(see)g(Section)g(4.3.1)g([The)f(Set)g -(Builtin],)i(page)f(49\).)40 b(An)m(y)24 b(trap)f(on)h +(Builtin],)i(page)f(50\).)40 b(An)m(y)24 b(trap)f(on)h Fs(SIGCHLD)e Ft(is)i(executed)150 1332 y(for)30 b(eac)m(h)i(c)m(hild)e (pro)s(cess)g(that)h(exits.)275 1465 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 1574 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(53\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150 +e(54\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150 1684 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 1794 y Ft(command)36 b(ma)m(y)h(then)f(b)s(e)f @@ -11280,7 +11398,7 @@ b(Reference)g(Man)m(ual)150 299 y Fk(8.2.5)63 b(Searc)m(hing)40 b(for)i(Commands)g(in)f(the)g(History)275 540 y Ft(Readline)23 b(pro)m(vides)g(commands)f(for)h(searc)m(hing)h(through)e(the)h (command)g(history)f(\(see)i(Section)g(9.1)150 649 y([Bash)37 -b(History)h(F)-8 b(acilities],)42 b(page)37 b(117\))i(for)d(lines)h +b(History)h(F)-8 b(acilities],)42 b(page)37 b(119\))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 759 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 @@ -11368,411 +11486,427 @@ b(Command)29 b(Line)i(Editing)2107 b(95)150 299 y(conditional)39 b(constructs)f(\(see)g(Section)h(8.3.2)g([Conditional)g(Init)e (Constructs],)j(page)e(100\).)64 b(Other)150 408 y(lines)31 b(denote)g(v)-5 b(ariable)31 b(settings)g(and)f(k)m(ey)h(bindings.)150 -579 y(V)-8 b(ariable)32 b(Settings)630 689 y(Y)-8 b(ou)41 +571 y(V)-8 b(ariable)32 b(Settings)630 681 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e(the)i(run-time)f(b)s(eha)m(vior)g(of)h(Readline)g -(b)m(y)f(altering)h(the)g(v)-5 b(alues)41 b(of)630 798 +(b)m(y)f(altering)h(the)g(v)-5 b(alues)41 b(of)630 790 y(v)-5 b(ariables)34 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 908 y(is)d(simple:)870 1046 -y Fs(set)47 b Fj(variable)56 b(value)630 1184 y Ft(Here,)29 +b(The)33 b(syn)m(tax)630 900 y(is)d(simple:)870 1036 +y Fs(set)47 b Fj(variable)56 b(value)630 1171 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 1294 y(use)k -Fs(vi)g Ft(line)h(editing)g(commands:)870 1432 y Fs(set)47 -b(editing-mode)d(vi)630 1570 y Ft(V)-8 b(ariable)36 b(names)f(and)g(v) +h(Emacs-lik)m(e)h(k)m(ey)f(binding)e(to)630 1281 y(use)k +Fs(vi)g Ft(line)h(editing)g(commands:)870 1417 y Fs(set)47 +b(editing-mode)d(vi)630 1552 y Ft(V)-8 b(ariable)36 b(names)f(and)g(v) -5 b(alues,)36 b(where)f(appropriate,)h(are)g(recognized)g(without)f -(regard)630 1680 y(to)c(case.)42 b(Unrecognized)31 b(v)-5 -b(ariable)31 b(names)g(are)f(ignored.)630 1818 y(Bo)s(olean)c(v)-5 +(regard)630 1662 y(to)c(case.)42 b(Unrecognized)31 b(v)-5 +b(ariable)31 b(names)g(are)f(ignored.)630 1797 y(Bo)s(olean)c(v)-5 b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f(set)i(to)g(on)f(or)g (o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)g(v)-5 -b(alue)26 b(is)630 1928 y(n)m(ull)e(or)g(empt)m(y)-8 +b(alue)26 b(is)630 1907 y(n)m(ull)e(or)g(empt)m(y)-8 b(,)27 b Fq(on)d Ft(\(case-insensitiv)m(e\),)29 b(or)24 b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v) --5 b(ariable)630 2037 y(b)s(eing)30 b(set)h(to)g(o\013.)630 -2176 y(The)37 b Fs(bind)30 b(-V)37 b Ft(command)g(lists)i(the)f(curren) +-5 b(ariable)630 2017 y(b)s(eing)30 b(set)h(to)g(o\013.)630 +2152 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 2285 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page) -g(41.)630 2423 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g +b(alues.)630 2262 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page) +g(41.)630 2397 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 2590 y Fs(bell-style)1110 2700 y Ft(Con)m(trols)44 +b(ariables.)630 2559 y Fs(bell-style)1110 2669 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 -(termi-)1110 2809 y(nal)37 b(b)s(ell.)61 b(If)37 b(set)h(to)g(`)p +(termi-)1110 2778 y(nal)37 b(b)s(ell.)61 b(If)37 b(set)h(to)g(`)p Fs(none)p Ft(',)g(Readline)g(nev)m(er)g(rings)e(the)i(b)s(ell.)61 -b(If)36 b(set)i(to)1110 2919 y(`)p Fs(visible)p Ft(',)32 +b(If)36 b(set)i(to)1110 2888 y(`)p Fs(visible)p Ft(',)32 b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g(one)g(is)g(a)m(v)-5 -b(ailable.)51 b(If)33 b(set)g(to)1110 3029 y(`)p Fs(audible)p +b(ailable.)51 b(If)33 b(set)g(to)1110 2997 y(`)p Fs(audible)p Ft(')j(\(the)i(default\),)i(Readline)e(attempts)g(to)h(ring)e(the)g -(terminal's)1110 3138 y(b)s(ell.)630 3305 y Fs(bind-tty-special-chars) -1110 3415 y Ft(If)45 b(set)h(to)f(`)p Fs(on)p Ft(',)50 +(terminal's)1110 3107 y(b)s(ell.)630 3269 y Fs(bind-tty-special-chars) +1110 3378 y Ft(If)45 b(set)h(to)f(`)p Fs(on)p Ft(',)50 b(Readline)45 b(attempts)i(to)f(bind)d(the)j(con)m(trol)g(c)m -(haracters)1110 3524 y(treated)36 b(sp)s(ecially)h(b)m(y)e(the)h(k)m +(haracters)1110 3488 y(treated)36 b(sp)s(ecially)h(b)m(y)e(the)h(k)m (ernel's)g(terminal)g(driv)m(er)f(to)h(their)f(Readline)1110 -3634 y(equiv)-5 b(alen)m(ts.)630 3801 y Fs(comment-begin)1110 -3910 y Ft(The)29 b(string)g(to)h(insert)f(at)h(the)f(b)s(eginning)g(of) -g(the)h(line)f(when)f(the)i Fs(insert-)1110 4020 y(comment)e +3597 y(equiv)-5 b(alen)m(ts.)630 3759 y Fs(comment-begin)1110 +3869 y Ft(The)29 b(string)g(to)h(insert)f(at)h(the)f(b)s(eginning)g(of) +g(the)h(line)f(when)f(the)i Fs(insert-)1110 3978 y(comment)e Ft(command)j(is)f(executed.)42 b(The)29 b(default)i(v)-5 -b(alue)31 b(is)f Fs("#")p Ft(.)630 4187 y Fs(completion-ignore-case) -1110 4296 y Ft(If)d(set)h(to)g(`)p Fs(on)p Ft(',)g(Readline)g(p)s +b(alue)31 b(is)f Fs("#")p Ft(.)630 4140 y Fs(completion-ignore-case) +1110 4250 y Ft(If)d(set)h(to)g(`)p Fs(on)p Ft(',)g(Readline)g(p)s (erforms)e(\014lename)h(matc)m(hing)i(and)e(completion)1110 -4406 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)40 b(The)30 +4359 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Fs(off)p Ft('.)630 -4573 y Fs(completion-query-items)1110 4682 y Ft(The)26 -b(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h(that)g(determines) -f(when)f(the)i(user)1110 4792 y(is)i(ask)m(ed)h(whether)f(the)h(list)g -(of)f(p)s(ossibilities)h(should)e(b)s(e)h(displa)m(y)m(ed.)41 -b(If)29 b(the)1110 4902 y(n)m(um)m(b)s(er)d(of)h(p)s(ossible)f -(completions)i(is)f(greater)h(than)e(this)h(v)-5 b(alue,)28 -b(Readline)1110 5011 y(will)f(ask)g(the)f(user)g(whether)g(or)g(not)h -(he)f(wishes)g(to)i(view)e(them;)i(otherwise,)1110 5121 -y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5 b(ariable)25 -b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m(teger)g(v)-5 -b(alue)1110 5230 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40 -b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110 -5340 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g -Fs(100)p Ft(.)p eop end +4521 y Fs(completion-prefix-displa)o(y-le)o(ngth)1110 +4630 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 4740 +y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s +(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 4850 +y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e +(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 4959 +y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible) +f(completions.)630 5121 y Fs(completion-query-items)1110 +5230 y Ft(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h +(that)g(determines)f(when)f(the)i(user)1110 5340 y(is)i(ask)m(ed)h +(whether)f(the)h(list)g(of)f(p)s(ossibilities)h(should)e(b)s(e)h +(displa)m(y)m(ed.)41 b(If)29 b(the)p eop end %%Page: 96 102 TeXDict begin 96 101 bop 150 -116 a Ft(96)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y Fs(convert-meta)1110 -408 y Ft(If)22 b(set)g(to)h(`)p Fs(on)p Ft(',)h(Readline)f(will)f(con)m -(v)m(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110 -518 y(to)g(an)f Fl(asci)r(i)g Ft(k)m(ey)h(sequence)g(b)m(y)f(stripping) -f(the)i(eigh)m(th)g(bit)f(and)g(pre\014xing)f(an)1110 -625 y Fg(h)p 1134 572 139 4 v 1134 628 a Ff(ESC)p 1134 -643 V 1268 625 a Fg(i)1332 628 y Ft(c)m(haracter,)36 +b(Reference)g(Man)m(ual)1110 299 y(n)m(um)m(b)s(er)26 +b(of)h(p)s(ossible)f(completions)i(is)f(greater)h(than)e(this)h(v)-5 +b(alue,)28 b(Readline)1110 408 y(will)f(ask)g(the)f(user)g(whether)g +(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i(otherwise,)1110 +518 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5 +b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m(teger)g(v)-5 +b(alue)1110 628 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40 +b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110 +737 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g +Fs(100)p Ft(.)630 883 y Fs(convert-meta)1110 993 y Ft(If)22 +b(set)g(to)h(`)p Fs(on)p Ft(',)h(Readline)f(will)f(con)m(v)m(ert)i(c)m +(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110 +1103 y(to)g(an)f Fl(asci)r(i)g Ft(k)m(ey)h(sequence)g(b)m(y)f +(stripping)f(the)i(eigh)m(th)g(bit)f(and)g(pre\014xing)f(an)1110 +1209 y Fg(h)p 1134 1156 139 4 v 1134 1212 a Ff(ESC)p +1134 1227 V 1268 1209 a Fg(i)1332 1212 y Ft(c)m(haracter,)36 b(con)m(v)m(erting)g(them)e(to)g(a)h(meta-pre\014xed)f(k)m(ey)g -(sequence.)1110 737 y(The)c(default)g(v)-5 b(alue)31 -b(is)g(`)p Fs(on)p Ft('.)630 883 y Fs(disable-completion)1110 -993 y Ft(If)36 b(set)h(to)h(`)p Fs(On)p Ft(',)g(Readline)f(will)g +(sequence.)1110 1322 y(The)c(default)g(v)-5 b(alue)31 +b(is)g(`)p Fs(on)p Ft('.)630 1468 y Fs(disable-completion)1110 +1577 y Ft(If)36 b(set)h(to)h(`)p Fs(On)p Ft(',)g(Readline)f(will)g (inhibit)f(w)m(ord)h(completion.)60 b(Completion)1110 -1103 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g +1687 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g (line)f(as)g(if)g(they)h(had)e(b)s(een)g(mapp)s(ed)1110 -1212 y(to)31 b Fs(self-insert)p Ft(.)38 b(The)30 b(default)g(is)h(`)p -Fs(off)p Ft('.)630 1358 y Fs(editing-mode)1110 1468 y +1797 y(to)31 b Fs(self-insert)p Ft(.)38 b(The)30 b(default)g(is)h(`)p +Fs(off)p Ft('.)630 1943 y Fs(editing-mode)1110 2052 y Ft(The)d Fs(editing-mode)e Ft(v)-5 b(ariable)29 b(con)m(trols)h(whic)m -(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 1577 y(ings)25 +(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 2162 y(ings)25 b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f(up)f(in)h -(Emacs)g(editing)h(mo)s(de,)1110 1687 y(where)j(the)g(k)m(eystrok)m(es) +(Emacs)g(editing)h(mo)s(de,)1110 2271 y(where)j(the)g(k)m(eystrok)m(es) i(are)e(most)h(similar)f(to)h(Emacs.)40 b(This)29 b(v)-5 -b(ariable)30 b(can)1110 1797 y(b)s(e)g(set)h(to)g(either)g(`)p -Fs(emacs)p Ft(')e(or)h(`)p Fs(vi)p Ft('.)630 1943 y Fs(enable-keypad) -1110 2052 y Ft(When)23 b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f +b(ariable)30 b(can)1110 2381 y(b)s(e)g(set)h(to)g(either)g(`)p +Fs(emacs)p Ft(')e(or)h(`)p Fs(vi)p Ft('.)630 2527 y Fs(enable-keypad) +1110 2637 y Ft(When)23 b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f (will)g(try)f(to)h(enable)g(the)f(application)i(k)m(eypad)1110 -2162 y(when)h(it)h(is)f(called.)41 b(Some)27 b(systems)f(need)h(this)f -(to)h(enable)g(the)g(arro)m(w)g(k)m(eys.)1110 2271 y(The)j(default)g -(is)h(`)p Fs(off)p Ft('.)630 2418 y Fs(expand-tilde)1110 -2527 y Ft(If)c(set)h(to)h(`)p Fs(on)p Ft(',)f(tilde)g(expansion)g(is)f -(p)s(erformed)f(when)h(Readline)h(attempts)1110 2637 +2746 y(when)h(it)h(is)f(called.)41 b(Some)27 b(systems)f(need)h(this)f +(to)h(enable)g(the)g(arro)m(w)g(k)m(eys.)1110 2856 y(The)j(default)g +(is)h(`)p Fs(off)p Ft('.)630 3002 y Fs(expand-tilde)1110 +3112 y Ft(If)c(set)h(to)h(`)p Fs(on)p Ft(',)f(tilde)g(expansion)g(is)f +(p)s(erformed)f(when)h(Readline)h(attempts)1110 3221 y(w)m(ord)i(completion.)42 b(The)30 b(default)g(is)h(`)p -Fs(off)p Ft('.)630 2783 y Fs(history-preserve-point)1110 -2892 y Ft(If)41 b(set)h(to)h(`)p Fs(on)p Ft(',)i(the)c(history)h(co)s +Fs(off)p Ft('.)630 3367 y Fs(history-preserve-point)1110 +3477 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 -3002 y(curren)m(t)35 b(cursor)g(p)s(osition\))g(at)h(the)g(same)f(lo)s -(cation)i(on)e(eac)m(h)h(history)g(line)1110 3112 y(retriev)m(ed)h +3587 y(curren)m(t)35 b(cursor)g(p)s(osition\))g(at)h(the)g(same)f(lo)s +(cation)i(on)e(eac)m(h)h(history)g(line)1110 3696 y(retriev)m(ed)h (with)f Fs(previous-history)c Ft(or)37 b Fs(next-history)p -Ft(.)55 b(The)36 b(default)1110 3221 y(is)30 b(`)p Fs(off)p -Ft('.)630 3367 y Fs(history-size)1110 3477 y Ft(Set)39 +Ft(.)55 b(The)36 b(default)1110 3806 y(is)30 b(`)p Fs(off)p +Ft('.)630 3952 y Fs(history-size)1110 4061 y Ft(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g(en)m(tries)h(sa)m -(v)m(ed)g(in)f(the)g(history)1110 3587 y(list.)53 b(If)34 +(v)m(ed)g(in)f(the)g(history)1110 4171 y(list.)53 b(If)34 b(set)h(to)g(zero,)i(the)d(n)m(um)m(b)s(er)g(of)g(en)m(tries)h(in)f -(the)h(history)f(list)h(is)g(not)1110 3696 y(limited.)630 -3842 y Fs(horizontal-scroll-mode)1110 3952 y Ft(This)g(v)-5 +(the)h(history)f(list)h(is)g(not)1110 4281 y(limited.)630 +4427 y Fs(horizontal-scroll-mode)1110 4536 y Ft(This)g(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f(`)p Fs(on)p Ft(')g(or)g(`)p Fs(off)p Ft('.)57 b(Setting)36 -b(it)g(to)h(`)p Fs(on)p Ft(')1110 4061 y(means)26 b(that)h(the)f(text)h +b(it)g(to)h(`)p Fs(on)p Ft(')1110 4646 y(means)26 b(that)h(the)f(text)h (of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m -(tally)1110 4171 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i -(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 4281 +(tally)1110 4755 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i +(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 4865 y(screen,)27 b(instead)g(of)f(wrapping)f(on)m(to)i(a)f(new)g(screen)g -(line.)39 b(By)27 b(default,)g(this)1110 4390 y(v)-5 +(line.)39 b(By)27 b(default,)g(this)1110 4975 y(v)-5 b(ariable)31 b(is)g(set)f(to)i(`)p Fs(off)p Ft('.)630 -4536 y Fs(input-meta)1110 4646 y Ft(If)f(set)g(to)h(`)p +5121 y Fs(input-meta)1110 5230 y Ft(If)f(set)g(to)h(`)p Fs(on)p Ft(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it) -i(will)f(not)h(clear)1110 4755 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h -(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110 -4865 y(terminal)g(claims)h(it)g(can)f(supp)s(ort.)68 -b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Fs(off)p -Ft('.)69 b(The)1110 4975 y(name)30 b Fs(meta-flag)e Ft(is)j(a)f(synon)m -(ym)g(for)g(this)h(v)-5 b(ariable.)630 5121 y Fs(isearch-terminators) -1110 5230 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 5340 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)p eop end +i(will)f(not)h(clear)1110 5340 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h +(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)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)1110 299 y(\(see)42 -b(Section)f(8.2.5)i([Searc)m(hing],)i(page)c(94\).)73 -b(If)41 b(this)g(v)-5 b(ariable)41 b(has)g(not)1110 408 +b(Command)29 b(Line)i(Editing)2107 b(97)1110 299 y(terminal)40 +b(claims)h(it)g(can)f(supp)s(ort.)68 b(The)39 b(default)h(v)-5 +b(alue)40 b(is)g(`)p Fs(off)p Ft('.)69 b(The)1110 408 +y(name)30 b Fs(meta-flag)e Ft(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5 +b(ariable.)630 579 y Fs(isearch-terminators)1110 689 +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 798 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 +908 y(\(see)42 b(Section)f(8.2.5)i([Searc)m(hing],)i(page)c(94\).)73 +b(If)41 b(this)g(v)-5 b(ariable)41 b(has)g(not)1110 1017 y(b)s(een)31 b(giv)m(en)h(a)g(v)-5 b(alue,)32 b(the)g(c)m(haracters) -2494 405 y Fg(h)p 2518 352 139 4 v 2518 408 a Ff(ESC)p -2518 424 V 2652 405 a Fg(i)2713 408 y Ft(and)f Fj(C-J)g -Ft(will)h(terminate)g(an)1110 518 y(incremen)m(tal)g(searc)m(h.)630 -689 y Fs(keymap)192 b Ft(Sets)39 b(Readline's)g(idea)h(of)f(the)g +2494 1014 y Fg(h)p 2518 961 139 4 v 2518 1017 a Ff(ESC)p +2518 1033 V 2652 1014 a Fg(i)2713 1017 y Ft(and)f Fj(C-J)g +Ft(will)h(terminate)g(an)1110 1127 y(incremen)m(tal)g(searc)m(h.)630 +1297 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 -798 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 908 y -Fs(emacs-meta)p Ft(,)99 b Fs(emacs-ctlx)p Ft(,)f Fs(vi)p +1407 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 1517 +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 -1017 y Fs(vi-insert)p Ft(.)64 b Fs(vi)38 b Ft(is)h(equiv)-5 +1626 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 1127 y(to)33 b Fs(emacs-standard)p +Ft(is)i(equiv)-5 b(alen)m(t)1110 1736 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 1236 +Ft(.)44 b(The)31 b(v)-5 b(alue)33 b(of)f(the)1110 1845 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 1407 y Fs(mark-directories)1110 -1517 y Ft(If)38 b(set)g(to)h(`)p Fs(on)p Ft(',)i(completed)e(directory) +(default)f(k)m(eymap.)630 2016 y Fs(mark-directories)1110 +2125 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 -1626 y(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630 -1797 y Fs(mark-modified-lines)1110 1906 y Ft(This)k(v)-5 +2235 y(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630 +2405 y Fs(mark-modified-lines)1110 2515 y Ft(This)k(v)-5 b(ariable,)38 b(when)d(set)h(to)h(`)p Fs(on)p Ft(',)g(causes)g -(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 2016 y(terisk)f(\(`)p +(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 2625 y(terisk)f(\(`)p Fs(*)p Ft('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f -(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 2125 y(This)d(v)-5 +(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 2734 y(This)d(v)-5 b(ariable)31 b(is)f(`)p Fs(off)p Ft(')g(b)m(y)g(default.)630 -2296 y Fs(mark-symlinked-directori)o(es)1110 2405 y Ft(If)44 +2905 y Fs(mark-symlinked-directori)o(es)1110 3014 y Ft(If)44 b(set)h(to)h(`)p Fs(on)p Ft(',)i(completed)e(names)f(whic)m(h)f(are)h -(sym)m(b)s(olic)g(links)g(to)g(di-)1110 2515 y(rectories)j(ha)m(v)m(e)f +(sym)m(b)s(olic)g(links)g(to)g(di-)1110 3124 y(rectories)j(ha)m(v)m(e)f (a)g(slash)f(app)s(ended)e(\(sub)5 b(ject)47 b(to)g(the)f(v)-5 -b(alue)47 b(of)f Fs(mark-)1110 2625 y(directories)p Ft(\).)38 -b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630 2795 -y Fs(match-hidden-files)1110 2905 y Ft(This)21 b(v)-5 +b(alue)47 b(of)f Fs(mark-)1110 3233 y(directories)p Ft(\).)38 +b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630 3404 +y Fs(match-hidden-files)1110 3513 y Ft(This)21 b(v)-5 b(ariable,)25 b(when)d(set)g(to)h(`)p Fs(on)p Ft(',)h(causes)f -(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 3014 +(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 3623 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fs(.)p Ft(')g(\(hidden)f -(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 3124 +(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 3733 y(completion,)j(unless)41 b(the)g(leading)h(`)p Fs(.)p Ft(')g(is)g(supplied)e(b)m(y)h(the)h(user)f(in)g(the)1110 -3233 y(\014lename)31 b(to)g(b)s(e)e(completed.)42 b(This)30 +3842 y(\014lename)31 b(to)g(b)s(e)e(completed.)42 b(This)30 b(v)-5 b(ariable)31 b(is)f(`)p Fs(on)p Ft(')h(b)m(y)f(default.)630 -3404 y Fs(output-meta)1110 3513 y Ft(If)35 b(set)h(to)g(`)p +4013 y Fs(output-meta)1110 4122 y Ft(If)35 b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(will)g(displa)m(y)f(c)m(haracters)i(with)e -(the)h(eigh)m(th)g(bit)1110 3623 y(set)h(directly)g(rather)f(than)g(as) +(the)h(eigh)m(th)g(bit)1110 4232 y(set)h(directly)g(rather)f(than)g(as) h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59 b(The)1110 -3733 y(default)31 b(is)f(`)p Fs(off)p Ft('.)630 3903 -y Fs(page-completions)1110 4013 y Ft(If)j(set)i(to)f(`)p +4341 y(default)31 b(is)f(`)p Fs(off)p Ft('.)630 4512 +y Fs(page-completions)1110 4622 y Ft(If)j(set)i(to)f(`)p Fs(on)p Ft(',)h(Readline)g(uses)e(an)h(in)m(ternal)h Fs(more)p Ft(-lik)m(e)f(pager)g(to)h(displa)m(y)1110 -4122 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.) +4731 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.) 47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fs(on)p Ft(')1110 -4232 y(b)m(y)e(default.)630 4402 y Fs(print-completions-horizo)o(ntal)o -(ly)1110 4512 y Ft(If)23 b(set)i(to)g(`)p Fs(on)p Ft(',)g(Readline)g +4841 y(b)m(y)e(default.)630 5011 y Fs(print-completions-horizo)o(ntal)o +(ly)1110 5121 y Ft(If)23 b(set)i(to)g(`)p Fs(on)p Ft(',)g(Readline)g (will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110 -4622 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c -(than)g(do)m(wn)g(the)h(screen.)1110 4731 y(The)30 b(default)g(is)h(`)p -Fs(off)p Ft('.)630 4902 y Fs(show-all-if-ambiguous)1110 -5011 y Ft(This)e(alters)i(the)f(default)g(b)s(eha)m(vior)g(of)g(the)h -(completion)g(functions.)40 b(If)29 b(set)1110 5121 y(to)f(`)p -Fs(on)p Ft(',)g(w)m(ords)f(whic)m(h)g(ha)m(v)m(e)i(more)f(than)f(one)h -(p)s(ossible)f(completion)h(cause)1110 5230 y(the)39 -b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i(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 +5230 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c +(than)g(do)m(wn)g(the)h(screen.)1110 5340 y(The)30 b(default)g(is)h(`)p +Fs(off)p Ft('.)p eop end %%Page: 98 104 TeXDict begin 98 103 bop 150 -116 a Ft(98)2572 b(Bash)31 -b(Reference)g(Man)m(ual)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)h(to)g Fq(sho)m(w-all-if-am)m(biguous)p Ft(.)41 -b(If)25 b(set)h(to)h(`)p Fs(on)p Ft(',)f(w)m(ords)f(whic)m(h)1110 -628 y(ha)m(v)m(e)32 b(more)f(than)f(one)i(p)s(ossible)e(completion)i -(without)f(an)m(y)g(p)s(ossible)f(par-)1110 737 y(tial)43 -b(completion)h(\(the)f(p)s(ossible)f(completions)h(don't)f(share)g(a)h -(common)1110 847 y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s -(e)f(listed)g(immediately)i(instead)e(of)h(ring-)1110 -956 y(ing)g(the)f(b)s(ell.)41 b(The)30 b(default)g(v)-5 -b(alue)31 b(is)f(`)p Fs(off)p Ft('.)630 1113 y Fs(visible-stats)1110 -1223 y Ft(If)h(set)i(to)f(`)p Fs(on)p Ft(',)h(a)f(c)m(haracter)i -(denoting)e(a)g(\014le's)g(t)m(yp)s(e)g(is)g(app)s(ended)e(to)j(the) -1110 1332 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42 -b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)150 1489 -y(Key)f(Bindings)630 1598 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h -(k)m(ey)g(bindings)e(in)h(the)g(init)g(\014le)g(is)g(simple.)75 -b(First)43 b(y)m(ou)630 1708 y(need)27 b(to)i(\014nd)d(the)i(name)f(of) -h(the)g(command)f(that)i(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 -b(The)27 b(follo)m(wing)630 1817 y(sections)37 b(con)m(tain)g(tables)g -(of)f(the)g(command)f(name,)j(the)e(default)g(k)m(eybinding,)h(if)f(an) -m(y)-8 b(,)630 1927 y(and)30 b(a)h(short)f(description)g(of)h(what)f -(the)g(command)h(do)s(es.)630 2060 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g -(name)g(of)g(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g -(the)g(init)630 2170 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m -(ou)g(wish)f(to)h(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then) -630 2279 y(the)f(name)h(of)f(the)g(command.)46 b(There)32 +b(Reference)g(Man)m(ual)630 299 y Fs(revert-all-at-newline)1110 +408 y Ft(If)e(set)h(to)g(`)p Fs(on)p Ft(',)g(Readline)g(will)g(undo)f +(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110 +518 y(returning)f(when)f Fs(accept-line)f Ft(is)j(executed.)41 +b(By)29 b(default,)g(history)g(lines)1110 628 y(ma)m(y)42 +b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h +(across)g(calls)h(to)1110 737 y Fs(readline)p Ft(.)38 +b(The)30 b(default)h(is)f(`)p Fs(off)p Ft('.)630 905 +y Fs(show-all-if-ambiguous)1110 1015 y Ft(This)f(alters)i(the)f +(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40 +b(If)29 b(set)1110 1124 y(to)f(`)p Fs(on)p Ft(',)g(w)m(ords)f(whic)m(h) +g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause) +1110 1234 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i +(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 1344 y(The)30 +b(default)g(v)-5 b(alue)31 b(is)g(`)p Fs(off)p Ft('.)630 +1512 y Fs(show-all-if-unmodified)1110 1621 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 1731 y(fashion)25 b(similar)h(to)g +Fq(sho)m(w-all-if-am)m(biguous)p Ft(.)41 b(If)25 b(set)h(to)h(`)p +Fs(on)p Ft(',)f(w)m(ords)f(whic)m(h)1110 1840 y(ha)m(v)m(e)32 +b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s +(ossible)f(par-)1110 1950 y(tial)43 b(completion)h(\(the)f(p)s(ossible) +f(completions)h(don't)f(share)g(a)h(common)1110 2060 +y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g +(immediately)i(instead)e(of)h(ring-)1110 2169 y(ing)g(the)f(b)s(ell.)41 +b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fs(off)p +Ft('.)630 2337 y Fs(visible-stats)1110 2447 y Ft(If)h(set)i(to)f(`)p +Fs(on)p Ft(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s +(e)g(is)g(app)s(ended)e(to)j(the)1110 2556 y(\014lename)e(when)e +(listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p +Fs(off)p Ft('.)150 2724 y(Key)f(Bindings)630 2834 y(The)41 +b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g +(init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630 +2944 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i +(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 b(The)27 b(follo)m(wing)630 +3053 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j +(the)e(default)g(k)m(eybinding,)h(if)f(an)m(y)-8 b(,)630 +3163 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h +(do)s(es.)630 3302 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g +(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g(the)g(init)630 +3411 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h +(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)630 +3521 y(the)f(name)h(of)f(the)g(command.)46 b(There)32 b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g -(and)630 2389 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m +(and)630 3630 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m (terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72 -b(The)40 b(name)h(of)630 2498 y(the)35 b(k)m(ey)g(can)g(b)s(e)f +b(The)40 b(name)h(of)630 3740 y(the)35 b(k)m(ey)g(can)g(b)s(e)f (expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h -(what)h(y)m(ou)g(\014nd)e(most)630 2608 y(comfortable.)630 -2741 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h +(what)h(y)m(ou)g(\014nd)e(most)630 3850 y(comfortable.)630 +3988 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h (k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630 -2851 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g -(\(a)h Fq(macro)5 b Ft(\).)630 2984 y(The)42 b Fs(bind)30 +4098 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g +(\(a)h Fq(macro)5 b Ft(\).)630 4237 y(The)42 b Fs(bind)30 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 3093 y(format)37 b(that)h(can)f(put)f(directly) +f(bindings)g(in)h(a)630 4346 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 3203 y(Builtins],)31 b(page)g(41.)630 -3360 y Fq(k)m(eyname)5 b Ft(:)42 b Fq(function-name)35 -b Ft(or)c Fq(macro)1110 3469 y(k)m(eyname)k Ft(is)29 +b(Section)f(4.2)i([Bash)630 4456 y(Builtins],)31 b(page)g(41.)630 +4624 y Fq(k)m(eyname)5 b Ft(:)42 b Fq(function-name)35 +b Ft(or)c Fq(macro)1110 4734 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 -b(F)-8 b(or)30 b(example:)1350 3602 y Fs(Control-u:)45 -b(universal-argument)1350 3712 y(Meta-Rubout:)f(backward-kill-word)1350 -3821 y(Control-o:)h(">)i(output")1110 3954 y Ft(In)38 +b(F)-8 b(or)30 b(example:)1350 4872 y Fs(Control-u:)45 +b(universal-argument)1350 4982 y(Meta-Rubout:)f(backward-kill-word)1350 +5092 y(Control-o:)h(">)i(output")1110 5230 y Ft(In)38 b(the)h(ab)s(o)m(v)m(e)h(example,)h Fj(C-u)d Ft(is)h(b)s(ound)d(to)k -(the)e(function)h Fs(universal-)1110 4064 y(argument)p +(the)e(function)h Fs(universal-)1110 5340 y(argument)p Ft(,)f Fj(M-DEL)e Ft(is)i(b)s(ound)e(to)i(the)g(function)g -Fs(backward-kill-word)p Ft(,)1110 4174 y(and)g Fj(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 4283 y(side)30 b(\(that)i(is,)e(to)h(insert)g -(the)f(text)i(`)p Fs(>)e(output)p Ft(')f(in)m(to)i(the)g(line\).)1110 -4416 y(A)37 b(n)m(um)m(b)s(er)f(of)h(sym)m(b)s(olic)g(c)m(haracter)i -(names)e(are)g(recognized)h(while)f(pro-)1110 4526 y(cessing)24 -b(this)g(k)m(ey)g(binding)f(syn)m(tax:)37 b Fq(DEL)p -Ft(,)24 b Fq(ESC)p Ft(,)f Fq(ESCAPE)p Ft(,)g Fq(LFD)p -Ft(,)h Fq(NEW-)1110 4635 y(LINE)p Ft(,)30 b Fq(RET)p -Ft(,)g Fq(RETURN)p Ft(,)h Fq(R)m(UBOUT)p Ft(,)g Fq(SP)-8 -b(A)m(CE)p Ft(,)30 b Fq(SPC)p Ft(,)g(and)f Fq(T)-8 b(AB)p -Ft(.)630 4792 y Fs(")p Fq(k)m(eyseq)r Fs(")p Ft(:)41 -b Fq(function-name)36 b Ft(or)30 b Fq(macro)1110 4902 -y(k)m(eyseq)k Ft(di\013ers)d(from)f Fq(k)m(eyname)37 -b Ft(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f(denoting)g(an)g(en-)1110 -5011 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s(e)f(sp)s(eci\014ed,)h(b)m -(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)1110 5121 -y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h Ft(Emacs)f(st)m(yle)i(k)m -(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)1110 5230 -y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s(ecial)h(c)m -(haracter)g(names)f(are)g(not)1110 5340 y(recognized.)p -eop end +Fs(backward-kill-word)p Ft(,)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)1350 299 y Fs("\\C-u":)46 -b(universal-argument)1350 408 y("\\C-x\\C-r":)f(re-read-init-file)1350 -518 y("\\e[11~":)g("Function)h(Key)g(1")1110 660 y Ft(In)64 -b(the)g(ab)s(o)m(v)m(e)i(example,)74 b Fj(C-u)64 b Ft(is)g(again)i(b)s -(ound)c(to)k(the)e(function)1110 770 y Fs(universal-argument)39 -b Ft(\(just)k(as)h(it)g(w)m(as)g(in)g(the)f(\014rst)g(example\),)49 -b(`)p Fj(C-x)1110 880 y(C-r)p Ft(')41 b(is)g(b)s(ound)e(to)j(the)f -(function)g Fs(re-read-init-file)p Ft(,)e(and)i(`)3462 -877 y Fg(h)p 3486 823 139 4 v 3486 880 a Ff(ESC)p 3486 -895 V 3620 877 a Fg(i)31 b(h)p 3705 823 20 4 v 3705 880 -a Ff([)p 3705 896 V 3720 877 a Fg(i)1110 986 y(h)p 1134 -933 36 4 v 1134 989 a Ff(1)p 1134 1004 V 1165 986 a Fg(i)f(h)p -1250 933 V 1250 989 a Ff(1)p 1250 1004 V 1281 986 a Fg(i)g(h)p -1365 933 48 4 v 1365 989 a Fs(~)p 1365 1004 V 1409 986 -a Fg(i)1438 989 y Ft(')h(is)f(b)s(ound)f(to)i(insert)f(the)h(text)g(`)p -Fs(Function)d(Key)i(1)p Ft('.)630 1164 y(The)f(follo)m(wing)i -Fl(gnu)f Ft(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5 -b(ailable)32 b(when)d(sp)s(ecifying)630 1274 y(k)m(ey)i(sequences:)630 -1449 y Fj(\\C-)336 b Ft(con)m(trol)32 b(pre\014x)630 -1624 y Fj(\\M-)336 b Ft(meta)31 b(pre\014x)630 1799 y -Fj(\\e)384 b Ft(an)30 b(escap)s(e)h(c)m(haracter)630 -1974 y Fj(\\\\)384 b Ft(bac)m(kslash)630 2148 y Fj(\\)p -Fs(")1110 2145 y Fg(h)p 1134 2092 V 1134 2148 a Fs(")p -1134 2164 V 1178 2145 a Fg(i)1208 2148 y Ft(,)30 b(a)h(double)f -(quotation)h(mark)630 2323 y Fj(\\')1110 2320 y Fg(h)p -1134 2267 20 4 v 1134 2323 a Ff(')p 1134 2339 V 1150 -2320 a Fg(i)1179 2323 y Ft(,)g(a)g(single)g(quote)g(or)f(ap)s(ostrophe) -630 2498 y(In)d(addition)h(to)g(the)g Fl(gnu)f Ft(Emacs)h(st)m(yle)h +b(Command)29 b(Line)i(Editing)2107 b(99)1110 299 y(and)38 +b Fj(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)f(text)i(`)p Fs(>)e(output)p Ft(')f(in)m(to)i(the)g(line\).)1110 +543 y(A)37 b(n)m(um)m(b)s(er)f(of)h(sym)m(b)s(olic)g(c)m(haracter)i +(names)e(are)g(recognized)h(while)f(pro-)1110 653 y(cessing)24 +b(this)g(k)m(ey)g(binding)f(syn)m(tax:)37 b Fq(DEL)p +Ft(,)24 b Fq(ESC)p Ft(,)f Fq(ESCAPE)p Ft(,)g Fq(LFD)p +Ft(,)h Fq(NEW-)1110 763 y(LINE)p Ft(,)30 b Fq(RET)p Ft(,)g +Fq(RETURN)p Ft(,)h Fq(R)m(UBOUT)p Ft(,)g Fq(SP)-8 b(A)m(CE)p +Ft(,)30 b Fq(SPC)p Ft(,)g(and)f Fq(T)-8 b(AB)p Ft(.)630 +923 y Fs(")p Fq(k)m(eyseq)r Fs(")p Ft(:)41 b Fq(function-name)36 +b Ft(or)30 b Fq(macro)1110 1032 y(k)m(eyseq)k Ft(di\013ers)d(from)f +Fq(k)m(eyname)37 b Ft(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f +(denoting)g(an)g(en-)1110 1142 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s +(e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in) +1110 1251 y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h +Ft(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as) +1110 1361 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s +(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 1471 y(recognized.)1350 +1606 y Fs("\\C-u":)46 b(universal-argument)1350 1715 +y("\\C-x\\C-r":)f(re-read-init-file)1350 1825 y("\\e[11~":)g("Function) +h(Key)g(1")1110 1960 y Ft(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74 +b Fj(C-u)64 b Ft(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110 +2069 y Fs(universal-argument)39 b Ft(\(just)k(as)h(it)g(w)m(as)g(in)g +(the)f(\014rst)g(example\),)49 b(`)p Fj(C-x)1110 2179 +y(C-r)p Ft(')41 b(is)g(b)s(ound)e(to)j(the)f(function)g +Fs(re-read-init-file)p Ft(,)e(and)i(`)3462 2176 y Fg(h)p +3486 2123 139 4 v 3486 2179 a Ff(ESC)p 3486 2194 V 3620 +2176 a Fg(i)31 b(h)p 3705 2123 20 4 v 3705 2179 a Ff([)p +3705 2195 V 3720 2176 a Fg(i)1110 2285 y(h)p 1134 2232 +36 4 v 1134 2288 a Ff(1)p 1134 2304 V 1165 2285 a Fg(i)f(h)p +1250 2232 V 1250 2288 a Ff(1)p 1250 2304 V 1281 2285 +a Fg(i)g(h)p 1365 2232 48 4 v 1365 2288 a Fs(~)p 1365 +2304 V 1409 2285 a Fg(i)1438 2288 y Ft(')h(is)f(b)s(ound)f(to)i(insert) +f(the)h(text)g(`)p Fs(Function)d(Key)i(1)p Ft('.)630 +2449 y(The)f(follo)m(wing)i Fl(gnu)f Ft(Emacs)g(st)m(yle)h(escap)s(e)f +(sequences)g(are)g(a)m(v)-5 b(ailable)32 b(when)d(sp)s(ecifying)630 +2558 y(k)m(ey)i(sequences:)630 2718 y Fj(\\C-)336 b Ft(con)m(trol)32 +b(pre\014x)630 2878 y Fj(\\M-)336 b Ft(meta)31 b(pre\014x)630 +3039 y Fj(\\e)384 b Ft(an)30 b(escap)s(e)h(c)m(haracter)630 +3199 y Fj(\\\\)384 b Ft(bac)m(kslash)630 3359 y Fj(\\)p +Fs(")1110 3356 y Fg(h)p 1134 3303 V 1134 3359 a Fs(")p +1134 3374 V 1178 3356 a Fg(i)1208 3359 y Ft(,)30 b(a)h(double)f +(quotation)h(mark)630 3519 y Fj(\\')1110 3516 y Fg(h)p +1134 3463 20 4 v 1134 3519 a Ff(')p 1134 3534 V 1150 +3516 a Fg(i)1179 3519 y Ft(,)g(a)g(single)g(quote)g(or)f(ap)s(ostrophe) +630 3679 y(In)d(addition)h(to)g(the)g Fl(gnu)f Ft(Emacs)h(st)m(yle)h (escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g(bac)m(kslash)630 -2608 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630 2783 -y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 2958 y Fs(\\b)384 -b Ft(bac)m(kspace)630 3133 y Fs(\\d)g Ft(delete)630 3308 -y Fs(\\f)g Ft(form)30 b(feed)630 3483 y Fs(\\n)384 b -Ft(newline)630 3658 y Fs(\\r)g Ft(carriage)32 b(return)630 -3833 y Fs(\\t)384 b Ft(horizon)m(tal)32 b(tab)630 4008 -y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 4183 y Fs(\\)p +3789 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630 3949 +y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 4109 y Fs(\\b)384 +b Ft(bac)m(kspace)630 4269 y Fs(\\d)g Ft(delete)630 4430 +y Fs(\\f)g Ft(form)30 b(feed)630 4590 y Fs(\\n)384 b +Ft(newline)630 4750 y Fs(\\r)g Ft(carriage)32 b(return)630 +4910 y Fs(\\t)384 b Ft(horizon)m(tal)32 b(tab)630 5070 +y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 5230 y Fs(\\)p Fj(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 4292 y(three)c(digits\))630 4467 y -Fs(\\x)p Fj(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 4577 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630 -4752 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e +Ft(\(one)i(to)1110 5340 y(three)c(digits\))p eop end +%%Page: 100 106 +TeXDict begin 100 105 bop 150 -116 a Ft(100)2527 b(Bash)31 +b(Reference)g(Man)m(ual)630 299 y Fs(\\x)p Fj(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 +554 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e (or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630 -4861 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21 +664 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38 -b(In)630 4971 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23 +b(In)630 773 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j -(are)e(expanded.)37 b(Bac)m(kslash)630 5081 y(will)j(quote)h(an)m(y)f +(are)e(expanded.)37 b(Bac)m(kslash)630 883 y(will)j(quote)h(an)m(y)f (other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39 b(`)p Fs(")p Ft(')h(and)g(`)p Fs(')p Ft('.)69 b(F)-8 -b(or)630 5190 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i -(mak)m(e)h(`)p Fj(C-x)j Fs(\\)p Ft(')c(insert)f(a)h(single)h(`)p -Fs(\\)p Ft(')f(in)m(to)g(the)g(line:)870 5332 y Fs("\\C-x\\\\":)45 -b("\\\\")p eop end -%%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 Fk(8.3.2)63 b(Conditional)41 -b(Init)g(Constructs)275 541 y Ft(Readline)36 b(implemen)m(ts)f(a)h -(facilit)m(y)i(similar)d(in)g(spirit)g(to)h(the)g(conditional)h -(compilation)g(features)150 651 y(of)e(the)f(C)g(prepro)s(cessor)g -(whic)m(h)g(allo)m(ws)i(k)m(ey)f(bindings)e(and)h(v)-5 -b(ariable)35 b(settings)h(to)f(b)s(e)f(p)s(erformed)f(as)150 -760 y(the)e(result)f(of)g(tests.)42 b(There)30 b(are)h(four)e(parser)h -(directiv)m(es)i(used.)150 916 y Fs($if)336 b Ft(The)31 -b Fs($if)f Ft(construct)i(allo)m(ws)h(bindings)d(to)i(b)s(e)e(made)i -(based)f(on)g(the)g(editing)h(mo)s(de,)g(the)630 1026 -y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g(application)h(using)f -(Readline.)64 b(The)38 b(text)h(of)f(the)g(test)630 1135 -y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m(haracters)i -(are)f(required)e(to)i(isolate)i(it.)630 1291 y Fs(mode)288 -b Ft(The)20 b Fs(mode=)g Ft(form)g(of)h(the)g Fs($if)f -Ft(directiv)m(e)j(is)e(used)f(to)h(test)h(whether)e(Readline)1110 -1401 y(is)29 b(in)h Fs(emacs)e Ft(or)h Fs(vi)g Ft(mo)s(de.)40 +b(or)630 993 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i(mak) +m(e)h(`)p Fj(C-x)j Fs(\\)p Ft(')c(insert)f(a)h(single)h(`)p +Fs(\\)p Ft(')f(in)m(to)g(the)g(line:)870 1120 y Fs("\\C-x\\\\":)45 +b("\\\\")150 1324 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs) +275 1561 y Ft(Readline)36 b(implemen)m(ts)f(a)h(facilit)m(y)i(similar)d +(in)g(spirit)g(to)h(the)g(conditional)h(compilation)g(features)150 +1671 y(of)e(the)f(C)g(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)f +(bindings)e(and)h(v)-5 b(ariable)35 b(settings)h(to)f(b)s(e)f(p)s +(erformed)f(as)150 1781 y(the)e(result)f(of)g(tests.)42 +b(There)30 b(are)h(four)e(parser)h(directiv)m(es)i(used.)150 +1926 y Fs($if)336 b Ft(The)31 b Fs($if)f Ft(construct)i(allo)m(ws)h +(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g +(the)630 2036 y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g +(application)h(using)f(Readline.)64 b(The)38 b(text)h(of)f(the)g(test) +630 2146 y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m +(haracters)i(are)f(required)e(to)i(isolate)i(it.)630 +2291 y Fs(mode)288 b Ft(The)20 b Fs(mode=)g Ft(form)g(of)h(the)g +Fs($if)f Ft(directiv)m(e)j(is)e(used)f(to)h(test)h(whether)e(Readline) +1110 2401 y(is)29 b(in)h Fs(emacs)e Ft(or)h Fs(vi)g Ft(mo)s(de.)40 b(This)29 b(ma)m(y)h(b)s(e)e(used)h(in)g(conjunction)h(with)f(the)1110 -1510 y(`)p Fs(set)h(keymap)p Ft(')c(command,)i(for)f(instance,)i(to)f -(set)g(bindings)f(in)g(the)h Fs(emacs-)1110 1620 y(standard)23 +2511 y(`)p Fs(set)h(keymap)p Ft(')c(command,)i(for)f(instance,)i(to)f +(set)g(bindings)f(in)g(the)h Fs(emacs-)1110 2620 y(standard)23 b Ft(and)h Fs(emacs-ctlx)f Ft(k)m(eymaps)i(only)g(if)g(Readline)h(is)f -(starting)h(out)1110 1729 y(in)k Fs(emacs)f Ft(mo)s(de.)630 -1885 y Fs(term)288 b Ft(The)26 b Fs(term=)g Ft(form)g(ma)m(y)i(b)s(e)e +(starting)h(out)1110 2730 y(in)k Fs(emacs)f Ft(mo)s(de.)630 +2876 y Fs(term)288 b Ft(The)26 b Fs(term=)g Ft(form)g(ma)m(y)i(b)s(e)e (used)g(to)i(include)f(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 -1995 y(ings,)38 b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f -(output)g(b)m(y)g(the)g(terminal's)1110 2104 y(function)24 +2985 y(ings,)38 b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f +(output)g(b)m(y)g(the)g(terminal's)1110 3095 y(function)24 b(k)m(eys.)39 b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g -(the)g(`)p Fs(=)p Ft(')g(is)g(tested)h(against)1110 2214 +(the)g(`)p Fs(=)p Ft(')g(is)g(tested)h(against)1110 3204 y(b)s(oth)k(the)h(full)g(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s -(ortion)e(of)h(the)g(terminal)1110 2324 y(name)k(b)s(efore)f(the)g +(ortion)e(of)h(the)g(terminal)1110 3314 y(name)k(b)s(efore)f(the)g (\014rst)g(`)p Fs(-)p Ft('.)50 b(This)33 b(allo)m(ws)i Fs(sun)e Ft(to)h(matc)m(h)g(b)s(oth)f Fs(sun)g Ft(and)1110 -2433 y Fs(sun-cmd)p Ft(,)c(for)h(instance.)630 2589 y -Fs(application)1110 2699 y Ft(The)21 b Fq(application)j +3424 y Fs(sun-cmd)p Ft(,)c(for)h(instance.)630 3569 y +Fs(application)1110 3679 y Ft(The)21 b Fq(application)j Ft(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h -(set-)1110 2808 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h +(set-)1110 3789 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h (Readline)g(library)g(sets)g(the)g Fq(application)1110 -2918 y(name)p Ft(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h +3898 y(name)p Ft(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h (v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110 -3027 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h -(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 3137 +4008 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h +(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 4117 y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f -(sequence)h(that)f(quotes)1110 3246 y(the)e(curren)m(t)f(or)g(previous) -g(w)m(ord)g(in)g(Bash:)1350 3379 y Fs($if)47 b(Bash)1350 -3489 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350 -3598 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 3708 y($endif)150 -3864 y($endif)192 b Ft(This)29 b(command,)i(as)f(seen)h(in)f(the)g +(sequence)h(that)f(quotes)1110 4227 y(the)e(curren)m(t)f(or)g(previous) +g(w)m(ord)g(in)g(Bash:)1350 4355 y Fs($if)47 b(Bash)1350 +4464 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350 +4574 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 4683 y($endif)150 +4829 y($endif)192 b Ft(This)29 b(command,)i(as)f(seen)h(in)f(the)g (previous)g(example,)h(terminates)g(an)g Fs($if)e Ft(command.)150 -4019 y Fs($else)240 b Ft(Commands)29 b(in)h(this)h(branc)m(h)e(of)i +4975 y Fs($else)240 b Ft(Commands)29 b(in)h(this)h(branc)m(h)e(of)i (the)f Fs($if)g Ft(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g -(fails.)150 4175 y Fs($include)96 b Ft(This)43 b(directiv)m(e)i(tak)m +(fails.)150 5121 y Fs($include)96 b Ft(This)43 b(directiv)m(e)i(tak)m (es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g -(commands)630 4285 y(and)38 b(bindings)f(from)h(that)i(\014le.)65 +(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 4394 y(`)p Fs(/etc/inputrc)p Ft(':)870 4527 -y Fs($include)46 b(/etc/inputrc)150 4746 y Fk(8.3.3)63 -b(Sample)41 b(Init)g(File)275 4988 y Ft(Here)31 b(is)f(an)g(example)i -(of)e(an)g Fq(inputrc)35 b Ft(\014le.)42 b(This)29 b(illustrates)j(k)m -(ey)f(binding,)f(v)-5 b(ariable)31 b(assignmen)m(t,)150 -5098 y(and)f(conditional)h(syn)m(tax.)p eop end +(from)630 5340 y(`)p Fs(/etc/inputrc)p Ft(':)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)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) -g(FTP,)g(Bash,)h(and)g(GDB.)390 737 y(#)390 847 y(#)g(You)g(can)g -(re-read)f(the)h(inputrc)f(file)g(with)h(C-x)g(C-r.)390 -956 y(#)g(Lines)g(beginning)e(with)i('#')g(are)g(comments.)390 -1066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(systemwide)e(bindings) -h(and)h(variable)390 1285 y(#)g(assignments)e(from)i(/etc/Inputrc)390 -1395 y($include)f(/etc/Inputrc)390 1614 y(#)390 1724 -y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)390 -1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390 +b(Command)29 b(Line)i(Editing)2062 b(101)870 299 y Fs($include)46 +b(/etc/inputrc)150 523 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)275 +767 y Ft(Here)31 b(is)f(an)g(example)i(of)e(an)g Fq(inputrc)35 +b Ft(\014le.)42 b(This)29 b(illustrates)j(k)m(ey)f(binding,)f(v)-5 +b(ariable)31 b(assignmen)m(t,)150 877 y(and)f(conditional)h(syn)m(tax.) +p eop end +%%Page: 102 108 +TeXDict begin 102 107 bop 150 -116 a Ft(102)2527 b(Bash)31 +b(Reference)g(Man)m(ual)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)g(FTP,)g(Bash,)h(and)g +(GDB.)390 737 y(#)390 847 y(#)g(You)g(can)g(re-read)f(the)h(inputrc)f +(file)g(with)h(C-x)g(C-r.)390 956 y(#)g(Lines)g(beginning)e(with)i('#') +g(are)g(comments.)390 1066 y(#)390 1176 y(#)g(First,)g(include)e(any)i +(systemwide)e(bindings)h(and)h(variable)390 1285 y(#)g(assignments)e +(from)i(/etc/Inputrc)390 1395 y($include)f(/etc/Inputrc)390 +1614 y(#)390 1724 y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.) +390 1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390 2381 y(Meta-Control-h:)91 b(backward-kill-word)43 b(Text)k(after)f(the) h(function)f(name)g(is)h(ignored)390 2600 y(#)390 2710 y(#)g(Arrow)g(keys)f(in)i(keypad)e(mode)390 2819 y(#)390 @@ -11790,10 +11924,10 @@ y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(keypad)f(mode)390 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: 102 108 -TeXDict begin 102 107 bop 150 -116 a Ft(102)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 +%%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)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 y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g(the) g(default.)390 1176 y(TAB:)g(complete)390 1395 y(#)g(Macros)g(that)f @@ -11825,10 +11959,10 @@ y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h (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: 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)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 +%%Page: 104 110 +TeXDict begin 104 109 bop 150 -116 a Ft(104)2527 b(Bash)31 +b(Reference)g(Man)m(ual)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 1086 y Fr(8.4)68 b(Bindable)45 b(Readline)i(Commands) 275 1323 y Ft(This)34 b(section)j(describ)s(es)e(Readline)h(commands)g @@ -11873,31 +12007,31 @@ b(this)g(line)h(is)f(non-empt)m(y)-8 b(,)26 b(add)c(it)630 5340 y(to)27 b(the)f(history)g(list)h(according)g(to)g(the)f(setting)i (of)e(the)g Fs(HISTCONTROL)d Ft(and)j Fs(HISTIGNORE)p eop end -%%Page: 104 110 -TeXDict begin 104 109 bop 150 -116 a Ft(104)2527 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(v)-5 b(ariables.)42 -b(If)30 b(this)h(line)g(is)g(a)g(mo)s(di\014ed)e(history)i(line,)g -(then)f(restore)i(the)f(history)f(line)h(to)630 408 y(its)g(original)g -(state.)150 555 y Fs(previous-history)26 b(\(C-p\))630 -664 y Ft(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g -(fetc)m(hing)g(the)g(previous)f(command.)150 810 y Fs(next-history)d -(\(C-n\))630 920 y Ft(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i -(history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150 -1066 y Fs(beginning-of-history)25 b(\(M-<\))630 1176 -y Ft(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8 -b(.)150 1322 y Fs(end-of-history)26 b(\(M->\))630 1431 -y Ft(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8 -b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s(eing)f(en)m(tered.)150 -1577 y Fs(reverse-search-history)24 b(\(C-r\))630 1687 -y Ft(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g -(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630 -1797 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m -(tal)i(searc)m(h.)150 1943 y Fs(forward-search-history)24 -b(\(C-s\))630 2052 y Ft(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g -(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')f(through)g(the) -h(the)630 2162 y(history)g(as)h(necessary)-8 b(.)41 b(This)30 -b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 2308 y Fs -(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24 +%%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(v)-5 +b(ariables.)42 b(If)30 b(this)h(line)g(is)g(a)g(mo)s(di\014ed)e +(history)i(line,)g(then)f(restore)i(the)f(history)f(line)h(to)630 +408 y(its)g(original)g(state.)150 555 y Fs(previous-history)26 +b(\(C-p\))630 664 y Ft(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g +(history)h(list,)g(fetc)m(hing)g(the)g(previous)f(command.)150 +810 y Fs(next-history)d(\(C-n\))630 920 y Ft(Mo)m(v)m(e)32 +b(`forw)m(ard')f(through)e(the)i(history)f(list,)i(fetc)m(hing)f(the)g +(next)f(command.)150 1066 y Fs(beginning-of-history)25 +b(\(M-<\))630 1176 y Ft(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in) +h(the)f(history)-8 b(.)150 1322 y Fs(end-of-history)26 +b(\(M->\))630 1431 y Ft(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h +(input)e(history)-8 b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s +(eing)f(en)m(tered.)150 1577 y Fs(reverse-search-history)24 +b(\(C-r\))630 1687 y Ft(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g +(the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g +(his-)630 1797 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 +b(is)i(an)f(incremen)m(tal)i(searc)m(h.)150 1943 y Fs +(forward-search-history)24 b(\(C-s\))630 2052 y Ft(Searc)m(h)30 +b(forw)m(ard)f(starting)h(at)g(the)g(curren)m(t)f(line)h(and)f(mo)m +(ving)h(`do)m(wn')f(through)g(the)h(the)630 2162 y(history)g(as)h +(necessary)-8 b(.)41 b(This)30 b(is)g(an)h(incremen)m(tal)g(searc)m(h.) +150 2308 y Fs(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24 b(\(M-p\))630 2418 y Ft(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g (the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g (his-)630 2527 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m @@ -11939,18 +12073,17 @@ f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630 Ft(.)38 b(Succes-)630 5340 y(siv)m(e)d(calls)h(to)f Fs(yank-last-arg)c Ft(mo)m(v)m(e)36 b(bac)m(k)g(through)d(the)i(history)g(list,)h (inserting)f(the)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(last)32 -b(argumen)m(t)f(of)g(eac)m(h)h(line)f(in)f(turn.)41 b(The)30 -b(history)h(expansion)f(facilities)j(are)e(used)f(to)630 -408 y(extract)i(the)e(last)i(argumen)m(t,)f(as)f(if)h(the)f(`)p -Fs(!$)p Ft(')g(history)h(expansion)f(had)g(b)s(een)f(sp)s(eci\014ed.) -150 636 y Fk(8.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10 -b(ext)150 881 y Fs(delete-char)27 b(\(C-d\))630 990 y -Ft(Delete)41 b(the)e(c)m(haracter)i(at)e(p)s(oin)m(t.)66 -b(If)39 b(p)s(oin)m(t)f(is)h(at)h(the)f(b)s(eginning)f(of)h(the)g -(line,)j(there)630 1100 y(are)37 b(no)g(c)m(haracters)i(in)d(the)i +%%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(last)h(argumen)m(t)f(of)g(eac)m(h)h +(line)f(in)f(turn.)41 b(The)30 b(history)h(expansion)f(facilities)j +(are)e(used)f(to)630 408 y(extract)i(the)e(last)i(argumen)m(t,)f(as)f +(if)h(the)f(`)p Fs(!$)p Ft(')g(history)h(expansion)f(had)g(b)s(een)f +(sp)s(eci\014ed.)150 636 y Fk(8.4.3)63 b(Commands)42 +b(F)-10 b(or)41 b(Changing)g(T)-10 b(ext)150 881 y Fs(delete-char)27 +b(\(C-d\))630 990 y Ft(Delete)41 b(the)e(c)m(haracter)i(at)e(p)s(oin)m +(t.)66 b(If)39 b(p)s(oin)m(t)f(is)h(at)h(the)f(b)s(eginning)f(of)h(the) +g(line,)j(there)630 1100 y(are)37 b(no)g(c)m(haracters)i(in)d(the)i (line,)h(and)d(the)h(last)h(c)m(haracter)h(t)m(yp)s(ed)e(w)m(as)g(not)g (b)s(ound)e(to)630 1209 y Fs(delete-char)p Ft(,)28 b(then)i(return)f Fl(eof)p Ft(.)150 1370 y Fs(backward-delete-char)c(\(Rubout\))630 @@ -12000,13 +12133,13 @@ b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,) h(switc)m(hes)630 5340 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37 b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m (t,)i(switc)m(hes)e(to)p eop end -%%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(insert)f(mo)s(de.)41 -b(This)30 b(command)h(a\013ects)h(only)e Fs(emacs)f Ft(mo)s(de;)i -Fs(vi)f Ft(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 408 -y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f -Fs(readline\(\))c Ft(starts)k(in)f(insert)g(mo)s(de.)630 +%%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(insert)30 +b(mo)s(de.)41 b(This)30 b(command)h(a\013ects)h(only)e +Fs(emacs)f Ft(mo)s(de;)i Fs(vi)f Ft(mo)s(de)g(do)s(es)g(o)m(v)m +(erwrite)630 408 y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 +b(call)h(to)f Fs(readline\(\))c Ft(starts)k(in)f(insert)g(mo)s(de.)630 539 y(In)e(o)m(v)m(erwrite)j(mo)s(de,)e(c)m(haracters)i(b)s(ound)c(to)j Fs(self-insert)c Ft(replace)k(the)g(text)g(at)g(p)s(oin)m(t)630 648 y(rather)41 b(than)h(pushing)e(the)i(text)g(to)g(the)g(righ)m(t.)75 @@ -12063,20 +12196,19 @@ b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h 5340 y(same)f(as)f Fs(forward-word)p Ft(.)38 b(By)30 b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)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)150 299 y Fs(yank)29 -b(\(C-y\))630 408 y Ft(Y)-8 b(ank)31 b(the)f(top)h(of)g(the)f(kill)h -(ring)f(in)m(to)i(the)e(bu\013er)g(at)h(p)s(oin)m(t.)150 -558 y Fs(yank-pop)d(\(M-y\))630 667 y Ft(Rotate)36 b(the)f(kill-ring,)i -(and)d(y)m(ank)h(the)f(new)g(top.)54 b(Y)-8 b(ou)35 b(can)g(only)f(do)h -(this)f(if)h(the)g(prior)630 777 y(command)30 b(is)h -Fs(yank)e Ft(or)h Fs(yank-pop)p Ft(.)150 986 y Fk(8.4.5)63 -b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m(ts)150 1225 -y Fs(digit-argument)26 b(\()p Fj(M-0)p Fs(,)j Fj(M-1)p -Fs(,)h(...)f Fj(M--)p Fs(\))630 1335 y Ft(Add)d(this)h(digit)g(to)h -(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f(new) -f(argumen)m(t.)630 1445 y Fj(M--)j Ft(starts)i(a)g(negativ)m(e)i +%%Page: 108 114 +TeXDict begin 108 113 bop 150 -116 a Ft(108)2527 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fs(yank)e(\(C-y\))630 +408 y Ft(Y)-8 b(ank)31 b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i +(the)e(bu\013er)g(at)h(p)s(oin)m(t.)150 558 y Fs(yank-pop)d(\(M-y\))630 +667 y Ft(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g +(top.)54 b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630 +777 y(command)30 b(is)h Fs(yank)e Ft(or)h Fs(yank-pop)p +Ft(.)150 986 y Fk(8.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m(ts) +150 1225 y Fs(digit-argument)26 b(\()p Fj(M-0)p Fs(,)j +Fj(M-1)p Fs(,)h(...)f Fj(M--)p Fs(\))630 1335 y Ft(Add)d(this)h(digit)g +(to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f +(new)f(argumen)m(t.)630 1445 y Fj(M--)j Ft(starts)i(a)g(negativ)m(e)i (argumen)m(t.)150 1594 y Fs(universal-argument)25 b(\(\))630 1704 y Ft(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g (argumen)m(t.)40 b(If)25 b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m @@ -12134,607 +12266,618 @@ Fq(n)630 5121 y Ft(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e (ound)e(to)630 5337 y Fg(h)p 654 5284 V 654 5340 a Ff(T)-6 b(AB)p 654 5355 V 798 5337 a Fg(i)828 5340 y Ft(,)30 b(but)g(is)g(un)m(b)s(ound)e(b)m(y)i(default.)p eop end -%%Page: 108 114 -TeXDict begin 108 113 bop 150 -116 a Ft(108)2527 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fs(delete-char-or-list)25 -b(\(\))630 408 y Ft(Deletes)k(the)e(c)m(haracter)h(under)e(the)h -(cursor)f(if)h(not)g(at)g(the)g(b)s(eginning)g(or)f(end)h(of)g(the)g -(line)630 518 y(\(lik)m(e)k Fs(delete-char)p Ft(\).)37 -b(If)29 b(at)h(the)f(end)f(of)i(the)f(line,)h(b)s(eha)m(v)m(es)g(iden)m -(tically)h(to)e Fs(possible-)630 628 y(completions)p +%%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)150 299 y Fs +(delete-char-or-list)25 b(\(\))630 408 y Ft(Deletes)k(the)e(c)m +(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)g(b)s(eginning)g +(or)f(end)h(of)g(the)g(line)630 518 y(\(lik)m(e)k Fs(delete-char)p +Ft(\).)37 b(If)29 b(at)h(the)f(end)f(of)i(the)f(line,)h(b)s(eha)m(v)m +(es)g(iden)m(tically)h(to)e Fs(possible-)630 628 y(completions)p Ft(.)38 b(This)29 b(command)h(is)h(un)m(b)s(ound)d(b)m(y)i(default.)150 -789 y Fs(complete-filename)c(\(M-/\))630 899 y Ft(A)m(ttempt)32 +803 y Fs(complete-filename)c(\(M-/\))630 913 y Ft(A)m(ttempt)32 b(\014lename)e(completion)i(on)e(the)h(text)g(b)s(efore)f(p)s(oin)m(t.) -150 1060 y Fs(possible-filename-comple)o(tion)o(s)24 -b(\(C-x)30 b(/\))630 1170 y Ft(List)f(the)g(p)s(ossible)f(completions)h +150 1088 y Fs(possible-filename-comple)o(tion)o(s)24 +b(\(C-x)30 b(/\))630 1197 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.)150 1331 y Fs(complete-username)e(\(M-~\))630 -1441 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 1602 +(\014lename.)150 1373 y Fs(complete-username)e(\(M-~\))630 +1482 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 1658 y Fs(possible-username-comple)o(tion)o(s)24 b(\(C-x)30 -b(~\))630 1712 y Ft(List)25 b(the)g(p)s(ossible)g(completions)h(of)f +b(~\))630 1767 y Ft(List)25 b(the)g(p)s(ossible)g(completions)h(of)f (the)g(text)h(b)s(efore)f(p)s(oin)m(t,)h(treating)g(it)g(as)f(a)g -(username.)150 1873 y Fs(complete-variable)h(\(M-$\))630 -1983 y Ft(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i(b)s(efore)e(p) +(username.)150 1942 y Fs(complete-variable)h(\(M-$\))630 +2052 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(shell)g(v)-5 b(ariable.)150 -2144 y Fs(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30 -b($\))630 2254 y Ft(List)42 b(the)g(p)s(ossible)g(completions)h(of)f +2227 y Fs(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30 +b($\))630 2337 y Ft(List)42 b(the)g(p)s(ossible)g(completions)h(of)f (the)g(text)h(b)s(efore)e(p)s(oin)m(t,)46 b(treating)d(it)f(as)g(a)h -(shell)630 2364 y(v)-5 b(ariable.)150 2525 y Fs(complete-hostname)26 -b(\(M-@\))630 2635 y Ft(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i +(shell)630 2446 y(v)-5 b(ariable.)150 2622 y Fs(complete-hostname)26 +b(\(M-@\))630 2731 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(hostname.)150 -2796 y Fs(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30 -b(@\))630 2906 y Ft(List)25 b(the)g(p)s(ossible)f(completions)h(of)g +2907 y Fs(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30 +b(@\))630 3016 y Ft(List)25 b(the)g(p)s(ossible)f(completions)h(of)g (the)g(text)g(b)s(efore)g(p)s(oin)m(t,)h(treating)g(it)f(as)f(a)h -(hostname.)150 3067 y Fs(complete-command)h(\(M-!\))630 -3177 y Ft(A)m(ttempt)32 b(completion)g(on)f(the)g(text)h(b)s(efore)e(p) +(hostname.)150 3191 y Fs(complete-command)h(\(M-!\))630 +3301 y Ft(A)m(ttempt)32 b(completion)g(on)f(the)g(text)h(b)s(efore)e(p) s(oin)m(t,)h(treating)h(it)g(as)f(a)g(command)g(name.)630 -3286 y(Command)46 b(completion)i(attempts)g(to)f(matc)m(h)h(the)f(text) -h(against)g(aliases,)53 b(reserv)m(ed)630 3396 y(w)m(ords,)36 +3411 y(Command)46 b(completion)i(attempts)g(to)f(matc)m(h)h(the)f(text) +h(against)g(aliases,)53 b(reserv)m(ed)630 3520 y(w)m(ords,)36 b(shell)g(functions,)h(shell)e(builtins,)i(and)e(\014nally)g -(executable)i(\014lenames,)g(in)e(that)630 3505 y(order.)150 -3667 y Fs(possible-command-complet)o(ions)24 b(\(C-x)29 -b(!\))630 3777 y Ft(List)d(the)h(p)s(ossible)f(completions)h(of)f(the)h +(executable)i(\014lenames,)g(in)e(that)630 3630 y(order.)150 +3805 y Fs(possible-command-complet)o(ions)24 b(\(C-x)29 +b(!\))630 3915 y Ft(List)d(the)h(p)s(ossible)f(completions)h(of)f(the)h (text)g(b)s(efore)f(p)s(oin)m(t,)h(treating)g(it)g(as)g(a)f(command)630 -3886 y(name.)150 4048 y Fs(dynamic-complete-history)e(\(M-)1470 -4045 y Fg(h)p 1493 3992 148 4 v 1493 4048 a Ff(T)-6 b(AB)p -1493 4063 V 1637 4045 a Fg(i)1667 4048 y Fs(\))630 4157 +4024 y(name.)150 4200 y Fs(dynamic-complete-history)e(\(M-)1470 +4197 y Fg(h)p 1493 4144 148 4 v 1493 4200 a Ff(T)-6 b(AB)p +1493 4215 V 1637 4197 a Fg(i)1667 4200 y Fs(\))630 4309 y Ft(A)m(ttempt)31 b(completion)h(on)e(the)g(text)h(b)s(efore)f(p)s (oin)m(t,)g(comparing)h(the)f(text)h(against)h(lines)630 -4267 y(from)e(the)g(history)h(list)g(for)f(p)s(ossible)g(completion)i -(matc)m(hes.)150 4428 y Fs(complete-into-braces)25 b(\(M-{\))630 -4538 y Ft(P)m(erform)f(\014lename)f(completion)i(and)f(insert)f(the)h -(list)g(of)g(p)s(ossible)f(completions)i(enclosed)630 -4647 y(within)34 b(braces)h(so)f(the)h(list)g(is)g(a)m(v)-5 +4419 y(from)e(the)g(history)h(list)g(for)f(p)s(ossible)g(completion)i +(matc)m(hes.)150 4594 y Fs(dabbrev-expand)26 b(\(\))630 +4704 y Ft(A)m(ttempt)i(men)m(u)e(completion)i(on)f(the)g(text)g(b)s +(efore)f(p)s(oin)m(t,)i(comparing)f(the)g(text)h(against)630 +4813 y(lines)j(from)e(the)i(history)f(list)h(for)g(p)s(ossible)e +(completion)j(matc)m(hes.)150 4988 y Fs(complete-into-braces)25 +b(\(M-{\))630 5098 y Ft(P)m(erform)f(\014lename)f(completion)i(and)f +(insert)f(the)h(list)g(of)g(p)s(ossible)f(completions)i(enclosed)630 +5208 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 4757 y(pansion],)30 b(page)h(17\).)150 4985 -y Fk(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 5230 y Fs(start-kbd-macro) -26 b(\(C-x)j(\(\))630 5340 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) -g(macro.)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)150 299 y Fs(end-kbd-macro)27 -b(\(C-x)i(\)\))630 408 y Ft(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t) -m(yp)s(ed)f(in)m(to)i(the)e(curren)m(t)g(k)m(eyb)s(oard)g(macro)h(and)f -(sa)m(v)m(e)i(the)630 518 y(de\014nition.)150 691 y Fs -(call-last-kbd-macro)c(\(C-x)k(e\))630 801 y Ft(Re-execute)37 -b(the)e(last)h(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 911 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.)150 1163 y -Fk(8.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)150 -1414 y Fs(re-read-init-file)26 b(\(C-x)j(C-r\))630 1524 +(Ex-)630 5317 y(pansion],)30 b(page)h(18\).)p eop end +%%Page: 110 116 +TeXDict begin 110 115 bop 150 -116 a Ft(110)2527 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fk(8.4.7)63 b(Keyb)s(oard)41 +b(Macros)150 545 y Fs(start-kbd-macro)26 b(\(C-x)j(\(\))630 +655 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)g(macro.)150 +818 y Fs(end-kbd-macro)d(\(C-x)i(\)\))630 927 y Ft(Stop)e(sa)m(ving)h +(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m(to)i(the)e(curren)m(t)g(k)m +(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 1037 +y(de\014nition.)150 1200 y Fs(call-last-kbd-macro)c(\(C-x)k(e\))630 +1310 y Ft(Re-execute)37 b(the)e(last)h(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 +1419 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.)150 1651 y Fk(8.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)150 +1898 y Fs(re-read-init-file)26 b(\(C-x)j(C-r\))630 2007 y Ft(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g Fq(inputrc)27 b Ft(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d -(or)i(v)-5 b(ariable)630 1633 y(assignmen)m(ts)31 b(found)e(there.)150 -1807 y Fs(abort)g(\(C-g\))630 1916 y Ft(Ab)s(ort)d(the)h(curren)m(t)f +(or)i(v)-5 b(ariable)630 2117 y(assignmen)m(ts)31 b(found)e(there.)150 +2280 y Fs(abort)g(\(C-g\))630 2390 y Ft(Ab)s(ort)d(the)h(curren)m(t)f (editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5 -b(ject)26 b(to)i(the)630 2026 y(setting)j(of)g Fs(bell-style)p -Ft(\).)150 2199 y Fs(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p -Fj(x)p Fs(,)g(...)o(\))630 2309 y Ft(If)e(the)h(meta\014ed)g(c)m +b(ject)26 b(to)i(the)630 2499 y(setting)j(of)g Fs(bell-style)p +Ft(\).)150 2663 y Fs(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p +Fj(x)p Fs(,)g(...)o(\))630 2772 y Ft(If)e(the)h(meta\014ed)g(c)m (haracter)h Fq(x)34 b Ft(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g -(command)h(that)g(is)g(b)s(ound)d(to)k(the)630 2418 y(corresp)s(onding) -g(upp)s(ercase)h(c)m(haracter.)150 2592 y Fs(prefix-meta)d(\()753 -2589 y Fg(h)p 777 2536 139 4 v 777 2592 a Ff(ESC)p 777 -2607 V 911 2589 a Fg(i)941 2592 y Fs(\))630 2701 y Ft(Metafy)39 +(command)h(that)g(is)g(b)s(ound)d(to)k(the)630 2882 y(corresp)s(onding) +g(upp)s(ercase)h(c)m(haracter.)150 3045 y Fs(prefix-meta)d(\()753 +3042 y Fg(h)p 777 2989 139 4 v 777 3045 a Ff(ESC)p 777 +3060 V 911 3042 a Fg(i)941 3045 y Fs(\))630 3155 y Ft(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62 b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f(without)g(a)h(meta)g(k)m(ey)-8 -b(.)630 2811 y(T)m(yping)30 b(`)968 2808 y Fg(h)p 993 -2755 V 993 2811 a Ff(ESC)p 993 2826 V 1127 2808 a Fg(i)1187 -2811 y Fs(f)p Ft(')g(is)g(equiv)-5 b(alen)m(t)32 b(to)f(t)m(yping)g -Fj(M-f)p Ft(.)150 2984 y Fs(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 -3094 y Ft(Incremen)m(tal)h(undo,)f(separately)h(remem)m(b)s(ered)f(for) -g(eac)m(h)i(line.)150 3267 y Fs(revert-line)27 b(\(M-r\))630 -3377 y Ft(Undo)33 b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 +b(.)630 3264 y(T)m(yping)30 b(`)968 3261 y Fg(h)p 993 +3208 V 993 3264 a Ff(ESC)p 993 3280 V 1127 3261 a Fg(i)1187 +3264 y Fs(f)p Ft(')g(is)g(equiv)-5 b(alen)m(t)32 b(to)f(t)m(yping)g +Fj(M-f)p Ft(.)150 3428 y Fs(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 +3537 y Ft(Incremen)m(tal)h(undo,)f(separately)h(remem)m(b)s(ered)f(for) +g(eac)m(h)i(line.)150 3700 y Fs(revert-line)27 b(\(M-r\))630 +3810 y Ft(Undo)33 b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 b(This)32 b(is)h(lik)m(e)i(executing)f(the)f Fs(undo)f -Ft(command)630 3487 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f -(b)s(eginning.)150 3660 y Fs(tilde-expand)d(\(M-&\))630 -3770 y Ft(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m -(ord.)150 3943 y Fs(set-mark)d(\(C-@\))630 4053 y Ft(Set)33 +Ft(command)630 3920 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f +(b)s(eginning.)150 4083 y Fs(tilde-expand)d(\(M-&\))630 +4192 y Ft(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m +(ord.)150 4356 y Fs(set-mark)d(\(C-@\))630 4465 y Ft(Set)33 b(the)g(mark)f(to)i(the)f(p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g (argumen)m(t)g(is)g(supplied,)f(the)h(mark)g(is)f(set)630 -4162 y(to)f(that)g(p)s(osition.)150 4336 y Fs(exchange-point-and-mark) -24 b(\(C-x)29 b(C-x\))630 4445 y Ft(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with) +4575 y(to)f(that)g(p)s(osition.)150 4738 y Fs(exchange-point-and-mark) +24 b(\(C-x)29 b(C-x\))630 4848 y Ft(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with) g(the)g(mark.)43 b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f -(set)h(to)f(the)h(sa)m(v)m(ed)630 4555 y(p)s(osition,)f(and)e(the)i +(set)h(to)f(the)h(sa)m(v)m(ed)630 4957 y(p)s(osition,)f(and)e(the)i (old)g(cursor)e(p)s(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 -4728 y Fs(character-search)26 b(\(C-]\))630 4838 y Ft(A)f(c)m(haracter) +5121 y Fs(character-search)26 b(\(C-]\))630 5230 y Ft(A)f(c)m(haracter) h(is)f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g -(o)s(ccurrence)g(of)g(that)g(c)m(haracter.)630 4947 y(A)30 +(o)s(ccurrence)g(of)g(that)g(c)m(haracter.)630 5340 y(A)30 b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s -(ccurrences.)150 5121 y Fs(character-search-backwar)o(d)24 -b(\(M-C-]\))630 5230 y Ft(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s -(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of) -g(that)630 5340 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f -(searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)p -eop end -%%Page: 110 116 -TeXDict begin 110 115 bop 150 -116 a Ft(110)2527 b(Bash)31 -b(Reference)g(Man)m(ual)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 -(eginning)f(of)h(the)f(curren)m(t)h(line.)45 b(If)31 -b(a)h(n)m(umeric)f(argumen)m(t)h(is)g(supplied,)630 628 -y(this)k(command)h(acts)g(as)g(a)g(toggle:)55 b(if)37 -b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g(line)630 -737 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5 b(alue)31 b(of)f -Fs(comment-begin)p Ft(,)e(the)i(v)-5 b(alue)31 b(is)g(inserted,)g -(otherwise)g(the)630 847 y(c)m(haracters)42 b(in)d Fs(comment-begin)e -Ft(are)j(deleted)h(from)f(the)g(b)s(eginning)g(of)g(the)g(line.)71 -b(In)630 956 y(either)37 b(case,)j(the)e(line)f(is)g(accepted)i(as)e -(if)g(a)g(newline)g(had)g(b)s(een)f(t)m(yp)s(ed.)60 b(The)37 -b(default)630 1066 y(v)-5 b(alue)32 b(of)g Fs(comment-begin)c -Ft(causes)k(this)f(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h(line)g -(a)g(shell)630 1176 y(commen)m(t.)40 b(If)26 b(a)h(n)m(umeric)f -(argumen)m(t)h(causes)g(the)f(commen)m(t)i(c)m(haracter)g(to)f(b)s(e)f -(remo)m(v)m(ed,)630 1285 y(the)31 b(line)f(will)h(b)s(e)f(executed)h(b) -m(y)f(the)h(shell.)150 1443 y Fs(dump-functions)26 b(\(\))630 -1553 y Ft(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g(their)g(k)m(ey) -h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630 -1663 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h +(ccurrences.)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)150 299 y Fs +(character-search-backwar)o(d)24 b(\(M-C-]\))630 408 +y Ft(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v) +m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)g(that)630 +518 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f(searc)m(hes)h +(for)e(subsequen)m(t)f(o)s(ccurrences.)150 664 y Fs(insert-comment)d +(\(M-#\))630 774 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 883 y(serted)c(at)g(the)g(b)s(eginning)f +(of)h(the)f(curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m +(t)h(is)g(supplied,)630 993 y(this)k(command)h(acts)g(as)g(a)g(toggle:) +55 b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g +(line)630 1103 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5 +b(alue)31 b(of)f Fs(comment-begin)p Ft(,)e(the)i(v)-5 +b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 1212 +y(c)m(haracters)42 b(in)d Fs(comment-begin)e Ft(are)j(deleted)h(from)f +(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 1322 +y(either)37 b(case,)j(the)e(line)f(is)g(accepted)i(as)e(if)g(a)g +(newline)g(had)g(b)s(een)f(t)m(yp)s(ed.)60 b(The)37 b(default)630 +1431 y(v)-5 b(alue)32 b(of)g Fs(comment-begin)c Ft(causes)k(this)f +(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h(line)g(a)g(shell)630 +1541 y(commen)m(t.)40 b(If)26 b(a)h(n)m(umeric)f(argumen)m(t)h(causes)g +(the)f(commen)m(t)i(c)m(haracter)g(to)f(b)s(e)f(remo)m(v)m(ed,)630 +1650 y(the)31 b(line)f(will)h(b)s(e)f(executed)h(b)m(y)f(the)h(shell.) +150 1797 y Fs(dump-functions)26 b(\(\))630 1906 y Ft(Prin)m(t)g(all)i +(of)e(the)h(functions)f(and)g(their)g(k)m(ey)h(bindings)e(to)j(the)e +(Readline)h(output)f(stream.)630 2016 y(If)31 b(a)h(n)m(umeric)g +(argumen)m(t)g(is)g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f +(suc)m(h)h(a)g(w)m(a)m(y)g(that)630 2125 y(it)f(can)g(b)s(e)e(made)i +(part)f(of)g(an)h Fq(inputrc)k Ft(\014le.)41 b(This)29 +b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k(default.)150 +2271 y Fs(dump-variables)26 b(\(\))630 2381 y Ft(Prin)m(t)21 +b(all)h(of)g(the)f(settable)i(v)-5 b(ariables)22 b(and)f(their)g(v)-5 +b(alues)22 b(to)g(the)f(Readline)h(output)f(stream.)630 +2491 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h (output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630 -1772 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fq(inputrc)k +2600 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fq(inputrc)k Ft(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k -(default.)150 1931 y Fs(dump-variables)26 b(\(\))630 -2040 y Ft(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5 -b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(Readline)h -(output)f(stream.)630 2150 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is) -g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a) -m(y)g(that)630 2259 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h -Fq(inputrc)k Ft(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c -(b)m(y)k(default.)150 2418 y Fs(dump-macros)c(\(\))630 -2527 y Ft(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences) -f(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630 -2637 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e +(default.)150 2746 y Fs(dump-macros)c(\(\))630 2856 y +Ft(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f(b)s +(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630 +2966 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e (supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630 -2746 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e +3075 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e Fq(inputrc)35 b Ft(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound) -d(b)m(y)630 2856 y(default.)150 3014 y Fs(glob-complete-word)e(\(M-g\)) -630 3124 y Ft(The)i(w)m(ord)h(b)s(efore)f(p)s(oin)m(t)h(is)g(treated)h +d(b)m(y)630 3185 y(default.)150 3331 y Fs(glob-complete-word)e(\(M-g\)) +630 3440 y Ft(The)i(w)m(ord)h(b)s(efore)f(p)s(oin)m(t)h(is)g(treated)h (as)f(a)h(pattern)f(for)f(pathname)h(expansion,)g(with)g(an)630 -3233 y(asterisk)d(implicitly)h(app)s(ended.)37 b(This)23 +3550 y(asterisk)d(implicitly)h(app)s(ended.)37 b(This)23 b(pattern)i(is)f(used)g(to)h(generate)h(a)e(list)h(of)g(matc)m(hing)630 -3343 y(\014le)30 b(names)h(for)f(p)s(ossible)g(completions.)150 -3501 y Fs(glob-expand-word)c(\(C-x)j(*\))630 3611 y Ft(The)40 +3660 y(\014le)30 b(names)h(for)f(p)s(ossible)g(completions.)150 +3806 y Fs(glob-expand-word)c(\(C-x)j(*\))630 3915 y Ft(The)40 b(w)m(ord)g(b)s(efore)g(p)s(oin)m(t)h(is)g(treated)g(as)g(a)g(pattern)g -(for)f(pathname)g(expansion,)k(and)630 3720 y(the)c(list)g(of)f(matc)m +(for)f(pathname)g(expansion,)k(and)630 4025 y(the)c(list)g(of)f(matc)m (hing)i(\014le)e(names)g(is)h(inserted,)h(replacing)g(the)e(w)m(ord.)67 -b(If)39 b(a)h(n)m(umeric)630 3830 y(argumen)m(t)31 b(is)f(supplied,)g +b(If)39 b(a)h(n)m(umeric)630 4134 y(argumen)m(t)31 b(is)f(supplied,)g (a)g(`)p Fs(*)p Ft(')h(is)f(app)s(ended)f(b)s(efore)h(pathname)g -(expansion.)150 3988 y Fs(glob-list-expansions)25 b(\(C-x)k(g\))630 -4098 y Ft(The)k(list)h(of)f(expansions)g(that)h(w)m(ould)f(ha)m(v)m(e)h +(expansion.)150 4281 y Fs(glob-list-expansions)25 b(\(C-x)k(g\))630 +4390 y Ft(The)k(list)h(of)f(expansions)g(that)h(w)m(ould)f(ha)m(v)m(e)h (b)s(een)f(generated)h(b)m(y)f Fs(glob-expand-word)630 -4208 y Ft(is)h(displa)m(y)m(ed,)h(and)e(the)h(line)g(is)f(redra)m(wn.) +4500 y Ft(is)h(displa)m(y)m(ed,)h(and)e(the)h(line)g(is)f(redra)m(wn.) 50 b(If)33 b(a)h(n)m(umeric)g(argumen)m(t)g(is)f(supplied,)h(a)g(`)p -Fs(*)p Ft(')630 4317 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g -(expansion.)150 4475 y Fs(display-shell-version)25 b(\(C-x)k(C-v\))630 -4585 y Ft(Displa)m(y)j(v)m(ersion)e(information)h(ab)s(out)f(the)h -(curren)m(t)f(instance)h(of)f(Bash.)150 4743 y Fs(shell-expand-line)c -(\(M-C-e\))630 4853 y Ft(Expand)34 b(the)h(line)h(as)g(the)f(shell)h +Fs(*)p Ft(')630 4609 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g +(expansion.)150 4755 y Fs(display-shell-version)25 b(\(C-x)k(C-v\))630 +4865 y Ft(Displa)m(y)j(v)m(ersion)e(information)h(ab)s(out)f(the)h +(curren)m(t)f(instance)h(of)f(Bash.)150 5011 y Fs(shell-expand-line)c +(\(M-C-e\))630 5121 y Ft(Expand)34 b(the)h(line)h(as)g(the)f(shell)h (do)s(es.)55 b(This)34 b(p)s(erforms)g(alias)i(and)f(history)g -(expansion)630 4963 y(as)f(w)m(ell)g(as)g(all)h(of)e(the)h(shell)g(w)m +(expansion)630 5230 y(as)f(w)m(ell)g(as)g(all)h(of)e(the)h(shell)g(w)m (ord)f(expansions)g(\(see)i(Section)f(3.5)h([Shell)e(Expansions],)630 -5072 y(page)e(17\).)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: 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)150 299 y Fs(magic-space)27 -b(\(\))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(119\).)150 -664 y Fs(alias-expand-line)26 b(\(\))630 774 y Ft(P)m(erform)i(alias)i +5340 y(page)e(17\).)p eop end +%%Page: 112 118 +TeXDict begin 112 117 bop 150 -116 a Ft(112)2527 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fs(history-expand-line)25 +b(\(M-^\))630 408 y Ft(P)m(erform)30 b(history)h(expansion)f(on)g(the)h +(curren)m(t)f(line.)150 563 y Fs(magic-space)d(\(\))630 +672 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 +782 y([History)31 b(In)m(teraction],)i(page)e(121\).)150 +936 y Fs(alias-expand-line)26 b(\(\))630 1045 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(77\).)150 920 y Fs(history-and-alias-expand)o -(-lin)o(e)24 b(\(\))630 1029 y Ft(P)m(erform)30 b(history)h(and)e +([Aliases],)g(page)f(77\).)150 1199 y Fs(history-and-alias-expand)o +(-lin)o(e)24 b(\(\))630 1309 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 -1176 y Fs(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630 -1285 y Ft(A)g(synon)m(ym)g(for)g Fs(yank-last-arg)p Ft(.)150 -1431 y Fs(operate-and-get-next)25 b(\(C-o\))630 1541 +1463 y Fs(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630 +1573 y Ft(A)g(synon)m(ym)g(for)g Fs(yank-last-arg)p Ft(.)150 +1727 y Fs(operate-and-get-next)25 b(\(C-o\))630 1836 y Ft(Accept)42 b(the)e(curren)m(t)h(line)f(for)h(execution)g(and)f (fetc)m(h)i(the)e(next)h(line)g(relativ)m(e)i(to)e(the)630 -1650 y(curren)m(t)30 b(line)h(from)f(the)g(history)h(for)f(editing.)41 -b(An)m(y)31 b(argumen)m(t)f(is)h(ignored.)150 1797 y -Fs(edit-and-execute-command)24 b(\(C-xC-e\))630 1906 +1946 y(curren)m(t)30 b(line)h(from)f(the)g(history)h(for)f(editing.)41 +b(An)m(y)31 b(argumen)m(t)f(is)h(ignored.)150 2100 y +Fs(edit-and-execute-command)24 b(\(C-xC-e\))630 2210 y Ft(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)g(the)g(curren)m(t)f (command)h(line,)h(and)e(execute)i(the)f(result)g(as)g(shell)630 -2016 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)m(ok)m(e)h +2319 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)m(ok)m(e)h Fs($VISUAL)p Ft(,)f Fs($EDITOR)p Ft(,)h(and)d Fs(emacs)g -Ft(as)h(the)630 2125 y(editor,)31 b(in)f(that)h(order.)150 -2363 y Fr(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)275 2600 +Ft(as)h(the)630 2429 y(editor,)31 b(in)f(that)h(order.)150 +2678 y Fr(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)275 2919 y Ft(While)24 b(the)g(Readline)g(library)f(do)s(es)h(not)g(ha)m(v)m(e)g (a)h(full)e(set)h(of)g Fs(vi)f Ft(editing)h(functions,)h(it)f(do)s(es)g -(con)m(tain)150 2710 y(enough)34 b(to)h(allo)m(w)g(simple)f(editing)h +(con)m(tain)150 3029 y(enough)34 b(to)h(allo)m(w)g(simple)f(editing)h (of)f(the)g(line.)52 b(The)34 b(Readline)g Fs(vi)g Ft(mo)s(de)f(b)s -(eha)m(v)m(es)i(as)f(sp)s(eci\014ed)f(in)150 2819 y(the)e -Fl(posix)e Ft(1003.2)k(standard.)275 2947 y(In)i(order)g(to)i(switc)m +(eha)m(v)m(es)i(as)f(sp)s(eci\014ed)f(in)150 3139 y(the)e +Fl(posix)e Ft(1003.2)k(standard.)275 3270 y(In)i(order)g(to)i(switc)m (h)f(in)m(teractiv)m(ely)j(b)s(et)m(w)m(een)d Fs(emacs)f Ft(and)g Fs(vi)g Ft(editing)h(mo)s(des,)h(use)f(the)g(`)p -Fs(set)30 b(-o)150 3057 y(emacs)p Ft(')43 b(and)h(`)p +Fs(set)30 b(-o)150 3380 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(49\).)83 b(The)150 3166 +([The)e(Set)h(Builtin],)j(page)e(50\).)83 b(The)150 3490 y(Readline)31 b(default)g(is)f Fs(emacs)f Ft(mo)s(de.)275 -3294 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fs(vi)f +3621 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 3404 y(had)c(t)m(yp)s(ed)g(an)g(`)p -Fs(i)p Ft('.)39 b(Pressing)1215 3401 y Fg(h)p 1239 3348 -139 4 v 1239 3404 a Ff(ESC)p 1239 3419 V 1373 3401 a -Fg(i)1429 3404 y Ft(switc)m(hes)27 b(y)m(ou)g(in)m(to)g(`command')f(mo) -s(de,)h(where)f(y)m(ou)h(can)f(edit)h(the)150 3513 y(text)35 +(de,)g(as)h(if)f(y)m(ou)150 3731 y(had)c(t)m(yp)s(ed)g(an)g(`)p +Fs(i)p Ft('.)39 b(Pressing)1215 3728 y Fg(h)p 1239 3675 +139 4 v 1239 3731 a Ff(ESC)p 1239 3746 V 1373 3728 a +Fg(i)1429 3731 y Ft(switc)m(hes)27 b(y)m(ou)g(in)m(to)g(`command')f(mo) +s(de,)h(where)f(y)m(ou)h(can)f(edit)h(the)150 3841 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f Fs(vi)g Ft(mo)m(v)m(emen)m (t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g(history)f(lines)h(with)150 -3623 y(`)p Fs(k)p Ft(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p -Fs(j)p Ft(',)g(and)g(so)h(forth.)150 3861 y Fr(8.6)68 -b(Programmable)47 b(Completion)275 4098 y Ft(When)25 +3950 y(`)p Fs(k)p Ft(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p +Fs(j)p Ft(',)g(and)g(so)h(forth.)150 4200 y Fr(8.6)68 +b(Programmable)47 b(Completion)275 4441 y Ft(When)25 b(w)m(ord)g(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)h -(a)f(command)f(for)h(whic)m(h)f(a)h(comple-)150 4208 +(a)f(command)f(for)h(whic)m(h)f(a)h(comple-)150 4551 y(tion)f(sp)s(eci\014cation)g(\(a)h Fq(compsp)s(ec)6 b Ft(\))24 b(has)g(b)s(een)g(de\014ned)g(using)g(the)g Fs(complete)f Ft(builtin)h(\(see)h(Section)h(8.7)150 -4317 y([Programmable)e(Completion)g(Builtins],)h(page)f(113\),)j(the)c -(programmable)h(completion)g(facilities)i(are)150 4427 -y(in)m(v)m(ok)m(ed.)275 4555 y(First,)d(the)e(command)g(name)g(is)h +4660 y([Programmable)e(Completion)g(Builtins],)h(page)f(114\),)j(the)c +(programmable)h(completion)g(facilities)i(are)150 4770 +y(in)m(v)m(ok)m(ed.)275 4902 y(First,)d(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(command,)150 4664 y(the)44 +(de\014ned)g(for)h(that)h(command,)150 5011 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i(the)e(list)g(of)g(p)s (ossible)g(completions)h(for)e(the)h(w)m(ord.)81 b(If)44 -b(the)150 4774 y(command)33 b(w)m(ord)f(is)h(a)g(full)g(pathname,)h(a)f +b(the)150 5121 y(command)33 b(w)m(ord)f(is)h(a)g(full)g(pathname,)h(a)f (compsp)s(ec)f(for)h(the)g(full)g(pathname)f(is)h(searc)m(hed)h(for)e -(\014rst.)150 4883 y(If)f(no)h(compsp)s(ec)f(is)h(found)e(for)h(the)h +(\014rst.)150 5230 y(If)f(no)h(compsp)s(ec)f(is)h(found)e(for)h(the)h (full)g(pathname,)g(an)f(attempt)i(is)f(made)f(to)i(\014nd)d(a)i -(compsp)s(ec)f(for)150 4993 y(the)g(p)s(ortion)f(follo)m(wing)h(the)g -(\014nal)f(slash.)275 5121 y(Once)k(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 5230 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 5340 y([Commands)30 -b(F)-8 b(or)31 b(Completion],)g(page)g(107\))h(is)f(p)s(erformed.)p -eop end -%%Page: 112 118 -TeXDict begin 112 117 bop 150 -116 a Ft(112)2527 b(Bash)31 -b(Reference)g(Man)m(ual)275 299 y(First,)g(the)g(actions)g(sp)s +(compsp)s(ec)f(for)150 5340 y(the)g(p)s(ortion)f(follo)m(wing)h(the)g +(\014nal)f(slash.)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)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 +(108\))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 -408 y(b)m(y)25 b(the)h(w)m(ord)f(b)s(eing)f(completed)j(are)e +765 y(b)m(y)25 b(the)h(w)m(ord)f(b)s(eing)f(completed)j(are)e (returned.)38 b(When)25 b(the)h(`)p Fs(-f)p Ft(')f(or)g(`)p Fs(-d)p Ft(')g(option)h(is)f(used)g(for)g(\014lename)150 -518 y(or)30 b(directory)h(name)f(completion,)i(the)e(shell)h(v)-5 +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 628 y(Section)31 b(5.2)h([Bash)e(V)-8 +(hes.)42 b(See)150 984 y(Section)31 b(5.2)h([Bash)e(V)-8 b(ariables],)33 b(page)e(59,)g(for)f(a)h(description)g(of)f -Fs(FIGNORE)p Ft(.)275 765 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 874 y(ated)h(next.)40 +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 b(The)29 b(w)m(ords)g(generated)h(b)m(y)f(the)h(pattern)f(need)g(not)g (matc)m(h)i(the)e(w)m(ord)g(b)s(eing)g(completed.)150 -984 y(The)42 b Fs(GLOBIGNORE)d Ft(shell)k(v)-5 b(ariable)43 +1340 y(The)42 b Fs(GLOBIGNORE)d Ft(shell)k(v)-5 b(ariable)43 b(is)f(not)h(used)e(to)i(\014lter)f(the)h(matc)m(hes,)j(but)c(the)g -Fs(FIGNORE)f Ft(shell)150 1093 y(v)-5 b(ariable)31 b(is)g(used.)275 -1230 y(Next,)k(the)g(string)e(sp)s(eci\014ed)h(as)g(the)g(argumen)m(t)g +Fs(FIGNORE)f Ft(shell)150 1450 y(v)-5 b(ariable)31 b(is)g(used.)275 +1587 y(Next,)k(the)g(string)e(sp)s(eci\014ed)h(as)g(the)g(argumen)m(t)g (to)h(the)f(`)p Fs(-W)p Ft(')g(option)g(is)g(considered.)52 -b(The)33 b(string)150 1340 y(is)g(\014rst)e(split)i(using)f(the)h(c)m +b(The)33 b(string)150 1696 y(is)g(\014rst)e(split)i(using)f(the)h(c)m (haracters)h(in)e(the)h Fs(IFS)e Ft(sp)s(ecial)j(v)-5 b(ariable)33 b(as)g(delimiters.)48 b(Shell)32 b(quoting)h(is)150 -1450 y(honored.)56 b(Eac)m(h)37 b(w)m(ord)e(is)h(then)f(expanded)g +1806 y(honored.)56 b(Eac)m(h)37 b(w)m(ord)e(is)h(then)f(expanded)g (using)h(brace)g(expansion,)h(tilde)f(expansion,)h(parameter)150 -1559 y(and)44 b(v)-5 b(ariable)46 b(expansion,)j(command)44 +1915 y(and)44 b(v)-5 b(ariable)46 b(expansion,)j(command)44 b(substitution,)49 b(and)44 b(arithmetic)i(expansion,)j(as)c(describ)s -(ed)150 1669 y(ab)s(o)m(v)m(e)38 b(\(see)f(Section)h(3.5)g([Shell)e +(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(17\).)61 b(The)36 b(results)h(are)g(split)f -(using)h(the)f(rules)150 1778 y(describ)s(ed)29 b(ab)s(o)m(v)m(e)i +(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(23\).) -42 b(The)30 b(results)f(of)h(the)g(expansion)150 1888 +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 -1998 y(p)s(ossible)g(completions.)275 2134 y(After)f(these)g(matc)m +2354 y(p)s(ossible)g(completions.)275 2491 y(After)f(these)g(matc)m (hes)i(ha)m(v)m(e)f(b)s(een)f(generated,)h(an)m(y)g(shell)f(function)g -(or)g(command)g(sp)s(eci\014ed)f(with)150 2244 y(the)i(`)p +(or)g(command)g(sp)s(eci\014ed)f(with)150 2600 y(the)i(`)p Fs(-F)p Ft(')g(and)f(`)p Fs(-C)p Ft(')h(options)g(is)g(in)m(v)m(ok)m (ed.)41 b(When)30 b(the)g(command)g(or)f(function)h(is)g(in)m(v)m(ok)m -(ed,)h(the)f Fs(COMP_)150 2354 y(LINE)p Ft(,)42 b Fs(COMP_POINT)p +(ed,)h(the)f Fs(COMP_)150 2710 y(LINE)p Ft(,)42 b Fs(COMP_POINT)p 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 2463 y(ab)s(o)m(v)m(e)k(\(see)g(Section)f(5.2)h([Bash)f(V)-8 +150 2819 y(ab)s(o)m(v)m(e)k(\(see)g(Section)f(5.2)h([Bash)f(V)-8 b(ariables],)48 b(page)c(59\).)79 b(If)42 b(a)i(shell)f(function)f(is)h -(b)s(eing)f(in)m(v)m(ok)m(ed,)150 2573 y(the)37 b Fs(COMP_WORDS)d +(b)s(eing)f(in)m(v)m(ok)m(ed,)150 2929 y(the)37 b Fs(COMP_WORDS)d Ft(and)i Fs(COMP_CWORD)e Ft(v)-5 b(ariables)38 b(are)f(also)h(set.)60 -b(When)37 b(the)g(function)f(or)h(command)150 2682 y(is)42 +b(When)37 b(the)g(function)f(or)h(command)150 3039 y(is)42 b(in)m(v)m(ok)m(ed,)k(the)41 b(\014rst)g(argumen)m(t)h(is)g(the)g(name) f(of)h(the)g(command)f(whose)h(argumen)m(ts)f(are)h(b)s(eing)150 -2792 y(completed,)d(the)d(second)g(argumen)m(t)h(is)f(the)g(w)m(ord)g +3148 y(completed,)d(the)d(second)g(argumen)m(t)h(is)f(the)g(w)m(ord)g (b)s(eing)g(completed,)i(and)e(the)g(third)f(argumen)m(t)i(is)150 -2902 y(the)28 b(w)m(ord)g(preceding)h(the)f(w)m(ord)g(b)s(eing)g +3258 y(the)28 b(w)m(ord)g(preceding)h(the)f(w)m(ord)g(b)s(eing)g (completed)h(on)f(the)h(curren)m(t)f(command)g(line.)40 -b(No)29 b(\014ltering)g(of)150 3011 y(the)i(generated)h(completions)h +b(No)29 b(\014ltering)g(of)150 3367 y(the)i(generated)h(completions)h (against)f(the)f(w)m(ord)g(b)s(eing)g(completed)h(is)f(p)s(erformed;)f -(the)h(function)g(or)150 3121 y(command)f(has)g(complete)i(freedom)e -(in)g(generating)i(the)f(matc)m(hes.)275 3258 y(An)m(y)g(function)h(sp) +(the)h(function)g(or)150 3477 y(command)f(has)g(complete)i(freedom)e +(in)g(generating)i(the)f(matc)m(hes.)275 3614 y(An)m(y)g(function)h(sp) s(eci\014ed)f(with)g(`)p Fs(-F)p Ft(')h(is)g(in)m(v)m(ok)m(ed)h (\014rst.)44 b(The)31 b(function)h(ma)m(y)g(use)g(an)m(y)g(of)g(the)g -(shell)150 3367 y(facilities,)50 b(including)44 b(the)h +(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 3477 y([Programmable)31 -b(Completion)h(Builtins],)f(page)h(113\),)g(to)g(generate)g(the)f(matc) -m(hes.)42 b(It)31 b(m)m(ust)g(put)f(the)150 3587 y(p)s(ossible)g +(elo)m(w)h(\(see)i(Section)f(8.7)150 3833 y([Programmable)31 +b(Completion)h(Builtins],)f(page)h(114\),)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.)275 3724 y(Next,)23 b(an)m(y)e(command)f(sp)s(eci\014ed)g +b(ariable.)275 4080 y(Next,)23 b(an)m(y)e(command)f(sp)s(eci\014ed)g (with)g(the)h(`)p Fs(-C)p Ft(')f(option)h(is)g(in)m(v)m(ok)m(ed)h(in)e -(an)g(en)m(vironmen)m(t)h(equiv)-5 b(alen)m(t)150 3833 +(an)g(en)m(vironmen)m(t)h(equiv)-5 b(alen)m(t)150 4189 y(to)26 b(command)e(substitution.)39 b(It)25 b(should)f(prin)m(t)h(a)g (list)h(of)f(completions,)i(one)e(p)s(er)f(line,)j(to)f(the)f(standard) -150 3943 y(output.)40 b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h +150 4299 y(output.)40 b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h (escap)s(e)g(a)f(newline,)h(if)f(necessary)-8 b(.)275 -4080 y(After)42 b(all)g(of)g(the)g(p)s(ossible)g(completions)h(are)f +4436 y(After)42 b(all)g(of)g(the)g(p)s(ossible)g(completions)h(are)f (generated,)k(an)m(y)c(\014lter)g(sp)s(eci\014ed)f(with)h(the)g(`)p -Fs(-X)p Ft(')150 4189 y(option)34 b(is)f(applied)g(to)h(the)f(list.)49 +Fs(-X)p Ft(')150 4545 y(option)34 b(is)f(applied)g(to)h(the)f(list.)49 b(The)33 b(\014lter)g(is)g(a)h(pattern)f(as)g(used)g(for)g(pathname)g -(expansion;)h(a)g(`)p Fs(&)p Ft(')150 4299 y(in)39 b(the)g(pattern)g +(expansion;)h(a)g(`)p Fs(&)p Ft(')150 4655 y(in)39 b(the)g(pattern)g (is)g(replaced)g(with)g(the)g(text)h(of)f(the)g(w)m(ord)g(b)s(eing)f (completed.)68 b(A)39 b(literal)h(`)p Fs(&)p Ft(')f(ma)m(y)150 -4408 y(b)s(e)e(escap)s(ed)h(with)g(a)h(bac)m(kslash;)k(the)38 +4765 y(b)s(e)e(escap)s(ed)h(with)g(a)h(bac)m(kslash;)k(the)38 b(bac)m(kslash)h(is)f(remo)m(v)m(ed)h(b)s(efore)e(attempting)j(a)e -(matc)m(h.)65 b(An)m(y)150 4518 y(completion)35 b(that)g(matc)m(hes)g +(matc)m(h.)65 b(An)m(y)150 4874 y(completion)35 b(that)g(matc)m(hes)g (the)f(pattern)g(will)g(b)s(e)g(remo)m(v)m(ed)h(from)e(the)h(list.)53 -b(A)34 b(leading)g(`)p Fs(!)p Ft(')h(negates)150 4628 +b(A)34 b(leading)g(`)p Fs(!)p Ft(')h(negates)150 4984 y(the)c(pattern;)f(in)g(this)h(case)g(an)m(y)g(completion)g(not)g(matc) m(hing)h(the)e(pattern)h(will)f(b)s(e)g(remo)m(v)m(ed.)275 -4765 y(Finally)-8 b(,)33 b(an)m(y)f(pre\014x)f(and)g(su\016x)g(sp)s +5121 y(Finally)-8 b(,)33 b(an)m(y)f(pre\014x)f(and)g(su\016x)g(sp)s (eci\014ed)g(with)h(the)g(`)p Fs(-P)p Ft(')f(and)g(`)p Fs(-S)p Ft(')h(options)g(are)g(added)f(to)i(eac)m(h)150 -4874 y(mem)m(b)s(er)e(of)g(the)h(completion)h(list,)f(and)f(the)h +5230 y(mem)m(b)s(er)e(of)g(the)h(completion)h(list,)f(and)f(the)h (result)f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de) -150 4984 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)275 -5121 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 5230 y(tion)29 b(w)m(as)f(supplied)f(to) -i Fs(complete)d Ft(when)h(the)h(compsp)s(ec)g(w)m(as)g(de\014ned,)g -(directory)g(name)h(completion)150 5340 y(is)h(attempted.)p +150 5340 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)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)275 299 y(If)30 -b(the)i(`)p Fs(-o)e(plusdirs)p Ft(')f(option)j(w)m(as)f(supplied)f(to)i -Fs(complete)e Ft(when)g(the)h(compsp)s(ec)g(w)m(as)h(de\014ned,)150 -408 y(directory)k(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h +%%Page: 114 120 +TeXDict begin 114 119 bop 150 -116 a Ft(114)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 +b(w)m(as)f(supplied)f(to)i Fs(complete)d Ft(when)h(the)h(compsp)s(ec)g +(w)m(as)g(de\014ned,)g(directory)g(name)h(completion)150 +518 y(is)h(attempted.)275 657 y(If)g(the)i(`)p Fs(-o)e(plusdirs)p +Ft(')f(option)j(w)m(as)f(supplied)f(to)i Fs(complete)e +Ft(when)g(the)h(compsp)s(ec)g(w)m(as)h(de\014ned,)150 +766 y(directory)k(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h (matc)m(hes)g(are)g(added)f(to)h(the)f(results)g(of)h(the)150 -518 y(other)31 b(actions.)275 659 y(By)g(default,)i(if)e(a)h(compsp)s +876 y(other)31 b(actions.)275 1015 y(By)g(default,)i(if)e(a)h(compsp)s (ec)f(is)h(found,)f(whatev)m(er)h(it)g(generates)h(is)e(returned)g(to)h -(the)g(completion)150 769 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g +(the)g(completion)150 1124 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g (p)s(ossible)f(completions.)39 b(The)20 b(default)h(Bash)g(completions) -h(are)g(not)f(attempted,)150 879 y(and)k(the)h(Readline)g(default)g(of) -g(\014lename)g(completion)h(is)f(disabled.)38 b(If)26 +h(are)g(not)f(attempted,)150 1234 y(and)k(the)h(Readline)g(default)g +(of)g(\014lename)g(completion)h(is)f(disabled.)38 b(If)26 b(the)g(`)p Fs(-o)k(bashdefault)p Ft(')22 b(option)150 -988 y(w)m(as)i(supplied)e(to)j Fs(complete)c Ft(when)i(the)g(compsp)s +1344 y(w)m(as)i(supplied)e(to)j Fs(complete)c Ft(when)i(the)g(compsp)s (ec)h(w)m(as)g(de\014ned,)g(the)f(default)h(Bash)g(completions)h(are) -150 1098 y(attempted)f(if)f(the)g(compsp)s(ec)g(generates)i(no)e(matc)m +150 1453 y(attempted)f(if)f(the)g(compsp)s(ec)g(generates)i(no)e(matc)m (hes.)39 b(If)23 b(the)g(`)p Fs(-o)30 b(default)p Ft(')21 -b(option)j(w)m(as)f(supplied)f(to)150 1207 y Fs(complete)j +b(option)j(w)m(as)f(supplied)f(to)150 1563 y Fs(complete)j Ft(when)h(the)h(compsp)s(ec)f(w)m(as)i(de\014ned,)e(Readline's)i (default)f(completion)h(will)f(b)s(e)f(p)s(erformed)150 -1317 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)g(the)g +1672 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)g(the)g (default)f(Bash)h(completions\))h(generate)g(no)e(matc)m(hes.)275 -1458 y(When)20 b(a)i(compsp)s(ec)e(indicates)i(that)g(directory)g(name) +1811 y(When)20 b(a)i(compsp)s(ec)e(indicates)i(that)g(directory)g(name) f(completion)h(is)f(desired,)i(the)e(programmable)150 -1568 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d +1921 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d (a)i(slash)g(to)g(completed)h(names)e(whic)m(h)h(are)g(sym-)150 -1678 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5 +2030 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5 b(ject)40 b(to)h(the)f(v)-5 b(alue)41 b(of)f(the)g Fq(mark-directories) -45 b Ft(Readline)c(v)-5 b(ariable,)150 1787 y(regardless)31 +45 b Ft(Readline)c(v)-5 b(ariable,)150 2140 y(regardless)31 b(of)f(the)h(setting)g(of)g(the)f Fq(mark-symlink)m(ed-directories)36 -b Ft(Readline)31 b(v)-5 b(ariable.)150 2062 y Fr(8.7)68 -b(Programmable)47 b(Completion)f(Builtins)275 2313 y +b Ft(Readline)31 b(v)-5 b(ariable.)150 2408 y Fr(8.7)68 +b(Programmable)47 b(Completion)f(Builtins)275 2656 y Ft(Tw)m(o)30 b(builtin)g(commands)g(are)h(a)m(v)-5 b(ailable)32 b(to)f(manipulate)g(the)g(programmable)f(completion)i(facil-)150 -2423 y(ities.)150 2592 y Fs(compgen)870 2730 y(compgen)46 +2766 y(ities.)150 2932 y Fs(compgen)870 3068 y(compgen)46 b([)p Fj(option)11 b Fs(])45 b([)p Fj(word)11 b Fs(])630 -2868 y Ft(Generate)27 b(p)s(ossible)e(completion)i(matc)m(hes)g(for)e +3205 y Ft(Generate)27 b(p)s(ossible)e(completion)i(matc)m(hes)g(for)e Fq(w)m(ord)k Ft(according)e(to)f(the)g Fq(option)p Ft(s,)h(whic)m(h)630 -2978 y(ma)m(y)h(b)s(e)f(an)m(y)h(option)g(accepted)h(b)m(y)e(the)h +3315 y(ma)m(y)h(b)s(e)f(an)m(y)h(option)g(accepted)h(b)m(y)e(the)h Fs(complete)d Ft(builtin)j(with)f(the)h(exception)g(of)g(`)p -Fs(-p)p Ft(')630 3088 y(and)k(`)p Fs(-r)p Ft(',)i(and)e(write)h(the)g +Fs(-p)p Ft(')630 3424 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(')630 3197 y(or)28 b(`)p +b(using)f(the)h(`)p Fs(-F)p Ft(')630 3534 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 -3307 y(facilities,)k(while)d(a)m(v)-5 b(ailable,)33 b(will)e(not)g(ha)m -(v)m(e)g(useful)f(v)-5 b(alues.)630 3445 y(The)34 b(matc)m(hes)h(will)g +3643 y(facilities,)k(while)d(a)m(v)-5 b(ailable,)33 b(will)e(not)g(ha)m +(v)m(e)g(useful)f(v)-5 b(alues.)630 3780 y(The)34 b(matc)m(hes)h(will)g (b)s(e)f(generated)h(in)f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h -(programmable)f(com-)630 3554 y(pletion)d(co)s(de)g(had)f(generated)i +(programmable)f(com-)630 3890 y(pletion)d(co)s(de)g(had)f(generated)i (them)e(directly)i(from)e(a)h(completion)h(sp)s(eci\014cation)f(with) -630 3664 y(the)e(same)h(\015ags.)40 b(If)29 b Fq(w)m(ord)j +630 3999 y(the)e(same)h(\015ags.)40 b(If)29 b Fq(w)m(ord)j Ft(is)d(sp)s(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g -Fq(w)m(ord)j Ft(will)630 3773 y(b)s(e)d(displa)m(y)m(ed.)630 -3911 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in) +Fq(w)m(ord)j Ft(will)630 4109 y(b)s(e)d(displa)m(y)m(ed.)630 +4245 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in) m(v)-5 b(alid)25 b(option)g(is)g(supplied,)f(or)h(no)g(matc)m(hes)g(w)m -(ere)630 4021 y(generated.)150 4187 y Fs(complete)870 -4325 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)11 -b Fs(])44 b([-A)j Fj(action)11 b Fs(])45 b([-G)i Fj(glob-)870 -4435 y(pat)11 b Fs(])46 b([-W)h Fj(wordlist)11 b Fs(])870 -4544 y([-F)47 b Fj(function)11 b Fs(])45 b([-C)i Fj(command)11 -b Fs(])45 b([-X)i Fj(filterpat)11 b Fs(])870 4654 y([-P)47 -b Fj(prefix)11 b Fs(])45 b([-S)i Fj(suffix)11 b Fs(])45 -b Fj(name)58 b Fs([)p Fj(name)f Fs(...)o(])870 4764 y(complete)46 -b(-pr)g([)p Fj(name)57 b Fs(...])630 4902 y Ft(Sp)s(ecify)33 -b(ho)m(w)h(argumen)m(ts)h(to)f(eac)m(h)i Fq(name)j Ft(should)33 -b(b)s(e)g(completed.)53 b(If)33 b(the)i(`)p Fs(-p)p Ft(')e(option)630 -5011 y(is)d(supplied,)e(or)i(if)g(no)f(options)h(are)g(supplied,)f -(existing)h(completion)h(sp)s(eci\014cations)g(are)630 -5121 y(prin)m(ted)43 b(in)h(a)g(w)m(a)m(y)h(that)f(allo)m(ws)h(them)f -(to)g(b)s(e)g(reused)f(as)h(input.)80 b(The)43 b(`)p -Fs(-r)p Ft(')g(option)630 5230 y(remo)m(v)m(es)29 b(a)f(completion)h -(sp)s(eci\014cation)f(for)g(eac)m(h)g Fq(name)p Ft(,)h(or,)f(if)g(no)f -Fq(name)5 b Ft(s)28 b(are)g(supplied,)630 5340 y(all)j(completion)h(sp) -s(eci\014cations.)p eop end -%%Page: 114 120 -TeXDict begin 114 119 bop 150 -116 a Ft(114)2527 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(The)e(pro)s(cess)g(of)h(applying)g -(these)g(completion)g(sp)s(eci\014cations)h(when)d(w)m(ord)i -(completion)630 408 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 -518 y(page)31 b(111\).)630 650 y(Other)41 b(options,)46 +(ere)630 4355 y(generated.)150 4519 y Fs(complete)870 +4655 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)11 +b Fs(])44 b([-E])j([-A)g Fj(action)11 b Fs(])45 b([-)870 +4765 y(G)i Fj(globpat)11 b Fs(])46 b([-W)g Fj(wordlist)11 +b Fs(])870 4875 y([-F)47 b Fj(function)11 b Fs(])45 b([-C)i +Fj(command)11 b Fs(])45 b([-X)i Fj(filterpat)11 b Fs(])870 +4984 y([-P)47 b Fj(prefix)11 b Fs(])45 b([-S)i Fj(suffix)11 +b Fs(])45 b Fj(name)58 b Fs([)p Fj(name)f Fs(...)o(])870 +5094 y(complete)46 b(-pr)g([-E])h([)p Fj(name)57 b Fs(...)o(])630 +5230 y Ft(Sp)s(ecify)33 b(ho)m(w)h(argumen)m(ts)h(to)f(eac)m(h)i +Fq(name)j Ft(should)33 b(b)s(e)g(completed.)53 b(If)33 +b(the)i(`)p Fs(-p)p Ft(')e(option)630 5340 y(is)d(supplied,)e(or)i(if)g +(no)f(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s +(eci\014cations)g(are)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)630 299 y(prin)m(ted)21 +b(in)g(a)g(w)m(a)m(y)h(that)g(allo)m(ws)g(them)f(to)h(b)s(e)f(reused)f +(as)i(input.)36 b(The)21 b(`)p Fs(-r)p Ft(')g(option)h(remo)m(v)m(es) +630 408 y(a)46 b(completion)g(sp)s(eci\014cation)g(for)f(eac)m(h)h +Fq(name)p Ft(,)j(or,)g(if)c(no)h Fq(name)5 b Ft(s)45 +b(are)g(supplied,)j(all)630 518 y(completion)29 b(sp)s(eci\014cations.) +40 b(The)27 b(`)p Fs(-E)p Ft(')g(option)h(indicates)g(that)g(the)f +(remaining)h(options)630 628 y(and)e(actions)i(should)d(apply)i(to)g +(\\empt)m(y")h(command)e(completion;)k(that)d(is,)h(completion)630 +737 y(attempted)j(on)g(a)f(blank)g(line.)630 874 y(The)f(pro)s(cess)g +(of)h(applying)g(these)g(completion)g(sp)s(eci\014cations)h(when)d(w)m +(ord)i(completion)630 984 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 +1093 y(page)31 b(112\).)630 1230 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 760 y(the)e(`)p +(meanings.)75 b(The)41 b(argumen)m(ts)h(to)630 1340 y(the)e(`)p Fs(-G)p Ft(',)j(`)p Fs(-W)p Ft(',)g(and)d(`)p Fs(-X)p Ft(')g(options)g(\(and,)j(if)d(necessary)-8 b(,)44 b(the)c(`)p Fs(-P)p Ft(')h(and)e(`)p Fs(-S)p Ft(')h(options\))630 -869 y(should)30 b(b)s(e)h(quoted)g(to)h(protect)g(them)f(from)g +1450 y(should)30 b(b)s(e)h(quoted)g(to)h(protect)g(them)f(from)g (expansion)g(b)s(efore)g(the)g Fs(complete)e Ft(builtin)630 -979 y(is)h(in)m(v)m(ok)m(ed.)630 1134 y Fs(-o)g Fj(comp-option)1110 -1244 y Ft(The)c Fq(comp-option)i Ft(con)m(trols)g(sev)m(eral)h(asp)s +1559 y(is)h(in)m(v)m(ok)m(ed.)630 1724 y Fs(-o)g Fj(comp-option)1110 +1833 y Ft(The)c Fq(comp-option)i Ft(con)m(trols)g(sev)m(eral)h(asp)s (ects)e(of)g(the)g(compsp)s(ec's)g(b)s(eha)m(v-)1110 -1353 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h(generation)h(of)e +1943 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h(generation)h(of)e (completions.)41 b Fq(comp-option)27 b Ft(ma)m(y)1110 -1463 y(b)s(e)j(one)g(of:)1110 1618 y Fs(bashdefault)1590 -1727 y Ft(P)m(erform)d(the)h(rest)f(of)h(the)g(default)f(Bash)h -(completions)g(if)g(the)1590 1837 y(compsp)s(ec)i(generates)i(no)e -(matc)m(hes.)1110 1992 y Fs(default)144 b Ft(Use)22 b(Readline's)g +2052 y(b)s(e)j(one)g(of:)1110 2217 y Fs(bashdefault)1590 +2326 y Ft(P)m(erform)d(the)h(rest)f(of)h(the)g(default)f(Bash)h +(completions)g(if)g(the)1590 2436 y(compsp)s(ec)i(generates)i(no)e +(matc)m(hes.)1110 2600 y Fs(default)144 b Ft(Use)22 b(Readline's)g (default)g(\014lename)g(completion)g(if)g(the)g(comp-)1590 -2101 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110 -2256 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 2366 y(generates)32 -b(no)e(matc)m(hes.)1110 2521 y Fs(filenames)1590 2630 +2710 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110 +2874 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 2984 y(generates)32 +b(no)e(matc)m(hes.)1110 3148 y Fs(filenames)1590 3258 y Ft(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f(generates)j -(\014lenames,)1590 2740 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h +(\014lenames,)1590 3367 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h (\014lename-sp)s(eci\014c)h(pro)s(cessing)e(\(lik)m(e)1590 -2850 y(adding)h(a)h(slash)f(to)h(directory)g(names)f(or)g(suppressing)f -(trail-)1590 2959 y(ing)38 b(spaces\).)66 b(This)37 b(option)i(is)f(in) -m(tended)g(to)h(b)s(e)f(used)f(with)1590 3069 y(shell)31 +3477 y(adding)h(a)h(slash)f(to)h(directory)g(names)f(or)g(suppressing)f +(trail-)1590 3587 y(ing)38 b(spaces\).)66 b(This)37 b(option)i(is)f(in) +m(tended)g(to)h(b)s(e)f(used)f(with)1590 3696 y(shell)31 b(functions)f(sp)s(eci\014ed)f(with)h(`)p Fs(-F)p Ft('.)1110 -3224 y Fs(nospace)144 b Ft(T)-8 b(ell)40 b(Readline)g(not)g(to)g(app)s -(end)d(a)j(space)g(\(the)f(default\))h(to)1590 3333 y(w)m(ords)30 +3861 y Fs(nospace)144 b Ft(T)-8 b(ell)40 b(Readline)g(not)g(to)g(app)s +(end)d(a)j(space)g(\(the)f(default\))h(to)1590 3970 y(w)m(ords)30 b(completed)h(at)g(the)g(end)f(of)g(the)h(line.)1110 -3488 y Fs(plusdirs)96 b Ft(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d -(b)m(y)i(the)g(compsp)s(ec)g(are)g(gener-)1590 3598 y(ated,)g +4134 y Fs(plusdirs)96 b Ft(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d +(b)m(y)i(the)g(compsp)s(ec)g(are)g(gener-)1590 4244 y(ated,)g (directory)f(name)g(completion)i(is)d(attempted)i(and)f(an)m(y)1590 -3707 y(matc)m(hes)j(are)e(added)g(to)h(the)g(results)f(of)g(the)h -(other)g(actions.)630 3862 y Fs(-A)f Fj(action)1110 3972 +4354 y(matc)m(hes)j(are)e(added)g(to)h(the)g(results)f(of)g(the)h +(other)g(actions.)630 4518 y Fs(-A)f Fj(action)1110 4628 y Ft(The)25 b Fq(action)h Ft(ma)m(y)g(b)s(e)e(one)h(of)h(the)f(follo)m (wing)i(to)e(generate)i(a)e(list)h(of)f(p)s(ossible)1110 -4082 y(completions:)1110 4237 y Fs(alias)240 b Ft(Alias)31 +4737 y(completions:)1110 4902 y Fs(alias)240 b Ft(Alias)31 b(names.)41 b(Ma)m(y)31 b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i(`)p -Fs(-a)p Ft('.)1110 4391 y Fs(arrayvar)96 b Ft(Arra)m(y)31 -b(v)-5 b(ariable)31 b(names.)1110 4546 y Fs(binding)144 +Fs(-a)p Ft('.)1110 5066 y Fs(arrayvar)96 b Ft(Arra)m(y)31 +b(v)-5 b(ariable)31 b(names.)1110 5230 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 4656 y(Readline)h(Commands],)f(page)h(103\).)1110 -4811 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 4921 -y(as)31 b(`)p Fs(-b)p Ft('.)1110 5075 y Fs(command)144 -b Ft(Command)29 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s -(eci\014ed)f(as)i(`)p Fs(-c)p Ft('.)1110 5230 y Fs(directory)1590 -5340 y Ft(Directory)h(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s -(eci\014ed)g(as)g(`)p Fs(-d)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)1110 299 y Fs(disabled)96 -b Ft(Names)31 b(of)g(disabled)f(shell)g(builtins.)1110 -458 y Fs(enabled)144 b Ft(Names)31 b(of)g(enabled)f(shell)g(builtins.) -1110 617 y Fs(export)192 b Ft(Names)34 b(of)f(exp)s(orted)f(shell)h(v) --5 b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590 -726 y(\014ed)d(as)g(`)p Fs(-e)p Ft('.)1110 885 y Fs(file)288 +([Bindable)1590 5340 y(Readline)h(Commands],)f(page)h(104\).)p +eop end +%%Page: 116 122 +TeXDict begin 116 121 bop 150 -116 a Ft(116)2527 b(Bash)31 +b(Reference)g(Man)m(ual)1110 299 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 408 y(as)31 b(`)p Fs(-b)p Ft('.)1110 +581 y Fs(command)144 b Ft(Command)29 b(names.)41 b(Ma)m(y)32 +b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i(`)p Fs(-c)p Ft('.)1110 +753 y Fs(directory)1590 862 y Ft(Directory)h(names.)40 +b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)g(`)p +Fs(-d)p Ft('.)1110 1035 y Fs(disabled)96 b Ft(Names)31 +b(of)g(disabled)f(shell)g(builtins.)1110 1207 y Fs(enabled)144 +b Ft(Names)31 b(of)g(enabled)f(shell)g(builtins.)1110 +1379 y Fs(export)192 b Ft(Names)34 b(of)f(exp)s(orted)f(shell)h(v)-5 +b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590 +1489 y(\014ed)d(as)g(`)p Fs(-e)p Ft('.)1110 1661 y Fs(file)288 b Ft(File)32 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f -(as)i(`)p Fs(-f)p Ft('.)1110 1044 y Fs(function)96 b -Ft(Names)31 b(of)g(shell)f(functions.)1110 1203 y Fs(group)240 +(as)i(`)p Fs(-f)p Ft('.)1110 1833 y Fs(function)96 b +Ft(Names)31 b(of)g(shell)f(functions.)1110 2005 y Fs(group)240 b Ft(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g -(as)g(`)p Fs(-g)p Ft('.)1110 1362 y Fs(helptopic)1590 -1471 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 1581 y(tion)31 -b(4.2)g([Bash)g(Builtins],)g(page)g(41\).)1110 1740 y +(as)g(`)p Fs(-g)p Ft('.)1110 2178 y Fs(helptopic)1590 +2287 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 2397 y(tion)31 +b(4.2)g([Bash)g(Builtins],)g(page)g(41\).)1110 2569 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 1850 y(the)55 b +(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 2679 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 1959 y(V)-8 b(ariables],)32 b(page)f(59\).)1110 -2118 y Fs(job)336 b Ft(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f +([Bash)1590 2788 y(V)-8 b(ariables],)32 b(page)f(59\).)1110 +2960 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 -2228 y(\014ed)f(as)g(`)p Fs(-j)p Ft('.)1110 2387 y Fs(keyword)144 +3070 y(\014ed)f(as)g(`)p Fs(-j)p Ft('.)1110 3242 y Fs(keyword)144 b Ft(Shell)30 b(reserv)m(ed)h(w)m(ords.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i(`)p Fs(-k)p Ft('.)1110 -2545 y Fs(running)144 b Ft(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f -(con)m(trol)h(is)g(activ)m(e.)1110 2704 y Fs(service)144 +3414 y Fs(running)144 b Ft(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f +(con)m(trol)h(is)g(activ)m(e.)1110 3587 y Fs(service)144 b Ft(Service)31 b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s -(eci\014ed)g(as)g(`)p Fs(-s)p Ft('.)1110 2863 y Fs(setopt)192 +(eci\014ed)g(as)g(`)p Fs(-s)p Ft('.)1110 3759 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 -2973 y(\(see)g(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(49\).) -1110 3132 y Fs(shopt)240 b Ft(Shell)40 b(option)g(names)g(as)g +3868 y(\(see)g(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(50\).) +1110 4041 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 -3241 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(41\).) -1110 3400 y Fs(signal)192 b Ft(Signal)31 b(names.)1110 -3559 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 3718 y Fs(user)288 +4150 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(41\).) +1110 4322 y Fs(signal)192 b Ft(Signal)31 b(names.)1110 +4495 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 4667 y Fs(user)288 b Ft(User)30 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f -(as)i(`)p Fs(-u)p Ft('.)1110 3877 y Fs(variable)96 b +(as)i(`)p Fs(-u)p Ft('.)1110 4839 y Fs(variable)96 b Ft(Names)36 b(of)g(all)g(shell)g(v)-5 b(ariables.)56 b(Ma)m(y)37 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590 -3987 y(`)p Fs(-v)p Ft('.)630 4145 y Fs(-G)30 b Fj(globpat)1110 -4255 y Ft(The)39 b(\014lename)h(expansion)g(pattern)g -Fq(globpat)j Ft(is)d(expanded)f(to)h(generate)1110 4365 -y(the)31 b(p)s(ossible)e(completions.)630 4524 y Fs(-W)h -Fj(wordlist)1110 4633 y Ft(The)24 b Fq(w)m(ordlist)k +4949 y(`)p Fs(-v)p Ft('.)630 5121 y Fs(-G)30 b Fj(globpat)1110 +5230 y Ft(The)39 b(\014lename)h(expansion)g(pattern)g +Fq(globpat)j Ft(is)d(expanded)f(to)h(generate)1110 5340 +y(the)31 b(p)s(ossible)e(completions.)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)630 299 y Fs(-W)30 +b Fj(wordlist)1110 408 y Ft(The)24 b Fq(w)m(ordlist)k Ft(is)d(split)g(using)f(the)h(c)m(haracters)i(in)d(the)i -Fs(IFS)e Ft(sp)s(ecial)h(v)-5 b(ariable)1110 4743 y(as)36 +Fs(IFS)e Ft(sp)s(ecial)h(v)-5 b(ariable)1110 518 y(as)36 b(delimiters,)i(and)e(eac)m(h)h(resultan)m(t)g(w)m(ord)e(is)h -(expanded.)57 b(The)35 b(p)s(ossible)1110 4852 y(completions)c(are)e +(expanded.)57 b(The)35 b(p)s(ossible)1110 628 y(completions)c(are)e (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 4962 y(w)m(ord)f(b)s(eing)g(completed.)630 -5121 y Fs(-C)g Fj(command)1110 5230 y Fq(command)35 b +(matc)m(h)i(the)1110 737 y(w)m(ord)f(b)s(eing)g(completed.)630 +897 y Fs(-C)g Fj(command)1110 1006 y Fq(command)35 b Ft(is)e(executed)g(in)e(a)i(subshell)e(en)m(vironmen)m(t,)i(and)f(its)g -(output)g(is)1110 5340 y(used)e(as)g(the)h(p)s(ossible)f(completions.)p -eop end -%%Page: 116 122 -TeXDict begin 116 121 bop 150 -116 a Ft(116)2527 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y Fs(-F)f Fj(function)1110 -408 y Ft(The)25 b(shell)i(function)e Fq(function)h Ft(is)g(executed)h -(in)e(the)i(curren)m(t)e(shell)i(en)m(viron-)1110 518 -y(men)m(t.)40 b(When)25 b(it)h(\014nishes,)f(the)h(p)s(ossible)f -(completions)h(are)g(retriev)m(ed)g(from)1110 628 y(the)31 -b(v)-5 b(alue)30 b(of)h(the)g Fs(COMPREPLY)c Ft(arra)m(y)k(v)-5 -b(ariable.)630 787 y Fs(-X)30 b Fj(filterpat)1110 897 -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 1006 -y(the)30 b(list)f(of)h(p)s(ossible)f(completions)h(generated)h(b)m(y)e -(the)g(preceding)h(options)1110 1116 y(and)d(argumen)m(ts,)i(and)e(eac) -m(h)i(completion)g(matc)m(hing)g Fq(\014lterpat)h Ft(is)e(remo)m(v)m -(ed)1110 1225 y(from)i(the)h(list.)42 b(A)30 b(leading)i(`)p -Fs(!)p Ft(')e(in)g Fq(\014lterpat)j Ft(negates)f(the)f(pattern;)g(in)f -(this)1110 1335 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g -Fq(\014lterpat)i Ft(is)d(remo)m(v)m(ed.)630 1494 y Fs(-P)g -Fj(prefix)1110 1604 y Fq(pre\014x)39 b Ft(is)34 b(added)f(at)i(the)f(b) +(output)g(is)1110 1116 y(used)e(as)g(the)h(p)s(ossible)f(completions.) +630 1275 y Fs(-F)g Fj(function)1110 1385 y Ft(The)25 +b(shell)i(function)e Fq(function)h Ft(is)g(executed)h(in)e(the)i +(curren)m(t)e(shell)i(en)m(viron-)1110 1494 y(men)m(t.)40 +b(When)25 b(it)h(\014nishes,)f(the)h(p)s(ossible)f(completions)h(are)g +(retriev)m(ed)g(from)1110 1604 y(the)31 b(v)-5 b(alue)30 +b(of)h(the)g Fs(COMPREPLY)c Ft(arra)m(y)k(v)-5 b(ariable.)630 +1763 y Fs(-X)30 b Fj(filterpat)1110 1873 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 1983 y(the)30 b(list)f(of)h(p)s +(ossible)f(completions)h(generated)h(b)m(y)e(the)g(preceding)h(options) +1110 2092 y(and)d(argumen)m(ts,)i(and)e(eac)m(h)i(completion)g(matc)m +(hing)g Fq(\014lterpat)h Ft(is)e(remo)m(v)m(ed)1110 2202 +y(from)i(the)h(list.)42 b(A)30 b(leading)i(`)p Fs(!)p +Ft(')e(in)g Fq(\014lterpat)j Ft(negates)f(the)f(pattern;)g(in)f(this) +1110 2311 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g +Fq(\014lterpat)i Ft(is)d(remo)m(v)m(ed.)630 2471 y Fs(-P)g +Fj(prefix)1110 2580 y Fq(pre\014x)39 b Ft(is)34 b(added)f(at)i(the)f(b) s(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110 -1714 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630 -1873 y Fs(-S)g Fj(suffix)1110 1983 y Fq(su\016x)c Ft(is)20 +2690 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630 +2849 y Fs(-S)g Fj(suffix)1110 2959 y Fq(su\016x)c Ft(is)20 b(app)s(ended)f(to)i(eac)m(h)h(p)s(ossible)e(completion)i(after)f(all)g -(other)g(options)1110 2092 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630 -2252 y(The)35 b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h(an)f(in) +(other)g(options)1110 3068 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630 +3228 y(The)35 b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h(an)f(in) m(v)-5 b(alid)37 b(option)f(is)g(supplied,)g(an)g(option)h(other)630 -2361 y(than)31 b(`)p Fs(-p)p Ft(')g(or)g(`)p Fs(-r)p +3337 y(than)31 b(`)p Fs(-p)p Ft(')g(or)g(`)p Fs(-r)p Ft(')g(is)g(supplied)f(without)h(a)g Fq(name)37 b Ft(argumen)m(t,)32 -b(an)f(attempt)h(is)f(made)g(to)630 2471 y(remo)m(v)m(e)h(a)e +b(an)f(attempt)h(is)f(made)g(to)630 3447 y(remo)m(v)m(e)h(a)e (completion)i(sp)s(eci\014cation)f(for)f(a)h Fq(name)k Ft(for)30 b(whic)m(h)g(no)g(sp)s(eci\014cation)h(exists,)630 -2580 y(or)f(an)h(error)f(o)s(ccurs)g(adding)g(a)g(completion)i(sp)s -(eci\014cation.)150 2740 y Fs(compopt)870 2874 y(compopt)46 +3557 y(or)f(an)h(error)f(o)s(ccurs)g(adding)g(a)g(completion)i(sp)s +(eci\014cation.)150 3716 y Fs(compopt)870 3851 y(compopt)46 b([-o)h Fj(option)11 b Fs(])45 b([+o)i Fj(option)11 b -Fs(])45 b([)p Fj(name)11 b Fs(])630 3009 y Ft(Mo)s(dify)33 +Fs(])45 b([)p Fj(name)11 b Fs(])630 3985 y Ft(Mo)s(dify)33 b(completion)h(options)g(for)f(eac)m(h)h Fq(name)39 b Ft(according)34 b(to)g(the)f Fq(option)p Ft(s,)i(or)e(for)g(the)630 -3118 y(curren)m(tly-execution)46 b(completion)f(if)f(no)f +4095 y(curren)m(tly-execution)46 b(completion)f(if)f(no)f Fq(name)5 b Ft(s)44 b(are)h(supplied.)80 b(If)43 b(no)h -Fq(option)p Ft(s)h(are)630 3228 y(giv)m(en,)30 b(displa)m(y)e(the)g +Fq(option)p Ft(s)h(are)630 4204 y(giv)m(en,)30 b(displa)m(y)e(the)g (completion)h(options)g(for)e(eac)m(h)i Fq(name)34 b -Ft(or)27 b(the)i(curren)m(t)e(completion.)630 3337 y(The)f(p)s(ossible) +Ft(or)27 b(the)i(curren)m(t)e(completion.)630 4314 y(The)f(p)s(ossible) g(v)-5 b(alues)27 b(of)f Fq(option)h Ft(are)g(those)g(v)-5 b(alid)26 b(for)g(the)h Fs(complete)d Ft(builtin)i(describ)s(ed)630 -3447 y(ab)s(o)m(v)m(e.)630 3582 y(The)d(return)g(v)-5 +4423 y(ab)s(o)m(v)m(e.)630 4558 y(The)d(return)g(v)-5 b(alue)25 b(is)f(true)g(unless)f(an)h(in)m(v)-5 b(alid)24 b(option)h(is)f(supplied,)g(an)g(attempt)h(is)f(made)630 -3691 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h +4667 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h Fq(name)k Ft(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f -(exists,)630 3801 y(or)e(an)h(output)f(error)g(o)s(ccurs.)p +(exists,)630 4777 y(or)e(an)h(output)f(error)g(o)s(ccurs.)p eop end -%%Page: 117 123 -TeXDict begin 117 122 bop 150 -116 a Ft(Chapter)47 b(9:)i(Using)f -(History)g(In)m(teractiv)m(ely)1865 b(117)150 299 y Fo(9)80 +%%Page: 118 124 +TeXDict begin 118 123 bop 150 -116 a Ft(118)2527 b(Bash)31 +b(Reference)g(Man)m(ual)p eop end +%%Page: 119 125 +TeXDict begin 119 124 bop 150 -116 a Ft(Chapter)47 b(9:)i(Using)f +(History)g(In)m(teractiv)m(ely)1865 b(119)150 299 y Fo(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)275 552 y Ft(This)32 b(c)m(hapter)i(describ)s(es)e(ho)m(w)h(to)h(use)f(the)g Fl(gnu)g Ft(History)h(Library)e(in)m(teractiv)m(ely)-8 @@ -12746,7 +12889,7 @@ Fl(gnu)f Ft(Readline)h(Library)f(Man)m(ual.)150 1044 y Fr(9.1)68 b(Bash)45 b(History)h(F)-11 b(acilities)275 1294 y Ft(When)31 b(the)g(`)p Fs(-o)f(history)p Ft(')g(option)i(to)g (the)g Fs(set)f Ft(builtin)g(is)g(enabled)h(\(see)g(Section)g(4.3.1)i -([The)d(Set)150 1404 y(Builtin],)h(page)g(49\),)h(the)e(shell)h(pro)m +([The)d(Set)150 1404 y(Builtin],)h(page)g(50\),)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 1514 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 @@ -12800,7 +12943,7 @@ b(using)f(command-line)h(editing,)h(searc)m(h)f(commands)g(are)g(a)m(v) -5 b(ailable)33 b(in)e(eac)m(h)150 3909 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 -4018 y(History],)31 b(page)h(103\).)275 4159 y(The)47 +4018 y(History],)31 b(page)h(104\).)275 4159 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 4269 y Fs(HISTCONTROL)25 b Ft(and)j Fs(HISTIGNORE)e Ft(v)-5 @@ -12821,8 +12964,8 @@ Fs(shopt)p Ft(.)150 5090 y Fr(9.2)68 b(Bash)45 b(History)h(Builtins)275 5340 y Ft(Bash)30 b(pro)m(vides)g(t)m(w)m(o)i(builtin)e(commands)g (whic)m(h)g(manipulate)h(the)f(history)h(list)g(and)f(history)g (\014le.)p eop end -%%Page: 118 124 -TeXDict begin 118 123 bop 150 -116 a Ft(118)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)150 299 y Fs(fc)870 445 y(fc)47 b([-e)g Fj(ename)11 b Fs(])46 b([-lnr])g([)p Fj(first)11 b Fs(])45 b([)p Fj(last)11 b Fs(])870 555 y(fc)47 b(-s)g([)p @@ -12897,9 +13040,9 @@ b Ft(App)s(end)35 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: 119 125 -TeXDict begin 119 124 bop 150 -116 a Ft(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(119)630 +%%Page: 121 127 +TeXDict begin 121 126 bop 150 -116 a Ft(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(121)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 @@ -12982,8 +13125,8 @@ i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150 5230 y(page)32 b(59\).)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: 120 126 -TeXDict begin 120 125 bop 150 -116 a Ft(120)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 Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)275 545 y Ft(An)30 b(ev)m(en)m(t)h(designator)h(is)e(a)h (reference)g(to)g(a)f(command)h(line)f(en)m(try)h(in)f(the)h(history)f @@ -13042,9 +13185,9 @@ b(F)-8 b(or)31 b(man)m(y)g(applications,)h(this)e(is)g(the)h(command)f 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 Fj(string)11 b Fs(?)p Ft(')28 b(searc)m(h.)p eop end -%%Page: 121 127 -TeXDict begin 121 126 bop 150 -116 a Ft(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(121)150 +%%Page: 123 129 +TeXDict begin 123 128 bop 150 -116 a Ft(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(123)150 299 y Fj(x)p Fs(-)p Fj(y)336 b Ft(A)30 b(range)h(of)g(w)m(ords;)f(`)p Fs(-)p Fj(y)11 b Ft(')30 b(abbreviates)h(`)p Fs(0-)p Fj(y)11 b Ft('.)150 458 y Fs(*)432 b Ft(All)28 b(of)g(the)g(w)m(ords,)g @@ -13098,12 +13241,12 @@ Fj(new)g Fs(/)p Ft(,)26 b(or)k(with)h(`)p Fs(&)p Ft('.)150 4473 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: 122 128 -TeXDict begin 122 127 bop 150 -116 a Ft(122)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)p eop end -%%Page: 123 129 -TeXDict begin 123 128 bop 150 -116 a Ft(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(123)150 299 y Fo(10)80 +%%Page: 125 131 +TeXDict begin 125 130 bop 150 -116 a Ft(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(125)150 299 y Fo(10)80 b(Installing)52 b(Bash)275 535 y Ft(This)39 b(c)m(hapter)i(pro)m(vides) f(basic)g(instructions)g(for)g(installing)h(Bash)f(on)g(the)h(v)-5 b(arious)40 b(supp)s(orted)150 645 y(platforms.)58 b(The)36 @@ -13183,8 +13326,8 @@ b(T)-8 b(o)32 b(also)g(remo)m(v)m(e)g(the)g(\014les)f(that)g 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: 124 130 -TeXDict begin 124 129 bop 150 -116 a Ft(124)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)150 299 y Fr(10.2)68 b(Compilers)46 b(and)f(Options)275 560 y Ft(Some)40 b(systems)g(require)f(un)m(usual)g (options)h(for)g(compilation)i(or)e(linking)g(that)g(the)g @@ -13261,9 +13404,9 @@ b(will)h(use)f Fq(P)-8 b(A)g(TH)75 b Ft(as)64 b(the)g(pre\014x)e(for)i (installing)h(programs)e(and)h(libraries.)150 5340 y(Do)s(cumen)m (tation)32 b(and)e(other)h(data)g(\014les)f(will)h(still)g(use)f(the)h (regular)f(pre\014x.)p eop end -%%Page: 125 131 -TeXDict begin 125 130 bop 150 -116 a Ft(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(125)150 299 y Fr(10.5)68 +%%Page: 127 133 +TeXDict begin 127 132 bop 150 -116 a Ft(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(127)150 299 y Fr(10.5)68 b(Sp)t(ecifying)45 b(the)g(System)h(T)l(yp)t(e)275 539 y Ft(There)35 b(ma)m(y)h(b)s(e)f(some)h(features)g Fs(configure)d Ft(can)j(not)g(\014gure)f(out)g(automatically)-8 b(,)41 @@ -13331,8 +13474,8 @@ b(T)-8 b(o)29 b(turn)e(o\013)h(the)h(default)f(use)g(of)g(a)h(pac)m(k-) b Ft('.)63 b(T)-8 b(o)40 b(con\014gure)g(Bash)f(without)h(a)g(feature)g (that)g(is)g(enabled)f(b)m(y)150 5340 y(default,)31 b(use)f(`)p Fs(--disable-)p Fj(feature)11 b Ft('.)p eop end -%%Page: 126 132 -TeXDict begin 126 131 bop 150 -116 a Ft(126)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)275 299 y(Here)21 b(is)g(a)g(complete)h(list)g (of)f(the)g(`)p Fs(--enable-)p Ft(')e(and)h(`)p Fs(--with-)p Ft(')g(options)h(that)g(the)g(Bash)g Fs(configure)150 @@ -13400,9 +13543,9 @@ y Ft(This)h(builds)f(a)i(Bash)g(binary)f(that)h(pro)s(duces)e (pro\014ling)h(information)h(to)h(b)s(e)d(pro)s(cessed)630 5340 y(b)m(y)g Fs(gprof)f Ft(eac)m(h)j(time)f(it)g(is)f(executed.)p eop end -%%Page: 127 133 -TeXDict begin 127 132 bop 150 -116 a Ft(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(127)150 299 y Fs(--enable-static-link)630 +%%Page: 129 135 +TeXDict begin 129 134 bop 150 -116 a Ft(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(129)150 299 y Fs(--enable-static-link)630 408 y Ft(This)37 b(causes)h(Bash)f(to)h(b)s(e)f(link)m(ed)h(statically) -8 b(,)43 b(if)37 b Fs(gcc)g Ft(is)g(b)s(eing)g(used.)61 b(This)37 b(could)h(b)s(e)630 518 y(used)30 b(to)h(build)e(a)i(v)m @@ -13423,18 +13566,18 @@ Fs(alias)f Ft(and)g Fs(unalias)e Ft(builtins)j(\(see)g(Sec-)630 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 1767 y(C)30 b(language)i Fs(for)d Ft(statemen)m(t)j(\(see)g(Section)f -(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(9\).)150 +(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(10\).)150 1921 y Fs(--enable-array-variables)630 2030 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 2140 y(ra)m(ys],)c(page)g(78\).)150 2293 y Fs(--enable-bang-history)630 2403 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 2513 y(teraction],)c(page)e -(119\).)150 2666 y Fs(--enable-brace-expansion)630 2776 +(121\).)150 2666 y Fs(--enable-brace-expansion)630 2776 y Ft(Include)40 b Fs(csh)p Ft(-lik)m(e)h(brace)f(expansion)g(\()h Fs(b{a,b}c)2445 2772 y Fp(7!)2576 2776 y Fs(bac)30 b(bbc)39 b Ft(\).)71 b(See)40 b(Section)h(3.5.1)630 2885 y([Brace)32 -b(Expansion],)e(page)h(17,)h(for)e(a)g(complete)i(description.)150 +b(Expansion],)e(page)h(18,)h(for)e(a)g(complete)i(description.)150 3039 y Fs(--enable-command-timing)630 3148 y Ft(Include)43 b(supp)s(ort)f(for)h(recognizing)i Fs(time)e Ft(as)g(a)h(reserv)m(ed)g (w)m(ord)f(and)g(for)h(displa)m(ying)630 3258 y(timing)37 @@ -13465,8 +13608,8 @@ Fs(enable)d(-n)i(xxx)p Ft('.)43 b(See)32 b(Section)g(4.2)h([Bash)e (Builtins],)i(page)f(41,)630 5340 y(for)e(details)i(of)e(the)h Fs(builtin)d Ft(and)i Fs(enable)e Ft(builtin)i(commands.)p eop end -%%Page: 128 134 -TeXDict begin 128 133 bop 150 -116 a Ft(128)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)150 299 y Fs(--enable-dparen-arithmet)o(ic)630 408 y Ft(Include)42 b(supp)s(ort)f(for)h(the)h Fs(\(\(...)o(\)\))f Ft(command)g(\(see)i(Section)f(3.2.4.2)i([Conditional)630 @@ -13481,7 +13624,7 @@ b(\(see)630 1267 y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f (41\).)150 1422 y Fs(--enable-history)630 1532 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 1641 y(tion)h(9.1)g([Bash)g -(History)g(F)-8 b(acilities],)34 b(page)d(117\).)150 +(History)g(F)-8 b(acilities],)34 b(page)d(119\).)150 1797 y Fs(--enable-job-control)630 1906 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(87\),)h(if)630 2016 y(the)f(op)s(erating)f(system)h @@ -13501,7 +13644,7 @@ s(cess)e(Substitution],)630 3249 y(page)31 b(22\))h(if)e(the)h(op)s (erating)f(system)h(pro)m(vides)f(the)h(necessary)g(supp)s(ort.)150 3404 y Fs(--enable-progcomp)630 3513 y Ft(Enable)d(the)g(programmable)g (completion)i(facilities)g(\(see)f(Section)g(8.6)g([Programmable)630 -3623 y(Completion],)i(page)h(111\).)42 b(If)30 b(Readline)h(is)f(not)h +3623 y(Completion],)i(page)h(112\).)42 b(If)30 b(Readline)h(is)f(not)h (enabled,)f(this)h(option)g(has)f(no)g(e\013ect.)150 3778 y Fs(--enable-prompt-string-d)o(ecod)o(ing)630 3888 y Ft(T)-8 b(urn)46 b(on)h(the)h(in)m(terpretation)g(of)g(a)g(n)m(um)m @@ -13524,9 +13667,9 @@ b(See)40 b(Section)h(6.10)g([The)f(Restricted)h(Shell],)630 Fs(select)f Ft(builtin,)i(whic)m(h)f(allo)m(ws)i(the)f(generation)g(of) g(simple)f(men)m(us)g(\(see)630 5340 y(Section)c(3.2.4.2)i ([Conditional)e(Constructs],)g(page)g(10\).)p eop end -%%Page: 129 135 -TeXDict begin 129 134 bop 150 -116 a Ft(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(129)150 299 y Fs +%%Page: 131 137 +TeXDict begin 131 136 bop 150 -116 a Ft(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(131)150 299 y Fs (--enable-separate-helpfi)o(les)630 408 y Ft(Use)32 b(external)h (\014les)f(for)g(the)g(do)s(cumen)m(tation)h(displa)m(y)m(ed)f(b)m(y)g (the)g Fs(help)f Ft(builtin)h(instead)630 518 y(of)f(storing)f(the)h @@ -13563,12 +13706,12 @@ y(the)h(consequences)g(if)f(y)m(ou)h(do.)55 b(Read)36 b(the)g(commen)m(ts)g(asso)s(ciated)h(with)e(eac)m(h)i(de\014nition)e (for)g(more)150 2849 y(information)c(ab)s(out)f(its)h(e\013ect.)p eop end -%%Page: 130 136 -TeXDict begin 130 135 bop 150 -116 a Ft(130)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)p eop end -%%Page: 131 137 -TeXDict begin 131 136 bop 150 -116 a Ft(App)s(endix)29 -b(A:)h(Rep)s(orting)h(Bugs)2299 b(131)150 299 y Fo(App)t(endix)52 +%%Page: 133 139 +TeXDict begin 133 138 bop 150 -116 a Ft(App)s(endix)29 +b(A:)h(Rep)s(orting)h(Bugs)2299 b(133)150 299 y Fo(App)t(endix)52 b(A)121 b(Rep)t(orting)52 b(Bugs)275 533 y Ft(Please)35 b(rep)s(ort)e(all)i(bugs)f(y)m(ou)g(\014nd)f(in)h(Bash.)52 b(But)34 b(\014rst,)h(y)m(ou)f(should)f(mak)m(e)i(sure)f(that)g(it)h @@ -13597,13 +13740,13 @@ s(duce)e(it.)150 2182 y Fs(bashbug)d Ft(inserts)i(the)h(\014rst)f (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@po.CWRU.Edu)p Ft(.)p eop end -%%Page: 132 138 -TeXDict begin 132 137 bop 150 -116 a Ft(132)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)p eop end -%%Page: 133 139 -TeXDict begin 133 138 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 135 141 +TeXDict begin 135 140 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(133)150 141 y Fo(App)t(endix)52 +b(The)f(Bourne)g(Shell)1258 b(135)150 141 y Fo(App)t(endix)52 b(B)128 b(Ma)9 b(jor)54 b(Di\013erences)d(F)-13 b(rom)54 b(The)f(Bourne)1135 299 y(Shell)275 530 y Ft(Bash)25 b(implemen)m(ts)g(essen)m(tially)i(the)f(same)f(grammar,)i(parameter)e @@ -13632,12 +13775,12 @@ b Ft(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g (91\))i(and)330 1809 y(the)h Fs(bind)e 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(111\),)i(and)d(builtin)g +2052 y(grammable)39 b(Completion],)i(page)e(112\),)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(117\))i(and)d(the)330 2405 y Fs(history)k Ft(and)h +b(page)c(119\))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 @@ -13645,7 +13788,7 @@ b(of)f(the)h Fs(HISTTIMEFORMAT)26 b Ft(v)-5 b(ariable)32 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(119\).)225 2892 y Fp(\017)60 b Ft(Bash)33 +y(page)31 b(121\).)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(78\),)h(and)e(the)330 3002 y(appropriate)39 b(v)-5 b(ariable)40 b(expansions)f(and)g @@ -13684,13 +13827,13 @@ b(ariable.)225 4987 y Fp(\017)60 b Ft(Bash)23 b(implemen)m(ts)g(the)h Fs(for)29 b(\(\()h Fj(expr1)39 b Fs(;)30 b Fj(expr2)40 b Fs(;)30 b Fj(expr3)39 b Fs(\)\))23 b Ft(arithmetic)h(for)e(command,)j (sim-)330 5096 y(ilar)31 b(to)g(the)g(C)f(language)h(\(see)h(Section)f -(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(9\).)225 +(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(10\).)225 5230 y Fp(\017)60 b Ft(Bash)31 b(includes)f(the)g Fs(select)f 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: 134 140 -TeXDict begin 134 139 bop 150 -116 a Ft(134)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)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 @@ -13700,7 +13843,7 @@ b(regular)e(expression)g(matc)m(hing.)225 653 y Fp(\017)60 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(17\))h(and)d(tilde)330 +(Section)g(3.5.1)i([Brace)e(Expansion],)g(page)g(18\))h(and)d(tilde)330 898 y(expansion)k(\(see)i(Section)f(3.5.2)h([Tilde)f(Expansion],)f (page)h(18\).)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 @@ -13758,7 +13901,7 @@ b(expansion)g(using)f Fs(${!word})e Ft(\(see)k(Section)f(3.5.3)i Fj(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(21\),)j(and)38 +4386 y(mand)38 b(Substitution],)k(page)e(22\),)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 @@ -13779,10 +13922,10 @@ Ft(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f(only)g(the)g(results)g y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f(23\).)41 b(This)28 b(closes)h(a)g(longstanding)g(shell)f(securit)m(y)h(hole.)p eop end -%%Page: 135 141 -TeXDict begin 135 140 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 137 143 +TeXDict begin 137 142 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(135)225 299 y Fp(\017)60 +b(The)f(Bourne)g(Shell)1258 b(137)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)p Ft(,)j Fq(equiv)-5 @@ -13836,7 +13979,7 @@ b Ft(Bash)33 b(can)f(op)s(en)g(net)m(w)m(ork)i(connections)f(to)h 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(49\).)66 +b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(50\).)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 @@ -13868,8 +14011,8 @@ 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(14\).)p eop end -%%Page: 136 142 -TeXDict begin 136 141 bop 150 -116 a Ft(136)2527 b(Bash)31 +%%Page: 138 144 +TeXDict begin 138 143 bop 150 -116 a Ft(138)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 @@ -13921,17 +14064,17 @@ f(the)g Fs(.)g Ft(or)330 2737 y Fs(source)c Ft(builtins)g(\(see)j 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(53\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f +(Builtin],)k(page)d(54\),)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 (69\).)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(49\).)225 3477 +b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(50\).)225 3477 y Fp(\017)60 b Ft(The)31 b(`)p Fs(-x)p Ft(')g(\()p Fs(xtrace)p Ft(\))g(option)h(displa)m(ys)f(commands)h(other)f(than)h(simple)f (commands)g(when)g(p)s(er-)330 3587 y(forming)f(an)g(execution)i(trace) -f(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(49\).)225 +f(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(50\).)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(35\))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 @@ -13964,10 +14107,10 @@ Ft(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j 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: 137 143 -TeXDict begin 137 142 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 139 145 +TeXDict begin 139 144 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(137)330 299 y(are)40 b(executed)g(after)g +b(The)f(Bourne)g(Shell)1258 b(139)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 @@ -14049,8 +14192,8 @@ Ft(.)57 b(If)35 b(the)i(shell)f(is)h(started)g(from)e(a)i(pro)s(cess)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: 138 144 -TeXDict begin 138 143 bop 150 -116 a Ft(138)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)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 @@ -14082,10 +14225,10 @@ Fl(posix)330 1738 y Ft(standard.)225 1873 y Fp(\017)60 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: 139 145 -TeXDict begin 139 144 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 141 147 +TeXDict begin 141 146 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(139)150 299 y Fo(App)t(endix)52 b(C)126 b(GNU)53 b(F)-13 +b(141)150 299 y Fo(App)t(endix)52 b(C)126 b(GNU)53 b(F)-13 b(ree)53 b(Do)t(cumen)l(tation)f(License)1396 502 y Ft(V)-8 b(ersion)31 b(1.2,)h(No)m(v)m(em)m(b)s(er)g(2002)390 635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fp(\015)e @@ -14167,8 +14310,8 @@ b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g 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: 140 146 -TeXDict begin 140 145 bop 150 -116 a Ft(140)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)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 @@ -14264,10 +14407,10 @@ b(cop)m(yrigh)m(t)i(notices,)j(and)42 b(the)h(license)330 5340 y(notice)37 b(sa)m(ying)g(this)e(License)i(applies)e(to)i(the)f (Do)s(cumen)m(t)g(are)g(repro)s(duced)e(in)i(all)g(copies,)j(and)p eop end -%%Page: 141 147 -TeXDict begin 141 146 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 143 149 +TeXDict begin 143 148 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(141)330 299 y(that)27 b(y)m(ou)g(add)f(no)h(other)f(conditions)h +b(143)330 299 y(that)27 b(y)m(ou)g(add)f(no)h(other)f(conditions)h (whatso)s(ev)m(er)h(to)f(those)g(of)g(this)f(License.)40 b(Y)-8 b(ou)27 b(ma)m(y)g(not)g(use)330 408 y(tec)m(hnical)35 b(measures)d(to)i(obstruct)f(or)g(con)m(trol)h(the)f(reading)g(or)g @@ -14355,8 +14498,8 @@ b(,)510 5230 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g h(title)h(as)510 5340 y(a)e(previous)f(v)m(ersion)g(if)h(the)f (original)i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s (ermission.)p eop end -%%Page: 142 148 -TeXDict begin 142 147 bop 150 -116 a Ft(142)2527 b(Bash)31 +%%Page: 144 150 +TeXDict begin 144 149 bop 150 -116 a Ft(144)2527 b(Bash)31 b(Reference)g(Man)m(ual)360 299 y(B.)61 b(List)31 b(on)f(the)h(Title)g (P)m(age,)i(as)d(authors,)h(one)g(or)f(more)h(p)s(ersons)e(or)h(en)m (tities)j(resp)s(onsible)c(for)510 408 y(authorship)c(of)h(the)h(mo)s @@ -14437,10 +14580,10 @@ 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 5340 y(titles)32 b(m)m(ust)e(b)s(e)g (distinct)h(from)e(an)m(y)i(other)g(section)g(titles.)p eop end -%%Page: 143 149 -TeXDict begin 143 148 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 145 151 +TeXDict begin 145 150 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(143)330 299 y(Y)-8 b(ou)43 b(ma)m(y)g(add)f(a)g(section)i(En)m +b(145)330 299 y(Y)-8 b(ou)43 b(ma)m(y)g(add)f(a)g(section)i(En)m (titled)f(\\Endorsemen)m(ts",)j(pro)m(vided)c(it)h(con)m(tains)g (nothing)g(but)330 408 y(endorsemen)m(ts)30 b(of)g(y)m(our)f(Mo)s (di\014ed)g(V)-8 b(ersion)31 b(b)m(y)e(v)-5 b(arious)30 @@ -14527,8 +14670,8 @@ b(with)d(other)i(separate)g(and)e(indep)s(enden)m(t)330 5340 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h(on)f(a)g(v)m (olume)h(of)g(a)f(storage)i(or)e(distribution)g(medium,)g(is)h(called)p eop end -%%Page: 144 150 -TeXDict begin 144 149 bop 150 -116 a Ft(144)2527 b(Bash)31 +%%Page: 146 152 +TeXDict begin 146 151 bop 150 -116 a Ft(146)2527 b(Bash)31 b(Reference)g(Man)m(ual)330 299 y(an)f(\\aggregate")k(if)c(the)g(cop)m (yrigh)m(t)i(resulting)e(from)f(the)i(compilation)g(is)f(not)h(used)e (to)i(limit)g(the)330 408 y(legal)d(righ)m(ts)f(of)g(the)g @@ -14611,10 +14754,10 @@ y(this)i(License,)j(y)m(ou)d(ma)m(y)i(c)m(ho)s(ose)f(an)m(y)g(v)m (ersion)g(ev)m(er)g(published)e(\(not)i(as)g(a)f(draft\))h(b)m(y)f(the) h(F)-8 b(ree)330 5016 y(Soft)m(w)m(are)31 b(F)-8 b(oundation.)p eop end -%%Page: 145 151 -TeXDict begin 145 150 bop 150 -116 a Ft(App)s(endix)29 +%%Page: 147 153 +TeXDict begin 147 152 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(145)150 299 y Fr(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f +b(147)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)275 543 y Ft(T)-8 b(o)27 b(use)g(this)g(License)h(in)f(a)h(do)s(cumen)m(t)f(y)m(ou)h(ha)m(v)m(e) g(written,)g(include)f(a)h(cop)m(y)g(of)f(the)h(License)g(in)f(the)150 @@ -14649,1139 +14792,1149 @@ y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g b(as)g(the)g(GNU)150 2392 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: 146 152 -TeXDict begin 146 151 bop 150 -116 a Ft(146)2527 b(Bash)31 -b(Reference)g(Man)m(ual)p eop end -%%Page: 147 153 -TeXDict begin 147 152 bop 150 -116 a Ft(App)s(endix)29 -b(D:)i(Indexes)2623 b(147)150 299 y Fo(App)t(endix)52 -b(D)119 b(Indexes)p eop end %%Page: 148 154 TeXDict begin 148 153 bop 150 -116 a Ft(148)2527 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fr(D.1)68 b(Index)45 -b(of)g(Shell)g(Builtin)g(Commands)150 604 y(.)150 727 -y Fe(.)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b -Fb(35)150 980 y Fr(:)150 1104 y Fe(:)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)42 b Fb(35)150 1367 y Fr([)150 1490 y Fe([)17 -b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +b(Reference)g(Man)m(ual)p eop end +%%Page: 149 155 +TeXDict begin 149 154 bop 150 -116 a Ft(App)s(endix)29 +b(D:)i(Indexes)2623 b(149)150 299 y Fo(App)t(endix)52 +b(D)119 b(Indexes)150 656 y Fr(D.1)68 b(Index)45 b(of)g(Shell)g +(Builtin)g(Commands)150 977 y(.)150 1105 y Fe(.)17 b +Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(39)150 1752 -y Fr(A)150 1875 y Fe(alias)11 b Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(35)150 1367 +y Fr(:)150 1495 y Fe(:)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(35)150 1767 y Fr([)150 1895 y Fe([)17 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(39)150 2166 y Fr(A)150 +2293 y Fe(alias)11 b Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b -Fb(41)150 2128 y Fr(B)150 2252 y Fe(bg)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)41 b Fb(88)150 2343 y Fe(bind)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 -b Fb(41)150 2434 y Fe(break)11 b Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b Fb(41)150 2556 +y Fr(B)150 2684 y Fe(bg)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 +b Fb(88)150 2777 y Fe(bind)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(41)150 2869 y Fe(break)11 b Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b -Fb(35)150 2525 y Fe(builtin)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g +Fb(35)150 2962 y Fe(builtin)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fb(42)150 -2778 y Fr(C)150 2902 y Fe(caller)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.) +3225 y Fr(C)150 3352 y Fe(caller)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 -b Fb(42)150 2993 y Fe(cd)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +b Fb(43)150 3445 y Fe(cd)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 -b Fb(36)150 3084 y Fe(command)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g +b Fb(36)150 3538 y Fe(command)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fb(43)150 -3175 y Fe(compgen)7 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +3631 y Fe(compgen)7 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fb(113)150 3266 y Fe(complete)26 +f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fb(114)150 3724 y Fe(complete)26 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -50 b Fb(113)150 3357 y Fe(compopt)7 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f +50 b Fb(114)150 3817 y Fe(compopt)7 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fb(116)150 -3448 y Fe(continue)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fb(117)150 +3910 y Fe(continue)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(36)150 3700 y -Fr(D)150 3824 y Fe(declare)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.) +(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(36)150 4172 y +Fr(D)150 4300 y Fe(declare)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fb(43)150 -3915 y Fe(dirs)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +4393 y Fe(dirs)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(79)150 -4006 y Fe(disown)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +4485 y Fe(disown)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(89)150 4259 -y Fr(E)150 4383 y Fe(echo)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(89)150 4748 +y Fr(E)150 4876 y Fe(echo)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 -b Fb(44)150 4474 y Fe(enable)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) +b Fb(44)150 4969 y Fe(enable)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(45)150 -4565 y Fe(eval)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +5061 y Fe(eval)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(36)150 -4656 y Fe(exec)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +5154 y Fe(exec)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(36)150 -4747 y Fe(exit)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +5247 y Fe(exit)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(36)150 -4838 y Fe(export)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +5340 y Fe(export)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(36)150 5109 -y Fr(F)150 5233 y Fe(fc)14 b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 -b Fb(118)150 5324 y Fe(fg)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 -b Fb(88)150 5596 y Fr(G)150 5720 y Fe(getopts)8 b Fc(.)14 -b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(36)2025 977 +y Fr(F)2025 1106 y Fe(fc)14 b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)41 +b Fb(120)2025 1200 y Fe(fg)15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)34 b Fb(37)2025 604 y Fr(H)2025 720 y Fe(hash)13 +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 +b Fb(88)2025 1485 y Fr(G)2025 1614 y Fe(getopts)8 b Fc(.)14 +b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)34 b Fb(37)2025 1900 y Fr(H)2025 2029 y Fe(hash)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(37)2025 807 y Fe(help)13 +(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(37)2025 2123 y Fe(help)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(45)2025 894 y Fe(history)7 +(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(45)2025 2216 y Fe(history)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) -g(.)h(.)33 b Fb(118)2025 1146 y Fr(J)2025 1262 y Fe(jobs)13 +g(.)h(.)33 b Fb(120)2025 2502 y Fr(J)2025 2631 y Fe(jobs)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(88)2025 1514 y Fr(K)2025 -1630 y Fe(kill)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(88)2025 2916 y Fr(K)2025 +3045 y Fe(kill)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(89)2025 -1863 y Fr(L)2025 1979 y Fe(let)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f +3312 y Fr(L)2025 3441 y Fe(let)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 -b Fb(45)2025 2066 y Fe(local)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) +b Fb(46)2025 3535 y Fe(local)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 -b Fb(46)2025 2154 y Fe(logout)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g +b Fb(46)2025 3628 y Fe(logout)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b -Fb(46)2025 2405 y Fr(P)2025 2522 y Fe(popd)13 b Fc(.)g(.)f(.)g(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(80)2025 2609 y Fe(printf)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g +Fb(46)2025 3914 y Fr(M)2025 4043 y Fe(mapfile)8 b Fc(.)14 +b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b -Fb(46)2025 2696 y Fe(pushd)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b -Fb(80)2025 2783 y Fe(pwd)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 -b Fb(38)2025 3035 y Fr(R)2025 3151 y Fe(read)13 b Fc(.)g(.)f(.)g(.)g(.) +f(.)34 b Fb(46)2025 4328 y Fr(P)2025 4457 y Fe(popd)13 +b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(80)2025 4551 y Fe(printf)10 +b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)35 b Fb(46)2025 4645 y Fe(pushd)11 b Fc(.)i(.)g(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(80)2025 4738 y Fe(pwd)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 +b Fb(38)2025 5024 y Fr(R)2025 5153 y Fe(read)13 b Fc(.)g(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -38 b Fb(46)2025 3238 y Fe(readonly)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.) +38 b Fb(47)2025 5246 y Fe(readonly)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(38)2025 -3326 y Fe(return)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +5340 y Fe(return)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(38)2025 3559 -y Fr(S)2025 3675 y Fe(set)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 -b Fb(49)2025 3762 y Fe(shift)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 -b Fb(38)2025 3849 y Fe(shopt)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 -b Fb(53)2025 3937 y Fe(source)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(38)p eop end +%%Page: 150 156 +TeXDict begin 150 155 bop 150 -116 a Ft(150)2527 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fr(S)150 423 y Fe(set)14 +b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(50)150 514 y Fe(shift)11 +b Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)37 b Fb(38)150 606 y Fe(shopt)11 b +Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +g(.)h(.)f(.)g(.)37 b Fb(54)150 697 y Fe(source)10 b Fc(.)j(.)g(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 +b Fb(48)150 788 y Fe(suspend)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b -Fb(47)2025 4024 y Fe(suspend)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fb(89)150 +1061 y Fr(T)150 1185 y Fe(test)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(39)150 1276 y Fe(times)11 b Fc(.)j(.)e(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(89)2025 -4276 y Fr(T)2025 4392 y Fe(test)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(39)2025 4479 y Fe(times)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 -b Fb(40)2025 4566 y Fe(trap)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 b +Fb(40)150 1368 y Fe(trap)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(40)2025 299 y Fe(type)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(40)2025 4653 y Fe(type)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +b Fb(48)2025 386 y Fe(typeset)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(47)2025 4741 y Fe(typeset)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(48)2025 -4993 y Fr(U)2025 5109 y Fe(ulimit)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 -b Fb(48)2025 5196 y Fe(umask)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 -b Fb(40)2025 5283 y Fe(unalias)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(49)2025 -5370 y Fe(unset)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(49)2025 +639 y Fr(U)2025 755 y Fe(ulimit)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b +Fb(49)2025 843 y Fe(umask)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b +Fb(40)2025 930 y Fe(unalias)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(50)2025 +1017 y Fe(unset)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(41)2025 5603 -y Fr(W)2025 5720 y Fe(wait)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(41)2025 1251 +y Fr(W)2025 1368 y Fe(wait)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(89)p eop end -%%Page: 149 155 -TeXDict begin 149 154 bop 150 -116 a Ft(App)s(endix)29 -b(D:)i(Indexes)2623 b(149)150 299 y Fr(D.2)68 b(Index)45 -b(of)g(Shell)g(Reserv)l(ed)h(W)-11 b(ords)150 620 y(!)150 -753 y Fe(!)18 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 -b Fb(8)150 1039 y Fr([)150 1172 y Fe([[)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)41 b Fb(12)150 1464 y Fr(])150 1597 y Fe(]])15 b Fc(.)e(.)g(.)f(.)g +b Fb(89)150 1642 y Fr(D.2)68 b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h(W) +-11 b(ords)150 1963 y(!)150 2096 y Fe(!)18 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fb(8)150 2382 y +Fr([)150 2515 y Fe([[)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)41 b Fb(12)150 1883 y Fa({)150 2016 y Fe({)17 -b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(13)150 2302 -y Fa(})150 2435 y Fe(})17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 -b Fb(13)150 2719 y Fr(C)150 2852 y Fe(case)13 b Fc(.)g(.)f(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)41 +b Fb(12)150 2807 y Fr(])150 2940 y Fe(]])15 b Fc(.)e(.)g(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +f(.)41 b Fb(12)150 3226 y Fa({)150 3359 y Fe({)17 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(14)150 3645 y Fa(})150 +3777 y Fe(})17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(14)150 4062 y Fr(C)150 4195 y Fe(case)13 b Fc(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 -b Fb(11)150 3129 y Fr(D)150 3262 y Fe(do)16 b Fc(.)d(.)g(.)f(.)g(.)h(.) -f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)43 b Fb(9)150 3357 y Fe(done)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.) +b Fb(11)150 4471 y Fr(D)150 4604 y Fe(do)15 b Fc(.)e(.)g(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 -b Fb(9)2025 620 y Fr(E)2025 736 y Fe(elif)13 b Fc(.)g(.)f(.)g(.)g(.)h +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +f(.)41 b Fb(10)150 4700 y Fe(done)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(10)2025 824 y Fe(else)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(10)2025 911 y Fe(esac)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(10)2025 1963 y Fr(E)2025 2079 y Fe(elif)13 b Fc(.)g(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +38 b Fb(10)2025 2166 y Fe(else)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 +b Fb(10)2025 2254 y Fe(esac)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(11)2025 1144 y Fr(F)2025 1260 y Fe(fi)15 b Fc(.)e(.)f(.)h(.)f(.)g +b Fb(11)2025 2487 y Fr(F)2025 2603 y Fe(fi)15 b Fc(.)e(.)f(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)41 b Fb(10)2025 1348 y Fe(for)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.) +(.)f(.)41 b Fb(10)2025 2690 y Fe(for)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 -b Fb(10)2025 1435 y Fe(function)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h +b Fb(10)2025 2778 y Fe(function)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(14)2025 -1668 y Fr(I)2025 1784 y Fe(if)15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g +3011 y Fr(I)2025 3127 y Fe(if)15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 -b Fb(10)2025 1872 y Fe(in)15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h +b Fb(10)2025 3215 y Fe(in)15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 -b Fb(11)2025 2105 y Fr(S)2025 2221 y Fe(select)10 b Fc(.)j(.)f(.)h(.)f +b Fb(11)2025 3448 y Fr(S)2025 3564 y Fe(select)10 b Fc(.)j(.)f(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 -b Fb(11)2025 2455 y Fr(T)2025 2571 y Fe(then)13 b Fc(.)g(.)f(.)g(.)g(.) +b Fb(12)2025 3797 y Fr(T)2025 3914 y Fe(then)13 b Fc(.)g(.)f(.)g(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -38 b Fb(10)2025 2658 y Fe(time)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h +38 b Fb(10)2025 4001 y Fe(time)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)40 -b Fb(8)2025 2891 y Fr(U)2025 3008 y Fe(until)12 b Fc(.)h(.)g(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -38 b Fb(9)2025 3241 y Fr(W)2025 3357 y Fe(while)11 b -Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)37 b Fb(10)150 3614 y Fr(D.3)68 b(P)l(arameter)47 -b(and)d(V)-11 b(ariable)46 b(Index)150 3936 y(!)150 4070 -y Fe(!)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b -Fb(16)150 4350 y Fr(#)150 4485 y Fe(#)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)42 b Fb(16)150 4775 y Fr($)150 4909 y Fe($)17 -b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +b Fb(8)2025 4234 y Fr(U)2025 4350 y Fe(until)11 b Fc(.)i(.)g(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(10)2025 4584 y Fr(W)2025 4700 y Fe(while)11 b Fc(.)i(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(16)150 5206 -y Fr(*)150 5340 y Fe(*)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 -b Fb(16)2025 3936 y Fr(-)2025 4072 y Fe(-)17 b Fc(.)12 -b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fb(16)2025 4358 y Fr(?)2025 -4495 y Fe(?)17 b Fc(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 -b Fb(16)2025 4781 y Fr(@)2025 4917 y Fe(@)17 b Fc(.)12 +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(10)150 4957 y Fr(D.3)68 b(P)l(arameter)47 b(and)d(V)-11 +b(ariable)46 b(Index)150 5279 y(!)1834 b Fe(!)17 b Fc(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fb(16)p 2034 5203 41 -6 v 2025 5340 a Fe(_)17 b Fc(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 -b Fb(16)p eop end -%%Page: 150 156 -TeXDict begin 150 155 bop 150 -116 a Ft(150)2527 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fr(0)150 428 y Fe(0)17 +g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fb(17)p eop end +%%Page: 151 157 +TeXDict begin 151 156 bop 150 -116 a Ft(App)s(endix)29 +b(D:)i(Indexes)2623 b(151)150 299 y Fr(#)150 428 y Fe(#)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(16)150 693 -y Fr(A)150 822 y Fe(auto_resume)23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fb(90)150 1096 y Fr(B)150 -1225 y Fe(BASH)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(59)150 -1319 y Fe(BASH_ARGC)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(60)150 1412 y Fe(BASH_ARGV)25 -b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) -49 b Fb(60)150 1505 y Fe(BASH_COMMAND)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fb(60)150 1599 y -Fe(BASH_ENV)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(60)150 1692 y Fe(BASH_EXECUTION_STRING) -d Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)50 b Fb(60)150 1785 y Fe(BASH_LINENO)23 -b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 -b Fb(60)150 1879 y Fe(BASH_REMATCH)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fb(60)150 1972 y Fe(BASH_SOURCE)23 +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(16)150 705 +y Fr($)150 834 y Fe($)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(17)150 1117 y Fr(*)150 1246 y Fe(*)17 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(16)150 1513 y Fr(-)150 +1642 y Fe(-)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(16)150 1909 y Fr(?)150 2038 y Fe(?)17 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(16)150 2305 y Fr(@)150 +2435 y Fe(@)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(16)p 159 2701 41 6 v 150 2831 a Fe(_)17 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(17)150 3098 y Fr(0)150 +3227 y Fe(0)17 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(17)150 3494 y Fr(A)150 3623 y Fe(auto_resume)23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 -b Fb(60)150 2066 y Fe(BASH_SUBSHELL)18 b Fc(.)d(.)d(.)h(.)f(.)g(.)g(.)h +b Fb(90)150 3899 y Fr(B)150 4029 y Fe(BASH)13 b Fc(.)g(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(59)150 4122 y Fe(BASH_ARGC)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(60)150 4216 +y Fe(BASH_ARGV)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)49 b Fb(60)150 4310 y Fe(BASH_COMMAND)22 +b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 +b Fb(60)150 4403 y Fe(BASH_ENV)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(60)150 +4497 y Fe(BASH_EXECUTION_STRING)d Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 +b Fb(60)150 4591 y Fe(BASH_LINENO)23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fb(60)150 4684 y +Fe(BASH_REMATCH)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)45 b Fb(60)150 4778 y Fe(BASH_SOURCE)23 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 +b Fb(60)150 4872 y Fe(BASH_SUBSHELL)18 b Fc(.)d(.)d(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)43 b Fb(61)150 2159 y Fe(BASH_VERSINFO)18 +h(.)f(.)g(.)h(.)f(.)43 b Fb(61)150 4965 y Fe(BASH_VERSINFO)18 b Fc(.)d(.)d(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 -b Fb(61)150 2252 y Fe(BASH_VERSION)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h +b Fb(61)150 5059 y Fe(BASH_VERSION)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fb(61)150 2346 y Fe(BASHPID)8 +h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 b Fb(61)150 5153 y Fe(BASHPID)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)34 b Fb(60)150 2439 y Fe(bell-style)24 b +h(.)f(.)g(.)34 b Fb(60)150 5246 y Fe(bell-style)24 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 -b Fb(95)150 2533 y Fe(bind-tty-special-chars)28 b Fc(.)12 +b Fb(95)150 5340 y Fe(bind-tty-special-chars)28 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)48 b Fb(95)150 2817 y Fr(C)150 2945 y Fe(CDPATH)10 -b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)35 b Fb(59)150 3039 y Fe(COLUMNS)8 b Fc(.)14 -b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)34 b Fb(61)150 3132 y Fe(comment-begin)18 b Fc(.)d(.)d(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fb(95)150 3226 y Fe(COMP_CWORD)24 -b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 -b Fb(61)150 3319 y Fe(COMP_KEY)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(62)150 -3412 y Fe(COMP_LINE)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(61)150 3506 y Fe(COMP_POINT)24 -b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 -b Fb(61)150 3599 y Fe(COMP_TYPE)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(61)150 3693 -y Fe(COMP_WORDBREAKS)15 b Fc(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 -b Fb(62)150 3786 y Fe(COMP_WORDS)24 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fb(62)150 3879 y -Fe(completion-query-items)28 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fb(95)150 -3973 y Fe(COMPREPLY)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(62)150 4066 y Fe(convert-meta)22 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 -b Fb(96)150 4332 y Fr(D)150 4460 y Fe(DIRSTACK)7 b Fc(.)14 +(.)f(.)48 b Fb(95)2025 299 y Fr(C)2025 417 y Fe(CDPATH)10 +b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)35 b Fb(59)2025 506 y Fe(COLUMNS)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -32 b Fb(62)150 4554 y Fe(disable-completion)10 b Fc(.)17 -b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fb(96)150 4838 y Fr(E)150 -4966 y Fe(editing-mode)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)45 b Fb(96)150 5060 y Fe(EMACS)11 b Fc(.)j(.)e(.)g(.)g +f(.)34 b Fb(61)2025 594 y Fe(comment-begin)18 b Fc(.)d(.)d(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(95)2025 683 y Fe(COMP_CWORD)24 +b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 +b Fb(61)2025 771 y Fe(COMP_KEY)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(62)2025 +860 y Fe(COMP_LINE)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 -b Fb(62)150 5153 y Fe(enable-keypad)18 b Fc(.)d(.)d(.)h(.)f(.)g(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)43 b Fb(96)150 5247 y Fe(EUID)13 -b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(62)150 5340 y Fe(expand-tilde)22 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)45 -b Fb(96)2025 299 y Fr(F)2025 437 y Fe(FCEDIT)10 b Fc(.)j(.)f(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 -b Fb(62)2025 535 y Fe(FIGNORE)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f +g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(61)2025 948 y Fe(COMP_POINT)24 +b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 +b Fb(61)2025 1036 y Fe(COMP_TYPE)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(61)2025 1125 +y Fe(COMP_WORDBREAKS)15 b Fc(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 +b Fb(62)2025 1213 y Fe(COMP_WORDS)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(62)2025 1302 +y Fe(completion-prefix-display-leng)q(th)9 b Fc(.)18 +b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(95)2025 +1390 y Fe(completion-query-items)27 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 +b Fb(95)2025 1479 y Fe(COMPREPLY)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(62)2025 1567 +y Fe(convert-meta)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)45 b Fb(96)2025 1807 y Fr(D)2025 1925 y Fe(DIRSTACK)7 +b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)32 b Fb(62)2025 2014 y Fe(disable-completion)10 +b Fc(.)17 b(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 b Fb(96)2025 +2272 y Fr(E)2025 2390 y Fe(editing-mode)22 b Fc(.)12 +b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 +b Fb(96)2025 2479 y Fe(EMACS)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(62)2025 2567 y Fe(enable-keypad)18 b Fc(.)d(.)d(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(96)2025 2656 y Fe(EUID)13 +b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(62)2025 2744 y Fe(expand-tilde)22 +b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 +b Fb(96)2025 3002 y Fr(F)2025 3121 y Fe(FCEDIT)10 b Fc(.)j(.)f(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(62)2025 -633 y Fe(FUNCNAME)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(62)2025 923 y Fr(G)2025 -1061 y Fe(GLOBIGNORE)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)48 b Fb(63)2025 1159 y Fe(GROUPS)10 -b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)35 b Fb(63)2025 1449 y Fr(H)2025 1587 -y Fe(histchars)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)49 b Fb(63)2025 1685 y Fe(HISTCMD)8 +f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 +b Fb(62)2025 3209 y Fe(FIGNORE)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(62)2025 +3297 y Fe(FUNCNAME)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(62)2025 3537 y +Fr(G)2025 3655 y Fe(GLOBIGNORE)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(63)2025 3744 +y Fe(GROUPS)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(63)2025 3983 y Fr(H)2025 +4102 y Fe(histchars)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(63)2025 4190 y Fe(HISTCMD)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)34 b Fb(63)2025 1783 y Fe(HISTCONTROL)23 +g(.)h(.)f(.)34 b Fb(63)2025 4279 y Fe(HISTCONTROL)23 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)46 -b Fb(63)2025 1881 y Fe(HISTFILE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h +b Fb(63)2025 4367 y Fe(HISTFILE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(63)2025 -1979 y Fe(HISTFILESIZE)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +4456 y Fe(HISTFILESIZE)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)45 b Fb(63)2025 2077 y Fe(HISTIGNORE)24 +g(.)h(.)f(.)g(.)45 b Fb(63)2025 4544 y Fe(HISTIGNORE)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 -b Fb(63)2025 2175 y Fe(history-preserve-point)27 b Fc(.)13 +b Fb(63)2025 4632 y Fe(history-preserve-point)27 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)48 b Fb(96)2025 2273 y Fe(history-size)22 b Fc(.)12 +(.)h(.)48 b Fb(96)2025 4721 y Fe(history-size)22 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 -b Fb(96)2025 2371 y Fe(HISTSIZE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h +b Fb(96)2025 4809 y Fe(HISTSIZE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(64)2025 -2469 y Fe(HISTTIMEFORMAT)16 b Fc(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +4898 y Fe(HISTTIMEFORMAT)16 b Fc(.)f(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h -(.)f(.)42 b Fb(64)2025 2567 y Fe(HOME)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f +(.)f(.)42 b Fb(64)2025 4986 y Fe(HOME)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(59)2025 2665 y Fe(horizontal-scroll-mode)27 b Fc(.)13 +b Fb(59)2025 5075 y Fe(horizontal-scroll-mode)27 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)48 b Fb(96)2025 2763 y Fe(HOSTFILE)7 b Fc(.)14 +(.)h(.)48 b Fb(96)2025 5163 y Fe(HOSTFILE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -32 b Fb(64)2025 2861 y Fe(HOSTNAME)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.) +32 b Fb(64)2025 5252 y Fe(HOSTNAME)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(64)2025 -2959 y Fe(HOSTTYPE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +5340 y Fe(HOSTTYPE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(64)2025 3249 y -Fr(I)2025 3387 y Fe(IFS)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 -b Fb(59)2025 3485 y Fe(IGNOREEOF)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(64)2025 3583 -y Fe(input-meta)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)48 b Fb(96)2025 3681 y Fe(INPUTRC)8 b -Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)34 b Fb(64)2025 3779 y Fe(isearch-terminators)9 -b Fc(.)16 b(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(96)2025 4069 y -Fr(K)2025 4207 y Fe(keymap)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(97)2025 -4516 y Fr(L)2025 4654 y Fe(LANG)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(64)2025 4752 y Fe(LC_ALL)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b -Fb(64)2025 4850 y Fe(LC_COLLATE)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(65)2025 4948 -y Fe(LC_CTYPE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(64)p eop end +%%Page: 152 158 +TeXDict begin 152 157 bop 150 -116 a Ft(152)2527 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fr(I)150 421 y Fe(IFS)14 +b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(59)150 510 y Fe(IGNOREEOF)25 +b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) +49 b Fb(64)150 600 y Fe(input-meta)24 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(65)2025 5046 y Fe(LC_MESSAGES)14 -b Fc(.)h(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)40 -b Fb(7,)26 b(65)2025 5144 y Fe(LC_NUMERIC)e Fc(.)12 b(.)h(.)f(.)g(.)h +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fb(96)150 690 +y Fe(INPUTRC)8 b Fc(.)14 b(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(65)2025 -5242 y Fe(LINENO)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(65)2025 5340 -y Fe(LINES)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fb(64)150 780 y Fe +(isearch-terminators)9 b Fc(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 +b Fb(97)150 1028 y Fr(K)150 1149 y Fe(keymap)10 b Fc(.)j(.)g(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 +b Fb(97)150 1415 y Fr(L)150 1537 y Fe(LANG)13 b Fc(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(65)p eop end -%%Page: 151 157 -TeXDict begin 151 156 bop 150 -116 a Ft(App)s(endix)29 -b(D:)i(Indexes)2623 b(151)150 299 y Fr(M)150 415 y Fe(MACHTYPE)7 +f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(64)150 1627 y Fe(LC_ALL)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(64)150 +1717 y Fe(LC_COLLATE)24 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)47 b Fb(65)150 1807 y Fe(LC_CTYPE)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)32 b Fb(65)150 502 y Fe(MAIL)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.) +g(.)h(.)32 b Fb(65)150 1897 y Fe(LC_MESSAGES)14 b Fc(.)h(.)d(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 b Fb(7,)26 b(65)150 +1987 y Fe(LC_NUMERIC)e Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 -b Fb(59)150 589 y Fe(MAILCHECK)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h +(.)h(.)f(.)g(.)h(.)47 b Fb(65)150 2077 y Fe(LINENO)10 +b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)35 b Fb(65)150 2167 y Fe(LINES)11 b Fc(.)j(.)e(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)37 +b Fb(65)150 2414 y Fr(M)150 2536 y Fe(MACHTYPE)7 b Fc(.)14 +b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +32 b Fb(65)150 2625 y Fe(MAIL)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 +b Fb(59)150 2715 y Fe(MAILCHECK)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(65)150 676 +h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(65)150 2805 y Fe(MAILPATH)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(59)150 764 y Fe(mark-modified-lines)9 +g(.)h(.)f(.)g(.)g(.)h(.)32 b Fb(59)150 2895 y Fe(mark-modified-lines)9 b Fc(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fb(97)150 851 +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fb(97)150 2985 y Fe(mark-symlinked-directories)17 b Fc(.)h(.)12 b(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(97)150 938 +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(97)150 3075 y Fe(match-hidden-files)10 b Fc(.)17 b(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 -b Fb(97)150 1025 y Fe(meta-flag)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h +b Fb(97)150 3165 y Fe(meta-flag)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(96)150 1277 -y Fr(O)150 1392 y Fe(OLDPWD)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f +h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(96)150 3431 +y Fr(O)150 3553 y Fe(OLDPWD)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(65)150 -1480 y Fe(OPTARG)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +3643 y Fe(OPTARG)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(59)150 1567 +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(59)150 3733 y Fe(OPTERR)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(65)150 1654 y Fe(OPTIND)10 +f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(65)150 3823 y Fe(OPTIND)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)35 b Fb(59)150 1741 y Fe(OSTYPE)10 b Fc(.)j(.)g(.)f(.)g +(.)g(.)h(.)f(.)35 b Fb(59)150 3913 y Fe(OSTYPE)10 b Fc(.)j(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)35 -b Fb(65)150 1828 y Fe(output-meta)23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.) +b Fb(65)150 4003 y Fe(output-meta)23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fb(97)150 2080 y -Fr(P)150 2196 y Fe(page-completions)13 b Fc(.)j(.)d(.)f(.)g(.)h(.)f(.)g +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)46 b Fb(97)2025 299 y +Fr(P)2025 415 y Fe(page-completions)13 b Fc(.)j(.)c(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)39 b Fb(97)2025 503 y Fe(PATH)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)39 b Fb(97)150 2283 y Fe(PATH)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 -b Fb(59)150 2370 y Fe(PIPESTATUS)24 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fb(65)150 2457 y -Fe(POSIXLY_CORRECT)15 b Fc(.)g(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)40 -b Fb(65)150 2545 y Fe(PPID)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 -b Fb(66)150 2632 y Fe(PROMPT_COMMAND)16 b Fc(.)g(.)c(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)42 b Fb(66)150 2719 y Fe(PS1)14 b -Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 +b Fb(59)2025 590 y Fe(PIPESTATUS)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(65)2025 678 y +Fe(POSIXLY_CORRECT)15 b Fc(.)g(.)e(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 +b Fb(65)2025 765 y Fe(PPID)13 b Fc(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(59)150 2806 y Fe(PS2)14 -b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(59)150 2893 y Fe(PS3)14 -b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(66)150 2980 y Fe(PS4)14 -b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(66)2025 299 y Fe(PWD)14 +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 +b Fb(66)2025 852 y Fe(PROMPT_COMMAND)16 b Fc(.)f(.)e(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)g(.)h(.)f(.)42 b Fb(66)2025 940 y Fe(PS1)14 b +Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(59)2025 1027 y Fe(PS2)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(66)2025 539 y Fr(R)2025 -658 y Fe(RANDOM)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(66)2025 747 y -Fe(REPLY)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(66)2025 987 y -Fr(S)2025 1106 y Fe(SECONDS)8 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f +(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(59)2025 1115 y Fe(PS3)14 +b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(66)2025 1202 y Fe(PS4)14 +b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(66)2025 1289 y Fe(PWD)14 +b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(66)2025 1523 y Fr(R)2025 +1640 y Fe(RANDOM)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(66)2025 1727 +y Fe(REPLY)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)34 b Fb(66)2025 -1194 y Fe(SHELL)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(66)2025 1283 -y Fe(SHELLOPTS)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)49 b Fb(66)2025 1371 y Fe(SHLVL)11 -b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)37 b Fb(66)2025 1460 y Fe(show-all-if-ambiguous)29 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)50 b Fb(97)2025 1549 y Fe(show-all-if-unmodified)27 -b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)48 b Fb(98)2025 1789 y Fr(T)2025 1908 -y Fe(TEXTDOMAIN)25 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)49 b Fb(7)2025 1996 y Fe(TEXTDOMAINDIR)21 -b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 -b Fb(7)2025 2085 y Fe(TIMEFORMAT)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(66)2025 1814 +y Fe(revert-all-at-newline)29 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)50 +b Fb(98)2025 2048 y Fr(S)2025 2165 y Fe(SECONDS)8 b Fc(.)14 +b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)34 b Fb(66)2025 2252 y Fe(SHELL)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(66)2025 2340 y Fe(SHELLOPTS)25 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(66)2025 2427 +y Fe(SHLVL)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(66)2025 2514 +y Fe(show-all-if-ambiguous)29 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)50 +b Fb(98)2025 2602 y Fe(show-all-if-unmodified)27 b Fc(.)13 +b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)48 b Fb(98)2025 2836 y Fr(T)2025 2952 y Fe(TEXTDOMAIN)25 +b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +49 b Fb(7)2025 3040 y Fe(TEXTDOMAINDIR)21 b Fc(.)13 b(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fb(7)2025 3127 y +Fe(TIMEFORMAT)24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)48 b Fb(66)2025 3214 y Fe(TMOUT)11 b Fc(.)i(.)g(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(66)2025 2174 -y Fe(TMOUT)11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(67)2025 3302 y Fe(TMPDIR)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b +Fb(67)2025 3536 y Fr(U)2025 3652 y Fe(UID)14 b Fc(.)f(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(67)2025 2262 -y Fe(TMPDIR)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 b Fb(67)2025 2502 y Fr(U)2025 -2621 y Fe(UID)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(67)2025 -2862 y Fr(V)2025 2980 y Fe(visible-stats)18 b Fc(.)d(.)d(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(98)150 3238 y Fr(D.4)68 -b(F)-11 b(unction)44 b(Index)150 3559 y(A)150 3679 y -Fe(abort)27 b(\(C-g\))8 b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)34 b Fb(109)150 3769 y Fe(accept-line)28 -b(\(Newline)g(or)e(Return\))11 b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)37 b Fb(103)150 3858 y Fe(alias-expand-line)29 -b(\(\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fb(111)150 4121 y -Fr(B)150 4242 y Fe(backward-char)29 b(\(C-b\))15 b Fc(.)e(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) -g(.)41 b Fb(103)150 4331 y Fe(backward-delete-char)30 -b(\(Rubout\))18 b Fc(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)44 -b Fb(105)150 4420 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e -Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fb(106)150 -4510 y Fe(backward-kill-word)30 b(\(M-)999 4507 y Fg(h)p -1024 4454 146 4 v 1024 4510 a Ff(DEL)p 1024 4525 V 1165 -4507 a Fg(i)1195 4510 y Fe(\))20 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)46 b Fb(106)150 4599 y Fe(backward-word)29 -b(\(M-b\))15 b Fc(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fb(103)150 -4688 y Fe(beginning-of-history)30 b(\(M-<\))24 b Fc(.)12 -b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)49 -b Fb(104)150 4778 y Fe(beginning-of-line)29 b(\(C-a\))9 -b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)35 b Fb(103)150 5041 y Fr(C)150 5161 y Fe -(call-last-kbd-macro)30 b(\(C-x)c(e\))10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fb(109)150 5251 -y Fe(capitalize-word)29 b(\(M-c\))12 b Fc(.)h(.)g(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 -b Fb(105)150 5340 y Fe(character-search)29 b(\(C-]\))10 +f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)40 b Fb(67)2025 3886 y Fr(V)2025 4003 y Fe(visible-stats)18 +b Fc(.)d(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 +b Fb(98)150 4277 y Fr(D.4)68 b(F)-11 b(unction)44 b(Index)150 +4598 y(A)150 4729 y Fe(abort)27 b(\(C-g\))8 b Fc(.)13 +b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 +b Fb(110)150 4824 y Fe(accept-line)28 b(\(Newline)g(or)e(Return\))11 +b Fc(.)i(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(104)150 +4918 y Fe(alias-expand-line)29 b(\(\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 +b Fb(112)150 5209 y Fr(B)150 5340 y Fe(backward-char)29 +b(\(C-b\))15 b Fc(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fb(104)2025 +4598 y Fe(backward-delete-char)30 b(\(Rubout\))18 b Fc(.)c(.)f(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fb(106)2025 4690 +y Fe(backward-kill-line)29 b(\(C-x)e(Rubout\))d Fc(.)12 +b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fb(107)2025 +4783 y Fe(backward-kill-word)29 b(\(M-)2873 4780 y Fg(h)p +2898 4727 146 4 v 2898 4783 a Ff(DEL)p 2898 4798 V 3040 +4780 a Fg(i)3070 4783 y Fe(\))20 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)46 b Fb(107)2025 4875 y Fe(backward-word)28 +b(\(M-b\))15 b Fc(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)41 b Fb(104)2025 +4968 y Fe(beginning-of-history)30 b(\(M-<\))24 b Fc(.)12 +b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 +b Fb(105)2025 5060 y Fe(beginning-of-line)29 b(\(C-a\))9 +b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)35 b Fb(104)2025 5340 y Fr(C)p eop end +%%Page: 153 159 +TeXDict begin 153 158 bop 150 -116 a Ft(App)s(endix)29 +b(D:)i(Indexes)2623 b(153)150 299 y Fe(call-last-kbd-macro)30 +b(\(C-x)c(e\))10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)36 b Fb(110)150 394 y Fe(capitalize-word)29 +b(\(M-c\))12 b Fc(.)h(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fb(106)150 490 y +Fe(character-search)29 b(\(C-]\))10 b Fc(.)k(.)e(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)36 b +Fb(110)150 586 y Fe(character-search-backward)31 b(\(M-C-]\))12 +b Fc(.)j(.)d(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(111)150 681 +y Fe(clear-screen)28 b(\(C-l\))16 b Fc(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 +b Fb(104)150 777 y Fe(complete)27 b(\()528 774 y Fg(h)p +553 721 148 4 v 553 777 a Ff(T)-6 b(AB)p 553 792 V 697 +774 a Fg(i)726 777 y Fe(\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +44 b Fb(108)150 872 y Fe(complete-command)29 b(\(M-!\))10 b Fc(.)k(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)h(.)36 b Fb(109)2025 3559 y Fe(character-search-backward)31 -b(\(M-C-]\))12 b Fc(.)i(.)f(.)f(.)g(.)h(.)f(.)g(.)39 -b Fb(109)2025 3651 y Fe(clear-screen)28 b(\(C-l\))16 -b Fc(.)e(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(103)2025 3743 y Fe(complete)27 -b(\()2403 3740 y Fg(h)p 2428 3687 148 4 v 2428 3743 a -Ff(T)-6 b(AB)p 2428 3758 V 2571 3740 a Fg(i)2601 3743 -y Fe(\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 -b Fb(107)2025 3835 y Fe(complete-command)29 b(\(M-!\))10 -b Fc(.)k(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)36 b Fb(108)2025 3927 y Fe(complete-filename)29 -b(\(M-/\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(108)2025 4019 y Fe(complete-hostname)29 -b(\(M-@\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(108)2025 4111 y Fe(complete-into-braces) -30 b(\(M-{\))24 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)49 b Fb(108)2025 4203 y Fe(complete-username)29 -b(\(M-~\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(108)2025 4294 y Fe(complete-variable)29 -b(\(M-$\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(108)2025 4386 y Fe(copy-backward-word)29 -b(\(\))12 b Fc(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)g(.)h(.)f(.)38 b Fb(106)2025 4478 y Fe -(copy-forward-word)29 b(\(\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 -b Fb(106)2025 4570 y Fe(copy-region-as-kill)30 b(\(\))10 -b Fc(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)36 b Fb(106)2025 4847 y Fr(D)2025 4972 y -Fe(delete-char)28 b(\(C-d\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 -b Fb(105)2025 5064 y Fe(delete-char-or-list)30 b(\(\))10 -b Fc(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)36 b Fb(108)2025 5156 y Fe(delete-horizontal-space)31 -b(\(\))23 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)49 b Fb(106)2025 5248 y Fe(digit-argument)29 b(\()p -Fd(M-0)p Fe(,)d Fd(M-1)p Fe(,)h(...)f Fd(M--)p Fe(\))13 -b Fc(.)h(.)e(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(107)2025 5340 -y Fe(display-shell-version)30 b(\(C-x)d(C-v\))c Fc(.)12 -b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fb(110)p eop -end -%%Page: 152 158 -TeXDict begin 152 157 bop 150 -116 a Ft(152)2527 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fe(do-uppercase-version)f(\(M-a,)d -(M-b,)f(M-)p Fd(x)p Fe(,)h(...)q(\))317 386 y Fc(.)12 -b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)39 b Fb(109)150 473 y Fe(downcase-word)29 -b(\(M-l\))15 b Fc(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)41 b Fb(105)150 -561 y Fe(dump-functions)29 b(\(\))18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)43 b Fb(110)150 648 y Fe(dump-macros)28 b(\(\))22 -b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(110)150 -735 y Fe(dump-variables)29 b(\(\))18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)43 b Fb(110)150 822 y Fe(dynamic-complete-history)31 -b(\(M-)1234 819 y Fg(h)p 1259 766 148 4 v 1259 822 a -Ff(T)-6 b(AB)p 1259 838 V 1403 819 a Fg(i)1432 822 y -Fe(\))10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)36 b Fb(108)150 -1074 y Fr(E)150 1191 y Fe(edit-and-execute-command)31 -b(\(C-xC-e\))12 b Fc(.)j(.)d(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(111)150 1278 y Fe(end-kbd-macro)29 b(\(C-x)d(\)\))19 -b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)44 b Fb(109)150 1365 y Fe(end-of-history)29 -b(\(M->\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fb(104)150 1452 -y Fe(end-of-line)28 b(\(C-e\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 -b Fb(103)150 1540 y Fe(exchange-point-and-mark)31 b(\(C-x)26 -b(C-x\))21 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)45 b -Fb(109)150 1792 y Fr(F)150 1908 y Fe(forward-backward-delete-char)32 +g(.)g(.)h(.)36 b Fb(109)150 968 y Fe(complete-filename)29 +b(\(M-/\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(109)150 1063 y Fe(complete-hostname)29 +b(\(M-@\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(109)150 1159 y Fe(complete-into-braces) +30 b(\(M-{\))24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h +(.)f(.)g(.)49 b Fb(109)150 1255 y Fe(complete-username)29 +b(\(M-~\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(109)150 1350 y Fe(complete-variable)29 +b(\(M-$\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(109)150 1446 y Fe(copy-backward-word)30 +b(\(\))12 b Fc(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fb(107)150 1541 y Fe(copy-forward-word) +29 b(\(\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fb(107)150 1637 +y Fe(copy-region-as-kill)30 b(\(\))10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)36 +b Fb(107)150 1932 y Fr(D)150 2066 y Fe(dabbrev-expand)29 +b(\(\))18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(109)150 +2161 y Fe(delete-char)28 b(\(C-d\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)43 b Fb(106)150 2257 y Fe(delete-char-or-list)30 +b(\(\))10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)g(.)h(.)36 b Fb(109)150 2352 y Fe +(delete-horizontal-space)31 b(\(\))23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)49 b Fb(107)150 2448 +y Fe(digit-argument)29 b(\()p Fd(M-0)p Fe(,)e Fd(M-1)p +Fe(,)f(...)g Fd(M--)p Fe(\))13 b Fc(.)h(.)e(.)h(.)f(.)g(.)g(.)h(.)39 +b Fb(108)150 2543 y Fe(display-shell-version)30 b(\(C-x)d(C-v\))c +Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fb(111)150 +2639 y Fe(do-uppercase-version)30 b(\(M-a,)d(M-b,)f(M-)p +Fd(x)p Fe(,)h(...)q(\))317 2726 y Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 +b Fb(110)150 2822 y Fe(downcase-word)29 b(\(M-l\))15 +b Fc(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)g(.)h(.)f(.)g(.)41 b Fb(106)150 2917 y Fe(dump-functions)29 +b(\(\))18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(111)150 +3013 y Fe(dump-macros)28 b(\(\))22 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)48 b Fb(111)150 3108 y Fe(dump-variables)29 +b(\(\))18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(111)150 +3204 y Fe(dynamic-complete-history)31 b(\(M-)1234 3201 +y Fg(h)p 1259 3148 V 1259 3204 a Ff(T)-6 b(AB)p 1259 +3219 V 1403 3201 a Fg(i)1432 3204 y Fe(\))10 b Fc(.)j(.)g(.)f(.)g(.)h +(.)f(.)36 b Fb(109)150 3500 y Fr(E)150 3633 y Fe +(edit-and-execute-command)31 b(\(C-xC-e\))12 b Fc(.)j(.)d(.)g(.)h(.)f +(.)g(.)h(.)38 b Fb(112)150 3728 y Fe(end-kbd-macro)29 +b(\(C-x)d(\)\))19 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fb(110)150 +3824 y Fe(end-of-history)29 b(\(M->\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 +b Fb(105)150 3919 y Fe(end-of-line)28 b(\(C-e\))18 b +Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(104)150 4015 +y Fe(exchange-point-and-mark)31 b(\(C-x)26 b(C-x\))21 +b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)45 b Fb(110)150 +4311 y Fr(F)150 4444 y Fe(forward-backward-delete-char)32 b(\(\))15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 -b Fb(105)150 1995 y Fe(forward-char)28 b(\(C-f\))16 b +b Fb(106)150 4539 y Fe(forward-char)28 b(\(C-f\))16 b Fc(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(103)150 2082 y Fe +(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(104)150 4635 y Fe (forward-search-history)31 b(\(C-s\))20 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fb(104)150 2170 y Fe(forward-word)28 +(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fb(105)150 4730 y Fe(forward-word)28 b(\(M-f\))16 b Fc(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(103)150 -2411 y Fr(G)150 2527 y Fe(glob-complete-word)30 b(\(M-g\))7 +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(104)150 +5016 y Fr(G)150 5149 y Fe(glob-complete-word)30 b(\(M-g\))7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)33 b Fb(110)150 2615 y Fe(glob-expand-word)c(\(C-x)e(*\))14 +(.)h(.)33 b Fb(111)150 5244 y Fe(glob-expand-word)c(\(C-x)e(*\))14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)40 b Fb(110)150 2702 y Fe(glob-list-expansions)30 +f(.)40 b Fb(111)150 5340 y Fe(glob-list-expansions)30 b(\(C-x)d(g\))8 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)34 b Fb(110)150 2954 y Fr(H)150 3070 y Fe -(history-and-alias-expand-line)e(\(\))14 b Fc(.)f(.)f(.)h(.)f(.)g(.)h -(.)f(.)g(.)40 b Fb(111)150 3157 y Fe(history-expand-line)30 -b(\(M-^\))25 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)50 b Fb(110)150 3245 y Fe(history-search-backward)31 -b(\(\))23 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)49 b Fb(104)150 3332 y Fe(history-search-forward)31 -b(\(\))24 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)50 b Fb(104)150 3584 y Fr(I)150 3700 y Fe(insert-comment)29 -b(\(M-#\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fb(110)150 3787 -y Fe(insert-completions)30 b(\(M-*\))7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 b Fb(107)150 -3875 y Fe(insert-last-argument)d(\(M-.)d(or)f(M-_\))8 -b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)34 b Fb(111)150 -4127 y Fr(K)150 4243 y Fe(kill-line)28 b(\(C-k\))21 b -Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fb(106)150 -4330 y Fe(kill-region)28 b(\(\))22 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)48 b Fb(106)150 4417 y Fe(kill-whole-line)29 -b(\(\))16 b Fc(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(106)150 -4504 y Fe(kill-word)28 b(\(M-d\))21 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h +(.)h(.)34 b Fb(111)2025 299 y Fr(H)2025 431 y Fe +(history-and-alias-expand-line)e(\(\))14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)40 b Fb(112)2025 526 y Fe(history-expand-line)30 +b(\(M-^\))25 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)50 b Fb(112)2025 621 y Fe(history-search-backward)31 +b(\(\))23 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)49 b Fb(105)2025 716 y Fe(history-search-forward)30 +b(\(\))25 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f +(.)g(.)h(.)50 b Fb(105)2025 1008 y Fr(I)2025 1140 y Fe(insert-comment) +29 b(\(M-#\))13 b Fc(.)g(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(111)2025 +1235 y Fe(insert-completions)29 b(\(M-*\))7 b Fc(.)14 +b(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)34 +b Fb(108)2025 1330 y Fe(insert-last-argument)c(\(M-.)c(or)g(M-_\))8 +b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fb(112)2025 +1622 y Fr(K)2025 1754 y Fe(kill-line)27 b(\(C-k\))22 +b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fb(107)2025 +1849 y Fe(kill-region)28 b(\(\))22 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)46 b Fb(106)150 4746 y Fr(M)150 4862 y Fe(magic-space)28 -b(\(\))22 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 -b Fb(111)150 4950 y Fe(menu-complete)29 b(\(\))19 b Fc(.)12 -b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fb(107)150 5202 y -Fr(N)150 5318 y Fe(next-history)28 b(\(C-n\))16 b Fc(.)e(.)e(.)h(.)f(.) -g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)42 b Fb(104)150 5405 y Fe(non-incremental-forward-searc)q(h-hi)q -(story)32 b(\(M-n\))317 5492 y Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 -b Fb(104)150 5579 y Fe(non-incremental-reverse-searc)q(h-hi)q(story)32 -b(\(M-p\))317 5667 y Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +g(.)h(.)f(.)48 b Fb(107)2025 1944 y Fe(kill-whole-line)29 +b(\(\))16 b Fc(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(107)2025 +2039 y Fe(kill-word)27 b(\(M-d\))22 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fb(104)2025 -299 y Fr(O)2025 431 y Fe(operate-and-get-next)30 b(\(C-o\))24 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 -b Fb(111)2025 526 y Fe(overwrite-mode)29 b(\(\))18 b +f(.)g(.)47 b Fb(107)2025 2321 y Fr(M)2025 2453 y Fe(magic-space)28 +b(\(\))22 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 +b Fb(112)2025 2548 y Fe(menu-complete)28 b(\(\))20 b +Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fb(108)2025 +2840 y Fr(N)2025 2972 y Fe(next-history)28 b(\(C-n\))16 +b Fc(.)e(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(105)2025 3067 y Fe +(non-incremental-forward-search)q(-hist)q(ory)32 b(\(M-n\))2191 +3154 y Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(105)2025 3249 y Fe +(non-incremental-reverse-search)q(-hist)q(ory)32 b(\(M-p\))2191 +3337 y Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(105)2025 3610 y Fr(O)2025 +3742 y Fe(operate-and-get-next)30 b(\(C-o\))24 b Fc(.)12 +b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 +b Fb(112)2025 3837 y Fe(overwrite-mode)29 b(\(\))18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fb(105)2025 810 -y Fr(P)2025 942 y Fe(possible-command-completions)32 -b(\(C-x)26 b(!\))15 b Fc(.)e(.)f(.)h(.)f(.)41 b Fb(108)2025 -1037 y Fe(possible-completions)30 b(\(M-?\))24 b Fc(.)12 +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b Fb(106)2025 4119 +y Fr(P)2025 4251 y Fe(possible-command-completions)32 +b(\(C-x)26 b(!\))15 b Fc(.)e(.)f(.)h(.)f(.)41 b Fb(109)2025 +4346 y Fe(possible-completions)30 b(\(M-?\))24 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)49 -b Fb(107)2025 1132 y Fe(possible-filename-completions)32 -b(\(C-x)26 b(/\))14 b Fc(.)f(.)f(.)g(.)40 b Fb(108)2025 -1228 y Fe(possible-hostname-completions)32 b(\(C-x)26 -b(@\))14 b Fc(.)f(.)f(.)g(.)40 b Fb(108)2025 1323 y Fe +b Fb(108)2025 4441 y Fe(possible-filename-completions)32 +b(\(C-x)26 b(/\))14 b Fc(.)f(.)f(.)g(.)40 b Fb(109)2025 +4536 y Fe(possible-hostname-completions)32 b(\(C-x)26 +b(@\))14 b Fc(.)f(.)f(.)g(.)40 b Fb(109)2025 4631 y Fe (possible-username-completions)32 b(\(C-x)26 b(~\))14 -b Fc(.)f(.)f(.)g(.)40 b Fb(108)2025 1418 y Fe +b Fc(.)f(.)f(.)g(.)40 b Fb(109)2025 4726 y Fe (possible-variable-completions)32 b(\(C-x)26 b($\))14 -b Fc(.)f(.)f(.)g(.)40 b Fb(108)2025 1513 y Fe(prefix-meta)28 -b(\()2521 1510 y Fg(h)p 2545 1457 139 4 v 2545 1513 a -Ff(ESC)p 2545 1529 V 2679 1510 a Fg(i)2709 1513 y Fe(\))19 +b Fc(.)f(.)f(.)g(.)40 b Fb(109)2025 4821 y Fe(prefix-meta)28 +b(\()2521 4818 y Fg(h)p 2545 4765 139 4 v 2545 4821 a +Ff(ESC)p 2545 4836 V 2679 4818 a Fg(i)2709 4821 y Fe(\))19 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fb(109)2025 1608 y Fe(previous-history) +(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fb(110)2025 4916 y Fe(previous-history) 29 b(\(C-p\))10 b Fc(.)k(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(104)2025 1902 y Fr(Q)2025 -2034 y Fe(quoted-insert)28 b(\(C-q)f(or)f(C-v\))18 b +h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(105)2025 5208 y Fr(Q)2025 +5340 y Fe(quoted-insert)28 b(\(C-q)f(or)f(C-v\))18 b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 -b Fb(105)2025 2328 y Fr(R)2025 2460 y Fe(re-read-init-file)29 -b(\(C-x)e(C-r\))10 b Fc(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)36 b Fb(109)2025 2556 y Fe(redraw-current-line)30 -b(\(\))10 b Fc(.)j(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(103)2025 2651 y Fe -(reverse-search-history)30 b(\(C-r\))21 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)g(.)h(.)f(.)46 b Fb(104)2025 2746 y Fe(revert-line)28 -b(\(M-r\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b -Fb(109)2025 3029 y Fr(S)2025 3162 y Fe(self-insert)28 -b(\(a,)e(b,)g(A,)g(1,)g(!,)g(...)q(\))12 b Fc(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)38 b Fb(105)2025 3257 y Fe(set-mark)27 -b(\(C-@\))c Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 -b Fb(109)2025 3352 y Fe(shell-expand-line)29 b(\(M-C-e\))d -Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)50 -b Fb(110)2025 3447 y Fe(start-kbd-macro)29 b(\(C-x)d(\(\))16 -b Fc(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)42 b Fb(108)2025 3730 y Fr(T)2025 3863 y Fe(tilde-expand)28 -b(\(M-&\))16 b Fc(.)e(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(109)2025 -3958 y Fe(transpose-chars)29 b(\(C-t\))12 b Fc(.)h(.)f(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)38 -b Fb(105)2025 4053 y Fe(transpose-words)29 b(\(M-t\))12 +b Fb(106)p eop end +%%Page: 154 160 +TeXDict begin 154 159 bop 150 -116 a Ft(154)2527 b(Bash)31 +b(Reference)g(Man)m(ual)150 299 y Fr(R)150 415 y Fe(re-read-init-file)e +(\(C-x)e(C-r\))10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)36 b Fb(110)150 503 y Fe(redraw-current-line)30 +b(\(\))10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)g(.)h(.)36 b Fb(104)150 590 y Fe(reverse-search-history) +31 b(\(C-r\))20 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)46 b Fb(105)150 677 y Fe(revert-line)28 b(\(M-r\))18 +b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(110)150 919 +y Fr(S)150 1036 y Fe(self-insert)28 b(\(a,)e(b,)g(A,)g(1,)h(!,)f(...\)) +12 b Fc(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 +b Fb(106)150 1123 y Fe(set-mark)27 b(\(C-@\))c Fc(.)13 +b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(110)150 +1210 y Fe(shell-expand-line)29 b(\(M-C-e\))d Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 +b Fb(111)150 1298 y Fe(start-kbd-macro)29 b(\(C-x)e(\(\))16 +b Fc(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)42 b Fb(110)150 1540 y Fr(T)150 1656 y Fe(tilde-expand)28 +b(\(M-&\))16 b Fc(.)e(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(110)150 +1743 y Fe(transpose-chars)29 b(\(C-t\))12 b Fc(.)h(.)g(.)f(.)g(.)h(.)f +(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 +b Fb(106)2025 299 y Fe(transpose-words)29 b(\(M-t\))12 b Fc(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)h(.)f(.)38 b Fb(105)2025 4347 y Fr(U)2025 4479 +g(.)g(.)h(.)f(.)38 b Fb(106)2025 553 y Fr(U)2025 670 y Fe(undo)26 b(\(C-_)h(or)f(C-x)g(C-u\))14 b Fc(.)f(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)40 -b Fb(109)2025 4574 y Fe(universal-argument)29 b(\(\))12 +b Fb(110)2025 758 y Fe(universal-argument)29 b(\(\))12 b Fc(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)h(.)f(.)38 b Fb(107)2025 4669 y Fe(unix-filename-rubout)30 +g(.)g(.)h(.)f(.)38 b Fb(108)2025 846 y Fe(unix-filename-rubout)30 b(\(\))9 b Fc(.)k(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)35 b Fb(106)2025 4765 y Fe(unix-line-discard)29 +(.)f(.)g(.)h(.)f(.)35 b Fb(107)2025 933 y Fe(unix-line-discard)29 b(\(C-u\))9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(106)2025 4860 y Fe(unix-word-rubout)29 +(.)h(.)f(.)g(.)h(.)f(.)35 b Fb(107)2025 1021 y Fe(unix-word-rubout)29 b(\(C-w\))10 b Fc(.)k(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(106)2025 4955 y Fe(upcase-word)28 +(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(107)2025 1109 y Fe(upcase-word)28 b(\(M-u\))18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 b -Fb(105)2025 5249 y Fr(Y)2025 5381 y Fe(yank)26 b(\(C-y\))10 +Fb(106)2025 1363 y Fr(Y)2025 1480 y Fe(yank)26 b(\(C-y\))10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 -b Fb(107)2025 5476 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))18 +b Fb(108)2025 1568 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))18 b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -44 b Fb(104)2025 5571 y Fe(yank-nth-arg)28 b(\(M-C-y\))13 +44 b Fb(105)2025 1656 y Fe(yank-nth-arg)28 b(\(M-C-y\))13 b Fc(.)h(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)39 b Fb(104)2025 5667 y Fe(yank-pop)27 +g(.)h(.)f(.)g(.)h(.)39 b Fb(105)2025 1743 y Fe(yank-pop)27 b(\(M-y\))c Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)48 -b Fb(107)p eop end -%%Page: 153 159 -TeXDict begin 153 158 bop 150 -116 a Ft(App)s(endix)29 -b(D:)i(Indexes)2623 b(153)150 299 y Fr(D.5)68 b(Concept)45 -b(Index)150 643 y(A)150 762 y Fb(alias)27 b(expansion)20 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 -b Fb(77)150 850 y(arithmetic)26 b(ev)l(aluation)f Fc(.)12 -b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)50 b Fb(76)150 939 y(arithmetic)26 -b(expansion)12 b Fc(.)h(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fb(22)150 -1027 y(arithmetic,)27 b(shell)20 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)45 b Fb(76)150 1116 y(arra)n(ys)6 b Fc(.)13 -b(.)g(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)32 b Fb(78)150 1372 y Fr(B)150 1490 y Fb(bac)n(kground)23 +b Fb(108)150 2001 y Fr(D.5)68 b(Concept)45 b(Index)150 +2345 y(A)150 2465 y Fb(alias)27 b(expansion)20 b Fc(.)12 +b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fb(77)150 +2554 y(arithmetic)26 b(ev)l(aluation)f Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)50 +b Fb(76)150 2643 y(arithmetic)26 b(expansion)12 b Fc(.)h(.)f(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)38 b Fb(22)150 2732 y(arithmetic,)27 b(shell)20 +b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 +b Fb(76)150 2821 y(arra)n(ys)6 b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)32 +b Fb(78)150 3080 y Fr(B)150 3199 y Fb(bac)n(kground)23 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 -b Fb(87)150 1579 y(Bash)26 b(con\014guration)11 b Fc(.)i(.)f(.)g(.)h(.) +b Fb(87)150 3288 y(Bash)26 b(con\014guration)11 b Fc(.)i(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)36 b Fb(123)150 1667 y(Bash)26 b(installation)6 +(.)f(.)g(.)h(.)36 b Fb(125)150 3377 y(Bash)26 b(installation)6 b Fc(.)15 b(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fb(123)150 -1756 y(Bourne)26 b(shell)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)32 b Fb(125)150 +3466 y(Bourne)26 b(shell)10 b Fc(.)j(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(5)150 1844 y(brace)26 +(.)f(.)g(.)h(.)f(.)g(.)h(.)36 b Fb(5)150 3555 y(brace)26 b(expansion)d Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)48 -b Fb(17)150 1933 y(builtin)17 b Fc(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +b Fb(18)150 3644 y(builtin)17 b Fc(.)c(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b -Fb(3)150 2172 y Fr(C)150 2291 y Fb(command)26 b(editing)19 +Fb(3)150 3886 y Fr(C)150 4006 y Fb(command)26 b(editing)19 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fb(91)150 -2379 y(command)26 b(execution)11 b Fc(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h +4095 y(command)26 b(execution)11 b Fc(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -37 b Fb(29)150 2468 y(command)26 b(expansion)d Fc(.)12 +37 b Fb(30)150 4184 y(command)26 b(expansion)d Fc(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fb(28)150 2556 y(command)26 +(.)f(.)g(.)h(.)f(.)g(.)h(.)48 b Fb(29)150 4272 y(command)26 b(history)16 b Fc(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 -b Fb(117)150 2645 y(command)26 b(searc)n(h)12 b Fc(.)h(.)f(.)g(.)h(.)f +b Fb(119)150 4361 y(command)26 b(searc)n(h)12 b Fc(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)g(.)38 b Fb(29)150 2733 y(command)26 +f(.)g(.)h(.)f(.)g(.)g(.)38 b Fb(30)150 4450 y(command)26 b(substitution)e Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fb(21)150 -2822 y(command)26 b(timing)8 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 b Fb(22)150 +4539 y(command)26 b(timing)8 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)34 b Fb(8)150 2910 y(commands,)26 b(comp)r(ound)8 +(.)g(.)h(.)f(.)34 b Fb(8)150 4628 y(commands,)26 b(comp)r(ound)8 b Fc(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fb(9)150 2998 +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fb(9)150 4717 y(commands,)26 b(conditional)13 b Fc(.)h(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)39 -b Fb(10)150 3087 y(commands,)26 b(grouping)15 b Fc(.)f(.)e(.)g(.)h(.)f +b Fb(10)150 4806 y(commands,)26 b(grouping)15 b Fc(.)f(.)e(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.) -h(.)f(.)41 b Fb(13)150 3175 y(commands,)26 b(lists)6 +h(.)f(.)41 b Fb(13)150 4895 y(commands,)26 b(lists)6 b Fc(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 -b Fb(9)150 3264 y(commands,)26 b(lo)r(oping)f Fc(.)12 -b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(9)150 3352 -y(commands,)26 b(pip)r(elines)17 b Fc(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -43 b Fb(8)150 3441 y(commands,)26 b(shell)16 b Fc(.)e(.)e(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(8)150 3529 y(commands,)26 +b Fb(9)150 4984 y(commands,)26 b(lo)r(oping)e Fc(.)12 +b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fb(10)150 5073 y(commands,)26 +b(pip)r(elines)17 b Fc(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 +b Fb(8)150 5162 y(commands,)26 b(shell)16 b Fc(.)e(.)e(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)g(.)h(.)f(.)g(.)h(.)42 b Fb(8)150 5251 y(commands,)26 b(simple)c Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 -b Fb(8)150 3618 y(commen)n(ts,)26 b(shell)8 b Fc(.)13 +b Fb(8)150 5340 y(commen)n(ts,)26 b(shell)8 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 -b Fb(7)150 3706 y(completion)27 b(builtins)22 b Fc(.)12 -b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(113)150 3795 y(con\014guration)15 -b Fc(.)e(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 -b Fb(123)150 3883 y(con)n(trol)26 b(op)r(erator)c Fc(.)12 -b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fb(3)150 -4139 y Fr(D)150 4258 y Fb(directory)26 b(stac)n(k)e Fc(.)12 -b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(79)150 -4514 y Fr(E)150 4632 y Fb(editing)26 b(command)g(lines)d -Fc(.)12 b(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fb(91)150 4721 y(en)n(vironmen)n(t)10 -b Fc(.)i(.)g(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)35 -b Fb(31)150 4809 y(ev)l(aluation,)26 b(arithmetic)13 -b Fc(.)h(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)39 b Fb(76)150 4898 y(ev)n(en)n(t)25 -b(designators)18 b Fc(.)c(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 -b Fb(120)150 4986 y(execution)26 b(en)n(vironmen)n(t)19 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(30)150 5075 y(exit)25 -b(status)17 b Fc(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)43 b Fb(3,)26 b(31)150 5163 y(expansion)16 b Fc(.)d(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b -Fb(17)150 5252 y(expansion,)26 b(arithmetic)20 b Fc(.)13 -b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)45 b Fb(22)150 5340 y(expansion,)26 -b(brace)12 b Fc(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)38 -b Fb(17)2025 643 y(expansion,)26 b(\014lename)18 b Fc(.)12 +b Fb(7)2025 2345 y(completion)26 b(builtins)c Fc(.)13 +b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fb(114)2025 2436 y(con\014guration)15 +b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)42 +b Fb(125)2025 2527 y(con)n(trol)26 b(op)r(erator)c Fc(.)12 +b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)47 b Fb(3)2025 +2796 y Fr(D)2025 2919 y Fb(directory)26 b(stac)n(k)d +Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)49 +b Fb(79)2025 3188 y Fr(E)2025 3312 y Fb(editing)26 b(command)g(lines)c +Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)48 b Fb(91)2025 3403 y(en)n(vironmen)n(t)10 +b Fc(.)h(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 +b Fb(31)2025 3494 y(ev)l(aluation,)26 b(arithmetic)13 +b Fc(.)h(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)g(.)h(.)39 b Fb(76)2025 3584 y(ev)n(en)n(t)24 +b(designators)18 b Fc(.)d(.)d(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 +b Fb(122)2025 3675 y(execution)25 b(en)n(vironmen)n(t)19 +b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)46 b Fb(30)2025 3766 y(exit)25 +b(status)17 b Fc(.)c(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h +(.)43 b Fb(3,)26 b(32)2025 3857 y(expansion)16 b Fc(.)c(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b +Fb(17)2025 3948 y(expansion,)26 b(arithmetic)20 b Fc(.)13 +b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(22)2025 4039 y(expansion,)26 +b(brace)12 b Fc(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 +b Fb(18)2025 4130 y(expansion,)26 b(\014lename)18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(23)2025 734 y(expansion,)26 +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)43 b Fb(23)2025 4221 y(expansion,)26 b(parameter)c Fc(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)47 b Fb(19)2025 -824 y(expansion,)26 b(pathname)8 b Fc(.)k(.)g(.)h(.)f(.)g(.)h(.)f(.)g +4311 y(expansion,)26 b(pathname)8 b Fc(.)k(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)34 -b Fb(23)2025 915 y(expansion,)26 b(tilde)9 b Fc(.)j(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(18)2025 1005 y(expressions,)27 +b Fb(23)2025 4402 y(expansion,)26 b(tilde)9 b Fc(.)j(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(18)2025 4493 y(expressions,)27 b(arithmetic)16 b Fc(.)d(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b Fb(76)2025 -1096 y(expressions,)27 b(conditional)22 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f +4584 y(expressions,)27 b(conditional)22 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)47 -b Fb(75)2025 1362 y Fr(F)2025 1485 y Fb(\014eld)21 b +b Fb(75)2025 4853 y Fr(F)2025 4976 y Fb(\014eld)21 b Fc(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fb(3)2025 1575 y(\014lename)8 +g(.)g(.)h(.)f(.)g(.)h(.)f(.)48 b Fb(3)2025 5067 y(\014lename)8 b Fc(.)k(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)34 b Fb(3)2025 1666 y(\014lename)26 b(expansion)10 +(.)g(.)h(.)f(.)34 b Fb(3)2025 5158 y(\014lename)26 b(expansion)10 b Fc(.)i(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)36 b Fb(23)2025 -1756 y(foreground)20 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +5249 y(foreground)20 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(87)2025 1846 y(functions,)26 +(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(87)2025 5340 y(functions,)26 b(shell)c Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)47 -b Fb(14)2025 2113 y Fr(H)2025 2235 y Fb(history)25 b(builtins)16 -b Fc(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)42 b -Fb(117)2025 2326 y(history)25 b(ev)n(en)n(ts)20 b Fc(.)13 -b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 b Fb(120)2025 -2416 y(history)25 b(expansion)13 b Fc(.)g(.)f(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)39 b Fb(119)2025 2507 y(history)25 b(list)18 b Fc(.)c(.)e(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)44 b Fb(117)2025 -2597 y(History)-6 b(,)25 b(ho)n(w)h(to)g(use)20 b Fc(.)12 -b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)g(.)h(.)f(.)g(.)46 b Fb(116)2025 2864 y Fr(I)2025 -2986 y Fb(iden)n(ti\014er)16 b Fc(.)c(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)43 b Fb(3)2025 -3077 y(initialization)28 b(\014le,)e(readline)7 b Fc(.)13 -b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)33 b Fb(94)2025 3167 y(installation)11 b Fc(.)j(.)e(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)37 b Fb(123)2025 -3258 y(in)n(teraction,)26 b(readline)9 b Fc(.)14 b(.)e(.)g(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)35 b Fb(91)2025 3348 y(in)n(teractiv)n(e)26 b(shell)20 -b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fb(71,)27 -b(73)2025 3438 y(in)n(ternationalization)21 b Fc(.)12 -b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)45 b Fb(7)2025 3688 -y Fr(J)2025 3811 y Fb(job)22 b Fc(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +b Fb(14)p eop end +%%Page: 155 161 +TeXDict begin 155 160 bop 150 -116 a Ft(App)s(endix)29 +b(D:)i(Indexes)2623 b(155)150 299 y Fr(H)150 415 y Fb(history)26 +b(builtins)16 b Fc(.)c(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 +b Fb(119)150 503 y(history)26 b(ev)n(en)n(ts)19 b Fc(.)13 +b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)46 b Fb(122)150 +590 y(history)26 b(expansion)13 b Fc(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)48 -b Fb(3)2025 3901 y(job)26 b(con)n(trol)12 b Fc(.)h(.)f(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)38 b Fb(3,)26 b(87)2025 -4168 y Fr(K)2025 4290 y Fb(kill)g(ring)14 b Fc(.)f(.)f(.)g(.)h(.)f(.)g +(.)39 b Fb(121)150 678 y(history)26 b(list)18 b Fc(.)13 +b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 +b Fb(119)150 765 y(History)-6 b(,)26 b(ho)n(w)g(to)f(use)20 +b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(117)150 1016 +y Fr(I)150 1132 y Fb(iden)n(ti\014er)16 b Fc(.)c(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)42 +b Fb(3)150 1219 y(initialization)28 b(\014le,)e(readline)7 +b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)33 b Fb(94)150 1307 y(installation)11 +b Fc(.)j(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 +b Fb(125)150 1394 y(in)n(teraction,)27 b(readline)9 b +Fc(.)k(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)35 b Fb(91)150 1482 +y(in)n(teractiv)n(e)26 b(shell)20 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)40 -b Fb(93)2025 4381 y(killing)26 b(text)16 b Fc(.)c(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)42 b Fb(93)2025 -4647 y Fr(L)2025 4770 y Fb(lo)r(calization)10 b Fc(.)15 -b(.)d(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)36 -b Fb(7)2025 4860 y(login)26 b(shell)13 b Fc(.)h(.)e(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 b Fb(71)2025 -5127 y Fr(M)2025 5250 y Fb(matc)n(hing,)26 b(pattern)7 -b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)33 b Fb(24)2025 -5340 y(metac)n(haracter)17 b Fc(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)44 b Fb(3)p eop end -%%Page: 154 160 -TeXDict begin 154 159 bop 150 -116 a Ft(154)2527 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fr(N)150 417 y Fb(name)21 +g(.)46 b Fb(71,)26 b(73)150 1569 y(in)n(ternationalization)21 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 b Fb(7)150 +1803 y Fr(J)150 1919 y Fb(job)22 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)48 +b Fb(3)150 2007 y(job)26 b(con)n(trol)12 b Fc(.)h(.)g(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)47 b Fb(3)150 506 y(nativ)n(e)25 -b(languages)14 b Fc(.)h(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 -b Fb(7)150 594 y(notation,)27 b(readline)12 b Fc(.)h(.)f(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)38 b Fb(91)150 851 y Fr(O)150 969 -y Fb(op)r(erator,)27 b(shell)15 b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)38 b Fb(3,)26 b(87)150 +2257 y Fr(K)150 2374 y Fb(kill)g(ring)14 b Fc(.)f(.)f(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 +b Fb(93)150 2461 y(killing)27 b(text)16 b Fc(.)c(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)41 b Fb(3)150 1225 y Fr(P)150 -1344 y Fb(parameter)26 b(expansion)14 b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -40 b Fb(19)150 1432 y(parameters)14 b Fc(.)f(.)g(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(15)150 1521 -y(parameters,)27 b(p)r(ositional)9 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 -b Fb(15)150 1609 y(parameters,)27 b(sp)r(ecial)e Fc(.)12 -b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 b Fb(16)150 1698 y(pathname)25 -b(expansion)19 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)44 -b Fb(23)150 1786 y(pattern)25 b(matc)n(hing)18 b Fc(.)13 -b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fb(24)150 -1875 y(pip)r(eline)15 b Fc(.)e(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b Fb(93)150 +2712 y Fr(L)150 2828 y Fb(lo)r(calization)10 b Fc(.)15 +b(.)e(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 +b Fb(7)150 2916 y(login)27 b(shell)13 b Fc(.)g(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)39 b Fb(71)150 +3166 y Fr(M)150 3283 y Fb(matc)n(hing,)26 b(pattern)7 +b Fc(.)12 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(24)150 +3370 y(metac)n(haracter)17 b Fc(.)d(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)43 b Fb(3)150 3604 y Fr(N)150 3721 y +Fb(name)21 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)47 b Fb(3)150 3808 +y(nativ)n(e)25 b(languages)14 b Fc(.)h(.)d(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)41 b Fb(8)150 1963 -y(POSIX)8 b Fc(.)k(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)h(.)34 b Fb(3)150 2052 y(POSIX)25 -b(Mo)r(de)10 b Fc(.)i(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +f(.)g(.)h(.)40 b Fb(7)150 3895 y(notation,)27 b(readline)12 +b Fc(.)h(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fb(91)150 +4146 y Fr(O)150 4262 y Fb(op)r(erator,)27 b(shell)15 +b Fc(.)e(.)g(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)41 +b Fb(3)150 4513 y Fr(P)150 4629 y Fb(parameter)26 b(expansion)14 +b Fc(.)f(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)40 b Fb(19)150 4717 y(parameters)14 +b Fc(.)f(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 +b Fb(15)150 4804 y(parameters,)27 b(p)r(ositional)9 b +Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)34 b Fb(16)150 4892 y(parameters,)27 +b(sp)r(ecial)e Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)49 +b Fb(16)150 4979 y(pathname)25 b(expansion)19 b Fc(.)12 +b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)44 b Fb(23)150 5067 y(pattern)25 +b(matc)n(hing)18 b Fc(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 +b Fb(24)2025 299 y(pip)r(eline)15 b Fc(.)e(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)35 b Fb(82)150 2140 y(pro)r(cess)27 b(group)7 b Fc(.)13 -b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)33 -b Fb(3)150 2229 y(pro)r(cess)27 b(group)e(ID)f Fc(.)12 -b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)50 b Fb(3)150 -2317 y(pro)r(cess)27 b(substitution)10 b Fc(.)i(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)36 b Fb(22)150 2406 y(programmable)27 b(completion)16 -b Fc(.)d(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)42 b Fb(111)150 2494 y(prompting)7 b Fc(.)12 -b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 -b Fb(81)150 2750 y Fr(Q)150 2869 y Fb(quoting)19 b Fc(.)13 -b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)46 b Fb(6)150 2957 y(quoting,)26 b(ANSI)12 b -Fc(.)f(.)h(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)38 -b Fb(6)150 3213 y Fr(R)150 3332 y Fb(Readline,)26 b(ho)n(w)g(to)g(use) -14 b Fc(.)e(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)39 b Fb(90)150 3421 -y(redirection)21 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)46 b Fb(25)2025 299 y(reserv)n(ed)25 +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)42 b +Fb(8)2025 387 y(POSIX)8 b Fc(.)j(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)35 b Fb(3)2025 +474 y(POSIX)24 b(Mo)r(de)10 b Fc(.)j(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)35 b Fb(82)2025 562 y(pro)r(cess)26 +b(group)7 b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)34 b Fb(3)2025 650 y(pro)r(cess)26 b(group)g(ID)e +Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)50 +b Fb(3)2025 738 y(pro)r(cess)26 b(substitution)10 b Fc(.)j(.)f(.)h(.)f +(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)36 b Fb(22)2025 826 y(programmable)27 +b(completion)16 b Fc(.)d(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)42 b Fb(112)2025 913 y(prompting)7 +b Fc(.)12 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h +(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)32 b Fb(81)2025 1166 y Fr(Q)2025 1283 y Fb(quoting)19 +b Fc(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)46 b Fb(6)2025 1371 y(quoting,)26 b(ANSI)12 +b Fc(.)f(.)h(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)39 +b Fb(6)2025 1624 y Fr(R)2025 1741 y Fb(Readline,)26 b(ho)n(w)g(to)g +(use)14 b Fc(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)40 b Fb(90)2025 +1829 y(redirection)21 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) +f(.)g(.)h(.)f(.)g(.)h(.)46 b Fb(25)2025 1917 y(reserv)n(ed)25 b(w)n(ord)f Fc(.)13 b(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)50 b Fb(3)2025 386 y(restricted)26 b(shell)8 b Fc(.)13 +g(.)50 b Fb(3)2025 2004 y(restricted)26 b(shell)8 b Fc(.)13 b(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)34 -b Fb(82)2025 473 y(return)25 b(status)19 b Fc(.)13 b(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(3)2025 -707 y Fr(S)2025 823 y Fb(shell)26 b(arithmetic)12 b Fc(.)h(.)g(.)f(.)g +b Fb(82)2025 2092 y(return)25 b(status)19 b Fc(.)13 b(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 b Fb(3)2025 +2328 y Fr(S)2025 2446 y Fb(shell)26 b(arithmetic)12 b +Fc(.)h(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g +(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 +b Fb(76)2025 2533 y(shell)26 b(function)11 b Fc(.)i(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)38 b Fb(76)2025 910 y(shell)26 -b(function)11 b Fc(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)37 b Fb(14)2025 997 y(shell)26 b(script)18 b Fc(.)13 -b(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)44 -b Fb(32)2025 1084 y(shell)26 b(v)l(ariable)17 b Fc(.)c(.)g(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)43 b Fb(15)2025 1172 -y(shell,)26 b(in)n(teractiv)n(e)16 b Fc(.)d(.)g(.)f(.)g(.)h(.)f(.)g(.)h -(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)h(.)f(.)42 b Fb(73)2025 1259 y(signal)14 b Fc(.)f(.)g(.)f(.)g(.)h +f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)37 b Fb(14)2025 2621 +y(shell)26 b(script)18 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 -b Fb(4)2025 1346 y(signal)27 b(handling)18 b Fc(.)13 +h(.)f(.)g(.)h(.)f(.)g(.)44 b Fb(33)2025 2709 y(shell)26 +b(v)l(ariable)17 b Fc(.)c(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) +h(.)f(.)43 b Fb(15)2025 2797 y(shell,)26 b(in)n(teractiv)n(e)16 +b Fc(.)d(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)42 b +Fb(73)2025 2885 y(signal)14 b Fc(.)f(.)g(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) +g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f +(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)40 +b Fb(4)2025 2972 y(signal)27 b(handling)18 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)44 b Fb(32)2025 -1433 y(sp)r(ecial)27 b(builtin)12 b Fc(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g +3060 y(sp)r(ecial)27 b(builtin)12 b Fc(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) -g(.)g(.)h(.)38 b Fb(4,)26 b(57)2025 1521 y(startup)f(\014les)20 +g(.)g(.)h(.)38 b Fb(4,)26 b(58)2025 3148 y(startup)f(\014les)20 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)45 -b Fb(71)2025 1608 y(susp)r(ending)25 b(jobs)7 b Fc(.)14 +b Fb(71)2025 3236 y(susp)r(ending)25 b(jobs)7 b Fc(.)14 b(.)e(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)33 b Fb(87)2025 -1858 y Fr(T)2025 1974 y Fb(tilde)26 b(expansion)19 b +3488 y Fr(T)2025 3606 y Fb(tilde)26 b(expansion)19 b Fc(.)13 b(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)45 -b Fb(18)2025 2061 y(tok)n(en)18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g +b Fb(18)2025 3693 y(tok)n(en)18 b Fc(.)12 b(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)45 -b Fb(4)2025 2148 y(translation,)27 b(nativ)n(e)e(languages)9 +b Fb(4)2025 3781 y(translation,)27 b(nativ)n(e)e(languages)9 b Fc(.)14 b(.)f(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f -(.)g(.)h(.)35 b Fb(7)2025 2398 y Fr(V)2025 2514 y Fb(v)l(ariable,)26 +(.)g(.)h(.)35 b Fb(7)2025 4034 y Fr(V)2025 4151 y Fb(v)l(ariable,)26 b(shell)7 b Fc(.)13 b(.)f(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.) -h(.)32 b Fb(15)2025 2601 y(v)l(ariables,)27 b(readline)7 +h(.)32 b Fb(15)2025 4239 y(v)l(ariables,)27 b(readline)7 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)32 b Fb(95)2025 -2851 y Fr(W)2025 2967 y Fb(w)n(ord)10 b Fc(.)i(.)h(.)f(.)g(.)h(.)f(.)g +4492 y Fr(W)2025 4609 y Fb(w)n(ord)10 b Fc(.)i(.)h(.)f(.)g(.)h(.)f(.)g (.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)36 -b Fb(4)2025 3055 y(w)n(ord)26 b(splitting)21 b Fc(.)12 +b Fb(4)2025 4697 y(w)n(ord)26 b(splitting)21 b Fc(.)12 b(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)46 -b Fb(23)2025 3304 y Fr(Y)2025 3421 y Fb(y)n(anking)25 +b Fb(23)2025 4949 y Fr(Y)2025 5067 y Fb(y)n(anking)25 b(text)7 b Fc(.)k(.)i(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)33 b Fb(93)p eop end +%%Page: 156 162 +TeXDict begin 156 161 bop 150 -116 a Ft(156)2527 b(Bash)31 +b(Reference)g(Man)m(ual)p eop end %%Trailer userdict /end-hook known{end-hook}if diff --git a/doc/bashref.rw b/doc/bashref.rw index 0544a4588..63177705c 100644 --- a/doc/bashref.rw +++ b/doc/bashref.rw @@ -1,8 +1,8 @@ \entry{time}{8}{\code {time}} \entry{!}{8}{\code {!}} -\entry{until}{9}{\code {until}} -\entry{do}{9}{\code {do}} -\entry{done}{9}{\code {done}} +\entry{until}{10}{\code {until}} +\entry{do}{10}{\code {do}} +\entry{done}{10}{\code {done}} \entry{while}{10}{\code {while}} \entry{for}{10}{\code {for}} \entry{if}{10}{\code {if}} @@ -13,9 +13,9 @@ \entry{case}{11}{\code {case}} \entry{in}{11}{\code {in}} \entry{esac}{11}{\code {esac}} -\entry{select}{11}{\code {select}} +\entry{select}{12}{\code {select}} \entry{[[}{12}{\code {[[}} \entry{]]}{12}{\code {]]}} -\entry{{\tt \char 123}}{13}{\code {{\tt \char 123}}} -\entry{{\tt \char 125}}{13}{\code {{\tt \char 125}}} +\entry{{\tt \char 123}}{14}{\code {{\tt \char 123}}} +\entry{{\tt \char 125}}{14}{\code {{\tt \char 125}}} \entry{function}{14}{\code {function}} diff --git a/doc/bashref.rws b/doc/bashref.rws index 0b93567af..1f5366d85 100644 --- a/doc/bashref.rws +++ b/doc/bashref.rws @@ -5,14 +5,14 @@ \initial {]} \entry {\code {]]}}{12} \initial {{\tt \char 123}} -\entry {\code {{\tt \char 123}}}{13} +\entry {\code {{\tt \char 123}}}{14} \initial {{\tt \char 125}} -\entry {\code {{\tt \char 125}}}{13} +\entry {\code {{\tt \char 125}}}{14} \initial {C} \entry {\code {case}}{11} \initial {D} -\entry {\code {do}}{9} -\entry {\code {done}}{9} +\entry {\code {do}}{10} +\entry {\code {done}}{10} \initial {E} \entry {\code {elif}}{10} \entry {\code {else}}{10} @@ -25,11 +25,11 @@ \entry {\code {if}}{10} \entry {\code {in}}{11} \initial {S} -\entry {\code {select}}{11} +\entry {\code {select}}{12} \initial {T} \entry {\code {then}}{10} \entry {\code {time}}{8} \initial {U} -\entry {\code {until}}{9} +\entry {\code {until}}{10} \initial {W} \entry {\code {while}}{10} diff --git a/doc/bashref.texi b/doc/bashref.texi index fdd47c173..38fec7fcf 100644 --- a/doc/bashref.texi +++ b/doc/bashref.texi @@ -4928,6 +4928,12 @@ is readonly. If set, the value is interpreted as a command to execute before the printing of each primary prompt (@env{$PS1}). +@item PROMPT_DIRTRIM +If set to a number greater than zero, the value is used as the number of +trailing directory components to retain when expanding the @code{\w} and +@code{\W} prompt string escapes (@pxref{Printing a Prompt}). +Characters removed are replaced with an ellipsis. + @item PS3 The value of this variable is used as the prompt for the @code{select} command. If this variable is not set, the @@ -6050,7 +6056,8 @@ The version of Bash (e.g., 2.00) @item \V The release of Bash, version + patchlevel (e.g., 2.00.0) @item \w -The current working directory, with @env{$HOME} abbreviated with a tilde. +The current working directory, with @env{$HOME} abbreviated with a tilde +(uses the @env{$PROMPT_DIRTRIM} variable). @item \W The basename of @env{$PWD}, with @env{$HOME} abbreviated with a tilde. @item \! diff --git a/doc/bashref.texi~ b/doc/bashref.texi~ index 857b260e5..0ccfa392b 100644 --- a/doc/bashref.texi~ +++ b/doc/bashref.texi~ @@ -859,14 +859,17 @@ of alphabetic characters. The @samp{|} is used to separate multiple patterns, and the @samp{)} operator terminates a pattern list. A list of patterns and an associated command-list is known -as a @var{clause}. Each clause must be terminated with @samp{;;}. +as a @var{clause}. + +Each clause must be terminated with @samp{;;}, @samp{,&}, or @samp{;;&}. The @var{word} undergoes tilde expansion, parameter expansion, command substitution, arithmetic expansion, and quote removal before matching is attempted. Each @var{pattern} undergoes tilde expansion, parameter expansion, command substitution, and arithmetic expansion. There may be an arbitrary number of @code{case} clauses, each terminated -by a @samp{;;}. The first pattern that matches determines the +by a @samp{;;}, @samp{;&}, or @samp{;;&}. +The first pattern that matches determines the command-list that is executed. Here is an example using @code{case} in a script that could be used to @@ -885,6 +888,15 @@ echo " legs." @end example @noindent + +If the @samp{;;} operator is used, no subsequent matches are attempted after +the first pattern match. +Using @samp{;&} in place of @samp{;;} causes execution to continue with +the @var{command-list} associated with the next clause, if any. +Using @samp{;;&} in place of @samp{;;} causes the shell to test the patterns +in the next clause, if any, and execute any associated @var{command-list} +on a successful match. + The return status is zero if no @var{pattern} is matched. Otherwise, the return status is the exit status of the @var{command-list} executed. @@ -4916,6 +4928,12 @@ is readonly. If set, the value is interpreted as a command to execute before the printing of each primary prompt (@env{$PS1}). +@item PROMPT_DIRTRIM +If set to a number greater than zero, the value is used as the number of +trailing directory components to retain when expanding the @code{\w} and +@code{\W} prompt string escapes (@pxref{Printing a Prompt}). +Characters removed are replaced with an ellipsis. + @item PS3 The value of this variable is used as the prompt for the @code{select} command. If this variable is not set, the diff --git a/doc/bashref.toc b/doc/bashref.toc index 400375006..953fd0992 100644 --- a/doc/bashref.toc +++ b/doc/bashref.toc @@ -15,51 +15,52 @@ \secentry{Shell Commands}{3}{2}{7} \subsecentry{Simple Commands}{3}{2}{1}{8} \subsecentry{Pipelines}{3}{2}{2}{8} -\subsecentry{Lists of Commands}{3}{2}{3}{8} +\subsecentry{Lists of Commands}{3}{2}{3}{9} \subsecentry{Compound Commands}{3}{2}{4}{9} \subsubsecentry{Looping Constructs}{3}{2}{4}{1}{9} \subsubsecentry{Conditional Constructs}{3}{2}{4}{2}{10} \subsubsecentry{Grouping Commands}{3}{2}{4}{3}{13} -\secentry{Shell Functions}{3}{3}{13} +\secentry{Shell Functions}{3}{3}{14} \secentry{Shell Parameters}{3}{4}{15} -\subsecentry{Positional Parameters}{3}{4}{1}{15} +\subsecentry{Positional Parameters}{3}{4}{1}{16} \subsecentry{Special Parameters}{3}{4}{2}{16} \secentry{Shell Expansions}{3}{5}{17} \subsecentry{Brace Expansion}{3}{5}{1}{17} \subsecentry{Tilde Expansion}{3}{5}{2}{18} \subsecentry{Shell Parameter Expansion}{3}{5}{3}{19} -\subsecentry{Command Substitution}{3}{5}{4}{21} +\subsecentry{Command Substitution}{3}{5}{4}{22} \subsecentry{Arithmetic Expansion}{3}{5}{5}{22} \subsecentry{Process Substitution}{3}{5}{6}{22} -\subsecentry{Word Splitting}{3}{5}{7}{22} +\subsecentry{Word Splitting}{3}{5}{7}{23} \subsecentry{Filename Expansion}{3}{5}{8}{23} -\subsubsecentry{Pattern Matching}{3}{5}{8}{1}{23} +\subsubsecentry{Pattern Matching}{3}{5}{8}{1}{24} \subsecentry{Quote Removal}{3}{5}{9}{25} \secentry{Redirections}{3}{6}{25} \subsecentry{Redirecting Input}{3}{6}{1}{26} \subsecentry{Redirecting Output}{3}{6}{2}{26} -\subsecentry{Appending Redirected Output}{3}{6}{3}{26} -\subsecentry{Redirecting Standard Output and Standard Error}{3}{6}{4}{26} -\subsecentry{Here Documents}{3}{6}{5}{27} -\subsecentry{Here Strings}{3}{6}{6}{27} -\subsecentry{Duplicating File Descriptors}{3}{6}{7}{27} -\subsecentry{Moving File Descriptors}{3}{6}{8}{28} -\subsecentry{Opening File Descriptors for Reading and Writing}{3}{6}{9}{28} -\secentry{Executing Commands}{3}{7}{28} -\subsecentry{Simple Command Expansion}{3}{7}{1}{28} -\subsecentry{Command Search and Execution}{3}{7}{2}{29} -\subsecentry{Command Execution Environment}{3}{7}{3}{29} -\subsecentry{Environment}{3}{7}{4}{30} -\subsecentry{Exit Status}{3}{7}{5}{31} -\subsecentry{Signals}{3}{7}{6}{31} -\secentry{Shell Scripts}{3}{8}{32} +\subsecentry{Appending Redirected Output}{3}{6}{3}{27} +\subsecentry{Redirecting Standard Output and Standard Error}{3}{6}{4}{27} +\subsecentry{Appending Standard Output and Standard Error}{3}{6}{5}{27} +\subsecentry{Here Documents}{3}{6}{6}{27} +\subsecentry{Here Strings}{3}{6}{7}{28} +\subsecentry{Duplicating File Descriptors}{3}{6}{8}{28} +\subsecentry{Moving File Descriptors}{3}{6}{9}{28} +\subsecentry{Opening File Descriptors for Reading and Writing}{3}{6}{10}{29} +\secentry{Executing Commands}{3}{7}{29} +\subsecentry{Simple Command Expansion}{3}{7}{1}{29} +\subsecentry{Command Search and Execution}{3}{7}{2}{30} +\subsecentry{Command Execution Environment}{3}{7}{3}{30} +\subsecentry{Environment}{3}{7}{4}{31} +\subsecentry{Exit Status}{3}{7}{5}{32} +\subsecentry{Signals}{3}{7}{6}{32} +\secentry{Shell Scripts}{3}{8}{33} \chapentry{Shell Builtin Commands}{4}{35} \secentry{Bourne Shell Builtins}{4}{1}{35} \secentry{Bash Builtin Commands}{4}{2}{41} -\secentry{Modifying Shell Behavior}{4}{3}{49} -\subsecentry{The Set Builtin}{4}{3}{1}{49} +\secentry{Modifying Shell Behavior}{4}{3}{50} +\subsecentry{The Set Builtin}{4}{3}{1}{50} \subsecentry{The Shopt Builtin}{4}{3}{2}{53} -\secentry{Special Builtins}{4}{4}{57} +\secentry{Special Builtins}{4}{4}{58} \chapentry{Shell Variables}{5}{59} \secentry{Bourne Shell Variables}{5}{1}{59} \secentry{Bash Variables}{5}{2}{59} @@ -93,43 +94,43 @@ \subsecentry{Searching for Commands in the History}{8}{2}{5}{93} \secentry{Readline Init File}{8}{3}{94} \subsecentry{Readline Init File Syntax}{8}{3}{1}{94} -\subsecentry{Conditional Init Constructs}{8}{3}{2}{99} -\subsecentry{Sample Init File}{8}{3}{3}{100} -\secentry{Bindable Readline Commands}{8}{4}{103} -\subsecentry{Commands For Moving}{8}{4}{1}{103} -\subsecentry{Commands For Manipulating The History}{8}{4}{2}{103} -\subsecentry{Commands For Changing Text}{8}{4}{3}{105} -\subsecentry{Killing And Yanking}{8}{4}{4}{106} -\subsecentry{Specifying Numeric Arguments}{8}{4}{5}{107} -\subsecentry{Letting Readline Type For You}{8}{4}{6}{107} -\subsecentry{Keyboard Macros}{8}{4}{7}{108} -\subsecentry{Some Miscellaneous Commands}{8}{4}{8}{109} -\secentry{Readline vi Mode}{8}{5}{111} -\secentry{Programmable Completion}{8}{6}{111} -\secentry{Programmable Completion Builtins}{8}{7}{113} -\chapentry{Using History Interactively}{9}{117} -\secentry{Bash History Facilities}{9}{1}{117} -\secentry{Bash History Builtins}{9}{2}{117} -\secentry{History Expansion}{9}{3}{119} -\subsecentry{Event Designators}{9}{3}{1}{119} -\subsecentry{Word Designators}{9}{3}{2}{120} -\subsecentry{Modifiers}{9}{3}{3}{121} -\chapentry{Installing Bash}{10}{123} -\secentry{Basic Installation}{10}{1}{123} -\secentry{Compilers and Options}{10}{2}{123} -\secentry{Compiling For Multiple Architectures}{10}{3}{124} -\secentry{Installation Names}{10}{4}{124} -\secentry{Specifying the System Type}{10}{5}{124} -\secentry{Sharing Defaults}{10}{6}{125} -\secentry{Operation Controls}{10}{7}{125} -\secentry{Optional Features}{10}{8}{125} -\appendixentry{Reporting Bugs}{A}{131} -\appendixentry{Major Differences From The Bourne Shell}{B}{133} -\secentry{Implementation Differences From The SVR4.2 Shell}{B}{1}{137} -\appendixentry{GNU Free Documentation License}{C}{139} -\appendixentry{Indexes}{D}{147} -\secentry{Index of Shell Builtin Commands}{D}{1}{147} -\secentry{Index of Shell Reserved Words}{D}{2}{149} -\secentry{Parameter and Variable Index}{D}{3}{149} -\secentry{Function Index}{D}{4}{151} -\secentry{Concept Index}{D}{5}{153} +\subsecentry{Conditional Init Constructs}{8}{3}{2}{100} +\subsecentry{Sample Init File}{8}{3}{3}{101} +\secentry{Bindable Readline Commands}{8}{4}{104} +\subsecentry{Commands For Moving}{8}{4}{1}{104} +\subsecentry{Commands For Manipulating The History}{8}{4}{2}{104} +\subsecentry{Commands For Changing Text}{8}{4}{3}{106} +\subsecentry{Killing And Yanking}{8}{4}{4}{107} +\subsecentry{Specifying Numeric Arguments}{8}{4}{5}{108} +\subsecentry{Letting Readline Type For You}{8}{4}{6}{108} +\subsecentry{Keyboard Macros}{8}{4}{7}{109} +\subsecentry{Some Miscellaneous Commands}{8}{4}{8}{110} +\secentry{Readline vi Mode}{8}{5}{112} +\secentry{Programmable Completion}{8}{6}{112} +\secentry{Programmable Completion Builtins}{8}{7}{114} +\chapentry{Using History Interactively}{9}{119} +\secentry{Bash History Facilities}{9}{1}{119} +\secentry{Bash History Builtins}{9}{2}{119} +\secentry{History Expansion}{9}{3}{121} +\subsecentry{Event Designators}{9}{3}{1}{121} +\subsecentry{Word Designators}{9}{3}{2}{122} +\subsecentry{Modifiers}{9}{3}{3}{123} +\chapentry{Installing Bash}{10}{125} +\secentry{Basic Installation}{10}{1}{125} +\secentry{Compilers and Options}{10}{2}{125} +\secentry{Compiling For Multiple Architectures}{10}{3}{126} +\secentry{Installation Names}{10}{4}{126} +\secentry{Specifying the System Type}{10}{5}{126} +\secentry{Sharing Defaults}{10}{6}{127} +\secentry{Operation Controls}{10}{7}{127} +\secentry{Optional Features}{10}{8}{127} +\appendixentry{Reporting Bugs}{A}{133} +\appendixentry{Major Differences From The Bourne Shell}{B}{135} +\secentry{Implementation Differences From The SVR4.2 Shell}{B}{1}{139} +\appendixentry{GNU Free Documentation License}{C}{141} +\appendixentry{Indexes}{D}{149} +\secentry{Index of Shell Builtin Commands}{D}{1}{149} +\secentry{Index of Shell Reserved Words}{D}{2}{150} +\secentry{Parameter and Variable Index}{D}{3}{150} +\secentry{Function Index}{D}{4}{152} +\secentry{Concept Index}{D}{5}{154} diff --git a/doc/bashref.vr b/doc/bashref.vr index e39dc0c6a..056e0ad74 100644 --- a/doc/bashref.vr +++ b/doc/bashref.vr @@ -6,10 +6,10 @@ \entry{#}{16}{\code {#}} \entry{?}{16}{\code {?}} \entry{-}{16}{\code {-}} -\entry{$}{16}{\code {$}} -\entry{!}{16}{\code {!}} -\entry{0}{16}{\code {0}} -\entry{_}{16}{\code {_}} +\entry{$}{17}{\code {$}} +\entry{!}{17}{\code {!}} +\entry{0}{17}{\code {0}} +\entry{_}{17}{\code {_}} \entry{CDPATH}{59}{\code {CDPATH}} \entry{HOME}{59}{\code {HOME}} \entry{IFS}{59}{\code {IFS}} @@ -97,6 +97,7 @@ \entry{bell-style}{95}{\code {bell-style}} \entry{bind-tty-special-chars}{95}{\code {bind-tty-special-chars}} \entry{comment-begin}{95}{\code {comment-begin}} +\entry{completion-prefix-display-length}{95}{\code {completion-prefix-display-length}} \entry{completion-query-items}{95}{\code {completion-query-items}} \entry{convert-meta}{96}{\code {convert-meta}} \entry{disable-completion}{96}{\code {disable-completion}} @@ -108,13 +109,14 @@ \entry{horizontal-scroll-mode}{96}{\code {horizontal-scroll-mode}} \entry{input-meta}{96}{\code {input-meta}} \entry{meta-flag}{96}{\code {meta-flag}} -\entry{isearch-terminators}{96}{\code {isearch-terminators}} +\entry{isearch-terminators}{97}{\code {isearch-terminators}} \entry{keymap}{97}{\code {keymap}} \entry{mark-modified-lines}{97}{\code {mark-modified-lines}} \entry{mark-symlinked-directories}{97}{\code {mark-symlinked-directories}} \entry{match-hidden-files}{97}{\code {match-hidden-files}} \entry{output-meta}{97}{\code {output-meta}} \entry{page-completions}{97}{\code {page-completions}} -\entry{show-all-if-ambiguous}{97}{\code {show-all-if-ambiguous}} +\entry{revert-all-at-newline}{98}{\code {revert-all-at-newline}} +\entry{show-all-if-ambiguous}{98}{\code {show-all-if-ambiguous}} \entry{show-all-if-unmodified}{98}{\code {show-all-if-unmodified}} \entry{visible-stats}{98}{\code {visible-stats}} diff --git a/doc/bashref.vrs b/doc/bashref.vrs index 7b81de19d..f0e57e795 100644 --- a/doc/bashref.vrs +++ b/doc/bashref.vrs @@ -1,9 +1,9 @@ \initial {!} -\entry {\code {!}}{16} +\entry {\code {!}}{17} \initial {#} \entry {\code {#}}{16} \initial {$} -\entry {\code {$}}{16} +\entry {\code {$}}{17} \initial {*} \entry {\code {*}}{16} \initial {-} @@ -13,9 +13,9 @@ \initial {@} \entry {\code {@}}{16} \initial {_} -\entry {\code {_}}{16} +\entry {\code {_}}{17} \initial {0} -\entry {\code {0}}{16} +\entry {\code {0}}{17} \initial {A} \entry {\code {auto_resume}}{90} \initial {B} @@ -45,6 +45,7 @@ \entry {\code {COMP_TYPE}}{61} \entry {\code {COMP_WORDBREAKS}}{62} \entry {\code {COMP_WORDS}}{62} +\entry {\code {completion-prefix-display-length}}{95} \entry {\code {completion-query-items}}{95} \entry {\code {COMPREPLY}}{62} \entry {\code {convert-meta}}{96} @@ -85,7 +86,7 @@ \entry {\code {IGNOREEOF}}{64} \entry {\code {input-meta}}{96} \entry {\code {INPUTRC}}{64} -\entry {\code {isearch-terminators}}{96} +\entry {\code {isearch-terminators}}{97} \initial {K} \entry {\code {keymap}}{97} \initial {L} @@ -128,12 +129,13 @@ \initial {R} \entry {\code {RANDOM}}{66} \entry {\code {REPLY}}{66} +\entry {\code {revert-all-at-newline}}{98} \initial {S} \entry {\code {SECONDS}}{66} \entry {\code {SHELL}}{66} \entry {\code {SHELLOPTS}}{66} \entry {\code {SHLVL}}{66} -\entry {\code {show-all-if-ambiguous}}{97} +\entry {\code {show-all-if-ambiguous}}{98} \entry {\code {show-all-if-unmodified}}{98} \initial {T} \entry {\code {TEXTDOMAIN}}{7} diff --git a/doc/builtins.0 b/doc/builtins.0 index afea1b2d3..43811d083 100644 --- a/doc/builtins.0 +++ b/doc/builtins.0 @@ -97,7 +97,13 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS Remove any current binding for _k_e_y_s_e_q. --xx _k_e_y_s_e_q::_s_h_e_l_l_-_c_o_m_m_a_n_d Cause _s_h_e_l_l_-_c_o_m_m_a_n_d to be executed whenever _k_e_y_s_e_q is - entered. + entered. When _s_h_e_l_l_-_c_o_m_m_a_n_d is executed, the shell sets + the RREEAADDLLIINNEE__LLIINNEE variable to the contents of the rreeaadd-- + lliinnee line buffer and the RREEAADDLLIINNEE__PPOOIINNTT variable to the + current location of the insertion point. If the executed + command changes the value of RREEAADDLLIINNEE__LLIINNEE or RREEAADD-- + LLIINNEE__PPOOIINNTT, those new values will be reflected in the + editing state. The return value is 0 unless an unrecognized option is given or an error occurred. @@ -106,8 +112,8 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS Exit from within a ffoorr, wwhhiillee, uunnttiill, or sseelleecctt loop. If _n is specified, break _n levels. _n must be >= 1. If _n is greater than the number of enclosing loops, all enclosing loops are - exited. The return value is 0 unless the shell is not executing - a loop when bbrreeaakk is executed. + exited. The return value is 0 unless _n is not greater than or + equal to 1. bbuuiillttiinn _s_h_e_l_l_-_b_u_i_l_t_i_n [_a_r_g_u_m_e_n_t_s] Execute the specified shell builtin, passing it _a_r_g_u_m_e_n_t_s, and @@ -117,6 +123,19 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS commonly redefined this way. The return status is false if _s_h_e_l_l_-_b_u_i_l_t_i_n is not a shell builtin command. + ccaalllleerr [_e_x_p_r] + Returns the context of any active subroutine call (a shell func- + tion or a script executed with the .. or ssoouurrccee builtins. With- + out _e_x_p_r, ccaalllleerr displays the line number and source filename of + the current subroutine call. If a non-negative integer is sup- + plied as _e_x_p_r, ccaalllleerr displays the line number, subroutine name, + and source file corresponding to that position in the current + execution call stack. This extra information may be used, for + example, to print a stack trace. The current frame is frame 0. + The return value is 0 unless the shell is not executing a sub- + routine call or _e_x_p_r does not correspond to a valid position in + the call stack. + ccdd [--LL||--PP] [_d_i_r] Change the current directory to _d_i_r. The variable HHOOMMEE is the default _d_i_r. The variable CCDDPPAATTHH defines the search path for @@ -134,19 +153,6 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS output. The return value is true if the directory was success- fully changed; false otherwise. - ccaalllleerr [_e_x_p_r] - Returns the context of any active subroutine call (a shell func- - tion or a script executed with the .. or ssoouurrccee builtins. With- - out _e_x_p_r, ccaalllleerr displays the line number and source filename of - the current subroutine call. If a non-negative integer is sup- - plied as _e_x_p_r, ccaalllleerr displays the line number, subroutine name, - and source file corresponding to that position in the current - execution call stack. This extra information may be used, for - example, to print a stack trace. The current frame is frame 0. - The return value is 0 unless the shell is not executing a sub- - routine call or _e_x_p_r does not correspond to a valid position in - the call stack. - ccoommmmaanndd [--ppVVvv] _c_o_m_m_a_n_d [_a_r_g ...] Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function lookup. Only builtin commands or commands found in the PPAATTHH are @@ -178,16 +184,18 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS The return value is true unless an invalid option is supplied, or no matches were generated. - ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_p_a_t] [--WW - _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] + ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--EE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_p_a_t] + [--WW _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] [--XX _f_i_l_t_e_r_p_a_t] [--PP _p_r_e_f_i_x] [--SS _s_u_f_f_i_x] _n_a_m_e [_n_a_m_e _._._.] - ccoommpplleettee --pprr [_n_a_m_e ...] + ccoommpplleettee --pprr [--EE] [_n_a_m_e ...] Specify how arguments to each _n_a_m_e should be completed. If the --pp option is supplied, or if no options are supplied, existing completion specifications are printed in a way that allows them to be reused as input. The --rr option removes a completion spec- ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- - pletion specifications. + pletion specifications. The --EE option indicates that the + remaining options and actions should apply to ``empty'' command + completion; that is, completion attempted on a blank line. The process of applying these completion specifications when word completion is attempted is described above under PPrroo-- @@ -319,8 +327,8 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS sseelleecctt loop. If _n is specified, resume at the _nth enclosing loop. _n must be >= 1. If _n is greater than the number of enclosing loops, the last enclosing loop (the ``top-level'' - loop) is resumed. The return value is 0 unless the shell is not - executing a loop when ccoonnttiinnuuee is executed. + loop) is resumed. The return value is 0 unless _n is not greater + than or equal to 1. ddeeccllaarree [--aaffFFiirrttxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] ttyyppeesseett [--aaffFFiirrttxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] @@ -601,13 +609,16 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS printed. The return status is true unless a _n_a_m_e is not found or an invalid option is supplied. - hheellpp [--ss] [_p_a_t_t_e_r_n] + hheellpp [--ddmmss] [_p_a_t_t_e_r_n] Display helpful information about builtin commands. If _p_a_t_t_e_r_n is specified, hheellpp gives detailed help on all commands matching _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control - structures is printed. The --ss option restricts the information - displayed to a short usage synopsis. The return status is 0 - unless no command matches _p_a_t_t_e_r_n. + structures is printed. + --dd Display a short description of each _p_a_t_t_e_r_n + --mm Display the description of each _p_a_t_t_e_r_n in a manpage-like + format + --ss Display only a short usage synopsis for each _p_a_t_t_e_r_n + The return status is 0 unless no command matches _p_a_t_t_e_r_n. hhiissttoorryy [[_n]] hhiissttoorryy --cc @@ -617,44 +628,44 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS hhiissttoorryy --ss _a_r_g [_a_r_g _._._.] With no options, display the command history list with line num- bers. Lines listed with a ** have been modified. An argument of - _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- - FFOORRMMAATT is set and not null, it is used as a format string for - _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- - played history entry. No intervening blank is printed between - the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is - supplied, it is used as the name of the history file; if not, - the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the + _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- + FFOORRMMAATT is set and not null, it is used as a format string for + _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- + played history entry. No intervening blank is printed between + the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is + supplied, it is used as the name of the history file; if not, + the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the following meanings: --cc Clear the history list by deleting all the entries. --dd _o_f_f_s_e_t Delete the history entry at position _o_f_f_s_e_t. - --aa Append the ``new'' history lines (history lines entered - since the beginning of the current bbaasshh session) to the + --aa Append the ``new'' history lines (history lines entered + since the beginning of the current bbaasshh session) to the history file. - --nn Read the history lines not already read from the history - file into the current history list. These are lines - appended to the history file since the beginning of the + --nn Read the history lines not already read from the history + file into the current history list. These are lines + appended to the history file since the beginning of the current bbaasshh session. --rr Read the contents of the history file and use them as the current history. - --ww Write the current history to the history file, overwrit- + --ww Write the current history to the history file, overwrit- ing the history file's contents. - --pp Perform history substitution on the following _a_r_g_s and - display the result on the standard output. Does not - store the results in the history list. Each _a_r_g must be + --pp Perform history substitution on the following _a_r_g_s and + display the result on the standard output. Does not + store the results in the history list. Each _a_r_g must be quoted to disable normal history expansion. - --ss Store the _a_r_g_s in the history list as a single entry. - The last command in the history list is removed before + --ss Store the _a_r_g_s in the history list as a single entry. + The last command in the history list is removed before the _a_r_g_s are added. If the HHIISSTTTTIIMMEEFFOORRMMAATT is set, the time stamp information associ- - ated with each history entry is written to the history file, - marked with the history comment character. When the history + ated with each history entry is written to the history file, + marked with the history comment character. When the history file is read, lines beginning with the history comment character - followed immediately by a digit are interpreted as timestamps - for the previous history line. The return value is 0 unless an - invalid option is encountered, an error occurs while reading or - writing the history file, an invalid _o_f_f_s_e_t is supplied as an + followed immediately by a digit are interpreted as timestamps + for the previous history line. The return value is 0 unless an + invalid option is encountered, an error occurs while reading or + writing the history file, an invalid _o_f_f_s_e_t is supplied as an argument to --dd, or the history expansion supplied as an argument to --pp fails. @@ -663,54 +674,81 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS The first form lists the active jobs. The options have the fol- lowing meanings: --ll List process IDs in addition to the normal information. - --pp List only the process ID of the job's process group + --pp List only the process ID of the job's process group leader. - --nn Display information only about jobs that have changed - status since the user was last notified of their status. + --nn Display information only about jobs that have changed + status since the user was last notified of their status. --rr Restrict output to running jobs. --ss Restrict output to stopped jobs. - If _j_o_b_s_p_e_c is given, output is restricted to information about - that job. The return status is 0 unless an invalid option is + If _j_o_b_s_p_e_c is given, output is restricted to information about + that job. The return status is 0 unless an invalid option is encountered or an invalid _j_o_b_s_p_e_c is supplied. If the --xx option is supplied, jjoobbss replaces any _j_o_b_s_p_e_c found in - _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and + _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and executes _c_o_m_m_a_n_d passing it _a_r_g_s, returning its exit status. kkiillll [--ss _s_i_g_s_p_e_c | --nn _s_i_g_n_u_m | --_s_i_g_s_p_e_c] [_p_i_d | _j_o_b_s_p_e_c] ... kkiillll --ll [_s_i_g_s_p_e_c | _e_x_i_t___s_t_a_t_u_s] - Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes - named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive - signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or - a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not - present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the - signal names. If any arguments are supplied when --ll is given, - the names of the signals corresponding to the arguments are + Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes + named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive + signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or + a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not + present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the + signal names. If any arguments are supplied when --ll is given, + the names of the signals corresponding to the arguments are listed, and the return status is 0. The _e_x_i_t___s_t_a_t_u_s argument to - --ll is a number specifying either a signal number or the exit - status of a process terminated by a signal. kkiillll returns true - if at least one signal was successfully sent, or false if an + --ll is a number specifying either a signal number or the exit + status of a process terminated by a signal. kkiillll returns true + if at least one signal was successfully sent, or false if an error occurs or an invalid option is encountered. lleett _a_r_g [_a_r_g ...] Each _a_r_g is an arithmetic expression to be evaluated (see AARRIITTHH-- - MMEETTIICC EEVVAALLUUAATTIIOONN). If the last _a_r_g evaluates to 0, lleett returns + MMEETTIICC EEVVAALLUUAATTIIOONN). If the last _a_r_g evaluates to 0, lleett returns 1; 0 is returned otherwise. llooccaall [_o_p_t_i_o_n] [_n_a_m_e[=_v_a_l_u_e] ...] - For each argument, a local variable named _n_a_m_e is created, and - assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted + For each argument, a local variable named _n_a_m_e is created, and + assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted by ddeeccllaarree. When llooccaall is used within a function, it causes the - variable _n_a_m_e to have a visible scope restricted to that func- + variable _n_a_m_e to have a visible scope restricted to that func- tion and its children. With no operands, llooccaall writes a list of - local variables to the standard output. It is an error to use + local variables to the standard output. It is an error to use llooccaall when not within a function. The return status is 0 unless - llooccaall is used outside a function, an invalid _n_a_m_e is supplied, + llooccaall is used outside a function, an invalid _n_a_m_e is supplied, or _n_a_m_e is a readonly variable. llooggoouutt Exit a login shell. + mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u + nt_] _[--tt_] _[--uu _f_d_] _[--CC _c_a_l_l_b_a_c_k_] _[--cc _I_q_u_a_n_t_u_m]] [[_a_r_r_a_y]] RReeaadd lliinneess + ffrroomm tthhee ssttaannddaarrdd iinnppuutt iinnttoo aarrrraayy vvaarriiaabbllee _a_r_r_a_y, or from file + descriptor _f_d if the --uu option is supplied. The variable MMAAPP-- + FFIILLEE is the default _a_r_r_a_y. Options, if supplied, have the fol- + lowing meanings: + --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are + copied. + --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default + index is 0. + --ss Discard the first _c_o_u_n_t lines read. + --tt Remove a trailing line from each line read. + --uu Read lines from file descriptor _f_d instead of the stan- + dard input. + --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The + --cc option specifies _q_u_a_n_t_u_m. + --cc Specify the number of lines read between each call to + _c_a_l_l_b_a_c_k. + + If --CC is specified without --cc, the default quantum is 5000. + + If not supplied with an explicit origin, mmaappffiillee will clear + _a_r_r_a_y before assigning to it. + + mmaappffiillee returns successfully unless an invalid option or option + argument is supplied, or _a_r_r_a_y is invalid or unassignable. + ppooppdd [-nn] [+_n] [-_n] Removes entries from the directory stack. With no arguments, removes the top directory from the stack, and performs a ccdd to @@ -833,9 +871,10 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS ters are not echoed. --tt _t_i_m_e_o_u_t Cause rreeaadd to time out and return failure if a complete - line of input is not read within _t_i_m_e_o_u_t seconds. This - option has no effect if rreeaadd is not reading input from - the terminal or a pipe. + line of input is not read within _t_i_m_e_o_u_t seconds. _t_i_m_e_- + _o_u_t may be a decimal number with a fractional portion + following the decimal point. This option has no effect + if rreeaadd is not reading input from the terminal or a pipe. --uu _f_d Read input from file descriptor _f_d. If no _n_a_m_e_s are supplied, the line read is assigned to the vari- @@ -1104,6 +1143,10 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS If set, bbaasshh changes its behavior to that of version 3.1 with respect to quoted arguments to the conditional com- mand's =~ operator. + ddiirrssppeellll + If set, bbaasshh attempts spelling correction on directory + names during word completion if the directory name ini- + tially supplied does not exist. ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in the results of pathname expansion. eexxeeccffaaiill @@ -1153,62 +1196,67 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS ble completions. See SSHHEELLLL VVAARRIIAABBLLEESS above for a description of FFIIGGNNOORREE. This option is enabled by default. + gglloobbssttaarr + If set, the pattern **** used in a filename expansion con- + text will match a files and zero or more directories and + subdirectories. If the pattern is followed by a //, only + directories and subdirectories match. ggnnuu__eerrrrffmmtt If set, shell error messages are written in the standard GNU error message format. hhiissttaappppeenndd - If set, the history list is appended to the file named - by the value of the HHIISSTTFFIILLEE variable when the shell + If set, the history list is appended to the file named + by the value of the HHIISSTTFFIILLEE variable when the shell exits, rather than overwriting the file. hhiissttrreeeeddiitt - If set, and rreeaaddlliinnee is being used, a user is given the + If set, and rreeaaddlliinnee is being used, a user is given the opportunity to re-edit a failed history substitution. hhiissttvveerriiffyy - If set, and rreeaaddlliinnee is being used, the results of his- - tory substitution are not immediately passed to the - shell parser. Instead, the resulting line is loaded + If set, and rreeaaddlliinnee is being used, the results of his- + tory substitution are not immediately passed to the + shell parser. Instead, the resulting line is loaded into the rreeaaddlliinnee editing buffer, allowing further modi- fication. hhoossttccoommpplleettee If set, and rreeaaddlliinnee is being used, bbaasshh will attempt to - perform hostname completion when a word containing a @@ - is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE + perform hostname completion when a word containing a @@ + is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE above). This is enabled by default. hhuuppoonneexxiitt If set, bbaasshh will send SSIIGGHHUUPP to all jobs when an inter- active login shell exits. iinntteerraaccttiivvee__ccoommmmeennttss If set, allow a word beginning with ## to cause that word - and all remaining characters on that line to be ignored - in an interactive shell (see CCOOMMMMEENNTTSS above). This + and all remaining characters on that line to be ignored + in an interactive shell (see CCOOMMMMEENNTTSS above). This option is enabled by default. - lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line + lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line commands are saved to the history with embedded newlines rather than using semicolon separators where possible. llooggiinn__sshheellll - The shell sets this option if it is started as a login - shell (see IINNVVOOCCAATTIIOONN above). The value may not be + The shell sets this option if it is started as a login + shell (see IINNVVOOCCAATTIIOONN above). The value may not be changed. mmaaiillwwaarrnn - If set, and a file that bbaasshh is checking for mail has - been accessed since the last time it was checked, the - message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- + If set, and a file that bbaasshh is checking for mail has + been accessed since the last time it was checked, the + message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- played. nnoo__eemmppttyy__ccmmdd__ccoommpplleettiioonn - If set, and rreeaaddlliinnee is being used, bbaasshh will not + If set, and rreeaaddlliinnee is being used, bbaasshh will not attempt to search the PPAATTHH for possible completions when completion is attempted on an empty line. nnooccaasseegglloobb - If set, bbaasshh matches filenames in a case-insensitive + If set, bbaasshh matches filenames in a case-insensitive fashion when performing pathname expansion (see PPaatthhnnaammee EExxppaannssiioonn above). nnooccaasseemmaattcchh - If set, bbaasshh matches patterns in a case-insensitive + If set, bbaasshh matches patterns in a case-insensitive fashion when performing matching while executing ccaassee or [[[[ conditional commands. nnuullllgglloobb - If set, bbaasshh allows patterns which match no files (see - PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, + If set, bbaasshh allows patterns which match no files (see + PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, rather than themselves. pprrooggccoommpp If set, the programmable completion facilities (see PPrroo-- @@ -1216,47 +1264,47 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS enabled by default. pprroommppttvvaarrss If set, prompt strings undergo parameter expansion, com- - mand substitution, arithmetic expansion, and quote - removal after being expanded as described in PPRROOMMPPTTIINNGG + mand substitution, arithmetic expansion, and quote + removal after being expanded as described in PPRROOMMPPTTIINNGG above. This option is enabled by default. rreessttrriicctteedd__sshheellll - The shell sets this option if it is started in + The shell sets this option if it is started in restricted mode (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). The value - may not be changed. This is not reset when the startup - files are executed, allowing the startup files to dis- + may not be changed. This is not reset when the startup + files are executed, allowing the startup files to dis- cover whether or not a shell is restricted. sshhiifftt__vveerrbboossee - If set, the sshhiifftt builtin prints an error message when + If set, the sshhiifftt builtin prints an error message when the shift count exceeds the number of positional parame- ters. ssoouurrcceeppaatthh If set, the ssoouurrccee (..) builtin uses the value of PPAATTHH to - find the directory containing the file supplied as an + find the directory containing the file supplied as an argument. This option is enabled by default. xxppgg__eecchhoo - If set, the eecchhoo builtin expands backslash-escape + If set, the eecchhoo builtin expands backslash-escape sequences by default. ssuussppeenndd [--ff] - Suspend the execution of this shell until it receives a SSIIGGCCOONNTT - signal. The --ff option says not to complain if this is a login - shell; just suspend anyway. The return status is 0 unless the + Suspend the execution of this shell until it receives a SSIIGGCCOONNTT + signal. The --ff option says not to complain if this is a login + shell; just suspend anyway. The return status is 0 unless the shell is a login shell and --ff is not supplied, or if job control is not enabled. tteesstt _e_x_p_r [[ _e_x_p_r ]] - Return a status of 0 or 1 depending on the evaluation of the - conditional expression _e_x_p_r. Each operator and operand must be - a separate argument. Expressions are composed of the primaries - described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. tteesstt does not + Return a status of 0 or 1 depending on the evaluation of the + conditional expression _e_x_p_r. Each operator and operand must be + a separate argument. Expressions are composed of the primaries + described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. tteesstt does not accept any options, nor does it accept and ignore an argument of ---- as signifying the end of options. - Expressions may be combined using the following operators, + Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation depends on the number of arguments; see below. !! _e_x_p_r True if _e_x_p_r is false. (( _e_x_p_r )) - Returns the value of _e_x_p_r. This may be used to override + Returns the value of _e_x_p_r. This may be used to override the normal precedence of operators. _e_x_p_r_1 -aa _e_x_p_r_2 True if both _e_x_p_r_1 and _e_x_p_r_2 are true. @@ -1273,108 +1321,108 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS null. 2 arguments If the first argument is !!, the expression is true if and - only if the second argument is null. If the first argu- - ment is one of the unary conditional operators listed - above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is + only if the second argument is null. If the first argu- + ment is one of the unary conditional operators listed + above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is true if the unary test is true. If the first argument is not a valid unary conditional operator, the expression is false. 3 arguments - If the second argument is one of the binary conditional + If the second argument is one of the binary conditional operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the result of the expression is the result of the binary test - using the first and third arguments as operands. The --aa - and --oo operators are considered binary operators when - there are three arguments. If the first argument is !!, - the value is the negation of the two-argument test using + using the first and third arguments as operands. The --aa + and --oo operators are considered binary operators when + there are three arguments. If the first argument is !!, + the value is the negation of the two-argument test using the second and third arguments. If the first argument is exactly (( and the third argument is exactly )), the result - is the one-argument test of the second argument. Other- + is the one-argument test of the second argument. Other- wise, the expression is false. 4 arguments If the first argument is !!, the result is the negation of - the three-argument expression composed of the remaining + the three-argument expression composed of the remaining arguments. Otherwise, the expression is parsed and eval- - uated according to precedence using the rules listed + uated according to precedence using the rules listed above. 5 or more arguments - The expression is parsed and evaluated according to + The expression is parsed and evaluated according to precedence using the rules listed above. - ttiimmeess Print the accumulated user and system times for the shell and + ttiimmeess Print the accumulated user and system times for the shell and for processes run from the shell. The return status is 0. ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...] - The command _a_r_g is to be read and executed when the shell - receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a - single _s_i_g_s_p_e_c) or --, each specified signal is reset to its - original disposition (the value it had upon entrance to the - shell). If _a_r_g is the null string the signal specified by each - _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. - If _a_r_g is not present and --pp has been supplied, then the trap - commands associated with each _s_i_g_s_p_e_c are displayed. If no - arguments are supplied or if only --pp is given, ttrraapp prints the - list of commands associated with each signal. The --ll option - causes the shell to print a list of signal names and their cor- - responding numbers. Each _s_i_g_s_p_e_c is either a signal name - defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are - case insensitive and the SIG prefix is optional. If a _s_i_g_s_p_e_c - is EEXXIITT (0) the command _a_r_g is executed on exit from the shell. - If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is executed before every + The command _a_r_g is to be read and executed when the shell + receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a + single _s_i_g_s_p_e_c) or --, each specified signal is reset to its + original disposition (the value it had upon entrance to the + shell). If _a_r_g is the null string the signal specified by each + _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. + If _a_r_g is not present and --pp has been supplied, then the trap + commands associated with each _s_i_g_s_p_e_c are displayed. If no + arguments are supplied or if only --pp is given, ttrraapp prints the + list of commands associated with each signal. The --ll option + causes the shell to print a list of signal names and their cor- + responding numbers. Each _s_i_g_s_p_e_c is either a signal name + defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are + case insensitive and the SIG prefix is optional. If a _s_i_g_s_p_e_c + is EEXXIITT (0) the command _a_r_g is executed on exit from the shell. + If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is executed before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command, _s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the first command executes in - a shell function (see SSHHEELLLL GGRRAAMMMMAARR above). Refer to the - description of the eexxttddeebbuugg option to the sshhoopptt builtin for - details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is EERRRR, - the command _a_r_g is executed whenever a simple command has a - non-zero exit status, subject to the following conditions. The - EERRRR trap is not executed if the failed command is part of the - command list immediately following a wwhhiillee or uunnttiill keyword, - part of the test in an _i_f statement, part of a command executed - in a &&&& or |||| list, or if the command's return value is being - inverted via !!. These are the same conditions obeyed by the + a shell function (see SSHHEELLLL GGRRAAMMMMAARR above). Refer to the + description of the eexxttddeebbuugg option to the sshhoopptt builtin for + details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is EERRRR, + the command _a_r_g is executed whenever a simple command has a + non-zero exit status, subject to the following conditions. The + EERRRR trap is not executed if the failed command is part of the + command list immediately following a wwhhiillee or uunnttiill keyword, + part of the test in an _i_f statement, part of a command executed + in a &&&& or |||| list, or if the command's return value is being + inverted via !!. These are the same conditions obeyed by the eerrrreexxiitt option. If a _s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is exe- cuted each time a shell function or a script executed with the .. - or ssoouurrccee builtins finishes executing. Signals ignored upon - entry to the shell cannot be trapped or reset. Trapped signals + or ssoouurrccee builtins finishes executing. Signals ignored upon + entry to the shell cannot be trapped or reset. Trapped signals that are not being ignored are reset to their original values in - a child process when it is created. The return status is false + a child process when it is created. The return status is false if any _s_i_g_s_p_e_c is invalid; otherwise ttrraapp returns true. ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...] - With no options, indicate how each _n_a_m_e would be interpreted if + With no options, indicate how each _n_a_m_e would be interpreted if used as a command name. If the --tt option is used, ttyyppee prints a - string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or - _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, - builtin, or disk file, respectively. If the _n_a_m_e is not found, - then nothing is printed, and an exit status of false is - returned. If the --pp option is used, ttyyppee either returns the + string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or + _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, + builtin, or disk file, respectively. If the _n_a_m_e is not found, + then nothing is printed, and an exit status of false is + returned. If the --pp option is used, ttyyppee either returns the name of the disk file that would be executed if _n_a_m_e were speci- fied as a command name, or nothing if ``type -t name'' would not - return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, + return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, even if ``type -t name'' would not return _f_i_l_e. If a command is - hashed, --pp and --PP print the hashed value, not necessarily the + hashed, --pp and --PP print the hashed value, not necessarily the file that appears first in PPAATTHH. If the --aa option is used, ttyyppee - prints all of the places that contain an executable named _n_a_m_e. - This includes aliases and functions, if and only if the --pp - option is not also used. The table of hashed commands is not - consulted when using --aa. The --ff option suppresses shell func- - tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if - any of the arguments are found, false if none are found. + prints all of the places that contain an executable named _n_a_m_e. + This includes aliases and functions, if and only if the --pp + option is not also used. The table of hashed commands is not + consulted when using --aa. The --ff option suppresses shell func- + tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if + all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSTTaabbccddeeffiillmmnnppqqrrssttuuvvxx [_l_i_m_i_t]] - Provides control over the resources available to the shell and - to processes started by it, on systems that allow such control. + Provides control over the resources available to the shell and + to processes started by it, on systems that allow such control. The --HH and --SS options specify that the hard or soft limit is set - for the given resource. A hard limit cannot be increased by a - non-root user once it is set; a soft limit may be increased up - to the value of the hard limit. If neither --HH nor --SS is speci- + for the given resource. A hard limit cannot be increased by a + non-root user once it is set; a soft limit may be increased up + to the value of the hard limit. If neither --HH nor --SS is speci- fied, both the soft and hard limits are set. The value of _l_i_m_i_t can be a number in the unit specified for the resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd, which stand for the - current hard limit, the current soft limit, and no limit, - respectively. If _l_i_m_i_t is omitted, the current value of the - soft limit of the resource is printed, unless the --HH option is + current hard limit, the current soft limit, and no limit, + respectively. If _l_i_m_i_t is omitted, the current value of the + soft limit of the resource is printed, unless the --HH option is given. When more than one resource is specified, the limit name and unit are printed before the value. Other options are inter- preted as follows: @@ -1383,7 +1431,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS --cc The maximum size of core files created --dd The maximum size of a process's data segment --ee The maximum scheduling priority ("nice") - --ff The maximum size of files written by the shell and its + --ff The maximum size of files written by the shell and its children --ii The maximum number of pending signals --ll The maximum size that may be locked into memory @@ -1395,58 +1443,58 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS --rr The maximum real-time scheduling priority --ss The maximum stack size --tt The maximum amount of cpu time in seconds - --uu The maximum number of processes available to a single + --uu The maximum number of processes available to a single user - --vv The maximum amount of virtual memory available to the + --vv The maximum amount of virtual memory available to the shell --xx The maximum number of file locks --TT The maximum number of threads If _l_i_m_i_t is given, it is the new value of the specified resource (the --aa option is display only). If no option is given, then --ff - is assumed. Values are in 1024-byte increments, except for --tt, - which is in seconds, --pp, which is in units of 512-byte blocks, - and --TT, --bb, --nn, and --uu, which are unscaled values. The return + is assumed. Values are in 1024-byte increments, except for --tt, + which is in seconds, --pp, which is in units of 512-byte blocks, + and --TT, --bb, --nn, and --uu, which are unscaled values. The return status is 0 unless an invalid option or argument is supplied, or an error occurs while setting a new limit. uummaasskk [--pp] [--SS] [_m_o_d_e] The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with - a digit, it is interpreted as an octal number; otherwise it is - interpreted as a symbolic mode mask similar to that accepted by - _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is - printed. The --SS option causes the mask to be printed in sym- - bolic form; the default output is an octal number. If the --pp + a digit, it is interpreted as an octal number; otherwise it is + interpreted as a symbolic mode mask similar to that accepted by + _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is + printed. The --SS option causes the mask to be printed in sym- + bolic form; the default output is an octal number. If the --pp option is supplied, and _m_o_d_e is omitted, the output is in a form that may be reused as input. The return status is 0 if the mode - was successfully changed or if no _m_o_d_e argument was supplied, + was successfully changed or if no _m_o_d_e argument was supplied, and false otherwise. uunnaalliiaass [-aa] [_n_a_m_e ...] - Remove each _n_a_m_e from the list of defined aliases. If --aa is - supplied, all alias definitions are removed. The return value + Remove each _n_a_m_e from the list of defined aliases. If --aa is + supplied, all alias definitions are removed. The return value is true unless a supplied _n_a_m_e is not a defined alias. uunnsseett [-ffvv] [_n_a_m_e ...] - For each _n_a_m_e, remove the corresponding variable or function. + For each _n_a_m_e, remove the corresponding variable or function. If no options are supplied, or the --vv option is given, each _n_a_m_e - refers to a shell variable. Read-only variables may not be - unset. If --ff is specified, each _n_a_m_e refers to a shell func- - tion, and the function definition is removed. Each unset vari- - able or function is removed from the environment passed to sub- - sequent commands. If any of RRAANNDDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, + refers to a shell variable. Read-only variables may not be + unset. If --ff is specified, each _n_a_m_e refers to a shell func- + tion, and the function definition is removed. Each unset vari- + able or function is removed from the environment passed to sub- + sequent commands. If any of RRAANNDDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they lose their special - properties, even if they are subsequently reset. The exit sta- + properties, even if they are subsequently reset. The exit sta- tus is true unless a _n_a_m_e is readonly. wwaaiitt [_n _._._.] - Wait for each specified process and return its termination sta- - tus. Each _n may be a process ID or a job specification; if a - job spec is given, all processes in that job's pipeline are - waited for. If _n is not given, all currently active child pro- - cesses are waited for, and the return status is zero. If _n - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + Wait for each specified process and return its termination sta- + tus. Each _n may be a process ID or a job specification; if a + job spec is given, all processes in that job's pipeline are + waited for. If _n is not given, all currently active child pro- + cesses are waited for, and the return status is zero. If _n + specifies a non-existent process or job, the return status is + 127. Otherwise, the return status is the exit status of the last process or job waited for. SSEEEE AALLSSOO diff --git a/doc/builtins.ps b/doc/builtins.ps index 68c90399d..b3aa48cd7 100644 --- a/doc/builtins.ps +++ b/doc/builtins.ps @@ -1,13 +1,13 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.19.2 -%%CreationDate: Tue Apr 8 09:14:15 2008 +%%CreationDate: Thu May 29 11:48:42 2008 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%+ font Symbol %%+ font Courier %%DocumentSuppliedResources: procset grops 1.19 2 -%%Pages: 19 +%%Pages: 20 %%PageOrder: Ascend %%DocumentMedia: Default 595 842 0 () () %%Orientation: Portrait @@ -387,103 +387,95 @@ H(he named).1 E F2(function)2.5 E F0(.)A F1144 216 Q F2(function) -.1(ke)2.5 G(yseq)-.2 E F0(Remo)180 252 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 F1144 264 Q F2 -.1(ke)2.5 G(yseq)-.2 E F1(:)A F2(shell\255command) -A F0(Cause)180 276 Q F2(shell\255command)2.5 E F0(to be e)2.5 E -.15(xe) --.15 G(cuted whene).15 E -.15(ve)-.25 G(r).15 E F2 -.1(ke)2.5 G(yseq)-.2 -E F0(is entered.)2.5 E(The return v)144 292.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 -309.6 Q(eak)-.18 E F0([)2.5 E F2(n)A F0(])A .054(Exit from within a)144 -321.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/F3 10/Symbol SF2.555 E F0(1.)2.555 E(If)144 333.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 the shell is not e)144 345.6 Q -.15(xe) --.15 G(cuting a loop when).15 E F1(br)2.5 E(eak)-.18 E F0(is e)2.5 E --.15(xe)-.15 G(cuted.).15 E F1 -.2(bu)108 362.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 374.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 +A F0(Cause)180 276 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 288 Q F0 1.113(is e)3.614 F -.15(xe)-.15 +G 1.113(cuted, the shell sets the).15 F F1(READLINE_LINE)3.613 E F0 -.25 +(va)3.613 G 1.113(riable to the contents of the).25 F F1 -.18(re)180 300 +S(adline).18 E F0 .586(line b)3.086 F(uf)-.2 E .586(fer and the)-.25 F +F1(READLINE_POINT)3.087 E F0 -.25(va)3.087 G .587 +(riable to the current location of the).25 F 1.241(insertion point.)180 +312 R 1.241(If the e)6.241 F -.15(xe)-.15 G 1.241 +(cuted command changes the v).15 F 1.241(alue of)-.25 F F1 +(READLINE_LINE)3.741 E F0(or)3.74 E F1(READLINE_POINT)180 324 Q F0 2.5 +(,t)C(hose ne)-2.5 E 2.5(wv)-.25 G +(alues will be re\215ected in the editing state.)-2.75 E(The return v) +144 340.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 357.6 Q(eak)-.18 E F0([)2.5 E F2(n)A F0(])A .054 +(Exit from within a)144 369.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/F3 10/Symbol SF2.555 +E F0(1.)2.555 E(If)144 381.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 +393.6 Q F2(n)2.5 E F0(is not greater than or equal to 1.)2.5 E F1 -.2 +(bu)108 410.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 422.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 -386.4 R .615(uiltin, retaining the functionality of)-.2 F .57(the b)144 -398.4 R .57(uiltin within the function.)-.2 F(The)5.57 E F1(cd)3.07 E F0 +434.4 R .615(uiltin, retaining the functionality of)-.2 F .57(the b)144 +446.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 410.4 Q(alse if)-.1 +5.57(.T)-.65 G .57(he return status)-5.57 F(is f)144 458.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(cd)108 427.2 Q F0([)2.5 E F1(\255L|-P)A F0 2.5 -(][)C F2(dir)-2.5 E F0(])A .21(Change the current directory to)144 439.2 -R F2(dir)2.71 E F0 5.21(.T)C .21(he v)-5.21 F(ariable)-.25 E/F4 9 -/Times-Bold@0 SF(HOME)2.71 E F0 .21(is the def)2.46 F(ault)-.1 E F2(dir) -2.71 E F0 5.21(.T).73 G .21(he v)-5.21 F(ariable)-.25 E F4(CDP)2.71 E --.855(AT)-.666 G(H).855 E F0 .776 -(de\214nes the search path for the directory containing)144 451.2 R F2 +(uiltin command.)-.2 E F1(caller)108 475.2 Q F0([)2.5 E F2 -.2(ex)C(pr) +.2 E F0(])A .254(Returns the conte)144 487.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 499.2 Q +(ce)-.18 E F0 -.2(bu)3.062 G 3.062(iltins. W).2 F(ithout)-.4 E F2 -.2 +(ex)3.062 G(pr).2 E F0(,)A F1(caller)3.062 E F0 .562 +(displays the line number and source \214lename of the current)3.062 F +.254(subroutine call.)144 511.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 523.2 R -.15(xe)-.15 G 1.328(cution call stack.).15 F .001 +(This e)144 535.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 547.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 559.2 Q +(alid position in the call stack.)-.25 E F1(cd)108 576 Q F0([)2.5 E F1 +(\255L|-P)A F0 2.5(][)C F2(dir)-2.5 E F0(])A .21 +(Change the current directory to)144 588 R F2(dir)2.71 E F0 5.21(.T)C +.21(he v)-5.21 F(ariable)-.25 E/F4 9/Times-Bold@0 SF(HOME)2.71 E F0 .21 +(is the def)2.46 F(ault)-.1 E F2(dir)2.71 E F0 5.21(.T).73 G .21(he v) +-5.21 F(ariable)-.25 E F4(CDP)2.71 E -.855(AT)-.666 G(H).855 E F0 .776 +(de\214nes the search path for the directory containing)144 600 R F2 (dir)3.276 E F0 5.777(.A).73 G(lternati)-5.777 E 1.077 -.15(ve d)-.25 H .777(irectory names in).15 F F4(CDP)3.277 E -.855(AT)-.666 G(H).855 E F0 -.764(are separated by a colon \(:\).)144 463.2 R 3.264(An)5.764 G .764 +.764(are separated by a colon \(:\).)144 612 R 3.264(An)5.764 G .764 (ull directory name in)-3.264 F F4(CDP)3.264 E -.855(AT)-.666 G(H).855 E -F0 .764(is the same as the current direc-)3.014 F(tory)144 475.2 Q 2.973 +F0 .764(is the same as the current direc-)3.014 F(tory)144 624 Q 2.973 (,i)-.65 G .473(.e., `)-2.973 F(`)-.74 E F1(.)A F0 -.74('')C 5.473(.I) .74 G(f)-5.473 E F2(dir)3.323 E F0(be)3.703 E .474 (gins with a slash \(/\), then)-.15 F F4(CDP)2.974 E -.855(AT)-.666 G(H) .855 E F0 .474(is not used. The)2.724 F F12.974 E F0 .474 -(option says to use)2.974 F .58(the ph)144 487.2 R .58 +(option says to use)2.974 F .58(the ph)144 636 R .58 (ysical directory structure instead of follo)-.05 F .579 (wing symbolic links \(see also the)-.25 F F13.079 E F0 .579 -(option to the)3.079 F F1(set)144 499.2 Q F0 -.2(bu)3.383 G .883 +(option to the)3.079 F F1(set)144 648 Q F0 -.2(bu)3.383 G .883 (iltin command\); the).2 F F13.383 E F0 .884 (option forces symbolic links to be follo)3.384 F 3.384(wed. An)-.25 F (ar)3.384 E .884(gument of)-.18 F F13.384 E F0(is)3.384 E(equi)144 -511.2 Q -.25(va)-.25 G .063(lent to).25 F F4($OLDPWD)2.563 E/F5 9 +660 Q -.25(va)-.25 G .063(lent to).25 F F4($OLDPWD)2.563 E/F5 9 /Times-Roman@0 SF(.)A F0 .063(If a non-empty directory name from)4.563 F F1(CDP)2.562 E -.95(AT)-.74 G(H).95 E F0 .062(is used, or if)2.562 F F1 -2.562 E F0 .062(is the \214rst)2.562 F(ar)144 523.2 Q .116(gument, \ -and the directory change is successful, the absolute pathname of the ne) +2.562 E F0 .062(is the \214rst)2.562 F(ar)144 672 Q .116(gument, an\ +d the directory change is successful, the absolute pathname of the ne) -.18 F 2.616(ww)-.25 G .116(orking direc-)-2.716 F 1.165 -(tory is written to the standard output.)144 535.2 R 1.164(The return v) +(tory is written to the standard output.)144 684 R 1.164(The return v) 6.164 F 1.164(alue is true if the directory w)-.25 F 1.164 -(as successfully)-.1 F(changed; f)144 547.2 Q(alse otherwise.)-.1 E F1 -(caller)108 564 Q F0([)2.5 E F2 -.2(ex)C(pr).2 E F0(])A .253 -(Returns the conte)144 576 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.754 E F0(or)2.754 E F1(sour)144 588 Q -(ce)-.18 E F0 -.2(bu)3.063 G 3.063(iltins. W).2 F(ithout)-.4 E F2 -.2 -(ex)3.062 G(pr).2 E F0(,)A F1(caller)3.062 E F0 .562 -(displays the line number and source \214lename of the current)3.062 F -.253(subroutine call.)144 600 R .253(If a non-ne)5.253 F -.05(ga)-.15 G -(ti).05 E .553 -.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 .254 -(displays the line number)2.754 F 2.754(,s)-.4 G(ub-)-2.754 E 1.327(rou\ -tine name, and source \214le corresponding to that position in the curr\ -ent e)144 612 R -.15(xe)-.15 G 1.327(cution call stack.).15 F(This e)144 -624 Q(xtra information may be used, for e)-.15 E .001 -(xample, to print a stack trace.)-.15 F .001(The current frame is frame) -5.001 F 3.02(0. The)144 636 R .52(return v)3.02 F .52 -(alue is 0 unless the shell is not e)-.25 F -.15(xe)-.15 G .519 -(cuting a subroutine call or).15 F F2 -.2(ex)3.019 G(pr).2 E F0 .519 -(does not corre-)3.019 F(spond to a v)144 648 Q -(alid position in the call stack.)-.25 E F1(command)108 664.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 676.8 Q F2(command)2.956 E F0(with)3.527 E F2(ar) -3.087 E(gs)-.37 E F0 .257 -(suppressing the normal shell function lookup. Only b)3.027 F .257 -(uiltin commands or)-.2 F .502(commands found in the)144 688.8 R F4 --.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 F13.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 .231(performed using a def)144 700.8 R .231(ault v)-.1 F .231 -(alue for)-.25 F F1 -.74(PA)2.731 G(TH)-.21 E F0 .231 -(that is guaranteed to \214nd all of the standard utilities.)2.731 F(If) -5.232 E .175(either the)144 712.8 R F12.675 E F0(or)2.675 E F1 -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 F12.674 E -F0 .174(option causes)2.674 F 3.11(as)144 724.8 S .61(ingle w)-3.11 F -.61(ord indicating the command or \214le name used to in)-.1 F -.2(vo) --.4 G -.1(ke).2 G F2(command)3.41 E F0 .61(to be displayed; the)3.88 F +(as successfully)-.1 F(changed; f)144 696 Q(alse otherwise.)-.1 E (GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(2)203.725 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup @@ -491,1966 +483,2038 @@ 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 SF144 84 Q F0 .25(option produces a more v)2.75 F -.25(erbose description.)-.15 F .249(If the)5.25 F F12.749 E F0(or) +/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 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 F13.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 .231(performed using a def)144 120 R .231 +(ault v)-.1 F .231(alue for)-.25 F F1 -.74(PA)2.731 G(TH)-.21 E F0 .231 +(that is guaranteed to \214nd all of the standard utilities.)2.731 F(If) +5.232 E .175(either the)144 132 R F12.675 E F0(or)2.675 E F1 +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 F12.674 E F0 .174 +(option causes)2.674 F 3.11(as)144 144 S .61(ingle w)-3.11 F .61 +(ord indicating the command or \214le name used to in)-.1 F -.2(vo)-.4 G +-.1(ke).2 G F2(command)3.41 E F0 .61(to be displayed; the)3.88 F F1 +144 156 Q F0 .25(option produces a more v)2.75 F .25 +(erbose description.)-.15 F .249(If the)5.25 F F12.749 E F0(or) 2.749 E F12.749 E F0 .249(option is supplied, the e)2.749 F .249 -(xit status)-.15 F 1.004(is 0 if)144 96 R/F2 10/Times-Italic@0 SF -(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 108 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 120 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 136.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 148.8 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 160.8 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 F13.481 E F0(and) 3.481 E F13.481 E F0 3.481(,a)C .981(nd write the matches to the) --3.481 F 1.415(standard output.)144 172.8 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 F13.915 E F0(or)3.915 E F13.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 184.8 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 208.8 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 -220.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 232.8 Q F2(wor)2.5 E(d)-.37 E F0 -(will be displayed.)2.5 E(The return v)144 256.8 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 273.6 Q F0([)3.265 E F1(\255abcdefgjksuv)A F0 3.265(][)C -F1-3.265 E F2(comp-option)3.265 E F0 3.265(][)C F1-3.265 E -F2(action)3.265 E F0 3.265(][)C F1-3.265 E F2(globpat)3.265 E F0 -3.265(][)C F1-3.265 E F2(wor)3.265 E(dlist)-.37 E F0 3.265(][)C F1 --3.265 E F2(function)3.265 E F0 3.265(][)C F1-3.265 E F2 -(command)108 285.6 Q F0(])A([)144 297.6 Q F1A F2(\214lterpat)2.5 E -F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(e\214x)-.37 E F0 2.5(][)C F1 --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 309.6 Q F0([)2.5 E F2(name)A -F0(...])2.5 E .634(Specify ho)144 321.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 F13.133 E F0 -.633(option is supplied, or if no)3.133 F .139(options are supplied, e) -144 333.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 345.6 R(The)5.31 E F12.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 -(are supplied, all completion speci\214cations.)144 357.6 Q 1.437 +(complete)108 345.6 Q F0([)3.034 E F1(\255abcdefgjksuv)A F0 3.034(][)C +F1-3.034 E F2(comp-option)3.034 E F0 3.034(][)C F1-3.034 E +F0 3.033(][)C F1-3.033 E F2(action)3.033 E F0 3.033(][)C F1 +-3.033 E F2(globpat)3.033 E F0 3.033(][)C F1-3.033 E F2(wor)3.033 +E(dlist)-.37 E F0 3.033(][)C F1-3.033 E F2(function)3.033 E F0(])A +([)108 357.6 Q F1A F2(command)2.5 E F0(])A([)144 369.6 Q F1A +F2(\214lterpat)2.5 E F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(e\214x)-.37 +E F0 2.5(][)C F1-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 381.6 Q F0([) +2.5 E F1A 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 F13.133 E F0 .633 +(option is supplied, or if no)3.133 F .139(options are supplied, e)144 +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 417.6 R(The)5.31 E F12.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.392 +(are supplied, all completion speci\214cations.)144 429.6 R(The)6.392 E +F13.892 E F0 1.393(option indicates that the remaining options) +3.893 F 1.304(and actions should apply to `)144 441.6 R(`empty')-.74 E +3.804('c)-.74 G 1.304 +(ommand completion; that is, completion attempted on a)-3.804 F +(blank line.)144 453.6 Q 1.437 (The process of applying these completion speci\214cations when w)144 -381.6 R 1.438(ord completion is attempted is)-.1 F(described abo)144 -393.6 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E +477.6 R 1.438(ord completion is attempted is)-.1 F(described abo)144 +489.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 417.6 R .856 -.15(ve t)-.2 H .555 +(Other options, if speci\214ed, ha)144 513.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 F13.055 E F0(,)A F13.055 E F0 3.055 (,a)C(nd)-3.055 E F13.055 E F0 .722(options \(and, if necessary) -144 429.6 R 3.222(,t)-.65 G(he)-3.222 E F13.222 E F0(and)3.222 E +144 525.6 R 3.222(,t)-.65 G(he)-3.222 E F13.222 E F0(and)3.222 E F13.222 E F0 .723 (options\) should be quoted to protect them from e)3.222 F(xpan-)-.15 E -(sion before the)144 441.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 F1144 453.6 Q -F2(comp-option)2.5 E F0(The)184 465.6 Q F2(comp-option)2.791 E F0 .291 +(sion before the)144 537.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 F1144 549.6 Q +F2(comp-option)2.5 E F0(The)184 561.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 477.6 Q F2 -(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 489.6 Q F0 -.281(Perform the rest of the def)224 501.6 R(ault)-.1 E F1(bash)2.781 E +(yond the simple)-.15 F(generation of completions.)184 573.6 Q F2 +(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 585.6 Q F0 +.281(Perform the rest of the def)224 597.6 R(ault)-.1 E F1(bash)2.781 E F0 .281(completions if the compspec generates no)2.781 F(matches.)224 -513.6 Q F1(default)184 525.6 Q F0 2.876(Use readline')10 F 5.376(sd)-.55 +609.6 Q F1(default)184 621.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 537.6 Q F1(dir)184 549.6 Q(names)-.15 E F0(Perform directory name c\ -ompletion if the compspec generates no matches.)224 561.6 Q F1 -(\214lenames)184 573.6 Q F0 -.7(Te)224 585.6 S .137(ll readline that th\ +224 633.6 Q F1(dir)184 645.6 Q(names)-.15 E F0(Perform directory name c\ +ompletion if the compspec generates no matches.)224 657.6 Q F1 +(\214lenames)184 669.6 Q F0 -.7(Te)224 681.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 .496(name\255speci\214c processing \(lik)224 597.6 R +-.15 G(le-)-2.637 E .496(name\255speci\214c processing \(lik)224 693.6 R 2.996(ea)-.1 G .496(dding a slash to directory names or suppress-)-2.996 -F(ing trailing spaces\).)224 609.6 Q -(Intended to be used with shell functions.)5 E F1(nospace)184 621.6 Q F0 +F(ing trailing spaces\).)224 705.6 Q +(Intended to be used with shell functions.)5 E F1(nospace)184 717.6 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 -633.6 Q F1(plusdirs)184 645.6 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 657.6 R 3.084(ym)-.15 G -.584(atches are added to the results of the other)-3.084 F(actions.)224 -669.6 Q F1144 681.6 Q F2(action)2.5 E F0(The)184 693.6 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 -705.6 Q F0(Alias names.)20.55 E(May also be speci\214ed as)5 E F1 -2.5 E F0(.)A(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(3)203.725 E 0 -Cg EP +729.6 Q(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(3)203.725 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(arrayv)184 84 Q(ar)-.1 E F0(Array v)224 96 Q -(ariable names.)-.25 E F1 4.7(binding Readline)184 108 R F0 -.1(ke)2.5 G -2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 120 S(iltin).2 E F0 +/Times-Bold@0 SF(plusdirs)184 84 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 96 R 3.084(ym)-.15 G .584 +(atches are added to the results of the other)-3.084 F(actions.)224 108 +Q F1144 120 Q/F2 10/Times-Italic@0 SF(action)2.5 E F0(The)184 132 +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 +144 Q F0(Alias names.)20.55 E(May also be speci\214ed as)5 E F12.5 +E F0(.)A F1(arrayv)184 156 Q(ar)-.1 E F0(Array v)224 168 Q +(ariable names.)-.25 E F1 4.7(binding Readline)184 180 R F0 -.1(ke)2.5 G +2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 192 S(iltin).2 E F0 (Names of shell b)11.85 E(uiltin commands.)-.2 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(command)184 132 -Q F0(Command names.)224 144 Q(May also be speci\214ed as)5 E F12.5 -E F0(.)A F1(dir)184 156 Q(ectory)-.18 E F0(Directory names.)224 168 Q -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(disabled)184 180 -Q F0(Names of disabled shell b)224 192 Q(uiltins.)-.2 E F1(enabled)184 -204 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184 -216 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 F12.5 E F0(.)A F1(command)184 204 +Q F0(Command names.)224 216 Q(May also be speci\214ed as)5 E F12.5 +E F0(.)A F1(dir)184 228 Q(ectory)-.18 E F0(Directory names.)224 240 Q +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(disabled)184 252 +Q F0(Names of disabled shell b)224 264 Q(uiltins.)-.2 E F1(enabled)184 +276 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184 +288 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 F12.5 E F0(.)A F1(\214le)184 -228 Q F0(File names.)27.22 E(May also be speci\214ed as)5 E F12.5 -E F0(.)A F1(function)184 240 Q F0(Names of shell functions.)224 252 Q F1 -(gr)184 264 Q(oup)-.18 E F0(Group names.)14.62 E +300 Q F0(File names.)27.22 E(May also be speci\214ed as)5 E F12.5 +E F0(.)A F1(function)184 312 Q F0(Names of shell functions.)224 324 Q F1 +(gr)184 336 Q(oup)-.18 E F0(Group names.)14.62 E (May also be speci\214ed as)5 E F12.5 E F0(.)A F1(helptopic)184 -276 Q F0(Help topics as accepted by the)224 288 Q F1(help)2.5 E F0 -.2 -(bu)2.5 G(iltin.).2 E F1(hostname)184 300 Q F0(Hostnames, as tak)224 312 -Q(en from the \214le speci\214ed by the)-.1 E/F2 9/Times-Bold@0 SF -(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 324 Q F0 +348 Q F0(Help topics as accepted by the)224 360 Q F1(help)2.5 E F0 -.2 +(bu)2.5 G(iltin.).2 E F1(hostname)184 372 Q F0(Hostnames, as tak)224 384 +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 396 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 F12.5 E F0(.)A F1 -.1(ke)184 336 S -(yw).1 E(ord)-.1 E F0(Shell reserv)224 348 Q(ed w)-.15 E 2.5(ords. May) +(ay also be speci\214ed as)-5 E F12.5 E F0(.)A F1 -.1(ke)184 408 S +(yw).1 E(ord)-.1 E F0(Shell reserv)224 420 Q(ed w)-.15 E 2.5(ords. May) -.1 F(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1(running)184 -360 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve) --.25 G(.).15 E F1(ser)184 372 Q(vice)-.1 E F0(Service names.)10.67 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(setopt)184 384 Q +432 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve) +-.25 G(.).15 E F1(ser)184 444 Q(vice)-.1 E F0(Service names.)10.67 E +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(setopt)184 456 Q F0 -1.11(Va)14.45 G(lid ar)1.11 E(guments for the)-.18 E F12.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 396 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 408 Q F0 -(Signal names.)14.99 E F1(stopped)184 420 Q F0 +(shopt)184 468 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 480 Q F0 +(Signal names.)14.99 E F1(stopped)184 492 Q F0 (Names of stopped jobs, if job control is acti)6.66 E -.15(ve)-.25 G(.) -.15 E F1(user)184 432 Q F0(User names.)21.67 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1 -.1(va)184 444 S +.15 E F1(user)184 504 Q F0(User names.)21.67 E +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1 -.1(va)184 516 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 F12.5 E F0(.)A F1144 456 Q/F3 -10/Times-Italic@0 SF(globpat)2.5 E F0 1.411(The \214lename e)184 468 R -1.411(xpansion pattern)-.15 F F3(globpat)3.911 E F0 1.411(is e)3.911 F -1.411(xpanded to generate the possible comple-)-.15 F(tions.)184 480 Q -F1144 492 Q F3(wor)2.5 E(dlist)-.37 E F0(The)184 504 Q F3(wor) -3.639 E(dlist)-.37 E F0 1.14(is split using the characters in the)3.639 -F F2(IFS)3.64 E F0 1.14(special v)3.39 F 1.14 -(ariable as delimiters, and)-.25 F 2.008(each resultant w)184 516 R -2.008(ord is e)-.1 F 4.508(xpanded. The)-.15 F 2.007 -(possible completions are the members of the)4.508 F -(resultant list which match the w)184 528 Q(ord being completed.)-.1 E -F1144 540 Q F3(command)2.5 E(command)184 552 Q F0 1.055(is e)3.555 -F -.15(xe)-.15 G 1.055(cuted in a subshell en).15 F 1.056 +(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1144 528 Q F2 +(globpat)2.5 E F0 1.411(The \214lename e)184 540 R 1.411 +(xpansion pattern)-.15 F F2(globpat)3.911 E F0 1.411(is e)3.911 F 1.411 +(xpanded to generate the possible comple-)-.15 F(tions.)184 552 Q F1 +144 564 Q F2(wor)2.5 E(dlist)-.37 E F0(The)184 576 Q F2(wor)3.639 +E(dlist)-.37 E F0 1.14(is split using the characters in the)3.639 F F3 +(IFS)3.64 E F0 1.14(special v)3.39 F 1.14(ariable as delimiters, and) +-.25 F 2.008(each resultant w)184 588 R 2.008(ord is e)-.1 F 4.508 +(xpanded. The)-.15 F 2.007(possible completions are the members of the) +4.508 F(resultant list which match the w)184 600 Q(ord being completed.) +-.1 E F1144 612 Q F2(command)2.5 E(command)184 624 Q F0 1.055 +(is e)3.555 F -.15(xe)-.15 G 1.055(cuted in a subshell en).15 F 1.056 (vironment, and its output is used as the possible)-.4 F(completions.) -184 564 Q F1144 576 Q F3(function)2.5 E F0 1.181 -(The shell function)184 588 R F3(function)3.681 E F0 1.181(is e)3.681 F +184 636 Q F1144 648 Q F2(function)2.5 E F0 1.181 +(The shell function)184 660 R F2(function)3.681 E F0 1.181(is e)3.681 F -.15(xe)-.15 G 1.181(cuted in the current shell en).15 F 3.68 (vironment. When)-.4 F 1.18(it \214n-)3.68 F .932 -(ishes, the possible completions are retrie)184 600 R -.15(ve)-.25 G -3.432(df).15 G .932(rom the v)-3.432 F .932(alue of the)-.25 F F2 -(COMPREPL)3.432 E(Y)-.828 E F0(array)3.182 E -.25(va)184 612 S(riable.) -.25 E F1144 624 Q F3(\214lterpat)2.5 E(\214lterpat)184 636 Q F0 +(ishes, the possible completions are retrie)184 672 R -.15(ve)-.25 G +3.432(df).15 G .932(rom the v)-3.432 F .932(alue of the)-.25 F F3 +(COMPREPL)3.432 E(Y)-.828 E F0(array)3.182 E -.25(va)184 684 S(riable.) +.25 E F1144 696 Q F2(\214lterpat)2.5 E(\214lterpat)184 708 Q F0 .733(is a pattern as used for \214lename e)3.234 F 3.233(xpansion. It) -.15 F .733(is applied to the list of possible)3.233 F 1.596 -(completions generated by the preceding options and ar)184 648 R 1.596 -(guments, and each completion)-.18 F(matching)184 660 Q F3(\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 F3(\214lterpat)3.204 E F0(ne)3.204 E -.05(ga)-.15 G .704 -(tes the pattern;).05 F(in this case, an)184 672 Q 2.5(yc)-.15 G -(ompletion not matching)-2.5 E F3(\214lterpat)2.5 E F0(is remo)2.5 E --.15(ve)-.15 G(d.).15 E F1144 684 Q F3(pr)2.5 E(e\214x)-.37 E(pr) -184 696 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 708 Q(GNU Bash-3.0)72 768 Q(2004 Apr 20) +(completions generated by the preceding options and ar)184 720 R 1.596 +(guments, and each completion)-.18 F(GNU Bash-3.0)72 768 Q(2004 Apr 20) 148.735 E(4)203.725 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF144 84 Q/F2 10/Times-Italic@0 SF(suf)2.5 E 2.81 -(\214x suf)-.18 F<8c78>-.18 E F0 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(matching)184 +84 Q/F1 10/Times-Italic@0 SF(\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/F2 10/Times-Bold@0 SF(!)3.204 E F0(in)3.204 E F1 +(\214lterpat)3.204 E F0(ne)3.204 E -.05(ga)-.15 G .704(tes the pattern;) +.05 F(in this case, an)184 96 Q 2.5(yc)-.15 G(ompletion not matching) +-2.5 E F1(\214lterpat)2.5 E F0(is remo)2.5 E -.15(ve)-.15 G(d.).15 E F2 +144 108 Q F1(pr)2.5 E(e\214x)-.37 E(pr)184 120 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 132 Q F2144 144 Q F1(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 .467(The return v)144 100.8 R +E .3 -.15(ve b)-.2 H(een applied.).15 E .467(The return v)144 160.8 R .467(alue is true unless an in)-.25 F -.25(va)-.4 G .466 -(lid option is supplied, an option other than).25 F F12.966 E F0 -(or)2.966 E F12.966 E F0 .466(is sup-)2.966 F 1.361 -(plied without a)144 112.8 R F2(name)3.861 E F0(ar)3.861 E 1.361 +(lid option is supplied, an option other than).25 F F22.966 E F0 +(or)2.966 E F22.966 E F0 .466(is sup-)2.966 F 1.361 +(plied without a)144 172.8 R F1(name)3.861 E F0(ar)3.861 E 1.361 (gument, an attempt is made to remo)-.18 F 1.662 -.15(ve a c)-.15 H -1.362(ompletion speci\214cation for a).15 F F2(name)144 124.8 Q F0 +1.362(ompletion speci\214cation for a).15 F F1(name)144 184.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 141.6 Q F0([)2.5 E F1A F2(option)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 153.6 R F2(name)2.947 E F0 .447 -(according to the)2.947 F F2(option)2.947 E F0 .447 +F2(compopt)108 201.6 Q F0([)2.5 E F2A F1(option)2.5 E F0 2.5(][)C +F2(+o)-2.5 E F1(option)2.5 E F0 2.5(][)C F1(name)-2.5 E F0(])A .447 +(Modify completion options for each)144 213.6 R F1(name)2.947 E F0 .447 +(according to the)2.947 F F1(option)2.947 E F0 .447 (s, or for the currently-e)B -.15(xe)-.15 G(cution).15 E .725 -(completion if no)144 165.6 R F2(name)3.225 E F0 3.225(sa)C .725 -(re supplied.)-3.225 F .725(If no)5.725 F F2(option)3.225 E F0 3.225(sa) +(completion if no)144 225.6 R F1(name)3.225 E F0 3.225(sa)C .725 +(re supplied.)-3.225 F .725(If no)5.725 F F1(option)3.225 E F0 3.225(sa) C .725(re gi)-3.225 F -.15(ve)-.25 G .726 -(n, display the completion options for).15 F(each)144 177.6 Q F2(name) +(n, display the completion options for).15 F(each)144 237.6 Q F1(name) 3.224 E F0 .724(or the current completion.)3.224 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 .723(alid for the)-.25 F F1(com-)3.223 E(plete)144 189.6 Q F0 -.2(bu) +5.724 F .724(alues of)-.25 F F1(option)3.224 E F0 .724(are those v)3.224 +F .723(alid for the)-.25 F F2(com-)3.223 E(plete)144 249.6 Q F0 -.2(bu) 2.5 G(iltin described abo).2 E -.15(ve)-.15 G(.).15 E .327(The return v) -108 206.4 R .327(alue is true unless an in)-.25 F -.25(va)-.4 G .327 +108 266.4 R .327(alue is true unless an in)-.25 F -.25(va)-.4 G .327 (lid option is supplied, an attempt is made to modify the options for a) -.25 F F2(name)108 218.4 Q F0(for which no completion speci\214cation e) -2.5 E(xists, or an output error occurs.)-.15 E F1(continue)108 235.2 Q -F0([)2.5 E F2(n)A F0(])A 1.754(Resume the ne)144 247.2 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 259.2 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/F3 10 -/Symbol SF3.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 .668 -(loops, the last enclosing loop \(the `)144 271.2 R(`top-le)-.74 E -.15 -(ve)-.25 G(l').15 E 3.168('l)-.74 G .668(oop\) is resumed.)-3.168 F .667 -(The return v)5.667 F .667(alue is 0 unless the)-.25 F(shell is not e) -144 283.2 Q -.15(xe)-.15 G(cuting a loop when).15 E F1(continue)2.5 E F0 -(is e)2.5 E -.15(xe)-.15 G(cuted.).15 E F1(declar)108 300 Q(e)-.18 E F0 -([)2.5 E F1(\255afFirtx)A F0 2.5(][)C F1-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 -312 Q F0([)2.5 E F1(\255afFirtx)A F0 2.5(][)C F1-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 324 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 336 S -3.483(riables. The).25 F F13.483 E F0 .983 +.25 F F1(name)108 278.4 Q F0(for which no completion speci\214cation e) +2.5 E(xists, or an output error occurs.)-.15 E F2(continue)108 295.2 Q +F0([)2.5 E F1(n)A F0(])A 1.754(Resume the ne)144 307.2 R 1.754 +(xt iteration of the enclosing)-.15 F F2 -.25(fo)4.254 G(r).25 E F0(,)A +F2(while)4.254 E F0(,)A F2(until)4.254 E F0 4.254(,o)C(r)-4.254 E F2 +(select)4.254 E F0 4.253(loop. If)4.254 F F1(n)4.613 E F0 1.753 +(is speci\214ed,)4.493 F 1.208(resume at the)144 319.2 R F1(n)3.709 E F0 +1.209(th enclosing loop.)B F1(n)6.569 E F0 1.209(must be)3.949 F/F3 10 +/Symbol SF3.709 E F0 3.709(1. If)3.709 F F1(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 331.2 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 F1(n)3.013 E F0(is) +3.013 E(not greater than or equal to 1.)144 343.2 Q F2(declar)108 360 Q +(e)-.18 E F0([)2.5 E F2(\255afFirtx)A F0 2.5(][)C F2-2.5 E F0 2.5 +(][)C F1(name)-2.5 E F0([=)A F1(value)A F0 2.5(].)C(..])-2.5 E F2 +(typeset)108 372 Q F0([)2.5 E F2(\255afFirtx)A F0 2.5(][)C F2-2.5 +E F0 2.5(][)C F1(name)-2.5 E F0([=)A F1(value)A F0 2.5(].)C(..])-2.5 E +1.264(Declare v)144 384 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 F1 +(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 396 S 3.483(riables. The).25 F F23.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 -3.482 E F0 .982(is used)3.482 F(with)144 348 Q F2(name)3.579 E F0 +(alues of each)-.25 F F1(name)3.482 E F0 5.982(.W).18 G(hen)-5.982 E F2 +3.482 E F0 .982(is used)3.482 F(with)144 408 Q F1(name)3.579 E F0 (ar)3.579 E 1.079(guments, additional options are ignored.)-.18 F(When) -6.079 E F13.579 E F0 1.079(is supplied without)3.579 F F2(name) +6.079 E F23.579 E F0 1.079(is supplied without)3.579 F F1(name) 3.58 E F0(ar)3.58 E(gu-)-.18 E .151(ments, it will display the attrib) -144 360 R .151(utes and v)-.2 F .151(alues of all v)-.25 F .15 +144 420 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 372 R .046 -(If no other options are supplied with)5.046 F F12.547 E F0(,)A F1 +(utes speci\214ed by the)-.2 F .046(additional options.)144 432 R .046 +(If no other options are supplied with)5.046 F F22.547 E F0(,)A F2 (declar)2.547 E(e)-.18 E F0 .047(will display the attrib)2.547 F .047 -(utes and)-.2 F -.25(va)144 384 S 1.363(lues of all shell v).25 F 3.863 -(ariables. The)-.25 F F13.863 E F0 1.362 +(utes and)-.2 F -.25(va)144 444 S 1.363(lues of all shell v).25 F 3.863 +(ariables. The)-.25 F F23.863 E F0 1.362 (option will restrict the display to shell functions.)3.863 F(The)6.362 -E F13.862 E F0 2.422(option inhibits the display of function de\ -\214nitions; only the function name and attrib)144 396 R 2.423(utes are) --.2 F 2.664(printed. If)144 408 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 +E F23.862 E F0 2.422(option inhibits the display of function de\ +\214nitions; only the function name and attrib)144 456 R 2.423(utes are) +-.2 F 2.664(printed. If)144 468 R(the)2.664 E F2(extdeb)2.664 E(ug)-.2 E +F0 .164(shell option is enabled using)2.664 F F2(shopt)2.664 E F0 2.664 (,t)C .163(he source \214le name and line number)-2.664 F 1.382 -(where the function is de\214ned are displayed as well.)144 420 R(The) -6.382 E F13.882 E F0 1.382(option implies)3.882 F F13.882 E +(where the function is de\214ned are displayed as well.)144 480 R(The) +6.382 E F23.882 E F0 1.382(option implies)3.882 F F23.882 E F0 6.382(.T)C 1.382(he follo)-6.382 F(wing)-.25 E .794 -(options can be used to restrict output to v)144 432 R .794 +(options can be used to restrict output to v)144 492 R .794 (ariables with the speci\214ed attrib)-.25 F .793(ute or to gi)-.2 F -1.093 -.15(ve v)-.25 H(ariables)-.1 E(attrib)144 444 Q(utes:)-.2 E F1 -144 456 Q F0(Each)25.3 E F2(name)2.5 E F0(is an array v)2.5 E -(ariable \(see)-.25 E F1(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).) -.15 E F1144 468 Q F0(Use function names only)26.97 E(.)-.65 E F1 -144 480 Q F0 .557(The v)27.52 F .558 +1.093 -.15(ve v)-.25 H(ariables)-.1 E(attrib)144 504 Q(utes:)-.2 E F2 +144 516 Q F0(Each)25.3 E F1(name)2.5 E F0(is an array v)2.5 E +(ariable \(see)-.25 E F2(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).) +.15 E F2144 528 Q F0(Use function names only)26.97 E(.)-.65 E F2 +144 540 Q F0 .557(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/F4 9/Times-Bold@0 SF .558 -(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E(TION \))180 492 Q F0 +(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E(TION \))180 552 Q F0 (is performed when the v)2.25 E(ariable is assigned a v)-.25 E(alue.) --.25 E F1144 504 Q F0(Mak)25.86 E(e)-.1 E F2(name)5.047 E F0 5.047 +-.25 E F2144 564 Q F0(Mak)25.86 E(e)-.1 E F1(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 516 Q F1 -144 528 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 540 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E -(ariables.)-.25 E F1144 552 Q F0(Mark)25.3 E F2(name)2.5 E F0 2.5 +(alues by subsequent)-.25 F(assignment statements or unset.)180 576 Q F2 +144 588 Q F0(Gi)26.97 E .729 -.15(ve e)-.25 H(ach).15 E F1(name) +2.929 E F0(the)2.929 E F1(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 F2(DEB)2.929 E(UG) +-.1 E F0(and)2.93 E F2(RETURN)2.93 E F0(traps from the calling shell.) +180 600 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E +(ariables.)-.25 E F2144 612 Q F0(Mark)25.3 E F1(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 568.8 R +(vironment.)-.4 E .121(Using `+' instead of `\255' turns of)144 628.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 -1.236(to destro)144 580.8 R 3.736(ya)-.1 G 3.737(na)-3.736 G 1.237 -(rray v)-3.737 F 1.237(ariable and)-.25 F F1 1.237(+r will not r)3.737 F +F .12(xceptions that)-.15 F F2(+a)2.62 E F0 .12(may not be used)2.62 F +1.236(to destro)144 640.8 R 3.736(ya)-.1 G 3.737(na)-3.736 G 1.237 +(rray v)-3.737 F 1.237(ariable and)-.25 F F2 1.237(+r will not r)3.737 F (emo)-.18 E 1.437 -.1(ve t)-.1 H 1.237(he r).1 F 1.237(eadonly attrib) -.18 F 3.737(ute. When)-.2 F 1.237(used in a)3.737 F .312(function, mak) -144 592.8 R .312(es each)-.1 F F2(name)2.812 E F1 .311 +144 652.8 R .312(es each)-.1 F F1(name)2.812 E F2 .311 (local, as with the local)2.812 F F0 2.811(command. If)2.811 F 2.811(av) 2.811 G .311(ariable name is follo)-3.061 F .311(wed by)-.25 F(=)144 -604.8 Q F2(value)A F0 3.238(,t)C .738(he v)-3.238 F .738(alue of the v) --.25 F .738(ariable is set to)-.25 F F2(value)3.238 E F0 5.738(.T)C .738 +664.8 Q F1(value)A F0 3.238(,t)C .738(he v)-3.238 F .738(alue of the v) +-.25 F .738(ariable is set to)-.25 F F1(value)3.238 E F0 5.738(.T)C .738 (he return v)-5.738 F .739(alue is 0 unless an in)-.25 F -.25(va)-.4 G .739(lid option is).25 F .603 -(encountered, an attempt is made to de\214ne a function using)144 616.8 +(encountered, an attempt is made to de\214ne a function using)144 676.8 R/F5 10/Courier@0 SF .603(\255f foo=bar)3.103 F F0 3.103(,a)C 3.103(na) --3.103 G .603(ttempt is made to)-3.103 F 1.242(assign a v)144 628.8 R +-3.103 G .603(ttempt is made to)-3.103 F 1.242(assign a v)144 688.8 R 1.242(alue to a readonly v)-.25 F 1.242 (ariable, an attempt is made to assign a v)-.25 F 1.243 (alue to an array v)-.25 F(ariable)-.25 E 1.386 -(without using the compound assignment syntax \(see)144 640.8 R F1 +(without using the compound assignment syntax \(see)144 700.8 R F2 (Arrays)3.886 E F0(abo)3.886 E -.15(ve)-.15 G 1.386(\), one of the).15 F -F2(names)3.886 E F0 1.386(is not a)3.886 F -.25(va)144 652.8 S .171 +F1(names)3.886 E F0 1.386(is not a)3.886 F -.25(va)144 712.8 S .171 (lid shell v).25 F .171(ariable name, an attempt is made to turn of)-.25 F 2.671(fr)-.25 G .171(eadonly status for a readonly v)-2.671 F .172 -(ariable, an)-.25 F .96(attempt is made to turn of)144 664.8 R 3.46(fa) +(ariable, an)-.25 F .96(attempt is made to turn of)144 724.8 R 3.46(fa) -.25 G .96(rray status for an array v)-3.46 F .96 -(ariable, or an attempt is made to display a)-.25 F(non-e)144 676.8 Q -(xistent function with)-.15 E F12.5 E F0(.)A F1(dirs [+)108 693.6 -Q F2(n)A F1 2.5(][)C-2.5 E F2(n)A F1 2.5(][)C(\255cplv])-2.5 E F0 --.4(Wi)144 705.6 S .328 -(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 717.6 R 1.238 -(Directories are added to the list with the)6.238 F F1(pushd)144 729.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(GNU Bash-3.0)72 768 Q -(2004 Apr 20)148.735 E(5)203.725 E 0 Cg EP +(ariable, or an attempt is made to display a)-.25 F(GNU Bash-3.0)72 768 +Q(2004 Apr 20)148.735 E(5)203.725 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(+)144 84 Q/F2 10/Times-Italic@0 SF(n)A F0 1.564 -(Displays the)25.3 F F2(n)4.064 E F0 1.565 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(non-e)144 84 +Q(xistent function with)-.15 E/F1 10/Times-Bold@0 SF2.5 E F0(.)A +F1(dirs [+)108 100.8 Q/F2 10/Times-Italic@0 SF(n)A F1 2.5(][)C-2.5 E +F2(n)A F1 2.5(][)C(\255cplv])-2.5 E F0 -.4(Wi)144 112.8 S .328 +(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 124.8 R 1.238 +(Directories are added to the list with the)6.238 F F1(pushd)144 136.8 Q +F0(command; the)2.5 E F1(popd)2.5 E F0(command remo)2.5 E -.15(ve)-.15 G +2.5(se).15 G(ntries from the list.)-2.5 E F1(+)144 148.8 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 96 Q F1144 108 Q F2(n)A F0 -1.194(Displays the)25.3 F F2(n)3.694 E F0 1.194 +(without options, starting with zero.)180 160.8 Q F1144 172.8 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 120 Q F1144 132 Q F0 +(without options, starting with zero.)180 184.8 Q F1144 196.8 Q F0 (Clears the directory stack by deleting all of the entries.)25.86 E F1 -144 144 Q F0 .324(Produces a longer listing; the def)27.52 F .324 -(ault listing format uses a tilde to denote the home direc-)-.1 F(tory) -180 156 Q(.)-.65 E F1144 168 Q F0 +144 208.8 Q F0 .324(Produces a longer listing; the def)27.52 F +.324(ault listing format uses a tilde to denote the home direc-)-.1 F +(tory)180 220.8 Q(.)-.65 E F1144 232.8 Q F0 (Print the directory stack with one entry per line.)24.74 E F1144 -180 Q F0 .273(Print the directory stack with one entry per line, pre\ +244.8 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 192 Q .257(The return v)144 208.8 R .258 +G(he)-2.772 E(stack.)180 256.8 Q .257(The return v)144 273.6 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 220.8 Q F1(diso)108 237.6 Q(wn)-.1 E F0([)2.5 E F1 +.15 F(tory stack.)144 285.6 Q F1(diso)108 302.4 Q(wn)-.1 E F0([)2.5 E F1 (\255ar)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(jobspec)-2.5 E F0 -(...])2.5 E -.4(Wi)144 249.6 S .295(thout options, each).4 F F2(jobspec) +(...])2.5 E -.4(Wi)144 314.4 S .295(thout options, each).4 F F2(jobspec) 4.535 E F0 .295(is remo)3.105 F -.15(ve)-.15 G 2.795(df).15 G .295 (rom the table of acti)-2.795 F .595 -.15(ve j)-.25 H 2.795(obs. If).15 F F2(jobspec)4.535 E F0 .295(is not present,)3.105 F .243(and neither) -144 261.6 R F1 .243(\255a nor \255r is supplied, the shell')2.743 F +144 326.4 R F1 .243(\255a nor \255r is supplied, the shell')2.743 F 2.743(sn)-.37 G .243(otion of the)-2.743 F F2(curr)2.743 E .243(ent job) -.37 F F1 .243(is used.)2.743 F .244(If the \255h option)5.243 F .334 -(is gi)144 273.6 R -.1(ve)-.1 G .334(n, each).1 F F2(jobspec)4.574 E F0 +(is gi)144 338.4 R -.1(ve)-.1 G .334(n, each).1 F F2(jobspec)4.574 E F0 .334(is not remo)3.144 F -.15(ve)-.15 G 2.834(df).15 G .334 (rom the table, b)-2.834 F .334(ut is mark)-.2 F .334(ed so that)-.1 F /F3 9/Times-Bold@0 SF(SIGHUP)2.834 E F0 .333(is not sent to)2.584 F -1.189(the job if the shell recei)144 285.6 R -.15(ve)-.25 G 3.689(sa).15 +1.189(the job if the shell recei)144 350.4 R -.15(ve)-.25 G 3.689(sa).15 G F3(SIGHUP)A/F4 9/Times-Roman@0 SF(.)A F0 1.189(If no)5.689 F F2 (jobspec)5.429 E F0 1.189(is present, and neither the)3.999 F F1 3.689 E F0 1.19(nor the)3.69 F F13.69 E F0 1.57 -(option is supplied, the)144 297.6 R F2(curr)4.07 E 1.57(ent job)-.37 F +(option is supplied, the)144 362.4 R F2(curr)4.07 E 1.57(ent job)-.37 F F0 1.57(is used.)4.07 F 1.569(If no)6.569 F F2(jobspec)5.809 E F0 1.569 (is supplied, the)4.379 F F14.069 E F0 1.569(option means to)4.069 -F(remo)144 309.6 Q .903 -.15(ve o)-.15 H 3.103(rm).15 G .603 +F(remo)144 374.4 Q .903 -.15(ve o)-.15 H 3.103(rm).15 G .603 (ark all jobs; the)-3.103 F F13.103 E F0 .603(option without a) 3.103 F F2(jobspec)4.843 E F0(ar)3.414 E .604 -(gument restricts operation to running)-.18 F 2.5(jobs. The)144 321.6 R +(gument restricts operation to running)-.18 F 2.5(jobs. The)144 386.4 R (return v)2.5 E(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 338.4 Q +(does not specify a v)2.81 E(alid job)-.25 E(.)-.4 E F1(echo)108 403.2 Q F0([)2.5 E F1(\255neE)A F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.395(Output the)144 350.4 R F2(ar)2.895 E(g)-.37 E F0 .395 +.395(Output the)144 415.2 R F2(ar)2.895 E(g)-.37 E F0 .395 (s, separated by spaces, follo)B .395(wed by a ne)-.25 F 2.895 (wline. The)-.25 F .394(return status is al)2.895 F -.1(wa)-.1 G .394 (ys 0.).1 F(If)5.394 E F12.894 E F0 .548 -(is speci\214ed, the trailing ne)144 362.4 R .548(wline is suppressed.) +(is speci\214ed, the trailing ne)144 427.2 R .548(wline is suppressed.) -.25 F .548(If the)5.548 F F13.048 E F0 .548(option is gi)3.048 F --.15(ve)-.25 G .548(n, interpretation of the fol-).15 F(lo)144 374.4 Q +-.15(ve)-.25 G .548(n, interpretation of the fol-).15 F(lo)144 439.2 Q .053(wing backslash-escaped characters is enabled.)-.25 F(The)5.053 E F1 2.553 E F0 .052(option disables the interpretation of these)2.552 -F 1.502(escape characters, e)144 386.4 R -.15(ve)-.25 G 4.002(no).15 G +F 1.502(escape characters, e)144 451.2 R -.15(ve)-.25 G 4.002(no).15 G 4.002(ns)-4.002 G 1.502(ystems where the)-4.002 F 4.002(ya)-.15 G 1.502 (re interpreted by def)-4.002 F 4.003(ault. The)-.1 F F1(xpg_echo)4.003 E F0(shell)4.003 E .009 -(option may be used to dynamically determine whether or not)144 398.4 R +(option may be used to dynamically determine whether or not)144 463.2 R F1(echo)2.509 E F0 -.15(ex)2.509 G .009(pands these escape characters) -.15 F .659(by def)144 410.4 R(ault.)-.1 E F1(echo)5.659 E F0 .659 +.15 F .659(by def)144 475.2 R(ault.)-.1 E F1(echo)5.659 E F0 .659 (does not interpret)3.159 F F13.159 E F0 .659 (to mean the end of options.)3.159 F F1(echo)5.66 E F0 .66 -(interprets the follo)3.16 F(wing)-.25 E(escape sequences:)144 422.4 Q -F1(\\a)144 434.4 Q F0(alert \(bell\))28.22 E F1(\\b)144 446.4 Q F0 -(backspace)27.66 E F1(\\c)144 458.4 Q F0(suppress trailing ne)28.78 E -(wline)-.25 E F1(\\e)144 470.4 Q F0(an escape character)28.78 E F1(\\f) -144 482.4 Q F0(form feed)29.89 E F1(\\n)144 494.4 Q F0(ne)27.66 E 2.5 -(wl)-.25 G(ine)-2.5 E F1(\\r)144 506.4 Q F0(carriage return)28.78 E F1 -(\\t)144 518.4 Q F0(horizontal tab)29.89 E F1(\\v)144 530.4 Q F0 -.15 -(ve)28.22 G(rtical tab).15 E F1(\\\\)144 542.4 Q F0(backslash)30.44 E F1 -(\\0)144 554.4 Q F2(nnn)A F0(the eight-bit character whose v)13.22 E +(interprets the follo)3.16 F(wing)-.25 E(escape sequences:)144 487.2 Q +F1(\\a)144 499.2 Q F0(alert \(bell\))28.22 E F1(\\b)144 511.2 Q F0 +(backspace)27.66 E F1(\\c)144 523.2 Q F0(suppress trailing ne)28.78 E +(wline)-.25 E F1(\\e)144 535.2 Q F0(an escape character)28.78 E F1(\\f) +144 547.2 Q F0(form feed)29.89 E F1(\\n)144 559.2 Q F0(ne)27.66 E 2.5 +(wl)-.25 G(ine)-2.5 E F1(\\r)144 571.2 Q F0(carriage return)28.78 E F1 +(\\t)144 583.2 Q F0(horizontal tab)29.89 E F1(\\v)144 595.2 Q F0 -.15 +(ve)28.22 G(rtical tab).15 E F1(\\\\)144 607.2 Q F0(backslash)30.44 E F1 +(\\0)144 619.2 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 566.4 Q F2(HH)A F0 +(\(zero to three octal digits\))2.5 E F1(\\x)144 631.2 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(enable)108 583.2 Q F0([)2.5 E +-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E F1(enable)108 648 Q F0([)2.5 E F1A F0 2.5(][)C F1(\255dnps)-2.5 E F0 2.5(][)C F1-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 595.2 R .278(uiltin shell commands.)-.2 F .278 +(Enable and disable b)144 660 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 -607.2 R .834(uiltin to be e)-.2 F -.15(xe)-.15 G .834 +672 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 619.2 -R .989(uiltins before disk commands.)-.2 F(If)5.989 E F13.489 E F0 +(nt).15 G(hough)-3.334 E .99(the shell normally searches for b)144 684 R +.989(uiltins before disk commands.)-.2 F(If)5.989 E F13.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 631.2 R F2(names)4.082 E F0 1.582(are enabled.) +(abled; otherwise,)144 696 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.082 -G(TH)-.189 E F0 .081(instead of the shell b)144 643.2 R .081(uiltin v) --.2 F .081(ersion, run)-.15 F/F5 10/Courier@0 SF .081(enable -n test) -2.581 F F0 5.081(.T)C(he)-5.081 E F12.58 E F0 .08 -(option means to load the ne)2.58 F(w)-.25 E -.2(bu)144 655.2 S 1.524 +G(TH)-.189 E F0 .081(instead of the shell b)144 708 R .081(uiltin v)-.2 +F .081(ersion, run)-.15 F/F5 10/Courier@0 SF .081(enable -n test)2.581 F +F0 5.081(.T)C(he)-5.081 E F12.58 E F0 .08 +(option means to load the ne)2.58 F(w)-.25 E -.2(bu)144 720 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 667.2 Q F1 -2.867 E F0 .367(option will delete a b)2.867 F .367(uiltin pre)-.2 F -.367(viously loaded with)-.25 F F12.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 679.2 R F1 -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 .399(guments, the)-.18 F .099(list consists of all enabled shell b)144 -691.2 R 2.598(uiltins. If)-.2 F F12.598 E F0 .098 -(is supplied, only disabled b)2.598 F .098(uiltins are printed.)-.2 F -(If)5.098 E F12.598 E F0 1.916 -(is supplied, the list printed includes all b)144 703.2 R 1.916 -(uiltins, with an indication of whether or not each is)-.2 F 2.879 -(enabled. If)144 715.2 R F12.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 727.2 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(GNU Bash-3.0)72 -768 Q(2004 Apr 20)148.735 E(6)203.725 E 0 Cg EP +(ystems that support dynamic loading.)-4.024 F(GNU Bash-3.0)72 768 Q +(2004 Apr 20)148.735 E(6)203.725 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(object.)144 -84 Q/F1 10/Times-Bold@0 SF -2.3 -.15(ev a)108 100.8 T(l).15 E F0([)2.5 E -/F2 10/Times-Italic@0 SF(ar)A(g)-.37 E F0(...])2.5 E(The)144 112.8 Q F2 -(ar)3.171 E(g)-.37 E F0 3.171(sa)C .671 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(The)144 84 Q +/F1 10/Times-Bold@0 SF2.867 E F0 .367(option will delete a b)2.867 +F .367(uiltin pre)-.2 F .367(viously loaded with)-.25 F F12.866 E +F0 5.366(.I)C 2.866(fn)-5.366 G(o)-2.866 E/F2 10/Times-Italic@0 SF(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 96 R F12.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 .399(guments, the) +-.18 F .099(list consists of all enabled shell b)144 108 R 2.598 +(uiltins. If)-.2 F F12.598 E F0 .098(is supplied, only disabled b) +2.598 F .098(uiltins are printed.)-.2 F(If)5.098 E F12.598 E F0 +1.916(is supplied, the list printed includes all b)144 120 R 1.916 +(uiltins, with an indication of whether or not each is)-.2 F 2.879 +(enabled. If)144 132 R F12.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 144 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 156 +Q F1 -2.3 -.15(ev a)108 172.8 T(l).15 E F0([)2.5 E F2(ar)A(g)-.37 E F0 +(...])2.5 E(The)144 184.8 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 124.8 R -.15(xe)-.15 G +(This command is then read)5.67 F .495(and e)144 196.8 R -.15(xe)-.15 G .495(cuted by the shell, and its e).15 F .495 (xit status is returned as the v)-.15 F .495(alue of)-.25 F F1 -2.3 -.15 (ev a)2.995 H(l).15 E F0 5.495(.I)C 2.995(ft)-5.495 G .495(here are no) --2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 136.8 Q +-2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 208.8 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 153.6 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1-2.5 E F2 +(exec)108 225.6 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1-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 165.6 Q F2(command)3.006 E F0 .306 +-.37 E F0(]])A(If)144 237.6 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 177.6 R .176 +(guments)-.37 E F0(become)3.075 E .176(the ar)144 249.6 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 F12.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 189.6 R .5(gument passed to)-.18 +(ginning of)-.15 F .5(the zeroth ar)144 261.6 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 F12.999 E F0 -.499(option causes)2.999 F F2(com-)3.199 E(mand)144 201.6 Q F0 .638 +.499(option causes)2.999 F F2(com-)3.199 E(mand)144 273.6 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 F13.138 E F0 .638 (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 213.6 R 1.077(gument to the e)-.18 F -.15 +3.319 F 1.078(zeroth ar)144 285.6 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 225.6 Q .617 -.15(ve s)-.25 H .317(hell e).15 F +.15 F(non-interacti)144 297.6 Q .617 -.15(ve s)-.25 H .317(hell e).15 F .317(xits, unless the shell option)-.15 F F1(execfail)2.817 E F0 .318 (is enabled, in which case it returns f)2.817 F(ail-)-.1 E 2.505 -(ure. An)144 237.6 R(interacti)2.505 E .305 -.15(ve s)-.25 H .005 +(ure. An)144 309.6 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 249.6 Q 3.036(yr)-.15 G .536 +(is not speci\214ed,)3.275 F(an)144 321.6 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 261.6 Q 2.5(,t)-.4 G -(he return status is 1.)-2.5 E F1(exit)108 278.4 Q F0([)2.5 E F2(n)A F0 +(If there is a redirection)5.536 F(error)144 333.6 Q 2.5(,t)-.4 G +(he return status is 1.)-2.5 E F1(exit)108 350.4 Q F0([)2.5 E F2(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 290.4 S 2.5(cuted. A).15 F(trap on)2.5 E/F3 9 +-.15 F -.15(exe)144 362.4 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 307.2 Q F0([)2.5 +(cuted before the shell terminates.).15 E F1(export)108 379.2 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 319.2 Q F0 .256(The supplied)144 331.2 R +F0(]] ...)A F1(export \255p)108 391.2 Q F0 .256(The supplied)144 403.2 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 343.2 R(the)2.627 E F1 +(xe)-.15 G(cuted).15 E 2.627(commands. If)144 415.2 R(the)2.627 E F1 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 F1144 355.2 Q F0 .659 +(n, or if the).15 F F1144 427.2 Q F0 .659 (option is supplied, a list of all names that are e)3.159 F .66 (xported in this shell is printed.)-.15 F(The)5.66 E F13.16 E F0 -(option)3.16 E 1.587(causes the e)144 367.2 R 1.587 +(option)3.16 E 1.587(causes the e)144 439.2 R 1.587 (xport property to be remo)-.15 F -.15(ve)-.15 G 4.086(df).15 G 1.586 (rom each)-4.086 F F2(name)4.086 E F0 6.586(.I)C 4.086(fav)-6.586 G -1.586(ariable name is follo)-4.336 F 1.586(wed by)-.25 F(=)144 379.2 Q +1.586(ariable name is follo)-4.336 F 1.586(wed by)-.25 F(=)144 451.2 Q F2(wor)A(d)-.37 E F0 2.803(,t)C .303(he v)-2.803 F .303(alue of the v) -.25 F .304(ariable is set to)-.25 F F2(wor)2.804 E(d)-.37 E F0(.)A F1 (export)5.304 E F0 .304(returns an e)2.804 F .304 (xit status of 0 unless an in)-.15 F -.25(va)-.4 G(lid).25 E .294 -(option is encountered, one of the)144 391.2 R F2(names)2.793 E F0 .293 +(option is encountered, one of the)144 463.2 R F2(names)2.793 E F0 .293 (is not a v)2.793 F .293(alid shell v)-.25 F .293(ariable name, or)-.25 F F12.793 E F0 .293(is supplied with a)2.793 F F2(name)144.36 -403.2 Q F0(that is not a function.)2.68 E F1(fc)108 420 Q F0([)2.5 E F1 +475.2 Q F0(that is not a function.)2.68 E F1(fc)108 492 Q F0([)2.5 E F1 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 -432 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 .477(Fix Command.)144 444 R .478 +504 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 .477(Fix Command.)144 516 R .478 (In the \214rst form, a range of commands from)5.477 F F2<8c72>4.888 E (st)-.1 E F0(to)3.658 E F2(last)3.068 E F0 .478 -(is selected from the his-)3.658 F .882(tory list.)144 456 R F2 -.45(Fi) +(is selected from the his-)3.658 F .882(tory list.)144 528 R F2 -.45(Fi) 5.882 G -.1(rs).45 G(t).1 E F0(and)4.062 E F2(last)3.472 E F0 .882 (may be speci\214ed as a string \(to locate the last command be)4.062 F .881(ginning with)-.15 F .797(that string\) or as a number \(an inde)144 -468 R 3.297(xi)-.15 G .797(nto the history list, where a ne)-3.297 F +540 R 3.297(xi)-.15 G .797(nto the history list, where a ne)-3.297 F -.05(ga)-.15 G(ti).05 E 1.097 -.15(ve n)-.25 H .797(umber is used as an) -.15 F(of)144 480 Q .277(fset from the current command number\).)-.25 F +.15 F(of)144 552 Q .277(fset from the current command number\).)-.25 F (If)5.277 E F2(last)2.867 E F0 .276 (is not speci\214ed it is set to the current command)3.457 F .092 -(for listing \(so that)144 492 R/F4 10/Courier@0 SF .092 +(for listing \(so that)144 564 R/F4 10/Courier@0 SF .092 (fc \255l \25510)2.592 F F0 .092(prints the last 10 commands\) and to) 2.592 F F2<8c72>4.502 E(st)-.1 E F0 2.592(otherwise. If)3.272 F F2<8c72> 4.502 E(st)-.1 E F0 .093(is not)3.273 F -(speci\214ed it is set to the pre)144 504 Q -(vious command for editing and \25516 for listing.)-.25 E(The)144 528 Q +(speci\214ed it is set to the pre)144 576 Q +(vious command for editing and \25516 for listing.)-.25 E(The)144 600 Q F12.522 E F0 .022 (option suppresses the command numbers when listing.)2.522 F(The)5.022 E F12.522 E F0 .022(option re)2.522 F -.15(ve)-.25 G .022 -(rses the order of).15 F .438(the commands.)144 540 R .438(If the)5.438 +(rses the order of).15 F .438(the commands.)144 612 R .438(If the)5.438 F F12.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 552 R -.15(ve)-.25 G 2.835(nb).15 G(y)-2.835 E F2 +.335(the editor gi)144 624 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.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 564 R .63(alue of the)-.25 F F3(FCEDIT)3.13 E F0 +(n,).15 E .63(the v)144 636 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 1.884(ther v)144 576 R 1.884 +(is not set.)2.881 F .631(If nei-)5.631 F 1.884(ther v)144 648 R 1.884 (ariable is set, is used.)-.25 F 1.884 (When editing is complete, the edited commands are echoed and)6.884 F --.15(exe)144 588 S(cuted.).15 E .039(In the second form,)144 612 R F2 +-.15(exe)144 660 S(cuted.).15 E .039(In the second form,)144 684 R F2 (command)2.539 E F0 .039(is re-e)2.539 F -.15(xe)-.15 G .039 (cuted after each instance of).15 F F2(pat)2.54 E F0 .04(is replaced by) 2.54 F F2 -.37(re)2.54 G(p).37 E F0 5.04(.A)C(useful)-2.5 E .406 -(alias to use with this is)144 624 R F4 .406(r='fc \255s')2.906 F F0 +(alias to use with this is)144 696 R F4 .406(r='fc \255s')2.906 F F0 2.906(,s)C 2.906(ot)-2.906 G .406(hat typing)-2.906 F F4 6.406(rc)2.906 G(c)-6.406 E F0 .406(runs the last command be)2.906 F .406(ginning with) --.15 F F4(cc)144 636 Q F0(and typing)2.5 E F4(r)2.5 E F0(re-e)2.5 E -.15 -(xe)-.15 G(cutes the last command.).15 E .142 -(If the \214rst form is used, the return v)144 660 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 672 R -.454(If the)5.454 F F12.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 684 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 -.788(If the)5.788 F 1.136 -(second form is used, the return status is that of the command re-e)144 -696 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 708 Q -(alid history line, in which case)-.25 E F1(fc)2.5 E F0(returns f)2.5 E -(ailure.)-.1 E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(7)203.725 E 0 -Cg EP +-.15 F F4(cc)144 708 Q F0(and typing)2.5 E F4(r)2.5 E F0(re-e)2.5 E -.15 +(xe)-.15 G(cutes the last command.).15 E(GNU Bash-3.0)72 768 Q +(2004 Apr 20)148.735 E(7)203.725 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(fg)108 84 Q F0([)2.5 E/F2 10/Times-Italic@0 SF(jobspec) -A F0(])A(Resume)144 96 Q F2(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 F2(jobspec)5.653 E F0 -1.414(is not present, the)4.223 F(shell')144 108 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 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .142 +(If the \214rst form is used, the return v)144 84 R .142 +(alue is 0 unless an in)-.25 F -.25(va)-.4 G .142 +(lid option is encountered or).25 F/F1 10/Times-Italic@0 SF<8c72>4.552 E +(st)-.1 E F0(or)3.322 E F1(last)2.732 E F0 .455 +(specify history lines out of range.)144 96 R .454(If the)5.454 F/F2 10 +/Times-Bold@0 SF2.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 108 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 +.788(If the)5.788 F 1.136 +(second form is used, the return status is that of the command re-e)144 +120 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 132 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 148.8 Q F0([)2.5 E F1(jobspec)A F0(])A(Resume) +144 160.8 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.414(is not present, the)4.223 F(shell')144 172.8 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 120 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 -F2(jobspec)145.74 132 Q F0 .004(does not specify a v)2.815 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 148.8 -Q F2(optstring name)2.5 E F0([)2.5 E F2(ar)A(gs)-.37 E F0(])A F1 -(getopts)144 160.8 Q F0 .793 -(is used by shell procedures to parse positional parameters.)3.293 F F2 +(alue is that of the command placed into the)-.25 F(fore)144 184.8 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 196.8 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 213.6 Q F1 +(optstring name)2.5 E F0([)2.5 E F1(ar)A(gs)-.37 E F0(])A F2(getopts)144 +225.6 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 172.8 R .149 +(characters to be recognized; if a character is follo)144 237.6 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 184.8 Q .578 +-.15(ve a)-.2 H(n).15 E(ar)144 249.6 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 196.8 R 1.665 -(Each time it is in)6.665 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F1(getopts) +(acters may not be used as option characters.)144 261.6 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 208.8 R(ariable)-.25 E F2(name)3.296 E F0 -3.296(,i).18 G(nitializing)-3.296 E F2(name)3.657 E F0 .797 +(option in the shell v)144 273.6 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 220.8 Q .085 +3.297(ft)-3.297 G .797(he ne)-3.297 F(xt)-.15 E(ar)144 285.6 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 232.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 F1 +(or a shell script is in)144 297.6 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 244.8 R(ariable)-.25 E F3(OPT)3.304 E(ARG)-.81 E F4(.)A +(into the v)144 309.6 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 256.8 R F1(getopts)2.793 E F0 .293 +(reset between multiple calls to)144 321.6 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 268.8 -Q 2.044(When the end of options is encountered,)144 292.8 R F1(getopts) +2.793(ws)-.25 G .294(et of parameters)-2.793 F(is to be used.)144 333.6 +Q 2.044(When the end of options is encountered,)144 357.6 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 F1(OPTIND)144 304.8 Q F0 +(alue greater than zero.)-.25 F F2(OPTIND)144 369.6 Q F0 (is set to the inde)2.5 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 F1(getopts)144 328.8 Q F0 2.392 +(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F2(name)2.5 E F0 +(is set to ?.)2.5 E F2(getopts)144 393.6 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 -340.8 Q F0(parses those instead.)2.5 E F1(getopts)144 364.8 Q F0 1.166 +(ni).15 G(n)-4.893 E F1(ar)4.893 E(gs)-.37 E F0(,).27 E F2(getopts)144 +405.6 Q F0(parses those instead.)2.5 E F2(getopts)144 429.6 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.263 -(reporting is used.)144 376.8 R 1.263 +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.263 +(reporting is used.)144 441.6 R 1.263 (In normal operation diagnostic messages are printed when in)6.263 F -.25(va)-.4 G 1.263(lid options or).25 F .394(missing option ar)144 -388.8 R .394(guments are encountered.)-.18 F .394(If the v)5.394 F +453.6 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 400.8 Q +(is set to 0, no error messages)2.644 F(will be displayed, e)144 465.6 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 424.8 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 +F1(optstring)2.73 E F0(is not a colon.)2.72 E .666(If an in)144 489.6 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 -436.8 R F3(OPT)2.9 E(ARG)-.81 E F4(.)A F0(If)4.899 E F1(getopts)2.899 E +501.6 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 448.8 Q 1.241(If a required ar)144 -472.8 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 484.8 +(diagnostic message is printed.)144 513.6 Q 1.241(If a required ar)144 +537.6 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 549.6 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 496.8 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 520.8 Q F0 .902 +(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 561.6 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 585.6 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 532.8 Q F1(hash)108 -549.6 Q F0([)2.5 E F1(\255lr)A F0 2.5(][)C F1-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 --.15(Fo)144 561.6 S 3.555(re).15 G(ach)-3.555 E F2(name)3.555 E F0 3.555 +(options is encountered or an error occurs.)144 597.6 Q F2(hash)108 +614.4 Q F0([)2.5 E F2(\255lr)A F0 2.5(][)C F2-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 +-.15(Fo)144 626.4 S 3.555(re).15 G(ach)-3.555 E F1(name)3.555 E F0 3.555 (,t).18 G 1.054(he full \214le name of the command is determined by sea\ -rching the directories in)-3.555 F F1($P)144 573.6 Q -.95(AT)-.74 G(H) -.95 E F0 .349(and remembered.)2.849 F .349(If the)5.349 F F12.849 +rching the directories in)-3.555 F F2($P)144 638.4 Q -.95(AT)-.74 G(H) +.95 E F0 .349(and remembered.)2.849 F .349(If the)5.349 F F22.849 E F0 .349(option is supplied, no path search is performed, and)2.849 F -F2(\214lename)4.76 E F0 .452 -(is used as the full \214le name of the command.)144 585.6 R(The)5.452 E -F12.952 E F0 .452(option causes the shell to for)2.952 F .452 -(get all remem-)-.18 F .592(bered locations.)144 597.6 R(The)5.592 E F1 +F1(\214lename)4.76 E F0 .452 +(is used as the full \214le name of the command.)144 650.4 R(The)5.452 E +F22.952 E F0 .452(option causes the shell to for)2.952 F .452 +(get all remem-)-.18 F .592(bered locations.)144 662.4 R(The)5.592 E F2 3.092 E F0 .593(option causes the shell to for)3.092 F .593 -(get the remembered location of each)-.18 F F2(name)3.093 E F0(.)A .021 -(If the)144 609.6 R F12.521 E F0 .021 -(option is supplied, the full pathname to which each)2.521 F F2(name) +(get the remembered location of each)-.18 F F1(name)3.093 E F0(.)A .021 +(If the)144 674.4 R F22.521 E F0 .021 +(option is supplied, the full pathname to which each)2.521 F F1(name) 2.52 E F0 .02(corresponds is printed.)2.52 F .02(If multi-)5.02 F(ple) -144 621.6 Q F2(name)3.703 E F0(ar)3.703 E 1.203 -(guments are supplied with)-.18 F F13.703 E F0 3.703(,t)C(he) --3.703 E F2(name)3.703 E F0 1.204 -(is printed before the hashed full pathname.)3.703 F(The)144 633.6 Q F1 +144 686.4 Q F1(name)3.703 E F0(ar)3.703 E 1.203 +(guments are supplied with)-.18 F F23.703 E F0 3.703(,t)C(he) +-3.703 E F1(name)3.703 E F0 1.204 +(is printed before the hashed full pathname.)3.703 F(The)144 698.4 Q F2 3.216 E F0 .715(option causes output to be displayed in a format \ that may be reused as input.)3.216 F .715(If no ar)5.715 F(gu-)-.18 E -1.183(ments are gi)144 645.6 R -.15(ve)-.25 G 1.183(n, or if only).15 F -F13.683 E F0 1.184 +1.183(ments are gi)144 710.4 R -.15(ve)-.25 G 1.183(n, or if only).15 F +F23.683 E F0 1.184 (is supplied, information about remembered commands is printed.)3.684 F -(The return status is true unless a)144 657.6 Q F2(name)2.86 E F0 +(The return status is true unless a)144 722.4 Q F1(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 674.4 Q F0([)2.5 E F1A F0 2.5(][)C F2(pattern)-2.5 E -F0(])A .867(Display helpful information about b)144 686.4 R .867 -(uiltin commands.)-.2 F(If)5.867 E F2(pattern)4.617 E F0 .866 -(is speci\214ed,)3.607 F F1(help)3.366 E F0(gi)3.366 E -.15(ve)-.25 G -3.366(sd).15 G(etailed)-3.366 E .306(help on all commands matching)144 -698.4 R F2(pattern)2.806 E F0 2.807(;o).24 G .307 -(therwise help for all the b)-2.807 F .307 -(uiltins and shell control struc-)-.2 F .596(tures is printed.)144 710.4 -R(The)5.596 E F13.096 E F0 .596 -(option restricts the information displayed to a short usage synopsis.) -3.096 F(The)5.596 E(return status is 0 unless no command matches)144 -722.4 Q F2(pattern)2.5 E F0(.).24 E(GNU Bash-3.0)72 768 Q(2004 Apr 20) -148.735 E(8)203.725 E 0 Cg EP +E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(8)203.725 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/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 +/Times-Bold@0 SF(help)108 84 Q F0([)2.5 E F1(\255dms)A F0 2.5(][)C/F2 10 +/Times-Italic@0 SF(pattern)-2.5 E F0(])A .867 +(Display helpful information about b)144 96 R .867(uiltin commands.)-.2 +F(If)5.867 E F2(pattern)4.617 E F0 .866(is speci\214ed,)3.607 F F1(help) +3.366 E F0(gi)3.366 E -.15(ve)-.25 G 3.366(sd).15 G(etailed)-3.366 E +.306(help on all commands matching)144 108 R F2(pattern)2.806 E F0 2.807 +(;o).24 G .307(therwise help for all the b)-2.807 F .307 +(uiltins and shell control struc-)-.2 F(tures is printed.)144 120 Q F1 +144 132 Q F0(Display a short description of each)24.74 E F2 +(pattern)2.5 E F1(-m)146.5 144 Q F0(Display the description of each) +21.84 E F2(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat) +-2.5 E F1144 156 Q F0 +(Display only a short usage synopsis for each)26.41 E F2(pattern)2.5 E +F0(The return status is 0 unless no command matches)108 168 Q F2 +(pattern)2.5 E F0(.).24 E F1(history [)108 184.8 Q F2(n)A F1(])A +(history \255c)108 196.8 Q(history \255d)108 208.8 Q F2(of)2.5 E(fset) +-.18 E F1(history \255anrw)108 220.8 Q F0([)2.5 E F2(\214lename)A F0(])A +F1(history \255p)108 232.8 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 244.8 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 +256.8 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 1.231(been modi\214ed.)144 168 R 1.231(An ar)6.231 F 1.231(gument of) --.18 F F2(n)4.091 E F0 1.231(lists only the last)3.971 F F2(n)4.091 E F0 -3.73(lines. If)3.97 F 1.23(the shell v)3.73 F(ariable)-.25 E F1 -(HISTTIME-)3.73 E(FORMA)144 180 Q(T)-.95 E F0 .249 -(is set and not null, it is used as a format string for)2.749 F F2 -(strftime)2.75 E F0 .25(\(3\) to display the time stamp)B .379 -(associated with each displayed history entry)144 192 R 5.379(.N)-.65 G -2.878(oi)-5.379 G(nterv)-2.878 E .378 -(ening blank is printed between the format-)-.15 F .814 -(ted time stamp and the history line.)144 204 R(If)5.814 E F2 +.752(Lines listed with a)5.752 F F1(*)3.251 E F0(ha)3.251 E -.15(ve)-.2 +G 1.23(been modi\214ed.)144 268.8 R 1.23(An ar)6.23 F 1.23(gument of) +-.18 F F2(n)4.09 E F0 1.231(lists only the last)3.97 F F2(n)4.091 E F0 +3.731(lines. If)3.971 F 1.231(the shell v)3.731 F(ariable)-.25 E F1 +(HISTTIME-)3.731 E(FORMA)144 280.8 Q(T)-.95 E F0 .25 +(is set and not null, it is used as a format string for)2.75 F F2 +(strftime)2.749 E F0 .249(\(3\) to display the time stamp)B .378 +(associated with each displayed history entry)144 292.8 R 5.378(.N)-.65 +G 2.878(oi)-5.378 G(nterv)-2.878 E .379 +(ening blank is printed between the format-)-.15 F .815 +(ted time stamp and the history line.)144 304.8 R(If)5.814 E F2 (\214lename)3.314 E F0 .814 (is supplied, it is used as the name of the history)3.314 F -(\214le; if not, the v)144 216 Q(alue of)-.25 E/F3 9/Times-Bold@0 SF +(\214le; if not, the v)144 316.8 Q(alue of)-.25 E/F3 9/Times-Bold@0 SF (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 F1144 228 Q F0 +(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 328.8 Q F0 (Clear the history list by deleting all the entries.)25.86 E F1144 -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 F1144 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 F1144 288 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 F1144 324 Q F0(Read the contents of the history \ -\214le and use them as the current history)25.86 E(.)-.65 E F1144 -336 Q F0(Write the current history to the history \214le, o)23.08 E -.15 -(ve)-.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G(ontents.) --2.5 E F1144 348 Q F0 .625 +340.8 Q F2(of)2.5 E(fset)-.18 E F0(Delete the history entry at position) +180 352.8 Q F2(of)2.5 E(fset)-.18 E F0(.)A F1144 364.8 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 376.8 Q F0 +(session\) to the history \214le.)2.5 E F1144 388.8 Q F0 .854(Rea\ +d the history lines not already read from the history \214le into the c\ +urrent history list.)24.74 F .772 +(These are lines appended to the history \214le since the be)180 400.8 R +.773(ginning of the current)-.15 F F1(bash)3.273 E F0(ses-)3.273 E +(sion.)180 412.8 Q F1144 424.8 Q F0(Read the contents of the hist\ +ory \214le and use them as the current history)25.86 E(.)-.65 E F1 +144 436.8 Q F0(Write the current history to the history \214le, o)23.08 +E -.15(ve)-.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G +(ontents.)-2.5 E F1144 448.8 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 460.8 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 F1144 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) --.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 .28(If the)144 412.8 R F1(HISTTIMEFORMA)2.78 E(T)-.95 +(normal history e)180 472.8 Q(xpansion.)-.15 E F1144 484.8 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 496.8 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 .28(If the)144 513.6 R F1(HISTTIMEFORMA)2.78 E(T)-.95 E F0 .28 (is set, the time stamp information associated with each history entry) -2.78 F .539(is written to the history \214le, mark)144 424.8 R .539 -(ed with the history comment character)-.1 F 5.54(.W)-.55 G .54 -(hen the history \214le is)-5.54 F 1.779(read, lines be)144 436.8 R -1.779(ginning with the history comment character follo)-.15 F 1.778 +2.78 F .54(is written to the history \214le, mark)144 525.6 R .539 +(ed with the history comment character)-.1 F 5.539(.W)-.55 G .539 +(hen the history \214le is)-5.539 F 1.778(read, lines be)144 537.6 R +1.778(ginning with the history comment character follo)-.15 F 1.779 (wed immediately by a digit are)-.25 F 1.424 -(interpreted as timestamps for the pre)144 448.8 R 1.424 +(interpreted as timestamps for the pre)144 549.6 R 1.424 (vious history line.)-.25 F 1.424(The return v)6.424 F 1.424 (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 F12.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 F12.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 F1144 525.6 Q F0 +, an in)144 561.6 R -.25(va)-.4 G(lid).25 E F2(of)3 E(fset)-.18 E F0(is) +3 E(supplied as an ar)144 573.6 Q(gument to)-.18 E F12.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 F12.5 E F0 -.1(fa)2.5 G(ils.).1 E F1(jobs)108 +590.4 Q F0([)2.5 E F1(\255lnprs)A F0 2.5(][)C F2(jobspec)A F0(... ])2.5 +E F1(jobs \255x)108 602.4 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 614.4 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 F1144 626.4 Q F0 (List process IDs in addition to the normal information.)27.52 E F1 -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 F1144 549.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 561.6 Q F1144 573.6 Q F0 -(Restrict output to running jobs.)25.86 E F1144 585.6 Q F0 -(Restrict output to 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 +144 638.4 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 F1144 650.4 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 662.4 Q F1144 674.4 Q F0 +(Restrict output to running jobs.)25.86 E F1144 686.4 Q F0 +(Restrict output to stopped jobs.)26.41 E(If)144 703.2 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 715.2 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 -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 643.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 F1A F2(sigspec)2.5 E F0(|)2.5 E F1 -2.5 E F2(signum)2.5 E F0(|)2.5 E F12.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) -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 -F13.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 -F13.023 E F0 .523(is gi)3.023 F -.15(ve)-.25 G .523(n, the names) -.15 F(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(9)203.725 E 0 Cg EP +E F2(jobspec)4.24 E F0(is supplied.)2.81 E(GNU Bash-3.0)72 768 Q +(2004 Apr 20)148.735 E(9)203.725 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .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 SF2.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.964 E(g)-.37 E F0 1.134 -(is an arithmetic e)3.854 F 1.134(xpression to be e)-.15 F -.25(va)-.25 -G 1.135(luated \(see).25 F/F3 9/Times-Bold@0 SF 1.135(ARITHMETIC EV) -3.635 F(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF -(\).)A F0 1.135(If the)5.635 F(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 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .395(If the) +144 84 R/F1 10/Times-Bold@0 SF2.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 10 +/Times-Italic@0 SF(jobspec)4.634 E F0 .394(found in)3.204 F F2(command) +3.094 E F0(or)3.664 E F2(ar)3.224 E(gs)-.37 E F0 .394(with the corre-) +3.164 F(sponding process group ID, and e)144 96 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 112.8 Q +F0([)2.5 E F1A F2(sigspec)2.5 E F0(|)2.5 E F12.5 E F2 +(signum)2.5 E F0(|)2.5 E F12.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 124.8 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 136.8 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 148.8 R .619 -.15(ve s)-.25 H .319 +(ignal name such as).15 F/F3 9/Times-Bold@0 SF(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 160.8 Q F2(signum)4.188 E F0 +1.349(is a signal number)4.168 F 6.349(.I)-.55 G(f)-6.349 E F2(sigspec) +4.189 E F0 1.349(is not present, then)4.159 F F3(SIGTERM)3.849 E F0 +1.349(is assumed.)3.599 F(An)6.349 E(ar)144 172.8 Q .523(gument of)-.18 +F F13.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 F13.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 184.8 +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 196.8 Q .378(gument to)-.18 F +F12.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 208.8 +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 220.8 Q -.25(va)-.4 G(lid option is encountered.) +.25 E F1(let)108 237.6 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 249.6 Q F2(ar)3.965 E(g)-.37 E F0 1.135 +(is an arithmetic e)3.855 F 1.134(xpression to be e)-.15 F -.25(va)-.25 +G 1.134(luated \(see).25 F F3 1.134(ARITHMETIC EV)3.634 F(ALU)-1.215 E +-.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF(\).)A F0 1.134(If the) +5.634 F(last)144 261.6 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 278.4 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 290.4 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 302.4 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 -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 +314.4 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 326.4 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 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(popd)108 283.2 Q F0 -<5bad>2.5 E F2(n)A F0 2.5(][)C(+)-2.5 E F1(n)A F0 2.5(][)C-2.5 E F1 -(n)A F0(])A(Remo)144 295.2 Q -.15(ve)-.15 G 2.799(se).15 G .299 +6.165 F F1(local)3.664 E F0 1.164(when not)3.664 F .232 +(within a function.)144 338.4 R .233(The return status is 0 unless)5.232 +F F1(local)2.733 E F0 .233(is used outside a function, an in)2.733 F +-.25(va)-.4 G(lid).25 E F2(name)3.093 E F0(is)2.913 E(supplied, or)144 +350.4 Q F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F1 +(logout)108 367.2 Q F0(Exit a login shell.)9.33 E F1(map\214le)108 384 Q +F0([)2.5 E F1A F2(count)2.5 E F0 2.5(][)C F1-2.5 E F2 +(origin)2.5 E F0 2.5(][)C F1-2.5 E F2(cou)2.5 E F0(nt)144 396 Q F2 +3.212(][)C F1-3.212 E F2 3.212(][)C F1-3.212 E F2 .712 +(fd] [)3.212 F F1A F2(callbac)3.212 E .712(k] [)-.2 F F1A F2 +(Iquantum)3.212 E F1 3.212(][)C F2(arr)-3.212 E(ay)-.15 E F1 3.212(]R)C +.712(ead lines fr)-3.212 F .712(om the standard input into)-.18 F .605 +(array v)144 408 R(ariable)-.1 E F2(arr)3.105 E(ay)-.15 E F0 3.105(,o) +.32 G 3.105(rf)-3.105 G .605(rom \214le descriptor)-3.105 F F2(fd)3.106 +E F0 .606(if the)3.106 F F13.106 E F0 .606(option is supplied.) +3.106 F .606(The v)5.606 F(ariable)-.25 E F1(MAP-)3.106 E(FILE)144 420 Q +F0(is the def)2.5 E(ault)-.1 E F2(arr)2.5 E(ay)-.15 E F0 5(.O)C +(ptions, if supplied, ha)-5 E .3 -.15(ve t)-.2 H(he follo).15 E +(wing meanings:)-.25 E F1144 432 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 F1144 444 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 F1144 456 Q F0(Discard the \214rst) +26.41 E F2(count)2.5 E F0(lines read.)2.5 E F1144 468 Q F0(Remo) +26.97 E .3 -.15(ve a t)-.15 H(railing line from each line read.).15 E F1 +144 480 Q F0(Read lines from \214le descriptor)24.74 E F2(fd)2.5 E +F0(instead of the standard input.)2.5 E F1144 492 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 F12.5 E F0 +(option speci\214es)2.5 E F2(quantum)2.5 E F0(.).32 E F1144 504 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 520.8 Q F12.5 E F0 +(is speci\214ed without)2.5 E F12.5 E F0 2.5(,t)C(he def)-2.5 E +(ault quantum is 5000.)-.1 E(If not supplied with an e)144 537.6 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 554.4 +Q F0 .996(returns successfully unless an in)3.496 F -.25(va)-.4 G .996 +(lid option or option ar).25 F .995(gument is supplied, or)-.18 F F2 +(arr)3.495 E(ay)-.15 E F0(is)3.495 E(in)144 566.4 Q -.25(va)-.4 G +(lid or unassignable.).25 E F1(popd)108 583.2 Q F0<5bad>2.5 E F1(n)A F0 +2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C-2.5 E F2(n)A F0(])A(Remo)144 +595.2 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 -307.2 R F2(cd)3.979 E F0 1.479(to the ne)3.979 F 3.979(wt)-.25 G 1.479 +607.2 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 319.2 Q F2144 331.2 Q F0 .551 +F(wing)-.25 E(meanings:)144 619.2 Q F1144 631.2 Q F0 .551 (Suppresses the normal change of directory when remo)24.74 F .551 (ving directories from the stack, so)-.15 F -(that only the stack is manipulated.)180 343.2 Q F2(+)144 355.2 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 643.2 Q F1(+)144 655.2 Q F2(n)A +F0(Remo)25.3 E -.15(ve)-.15 G 2.64(st).15 G(he)-2.64 E F2(n)2.64 E F0 .14(th entry counting from the left of the list sho)B .14(wn by)-.25 F -F2(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero.)-2.64 F -.15(Fo)180 -367.2 S 2.5(re).15 G(xample:)-2.65 E/F5 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 +667.2 S 2.5(re).15 G(xample:)-2.65 E/F5 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 F5(popd +1)2.5 E F0(the second.)2.5 E F2144 379.2 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 +-.65 E F5(popd +1)2.5 E F0(the second.)2.5 E F1144 679.2 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 F2(dirs)3.76 E F0 3.76(,s)C 1.26(tarting with)-3.76 F 2.5(zero. F)180 -391.2 R(or e)-.15 E(xample:)-.15 E F5(popd -0)2.5 E F0(remo)2.5 E -.15 +F F1(dirs)3.76 E F0 3.76(,s)C 1.26(tarting with)-3.76 F 2.5(zero. F)180 +691.2 R(or e)-.15 E(xample:)-.15 E F5(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 F5(popd -1)2.5 -E F0(the ne)2.5 E(xt to last.)-.15 E .644(If the)144 408 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 420 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 432 Q -(ails.)-.1 E F2(printf)108 448.8 Q F0([)2.5 E F2A F1(var)2.5 E F0 -(])A F1(format)2.5 E F0([)2.5 E F1(ar)A(guments)-.37 E F0(])A .372 -(Write the formatted)144 460.8 R F1(ar)2.872 E(guments)-.37 E F0 .372 -(to the standard output under the control of the)2.872 F F1(format)2.872 -E F0 5.372(.T)C(he)-5.372 E F1(format)2.872 E F0 1.804(is a character s\ +E F0(the ne)2.5 E(xt to last.)-.15 E .644(If the)144 708 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 2.289(returns f)144 720 R 2.289(alse if an in)-.1 F -.25(va)-.4 G +2.289(lid option is encountered, the directory stack is empty).25 F 4.79 +(,an)-.65 G(on-e)-4.79 E(xistent)-.15 E(GNU Bash-3.0)72 768 Q +(2004 Apr 20)148.735 E(10)198.725 E 0 Cg EP +%%Page: 11 11 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E +(directory stack entry is speci\214ed, or the directory change f)144 84 +Q(ails.)-.1 E/F1 10/Times-Bold@0 SF(printf)108 100.8 Q F0([)2.5 E F1 +A/F2 10/Times-Italic@0 SF(var)2.5 E F0(])A F2(format)2.5 E F0([) +2.5 E F2(ar)A(guments)-.37 E F0(])A .372(Write the formatted)144 112.8 R +F2(ar)2.872 E(guments)-.37 E F0 .372 +(to the standard output under the control of the)2.872 F F2(format)2.872 +E F0 5.372(.T)C(he)-5.372 E F2(format)2.872 E F0 1.804(is a character s\ tring which contains three types of objects: plain characters, which ar\ -e simply)144 472.8 R .159 +e simply)144 124.8 R .159 (copied to standard output, character escape sequences, which are con) -144 484.8 R -.15(ve)-.4 G .158(rted and copied to the stan-).15 F .499(\ +144 136.8 R -.15(ve)-.4 G .158(rted and copied to the stan-).15 F .499(\ dard output, and format speci\214cations, each of which causes printing\ - of the ne)144 496.8 R .5(xt successi)-.15 F -.15(ve)-.25 G F1(ar)3.15 E -(gu-)-.37 E(ment)144 508.8 Q F0 5.424(.I)C 2.924(na)-5.424 G .424 -(ddition to the standard)-2.924 F F1(printf)2.924 E F0 .424 -(\(1\) formats,)B F2(%b)2.924 E F0(causes)2.923 E F2(printf)2.923 E F0 + of the ne)144 148.8 R .5(xt successi)-.15 F -.15(ve)-.25 G F2(ar)3.15 E +(gu-)-.37 E(ment)144 160.8 Q F0 5.424(.I)C 2.924(na)-5.424 G .424 +(ddition to the standard)-2.924 F F2(printf)2.924 E F0 .424 +(\(1\) formats,)B F1(%b)2.924 E F0(causes)2.923 E F1(printf)2.923 E F0 .423(to e)2.923 F .423(xpand backslash escape)-.15 F .976 -(sequences in the corresponding)144 520.8 R F1(ar)3.476 E(gument)-.37 E -F0(\(e)3.476 E .976(xcept that)-.15 F F2(\\c)3.476 E F0 .976 -(terminates output, backslashes in)3.476 F F2<5c08>3.477 E F0(,)A F2 -(\\")3.477 E F0(,)A(and)144 532.8 Q F2(\\?)3.422 E F0 .922(are not remo) +(sequences in the corresponding)144 172.8 R F2(ar)3.476 E(gument)-.37 E +F0(\(e)3.476 E .976(xcept that)-.15 F F1(\\c)3.476 E F0 .976 +(terminates output, backslashes in)3.476 F F1<5c08>3.477 E F0(,)A F1 +(\\")3.477 E F0(,)A(and)144 184.8 Q F1(\\?)3.422 E F0 .922(are not remo) 3.422 F -.15(ve)-.15 G .922(d, and octal escapes be).15 F .922 -(ginning with)-.15 F F2(\\0)3.422 E F0 .921 -(may contain up to four digits\), and)3.422 F F2(%q)144 544.8 Q F0 -(causes)3.63 E F2(printf)3.63 E F0 1.13(to output the corresponding)3.63 -F F1(ar)3.631 E(gument)-.37 E F0 1.131 -(in a format that can be reused as shell)3.631 F(input.)144 556.8 Q(The) -144 580.8 Q F22.904 E F0 .404 +(ginning with)-.15 F F1(\\0)3.422 E F0 .921 +(may contain up to four digits\), and)3.422 F F1(%q)144 196.8 Q F0 +(causes)3.63 E F1(printf)3.63 E F0 1.13(to output the corresponding)3.63 +F F2(ar)3.631 E(gument)-.37 E F0 1.131 +(in a format that can be reused as shell)3.631 F(input.)144 208.8 Q(The) +144 232.8 Q F12.904 E F0 .404 (option causes the output to be assigned to the v)2.904 F(ariable)-.25 E -F1(var)2.904 E F0 .404(rather than being printed to the)2.904 F -(standard output.)144 592.8 Q(The)144 616.8 Q F1(format)3.423 E F0 .923 -(is reused as necessary to consume all of the)3.423 F F1(ar)3.423 E -(guments)-.37 E F0 5.923(.I)C 3.423(ft)-5.923 G(he)-3.423 E F1(format) -3.423 E F0 .924(requires more)3.424 F F1(ar)144 628.8 Q(guments)-.37 E +F2(var)2.904 E F0 .404(rather than being printed to the)2.904 F +(standard output.)144 244.8 Q(The)144 268.8 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 280.8 Q(guments)-.37 E F0 .033(than are supplied, the e)2.534 F .033 (xtra format speci\214cations beha)-.15 F .333 -.15(ve a)-.2 H 2.533(si) .15 G 2.533(faz)-2.533 G .033(ero v)-2.533 F .033(alue or null string,) --.25 F(as appropriate, had been supplied.)144 640.8 Q(The return v)5 E -(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F2(pushd) -108 657.6 Q F0([)2.5 E F2A F0 2.5(][)C(+)-2.5 E F1(n)A F0 2.5(][)C --2.5 E F1(n)A F0(])A F2(pushd)108 669.6 Q F0([)2.5 E F2A F0 -2.5(][)C F1(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 681.6 R 3.14(wt) --.25 G .64(op of the)-3.14 F 1.316(stack the current w)144 693.6 R 1.316 +-.25 F(as appropriate, had been supplied.)144 292.8 Q(The return v)5 E +(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F1(pushd) +108 309.6 Q F0([)2.5 E F1A F0 2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C +-2.5 E F2(n)A F0(])A F1(pushd)108 321.6 Q F0([)2.5 E F1A 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 333.6 R 3.14(wt) +-.25 G .64(op of the)-3.14 F 1.316(stack the current w)144 345.6 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 705.6 R 5.871(.A) +(returns 0, unless the directory stack is empty)144 357.6 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 717.6 Q -(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(10)198.725 E 0 Cg EP -%%Page: 11 11 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF144 84 Q F0 .902(Suppresses the normal change of \ -directory when adding directories to the stack, so that)24.74 F -(only the stack is manipulated.)180 96 Q F1(+)144 108 Q/F2 10 -/Times-Italic@0 SF(n)A F0 1.267(Rotates the stack so that the)25.3 F F2 -(n)3.767 E F0 1.268 +(ve t)-.2 H .872(he follo).15 F .872(wing mean-)-.25 F(ings:)144 369.6 Q +F1144 381.6 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 393.6 Q F1(+)144 405.6 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 120 Q F0 2.5(,s)C(tarting with zero\) is at the top.) --2.5 E F1144 132 Q F2(n)A F0 .92(Rotates the stack so that the)25.3 -F F2(n)3.42 E F0 .92 +-.25 F F1(dirs)180 417.6 Q F0 2.5(,s)C +(tarting with zero\) is at the top.)-2.5 E F1144 429.6 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 F1(dirs)180 144 Q F0 2.5(,s)C(tarting with zero\) is at the top.)-2.5 -E F2(dir)144.35 156 Q F0(Adds)23.98 E F2(dir)2.85 E F0 +F F1(dirs)180 441.6 Q F0 2.5(,s)C(tarting with zero\) is at the top.) +-2.5 E F2(dir)144.35 453.6 Q F0(Adds)23.98 E F2(dir)2.85 E F0 (to the directory stack at the top, making it the ne)3.23 E 2.5(wc)-.25 -G(urrent w)-2.5 E(orking directory)-.1 E(.)-.65 E .488(If the)144 172.8 +G(urrent w)-2.5 E(orking directory)-.1 E(.)-.65 E .488(If the)144 470.4 R F1(pushd)2.988 E F0 .488(command is successful, a)2.988 F F1(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 184.8 R F2(dir)3.89 E F0 -.1(fa)4.27 G +(returns 0 unless the cd to)144 482.4 R F2(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 -196.8 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent directory stack ele\ +494.4 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent directory stack ele\ ment is speci\214ed, or the directory change to the)-.15 F -(speci\214ed ne)144 208.8 Q 2.5(wc)-.25 G(urrent directory f)-2.5 E -(ails.)-.1 E F1(pwd)108 225.6 Q F0([)2.5 E F1(\255LP)A F0(])A .845 -(Print the absolute pathname of the current w)144 237.6 R .845 +(speci\214ed ne)144 506.4 Q 2.5(wc)-.25 G(urrent directory f)-2.5 E +(ails.)-.1 E F1(pwd)108 523.2 Q F0([)2.5 E F1(\255LP)A F0(])A .845 +(Print the absolute pathname of the current w)144 535.2 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 -249.6 R F12.681 E F0 .181(option is supplied or the)2.681 F F1 +547.2 R F12.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 .182(iltin command is).2 F 3.264 -(enabled. If)144 261.6 R(the)3.264 E F13.264 E F0 .763 +(enabled. If)144 559.2 R(the)3.264 E F13.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 273.6 R -.25(va) --.4 G(lid).25 E(option is supplied.)144 285.6 Q F1 -.18(re)108 302.4 S -(ad).18 E F0([)2.5 E F1(\255ers)A F0 2.5(][)C F1-2.5 E F2(aname) -2.5 E F0 2.5(][)C F1-2.5 E F2(delim)2.5 E F0 2.5(][)C-2.5 E F2 -(te)2.5 E(xt)-.2 E F0 2.5(][)C F1-2.5 E F2(nc)2.5 E(har)-.15 E(s) --.1 E F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(ompt)-.45 E F0 2.5(][)C F1 --2.5 E F2(timeout)2.5 E F0 2.5(][)C F1-2.5 E F2(fd)2.5 E F0 -2.5(][)C F2(name)-2.5 E F0(...])2.5 E .516(One line is read from the st\ -andard input, or from the \214le descriptor)144 314.4 R F2(fd)3.016 E F0 -.516(supplied as an ar)3.016 F .516(gument to)-.18 F(the)144 326.4 Q F1 -2.538 E F0 .038(option, and the \214rst w)2.538 F .038 + reading the name of the current directory or an in)144 571.2 R -.25(va) +-.4 G(lid).25 E(option is supplied.)144 583.2 Q F1 -.18(re)108 600 S(ad) +.18 E F0([)2.5 E F1(\255ers)A F0 2.5(][)C F1-2.5 E F2(aname)2.5 E +F0 2.5(][)C F1-2.5 E F2(delim)2.5 E F0 2.5(][)C-2.5 E F2(te) +2.5 E(xt)-.2 E F0 2.5(][)C F1-2.5 E F2(nc)2.5 E(har)-.15 E(s)-.1 E +F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(ompt)-.45 E F0 2.5(][)C F1 +-2.5 E F2(timeout)2.5 E F0 2.5(][)C F1-2.5 E F2(fd)2.5 E F0 2.5 +(][)C F2(name)-2.5 E F0(...])2.5 E .516(One line is read from the stand\ +ard input, or from the \214le descriptor)144 612 R F2(fd)3.016 E F0 .516 +(supplied as an ar)3.016 F .516(gument to)-.18 F(the)144 624 Q F1 +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 338.4 R -.15(ve)-.15 G 2.92(rw) +F0(,).18 E .42(and so on, with lefto)144 636 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 350.4 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 362.4 S 2.511(lues. The).25 F .011 +.18 G 2.92(ft)-5.42 G(here)-2.92 E .54(are fe)144 648 R .54(wer w)-.25 F +.541(ords read from the input stream than names, the remaining names ar\ +e assigned empty)-.1 F -.25(va)144 660 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 374.4 R 2.19 -.15(ve a)-.15 H 2.19 -.15(ny s).15 H +(be used to remo)144 672 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 386.4 Q .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F1144 398.4 Q F2(aname)2.5 E F0 1.05(The w) -180 410.4 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 422.4 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 F1144 434.4 Q F2(delim)2.5 E -F0(The \214rst character of)180 446.4 Q F2(delim)2.5 E F0 +(Options, if supplied, ha)144 684 Q .3 -.15(ve t)-.2 H(he follo).15 E +(wing meanings:)-.25 E F1144 696 Q F2(aname)2.5 E F0 1.05(The w) +180 708 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 720 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-3.0)72 +768 Q(2004 Apr 20)148.735 E(11)198.725 E 0 Cg EP +%%Page: 12 12 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF144 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 (is used to terminate the input line, rather than ne)2.5 E(wline.)-.25 E -F1144 458.4 Q F0 .372 +F1144 108 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(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 -(to obtain the line.)180 470.4 Q F1144 482.4 Q F2(te)2.5 E(xt)-.2 -E F0(If)10.78 E F1 -.18(re)2.716 G(adline).18 E F0 .216 +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(to obtain the line.)180 120 Q F1144 132 Q F2(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 494.4 Q(gins.)-.15 E F1144 506.4 Q F2(nc)2.5 E -(har)-.15 E(s)-.1 E F1 -.18(re)180 518.4 S(ad).18 E F0 1.394 +-.25 F(ing be)180 144 Q(gins.)-.15 E F1144 156 Q F2(nc)2.5 E(har) +-.15 E(s)-.1 E F1 -.18(re)180 168 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.)180 530.4 Q F1144 542.4 Q F2(pr)2.5 E(ompt)-.45 E F0 -(Display)180 554.4 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 566.4 Q -2.5(yi)-.15 G 2.5(nput. The)-2.5 F +-.1 F(input.)180 180 Q F1144 192 Q F2(pr)2.5 E(ompt)-.45 E F0 +(Display)180 204 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 216 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 -144 578.4 Q F0 .543(Backslash does not act as an escape character) +144 228 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 590.4 Q(In particular)5 E 2.5(,ab)-.4 G +-5.543 F(the line.)180 240 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 F1144 602.4 Q F0(Silent mode.)26.41 E +-.25 E F1144 252 Q F0(Silent mode.)26.41 E (If input is coming from a terminal, characters are not echoed.)5 E F1 -144 614.4 Q F2(timeout)2.5 E F0(Cause)180 626.4 Q F1 -.18(re)3.549 -G(ad).18 E F0 1.048(to time out and return f)3.549 F 1.048 +144 264 Q F2(timeout)2.5 E F0(Cause)180 276 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 638.4 Q F0 2.92(seconds. This)2.92 F .42(option has no ef)2.92 F .42 -(fect if)-.25 F F1 -.18(re)2.92 G(ad).18 E F0 .42 -(is not reading input from the terminal)2.92 F(or a pipe.)180 650.4 Q F1 -144 662.4 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 679.2 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.217 -(unless end-of-\214le is encountered,)144 691.2 R F1 -.18(re)3.717 G(ad) -.18 E F0 1.217(times out, or an in)3.717 F -.25(va)-.4 G 1.218 -(lid \214le descriptor is supplied as the).25 F(ar)144 703.2 Q -(gument to)-.18 E F12.5 E F0(.)A(GNU Bash-3.0)72 768 Q -(2004 Apr 20)148.735 E(11)198.725 E 0 Cg EP -%%Page: 12 12 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF -.18(re)108 84 S(adonly).18 E F0([)2.5 E F1(\255apf)A -F0 2.5(][)C/F2 10/Times-Italic@0 SF(name)-2.5 E F0([=)A F2(wor)A(d)-.37 -E F0 2.5(].)C(..])-2.5 E .77(The gi)144 96 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 108 R -1.096(If the)6.096 F F13.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 120 Q 2.873(ed. The)-.1 -F F12.873 E F0 .373(option restricts the v)2.873 F .372 +180 288 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 .064(the decimal point.)180 300 R .064(This option has no ef) +5.064 F .064(fect if)-.25 F F1 -.18(re)2.564 G(ad).18 E F0 .063 +(is not reading input from the terminal)2.564 F(or a pipe.)180 312 Q F1 +144 324 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 340.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(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.218 +(unless end-of-\214le is encountered,)144 352.8 R F1 -.18(re)3.718 G(ad) +.18 E F0 1.217(times out, or an in)3.718 F -.25(va)-.4 G 1.217 +(lid \214le descriptor is supplied as the).25 F(ar)144 364.8 Q +(gument to)-.18 E F12.5 E F0(.)A F1 -.18(re)108 381.6 S(adonly).18 +E F0([)2.5 E F1(\255apf)A 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 393.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 405.6 R +1.097(If the)6.097 F F13.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 417.6 Q 2.872(ed. The) +-.1 F F12.872 E F0 .372(option restricts the v)2.872 F .372 (ariables to arrays.)-.25 F .372(If no)5.372 F F2(name)3.232 E F0(ar) -3.052 E .372(guments are gi)-.18 F -.15(ve)-.25 G .372(n, or if the).15 -F F1144 132 Q F0 .796 -(option is supplied, a list of all readonly names is printed.)3.296 F +3.053 E .373(guments are gi)-.18 F -.15(ve)-.25 G .373(n, or if the).15 +F F1144 429.6 Q F0 .796 +(option is supplied, a list of all readonly names is printed.)3.297 F (The)5.796 E F13.296 E F0 .796(option causes output to be)3.296 F -.828(displayed in a format that may be reused as input.)144 144 R .828 -(If a v)5.828 F .828(ariable name is follo)-.25 F .827(wed by =)-.25 F -F2(wor)A(d)-.37 E F0 3.327(,t)C(he)-3.327 E -.25(va)144 156 S .404 -(lue of the v).25 F .404(ariable is set to)-.25 F F2(wor)2.904 E(d)-.37 -E F0 5.404(.T)C .405(he return status is 0 unless an in)-5.404 F -.25 -(va)-.4 G .405(lid option is encountered,).25 F 1.07(one of the)144 168 -R F2(names)3.929 E F0 1.069(is not a v)3.839 F 1.069(alid shell v)-.25 F -1.069(ariable name, or)-.25 F F13.569 E F0 1.069 +.828(displayed in a format that may be reused as input.)144 441.6 R .828 +(If a v)5.828 F .828(ariable name is follo)-.25 F .828(wed by =)-.25 F +F2(wor)A(d)-.37 E F0 3.328(,t)C(he)-3.328 E -.25(va)144 453.6 S .405 +(lue of the v).25 F .405(ariable is set to)-.25 F F2(wor)2.905 E(d)-.37 +E F0 5.405(.T)C .404(he return status is 0 unless an in)-5.405 F -.25 +(va)-.4 G .404(lid option is encountered,).25 F 1.069(one of the)144 +465.6 R F2(names)3.929 E F0 1.069(is not a v)3.839 F 1.069(alid shell v) +-.25 F 1.069(ariable name, or)-.25 F F13.569 E F0 1.069 (is supplied with a)3.569 F F2(name)3.929 E F0 1.069(that is not a)3.749 -F(function.)144 180 Q F1 -.18(re)108 196.8 S(tur).18 E(n)-.15 E F0([)2.5 -E F2(n)A F0(])A .586(Causes a function to e)144 208.8 R .587 +F(function.)144 477.6 Q F1 -.18(re)108 494.4 S(tur).18 E(n)-.15 E F0([) +2.5 E F2(n)A F0(])A .587(Causes a function to e)144 506.4 R .587 (xit with the return v)-.15 F .587(alue speci\214ed by)-.25 F F2(n)3.087 -E F0 5.587(.I).24 G(f)-5.587 E F2(n)3.447 E F0 .587 +E F0 5.587(.I).24 G(f)-5.587 E F2(n)3.447 E F0 .586 (is omitted, the return status is)3.327 F 1.335 -(that of the last command e)144 220.8 R -.15(xe)-.15 G 1.335 +(that of the last command e)144 518.4 R -.15(xe)-.15 G 1.335 (cuted in the function body).15 F 6.335(.I)-.65 G 3.835(fu)-6.335 G 1.335(sed outside a function, b)-3.835 F 1.335(ut during)-.2 F -.15(exe) -144 232.8 S .794(cution of a script by the).15 F F1(.)3.294 E F0(\() +144 530.4 S .794(cution of a script by the).15 F F1(.)3.294 E F0(\() 5.794 E F1(sour)A(ce)-.18 E F0 3.294(\)c)C .794 -(ommand, it causes the shell to stop e)-3.294 F -.15(xe)-.15 G .795 -(cuting that script).15 F .246(and return either)144 244.8 R F2(n)3.106 -E F0 .246(or the e)2.986 F .246(xit status of the last command e)-.15 F --.15(xe)-.15 G .246(cuted within the script as the e).15 F .245 -(xit sta-)-.15 F .081(tus of the script.)144 256.8 R .082 +(ommand, it causes the shell to stop e)-3.294 F -.15(xe)-.15 G .794 +(cuting that script).15 F .245(and return either)144 542.4 R F2(n)3.105 +E F0 .246(or the e)2.985 F .246(xit status of the last command e)-.15 F +-.15(xe)-.15 G .246(cuted within the script as the e).15 F .246 +(xit sta-)-.15 F .082(tus of the script.)144 554.4 R .082 (If used outside a function and not during e)5.082 F -.15(xe)-.15 G .082 -(cution of a script by).15 F F1(.)2.582 E F0 2.582(,t).833 G .082 -(he return sta-)-2.582 F 2.306(tus is f)144 268.8 R 4.806(alse. An)-.1 F -4.806(yc)-.15 G 2.305(ommand associated with the)-4.806 F F1(RETURN) -4.805 E F0 2.305(trap is e)4.805 F -.15(xe)-.15 G 2.305(cuted before e) +(cution of a script by).15 F F1(.)2.582 E F0 2.581(,t).833 G .081 +(he return sta-)-2.581 F 2.305(tus is f)144 566.4 R 4.805(alse. An)-.1 F +4.805(yc)-.15 G 2.305(ommand associated with the)-4.805 F F1(RETURN) +4.805 E F0 2.306(trap is e)4.806 F -.15(xe)-.15 G 2.306(cuted before e) .15 F -.15(xe)-.15 G(cution).15 E(resumes after the function or script.) -144 280.8 Q F1(set)108 297.6 Q F0([)2.5 E F1 +144 578.4 Q F1(set)108 595.2 Q F0([)2.5 E F1 (\255\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1-2.5 E F2(option)2.5 -E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1(set)108 309.6 Q F0 +E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1(set)108 607.2 Q F0 ([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1(+o)-2.5 E F2(option) -2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 321.6 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 333.6 -R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .783 -(riables cannot be).25 F 2.946(reset. In)144 345.6 R F2 .447(posix mode) -2.946 F F0 2.947(,o)C .447(nly shell v)-2.947 F .447 +2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 619.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 631.2 +R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .784 +(riables cannot be).25 F 2.947(reset. In)144 643.2 R F2 .447(posix mode) +2.947 F F0 2.947(,o)C .447(nly shell v)-2.947 F .447 (ariables are listed.)-.25 F .447 -(The output is sorted according to the current)5.447 F 3.531 -(locale. When)144 357.6 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 .202 -(after the options are processed are treated as v)144 369.6 R .202 +(The output is sorted according to the current)5.447 F 3.53 +(locale. When)144 655.2 R 1.031(options are speci\214ed, the)3.53 F +3.531(ys)-.15 G 1.031(et or unset shell attrib)-3.531 F 3.531(utes. An) +-.2 F 3.531(ya)-.15 G -.18(rg)-3.531 G 1.031(uments remaining).18 F .202 +(after the options are processed are treated as v)144 667.2 R .202 (alues for the positional parameters and are assigned,)-.25 F(in order) -144 381.6 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 679.2 Q 2.5(,t)-.4 G(o)-2.5 E F1($1)2.5 E F0(,)A F1($2)2.5 E F0(,)A F1 2.5(... $)2.5 F F2(n)A F0 5(.O)C(ptions, if speci\214ed, ha)-5 E .3 --.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 393.6 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 405.6 Q -(vironment of subsequent commands.)-.4 E F1144 417.6 Q F0 .131 +-.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 691.2 Q +F0 .539(Automatically mark v)29.3 F .539 +(ariables and functions which are modi\214ed or created for e)-.25 F .54 +(xport to)-.15 F(the en)184 703.2 Q(vironment of subsequent commands.) +-.4 E F1144 715.2 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 429.6 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) --.25 H(nly when job control is enabled.).15 E F1144 441.6 Q F0 -1.694(Exit immediately if a)29.86 F F2 1.693(simple command)4.193 F F0 -(\(see)4.193 E/F3 9/Times-Bold@0 SF 1.693(SHELL GRAMMAR)4.193 F F0(abo) -3.943 E -.15(ve)-.15 G 4.193(\)e).15 G 1.693(xits with a)-4.343 F .011 -(non-zero status.)184 453.6 R .011(The shell does not e)5.011 F .011 -(xit if the command that f)-.15 F .012(ails is part of the command)-.1 F -.719(list immediately follo)184 465.6 R .719(wing a)-.25 F F1(while) -3.219 E F0(or)3.219 E F1(until)3.219 E F0 -.1(ke)3.219 G(yw)-.05 E .719 -(ord, part of the test in an)-.1 F F1(if)3.218 E F0(statement,)3.218 E -.378(part of a command e)184 477.6 R -.15(xe)-.15 G .379(cuted in a).15 -F F1(&&)2.879 E F0(or)2.879 E/F4 10/Symbol SF2.879 E F0 .379 -(list, an)2.879 F 2.879(yc)-.15 G .379(ommand in a pipeline b)-2.879 F -.379(ut the last,)-.2 F .578(or if the command')184 489.6 R 3.078(sr) --.55 G .578(eturn v)-3.078 F .578(alue is being in)-.25 F -.15(ve)-.4 G -.578(rted via).15 F F1(!)3.078 E F0 5.578(.F)C .577 -(ailing simple commands that)-5.728 F .402(are part of shell functions \ -or command lists enclosed in braces or parentheses satisfying)184 501.6 -R .841(the abo)184 513.6 R 1.141 -.15(ve c)-.15 H .841 -(onditions do not cause the shell to e).15 F 3.341(xit. A)-.15 F .84 -(trap on)3.34 F F1(ERR)3.34 E F0 3.34(,i)C 3.34(fs)-3.34 G .84(et, is e) --3.34 F -.15(xe)-.15 G(cuted).15 E(before the shell e)184 525.6 Q(xits.) --.15 E F1144 537.6 Q F0(Disable pathname e)30.97 E(xpansion.)-.15 -E F1144 549.6 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 -561.6 Q(ault.)-.1 E F1144 573.6 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 585.6 Q F1 -144 597.6 Q F0 .148(Monitor mode.)25.97 F .148 -(Job control is enabled.)5.148 F .149(This option is on by def)5.148 F -.149(ault for interacti)-.1 F .449 -.15(ve s)-.25 H(hells).15 E .637 -(on systems that support it \(see)184 609.6 R F3 .636(JOB CONTR)3.136 F -(OL)-.27 E F0(abo)2.886 E -.15(ve)-.15 G 3.136(\). Background).15 F .636 -(processes run in a)3.136 F .641 -(separate process group and a line containing their e)184 621.6 R .642 -(xit status is printed upon their com-)-.15 F(pletion.)184 633.6 Q F1 -144 645.6 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 -657.6 Q(This is ignored by interacti)5 E .3 -.15(ve s)-.25 H(hells.).15 -E F1144 669.6 Q F2(option\255name)2.5 E F0(The)184 681.6 Q F2 -(option\255name)2.5 E F0(can be one of the follo)2.5 E(wing:)-.25 E F1 -(allexport)184 693.6 Q F0(Same as)224 705.6 Q F12.5 E F0(.)A -(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(12)198.725 E 0 Cg EP +2.632(,r)-.65 G .131(ather than before the ne)-2.632 F(xt)-.15 E +(primary prompt.)184 727.2 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) +-.25 H(nly when job control is enabled.).15 E(GNU Bash-3.0)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(braceexpand)184 84 Q F0(Same as)224 96 Q F12.5 E -F0(.)A F1(emacs)184 108 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 120 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(option.)224 132 Q F1(errtrace)184 144 Q F0(Same as)5.03 E F12.5 -E F0(.)A F1(functrace)184 156 Q F0(Same as)224 168 Q F12.5 E F0(.) -A F1(err)184 180 Q(exit)-.18 E F0(Same as)11.31 E F12.5 E F0(.)A -F1(hashall)184 192 Q F0(Same as)9.43 E F12.5 E F0(.)A F1 -(histexpand)184 204 Q F0(Same as)224 216 Q F12.5 E F0(.)A F1 -(history)184 228 Q F0 .586(Enable command history)10 F 3.087(,a)-.65 G +/Times-Bold@0 SF144 84 Q F0 1.693(Exit immediately if a)29.86 F/F2 +10/Times-Italic@0 SF 1.693(simple command)4.193 F F0(\(see)4.193 E/F3 9 +/Times-Bold@0 SF 1.693(SHELL GRAMMAR)4.193 F F0(abo)3.943 E -.15(ve)-.15 +G 4.194(\)e).15 G 1.694(xits with a)-4.344 F .012(non-zero status.)184 +96 R .012(The shell does not e)5.012 F .011(xit if the command that f) +-.15 F .011(ails is part of the command)-.1 F .718 +(list immediately follo)184 108 R .718(wing a)-.25 F F1(while)3.218 E F0 +(or)3.218 E F1(until)3.219 E F0 -.1(ke)3.219 G(yw)-.05 E .719 +(ord, part of the test in an)-.1 F F1(if)3.219 E F0(statement,)3.219 E +.379(part of a command e)184 120 R -.15(xe)-.15 G .379(cuted in a).15 F +F1(&&)2.879 E F0(or)2.879 E/F4 10/Symbol SF2.879 E F0 .379 +(list, an)2.879 F 2.879(yc)-.15 G .379(ommand in a pipeline b)-2.879 F +.378(ut the last,)-.2 F .577(or if the command')184 132 R 3.078(sr)-.55 +G .578(eturn v)-3.078 F .578(alue is being in)-.25 F -.15(ve)-.4 G .578 +(rted via).15 F F1(!)3.078 E F0 5.578(.F)C .578 +(ailing simple commands that)-5.728 F .402(are part of shell functions \ +or command lists enclosed in braces or parentheses satisfying)184 144 R +.84(the abo)184 156 R 1.14 -.15(ve c)-.15 H .84 +(onditions do not cause the shell to e).15 F 3.341(xit. A)-.15 F .841 +(trap on)3.341 F F1(ERR)3.341 E F0 3.341(,i)C 3.341(fs)-3.341 G .841 +(et, is e)-3.341 F -.15(xe)-.15 G(cuted).15 E(before the shell e)184 168 +Q(xits.)-.15 E F1144 180 Q F0(Disable pathname e)30.97 E +(xpansion.)-.15 E F1144 192 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 204 Q(ault.)-.1 E F1 +144 216 Q F0 .513(All ar)28.74 F .514 +(guments in the form of assignment statements are placed in the en)-.18 +F .514(vironment for a)-.4 F +(command, not just those that precede the command name.)184 228 Q F1 +144 240 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 .636 +(on systems that support it \(see)184 252 R F3 .636(JOB CONTR)3.136 F +(OL)-.27 E F0(abo)2.886 E -.15(ve)-.15 G 3.136(\). Background).15 F .637 +(processes run in a)3.136 F .642 +(separate process group and a line containing their e)184 264 R .641 +(xit status is printed upon their com-)-.15 F(pletion.)184 276 Q F1 +144 288 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 +300 Q(This is ignored by interacti)5 E .3 -.15(ve s)-.25 H(hells.).15 E +F1144 312 Q F2(option\255name)2.5 E F0(The)184 324 Q F2 +(option\255name)2.5 E F0(can be one of the follo)2.5 E(wing:)-.25 E F1 +(allexport)184 336 Q F0(Same as)224 348 Q F12.5 E F0(.)A F1 +(braceexpand)184 360 Q F0(Same as)224 372 Q F12.5 E F0(.)A F1 +(emacs)184 384 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 396 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(option.)224 408 Q F1(errtrace)184 420 Q F0(Same as)5.03 E F1 +2.5 E F0(.)A F1(functrace)184 432 Q F0(Same as)224 444 Q F1 +2.5 E F0(.)A F1(err)184 456 Q(exit)-.18 E F0(Same as)11.31 E F12.5 +E F0(.)A F1(hashall)184 468 Q F0(Same as)9.43 E F12.5 E F0(.)A F1 +(histexpand)184 480 Q F0(Same as)224 492 Q F12.5 E F0(.)A F1 +(history)184 504 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/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 240 Q -(ault in interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1(ignor)184 -252 Q(eeof)-.18 E F0 1.657(The ef)224 264 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 -276 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 288 S(yw).1 E(ord)-.1 E F0(Same as)224 300 Q F1 -2.5 E F0(.)A F1(monitor)184 312 Q F0(Same as)5.56 E F12.5 E -F0(.)A F1(noclob)184 324 Q(ber)-.1 E F0(Same as)224 336 Q F12.5 E -F0(.)A F1(noexec)184 348 Q F0(Same as)11.12 E F12.5 E F0(.)A F1 -(noglob)184 360 Q F0(Same as)11.1 E F12.5 E F0(.)A F1(nolog)5 E F0 -(Currently ignored.)2.5 E F1(notify)184 372 Q F0(Same as)15 E F1 -2.5 E F0(.)A F1(nounset)184 384 Q F0(Same as)6.66 E F12.5 E F0(.)A -F1(onecmd)184 396 Q F0(Same as)6.67 E F12.5 E F0(.)A F1(ph)184 408 -Q(ysical)-.15 E F0(Same as)5.14 E F12.5 E F0(.)A F1(pipefail)184 -420 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 432 R +.15 E F3(HIST)3.087 E(OR)-.162 E(Y)-.315 E/F5 9/Times-Roman@0 SF(.)A F0 +.587(This option is)5.087 F(on by def)224 516 Q(ault in interacti)-.1 E +.3 -.15(ve s)-.25 H(hells.).15 E F1(ignor)184 528 Q(eeof)-.18 E F0 1.656 +(The ef)224 540 R 1.656(fect is as if the shell command)-.25 F/F6 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 552 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 564 S(yw).1 E(ord)-.1 +E F0(Same as)224 576 Q F12.5 E F0(.)A F1(monitor)184 588 Q F0 +(Same as)5.56 E F12.5 E F0(.)A F1(noclob)184 600 Q(ber)-.1 E F0 +(Same as)224 612 Q F12.5 E F0(.)A F1(noexec)184 624 Q F0(Same as) +11.12 E F12.5 E F0(.)A F1(noglob)184 636 Q F0(Same as)11.1 E F1 +2.5 E F0(.)A F1(nolog)5 E F0(Currently ignored.)2.5 E F1(notify) +184 648 Q F0(Same as)15 E F12.5 E F0(.)A F1(nounset)184 660 Q F0 +(Same as)6.66 E F12.5 E F0(.)A F1(onecmd)184 672 Q F0(Same as)6.67 +E F12.5 E F0(.)A F1(ph)184 684 Q(ysical)-.15 E F0(Same as)5.14 E +F12.5 E F0(.)A F1(pipefail)184 696 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 708 R 1.136 (xit with a non-zero status, or zero if all commands in the pipeline) --.15 F -.15(ex)224 444 S(it successfully).15 E 5(.T)-.65 G -(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 456 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 468 Q -/F5 10/Times-Italic@0 SF(posix mode)A F0(\).)A F1(pri)184 480 Q(vileged) --.1 E F0(Same as)224 492 Q F12.5 E F0(.)A F1 -.1(ve)184 504 S -(rbose).1 E F0(Same as)7.33 E F12.5 E F0(.)A F1(vi)184 516 Q F0 +-.15 F -.15(ex)224 720 S(it successfully).15 E 5(.T)-.65 G +(his option is disabled by def)-5 E(ault.)-.1 E(GNU Bash-3.0)72 768 Q +(2004 Apr 20)148.735 E(13)198.725 E 0 Cg EP +%%Page: 14 14 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(posix)184 84 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 96 Q/F2 10/Times-Italic@0 +SF(posix mode)A F0(\).)A F1(pri)184 108 Q(vileged)-.1 E F0(Same as)224 +120 Q F12.5 E F0(.)A F1 -.1(ve)184 132 S(rbose).1 E F0(Same as) +7.33 E F12.5 E F0(.)A F1(vi)184 144 Q F0 (Use a vi-style command line editing interf)32.22 E(ace.)-.1 E F1 -(xtrace)184 528 Q F0(Same as)13.35 E F12.5 E F0(.)A(If)184 546 Q -F13.053 E F0 .553(is supplied with no)3.053 F F5(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 -558 Q F0 1.071(is supplied with no)3.571 F F5(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 570 Q F1 -144 582 Q F0 -.45(Tu)28.74 G 1.072(rn on).45 F F5(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 -F2($ENV)3.572 E F0(and)3.322 E F2($B)3.572 E(ASH_ENV)-.27 E F0 1.071 -(\214les are not pro-)3.322 F 1.705 -(cessed, shell functions are not inherited from the en)184 594 R 1.705 -(vironment, and the)-.4 F F2(SHELLOPTS)4.206 E F0 -.25(va)184 606 S .019 +(xtrace)184 156 Q F0(Same as)13.35 E F12.5 E F0(.)A(If)184 174 Q +F13.052 E F0 .552(is supplied with no)3.052 F F2(option\255name) +3.053 E F0 3.053(,t)C .553(he v)-3.053 F .553 +(alues of the current options are printed.)-.25 F(If)5.553 E F1(+o)184 +186 Q F0 1.072(is supplied with no)3.572 F F2(option\255name)3.572 E F0 +3.572(,a)C 1.071(series of)-.001 F F1(set)3.571 E F0 1.071 +(commands to recreate the current)3.571 F +(option settings is displayed on the standard output.)184 198 Q F1 +144 210 Q F0 -.45(Tu)28.74 G 1.071(rn on).45 F F2(privile)4.821 E -.1 +(ge)-.4 G(d).1 E F0 3.572(mode. In)4.341 F 1.072(this mode, the)3.572 F +/F3 9/Times-Bold@0 SF($ENV)3.572 E F0(and)3.322 E F3($B)3.572 E(ASH_ENV) +-.27 E F0 1.072(\214les are not pro-)3.322 F 1.705 +(cessed, shell functions are not inherited from the en)184 222 R 1.705 +(vironment, and the)-.4 F F3(SHELLOPTS)4.205 E F0 -.25(va)184 234 S .018 (riable, if it appears in the en).25 F .019(vironment, is ignored.)-.4 F -.018(If the shell is started with the ef)5.019 F(fec-)-.25 E(ti)184 618 -Q 1.158 -.15(ve u)-.25 H .859 +.019(If the shell is started with the ef)5.019 F(fec-)-.25 E(ti)184 246 +Q 1.159 -.15(ve u)-.25 H .859 (ser \(group\) id not equal to the real user \(group\) id, and the).15 F -F13.359 E F0 .859(option is not sup-)3.359 F .294 -(plied, these actions are tak)184 630 R .293(en and the ef)-.1 F(fecti) +F13.359 E F0 .858(option is not sup-)3.359 F .293 +(plied, these actions are tak)184 258 R .293(en and the ef)-.1 F(fecti) -.25 E .593 -.15(ve u)-.25 H .293(ser id is set to the real user id.).15 -F .293(If the)5.293 F F12.793 E F0 1.195 -(option is supplied at startup, the ef)184 642 R(fecti)-.25 E 1.495 -.15 -(ve u)-.25 H 1.195(ser id is not reset.).15 F -.45(Tu)6.196 G 1.196 -(rning this option of).45 F(f)-.25 E(causes the ef)184 654 Q(fecti)-.25 +F .294(If the)5.294 F F12.794 E F0 1.196 +(option is supplied at startup, the ef)184 270 R(fecti)-.25 E 1.495 -.15 +(ve u)-.25 H 1.195(ser id is not reset.).15 F -.45(Tu)6.195 G 1.195 +(rning this option of).45 F(f)-.25 E(causes the ef)184 282 Q(fecti)-.25 E .3 -.15(ve u)-.25 H (ser and group ids to be set to the real user and group ids.).15 E F1 -144 666 Q F0(Exit after reading and e)30.97 E -.15(xe)-.15 G -(cuting one command.).15 E F1144 678 Q F0 -.35(Tr)28.74 G .445 +144 294 Q F0(Exit after reading and e)30.97 E -.15(xe)-.15 G +(cuting one command.).15 E F1144 306 Q F0 -.35(Tr)28.74 G .444 (eat unset v).35 F .444 (ariables as an error when performing parameter e)-.25 F 2.944 -(xpansion. If)-.15 F -.15(ex)2.944 G .444(pansion is).15 F .519 -(attempted on an unset v)184 690 R .519 +(xpansion. If)-.15 F -.15(ex)2.945 G .445(pansion is).15 F .52 +(attempted on an unset v)184 318 R .519 (ariable, the shell prints an error message, and, if not interacti)-.25 -F -.15(ve)-.25 G(,).15 E -.15(ex)184 702 S(its with a non-zero status.) -.15 E F1144 714 Q F0(Print shell input lines as the)29.3 E 2.5(ya) --.15 G(re read.)-2.5 E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(13) -198.725 E 0 Cg EP -%%Page: 14 14 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF144 84 Q F0 .315(After e)29.3 F .315 -(xpanding each)-.15 F/F2 10/Times-Italic@0 SF .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.235 -(or arithmetic)184 96 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 9/Times-Bold@0 SF(PS4)3.736 E/F4 9/Times-Roman@0 SF(,)A F0 -(follo)3.486 E 1.236(wed by the com-)-.25 F(mand and its e)184 108 Q -(xpanded ar)-.15 E(guments or associated w)-.18 E(ord list.)-.1 E F1 -144 120 Q F0 2.579(The shell performs brace e)27.63 F 2.578 +F -.15(ve)-.25 G(,).15 E -.15(ex)184 330 S(its with a non-zero status.) +.15 E F1144 342 Q F0(Print shell input lines as the)29.3 E 2.5(ya) +-.15 G(re read.)-2.5 E F1144 354 Q F0 .315(After e)29.3 F .315 +(xpanding each)-.15 F F2 .315(simple command)2.815 F F0(,)A F1 -.25(fo) +2.815 G(r).25 E F0(command,)2.815 E F1(case)2.815 E F0(command,)2.815 E +F1(select)2.815 E F0(command,)2.815 E 1.236(or arithmetic)184 366 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 9/Times-Roman@0 +SF(,)A F0(follo)3.486 E 1.236(wed by the com-)-.25 F(mand and its e)184 +378 Q(xpanded ar)-.15 E(guments or associated w)-.18 E(ord list.)-.1 E +F1144 390 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.078(\). This).15 F 2.578(is on by)5.078 F(def)184 132 Q -(ault.)-.1 E F1144 144 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 +-.15(ve)-.15 G 5.079(\). This).15 F 2.579(is on by)5.079 F(def)184 402 Q +(ault.)-.1 E F1144 414 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.714(,a)C(nd)-2.714 E F1(<>)2.714 E F0 .214(redirection opera-)2.714 F -3.054(tors. This)184 156 R .553(may be o)3.053 F -.15(ve)-.15 G .553 +2.713(,a)C(nd)-2.713 E F1(<>)2.713 E F0 .213(redirection opera-)2.713 F +3.053(tors. This)184 426 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 168 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1 -144 180 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 192 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 204 Q F1 -144 216 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 228 Q -.15 -(ve)-.25 G(.).15 E F1144 240 Q F0 1.165 +.15 F(tor)184 438 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1 +144 450 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 462 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 474 Q F1 +144 486 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 498 Q -.15 +(ve)-.25 G(.).15 E F1144 510 Q F0 1.164 (If set, the shell does not follo)28.19 F 3.664(ws)-.25 G 1.164 -(ymbolic links when e)-3.664 F -.15(xe)-.15 G 1.164 -(cuting commands such as).15 F F1(cd)3.664 E F0 2.821 -(that change the current w)184 252 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 264 R(def)2.686 +(ymbolic links when e)-3.664 F -.15(xe)-.15 G 1.165 +(cuting commands such as).15 F F1(cd)3.665 E F0 2.822 +(that change the current w)184 522 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 534 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 276 Q(.)-.65 E F1144 -288 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 546 Q(.)-.65 E F1144 +558 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 300 R -.15(xe)-.15 G 1.932 +(substitutions, and commands e)184 570 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 312 Q F0 -(traps are normally not inherited in such cases.)2.5 E F1144 324 Q -F0 .4(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 582 Q F0 +(traps are normally not inherited in such cases.)2.5 E F1144 594 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.401 E(the positional parameters are set to the)184 336 Q -F2(ar)2.5 E(g)-.37 E F0(s, e)A -.15(ve)-.25 G 2.5(ni).15 G 2.5(fs)-2.5 G +(Otherwise,)5.4 E(the positional parameters are set to the)184 606 Q F2 +(ar)2.5 E(g)-.37 E F0(s, e)A -.15(ve)-.25 G 2.5(ni).15 G 2.5(fs)-2.5 G (ome of them be)-2.5 E(gin with a)-.15 E F12.5 E F0(.)A F1144 -348 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.444(ea)-4.444 G -1.944(ssigned to the positional)-4.444 F 3.445(parameters. The)184 360 R -F13.445 E F0(and)3.445 E F13.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 372 Q .425(The options are of)144 -388.8 R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)-2.925 E .425 +618 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 630 R +F13.446 E F0(and)3.446 E F13.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 642 Q .425(The options are of)144 +658.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 .177 -(to be turned of)144 400.8 R 2.677(f. The)-.25 F .178 +(Using + rather than \255 causes these options)5.425 F .178 +(to be turned of)144 670.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 .178(cation of the shell.).2 F(The)5.178 E .066 -(current set of options may be found in)144 412.8 R F1<24ad>2.566 E F0 +-.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 682.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 .066(lid option).25 F -(is encountered.)144 424.8 Q F1(shift)108 441.6 Q F0([)2.5 E F2(n)A F0 -(])A .428(The positional parameters from)144 453.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 465.6 Q F1($#)2.583 -E F0(do)2.583 E .083(wn to)-.25 F F1($#)2.583 E F0A 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 477.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 .144(positional parameters are not changed.)144 489.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 501.6 Q F1(shopt)108 518.4 Q F0([) -2.5 E F1(\255pqsu)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(optname) --2.5 E F0(...])2.5 E -.8(To)144 530.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 -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 542.4 R(The) -144 554.4 Q F12.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 566.4 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:) --.25 E F1144 578.4 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5 -E F0(.)A F1144 590.4 Q F0(Disable \(unset\) each)24.74 E F2 -(optname)2.5 E F0(.)A F1144 602.4 Q F0 .003(Suppresses normal out\ -put \(quiet mode\); the return status indicates whether the)24.74 F F2 -(optname)2.503 E F0(is)2.503 E .255(set or unset.)180 614.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 -2.756 E F0 2.756(,t)C .256(he return status is zero if)-2.756 F -(all)180 626.4 Q F2(optnames)2.5 E F0(are enabled; non-zero otherwise.) -2.5 E F1144 638.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 F12.5 E F0 -(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .128 -(If either)144 655.2 R F12.628 E F0(or)2.628 E F12.628 E F0 -.127(is used with no)2.627 F F2(optname)2.627 E F0(ar)2.627 E .127 -(guments, the display is limited to those options which)-.18 F 1.023 -(are set or unset, respecti)144 667.2 R -.15(ve)-.25 G(ly).15 E 6.023 -(.U)-.65 G 1.024(nless otherwise noted, the)-6.023 F F1(shopt)3.524 E F0 -1.024(options are disabled \(unset\) by)3.524 F(def)144 679.2 Q(ault.) --.1 E 1.544(The return status when listing options is zero if all)144 -696 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 708 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .696(alid shell) --.25 F(option.)144 720 Q(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(14) -198.725 E 0 Cg EP +(ys true unless an in).1 F -.25(va)-.4 G .067(lid option).25 F +(is encountered.)144 694.8 Q(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E +(14)198.725 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(The list of) -144 84 Q/F1 10/Times-Bold@0 SF(shopt)2.5 E F0(options is:)2.5 E F1 -(autocd)144 102 Q F0 .2 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(shift)108 84 Q F0([)2.5 E/F2 10/Times-Italic@0 SF(n)A +F0(])A .429(The positional parameters from)144 96 R F2(n)2.929 E F0 .429 +(+1 ... are renamed to)B F1 .429($1 ....)2.929 F F0 -.15(Pa)5.428 G .428 +(rameters represented by the num-).15 F(bers)144 108 Q F1($#)2.582 E F0 +(do)2.582 E .082(wn to)-.25 F F1($#)2.582 E F0A F2(n)A F0 .082 +(+1 are unset.)B F2(n)5.442 E F0 .082(must be a non-ne)2.822 F -.05(ga) +-.15 G(ti).05 E .383 -.15(ve n)-.25 H .083(umber less than or equal to) +.15 F F1($#)2.583 E F0 5.083(.I)C(f)-5.083 E F2(n)2.943 E F0 .06 +(is 0, no parameters are changed.)144 120 R(If)5.06 E F2(n)2.92 E F0 .06 +(is not gi)2.8 F -.15(ve)-.25 G .06(n, it is assumed to be 1.).15 F(If) +5.06 E F2(n)2.92 E F0 .06(is greater than)2.8 F F1($#)2.56 E F0 2.56(,t) +C(he)-2.56 E .143(positional parameters are not changed.)144 132 R .144 +(The return status is greater than zero if)5.143 F F2(n)3.004 E F0 .144 +(is greater than)2.884 F F1($#)2.644 E F0 +(or less than zero; otherwise 0.)144 144 Q F1(shopt)108 160.8 Q F0([)2.5 +E F1(\255pqsu)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(optname)-2.5 E +F0(...])2.5 E -.8(To)144 172.8 S .222(ggle the v).8 F .222(alues of v) +-.25 F .222(ariables controlling optional shell beha)-.25 F(vior)-.2 E +5.222(.W)-.55 G .222(ith no options, or with the)-5.622 F F12.722 +E F0 .721(option, a list of all settable options is displayed, with an \ +indication of whether or not each is set.)144 184.8 R(The)144 196.8 Q F1 +2.828 E F0 .327(option causes output to be displayed in a form th\ +at may be reused as input.)2.828 F .327(Other options)5.327 F(ha)144 +208.8 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1 +144 220.8 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5 E F0(.)A F1 +144 232.8 Q F0(Disable \(unset\) each)24.74 E F2(optname)2.5 E F0 +(.)A F1144 244.8 Q F0 .003(Suppresses normal output \(quiet mode\ +\); the return status indicates whether the)24.74 F F2(optname)2.504 E +F0(is)2.504 E .256(set or unset.)180 256.8 R .256(If multiple)5.256 F F2 +(optname)2.756 E F0(ar)2.756 E .256(guments are gi)-.18 F -.15(ve)-.25 G +2.756(nw).15 G(ith)-2.756 E F12.756 E F0 2.755(,t)C .255 +(he return status is zero if)-2.755 F(all)180 268.8 Q F2(optnames)2.5 E +F0(are enabled; non-zero otherwise.)2.5 E F1144 280.8 Q F0 +(Restricts the v)25.3 E(alues of)-.25 E F2(optname)2.5 E F0 +(to be those de\214ned for the)2.5 E F12.5 E F0(option to the)2.5 +E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .127(If either)144 297.6 R F1 +2.627 E F0(or)2.627 E F12.627 E F0 .127(is used with no) +2.627 F F2(optname)2.627 E F0(ar)2.627 E .127 +(guments, the display is limited to those options which)-.18 F 1.024 +(are set or unset, respecti)144 309.6 R -.15(ve)-.25 G(ly).15 E 6.024 +(.U)-.65 G 1.024(nless otherwise noted, the)-6.024 F F1(shopt)3.523 E F0 +1.023(options are disabled \(unset\) by)3.523 F(def)144 321.6 Q(ault.) +-.1 E 1.544(The return status when listing options is zero if all)144 +338.4 R F2(optnames)4.044 E F0 1.545(are enabled, non-zero otherwise.) +4.045 F .696 +(When setting or unsetting options, the return status is zero unless an) +144 350.4 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695 +(alid shell)-.25 F(option.)144 362.4 Q(The list of)144 379.2 Q F1(shopt) +2.5 E F0(options is:)2.5 E F1(autocd)144 397.2 Q F0 .199 (If set, a command name that is the name of a directory is e)11.11 F --.15(xe)-.15 G .199(cuted as if it were the ar).15 F(gu-)-.18 E -(ment to the)184 114 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F +-.15(xe)-.15 G .2(cuted as if it were the ar).15 F(gu-)-.18 E +(ment to the)184 409.2 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F (option is only used by interacti)2.5 E .3 -.15(ve s)-.25 H(hells.).15 E -F1(cdable_v)144 126 Q(ars)-.1 E F0 .155(If set, an ar)184 138 R .155 -(gument to the)-.18 F F1(cd)2.655 E F0 -.2(bu)2.655 G .156 +F1(cdable_v)144 421.2 Q(ars)-.1 E F0 .156(If set, an ar)184 433.2 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 150 Q(ariable whose v)-.25 E -(alue is the directory to change to.)-.25 E F1(cdspell)144 162 Q F0 +(name of a v)184 445.2 Q(ariable whose v)-.25 E +(alue is the directory to change to.)-.25 E F1(cdspell)144 457.2 Q F0 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.987 -(corrected. The)184 174 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 .552(one character too man)184 186 R 4.352 -.65(y. I) --.15 H 3.052(fac).65 G .552 +10.55 F F1(cd)3.555 E F0 1.055(command will be)3.555 F 3.988 +(corrected. The)184 469.2 R 1.488(errors check)3.988 F 1.487 +(ed for are transposed characters, a missing character)-.1 F 3.987(,a) +-.4 G(nd)-3.987 E .552(one character too man)184 481.2 R 4.352 -.65 +(y. I)-.15 H 3.052(fac).65 G .552 (orrection is found, the corrected \214le name is printed, and)-3.052 F -(the command proceeds.)184 198 Q(This option is only used by interacti)5 -E .3 -.15(ve s)-.25 H(hells.).15 E F1(checkhash)144 210 Q F0 2.079 -(If set,)184 222 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 234 S(cute it.).15 E +(the command proceeds.)184 493.2 Q +(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.) +.15 E F1(checkhash)144 505.2 Q F0 2.08(If set,)184 517.2 R F1(bash)4.58 +E F0 2.079(checks that a command found in the hash table e)4.58 F 2.079 +(xists before trying to)-.15 F -.15(exe)184 529.2 S(cute it.).15 E (If a hashed command no longer e)5 E -(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 246 Q -F0 .449(If set,)184 258 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 270 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 1.456 -(attempted without an interv)184 282 R 1.456(ening command \(see)-.15 F -F1 1.456(JOB CONTR)3.956 F(OL)-.3 E F0(abo)3.956 E -.15(ve)-.15 G 3.956 -(\). The).15 F(shell)3.956 E(al)184 294 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 306 Q F0 .796(If set,)184 318 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 330 S(lues of).25 E/F2 9/Times-Bold@0 -SF(LINES)2.5 E F0(and)2.25 E F2(COLUMNS)2.5 E/F3 9/Times-Roman@0 SF(.)A -F1(cmdhist)144 342 Q F0 1.202(If set,)6.11 F F1(bash)3.702 E F0 1.202 +(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 541.2 +Q F0 .448(If set,)184 553.2 R F1(bash)2.948 E F0 .448 +(lists the status of an)2.948 F 2.949(ys)-.15 G .449 +(topped and running jobs before e)-2.949 F .449(xiting an interacti)-.15 +F -.15(ve)-.25 G 3.439(shell. If)184 565.2 R(an)3.439 E 3.439(yj)-.15 G +.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 1.456 +(attempted without an interv)184 577.2 R 1.456(ening command \(see)-.15 +F F1 1.456(JOB CONTR)3.956 F(OL)-.3 E F0(abo)3.956 E -.15(ve)-.15 G +3.956(\). The).15 F(shell)3.956 E(al)184 589.2 Q -.1(wa)-.1 G +(ys postpones e).1 E(xiting if an)-.15 E 2.5(yj)-.15 G(obs are stopped.) +-2.5 E F1(checkwinsize)144 601.2 Q F0 .797(If set,)184 613.2 R F1(bash) +3.297 E F0 .797(checks the windo)3.297 F 3.297(ws)-.25 G .796 +(ize after each command and, if necessary)-3.297 F 3.296(,u)-.65 G .796 +(pdates the)-3.296 F -.25(va)184 625.2 S(lues of).25 E/F3 9/Times-Bold@0 +SF(LINES)2.5 E F0(and)2.25 E F3(COLUMNS)2.5 E/F4 9/Times-Roman@0 SF(.)A +F1(cmdhist)144 637.2 Q F0 1.202(If set,)6.11 F F1(bash)3.702 E F0 1.202 (attempts to sa)3.702 F 1.502 -.15(ve a)-.2 H 1.202 (ll lines of a multiple-line command in the same history).15 F(entry)184 -354 Q 5(.T)-.65 G(his allo)-5 E -(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 366 Q -F0 .419(If set,)184 378 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(to the conditional command')184 390 Q 2.5(s=)-.55 -G 2.5(~o)-2.5 G(perator)-2.5 E(.)-.55 E F1(dotglob)144 402 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 414 -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 426 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 438 Q F0 -.717(If set, aliases are e)184 450 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 .716 -(This option is enabled)5.217 F(by def)184 462 Q(ault for interacti)-.1 -E .3 -.15(ve s)-.25 H(hells.).15 E F1(extdeb)144 474 Q(ug)-.2 E F0 -(If set, beha)184 486 Q(vior intended for use by deb)-.2 E -(uggers is enabled:)-.2 E F1(1.)184 498 Q F0(The)28.5 E F14.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 510 Q -(gument.)-.18 E F1(2.)184 522 Q F0 1.667(If the command run by the)28.5 +649.2 Q 5(.T)-.65 G(his allo)-5 E +(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 661.2 +Q F0 .42(If set,)184 673.2 R F1(bash)2.92 E F0 .42(changes its beha)2.92 +F .419(vior to that of v)-.2 F .419 +(ersion 3.1 with respect to quoted ar)-.15 F(guments)-.18 E +(to the conditional command')184 685.2 Q 2.5(s=)-.55 G 2.5(~o)-2.5 G +(perator)-2.5 E(.)-.55 E F1(dirspell)144 697.2 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 709.2 Q(xist.)-.15 +E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(15)198.725 E 0 Cg EP +%%Page: 16 16 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(dotglob)144 84 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 96 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 108 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 120 Q F0 .717 +(If set, aliases are e)184 132 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 144 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.) +.15 E F1(extdeb)144 156 Q(ug)-.2 E F0(If set, beha)184 168 Q +(vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F1(1.)184 +180 Q F0(The)28.5 E F14.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 192 Q +(gument.)-.18 E F1(2.)184 204 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 534 -Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 546 Q F0 .84 +1.667(alue, the ne)-.25 F(xt)-.15 E(command is skipped and not e)220 216 +Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 228 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 558 S .488 +(exe)220 240 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 570 Q(ce)-.18 E F0 -.2(bu)2.5 G(iltins\), a call to).2 E F1 +(sour)220 252 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 26(4. B)184 -582 R(ASH_ARGC)-.3 E F0(and)3.775 E F1 -.3(BA)3.775 G(SH_ARGV).3 E F0 +264 R(ASH_ARGC)-.3 E F0(and)3.775 E F1 -.3(BA)3.775 G(SH_ARGV).3 E F0 1.276(are updated as described in their descrip-)3.775 F(tions abo)220 -594 Q -.15(ve)-.15 G(.).15 E F1(5.)184 606 Q F0 1.359 +276 Q -.15(ve)-.15 G(.).15 E F1(5.)184 288 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 -618 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E/F4 10 +300 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 630 Q F0 .804(Error tracing is enabled:)28.5 F .805 -(command substitution, shell functions, and subshells)5.804 F(in)220 642 +184 312 Q F0 .804(Error tracing is enabled:)28.5 F .805 +(command substitution, shell functions, and subshells)5.804 F(in)220 324 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(OR)-.3 E F0 -(trap.)2.5 E F1(extglob)144 654 Q F0 .4(If set, the e)8.89 F .4 +(trap.)2.5 E F1(extglob)144 336 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 666 Q -F0(are enabled.)2.5 E F1(extquote)144 678 Q F0 2.473(If set,)184 690 R +-.15 H(nder).15 E F1 -.1(Pa)2.9 G .4(thname Expan-).1 F(sion)184 348 Q +F0(are enabled.)2.5 E F1(extquote)144 360 Q F0 2.473(If set,)184 372 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 702 Q -(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 714 Q F0 +(pansions).15 E(enclosed in double quotes.)184 384 Q +(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 396 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 726 S(pansion error).15 E(.) --.55 E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(15)198.725 E 0 Cg EP -%%Page: 16 16 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF -.25(fo)144 84 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 -E F0 .585(If set, the suf)184 96 R<8c78>-.25 E .585 -(es speci\214ed by the)-.15 F F1(FIGNORE)3.085 E F0 .585(shell v)3.085 F -.585(ariable cause w)-.25 F .585(ords to be ignored)-.1 F .32 -(when performing w)184 108 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 3.329(pletions. See)184 120 R/F2 -9/Times-Bold@0 SF .829(SHELL V)3.329 F(ARIABLES)-1.215 E F0(abo)3.079 E -1.129 -.15(ve f)-.15 H .83(or a description of).15 F F1(FIGNORE)3.33 E -F0 5.83(.T)C .83(his option)-5.83 F(is enabled by def)184 132 Q(ault.) --.1 E F1(gnu_errfmt)144 144 Q F0(If set, shell error messages are writt\ -en in the standard GNU error message format.)184 156 Q F1(histappend)144 -168 Q F0 .384 +(xpansion result in an)-.15 F -.15(ex)184 408 S(pansion error).15 E(.) +-.55 E F1 -.25(fo)144 420 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0 +.585(If set, the suf)184 432 R<8c78>-.25 E .585(es speci\214ed by the) +-.15 F F1(FIGNORE)3.085 E F0 .585(shell v)3.085 F .585(ariable cause w) +-.25 F .585(ords to be ignored)-.1 F .32(when performing w)184 444 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 3.329 +(pletions. See)184 456 R F2 .829(SHELL V)3.329 F(ARIABLES)-1.215 E F0 +(abo)3.079 E 1.129 -.15(ve f)-.15 H .83(or a description of).15 F F1 +(FIGNORE)3.33 E F0 5.83(.T)C .83(his option)-5.83 F(is enabled by def) +184 468 Q(ault.)-.1 E F1(globstar)144 480 Q F0 .44(If set, the pattern)5 +F F1(**)2.94 E F0 .44(used in a \214lename e)2.94 F .439(xpansion conte) +-.15 F .439(xt will match a \214les and zero or)-.15 F 1.297 +(more directories and subdirectories.)184 492 R 1.298 +(If the pattern is follo)6.297 F 1.298(wed by a)-.25 F F1(/)3.798 E F0 +3.798(,o)C 1.298(nly directories)-3.798 F(and subdirectories match.)184 +504 Q F1(gnu_errfmt)144 516 Q F0(If set, shell error messages are writt\ +en in the standard GNU error message format.)184 528 Q F1(histappend)144 +540 Q F0 .384 (If set, the history list is appended to the \214le named by the v)184 -180 R .383(alue of the)-.25 F F1(HISTFILE)2.883 E F0 -.25(va)2.883 G -(ri-).25 E(able when the shell e)184 192 Q(xits, rather than o)-.15 E --.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 204 Q(eedit)-.18 -E F0 .575(If set, and)184 216 R F1 -.18(re)3.075 G(adline).18 E F0 .575 +552 R .383(alue of the)-.25 F F1(HISTFILE)2.883 E F0 -.25(va)2.883 G +(ri-).25 E(able when the shell e)184 564 Q(xits, rather than o)-.15 E +-.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 576 Q(eedit)-.18 +E F0 .575(If set, and)184 588 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 228 Q F1(histv)144 240 Q(erify)-.1 E F0 .403 -(If set, and)184 252 R F1 -.18(re)2.903 G(adline).18 E F0 .403 +(tory substitution.)184 600 Q F1(histv)144 612 Q(erify)-.1 E F0 .403 +(If set, and)184 624 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 264 R 5.661(.I)-.55 G .662 +2.903 F .661(passed to the shell parser)184 636 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 276 S -.25(ff).2 G(er).25 E +G(adline).18 E F0(editing)3.162 E -.2(bu)184 648 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 288 Q F0 1.182(If set, and)184 300 R F1 -.18(re)3.682 +(hostcomplete)144 660 Q F0 1.182(If set, and)184 672 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 -312 R 1.38(ord containing a)-.1 F F1(@)3.881 E F0 1.381 +684 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 324 Q -.15(ve)-.15 G 2.5(\). This).15 F -(is enabled by def)2.5 E(ault.)-.1 E F1(huponexit)144 336 Q F0(If set,) -184 348 Q F1(bash)2.5 E F0(will send)2.5 E F2(SIGHUP)2.5 E F0 +F2(READLINE)3.881 E F0(abo)184 696 Q -.15(ve)-.15 G 2.5(\). This).15 F +(is enabled by def)2.5 E(ault.)-.1 E(GNU Bash-3.0)72 768 Q(2004 Apr 20) +148.735 E(16)198.725 E 0 Cg EP +%%Page: 17 17 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(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 360 Q -.1(ve)-.1 G(_comments).1 E F0 -.33(If set, allo)184 372 R 2.83(waw)-.25 G .33(ord be)-2.93 F .33 +.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 384 R 1.267 -.15(ve s)-.25 +(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 .968(option is)3.468 F(enabled by def)184 396 Q -(ault.)-.1 E F1(lithist)144 408 Q F0 .655(If set, and the)15.55 F F1 +G 3.467(\). This).15 F .968(option is)3.468 F(enabled by def)184 144 Q +(ault.)-.1 E F1(lithist)144 156 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 420 Q +-3.154 F(with embedded ne)184 168 Q (wlines rather than using semicolon separators where possible.)-.25 E F1 -(login_shell)144 432 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 -444 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 456 S(lue may not be changed.).25 -E F1(mailwar)144 468 Q(n)-.15 E F0 .815(If set, and a \214le that)184 -480 R F1(bash)3.315 E F0 .814 +192 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 204 S(lue may not be changed.).25 +E F1(mailwar)144 216 Q(n)-.15 E F0 .815(If set, and a \214le that)184 +228 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 492 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E +-.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 504 Q F0 .145(If set, and)184 516 R F1 -.18 +(no_empty_cmd_completion)144 252 Q F0 .145(If set, and)184 264 R F1 -.18 (re)2.645 G(adline).18 E F0 .145(is being used,)2.645 F F1(bash)2.646 E F0 .146(will not attempt to search the)2.646 F F1 -.74(PA)2.646 G(TH) -.21 E F0 .146(for possible)2.646 F -(completions when completion is attempted on an empty line.)184 528 Q F1 -(nocaseglob)144 540 Q F0 .437(If set,)184 552 R F1(bash)2.937 E F0 .436 +(completions when completion is attempted on an empty line.)184 276 Q F1 +(nocaseglob)144 288 Q F0 .437(If set,)184 300 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 564 S +H .436(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 576 Q F0 1.193(If set,)184 -588 R F1(bash)3.693 E F0 1.194(matches patterns in a case\255insensiti) +-.15(ve)-.15 G(\).).15 E F1(nocasematch)144 324 Q F0 1.193(If set,)184 +336 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 600 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 612 Q F0 -.855(If set,)184 624 R F1(bash)3.355 E F0(allo)3.355 E .855 +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 +.855(If set,)184 372 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 636 S(pand to a null string, rather than themselv) -.15 E(es.)-.15 E F1(pr)144 648 Q(ogcomp)-.18 E F0 .676 -(If set, the programmable completion f)184 660 R .677(acilities \(see) +-3.354 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 .676 +(If set, the programmable completion f)184 408 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 672 Q -(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 684 Q(omptv) --.18 E(ars)-.1 E F0 1.448(If set, prompt strings under)184 696 R 1.448 +-.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.448(If set, prompt strings under)184 444 R 1.448 (go parameter e)-.18 F 1.447(xpansion, command substitution, arithmetic) --.15 F -.15(ex)184 708 S .17(pansion, and quote remo).15 F -.25(va)-.15 +-.15 F -.15(ex)184 456 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 720 Q(ault.)-.1 E(GNU Bash-3.0)72 -768 Q(2004 Apr 20)148.735 E(16)198.725 E 0 Cg EP -%%Page: 17 17 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF -.18(re)144 84 S(stricted_shell).18 E F0 1.069 +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 96 R/F2 9/Times-Bold@0 SF 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 -108 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 120 -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 132 Q(erbose)-.1 E F0 .502(If set, the)184 144 R F1(shift) -3.002 E F0 -.2(bu)3.002 G .501 +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 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 528 Q(erbose)-.1 E F0 .502(If set, the)184 540 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 156 Q F1(sour) -144 168 Q(cepath)-.18 E F0 .77(If set, the)184 180 R F1(sour)3.27 E(ce) +(xceeds the number)-.15 F(of positional parameters.)184 552 Q F1(sour) +144 564 Q(cepath)-.18 E F0 .77(If set, the)184 576 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 192 Q 2.5(gument. This)-.18 F -(option is enabled by def)2.5 E(ault.)-.1 E F1(xpg_echo)144 204 Q F0 -(If set, the)184 216 Q F1(echo)2.5 E F0 -.2(bu)2.5 G(iltin e).2 E +(\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 228 Q F0([)2.5 E F1A F0(])A .493(Suspend the e)144 240 R -.15 +108 624 Q F0([)2.5 E F1A F0(])A .493(Suspend the e)144 636 R -.15 (xe)-.15 G .493(cution of this shell until it recei).15 F -.15(ve)-.25 G 2.992(sa).15 G F2(SIGCONT)A F0 2.992(signal. The)2.742 F F12.992 E F0 .492(option says not to)2.992 F .758 -(complain if this is a login shell; just suspend an)144 252 R(yw)-.15 E +(complain if this is a login shell; just suspend an)144 648 R(yw)-.15 E (ay)-.1 E 5.758(.T)-.65 G .759 (he return status is 0 unless the shell is a)-5.758 F(login shell and) -144 264 Q F12.5 E F0 +144 660 Q F12.5 E F0 (is not supplied, or if job control is not enabled.)2.5 E F1(test)108 -276 Q/F3 10/Times-Italic@0 SF -.2(ex)2.5 G(pr).2 E F1([)108 288 Q F3 -.2 -(ex)2.5 G(pr).2 E F1(])2.5 E F0 1.15 -(Return a status of 0 or 1 depending on the e)6.77 F -.25(va)-.25 G 1.15 -(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)3.65 G -(pr).2 E F0 6.15(.E).73 G(ach)-6.15 E 1.187 -(operator and operand must be a separate ar)144 300 R 3.688 +672 Q F3 -.2(ex)2.5 G(pr).2 E F1([)108 684 Q F3 -.2(ex)2.5 G(pr).2 E F1 +(])2.5 E F0 1.15(Return a status of 0 or 1 depending on the e)6.77 F +-.25(va)-.25 G 1.15(luation of the conditional e).25 F(xpression)-.15 E +F3 -.2(ex)3.65 G(pr).2 E F0 6.15(.E).73 G(ach)-6.15 E 1.187 +(operator and operand must be a separate ar)144 696 R 3.688 (gument. Expressions)-.18 F 1.188(are composed of the primaries)3.688 F -1.89(described abo)144 312 R 2.19 -.15(ve u)-.15 H(nder).15 E F2 +1.89(described abo)144 708 R 2.19 -.15(ve u)-.15 H(nder).15 E F2 (CONDITION)4.39 E 1.89(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A F1(test)6.39 E F0 1.889(does not accept an)4.389 F 4.389(yo)-.15 G 1.889 -(ptions, nor)-4.389 F(does it accept and ignore an ar)144 324 Q +(ptions, nor)-4.389 F(does it accept and ignore an ar)144 720 Q (gument of)-.18 E F12.5 E F0(as signifying the end of options.)2.5 -E .785(Expressions may be combined using the follo)144 342 R .786 +E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(17)198.725 E 0 Cg EP +%%Page: 18 18 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .785 +(Expressions may be combined using the follo)144 84 R .786 (wing operators, listed in decreasing order of prece-)-.25 F 2.5 -(dence. The)144 354 R -.25(eva)2.5 G -(luation depends on the number of ar).25 E(guments; see belo)-.18 E -.65 -(w.)-.25 G F1(!)144 366 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 378 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 +(dence. The)144 96 R -.25(eva)2.5 G(luation depends on the number of ar) +.25 E(guments; see belo)-.18 E -.65(w.)-.25 G/F1 10/Times-Bold@0 SF(!) +144 108 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 120 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 390 Q F3 -.2(ex) -144 402 S(pr1).2 E F02.5 E F1(a)A F3 -.2(ex)2.5 G(pr2).2 E F0 -.35 -(Tr)180 414 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 426 S(pr1).2 E -F02.5 E F1(o)A F3 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 438 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 454.8 Q F0(and)2.5 E F1([)2.5 E +(rride the normal precedence of opera-).15 F(tors.)180 132 Q F2 -.2(ex) +144 144 S(pr1).2 E F02.5 E F1(a)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35 +(Tr)180 156 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 168 S(pr1).2 E +F02.5 E F1(o)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 180 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 196.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 472.8 S -.18(rg)-2.5 G(uments).18 E(The e) -180 484.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 496.8 S -.18 -(rg)-2.5 G(ument).18 E(The e)180 508.8 Q +(guments.)-.18 E 2.5(0a)144 214.8 S -.18(rg)-2.5 G(uments).18 E(The e) +180 226.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 238.8 S -.18 +(rg)-2.5 G(ument).18 E(The e)180 250.8 Q (xpression is true if and only if the ar)-.15 E(gument is not null.)-.18 -E 2.5(2a)144 520.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) -180 532.8 R .37(gument is)-.18 F F1(!)2.87 E F0 2.87(,t)C .37(he e)-2.87 +E 2.5(2a)144 262.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) +180 274.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 .38(If the \214rst ar)180 544.8 R .38 +(gument is null.)-.18 F .38(If the \214rst ar)180 286.8 R .38 (gument is one of the unary conditional operators listed abo)-.18 F .679 --.15(ve u)-.15 H(nder).15 E F2(CONDI-)2.879 E(TION)180 556.8 Q .552 -(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 568.8 Q +-.15(ve u)-.15 H(nder).15 E/F3 9/Times-Bold@0 SF(CONDI-)2.879 E(TION)180 +298.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 310.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 580.8 S -.18(rg)-2.5 G -(uments).18 E .024(If the second ar)180 592.8 R .023 +(xpression is f)-.15 E(alse.)-.1 E 2.5(3a)144 322.8 S -.18(rg)-2.5 G +(uments).18 E .024(If the second ar)180 334.8 R .023 (gument is one of the binary conditional operators listed abo)-.18 F -.323 -.15(ve u)-.15 H(nder).15 E F2(CON-)2.523 E(DITION)180 604.8 Q +.323 -.15(ve u)-.15 H(nder).15 E F3(CON-)2.523 E(DITION)180 346.8 Q 1.477(AL EXPRESSIONS)-.18 F F4(,)A F0 1.477(the result of the e)3.727 F 1.477(xpression is the result of the binary test)-.15 F .513 -(using the \214rst and third ar)180 616.8 R .513(guments as operands.) +(using the \214rst and third ar)180 358.8 R .513(guments as operands.) -.18 F(The)5.513 E F13.013 E F0(and)3.013 E F13.013 E F0 .512(operators are considered)3.013 F .972 -(binary operators when there are three ar)180 628.8 R 3.472(guments. If) +(binary operators when there are three ar)180 370.8 R 3.472(guments. If) -.18 F .972(the \214rst ar)3.472 F .972(gument is)-.18 F F1(!)3.472 E F0 -3.472(,t)C .972(he v)-3.472 F .972(alue is)-.25 F .884(the ne)180 640.8 +3.472(,t)C .972(he v)-3.472 F .972(alue is)-.25 F .884(the ne)180 382.8 R -.05(ga)-.15 G .884(tion of the tw).05 F(o-ar)-.1 E .884 (gument test using the second and third ar)-.18 F 3.383(guments. If)-.18 -F .883(the \214rst)3.383 F(ar)180 652.8 Q .874(gument is e)-.18 F +F .883(the \214rst)3.383 F(ar)180 394.8 Q .874(gument is e)-.18 F (xactly)-.15 E F1(\()3.374 E F0 .875(and the third ar)3.374 F .875 (gument is e)-.18 F(xactly)-.15 E F1(\))3.375 E F0 3.375(,t)C .875 (he result is the one-ar)-3.375 F(gument)-.18 E(test of the second ar) -180 664.8 Q 2.5(gument. Otherwise,)-.18 F(the e)2.5 E(xpression is f) --.15 E(alse.)-.1 E 2.5(4a)144 676.8 S -.18(rg)-2.5 G(uments).18 E .385 -(If the \214rst ar)180 688.8 R .385(gument is)-.18 F F1(!)2.885 E F0 +180 406.8 Q 2.5(gument. Otherwise,)-.18 F(the e)2.5 E(xpression is f) +-.15 E(alse.)-.1 E 2.5(4a)144 418.8 S -.18(rg)-2.5 G(uments).18 E .385 +(If the \214rst ar)180 430.8 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 700.8 R 4.147 +-.15 F 1.647(posed of the remaining ar)180 442.8 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 712.8 Q -.15(ve) --.15 G(.).15 E(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(17)198.725 E -0 Cg EP -%%Page: 18 18 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E 2.5(5o)144 -84 S 2.5(rm)-2.5 G(ore ar)-2.5 E(guments)-.18 E 1.635(The e)180 96 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 108 -Q -.15(ve)-.15 G(.).15 E/F1 10/Times-Bold@0 SF(times)108 124.8 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 136.8 -Q F1(trap)108 153.6 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 165.6 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 +(according to precedence using the rules listed abo)180 454.8 Q -.15(ve) +-.15 G(.).15 E 2.5(5o)144 466.8 S 2.5(rm)-2.5 G(ore ar)-2.5 E(guments) +-.18 E 1.635(The e)180 478.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 +490.8 Q -.15(ve)-.15 G(.).15 E F1(times)108 507.6 Q F0 1.229(Print the \ +accumulated user and system times for the shell and for processes run f\ +rom the shell.)13.23 F(The return status is 0.)144 519.6 Q F1(trap)108 +536.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 .703(The command)144 548.4 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 177.6 R F2(sigspec)3.108 E F0 3.108(\)o)C(r)-3.108 E F13.108 E +144 560.4 R F2(sigspec)3.108 E F0 3.108(\)o)C(r)-3.108 E F13.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 189.6 R .659(alue it had upon entrance to the shell\).) +.659(\(the v)144 572.4 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 201.6 Q F0 .58(is ignored by the shell and by the commands it in) +144.34 584.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 F2(ar)3.411 E(g)-.37 E F0 .581(is not present and)3.301 F F13.081 E F0(has)3.081 E 1.215 -(been supplied, then the trap commands associated with each)144 213.6 R +(been supplied, then the trap commands associated with each)144 596.4 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 225.6 R F13.36 +F(gu-)-.18 E .86(ments are supplied or if only)144 608.4 R F13.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 237.6 R F12.83 E F0 .33(option causes the shell \ +(signal. The)144 620.4 R F12.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 249.6 R F2(sigspec)4.65 E F0 1.811 +(bers. Each)144 632.4 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 .745 -(names are case insensiti)144 261.6 R 1.045 -.15(ve a)-.25 H .745 +(names are case insensiti)144 644.4 R 1.045 -.15(ve a)-.25 H .745 (nd the SIG pre\214x is optional.).15 F .745(If a)5.745 F F2(sigspec) -3.585 E F0(is)3.555 E/F3 9/Times-Bold@0 SF(EXIT)3.245 E F0 .745 -(\(0\) the command)2.995 F F2(ar)144.33 273.6 Q(g)-.37 E F0 1.629(is e) -4.349 F -.15(xe)-.15 G 1.629(cuted on e).15 F 1.63(xit from the shell.) --.15 F 1.63(If a)6.63 F F2(sigspec)4.47 E F0(is)4.44 E F3(DEB)4.13 E(UG) --.09 E/F4 9/Times-Roman@0 SF(,)A F0 1.63(the command)3.88 F F2(ar)4.46 E -(g)-.37 E F0 1.63(is e)4.35 F -.15(xe)-.15 G(cuted).15 E 1.207(before e) -144 285.6 R -.15(ve)-.25 G(ry).15 E F2 1.207(simple command)3.707 F F0 -(,)A F2(for)3.707 E F0(command,)3.706 E F2(case)3.706 E F0(command,) -3.706 E F2(select)3.706 E F0 1.206(command, e)3.706 F -.15(ve)-.25 G -1.206(ry arithmetic).15 F F2(for)144 297.6 Q F0 .412 -(command, and before the \214rst command e)2.912 F -.15(xe)-.15 G .412 -(cutes in a shell function \(see).15 F F3 .413(SHELL GRAMMAR)2.912 F F0 -(abo)144 309.6 Q -.15(ve)-.15 G 2.666(\). Refer).15 F .166 -(to the description of the)2.666 F F1(extdeb)2.666 E(ug)-.2 E F0 .166 -(option to the)2.666 F F1(shopt)2.666 E F0 -.2(bu)2.666 G .166 -(iltin for details of its ef).2 F(fect)-.25 E .508(on the)144 321.6 R F1 -(DEB)3.008 E(UG)-.1 E F0 3.008(trap. If)3.008 F(a)3.008 E F2(sigspec) -3.348 E F0(is)3.318 E F3(ERR)3.008 E F4(,)A F0 .508(the command)2.758 F -F2(ar)3.338 E(g)-.37 E F0 .509(is e)3.228 F -.15(xe)-.15 G .509 -(cuted whene).15 F -.15(ve)-.25 G 3.009(ras).15 G .509(imple com-)-3.009 -F 2.506(mand has a non\255zero e)144 333.6 R 2.506 +3.585 E F0(is)3.555 E F3(EXIT)3.245 E F0 .745(\(0\) the command)2.995 F +F2(ar)144.33 656.4 Q(g)-.37 E F0 1.629(is e)4.349 F -.15(xe)-.15 G 1.629 +(cuted on e).15 F 1.63(xit from the shell.)-.15 F 1.63(If a)6.63 F F2 +(sigspec)4.47 E F0(is)4.44 E F3(DEB)4.13 E(UG)-.09 E F4(,)A F0 1.63 +(the command)3.88 F F2(ar)4.46 E(g)-.37 E F0 1.63(is e)4.35 F -.15(xe) +-.15 G(cuted).15 E 1.207(before e)144 668.4 R -.15(ve)-.25 G(ry).15 E F2 +1.207(simple command)3.707 F F0(,)A F2(for)3.707 E F0(command,)3.706 E +F2(case)3.706 E F0(command,)3.706 E F2(select)3.706 E F0 1.206 +(command, e)3.706 F -.15(ve)-.25 G 1.206(ry arithmetic).15 F F2(for)144 +680.4 Q F0 .412(command, and before the \214rst command e)2.912 F -.15 +(xe)-.15 G .412(cutes in a shell function \(see).15 F F3 .413 +(SHELL GRAMMAR)2.912 F F0(abo)144 692.4 Q -.15(ve)-.15 G 2.666 +(\). Refer).15 F .166(to the description of the)2.666 F F1(extdeb)2.666 +E(ug)-.2 E F0 .166(option to the)2.666 F F1(shopt)2.666 E F0 -.2(bu) +2.666 G .166(iltin for details of its ef).2 F(fect)-.25 E .508(on the) +144 704.4 R F1(DEB)3.008 E(UG)-.1 E F0 3.008(trap. If)3.008 F(a)3.008 E +F2(sigspec)3.348 E F0(is)3.318 E F3(ERR)3.008 E F4(,)A F0 .508 +(the command)2.758 F F2(ar)3.338 E(g)-.37 E F0 .509(is e)3.228 F -.15 +(xe)-.15 G .509(cuted whene).15 F -.15(ve)-.25 G 3.009(ras).15 G .509 +(imple com-)-3.009 F 2.506(mand has a non\255zero e)144 716.4 R 2.506 (xit status, subject to the follo)-.15 F 2.506(wing conditions.)-.25 F (The)7.506 E F3(ERR)5.006 E F0 2.506(trap is not)4.756 F -.15(exe)144 -345.6 S .105(cuted if the f).15 F .105 +728.4 S .105(cuted if the f).15 F .105 (ailed command is part of the command list immediately follo)-.1 F .105 -(wing a)-.25 F F1(while)2.605 E F0(or)2.605 E F1(until)2.605 E F0 -.1 -(ke)144 357.6 S(yw)-.05 E .549(ord, part of the test in an)-.1 F F2(if) -3.059 E F0 .549(statement, part of a command e)5.009 F -.15(xe)-.15 G -.549(cuted in a).15 F F1(&&)3.049 E F0(or)3.049 E/F5 10/Symbol SF -3.049 E F0 .549(list, or if)3.049 F .577(the command')144 369.6 R 3.077 -(sr)-.55 G .577(eturn v)-3.077 F .577(alue is being in)-.25 F -.15(ve) --.4 G .577(rted via).15 F F1(!)3.077 E F0 5.578(.T)C .578 -(hese are the same conditions obe)-5.578 F .578(yed by the)-.15 F F1 -(err)144 381.6 Q(exit)-.18 E F0 3.031(option. If)3.031 F(a)3.031 E F2 -(sigspec)3.371 E F0(is)3.341 E F3(RETURN)3.031 E F4(,)A F0 .531 -(the command)2.781 F F2(ar)3.361 E(g)-.37 E F0 .531(is e)3.251 F -.15 -(xe)-.15 G .53(cuted each time a shell function).15 F .316 -(or a script e)144 393.6 R -.15(xe)-.15 G .317(cuted with the).15 F F1 -(.)2.817 E F0(or)2.817 E F1(sour)2.817 E(ce)-.18 E F0 -.2(bu)2.817 G -.317(iltins \214nishes e).2 F -.15(xe)-.15 G 2.817(cuting. Signals).15 F -.317(ignored upon entry to)2.817 F .787 -(the shell cannot be trapped or reset.)144 405.6 R -.35(Tr)5.787 G .787 +(wing a)-.25 F F1(while)2.605 E F0(or)2.605 E F1(until)2.605 E F0 +(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(18)198.725 E 0 Cg EP +%%Page: 19 19 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E -.1(ke)144 +84 S(yw)-.05 E .549(ord, part of the test in an)-.1 F/F1 10 +/Times-Italic@0 SF(if)3.059 E F0 .549(statement, part of a command e) +5.009 F -.15(xe)-.15 G .549(cuted in a).15 F/F2 10/Times-Bold@0 SF(&&) +3.049 E F0(or)3.049 E/F3 10/Symbol SF3.049 E F0 .549(list, or if) +3.049 F .577(the command')144 96 R 3.077(sr)-.55 G .577(eturn v)-3.077 F +.577(alue is being in)-.25 F -.15(ve)-.4 G .577(rted via).15 F F2(!) +3.077 E F0 5.578(.T)C .578(hese are the same conditions obe)-5.578 F +.578(yed by the)-.15 F F2(err)144 108 Q(exit)-.18 E F0 3.031(option. If) +3.031 F(a)3.031 E F1(sigspec)3.371 E F0(is)3.341 E/F4 9/Times-Bold@0 SF +(RETURN)3.031 E/F5 9/Times-Roman@0 SF(,)A F0 .531(the command)2.781 F F1 +(ar)3.361 E(g)-.37 E F0 .531(is e)3.251 F -.15(xe)-.15 G .53 +(cuted each time a shell function).15 F .316(or a script e)144 120 R +-.15(xe)-.15 G .317(cuted with the).15 F F2(.)2.817 E F0(or)2.817 E F2 +(sour)2.817 E(ce)-.18 E F0 -.2(bu)2.817 G .317(iltins \214nishes e).2 F +-.15(xe)-.15 G 2.817(cuting. Signals).15 F .317(ignored upon entry to) +2.817 F .787(the shell cannot be trapped or reset.)144 132 R -.35(Tr) +5.787 G .787 (apped signals that are not being ignored are reset to their).35 F 1.1 -(original v)144 417.6 R 1.1 -(alues in a child process when it is created.)-.25 F 1.1 -(The return status is f)6.1 F 1.1(alse if an)-.1 F(y)-.15 E F2(sigspec) -3.94 E F0(is)3.91 E(in)144 429.6 Q -.25(va)-.4 G(lid; otherwise).25 E F1 -(trap)2.5 E F0(returns true.)2.5 E F1(type)108 446.4 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 458.4 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 +(original v)144 144 R 1.1(alues in a child process when it is created.) +-.25 F 1.1(The return status is f)6.1 F 1.1(alse if an)-.1 F(y)-.15 E F1 +(sigspec)3.94 E F0(is)3.91 E(in)144 156 Q -.25(va)-.4 G(lid; otherwise) +.25 E F2(trap)2.5 E F0(returns true.)2.5 E F2(type)108 172.8 Q F0([)2.5 +E F2(\255aftpP)A F0(])A F1(name)2.5 E F0([)2.5 E F1(name)A F0(...])2.5 E +-.4(Wi)144 184.8 S .174(th no options, indicate ho).4 F 2.674(we)-.25 G +(ach)-2.674 E F1(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 -F1144 470.4 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 482.4 Q F0 .087 +F2144 196.8 Q F0 .842(option is used,)3.342 F F2(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 208.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 F2 +(ve)-.25 G(ly).15 E 5.086(.I)-.65 G 2.586(ft)-5.086 G(he)-2.586 E F1 (name)2.946 E F0 .086(is not)2.766 F .118 -(found, then nothing is printed, and an e)144 494.4 R .118 +(found, then nothing is printed, and an e)144 220.8 R .118 (xit status of f)-.15 F .118(alse is returned.)-.1 F .119(If the)5.119 F -F12.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 506.4 R .855 -(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F2(name)3.715 E F0 +F22.619 E F0 .119(option is used,)2.619 F F2(type)2.619 E F0 .855 +(either returns the name of the disk \214le that w)144 232.8 R .855 +(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F1(name)3.715 E F0 .855(were speci\214ed as a com-)3.535 F .64(mand name, or nothing if)144 -518.4 R/F6 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 -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 530.4 R F2(name)2.613 E F0 2.613(,e) +244.8 R/F6 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 F2 +3.141 E F0 .641(option forces a)3.141 F F4 -.666(PA)3.141 G(TH) +-.189 E F0 .113(search for each)144 256.8 R F1(name)2.613 E F0 2.613(,e) C -.15(ve)-2.863 G 2.613(ni).15 G(f)-2.613 E F6 .113(type -t name)2.613 -F F0 -.1(wo)2.613 G .113(uld not return).1 F F2(\214le)2.613 E F0 5.113 -(.I).18 G 2.613(fa)-5.113 G .112(command is hashed,)-.001 F F1 -2.612 E F0(and)144 542.4 Q F12.944 E F0 .444(print the hashed v) +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 F2 +2.612 E F0(and)144 268.8 Q F22.944 E F0 .444(print the hashed v) 2.944 F .444(alue, not necessarily the \214le that appears \214rst in) --.25 F F3 -.666(PA)2.945 G(TH)-.189 E F4(.)A F0 .445(If the)4.945 F F1 -2.945 E F0(option)2.945 E .265(is used,)144 554.4 R F1(type)2.765 +-.25 F F4 -.666(PA)2.945 G(TH)-.189 E F5(.)A F0 .445(If the)4.945 F F2 +2.945 E F0(option)2.945 E .265(is used,)144 280.8 R F2(type)2.765 E F0 .265(prints all of the places that contain an e)2.765 F -.15(xe) --.15 G .265(cutable named).15 F F2(name)2.765 E F0 5.265(.T).18 G .265 +-.15 G .265(cutable named).15 F F1(name)2.765 E F0 5.265(.T).18 G .265 (his includes aliases)-5.265 F .426(and functions, if and only if the) -144 566.4 R F12.926 E F0 .426(option is not also used.)2.926 F +144 292.8 R F22.926 E F0 .426(option is not also used.)2.926 F .427(The table of hashed commands is not)5.426 F .549 -(consulted when using)144 578.4 R F13.049 E F0 5.549(.T)C(he) --5.549 E F13.049 E F0 .548 -(option suppresses shell function lookup, as with the)3.049 F F1 -(command)3.048 E F0 -.2(bu)144 590.4 S(iltin.).2 E F1(type)5 E F0 -(returns true if an)2.5 E 2.5(yo)-.15 G 2.5(ft)-2.5 G(he ar)-2.5 E -(guments are found, f)-.18 E(alse if none are found.)-.1 E F1(ulimit)108 -607.2 Q F0([)2.5 E F1(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E -F2(limit)A F0(]])A(Pro)144 619.2 Q .243(vides control o)-.15 F -.15(ve) +(consulted when using)144 304.8 R F23.049 E F0 5.549(.T)C(he) +-5.549 E F23.049 E F0 .548 +(option suppresses shell function lookup, as with the)3.049 F F2 +(command)3.048 E F0 -.2(bu)144 316.8 S(iltin.).2 E F2(type)5 E F0 +(returns true if all of the ar)2.5 E(guments are found, f)-.18 E +(alse if an)-.1 E 2.5(ya)-.15 G(re not found.)-2.5 E F2(ulimit)108 333.6 +Q F0([)2.5 E F2(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F1 +(limit)A F0(]])A(Pro)144 345.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 -.944(that allo)144 631.2 R 3.444(ws)-.25 G .944(uch control.)-3.444 F -(The)5.944 E F13.444 E F0(and)3.444 E F13.444 E F0 .943 +.944(that allo)144 357.6 R 3.444(ws)-.25 G .944(uch control.)-3.444 F +(The)5.944 E F23.444 E F0(and)3.444 E F23.444 E F0 .943 (options specify that the hard or soft limit is set for the)3.444 F(gi) -144 643.2 Q -.15(ve)-.25 G 2.708(nr).15 G 2.708(esource. A)-2.708 F .208 +144 369.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.708 F .426(be increased up to the v)144 655.2 R .426 -(alue of the hard limit.)-.25 F .425(If neither)5.426 F F12.925 E -F0(nor)2.925 E F12.925 E F0 .425 +ft limit may)2.708 F .426(be increased up to the v)144 381.6 R .426 +(alue of the hard limit.)-.25 F .425(If neither)5.426 F F22.925 E +F0(nor)2.925 E F22.925 E F0 .425 (is speci\214ed, both the soft and)2.925 F .139(hard limits are set.)144 -667.2 R .139(The v)5.139 F .139(alue of)-.25 F F2(limit)2.729 E F0 .139 +393.6 R .139(The v)5.139 F .139(alue of)-.25 F F1(limit)2.729 E F0 .139 (can be a number in the unit speci\214ed for the resource or one)3.319 F -.742(of the special v)144 679.2 R(alues)-.25 E F1(hard)3.242 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 405.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 691.2 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 417.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 (is omitted, the current v)3.96 F .78(alue of the soft limit of the)-.25 -F .499(resource is printed, unless the)144 703.2 R F12.999 E F0 +F .499(resource is printed, unless the)144 429.6 R F22.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 715.2 Q 2.5 -(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E -(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(18)198.725 E 0 Cg EP -%%Page: 19 19 +(limit name and unit are printed before the v)144 441.6 Q 2.5 +(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F2 +144 453.6 Q F0(All current limits are reported)25.3 E F2144 +465.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E +F2144 477.6 Q F0(The maximum size of core \214les created)25.86 E +F2144 489.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 F2144 501.6 Q F0 +(The maximum scheduling priority \("nice"\))25.86 E F2144 513.6 Q +F0(The maximum size of \214les written by the shell and its children) +26.97 E F2144 525.6 Q F0(The maximum number of pending signals) +27.52 E F2144 537.6 Q F0(The maximum size that may be lock)27.52 E +(ed into memory)-.1 E F2144 549.6 Q F0 +(The maximum resident set size)21.97 E F2144 561.6 Q F0 .791(The \ +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 573.6 Q F2144 585.6 Q F0 +(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F2 +144 597.6 Q F0 +(The maximum number of bytes in POSIX message queues)24.74 E F2144 +609.6 Q F0(The maximum real-time scheduling priority)25.86 E F2144 +621.6 Q F0(The maximum stack size)26.41 E F2144 633.6 Q F0 +(The maximum amount of cpu time in seconds)26.97 E F2144 645.6 Q +F0(The maximum number of processes a)24.74 E -.25(va)-.2 G +(ilable to a single user).25 E F2144 657.6 Q F0 +(The maximum amount of virtual memory a)25.3 E -.25(va)-.2 G +(ilable to the shell).25 E F2144 669.6 Q F0 +(The maximum number of \214le locks)25.3 E F2144 681.6 Q F0 +(The maximum number of threads)23.63 E(If)144 698.4 Q F1(limit)2.933 E +F0 .343(is gi)3.523 F -.15(ve)-.25 G .343(n, it is the ne).15 F 2.843 +(wv)-.25 G .343(alue of the speci\214ed resource \(the)-3.093 F F2 +2.843 E F0 .343(option is display only\).)2.843 F .343(If no)5.343 F +.175(option is gi)144 710.4 R -.15(ve)-.25 G .175(n, then).15 F F2 +2.675 E F0 .175(is assumed.)2.675 F -1.11(Va)5.175 G .175 +(lues are in 1024-byte increments, e)1.11 F .176(xcept for)-.15 F F2 +2.676 E F0 2.676(,w)C .176(hich is in)-2.676 F(seconds,)144 722.4 +Q F23.564 E F0 3.564(,w)C 1.064 +(hich is in units of 512-byte blocks, and)-3.564 F F23.563 E F0(,) +A F23.563 E F0(,)A F23.563 E F0 3.563(,a)C(nd)-3.563 E F2 +3.563 E F0 3.563(,w)C 1.063(hich are unscaled)-3.563 F +(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(19)198.725 E 0 Cg EP +%%Page: 20 20 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF144 84 Q F0(All current limits are reported)25.3 E -F1144 96 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E -(fer size)-.25 E F1144 108 Q F0 -(The maximum size of core \214les created)25.86 E F1144 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 F1144 132 Q F0 -(The maximum scheduling priority \("nice"\))25.86 E F1144 144 Q F0 -(The maximum size of \214les written by the shell and its children)26.97 -E F1144 156 Q F0(The maximum number of pending signals)27.52 E F1 -144 168 Q F0(The maximum size that may be lock)27.52 E -(ed into memory)-.1 E F1144 180 Q F0 -(The maximum resident set size)21.97 E F1144 192 Q F0 .791(The ma\ -ximum 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 -204 Q F1144 216 Q F0 -(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F1 -144 228 Q F0(The maximum number of bytes in POSIX message queues) -24.74 E F1144 240 Q F0(The maximum real-time scheduling priority) -25.86 E F1144 252 Q F0(The maximum stack size)26.41 E F1144 -264 Q F0(The maximum amount of cpu time in seconds)26.97 E F1144 -276 Q F0(The maximum number of processes a)24.74 E -.25(va)-.2 G -(ilable to a single user).25 E F1144 288 Q F0 -(The maximum amount of virtual memory a)25.3 E -.25(va)-.2 G -(ilable to the shell).25 E F1144 300 Q F0 -(The maximum number of \214le locks)25.3 E F1144 312 Q F0 -(The maximum number of threads)23.63 E(If)144 328.8 Q/F2 10 -/Times-Italic@0 SF(limit)2.933 E F0 .343(is gi)3.523 F -.15(ve)-.25 G -.343(n, it is the ne).15 F 2.843(wv)-.25 G .343 -(alue of the speci\214ed resource \(the)-3.093 F F12.843 E F0 .343 -(option is display only\).)2.843 F .343(If no)5.343 F .175(option is gi) -144 340.8 R -.15(ve)-.25 G .175(n, then).15 F F12.675 E F0 .175 -(is assumed.)2.675 F -1.11(Va)5.175 G .175 -(lues are in 1024-byte increments, e)1.11 F .176(xcept for)-.15 F F1 -2.676 E F0 2.676(,w)C .176(hich is in)-2.676 F(seconds,)144 352.8 -Q F12.516 E F0 2.516(,w)C .016 -(hich is in units of 512-byte blocks, and)-2.516 F F12.516 E F0(,) -A F12.515 E F0(,)A F12.515 E F0 2.515(,a)C(nd)-2.515 E F1 -2.515 E F0 2.515(,w)C .015(hich are unscaled v)-2.515 F(al-)-.25 E -3.787(ues. The)144 364.8 R 1.287(return status is 0 unless an in)3.787 F --.25(va)-.4 G 1.287(lid option or ar).25 F 1.287 -(gument is supplied, or an error occurs)-.18 F(while setting a ne)144 -376.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 393.6 Q F0([)2.5 E F1 -A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(mode)-2.5 E F0(])A .2 -(The user \214le-creation mask is set to)144 405.6 R F2(mode)2.7 E F0 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E -.25(va)144 +84 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 96 +Q 2.5(wl)-.25 G(imit.)-2.5 E/F1 10/Times-Bold@0 SF(umask)108 112.8 Q F0 +([)2.5 E F1A F0 2.5(][)C F1-2.5 E F0 2.5(][)C/F2 10 +/Times-Italic@0 SF(mode)-2.5 E F0(])A .2 +(The user \214le-creation mask is set to)144 124.8 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 417.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 -429.6 Q F2(mode)3.263 E F0 .382(is omitted, the current v)3.063 F .382 +pted by)144 136.8 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 +148.8 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 F12.882 E F0 .382 (option causes the mask to be)2.882 F .547 -(printed in symbolic form; the def)144 441.6 R .547 +(printed in symbolic form; the def)144 160.8 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 F13.047 E F0 .547(option is supplied, and)3.047 F F2 -(mode)144.38 453.6 Q F0 .552 +(mode)144.38 172.8 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 465.6 Q +F .551(The return status is 0 if the)5.551 F(mode w)144 184.8 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 482.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 494.4 Q 1.955 -.15(ve e)-.15 H(ach).15 E F2(name) +(unalias)108 201.6 Q F0<5bad>2.5 E F1(a)A F0 2.5(][)C F2(name)-2.5 E F0 +(...])2.5 E(Remo)144 213.6 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 F14.155 E F0 1.655(is supplied, all alias de\214nitions are)4.155 -F(remo)144 506.4 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E +F(remo)144 225.6 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 523.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 535.2 S 3.107 +(is not a de\214ned alias.)2.68 E F1(unset)108 242.4 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 254.4 S 3.107 (re).15 G(ach)-3.107 E F2(name)3.107 E F0 3.107(,r).18 G(emo)-3.107 E .907 -.15(ve t)-.15 H .607(he corresponding v).15 F .607 (ariable or function.)-.25 F .606(If no options are supplied, or the) -5.607 F F1144 547.2 Q F0 .304(option is gi)2.804 F -.15(ve)-.25 G +5.607 F F1144 266.4 Q F0 .304(option is gi)2.804 F -.15(ve)-.25 G .304(n, each).15 F F2(name)3.164 E F0 .305(refers to a shell v)2.985 F 2.805(ariable. Read-only)-.25 F -.25(va)2.805 G .305 -(riables may not be unset.).25 F(If)5.305 E F1144 559.2 Q F0 .46 +(riables may not be unset.).25 F(If)5.305 E F1144 278.4 Q F0 .46 (is speci\214ed, each)2.96 F F2(name)3.32 E F0 .459 (refers to a shell function, and the function de\214nition is remo)3.14 -F -.15(ve)-.15 G 2.959(d. Each).15 F .902(unset v)144 571.2 R .902 +F -.15(ve)-.15 G 2.959(d. Each).15 F .902(unset v)144 290.4 R .902 (ariable or function is remo)-.25 F -.15(ve)-.15 G 3.402(df).15 G .902 (rom the en)-3.402 F .903(vironment passed to subsequent commands.)-.4 F -(If)5.903 E(an)144 583.2 Q 4.285(yo)-.15 G(f)-4.285 E/F3 9/Times-Bold@0 +(If)5.903 E(an)144 302.4 Q 4.285(yo)-.15 G(f)-4.285 E/F3 9/Times-Bold@0 SF(RANDOM)4.285 E/F4 9/Times-Roman@0 SF(,)A F3(SECONDS)4.035 E F4(,)A F3 (LINENO)4.035 E F4(,)A F3(HISTCMD)4.035 E F4(,)A F3(FUNCN)4.035 E(AME) -.18 E F4(,)A F3(GR)4.035 E(OUPS)-.27 E F4(,)A F0(or)4.035 E F3(DIRST) 4.284 E -.495(AC)-.81 G(K).495 E F0(are)4.034 E .328(unset, the)144 -595.2 R 2.828(yl)-.15 G .328(ose their special properties, e)-2.828 F +314.4 R 2.828(yl)-.15 G .328(ose their special properties, e)-2.828 F -.15(ve)-.25 G 2.828(ni).15 G 2.828(ft)-2.828 G(he)-2.828 E 2.828(ya) -.15 G .328(re subsequently reset.)-2.828 F .328(The e)5.328 F .329 -(xit status is true)-.15 F(unless a)144 607.2 Q F2(name)2.86 E F0 -(is readonly)2.68 E(.)-.65 E F1(wait)108 624 Q F0([)2.5 E F2 2.5(n.)C -(..)-2.5 E F0(])A -.8(Wa)144 636 S .288 +(xit status is true)-.15 F(unless a)144 326.4 Q F2(name)2.86 E F0 +(is readonly)2.68 E(.)-.65 E F1(wait)108 343.2 Q F0([)2.5 E F2 2.5(n.)C +(..)-2.5 E F0(])A -.8(Wa)144 355.2 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 648 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 660 R -.15(ve)-.25 G 1.266 +(job speci\214cation; if a job spec is gi)144 367.2 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 379.2 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 672 R .457 +(speci\214es a non-e)144 391.2 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 684 S +(Otherwise, the return status is the)5.457 F -.15(ex)144 403.2 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 700.8 Q F0(bash\(1\), sh\(1\))108 -712.8 Q(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(19)198.725 E 0 Cg EP +/F5 10.95/Times-Bold@0 SF(SEE ALSO)72 420 Q F0(bash\(1\), sh\(1\))108 +432 Q(GNU Bash-3.0)72 768 Q(2004 Apr 20)148.735 E(20)198.725 E 0 Cg EP %%Trailer end %%EOF diff --git a/doc/rbash.ps b/doc/rbash.ps index e1b70511c..2f379e5ba 100644 --- a/doc/rbash.ps +++ b/doc/rbash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.19.2 -%%CreationDate: Tue Apr 8 09:14:15 2008 +%%CreationDate: Thu May 29 11:48:42 2008 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%DocumentSuppliedResources: procset grops 1.19 2 diff --git a/doc/version.texi b/doc/version.texi index 27ea810a9..00b4b7eb5 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -2,9 +2,9 @@ Copyright (C) 1988-2008 Free Software Foundation, Inc. @end ignore -@set LASTCHANGE Sun May 25 10:48:26 EDT 2008 +@set LASTCHANGE Mon Jun 2 20:32:28 EDT 2008 @set EDITION 4.0 @set VERSION 4.0 -@set UPDATED 25 May 2008 -@set UPDATED-MONTH May 2008 +@set UPDATED 2 June 2008 +@set UPDATED-MONTH June 2008 diff --git a/doc/version.texi~ b/doc/version.texi~ index ba448d24b..27ea810a9 100644 --- a/doc/version.texi~ +++ b/doc/version.texi~ @@ -2,9 +2,9 @@ Copyright (C) 1988-2008 Free Software Foundation, Inc. @end ignore -@set LASTCHANGE Sun May 4 22:23:58 EDT 2008 +@set LASTCHANGE Sun May 25 10:48:26 EDT 2008 @set EDITION 4.0 @set VERSION 4.0 -@set UPDATED 4 May 2008 +@set UPDATED 25 May 2008 @set UPDATED-MONTH May 2008 diff --git a/externs.h b/externs.h index 47b5df8d7..4cf40e506 100644 --- a/externs.h +++ b/externs.h @@ -96,6 +96,7 @@ extern char **brace_expand __P((char *)); /* Miscellaneous functions from parse.y */ extern int yyparse __P((void)); extern int return_EOF __P((void)); +extern char *xparse_dolparen __P((char *, char *, int *, int)); extern void reset_parser __P((void)); extern WORD_LIST *parse_string_to_word_list __P((char *, int, const char *)); diff --git a/externs.h~ b/externs.h~ index ebc4b9015..47b5df8d7 100644 --- a/externs.h~ +++ b/externs.h~ @@ -274,6 +274,7 @@ extern int sh_contains_shell_metas __P((char *)); /* declarations for functions defined in lib/sh/spell.c */ extern int spname __P((char *, char *)); +extern char *dirspell __P((char *)); /* declarations for functions defined in lib/sh/strcasecmp.c */ #if !defined (HAVE_STRCASECMP) diff --git a/jobs.c b/jobs.c index e701caf64..2a07241bd 100644 --- a/jobs.c +++ b/jobs.c @@ -217,8 +217,6 @@ int check_window_size; /* Functions local to this file. */ -static void run_sigchld_trap __P((int)); - static sighandler wait_sigint_handler __P((int)); static sighandler sigchld_handler __P((int)); static sighandler sigcont_sighandler __P((int)); @@ -3123,7 +3121,17 @@ waitchld (wpid, block) /* Call a SIGCHLD trap handler for each child that exits, if one is set. */ if (job_control && signal_is_trapped (SIGCHLD) && children_exited && trap_list[SIGCHLD] != (char *)IGNORE_SIG) - run_sigchld_trap (children_exited); + { + if (this_shell_builtin && this_shell_builtin == wait_builtin) + { + interrupt_immediately = 0; + trap_handler (SIGCHLD); /* set pending_traps[SIGCHLD] */ + wait_signal_received = SIGCHLD; + longjmp (wait_intr_buf, 1); + } + + run_sigchld_trap (children_exited); + } /* We have successfully recorded the useful information about this process that has just changed state. If we notify asynchronously, and the job @@ -3342,7 +3350,7 @@ setjstatus (j) #endif } -static void +void run_sigchld_trap (nchild) int nchild; { @@ -3373,7 +3381,7 @@ run_sigchld_trap (nchild) subst_assign_varlist = (WORD_LIST *)NULL; the_pipeline = (PROCESS *)NULL; - restore_default_signal (SIGCHLD); + set_impossible_sigchld_trap (); jobs_list_frozen = 1; for (i = 0; i < nchild; i++) { diff --git a/jobs.c~ b/jobs.c~ index 1414bc46a..ce6305ac0 100644 --- a/jobs.c~ +++ b/jobs.c~ @@ -217,8 +217,6 @@ int check_window_size; /* Functions local to this file. */ -static void run_sigchld_trap __P((int)); - static sighandler wait_sigint_handler __P((int)); static sighandler sigchld_handler __P((int)); static sighandler sigcont_sighandler __P((int)); @@ -2214,6 +2212,7 @@ wait_sigint_handler (sig) /* XXX - should this be interrupt_state? If it is, the shell will act as if it got the SIGINT interrupt. */ wait_sigint_received = 1; + /* Otherwise effectively ignore the SIGINT and allow the running job to be killed. */ SIGRETURN (0); @@ -3122,7 +3121,17 @@ waitchld (wpid, block) /* Call a SIGCHLD trap handler for each child that exits, if one is set. */ if (job_control && signal_is_trapped (SIGCHLD) && children_exited && trap_list[SIGCHLD] != (char *)IGNORE_SIG) - run_sigchld_trap (children_exited); + { + if (posixly_correct && this_shell_builtin && this_shell_builtin == wait_builtin) + { + interrupt_immediately = 0; + trap_handler (SIGCHLD); /* set pending_traps[SIGCHLD] */ + wait_signal_received = SIGCHLD; + longjmp (wait_intr_buf, 1); + } + + run_sigchld_trap (children_exited); + } /* We have successfully recorded the useful information about this process that has just changed state. If we notify asynchronously, and the job @@ -3341,7 +3350,7 @@ setjstatus (j) #endif } -static void +void run_sigchld_trap (nchild) int nchild; { @@ -3372,7 +3381,7 @@ run_sigchld_trap (nchild) subst_assign_varlist = (WORD_LIST *)NULL; the_pipeline = (PROCESS *)NULL; - restore_default_signal (SIGCHLD); + set_impossible_sigchld_trap (); jobs_list_frozen = 1; for (i = 0; i < nchild; i++) { diff --git a/jobs.h b/jobs.h index 91dfa03e3..d28f665a8 100644 --- a/jobs.h +++ b/jobs.h @@ -221,6 +221,8 @@ extern int initialize_job_control __P((int)); extern void initialize_job_signals __P((void)); extern int give_terminal_to __P((pid_t, int)); +extern void run_sigchld_trap __P((int)); + extern void unfreeze_jobs_list __P((void)); extern int set_job_control __P((int)); extern void without_job_control __P((void)); diff --git a/parse.y b/parse.y index 3bc2863bb..638ad52cb 100644 --- a/parse.y +++ b/parse.y @@ -148,6 +148,7 @@ static int yy_readline_unget __P((int)); static int yy_string_get __P((void)); static int yy_string_unget __P((int)); +static void rewind_input_string __P((void)); static int yy_stream_get __P((void)); static int yy_stream_unget __P((int)); @@ -170,6 +171,7 @@ static int time_command_acceptable __P((void)); static int special_case_tokens __P((char *)); static int read_token __P((int)); static char *parse_matched_pair __P((int, int, int, int *, int)); +static char *parse_comsub __P((int, int, int, int *, int)); #if defined (ARRAY_VARS) static char *parse_compound_assignment __P((int *)); #endif @@ -1345,6 +1347,31 @@ with_input_from_string (string, name) init_yy_io (yy_string_get, yy_string_unget, st_string, name, location); } +/* Count the number of characters we've consumed from bash_input.location.string + and read into shell_input_line, but have not returned from shell_getc. + That is the true input location. Rewind bash_input.location.string by + that number of characters, so it points to the last character actually + consumed by the parser. */ +void +rewind_input_string () +{ + int xchars; + + /* number of unconsumed characters in the input -- XXX need to take newlines + into account, e.g., $(...\n) */ + xchars = shell_input_line_len - shell_input_line_index; + + /* XXX - how to reflect bash_input.location.string back to string passed to + parse_and_execute or xparse_dolparen? xparse_dolparen needs to know how + far into the string we parsed. parse_and_execute knows where bash_input. + location.string is, and how far from orig_string that is -- that's the + number of characters the command consumed. */ + + /* bash_input.location.string - xchars should be where we parsed to */ + /* need to do more validation on xchars value for sanity -- test cases. */ + bash_input.location.string -= xchars; +} + /* **************************************************************** */ /* */ /* Let input come from STREAM. */ @@ -2787,7 +2814,7 @@ tokword: #define LEX_HEREDELIM 0x100 /* reading here-doc delimiter */ #define LEX_STRIPDOC 0x200 /* <<- strip tabs from here doc delim */ -#define COMSUB_META(ch) ((ch) == ';' || (ch) == '&' || (ch) = '|') +#define COMSUB_META(ch) ((ch) == ';' || (ch) == '&' || (ch) == '|') #define CHECK_NESTRET_ERROR() \ do { \ @@ -2816,15 +2843,17 @@ parse_matched_pair (qc, open, close, lenp, flags) int open, close; int *lenp, flags; { - int count, ch, was_dollar, in_comment, check_comment; - int pass_next_character, backq_backslash, nestlen, ttranslen, start_lineno; + int count, ch, tflags; + int nestlen, ttranslen, start_lineno; char *ret, *nestret, *ttrans; int retind, retsize, rflags; /* itrace("parse_matched_pair: open = %c close = %c", open, close); */ count = 1; - pass_next_character = backq_backslash = was_dollar = in_comment = 0; - check_comment = (flags & P_COMMAND) && qc != '`' && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0; + tflags = 0; + + if ((flags & P_COMMAND) && qc != '`' && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0) + tflags |= LEX_CKCOMMENT; /* RFLAGS is the set of flags we want to pass to recursive calls. */ rflags = (qc == '"') ? P_DQUOTE : (flags & P_DQUOTE); @@ -2835,7 +2864,7 @@ parse_matched_pair (qc, open, close, lenp, flags) start_lineno = line_number; while (count) { - ch = shell_getc (qc != '\'' && pass_next_character == 0 && backq_backslash == 0); + ch = shell_getc (qc != '\'' && (tflags & LEX_PASSNEXT) == 0); if (ch == EOF) { @@ -2849,36 +2878,33 @@ parse_matched_pair (qc, open, close, lenp, flags) if (ch == '\n' && SHOULD_PROMPT ()) prompt_again (); - if (in_comment) + /* Don't bother counting parens or doing anything else if in a comment + or part of a case statement */ + if (tflags & LEX_INCOMMENT) { /* Add this character. */ RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); ret[retind++] = ch; if (ch == '\n') - in_comment = 0; + tflags &= ~LEX_INCOMMENT; continue; } + /* Not exactly right yet, should handle shell metacharacters, too. If any changes are made to this test, make analogous changes to subst.c: extract_delimited_string(). */ - else if MBTEST(check_comment && in_comment == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || whitespace (ret[retind - 1]))) - in_comment = 1; - - /* last char was backslash inside backquoted command substitution */ - if (backq_backslash) - { - backq_backslash = 0; - /* Placeholder for adding special characters */ - } + else if MBTEST((tflags & LEX_CKCOMMENT) && (tflags & LEX_INCOMMENT) == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || whitespace (ret[retind - 1]))) + tflags |= LEX_INCOMMENT; - if (pass_next_character) /* last char was backslash */ + if (tflags & LEX_PASSNEXT) /* last char was backslash */ { - pass_next_character = 0; + tflags &= ~LEX_PASSNEXT; if (qc != '\'' && ch == '\n') /* double-quoted \ disappears. */ { - if (retind > 0) retind--; /* swallow previously-added backslash */ + if (retind > 0) + retind--; /* swallow previously-added backslash */ continue; } @@ -2898,7 +2924,7 @@ parse_matched_pair (qc, open, close, lenp, flags) else if MBTEST(ch == close) /* ending delimiter */ count--; /* handle nested ${...} specially. */ - else if MBTEST(open != close && was_dollar && open == '{' && ch == open) /* } */ + else if MBTEST(open != close && (tflags & LEX_WASDOL) && open == '{' && ch == open) /* } */ count++; else if MBTEST(((flags & P_FIRSTCLOSE) == 0) && ch == open) /* nested begin */ count++; @@ -2907,37 +2933,36 @@ parse_matched_pair (qc, open, close, lenp, flags) RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); ret[retind++] = ch; + /* If we just read the ending character, don't bother continuing. */ + if (count == 0) + break; + if (open == '\'') /* '' inside grouping construct */ { if MBTEST((flags & P_ALLOWESC) && ch == '\\') - pass_next_character++; -#if 0 - else if MBTEST((flags & P_BACKQUOTE) && ch == '\\') - backq_backslash++; -#endif + tflags |= LEX_PASSNEXT; continue; } if MBTEST(ch == '\\') /* backslashes */ - pass_next_character++; + tflags |= LEX_PASSNEXT; + /* Could also check open == '`' if we want to parse grouping constructs + inside old-style command substitution. */ if (open != close) /* a grouping construct */ { if MBTEST(shellquote (ch)) { /* '', ``, or "" inside $(...) or other grouping construct. */ push_delimiter (dstack, ch); - if MBTEST(was_dollar && ch == '\'') /* $'...' inside group */ + if MBTEST((tflags & LEX_WASDOL) && ch == '\'') /* $'...' inside group */ nestret = parse_matched_pair (ch, ch, ch, &nestlen, P_ALLOWESC|rflags); else nestret = parse_matched_pair (ch, ch, ch, &nestlen, rflags); pop_delimiter (dstack); - if (nestret == &matched_pair_error) - { - free (ret); - return &matched_pair_error; - } - if MBTEST(was_dollar && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) + CHECK_NESTRET_ERROR (); + + if MBTEST((tflags & LEX_WASDOL) && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) { /* Translate $'...' here. */ ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen); @@ -2956,7 +2981,7 @@ parse_matched_pair (qc, open, close, lenp, flags) } retind -= 2; /* back up before the $' */ } - else if MBTEST(was_dollar && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) + else if MBTEST((tflags & LEX_WASDOL) && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) { /* Locale expand $"..." here. */ ttrans = localeexpand (nestret, 0, nestlen - 1, start_lineno, &ttranslen); @@ -2968,12 +2993,7 @@ parse_matched_pair (qc, open, close, lenp, flags) retind -= 2; /* back up before the $" */ } - if (nestlen) - { - RESIZE_MALLOCED_BUFFER (ret, retind, nestlen, retsize, 64); - strcpy (ret + retind, nestret); - retind += nestlen; - } + APPEND_NESTRET (); FREE (nestret); } } @@ -2983,51 +3003,464 @@ parse_matched_pair (qc, open, close, lenp, flags) else if MBTEST(open == '"' && ch == '`') { nestret = parse_matched_pair (0, '`', '`', &nestlen, rflags); -add_nestret: - if (nestret == &matched_pair_error) + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + else if MBTEST(open != '`' && (tflags & LEX_WASDOL) && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ + /* check for $(), $[], or ${} inside quoted string. */ + { + if (open == ch) /* undo previous increment */ + count--; + if (ch == '(') /* ) */ + nestret = parse_matched_pair (0, '(', ')', &nestlen, rflags & ~P_DQUOTE); + else if (ch == '{') /* } */ + nestret = parse_matched_pair (0, '{', '}', &nestlen, P_FIRSTCLOSE|rflags); + else if (ch == '[') /* ] */ + nestret = parse_matched_pair (0, '[', ']', &nestlen, rflags); + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + if MBTEST(ch == '$') + tflags |= LEX_WASDOL; + else + tflags &= ~LEX_WASDOL; + } + + ret[retind] = '\0'; + if (lenp) + *lenp = retind; + return ret; +} + +/* Parse a $(...) command substitution. This is messier than I'd like, and + reproduces a lot more of the token-reading code than I'd like. */ +static char * +parse_comsub (qc, open, close, lenp, flags) + int qc; /* `"' if this construct is within double quotes */ + int open, close; + int *lenp, flags; +{ + int count, ch, peekc, tflags, lex_rwlen, lex_firstind; + int nestlen, ttranslen, start_lineno; + char *ret, *nestret, *ttrans, *heredelim; + int retind, retsize, rflags, hdlen; + +/*itrace("parse_comsub: qc = `%c' open = %c close = %c", qc, open, close);*/ + count = 1; + tflags = LEX_RESWDOK; + + if ((flags & P_COMMAND) && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0) + tflags |= LEX_CKCASE; + if ((tflags & LEX_CKCASE) && (interactive == 0 || interactive_comments)) + tflags |= LEX_CKCOMMENT; + + /* RFLAGS is the set of flags we want to pass to recursive calls. */ + rflags = (flags & P_DQUOTE); + + ret = (char *)xmalloc (retsize = 64); + retind = 0; + + start_lineno = line_number; + lex_rwlen = 0; + + heredelim = 0; + lex_firstind = -1; + + while (count) + { +comsub_readchar: + ch = shell_getc (qc != '\'' && (tflags & LEX_PASSNEXT) == 0); + + if (ch == EOF) + { +eof_error: + free (ret); + FREE (heredelim); + parser_error (start_lineno, _("unexpected EOF while looking for matching `%c'"), close); + EOF_Reached = 1; /* XXX */ + return (&matched_pair_error); + } + + /* If we hit the end of a line and are reading the contents of a here + document, and it's not the same line that the document starts on, + check for this line being the here doc delimiter. Otherwise, if + we're in a here document, mark the next character as the beginning + of a line. */ + if (ch == '\n') + { + if ((tflags & LEX_HEREDELIM) && heredelim) { - free (ret); - return &matched_pair_error; + tflags &= ~LEX_HEREDELIM; + tflags |= LEX_INHEREDOC; + lex_firstind = retind + 1; } - if (nestlen) + else if (tflags & LEX_INHEREDOC) { - RESIZE_MALLOCED_BUFFER (ret, retind, nestlen, retsize, 64); - strcpy (ret + retind, nestret); - retind += nestlen; + int tind; + tind = lex_firstind; + while ((tflags & LEX_STRIPDOC) && ret[tind] == '\t') + tind++; + if (STREQN (ret + tind, heredelim, hdlen)) + { + tflags &= ~(LEX_STRIPDOC|LEX_INHEREDOC); +/*itrace("parse_comsub:%d: found here doc end `%s'", line_number, ret + tind);*/ + lex_firstind = -1; + } + else + lex_firstind = retind + 1; } - FREE (nestret); } -#if 0 - else if MBTEST(qc == '`' && (ch == '"' || ch == '\'') && in_comment == 0) + + /* Possible reprompting. */ + if (ch == '\n' && SHOULD_PROMPT ()) + prompt_again (); + + /* Don't bother counting parens or doing anything else if in a comment */ + if (tflags & (LEX_INCOMMENT|LEX_INHEREDOC)) { - /* Add P_BACKQUOTE so backslash quotes the next character and - shell_getc does the right thing with \. We do this for - a measure of backwards compatibility -- it's not strictly the - right POSIX thing. */ - nestret = parse_matched_pair (0, ch, ch, &nestlen, rflags|P_BACKQUOTE); - goto add_nestret; + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + if ((tflags & LEX_INCOMMENT) && ch == '\n') + tflags &= ~LEX_INCOMMENT; + + continue; + } + + /* Skip whitespace */ + if MBTEST(shellblank (ch) && lex_rwlen == 0) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + continue; + } + + /* Either we are looking for the start of the here-doc delimiter + (lex_firstind == -1) or we are reading one (lex_firstind >= 0). + If this character is a shell break character and we are reading + the delimiter, save it and note that we are now reading a here + document. If we've found the start of the delimiter, note it by + setting lex_firstind. Backslashes can quote shell metacharacters + in here-doc delimiters. */ + if (tflags & LEX_HEREDELIM) + { + if (lex_firstind == -1 && shellbreak (ch) == 0) + lex_firstind = retind; + else if (lex_firstind >= 0 && (tflags & LEX_PASSNEXT) == 0 && shellbreak (ch)) + { + nestret = substring (ret, lex_firstind, retind); + heredelim = string_quote_removal (nestret, 0); + free (nestret); + hdlen = STRLEN(heredelim); +/*itrace("parse_comsub:%d: found here doc delimiter `%s' (%d)", line_number, heredelim, hdlen);*/ + if (ch == '\n') + { + tflags |= LEX_INHEREDOC; + tflags &= ~LEX_HEREDELIM; + lex_firstind = retind + 1; + } + else + lex_firstind = -1; + } } + + /* Meta-characters that can introduce a reserved word. Not perfect yet. */ + if MBTEST((tflags & LEX_RESWDOK) == 0 && (tflags & LEX_CKCASE) && (tflags & LEX_INCOMMENT) == 0 && shellmeta(ch)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + peekc = shell_getc (1); + if (ch == peekc && (ch == '&' || ch == '|' || ch == ';')) /* two-character tokens */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; +/*itrace("parse_comsub:%d: set lex_reswordok = 1, ch = `%c'", line_number, ch); */ + tflags |= LEX_RESWDOK; + lex_rwlen = 0; + continue; + } + else if (ch == '\n' || COMSUB_META(ch)) + { + shell_ungetc (peekc); + tflags |= LEX_RESWDOK; +/*itrace("parse_comsub:%d: set lex_reswordok = 1, ch = `%c'", line_number, ch);*/ + lex_rwlen = 0; + continue; + } + else if (ch == EOF) + goto eof_error; + else + { + /* `unget' the character we just added and fall through */ + retind--; + shell_ungetc (peekc); + } + } + + /* If we can read a reserved word, try to read one. */ + if (tflags & LEX_RESWDOK) + { + if MBTEST(islower (ch)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + lex_rwlen++; + continue; + } + else if MBTEST(lex_rwlen == 4 && shellbreak (ch)) + { + if (STREQN (ret + retind - 4, "case", 4)) +{ + tflags |= LEX_INCASE; +/*itrace("parse_comsub:%d: found `case', lex_incase -> 1", line_number);*/ +} + else if (STREQN (ret + retind - 4, "esac", 4)) +{ + tflags &= ~LEX_INCASE; +/*itrace("parse_comsub:%d: found `esac', lex_incase -> 0", line_number);*/ +} + tflags &= ~LEX_RESWDOK; + } + else if (shellbreak (ch) == 0) +{ + tflags &= ~LEX_RESWDOK; +/*itrace("parse_comsub:%d: found `%c', lex_reswordok -> 0", line_number, ch);*/ +} + } + + if MBTEST((tflags & LEX_INCOMMENT) == 0 && (tflags & LEX_CKCASE) && ch == '<') + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + peekc = shell_getc (1); + if (peekc == EOF) + goto eof_error; + if (peekc == ch) + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; + peekc = shell_getc (1); + if (peekc == EOF) + goto eof_error; + if (peekc == '-') + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; + tflags |= LEX_STRIPDOC; + } + else + shell_ungetc (peekc); + tflags |= LEX_HEREDELIM; + lex_firstind = -1; + continue; + } + else + ch = peekc; /* fall through and continue XXX - this skips comments if peekc == '#' */ + } + /* Not exactly right yet, should handle shell metacharacters, too. If + any changes are made to this test, make analogous changes to subst.c: + extract_delimited_string(). */ + else if MBTEST((tflags & LEX_CKCOMMENT) && (tflags & LEX_INCOMMENT) == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || shellblank (ret[retind - 1]))) + tflags |= LEX_INCOMMENT; + + if (tflags & LEX_PASSNEXT) /* last char was backslash */ + { + tflags &= ~LEX_PASSNEXT; + if (qc != '\'' && ch == '\n') /* double-quoted \ disappears. */ + { + if (retind > 0) + retind--; /* swallow previously-added backslash */ + continue; + } + + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + if MBTEST(ch == CTLESC || ch == CTLNUL) + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } + else if MBTEST(ch == CTLESC || ch == CTLNUL) /* special shell escapes */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } +#if 0 + else if MBTEST((tflags & LEX_INCASE) && ch == close && close == ')') + tflags &= ~LEX_INCASE; /* XXX */ #endif - else if MBTEST(open != '`' && was_dollar && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ - /* check for $(), $[], or ${} inside quoted string. */ + else if MBTEST(ch == close && (tflags & LEX_INCASE) == 0) /* ending delimiter */ +{ + count--; +/*itrace("parse_comsub:%d: found close: count = %d", line_number, count);*/ +} + else if MBTEST(((flags & P_FIRSTCLOSE) == 0) && (tflags & LEX_INCASE) == 0 && ch == open) /* nested begin */ + count++; + + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + /* If we just read the ending character, don't bother continuing. */ + if (count == 0) + break; + + if MBTEST(ch == '\\') /* backslashes */ + tflags |= LEX_PASSNEXT; + + if MBTEST(shellquote (ch)) + { + /* '', ``, or "" inside $(...). */ + push_delimiter (dstack, ch); + if MBTEST((tflags & LEX_WASDOL) && ch == '\'') /* $'...' inside group */ + nestret = parse_matched_pair (ch, ch, ch, &nestlen, P_ALLOWESC|rflags); + else + nestret = parse_matched_pair (ch, ch, ch, &nestlen, rflags); + pop_delimiter (dstack); + CHECK_NESTRET_ERROR (); + + if MBTEST((tflags & LEX_WASDOL) && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Translate $'...' here. */ + ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen); + xfree (nestret); + + if ((rflags & P_DQUOTE) == 0) + { + nestret = sh_single_quote (ttrans); + free (ttrans); + nestlen = strlen (nestret); + } + else + { + nestret = ttrans; + nestlen = ttranslen; + } + retind -= 2; /* back up before the $' */ + } + else if MBTEST((tflags & LEX_WASDOL) && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Locale expand $"..." here. */ + ttrans = localeexpand (nestret, 0, nestlen - 1, start_lineno, &ttranslen); + xfree (nestret); + + nestret = sh_mkdoublequoted (ttrans, ttranslen, 0); + free (ttrans); + nestlen = ttranslen + 2; + retind -= 2; /* back up before the $" */ + } + + APPEND_NESTRET (); + FREE (nestret); + } + else if MBTEST((tflags & LEX_WASDOL) && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ + /* check for $(), $[], or ${} inside command substitution. */ { - if (open == ch) /* undo previous increment */ + if ((tflags & LEX_INCASE) == 0 && open == ch) /* undo previous increment */ count--; if (ch == '(') /* ) */ - nestret = parse_matched_pair (0, '(', ')', &nestlen, rflags & ~P_DQUOTE); + nestret = parse_comsub (0, '(', ')', &nestlen, (rflags|P_COMMAND) & ~P_DQUOTE); else if (ch == '{') /* } */ nestret = parse_matched_pair (0, '{', '}', &nestlen, P_FIRSTCLOSE|rflags); else if (ch == '[') /* ] */ nestret = parse_matched_pair (0, '[', ']', &nestlen, rflags); - goto add_nestret; + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); } - was_dollar = MBTEST(ch == '$'); + if MBTEST(ch == '$') + tflags |= LEX_WASDOL; + else + tflags &= ~LEX_WASDOL; } + FREE (heredelim); ret[retind] = '\0'; if (lenp) *lenp = retind; +/*itrace("parse_comsub:%d: returning `%s'", line_number, ret);*/ + return ret; +} + +/* XXX - this needs to handle functionality like subst.c:no_longjmp_on_fatal_error; + maybe extract_command_subst should handle it. */ +char * +xparse_dolparen (base, string, indp, flags) + char *base; + char *string; + int *indp; + int flags; +{ + sh_parser_state_t ps; + int orig_ind, nc, sflags; + char *ret, *s, *ep, *ostring; + + /*yydebug = 1;*/ + orig_ind = *indp; + ostring = string; + + sflags = SEVAL_NONINT|SEVAL_NOHIST|SEVAL_NOFREE; + if (flags & 0x010) /* EX_NOLONGJMP */ + sflags |= SEVAL_NOLONGJMP; + save_parser_state (&ps); + + /*(*/ + parser_state |= PST_CMDSUBST|PST_EOFTOKEN; /* allow instant ')' */ /*(*/ + shell_eof_token = ')'; + parse_string (string, "command substitution", sflags, &ep); + + restore_parser_state (&ps); + reset_parser (); + if (interactive) + token_to_read = 0; + + /* Need to find how many characters parse_and_execute consumed, update + *indp, if flags != 0, copy the portion of the string parsed into RET + and return it. If flags & 1 (EX_NOALLOC) we can return NULL. */ + + /*(*/ + if (ep[-1] != ')') + { +#if DEBUG + itrace("xparse_dolparen:%d: ep[-1] != RPAREN (%d), ep = `%s'", line_number, ep[-1], ep); +#endif + while (ep > ostring && ep[-1] == '\n') ep--; + } + + nc = ep - ostring; + *indp = ep - base - 1; + + /*(*/ +#if DEBUG + if (base[*indp] != ')') + itrace("xparse_dolparen:%d: base[%d] != RPAREN (%d), base = `%s'", line_number, *indp, base[*indp], base); +#endif + + if (flags & 1) + return (char *)NULL; + + if (nc == 0) + { + ret = xmalloc (1); + ret[0] = '\0'; + } + else + ret = substring (ostring, 0, nc - 1); + return ret; } @@ -4319,6 +4752,7 @@ decode_prompt_string (string) no longer than PATH_MAX - 1 characters. */ strcpy (t_string, polite_directory_format (t_string)); + temp = trim_pathname (t_string, PATH_MAX - 1); /* If we're going to be expanding the prompt string later, quote the directory name. */ if (promptvars || posixly_correct) diff --git a/parse.y.save1 b/parse.y.save1 new file mode 100644 index 000000000..b7b35e5e9 --- /dev/null +++ b/parse.y.save1 @@ -0,0 +1,5512 @@ +/* Yacc grammar for bash. */ + +/* Copyright (C) 1989-2008 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 LICENSE. If not, write to the Free Software + Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */ + +%{ +#include "config.h" + +#include "bashtypes.h" +#include "bashansi.h" + +#include "filecntl.h" + +#if defined (HAVE_UNISTD_H) +# include +#endif + +#if defined (HAVE_LOCALE_H) +# include +#endif + +#include +#include "chartypes.h" +#include + +#include "memalloc.h" + +#include "bashintl.h" + +#define NEED_STRFTIME_DECL /* used in externs.h */ + +#include "shell.h" +#include "trap.h" +#include "flags.h" +#include "parser.h" +#include "mailcheck.h" +#include "test.h" +#include "builtins.h" +#include "builtins/common.h" +#include "builtins/builtext.h" + +#include "shmbutil.h" + +#if defined (READLINE) +# include "bashline.h" +# include +#endif /* READLINE */ + +#if defined (HISTORY) +# include "bashhist.h" +# include +#endif /* HISTORY */ + +#if defined (JOB_CONTROL) +# include "jobs.h" +#endif /* JOB_CONTROL */ + +#if defined (ALIAS) +# include "alias.h" +#else +typedef void *alias_t; +#endif /* ALIAS */ + +#if defined (PROMPT_STRING_DECODE) +# ifndef _MINIX +# include +# endif +# include +# if defined (TM_IN_SYS_TIME) +# include +# include +# endif /* TM_IN_SYS_TIME */ +# include "maxpath.h" +#endif /* PROMPT_STRING_DECODE */ + +#define RE_READ_TOKEN -99 +#define NO_EXPANSION -100 + +#ifdef DEBUG +# define YYDEBUG 1 +#else +# define YYDEBUG 0 +#endif + +#if defined (HANDLE_MULTIBYTE) +# define last_shell_getc_is_singlebyte \ + ((shell_input_line_index > 1) \ + ? shell_input_line_property[shell_input_line_index - 1] \ + : 1) +# define MBTEST(x) ((x) && last_shell_getc_is_singlebyte) +#else +# define last_shell_getc_is_singlebyte 1 +# define MBTEST(x) ((x)) +#endif + +#if defined (EXTENDED_GLOB) +extern int extended_glob; +#endif + +extern int eof_encountered; +extern int no_line_editing, running_under_emacs; +extern int current_command_number; +extern int sourcelevel; +extern int posixly_correct; +extern int last_command_exit_value; +extern char *shell_name, *current_host_name; +extern char *dist_version; +extern int patch_level; +extern int dump_translatable_strings, dump_po_strings; +extern sh_builtin_func_t *last_shell_builtin, *this_shell_builtin; +#if defined (BUFFERED_INPUT) +extern int bash_input_fd_changed; +#endif + +extern int errno; +/* **************************************************************** */ +/* */ +/* "Forward" declarations */ +/* */ +/* **************************************************************** */ + +#ifdef DEBUG +static void debug_parser __P((int)); +#endif + +static int yy_getc __P((void)); +static int yy_ungetc __P((int)); + +#if defined (READLINE) +static int yy_readline_get __P((void)); +static int yy_readline_unget __P((int)); +#endif + +static int yy_string_get __P((void)); +static int yy_string_unget __P((int)); +static void rewind_input_string __P((void)); +static int yy_stream_get __P((void)); +static int yy_stream_unget __P((int)); + +static int shell_getc __P((int)); +static void shell_ungetc __P((int)); +static void discard_until __P((int)); + +#if defined (ALIAS) || defined (DPAREN_ARITHMETIC) +static void push_string __P((char *, int, alias_t *)); +static void pop_string __P((void)); +static void free_string_list __P((void)); +#endif + +static char *read_a_line __P((int)); + +static int reserved_word_acceptable __P((int)); +static int yylex __P((void)); +static int alias_expand_token __P((char *)); +static int time_command_acceptable __P((void)); +static int special_case_tokens __P((char *)); +static int read_token __P((int)); +static char *parse_matched_pair __P((int, int, int, int *, int)); +static char *parse_comsub __P((int, int, int, int *, int)); +#if defined (ARRAY_VARS) +static char *parse_compound_assignment __P((int *)); +#endif +#if defined (DPAREN_ARITHMETIC) || defined (ARITH_FOR_COMMAND) +static int parse_dparen __P((int)); +static int parse_arith_cmd __P((char **, int)); +#endif +#if defined (COND_COMMAND) +static void cond_error __P((void)); +static COND_COM *cond_expr __P((void)); +static COND_COM *cond_or __P((void)); +static COND_COM *cond_and __P((void)); +static COND_COM *cond_term __P((void)); +static int cond_skip_newlines __P((void)); +static COMMAND *parse_cond_command __P((void)); +#endif +#if defined (ARRAY_VARS) +static int token_is_assignment __P((char *, int)); +static int token_is_ident __P((char *, int)); +#endif +static int read_token_word __P((int)); +static void discard_parser_constructs __P((int)); + +static char *error_token_from_token __P((int)); +static char *error_token_from_text __P((void)); +static void print_offending_line __P((void)); +static void report_syntax_error __P((char *)); + +static void handle_eof_input_unit __P((void)); +static void prompt_again __P((void)); +#if 0 +static void reset_readline_prompt __P((void)); +#endif +static void print_prompt __P((void)); + +#if defined (HANDLE_MULTIBYTE) +static void set_line_mbstate __P((void)); +static char *shell_input_line_property = NULL; +#else +# define set_line_mbstate() +#endif + +extern int yyerror __P((const char *)); + +#ifdef DEBUG +extern int yydebug; +#endif + +/* Default prompt strings */ +char *primary_prompt = PPROMPT; +char *secondary_prompt = SPROMPT; + +/* PROMPT_STRING_POINTER points to one of these, never to an actual string. */ +char *ps1_prompt, *ps2_prompt; + +/* Handle on the current prompt string. Indirectly points through + ps1_ or ps2_prompt. */ +char **prompt_string_pointer = (char **)NULL; +char *current_prompt_string; + +/* Non-zero means we expand aliases in commands. */ +int expand_aliases = 0; + +/* If non-zero, the decoded prompt string undergoes parameter and + variable substitution, command substitution, arithmetic substitution, + string expansion, process substitution, and quote removal in + decode_prompt_string. */ +int promptvars = 1; + +/* If non-zero, $'...' and $"..." are expanded when they appear within + a ${...} expansion, even when the expansion appears within double + quotes. */ +int extended_quote = 1; + +/* The decoded prompt string. Used if READLINE is not defined or if + editing is turned off. Analogous to current_readline_prompt. */ +static char *current_decoded_prompt; + +/* The number of lines read from input while creating the current command. */ +int current_command_line_count; + +/* The token that currently denotes the end of parse. */ +int shell_eof_token; + +/* The token currently being read. */ +int current_token; + +/* Variables to manage the task of reading here documents, because we need to + defer the reading until after a complete command has been collected. */ +static REDIRECT *redir_stack[10]; +int need_here_doc; + +/* Where shell input comes from. History expansion is performed on each + line when the shell is interactive. */ +static char *shell_input_line = (char *)NULL; +static int shell_input_line_index; +static int shell_input_line_size; /* Amount allocated for shell_input_line. */ +static int shell_input_line_len; /* strlen (shell_input_line) */ + +/* Either zero or EOF. */ +static int shell_input_line_terminator; + +/* The line number in a script on which a function definition starts. */ +static int function_dstart; + +/* The line number in a script on which a function body starts. */ +static int function_bstart; + +/* The line number in a script at which an arithmetic for command starts. */ +static int arith_for_lineno; + +/* The current parser state. */ +static int parser_state; + +/* The last read token, or NULL. read_token () uses this for context + checking. */ +static int last_read_token; + +/* The token read prior to last_read_token. */ +static int token_before_that; + +/* The token read prior to token_before_that. */ +static int two_tokens_ago; + +/* The line number in a script where the word in a `case WORD', `select WORD' + or `for WORD' begins. This is a nested command maximum, since the array + index is decremented after a case, select, or for command is parsed. */ +#define MAX_CASE_NEST 128 +static int word_lineno[MAX_CASE_NEST]; +static int word_top = -1; + +/* If non-zero, it is the token that we want read_token to return + regardless of what text is (or isn't) present to be read. This + is reset by read_token. If token_to_read == WORD or + ASSIGNMENT_WORD, yylval.word should be set to word_desc_to_read. */ +static int token_to_read; +static WORD_DESC *word_desc_to_read; + +static REDIRECTEE redir; +%} + +%union { + WORD_DESC *word; /* the word that we read. */ + int number; /* the number that we read. */ + WORD_LIST *word_list; + COMMAND *command; + REDIRECT *redirect; + ELEMENT element; + PATTERN_LIST *pattern; +} + +/* Reserved words. Members of the first group are only recognized + in the case that they are preceded by a list_terminator. Members + of the second group are for [[...]] commands. Members of the + third group are recognized only under special circumstances. */ +%token IF THEN ELSE ELIF FI CASE ESAC FOR SELECT WHILE UNTIL DO DONE FUNCTION +%token COND_START COND_END COND_ERROR +%token IN BANG TIME TIMEOPT + +/* More general tokens. yylex () knows how to make these. */ +%token WORD ASSIGNMENT_WORD +%token NUMBER +%token ARITH_CMD ARITH_FOR_EXPRS +%token COND_CMD +%token AND_AND OR_OR GREATER_GREATER LESS_LESS LESS_AND LESS_LESS_LESS +%token GREATER_AND SEMI_SEMI SEMI_AND SEMI_SEMI_AND +%token LESS_LESS_MINUS AND_GREATER AND_GREATER_GREATER LESS_GREATER +%token GREATER_BAR BAR_AND + +/* The types that the various syntactical units return. */ + +%type inputunit command pipeline pipeline_command +%type list list0 list1 compound_list simple_list simple_list1 +%type simple_command shell_command +%type for_command select_command case_command group_command +%type arith_command +%type cond_command +%type arith_for_command +%type function_def function_body if_command elif_clause subshell +%type redirection redirection_list +%type simple_command_element +%type word_list pattern +%type pattern_list case_clause_sequence case_clause +%type timespec +%type list_terminator + +%start inputunit + +%left '&' ';' '\n' yacc_EOF +%left AND_AND OR_OR +%right '|' BAR_AND +%% + +inputunit: simple_list simple_list_terminator + { + /* Case of regular command. Discard the error + safety net,and return the command just parsed. */ + global_command = $1; + eof_encountered = 0; + /* discard_parser_constructs (0); */ + YYACCEPT; + } + | '\n' + { + /* Case of regular command, but not a very + interesting one. Return a NULL command. */ + global_command = (COMMAND *)NULL; + YYACCEPT; + } + | error '\n' + { + /* Error during parsing. Return NULL command. */ + global_command = (COMMAND *)NULL; + eof_encountered = 0; + /* discard_parser_constructs (1); */ + if (interactive) + { + YYACCEPT; + } + else + { + YYABORT; + } + } + | yacc_EOF + { + /* Case of EOF seen by itself. Do ignoreeof or + not. */ + global_command = (COMMAND *)NULL; + handle_eof_input_unit (); + YYACCEPT; + } + ; + +word_list: WORD + { $$ = make_word_list ($1, (WORD_LIST *)NULL); } + | word_list WORD + { $$ = make_word_list ($2, $1); } + ; + +redirection: '>' WORD + { + redir.filename = $2; + $$ = make_redirection (1, r_output_direction, redir); + } + | '<' WORD + { + redir.filename = $2; + $$ = make_redirection (0, r_input_direction, redir); + } + | NUMBER '>' WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_output_direction, redir); + } + | NUMBER '<' WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_input_direction, redir); + } + | GREATER_GREATER WORD + { + redir.filename = $2; + $$ = make_redirection (1, r_appending_to, redir); + } + | NUMBER GREATER_GREATER WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_appending_to, redir); + } + | LESS_LESS WORD + { + redir.filename = $2; + $$ = make_redirection (0, r_reading_until, redir); + redir_stack[need_here_doc++] = $$; + } + | NUMBER LESS_LESS WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_reading_until, redir); + redir_stack[need_here_doc++] = $$; + } + | LESS_LESS_LESS WORD + { + redir.filename = $2; + $$ = make_redirection (0, r_reading_string, redir); + } + | NUMBER LESS_LESS_LESS WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_reading_string, redir); + } + | LESS_AND NUMBER + { + redir.dest = $2; + $$ = make_redirection (0, r_duplicating_input, redir); + } + | NUMBER LESS_AND NUMBER + { + redir.dest = $3; + $$ = make_redirection ($1, r_duplicating_input, redir); + } + | GREATER_AND NUMBER + { + redir.dest = $2; + $$ = make_redirection (1, r_duplicating_output, redir); + } + | NUMBER GREATER_AND NUMBER + { + redir.dest = $3; + $$ = make_redirection ($1, r_duplicating_output, redir); + } + | LESS_AND WORD + { + redir.filename = $2; + $$ = make_redirection (0, r_duplicating_input_word, redir); + } + | NUMBER LESS_AND WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_duplicating_input_word, redir); + } + | GREATER_AND WORD + { + redir.filename = $2; + $$ = make_redirection (1, r_duplicating_output_word, redir); + } + | NUMBER GREATER_AND WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_duplicating_output_word, redir); + } + | LESS_LESS_MINUS WORD + { + redir.filename = $2; + $$ = make_redirection + (0, r_deblank_reading_until, redir); + redir_stack[need_here_doc++] = $$; + } + | NUMBER LESS_LESS_MINUS WORD + { + redir.filename = $3; + $$ = make_redirection + ($1, r_deblank_reading_until, redir); + redir_stack[need_here_doc++] = $$; + } + | GREATER_AND '-' + { + redir.dest = 0; + $$ = make_redirection (1, r_close_this, redir); + } + | NUMBER GREATER_AND '-' + { + redir.dest = 0; + $$ = make_redirection ($1, r_close_this, redir); + } + | LESS_AND '-' + { + redir.dest = 0; + $$ = make_redirection (0, r_close_this, redir); + } + | NUMBER LESS_AND '-' + { + redir.dest = 0; + $$ = make_redirection ($1, r_close_this, redir); + } + | AND_GREATER WORD + { + redir.filename = $2; + $$ = make_redirection (1, r_err_and_out, redir); + } + | AND_GREATER_GREATER WORD + { + redir.filename = $2; + $$ = make_redirection (1, r_append_err_and_out, redir); + } + | NUMBER LESS_GREATER WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_input_output, redir); + } + | LESS_GREATER WORD + { + redir.filename = $2; + $$ = make_redirection (0, r_input_output, redir); + } + | GREATER_BAR WORD + { + redir.filename = $2; + $$ = make_redirection (1, r_output_force, redir); + } + | NUMBER GREATER_BAR WORD + { + redir.filename = $3; + $$ = make_redirection ($1, r_output_force, redir); + } + ; + +simple_command_element: WORD + { $$.word = $1; $$.redirect = 0; } + | ASSIGNMENT_WORD + { $$.word = $1; $$.redirect = 0; } + | redirection + { $$.redirect = $1; $$.word = 0; } + ; + +redirection_list: redirection + { + $$ = $1; + } + | redirection_list redirection + { + register REDIRECT *t; + + for (t = $1; t->next; t = t->next) + ; + t->next = $2; + $$ = $1; + } + ; + +simple_command: simple_command_element + { $$ = make_simple_command ($1, (COMMAND *)NULL); } + | simple_command simple_command_element + { $$ = make_simple_command ($2, $1); } + ; + +command: simple_command + { $$ = clean_simple_command ($1); } + | shell_command + { $$ = $1; } + | shell_command redirection_list + { + COMMAND *tc; + + tc = $1; + if (tc->redirects) + { + register REDIRECT *t; + for (t = tc->redirects; t->next; t = t->next) + ; + t->next = $2; + } + else + tc->redirects = $2; + $$ = $1; + } + | function_def + { $$ = $1; } + ; + +shell_command: for_command + { $$ = $1; } + | case_command + { $$ = $1; } + | WHILE compound_list DO compound_list DONE + { $$ = make_while_command ($2, $4); } + | UNTIL compound_list DO compound_list DONE + { $$ = make_until_command ($2, $4); } + | select_command + { $$ = $1; } + | if_command + { $$ = $1; } + | subshell + { $$ = $1; } + | group_command + { $$ = $1; } + | arith_command + { $$ = $1; } + | cond_command + { $$ = $1; } + | arith_for_command + { $$ = $1; } + ; + +for_command: FOR WORD newline_list DO compound_list DONE + { + $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $5, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD newline_list '{' compound_list '}' + { + $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $5, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD ';' newline_list DO compound_list DONE + { + $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD ';' newline_list '{' compound_list '}' + { + $$ = make_for_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD newline_list IN word_list list_terminator newline_list DO compound_list DONE + { + $$ = make_for_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD newline_list IN word_list list_terminator newline_list '{' compound_list '}' + { + $$ = make_for_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD newline_list IN list_terminator newline_list DO compound_list DONE + { + $$ = make_for_command ($2, (WORD_LIST *)NULL, $8, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | FOR WORD newline_list IN list_terminator newline_list '{' compound_list '}' + { + $$ = make_for_command ($2, (WORD_LIST *)NULL, $8, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + ; + +arith_for_command: FOR ARITH_FOR_EXPRS list_terminator newline_list DO compound_list DONE + { + $$ = make_arith_for_command ($2, $6, arith_for_lineno); + if (word_top > 0) word_top--; + } + | FOR ARITH_FOR_EXPRS list_terminator newline_list '{' compound_list '}' + { + $$ = make_arith_for_command ($2, $6, arith_for_lineno); + if (word_top > 0) word_top--; + } + | FOR ARITH_FOR_EXPRS DO compound_list DONE + { + $$ = make_arith_for_command ($2, $4, arith_for_lineno); + if (word_top > 0) word_top--; + } + | FOR ARITH_FOR_EXPRS '{' compound_list '}' + { + $$ = make_arith_for_command ($2, $4, arith_for_lineno); + if (word_top > 0) word_top--; + } + ; + +select_command: SELECT WORD newline_list DO list DONE + { + $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $5, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | SELECT WORD newline_list '{' list '}' + { + $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $5, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | SELECT WORD ';' newline_list DO list DONE + { + $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | SELECT WORD ';' newline_list '{' list '}' + { + $$ = make_select_command ($2, add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), $6, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | SELECT WORD newline_list IN word_list list_terminator newline_list DO list DONE + { + $$ = make_select_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | SELECT WORD newline_list IN word_list list_terminator newline_list '{' list '}' + { + $$ = make_select_command ($2, REVERSE_LIST ($5, WORD_LIST *), $9, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + ; + +case_command: CASE WORD newline_list IN newline_list ESAC + { + $$ = make_case_command ($2, (PATTERN_LIST *)NULL, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | CASE WORD newline_list IN case_clause_sequence newline_list ESAC + { + $$ = make_case_command ($2, $5, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + | CASE WORD newline_list IN case_clause ESAC + { + $$ = make_case_command ($2, $5, word_lineno[word_top]); + if (word_top > 0) word_top--; + } + ; + +function_def: WORD '(' ')' newline_list function_body + { $$ = make_function_def ($1, $5, function_dstart, function_bstart); } + + | FUNCTION WORD '(' ')' newline_list function_body + { $$ = make_function_def ($2, $6, function_dstart, function_bstart); } + + | FUNCTION WORD newline_list function_body + { $$ = make_function_def ($2, $4, function_dstart, function_bstart); } + ; + + +function_body: shell_command + { $$ = $1; } + | shell_command redirection_list + { + COMMAND *tc; + + tc = $1; + /* According to Posix.2 3.9.5, redirections + specified after the body of a function should + be attached to the function and performed when + the function is executed, not as part of the + function definition command. */ + /* XXX - I don't think it matters, but we might + want to change this in the future to avoid + problems differentiating between a function + definition with a redirection and a function + definition containing a single command with a + redirection. The two are semantically equivalent, + though -- the only difference is in how the + command printing code displays the redirections. */ + if (tc->redirects) + { + register REDIRECT *t; + for (t = tc->redirects; t->next; t = t->next) + ; + t->next = $2; + } + else + tc->redirects = $2; + $$ = $1; + } + ; + +subshell: '(' compound_list ')' + { + $$ = make_subshell_command ($2); + $$->flags |= CMD_WANT_SUBSHELL; + } + ; + +if_command: IF compound_list THEN compound_list FI + { $$ = make_if_command ($2, $4, (COMMAND *)NULL); } + | IF compound_list THEN compound_list ELSE compound_list FI + { $$ = make_if_command ($2, $4, $6); } + | IF compound_list THEN compound_list elif_clause FI + { $$ = make_if_command ($2, $4, $5); } + ; + + +group_command: '{' compound_list '}' + { $$ = make_group_command ($2); } + ; + +arith_command: ARITH_CMD + { $$ = make_arith_command ($1); } + ; + +cond_command: COND_START COND_CMD COND_END + { $$ = $2; } + ; + +elif_clause: ELIF compound_list THEN compound_list + { $$ = make_if_command ($2, $4, (COMMAND *)NULL); } + | ELIF compound_list THEN compound_list ELSE compound_list + { $$ = make_if_command ($2, $4, $6); } + | ELIF compound_list THEN compound_list elif_clause + { $$ = make_if_command ($2, $4, $5); } + ; + +case_clause: pattern_list + | case_clause_sequence pattern_list + { $2->next = $1; $$ = $2; } + ; + +pattern_list: newline_list pattern ')' compound_list + { $$ = make_pattern_list ($2, $4); } + | newline_list pattern ')' newline_list + { $$ = make_pattern_list ($2, (COMMAND *)NULL); } + | newline_list '(' pattern ')' compound_list + { $$ = make_pattern_list ($3, $5); } + | newline_list '(' pattern ')' newline_list + { $$ = make_pattern_list ($3, (COMMAND *)NULL); } + ; + +case_clause_sequence: pattern_list SEMI_SEMI + { $$ = $1; } + | case_clause_sequence pattern_list SEMI_SEMI + { $2->next = $1; $$ = $2; } + | pattern_list SEMI_AND + { $1->flags |= CASEPAT_FALLTHROUGH; $$ = $1; } + | case_clause_sequence pattern_list SEMI_AND + { $2->flags |= CASEPAT_FALLTHROUGH; $2->next = $1; $$ = $2; } + | pattern_list SEMI_SEMI_AND + { $1->flags |= CASEPAT_TESTNEXT; $$ = $1; } + | case_clause_sequence pattern_list SEMI_SEMI_AND + { $2->flags |= CASEPAT_TESTNEXT; $2->next = $1; $$ = $2; } + ; + +pattern: WORD + { $$ = make_word_list ($1, (WORD_LIST *)NULL); } + | pattern '|' WORD + { $$ = make_word_list ($3, $1); } + ; + +/* A list allows leading or trailing newlines and + newlines as operators (equivalent to semicolons). + It must end with a newline or semicolon. + Lists are used within commands such as if, for, while. */ + +list: newline_list list0 + { + $$ = $2; + if (need_here_doc) + gather_here_documents (); + } + ; + +compound_list: list + | newline_list list1 + { + $$ = $2; + } + ; + +list0: list1 '\n' newline_list + | list1 '&' newline_list + { + if ($1->type == cm_connection) + $$ = connect_async_list ($1, (COMMAND *)NULL, '&'); + else + $$ = command_connect ($1, (COMMAND *)NULL, '&'); + } + | list1 ';' newline_list + + ; + +list1: list1 AND_AND newline_list list1 + { $$ = command_connect ($1, $4, AND_AND); } + | list1 OR_OR newline_list list1 + { $$ = command_connect ($1, $4, OR_OR); } + | list1 '&' newline_list list1 + { + if ($1->type == cm_connection) + $$ = connect_async_list ($1, $4, '&'); + else + $$ = command_connect ($1, $4, '&'); + } + | list1 ';' newline_list list1 + { $$ = command_connect ($1, $4, ';'); } + | list1 '\n' newline_list list1 + { $$ = command_connect ($1, $4, ';'); } + | pipeline_command + { $$ = $1; } + ; + +simple_list_terminator: '\n' + | yacc_EOF + ; + +list_terminator:'\n' + { $$ = '\n'; } + | ';' + { $$ = ';'; } + | yacc_EOF + { $$ = yacc_EOF; } + ; + +newline_list: + | newline_list '\n' + ; + +/* A simple_list is a list that contains no significant newlines + and no leading or trailing newlines. Newlines are allowed + only following operators, where they are not significant. + + This is what an inputunit consists of. */ + +simple_list: simple_list1 + { + $$ = $1; + if (need_here_doc) + gather_here_documents (); + } + | simple_list1 '&' + { + if ($1->type == cm_connection) + $$ = connect_async_list ($1, (COMMAND *)NULL, '&'); + else + $$ = command_connect ($1, (COMMAND *)NULL, '&'); + if (need_here_doc) + gather_here_documents (); + } + | simple_list1 ';' + { + $$ = $1; + if (need_here_doc) + gather_here_documents (); + } + ; + +simple_list1: simple_list1 AND_AND newline_list simple_list1 + { $$ = command_connect ($1, $4, AND_AND); } + | simple_list1 OR_OR newline_list simple_list1 + { $$ = command_connect ($1, $4, OR_OR); } + | simple_list1 '&' simple_list1 + { + if ($1->type == cm_connection) + $$ = connect_async_list ($1, $3, '&'); + else + $$ = command_connect ($1, $3, '&'); + } + | simple_list1 ';' simple_list1 + { $$ = command_connect ($1, $3, ';'); } + + | pipeline_command + { $$ = $1; } + ; + +pipeline_command: pipeline + { $$ = $1; } + | BANG pipeline + { + if ($2) + $2->flags |= CMD_INVERT_RETURN; + $$ = $2; + } + | timespec pipeline + { + if ($2) + $2->flags |= $1; + $$ = $2; + } + | timespec BANG pipeline + { + if ($3) + $3->flags |= $1|CMD_INVERT_RETURN; + $$ = $3; + } + | BANG timespec pipeline + { + if ($3) + $3->flags |= $2|CMD_INVERT_RETURN; + $$ = $3; + } + | timespec list_terminator + { + ELEMENT x; + + /* Boy, this is unclean. `time' by itself can + time a null command. We cheat and push a + newline back if the list_terminator was a newline + to avoid the double-newline problem (one to + terminate this, one to terminate the command) */ + x.word = 0; + x.redirect = 0; + $$ = make_simple_command (x, (COMMAND *)NULL); + $$->flags |= $1; + /* XXX - let's cheat and push a newline back */ + if ($2 == '\n') + token_to_read = '\n'; + } + + ; + +pipeline: pipeline '|' newline_list pipeline + { $$ = command_connect ($1, $4, '|'); } + | pipeline BAR_AND newline_list pipeline + { + /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */ + COMMAND *tc; + REDIRECTEE rd; + REDIRECT *r; + + tc = $1; + rd.dest = 1; + r = make_redirection (2, r_duplicating_output, rd); + if (tc->redirects) + { + register REDIRECT *t; + for (t = tc->redirects; t->next; t = t->next) + ; + t->next = r; + } + else + tc->redirects = r; + + $$ = command_connect ($1, $4, '|'); + } + | command + { $$ = $1; } + ; + +timespec: TIME + { $$ = CMD_TIME_PIPELINE; } + | TIME TIMEOPT + { $$ = CMD_TIME_PIPELINE|CMD_TIME_POSIX; } + ; +%% + +/* Initial size to allocate for tokens, and the + amount to grow them by. */ +#define TOKEN_DEFAULT_INITIAL_SIZE 496 +#define TOKEN_DEFAULT_GROW_SIZE 512 + +/* Should we call prompt_again? */ +#define SHOULD_PROMPT() \ + (interactive && (bash_input.type == st_stdin || bash_input.type == st_stream)) + +#if defined (ALIAS) +# define expanding_alias() (pushed_string_list && pushed_string_list->expander) +#else +# define expanding_alias() 0 +#endif + +/* Global var is non-zero when end of file has been reached. */ +int EOF_Reached = 0; + +#ifdef DEBUG +static void +debug_parser (i) + int i; +{ +#if YYDEBUG != 0 + yydebug = i; +#endif +} +#endif + +/* yy_getc () returns the next available character from input or EOF. + yy_ungetc (c) makes `c' the next character to read. + init_yy_io (get, unget, type, location) makes the function GET the + installed function for getting the next character, makes UNGET the + installed function for un-getting a character, sets the type of stream + (either string or file) from TYPE, and makes LOCATION point to where + the input is coming from. */ + +/* Unconditionally returns end-of-file. */ +int +return_EOF () +{ + return (EOF); +} + +/* Variable containing the current get and unget functions. + See ./input.h for a clearer description. */ +BASH_INPUT bash_input; + +/* Set all of the fields in BASH_INPUT to NULL. Free bash_input.name if it + is non-null, avoiding a memory leak. */ +void +initialize_bash_input () +{ + bash_input.type = st_none; + FREE (bash_input.name); + bash_input.name = (char *)NULL; + bash_input.location.file = (FILE *)NULL; + bash_input.location.string = (char *)NULL; + bash_input.getter = (sh_cget_func_t *)NULL; + bash_input.ungetter = (sh_cunget_func_t *)NULL; +} + +/* Set the contents of the current bash input stream from + GET, UNGET, TYPE, NAME, and LOCATION. */ +void +init_yy_io (get, unget, type, name, location) + sh_cget_func_t *get; + sh_cunget_func_t *unget; + enum stream_type type; + const char *name; + INPUT_STREAM location; +{ + bash_input.type = type; + FREE (bash_input.name); + bash_input.name = name ? savestring (name) : (char *)NULL; + + /* XXX */ +#if defined (CRAY) + memcpy((char *)&bash_input.location.string, (char *)&location.string, sizeof(location)); +#else + bash_input.location = location; +#endif + bash_input.getter = get; + bash_input.ungetter = unget; +} + +char * +yy_input_name () +{ + return (bash_input.name ? bash_input.name : "stdin"); +} + +/* Call this to get the next character of input. */ +static int +yy_getc () +{ + return (*(bash_input.getter)) (); +} + +/* Call this to unget C. That is, to make C the next character + to be read. */ +static int +yy_ungetc (c) + int c; +{ + return (*(bash_input.ungetter)) (c); +} + +#if defined (BUFFERED_INPUT) +#ifdef INCLUDE_UNUSED +int +input_file_descriptor () +{ + switch (bash_input.type) + { + case st_stream: + return (fileno (bash_input.location.file)); + case st_bstream: + return (bash_input.location.buffered_fd); + case st_stdin: + default: + return (fileno (stdin)); + } +} +#endif +#endif /* BUFFERED_INPUT */ + +/* **************************************************************** */ +/* */ +/* Let input be read from readline (). */ +/* */ +/* **************************************************************** */ + +#if defined (READLINE) +char *current_readline_prompt = (char *)NULL; +char *current_readline_line = (char *)NULL; +int current_readline_line_index = 0; + +static int +yy_readline_get () +{ + SigHandler *old_sigint; + int line_len; + unsigned char c; + + if (!current_readline_line) + { + if (!bash_readline_initialized) + initialize_readline (); + +#if defined (JOB_CONTROL) + if (job_control) + give_terminal_to (shell_pgrp, 0); +#endif /* JOB_CONTROL */ + + old_sigint = (SigHandler *)NULL; + if (signal_is_ignored (SIGINT) == 0) + { + old_sigint = (SigHandler *)set_signal_handler (SIGINT, sigint_sighandler); + interrupt_immediately++; + } + terminate_immediately = 1; + + current_readline_line = readline (current_readline_prompt ? + current_readline_prompt : ""); + + terminate_immediately = 0; + if (signal_is_ignored (SIGINT) == 0 && old_sigint) + { + interrupt_immediately--; + set_signal_handler (SIGINT, old_sigint); + } + +#if 0 + /* Reset the prompt to the decoded value of prompt_string_pointer. */ + reset_readline_prompt (); +#endif + + if (current_readline_line == 0) + return (EOF); + + current_readline_line_index = 0; + line_len = strlen (current_readline_line); + + current_readline_line = (char *)xrealloc (current_readline_line, 2 + line_len); + current_readline_line[line_len++] = '\n'; + current_readline_line[line_len] = '\0'; + } + + if (current_readline_line[current_readline_line_index] == 0) + { + free (current_readline_line); + current_readline_line = (char *)NULL; + return (yy_readline_get ()); + } + else + { + c = current_readline_line[current_readline_line_index++]; + return (c); + } +} + +static int +yy_readline_unget (c) + int c; +{ + if (current_readline_line_index && current_readline_line) + current_readline_line[--current_readline_line_index] = c; + return (c); +} + +void +with_input_from_stdin () +{ + INPUT_STREAM location; + + if (bash_input.type != st_stdin && stream_on_stack (st_stdin) == 0) + { + location.string = current_readline_line; + init_yy_io (yy_readline_get, yy_readline_unget, + st_stdin, "readline stdin", location); + } +} + +#else /* !READLINE */ + +void +with_input_from_stdin () +{ + with_input_from_stream (stdin, "stdin"); +} +#endif /* !READLINE */ + +/* **************************************************************** */ +/* */ +/* Let input come from STRING. STRING is zero terminated. */ +/* */ +/* **************************************************************** */ + +static int +yy_string_get () +{ + register char *string; + register unsigned char c; + + string = bash_input.location.string; + + /* If the string doesn't exist, or is empty, EOF found. */ + if (string && *string) + { + c = *string++; + bash_input.location.string = string; + return (c); + } + else + return (EOF); +} + +static int +yy_string_unget (c) + int c; +{ + *(--bash_input.location.string) = c; + return (c); +} + +void +with_input_from_string (string, name) + char *string; + const char *name; +{ + INPUT_STREAM location; + + location.string = string; + init_yy_io (yy_string_get, yy_string_unget, st_string, name, location); +} + +/* Count the number of characters we've consumed from bash_input.location.string + and read into shell_input_line, but have not returned from shell_getc. + That is the true input location. Rewind bash_input.location.string by + that number of characters, so it points to the last character actually + consumed by the parser. */ +void +rewind_input_string () +{ + int xchars; + + /* number of unconsumed characters in the input -- XXX need to take newlines + into account, e.g., $(...\n) */ + xchars = shell_input_line_len - shell_input_line_index; + + /* XXX - how to reflect bash_input.location.string back to string passed to + parse_and_execute or xparse_dolparen? xparse_dolparen needs to know how + far into the string we parsed. parse_and_execute knows where bash_input. + location.string is, and how far from orig_string that is -- that's the + number of characters the command consumed. */ + + /* bash_input.location.string - xchars should be where we parsed to */ + /* need to do more validation on xchars value for sanity -- test cases. */ + bash_input.location.string -= xchars; +} + +/* **************************************************************** */ +/* */ +/* Let input come from STREAM. */ +/* */ +/* **************************************************************** */ + +/* These two functions used to test the value of the HAVE_RESTARTABLE_SYSCALLS + define, and just use getc/ungetc if it was defined, but since bash + installs its signal handlers without the SA_RESTART flag, some signals + (like SIGCHLD, SIGWINCH, etc.) received during a read(2) will not cause + the read to be restarted. We need to restart it ourselves. */ + +static int +yy_stream_get () +{ + int result; + + result = EOF; + if (bash_input.location.file) + { + if (interactive) + { + interrupt_immediately++; + terminate_immediately++; + } + result = getc_with_restart (bash_input.location.file); + if (interactive) + { + interrupt_immediately--; + terminate_immediately--; + } + } + return (result); +} + +static int +yy_stream_unget (c) + int c; +{ + return (ungetc_with_restart (c, bash_input.location.file)); +} + +void +with_input_from_stream (stream, name) + FILE *stream; + const char *name; +{ + INPUT_STREAM location; + + location.file = stream; + init_yy_io (yy_stream_get, yy_stream_unget, st_stream, name, location); +} + +typedef struct stream_saver { + struct stream_saver *next; + BASH_INPUT bash_input; + int line; +#if defined (BUFFERED_INPUT) + BUFFERED_STREAM *bstream; +#endif /* BUFFERED_INPUT */ +} STREAM_SAVER; + +/* The globally known line number. */ +int line_number = 0; + +#if defined (COND_COMMAND) +static int cond_lineno; +static int cond_token; +#endif + +STREAM_SAVER *stream_list = (STREAM_SAVER *)NULL; + +void +push_stream (reset_lineno) + int reset_lineno; +{ + STREAM_SAVER *saver = (STREAM_SAVER *)xmalloc (sizeof (STREAM_SAVER)); + + xbcopy ((char *)&bash_input, (char *)&(saver->bash_input), sizeof (BASH_INPUT)); + +#if defined (BUFFERED_INPUT) + saver->bstream = (BUFFERED_STREAM *)NULL; + /* If we have a buffered stream, clear out buffers[fd]. */ + if (bash_input.type == st_bstream && bash_input.location.buffered_fd >= 0) + saver->bstream = set_buffered_stream (bash_input.location.buffered_fd, + (BUFFERED_STREAM *)NULL); +#endif /* BUFFERED_INPUT */ + + saver->line = line_number; + bash_input.name = (char *)NULL; + saver->next = stream_list; + stream_list = saver; + EOF_Reached = 0; + if (reset_lineno) + line_number = 0; +} + +void +pop_stream () +{ + if (!stream_list) + EOF_Reached = 1; + else + { + STREAM_SAVER *saver = stream_list; + + EOF_Reached = 0; + stream_list = stream_list->next; + + init_yy_io (saver->bash_input.getter, + saver->bash_input.ungetter, + saver->bash_input.type, + saver->bash_input.name, + saver->bash_input.location); + +#if defined (BUFFERED_INPUT) + /* If we have a buffered stream, restore buffers[fd]. */ + /* If the input file descriptor was changed while this was on the + save stack, update the buffered fd to the new file descriptor and + re-establish the buffer <-> bash_input fd correspondence. */ + if (bash_input.type == st_bstream && bash_input.location.buffered_fd >= 0) + { + if (bash_input_fd_changed) + { + bash_input_fd_changed = 0; + if (default_buffered_input >= 0) + { + bash_input.location.buffered_fd = default_buffered_input; + saver->bstream->b_fd = default_buffered_input; + SET_CLOSE_ON_EXEC (default_buffered_input); + } + } + /* XXX could free buffered stream returned as result here. */ + set_buffered_stream (bash_input.location.buffered_fd, saver->bstream); + } +#endif /* BUFFERED_INPUT */ + + line_number = saver->line; + + FREE (saver->bash_input.name); + free (saver); + } +} + +/* Return 1 if a stream of type TYPE is saved on the stack. */ +int +stream_on_stack (type) + enum stream_type type; +{ + register STREAM_SAVER *s; + + for (s = stream_list; s; s = s->next) + if (s->bash_input.type == type) + return 1; + return 0; +} + +/* Save the current token state and return it in a malloced array. */ +int * +save_token_state () +{ + int *ret; + + ret = (int *)xmalloc (3 * sizeof (int)); + ret[0] = last_read_token; + ret[1] = token_before_that; + ret[2] = two_tokens_ago; + return ret; +} + +void +restore_token_state (ts) + int *ts; +{ + if (ts == 0) + return; + last_read_token = ts[0]; + token_before_that = ts[1]; + two_tokens_ago = ts[2]; +} + +/* + * This is used to inhibit alias expansion and reserved word recognition + * inside case statement pattern lists. A `case statement pattern list' is: + * + * everything between the `in' in a `case word in' and the next ')' + * or `esac' + * everything between a `;;' and the next `)' or `esac' + */ + +#if defined (ALIAS) || defined (DPAREN_ARITHMETIC) + +#define END_OF_ALIAS 0 + +/* + * Pseudo-global variables used in implementing token-wise alias expansion. + */ + +/* + * Pushing and popping strings. This works together with shell_getc to + * implement alias expansion on a per-token basis. + */ + +typedef struct string_saver { + struct string_saver *next; + int expand_alias; /* Value to set expand_alias to when string is popped. */ + char *saved_line; +#if defined (ALIAS) + alias_t *expander; /* alias that caused this line to be pushed. */ +#endif + int saved_line_size, saved_line_index, saved_line_terminator; +} STRING_SAVER; + +STRING_SAVER *pushed_string_list = (STRING_SAVER *)NULL; + +/* + * Push the current shell_input_line onto a stack of such lines and make S + * the current input. Used when expanding aliases. EXPAND is used to set + * the value of expand_next_token when the string is popped, so that the + * word after the alias in the original line is handled correctly when the + * alias expands to multiple words. TOKEN is the token that was expanded + * into S; it is saved and used to prevent infinite recursive expansion. + */ +static void +push_string (s, expand, ap) + char *s; + int expand; + alias_t *ap; +{ + STRING_SAVER *temp = (STRING_SAVER *)xmalloc (sizeof (STRING_SAVER)); + + temp->expand_alias = expand; + temp->saved_line = shell_input_line; + temp->saved_line_size = shell_input_line_size; + temp->saved_line_index = shell_input_line_index; + temp->saved_line_terminator = shell_input_line_terminator; +#if defined (ALIAS) + temp->expander = ap; +#endif + temp->next = pushed_string_list; + pushed_string_list = temp; + +#if defined (ALIAS) + if (ap) + ap->flags |= AL_BEINGEXPANDED; +#endif + + shell_input_line = s; + shell_input_line_size = strlen (s); + shell_input_line_index = 0; + shell_input_line_terminator = '\0'; +#if 0 + parser_state &= ~PST_ALEXPNEXT; /* XXX */ +#endif + + set_line_mbstate (); +} + +/* + * Make the top of the pushed_string stack be the current shell input. + * Only called when there is something on the stack. Called from shell_getc + * when it thinks it has consumed the string generated by an alias expansion + * and needs to return to the original input line. + */ +static void +pop_string () +{ + STRING_SAVER *t; + + FREE (shell_input_line); + shell_input_line = pushed_string_list->saved_line; + shell_input_line_index = pushed_string_list->saved_line_index; + shell_input_line_size = pushed_string_list->saved_line_size; + shell_input_line_terminator = pushed_string_list->saved_line_terminator; + + if (pushed_string_list->expand_alias) + parser_state |= PST_ALEXPNEXT; + else + parser_state &= ~PST_ALEXPNEXT; + + t = pushed_string_list; + pushed_string_list = pushed_string_list->next; + +#if defined (ALIAS) + if (t->expander) + t->expander->flags &= ~AL_BEINGEXPANDED; +#endif + + free ((char *)t); + + set_line_mbstate (); +} + +static void +free_string_list () +{ + register STRING_SAVER *t, *t1; + + for (t = pushed_string_list; t; ) + { + t1 = t->next; + FREE (t->saved_line); +#if defined (ALIAS) + if (t->expander) + t->expander->flags &= ~AL_BEINGEXPANDED; +#endif + free ((char *)t); + t = t1; + } + pushed_string_list = (STRING_SAVER *)NULL; +} + +#endif /* ALIAS || DPAREN_ARITHMETIC */ + +void +free_pushed_string_input () +{ +#if defined (ALIAS) || defined (DPAREN_ARITHMETIC) + free_string_list (); +#endif +} + +/* Return a line of text, taken from wherever yylex () reads input. + If there is no more input, then we return NULL. If REMOVE_QUOTED_NEWLINE + is non-zero, we remove unquoted \ pairs. This is used by + read_secondary_line to read here documents. */ +static char * +read_a_line (remove_quoted_newline) + int remove_quoted_newline; +{ + static char *line_buffer = (char *)NULL; + static int buffer_size = 0; + int indx = 0, c, peekc, pass_next; + +#if defined (READLINE) + if (no_line_editing && SHOULD_PROMPT ()) +#else + if (SHOULD_PROMPT ()) +#endif + print_prompt (); + + pass_next = 0; + while (1) + { + /* Allow immediate exit if interrupted during input. */ + QUIT; + + c = yy_getc (); + + /* Ignore null bytes in input. */ + if (c == 0) + { +#if 0 + internal_warning ("read_a_line: ignored null byte in input"); +#endif + continue; + } + + /* If there is no more input, then we return NULL. */ + if (c == EOF) + { + if (interactive && bash_input.type == st_stream) + clearerr (stdin); + if (indx == 0) + return ((char *)NULL); + c = '\n'; + } + + /* `+2' in case the final character in the buffer is a newline. */ + RESIZE_MALLOCED_BUFFER (line_buffer, indx, 2, buffer_size, 128); + + /* IF REMOVE_QUOTED_NEWLINES is non-zero, we are reading a + here document with an unquoted delimiter. In this case, + the line will be expanded as if it were in double quotes. + We allow a backslash to escape the next character, but we + need to treat the backslash specially only if a backslash + quoting a backslash-newline pair appears in the line. */ + if (pass_next) + { + line_buffer[indx++] = c; + pass_next = 0; + } + else if (c == '\\' && remove_quoted_newline) + { + peekc = yy_getc (); + if (peekc == '\n') + { + line_number++; + continue; /* Make the unquoted \ pair disappear. */ + } + else + { + yy_ungetc (peekc); + pass_next = 1; + line_buffer[indx++] = c; /* Preserve the backslash. */ + } + } + else + line_buffer[indx++] = c; + + if (c == '\n') + { + line_buffer[indx] = '\0'; + return (line_buffer); + } + } +} + +/* Return a line as in read_a_line (), but insure that the prompt is + the secondary prompt. This is used to read the lines of a here + document. REMOVE_QUOTED_NEWLINE is non-zero if we should remove + newlines quoted with backslashes while reading the line. It is + non-zero unless the delimiter of the here document was quoted. */ +char * +read_secondary_line (remove_quoted_newline) + int remove_quoted_newline; +{ + prompt_string_pointer = &ps2_prompt; + if (SHOULD_PROMPT()) + prompt_again (); + return (read_a_line (remove_quoted_newline)); +} + +/* **************************************************************** */ +/* */ +/* YYLEX () */ +/* */ +/* **************************************************************** */ + +/* Reserved words. These are only recognized as the first word of a + command. */ +STRING_INT_ALIST word_token_alist[] = { + { "if", IF }, + { "then", THEN }, + { "else", ELSE }, + { "elif", ELIF }, + { "fi", FI }, + { "case", CASE }, + { "esac", ESAC }, + { "for", FOR }, +#if defined (SELECT_COMMAND) + { "select", SELECT }, +#endif + { "while", WHILE }, + { "until", UNTIL }, + { "do", DO }, + { "done", DONE }, + { "in", IN }, + { "function", FUNCTION }, +#if defined (COMMAND_TIMING) + { "time", TIME }, +#endif + { "{", '{' }, + { "}", '}' }, + { "!", BANG }, +#if defined (COND_COMMAND) + { "[[", COND_START }, + { "]]", COND_END }, +#endif + { (char *)NULL, 0} +}; + +/* other tokens that can be returned by read_token() */ +STRING_INT_ALIST other_token_alist[] = { + /* Multiple-character tokens with special values */ + { "-p", TIMEOPT }, + { "&&", AND_AND }, + { "||", OR_OR }, + { ">>", GREATER_GREATER }, + { "<<", LESS_LESS }, + { "<&", LESS_AND }, + { ">&", GREATER_AND }, + { ";;", SEMI_SEMI }, + { ";&", SEMI_AND }, + { ";;&", SEMI_SEMI_AND }, + { "<<-", LESS_LESS_MINUS }, + { "<<<", LESS_LESS_LESS }, + { "&>", AND_GREATER }, + { "&>>", AND_GREATER_GREATER }, + { "<>", LESS_GREATER }, + { ">|", GREATER_BAR }, + { "|&", BAR_AND }, + { "EOF", yacc_EOF }, + /* Tokens whose value is the character itself */ + { ">", '>' }, + { "<", '<' }, + { "-", '-' }, + { "{", '{' }, + { "}", '}' }, + { ";", ';' }, + { "(", '(' }, + { ")", ')' }, + { "|", '|' }, + { "&", '&' }, + { "newline", '\n' }, + { (char *)NULL, 0} +}; + +/* others not listed here: + WORD look at yylval.word + ASSIGNMENT_WORD look at yylval.word + NUMBER look at yylval.number + ARITH_CMD look at yylval.word_list + ARITH_FOR_EXPRS look at yylval.word_list + COND_CMD look at yylval.command +*/ + +/* These are used by read_token_word, but appear up here so that shell_getc + can use them to decide when to add otherwise blank lines to the history. */ + +/* The primary delimiter stack. */ +struct dstack dstack = { (char *)NULL, 0, 0 }; + +/* A temporary delimiter stack to be used when decoding prompt strings. + This is needed because command substitutions in prompt strings (e.g., PS2) + can screw up the parser's quoting state. */ +static struct dstack temp_dstack = { (char *)NULL, 0, 0 }; + +/* Macro for accessing the top delimiter on the stack. Returns the + delimiter or zero if none. */ +#define current_delimiter(ds) \ + (ds.delimiter_depth ? ds.delimiters[ds.delimiter_depth - 1] : 0) + +#define push_delimiter(ds, character) \ + do \ + { \ + if (ds.delimiter_depth + 2 > ds.delimiter_space) \ + ds.delimiters = (char *)xrealloc \ + (ds.delimiters, (ds.delimiter_space += 10) * sizeof (char)); \ + ds.delimiters[ds.delimiter_depth] = character; \ + ds.delimiter_depth++; \ + } \ + while (0) + +#define pop_delimiter(ds) ds.delimiter_depth-- + +/* Return the next shell input character. This always reads characters + from shell_input_line; when that line is exhausted, it is time to + read the next line. This is called by read_token when the shell is + processing normal command input. */ + +/* This implements one-character lookahead/lookbehind across physical input + lines, to avoid something being lost because it's pushed back with + shell_ungetc when we're at the start of a line. */ +static int eol_ungetc_lookahead = 0; + +static int +shell_getc (remove_quoted_newline) + int remove_quoted_newline; +{ + register int i; + int c; + unsigned char uc; + + QUIT; + + if (sigwinch_received) + { + sigwinch_received = 0; + get_new_window_size (0, (int *)0, (int *)0); + } + + if (eol_ungetc_lookahead) + { + c = eol_ungetc_lookahead; + eol_ungetc_lookahead = 0; + return (c); + } + +#if defined (ALIAS) || defined (DPAREN_ARITHMETIC) + /* If shell_input_line[shell_input_line_index] == 0, but there is + something on the pushed list of strings, then we don't want to go + off and get another line. We let the code down below handle it. */ + + if (!shell_input_line || ((!shell_input_line[shell_input_line_index]) && + (pushed_string_list == (STRING_SAVER *)NULL))) +#else /* !ALIAS && !DPAREN_ARITHMETIC */ + if (!shell_input_line || !shell_input_line[shell_input_line_index]) +#endif /* !ALIAS && !DPAREN_ARITHMETIC */ + { + line_number++; + + restart_read: + + /* Allow immediate exit if interrupted during input. */ + QUIT; + + i = 0; + shell_input_line_terminator = 0; + + /* If the shell is interatctive, but not currently printing a prompt + (interactive_shell && interactive == 0), we don't want to print + notifies or cleanup the jobs -- we want to defer it until we do + print the next prompt. */ + if (interactive_shell == 0 || SHOULD_PROMPT()) + { +#if defined (JOB_CONTROL) + /* This can cause a problem when reading a command as the result + of a trap, when the trap is called from flush_child. This call + had better not cause jobs to disappear from the job table in + that case, or we will have big trouble. */ + notify_and_cleanup (); +#else /* !JOB_CONTROL */ + cleanup_dead_jobs (); +#endif /* !JOB_CONTROL */ + } + +#if defined (READLINE) + if (no_line_editing && SHOULD_PROMPT()) +#else + if (SHOULD_PROMPT()) +#endif + print_prompt (); + + if (bash_input.type == st_stream) + clearerr (stdin); + + while (1) + { + c = yy_getc (); + + /* Allow immediate exit if interrupted during input. */ + QUIT; + + if (c == '\0') + { +#if 0 + internal_warning ("shell_getc: ignored null byte in input"); +#endif + continue; + } + + RESIZE_MALLOCED_BUFFER (shell_input_line, i, 2, shell_input_line_size, 256); + + if (c == EOF) + { + if (bash_input.type == st_stream) + clearerr (stdin); + + if (i == 0) + shell_input_line_terminator = EOF; + + shell_input_line[i] = '\0'; + break; + } + + shell_input_line[i++] = c; + + if (c == '\n') + { + shell_input_line[--i] = '\0'; + current_command_line_count++; + break; + } + } + + shell_input_line_index = 0; + shell_input_line_len = i; /* == strlen (shell_input_line) */ + + set_line_mbstate (); + +#if defined (HISTORY) + if (remember_on_history && shell_input_line && shell_input_line[0]) + { + char *expansions; +# if defined (BANG_HISTORY) + int old_hist; + + /* If the current delimiter is a single quote, we should not be + performing history expansion, even if we're on a different + line from the original single quote. */ + old_hist = history_expansion_inhibited; + if (current_delimiter (dstack) == '\'') + history_expansion_inhibited = 1; +# endif + expansions = pre_process_line (shell_input_line, 1, 1); +# if defined (BANG_HISTORY) + history_expansion_inhibited = old_hist; +# endif + if (expansions != shell_input_line) + { + free (shell_input_line); + shell_input_line = expansions; + shell_input_line_len = shell_input_line ? + strlen (shell_input_line) : 0; + if (!shell_input_line_len) + current_command_line_count--; + + /* We have to force the xrealloc below because we don't know + the true allocated size of shell_input_line anymore. */ + shell_input_line_size = shell_input_line_len; + + set_line_mbstate (); + } + } + /* Try to do something intelligent with blank lines encountered while + entering multi-line commands. XXX - this is grotesque */ + else if (remember_on_history && shell_input_line && + shell_input_line[0] == '\0' && + current_command_line_count > 1) + { + if (current_delimiter (dstack)) + /* We know shell_input_line[0] == 0 and we're reading some sort of + quoted string. This means we've got a line consisting of only + a newline in a quoted string. We want to make sure this line + gets added to the history. */ + maybe_add_history (shell_input_line); + else + { + char *hdcs; + hdcs = history_delimiting_chars (); + if (hdcs && hdcs[0] == ';') + maybe_add_history (shell_input_line); + } + } + +#endif /* HISTORY */ + + if (shell_input_line) + { + /* Lines that signify the end of the shell's input should not be + echoed. */ + if (echo_input_at_read && (shell_input_line[0] || + shell_input_line_terminator != EOF)) + fprintf (stderr, "%s\n", shell_input_line); + } + else + { + shell_input_line_size = 0; + prompt_string_pointer = ¤t_prompt_string; + if (SHOULD_PROMPT ()) + prompt_again (); + goto restart_read; + } + + /* Add the newline to the end of this string, iff the string does + not already end in an EOF character. */ + if (shell_input_line_terminator != EOF) + { + if (shell_input_line_len + 3 > shell_input_line_size) + shell_input_line = (char *)xrealloc (shell_input_line, + 1 + (shell_input_line_size += 2)); + + shell_input_line[shell_input_line_len] = '\n'; + shell_input_line[shell_input_line_len + 1] = '\0'; + + set_line_mbstate (); + } + } + + uc = shell_input_line[shell_input_line_index]; + + if (uc) + shell_input_line_index++; + +#if defined (ALIAS) || defined (DPAREN_ARITHMETIC) + /* If UC is NULL, we have reached the end of the current input string. If + pushed_string_list is non-empty, it's time to pop to the previous string + because we have fully consumed the result of the last alias expansion. + Do it transparently; just return the next character of the string popped + to. */ + if (!uc && (pushed_string_list != (STRING_SAVER *)NULL)) + { + pop_string (); + uc = shell_input_line[shell_input_line_index]; + if (uc) + shell_input_line_index++; + } +#endif /* ALIAS || DPAREN_ARITHMETIC */ + + if MBTEST(uc == '\\' && remove_quoted_newline && shell_input_line[shell_input_line_index] == '\n') + { + if (SHOULD_PROMPT ()) + prompt_again (); + line_number++; + goto restart_read; + } + + if (!uc && shell_input_line_terminator == EOF) + return ((shell_input_line_index != 0) ? '\n' : EOF); + + return (uc); +} + +/* Put C back into the input for the shell. This might need changes for + HANDLE_MULTIBYTE around EOLs. Since we (currently) never push back a + character different than we read, shell_input_line_property doesn't need + to change when manipulating shell_input_line. The define for + last_shell_getc_is_singlebyte should take care of it, though. */ +static void +shell_ungetc (c) + int c; +{ + if (shell_input_line && shell_input_line_index) + shell_input_line[--shell_input_line_index] = c; + else + eol_ungetc_lookahead = c; +} + +#ifdef INCLUDE_UNUSED +/* Back the input pointer up by one, effectively `ungetting' a character. */ +static void +shell_ungetchar () +{ + if (shell_input_line && shell_input_line_index) + shell_input_line_index--; +} +#endif + +/* Discard input until CHARACTER is seen, then push that character back + onto the input stream. */ +static void +discard_until (character) + int character; +{ + int c; + + while ((c = shell_getc (0)) != EOF && c != character) + ; + + if (c != EOF) + shell_ungetc (c); +} + +void +execute_variable_command (command, vname) + char *command, *vname; +{ + char *last_lastarg; + sh_parser_state_t ps; + + save_parser_state (&ps); + last_lastarg = get_string_value ("_"); + if (last_lastarg) + last_lastarg = savestring (last_lastarg); + + parse_and_execute (savestring (command), vname, SEVAL_NONINT|SEVAL_NOHIST); + + restore_parser_state (&ps); + bind_variable ("_", last_lastarg, 0); + FREE (last_lastarg); + + if (token_to_read == '\n') /* reset_parser was called */ + token_to_read = 0; +} + +/* Place to remember the token. We try to keep the buffer + at a reasonable size, but it can grow. */ +static char *token = (char *)NULL; + +/* Current size of the token buffer. */ +static int token_buffer_size; + +/* Command to read_token () explaining what we want it to do. */ +#define READ 0 +#define RESET 1 +#define prompt_is_ps1 \ + (!prompt_string_pointer || prompt_string_pointer == &ps1_prompt) + +/* Function for yyparse to call. yylex keeps track of + the last two tokens read, and calls read_token. */ +static int +yylex () +{ + if (interactive && (current_token == 0 || current_token == '\n')) + { + /* Before we print a prompt, we might have to check mailboxes. + We do this only if it is time to do so. Notice that only here + is the mail alarm reset; nothing takes place in check_mail () + except the checking of mail. Please don't change this. */ + if (prompt_is_ps1 && time_to_check_mail ()) + { + check_mail (); + reset_mail_timer (); + } + + /* Avoid printing a prompt if we're not going to read anything, e.g. + after resetting the parser with read_token (RESET). */ + if (token_to_read == 0 && SHOULD_PROMPT ()) + prompt_again (); + } + + two_tokens_ago = token_before_that; + token_before_that = last_read_token; + last_read_token = current_token; + current_token = read_token (READ); + return (current_token); +} + +/* When non-zero, we have read the required tokens + which allow ESAC to be the next one read. */ +static int esacs_needed_count; + +void +gather_here_documents () +{ + int r = 0; + while (need_here_doc) + { + make_here_document (redir_stack[r++]); + need_here_doc--; + } +} + +/* When non-zero, an open-brace used to create a group is awaiting a close + brace partner. */ +static int open_brace_count; + +#define command_token_position(token) \ + (((token) == ASSIGNMENT_WORD) || \ + ((token) != SEMI_SEMI && (token) != SEMI_AND && (token) != SEMI_SEMI_AND && reserved_word_acceptable(token))) + +#define assignment_acceptable(token) \ + (command_token_position(token) && ((parser_state & PST_CASEPAT) == 0)) + +/* Check to see if TOKEN is a reserved word and return the token + value if it is. */ +#define CHECK_FOR_RESERVED_WORD(tok) \ + do { \ + if (!dollar_present && !quoted && \ + reserved_word_acceptable (last_read_token)) \ + { \ + int i; \ + for (i = 0; word_token_alist[i].word != (char *)NULL; i++) \ + if (STREQ (tok, word_token_alist[i].word)) \ + { \ + if ((parser_state & PST_CASEPAT) && (word_token_alist[i].token != ESAC)) \ + break; \ + if (word_token_alist[i].token == TIME && time_command_acceptable () == 0) \ + break; \ + if (word_token_alist[i].token == ESAC) \ + parser_state &= ~(PST_CASEPAT|PST_CASESTMT); \ + else if (word_token_alist[i].token == CASE) \ + parser_state |= PST_CASESTMT; \ + else if (word_token_alist[i].token == COND_END) \ + parser_state &= ~(PST_CONDCMD|PST_CONDEXPR); \ + else if (word_token_alist[i].token == COND_START) \ + parser_state |= PST_CONDCMD; \ + else if (word_token_alist[i].token == '{') \ + open_brace_count++; \ + else if (word_token_alist[i].token == '}' && open_brace_count) \ + open_brace_count--; \ + return (word_token_alist[i].token); \ + } \ + } \ + } while (0) + +#if defined (ALIAS) + + /* OK, we have a token. Let's try to alias expand it, if (and only if) + it's eligible. + + It is eligible for expansion if EXPAND_ALIASES is set, and + the token is unquoted and the last token read was a command + separator (or expand_next_token is set), and we are currently + processing an alias (pushed_string_list is non-empty) and this + token is not the same as the current or any previously + processed alias. + + Special cases that disqualify: + In a pattern list in a case statement (parser_state & PST_CASEPAT). */ + +static char * +mk_alexpansion (s) + char *s; +{ + int l; + char *r; + + l = strlen (s); + r = xmalloc (l + 2); + strcpy (r, s); + if (r[l -1] != ' ') + r[l++] = ' '; + r[l] = '\0'; + return r; +} + +static int +alias_expand_token (tokstr) + char *tokstr; +{ + char *expanded; + alias_t *ap; + + if (((parser_state & PST_ALEXPNEXT) || command_token_position (last_read_token)) && + (parser_state & PST_CASEPAT) == 0) + { + ap = find_alias (tokstr); + + /* Currently expanding this token. */ + if (ap && (ap->flags & AL_BEINGEXPANDED)) + return (NO_EXPANSION); + + /* mk_alexpansion puts an extra space on the end of the alias expansion, + so the lookahead by the parser works right. If this gets changed, + make sure the code in shell_getc that deals with reaching the end of + an expanded alias is changed with it. */ + expanded = ap ? mk_alexpansion (ap->value) : (char *)NULL; + + if (expanded) + { + push_string (expanded, ap->flags & AL_EXPANDNEXT, ap); + return (RE_READ_TOKEN); + } + else + /* This is an eligible token that does not have an expansion. */ + return (NO_EXPANSION); + } + return (NO_EXPANSION); +} +#endif /* ALIAS */ + +static int +time_command_acceptable () +{ +#if defined (COMMAND_TIMING) + switch (last_read_token) + { + case 0: + case ';': + case '\n': + case AND_AND: + case OR_OR: + case '&': + case DO: + case THEN: + case ELSE: + case '{': /* } */ + case '(': /* ) */ + return 1; + default: + return 0; + } +#else + return 0; +#endif /* COMMAND_TIMING */ +} + +/* Handle special cases of token recognition: + IN is recognized if the last token was WORD and the token + before that was FOR or CASE or SELECT. + + DO is recognized if the last token was WORD and the token + before that was FOR or SELECT. + + ESAC is recognized if the last token caused `esacs_needed_count' + to be set + + `{' is recognized if the last token as WORD and the token + before that was FUNCTION, or if we just parsed an arithmetic + `for' command. + + `}' is recognized if there is an unclosed `{' present. + + `-p' is returned as TIMEOPT if the last read token was TIME. + + ']]' is returned as COND_END if the parser is currently parsing + a conditional expression ((parser_state & PST_CONDEXPR) != 0) + + `time' is returned as TIME if and only if it is immediately + preceded by one of `;', `\n', `||', `&&', or `&'. +*/ + +static int +special_case_tokens (tokstr) + char *tokstr; +{ + if ((last_read_token == WORD) && +#if defined (SELECT_COMMAND) + ((token_before_that == FOR) || (token_before_that == CASE) || (token_before_that == SELECT)) && +#else + ((token_before_that == FOR) || (token_before_that == CASE)) && +#endif + (tokstr[0] == 'i' && tokstr[1] == 'n' && tokstr[2] == 0)) + { + if (token_before_that == CASE) + { + parser_state |= PST_CASEPAT; + esacs_needed_count++; + } + return (IN); + } + + if (last_read_token == WORD && +#if defined (SELECT_COMMAND) + (token_before_that == FOR || token_before_that == SELECT) && +#else + (token_before_that == FOR) && +#endif + (tokstr[0] == 'd' && tokstr[1] == 'o' && tokstr[2] == '\0')) + return (DO); + + /* Ditto for ESAC in the CASE case. + Specifically, this handles "case word in esac", which is a legal + construct, certainly because someone will pass an empty arg to the + case construct, and we don't want it to barf. Of course, we should + insist that the case construct has at least one pattern in it, but + the designers disagree. */ + if (esacs_needed_count) + { + esacs_needed_count--; + if (STREQ (tokstr, "esac")) + { + parser_state &= ~PST_CASEPAT; + return (ESAC); + } + } + + /* The start of a shell function definition. */ + if (parser_state & PST_ALLOWOPNBRC) + { + parser_state &= ~PST_ALLOWOPNBRC; + if (tokstr[0] == '{' && tokstr[1] == '\0') /* } */ + { + open_brace_count++; + function_bstart = line_number; + return ('{'); /* } */ + } + } + + /* We allow a `do' after a for ((...)) without an intervening + list_terminator */ + if (last_read_token == ARITH_FOR_EXPRS && tokstr[0] == 'd' && tokstr[1] == 'o' && !tokstr[2]) + return (DO); + if (last_read_token == ARITH_FOR_EXPRS && tokstr[0] == '{' && tokstr[1] == '\0') /* } */ + { + open_brace_count++; + return ('{'); /* } */ + } + + if (open_brace_count && reserved_word_acceptable (last_read_token) && tokstr[0] == '}' && !tokstr[1]) + { + open_brace_count--; /* { */ + return ('}'); + } + +#if defined (COMMAND_TIMING) + /* Handle -p after `time'. */ + if (last_read_token == TIME && tokstr[0] == '-' && tokstr[1] == 'p' && !tokstr[2]) + return (TIMEOPT); +#endif + +#if 0 +#if defined (COMMAND_TIMING) + if (STREQ (token, "time") && ((parser_state & PST_CASEPAT) == 0) && time_command_acceptable ()) + return (TIME); +#endif /* COMMAND_TIMING */ +#endif + +#if defined (COND_COMMAND) /* [[ */ + if ((parser_state & PST_CONDEXPR) && tokstr[0] == ']' && tokstr[1] == ']' && tokstr[2] == '\0') + return (COND_END); +#endif + + return (-1); +} + +/* Called from shell.c when Control-C is typed at top level. Or + by the error rule at top level. */ +void +reset_parser () +{ + dstack.delimiter_depth = 0; /* No delimiters found so far. */ + open_brace_count = 0; + + parser_state = 0; + +#if defined (ALIAS) || defined (DPAREN_ARITHMETIC) + if (pushed_string_list) + free_string_list (); +#endif /* ALIAS || DPAREN_ARITHMETIC */ + + if (shell_input_line) + { + free (shell_input_line); + shell_input_line = (char *)NULL; + shell_input_line_size = shell_input_line_index = 0; + } + + FREE (word_desc_to_read); + word_desc_to_read = (WORD_DESC *)NULL; + + last_read_token = '\n'; + token_to_read = '\n'; +} + +/* Read the next token. Command can be READ (normal operation) or + RESET (to normalize state). */ +static int +read_token (command) + int command; +{ + int character; /* Current character. */ + int peek_char; /* Temporary look-ahead character. */ + int result; /* The thing to return. */ + + if (command == RESET) + { + reset_parser (); + return ('\n'); + } + + if (token_to_read) + { + result = token_to_read; + if (token_to_read == WORD || token_to_read == ASSIGNMENT_WORD) + { + yylval.word = word_desc_to_read; + word_desc_to_read = (WORD_DESC *)NULL; + } + token_to_read = 0; + return (result); + } + +#if defined (COND_COMMAND) + if ((parser_state & (PST_CONDCMD|PST_CONDEXPR)) == PST_CONDCMD) + { + cond_lineno = line_number; + parser_state |= PST_CONDEXPR; + yylval.command = parse_cond_command (); + if (cond_token != COND_END) + { + cond_error (); + return (-1); + } + token_to_read = COND_END; + parser_state &= ~(PST_CONDEXPR|PST_CONDCMD); + return (COND_CMD); + } +#endif + +#if defined (ALIAS) + /* This is a place to jump back to once we have successfully expanded a + token with an alias and pushed the string with push_string () */ + re_read_token: +#endif /* ALIAS */ + + /* Read a single word from input. Start by skipping blanks. */ + while ((character = shell_getc (1)) != EOF && shellblank (character)) + ; + + if (character == EOF) + { + EOF_Reached = 1; + return (yacc_EOF); + } + + if MBTEST(character == '#' && (!interactive || interactive_comments)) + { + /* A comment. Discard until EOL or EOF, and then return a newline. */ + discard_until ('\n'); + shell_getc (0); + character = '\n'; /* this will take the next if statement and return. */ + } + + if (character == '\n') + { + /* If we're about to return an unquoted newline, we can go and collect + the text of any pending here document. */ + if (need_here_doc) + gather_here_documents (); + +#if defined (ALIAS) + parser_state &= ~PST_ALEXPNEXT; +#endif /* ALIAS */ + + parser_state &= ~PST_ASSIGNOK; + + return (character); + } + + if (parser_state & PST_REGEXP) + goto tokword; + + /* Shell meta-characters. */ + if MBTEST(shellmeta (character) && ((parser_state & PST_DBLPAREN) == 0)) + { +#if defined (ALIAS) + /* Turn off alias tokenization iff this character sequence would + not leave us ready to read a command. */ + if (character == '<' || character == '>') + parser_state &= ~PST_ALEXPNEXT; +#endif /* ALIAS */ + + parser_state &= ~PST_ASSIGNOK; + + peek_char = shell_getc (1); + if (character == peek_char) + { + switch (character) + { + case '<': + /* If '<' then we could be at "<<" or at "<<-". We have to + look ahead one more character. */ + peek_char = shell_getc (1); + if MBTEST(peek_char == '-') + return (LESS_LESS_MINUS); + else if MBTEST(peek_char == '<') + return (LESS_LESS_LESS); + else + { + shell_ungetc (peek_char); + return (LESS_LESS); + } + + case '>': + return (GREATER_GREATER); + + case ';': + parser_state |= PST_CASEPAT; +#if defined (ALIAS) + parser_state &= ~PST_ALEXPNEXT; +#endif /* ALIAS */ + peek_char = shell_getc (1); + if MBTEST(peek_char == '&') + return (SEMI_SEMI_AND); + else + { + shell_ungetc (peek_char); + return (SEMI_SEMI); + } + + case '&': + return (AND_AND); + + case '|': + return (OR_OR); + +#if defined (DPAREN_ARITHMETIC) || defined (ARITH_FOR_COMMAND) + case '(': /* ) */ + result = parse_dparen (character); + if (result == -2) + break; + else + return result; +#endif + } + } + else if MBTEST(character == '<' && peek_char == '&') + return (LESS_AND); + else if MBTEST(character == '>' && peek_char == '&') + return (GREATER_AND); + else if MBTEST(character == '<' && peek_char == '>') + return (LESS_GREATER); + else if MBTEST(character == '>' && peek_char == '|') + return (GREATER_BAR); + else if MBTEST(character == '&' && peek_char == '>') + { + peek_char = shell_getc (1); + if MBTEST(peek_char == '>') + return (AND_GREATER_GREATER); + else + { + shell_ungetc (peek_char); + return (AND_GREATER); + } + } + else if MBTEST(character == '|' && peek_char == '&') + return (BAR_AND); + else if MBTEST(character == ';' && peek_char == '&') + { + parser_state |= PST_CASEPAT; +#if defined (ALIAS) + parser_state &= ~PST_ALEXPNEXT; +#endif /* ALIAS */ + return (SEMI_AND); + } + + shell_ungetc (peek_char); + + /* If we look like we are reading the start of a function + definition, then let the reader know about it so that + we will do the right thing with `{'. */ + if MBTEST(character == ')' && last_read_token == '(' && token_before_that == WORD) + { + parser_state |= PST_ALLOWOPNBRC; +#if defined (ALIAS) + parser_state &= ~PST_ALEXPNEXT; +#endif /* ALIAS */ + function_dstart = line_number; + } + + /* case pattern lists may be preceded by an optional left paren. If + we're not trying to parse a case pattern list, the left paren + indicates a subshell. */ + if MBTEST(character == '(' && (parser_state & PST_CASEPAT) == 0) /* ) */ + parser_state |= PST_SUBSHELL; + /*(*/ + else if MBTEST((parser_state & PST_CASEPAT) && character == ')') + parser_state &= ~PST_CASEPAT; + /*(*/ + else if MBTEST((parser_state & PST_SUBSHELL) && character == ')') + parser_state &= ~PST_SUBSHELL; + +#if defined (PROCESS_SUBSTITUTION) + /* Check for the constructs which introduce process substitution. + Shells running in `posix mode' don't do process substitution. */ + if MBTEST(posixly_correct || ((character != '>' && character != '<') || peek_char != '(')) /*)*/ +#endif /* PROCESS_SUBSTITUTION */ + return (character); + } + + /* Hack <&- (close stdin) case. Also <&N- (dup and close). */ + if MBTEST(character == '-' && (last_read_token == LESS_AND || last_read_token == GREATER_AND)) + return (character); + +tokword: + /* Okay, if we got this far, we have to read a word. Read one, + and then check it against the known ones. */ + result = read_token_word (character); +#if defined (ALIAS) + if (result == RE_READ_TOKEN) + goto re_read_token; +#endif + return result; +} + +/* + * Match a $(...) or other grouping construct. This has to handle embedded + * quoted strings ('', ``, "") and nested constructs. It also must handle + * reprompting the user, if necessary, after reading a newline, and returning + * correct error values if it reads EOF. + */ +#define P_FIRSTCLOSE 0x01 +#define P_ALLOWESC 0x02 +#define P_DQUOTE 0x04 +#define P_COMMAND 0x08 /* parsing a command, so look for comments */ +#define P_BACKQUOTE 0x10 /* parsing a backquoted command substitution */ + +/* Lexical state while parsing a grouping construct or $(...). */ +#define LEX_WASDOL 0x001 +#define LEX_CKCOMMENT 0x002 +#define LEX_INCOMMENT 0x004 +#define LEX_PASSNEXT 0x008 +#define LEX_RESWDOK 0x010 +#define LEX_CKCASE 0x020 +#define LEX_INCASE 0x040 +#define LEX_INHEREDOC 0x080 +#define LEX_HEREDELIM 0x100 /* reading here-doc delimiter */ +#define LEX_STRIPDOC 0x200 /* <<- strip tabs from here doc delim */ + +#define COMSUB_META(ch) ((ch) == ';' || (ch) == '&' || (ch) == '|') + +#define CHECK_NESTRET_ERROR() \ + do { \ + if (nestret == &matched_pair_error) \ + { \ + free (ret); \ + return &matched_pair_error; \ + } \ + } while (0) + +#define APPEND_NESTRET() \ + do { \ + if (nestlen) \ + { \ + RESIZE_MALLOCED_BUFFER (ret, retind, nestlen, retsize, 64); \ + strcpy (ret + retind, nestret); \ + retind += nestlen; \ + } \ + } while (0) + +static char matched_pair_error; + +static char * +parse_matched_pair (qc, open, close, lenp, flags) + int qc; /* `"' if this construct is within double quotes */ + int open, close; + int *lenp, flags; +{ + int count, ch, was_dollar, in_comment, check_comment; + int pass_next_character, backq_backslash, nestlen, ttranslen, start_lineno; + char *ret, *nestret, *ttrans; + int retind, retsize, rflags; + +/* itrace("parse_matched_pair: open = %c close = %c", open, close); */ + count = 1; + pass_next_character = backq_backslash = was_dollar = in_comment = 0; + check_comment = (flags & P_COMMAND) && qc != '`' && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0; + + /* RFLAGS is the set of flags we want to pass to recursive calls. */ + rflags = (qc == '"') ? P_DQUOTE : (flags & P_DQUOTE); + + ret = (char *)xmalloc (retsize = 64); + retind = 0; + + start_lineno = line_number; + while (count) + { + ch = shell_getc (qc != '\'' && pass_next_character == 0 && backq_backslash == 0); + + if (ch == EOF) + { + free (ret); + parser_error (start_lineno, _("unexpected EOF while looking for matching `%c'"), close); + EOF_Reached = 1; /* XXX */ + return (&matched_pair_error); + } + + /* Possible reprompting. */ + if (ch == '\n' && SHOULD_PROMPT ()) + prompt_again (); + + /* Don't bother counting parens or doing anything else if in a comment + or part of a case statement */ + if (in_comment) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + if (ch == '\n') + in_comment = 0; + + continue; + } + + /* Not exactly right yet, should handle shell metacharacters, too. If + any changes are made to this test, make analogous changes to subst.c: + extract_delimited_string(). */ + else if MBTEST(check_comment && in_comment == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || whitespace (ret[retind - 1]))) + in_comment = 1; + + /* last char was backslash inside backquoted command substitution */ + if (backq_backslash) + { + backq_backslash = 0; + /* Placeholder for adding special characters */ + } + + if (pass_next_character) /* last char was backslash */ + { + pass_next_character = 0; + if (qc != '\'' && ch == '\n') /* double-quoted \ disappears. */ + { + if (retind > 0) retind--; /* swallow previously-added backslash */ + continue; + } + + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + if MBTEST(ch == CTLESC || ch == CTLNUL) + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } + else if MBTEST(ch == CTLESC || ch == CTLNUL) /* special shell escapes */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } + else if MBTEST(ch == close) /* ending delimiter */ + count--; + /* handle nested ${...} specially. */ + else if MBTEST(open != close && was_dollar && open == '{' && ch == open) /* } */ + count++; + else if MBTEST(((flags & P_FIRSTCLOSE) == 0) && ch == open) /* nested begin */ + count++; + + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + /* If we just read the ending character, don't bother continuing. */ + if (count == 0) + break; + + if (open == '\'') /* '' inside grouping construct */ + { + if MBTEST((flags & P_ALLOWESC) && ch == '\\') + pass_next_character++; +#if 0 + else if MBTEST((flags & P_BACKQUOTE) && ch == '\\') + backq_backslash++; +#endif + continue; + } + + if MBTEST(ch == '\\') /* backslashes */ + pass_next_character++; + + /* Could also check open == '`' if we want to parse grouping constructs + inside old-style command substitution. */ + if (open != close) /* a grouping construct */ + { + if MBTEST(shellquote (ch)) + { + /* '', ``, or "" inside $(...) or other grouping construct. */ + push_delimiter (dstack, ch); + if MBTEST(was_dollar && ch == '\'') /* $'...' inside group */ + nestret = parse_matched_pair (ch, ch, ch, &nestlen, P_ALLOWESC|rflags); + else + nestret = parse_matched_pair (ch, ch, ch, &nestlen, rflags); + pop_delimiter (dstack); + CHECK_NESTRET_ERROR (); + + if MBTEST(was_dollar && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Translate $'...' here. */ + ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen); + xfree (nestret); + + if ((rflags & P_DQUOTE) == 0) + { + nestret = sh_single_quote (ttrans); + free (ttrans); + nestlen = strlen (nestret); + } + else + { + nestret = ttrans; + nestlen = ttranslen; + } + retind -= 2; /* back up before the $' */ + } + else if MBTEST(was_dollar && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Locale expand $"..." here. */ + ttrans = localeexpand (nestret, 0, nestlen - 1, start_lineno, &ttranslen); + xfree (nestret); + + nestret = sh_mkdoublequoted (ttrans, ttranslen, 0); + free (ttrans); + nestlen = ttranslen + 2; + retind -= 2; /* back up before the $" */ + } + + APPEND_NESTRET (); + FREE (nestret); + } + } + /* Parse an old-style command substitution within double quotes as a + single word. */ + /* XXX - sh and ksh93 don't do this - XXX */ + else if MBTEST(open == '"' && ch == '`') + { + nestret = parse_matched_pair (0, '`', '`', &nestlen, rflags); + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + else if MBTEST(open != '`' && was_dollar && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ + /* check for $(), $[], or ${} inside quoted string. */ + { + if (open == ch) /* undo previous increment */ + count--; + if (ch == '(') /* ) */ + nestret = parse_matched_pair (0, '(', ')', &nestlen, rflags & ~P_DQUOTE); + else if (ch == '{') /* } */ + nestret = parse_matched_pair (0, '{', '}', &nestlen, P_FIRSTCLOSE|rflags); + else if (ch == '[') /* ] */ + nestret = parse_matched_pair (0, '[', ']', &nestlen, rflags); + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + was_dollar = MBTEST(ch == '$'); + } + + ret[retind] = '\0'; + if (lenp) + *lenp = retind; + return ret; +} + +/* Parse a $(...) command substitution. This is messier than I'd like, and + reproduces a lot more of the token-reading code than I'd like. */ +static char * +parse_comsub (qc, open, close, lenp, flags) + int qc; /* `"' if this construct is within double quotes */ + int open, close; + int *lenp, flags; +{ + int count, ch, peekc, tflags, lex_rwlen, lex_firstind; + int nestlen, ttranslen, start_lineno; + char *ret, *nestret, *ttrans, *heredelim; + int retind, retsize, rflags, hdlen; + +/*itrace("parse_comsub: qc = `%c' open = %c close = %c", qc, open, close);*/ + count = 1; + tflags = LEX_RESWDOK; + + if ((flags & P_COMMAND) && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0) + tflags |= LEX_CKCASE; + if ((tflags & LEX_CKCASE) && (interactive == 0 || interactive_comments)) + tflags |= LEX_CKCOMMENT; + + /* RFLAGS is the set of flags we want to pass to recursive calls. */ + rflags = (flags & P_DQUOTE); + + ret = (char *)xmalloc (retsize = 64); + retind = 0; + + start_lineno = line_number; + lex_rwlen = 0; + + heredelim = 0; + lex_firstind = -1; + + while (count) + { +comsub_readchar: + ch = shell_getc (qc != '\'' && (tflags & LEX_PASSNEXT) == 0); + + if (ch == EOF) + { +eof_error: + free (ret); + FREE (heredelim); + parser_error (start_lineno, _("unexpected EOF while looking for matching `%c'"), close); + EOF_Reached = 1; /* XXX */ + return (&matched_pair_error); + } + + /* If we hit the end of a line and are reading the contents of a here + document, and it's not the same line that the document starts on, + check for this line being the here doc delimiter. Otherwise, if + we're in a here document, mark the next character as the beginning + of a line. */ + if (ch == '\n') + { + if ((tflags & LEX_HEREDELIM) && heredelim) + { + tflags &= ~LEX_HEREDELIM; + tflags |= LEX_INHEREDOC; + lex_firstind = retind + 1; + } + else if (tflags & LEX_INHEREDOC) + { + int tind; + tind = lex_firstind; + while ((tflags & LEX_STRIPDOC) && ret[tind] == '\t') + tind++; + if (STREQN (ret + tind, heredelim, hdlen)) + { + tflags &= ~(LEX_STRIPDOC|LEX_INHEREDOC); +/*itrace("parse_comsub:%d: found here doc end `%s'", line_number, ret + tind);*/ + lex_firstind = -1; + } + else + lex_firstind = retind + 1; + } + } + + /* Possible reprompting. */ + if (ch == '\n' && SHOULD_PROMPT ()) + prompt_again (); + + /* Don't bother counting parens or doing anything else if in a comment */ + if (tflags & (LEX_INCOMMENT|LEX_INHEREDOC)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + if ((tflags & LEX_INCOMMENT) && ch == '\n') + tflags &= ~LEX_INCOMMENT; + + continue; + } + + /* Skip whitespace */ + if MBTEST(shellblank (ch) && lex_rwlen == 0) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + continue; + } + + /* Either we are looking for the start of the here-doc delimiter + (lex_firstind == -1) or we are reading one (lex_firstind >= 0). + If this character is a shell break character and we are reading + the delimiter, save it and note that we are now reading a here + document. If we've found the start of the delimiter, note it by + setting lex_firstind. Backslashes can quote shell metacharacters + in here-doc delimiters. */ + if (tflags & LEX_HEREDELIM) + { + if (lex_firstind == -1 && shellbreak (ch) == 0) + lex_firstind = retind; + else if (lex_firstind >= 0 && (tflags & LEX_PASSNEXT) == 0 && shellbreak (ch)) + { + nestret = substring (ret, lex_firstind, retind); + heredelim = string_quote_removal (nestret, 0); + free (nestret); + hdlen = STRLEN(heredelim); +/*itrace("parse_comsub:%d: found here doc delimiter `%s' (%d)", line_number, heredelim, hdlen);*/ + if (ch == '\n') + { + tflags |= LEX_INHEREDOC; + tflags &= ~LEX_HEREDELIM; + lex_firstind = retind + 1; + } + else + lex_firstind = -1; + } + } + + /* Meta-characters that can introduce a reserved word. Not perfect yet. */ + if MBTEST((tflags & LEX_RESWDOK) == 0 && (tflags & LEX_CKCASE) && (tflags & LEX_INCOMMENT) == 0 && shellmeta(ch)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + peekc = shell_getc (1); + if (ch == peekc && (ch == '&' || ch == '|' || ch == ';')) /* two-character tokens */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; +/*itrace("parse_comsub:%d: set lex_reswordok = 1, ch = `%c'", line_number, ch); */ + tflags |= LEX_RESWDOK; + lex_rwlen = 0; + continue; + } + else if (ch == '\n' || COMSUB_META(ch)) + { + shell_ungetc (peekc); + tflags |= LEX_RESWDOK; +/*itrace("parse_comsub:%d: set lex_reswordok = 1, ch = `%c'", line_number, ch);*/ + lex_rwlen = 0; + continue; + } + else if (ch == EOF) + goto eof_error; + else + { + /* `unget' the character we just added and fall through */ + retind--; + shell_ungetc (peekc); + } + } + + /* If we can read a reserved word, try to read one. */ + if (tflags & LEX_RESWDOK) + { + if MBTEST(islower (ch)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + lex_rwlen++; + continue; + } + else if MBTEST(lex_rwlen == 4 && shellbreak (ch)) + { + if (STREQN (ret + retind - 4, "case", 4)) +{ + tflags |= LEX_INCASE; +/*itrace("parse_comsub:%d: found `case', lex_incase -> 1", line_number);*/ +} + else if (STREQN (ret + retind - 4, "esac", 4)) +{ + tflags &= ~LEX_INCASE; +/*itrace("parse_comsub:%d: found `esac', lex_incase -> 0", line_number);*/ +} + tflags &= ~LEX_RESWDOK; + } + else if (shellbreak (ch) == 0) +{ + tflags &= ~LEX_RESWDOK; +/*itrace("parse_comsub:%d: found `%c', lex_reswordok -> 0", line_number, ch);*/ +} + } + + if MBTEST((tflags & LEX_INCOMMENT) == 0 && (tflags & LEX_CKCASE) && ch == '<') + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + peekc = shell_getc (1); + if (peekc == EOF) + goto eof_error; + if (peekc == ch) + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; + peekc = shell_getc (1); + if (peekc == EOF) + goto eof_error; + if (peekc == '-') + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; + tflags |= LEX_STRIPDOC; + } + else + shell_ungetc (peekc); + tflags |= LEX_HEREDELIM; + lex_firstind = -1; + continue; + } + else + ch = peekc; /* fall through and continue XXX - this skips comments if peekc == '#' */ + } + /* Not exactly right yet, should handle shell metacharacters, too. If + any changes are made to this test, make analogous changes to subst.c: + extract_delimited_string(). */ + else if MBTEST((tflags & LEX_CKCOMMENT) && (tflags & LEX_INCOMMENT) == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || shellblank (ret[retind - 1]))) + tflags |= LEX_INCOMMENT; + + if (tflags & LEX_PASSNEXT) /* last char was backslash */ + { + tflags &= ~LEX_PASSNEXT; + if (qc != '\'' && ch == '\n') /* double-quoted \ disappears. */ + { + if (retind > 0) + retind--; /* swallow previously-added backslash */ + continue; + } + + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + if MBTEST(ch == CTLESC || ch == CTLNUL) + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } + else if MBTEST(ch == CTLESC || ch == CTLNUL) /* special shell escapes */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } +#if 0 + else if MBTEST((tflags & LEX_INCASE) && ch == close && close == ')') + tflags &= ~LEX_INCASE; /* XXX */ +#endif + else if MBTEST(ch == close && (tflags & LEX_INCASE) == 0) /* ending delimiter */ +{ + count--; +/*itrace("parse_comsub:%d: found close: count = %d", line_number, count);*/ +} + else if MBTEST(((flags & P_FIRSTCLOSE) == 0) && (tflags & LEX_INCASE) == 0 && ch == open) /* nested begin */ + count++; + + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + /* If we just read the ending character, don't bother continuing. */ + if (count == 0) + break; + + if MBTEST(ch == '\\') /* backslashes */ + tflags |= LEX_PASSNEXT; + + if MBTEST(shellquote (ch)) + { + /* '', ``, or "" inside $(...). */ + push_delimiter (dstack, ch); + if MBTEST((tflags & LEX_WASDOL) && ch == '\'') /* $'...' inside group */ + nestret = parse_matched_pair (ch, ch, ch, &nestlen, P_ALLOWESC|rflags); + else + nestret = parse_matched_pair (ch, ch, ch, &nestlen, rflags); + pop_delimiter (dstack); + CHECK_NESTRET_ERROR (); + + if MBTEST((tflags & LEX_WASDOL) && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Translate $'...' here. */ + ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen); + xfree (nestret); + + if ((rflags & P_DQUOTE) == 0) + { + nestret = sh_single_quote (ttrans); + free (ttrans); + nestlen = strlen (nestret); + } + else + { + nestret = ttrans; + nestlen = ttranslen; + } + retind -= 2; /* back up before the $' */ + } + else if MBTEST((tflags & LEX_WASDOL) && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Locale expand $"..." here. */ + ttrans = localeexpand (nestret, 0, nestlen - 1, start_lineno, &ttranslen); + xfree (nestret); + + nestret = sh_mkdoublequoted (ttrans, ttranslen, 0); + free (ttrans); + nestlen = ttranslen + 2; + retind -= 2; /* back up before the $" */ + } + + APPEND_NESTRET (); + FREE (nestret); + } + else if MBTEST((tflags & LEX_WASDOL) && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ + /* check for $(), $[], or ${} inside command substitution. */ + { + if ((tflags & LEX_INCASE) == 0 && open == ch) /* undo previous increment */ + count--; + if (ch == '(') /* ) */ +#if 0 + nestret = parse_comsub (0, '(', ')', &nestlen, rflags & ~P_DQUOTE); +#else + nestret = parse_comsub (0, '(', ')', &nestlen, (rflags|P_COMMAND) & ~P_DQUOTE); +#endif + else if (ch == '{') /* } */ + nestret = parse_matched_pair (0, '{', '}', &nestlen, P_FIRSTCLOSE|rflags); + else if (ch == '[') /* ] */ + nestret = parse_matched_pair (0, '[', ']', &nestlen, rflags); + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + if MBTEST(ch == '$') + tflags |= LEX_WASDOL; + else + tflags &= ~LEX_WASDOL; + } + + FREE (heredelim); + ret[retind] = '\0'; + if (lenp) + *lenp = retind; +/*itrace("parse_comsub:%d: returning `%s'", line_number, ret);*/ + return ret; +} + +/* XXX - this needs to handle functionality like subst.c:no_longjmp_on_fatal_error; + maybe extract_command_subst should handle it. */ +char * +xparse_dolparen (base, string, indp, flags) + char *base; + char *string; + int *indp; + int flags; +{ + sh_parser_state_t ps; + int orig_ind, nc, sflags; + char *ret, *s, *ep, *ostring; + + /*yydebug = 1;*/ + orig_ind = *indp; + ostring = string; + + sflags = SEVAL_NONINT|SEVAL_NOHIST|SEVAL_NOFREE; + if (flags & 0x010) /* EX_NOLONGJMP */ + sflags |= SEVAL_NOLONGJMP; + save_parser_state (&ps); + + /*(*/ + parser_state |= PST_CMDSUBST|PST_EOFTOKEN; /* allow instant ')' */ /*(*/ + shell_eof_token = ')'; + parse_string (string, "command substitution", sflags, &ep); + + restore_parser_state (&ps); + reset_parser (); + if (interactive) + token_to_read = 0; + + /* Need to find how many characters parse_and_execute consumed, update + *indp, if flags != 0, copy the portion of the string parsed into RET + and return it. If flags & 1 (EX_NOALLOC) we can return NULL. */ + + /*(*/ + if (ep[-1] != ')') + { +#if DEBUG + itrace("xparse_dolparen:%d: ep[-1] != RPAREN (%d), ep = `%s'", line_number, ep[-1], ep); +#endif + while (ep > ostring && ep[-1] == '\n') ep--; + } + + nc = ep - ostring; + *indp = ep - base - 1; + + /*(*/ +#if DEBUG + if (base[*indp] != ')') + itrace("xparse_dolparen:%d: base[%d] != RPAREN (%d), base = `%s'", line_number, *indp, base[*indp], base); +#endif + + if (flags & 1) + return (char *)NULL; + + if (nc == 0) + { + ret = xmalloc (1); + ret[0] = '\0'; + } + else + ret = substring (ostring, 0, nc - 1); + + return ret; +} + +#if defined (DPAREN_ARITHMETIC) || defined (ARITH_FOR_COMMAND) +/* Parse a double-paren construct. It can be either an arithmetic + command, an arithmetic `for' command, or a nested subshell. Returns + the parsed token, -1 on error, or -2 if we didn't do anything and + should just go on. */ +static int +parse_dparen (c) + int c; +{ + int cmdtyp, sline; + char *wval; + WORD_DESC *wd; + +#if defined (ARITH_FOR_COMMAND) + if (last_read_token == FOR) + { + arith_for_lineno = line_number; + cmdtyp = parse_arith_cmd (&wval, 0); + if (cmdtyp == 1) + { + wd = alloc_word_desc (); + wd->word = wval; + yylval.word_list = make_word_list (wd, (WORD_LIST *)NULL); + return (ARITH_FOR_EXPRS); + } + else + return -1; /* ERROR */ + } +#endif + +#if defined (DPAREN_ARITHMETIC) + if (reserved_word_acceptable (last_read_token)) + { + sline = line_number; + + cmdtyp = parse_arith_cmd (&wval, 0); + if (cmdtyp == 1) /* arithmetic command */ + { + wd = alloc_word_desc (); + wd->word = wval; + wd->flags = W_QUOTED|W_NOSPLIT|W_NOGLOB|W_DQUOTE; + yylval.word_list = make_word_list (wd, (WORD_LIST *)NULL); + return (ARITH_CMD); + } + else if (cmdtyp == 0) /* nested subshell */ + { + push_string (wval, 0, (alias_t *)NULL); + if ((parser_state & PST_CASEPAT) == 0) + parser_state |= PST_SUBSHELL; + return (c); + } + else /* ERROR */ + return -1; + } +#endif + + return -2; /* XXX */ +} + +/* We've seen a `(('. Look for the matching `))'. If we get it, return 1. + If not, assume it's a nested subshell for backwards compatibility and + return 0. In any case, put the characters we've consumed into a locally- + allocated buffer and make *ep point to that buffer. Return -1 on an + error, for example EOF. */ +static int +parse_arith_cmd (ep, adddq) + char **ep; + int adddq; +{ + int exp_lineno, rval, c; + char *ttok, *tokstr; + int ttoklen; + + exp_lineno = line_number; + ttok = parse_matched_pair (0, '(', ')', &ttoklen, 0); + rval = 1; + if (ttok == &matched_pair_error) + return -1; + /* Check that the next character is the closing right paren. If + not, this is a syntax error. ( */ + c = shell_getc (0); + if MBTEST(c != ')') + rval = 0; + + tokstr = (char *)xmalloc (ttoklen + 4); + + /* if ADDDQ != 0 then (( ... )) -> "..." */ + if (rval == 1 && adddq) /* arith cmd, add double quotes */ + { + tokstr[0] = '"'; + strncpy (tokstr + 1, ttok, ttoklen - 1); + tokstr[ttoklen] = '"'; + tokstr[ttoklen+1] = '\0'; + } + else if (rval == 1) /* arith cmd, don't add double quotes */ + { + strncpy (tokstr, ttok, ttoklen - 1); + tokstr[ttoklen-1] = '\0'; + } + else /* nested subshell */ + { + tokstr[0] = '('; + strncpy (tokstr + 1, ttok, ttoklen - 1); + tokstr[ttoklen] = ')'; + tokstr[ttoklen+1] = c; + tokstr[ttoklen+2] = '\0'; + } + + *ep = tokstr; + FREE (ttok); + return rval; +} +#endif /* DPAREN_ARITHMETIC || ARITH_FOR_COMMAND */ + +#if defined (COND_COMMAND) +static void +cond_error () +{ + char *etext; + + if (EOF_Reached && cond_token != COND_ERROR) /* [[ */ + parser_error (cond_lineno, _("unexpected EOF while looking for `]]'")); + else if (cond_token != COND_ERROR) + { + if (etext = error_token_from_token (cond_token)) + { + parser_error (cond_lineno, _("syntax error in conditional expression: unexpected token `%s'"), etext); + free (etext); + } + else + parser_error (cond_lineno, _("syntax error in conditional expression")); + } +} + +static COND_COM * +cond_expr () +{ + return (cond_or ()); +} + +static COND_COM * +cond_or () +{ + COND_COM *l, *r; + + l = cond_and (); + if (cond_token == OR_OR) + { + r = cond_or (); + l = make_cond_node (COND_OR, (WORD_DESC *)NULL, l, r); + } + return l; +} + +static COND_COM * +cond_and () +{ + COND_COM *l, *r; + + l = cond_term (); + if (cond_token == AND_AND) + { + r = cond_and (); + l = make_cond_node (COND_AND, (WORD_DESC *)NULL, l, r); + } + return l; +} + +static int +cond_skip_newlines () +{ + while ((cond_token = read_token (READ)) == '\n') + { + if (SHOULD_PROMPT ()) + prompt_again (); + } + return (cond_token); +} + +#define COND_RETURN_ERROR() \ + do { cond_token = COND_ERROR; return ((COND_COM *)NULL); } while (0) + +static COND_COM * +cond_term () +{ + WORD_DESC *op; + COND_COM *term, *tleft, *tright; + int tok, lineno; + char *etext; + + /* Read a token. It can be a left paren, a `!', a unary operator, or a + word that should be the first argument of a binary operator. Start by + skipping newlines, since this is a compound command. */ + tok = cond_skip_newlines (); + lineno = line_number; + if (tok == COND_END) + { + COND_RETURN_ERROR (); + } + else if (tok == '(') + { + term = cond_expr (); + if (cond_token != ')') + { + if (term) + dispose_cond_node (term); /* ( */ + if (etext = error_token_from_token (cond_token)) + { + parser_error (lineno, _("unexpected token `%s', expected `)'"), etext); + free (etext); + } + else + parser_error (lineno, _("expected `)'")); + COND_RETURN_ERROR (); + } + term = make_cond_node (COND_EXPR, (WORD_DESC *)NULL, term, (COND_COM *)NULL); + (void)cond_skip_newlines (); + } + else if (tok == BANG || (tok == WORD && (yylval.word->word[0] == '!' && yylval.word->word[1] == '\0'))) + { + if (tok == WORD) + dispose_word (yylval.word); /* not needed */ + term = cond_term (); + if (term) + term->flags |= CMD_INVERT_RETURN; + } + else if (tok == WORD && yylval.word->word[0] == '-' && yylval.word->word[2] == 0 && test_unop (yylval.word->word)) + { + op = yylval.word; + tok = read_token (READ); + if (tok == WORD) + { + tleft = make_cond_node (COND_TERM, yylval.word, (COND_COM *)NULL, (COND_COM *)NULL); + term = make_cond_node (COND_UNARY, op, tleft, (COND_COM *)NULL); + } + else + { + dispose_word (op); + if (etext = error_token_from_token (tok)) + { + parser_error (line_number, _("unexpected argument `%s' to conditional unary operator"), etext); + free (etext); + } + else + parser_error (line_number, _("unexpected argument to conditional unary operator")); + COND_RETURN_ERROR (); + } + + (void)cond_skip_newlines (); + } + else if (tok == WORD) /* left argument to binary operator */ + { + /* lhs */ + tleft = make_cond_node (COND_TERM, yylval.word, (COND_COM *)NULL, (COND_COM *)NULL); + + /* binop */ + tok = read_token (READ); + if (tok == WORD && test_binop (yylval.word->word)) + op = yylval.word; +#if defined (COND_REGEXP) + else if (tok == WORD && STREQ (yylval.word->word, "=~")) + { + op = yylval.word; + parser_state |= PST_REGEXP; + } +#endif + else if (tok == '<' || tok == '>') + op = make_word_from_token (tok); /* ( */ + /* There should be a check before blindly accepting the `)' that we have + seen the opening `('. */ + else if (tok == COND_END || tok == AND_AND || tok == OR_OR || tok == ')') + { + /* Special case. [[ x ]] is equivalent to [[ -n x ]], just like + the test command. Similarly for [[ x && expr ]] or + [[ x || expr ]] or [[ (x) ]]. */ + op = make_word ("-n"); + term = make_cond_node (COND_UNARY, op, tleft, (COND_COM *)NULL); + cond_token = tok; + return (term); + } + else + { + if (etext = error_token_from_token (tok)) + { + parser_error (line_number, _("unexpected token `%s', conditional binary operator expected"), etext); + free (etext); + } + else + parser_error (line_number, _("conditional binary operator expected")); + dispose_cond_node (tleft); + COND_RETURN_ERROR (); + } + + /* rhs */ + tok = read_token (READ); + parser_state &= ~PST_REGEXP; + if (tok == WORD) + { + tright = make_cond_node (COND_TERM, yylval.word, (COND_COM *)NULL, (COND_COM *)NULL); + term = make_cond_node (COND_BINARY, op, tleft, tright); + } + else + { + if (etext = error_token_from_token (tok)) + { + parser_error (line_number, _("unexpected argument `%s' to conditional binary operator"), etext); + free (etext); + } + else + parser_error (line_number, _("unexpected argument to conditional binary operator")); + dispose_cond_node (tleft); + dispose_word (op); + COND_RETURN_ERROR (); + } + + (void)cond_skip_newlines (); + } + else + { + if (tok < 256) + parser_error (line_number, _("unexpected token `%c' in conditional command"), tok); + else if (etext = error_token_from_token (tok)) + { + parser_error (line_number, _("unexpected token `%s' in conditional command"), etext); + free (etext); + } + else + parser_error (line_number, _("unexpected token %d in conditional command"), tok); + COND_RETURN_ERROR (); + } + return (term); +} + +/* This is kind of bogus -- we slip a mini recursive-descent parser in + here to handle the conditional statement syntax. */ +static COMMAND * +parse_cond_command () +{ + COND_COM *cexp; + + cexp = cond_expr (); + return (make_cond_command (cexp)); +} +#endif + +#if defined (ARRAY_VARS) +/* When this is called, it's guaranteed that we don't care about anything + in t beyond i. We do save and restore the chars, though. */ +static int +token_is_assignment (t, i) + char *t; + int i; +{ + unsigned char c, c1; + int r; + + c = t[i]; c1 = t[i+1]; + t[i] = '='; t[i+1] = '\0'; + r = assignment (t, (parser_state & PST_COMPASSIGN) != 0); + t[i] = c; t[i+1] = c1; + return r; +} + +/* XXX - possible changes here for `+=' */ +static int +token_is_ident (t, i) + char *t; + int i; +{ + unsigned char c; + int r; + + c = t[i]; + t[i] = '\0'; + r = legal_identifier (t); + t[i] = c; + return r; +} +#endif + +static int +read_token_word (character) + int character; +{ + /* The value for YYLVAL when a WORD is read. */ + WORD_DESC *the_word; + + /* Index into the token that we are building. */ + int token_index; + + /* ALL_DIGITS becomes zero when we see a non-digit. */ + int all_digit_token; + + /* DOLLAR_PRESENT becomes non-zero if we see a `$'. */ + int dollar_present; + + /* COMPOUND_ASSIGNMENT becomes non-zero if we are parsing a compound + assignment. */ + int compound_assignment; + + /* QUOTED becomes non-zero if we see one of ("), ('), (`), or (\). */ + int quoted; + + /* Non-zero means to ignore the value of the next character, and just + to add it no matter what. */ + int pass_next_character; + + /* The current delimiting character. */ + int cd; + int result, peek_char; + char *ttok, *ttrans; + int ttoklen, ttranslen; + intmax_t lvalue; + + if (token_buffer_size < TOKEN_DEFAULT_INITIAL_SIZE) + token = (char *)xrealloc (token, token_buffer_size = TOKEN_DEFAULT_INITIAL_SIZE); + + token_index = 0; + all_digit_token = DIGIT (character); + dollar_present = quoted = pass_next_character = compound_assignment = 0; + + for (;;) + { + if (character == EOF) + goto got_token; + + if (pass_next_character) + { + pass_next_character = 0; + goto got_escaped_character; + } + + cd = current_delimiter (dstack); + + /* Handle backslashes. Quote lots of things when not inside of + double-quotes, quote some things inside of double-quotes. */ + if MBTEST(character == '\\') + { + peek_char = shell_getc (0); + + /* Backslash-newline is ignored in all cases except + when quoted with single quotes. */ + if (peek_char == '\n') + { + character = '\n'; + goto next_character; + } + else + { + shell_ungetc (peek_char); + + /* If the next character is to be quoted, note it now. */ + if (cd == 0 || cd == '`' || + (cd == '"' && peek_char >= 0 && (sh_syntaxtab[peek_char] & CBSDQUOTE))) + pass_next_character++; + + quoted = 1; + goto got_character; + } + } + + /* Parse a matched pair of quote characters. */ + if MBTEST(shellquote (character)) + { + push_delimiter (dstack, character); + ttok = parse_matched_pair (character, character, character, &ttoklen, (character == '`') ? P_COMMAND : 0); + pop_delimiter (dstack); + if (ttok == &matched_pair_error) + return -1; /* Bail immediately. */ + RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2, + token_buffer_size, TOKEN_DEFAULT_GROW_SIZE); + token[token_index++] = character; + strcpy (token + token_index, ttok); + token_index += ttoklen; + all_digit_token = 0; + quoted = 1; + dollar_present |= (character == '"' && strchr (ttok, '$') != 0); + FREE (ttok); + goto next_character; + } + +#ifdef COND_REGEXP + /* When parsing a regexp as a single word inside a conditional command, + we need to special-case characters special to both the shell and + regular expressions. Right now, that is only '(' and '|'. */ /*)*/ + if MBTEST((parser_state & PST_REGEXP) && (character == '(' || character == '|')) /*)*/ + { + if (character == '|') + goto got_character; + + push_delimiter (dstack, character); + ttok = parse_matched_pair (cd, '(', ')', &ttoklen, 0); + pop_delimiter (dstack); + if (ttok == &matched_pair_error) + return -1; /* Bail immediately. */ + RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2, + token_buffer_size, TOKEN_DEFAULT_GROW_SIZE); + token[token_index++] = character; + strcpy (token + token_index, ttok); + token_index += ttoklen; + FREE (ttok); + dollar_present = all_digit_token = 0; + goto next_character; + } +#endif /* COND_REGEXP */ + +#ifdef EXTENDED_GLOB + /* Parse a ksh-style extended pattern matching specification. */ + if MBTEST(extended_glob && PATTERN_CHAR (character)) + { + peek_char = shell_getc (1); + if MBTEST(peek_char == '(') /* ) */ + { + push_delimiter (dstack, peek_char); + ttok = parse_matched_pair (cd, '(', ')', &ttoklen, 0); + pop_delimiter (dstack); + if (ttok == &matched_pair_error) + return -1; /* Bail immediately. */ + RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2, + token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + token[token_index++] = character; + token[token_index++] = peek_char; + strcpy (token + token_index, ttok); + token_index += ttoklen; + FREE (ttok); + dollar_present = all_digit_token = 0; + goto next_character; + } + else + shell_ungetc (peek_char); + } +#endif /* EXTENDED_GLOB */ + + /* If the delimiter character is not single quote, parse some of + the shell expansions that must be read as a single word. */ + if (shellexp (character)) + { + peek_char = shell_getc (1); + /* $(...), <(...), >(...), $((...)), ${...}, and $[...] constructs */ + if MBTEST(peek_char == '(' || \ + ((peek_char == '{' || peek_char == '[') && character == '$')) /* ) ] } */ + { + if (peek_char == '{') /* } */ + ttok = parse_matched_pair (cd, '{', '}', &ttoklen, P_FIRSTCLOSE); + else if (peek_char == '(') /* ) */ + { + /* XXX - push and pop the `(' as a delimiter for use by + the command-oriented-history code. This way newlines + appearing in the $(...) string get added to the + history literally rather than causing a possibly- + incorrect `;' to be added. ) */ + push_delimiter (dstack, peek_char); + ttok = parse_matched_pair (cd, '(', ')', &ttoklen, P_COMMAND); + pop_delimiter (dstack); + } + else + ttok = parse_matched_pair (cd, '[', ']', &ttoklen, 0); + if (ttok == &matched_pair_error) + return -1; /* Bail immediately. */ + RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2, + token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + token[token_index++] = character; + token[token_index++] = peek_char; + strcpy (token + token_index, ttok); + token_index += ttoklen; + FREE (ttok); + dollar_present = 1; + all_digit_token = 0; + goto next_character; + } + /* This handles $'...' and $"..." new-style quoted strings. */ + else if MBTEST(character == '$' && (peek_char == '\'' || peek_char == '"')) + { + int first_line; + + first_line = line_number; + push_delimiter (dstack, peek_char); + ttok = parse_matched_pair (peek_char, peek_char, peek_char, + &ttoklen, + (peek_char == '\'') ? P_ALLOWESC : 0); + pop_delimiter (dstack); + if (ttok == &matched_pair_error) + return -1; + if (peek_char == '\'') + { + ttrans = ansiexpand (ttok, 0, ttoklen - 1, &ttranslen); + free (ttok); + + /* Insert the single quotes and correctly quote any + embedded single quotes (allowed because P_ALLOWESC was + passed to parse_matched_pair). */ + ttok = sh_single_quote (ttrans); + free (ttrans); + ttranslen = strlen (ttok); + ttrans = ttok; + } + else + { + /* Try to locale-expand the converted string. */ + ttrans = localeexpand (ttok, 0, ttoklen - 1, first_line, &ttranslen); + free (ttok); + + /* Add the double quotes back */ + ttok = sh_mkdoublequoted (ttrans, ttranslen, 0); + free (ttrans); + ttranslen += 2; + ttrans = ttok; + } + + RESIZE_MALLOCED_BUFFER (token, token_index, ttranslen + 2, + token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + strcpy (token + token_index, ttrans); + token_index += ttranslen; + FREE (ttrans); + quoted = 1; + all_digit_token = 0; + goto next_character; + } + /* This could eventually be extended to recognize all of the + shell's single-character parameter expansions, and set flags.*/ + else if MBTEST(character == '$' && peek_char == '$') + { + ttok = (char *)xmalloc (3); + ttok[0] = ttok[1] = '$'; + ttok[2] = '\0'; + RESIZE_MALLOCED_BUFFER (token, token_index, 3, + token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + strcpy (token + token_index, ttok); + token_index += 2; + dollar_present = 1; + all_digit_token = 0; + FREE (ttok); + goto next_character; + } + else + shell_ungetc (peek_char); + } + +#if defined (ARRAY_VARS) + /* Identify possible array subscript assignment; match [...] */ + else if MBTEST(character == '[' && token_index > 0 && assignment_acceptable (last_read_token) && token_is_ident (token, token_index)) /* ] */ + { + ttok = parse_matched_pair (cd, '[', ']', &ttoklen, 0); + if (ttok == &matched_pair_error) + return -1; /* Bail immediately. */ + RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2, + token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + token[token_index++] = character; + strcpy (token + token_index, ttok); + token_index += ttoklen; + FREE (ttok); + all_digit_token = 0; + goto next_character; + } + /* Identify possible compound array variable assignment. */ + else if MBTEST(character == '=' && token_index > 0 && (assignment_acceptable (last_read_token) || (parser_state & PST_ASSIGNOK)) && token_is_assignment (token, token_index)) + { + peek_char = shell_getc (1); + if MBTEST(peek_char == '(') /* ) */ + { + ttok = parse_compound_assignment (&ttoklen); + + RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 4, + token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + + token[token_index++] = '='; + token[token_index++] = '('; + if (ttok) + { + strcpy (token + token_index, ttok); + token_index += ttoklen; + } + token[token_index++] = ')'; + FREE (ttok); + all_digit_token = 0; + compound_assignment = 1; +#if 1 + goto next_character; +#else + goto got_token; /* ksh93 seems to do this */ +#endif + } + else + shell_ungetc (peek_char); + } +#endif + + /* When not parsing a multi-character word construct, shell meta- + characters break words. */ + if MBTEST(shellbreak (character)) + { + shell_ungetc (character); + goto got_token; + } + + got_character: + + if (character == CTLESC || character == CTLNUL) + token[token_index++] = CTLESC; + + got_escaped_character: + + all_digit_token &= DIGIT (character); + dollar_present |= character == '$'; + + token[token_index++] = character; + + RESIZE_MALLOCED_BUFFER (token, token_index, 1, token_buffer_size, + TOKEN_DEFAULT_GROW_SIZE); + + next_character: + if (character == '\n' && SHOULD_PROMPT ()) + prompt_again (); + + /* We want to remove quoted newlines (that is, a \ pair) + unless we are within single quotes or pass_next_character is + set (the shell equivalent of literal-next). */ + cd = current_delimiter (dstack); + character = shell_getc (cd != '\'' && pass_next_character == 0); + } /* end for (;;) */ + +got_token: + + token[token_index] = '\0'; + + /* Check to see what thing we should return. If the last_read_token + is a `<', or a `&', or the character which ended this token is + a '>' or '<', then, and ONLY then, is this input token a NUMBER. + Otherwise, it is just a word, and should be returned as such. */ + if MBTEST(all_digit_token && (character == '<' || character == '>' || \ + last_read_token == LESS_AND || \ + last_read_token == GREATER_AND)) + { + if (legal_number (token, &lvalue) && (int)lvalue == lvalue) + yylval.number = lvalue; + else + yylval.number = -1; + return (NUMBER); + } + + /* Check for special case tokens. */ + result = (last_shell_getc_is_singlebyte) ? special_case_tokens (token) : -1; + if (result >= 0) + return result; + +#if defined (ALIAS) + /* Posix.2 does not allow reserved words to be aliased, so check for all + of them, including special cases, before expanding the current token + as an alias. */ + if MBTEST(posixly_correct) + CHECK_FOR_RESERVED_WORD (token); + + /* Aliases are expanded iff EXPAND_ALIASES is non-zero, and quoting + inhibits alias expansion. */ + if (expand_aliases && quoted == 0) + { + result = alias_expand_token (token); + if (result == RE_READ_TOKEN) + return (RE_READ_TOKEN); + else if (result == NO_EXPANSION) + parser_state &= ~PST_ALEXPNEXT; + } + + /* If not in Posix.2 mode, check for reserved words after alias + expansion. */ + if MBTEST(posixly_correct == 0) +#endif + CHECK_FOR_RESERVED_WORD (token); + + the_word = (WORD_DESC *)xmalloc (sizeof (WORD_DESC)); + the_word->word = (char *)xmalloc (1 + token_index); + the_word->flags = 0; + strcpy (the_word->word, token); + if (dollar_present) + the_word->flags |= W_HASDOLLAR; + if (quoted) + the_word->flags |= W_QUOTED; /*(*/ + if (compound_assignment && token[token_index-1] == ')') + the_word->flags |= W_COMPASSIGN; + /* A word is an assignment if it appears at the beginning of a + simple command, or after another assignment word. This is + context-dependent, so it cannot be handled in the grammar. */ + if (assignment (token, (parser_state & PST_COMPASSIGN) != 0)) + { + the_word->flags |= W_ASSIGNMENT; + /* Don't perform word splitting on assignment statements. */ + if (assignment_acceptable (last_read_token) || (parser_state & PST_COMPASSIGN) != 0) + the_word->flags |= W_NOSPLIT; + } + + if (command_token_position (last_read_token)) + { + struct builtin *b; + b = builtin_address_internal (token, 0); + if (b && (b->flags & ASSIGNMENT_BUILTIN)) + parser_state |= PST_ASSIGNOK; + else if (STREQ (token, "eval") || STREQ (token, "let")) + parser_state |= PST_ASSIGNOK; + } + + yylval.word = the_word; + + result = ((the_word->flags & (W_ASSIGNMENT|W_NOSPLIT)) == (W_ASSIGNMENT|W_NOSPLIT)) + ? ASSIGNMENT_WORD : WORD; + + switch (last_read_token) + { + case FUNCTION: + parser_state |= PST_ALLOWOPNBRC; + function_dstart = line_number; + break; + case CASE: + case SELECT: + case FOR: + if (word_top < MAX_CASE_NEST) + word_top++; + word_lineno[word_top] = line_number; + break; + } + + return (result); +} + +/* Return 1 if TOKSYM is a token that after being read would allow + a reserved word to be seen, else 0. */ +static int +reserved_word_acceptable (toksym) + int toksym; +{ + switch (toksym) + { + case '\n': + case ';': + case '(': + case ')': + case '|': + case '&': + case '{': + case '}': /* XXX */ + case AND_AND: + case BANG: + case DO: + case DONE: + case ELIF: + case ELSE: + case ESAC: + case FI: + case IF: + case OR_OR: + case SEMI_SEMI: + case SEMI_AND: + case SEMI_SEMI_AND: + case THEN: + case TIME: + case TIMEOPT: + case UNTIL: + case WHILE: + case 0: + return 1; + default: + return 0; + } +} + +/* Return the index of TOKEN in the alist of reserved words, or -1 if + TOKEN is not a shell reserved word. */ +int +find_reserved_word (tokstr) + char *tokstr; +{ + int i; + for (i = 0; word_token_alist[i].word; i++) + if (STREQ (tokstr, word_token_alist[i].word)) + return i; + return -1; +} + +#if 0 +#if defined (READLINE) +/* Called after each time readline is called. This insures that whatever + the new prompt string is gets propagated to readline's local prompt + variable. */ +static void +reset_readline_prompt () +{ + char *temp_prompt; + + if (prompt_string_pointer) + { + temp_prompt = (*prompt_string_pointer) + ? decode_prompt_string (*prompt_string_pointer) + : (char *)NULL; + + if (temp_prompt == 0) + { + temp_prompt = (char *)xmalloc (1); + temp_prompt[0] = '\0'; + } + + FREE (current_readline_prompt); + current_readline_prompt = temp_prompt; + } +} +#endif /* READLINE */ +#endif /* 0 */ + +#if defined (HISTORY) +/* A list of tokens which can be followed by newlines, but not by + semi-colons. When concatenating multiple lines of history, the + newline separator for such tokens is replaced with a space. */ +static const int no_semi_successors[] = { + '\n', '{', '(', ')', ';', '&', '|', + CASE, DO, ELSE, IF, SEMI_SEMI, SEMI_AND, SEMI_SEMI_AND, THEN, UNTIL, + WHILE, AND_AND, OR_OR, IN, + 0 +}; + +/* If we are not within a delimited expression, try to be smart + about which separators can be semi-colons and which must be + newlines. Returns the string that should be added into the + history entry. */ +char * +history_delimiting_chars () +{ + register int i; + + if (dstack.delimiter_depth != 0) + return ("\n"); + + /* First, handle some special cases. */ + /*(*/ + /* If we just read `()', assume it's a function definition, and don't + add a semicolon. If the token before the `)' was not `(', and we're + not in the midst of parsing a case statement, assume it's a + parenthesized command and add the semicolon. */ + /*)(*/ + if (token_before_that == ')') + { + if (two_tokens_ago == '(') /*)*/ /* function def */ + return " "; + /* This does not work for subshells inside case statement + command lists. It's a suboptimal solution. */ + else if (parser_state & PST_CASESTMT) /* case statement pattern */ + return " "; + else + return "; "; /* (...) subshell */ + } + else if (token_before_that == WORD && two_tokens_ago == FUNCTION) + return " "; /* function def using `function name' without `()' */ + + else if (token_before_that == WORD && two_tokens_ago == FOR) + { + /* Tricky. `for i\nin ...' should not have a semicolon, but + `for i\ndo ...' should. We do what we can. */ + for (i = shell_input_line_index; whitespace(shell_input_line[i]); i++) + ; + if (shell_input_line[i] && shell_input_line[i] == 'i' && shell_input_line[i+1] == 'n') + return " "; + return ";"; + } + else if (two_tokens_ago == CASE && token_before_that == WORD && (parser_state & PST_CASESTMT)) + return " "; + + for (i = 0; no_semi_successors[i]; i++) + { + if (token_before_that == no_semi_successors[i]) + return (" "); + } + + return ("; "); +} +#endif /* HISTORY */ + +/* Issue a prompt, or prepare to issue a prompt when the next character + is read. */ +static void +prompt_again () +{ + char *temp_prompt; + + if (interactive == 0 || expanding_alias()) /* XXX */ + return; + + ps1_prompt = get_string_value ("PS1"); + ps2_prompt = get_string_value ("PS2"); + + if (!prompt_string_pointer) + prompt_string_pointer = &ps1_prompt; + + temp_prompt = *prompt_string_pointer + ? decode_prompt_string (*prompt_string_pointer) + : (char *)NULL; + + if (temp_prompt == 0) + { + temp_prompt = (char *)xmalloc (1); + temp_prompt[0] = '\0'; + } + + current_prompt_string = *prompt_string_pointer; + prompt_string_pointer = &ps2_prompt; + +#if defined (READLINE) + if (!no_line_editing) + { + FREE (current_readline_prompt); + current_readline_prompt = temp_prompt; + } + else +#endif /* READLINE */ + { + FREE (current_decoded_prompt); + current_decoded_prompt = temp_prompt; + } +} + +int +get_current_prompt_level () +{ + return ((current_prompt_string && current_prompt_string == ps2_prompt) ? 2 : 1); +} + +void +set_current_prompt_level (x) + int x; +{ + prompt_string_pointer = (x == 2) ? &ps2_prompt : &ps1_prompt; + current_prompt_string = *prompt_string_pointer; +} + +static void +print_prompt () +{ + fprintf (stderr, "%s", current_decoded_prompt); + fflush (stderr); +} + +/* Return a string which will be printed as a prompt. The string + may contain special characters which are decoded as follows: + + \a bell (ascii 07) + \d the date in Day Mon Date format + \e escape (ascii 033) + \h the hostname up to the first `.' + \H the hostname + \j the number of active jobs + \l the basename of the shell's tty device name + \n CRLF + \r CR + \s the name of the shell + \t the time in 24-hour hh:mm:ss format + \T the time in 12-hour hh:mm:ss format + \@ the time in 12-hour hh:mm am/pm format + \A the time in 24-hour hh:mm format + \D{fmt} the result of passing FMT to strftime(3) + \u your username + \v the version of bash (e.g., 2.00) + \V the release of bash, version + patchlevel (e.g., 2.00.0) + \w the current working directory + \W the last element of $PWD + \! the history number of this command + \# the command number of this command + \$ a $ or a # if you are root + \nnn character code nnn in octal + \\ a backslash + \[ begin a sequence of non-printing chars + \] end a sequence of non-printing chars +*/ +#define PROMPT_GROWTH 48 +char * +decode_prompt_string (string) + char *string; +{ + WORD_LIST *list; + char *result, *t; + struct dstack save_dstack; + int last_exit_value; +#if defined (PROMPT_STRING_DECODE) + int result_size, result_index; + int c, n, i; + char *temp, octal_string[4]; + struct tm *tm; + time_t the_time; + char timebuf[128]; + char *timefmt; + + result = (char *)xmalloc (result_size = PROMPT_GROWTH); + result[result_index = 0] = 0; + temp = (char *)NULL; + + while (c = *string++) + { + if (posixly_correct && c == '!') + { + if (*string == '!') + { + temp = savestring ("!"); + goto add_string; + } + else + { +#if !defined (HISTORY) + temp = savestring ("1"); +#else /* HISTORY */ + temp = itos (history_number ()); +#endif /* HISTORY */ + string--; /* add_string increments string again. */ + goto add_string; + } + } + if (c == '\\') + { + c = *string; + + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + strncpy (octal_string, string, 3); + octal_string[3] = '\0'; + + n = read_octal (octal_string); + temp = (char *)xmalloc (3); + + if (n == CTLESC || n == CTLNUL) + { + temp[0] = CTLESC; + temp[1] = n; + temp[2] = '\0'; + } + else if (n == -1) + { + temp[0] = '\\'; + temp[1] = '\0'; + } + else + { + temp[0] = n; + temp[1] = '\0'; + } + + for (c = 0; n != -1 && c < 3 && ISOCTAL (*string); c++) + string++; + + c = 0; /* tested at add_string: */ + goto add_string; + + case 'd': + case 't': + case 'T': + case '@': + case 'A': + /* Make the current time/date into a string. */ + (void) time (&the_time); + tm = localtime (&the_time); + + if (c == 'd') + n = strftime (timebuf, sizeof (timebuf), "%a %b %d", tm); + else if (c == 't') + n = strftime (timebuf, sizeof (timebuf), "%H:%M:%S", tm); + else if (c == 'T') + n = strftime (timebuf, sizeof (timebuf), "%I:%M:%S", tm); + else if (c == '@') + n = strftime (timebuf, sizeof (timebuf), "%I:%M %p", tm); + else if (c == 'A') + n = strftime (timebuf, sizeof (timebuf), "%H:%M", tm); + + if (n == 0) + timebuf[0] = '\0'; + else + timebuf[sizeof(timebuf) - 1] = '\0'; + + temp = savestring (timebuf); + goto add_string; + + case 'D': /* strftime format */ + if (string[1] != '{') /* } */ + goto not_escape; + + (void) time (&the_time); + tm = localtime (&the_time); + string += 2; /* skip { */ + timefmt = xmalloc (strlen (string) + 3); + for (t = timefmt; *string && *string != '}'; ) + *t++ = *string++; + *t = '\0'; + c = *string; /* tested at add_string */ + if (timefmt[0] == '\0') + { + timefmt[0] = '%'; + timefmt[1] = 'X'; /* locale-specific current time */ + timefmt[2] = '\0'; + } + n = strftime (timebuf, sizeof (timebuf), timefmt, tm); + free (timefmt); + + if (n == 0) + timebuf[0] = '\0'; + else + timebuf[sizeof(timebuf) - 1] = '\0'; + + if (promptvars || posixly_correct) + /* Make sure that expand_prompt_string is called with a + second argument of Q_DOUBLE_QUOTES if we use this + function here. */ + temp = sh_backslash_quote_for_double_quotes (timebuf); + else + temp = savestring (timebuf); + goto add_string; + + case 'n': + temp = (char *)xmalloc (3); + temp[0] = no_line_editing ? '\n' : '\r'; + temp[1] = no_line_editing ? '\0' : '\n'; + temp[2] = '\0'; + goto add_string; + + case 's': + temp = base_pathname (shell_name); + temp = savestring (temp); + goto add_string; + + case 'v': + case 'V': + temp = (char *)xmalloc (16); + if (c == 'v') + strcpy (temp, dist_version); + else + sprintf (temp, "%s.%d", dist_version, patch_level); + goto add_string; + + case 'w': + case 'W': + { + /* Use the value of PWD because it is much more efficient. */ + char t_string[PATH_MAX]; + int tlen; + + temp = get_string_value ("PWD"); + + if (temp == 0) + { + if (getcwd (t_string, sizeof(t_string)) == 0) + { + t_string[0] = '.'; + tlen = 1; + } + else + tlen = strlen (t_string); + } + else + { + tlen = sizeof (t_string) - 1; + strncpy (t_string, temp, tlen); + } + t_string[tlen] = '\0'; + +#define ROOT_PATH(x) ((x)[0] == '/' && (x)[1] == 0) +#define DOUBLE_SLASH_ROOT(x) ((x)[0] == '/' && (x)[1] == '/' && (x)[2] == 0) + /* Abbreviate \W as ~ if $PWD == $HOME */ + if (c == 'W' && (((t = get_string_value ("HOME")) == 0) || STREQ (t, t_string) == 0)) + { + if (ROOT_PATH (t_string) == 0 && DOUBLE_SLASH_ROOT (t_string) == 0) + { + t = strrchr (t_string, '/'); + if (t) + strcpy (t_string, t + 1); + } + } +#undef ROOT_PATH +#undef DOUBLE_SLASH_ROOT + else + /* polite_directory_format is guaranteed to return a string + no longer than PATH_MAX - 1 characters. */ + strcpy (t_string, polite_directory_format (t_string)); + + /* If we're going to be expanding the prompt string later, + quote the directory name. */ + if (promptvars || posixly_correct) + /* Make sure that expand_prompt_string is called with a + second argument of Q_DOUBLE_QUOTES if we use this + function here. */ + temp = sh_backslash_quote_for_double_quotes (t_string); + else + temp = savestring (t_string); + + goto add_string; + } + + case 'u': + if (current_user.user_name == 0) + get_current_user_info (); + temp = savestring (current_user.user_name); + goto add_string; + + case 'h': + case 'H': + temp = savestring (current_host_name); + if (c == 'h' && (t = (char *)strchr (temp, '.'))) + *t = '\0'; + goto add_string; + + case '#': + temp = itos (current_command_number); + goto add_string; + + case '!': +#if !defined (HISTORY) + temp = savestring ("1"); +#else /* HISTORY */ + temp = itos (history_number ()); +#endif /* HISTORY */ + goto add_string; + + case '$': + t = temp = (char *)xmalloc (3); + if ((promptvars || posixly_correct) && (current_user.euid != 0)) + *t++ = '\\'; + *t++ = current_user.euid == 0 ? '#' : '$'; + *t = '\0'; + goto add_string; + + case 'j': + temp = itos (count_all_jobs ()); + goto add_string; + + case 'l': +#if defined (HAVE_TTYNAME) + temp = (char *)ttyname (fileno (stdin)); + t = temp ? base_pathname (temp) : "tty"; + temp = savestring (t); +#else + temp = savestring ("tty"); +#endif /* !HAVE_TTYNAME */ + goto add_string; + +#if defined (READLINE) + case '[': + case ']': + if (no_line_editing) + { + string++; + break; + } + temp = (char *)xmalloc (3); + n = (c == '[') ? RL_PROMPT_START_IGNORE : RL_PROMPT_END_IGNORE; + i = 0; + if (n == CTLESC || n == CTLNUL) + temp[i++] = CTLESC; + temp[i++] = n; + temp[i] = '\0'; + goto add_string; +#endif /* READLINE */ + + case '\\': + case 'a': + case 'e': + case 'r': + temp = (char *)xmalloc (2); + if (c == 'a') + temp[0] = '\07'; + else if (c == 'e') + temp[0] = '\033'; + else if (c == 'r') + temp[0] = '\r'; + else /* (c == '\\') */ + temp[0] = c; + temp[1] = '\0'; + goto add_string; + + default: +not_escape: + temp = (char *)xmalloc (3); + temp[0] = '\\'; + temp[1] = c; + temp[2] = '\0'; + + add_string: + if (c) + string++; + result = + sub_append_string (temp, result, &result_index, &result_size); + temp = (char *)NULL; /* Freed in sub_append_string (). */ + result[result_index] = '\0'; + break; + } + } + else + { + RESIZE_MALLOCED_BUFFER (result, result_index, 3, result_size, PROMPT_GROWTH); + result[result_index++] = c; + result[result_index] = '\0'; + } + } +#else /* !PROMPT_STRING_DECODE */ + result = savestring (string); +#endif /* !PROMPT_STRING_DECODE */ + + /* Save the delimiter stack and point `dstack' to temp space so any + command substitutions in the prompt string won't result in screwing + up the parser's quoting state. */ + save_dstack = dstack; + dstack = temp_dstack; + dstack.delimiter_depth = 0; + + /* Perform variable and parameter expansion and command substitution on + the prompt string. */ + if (promptvars || posixly_correct) + { + last_exit_value = last_command_exit_value; + list = expand_prompt_string (result, Q_DOUBLE_QUOTES, 0); + free (result); + result = string_list (list); + dispose_words (list); + last_command_exit_value = last_exit_value; + } + else + { + t = dequote_string (result); + free (result); + result = t; + } + + dstack = save_dstack; + + return (result); +} + +/************************************************ + * * + * ERROR HANDLING * + * * + ************************************************/ + +/* Report a syntax error, and restart the parser. Call here for fatal + errors. */ +int +yyerror (msg) + const char *msg; +{ + report_syntax_error ((char *)NULL); + reset_parser (); + return (0); +} + +static char * +error_token_from_token (tok) + int tok; +{ + char *t; + + if (t = find_token_in_alist (tok, word_token_alist, 0)) + return t; + + if (t = find_token_in_alist (tok, other_token_alist, 0)) + return t; + + t = (char *)NULL; + /* This stuff is dicy and needs closer inspection */ + switch (current_token) + { + case WORD: + case ASSIGNMENT_WORD: + if (yylval.word) + t = savestring (yylval.word->word); + break; + case NUMBER: + t = itos (yylval.number); + break; + case ARITH_CMD: + if (yylval.word_list) + t = string_list (yylval.word_list); + break; + case ARITH_FOR_EXPRS: + if (yylval.word_list) + t = string_list_internal (yylval.word_list, " ; "); + break; + case COND_CMD: + t = (char *)NULL; /* punt */ + break; + } + + return t; +} + +static char * +error_token_from_text () +{ + char *msg, *t; + int token_end, i; + + t = shell_input_line; + i = shell_input_line_index; + token_end = 0; + msg = (char *)NULL; + + if (i && t[i] == '\0') + i--; + + while (i && (whitespace (t[i]) || t[i] == '\n')) + i--; + + if (i) + token_end = i + 1; + + while (i && (member (t[i], " \n\t;|&") == 0)) + i--; + + while (i != token_end && (whitespace (t[i]) || t[i] == '\n')) + i++; + + /* Return our idea of the offending token. */ + if (token_end || (i == 0 && token_end == 0)) + { + if (token_end) + msg = substring (t, i, token_end); + else /* one-character token */ + { + msg = (char *)xmalloc (2); + msg[0] = t[i]; + msg[1] = '\0'; + } + } + + return (msg); +} + +static void +print_offending_line () +{ + char *msg; + int token_end; + + msg = savestring (shell_input_line); + token_end = strlen (msg); + while (token_end && msg[token_end - 1] == '\n') + msg[--token_end] = '\0'; + + parser_error (line_number, "`%s'", msg); + free (msg); +} + +/* Report a syntax error with line numbers, etc. + Call here for recoverable errors. If you have a message to print, + then place it in MESSAGE, otherwise pass NULL and this will figure + out an appropriate message for you. */ +static void +report_syntax_error (message) + char *message; +{ + char *msg; + + if (message) + { + parser_error (line_number, "%s", message); + if (interactive && EOF_Reached) + EOF_Reached = 0; + last_command_exit_value = EX_USAGE; + return; + } + + /* If the line of input we're reading is not null, try to find the + objectionable token. First, try to figure out what token the + parser's complaining about by looking at current_token. */ + if (current_token != 0 && EOF_Reached == 0 && (msg = error_token_from_token (current_token))) + { + parser_error (line_number, _("syntax error near unexpected token `%s'"), msg); + free (msg); + + if (interactive == 0) + print_offending_line (); + + last_command_exit_value = EX_USAGE; + return; + } + + /* If looking at the current token doesn't prove fruitful, try to find the + offending token by analyzing the text of the input line near the current + input line index and report what we find. */ + if (shell_input_line && *shell_input_line) + { + msg = error_token_from_text (); + if (msg) + { + parser_error (line_number, _("syntax error near `%s'"), msg); + free (msg); + } + + /* If not interactive, print the line containing the error. */ + if (interactive == 0) + print_offending_line (); + } + else + { + msg = EOF_Reached ? _("syntax error: unexpected end of file") : _("syntax error"); + parser_error (line_number, "%s", msg); + /* When the shell is interactive, this file uses EOF_Reached + only for error reporting. Other mechanisms are used to + decide whether or not to exit. */ + if (interactive && EOF_Reached) + EOF_Reached = 0; + } + + last_command_exit_value = EX_USAGE; +} + +/* ??? Needed function. ??? We have to be able to discard the constructs + created during parsing. In the case of error, we want to return + allocated objects to the memory pool. In the case of no error, we want + to throw away the information about where the allocated objects live. + (dispose_command () will actually free the command.) */ +static void +discard_parser_constructs (error_p) + int error_p; +{ +} + +/************************************************ + * * + * EOF HANDLING * + * * + ************************************************/ + +/* Do that silly `type "bye" to exit' stuff. You know, "ignoreeof". */ + +/* A flag denoting whether or not ignoreeof is set. */ +int ignoreeof = 0; + +/* The number of times that we have encountered an EOF character without + another character intervening. When this gets above the limit, the + shell terminates. */ +int eof_encountered = 0; + +/* The limit for eof_encountered. */ +int eof_encountered_limit = 10; + +/* If we have EOF as the only input unit, this user wants to leave + the shell. If the shell is not interactive, then just leave. + Otherwise, if ignoreeof is set, and we haven't done this the + required number of times in a row, print a message. */ +static void +handle_eof_input_unit () +{ + if (interactive) + { + /* shell.c may use this to decide whether or not to write out the + history, among other things. We use it only for error reporting + in this file. */ + if (EOF_Reached) + EOF_Reached = 0; + + /* If the user wants to "ignore" eof, then let her do so, kind of. */ + if (ignoreeof) + { + if (eof_encountered < eof_encountered_limit) + { + fprintf (stderr, _("Use \"%s\" to leave the shell.\n"), + login_shell ? "logout" : "exit"); + eof_encountered++; + /* Reset the parsing state. */ + last_read_token = current_token = '\n'; + /* Reset the prompt string to be $PS1. */ + prompt_string_pointer = (char **)NULL; + prompt_again (); + return; + } + } + + /* In this case EOF should exit the shell. Do it now. */ + reset_parser (); + exit_builtin ((WORD_LIST *)NULL); + } + else + { + /* We don't write history files, etc., for non-interactive shells. */ + EOF_Reached = 1; + } +} + +/************************************************ + * * + * STRING PARSING FUNCTIONS * + * * + ************************************************/ + +/* It's very important that these two functions treat the characters + between ( and ) identically. */ + +static WORD_LIST parse_string_error; + +/* Take a string and run it through the shell parser, returning the + resultant word list. Used by compound array assignment. */ +WORD_LIST * +parse_string_to_word_list (s, flags, whom) + char *s; + int flags; + const char *whom; +{ + WORD_LIST *wl; + int tok, orig_current_token, orig_line_number, orig_input_terminator; + int orig_line_count; + int old_echo_input, old_expand_aliases; +#if defined (HISTORY) + int old_remember_on_history, old_history_expansion_inhibited; +#endif + +#if defined (HISTORY) + old_remember_on_history = remember_on_history; +# if defined (BANG_HISTORY) + old_history_expansion_inhibited = history_expansion_inhibited; +# endif + bash_history_disable (); +#endif + + orig_line_number = line_number; + orig_line_count = current_command_line_count; + orig_input_terminator = shell_input_line_terminator; + old_echo_input = echo_input_at_read; + old_expand_aliases = expand_aliases; + + push_stream (1); + last_read_token = WORD; /* WORD to allow reserved words here */ + current_command_line_count = 0; + echo_input_at_read = expand_aliases = 0; + + with_input_from_string (s, whom); + wl = (WORD_LIST *)NULL; + + if (flags & 1) + parser_state |= PST_COMPASSIGN; + + while ((tok = read_token (READ)) != yacc_EOF) + { + if (tok == '\n' && *bash_input.location.string == '\0') + break; + if (tok == '\n') /* Allow newlines in compound assignments */ + continue; + if (tok != WORD && tok != ASSIGNMENT_WORD) + { + line_number = orig_line_number + line_number - 1; + orig_current_token = current_token; + current_token = tok; + yyerror (NULL); /* does the right thing */ + current_token = orig_current_token; + if (wl) + dispose_words (wl); + wl = &parse_string_error; + break; + } + wl = make_word_list (yylval.word, wl); + } + + last_read_token = '\n'; + pop_stream (); + +#if defined (HISTORY) + remember_on_history = old_remember_on_history; +# if defined (BANG_HISTORY) + history_expansion_inhibited = old_history_expansion_inhibited; +# endif /* BANG_HISTORY */ +#endif /* HISTORY */ + + echo_input_at_read = old_echo_input; + expand_aliases = old_expand_aliases; + + current_command_line_count = orig_line_count; + shell_input_line_terminator = orig_input_terminator; + + if (flags & 1) + parser_state &= ~PST_COMPASSIGN; + + if (wl == &parse_string_error) + { + last_command_exit_value = EXECUTION_FAILURE; + if (interactive_shell == 0 && posixly_correct) + jump_to_top_level (FORCE_EOF); + else + jump_to_top_level (DISCARD); + } + + return (REVERSE_LIST (wl, WORD_LIST *)); +} + +static char * +parse_compound_assignment (retlenp) + int *retlenp; +{ + WORD_LIST *wl, *rl; + int tok, orig_line_number, orig_token_size, orig_last_token, assignok; + char *saved_token, *ret; + + saved_token = token; + orig_token_size = token_buffer_size; + orig_line_number = line_number; + orig_last_token = last_read_token; + + last_read_token = WORD; /* WORD to allow reserved words here */ + + token = (char *)NULL; + token_buffer_size = 0; + + assignok = parser_state&PST_ASSIGNOK; /* XXX */ + + wl = (WORD_LIST *)NULL; /* ( */ + parser_state |= PST_COMPASSIGN; + + while ((tok = read_token (READ)) != ')') + { + if (tok == '\n') /* Allow newlines in compound assignments */ + { + if (SHOULD_PROMPT ()) + prompt_again (); + continue; + } + if (tok != WORD && tok != ASSIGNMENT_WORD) + { + current_token = tok; /* for error reporting */ + if (tok == yacc_EOF) /* ( */ + parser_error (orig_line_number, _("unexpected EOF while looking for matching `)'")); + else + yyerror(NULL); /* does the right thing */ + if (wl) + dispose_words (wl); + wl = &parse_string_error; + break; + } + wl = make_word_list (yylval.word, wl); + } + + FREE (token); + token = saved_token; + token_buffer_size = orig_token_size; + + parser_state &= ~PST_COMPASSIGN; + + if (wl == &parse_string_error) + { + last_command_exit_value = EXECUTION_FAILURE; + last_read_token = '\n'; /* XXX */ + if (interactive_shell == 0 && posixly_correct) + jump_to_top_level (FORCE_EOF); + else + jump_to_top_level (DISCARD); + } + + last_read_token = orig_last_token; /* XXX - was WORD? */ + + if (wl) + { + rl = REVERSE_LIST (wl, WORD_LIST *); + ret = string_list (rl); + dispose_words (rl); + } + else + ret = (char *)NULL; + + if (retlenp) + *retlenp = (ret && *ret) ? strlen (ret) : 0; + + if (assignok) + parser_state |= PST_ASSIGNOK; + + return ret; +} + +/************************************************ + * * + * SAVING AND RESTORING PARTIAL PARSE STATE * + * * + ************************************************/ + +sh_parser_state_t * +save_parser_state (ps) + sh_parser_state_t *ps; +{ +#if defined (ARRAY_VARS) + SHELL_VAR *v; +#endif + + if (ps == 0) + ps = (sh_parser_state_t *)xmalloc (sizeof (sh_parser_state_t)); + if (ps == 0) + return ((sh_parser_state_t *)NULL); + + ps->parser_state = parser_state; + ps->token_state = save_token_state (); + + ps->input_line_terminator = shell_input_line_terminator; + ps->eof_encountered = eof_encountered; + + ps->current_command_line_count = current_command_line_count; + +#if defined (HISTORY) + ps->remember_on_history = remember_on_history; +# if defined (BANG_HISTORY) + ps->history_expansion_inhibited = history_expansion_inhibited; +# endif +#endif + + ps->last_command_exit_value = last_command_exit_value; +#if defined (ARRAY_VARS) + v = find_variable ("PIPESTATUS"); + if (v && array_p (v) && array_cell (v)) + ps->pipestatus = array_copy (array_cell (v)); + else + ps->pipestatus = (ARRAY *)NULL; +#endif + + ps->last_shell_builtin = last_shell_builtin; + ps->this_shell_builtin = this_shell_builtin; + + ps->expand_aliases = expand_aliases; + ps->echo_input_at_read = echo_input_at_read; + + return (ps); +} + +void +restore_parser_state (ps) + sh_parser_state_t *ps; +{ +#if defined (ARRAY_VARS) + SHELL_VAR *v; +#endif + + if (ps == 0) + return; + + parser_state = ps->parser_state; + if (ps->token_state) + { + restore_token_state (ps->token_state); + free (ps->token_state); + } + + shell_input_line_terminator = ps->input_line_terminator; + eof_encountered = ps->eof_encountered; + + current_command_line_count = ps->current_command_line_count; + +#if defined (HISTORY) + remember_on_history = ps->remember_on_history; +# if defined (BANG_HISTORY) + history_expansion_inhibited = ps->history_expansion_inhibited; +# endif +#endif + + last_command_exit_value = ps->last_command_exit_value; +#if defined (ARRAY_VARS) + v = find_variable ("PIPESTATUS"); + if (v && array_p (v) && array_cell (v)) + { + array_dispose (array_cell (v)); + var_setarray (v, ps->pipestatus); + } +#endif + + last_shell_builtin = ps->last_shell_builtin; + this_shell_builtin = ps->this_shell_builtin; + + expand_aliases = ps->expand_aliases; + echo_input_at_read = ps->echo_input_at_read; +} + +/************************************************ + * * + * MULTIBYTE CHARACTER HANDLING * + * * + ************************************************/ + +#if defined (HANDLE_MULTIBYTE) +static void +set_line_mbstate () +{ + int i, previ, len, c; + mbstate_t mbs, prevs; + size_t mbclen; + + if (shell_input_line == NULL) + return; + len = strlen (shell_input_line); /* XXX - shell_input_line_len ? */ + FREE (shell_input_line_property); + shell_input_line_property = (char *)xmalloc (len + 1); + + memset (&prevs, '\0', sizeof (mbstate_t)); + for (i = previ = 0; i < len; i++) + { + mbs = prevs; + + c = shell_input_line[i]; + if (c == EOF) + { + int j; + for (j = i; j < len; j++) + shell_input_line_property[j] = 1; + break; + } + + mbclen = mbrlen (shell_input_line + previ, i - previ + 1, &mbs); + if (mbclen == 1 || mbclen == (size_t)-1) + { + mbclen = 1; + previ = i + 1; + } + else if (mbclen == (size_t)-2) + mbclen = 0; + else if (mbclen > 1) + { + mbclen = 0; + previ = i + 1; + prevs = mbs; + } + else + { + /* XXX - what to do if mbrlen returns 0? (null wide character) */ + int j; + for (j = i; j < len; j++) + shell_input_line_property[j] = 1; + break; + } + + shell_input_line_property[i] = mbclen; + } +} +#endif /* HANDLE_MULTIBYTE */ diff --git a/parse.y~ b/parse.y~ index 3bc2863bb..0d33de538 100644 --- a/parse.y~ +++ b/parse.y~ @@ -148,6 +148,7 @@ static int yy_readline_unget __P((int)); static int yy_string_get __P((void)); static int yy_string_unget __P((int)); +static void rewind_input_string __P((void)); static int yy_stream_get __P((void)); static int yy_stream_unget __P((int)); @@ -170,6 +171,7 @@ static int time_command_acceptable __P((void)); static int special_case_tokens __P((char *)); static int read_token __P((int)); static char *parse_matched_pair __P((int, int, int, int *, int)); +static char *parse_comsub __P((int, int, int, int *, int)); #if defined (ARRAY_VARS) static char *parse_compound_assignment __P((int *)); #endif @@ -1345,6 +1347,31 @@ with_input_from_string (string, name) init_yy_io (yy_string_get, yy_string_unget, st_string, name, location); } +/* Count the number of characters we've consumed from bash_input.location.string + and read into shell_input_line, but have not returned from shell_getc. + That is the true input location. Rewind bash_input.location.string by + that number of characters, so it points to the last character actually + consumed by the parser. */ +void +rewind_input_string () +{ + int xchars; + + /* number of unconsumed characters in the input -- XXX need to take newlines + into account, e.g., $(...\n) */ + xchars = shell_input_line_len - shell_input_line_index; + + /* XXX - how to reflect bash_input.location.string back to string passed to + parse_and_execute or xparse_dolparen? xparse_dolparen needs to know how + far into the string we parsed. parse_and_execute knows where bash_input. + location.string is, and how far from orig_string that is -- that's the + number of characters the command consumed. */ + + /* bash_input.location.string - xchars should be where we parsed to */ + /* need to do more validation on xchars value for sanity -- test cases. */ + bash_input.location.string -= xchars; +} + /* **************************************************************** */ /* */ /* Let input come from STREAM. */ @@ -2787,7 +2814,7 @@ tokword: #define LEX_HEREDELIM 0x100 /* reading here-doc delimiter */ #define LEX_STRIPDOC 0x200 /* <<- strip tabs from here doc delim */ -#define COMSUB_META(ch) ((ch) == ';' || (ch) == '&' || (ch) = '|') +#define COMSUB_META(ch) ((ch) == ';' || (ch) == '&' || (ch) == '|') #define CHECK_NESTRET_ERROR() \ do { \ @@ -2816,15 +2843,17 @@ parse_matched_pair (qc, open, close, lenp, flags) int open, close; int *lenp, flags; { - int count, ch, was_dollar, in_comment, check_comment; - int pass_next_character, backq_backslash, nestlen, ttranslen, start_lineno; + int count, ch, tflags; + int nestlen, ttranslen, start_lineno; char *ret, *nestret, *ttrans; int retind, retsize, rflags; /* itrace("parse_matched_pair: open = %c close = %c", open, close); */ count = 1; - pass_next_character = backq_backslash = was_dollar = in_comment = 0; - check_comment = (flags & P_COMMAND) && qc != '`' && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0; + tflags = 0; + + if ((flags & P_COMMAND) && qc != '`' && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0) + tflags |= LEX_CKCOMMENT; /* RFLAGS is the set of flags we want to pass to recursive calls. */ rflags = (qc == '"') ? P_DQUOTE : (flags & P_DQUOTE); @@ -2835,7 +2864,7 @@ parse_matched_pair (qc, open, close, lenp, flags) start_lineno = line_number; while (count) { - ch = shell_getc (qc != '\'' && pass_next_character == 0 && backq_backslash == 0); + ch = shell_getc (qc != '\'' && (tflags & LEX_PASSNEXT) == 0); if (ch == EOF) { @@ -2849,36 +2878,33 @@ parse_matched_pair (qc, open, close, lenp, flags) if (ch == '\n' && SHOULD_PROMPT ()) prompt_again (); - if (in_comment) + /* Don't bother counting parens or doing anything else if in a comment + or part of a case statement */ + if (tflags & LEX_INCOMMENT) { /* Add this character. */ RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); ret[retind++] = ch; if (ch == '\n') - in_comment = 0; + tflags &= ~LEX_INCOMMENT; continue; } + /* Not exactly right yet, should handle shell metacharacters, too. If any changes are made to this test, make analogous changes to subst.c: extract_delimited_string(). */ - else if MBTEST(check_comment && in_comment == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || whitespace (ret[retind - 1]))) - in_comment = 1; - - /* last char was backslash inside backquoted command substitution */ - if (backq_backslash) - { - backq_backslash = 0; - /* Placeholder for adding special characters */ - } + else if MBTEST((tflags & LEX_CKCOMMENT) && (tflags & LEX_INCOMMENT) == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || whitespace (ret[retind - 1]))) + tflags |= LEX_INCOMMENT; - if (pass_next_character) /* last char was backslash */ + if (tflags & LEX_PASSNEXT) /* last char was backslash */ { - pass_next_character = 0; + tflags &= ~LEX_PASSNEXT; if (qc != '\'' && ch == '\n') /* double-quoted \ disappears. */ { - if (retind > 0) retind--; /* swallow previously-added backslash */ + if (retind > 0) + retind--; /* swallow previously-added backslash */ continue; } @@ -2898,7 +2924,7 @@ parse_matched_pair (qc, open, close, lenp, flags) else if MBTEST(ch == close) /* ending delimiter */ count--; /* handle nested ${...} specially. */ - else if MBTEST(open != close && was_dollar && open == '{' && ch == open) /* } */ + else if MBTEST(open != close && (tflags & LEX_WASDOL) && open == '{' && ch == open) /* } */ count++; else if MBTEST(((flags & P_FIRSTCLOSE) == 0) && ch == open) /* nested begin */ count++; @@ -2907,37 +2933,36 @@ parse_matched_pair (qc, open, close, lenp, flags) RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); ret[retind++] = ch; + /* If we just read the ending character, don't bother continuing. */ + if (count == 0) + break; + if (open == '\'') /* '' inside grouping construct */ { if MBTEST((flags & P_ALLOWESC) && ch == '\\') - pass_next_character++; -#if 0 - else if MBTEST((flags & P_BACKQUOTE) && ch == '\\') - backq_backslash++; -#endif + tflags |= LEX_PASSNEXT; continue; } if MBTEST(ch == '\\') /* backslashes */ - pass_next_character++; + tflags |= LEX_PASSNEXT; + /* Could also check open == '`' if we want to parse grouping constructs + inside old-style command substitution. */ if (open != close) /* a grouping construct */ { if MBTEST(shellquote (ch)) { /* '', ``, or "" inside $(...) or other grouping construct. */ push_delimiter (dstack, ch); - if MBTEST(was_dollar && ch == '\'') /* $'...' inside group */ + if MBTEST((tflags & LEX_WASDOL) && ch == '\'') /* $'...' inside group */ nestret = parse_matched_pair (ch, ch, ch, &nestlen, P_ALLOWESC|rflags); else nestret = parse_matched_pair (ch, ch, ch, &nestlen, rflags); pop_delimiter (dstack); - if (nestret == &matched_pair_error) - { - free (ret); - return &matched_pair_error; - } - if MBTEST(was_dollar && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) + CHECK_NESTRET_ERROR (); + + if MBTEST((tflags & LEX_WASDOL) && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) { /* Translate $'...' here. */ ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen); @@ -2956,7 +2981,7 @@ parse_matched_pair (qc, open, close, lenp, flags) } retind -= 2; /* back up before the $' */ } - else if MBTEST(was_dollar && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) + else if MBTEST((tflags & LEX_WASDOL) && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) { /* Locale expand $"..." here. */ ttrans = localeexpand (nestret, 0, nestlen - 1, start_lineno, &ttranslen); @@ -2968,12 +2993,7 @@ parse_matched_pair (qc, open, close, lenp, flags) retind -= 2; /* back up before the $" */ } - if (nestlen) - { - RESIZE_MALLOCED_BUFFER (ret, retind, nestlen, retsize, 64); - strcpy (ret + retind, nestret); - retind += nestlen; - } + APPEND_NESTRET (); FREE (nestret); } } @@ -2983,51 +3003,464 @@ parse_matched_pair (qc, open, close, lenp, flags) else if MBTEST(open == '"' && ch == '`') { nestret = parse_matched_pair (0, '`', '`', &nestlen, rflags); -add_nestret: - if (nestret == &matched_pair_error) + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + else if MBTEST(open != '`' && (tflags & LEX_WASDOL) && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ + /* check for $(), $[], or ${} inside quoted string. */ + { + if (open == ch) /* undo previous increment */ + count--; + if (ch == '(') /* ) */ + nestret = parse_matched_pair (0, '(', ')', &nestlen, rflags & ~P_DQUOTE); + else if (ch == '{') /* } */ + nestret = parse_matched_pair (0, '{', '}', &nestlen, P_FIRSTCLOSE|rflags); + else if (ch == '[') /* ] */ + nestret = parse_matched_pair (0, '[', ']', &nestlen, rflags); + + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); + } + if MBTEST(ch == '$') + tflags |= LEX_WASDOL; + else + tflags &= ~LEX_WASDOL; + } + + ret[retind] = '\0'; + if (lenp) + *lenp = retind; + return ret; +} + +/* Parse a $(...) command substitution. This is messier than I'd like, and + reproduces a lot more of the token-reading code than I'd like. */ +static char * +parse_comsub (qc, open, close, lenp, flags) + int qc; /* `"' if this construct is within double quotes */ + int open, close; + int *lenp, flags; +{ + int count, ch, peekc, tflags, lex_rwlen, lex_firstind; + int nestlen, ttranslen, start_lineno; + char *ret, *nestret, *ttrans, *heredelim; + int retind, retsize, rflags, hdlen; + +/*itrace("parse_comsub: qc = `%c' open = %c close = %c", qc, open, close);*/ + count = 1; + tflags = LEX_RESWDOK; + + if ((flags & P_COMMAND) && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0) + tflags |= LEX_CKCASE; + if ((tflags & LEX_CKCASE) && (interactive == 0 || interactive_comments)) + tflags |= LEX_CKCOMMENT; + + /* RFLAGS is the set of flags we want to pass to recursive calls. */ + rflags = (flags & P_DQUOTE); + + ret = (char *)xmalloc (retsize = 64); + retind = 0; + + start_lineno = line_number; + lex_rwlen = 0; + + heredelim = 0; + lex_firstind = -1; + + while (count) + { +comsub_readchar: + ch = shell_getc (qc != '\'' && (tflags & LEX_PASSNEXT) == 0); + + if (ch == EOF) + { +eof_error: + free (ret); + FREE (heredelim); + parser_error (start_lineno, _("unexpected EOF while looking for matching `%c'"), close); + EOF_Reached = 1; /* XXX */ + return (&matched_pair_error); + } + + /* If we hit the end of a line and are reading the contents of a here + document, and it's not the same line that the document starts on, + check for this line being the here doc delimiter. Otherwise, if + we're in a here document, mark the next character as the beginning + of a line. */ + if (ch == '\n') + { + if ((tflags & LEX_HEREDELIM) && heredelim) { - free (ret); - return &matched_pair_error; + tflags &= ~LEX_HEREDELIM; + tflags |= LEX_INHEREDOC; + lex_firstind = retind + 1; } - if (nestlen) + else if (tflags & LEX_INHEREDOC) { - RESIZE_MALLOCED_BUFFER (ret, retind, nestlen, retsize, 64); - strcpy (ret + retind, nestret); - retind += nestlen; + int tind; + tind = lex_firstind; + while ((tflags & LEX_STRIPDOC) && ret[tind] == '\t') + tind++; + if (STREQN (ret + tind, heredelim, hdlen)) + { + tflags &= ~(LEX_STRIPDOC|LEX_INHEREDOC); +/*itrace("parse_comsub:%d: found here doc end `%s'", line_number, ret + tind);*/ + lex_firstind = -1; + } + else + lex_firstind = retind + 1; } - FREE (nestret); } -#if 0 - else if MBTEST(qc == '`' && (ch == '"' || ch == '\'') && in_comment == 0) + + /* Possible reprompting. */ + if (ch == '\n' && SHOULD_PROMPT ()) + prompt_again (); + + /* Don't bother counting parens or doing anything else if in a comment */ + if (tflags & (LEX_INCOMMENT|LEX_INHEREDOC)) { - /* Add P_BACKQUOTE so backslash quotes the next character and - shell_getc does the right thing with \. We do this for - a measure of backwards compatibility -- it's not strictly the - right POSIX thing. */ - nestret = parse_matched_pair (0, ch, ch, &nestlen, rflags|P_BACKQUOTE); - goto add_nestret; + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + if ((tflags & LEX_INCOMMENT) && ch == '\n') + tflags &= ~LEX_INCOMMENT; + + continue; + } + + /* Skip whitespace */ + if MBTEST(shellblank (ch) && lex_rwlen == 0) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + continue; + } + + /* Either we are looking for the start of the here-doc delimiter + (lex_firstind == -1) or we are reading one (lex_firstind >= 0). + If this character is a shell break character and we are reading + the delimiter, save it and note that we are now reading a here + document. If we've found the start of the delimiter, note it by + setting lex_firstind. Backslashes can quote shell metacharacters + in here-doc delimiters. */ + if (tflags & LEX_HEREDELIM) + { + if (lex_firstind == -1 && shellbreak (ch) == 0) + lex_firstind = retind; + else if (lex_firstind >= 0 && (tflags & LEX_PASSNEXT) == 0 && shellbreak (ch)) + { + nestret = substring (ret, lex_firstind, retind); + heredelim = string_quote_removal (nestret, 0); + free (nestret); + hdlen = STRLEN(heredelim); +/*itrace("parse_comsub:%d: found here doc delimiter `%s' (%d)", line_number, heredelim, hdlen);*/ + if (ch == '\n') + { + tflags |= LEX_INHEREDOC; + tflags &= ~LEX_HEREDELIM; + lex_firstind = retind + 1; + } + else + lex_firstind = -1; + } } + + /* Meta-characters that can introduce a reserved word. Not perfect yet. */ + if MBTEST((tflags & LEX_RESWDOK) == 0 && (tflags & LEX_CKCASE) && (tflags & LEX_INCOMMENT) == 0 && shellmeta(ch)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + peekc = shell_getc (1); + if (ch == peekc && (ch == '&' || ch == '|' || ch == ';')) /* two-character tokens */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; +/*itrace("parse_comsub:%d: set lex_reswordok = 1, ch = `%c'", line_number, ch); */ + tflags |= LEX_RESWDOK; + lex_rwlen = 0; + continue; + } + else if (ch == '\n' || COMSUB_META(ch)) + { + shell_ungetc (peekc); + tflags |= LEX_RESWDOK; +/*itrace("parse_comsub:%d: set lex_reswordok = 1, ch = `%c'", line_number, ch);*/ + lex_rwlen = 0; + continue; + } + else if (ch == EOF) + goto eof_error; + else + { + /* `unget' the character we just added and fall through */ + retind--; + shell_ungetc (peekc); + } + } + + /* If we can read a reserved word, try to read one. */ + if (tflags & LEX_RESWDOK) + { + if MBTEST(islower (ch)) + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + lex_rwlen++; + continue; + } + else if MBTEST(lex_rwlen == 4 && shellbreak (ch)) + { + if (STREQN (ret + retind - 4, "case", 4)) +{ + tflags |= LEX_INCASE; +/*itrace("parse_comsub:%d: found `case', lex_incase -> 1", line_number);*/ +} + else if (STREQN (ret + retind - 4, "esac", 4)) +{ + tflags &= ~LEX_INCASE; +/*itrace("parse_comsub:%d: found `esac', lex_incase -> 0", line_number);*/ +} + tflags &= ~LEX_RESWDOK; + } + else if (shellbreak (ch) == 0) +{ + tflags &= ~LEX_RESWDOK; +/*itrace("parse_comsub:%d: found `%c', lex_reswordok -> 0", line_number, ch);*/ +} + } + + if MBTEST((tflags & LEX_INCOMMENT) == 0 && (tflags & LEX_CKCASE) && ch == '<') + { + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + peekc = shell_getc (1); + if (peekc == EOF) + goto eof_error; + if (peekc == ch) + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; + peekc = shell_getc (1); + if (peekc == EOF) + goto eof_error; + if (peekc == '-') + { + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = peekc; + tflags |= LEX_STRIPDOC; + } + else + shell_ungetc (peekc); + tflags |= LEX_HEREDELIM; + lex_firstind = -1; + continue; + } + else + ch = peekc; /* fall through and continue XXX - this skips comments if peekc == '#' */ + } + /* Not exactly right yet, should handle shell metacharacters, too. If + any changes are made to this test, make analogous changes to subst.c: + extract_delimited_string(). */ + else if MBTEST((tflags & LEX_CKCOMMENT) && (tflags & LEX_INCOMMENT) == 0 && ch == '#' && (retind == 0 || ret[retind-1] == '\n' || shellblank (ret[retind - 1]))) + tflags |= LEX_INCOMMENT; + + if (tflags & LEX_PASSNEXT) /* last char was backslash */ + { + tflags &= ~LEX_PASSNEXT; + if (qc != '\'' && ch == '\n') /* double-quoted \ disappears. */ + { + if (retind > 0) + retind--; /* swallow previously-added backslash */ + continue; + } + + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + if MBTEST(ch == CTLESC || ch == CTLNUL) + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } + else if MBTEST(ch == CTLESC || ch == CTLNUL) /* special shell escapes */ + { + RESIZE_MALLOCED_BUFFER (ret, retind, 2, retsize, 64); + ret[retind++] = CTLESC; + ret[retind++] = ch; + continue; + } +#if 0 + else if MBTEST((tflags & LEX_INCASE) && ch == close && close == ')') + tflags &= ~LEX_INCASE; /* XXX */ #endif - else if MBTEST(open != '`' && was_dollar && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ - /* check for $(), $[], or ${} inside quoted string. */ + else if MBTEST(ch == close && (tflags & LEX_INCASE) == 0) /* ending delimiter */ +{ + count--; +/*itrace("parse_comsub:%d: found close: count = %d", line_number, count);*/ +} + else if MBTEST(((flags & P_FIRSTCLOSE) == 0) && (tflags & LEX_INCASE) == 0 && ch == open) /* nested begin */ + count++; + + /* Add this character. */ + RESIZE_MALLOCED_BUFFER (ret, retind, 1, retsize, 64); + ret[retind++] = ch; + + /* If we just read the ending character, don't bother continuing. */ + if (count == 0) + break; + + if MBTEST(ch == '\\') /* backslashes */ + tflags |= LEX_PASSNEXT; + + if MBTEST(shellquote (ch)) + { + /* '', ``, or "" inside $(...). */ + push_delimiter (dstack, ch); + if MBTEST((tflags & LEX_WASDOL) && ch == '\'') /* $'...' inside group */ + nestret = parse_matched_pair (ch, ch, ch, &nestlen, P_ALLOWESC|rflags); + else + nestret = parse_matched_pair (ch, ch, ch, &nestlen, rflags); + pop_delimiter (dstack); + CHECK_NESTRET_ERROR (); + + if MBTEST((tflags & LEX_WASDOL) && ch == '\'' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Translate $'...' here. */ + ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen); + xfree (nestret); + + if ((rflags & P_DQUOTE) == 0) + { + nestret = sh_single_quote (ttrans); + free (ttrans); + nestlen = strlen (nestret); + } + else + { + nestret = ttrans; + nestlen = ttranslen; + } + retind -= 2; /* back up before the $' */ + } + else if MBTEST((tflags & LEX_WASDOL) && ch == '"' && (extended_quote || (rflags & P_DQUOTE) == 0)) + { + /* Locale expand $"..." here. */ + ttrans = localeexpand (nestret, 0, nestlen - 1, start_lineno, &ttranslen); + xfree (nestret); + + nestret = sh_mkdoublequoted (ttrans, ttranslen, 0); + free (ttrans); + nestlen = ttranslen + 2; + retind -= 2; /* back up before the $" */ + } + + APPEND_NESTRET (); + FREE (nestret); + } + else if MBTEST((tflags & LEX_WASDOL) && (ch == '(' || ch == '{' || ch == '[')) /* ) } ] */ + /* check for $(), $[], or ${} inside command substitution. */ { - if (open == ch) /* undo previous increment */ + if ((tflags & LEX_INCASE) == 0 && open == ch) /* undo previous increment */ count--; if (ch == '(') /* ) */ - nestret = parse_matched_pair (0, '(', ')', &nestlen, rflags & ~P_DQUOTE); + nestret = parse_comsub (0, '(', ')', &nestlen, (rflags|P_COMMAND) & ~P_DQUOTE); else if (ch == '{') /* } */ nestret = parse_matched_pair (0, '{', '}', &nestlen, P_FIRSTCLOSE|rflags); else if (ch == '[') /* ] */ nestret = parse_matched_pair (0, '[', ']', &nestlen, rflags); - goto add_nestret; + CHECK_NESTRET_ERROR (); + APPEND_NESTRET (); + + FREE (nestret); } - was_dollar = MBTEST(ch == '$'); + if MBTEST(ch == '$') + tflags |= LEX_WASDOL; + else + tflags &= ~LEX_WASDOL; } + FREE (heredelim); ret[retind] = '\0'; if (lenp) *lenp = retind; +/*itrace("parse_comsub:%d: returning `%s'", line_number, ret);*/ + return ret; +} + +/* XXX - this needs to handle functionality like subst.c:no_longjmp_on_fatal_error; + maybe extract_command_subst should handle it. */ +char * +xparse_dolparen (base, string, indp, flags) + char *base; + char *string; + int *indp; + int flags; +{ + sh_parser_state_t ps; + int orig_ind, nc, sflags; + char *ret, *s, *ep, *ostring; + + /*yydebug = 1;*/ + orig_ind = *indp; + ostring = string; + + sflags = SEVAL_NONINT|SEVAL_NOHIST|SEVAL_NOFREE; + if (flags & 0x010) /* EX_NOLONGJMP */ + sflags |= SEVAL_NOLONGJMP; + save_parser_state (&ps); + + /*(*/ + parser_state |= PST_CMDSUBST|PST_EOFTOKEN; /* allow instant ')' */ /*(*/ + shell_eof_token = ')'; + parse_string (string, "command substitution", sflags, &ep); + + restore_parser_state (&ps); + reset_parser (); + if (interactive) + token_to_read = 0; + + /* Need to find how many characters parse_and_execute consumed, update + *indp, if flags != 0, copy the portion of the string parsed into RET + and return it. If flags & 1 (EX_NOALLOC) we can return NULL. */ + + /*(*/ + if (ep[-1] != ')') + { +#if DEBUG + itrace("xparse_dolparen:%d: ep[-1] != RPAREN (%d), ep = `%s'", line_number, ep[-1], ep); +#endif + while (ep > ostring && ep[-1] == '\n') ep--; + } + + nc = ep - ostring; + *indp = ep - base - 1; + + /*(*/ +#if DEBUG + if (base[*indp] != ')') + itrace("xparse_dolparen:%d: base[%d] != RPAREN (%d), base = `%s'", line_number, *indp, base[*indp], base); +#endif + + if (flags & 1) + return (char *)NULL; + + if (nc == 0) + { + ret = xmalloc (1); + ret[0] = '\0'; + } + else + ret = substring (ostring, 0, nc - 1); + return ret; } diff --git a/tests/trap.right b/tests/trap.right index 72f3b6d28..6e357d9ab 100644 --- a/tests/trap.right +++ b/tests/trap.right @@ -64,8 +64,6 @@ before false in trap2a.sub after false in trap2a.sub command substitution caught a child death -caught a child death -caught a child death trap -- 'echo caught a child death' SIGCHLD trap -- 'echo exiting' EXIT trap -- 'echo aborting' SIGABRT diff --git a/tests/trap.tests b/tests/trap.tests index 9aac72545..83497a31c 100644 --- a/tests/trap.tests +++ b/tests/trap.tests @@ -75,6 +75,7 @@ trap 'echo caught a child death' SIGCHLD sleep 7 & sleep 6 & sleep 5 & +# this will only catch the first, since there's a trap on SIGCHLD wait trap -p SIGCHLD @@ -84,3 +85,6 @@ trap -p SIGCHLD trap - SIGINT QUIT TERM trap + +trap - SIGCHLD +wait diff --git a/tests/trap.tests~ b/tests/trap.tests~ new file mode 100644 index 000000000..9aac72545 --- /dev/null +++ b/tests/trap.tests~ @@ -0,0 +1,86 @@ +# test the trap code + +trap 'echo exiting' 0 +trap 'echo aborting' 1 2 3 6 15 + +# make sure a user-specified subshell runs the exit trap, but does not +# inherit the exit trap from a parent shell +( trap 'echo subshell exit' 0; exit 0 ) +( exit 0 ) + +trap + +func() +{ + trap 'echo ${FUNCNAME:-$0}[$LINENO] funcdebug' DEBUG + echo funcdebug line +} + +trap 'echo [$LINENO] debug' DEBUG +echo debug line + +trap + +func + +trap + +trap 'echo ${FUNCNAME:-$0}[$LINENO] debug' DEBUG +func2() +{ + echo func2debug line +} +declare -ft func2 +func2 + +unset -f func2 + +trap '' DEBUG + +trap + +trap - debug + +trap + +trap - HUP +trap hup +trap '' INT +trap '' int + +trap + +# exit 0 in exit trap should set exit status +( +set -e +trap 'exit 0' EXIT +false +echo bad +) +echo $? + +# hmmm...should this set the handling to SIG_IGN for children, too? +trap '' USR2 +./trap1.sub + +# test ERR trap +./trap2.sub + +# +# show that setting a trap on SIGCHLD is not disastrous. +# +set -o monitor + +trap 'echo caught a child death' SIGCHLD + +sleep 7 & sleep 6 & sleep 5 & + +wait + +trap -p SIGCHLD + +# Now reset some of the signals the shell handles specially back to +# their default values (with or without the SIG prefix) +trap - SIGINT QUIT TERM + +trap diff --git a/trap.c b/trap.c index aadd26926..d61633161 100644 --- a/trap.c +++ b/trap.c @@ -295,6 +295,14 @@ run_pending_traps () run_interrupt_trap (); CLRINTERRUPT; } +#if defined (JOB_CONTROL) && defined (SIGCHLD) + else if (sig == SIGCHLD && + trap_list[SIGCHLD] != (char *)IMPOSSIBLE_TRAP_HANDLER && + (sigmodes[SIGCHLD] & SIG_INPROGRESS) == 0) + { + run_sigchld_trap (pending_traps[sig]); /* use as counter */ + } +#endif else if (trap_list[sig] == (char *)DEFAULT_SIG || trap_list[sig] == (char *)IGNORE_SIG || trap_list[sig] == (char *)IMPOSSIBLE_TRAP_HANDLER) @@ -365,6 +373,9 @@ trap_handler (sig) { oerrno = errno; #if defined (MUST_REINSTALL_SIGHANDLERS) +# if defined (JOB_CONTROL) && defined (SIGCHLD) + if (sig != SIGCHLD) +# endif /* JOB_CONTROL && SIGCHLD */ set_signal_handler (sig, trap_handler); #endif /* MUST_REINSTALL_SIGHANDLERS */ @@ -399,14 +410,28 @@ set_sigchld_trap (command_string) #endif /* Make COMMAND_STRING be executed when SIGCHLD is caught iff SIGCHLD - is not already trapped. */ + is not already trapped. IMPOSSIBLE_TRAP_HANDLER is used as a sentinel + to make sure that a SIGCHLD trap handler run via run_sigchld_trap can + reset the disposition to the default and not have the original signal + accidentally restored, undoing the user's command. */ void maybe_set_sigchld_trap (command_string) char *command_string; { - if ((sigmodes[SIGCHLD] & SIG_TRAPPED) == 0) + if ((sigmodes[SIGCHLD] & SIG_TRAPPED) == 0 && trap_list[SIGCHLD] == (char *)IMPOSSIBLE_TRAP_HANDLER) set_signal (SIGCHLD, command_string); } + +/* Temporarily set the SIGCHLD trap string to IMPOSSIBLE_TRAP_HANDLER. Used + as a sentinel in run_sigchld_trap and maybe_set_sigchld_trap to see whether + or not a SIGCHLD trap handler reset SIGCHLD disposition to the default. */ +void +set_impossible_sigchld_trap () +{ + restore_default_signal (SIGCHLD); + change_signal (SIGCHLD, (char *)IMPOSSIBLE_TRAP_HANDLER); + sigmodes[SIGCHLD] &= ~SIG_TRAPPED; /* maybe_set_sigchld_trap checks this */ +} #endif /* JOB_CONTROL && SIGCHLD */ void diff --git a/trap.c~ b/trap.c~ index 715e998dc..e9bfa7a3d 100644 --- a/trap.c~ +++ b/trap.c~ @@ -295,6 +295,14 @@ run_pending_traps () run_interrupt_trap (); CLRINTERRUPT; } +#if defined (JOB_CONTROL) && defined (SIGCHLD) + else if (sig == SIGCHLD && + trap_list[SIGCHLD] != (char *)IMPOSSIBLE_TRAP_HANDLER && + (sigmodes[SIGCHLD] & SIG_INPROGRESS) == 0) + { + run_sigchld_trap (pending_traps[sig]); /* use as counter */ + } +#endif else if (trap_list[sig] == (char *)DEFAULT_SIG || trap_list[sig] == (char *)IGNORE_SIG || trap_list[sig] == (char *)IMPOSSIBLE_TRAP_HANDLER) @@ -351,7 +359,9 @@ trap_handler (sig) if ((sigmodes[sig] & SIG_TRAPPED) == 0) { +#if defined (DEBUG) internal_warning ("trap_handler: signal %d: signal not trapped", sig); +#endif SIGRETURN (0); } @@ -363,6 +373,9 @@ trap_handler (sig) { oerrno = errno; #if defined (MUST_REINSTALL_SIGHANDLERS) +# if defined (JOB_CONTROL) && defined (SIGCHLD) + if (sig != SIGCHLD) +# endif /* JOB_CONTROL && SIGCHLD */ set_signal_handler (sig, trap_handler); #endif /* MUST_REINSTALL_SIGHANDLERS */ @@ -397,14 +410,27 @@ set_sigchld_trap (command_string) #endif /* Make COMMAND_STRING be executed when SIGCHLD is caught iff SIGCHLD - is not already trapped. */ + is not already trapped. IMPOSSIBLE_TRAP_HANDLER is used as a sentinel + to make sure that a SIGCHLD trap handler run via run_sigchld_trap can + reset the disposition to the default and not have the original signal + accidentally restored, undoing the user's command. */ void maybe_set_sigchld_trap (command_string) char *command_string; { - if ((sigmodes[SIGCHLD] & SIG_TRAPPED) == 0) + if ((sigmodes[SIGCHLD] & SIG_TRAPPED) == 0 && trap_list[SIGCHLD] == (char *)IMPOSSIBLE_TRAP_HANDLER) set_signal (SIGCHLD, command_string); } + +/* Temporarily set the SIGCHLD trap string to IMPOSSIBLE_TRAP_HANDLER. Used + as a sentinel in run_sigchld_trap and maybe_set_sigchld_trap to see whether + or not a SIGCHLD trap handler reset SIGCHLD disposition to the default. */ +void +set_impossible_sigchld_trap () +{ + restore_default_signal (SIGCHLD); + change_signal (SIGCHLD, (char *)IMPOSSIBLE_TRAP_HANDLER); +} #endif /* JOB_CONTROL && SIGCHLD */ void diff --git a/trap.h b/trap.h index d1600e030..181b13774 100644 --- a/trap.h +++ b/trap.h @@ -63,6 +63,7 @@ extern void initialize_traps __P((void)); extern void run_pending_traps __P((void)); extern void maybe_set_sigchld_trap __P((char *)); +extern void set_impossible_sigchld_trap __P((void)); extern void set_sigchld_trap __P((char *)); extern void set_debug_trap __P((char *)); -- 2.47.3