dent.
P\bPI\bIP\bPE\bES\bST\bTA\bAT\bTU\bUS\bS
An array variable (see A\bAr\brr\bra\bay\bys\bs below) containing a list of exit
- status values from the processes in the most-recently-executed
+ status values from the commands in the most-recently-executed
foreground pipeline, which may consist of only a simple command
- (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR above).
+ (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR above). B\bBa\bas\bsh\bh sets P\bPI\bIP\bPE\bES\bST\bTA\bAT\bTU\bUS\bS after executing
+ multi-element pipelines, timed and negated pipelines, simple
+ commands, subshells created with the ( operator, the [\b[[\b[ and (\b((\b(
+ compound commands, and after error conditions that result in the
+ shell aborting command execution.
P\bPP\bPI\bID\bD The process ID of the shell's parent. This variable is read-
only.
P\bPW\bWD\bD The current working directory as set by the c\bcd\bd command.
of possible completions that is displayed without modification.
When set to a value greater than zero, r\bre\bea\bad\bdl\bli\bin\bne\be replaces common
prefixes longer than this value with an ellipsis when displaying
- possible completions.
+ possible completions. If a completion begins with a period, and
+ e\bea\bad\bdl\bli\bin\bne\be is completing filenames, it uses three underscores in-
+ stead of an ellipsis.
c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-q\bqu\bue\ber\bry\by-\b-i\bit\bte\bem\bms\bs (\b(1\b10\b00\b0)\b)
- This determines when the user is queried about viewing the num-
- ber of possible completions generated by the p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\be-\b-
- t\bti\bio\bon\bns\bs 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, r\bre\bea\bad\bdl\bli\bin\bne\be
- asks whether or not the user wishes to view them; otherwise
- r\bre\bea\bad\bdl\bli\bin\bne\be simply lists them on the terminal. A zero value means
+ This determines when the user is queried about viewing the num-
+ ber of possible completions generated by the p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\be-\b-
+ t\bti\bio\bon\bns\bs 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, r\bre\bea\bad\bdl\bli\bin\bne\be
+ asks whether or not the user wishes to view them; otherwise
+ r\bre\bea\bad\bdl\bli\bin\bne\be simply lists them on the terminal. A zero value means
r\bre\bea\bad\bdl\bli\bin\bne\be should never ask; negative values are treated as zero.
c\bco\bon\bnv\bve\ber\brt\bt-\b-m\bme\bet\bta\ba (\b(O\bOn\bn)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be converts characters it reads that have
- the eighth bit set to an ASCII key sequence by clearing the
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be converts characters it reads that have
+ the eighth bit set to an ASCII key sequence by clearing the
eighth bit and prefixing it with an escape character (converting
- the character to have the meta prefix). The default is _\bO_\bn, but
- r\bre\bea\bad\bdl\bli\bin\bne\be sets it to _\bO_\bf_\bf if the locale contains characters whose
+ the character to have the meta prefix). The default is _\bO_\bn, but
+ r\bre\bea\bad\bdl\bli\bin\bne\be sets it to _\bO_\bf_\bf if the locale contains characters whose
encodings may include bytes with the eighth bit set. This vari-
- able is dependent on the L\bLC\bC_\b_C\bCT\bTY\bYP\bPE\bE locale category, and may
- change if the locale changes. This variable also affects key
+ able is dependent on the L\bLC\bC_\b_C\bCT\bTY\bYP\bPE\bE locale category, and may
+ change if the locale changes. This variable also affects key
bindings; see the description of f\bfo\bor\brc\bce\be-\b-m\bme\bet\bta\ba-\b-p\bpr\bre\bef\bfi\bix\bx below.
d\bdi\bis\bsa\bab\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be inhibits word completion. Completion
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be inhibits word completion. Completion
characters are inserted into the line as if they had been mapped
to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt.
e\bec\bch\bho\bo-\b-c\bco\bon\bnt\btr\bro\bol\bl-\b-c\bch\bha\bar\bra\bac\bct\bte\ber\brs\bs (\b(O\bOn\bn)\b)
- When set to O\bOn\bn, on operating systems that indicate they support
+ When set to O\bOn\bn, on operating systems that indicate they support
it, r\bre\bea\bad\bdl\bli\bin\bne\be echoes a character corresponding to a signal gener-
ated from the keyboard.
e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be (\b(e\bem\bma\bac\bcs\bs)\b)
- Controls whether r\bre\bea\bad\bdl\bli\bin\bne\be uses a set of key bindings similar to
+ Controls whether r\bre\bea\bad\bdl\bli\bin\bne\be uses a set of key bindings similar to
_\bE_\bm_\ba_\bc_\bs or _\bv_\bi. e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be can be set to either e\bem\bma\bac\bcs\bs or v\bvi\bi.
e\bem\bma\bac\bcs\bs-\b-m\bmo\bod\bde\be-\b-s\bst\btr\bri\bin\bng\bg (\b(@\b@)\b)
- If the _\bs_\bh_\bo_\bw_\b-_\bm_\bo_\bd_\be_\b-_\bi_\bn_\b-_\bp_\br_\bo_\bm_\bp_\bt variable is enabled, this string is
+ If the _\bs_\bh_\bo_\bw_\b-_\bm_\bo_\bd_\be_\b-_\bi_\bn_\b-_\bp_\br_\bo_\bm_\bp_\bt variable is enabled, this string is
displayed immediately before the last line of the primary prompt
when emacs editing mode is active. The value is expanded like a
- key binding, so the standard set of meta- and control- prefixes
- and backslash escape sequences is available. The \1 and \2 es-
- capes begin and end sequences of non-printing characters, which
- can be used to embed a terminal control sequence into the mode
+ key binding, so the standard set of meta- and control- prefixes
+ and backslash escape sequences is available. The \1 and \2 es-
+ capes begin and end sequences of non-printing characters, which
+ can be used to embed a terminal control sequence into the mode
string.
e\ben\bna\bab\bbl\ble\be-\b-a\bac\bct\bti\biv\bve\be-\b-r\bre\beg\bgi\bio\bon\bn (\b(O\bOn\bn)\b)
- When this variable is set to _\bO_\bn, r\bre\bea\bad\bdl\bli\bin\bne\be allows certain com-
+ When this variable is set to _\bO_\bn, r\bre\bea\bad\bdl\bli\bin\bne\be allows certain com-
mands to designate the region as _\ba_\bc_\bt_\bi_\bv_\be. When the region is ac-
tive, r\bre\bea\bad\bdl\bli\bin\bne\be highlights the text in the region using the value
of the a\bac\bct\bti\biv\bve\be-\b-r\bre\beg\bgi\bio\bon\bn-\b-s\bst\bta\bar\brt\bt-\b-c\bco\bol\blo\bor\br variable, which defaults to the
- string that enables the terminal's standout mode. The active
+ string that enables the terminal's standout mode. The active
region shows the text inserted by bracketed-paste and any match-
ing text found by incremental and non-incremental history
searches.
e\ben\bna\bab\bbl\ble\be-\b-b\bbr\bra\bac\bck\bke\bet\bte\bed\bd-\b-p\bpa\bas\bst\bte\be (\b(O\bOn\bn)\b)
- When set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be configures the terminal to insert each
- paste into the editing buffer as a single string of characters,
- instead of treating each character as if it had been read from
- the keyboard. This is called _\bb_\br_\ba_\bc_\bk_\be_\bt_\be_\bd_\b-_\bp_\ba_\bs_\bt_\be _\bm_\bo_\bd_\be; it prevents
- r\bre\bea\bad\bdl\bli\bin\bne\be from executing any editing commands bound to key se-
+ When set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be configures the terminal to insert each
+ paste into the editing buffer as a single string of characters,
+ instead of treating each character as if it had been read from
+ the keyboard. This is called _\bb_\br_\ba_\bc_\bk_\be_\bt_\be_\bd_\b-_\bp_\ba_\bs_\bt_\be _\bm_\bo_\bd_\be; it prevents
+ r\bre\bea\bad\bdl\bli\bin\bne\be from executing any editing commands bound to key se-
quences appearing in the pasted text.
e\ben\bna\bab\bbl\ble\be-\b-k\bke\bey\byp\bpa\bad\bd (\b(O\bOf\bff\bf)\b)
When set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be tries to enable the application keypad
- when it is called. Some systems need this to enable the arrow
+ when it is called. Some systems need this to enable the arrow
keys.
e\ben\bna\bab\bbl\ble\be-\b-m\bme\bet\bta\ba-\b-k\bke\bey\by (\b(O\bOn\bn)\b)
- When set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be tries to enable any meta modifier key
+ When set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be tries to enable any meta modifier key
the terminal claims to support. On many terminals, the Meta key
- is used to send eight-bit characters; this variable checks for
- the terminal capability that indicates the terminal can enable
- and disable a mode that sets the eighth bit of a character
- (0200) if the Meta key is held down when the character is typed
+ is used to send eight-bit characters; this variable checks for
+ the terminal capability that indicates the terminal can enable
+ and disable a mode that sets the eighth bit of a character
+ (0200) if the Meta key is held down when the character is typed
(a meta character).
e\bex\bxp\bpa\ban\bnd\bd-\b-t\bti\bil\bld\bde\be (\b(O\bOf\bff\bf)\b)
If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be performs tilde expansion when it attempts
word completion.
f\bfo\bor\brc\bce\be-\b-m\bme\bet\bta\ba-\b-p\bpr\bre\bef\bfi\bix\bx (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be modifies its behavior when binding key
- sequences containing \M- or Meta- (see K\bKe\bey\by B\bBi\bin\bnd\bdi\bin\bng\bgs\bs above) by
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be modifies its behavior when binding key
+ sequences containing \M- or Meta- (see K\bKe\bey\by B\bBi\bin\bnd\bdi\bin\bng\bgs\bs above) by
converting a key sequence of the form \M-_\bC or Meta-_\bC to the two-
- character sequence E\bES\bSC\bC _\bC (adding the meta prefix). If
+ character sequence E\bES\bSC\bC _\bC (adding the meta prefix). If
f\bfo\bor\brc\bce\be-\b-m\bme\bet\bta\ba-\b-p\bpr\bre\bef\bfi\bix\bx is set to O\bOf\bff\bf (the default), r\bre\bea\bad\bdl\bli\bin\bne\be uses the
- value of the c\bco\bon\bnv\bve\ber\brt\bt-\b-m\bme\bet\bta\ba variable to determine whether to per-
- form this conversion: if c\bco\bon\bnv\bve\ber\brt\bt-\b-m\bme\bet\bta\ba is O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be performs
- the conversion described above; if it is O\bOf\bff\bf, r\bre\bea\bad\bdl\bli\bin\bne\be converts
+ value of the c\bco\bon\bnv\bve\ber\brt\bt-\b-m\bme\bet\bta\ba variable to determine whether to per-
+ form this conversion: if c\bco\bon\bnv\bve\ber\brt\bt-\b-m\bme\bet\bta\ba is O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be performs
+ the conversion described above; if it is O\bOf\bff\bf, r\bre\bea\bad\bdl\bli\bin\bne\be converts
_\bC to a meta character by setting the eighth bit (0200).
h\bhi\bis\bst\bto\bor\bry\by-\b-p\bpr\bre\bes\bse\ber\brv\bve\be-\b-p\bpo\boi\bin\bnt\bt (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, the history code attempts to place point at the
- same location on each history line retrieved with p\bpr\bre\bev\bvi\bio\bou\bus\bs-\b-h\bhi\bis\bs-\b-
+ If set to O\bOn\bn, the history code attempts to place point at the
+ same location on each history line retrieved with p\bpr\bre\bev\bvi\bio\bou\bus\bs-\b-h\bhi\bis\bs-\b-
t\bto\bor\bry\by or n\bne\bex\bxt\bt-\b-h\bhi\bis\bst\bto\bor\bry\by.
h\bhi\bis\bst\bto\bor\bry\by-\b-s\bsi\biz\bze\be (\b(u\bun\bns\bse\bet\bt)\b)
- Set the maximum number of history entries saved in the history
- list. If set to zero, any existing history entries are deleted
+ Set the maximum number of history entries saved in the history
+ list. If set to zero, any existing history entries are deleted
and no new entries are saved. If set to a value less than zero,
- the number of history entries is not limited. By default, b\bba\bas\bsh\bh
- sets the the maximum number of history entries to the value of
- the H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE shell variable. Setting _\bh_\bi_\bs_\bt_\bo_\br_\by_\b-_\bs_\bi_\bz_\be to a non-nu-
- meric value will set the maximum number of history entries to
+ the number of history entries is not limited. By default, b\bba\bas\bsh\bh
+ sets the the maximum number of history entries to the value of
+ the H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE shell variable. Setting _\bh_\bi_\bs_\bt_\bo_\br_\by_\b-_\bs_\bi_\bz_\be to a non-nu-
+ meric value will set the maximum number of history entries to
500.
h\bho\bor\bri\biz\bzo\bon\bnt\bta\bal\bl-\b-s\bsc\bcr\bro\bol\bll\bl-\b-m\bmo\bod\bde\be (\b(O\bOf\bff\bf)\b)
Setting this variable to O\bOn\bn makes r\bre\bea\bad\bdl\bli\bin\bne\be 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 new line. This setting is automatically enabled
+ display, scrolling the input horizontally on a single screen
+ line when it becomes longer than the screen width rather than
+ wrapping to a new line. This setting is automatically enabled
for terminals of height 1.
i\bin\bnp\bpu\but\bt-\b-m\bme\bet\bta\ba (\b(O\bOf\bff\bf)\b)
If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be enables eight-bit input (that is, it does
not clear the eighth bit in the characters it reads), regardless
of what the terminal claims it can support. The default is _\bO_\bf_\bf,
- but r\bre\bea\bad\bdl\bli\bin\bne\be sets it to _\bO_\bn if the locale contains characters
+ but r\bre\bea\bad\bdl\bli\bin\bne\be sets it to _\bO_\bn if the locale contains characters
whose encodings may include bytes with the eighth bit set. This
- variable is dependent on the L\bLC\bC_\b_C\bCT\bTY\bYP\bPE\bE locale category, and its
+ variable is dependent on the L\bLC\bC_\b_C\bCT\bTY\bYP\bPE\bE locale category, and its
value may change if the locale changes. The name m\bme\bet\bta\ba-\b-f\bfl\bla\bag\bg is a
synonym for i\bin\bnp\bpu\but\bt-\b-m\bme\bet\bta\ba.
i\bis\bse\bea\bar\brc\bch\bh-\b-t\bte\ber\brm\bmi\bin\bna\bat\bto\bor\brs\bs (\b("C\bC-\b-[\b[C\bC-\b-j\bj")\b)
- 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 _\bE_\bS_\bC and C\bC-\b-j\bj terminate an incremental search.
k\bke\bey\bym\bma\bap\bp (\b(e\bem\bma\bac\bcs\bs)\b)
- Set the current r\bre\bea\bad\bdl\bli\bin\bne\be keymap. The set of valid keymap names
- is _\be_\bm_\ba_\bc_\bs_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bm_\be_\bt_\ba_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx_\b, _\bv_\bi_\b, _\bv_\bi_\b-_\bc_\bo_\bm_\b-
- _\bm_\ba_\bn_\bd, and _\bv_\bi_\b-_\bi_\bn_\bs_\be_\br_\bt. _\bv_\bi is equivalent to _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd; _\be_\bm_\ba_\bc_\bs is
- equivalent to _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd. The default value is _\be_\bm_\ba_\bc_\bs; the
+ Set the current r\bre\bea\bad\bdl\bli\bin\bne\be keymap. The set of valid keymap names
+ is _\be_\bm_\ba_\bc_\bs_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bm_\be_\bt_\ba_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx_\b, _\bv_\bi_\b, _\bv_\bi_\b-_\bc_\bo_\bm_\b-
+ _\bm_\ba_\bn_\bd, and _\bv_\bi_\b-_\bi_\bn_\bs_\be_\br_\bt. _\bv_\bi is equivalent to _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd; _\be_\bm_\ba_\bc_\bs is
+ equivalent to _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd. The default value is _\be_\bm_\ba_\bc_\bs; the
value of e\bed\bdi\bit\bti\bin\bng\bg-\b-m\bmo\bod\bde\be also affects the default keymap.
k\bke\bey\bys\bse\beq\bq-\b-t\bti\bim\bme\beo\bou\but\bt (\b(5\b50\b00\b0)\b)
- Specifies the duration r\bre\bea\bad\bdl\bli\bin\bne\be will wait for a character when
- reading an ambiguous key sequence (one that can form a complete
+ Specifies the duration r\bre\bea\bad\bdl\bli\bin\bne\be will wait for a character when
+ reading an ambiguous key sequence (one that can form a complete
key sequence using the input read so far, or can take additional
- input to complete a longer key sequence). If r\bre\bea\bad\bdl\bli\bin\bne\be does not
- receive any input within the timeout, it uses the shorter but
- complete key sequence. The value is specified in milliseconds,
- so a value of 1000 means that r\bre\bea\bad\bdl\bli\bin\bne\be will wait one second for
- additional input. If this variable is set to a value less than
- or equal to zero, or to a non-numeric value, r\bre\bea\bad\bdl\bli\bin\bne\be waits un-
- til another key is pressed to decide which key sequence to com-
+ input to complete a longer key sequence). If r\bre\bea\bad\bdl\bli\bin\bne\be does not
+ receive any input within the timeout, it uses the shorter but
+ complete key sequence. The value is specified in milliseconds,
+ so a value of 1000 means that r\bre\bea\bad\bdl\bli\bin\bne\be will wait one second for
+ additional input. If this variable is set to a value less than
+ or equal to zero, or to a non-numeric value, r\bre\bea\bad\bdl\bli\bin\bne\be waits un-
+ til another key is pressed to decide which key sequence to com-
plete.
m\bma\bar\brk\bk-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs (\b(O\bOn\bn)\b)
If set to O\bOn\bn, completed directory names have a slash appended.
m\bma\bar\brk\bk-\b-m\bmo\bod\bdi\bif\bfi\bie\bed\bd-\b-l\bli\bin\bne\bes\bs (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be displays history lines that have been
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be displays history lines that have been
modified with a preceding asterisk (*\b*).
m\bma\bar\brk\bk-\b-s\bsy\bym\bml\bli\bin\bnk\bke\bed\bd-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs (\b(O\bOf\bff\bf)\b)
If set to O\bOn\bn, completed names which are symbolic links to direc-
- tories have a slash appended, subject to the value of m\bma\bar\brk\bk-\b-d\bdi\bi-\b-
+ tories have a slash appended, subject to the value of m\bma\bar\brk\bk-\b-d\bdi\bi-\b-
r\bre\bec\bct\bto\bor\bri\bie\bes\bs.
m\bma\bat\btc\bch\bh-\b-h\bhi\bid\bdd\bde\ben\bn-\b-f\bfi\bil\ble\bes\bs (\b(O\bOn\bn)\b)
- This variable, when set to O\bOn\bn, forces r\bre\bea\bad\bdl\bli\bin\bne\be to match files
- whose names begin with a "." (hidden files) when performing
- filename completion. If set to O\bOf\bff\bf, the user must include the
+ This variable, when set to O\bOn\bn, forces r\bre\bea\bad\bdl\bli\bin\bne\be to match files
+ whose names begin with a "." (hidden files) when performing
+ filename completion. If set to O\bOf\bff\bf, the user must include the
leading "." in the filename to be completed.
m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-p\bpr\bre\bef\bfi\bix\bx (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, menu completion displays the common prefix of the
+ If set to O\bOn\bn, menu completion displays the common prefix of the
list of possible completions (which may be empty) before cycling
through the list.
o\bou\but\btp\bpu\but\bt-\b-m\bme\bet\bta\ba (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be displays characters with the eighth bit
- set directly rather than as a meta-prefixed escape sequence.
- The default is _\bO_\bf_\bf, but r\bre\bea\bad\bdl\bli\bin\bne\be sets it to _\bO_\bn if the locale
- contains characters whose encodings may include bytes with the
- eighth bit set. This variable is dependent on the L\bLC\bC_\b_C\bCT\bTY\bYP\bPE\bE lo-
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be displays characters with the eighth bit
+ set directly rather than as a meta-prefixed escape sequence.
+ The default is _\bO_\bf_\bf, but r\bre\bea\bad\bdl\bli\bin\bne\be sets it to _\bO_\bn if the locale
+ contains characters whose encodings may include bytes with the
+ eighth bit set. This variable is dependent on the L\bLC\bC_\b_C\bCT\bTY\bYP\bPE\bE lo-
cale category, and its value may change if the locale changes.
p\bpa\bag\bge\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(O\bOn\bn)\b)
If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be uses an internal pager resembling _\bm_\bo_\br_\be(1)
p\bpr\bre\bef\bfe\ber\br-\b-v\bvi\bis\bsi\bib\bbl\ble\be-\b-b\bbe\bel\bll\bl
See b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be.
p\bpr\bri\bin\bnt\bt-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs-\b-h\bho\bor\bri\biz\bzo\bon\bnt\bta\bal\bll\bly\by (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be displays completions with matches sorted
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be displays completions with matches sorted
horizontally in alphabetical order, rather than down the screen.
r\bre\bev\bve\ber\brt\bt-\b-a\bal\bll\bl-\b-a\bat\bt-\b-n\bne\bew\bwl\bli\bin\bne\be (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be will undo all changes to history lines
- before returning when executing a\bac\bcc\bce\bep\bpt\bt-\b-l\bli\bin\bne\be. By default, his-
- tory lines may be modified and retain individual undo lists
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be will undo all changes to history lines
+ before returning when executing a\bac\bcc\bce\bep\bpt\bt-\b-l\bli\bin\bne\be. By default, his-
+ tory lines may be modified and retain individual undo lists
across calls to r\bre\bea\bad\bdl\bli\bin\bne\be.
s\bse\bea\bar\brc\bch\bh-\b-i\big\bgn\bno\bor\bre\be-\b-c\bca\bas\bse\be (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be performs incremental and non-incremental
+ If set to O\bOn\bn, r\bre\bea\bad\bdl\bli\bin\bne\be performs incremental and non-incremental
history list searches in a case-insensitive fashion.
s\bsh\bho\bow\bw-\b-a\bal\bll\bl-\b-i\bif\bf-\b-a\bam\bmb\bbi\big\bgu\buo\bou\bus\bs (\b(O\bOf\bff\bf)\b)
- This alters the default behavior of the completion functions.
+ This alters the default behavior of the completion functions.
If set to O\bOn\bn, words which have more than one possible completion
- cause the matches to be listed immediately instead of ringing
+ cause the matches to be listed immediately instead of ringing
the bell.
s\bsh\bho\bow\bw-\b-a\bal\bll\bl-\b-i\bif\bf-\b-u\bun\bnm\bmo\bod\bdi\bif\bfi\bie\bed\bd (\b(O\bOf\bff\bf)\b)
- This alters the default behavior of the completion functions in
+ This alters the default behavior of the completion functions in
a fashion similar to s\bsh\bho\bow\bw-\b-a\bal\bll\bl-\b-i\bif\bf-\b-a\bam\bmb\bbi\big\bgu\buo\bou\bus\bs. If set to O\bOn\bn, words
- which have more than one possible completion without any possi-
- ble partial completion (the possible completions don't share a
- common prefix) cause the matches to be listed immediately in-
+ which have more than one possible completion without any possi-
+ ble partial completion (the possible completions don't share a
+ common prefix) cause the matches to be listed immediately in-
stead of ringing the bell.
s\bsh\bho\bow\bw-\b-m\bmo\bod\bde\be-\b-i\bin\bn-\b-p\bpr\bro\bom\bmp\bpt\bt (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, add a string to the beginning of the prompt indi-
- cating the editing mode: emacs, vi command, or vi insertion.
+ If set to O\bOn\bn, add a string to the beginning of the prompt indi-
+ cating the editing mode: emacs, vi command, or vi insertion.
The mode strings are user-settable (e.g., _\be_\bm_\ba_\bc_\bs_\b-_\bm_\bo_\bd_\be_\b-_\bs_\bt_\br_\bi_\bn_\bg).
s\bsk\bki\bip\bp-\b-c\bco\bom\bmp\bpl\ble\bet\bte\bed\bd-\b-t\bte\bex\bxt\bt (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, this alters the default completion behavior when
- inserting a single match into the line. It's only active when
- performing completion in the middle of a word. If enabled,
- r\bre\bea\bad\bdl\bli\bin\bne\be does not insert characters from the completion that
- match characters after point in the word being completed, so
+ If set to O\bOn\bn, this alters the default completion behavior when
+ inserting a single match into the line. It's only active when
+ performing completion in the middle of a word. If enabled,
+ r\bre\bea\bad\bdl\bli\bin\bne\be does not insert characters from the completion that
+ match characters after point in the word being completed, so
portions of the word following the cursor are not duplicated.
v\bvi\bi-\b-c\bcm\bmd\bd-\b-m\bmo\bod\bde\be-\b-s\bst\btr\bri\bin\bng\bg (\b((\b(c\bcm\bmd\bd)\b))\b)
- If the _\bs_\bh_\bo_\bw_\b-_\bm_\bo_\bd_\be_\b-_\bi_\bn_\b-_\bp_\br_\bo_\bm_\bp_\bt variable is enabled, this string is
+ If the _\bs_\bh_\bo_\bw_\b-_\bm_\bo_\bd_\be_\b-_\bi_\bn_\b-_\bp_\br_\bo_\bm_\bp_\bt variable is enabled, this string is
displayed immediately before the last line of the primary prompt
- when vi editing mode is active and in command mode. The value
+ when vi editing mode is active and in command mode. The value
is expanded like a key binding, so the standard set of meta- and
- control- prefixes and backslash escape sequences is available.
- The \1 and \2 escapes begin and end sequences of non-printing
- characters, which can be used to embed a terminal control se-
+ control- prefixes and backslash escape sequences is available.
+ The \1 and \2 escapes begin and end sequences of non-printing
+ characters, which can be used to embed a terminal control se-
quence into the mode string.
v\bvi\bi-\b-i\bin\bns\bs-\b-m\bmo\bod\bde\be-\b-s\bst\btr\bri\bin\bng\bg (\b((\b(i\bin\bns\bs)\b))\b)
- If the _\bs_\bh_\bo_\bw_\b-_\bm_\bo_\bd_\be_\b-_\bi_\bn_\b-_\bp_\br_\bo_\bm_\bp_\bt variable is enabled, this string is
+ If the _\bs_\bh_\bo_\bw_\b-_\bm_\bo_\bd_\be_\b-_\bi_\bn_\b-_\bp_\br_\bo_\bm_\bp_\bt variable is enabled, this string is
displayed immediately before the last line of the primary prompt
when vi editing mode is active and in insertion mode. The value
is expanded like a key binding, so the standard set of meta- and
- control- prefixes and backslash escape sequences is available.
- The \1 and \2 escapes begin and end sequences of non-printing
- characters, which can be used to embed a terminal control se-
+ control- prefixes and backslash escape sequences is available.
+ The \1 and \2 escapes begin and end sequences of non-printing
+ characters, which can be used to embed a terminal control se-
quence into the mode string.
v\bvi\bis\bsi\bib\bbl\ble\be-\b-s\bst\bta\bat\bts\bs (\b(O\bOf\bff\bf)\b)
- If set to O\bOn\bn, a character denoting a file's type as reported by
- _\bs_\bt_\ba_\bt(2) is appended to the filename when listing possible com-
+ If set to O\bOn\bn, a character denoting a file's type as reported by
+ _\bs_\bt_\ba_\bt(2) is appended to the filename when listing possible com-
pletions.
R\bRe\bea\bad\bdl\bli\bin\bne\be C\bCo\bon\bnd\bdi\bit\bti\bio\bon\bna\bal\bl C\bCo\bon\bns\bst\btr\bru\buc\bct\bts\bs
- R\bRe\bea\bad\bdl\bli\bin\bne\be implements a facility similar in spirit to the conditional
- compilation features of the C preprocessor which allows key bindings
- and variable settings to be performed as the result of tests. There
+ R\bRe\bea\bad\bdl\bli\bin\bne\be implements a facility similar in spirit to the conditional
+ compilation features of the C preprocessor which allows key bindings
+ and variable settings to be performed as the result of tests. There
are four parser directives available.
- $\b$i\bif\bf The $\b$i\bif\bf construct allows bindings to be made based on the edit-
- ing mode, the terminal being used, or the application using
- r\bre\bea\bad\bdl\bli\bin\bne\be. The text of the test, after any comparison operator,
+ $\b$i\bif\bf The $\b$i\bif\bf construct allows bindings to be made based on the edit-
+ ing mode, the terminal being used, or the application using
+ r\bre\bea\bad\bdl\bli\bin\bne\be. The text of the test, after any comparison operator,
extends to the end of the line; unless otherwise noted, no char-
acters are required to isolate it.
- m\bmo\bod\bde\be The m\bmo\bod\bde\be=\b= form of the $\b$i\bif\bf directive is used to test
- whether r\bre\bea\bad\bdl\bli\bin\bne\be is in emacs or vi mode. This may be
- used in conjunction with the s\bse\bet\bt k\bke\bey\bym\bma\bap\bp command, for in-
- stance, to set bindings in the _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd and
- _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx keymaps only if r\bre\bea\bad\bdl\bli\bin\bne\be is starting out in
+ m\bmo\bod\bde\be The m\bmo\bod\bde\be=\b= form of the $\b$i\bif\bf directive is used to test
+ whether r\bre\bea\bad\bdl\bli\bin\bne\be is in emacs or vi mode. This may be
+ used in conjunction with the s\bse\bet\bt k\bke\bey\bym\bma\bap\bp command, for in-
+ stance, to set bindings in the _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\bd_\ba_\br_\bd and
+ _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx keymaps only if r\bre\bea\bad\bdl\bli\bin\bne\be is starting out in
emacs mode.
- t\bte\ber\brm\bm The t\bte\ber\brm\bm=\b= form may be used to include terminal-specific
+ t\bte\ber\brm\bm The t\bte\ber\brm\bm=\b= form may be used to include terminal-specific
key bindings, perhaps to bind the key sequences output by
the terminal's function keys. The word on the right side
of the =\b= is tested against both the full name of the ter-
- minal and the portion of the terminal name before the
- first -\b-. This allows _\bx_\bt_\be_\br_\bm to match both _\bx_\bt_\be_\br_\bm and
+ minal and the portion of the terminal name before the
+ first -\b-. This allows _\bx_\bt_\be_\br_\bm to match both _\bx_\bt_\be_\br_\bm and
_\bx_\bt_\be_\br_\bm_\b-_\b2_\b5_\b6_\bc_\bo_\bl_\bo_\br, for instance.
v\bve\ber\brs\bsi\bio\bon\bn
- The v\bve\ber\brs\bsi\bio\bon\bn test may be used to perform comparisons
- against specific r\bre\bea\bad\bdl\bli\bin\bne\be versions. The v\bve\ber\brs\bsi\bio\bon\bn expands
- to the current r\bre\bea\bad\bdl\bli\bin\bne\be version. The set of comparison
- operators includes =\b=, (and =\b==\b=), !\b!=\b=, <\b<=\b=, >\b>=\b=, <\b<, and >\b>.
- The version number supplied on the right side of the op-
- erator consists of a major version number, an optional
+ The v\bve\ber\brs\bsi\bio\bon\bn test may be used to perform comparisons
+ against specific r\bre\bea\bad\bdl\bli\bin\bne\be versions. The v\bve\ber\brs\bsi\bio\bon\bn expands
+ to the current r\bre\bea\bad\bdl\bli\bin\bne\be version. The set of comparison
+ operators includes =\b=, (and =\b==\b=), !\b!=\b=, <\b<=\b=, >\b>=\b=, <\b<, and >\b>.
+ The version number supplied on the right side of the op-
+ erator consists of a major version number, an optional
decimal point, and an optional minor version (e.g., 7\b7.\b.1\b1).
- If the minor version is omitted, it defaults to 0\b0. The
- operator may be separated from the string v\bve\ber\brs\bsi\bio\bon\bn and
+ If the minor version is omitted, it defaults to 0\b0. The
+ operator may be separated from the string v\bve\ber\brs\bsi\bio\bon\bn and
from the version number argument by whitespace.
_\ba_\bp_\bp_\bl_\bi_\bc_\ba_\bt_\bi_\bo_\bn
The _\ba_\bp_\bp_\bl_\bi_\bc_\ba_\bt_\bi_\bo_\bn construct is used to include application-
- specific settings. Each program using the r\bre\bea\bad\bdl\bli\bin\bne\be li-
- brary sets the _\ba_\bp_\bp_\bl_\bi_\bc_\ba_\bt_\bi_\bo_\bn _\bn_\ba_\bm_\be, and an initialization
+ specific settings. Each program using the r\bre\bea\bad\bdl\bli\bin\bne\be li-
+ brary sets the _\ba_\bp_\bp_\bl_\bi_\bc_\ba_\bt_\bi_\bo_\bn _\bn_\ba_\bm_\be, and an initialization
file can test for a particular value. This could be used
- to bind key sequences to functions useful for a specific
- program. For instance, the following command adds a key
- sequence that quotes the current or previous word in
+ to bind key sequences to functions useful for a specific
+ program. For instance, the following command adds a key
+ sequence that quotes the current or previous word in
b\bba\bas\bsh\bh:
$\b$i\bif\bf Bash
_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be
The _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be construct provides simple equality tests for
- r\bre\bea\bad\bdl\bli\bin\bne\be variables and values. The permitted comparison
- operators are _\b=, _\b=_\b=, and _\b!_\b=. The variable name must be
+ r\bre\bea\bad\bdl\bli\bin\bne\be variables and values. The permitted comparison
+ operators are _\b=, _\b=_\b=, and _\b!_\b=. The variable name must be
separated from the comparison operator by whitespace; the
- operator may be separated from the value on the right
- hand side by whitespace. String and boolean variables
- may be tested. Boolean variables must be tested against
+ operator may be separated from the value on the right
+ hand side by whitespace. String and boolean variables
+ may be tested. Boolean variables must be tested against
the values _\bo_\bn and _\bo_\bf_\bf.
$\b$e\bel\bls\bse\be Commands in this branch of the $\b$i\bif\bf directive are executed if the
command.
$\b$i\bin\bnc\bcl\blu\bud\bde\be
- This directive takes a single filename as an argument and reads
+ This directive takes a single filename as an argument and reads
commands and key bindings from that file. For example, the fol-
lowing directive would read _\b/_\be_\bt_\bc_\b/_\bi_\bn_\bp_\bu_\bt_\br_\bc:
$\b$i\bin\bnc\bcl\blu\bud\bde\be _\b/_\be_\bt_\bc_\b/_\bi_\bn_\bp_\bu_\bt_\br_\bc
S\bSe\bea\bar\brc\bch\bhi\bin\bng\bg
- R\bRe\bea\bad\bdl\bli\bin\bne\be provides commands for searching through the command history
+ R\bRe\bea\bad\bdl\bli\bin\bne\be provides commands for searching through the command history
(see H\bHI\bIS\bST\bTO\bOR\bRY\bY below) for lines containing a specified string. There are
two search modes: _\bi_\bn_\bc_\br_\be_\bm_\be_\bn_\bt_\ba_\bl and _\bn_\bo_\bn_\b-_\bi_\bn_\bc_\br_\be_\bm_\be_\bn_\bt_\ba_\bl.
- Incremental searches begin before the user has finished typing the
- search string. As each character of the search string is typed, r\bre\bea\bad\bd-\b-
+ Incremental searches begin before the user has finished typing the
+ search string. As each character of the search string is typed, r\bre\bea\bad\bd-\b-
l\bli\bin\bne\be displays the next entry from the history matching the string typed
- so far. An incremental search requires only as many characters as
- needed to find the desired history entry. When using emacs editing
- mode, type C\bC-\b-r\br to search backward in the history for a particular
- string. Typing C\bC-\b-s\bs searches forward through the history. The charac-
- ters present in the value of the i\bis\bse\bea\bar\brc\bch\bh-\b-t\bte\ber\brm\bmi\bin\bna\bat\bto\bor\brs\bs variable are used
- to terminate an incremental search. If that variable has not been as-
- signed a value, _\bE_\bS_\bC and C\bC-\b-j\bj terminate an incremental search. C\bC-\b-g\bg
- aborts an incremental search and restores the original line. When the
- search is terminated, the history entry containing the search string
+ so far. An incremental search requires only as many characters as
+ needed to find the desired history entry. When using emacs editing
+ mode, type C\bC-\b-r\br to search backward in the history for a particular
+ string. Typing C\bC-\b-s\bs searches forward through the history. The charac-
+ ters present in the value of the i\bis\bse\bea\bar\brc\bch\bh-\b-t\bte\ber\brm\bmi\bin\bna\bat\bto\bor\brs\bs variable are used
+ to terminate an incremental search. If that variable has not been as-
+ signed a value, _\bE_\bS_\bC and C\bC-\b-j\bj terminate an incremental search. C\bC-\b-g\bg
+ aborts an incremental search and restores the original line. When the
+ search is terminated, the history entry containing the search string
becomes the current line.
- To find other matching entries in the history list, type C\bC-\b-r\br or C\bC-\b-s\bs as
- appropriate. This searches backward or forward in the history for the
- next entry matching the search string typed so far. Any other key se-
- quence bound to a r\bre\bea\bad\bdl\bli\bin\bne\be command terminates the search and executes
- that command. For instance, a newline terminates the search and ac-
+ To find other matching entries in the history list, type C\bC-\b-r\br or C\bC-\b-s\bs as
+ appropriate. This searches backward or forward in the history for the
+ next entry matching the search string typed so far. Any other key se-
+ quence bound to a r\bre\bea\bad\bdl\bli\bin\bne\be command terminates the search and executes
+ that command. For instance, a newline terminates the search and ac-
cepts the line, thereby executing the command from the history list. A
- movement command will terminate the search, make the last line found
+ movement command will terminate the search, make the last line found
the current line, and begin editing.
R\bRe\bea\bad\bdl\bli\bin\bne\be remembers the last incremental search string. If two C\bC-\b-r\brs are
- typed without any intervening characters defining a new search string,
+ typed without any intervening characters defining a new search string,
r\bre\bea\bad\bdl\bli\bin\bne\be uses any remembered search string.
- Non-incremental searches read the entire search string before starting
+ Non-incremental searches read the entire search string before starting
to search for matching history entries. The search string may be typed
by the user or be part of the contents of the current line.
R\bRe\bea\bad\bdl\bli\bin\bne\be C\bCo\bom\bmm\bma\ban\bnd\bd N\bNa\bam\bme\bes\bs
- The following is a list of the names of the commands and the default
+ The following is a list of the names of the commands and the default
key sequences to which they are bound. Command names without an accom-
panying key sequence are unbound by default.
In the following descriptions, _\bp_\bo_\bi_\bn_\bt refers to the current cursor posi-
- tion, and _\bm_\ba_\br_\bk refers to a cursor position saved by the s\bse\bet\bt-\b-m\bma\bar\brk\bk com-
- mand. The text between the point and mark is referred to as the _\br_\be_\b-
+ tion, and _\bm_\ba_\br_\bk refers to a cursor position saved by the s\bse\bet\bt-\b-m\bma\bar\brk\bk com-
+ mand. The text between the point and mark is referred to as the _\br_\be_\b-
_\bg_\bi_\bo_\bn. R\bRe\bea\bad\bdl\bli\bin\bne\be has the concept of an _\ba_\bc_\bt_\bi_\bv_\be _\br_\be_\bg_\bi_\bo_\bn: when the region is
active, r\bre\bea\bad\bdl\bli\bin\bne\be redisplay highlights the region using the value of the
- a\bac\bct\bti\biv\bve\be-\b-r\bre\beg\bgi\bio\bon\bn-\b-s\bst\bta\bar\brt\bt-\b-c\bco\bol\blo\bor\br variable. The e\ben\bna\bab\bbl\ble\be-\b-a\bac\bct\bti\biv\bve\be-\b-r\bre\beg\bgi\bio\bon\bn r\bre\bea\bad\bdl\bli\bin\bne\be
+ a\bac\bct\bti\biv\bve\be-\b-r\bre\beg\bgi\bio\bon\bn-\b-s\bst\bta\bar\brt\bt-\b-c\bco\bol\blo\bor\br variable. The e\ben\bna\bab\bbl\ble\be-\b-a\bac\bct\bti\biv\bve\be-\b-r\bre\beg\bgi\bio\bon\bn r\bre\bea\bad\bdl\bli\bin\bne\be
variable turns this on and off. Several commands set the region to ac-
tive; those are noted below.
C\bCo\bom\bmm\bma\ban\bnd\bds\bs f\bfo\bor\br M\bMo\bov\bvi\bin\bng\bg
b\bbe\beg\bgi\bin\bnn\bni\bin\bng\bg-\b-o\bof\bf-\b-l\bli\bin\bne\be (\b(C\bC-\b-a\ba)\b)
- Move to the start of the current line. This may also be bound
+ Move to the start of the current line. This may also be bound
to the Home key on some keyboards.
e\ben\bnd\bd-\b-o\bof\bf-\b-l\bli\bin\bne\be (\b(C\bC-\b-e\be)\b)
- Move to the end of the line. This may also be bound to the End
+ Move to the end of the line. This may also be bound to the End
key on some keyboards.
f\bfo\bor\brw\bwa\bar\brd\bd-\b-c\bch\bha\bar\br (\b(C\bC-\b-f\bf)\b)
- Move forward a character. This may also be bound to the right
+ Move forward a character. This may also be bound to the right
arrow key on some keyboards.
b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-c\bch\bha\bar\br (\b(C\bC-\b-b\bb)\b)
Move back a character. This may also be bound to the left arrow
Move forward to the end of the next word. Words are composed of
alphanumeric characters (letters and digits).
b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-b\bb)\b)
- Move back to the start of the current or previous word. Words
+ Move back to the start of the current or previous word. Words
are composed of alphanumeric characters (letters and digits).
s\bsh\bhe\bel\bll\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd
- Move forward to the end of the next word. Words are delimited
+ Move forward to the end of the next word. Words are delimited
by non-quoted shell metacharacters.
s\bsh\bhe\bel\bll\bl-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd
- Move back to the start of the current or previous word. Words
+ Move back to the start of the current or previous word. Words
are delimited by non-quoted shell metacharacters.
p\bpr\bre\bev\bvi\bio\bou\bus\bs-\b-s\bsc\bcr\bre\bee\ben\bn-\b-l\bli\bin\bne\be
- Attempt to move point to the same physical screen column on the
- previous physical screen line. This will not have the desired
- effect if the current r\bre\bea\bad\bdl\bli\bin\bne\be line does not take up more than
- one physical line or if point is not greater than the length of
+ Attempt to move point to the same physical screen column on the
+ previous physical screen line. This will not have the desired
+ effect if the current r\bre\bea\bad\bdl\bli\bin\bne\be line does not take up more than
+ one physical line or if point is not greater than the length of
the prompt plus the screen width.
n\bne\bex\bxt\bt-\b-s\bsc\bcr\bre\bee\ben\bn-\b-l\bli\bin\bne\be
- Attempt to move point to the same physical screen column on the
- next physical screen line. This will not have the desired ef-
+ Attempt to move point to the same physical screen column on the
+ next physical screen line. This will not have the desired ef-
fect if the current r\bre\bea\bad\bdl\bli\bin\bne\be line does not take up more than one
- physical line or if the length of the current r\bre\bea\bad\bdl\bli\bin\bne\be line is
+ physical line or if the length of the current r\bre\bea\bad\bdl\bli\bin\bne\be line is
not greater than the length of the prompt plus the screen width.
c\bcl\ble\bea\bar\br-\b-d\bdi\bis\bsp\bpl\bla\bay\by (\b(M\bM-\b-C\bC-\b-l\bl)\b)
- Clear the screen and, if possible, the terminal's scrollback
- buffer, then redraw the current line, leaving the current line
+ Clear the screen and, if possible, the terminal's scrollback
+ buffer, then redraw the current line, leaving the current line
at the top of the screen.
c\bcl\ble\bea\bar\br-\b-s\bsc\bcr\bre\bee\ben\bn (\b(C\bC-\b-l\bl)\b)
Clear the screen, then redraw the current line, leaving the cur-
- rent line at the top of the screen. With an argument, refresh
+ rent line at the top of the screen. With an argument, refresh
the current line without clearing the screen.
r\bre\bed\bdr\bra\baw\bw-\b-c\bcu\bur\brr\bre\ben\bnt\bt-\b-l\bli\bin\bne\be
Refresh the current line.
C\bCo\bom\bmm\bma\ban\bnd\bds\bs f\bfo\bor\br M\bMa\ban\bni\bip\bpu\bul\bla\bat\bti\bin\bng\bg t\bth\bhe\be H\bHi\bis\bst\bto\bor\bry\by
a\bac\bcc\bce\bep\bpt\bt-\b-l\bli\bin\bne\be (\b(N\bNe\bew\bwl\bli\bin\bne\be,\b, R\bRe\bet\btu\bur\brn\bn)\b)
Accept the line regardless of where the cursor is. If this line
- is non-empty, add it to the history list according to the state
- of the H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL and H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE variables. If the line is a
- modified history line, restore the history line to its original
+ is non-empty, add it to the history list according to the state
+ of the H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL and H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE variables. If the line is a
+ modified history line, restore the history line to its original
state.
p\bpr\bre\bev\bvi\bio\bou\bus\bs-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-p\bp)\b)
Fetch the previous command from the history list, moving back in
- the list. This may also be bound to the up arrow key on some
+ the list. This may also be bound to the up arrow key on some
keyboards.
n\bne\bex\bxt\bt-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-n\bn)\b)
- Fetch the next command from the history list, moving forward in
- the list. This may also be bound to the down arrow key on some
+ Fetch the next command from the history list, moving forward in
+ the list. This may also be bound to the down arrow key on some
keyboards.
b\bbe\beg\bgi\bin\bnn\bni\bin\bng\bg-\b-o\bof\bf-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-<\b<)\b)
Move to the first line in the history.
e\ben\bnd\bd-\b-o\bof\bf-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b->\b>)\b)
- Move to the end of the input history, i.e., the line currently
+ Move to the end of the input history, i.e., the line currently
being entered.
o\bop\bpe\ber\bra\bat\bte\be-\b-a\ban\bnd\bd-\b-g\bge\bet\bt-\b-n\bne\bex\bxt\bt (\b(C\bC-\b-o\bo)\b)
- Accept the current line for execution as if a newline had been
- entered, and fetch the next line relative to the current line
- from the history for editing. A numeric argument, if supplied,
+ Accept the current line for execution as if a newline had been
+ entered, and fetch the next line relative to the current line
+ from the history for editing. A numeric argument, if supplied,
specifies the history entry to use instead of the current line.
f\bfe\bet\btc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by
- With a numeric argument, fetch that entry from the history list
+ With a numeric argument, fetch that entry from the history list
and make it the current line. Without an argument, move back to
the first entry in the history list.
r\bre\bev\bve\ber\brs\bse\be-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-r\br)\b)
- Search backward starting at the current line and moving "up"
- through the history as necessary. This is an incremental
- search. This command sets the region to the matched text and
- activates the region.
- f\bfo\bor\brw\bwa\bar\brd\bd-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-s\bs)\b)
- Search forward starting at the current line and moving "down"
+ Search backward starting at the current line and moving "up"
through the history as necessary. This is an incremental
search. This command sets the region to the matched text and
activates the region.
+ f\bfo\bor\brw\bwa\bar\brd\bd-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(C\bC-\b-s\bs)\b)
+ Search forward starting at the current line and moving "down"
+ through the history as necessary. This is an incremental
+ search. This command sets the region to the matched text and
+ activates the region.
n\bno\bon\bn-\b-i\bin\bnc\bcr\bre\bem\bme\ben\bnt\bta\bal\bl-\b-r\bre\bev\bve\ber\brs\bse\be-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-p\bp)\b)
Search backward through the history starting at the current line
- using a non-incremental search for a string supplied by the
+ using a non-incremental search for a string supplied by the
user. The search string may match anywhere in a history line.
n\bno\bon\bn-\b-i\bin\bnc\bcr\bre\bem\bme\ben\bnt\bta\bal\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-s\bse\bea\bar\brc\bch\bh-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-n\bn)\b)
- Search forward through the history using a non-incremental
+ Search forward through the history using a non-incremental
search for a string supplied by the user. The search string may
match anywhere in a history line.
h\bhi\bis\bst\bto\bor\bry\by-\b-s\bse\bea\bar\brc\bch\bh-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd
non-incremental search. This may be bound to the Page Up key on
some keyboards.
h\bhi\bis\bst\bto\bor\bry\by-\b-s\bse\bea\bar\brc\bch\bh-\b-f\bfo\bor\brw\bwa\bar\brd\bd
- Search forward through the history for the string of characters
+ Search forward through the history for the string of characters
between the start of the current line and the point. The search
string must match at the beginning of a history line. This is a
- non-incremental search. This may be bound to the Page Down key
+ non-incremental search. This may be bound to the Page Down key
on some keyboards.
h\bhi\bis\bst\bto\bor\bry\by-\b-s\bsu\bub\bbs\bst\btr\bri\bin\bng\bg-\b-s\bse\bea\bar\brc\bch\bh-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd
Search backward through the history for the string of characters
between the start of the current line and the point. The search
- string may match anywhere in a history line. This is a non-in-
+ string may match anywhere in a history line. This is a non-in-
cremental search.
h\bhi\bis\bst\bto\bor\bry\by-\b-s\bsu\bub\bbs\bst\btr\bri\bin\bng\bg-\b-s\bse\bea\bar\brc\bch\bh-\b-f\bfo\bor\brw\bwa\bar\brd\bd
- Search forward through the history for the string of characters
+ Search forward through the history for the string of characters
between the start of the current line and the point. The search
- string may match anywhere in a history line. This is a non-in-
+ string may match anywhere in a history line. This is a non-in-
cremental search.
y\bya\ban\bnk\bk-\b-n\bnt\bth\bh-\b-a\bar\brg\bg (\b(M\bM-\b-C\bC-\b-y\by)\b)
- Insert the first argument to the previous command (usually the
+ Insert the first argument to the previous command (usually the
second word on the previous line) at point. With an argument _\bn,
- insert the _\bnth word from the previous command (the words in the
- previous command begin with word 0). A negative argument in-
- serts the _\bnth word from the end of the previous command. Once
- the argument _\bn is computed, this uses the history expansion fa-
- cilities to extract the _\bnth word, as if the "!_\bn" history expan-
+ insert the _\bnth word from the previous command (the words in the
+ previous command begin with word 0). A negative argument in-
+ serts the _\bnth word from the end of the previous command. Once
+ the argument _\bn is computed, this uses the history expansion fa-
+ cilities to extract the _\bnth word, as if the "!_\bn" history expan-
sion had been specified.
y\bya\ban\bnk\bk-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bg (\b(M\bM-\b-.\b.,\b, M\bM-\b-_\b_)\b)
- Insert the last argument to the previous command (the last word
+ Insert the last argument to the previous command (the last word
of the previous history entry). With a numeric argument, behave
- exactly like y\bya\ban\bnk\bk-\b-n\bnt\bth\bh-\b-a\bar\brg\bg. Successive calls to y\bya\ban\bnk\bk-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bg
- move back through the history list, inserting the last word (or
- the word specified by the argument to the first call) of each
+ exactly like y\bya\ban\bnk\bk-\b-n\bnt\bth\bh-\b-a\bar\brg\bg. Successive calls to y\bya\ban\bnk\bk-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bg
+ move back through the history list, inserting the last word (or
+ the word specified by the argument to the first call) of each
line in turn. Any numeric argument supplied to these successive
- calls determines the direction to move through the history. A
- negative argument switches the direction through the history
- (back or forward). This uses the history expansion facilities
- to extract the last word, as if the "!$" history expansion had
+ calls determines the direction to move through the history. A
+ negative argument switches the direction through the history
+ (back or forward). This uses the history expansion facilities
+ to extract the last word, as if the "!$" history expansion had
been specified.
s\bsh\bhe\bel\bll\bl-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-l\bli\bin\bne\be (\b(M\bM-\b-C\bC-\b-e\be)\b)
- Expand the line by performing shell word expansions. This per-
+ Expand the line by performing shell word expansions. This per-
forms alias and history expansion, $\b$'_\bs_\bt_\br_\bi_\bn_\bg' and $\b$"_\bs_\bt_\br_\bi_\bn_\bg" quot-
- ing, tilde expansion, parameter and variable expansion, arith-
- metic expansion, command and process substitution, word split-
- ting, and quote removal. An explicit argument suppresses com-
- mand and process substitution. See H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN below for
+ ing, tilde expansion, parameter and variable expansion, arith-
+ metic expansion, command and process substitution, word split-
+ ting, and quote removal. An explicit argument suppresses com-
+ mand and process substitution. See H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN below for
a description of history expansion.
h\bhi\bis\bst\bto\bor\bry\by-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-l\bli\bin\bne\be (\b(M\bM-\b-^\b^)\b)
- Perform history expansion on the current line. See H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bX-\b-
+ Perform history expansion on the current line. See H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bX-\b-
P\bPA\bAN\bNS\bSI\bIO\bON\bN below for a description of history expansion.
m\bma\bag\bgi\bic\bc-\b-s\bsp\bpa\bac\bce\be
- Perform history expansion on the current line and insert a
+ Perform history expansion on the current line and insert a
space. See H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN below for a description of history
expansion.
a\bal\bli\bia\bas\bs-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-l\bli\bin\bne\be
- Perform alias expansion on the current line. See A\bAL\bLI\bIA\bAS\bSE\bES\bS above
+ Perform alias expansion on the current line. See A\bAL\bLI\bIA\bAS\bSE\bES\bS above
for a description of alias expansion.
h\bhi\bis\bst\bto\bor\bry\by-\b-a\ban\bnd\bd-\b-a\bal\bli\bia\bas\bs-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-l\bli\bin\bne\be
Perform history and alias expansion on the current line.
i\bin\bns\bse\ber\brt\bt-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt (\b(M\bM-\b-.\b.,\b, M\bM-\b-_\b_)\b)
A synonym for y\bya\ban\bnk\bk-\b-l\bla\bas\bst\bt-\b-a\bar\brg\bg.
e\bed\bdi\bit\bt-\b-a\ban\bnd\bd-\b-e\bex\bxe\bec\bcu\but\bte\be-\b-c\bco\bom\bmm\bma\ban\bnd\bd (\b(C\bC-\b-x\bx C\bC-\b-e\be)\b)
- Invoke an editor on the current command line, and execute the
+ Invoke an editor on the current command line, and execute the
result as shell commands. B\bBa\bas\bsh\bh attempts to invoke $\b$V\bVI\bIS\bSU\bUA\bAL\bL, $\b$E\bED\bD-\b-
I\bIT\bTO\bOR\bR, and _\be_\bm_\ba_\bc_\bs as the editor, in that order.
C\bCo\bom\bmm\bma\ban\bnd\bds\bs f\bfo\bor\br C\bCh\bha\ban\bng\bgi\bin\bng\bg T\bTe\bex\bxt\bt
_\be_\bn_\bd_\b-_\bo_\bf_\b-_\bf_\bi_\bl_\be (\b(u\bus\bsu\bua\bal\bll\bly\by C\bC-\b-d\bd)\b)
- The character indicating end-of-file as set, for example, by
+ The character indicating end-of-file as set, for example, by
_\bs_\bt_\bt_\by(1). If this character is read when there are no characters
on the line, and point is at the beginning of the line, r\bre\bea\bad\bdl\bli\bin\bne\be
interprets it as the end of input and returns E\bEO\bOF\bF.
above for the effects. This may also be bound to the Delete key
on some keyboards.
b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br (\b(R\bRu\bub\bbo\bou\but\bt)\b)
- Delete the character behind the cursor. When given a numeric
+ Delete the character behind the cursor. When given a numeric
argument, save the deleted text on the kill ring.
f\bfo\bor\brw\bwa\bar\brd\bd-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br
- Delete the character under the cursor, unless the cursor is at
+ Delete the character under the cursor, unless the cursor is at
the end of the line, in which case the character behind the cur-
sor is deleted.
q\bqu\buo\bot\bte\bed\bd-\b-i\bin\bns\bse\ber\brt\bt (\b(C\bC-\b-q\bq,\b, C\bC-\b-v\bv)\b)
- Add the next character typed to the line verbatim. This is how
+ Add the next character typed to the line verbatim. This is how
to insert characters like C\bC-\b-q\bq, for example.
t\bta\bab\bb-\b-i\bin\bns\bse\ber\brt\bt (\b(C\bC-\b-v\bv T\bTA\bAB\bB)\b)
Insert a tab character.
s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt (\b(a\ba,\b, b\bb,\b, A\bA,\b, 1\b1,\b, !\b!,\b, ...)\b)
Insert the character typed.
b\bbr\bra\bac\bck\bke\bet\bte\bed\bd-\b-p\bpa\bas\bst\bte\be-\b-b\bbe\beg\bgi\bin\bn
- This function is intended to be bound to the "bracketed paste"
- escape sequence sent by some terminals, and such a binding is
- assigned by default. It allows r\bre\bea\bad\bdl\bli\bin\bne\be to insert the pasted
- text as a single unit without treating each character as if it
- had been read from the keyboard. The pasted characters are in-
- serted as if each one was bound to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt instead of exe-
+ This function is intended to be bound to the "bracketed paste"
+ escape sequence sent by some terminals, and such a binding is
+ assigned by default. It allows r\bre\bea\bad\bdl\bli\bin\bne\be to insert the pasted
+ text as a single unit without treating each character as if it
+ had been read from the keyboard. The pasted characters are in-
+ serted as if each one was bound to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt instead of exe-
cuting any editing commands.
- Bracketed paste sets the region to the inserted text and acti-
+ Bracketed paste sets the region to the inserted text and acti-
vates the region.
t\btr\bra\ban\bns\bsp\bpo\bos\bse\be-\b-c\bch\bha\bar\brs\bs (\b(C\bC-\b-t\bt)\b)
- Drag the character before point forward over the character at
- point, moving point forward as well. If point is at the end of
- the line, then this transposes the two characters before point.
+ Drag the character before point forward over the character at
+ point, moving point forward as well. If point is at the end of
+ the line, then this transposes the two characters before point.
Negative arguments have no effect.
t\btr\bra\ban\bns\bsp\bpo\bos\bse\be-\b-w\bwo\bor\brd\bds\bs (\b(M\bM-\b-t\bt)\b)
- Drag the word before point past the word after point, moving
- point over that word as well. If point is at the end of the
+ Drag the word before point past the word after point, moving
+ point over that word as well. If point is at the end of the
line, this transposes the last two words on the line.
s\bsh\bhe\bel\bll\bl-\b-t\btr\bra\ban\bns\bsp\bpo\bos\bse\be-\b-w\bwo\bor\brd\bds\bs (\b(M\bM-\b-C\bC-\b-t\bt)\b)
- Drag the word before point past the word after point, moving
- point past that word as well. If the insertion point is at the
+ 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.
- Word boundaries are the same as s\bsh\bhe\bel\bll\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd and
+ Word boundaries are the same as s\bsh\bhe\bel\bll\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd and
s\bsh\bhe\bel\bll\bl-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
u\bup\bpc\bca\bas\bse\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-u\bu)\b)
- Uppercase the current (or following) word. With a negative ar-
+ Uppercase the current (or following) word. With a negative ar-
gument, uppercase the previous word, but do not move point.
d\bdo\bow\bwn\bnc\bca\bas\bse\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-l\bl)\b)
- Lowercase the current (or following) word. With a negative ar-
+ Lowercase the current (or following) word. With a negative ar-
gument, lowercase the previous word, but do not move point.
c\bca\bap\bpi\bit\bta\bal\bli\biz\bze\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-c\bc)\b)
Capitalize the current (or following) word. With a negative ar-
gument, capitalize the previous word, but do not move point.
o\bov\bve\ber\brw\bwr\bri\bit\bte\be-\b-m\bmo\bod\bde\be
- Toggle overwrite mode. With an explicit positive numeric argu-
+ Toggle overwrite mode. With an explicit positive numeric argu-
ment, switches to overwrite mode. With an explicit non-positive
numeric argument, switches to insert mode. This command affects
- only e\bem\bma\bac\bcs\bs mode; v\bvi\bi mode does overwrite differently. Each call
+ only e\bem\bma\bac\bcs\bs mode; v\bvi\bi mode does overwrite differently. Each call
to _\br_\be_\ba_\bd_\bl_\bi_\bn_\be_\b(_\b) starts in insert mode.
- In overwrite mode, characters bound to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt replace the
- text at point rather than pushing the text to the right. Char-
- acters bound to b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br replace the character be-
- fore point with a space. By default, this command is unbound,
+ In overwrite mode, characters bound to s\bse\bel\blf\bf-\b-i\bin\bns\bse\ber\brt\bt replace the
+ text at point rather than pushing the text to the right. Char-
+ acters bound to b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br replace the character be-
+ fore point with a space. By default, this command is unbound,
but may be bound to the Insert key on some keyboards.
K\bKi\bil\bll\bli\bin\bng\bg a\ban\bnd\bd Y\bYa\ban\bnk\bki\bin\bng\bg
k\bki\bil\bll\bl-\b-l\bli\bin\bne\be (\b(C\bC-\b-k\bk)\b)
Kill the text from point to the end of the current line. With a
- negative numeric argument, kill backward from the cursor to the
+ negative numeric argument, kill backward from the cursor to the
beginning of the line.
b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-k\bki\bil\bll\bl-\b-l\bli\bin\bne\be (\b(C\bC-\b-x\bx R\bRu\bub\bbo\bou\but\bt)\b)
Kill backward to the beginning of the current line. With a neg-
- ative numeric argument, kill forward from the cursor to the end
+ ative numeric argument, kill forward from the cursor to the end
of the line.
u\bun\bni\bix\bx-\b-l\bli\bin\bne\be-\b-d\bdi\bis\bsc\bca\bar\brd\bd (\b(C\bC-\b-u\bu)\b)
- Kill backward from point to the beginning of the line, saving
+ Kill backward from point to the beginning of the line, saving
the killed text on the kill-ring.
k\bki\bil\bll\bl-\b-w\bwh\bho\bol\ble\be-\b-l\bli\bin\bne\be
- Kill all characters on the current line, no matter where point
+ Kill all characters on the current line, no matter where point
is.
k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-d\bd)\b)
- 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
+ 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 those used by f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-R\bRu\bub\bbo\bou\but\bt)\b)
- Kill the word behind point. Word boundaries are the same as
+ Kill the word behind point. Word boundaries are the same as
those used by b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
s\bsh\bhe\bel\bll\bl-\b-k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-C\bC-\b-d\bd)\b)
- 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
+ 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 those used by s\bsh\bhe\bel\bll\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
s\bsh\bhe\bel\bll\bl-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-k\bki\bil\bll\bl-\b-w\bwo\bor\brd\bd
- Kill the word behind point. Word boundaries are the same as
+ Kill the word behind point. Word boundaries are the same as
those used by s\bsh\bhe\bel\bll\bl-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
u\bun\bni\bix\bx-\b-w\bwo\bor\brd\bd-\b-r\bru\bub\bbo\bou\but\bt (\b(C\bC-\b-w\bw)\b)
- Kill the word behind point, using white space as a word bound-
+ Kill the word behind point, using white space as a word bound-
ary, saving the killed text on the kill-ring.
u\bun\bni\bix\bx-\b-f\bfi\bil\ble\ben\bna\bam\bme\be-\b-r\bru\bub\bbo\bou\but\bt
- Kill the word behind point, using white space and the slash
- character as the word boundaries, saving the killed text on the
+ Kill the word behind point, using white space and the slash
+ character as the word boundaries, saving the killed text on the
kill-ring.
d\bde\bel\ble\bet\bte\be-\b-h\bho\bor\bri\biz\bzo\bon\bnt\bta\bal\bl-\b-s\bsp\bpa\bac\bce\be (\b(M\bM-\b-\\b\)\b)
Delete all spaces and tabs around point.
k\bki\bil\bll\bl-\b-r\bre\beg\bgi\bio\bon\bn
Kill the text in the current region.
c\bco\bop\bpy\by-\b-r\bre\beg\bgi\bio\bon\bn-\b-a\bas\bs-\b-k\bki\bil\bll\bl
- Copy the text in the region to the kill buffer, so it can be
+ Copy the text in the region to the kill buffer, so it can be
yanked immediately.
c\bco\bop\bpy\by-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd
- Copy the word before point to the kill buffer. The word bound-
+ Copy the word before point to the kill buffer. The word bound-
aries are the same as b\bba\bac\bck\bkw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
c\bco\bop\bpy\by-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd
- Copy the word following point to the kill buffer. The word
+ Copy the word following point to the kill buffer. The word
boundaries are the same as f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
y\bya\ban\bnk\bk (\b(C\bC-\b-y\by)\b)
Yank the top of the kill ring into the buffer at point.
y\bya\ban\bnk\bk-\b-p\bpo\bop\bp (\b(M\bM-\b-y\by)\b)
- Rotate the kill ring, and yank the new top. Only works follow-
+ Rotate the kill ring, and yank the new top. Only works follow-
ing y\bya\ban\bnk\bk or y\bya\ban\bnk\bk-\b-p\bpo\bop\bp.
N\bNu\bum\bme\ber\bri\bic\bc A\bAr\brg\bgu\bum\bme\ben\bnt\bts\bs
d\bdi\big\bgi\bit\bt-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt (\b(M\bM-\b-0\b0,\b, M\bM-\b-1\b1,\b, ...,\b, M\bM-\b--\b-)\b)
- Add this digit to the argument already accumulating, or start a
+ Add this digit to the argument already accumulating, or start a
new argument. M-- starts a negative argument.
u\bun\bni\biv\bve\ber\brs\bsa\bal\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt
- 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. If the command is fol-
+ 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. If the command is fol-
lowed by digits, executing u\bun\bni\biv\bve\ber\brs\bsa\bal\bl-\b-a\bar\brg\bgu\bum\bme\ben\bnt\bt again ends the nu-
meric argument, but is otherwise ignored. As a special case, if
this command is immediately followed by a character that is nei-
- ther a digit nor minus sign, the argument count for the next
- command is multiplied by four. The argument count is initially
- one, so executing this function the first time makes the argu-
+ ther a digit nor minus sign, the argument count for the next
+ command is multiplied by four. The argument count is initially
+ one, so executing this function the first time makes the argu-
ment count four, a second time makes the argument count sixteen,
and so on.
C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg
c\bco\bom\bmp\bpl\ble\bet\bte\be (\b(T\bTA\bAB\bB)\b)
- Attempt to perform completion on the text before point. B\bBa\bas\bsh\bh
- attempts completion by first checking for any programmable com-
- pletions for the command word (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn be-
+ Attempt to perform completion on the text before point. B\bBa\bas\bsh\bh
+ attempts completion by first checking for any programmable com-
+ pletions for the command word (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn be-
low), otherwise treating the text as a variable (if the text be-
gins with $\b$), username (if the text begins with ~\b~), hostname (if
- the text begins with @\b@), or command (including aliases, func-
- tions, and builtins) in turn. If none of these produces a
+ the text begins with @\b@), or command (including aliases, func-
+ tions, and builtins) in turn. If none of these produces a
match, it falls back to filename completion.
p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(M\bM-\b-?\b?)\b)
- List the possible completions of the text before point. When
+ List the possible completions of the text before point. When
displaying completions, r\bre\bea\bad\bdl\bli\bin\bne\be sets the number of columns used
- for display to the value of c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-w\bwi\bid\bdt\bth\bh, the value
- of the shell variable C\bCO\bOL\bLU\bUM\bMN\bNS\bS, or the screen width, in that or-
+ for display to the value of c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn-\b-d\bdi\bis\bsp\bpl\bla\bay\by-\b-w\bwi\bid\bdt\bth\bh, the value
+ of the shell variable C\bCO\bOL\bLU\bUM\bMN\bNS\bS, or the screen width, in that or-
der.
i\bin\bns\bse\ber\brt\bt-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(M\bM-\b-*\b*)\b)
- Insert all completions of the text before point that would have
+ Insert all completions of the text before point that would have
been generated by p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs, separated by a space.
m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be
- Similar to c\bco\bom\bmp\bpl\ble\bet\bte\be, but replaces the word to be completed with
- a single match from the list of possible completions. Repeat-
- edly executing m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be steps through the list of possible
- completions, inserting each match in turn. At the end of the
- list of completions, m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be rings the bell (subject to
- the setting of b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be) and restores the original text. An
- argument of _\bn moves _\bn positions forward in the list of matches;
- a negative argument moves backward through the list. This com-
+ Similar to c\bco\bom\bmp\bpl\ble\bet\bte\be, but replaces the word to be completed with
+ a single match from the list of possible completions. Repeat-
+ edly executing m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be steps through the list of possible
+ completions, inserting each match in turn. At the end of the
+ list of completions, m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be rings the bell (subject to
+ the setting of b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be) and restores the original text. An
+ argument of _\bn moves _\bn positions forward in the list of matches;
+ a negative argument moves backward through the list. This com-
mand is intended to be bound to T\bTA\bAB\bB, but is unbound by default.
m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd
- Identical to m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be, but moves backward through the list
- of possible completions, as if m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be had been given a
+ Identical to m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be, but moves backward through the list
+ of possible completions, as if m\bme\ben\bnu\bu-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be had been given a
negative argument. This command is unbound by default.
e\bex\bxp\bpo\bor\brt\bt-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs
- Perform completion on the word before point as described above
- and write the list of possible completions to r\bre\bea\bad\bdl\bli\bin\bne\be's output
- stream using the following format, writing information on sepa-
+ Perform completion on the word before point as described above
+ and write the list of possible completions to r\bre\bea\bad\bdl\bli\bin\bne\be's output
+ stream using the following format, writing information on sepa-
rate lines:
+\bo the number of matches _\bN;
+\bo the word being completed;
- +\bo _\bS:_\bE, where S and E are the start and end offsets of the
+ +\bo _\bS:_\bE, where S and E are the start and end offsets of the
word in the r\bre\bea\bad\bdl\bli\bin\bne\be line buffer; then
+\bo each match, one per line
- If there are no matches, the first line will be "0", and this
- command does not print any output after the _\bS:_\bE. If there is
- only a single match, this prints a single line containing it.
- If there is more than one match, this prints the common prefix
- of the matches, which may be empty, on the first line after the
+ If there are no matches, the first line will be "0", and this
+ command does not print any output after the _\bS:_\bE. If there is
+ only a single match, this prints a single line containing it.
+ If there is more than one match, this prints the common prefix
+ of the matches, which may be empty, on the first line after the
_\bS:_\bE, then the matches on subsequent lines. In this case, _\bN will
include the first line with the common prefix.
The user or application should be able to accommodate the possi-
bility of a blank line. The intent is that the user or applica-
- tion reads _\bN lines after the line containing _\bS:_\bE to obtain the
+ tion reads _\bN lines after the line containing _\bS:_\bE to obtain the
match list. This command is unbound by default.
d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br-\b-o\bor\br-\b-l\bli\bis\bst\bt
- Deletes the character under the cursor if not at the beginning
- or end of the line (like d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br). At the end of the line,
+ Deletes the character under the cursor if not at the beginning
+ or end of the line (like d\bde\bel\ble\bet\bte\be-\b-c\bch\bha\bar\br). At the end of the line,
it behaves identically to p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs. This command is
unbound by default.
it as a filename.
c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-u\bus\bse\ber\brn\bna\bam\bme\be (\b(M\bM-\b-~\b~)\b)
- Attempt completion on the text before point, treating it as a
+ Attempt completion on the text before point, treating it as a
username.
p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-u\bus\bse\ber\brn\bna\bam\bme\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(C\bC-\b-x\bx ~\b~)\b)
it as a username.
c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-v\bva\bar\bri\bia\bab\bbl\ble\be (\b(M\bM-\b-$\b$)\b)
- Attempt completion on the text before point, treating it as a
+ Attempt completion on the text before point, treating it as a
shell variable.
p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-v\bva\bar\bri\bia\bab\bbl\ble\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(C\bC-\b-x\bx $\b$)\b)
it as a shell variable.
c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-h\bho\bos\bst\btn\bna\bam\bme\be (\b(M\bM-\b-@\b@)\b)
- Attempt completion on the text before point, treating it as a
+ Attempt completion on the text before point, treating it as a
hostname.
p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-h\bho\bos\bst\btn\bna\bam\bme\be-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(C\bC-\b-x\bx @\b@)\b)
it as a hostname.
c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-c\bco\bom\bmm\bma\ban\bnd\bd (\b(M\bM-\b-!\b!)\b)
- 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 functions, shell
+ 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 functions, shell
builtins, and finally executable filenames, in that order.
p\bpo\bos\bss\bsi\bib\bbl\ble\be-\b-c\bco\bom\bmm\bma\ban\bnd\bd-\b-c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bns\bs (\b(C\bC-\b-x\bx !\b!)\b)
it as a command name.
d\bdy\byn\bna\bam\bmi\bic\bc-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-h\bhi\bis\bst\bto\bor\bry\by (\b(M\bM-\b-T\bTA\bAB\bB)\b)
- Attempt completion on the text before point, comparing the text
+ Attempt completion on the text before point, comparing the text
against history list entries for possible completion matches.
d\bda\bab\bbb\bbr\bre\bev\bv-\b-e\bex\bxp\bpa\ban\bnd\bd
- Attempt menu completion on the text before point, comparing the
+ Attempt menu completion on the text before point, comparing the
text against lines from the history list for possible completion
matches.
c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-i\bin\bnt\bto\bo-\b-b\bbr\bra\bac\bce\bes\bs (\b(M\bM-\b-{\b{)\b)
Perform filename completion and insert the list of possible com-
- pletions enclosed within braces so the list is available to the
+ pletions enclosed within braces so the list is available to the
shell (see B\bBr\bra\bac\bce\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn above).
K\bKe\bey\byb\bbo\boa\bar\brd\bd M\bMa\bac\bcr\bro\bos\bs
s\bst\bta\bar\brt\bt-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b(C\bC-\b-x\bx (\b()\b)
- Begin saving the characters typed into the current keyboard
+ Begin saving the characters typed into the current keyboard
macro.
e\ben\bnd\bd-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b(C\bC-\b-x\bx )\b))\b)
Stop saving the characters typed into the current keyboard macro
and store the definition.
c\bca\bal\bll\bl-\b-l\bla\bas\bst\bt-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b(C\bC-\b-x\bx e\be)\b)
- Re-execute the last keyboard macro defined, by making the char-
+ Re-execute the last keyboard macro defined, by making the char-
acters in the macro appear as if typed at the keyboard.
p\bpr\bri\bin\bnt\bt-\b-l\bla\bas\bst\bt-\b-k\bkb\bbd\bd-\b-m\bma\bac\bcr\bro\bo (\b()\b)
- Print the last keyboard macro defined in a format suitable for
+ Print the last keyboard macro defined in a format suitable for
the _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
M\bMi\bis\bsc\bce\bel\bll\bla\ban\bne\beo\bou\bus\bs
r\bre\be-\b-r\bre\bea\bad\bd-\b-i\bin\bni\bit\bt-\b-f\bfi\bil\ble\be (\b(C\bC-\b-x\bx C\bC-\b-r\br)\b)
- Read in the contents of the _\bi_\bn_\bp_\bu_\bt_\br_\bc file, and incorporate any
+ Read in the contents of the _\bi_\bn_\bp_\bu_\bt_\br_\bc file, and incorporate any
bindings or variable assignments found there.
a\bab\bbo\bor\brt\bt (\b(C\bC-\b-g\bg)\b)
- Abort the current editing command and ring the terminal's bell
+ Abort the current editing command and ring the terminal's bell
(subject to the setting of b\bbe\bel\bll\bl-\b-s\bst\bty\byl\ble\be).
d\bdo\bo-\b-l\blo\bow\bwe\ber\brc\bca\bas\bse\be-\b-v\bve\ber\brs\bsi\bio\bon\bn (\b(M\bM-\b-A\bA,\b, M\bM-\b-B\bB,\b, M\bM-\b-_\bx,\b, ...)\b)
- If the metafied character _\bx is uppercase, run the command that
+ If the metafied character _\bx is uppercase, run the command that
is bound to the corresponding metafied lowercase character. The
behavior is undefined if _\bx is already lowercase.
p\bpr\bre\bef\bfi\bix\bx-\b-m\bme\bet\bta\ba (\b(E\bES\bSC\bC)\b)
u\bun\bnd\bdo\bo (\b(C\bC-\b-_\b_,\b, C\bC-\b-x\bx C\bC-\b-u\bu)\b)
Incremental undo, separately remembered for each line.
r\bre\bev\bve\ber\brt\bt-\b-l\bli\bin\bne\be (\b(M\bM-\b-r\br)\b)
- Undo all changes made to this line. This is like executing the
- u\bun\bnd\bdo\bo command enough times to return the line to its initial
+ Undo all changes made to this line. This is like executing the
+ u\bun\bnd\bdo\bo command enough times to return the line to its initial
state.
t\bti\bil\bld\bde\be-\b-e\bex\bxp\bpa\ban\bnd\bd (\b(M\bM-\b-&\b&)\b)
Perform tilde expansion on the current word.
s\bse\bet\bt-\b-m\bma\bar\brk\bk (\b(C\bC-\b-@\b@,\b, M\bM-\b-<\b<s\bsp\bpa\bac\bce\be>\b>)\b)
- Set the mark to the point. If a numeric argument is supplied,
+ Set the mark to the point. If a numeric argument is supplied,
set the mark to that position.
e\bex\bxc\bch\bha\ban\bng\bge\be-\b-p\bpo\boi\bin\bnt\bt-\b-a\ban\bnd\bd-\b-m\bma\bar\brk\bk (\b(C\bC-\b-x\bx C\bC-\b-x\bx)\b)
- Swap the point with the mark. Set the current cursor position
+ Swap the point with the mark. Set the current cursor position
to the saved position, then set the mark to the old cursor posi-
tion.
c\bch\bha\bar\bra\bac\bct\bte\ber\br-\b-s\bse\bea\bar\brc\bch\bh (\b(C\bC-\b-]\b])\b)
- Read a character and move point to the next occurrence of that
- character. A negative argument searches for previous occur-
+ Read a character and move point to the next occurrence of that
+ character. A negative argument searches for previous occur-
rences.
c\bch\bha\bar\bra\bac\bct\bte\ber\br-\b-s\bse\bea\bar\brc\bch\bh-\b-b\bba\bac\bck\bkw\bwa\bar\brd\bd (\b(M\bM-\b-C\bC-\b-]\b])\b)
- Read a character and move point to the previous occurrence of
+ Read a character and move point to the previous occurrence of
that character. A negative argument searches for subsequent oc-
currences.
s\bsk\bki\bip\bp-\b-c\bcs\bsi\bi-\b-s\bse\beq\bqu\bue\ben\bnc\bce\be
- Read enough characters to consume a multi-key sequence such as
- those defined for keys like Home and End. CSI sequences begin
+ Read enough characters to consume a multi-key sequence such as
+ those defined for keys like Home and End. CSI sequences begin
with a Control Sequence Indicator (CSI), usually _\bE_\bS_\bC _\b[. If this
sequence is bound to "\e[", keys producing CSI sequences have no
effect unless explicitly bound to a r\bre\bea\bad\bdl\bli\bin\bne\be command, instead of
inserting stray characters into the editing buffer. This is un-
bound by default, but usually bound to _\bE_\bS_\bC _\b[.
i\bin\bns\bse\ber\brt\bt-\b-c\bco\bom\bmm\bme\ben\bnt\bt (\b(M\bM-\b-#\b#)\b)
- Without a numeric argument, insert the value of the r\bre\bea\bad\bdl\bli\bin\bne\be
+ Without a numeric argument, insert the value of the r\bre\bea\bad\bdl\bli\bin\bne\be
c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn variable at the beginning of the current line. If
- a numeric argument is supplied, this command acts as a toggle:
- if the characters at the beginning of the line do not match the
- value of c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn, insert the value; otherwise delete the
- characters in c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn from the beginning of the line. In
- either case, the line is accepted as if a newline had been
- typed. The default value of c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn causes this command
+ a numeric argument is supplied, this command acts as a toggle:
+ if the characters at the beginning of the line do not match the
+ value of c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn, insert the value; otherwise delete the
+ characters in c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn from the beginning of the line. In
+ either case, the line is accepted as if a newline had been
+ typed. The default value of c\bco\bom\bmm\bme\ben\bnt\bt-\b-b\bbe\beg\bgi\bin\bn causes this command
to make the current line a shell comment. If a numeric argument
causes the comment character to be removed, the line will be ex-
ecuted by the shell.
s\bsp\bpe\bel\bll\bl-\b-c\bco\bor\brr\bre\bec\bct\bt-\b-w\bwo\bor\brd\bd (\b(C\bC-\b-x\bx s\bs)\b)
- Perform spelling correction on the current word, treating it as
- a directory or filename, in the same way as the c\bcd\bds\bsp\bpe\bel\bll\bl shell
- option. Word boundaries are the same as those used by
+ Perform spelling correction on the current word, treating it as
+ a directory or filename, in the same way as the c\bcd\bds\bsp\bpe\bel\bll\bl shell
+ option. Word boundaries are the same as those used by
s\bsh\bhe\bel\bll\bl-\b-f\bfo\bor\brw\bwa\bar\brd\bd-\b-w\bwo\bor\brd\bd.
g\bgl\blo\bob\bb-\b-c\bco\bom\bmp\bpl\ble\bet\bte\be-\b-w\bwo\bor\brd\bd (\b(M\bM-\b-g\bg)\b)
Treat the word before point as a pattern for pathname expansion,
- with an asterisk implicitly appended, then use the pattern to
+ with an asterisk implicitly appended, then use the pattern to
generate a list of matching file names for possible completions.
g\bgl\blo\bob\bb-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-w\bwo\bor\brd\bd (\b(C\bC-\b-x\bx *\b*)\b)
Treat the word before point as a pattern for pathname expansion,
- and insert the list of matching file names, replacing the word.
- If a numeric argument is supplied, append a *\b* before pathname
+ and insert the list of matching file names, replacing the word.
+ If a numeric argument is supplied, append a *\b* before pathname
expansion.
g\bgl\blo\bob\bb-\b-l\bli\bis\bst\bt-\b-e\bex\bxp\bpa\ban\bns\bsi\bio\bon\bns\bs (\b(C\bC-\b-x\bx g\bg)\b)
Display the list of expansions that would have been generated by
- g\bgl\blo\bob\bb-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-w\bwo\bor\brd\bd and redisplay the line. If a numeric argument
+ g\bgl\blo\bob\bb-\b-e\bex\bxp\bpa\ban\bnd\bd-\b-w\bwo\bor\brd\bd and redisplay the line. If a numeric argument
is supplied, append a *\b* before pathname expansion.
d\bdu\bum\bmp\bp-\b-f\bfu\bun\bnc\bct\bti\bio\bon\bns\bs
- Print all of the functions and their key bindings to the r\bre\bea\bad\bd-\b-
+ Print all of the functions and their key bindings to the r\bre\bea\bad\bd-\b-
l\bli\bin\bne\be output stream. If a numeric argument is supplied, the out-
- put is formatted in such a way that it can be made part of an
+ put is formatted in such a way that it can be made part of an
_\bi_\bn_\bp_\bu_\bt_\br_\bc file.
d\bdu\bum\bmp\bp-\b-v\bva\bar\bri\bia\bab\bbl\ble\bes\bs
Print all of the settable r\bre\bea\bad\bdl\bli\bin\bne\be variables and their values to
- the r\bre\bea\bad\bdl\bli\bin\bne\be output stream. If a numeric argument is supplied,
- the output is formatted in such a way that it can be made part
+ the r\bre\bea\bad\bdl\bli\bin\bne\be output stream. If a numeric argument is supplied,
+ the output is formatted in such a way that it can be made part
of an _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
d\bdu\bum\bmp\bp-\b-m\bma\bac\bcr\bro\bos\bs
- Print all of the r\bre\bea\bad\bdl\bli\bin\bne\be key sequences bound to macros and the
+ Print all of the r\bre\bea\bad\bdl\bli\bin\bne\be key sequences bound to macros and the
strings they output to the r\bre\bea\bad\bdl\bli\bin\bne\be output stream. If a numeric
argument is supplied, the output is formatted in such a way that
it can be made part of an _\bi_\bn_\bp_\bu_\bt_\br_\bc file.
e\bex\bxe\bec\bcu\but\bte\be-\b-n\bna\bam\bme\bed\bd-\b-c\bco\bom\bmm\bma\ban\bnd\bd (\b(M\bM-\b-x\bx)\b)
Read a bindable r\bre\bea\bad\bdl\bli\bin\bne\be command name from the input and execute
- the function to which it's bound, as if the key sequence to
- which it was bound appeared in the input. If this function is
+ the function to which it's bound, as if the key sequence to
+ which it was bound appeared in the input. If this function is
supplied with a numeric argument, it passes that argument to the
function it executes.
d\bdi\bis\bsp\bpl\bla\bay\by-\b-s\bsh\bhe\bel\bll\bl-\b-v\bve\ber\brs\bsi\bio\bon\bn (\b(C\bC-\b-x\bx C\bC-\b-v\bv)\b)
Display version information about the current instance of b\bba\bas\bsh\bh.
P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
- When a user attempts word completion for a command or an argument to a
- command for which a completion specification (a _\bc_\bo_\bm_\bp_\bs_\bp_\be_\bc) has been de-
- fined using the c\bco\bom\bmp\bpl\ble\bet\bte\be builtin (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below),
+ When a user attempts word completion for a command or an argument to a
+ command for which a completion specification (a _\bc_\bo_\bm_\bp_\bs_\bp_\be_\bc) has been de-
+ fined using the c\bco\bom\bmp\bpl\ble\bet\bte\be builtin (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below),
r\bre\bea\bad\bdl\bli\bin\bne\be invokes the programmable completion facilities.
- First, b\bba\bas\bsh\bh identifies the command name. If a compspec has been de-
- fined for that command, the compspec is used to generate the list of
- possible completions for the word. If the command word is the empty
- string (completion attempted at the beginning of an empty line), b\bba\bas\bsh\bh
- uses any compspec defined with the -\b-E\bE option to c\bco\bom\bmp\bpl\ble\bet\bte\be. The -\b-I\bI op-
- tion to c\bco\bom\bmp\bpl\ble\bet\bte\be indicates that the command word is the first non-as-
+ First, b\bba\bas\bsh\bh identifies the command name. If a compspec has been de-
+ fined for that command, the compspec is used to generate the list of
+ possible completions for the word. If the command word is the empty
+ string (completion attempted at the beginning of an empty line), b\bba\bas\bsh\bh
+ uses any compspec defined with the -\b-E\bE option to c\bco\bom\bmp\bpl\ble\bet\bte\be. The -\b-I\bI op-
+ tion to c\bco\bom\bmp\bpl\ble\bet\bte\be indicates that the command word is the first non-as-
signment word on the line, or after a command delimiter such as ;\b; or |\b|.
This usually indicates command name completion.
- If the command word is a full pathname, b\bba\bas\bsh\bh searches for a compspec
- for the full pathname first. If there is no compspec for the full
- pathname, b\bba\bas\bsh\bh attempts to find a compspec for the portion following
- the final slash. If those searches do not result in a compspec, or if
- there is no compspec for the command word, b\bba\bas\bsh\bh uses any compspec de-
- fined with the -\b-D\bD option to c\bco\bom\bmp\bpl\ble\bet\bte\be as the default. If there is no
- default compspec, b\bba\bas\bsh\bh performs alias expansion on the command word as
- a final resort, and attempts to find a compspec for the command word
+ If the command word is a full pathname, b\bba\bas\bsh\bh searches for a compspec
+ for the full pathname first. If there is no compspec for the full
+ pathname, b\bba\bas\bsh\bh attempts to find a compspec for the portion following
+ the final slash. If those searches do not result in a compspec, or if
+ there is no compspec for the command word, b\bba\bas\bsh\bh uses any compspec de-
+ fined with the -\b-D\bD option to c\bco\bom\bmp\bpl\ble\bet\bte\be as the default. If there is no
+ default compspec, b\bba\bas\bsh\bh performs alias expansion on the command word as
+ a final resort, and attempts to find a compspec for the command word
resulting from any successful expansion.
If a compspec is not found, b\bba\bas\bsh\bh performs its default completion as de-
- scribed above under C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg. Otherwise, once a compspec has been
+ scribed above under C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg. Otherwise, once a compspec has been
found, b\bba\bas\bsh\bh uses it to generate the list of matching words.
- First, b\bba\bas\bsh\bh performs the _\ba_\bc_\bt_\bi_\bo_\bn_\bs specified by the compspec. This only
- returns matches which are prefixes of the word being completed. When
- the -\b-f\bf or -\b-d\bd option is used for filename or directory name completion,
+ First, b\bba\bas\bsh\bh performs the _\ba_\bc_\bt_\bi_\bo_\bn_\bs specified by the compspec. This only
+ returns matches which are prefixes of the word being completed. When
+ the -\b-f\bf or -\b-d\bd option is used for filename or directory name completion,
b\bba\bas\bsh\bh uses the shell variable F\bFI\bIG\bGN\bNO\bOR\bRE\bE to filter the matches.
Next, programmable completion generates matches specified by a pathname
- expansion pattern supplied as an argument to the -\b-G\bG option. The words
+ expansion pattern supplied as an argument to the -\b-G\bG option. The words
generated by the pattern need not match the word being completed. B\bBa\bas\bsh\bh
- uses the F\bFI\bIG\bGN\bNO\bOR\bRE\bE variable to filter the matches, but does not use the
+ uses the F\bFI\bIG\bGN\bNO\bOR\bRE\bE variable to filter the matches, but does not use the
G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE shell variable.
- Next, completion considers the string specified as the argument to the
- -\b-W\bW option. The string is first split using the characters in the I\bIF\bFS\bS
- special variable as delimiters. This honors shell quoting within the
- string, in order to provide a mechanism for the words to contain shell
- metacharacters or characters in the value of I\bIF\bFS\bS. Each word is then
+ Next, completion considers the string specified as the argument to the
+ -\b-W\bW option. The string is first split using the characters in the I\bIF\bFS\bS
+ special variable as delimiters. This honors shell quoting within the
+ string, in order to provide a mechanism for the words to contain shell
+ metacharacters or characters in the value of I\bIF\bFS\bS. Each word is then
expanded using brace expansion, tilde expansion, parameter and variable
expansion, command substitution, and arithmetic expansion, as described
above under E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN. The results are split using the rules described
- above under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg. The results of the expansion are prefix-
+ above under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg. The results of the expansion are prefix-
matched against the word being completed, and the matching words become
possible completions.
- After these matches have been generated, b\bba\bas\bsh\bh executes any shell func-
+ After these matches have been generated, b\bba\bas\bsh\bh executes any shell func-
tion or command specified with the -\b-F\bF and -\b-C\bC options. When the command
- or function is invoked, b\bba\bas\bsh\bh assigns values to the C\bCO\bOM\bMP\bP_\b_L\bLI\bIN\bNE\bE,
- C\bCO\bOM\bMP\bP_\b_P\bPO\bOI\bIN\bNT\bT, C\bCO\bOM\bMP\bP_\b_K\bKE\bEY\bY, and C\bCO\bOM\bMP\bP_\b_T\bTY\bYP\bPE\bE variables as described above under
- S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs. If a shell function is being invoked, b\bba\bas\bsh\bh also sets
- the C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDS\bS and C\bCO\bOM\bMP\bP_\b_C\bCW\bWO\bOR\bRD\bD variables. When the function or command
- is invoked, the first argument ($\b$1\b1) is the name of the command whose
+ or function is invoked, b\bba\bas\bsh\bh assigns values to the C\bCO\bOM\bMP\bP_\b_L\bLI\bIN\bNE\bE,
+ C\bCO\bOM\bMP\bP_\b_P\bPO\bOI\bIN\bNT\bT, C\bCO\bOM\bMP\bP_\b_K\bKE\bEY\bY, and C\bCO\bOM\bMP\bP_\b_T\bTY\bYP\bPE\bE variables as described above under
+ S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs. If a shell function is being invoked, b\bba\bas\bsh\bh also sets
+ the C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDS\bS and C\bCO\bOM\bMP\bP_\b_C\bCW\bWO\bOR\bRD\bD variables. When the function or command
+ is invoked, the first argument ($\b$1\b1) is the name of the command whose
arguments are being completed, the second argument ($\b$2\b2) is the word be-
- ing completed, and the third argument ($\b$3\b3) is the word preceding the
- word being completed on the current command line. There is no filter-
- ing of the generated completions against the word being completed; the
- function or command has complete freedom in generating the matches and
+ ing completed, and the third argument ($\b$3\b3) is the word preceding the
+ word being completed on the current command line. There is no filter-
+ ing of the generated completions against the word being completed; the
+ function or command has complete freedom in generating the matches and
they do not need to match a prefix of the word.
- Any function specified with -\b-F\bF is invoked first. The function may use
+ Any function specified with -\b-F\bF is invoked first. The function may use
any of the shell facilities, including the c\bco\bom\bmp\bpg\bge\ben\bn and c\bco\bom\bmp\bpo\bop\bpt\bt builtins
- described below, to generate the matches. It must put the possible
+ described below, to generate the matches. It must put the possible
completions in the C\bCO\bOM\bMP\bPR\bRE\bEP\bPL\bLY\bY array variable, one per array element.
- Next, any command specified with the -\b-C\bC option is invoked in an envi-
- ronment equivalent to command substitution. It should print a list of
- completions, one per line, to the standard output. Backslash will es-
- cape a newline, if necessary. These are added to the set of possible
+ Next, any command specified with the -\b-C\bC option is invoked in an envi-
+ ronment equivalent to command substitution. It should print a list of
+ completions, one per line, to the standard output. Backslash will es-
+ cape a newline, if necessary. These are added to the set of possible
completions.
After generating all of the possible completions, b\bba\bas\bsh\bh applies any fil-
- ter specified with the -\b-X\bX option to the completions in the list. The
- filter is a pattern as used for pathname expansion; a &\b& in the pattern
+ ter specified with the -\b-X\bX option to the completions in the list. The
+ filter is a pattern as used for pathname expansion; a &\b& in the pattern
is replaced with the text of the word being completed. A literal &\b& may
be escaped with a backslash; the backslash is removed before attempting
- a match. Any completion that matches the pattern is removed from the
- list. A leading !\b! negates the pattern; in this case b\bba\bas\bsh\bh removes any
- completion that does not match the pattern. If the n\bno\boc\bca\bas\bse\bem\bma\bat\btc\bch\bh shell
- option is enabled, b\bba\bas\bsh\bh performs the match without regard to the case
+ a match. Any completion that matches the pattern is removed from the
+ list. A leading !\b! negates the pattern; in this case b\bba\bas\bsh\bh removes any
+ completion that does not match the pattern. If the n\bno\boc\bca\bas\bse\bem\bma\bat\btc\bch\bh shell
+ option is enabled, b\bba\bas\bsh\bh performs the match without regard to the case
of alphabetic characters.
- Finally, programmable completion adds any prefix and suffix specified
- with the -\b-P\bP and -\b-S\bS options, respectively, to each completion, and re-
+ Finally, programmable completion adds any prefix and suffix specified
+ with the -\b-P\bP and -\b-S\bS options, respectively, to each completion, and re-
turns the result to r\bre\bea\bad\bdl\bli\bin\bne\be as the list of possible completions.
- If the previously-applied actions do not generate any matches, and the
- -\b-o\bo d\bdi\bir\brn\bna\bam\bme\bes\bs option was supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be when the compspec was de-
+ If the previously-applied actions do not generate any matches, and the
+ -\b-o\bo d\bdi\bir\brn\bna\bam\bme\bes\bs option was supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be when the compspec was de-
fined, b\bba\bas\bsh\bh attempts directory name completion.
- If the -\b-o\bo p\bpl\blu\bus\bsd\bdi\bir\brs\bs option was supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be when the compspec
- was defined, b\bba\bas\bsh\bh attempts directory name completion and adds any
+ If the -\b-o\bo p\bpl\blu\bus\bsd\bdi\bir\brs\bs option was supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be when the compspec
+ was defined, b\bba\bas\bsh\bh attempts directory name completion and adds any
matches to the set of possible completions.
- By default, if a compspec is found, whatever it generates is returned
- to the completion code as the full set of possible completions. The
- default b\bba\bas\bsh\bh completions and the r\bre\bea\bad\bdl\bli\bin\bne\be default of filename comple-
- tion are disabled. If the -\b-o\bo b\bba\bas\bsh\bhd\bde\bef\bfa\bau\bul\blt\bt option was supplied to c\bco\bom\bm-\b-
- p\bpl\ble\bet\bte\be when the compspec was defined, and the compspec generates no
- matches, b\bba\bas\bsh\bh attempts its default completions. If the compspec and,
+ By default, if a compspec is found, whatever it generates is returned
+ to the completion code as the full set of possible completions. The
+ default b\bba\bas\bsh\bh completions and the r\bre\bea\bad\bdl\bli\bin\bne\be default of filename comple-
+ tion are disabled. If the -\b-o\bo b\bba\bas\bsh\bhd\bde\bef\bfa\bau\bul\blt\bt option was supplied to c\bco\bom\bm-\b-
+ p\bpl\ble\bet\bte\be when the compspec was defined, and the compspec generates no
+ matches, b\bba\bas\bsh\bh attempts its default completions. If the compspec and,
if attempted, the default b\bba\bas\bsh\bh completions generate no matches, and the
- -\b-o\bo d\bde\bef\bfa\bau\bul\blt\bt option was supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be when the compspec was de-
+ -\b-o\bo d\bde\bef\bfa\bau\bul\blt\bt option was supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be when the compspec was de-
fined, programmable completion performs r\bre\bea\bad\bdl\bli\bin\bne\be's default completion.
- The options supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be and c\bco\bom\bmp\bpo\bop\bpt\bt can control how r\bre\bea\bad\bdl\bli\bin\bne\be
- treats the completions. For instance, the _\b-_\bo _\bf_\bu_\bl_\bl_\bq_\bu_\bo_\bt_\be option tells
- r\bre\bea\bad\bdl\bli\bin\bne\be to quote the matches as if they were filenames. See the de-
+ The options supplied to c\bco\bom\bmp\bpl\ble\bet\bte\be and c\bco\bom\bmp\bpo\bop\bpt\bt can control how r\bre\bea\bad\bdl\bli\bin\bne\be
+ treats the completions. For instance, the _\b-_\bo _\bf_\bu_\bl_\bl_\bq_\bu_\bo_\bt_\be option tells
+ r\bre\bea\bad\bdl\bli\bin\bne\be to quote the matches as if they were filenames. See the de-
scription of c\bco\bom\bmp\bpl\ble\bet\bte\be below for details.
- When a compspec indicates that it wants directory name completion, the
- programmable completion functions force r\bre\bea\bad\bdl\bli\bin\bne\be to append a slash to
+ When a compspec indicates that it wants directory name completion, the
+ programmable completion functions force r\bre\bea\bad\bdl\bli\bin\bne\be to append a slash to
completed names which are symbolic links to directories, subject to the
value of the m\bma\bar\brk\bk-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs r\bre\bea\bad\bdl\bli\bin\bne\be variable, regardless of the set-
ting of the m\bma\bar\brk\bk-\b-s\bsy\bym\bml\bli\bin\bnk\bke\bed\bd-\b-d\bdi\bir\bre\bec\bct\bto\bor\bri\bie\bes\bs r\bre\bea\bad\bdl\bli\bin\bne\be variable.
- There is some support for dynamically modifying completions. This is
- most useful when used in combination with a default completion speci-
- fied with c\bco\bom\bmp\bpl\ble\bet\bte\be -\b-D\bD. It's possible for shell functions executed as
- completion functions to indicate that completion should be retried by
- returning an exit status of 124. If a shell function returns 124, and
+ There is some support for dynamically modifying completions. This is
+ most useful when used in combination with a default completion speci-
+ fied with c\bco\bom\bmp\bpl\ble\bet\bte\be -\b-D\bD. It's possible for shell functions executed as
+ completion functions to indicate that completion should be retried by
+ returning an exit status of 124. If a shell function returns 124, and
changes the compspec associated with the command on which completion is
- being attempted (supplied as the first argument when the function is
+ being attempted (supplied as the first argument when the function is
executed), programmable completion restarts from the beginning, with an
- attempt to find a new compspec for that command. This can be used to
- build a set of completions dynamically as completion is attempted,
+ attempt to find a new compspec for that command. This can be used to
+ build a set of completions dynamically as completion is attempted,
rather than loading them all at once.
- For instance, assuming that there is a library of compspecs, each kept
- in a file corresponding to the name of the command, the following de-
+ For instance, assuming that there is a library of compspecs, each kept
+ in a file corresponding to the name of the command, the following de-
fault completion function would load completions dynamically:
_completion_loader()
{
-o bashdefault -o default
H\bHI\bIS\bST\bTO\bOR\bRY\bY
- When the -\b-o\bo h\bhi\bis\bst\bto\bor\bry\by option to the s\bse\bet\bt builtin is enabled, the shell
+ When the -\b-o\bo h\bhi\bis\bst\bto\bor\bry\by option to the s\bse\bet\bt builtin is enabled, the shell
provides access to the _\bc_\bo_\bm_\bm_\ba_\bn_\bd _\bh_\bi_\bs_\bt_\bo_\br_\by, the list of commands previously
- typed. The value of the H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE variable is used as the number of
- commands to save in a history list: the shell saves the text of the
+ typed. The value of the H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE variable is used as the number of
+ commands to save in a history list: the shell saves the text of the
last H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE commands (default 500). The shell stores each command in
- the history list prior to parameter and variable expansion (see E\bEX\bXP\bPA\bAN\bN-\b-
- S\bSI\bIO\bON\bN above) but after history expansion is performed, subject to the
+ the history list prior to parameter and variable expansion (see E\bEX\bXP\bPA\bAN\bN-\b-
+ S\bSI\bIO\bON\bN above) but after history expansion is performed, subject to the
values of the shell variables H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE and H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL.
- On startup, b\bba\bas\bsh\bh initializes the history list by reading history en-
- tries from the the file named by the H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE variable (default
- _\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bh_\bi_\bs_\bt_\bo_\br_\by). That file is referred to as the _\bh_\bi_\bs_\bt_\bo_\br_\by _\bf_\bi_\bl_\be. The
- history file is truncated, if necessary, to contain no more than the
- number of history entries specified by the value of the H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE
- variable. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE is unset, or set to null, a non-numeric
+ On startup, b\bba\bas\bsh\bh initializes the history list by reading history en-
+ tries from the the file named by the H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE variable (default
+ _\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bh_\bi_\bs_\bt_\bo_\br_\by). That file is referred to as the _\bh_\bi_\bs_\bt_\bo_\br_\by _\bf_\bi_\bl_\be. The
+ history file is truncated, if necessary, to contain no more than the
+ number of history entries specified by the value of the H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE
+ variable. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE is unset, or set to null, a non-numeric
value, or a numeric value less than zero, the history file is not trun-
cated.
When the history file is read, lines beginning with the history comment
character followed immediately by a digit are interpreted as timestamps
- for the following history line. These timestamps are optionally dis-
- played depending on the value of the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable. When
- present, history timestamps delimit history entries, making multi-line
+ for the following history line. These timestamps are optionally dis-
+ played depending on the value of the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable. When
+ present, history timestamps delimit history entries, making multi-line
entries possible.
When a shell with history enabled exits, b\bba\bas\bsh\bh copies the last $\b$H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE
- entries from the history list to $\b$H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE. If the h\bhi\bis\bst\bta\bap\bpp\bpe\ben\bnd\bd shell
- option is enabled (see the description of s\bsh\bho\bop\bpt\bt under S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN
- C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below), b\bba\bas\bsh\bh appends the entries to the history file, other-
- wise it overwrites the history file. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE is unset or null, or
- if the history file is unwritable, the history is not saved. After
- saving the history, b\bba\bas\bsh\bh truncates the history file to contain no more
+ entries from the history list to $\b$H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE. If the h\bhi\bis\bst\bta\bap\bpp\bpe\ben\bnd\bd shell
+ option is enabled (see the description of s\bsh\bho\bop\bpt\bt under S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN
+ C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below), b\bba\bas\bsh\bh appends the entries to the history file, other-
+ wise it overwrites the history file. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE is unset or null, or
+ if the history file is unwritable, the history is not saved. After
+ saving the history, b\bba\bas\bsh\bh truncates the history file to contain no more
than H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE lines as described above.
- If the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable is set, the shell writes the timestamp
- information associated with each history entry to the history file,
- marked with the history comment character, so timestamps are preserved
+ If the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable is set, the shell writes the timestamp
+ information associated with each history entry to the history file,
+ marked with the history comment character, so timestamps are preserved
across shell sessions. This uses the history comment character to dis-
- tinguish timestamps from other history lines. As above, when using
+ tinguish timestamps from other history lines. As above, when using
H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT, the timestamps delimit multi-line history entries.
- The f\bfc\bc builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below) will list or
+ The f\bfc\bc builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below) will list or
edit and re-execute a portion of the history list. The h\bhi\bis\bst\bto\bor\bry\by builtin
can display or modify the history list and manipulate the history file.
- When using command-line editing, search commands are available in each
+ When using command-line editing, search commands are available in each
editing mode that provide access to the history list.
- The shell allows control over which commands are saved on the history
+ The shell allows control over which commands are saved on the history
list. The H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL and H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE variables are used to save only a
- subset of the commands entered. If the c\bcm\bmd\bdh\bhi\bis\bst\bt shell option is en-
- abled, the shell attempts to save each line of a multi-line command in
- the same history entry, adding semicolons where necessary to preserve
- syntactic correctness. The l\bli\bit\bth\bhi\bis\bst\bt shell option modifies c\bcm\bmd\bdh\bhi\bis\bst\bt by
- saving the command with embedded newlines instead of semicolons. See
+ subset of the commands entered. If the c\bcm\bmd\bdh\bhi\bis\bst\bt shell option is en-
+ abled, the shell attempts to save each line of a multi-line command in
+ the same history entry, adding semicolons where necessary to preserve
+ syntactic correctness. The l\bli\bit\bth\bhi\bis\bst\bt shell option modifies c\bcm\bmd\bdh\bhi\bis\bst\bt by
+ saving the command with embedded newlines instead of semicolons. See
the description of the s\bsh\bho\bop\bpt\bt builtin below under S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS
for information on setting and unsetting shell options.
H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN
- The shell supports a history expansion feature that is similar to the
- history expansion in c\bcs\bsh\bh. This section describes what syntax features
+ The shell supports a history expansion feature that is similar to the
+ history expansion in c\bcs\bsh\bh. This section describes what syntax features
are available.
History expansion is enabled by default for interactive shells, and can
- be disabled using the +\b+H\bH option to the s\bse\bet\bt builtin command (see S\bSH\bHE\bEL\bLL\bL
+ be disabled using the +\b+H\bH option to the s\bse\bet\bt builtin command (see S\bSH\bHE\bEL\bLL\bL
B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below). Non-interactive shells do not perform history
expansion by default, but it can be enabled with "set -H".
History expansions introduce words from the history list into the input
- stream, making it easy to repeat commands, insert the arguments to a
+ stream, making it easy to repeat commands, insert the arguments to a
previous command into the current input line, or fix errors in previous
commands quickly.
- History expansion is performed immediately after a complete line is
- read, before the shell breaks it into words, and is performed on each
- line individually. The shell attempts to inform the history expansion
+ History expansion is performed immediately after a complete line is
+ read, before the shell breaks it into words, and is performed on each
+ line individually. The shell attempts to inform the history expansion
functions about quoting still in effect from previous lines.
- It takes place in two parts. The first is to determine which history
- list entry to use during substitution. The second is to select por-
+ It takes place in two parts. The first is to determine which history
+ list entry to use during substitution. The second is to select por-
tions of that entry to include into the current one.
- The entry selected from the history is the _\be_\bv_\be_\bn_\bt, and the portions of
+ The entry selected from the history is the _\be_\bv_\be_\bn_\bt, and the portions of
that entry that are acted upon are _\bw_\bo_\br_\bd_\bs. Various _\bm_\bo_\bd_\bi_\bf_\bi_\be_\br_\bs are avail-
- able to manipulate the selected words. The entry is split into words
- in the same fashion as when reading input, so that several _\bm_\be_\bt_\ba_\bc_\bh_\ba_\br_\ba_\bc_\b-
- _\bt_\be_\br-separated words surrounded by quotes are considered one word. The
- _\be_\bv_\be_\bn_\bt _\bd_\be_\bs_\bi_\bg_\bn_\ba_\bt_\bo_\br selects the event, the optional _\bw_\bo_\br_\bd _\bd_\be_\bs_\bi_\bg_\bn_\ba_\bt_\bo_\br se-
- lects words from the event, and various optional _\bm_\bo_\bd_\bi_\bf_\bi_\be_\br_\bs are avail-
+ able to manipulate the selected words. The entry is split into words
+ in the same fashion as when reading input, so that several _\bm_\be_\bt_\ba_\bc_\bh_\ba_\br_\ba_\bc_\b-
+ _\bt_\be_\br-separated words surrounded by quotes are considered one word. The
+ _\be_\bv_\be_\bn_\bt _\bd_\be_\bs_\bi_\bg_\bn_\ba_\bt_\bo_\br selects the event, the optional _\bw_\bo_\br_\bd _\bd_\be_\bs_\bi_\bg_\bn_\ba_\bt_\bo_\br se-
+ lects words from the event, and various optional _\bm_\bo_\bd_\bi_\bf_\bi_\be_\br_\bs are avail-
able to manipulate the selected words.
- History expansions are introduced by the appearance of the history ex-
- pansion character, which is !\b! by default. History expansions may ap-
+ History expansions are introduced by the appearance of the history ex-
+ pansion character, which is !\b! by default. History expansions may ap-
pear anywhere in the input, but do not nest.
- Only backslash (\\b\) and single quotes can quote the history expansion
- character, but the history expansion character is also treated as
+ Only backslash (\\b\) and single quotes can quote the history expansion
+ character, but the history expansion character is also treated as
quoted if it immediately precedes the closing double quote in a double-
quoted string.
- Several characters inhibit history expansion if found immediately fol-
- lowing the history expansion character, even if it is unquoted: space,
- tab, newline, carriage return, =\b=, and the other shell metacharacters
+ Several characters inhibit history expansion if found immediately fol-
+ lowing the history expansion character, even if it is unquoted: space,
+ tab, newline, carriage return, =\b=, and the other shell metacharacters
defined above.
There is a special abbreviation for substitution, active when the _\bq_\bu_\bi_\bc_\bk
- _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn character (described above under h\bhi\bis\bst\btc\bch\bha\bar\brs\bs) is the first
+ _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn character (described above under h\bhi\bis\bst\btc\bch\bha\bar\brs\bs) is the first
character on the line. It selects the previous history list entry, us-
- ing an event designator equivalent to !\b!!\b!, and substitutes one string
- for another in that entry. It is described below under E\bEv\bve\ben\bnt\bt D\bDe\bes\bsi\big\bgn\bna\ba-\b-
- t\bto\bor\brs\bs. This is the only history expansion that does not begin with the
+ ing an event designator equivalent to !\b!!\b!, and substitutes one string
+ for another in that entry. It is described below under E\bEv\bve\ben\bnt\bt D\bDe\bes\bsi\big\bgn\bna\ba-\b-
+ t\bto\bor\brs\bs. This is the only history expansion that does not begin with the
history expansion character.
- Several shell options settable with the s\bsh\bho\bop\bpt\bt builtin will modify his-
- tory expansion behavior (see the description of the s\bsh\bho\bop\bpt\bt builtin be-
+ Several shell options settable with the s\bsh\bho\bop\bpt\bt builtin will modify his-
+ tory expansion behavior (see the description of the s\bsh\bho\bop\bpt\bt builtin be-
low).and If the h\bhi\bis\bst\btv\bve\ber\bri\bif\bfy\by shell option is enabled, and r\bre\bea\bad\bdl\bli\bin\bne\be is be-
ing used, history substitutions are not immediately passed to the shell
parser. Instead, the expanded line is reloaded into the r\bre\bea\bad\bdl\bli\bin\bne\be edit-
- ing buffer for further modification. If r\bre\bea\bad\bdl\bli\bin\bne\be is being used, and
- the h\bhi\bis\bst\btr\bre\bee\bed\bdi\bit\bt shell option is enabled, a failed history substitution
+ ing buffer for further modification. If r\bre\bea\bad\bdl\bli\bin\bne\be is being used, and
+ the h\bhi\bis\bst\btr\bre\bee\bed\bdi\bit\bt shell option is enabled, a failed history substitution
is reloaded into the r\bre\bea\bad\bdl\bli\bin\bne\be editing buffer for correction.
- The -\b-p\bp option to the h\bhi\bis\bst\bto\bor\bry\by builtin command shows what a history ex-
- pansion will do before using it. The -\b-s\bs option to the h\bhi\bis\bst\bto\bor\bry\by builtin
- will add commands to the end of the history list without actually exe-
+ The -\b-p\bp option to the h\bhi\bis\bst\bto\bor\bry\by builtin command shows what a history ex-
+ pansion will do before using it. The -\b-s\bs option to the h\bhi\bis\bst\bto\bor\bry\by builtin
+ will add commands to the end of the history list without actually exe-
cuting them, so that they are available for subsequent recall.
- The shell allows control of the various characters used by the history
+ The shell allows control of the various characters used by the history
expansion mechanism (see the description of h\bhi\bis\bst\btc\bch\bha\bar\brs\bs above under S\bSh\bhe\bel\bll\bl
- V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs). The shell uses the history comment character to mark his-
+ V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs). The shell uses the history comment character to mark his-
tory timestamps when writing the history file.
E\bEv\bve\ben\bnt\bt D\bDe\bes\bsi\big\bgn\bna\bat\bto\bor\brs\bs
- An event designator is a reference to an entry in the history list.
+ An event designator is a reference to an entry in the history list.
The event designator consists of the portion of the word beginning with
- the history expansion character and ending with the word designator if
- present, or the end of the word. Unless the reference is absolute,
+ the history expansion character and ending with the word designator if
+ present, or the end of the word. Unless the reference is absolute,
events are relative to the current position in the history list.
- !\b! Start a history substitution, except when followed by a b\bbl\bla\ban\bnk\bk,
- newline, carriage return, =, or, when the e\bex\bxt\btg\bgl\blo\bob\bb shell option
+ !\b! Start a history substitution, except when followed by a b\bbl\bla\ban\bnk\bk,
+ newline, carriage return, =, or, when the e\bex\bxt\btg\bgl\blo\bob\bb shell option
is enabled using the s\bsh\bho\bop\bpt\bt builtin, (.
!\b!_\bn Refer to history list entry _\bn.
!\b!-\b-_\bn Refer to the current entry minus _\bn.
!\b!!\b! Refer to the previous entry. This is a synonym for "!-1".
!\b!_\bs_\bt_\br_\bi_\bn_\bg
- Refer to the most recent command preceding the current position
+ Refer to the most recent command preceding the current position
in the history list starting with _\bs_\bt_\br_\bi_\bn_\bg.
!\b!?\b?_\bs_\bt_\br_\bi_\bn_\bg[\b[?\b?]\b]
- Refer to the most recent command preceding the current position
- in the history list containing _\bs_\bt_\br_\bi_\bn_\bg. The trailing ?\b? may be
- omitted if _\bs_\bt_\br_\bi_\bn_\bg is followed immediately by a newline. If
- _\bs_\bt_\br_\bi_\bn_\bg is missing, this uses the string from the most recent
+ Refer to the most recent command preceding the current position
+ in the history list containing _\bs_\bt_\br_\bi_\bn_\bg. The trailing ?\b? may be
+ omitted if _\bs_\bt_\br_\bi_\bn_\bg is followed immediately by a newline. If
+ _\bs_\bt_\br_\bi_\bn_\bg is missing, this uses the string from the most recent
search; it is an error if there is no previous search string.
^\b^_\bs_\bt_\br_\bi_\bn_\bg_\b1^\b^_\bs_\bt_\br_\bi_\bn_\bg_\b2^\b^
- Quick substitution. Repeat the previous command, replacing
- _\bs_\bt_\br_\bi_\bn_\bg_\b1 with _\bs_\bt_\br_\bi_\bn_\bg_\b2. Equivalent to "!!:s^_\bs_\bt_\br_\bi_\bn_\bg_\b1^_\bs_\bt_\br_\bi_\bn_\bg_\b2^"
+ Quick substitution. Repeat the previous command, replacing
+ _\bs_\bt_\br_\bi_\bn_\bg_\b1 with _\bs_\bt_\br_\bi_\bn_\bg_\b2. Equivalent to "!!:s^_\bs_\bt_\br_\bi_\bn_\bg_\b1^_\bs_\bt_\br_\bi_\bn_\bg_\b2^"
(see M\bMo\bod\bdi\bif\bfi\bie\ber\brs\bs below).
!\b!#\b# The entire command line typed so far.
Word designators are used to select desired words from the event. They
are optional; if the word designator isn't supplied, the history expan-
sion uses the entire event. A :\b: separates the event specification from
- the word designator. It may be omitted if the word designator begins
- with a ^\b^, $\b$, *\b*, -\b-, or %\b%. Words are numbered from the beginning of the
- line, with the first word being denoted by 0 (zero). Words are in-
+ the word designator. It may be omitted if the word designator begins
+ with a ^\b^, $\b$, *\b*, -\b-, or %\b%. Words are numbered from the beginning of the
+ line, with the first word being denoted by 0 (zero). Words are in-
serted into the current line separated by single spaces.
0\b0 (\b(z\bze\ber\bro\bo)\b)
The zeroth word. For the shell, this is the command word.
_\bn The _\bnth word.
^\b^ The first argument: word 1.
- $\b$ The last word. This is usually the last argument, but will ex-
+ $\b$ The last word. This is usually the last argument, but will ex-
pand to the zeroth word if there is only one word in the line.
%\b% The first word matched by the most recent "?_\bs_\bt_\br_\bi_\bn_\bg?" search, if
- the search string begins with a character that is part of a
- word. By default, searches begin at the end of each line and
- proceed to the beginning, so the first word matched is the one
+ the search string begins with a character that is part of a
+ word. By default, searches begin at the end of each line and
+ proceed to the beginning, so the first word matched is the one
closest to the end of the line.
_\bx-\b-_\by A range of words; "-_\by" abbreviates "0-_\by".
- *\b* All of the words but the zeroth. This is a synonym for "_\b1_\b-_\b$".
- It is not an error to use *\b* if there is just one word in the
+ *\b* All of the words but the zeroth. This is a synonym for "_\b1_\b-_\b$".
+ It is not an error to use *\b* if there is just one word in the
event; it expands to the empty string in that case.
x\bx*\b* Abbreviates _\bx_\b-_\b$.
x\bx-\b- Abbreviates _\bx_\b-_\b$ like x\bx*\b*, but omits the last word. If x\bx is miss-
ing, it defaults to 0.
- If a word designator is supplied without an event specification, the
+ If a word designator is supplied without an event specification, the
previous command is used as the event, equivalent to !\b!!\b!.
M\bMo\bod\bdi\bif\bfi\bie\ber\brs\bs
- After the optional word designator, the expansion may include a se-
- quence of one or more of the following modifiers, each preceded by a
- ":". These modify, or edit, the word or words selected from the his-
+ After the optional word designator, the expansion may include a se-
+ quence of one or more of the following modifiers, each preceded by a
+ ":". These modify, or edit, the word or words selected from the his-
tory event.
h\bh Remove a trailing pathname component, leaving only the head.
e\be Remove all but the trailing suffix.
p\bp Print the new command but do not execute it.
q\bq Quote the substituted words, escaping further substitutions.
- x\bx Quote the substituted words as with q\bq, but break into words at
- b\bbl\bla\ban\bnk\bks\bs and newlines. The q\bq and x\bx modifiers are mutually exclu-
+ x\bx Quote the substituted words as with q\bq, but break into words at
+ b\bbl\bla\ban\bnk\bks\bs and newlines. The q\bq and x\bx modifiers are mutually exclu-
sive; expansion uses the last one supplied.
s\bs/\b/_\bo_\bl_\bd/\b/_\bn_\be_\bw/\b/
- Substitute _\bn_\be_\bw for the first occurrence of _\bo_\bl_\bd in the event
+ Substitute _\bn_\be_\bw for the first occurrence of _\bo_\bl_\bd in the event
line. Any character may be used as the delimiter in place of /.
- The final delimiter is optional if it is the last character of
- the event line. A single backslash quotes the delimiter in _\bo_\bl_\bd
- and _\bn_\be_\bw. If & appears in _\bn_\be_\bw, it is replaced with _\bo_\bl_\bd. A sin-
- gle backslash quotes the &. If _\bo_\bl_\bd is null, it is set to the
- last _\bo_\bl_\bd substituted, or, if no previous history substitutions
+ The final delimiter is optional if it is the last character of
+ the event line. A single backslash quotes the delimiter in _\bo_\bl_\bd
+ and _\bn_\be_\bw. If & appears in _\bn_\be_\bw, it is replaced with _\bo_\bl_\bd. A sin-
+ gle backslash quotes the &. If _\bo_\bl_\bd is null, it is set to the
+ last _\bo_\bl_\bd substituted, or, if no previous history substitutions
took place, the last _\bs_\bt_\br_\bi_\bn_\bg in a !\b!?\b?_\bs_\bt_\br_\bi_\bn_\bg[\b[?\b?]\b] search. If _\bn_\be_\bw is
null, each matching _\bo_\bl_\bd is deleted.
&\b& Repeat the previous substitution.
g\bg Cause changes to be applied over the entire event line. This is
- used in conjunction with ":\b:s\bs" (e.g., ":\b:g\bgs\bs/\b/_\bo_\bl_\bd/\b/_\bn_\be_\bw/\b/") or ":\b:&\b&".
- If used with ":\b:s\bs", any delimiter can be used in place of /, and
- the final delimiter is optional if it is the last character of
+ used in conjunction with ":\b:s\bs" (e.g., ":\b:g\bgs\bs/\b/_\bo_\bl_\bd/\b/_\bn_\be_\bw/\b/") or ":\b:&\b&".
+ If used with ":\b:s\bs", any delimiter can be used in place of /, and
+ the final delimiter is optional if it is the last character of
the event line. An a\ba may be used as a synonym for g\bg.
G\bG Apply the following "s\bs" or "&\b&" modifier once to each word in the
event line.
Unless otherwise noted, each builtin command documented in this section
as accepting options preceded by -\b- accepts -\b--\b- to signify the end of the
options. The :\b:, t\btr\bru\bue\be, f\bfa\bal\bls\bse\be, and t\bte\bes\bst\bt/[\b[ builtins do not accept options
- and do not treat -\b--\b- specially. The e\bex\bxi\bit\bt, l\blo\bog\bgo\bou\but\bt, r\bre\bet\btu\bur\brn\bn, b\bbr\bre\bea\bak\bk, c\bco\bon\bn-\b-
- t\bti\bin\bnu\bue\be, l\ble\bet\bt, and s\bsh\bhi\bif\bft\bt builtins accept and process arguments beginning
- with -\b- without requiring -\b--\b-. Other builtins that accept arguments but
- are not specified as accepting options interpret arguments beginning
- with -\b- as invalid options and require -\b--\b- to prevent this interpreta-
+ and do not treat -\b--\b- specially. The e\bex\bxi\bit\bt, l\blo\bog\bgo\bou\but\bt, r\bre\bet\btu\bur\brn\bn, b\bbr\bre\bea\bak\bk, c\bco\bon\bn-\b-
+ t\bti\bin\bnu\bue\be, l\ble\bet\bt, and s\bsh\bhi\bif\bft\bt builtins accept and process arguments beginning
+ with -\b- without requiring -\b--\b-. Other builtins that accept arguments but
+ are not specified as accepting options interpret arguments beginning
+ with -\b- as invalid options and require -\b--\b- to prevent this interpreta-
tion.
:\b: [_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs]
- No effect; the command does nothing beyond expanding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs
+ No effect; the command does nothing beyond expanding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs
and performing any specified redirections. The return status is
zero.
.\b. [-\b-p\bp _\bp_\ba_\bt_\bh] _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs]
s\bso\bou\bur\brc\bce\be [-\b-p\bp _\bp_\ba_\bt_\bh] _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs]
- The .\b. command (s\bso\bou\bur\brc\bce\be) reads and execute commands from _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
- in the current shell environment and returns the exit status of
+ The .\b. command (s\bso\bou\bur\brc\bce\be) reads and execute commands from _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ in the current shell environment and returns the exit status of
the last command executed from _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be.
If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be does not contain a slash, .\b. searches for it. If the
- -\b-p\bp option is supplied, .\b. treats _\bp_\ba_\bt_\bh as a colon-separated list
- of directories in which to find _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be; otherwise, .\b. uses the
- entries in P\bPA\bAT\bTH\bH to find the directory containing _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be.
- _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be does not need to be executable. When b\bba\bas\bsh\bh is not in
+ -\b-p\bp option is supplied, .\b. treats _\bp_\ba_\bt_\bh as a colon-separated list
+ of directories in which to find _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be; otherwise, .\b. uses the
+ entries in P\bPA\bAT\bTH\bH to find the directory containing _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be.
+ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be does not need to be executable. When b\bba\bas\bsh\bh is not in
posix mode, it searches the current directory if _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is not
- found in P\bPA\bAT\bTH\bH, but does not search the current directory if -\b-p\bp
+ found in P\bPA\bAT\bTH\bH, but does not search the current directory if -\b-p\bp
is supplied. If the s\bso\bou\bur\brc\bce\bep\bpa\bat\bth\bh option to the s\bsh\bho\bop\bpt\bt builtin com-
mand is turned off, .\b. does not search P\bPA\bAT\bTH\bH.
- If any _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs are supplied, they become the positional para-
- meters when _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is executed. Otherwise the positional pa-
+ If any _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs are supplied, they become the positional para-
+ meters when _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is executed. Otherwise the positional pa-
rameters are unchanged.
If the -\b-T\bT option is enabled, .\b. inherits any trap on D\bDE\bEB\bBU\bUG\bG; if it
- is not, any D\bDE\bEB\bBU\bUG\bG trap string is saved and restored around the
+ is not, any D\bDE\bEB\bBU\bUG\bG trap string is saved and restored around the
call to .\b., and .\b. unsets the D\bDE\bEB\bBU\bUG\bG trap while it executes. If -\b-T\bT
is not set, and the sourced file changes the D\bDE\bEB\bBU\bUG\bG trap, the new
value persists after .\b. completes. The return status is the sta-
tus of the last command executed from _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be (0 if no commands
- are executed), and non-zero if _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is not found or cannot
+ are executed), and non-zero if _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is not found or cannot
be read.
a\bal\bli\bia\bas\bs [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
- With no arguments or with the -\b-p\bp option, a\bal\bli\bia\bas\bs prints the list
- of aliases in the form a\bal\bli\bia\bas\bs _\bn_\ba_\bm_\be=_\bv_\ba_\bl_\bu_\be on standard output.
+ With no arguments or with the -\b-p\bp option, a\bal\bli\bia\bas\bs prints the list
+ of aliases in the form a\bal\bli\bia\bas\bs _\bn_\ba_\bm_\be=_\bv_\ba_\bl_\bu_\be on standard output.
When arguments are supplied, define an alias for each _\bn_\ba_\bm_\be whose
- _\bv_\ba_\bl_\bu_\be is given. A trailing space in _\bv_\ba_\bl_\bu_\be causes the next word
- to be checked for alias substitution when the alias is expanded
- during command parsing. For each _\bn_\ba_\bm_\be in the argument list for
- which no _\bv_\ba_\bl_\bu_\be is supplied, print the name and value of the
- alias _\bn_\ba_\bm_\be. a\bal\bli\bia\bas\bs returns true unless a _\bn_\ba_\bm_\be is given (without
+ _\bv_\ba_\bl_\bu_\be is given. A trailing space in _\bv_\ba_\bl_\bu_\be causes the next word
+ to be checked for alias substitution when the alias is expanded
+ during command parsing. For each _\bn_\ba_\bm_\be in the argument list for
+ which no _\bv_\ba_\bl_\bu_\be is supplied, print the name and value of the
+ alias _\bn_\ba_\bm_\be. a\bal\bli\bia\bas\bs returns true unless a _\bn_\ba_\bm_\be is given (without
a corresponding =_\bv_\ba_\bl_\bu_\be) for which no alias has been defined.
b\bbg\bg [_\bj_\bo_\bb_\bs_\bp_\be_\bc ...]
- Resume each suspended job _\bj_\bo_\bb_\bs_\bp_\be_\bc in the background, as if it
- had been started with &\b&. If _\bj_\bo_\bb_\bs_\bp_\be_\bc is not present, the shell
+ Resume each suspended job _\bj_\bo_\bb_\bs_\bp_\be_\bc in the background, as if it
+ had been started with &\b&. If _\bj_\bo_\bb_\bs_\bp_\be_\bc is not present, the shell
uses its notion of the _\bc_\bu_\br_\br_\be_\bn_\bt _\bj_\bo_\bb. b\bbg\bg _\bj_\bo_\bb_\bs_\bp_\be_\bc returns 0 unless
- run when job control is disabled or, when run with job control
- enabled, any specified _\bj_\bo_\bb_\bs_\bp_\be_\bc was not found or was started
+ run when job control is disabled or, when run with job control
+ enabled, any specified _\bj_\bo_\bb_\bs_\bp_\be_\bc was not found or was started
without job control.
b\bbi\bin\bnd\bd [-\b-m\bm _\bk_\be_\by_\bm_\ba_\bp] [-\b-l\bls\bsv\bvS\bSV\bVX\bX]
b\bbi\bin\bnd\bd [-\b-m\bm _\bk_\be_\by_\bm_\ba_\bp] -\b-p\bp|-\b-P\bP [_\br_\be_\ba_\bd_\bl_\bi_\bn_\be_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd]
b\bbi\bin\bnd\bd [-\b-m\bm _\bk_\be_\by_\bm_\ba_\bp] _\bk_\be_\by_\bs_\be_\bq:_\br_\be_\ba_\bd_\bl_\bi_\bn_\be_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd
b\bbi\bin\bnd\bd _\br_\be_\ba_\bd_\bl_\bi_\bn_\be_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd_\b-_\bl_\bi_\bn_\be
- Display current r\bre\bea\bad\bdl\bli\bin\bne\be key and function bindings, bind a key
- sequence to a r\bre\bea\bad\bdl\bli\bin\bne\be function or macro or to a shell command,
- or set a r\bre\bea\bad\bdl\bli\bin\bne\be variable. Each non-option argument is a key
- binding or command as it would appear in a r\bre\bea\bad\bdl\bli\bin\bne\be initializa-
- tion file such as _\b._\bi_\bn_\bp_\bu_\bt_\br_\bc, but each binding or command must be
- passed as a separate argument; e.g., '"\C-x\C-r":
- re-read-init-file'. In the following descriptions, output
- available to be re-read is formatted as commands that would ap-
+ Display current r\bre\bea\bad\bdl\bli\bin\bne\be key and function bindings, bind a key
+ sequence to a r\bre\bea\bad\bdl\bli\bin\bne\be function or macro or to a shell command,
+ or set a r\bre\bea\bad\bdl\bli\bin\bne\be variable. Each non-option argument is a key
+ binding or command as it would appear in a r\bre\bea\bad\bdl\bli\bin\bne\be initializa-
+ tion file such as _\b._\bi_\bn_\bp_\bu_\bt_\br_\bc, but each binding or command must be
+ passed as a separate argument; e.g., '"\C-x\C-r":
+ re-read-init-file'. In the following descriptions, output
+ available to be re-read is formatted as commands that would ap-
pear in a r\bre\bea\bad\bdl\bli\bin\bne\be initialization file or that would be supplied
- as individual arguments to a b\bbi\bin\bnd\bd command. Options, if sup-
+ as individual arguments to a b\bbi\bin\bnd\bd command. Options, if sup-
plied, have the following meanings:
-\b-m\bm _\bk_\be_\by_\bm_\ba_\bp
Use _\bk_\be_\by_\bm_\ba_\bp as the keymap to be affected by the subsequent
bindings. Acceptable _\bk_\be_\by_\bm_\ba_\bp names are _\be_\bm_\ba_\bc_\bs_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\b-
- _\bd_\ba_\br_\bd_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bm_\be_\bt_\ba_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx_\b, _\bv_\bi_\b, _\bv_\bi_\b-_\bm_\bo_\bv_\be_\b, _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd,
- and _\bv_\bi_\b-_\bi_\bn_\bs_\be_\br_\bt. _\bv_\bi is equivalent to _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd (_\bv_\bi_\b-_\bm_\bo_\bv_\be
- is also a synonym); _\be_\bm_\ba_\bc_\bs is equivalent to _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\b-
+ _\bd_\ba_\br_\bd_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bm_\be_\bt_\ba_\b, _\be_\bm_\ba_\bc_\bs_\b-_\bc_\bt_\bl_\bx_\b, _\bv_\bi_\b, _\bv_\bi_\b-_\bm_\bo_\bv_\be_\b, _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd,
+ and _\bv_\bi_\b-_\bi_\bn_\bs_\be_\br_\bt. _\bv_\bi is equivalent to _\bv_\bi_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd (_\bv_\bi_\b-_\bm_\bo_\bv_\be
+ is also a synonym); _\be_\bm_\ba_\bc_\bs is equivalent to _\be_\bm_\ba_\bc_\bs_\b-_\bs_\bt_\ba_\bn_\b-
_\bd_\ba_\br_\bd.
-\b-l\bl List the names of all r\bre\bea\bad\bdl\bli\bin\bne\be functions.
- -\b-p\bp Display r\bre\bea\bad\bdl\bli\bin\bne\be function names and bindings in such a
- way that they can be used as an argument to a subsequent
- b\bbi\bin\bnd\bd command or in a r\bre\bea\bad\bdl\bli\bin\bne\be initialization file. If
- arguments remain after option processing, b\bbi\bin\bnd\bd treats
- them as r\bre\bea\bad\bdl\bli\bin\bne\be command names and restricts output to
- those names.
- -\b-P\bP List current r\bre\bea\bad\bdl\bli\bin\bne\be function names and bindings. If
+ -\b-p\bp Display r\bre\bea\bad\bdl\bli\bin\bne\be function names and bindings in such a
+ way that they can be used as an argument to a subsequent
+ b\bbi\bin\bnd\bd command or in a r\bre\bea\bad\bdl\bli\bin\bne\be initialization file. If
arguments remain after option processing, b\bbi\bin\bnd\bd treats
them as r\bre\bea\bad\bdl\bli\bin\bne\be command names and restricts output to
those names.
- -\b-s\bs Display r\bre\bea\bad\bdl\bli\bin\bne\be key sequences bound to macros and the
- strings they output in such a way that they can be used
+ -\b-P\bP List current r\bre\bea\bad\bdl\bli\bin\bne\be function names and bindings. If
+ arguments remain after option processing, b\bbi\bin\bnd\bd treats
+ them as r\bre\bea\bad\bdl\bli\bin\bne\be command names and restricts output to
+ those names.
+ -\b-s\bs Display r\bre\bea\bad\bdl\bli\bin\bne\be key sequences bound to macros and the
+ strings they output in such a way that they can be used
as an argument to a subsequent b\bbi\bin\bnd\bd command or in a r\bre\bea\bad\bd-\b-
l\bli\bin\bne\be initialization file.
- -\b-S\bS Display r\bre\bea\bad\bdl\bli\bin\bne\be key sequences bound to macros and the
+ -\b-S\bS Display r\bre\bea\bad\bdl\bli\bin\bne\be key sequences bound to macros and the
strings they output.
- -\b-v\bv Display r\bre\bea\bad\bdl\bli\bin\bne\be variable names and values in such a way
+ -\b-v\bv Display r\bre\bea\bad\bdl\bli\bin\bne\be variable names and values in such a way
that they can be used as an argument to a subsequent b\bbi\bin\bnd\bd
command or in a r\bre\bea\bad\bdl\bli\bin\bne\be initialization file.
-\b-V\bV List current r\bre\bea\bad\bdl\bli\bin\bne\be variable names and values.
-\b-f\bf _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
Read key bindings from _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be.
-\b-q\bq _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
- Display key sequences that invoke the named r\bre\bea\bad\bdl\bli\bin\bne\be
+ Display key sequences that invoke the named r\bre\bea\bad\bdl\bli\bin\bne\be
_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn.
-\b-u\bu _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
- Unbind all key sequences bound to the named r\bre\bea\bad\bdl\bli\bin\bne\be
+ Unbind all key sequences bound to the named r\bre\bea\bad\bdl\bli\bin\bne\be
_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn.
-\b-r\br _\bk_\be_\by_\bs_\be_\bq
Remove any current binding for _\bk_\be_\by_\bs_\be_\bq.
-\b-x\bx _\bk_\be_\by_\bs_\be_\bq[\b[:\b: ]\b]_\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd
Cause _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd to be executed whenever _\bk_\be_\by_\bs_\be_\bq is en-
tered. The separator between _\bk_\be_\by_\bs_\be_\bq and _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd is
- either whitespace or a colon optionally followed by
- whitespace. If the separator is whitespace, _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\b-
- _\bm_\ba_\bn_\bd must be enclosed in double quotes and r\bre\bea\bad\bdl\bli\bin\bne\be ex-
- pands any of its special backslash-escapes in _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\b-
- _\bm_\ba_\bn_\bd before saving it. If the separator is a colon, any
- enclosing double quotes are optional, and r\bre\bea\bad\bdl\bli\bin\bne\be does
- not expand the command string before saving it. Since
- the entire key binding expression must be a single argu-
- ment, it should be enclosed in single quotes. When
- _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed, the shell sets the R\bRE\bEA\bAD\bD-\b-
- L\bLI\bIN\bNE\bE_\b_L\bLI\bIN\bNE\bE variable to the contents of the r\bre\bea\bad\bdl\bli\bin\bne\be line
+ either whitespace or a colon optionally followed by
+ whitespace. If the separator is whitespace, _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\b-
+ _\bm_\ba_\bn_\bd must be enclosed in double quotes and r\bre\bea\bad\bdl\bli\bin\bne\be ex-
+ pands any of its special backslash-escapes in _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\b-
+ _\bm_\ba_\bn_\bd before saving it. If the separator is a colon, any
+ enclosing double quotes are optional, and r\bre\bea\bad\bdl\bli\bin\bne\be does
+ not expand the command string before saving it. Since
+ the entire key binding expression must be a single argu-
+ ment, it should be enclosed in single quotes. When
+ _\bs_\bh_\be_\bl_\bl_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed, the shell sets the R\bRE\bEA\bAD\bD-\b-
+ L\bLI\bIN\bNE\bE_\b_L\bLI\bIN\bNE\bE variable to the contents of the r\bre\bea\bad\bdl\bli\bin\bne\be line
buffer and the R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_P\bPO\bOI\bIN\bNT\bT and R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_M\bMA\bAR\bRK\bK variables
- to the current location of the insertion point and the
- saved insertion point (the mark), respectively. The
- shell assigns any numeric argument the user supplied to
- the R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_A\bAR\bRG\bGU\bUM\bME\bEN\bNT\bT variable. If there was no argu-
- ment, that variable is not set. If the executed command
- changes the value of any of R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_L\bLI\bIN\bNE\bE, R\bRE\bEA\bAD\bD-\b-
- L\bLI\bIN\bNE\bE_\b_P\bPO\bOI\bIN\bNT\bT, or R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_M\bMA\bAR\bRK\bK, those new values will be
+ to the current location of the insertion point and the
+ saved insertion point (the mark), respectively. The
+ shell assigns any numeric argument the user supplied to
+ the R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_A\bAR\bRG\bGU\bUM\bME\bEN\bNT\bT variable. If there was no argu-
+ ment, that variable is not set. If the executed command
+ changes the value of any of R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_L\bLI\bIN\bNE\bE, R\bRE\bEA\bAD\bD-\b-
+ L\bLI\bIN\bNE\bE_\b_P\bPO\bOI\bIN\bNT\bT, or R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_M\bMA\bAR\bRK\bK, those new values will be
reflected in the editing state.
- -\b-X\bX List all key sequences bound to shell commands and the
- associated commands in a format that can be reused as an
+ -\b-X\bX List all key sequences bound to shell commands and the
+ associated commands in a format that can be reused as an
argument to a subsequent b\bbi\bin\bnd\bd command.
- The return value is 0 unless an unrecognized option is supplied
+ The return value is 0 unless an unrecognized option is supplied
or an error occurred.
b\bbr\bre\bea\bak\bk [_\bn]
- Exit from within a f\bfo\bor\br, w\bwh\bhi\bil\ble\be, u\bun\bnt\bti\bil\bl, or s\bse\bel\ble\bec\bct\bt loop. If _\bn is
+ Exit from within a f\bfo\bor\br, w\bwh\bhi\bil\ble\be, u\bun\bnt\bti\bil\bl, or s\bse\bel\ble\bec\bct\bt loop. If _\bn is
specified, b\bbr\bre\bea\bak\bk exits _\bn enclosing loops. _\bn must be >= 1. If _\bn
- is greater than the number of enclosing loops, all enclosing
+ is greater than the number of enclosing loops, all enclosing
loops are exited. The return value is 0 unless _\bn is not greater
than or equal to 1.
b\bbu\bui\bil\blt\bti\bin\bn _\bs_\bh_\be_\bl_\bl_\b-_\bb_\bu_\bi_\bl_\bt_\bi_\bn [_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs]
- Execute the specified shell builtin _\bs_\bh_\be_\bl_\bl_\b-_\bb_\bu_\bi_\bl_\bt_\bi_\bn, passing it
- _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs, and return its exit status. This is useful when
- defining a function whose name is the same as a shell builtin,
- retaining the functionality of the builtin within the function.
- The c\bcd\bd builtin is commonly redefined this way. The return sta-
+ Execute the specified shell builtin _\bs_\bh_\be_\bl_\bl_\b-_\bb_\bu_\bi_\bl_\bt_\bi_\bn, passing it
+ _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs, and return its exit status. This is useful when
+ defining a function whose name is the same as a shell builtin,
+ retaining the functionality of the builtin within the function.
+ The c\bcd\bd builtin is commonly redefined this way. The return sta-
tus is false if _\bs_\bh_\be_\bl_\bl_\b-_\bb_\bu_\bi_\bl_\bt_\bi_\bn is not a shell builtin command.
c\bca\bal\bll\ble\ber\br [_\be_\bx_\bp_\br]
Returns the context of any active subroutine call (a shell func-
tion or a script executed with the .\b. or s\bso\bou\bur\brc\bce\be builtins).
- Without _\be_\bx_\bp_\br, c\bca\bal\bll\ble\ber\br displays the line number and source file-
- name of the current subroutine call. If a non-negative integer
+ Without _\be_\bx_\bp_\br, c\bca\bal\bll\ble\ber\br displays the line number and source file-
+ name of the current subroutine call. If a non-negative integer
is supplied as _\be_\bx_\bp_\br, c\bca\bal\bll\ble\ber\br displays the line number, subroutine
name, and source file corresponding to that position in the cur-
- rent execution call stack. This extra information may be used,
+ rent 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 _\be_\bx_\bp_\br does not correspond to a valid position in
+ The return value is 0 unless the shell is not executing a sub-
+ routine call or _\be_\bx_\bp_\br does not correspond to a valid position in
the call stack.
c\bcd\bd [-\b-L\bL] [-\b-@\b@] [_\bd_\bi_\br]
c\bcd\bd -\b-P\bP [-\b-e\be] [-\b-@\b@] [_\bd_\bi_\br]
- Change the current directory to _\bd_\bi_\br. if _\bd_\bi_\br is not supplied,
- the value of the H\bHO\bOM\bME\bE shell variable is used as _\bd_\bi_\br. The vari-
- able C\bCD\bDP\bPA\bAT\bTH\bH exists, and _\bd_\bi_\br does not begin with a slash (/), c\bcd\bd
+ Change the current directory to _\bd_\bi_\br. if _\bd_\bi_\br is not supplied,
+ the value of the H\bHO\bOM\bME\bE shell variable is used as _\bd_\bi_\br. The vari-
+ able C\bCD\bDP\bPA\bAT\bTH\bH exists, and _\bd_\bi_\br does not begin with a slash (/), c\bcd\bd
uses it as a search path: the shell searches each directory name
- in C\bCD\bDP\bPA\bAT\bTH\bH for _\bd_\bi_\br. Alternative directory names in C\bCD\bDP\bPA\bAT\bTH\bH are
- separated by a colon (:). A null directory name in C\bCD\bDP\bPA\bAT\bTH\bH is
+ in C\bCD\bDP\bPA\bAT\bTH\bH for _\bd_\bi_\br. Alternative directory names in C\bCD\bDP\bPA\bAT\bTH\bH are
+ separated by a colon (:). A null directory name in C\bCD\bDP\bPA\bAT\bTH\bH is
the same as the current directory, i.e., ".".
- The -\b-P\bP option causes c\bcd\bd to use the physical directory structure
+ The -\b-P\bP option causes c\bcd\bd to use the physical directory structure
by resolving symbolic links while traversing _\bd_\bi_\br and before pro-
- cessing instances of _\b._\b. in _\bd_\bi_\br (see also the -\b-P\bP option to the
+ cessing instances of _\b._\b. in _\bd_\bi_\br (see also the -\b-P\bP option to the
s\bse\bet\bt builtin command).
- The -\b-L\bL option forces c\bcd\bd to follow symbolic links by resolving
+ The -\b-L\bL option forces c\bcd\bd to follow symbolic links by resolving
the link after processing instances of _\b._\b. in _\bd_\bi_\br. If _\b._\b. appears
- in _\bd_\bi_\br, c\bcd\bd processes it by removing the immediately previous
+ in _\bd_\bi_\br, c\bcd\bd processes it by removing the immediately previous
pathname component from _\bd_\bi_\br, back to a slash or the beginning of
- _\bd_\bi_\br, and verifying that the portion of _\bd_\bi_\br it has processed to
- that point is still a valid directory name after removing the
+ _\bd_\bi_\br, and verifying that the portion of _\bd_\bi_\br it has processed to
+ that point is still a valid directory name after removing the
pathname component. If it is not a valid directory name, c\bcd\bd re-
- turns a non-zero status. If neither -\b-L\bL nor -\b-P\bP is supplied, c\bcd\bd
+ turns a non-zero status. If neither -\b-L\bL nor -\b-P\bP is supplied, c\bcd\bd
behaves as if -\b-L\bL had been supplied.
If the -\b-e\be option is supplied with -\b-P\bP, and c\bcd\bd cannot successfully
- determine the current working directory after a successful di-
+ determine the current working directory after a successful di-
rectory change, it returns a non-zero status.
- On systems that support it, the -\b-@\b@ option presents the extended
+ On systems that support it, the -\b-@\b@ option presents the extended
attributes associated with a file as a directory.
- An argument of -\b- is converted to $\b$O\bOL\bLD\bDP\bPW\bWD\bD before attempting the
+ An argument of -\b- is converted to $\b$O\bOL\bLD\bDP\bPW\bWD\bD before attempting the
directory change.
- If c\bcd\bd uses a non-empty directory name from C\bCD\bDP\bPA\bAT\bTH\bH,\b, or if -\b- is
- the first argument, and the directory change is successful, c\bcd\bd
+ If c\bcd\bd uses a non-empty directory name from C\bCD\bDP\bPA\bAT\bTH\bH,\b, or if -\b- is
+ the first argument, and the directory change is successful, c\bcd\bd
writes the absolute pathname of the new working directory to the
standard output.
- If the directory change is successful, c\bcd\bd sets the value of the
+ If the directory change is successful, c\bcd\bd sets the value of the
P\bPW\bWD\bD environment variable to the new directory name, and sets the
- O\bOL\bLD\bDP\bPW\bWD\bD environment variable to the value of the current working
+ O\bOL\bLD\bDP\bPW\bWD\bD environment variable to the value of the current working
directory before the change.
- The return value is true if the directory was successfully
+ The return value is true if the directory was successfully
changed; false otherwise.
c\bco\bom\bmm\bma\ban\bnd\bd [-\b-p\bpV\bVv\bv] _\bc_\bo_\bm_\bm_\ba_\bn_\bd [_\ba_\br_\bg ...]
- The c\bco\bom\bmm\bma\ban\bnd\bd builtin runs _\bc_\bo_\bm_\bm_\ba_\bn_\bd with _\ba_\br_\bg_\bs suppressing the nor-
+ The c\bco\bom\bmm\bma\ban\bnd\bd builtin runs _\bc_\bo_\bm_\bm_\ba_\bn_\bd with _\ba_\br_\bg_\bs suppressing the nor-
mal shell function lookup for _\bc_\bo_\bm_\bm_\ba_\bn_\bd. Only builtin commands or
- commands found in the P\bPA\bAT\bTH\bH named _\bc_\bo_\bm_\bm_\ba_\bn_\bd are executed. If the
+ commands found in the P\bPA\bAT\bTH\bH named _\bc_\bo_\bm_\bm_\ba_\bn_\bd are executed. If the
-\b-p\bp option is supplied, the search for _\bc_\bo_\bm_\bm_\ba_\bn_\bd is performed using
- a default value for P\bPA\bAT\bTH\bH that is guaranteed to find all of the
+ a default value for P\bPA\bAT\bTH\bH that is guaranteed to find all of the
standard utilities.
- If either the -\b-V\bV or -\b-v\bv option is supplied, c\bco\bom\bmm\bma\ban\bnd\bd prints a de-
- scription of _\bc_\bo_\bm_\bm_\ba_\bn_\bd. The -\b-v\bv option displays a single word in-
- dicating the command or filename used to invoke _\bc_\bo_\bm_\bm_\ba_\bn_\bd; the -\b-V\bV
+ If either the -\b-V\bV or -\b-v\bv option is supplied, c\bco\bom\bmm\bma\ban\bnd\bd prints a de-
+ scription of _\bc_\bo_\bm_\bm_\ba_\bn_\bd. The -\b-v\bv option displays a single word in-
+ dicating the command or filename used to invoke _\bc_\bo_\bm_\bm_\ba_\bn_\bd; the -\b-V\bV
option produces a more verbose description.
- If the -\b-V\bV or -\b-v\bv option is supplied, the exit status is zero if
- _\bc_\bo_\bm_\bm_\ba_\bn_\bd was found, and non-zero if not. If neither option is
- supplied and an error occurred or _\bc_\bo_\bm_\bm_\ba_\bn_\bd cannot be found, the
- exit status is 127. Otherwise, the exit status of the c\bco\bom\bmm\bma\ban\bnd\bd
+ If the -\b-V\bV or -\b-v\bv option is supplied, the exit status is zero if
+ _\bc_\bo_\bm_\bm_\ba_\bn_\bd was found, and non-zero if not. If neither option is
+ supplied and an error occurred or _\bc_\bo_\bm_\bm_\ba_\bn_\bd cannot be found, the
+ exit status is 127. Otherwise, the exit status of the c\bco\bom\bmm\bma\ban\bnd\bd
builtin is the exit status of _\bc_\bo_\bm_\bm_\ba_\bn_\bd.
c\bco\bom\bmp\bpg\bge\ben\bn [-\b-V\bV _\bv_\ba_\br_\bn_\ba_\bm_\be] [_\bo_\bp_\bt_\bi_\bo_\bn] [_\bw_\bo_\br_\bd]
- Generate possible completion matches for _\bw_\bo_\br_\bd according to the
- _\bo_\bp_\bt_\bi_\bo_\bns, which may be any option accepted by the c\bco\bom\bmp\bpl\ble\bet\bte\be
+ Generate possible completion matches for _\bw_\bo_\br_\bd according to the
+ _\bo_\bp_\bt_\bi_\bo_\bns, which may be any option accepted by the c\bco\bom\bmp\bpl\ble\bet\bte\be
builtin with the exceptions of -\b-p\bp, -\b-r\br, -\b-D\bD, -\b-E\bE, and -\b-I\bI, and write
the matches to the standard output.
- If the -\b-V\bV option is supplied, c\bco\bom\bmp\bpg\bge\ben\bn stores the generated com-
- pletions into the indexed array variable _\bv_\ba_\br_\bn_\ba_\bm_\be instead of
+ If the -\b-V\bV option is supplied, c\bco\bom\bmp\bpg\bge\ben\bn stores the generated com-
+ pletions into the indexed array variable _\bv_\ba_\br_\bn_\ba_\bm_\be instead of
writing them to the standard output.
When using the -\b-F\bF or -\b-C\bC options, the various shell variables set
The matches will be generated in the same way as if the program-
mable completion code had generated them directly from a comple-
- tion specification with the same flags. If _\bw_\bo_\br_\bd is specified,
- only those completions matching _\bw_\bo_\br_\bd will be displayed or
+ tion specification with the same flags. If _\bw_\bo_\br_\bd is specified,
+ only those completions matching _\bw_\bo_\br_\bd will be displayed or
stored.
- The return value is true unless an invalid option is supplied,
+ The return value is true unless an invalid option is supplied,
or no matches were generated.
c\bco\bom\bmp\bpl\ble\bet\bte\be [-\b-a\bab\bbc\bcd\bde\bef\bfg\bgj\bjk\bks\bsu\buv\bv] [-\b-o\bo _\bc_\bo_\bm_\bp_\b-_\bo_\bp_\bt_\bi_\bo_\bn] [-\b-D\bDE\bEI\bI] [-\b-A\bA _\ba_\bc_\bt_\bi_\bo_\bn]
Specify how arguments to each _\bn_\ba_\bm_\be should be completed.
If the -\b-p\bp option is supplied, or if no options or _\bn_\ba_\bm_\bes are sup-
- plied, print existing completion specifications in a way that
+ plied, print existing completion specifications in a way that
allows them to be reused as input. The -\b-r\br option removes a com-
- pletion specification for each _\bn_\ba_\bm_\be, or, if no _\bn_\ba_\bm_\bes are sup-
+ pletion specification for each _\bn_\ba_\bm_\be, or, if no _\bn_\ba_\bm_\bes are sup-
plied, all completion specifications.
- The -\b-D\bD option indicates that other supplied options and actions
- should apply to the "default" command completion; that is, com-
- pletion attempted on a command for which no completion has pre-
- viously been defined. The -\b-E\bE option indicates that other sup-
- plied options and actions should apply to "empty" command com-
- pletion; that is, completion attempted on a blank line. The -\b-I\bI
- option indicates that other supplied options and actions should
- apply to completion on the initial non-assignment word on the
+ The -\b-D\bD option indicates that other supplied options and actions
+ should apply to the "default" command completion; that is, com-
+ pletion attempted on a command for which no completion has pre-
+ viously been defined. The -\b-E\bE option indicates that other sup-
+ plied options and actions should apply to "empty" command com-
+ pletion; that is, completion attempted on a blank line. The -\b-I\bI
+ option indicates that other supplied options and actions should
+ apply to completion on the initial non-assignment word on the
line, or after a command delimiter such as ;\b; or |\b|, which is usu-
ally command name completion. If multiple options are supplied,
the -\b-D\bD option takes precedence over -\b-E\bE, and both take precedence
- over -\b-I\bI. If any of -\b-D\bD, -\b-E\bE, or -\b-I\bI are supplied, any other _\bn_\ba_\bm_\be
- arguments are ignored; these completions only apply to the case
+ over -\b-I\bI. If any of -\b-D\bD, -\b-E\bE, or -\b-I\bI are supplied, any other _\bn_\ba_\bm_\be
+ arguments are ignored; these completions only apply to the case
specified by the option.
The process of applying these completion specifications when at-
- tempting word completion is described above under P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be
+ tempting word completion is described above under P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be
C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn.
- Other options, if specified, have the following meanings. The
- arguments to the -\b-G\bG, -\b-W\bW, and -\b-X\bX options (and, if necessary, the
- -\b-P\bP and -\b-S\bS options) should be quoted to protect them from expan-
+ Other options, if specified, have the following meanings. The
+ arguments to the -\b-G\bG, -\b-W\bW, and -\b-X\bX options (and, if necessary, the
+ -\b-P\bP and -\b-S\bS options) should be quoted to protect them from expan-
sion before the c\bco\bom\bmp\bpl\ble\bet\bte\be builtin is invoked.
-\b-o\bo _\bc_\bo_\bm_\bp_\b-_\bo_\bp_\bt_\bi_\bo_\bn
- The _\bc_\bo_\bm_\bp_\b-_\bo_\bp_\bt_\bi_\bo_\bn controls several aspects of the comp-
- spec's behavior beyond the simple generation of comple-
+ The _\bc_\bo_\bm_\bp_\b-_\bo_\bp_\bt_\bi_\bo_\bn controls several aspects of the comp-
+ spec's behavior beyond the simple generation of comple-
tions. _\bc_\bo_\bm_\bp_\b-_\bo_\bp_\bt_\bi_\bo_\bn may be one of:
b\bba\bas\bsh\bhd\bde\bef\bfa\bau\bul\blt\bt
Perform the rest of the default b\bba\bas\bsh\bh completions
if the compspec generates no matches.
- d\bde\bef\bfa\bau\bul\blt\bt Use r\bre\bea\bad\bdl\bli\bin\bne\be's default filename completion if
+ d\bde\bef\bfa\bau\bul\blt\bt Use r\bre\bea\bad\bdl\bli\bin\bne\be's default filename completion if
the compspec generates no matches.
d\bdi\bir\brn\bna\bam\bme\bes\bs
- Perform directory name completion if the comp-
+ Perform directory name completion if the comp-
spec generates no matches.
f\bfi\bil\ble\ben\bna\bam\bme\bes\bs
- Tell r\bre\bea\bad\bdl\bli\bin\bne\be that the compspec generates file-
- names, so it can perform any filename-specific
- processing (such as adding a slash to directory
- names, quoting special characters, or suppress-
- ing trailing spaces). This is intended to be
+ Tell r\bre\bea\bad\bdl\bli\bin\bne\be that the compspec generates file-
+ names, so it can perform any filename-specific
+ processing (such as adding a slash to directory
+ names, quoting special characters, or suppress-
+ ing trailing spaces). This is intended to be
used with shell functions.
f\bfu\bul\bll\blq\bqu\buo\bot\bte\be
- Tell r\bre\bea\bad\bdl\bli\bin\bne\be to quote all the completed words
+ Tell r\bre\bea\bad\bdl\bli\bin\bne\be to quote all the completed words
even if they are not filenames.
- n\bno\boq\bqu\buo\bot\bte\be Tell r\bre\bea\bad\bdl\bli\bin\bne\be not to quote the completed words
- if they are filenames (quoting filenames is the
+ n\bno\boq\bqu\buo\bot\bte\be Tell r\bre\bea\bad\bdl\bli\bin\bne\be not to quote the completed words
+ if they are filenames (quoting filenames is the
default).
- n\bno\bos\bso\bor\brt\bt Tell r\bre\bea\bad\bdl\bli\bin\bne\be not to sort the list of possible
+ n\bno\bos\bso\bor\brt\bt Tell r\bre\bea\bad\bdl\bli\bin\bne\be not to sort the list of possible
completions alphabetically.
- n\bno\bos\bsp\bpa\bac\bce\be Tell r\bre\bea\bad\bdl\bli\bin\bne\be not to append a space (the de-
- fault) to words completed at the end of the
+ n\bno\bos\bsp\bpa\bac\bce\be Tell r\bre\bea\bad\bdl\bli\bin\bne\be not to append a space (the de-
+ fault) to words completed at the end of the
line.
p\bpl\blu\bus\bsd\bdi\bir\brs\bs
- After generating any matches defined by the
- compspec, attempt directory name completion and
- add any matches to the results of the other ac-
+ After generating any matches defined by the
+ compspec, attempt directory name completion and
+ add any matches to the results of the other ac-
tions.
-\b-A\bA _\ba_\bc_\bt_\bi_\bo_\bn
- The _\ba_\bc_\bt_\bi_\bo_\bn may be one of the following to generate a
+ The _\ba_\bc_\bt_\bi_\bo_\bn may be one of the following to generate a
list of possible completions:
a\bal\bli\bia\bas\bs Alias names. May also be specified as -\b-a\ba.
a\bar\brr\bra\bay\byv\bva\bar\br
Array variable names.
b\bbi\bin\bnd\bdi\bin\bng\bg R\bRe\bea\bad\bdl\bli\bin\bne\be key binding names.
- b\bbu\bui\bil\blt\bti\bin\bn Names of shell builtin commands. May also be
+ b\bbu\bui\bil\blt\bti\bin\bn Names of shell builtin commands. May also be
specified as -\b-b\bb.
c\bco\bom\bmm\bma\ban\bnd\bd Command names. May also be specified as -\b-c\bc.
d\bdi\bir\bre\bec\bct\bto\bor\bry\by
d\bdi\bis\bsa\bab\bbl\ble\bed\bd
Names of disabled shell builtins.
e\ben\bna\bab\bbl\ble\bed\bd Names of enabled shell builtins.
- e\bex\bxp\bpo\bor\brt\bt Names of exported shell variables. May also be
+ e\bex\bxp\bpo\bor\brt\bt Names of exported shell variables. May also be
specified as -\b-e\be.
- f\bfi\bil\ble\be File and directory names, similar to r\bre\bea\bad\bdl\bli\bin\bne\be's
- filename completion. May also be specified as
+ f\bfi\bil\ble\be File and directory names, similar to r\bre\bea\bad\bdl\bli\bin\bne\be's
+ filename completion. May also be specified as
-\b-f\bf.
f\bfu\bun\bnc\bct\bti\bio\bon\bn
Names of shell functions.
h\bhe\bel\blp\bpt\bto\bop\bpi\bic\bc
Help topics as accepted by the h\bhe\bel\blp\bp builtin.
h\bho\bos\bst\btn\bna\bam\bme\be
- Hostnames, as taken from the file specified by
+ Hostnames, as taken from the file specified by
the H\bHO\bOS\bST\bTF\bFI\bIL\bLE\bE shell variable.
- j\bjo\bob\bb Job names, if job control is active. May also
+ j\bjo\bob\bb Job names, if job control is active. May also
be specified as -\b-j\bj.
- k\bke\bey\byw\bwo\bor\brd\bd Shell reserved words. May also be specified as
+ k\bke\bey\byw\bwo\bor\brd\bd Shell reserved words. May also be specified as
-\b-k\bk.
r\bru\bun\bnn\bni\bin\bng\bg Names of running jobs, if job control is active.
s\bse\ber\brv\bvi\bic\bce\be Service names. May also be specified as -\b-s\bs.
- s\bse\bet\bto\bop\bpt\bt Valid arguments for the -\b-o\bo option to the s\bse\bet\bt
+ s\bse\bet\bto\bop\bpt\bt Valid arguments for the -\b-o\bo option to the s\bse\bet\bt
builtin.
- s\bsh\bho\bop\bpt\bt Shell option names as accepted by the s\bsh\bho\bop\bpt\bt
+ s\bsh\bho\bop\bpt\bt Shell option names as accepted by the s\bsh\bho\bop\bpt\bt
builtin.
s\bsi\big\bgn\bna\bal\bl Signal names.
s\bst\bto\bop\bpp\bpe\bed\bd Names of stopped jobs, if job control is active.
Names of all shell variables. May also be spec-
ified as -\b-v\bv.
-\b-C\bC _\bc_\bo_\bm_\bm_\ba_\bn_\bd
- _\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed in a subshell environment, and its
- output is used as the possible completions. Arguments
+ _\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed in a subshell environment, and its
+ output is used as the possible completions. Arguments
are passed as with the -\b-F\bF option.
-\b-F\bF _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
- The shell function _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn is executed in the current
- shell environment. When the function is executed, the
+ The shell function _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn is executed in the current
+ shell environment. When the function is executed, the
first argument ($\b$1\b1) is the name of the command whose ar-
guments are being completed, the second argument ($\b$2\b2) is
the word being completed, and the third argument ($\b$3\b3) is
- the word preceding the word being completed on the cur-
+ the word preceding the word being completed on the cur-
rent command line. When _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn finishes, programmable
- completion retrieves the possible completions from the
+ completion retrieves the possible completions from the
value of the C\bCO\bOM\bMP\bPR\bRE\bEP\bPL\bLY\bY array variable.
-\b-G\bG _\bg_\bl_\bo_\bb_\bp_\ba_\bt
- Expand the pathname expansion pattern _\bg_\bl_\bo_\bb_\bp_\ba_\bt to gener-
+ Expand the pathname expansion pattern _\bg_\bl_\bo_\bb_\bp_\ba_\bt to gener-
ate the possible completions.
-\b-P\bP _\bp_\br_\be_\bf_\bi_\bx
- Add _\bp_\br_\be_\bf_\bi_\bx to the beginning of each possible completion
+ Add _\bp_\br_\be_\bf_\bi_\bx to the beginning of each possible completion
after all other options have been applied.
-\b-S\bS _\bs_\bu_\bf_\bf_\bi_\bx
- Append _\bs_\bu_\bf_\bf_\bi_\bx to each possible completion after all
+ Append _\bs_\bu_\bf_\bf_\bi_\bx to each possible completion after all
other options have been applied.
-\b-W\bW _\bw_\bo_\br_\bd_\bl_\bi_\bs_\bt
- Split the _\bw_\bo_\br_\bd_\bl_\bi_\bs_\bt using the characters in the I\bIF\bFS\bS spe-
- cial variable as delimiters, and expand each resulting
- word. Shell quoting is honored within _\bw_\bo_\br_\bd_\bl_\bi_\bs_\bt, in or-
- der to provide a mechanism for the words to contain
- shell metacharacters or characters in the value of I\bIF\bFS\bS.
- The possible completions are the members of the resul-
- tant list which match a prefix of the word being com-
+ Split the _\bw_\bo_\br_\bd_\bl_\bi_\bs_\bt using the characters in the I\bIF\bFS\bS spe-
+ cial variable as delimiters, and expand each resulting
+ word. Shell quoting is honored within _\bw_\bo_\br_\bd_\bl_\bi_\bs_\bt, in or-
+ der to provide a mechanism for the words to contain
+ shell metacharacters or characters in the value of I\bIF\bFS\bS.
+ The possible completions are the members of the resul-
+ tant list which match a prefix of the word being com-
pleted.
-\b-X\bX _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt
- _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt is a pattern as used for pathname expansion.
+ _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt is a pattern as used for pathname expansion.
It is applied to the list of possible completions gener-
- ated by the preceding options and arguments, and each
- completion matching _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt is removed from the list.
- A leading !\b! in _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt negates the pattern; in this
+ ated by the preceding options and arguments, and each
+ completion matching _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt is removed from the list.
+ A leading !\b! in _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt negates the pattern; in this
case, any completion not matching _\bf_\bi_\bl_\bt_\be_\br_\bp_\ba_\bt is removed.
- The return value is true unless an invalid option is supplied,
+ The return value is true unless an invalid option is supplied,
an option other than -\b-p\bp, -\b-r\br, -\b-D\bD, -\b-E\bE, or -\b-I\bI is supplied without a
- _\bn_\ba_\bm_\be argument, an attempt is made to remove a completion speci-
+ _\bn_\ba_\bm_\be argument, an attempt is made to remove a completion speci-
fication for a _\bn_\ba_\bm_\be for which no specification exists, or an er-
ror occurs adding a completion specification.
c\bco\bom\bmp\bpo\bop\bpt\bt [-\b-o\bo _\bo_\bp_\bt_\bi_\bo_\bn] [-\b-D\bDE\bEI\bI] [+\b+o\bo _\bo_\bp_\bt_\bi_\bo_\bn] [_\bn_\ba_\bm_\be]
- Modify completion options for each _\bn_\ba_\bm_\be according to the _\bo_\bp_\b-
+ Modify completion options for each _\bn_\ba_\bm_\be according to the _\bo_\bp_\b-
_\bt_\bi_\bo_\bns, or for the currently-executing completion if no _\bn_\ba_\bm_\bes are
- supplied. If no _\bo_\bp_\bt_\bi_\bo_\bns are supplied, display the completion
- options for each _\bn_\ba_\bm_\be or the current completion. The possible
- values of _\bo_\bp_\bt_\bi_\bo_\bn are those valid for the c\bco\bom\bmp\bpl\ble\bet\bte\be builtin de-
+ supplied. If no _\bo_\bp_\bt_\bi_\bo_\bns are supplied, display the completion
+ options for each _\bn_\ba_\bm_\be or the current completion. The possible
+ values of _\bo_\bp_\bt_\bi_\bo_\bn are those valid for the c\bco\bom\bmp\bpl\ble\bet\bte\be builtin de-
scribed above.
The -\b-D\bD option indicates that other supplied options should apply
- to the "default" command completion; the -\b-E\bE option indicates
+ to the "default" command completion; the -\b-E\bE option indicates
that other supplied options should apply to "empty" command com-
pletion; and the -\b-I\bI option indicates that other supplied options
- should apply to completion on the initial word on the line.
+ should apply to completion on the initial word on the line.
These are determined in the same way as the c\bco\bom\bmp\bpl\ble\bet\bte\be builtin.
If multiple options are supplied, the -\b-D\bD option takes precedence
over -\b-E\bE, and both take precedence over -\b-I\bI.
- The return value is true unless an invalid option is supplied,
+ The return value is true unless an invalid option is supplied,
an attempt is made to modify the options for a _\bn_\ba_\bm_\be for which no
completion specification exists, or an output error occurs.
c\bco\bon\bnt\bti\bin\bnu\bue\be [_\bn]
c\bco\bon\bnt\bti\bin\bnu\bue\be resumes the next iteration of the enclosing f\bfo\bor\br, w\bwh\bhi\bil\ble\be,
- u\bun\bnt\bti\bil\bl, or s\bse\bel\ble\bec\bct\bt loop. If _\bn is specified, b\bba\bas\bsh\bh resumes the _\bnth
- enclosing loop. _\bn must be >= 1. If _\bn is greater than the num-
- ber of enclosing loops, the shell resumes the last enclosing
- loop (the "top-level" loop). The return value is 0 unless _\bn is
+ u\bun\bnt\bti\bil\bl, or s\bse\bel\ble\bec\bct\bt loop. If _\bn is specified, b\bba\bas\bsh\bh resumes the _\bnth
+ enclosing loop. _\bn must be >= 1. If _\bn is greater than the num-
+ ber of enclosing loops, the shell resumes the last enclosing
+ loop (the "top-level" loop). The return value is 0 unless _\bn is
not greater than or equal to 1.
d\bde\bec\bcl\bla\bar\bre\be [-\b-a\baA\bAf\bfF\bFg\bgi\biI\bIl\bln\bnr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
t\bty\byp\bpe\bes\bse\bet\bt [-\b-a\baA\bAf\bfF\bFg\bgi\biI\bIl\bln\bnr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
- Declare variables and/or give them attributes. If no _\bn_\ba_\bm_\bes are
+ Declare variables and/or give them attributes. If no _\bn_\ba_\bm_\bes are
given then display the values of variables or functions. The -\b-p\bp
- option will display the attributes and values of each _\bn_\ba_\bm_\be.
- When -\b-p\bp is used with _\bn_\ba_\bm_\be arguments, additional options, other
+ option will display the attributes and values of each _\bn_\ba_\bm_\be.
+ When -\b-p\bp is used with _\bn_\ba_\bm_\be arguments, additional options, other
than -\b-f\bf and -\b-F\bF, are ignored.
When -\b-p\bp is supplied without _\bn_\ba_\bm_\be arguments, d\bde\bec\bcl\bla\bar\bre\be will display
the attributes and values of all variables having the attributes
- specified by the additional options. If no other options are
+ specified by the additional options. If no other options are
supplied with -\b-p\bp, d\bde\bec\bcl\bla\bar\bre\be will display the attributes and values
- of all shell variables. The -\b-f\bf option restricts the display to
+ of all shell variables. The -\b-f\bf option restricts the display to
shell functions.
The -\b-F\bF option inhibits the display of function definitions; only
- the function name and attributes are printed. If the e\bex\bxt\btd\bde\beb\bbu\bug\bg
- shell option is enabled using s\bsh\bho\bop\bpt\bt, the source file name and
- line number where each _\bn_\ba_\bm_\be is defined are displayed as well.
+ the function name and attributes are printed. If the e\bex\bxt\btd\bde\beb\bbu\bug\bg
+ shell option is enabled using s\bsh\bho\bop\bpt\bt, the source file name and
+ line number where each _\bn_\ba_\bm_\be is defined are displayed as well.
The -\b-F\bF option implies -\b-f\bf.
- The -\b-g\bg option forces variables to be created or modified at the
+ The -\b-g\bg option forces variables to be created or modified at the
global scope, even when d\bde\bec\bcl\bla\bar\bre\be is executed in a shell function.
It is ignored when d\bde\bec\bcl\bla\bar\bre\be is not executed in a shell function.
- The -\b-I\bI option causes local variables to inherit the attributes
- (except the _\bn_\ba_\bm_\be_\br_\be_\bf attribute) and value of any existing vari-
- able with the same _\bn_\ba_\bm_\be at a surrounding scope. If there is no
+ The -\b-I\bI option causes local variables to inherit the attributes
+ (except the _\bn_\ba_\bm_\be_\br_\be_\bf attribute) and value of any existing vari-
+ able with the same _\bn_\ba_\bm_\be at a surrounding scope. If there is no
existing variable, the local variable is initially unset.
- The following options can be used to restrict output to vari-
- ables with the specified attribute or to give variables attrib-
+ The following options can be used to restrict output to vari-
+ ables with the specified attribute or to give variables attrib-
utes:
- -\b-a\ba Each _\bn_\ba_\bm_\be is an indexed array variable (see A\bAr\brr\bra\bay\bys\bs
+ -\b-a\ba Each _\bn_\ba_\bm_\be is an indexed array variable (see A\bAr\brr\bra\bay\bys\bs
above).
- -\b-A\bA Each _\bn_\ba_\bm_\be is an associative array variable (see A\bAr\brr\bra\bay\bys\bs
+ -\b-A\bA Each _\bn_\ba_\bm_\be is an associative array variable (see A\bAr\brr\bra\bay\bys\bs
above).
-\b-f\bf Each _\bn_\ba_\bm_\be refers to a shell function.
-\b-i\bi The variable is treated as an integer; arithmetic evalua-
- tion (see A\bAR\bRI\bIT\bTH\bHM\bME\bET\bTI\bIC\bC E\bEV\bVA\bAL\bLU\bUA\bAT\bTI\bIO\bON\bN above) is performed when
+ tion (see A\bAR\bRI\bIT\bTH\bHM\bME\bET\bTI\bIC\bC E\bEV\bVA\bAL\bLU\bUA\bAT\bTI\bIO\bON\bN above) is performed when
the variable is assigned a value.
- -\b-l\bl When the variable is assigned a value, all upper-case
- characters are converted to lower-case. The upper-case
+ -\b-l\bl When the variable is assigned a value, all upper-case
+ characters are converted to lower-case. The upper-case
attribute is disabled.
- -\b-n\bn Give each _\bn_\ba_\bm_\be the _\bn_\ba_\bm_\be_\br_\be_\bf attribute, making it a name
- reference to another variable. That other variable is
- defined by the value of _\bn_\ba_\bm_\be. All references, assign-
- ments, and attribute modifications to _\bn_\ba_\bm_\be, except those
- using or changing the -\b-n\bn attribute itself, are performed
- on the variable referenced by _\bn_\ba_\bm_\be's value. The nameref
+ -\b-n\bn Give each _\bn_\ba_\bm_\be the _\bn_\ba_\bm_\be_\br_\be_\bf attribute, making it a name
+ reference to another variable. That other variable is
+ defined by the value of _\bn_\ba_\bm_\be. All references, assign-
+ ments, and attribute modifications to _\bn_\ba_\bm_\be, except those
+ using or changing the -\b-n\bn attribute itself, are performed
+ on the variable referenced by _\bn_\ba_\bm_\be's value. The nameref
attribute cannot be applied to array variables.
-\b-r\br Make _\bn_\ba_\bm_\bes readonly. These names cannot then be assigned
values by subsequent assignment statements or unset.
-\b-t\bt Give each _\bn_\ba_\bm_\be the _\bt_\br_\ba_\bc_\be attribute. Traced functions in-
- herit the D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN traps from the calling shell.
+ herit the D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN traps from the calling shell.
The trace attribute has no special meaning for variables.
- -\b-u\bu When the variable is assigned a value, all lower-case
- characters are converted to upper-case. The lower-case
+ -\b-u\bu When the variable is assigned a value, all lower-case
+ characters are converted to upper-case. The lower-case
attribute is disabled.
- -\b-x\bx Mark each _\bn_\ba_\bm_\be for export to subsequent commands via the
+ -\b-x\bx Mark each _\bn_\ba_\bm_\be for export to subsequent commands via the
environment.
- Using "+" instead of "-" turns off the specified attribute in-
+ Using "+" instead of "-" turns off the specified attribute in-
stead, with the exceptions that +\b+a\ba and +\b+A\bA may not be used to de-
- stroy array variables and +\b+r\br will not remove the readonly at-
+ stroy array variables and +\b+r\br will not remove the readonly at-
tribute.
- When used in a function, d\bde\bec\bcl\bla\bar\bre\be and t\bty\byp\bpe\bes\bse\bet\bt make each _\bn_\ba_\bm_\be lo-
- cal, as with the l\blo\boc\bca\bal\bl command, unless the -\b-g\bg option is sup-
- plied. If a variable name is followed by =_\bv_\ba_\bl_\bu_\be, the value of
- the variable is set to _\bv_\ba_\bl_\bu_\be. When using -\b-a\ba or -\b-A\bA and the com-
- pound assignment syntax to create array variables, additional
+ When used in a function, d\bde\bec\bcl\bla\bar\bre\be and t\bty\byp\bpe\bes\bse\bet\bt make each _\bn_\ba_\bm_\be lo-
+ cal, as with the l\blo\boc\bca\bal\bl command, unless the -\b-g\bg option is sup-
+ plied. If a variable name is followed by =_\bv_\ba_\bl_\bu_\be, the value of
+ the variable is set to _\bv_\ba_\bl_\bu_\be. When using -\b-a\ba or -\b-A\bA and the com-
+ pound assignment syntax to create array variables, additional
attributes do not take effect until subsequent assignments.
- The return value is 0 unless an invalid option is encountered,
- an attempt is made to define a function using "-f foo=bar". an
+ The return value is 0 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 at-
tempt is made to assign a value to an array variable without us-
- ing the compound assignment syntax (see A\bAr\brr\bra\bay\bys\bs above), one of
+ ing the compound assignment syntax (see A\bAr\brr\bra\bay\bys\bs above), one of
the _\bn_\ba_\bm_\be_\bs is not a valid shell variable name, an attempt is made
- to turn off readonly status for a readonly variable, an attempt
- is made to turn off array status for an array variable, or an
+ to turn off readonly status for a readonly variable, an attempt
+ is made to turn off array status for an array variable, or an
attempt is made to display a non-existent function with -\b-f\bf.
d\bdi\bir\brs\bs [\b[-\b-c\bcl\blp\bpv\bv]\b] [\b[+\b+_\bn]\b] [\b[-\b-_\bn]\b]
Without options, display the list of currently remembered direc-
- tories. The default display is on a single line with directory
- names separated by spaces. Directories are added to the list
- with the p\bpu\bus\bsh\bhd\bd command; the p\bpo\bop\bpd\bd command removes entries from
- the list. The current directory is always the first directory
+ tories. The default display is on a single line with directory
+ names separated by spaces. Directories are added to the list
+ with the p\bpu\bus\bsh\bhd\bd command; the p\bpo\bop\bpd\bd command removes entries from
+ the list. The current directory is always the first directory
in the stack.
Options, if supplied, have the following meanings:
- -\b-c\bc Clears the directory stack by deleting all of the en-
+ -\b-c\bc Clears the directory stack by deleting all of the en-
tries.
- -\b-l\bl Produces a listing using full pathnames; the default
+ -\b-l\bl Produces a listing using full pathnames; the default
listing format uses a tilde to denote the home directory.
-\b-p\bp Print the directory stack with one entry per line.
- -\b-v\bv Print the directory stack with one entry per line, pre-
+ -\b-v\bv Print the directory stack with one entry per line, pre-
fixing each entry with its index in the stack.
+\b+_\bn Displays the _\bnth entry counting from the left of the list
shown by d\bdi\bir\brs\bs when invoked without options, starting with
zero.
- -\b-_\bn Displays the _\bnth entry counting from the right of the
+ -\b-_\bn Displays the _\bnth entry counting from the right of the
list shown by d\bdi\bir\brs\bs when invoked without options, starting
with zero.
- The return value is 0 unless an invalid option is supplied or _\bn
+ The return value is 0 unless an invalid option is supplied or _\bn
indexes beyond the end of the directory stack.
d\bdi\bis\bso\bow\bwn\bn [-\b-a\bar\br] [-\b-h\bh] [_\bi_\bd ...]
- Without options, remove each _\bi_\bd from the table of active jobs.
- Each _\bi_\bd may be a job specification _\bj_\bo_\bb_\bs_\bp_\be_\bc or a process ID _\bp_\bi_\bd;
+ Without options, remove each _\bi_\bd from the table of active jobs.
+ Each _\bi_\bd may be a job specification _\bj_\bo_\bb_\bs_\bp_\be_\bc or a process ID _\bp_\bi_\bd;
if _\bi_\bd is a _\bp_\bi_\bd, d\bdi\bis\bso\bow\bwn\bn uses the job containing _\bp_\bi_\bd as _\bj_\bo_\bb_\bs_\bp_\be_\bc.
- If the -\b-h\bh option is supplied, d\bdi\bis\bso\bow\bwn\bn does not remove the jobs
- corresponding to each _\bi_\bd from the jobs table, but rather marks
- them so the shell does not send S\bSI\bIG\bGH\bHU\bUP\bP to the job if the shell
+ If the -\b-h\bh option is supplied, d\bdi\bis\bso\bow\bwn\bn does not remove the jobs
+ corresponding to each _\bi_\bd from the jobs table, but rather marks
+ them so the shell does not send S\bSI\bIG\bGH\bHU\bUP\bP to the job if the shell
receives a S\bSI\bIG\bGH\bHU\bUP\bP.
- If no _\bi_\bd is supplied, the -\b-a\ba option means to remove or mark all
+ If no _\bi_\bd is supplied, the -\b-a\ba option means to remove or mark all
jobs; the -\b-r\br option without an _\bi_\bd argument removes or marks run-
- ning jobs. If no _\bi_\bd is supplied, and neither the -\b-a\ba nor the -\b-r\br
+ ning jobs. If no _\bi_\bd is supplied, and neither the -\b-a\ba nor the -\b-r\br
option is supplied, d\bdi\bis\bso\bow\bwn\bn removes or marks the current job.
The return value is 0 unless an _\bi_\bd does not specify a valid job.
e\bec\bch\bho\bo [-\b-n\bne\beE\bE] [_\ba_\br_\bg ...]
- Output the _\ba_\br_\bgs, separated by spaces, followed by a newline.
- The return status is 0 unless a write error occurs. If -\b-n\bn is
+ Output the _\ba_\br_\bgs, separated by spaces, followed by a newline.
+ The return status is 0 unless a write error occurs. If -\b-n\bn is
specified, the trailing newline is not printed.
- If the -\b-e\be option is given, e\bec\bch\bho\bo interprets the following back-
+ If the -\b-e\be option is given, e\bec\bch\bho\bo interprets the following back-
slash-escaped characters. The -\b-E\bE option disables interpretation
- of these escape characters, even on systems where they are in-
- terpreted by default. The x\bxp\bpg\bg_\b_e\bec\bch\bho\bo shell option determines
+ of these escape characters, even on systems where they are in-
+ terpreted by default. The x\bxp\bpg\bg_\b_e\bec\bch\bho\bo shell option determines
whether or not e\bec\bch\bho\bo interprets any options and expands these es-
- cape characters. e\bec\bch\bho\bo does not interpret -\b--\b- to mean the end of
+ cape characters. e\bec\bch\bho\bo does not interpret -\b--\b- to mean the end of
options.
e\bec\bch\bho\bo interprets the following escape sequences:
\\b\t\bt horizontal tab
\\b\v\bv vertical tab
\\b\\\b\ backslash
- \\b\0\b0_\bn_\bn_\bn The eight-bit character whose value is the octal value
+ \\b\0\b0_\bn_\bn_\bn The eight-bit character whose value is the octal value
_\bn_\bn_\bn (zero to three octal digits).
- \\b\x\bx_\bH_\bH The eight-bit character whose value is the hexadecimal
+ \\b\x\bx_\bH_\bH The eight-bit character whose value is the hexadecimal
value _\bH_\bH (one or two hex digits).
- \\b\u\bu_\bH_\bH_\bH_\bH The Unicode (ISO/IEC 10646) character whose value is the
+ \\b\u\bu_\bH_\bH_\bH_\bH The Unicode (ISO/IEC 10646) character whose value is the
hexadecimal value _\bH_\bH_\bH_\bH (one to four hex digits).
\\b\U\bU_\bH_\bH_\bH_\bH_\bH_\bH_\bH_\bH
- The Unicode (ISO/IEC 10646) character whose value is the
+ The Unicode (ISO/IEC 10646) character whose value is the
hexadecimal value _\bH_\bH_\bH_\bH_\bH_\bH_\bH_\bH (one to eight hex digits).
- e\bec\bch\bho\bo writes any unrecognized backslash-escaped characters un-
+ e\bec\bch\bho\bo writes any unrecognized backslash-escaped characters un-
changed.
e\ben\bna\bab\bbl\ble\be [-\b-a\ba] [-\b-d\bdn\bnp\bps\bs] [-\b-f\bf _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be] [_\bn_\ba_\bm_\be ...]
- Enable and disable builtin shell commands. Disabling a builtin
- allows an executable file which has the same name as a shell
- builtin to be executed without specifying a full pathname, even
+ Enable and disable builtin shell commands. Disabling a builtin
+ allows an executable file which has the same name as a shell
+ builtin to be executed without specifying a full pathname, even
though the shell normally searches for builtins before files.
- If -\b-n\bn is supplied, each _\bn_\ba_\bm_\be is disabled; otherwise, _\bn_\ba_\bm_\bes are
- enabled. For example, to use the t\bte\bes\bst\bt binary found usin g P\bPA\bAT\bTH\bH
+ If -\b-n\bn is supplied, each _\bn_\ba_\bm_\be is disabled; otherwise, _\bn_\ba_\bm_\bes are
+ enabled. For example, to use the t\bte\bes\bst\bt binary found usin g P\bPA\bAT\bTH\bH
instead of the shell builtin version, run "enable -n test".
- If no _\bn_\ba_\bm_\be arguments are supplied, or if the -\b-p\bp option is sup-
+ If no _\bn_\ba_\bm_\be arguments are supplied, or if the -\b-p\bp option is sup-
plied, print a list of shell builtins. With no other option ar-
guments, the list consists of all enabled shell builtins. If -\b-n\bn
- is supplied, print only disabled builtins. If -\b-a\ba is supplied,
- the list printed includes all builtins, with an indication of
+ is supplied, print only disabled builtins. If -\b-a\ba is supplied,
+ the list printed includes all builtins, with an indication of
whether or not each is enabled. The -\b-s\bs option means to restrict
the output to the POSIX _\bs_\bp_\be_\bc_\bi_\ba_\bl builtins.
- The -\b-f\bf option means to load the new builtin command _\bn_\ba_\bm_\be from
+ The -\b-f\bf option means to load the new builtin command _\bn_\ba_\bm_\be from
shared object _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be, on systems that support dynamic loading.
If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be does not contain a slash, B\bBa\bas\bsh\bh will use the value of
- the B\bBA\bAS\bSH\bH_\b_L\bLO\bOA\bAD\bDA\bAB\bBL\bLE\bES\bS_\b_P\bPA\bAT\bTH\bH variable as a colon-separated list of
- directories in which to search for _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be. The default for
- B\bBA\bAS\bSH\bH_\b_L\bLO\bOA\bAD\bDA\bAB\bBL\bLE\bES\bS_\b_P\bPA\bAT\bTH\bH is system-dependent, and may include "." to
- force a search of the current directory. The -\b-d\bd option will
- delete a builtin previously loaded with -\b-f\bf. If _\b-_\bs is used with
+ the B\bBA\bAS\bSH\bH_\b_L\bLO\bOA\bAD\bDA\bAB\bBL\bLE\bES\bS_\b_P\bPA\bAT\bTH\bH variable as a colon-separated list of
+ directories in which to search for _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be. The default for
+ B\bBA\bAS\bSH\bH_\b_L\bLO\bOA\bAD\bDA\bAB\bBL\bLE\bES\bS_\b_P\bPA\bAT\bTH\bH is system-dependent, and may include "." to
+ force a search of the current directory. The -\b-d\bd option will
+ delete a builtin previously loaded with -\b-f\bf. If _\b-_\bs is used with
_\b-_\bf, the new builtin becomes a POSIX special builtin.
- If no options are supplied and a _\bn_\ba_\bm_\be is not a shell builtin,
- e\ben\bna\bab\bbl\ble\be will attempt to load _\bn_\ba_\bm_\be from a shared object named
+ If no options are supplied and a _\bn_\ba_\bm_\be is not a shell builtin,
+ e\ben\bna\bab\bbl\ble\be will attempt to load _\bn_\ba_\bm_\be from a shared object named
_\bn_\ba_\bm_\be, as if the command were "enable -f _\bn_\ba_\bm_\be _\bn_\ba_\bm_\be".
- The return value is 0 unless a _\bn_\ba_\bm_\be is not a shell builtin or
+ The return value is 0 unless a _\bn_\ba_\bm_\be is not a shell builtin or
there is an error loading a new builtin from a shared object.
e\bev\bva\bal\bl [_\ba_\br_\bg ...]
- Concatenate the _\ba_\br_\bgs together into a single command, separating
+ Concatenate the _\ba_\br_\bgs together into a single command, separating
them with spaces. B\bBa\bas\bsh\bh then reads and execute this command, and
- returns its exit status as the return status of e\bev\bva\bal\bl. If there
+ returns its exit status as the return status of e\bev\bva\bal\bl. If there
are no _\ba_\br_\bg_\bs, or only null arguments, e\bev\bva\bal\bl returns 0.
e\bex\bxe\bec\bc [-\b-c\bcl\bl] [-\b-a\ba _\bn_\ba_\bm_\be] [_\bc_\bo_\bm_\bm_\ba_\bn_\bd [_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs]]
- If _\bc_\bo_\bm_\bm_\ba_\bn_\bd is specified, it replaces the shell without creating
- a new process. _\bc_\bo_\bm_\bm_\ba_\bn_\bd cannot be a shell builtin or function.
+ If _\bc_\bo_\bm_\bm_\ba_\bn_\bd is specified, it replaces the shell without creating
+ a new process. _\bc_\bo_\bm_\bm_\ba_\bn_\bd cannot be a shell builtin or function.
The _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs become the arguments to _\bc_\bo_\bm_\bm_\ba_\bn_\bd. If the -\b-l\bl option
is supplied, the shell places a dash at the beginning of the ze-
- roth argument passed to _\bc_\bo_\bm_\bm_\ba_\bn_\bd. This is what _\bl_\bo_\bg_\bi_\bn(1) does.
- The -\b-c\bc option causes _\bc_\bo_\bm_\bm_\ba_\bn_\bd to be executed with an empty envi-
+ roth argument passed to _\bc_\bo_\bm_\bm_\ba_\bn_\bd. This is what _\bl_\bo_\bg_\bi_\bn(1) does.
+ The -\b-c\bc option causes _\bc_\bo_\bm_\bm_\ba_\bn_\bd to be executed with an empty envi-
ronment. If -\b-a\ba is supplied, the shell passes _\bn_\ba_\bm_\be as the zeroth
argument to the executed command.
If _\bc_\bo_\bm_\bm_\ba_\bn_\bd cannot be executed for some reason, a non-interactive
- shell exits, unless the e\bex\bxe\bec\bcf\bfa\bai\bil\bl shell option is enabled. In
- that case, it returns a non-zero status. An interactive shell
- returns a non-zero status if the file cannot be executed. A
+ shell exits, unless the e\bex\bxe\bec\bcf\bfa\bai\bil\bl shell option is enabled. In
+ that case, it returns a non-zero status. An interactive shell
+ returns a non-zero status if the file cannot be executed. A
subshell exits unconditionally if e\bex\bxe\bec\bc fails.
If _\bc_\bo_\bm_\bm_\ba_\bn_\bd is not specified, any redirections take effect in the
- current shell, and the return status is 0. If there is a redi-
+ current shell, and the return status is 0. If there is a redi-
rection error, the return status is 1.
e\bex\bxi\bit\bt [_\bn]
- Cause the shell to exit with a status of _\bn. If _\bn is omitted,
- the exit status is that of the last command executed. Any trap
+ Cause the shell to exit with a status of _\bn. If _\bn is omitted,
+ the exit status is that of the last command executed. Any trap
on E\bEX\bXI\bIT\bT is executed before the shell terminates.
e\bex\bxp\bpo\bor\brt\bt [-\b-f\bfn\bn] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be]] ...
e\bex\bxp\bpo\bor\brt\bt -\b-p\bp
- The supplied _\bn_\ba_\bm_\be_\bs are marked for automatic export to the envi-
- ronment of subsequently executed commands. If the -\b-f\bf option is
+ The supplied _\bn_\ba_\bm_\be_\bs are marked for automatic export to the envi-
+ ronment of subsequently executed commands. If the -\b-f\bf option is
given, the _\bn_\ba_\bm_\be_\bs refer to functions.
- The -\b-n\bn option unexports, or removes the export attribute, from
- each _\bn_\ba_\bm_\be. If no _\bn_\ba_\bm_\be_\bs are given, or if the -\b-p\bp option is sup-
- plied, e\bex\bxp\bpo\bor\brt\bt prints a list of names of all exported variables
+ The -\b-n\bn option unexports, or removes the export attribute, from
+ each _\bn_\ba_\bm_\be. If no _\bn_\ba_\bm_\be_\bs are given, or if the -\b-p\bp option is sup-
+ plied, e\bex\bxp\bpo\bor\brt\bt prints a list of names of all exported variables
on the standard output.
- e\bex\bxp\bpo\bor\brt\bt allows the value of a variable to be set when it is ex-
+ e\bex\bxp\bpo\bor\brt\bt allows the value of a variable to be set when it is ex-
ported or unexported by following the variable name with =_\bv_\ba_\bl_\bu_\be.
This sets the value of the variable to _\bv_\ba_\bl_\bu_\be while modifying the
- export attribute. e\bex\bxp\bpo\bor\brt\bt returns an exit status of 0 unless an
- invalid option is encountered, one of the _\bn_\ba_\bm_\be_\bs is not a valid
+ export attribute. e\bex\bxp\bpo\bor\brt\bt returns an exit status of 0 unless an
+ invalid option is encountered, one of the _\bn_\ba_\bm_\be_\bs is not a valid
shell variable name, or -\b-f\bf is supplied with a _\bn_\ba_\bm_\be that is not a
function.
f\bfc\bc [-\b-e\be _\be_\bn_\ba_\bm_\be] [-\b-l\bln\bnr\br] [_\bf_\bi_\br_\bs_\bt] [_\bl_\ba_\bs_\bt]
f\bfc\bc -\b-s\bs [_\bp_\ba_\bt=_\br_\be_\bp] [_\bc_\bm_\bd]
- The first form selects a range of commands from _\bf_\bi_\br_\bs_\bt to _\bl_\ba_\bs_\bt
- from the history list and displays or edits and re-executes
- them. _\bF_\bi_\br_\bs_\bt and _\bl_\ba_\bs_\bt may be specified as a string (to locate
- the last command beginning with that string) or as a number (an
- index into the history list, where a negative number is used as
+ The first form selects a range of commands from _\bf_\bi_\br_\bs_\bt to _\bl_\ba_\bs_\bt
+ from the history list and displays or edits and re-executes
+ them. _\bF_\bi_\br_\bs_\bt and _\bl_\ba_\bs_\bt may be specified as a string (to locate
+ the last command beginning with that string) or as a number (an
+ index into the history list, where a negative number is used as
an offset from the current command number).
When listing, a _\bf_\bi_\br_\bs_\bt or _\bl_\ba_\bs_\bt of 0 is equivalent to -1 and -0 is
equivalent to the current command (usually the f\bfc\bc command); oth-
- erwise 0 is equivalent to -1 and -0 is invalid. If _\bl_\ba_\bs_\bt is not
+ erwise 0 is equivalent to -1 and -0 is invalid. If _\bl_\ba_\bs_\bt is not
specified, it is set to the current command for listing (so that
"fc -l -10" prints the last 10 commands) and to _\bf_\bi_\br_\bs_\bt otherwise.
If _\bf_\bi_\br_\bs_\bt is not specified, it is set to the previous command for
editing and -16 for listing.
- If the -\b-l\bl option is supplied, the commands are listed on the
- standard output. The -\b-n\bn option suppresses the command numbers
+ If the -\b-l\bl option is supplied, the commands are listed on the
+ standard output. The -\b-n\bn option suppresses the command numbers
when listing. The -\b-r\br option reverses the order of the commands.
- Otherwise, f\bfc\bc invokes the editor named by _\be_\bn_\ba_\bm_\be on a file con-
- taining those commands. If _\be_\bn_\ba_\bm_\be is not supplied, f\bfc\bc uses the
- value of the F\bFC\bCE\bED\bDI\bIT\bT variable, and the value of E\bED\bDI\bIT\bTO\bOR\bR if F\bFC\bCE\bED\bDI\bIT\bT
- is not set. If neither variable is set, f\bfc\bc uses _\bv_\bi_\b. When edit-
- ing is complete, f\bfc\bc reads the file containing the edited com-
+ Otherwise, f\bfc\bc invokes the editor named by _\be_\bn_\ba_\bm_\be on a file con-
+ taining those commands. If _\be_\bn_\ba_\bm_\be is not supplied, f\bfc\bc uses the
+ value of the F\bFC\bCE\bED\bDI\bIT\bT variable, and the value of E\bED\bDI\bIT\bTO\bOR\bR if F\bFC\bCE\bED\bDI\bIT\bT
+ is not set. If neither variable is set, f\bfc\bc uses _\bv_\bi_\b. When edit-
+ ing is complete, f\bfc\bc reads the file containing the edited com-
mands and echoes and executes them.
- In the second form, f\bfc\bc re-executes _\bc_\bo_\bm_\bm_\ba_\bn_\bd after replacing each
- instance of _\bp_\ba_\bt with _\br_\be_\bp. _\bC_\bo_\bm_\bm_\ba_\bn_\bd is interpreted the same as
+ In the second form, f\bfc\bc re-executes _\bc_\bo_\bm_\bm_\ba_\bn_\bd after replacing each
+ instance of _\bp_\ba_\bt with _\br_\be_\bp. _\bC_\bo_\bm_\bm_\ba_\bn_\bd is interpreted the same as
_\bf_\bi_\br_\bs_\bt above.
- A useful alias to use with f\bfc\bc is "r="fc -s"", so that typing "r
+ A useful alias to use with f\bfc\bc is "r="fc -s"", so that typing "r
cc" runs the last command beginning with "cc" and typing "r" re-
executes the last command.
- If the first form is used, the return value is zero unless an
- invalid option is encountered or _\bf_\bi_\br_\bs_\bt or _\bl_\ba_\bs_\bt specify history
- lines out of range. When editing and re-executing a file of
+ If the first form is used, the return value is zero unless an
+ invalid option is encountered or _\bf_\bi_\br_\bs_\bt or _\bl_\ba_\bs_\bt specify history
+ lines out of range. When editing and re-executing a file of
commands, the return value is the value of the last command exe-
cuted or failure if an error occurs with the temporary file. If
the second form is used, the return status is that of the re-ex-
- ecuted command, unless _\bc_\bm_\bd does not specify a valid history en-
+ ecuted command, unless _\bc_\bm_\bd does not specify a valid history en-
try, in which case f\bfc\bc returns a non-zero status.
f\bfg\bg [_\bj_\bo_\bb_\bs_\bp_\be_\bc]
- Resume _\bj_\bo_\bb_\bs_\bp_\be_\bc in the foreground, and make it the current job.
- If _\bj_\bo_\bb_\bs_\bp_\be_\bc is not present, f\bfg\bg uses the shell's notion of the
- _\bc_\bu_\br_\br_\be_\bn_\bt _\bj_\bo_\bb. The return value is that of the command placed
- into the foreground, or failure if run when job control is dis-
+ Resume _\bj_\bo_\bb_\bs_\bp_\be_\bc in the foreground, and make it the current job.
+ If _\bj_\bo_\bb_\bs_\bp_\be_\bc is not present, f\bfg\bg uses the shell's notion of the
+ _\bc_\bu_\br_\br_\be_\bn_\bt _\bj_\bo_\bb. The return value is that of the command placed
+ into the foreground, or failure if run when job control is dis-
abled or, when run with job control enabled, if _\bj_\bo_\bb_\bs_\bp_\be_\bc does not
- specify a valid job or _\bj_\bo_\bb_\bs_\bp_\be_\bc specifies a job that was started
+ specify a valid job or _\bj_\bo_\bb_\bs_\bp_\be_\bc specifies a job that was started
without job control.
g\bge\bet\bto\bop\bpt\bts\bs _\bo_\bp_\bt_\bs_\bt_\br_\bi_\bn_\bg _\bn_\ba_\bm_\be [_\ba_\br_\bg ...]
- g\bge\bet\bto\bop\bpt\bts\bs is used by shell scripts and functions to parse posi-
- tional parameters and obtain options and their arguments. _\bo_\bp_\bt_\b-
- _\bs_\bt_\br_\bi_\bn_\bg contains the option characters to be recognized; if a
+ g\bge\bet\bto\bop\bpt\bts\bs is used by shell scripts and functions to parse posi-
+ tional parameters and obtain options and their arguments. _\bo_\bp_\bt_\b-
+ _\bs_\bt_\br_\bi_\bn_\bg contains the option characters to be recognized; if a
character is followed by a colon, the option is expected to have
- an argument, which should be separated from it by white space.
+ an argument, which should be separated from it by white space.
The colon and question mark characters may not be used as option
characters.
- Each time it is invoked, g\bge\bet\bto\bop\bpt\bts\bs places the next option in the
+ Each time it is invoked, g\bge\bet\bto\bop\bpt\bts\bs places the next option in the
shell variable _\bn_\ba_\bm_\be, initializing _\bn_\ba_\bm_\be if it does not exist, and
the index of the next argument to be processed into the variable
- O\bOP\bPT\bTI\bIN\bND\bD. O\bOP\bPT\bTI\bIN\bND\bD is initialized to 1 each time the shell or a
- shell script is invoked. When an option requires an argument,
+ O\bOP\bPT\bTI\bIN\bND\bD. O\bOP\bPT\bTI\bIN\bND\bD is initialized to 1 each time the shell or a
+ shell script is invoked. When an option requires an argument,
g\bge\bet\bto\bop\bpt\bts\bs places that argument into the variable O\bOP\bPT\bTA\bAR\bRG\bG.
- The shell does not reset O\bOP\bPT\bTI\bIN\bND\bD automatically; it must be manu-
- ally reset between multiple calls to g\bge\bet\bto\bop\bpt\bts\bs within the same
+ The shell does not reset O\bOP\bPT\bTI\bIN\bND\bD automatically; it must be manu-
+ ally reset between multiple calls to g\bge\bet\bto\bop\bpt\bts\bs within the same
shell invocation to use a new set of parameters.
- When it reaches the end of options, g\bge\bet\bto\bop\bpt\bts\bs exits with a return
- value greater than zero. O\bOP\bPT\bTI\bIN\bND\bD is set to the index of the
+ When it reaches the end of options, g\bge\bet\bto\bop\bpt\bts\bs exits with a return
+ value greater than zero. O\bOP\bPT\bTI\bIN\bND\bD is set to the index of the
first non-option argument, and _\bn_\ba_\bm_\be is set to ?.
- g\bge\bet\bto\bop\bpt\bts\bs normally parses the positional parameters, but if more
- arguments are supplied as _\ba_\br_\bg values, g\bge\bet\bto\bop\bpt\bts\bs parses those in-
+ g\bge\bet\bto\bop\bpt\bts\bs normally parses the positional parameters, but if more
+ arguments are supplied as _\ba_\br_\bg values, g\bge\bet\bto\bop\bpt\bts\bs parses those in-
stead.
- g\bge\bet\bto\bop\bpt\bts\bs can report errors in two ways. If the first character
- of _\bo_\bp_\bt_\bs_\bt_\br_\bi_\bn_\bg is a colon, g\bge\bet\bto\bop\bpt\bts\bs uses _\bs_\bi_\bl_\be_\bn_\bt error reporting.
- In normal operation, g\bge\bet\bto\bop\bpt\bts\bs prints diagnostic messages when it
- encounters invalid options or missing option arguments. If the
- variable O\bOP\bPT\bTE\bER\bRR\bR is set to 0, g\bge\bet\bto\bop\bpt\bts\bs does not display any error
- messages, even if the first character of _\bo_\bp_\bt_\bs_\bt_\br_\bi_\bn_\bg is not a
+ g\bge\bet\bto\bop\bpt\bts\bs can report errors in two ways. If the first character
+ of _\bo_\bp_\bt_\bs_\bt_\br_\bi_\bn_\bg is a colon, g\bge\bet\bto\bop\bpt\bts\bs uses _\bs_\bi_\bl_\be_\bn_\bt error reporting.
+ In normal operation, g\bge\bet\bto\bop\bpt\bts\bs prints diagnostic messages when it
+ encounters invalid options or missing option arguments. If the
+ variable O\bOP\bPT\bTE\bER\bRR\bR is set to 0, g\bge\bet\bto\bop\bpt\bts\bs does not display any error
+ messages, even if the first character of _\bo_\bp_\bt_\bs_\bt_\br_\bi_\bn_\bg is not a
colon.
If g\bge\bet\bto\bop\bpt\bts\bs detects an invalid option, it places ? into _\bn_\ba_\bm_\be and,
- if not silent, prints an error message and unsets O\bOP\bPT\bTA\bAR\bRG\bG. If
- g\bge\bet\bto\bop\bpt\bts\bs is silent, it assigns the option character found to O\bOP\bP-\b-
+ if not silent, prints an error message and unsets O\bOP\bPT\bTA\bAR\bRG\bG. If
+ g\bge\bet\bto\bop\bpt\bts\bs is silent, it assigns the option character found to O\bOP\bP-\b-
T\bTA\bAR\bRG\bG and does not print a diagnostic message.
- If a required argument is not found, and g\bge\bet\bto\bop\bpt\bts\bs is not silent,
+ If a required argument is not found, and g\bge\bet\bto\bop\bpt\bts\bs is not silent,
it sets the value of _\bn_\ba_\bm_\be to a question mark (?\b?), unsets O\bOP\bPT\bTA\bAR\bRG\bG,
- and prints a diagnostic message. If g\bge\bet\bto\bop\bpt\bts\bs is silent, it sets
- the value of _\bn_\ba_\bm_\be to a colon (:\b:) and sets O\bOP\bPT\bTA\bAR\bRG\bG to the option
+ and prints a diagnostic message. If g\bge\bet\bto\bop\bpt\bts\bs is silent, it sets
+ the value of _\bn_\ba_\bm_\be to a colon (:\b:) and sets O\bOP\bPT\bTA\bAR\bRG\bG to the option
character found.
- g\bge\bet\bto\bop\bpt\bts\bs returns true if an option, specified or unspecified, is
+ g\bge\bet\bto\bop\bpt\bts\bs returns true if an option, specified or unspecified, is
found. It returns false if the end of options is encountered or
an error occurs.
h\bha\bas\bsh\bh [-\b-l\blr\br] [-\b-p\bp _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be] [-\b-d\bdt\bt] [_\bn_\ba_\bm_\be]
Each time h\bha\bas\bsh\bh is invoked, it remembers the full pathname of the
- command _\bn_\ba_\bm_\be as determined by searching the directories in
- $\b$P\bPA\bAT\bTH\bH. Any previously-remembered pathname associated with _\bn_\ba_\bm_\be
- is discarded. If the -\b-p\bp option is supplied, h\bha\bas\bsh\bh uses _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ command _\bn_\ba_\bm_\be as determined by searching the directories in
+ $\b$P\bPA\bAT\bTH\bH. Any previously-remembered pathname associated with _\bn_\ba_\bm_\be
+ is discarded. If the -\b-p\bp option is supplied, h\bha\bas\bsh\bh uses _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
as the full pathname of the command.
- The -\b-r\br option causes the shell to forget all remembered loca-
- tions. Assigning to the P\bPA\bAT\bTH\bH variable also clears all hashed
- filenames. The -\b-d\bd option causes the shell to forget the remem-
+ The -\b-r\br option causes the shell to forget all remembered loca-
+ tions. Assigning to the P\bPA\bAT\bTH\bH variable also clears all hashed
+ filenames. The -\b-d\bd option causes the shell to forget the remem-
bered location of each _\bn_\ba_\bm_\be.
If the -\b-t\bt option is supplied, h\bha\bas\bsh\bh prints the full pathname cor-
- responding to each _\bn_\ba_\bm_\be. If multiple _\bn_\ba_\bm_\be arguments are sup-
- plied with -\b-t\bt, h\bha\bas\bsh\bh prints the _\bn_\ba_\bm_\be before the corresponding
+ responding to each _\bn_\ba_\bm_\be. If multiple _\bn_\ba_\bm_\be arguments are sup-
+ plied with -\b-t\bt, h\bha\bas\bsh\bh prints the _\bn_\ba_\bm_\be before the corresponding
hashed full pathname. The -\b-l\bl option displays output in a format
that may be reused as input.
- If no arguments are given, or if only -\b-l\bl is supplied, h\bha\bas\bsh\bh
- prints information about remembered commands. The -\b-t\bt, -\b-d\bd, and
- -\b-p\bp options (the options that act on the _\bn_\ba_\bm_\be arguments) are mu-
+ If no arguments are given, or if only -\b-l\bl is supplied, h\bha\bas\bsh\bh
+ prints information about remembered commands. The -\b-t\bt, -\b-d\bd, and
+ -\b-p\bp options (the options that act on the _\bn_\ba_\bm_\be arguments) are mu-
tually exclusive. Only one will be active. If more than one is
- supplied, -\b-t\bt has higher priority than -\b-p\bp, and both have higher
+ supplied, -\b-t\bt has higher priority than -\b-p\bp, and both have higher
priority than -\b-d\bd.
- The return status is zero unless a _\bn_\ba_\bm_\be is not found or an in-
+ The return status is zero unless a _\bn_\ba_\bm_\be is not found or an in-
valid option is supplied.
h\bhe\bel\blp\bp [-\b-d\bdm\bms\bs] [_\bp_\ba_\bt_\bt_\be_\br_\bn]
- Display helpful information about builtin commands. If _\bp_\ba_\bt_\bt_\be_\br_\bn
- is specified, h\bhe\bel\blp\bp gives detailed help on all commands matching
- _\bp_\ba_\bt_\bt_\be_\br_\bn; otherwise it displays a list of all the builtins and
+ Display helpful information about builtin commands. If _\bp_\ba_\bt_\bt_\be_\br_\bn
+ is specified, h\bhe\bel\blp\bp gives detailed help on all commands matching
+ _\bp_\ba_\bt_\bt_\be_\br_\bn; otherwise it displays a list of all the builtins and
shell compound commands.
-\b-d\bd Display a short description of each _\bp_\ba_\bt_\bt_\be_\br_\bn
-\b-m\bm Display the description of each _\bp_\ba_\bt_\bt_\be_\br_\bn in a manpage-like
h\bhi\bis\bst\bto\bor\bry\by -\b-a\ban\bnr\brw\bw [_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be]
h\bhi\bis\bst\bto\bor\bry\by -\b-p\bp _\ba_\br_\bg [_\ba_\br_\bg ...]
h\bhi\bis\bst\bto\bor\bry\by -\b-s\bs _\ba_\br_\bg [_\ba_\br_\bg ...]
- With no options, display the command history list with numbers.
- Entries prefixed with a *\b* have been modified. An argument of _\bn
- lists only the last _\bn entries. If the shell variable H\bHI\bIS\bST\bTT\bTI\bIM\bME\bE-\b-
- F\bFO\bOR\bRM\bMA\bAT\bT is set and not null, it is used as a format string for
- _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be(3) to display the time stamp associated with each dis-
- played history entry. If h\bhi\bis\bst\bto\bor\bry\by uses H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT, it does
- not print an intervening space between the formatted time stamp
+ With no options, display the command history list with numbers.
+ Entries prefixed with a *\b* have been modified. An argument of _\bn
+ lists only the last _\bn entries. If the shell variable H\bHI\bIS\bST\bTT\bTI\bIM\bME\bE-\b-
+ F\bFO\bOR\bRM\bMA\bAT\bT is set and not null, it is used as a format string for
+ _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be(3) to display the time stamp associated with each dis-
+ played history entry. If h\bhi\bis\bst\bto\bor\bry\by uses H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT, it does
+ not print an intervening space between the formatted time stamp
and the history entry.
If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is supplied, h\bhi\bis\bst\bto\bor\bry\by uses it as the name of the his-
- tory file; if not, it uses the value of H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE. If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
- is not supplied and H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE is unset or null, the -\b-a\ba,\b, -\b-n\bn,\b, -\b-r\br,\b,
+ tory file; if not, it uses the value of H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE. If _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ is not supplied and H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE is unset or null, the -\b-a\ba,\b, -\b-n\bn,\b, -\b-r\br,\b,
and -\b-w\bw options have no effect.
Options, if supplied, have the following meanings:
can be used with the other options to replace the history
list.
-\b-d\bd _\bo_\bf_\bf_\bs_\be_\bt
- Delete the history entry at position _\bo_\bf_\bf_\bs_\be_\bt. If _\bo_\bf_\bf_\bs_\be_\bt
+ Delete the history entry at position _\bo_\bf_\bf_\bs_\be_\bt. If _\bo_\bf_\bf_\bs_\be_\bt
is negative, it is interpreted as relative to one greater
than the last history position, so negative indices count
- back from the end of the history, and an index of -1
+ back from the end of the history, and an index of -1
refers to the current h\bhi\bis\bst\bto\bor\bry\by -\b-d\bd command.
-\b-d\bd _\bs_\bt_\ba_\br_\bt-_\be_\bn_\bd
- Delete the range of history entries between positions
- _\bs_\bt_\ba_\br_\bt and _\be_\bn_\bd, inclusive. Positive and negative values
+ Delete the range of history entries between positions
+ _\bs_\bt_\ba_\br_\bt and _\be_\bn_\bd, inclusive. Positive and negative values
for _\bs_\bt_\ba_\br_\bt and _\be_\bn_\bd are interpreted as described above.
- -\b-a\ba Append the "new" history lines to the history file.
- These are history lines entered since the beginning of
+ -\b-a\ba Append the "new" history lines to the history file.
+ These are history lines entered since the beginning of
the current b\bba\bas\bsh\bh session, but not already appended to the
history file.
- -\b-n\bn Read the history lines not already read from the history
+ -\b-n\bn Read the history lines not already read from the history
file and add them to the current history list. These are
lines appended to the history file since the beginning of
the current b\bba\bas\bsh\bh session.
rent history list.
-\b-w\bw Write the current history list to the history file, over-
writing the history file.
- -\b-p\bp Perform history substitution on the following _\ba_\br_\bg_\bs and
- display the result on the standard output, without stor-
- ing the results in the history list. Each _\ba_\br_\bg must be
+ -\b-p\bp Perform history substitution on the following _\ba_\br_\bg_\bs and
+ display the result on the standard output, without stor-
+ ing the results in the history list. Each _\ba_\br_\bg must be
quoted to disable normal history expansion.
- -\b-s\bs Store the _\ba_\br_\bg_\bs in the history list as a single entry.
- The last command in the history list is removed before
+ -\b-s\bs Store the _\ba_\br_\bg_\bs in the history list as a single entry.
+ The last command in the history list is removed before
adding the _\ba_\br_\bg_\bs.
- If the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable is set, h\bhi\bis\bst\bto\bor\bry\by writes the time
+ If the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable is set, h\bhi\bis\bst\bto\bor\bry\by writes the time
stamp information associated with each history entry to the his-
- tory file, marked with the history comment character as de-
- scribed above. When the history file is read, lines beginning
- with the history comment character followed immediately by a
- digit are interpreted as timestamps for the following history
+ tory file, marked with the history comment character as de-
+ scribed above. When the history file is read, lines beginning
+ with the history comment character followed immediately by a
+ digit are interpreted as timestamps for the following history
entry.
- The return value is 0 unless an invalid option is encountered,
- an error occurs while reading or writing the history file, an
+ The return value is 0 unless an invalid option is encountered,
+ an error occurs while reading or writing the history file, an
invalid _\bo_\bf_\bf_\bs_\be_\bt or range is supplied as an argument to -\b-d\bd, or the
history expansion supplied as an argument to -\b-p\bp fails.
The first form lists the active jobs. The options have the fol-
lowing meanings:
-\b-l\bl List process IDs in addition to the normal information.
- -\b-n\bn Display information only about jobs that have changed
+ -\b-n\bn Display information only about jobs that have changed
status since the user was last notified of their status.
- -\b-p\bp List only the process ID of the job's process group
+ -\b-p\bp List only the process ID of the job's process group
leader.
-\b-r\br Display only running jobs.
-\b-s\bs Display only stopped jobs.
- If _\bj_\bo_\bb_\bs_\bp_\be_\bc is supplied, j\bjo\bob\bbs\bs restricts output to information
+ If _\bj_\bo_\bb_\bs_\bp_\be_\bc is supplied, j\bjo\bob\bbs\bs restricts output to information
about that job. The return status is 0 unless an invalid option
is encountered or an invalid _\bj_\bo_\bb_\bs_\bp_\be_\bc is supplied.
k\bki\bil\bll\bl [-\b-s\bs _\bs_\bi_\bg_\bs_\bp_\be_\bc | -\b-n\bn _\bs_\bi_\bg_\bn_\bu_\bm | -\b-_\bs_\bi_\bg_\bs_\bp_\be_\bc] _\bi_\bd [ ... ]
k\bki\bil\bll\bl -\b-l\bl|-\b-L\bL [_\bs_\bi_\bg_\bs_\bp_\be_\bc | _\be_\bx_\bi_\bt_\b__\bs_\bt_\ba_\bt_\bu_\bs]
- Send the signal specified by _\bs_\bi_\bg_\bs_\bp_\be_\bc or _\bs_\bi_\bg_\bn_\bu_\bm to the processes
+ Send the signal specified by _\bs_\bi_\bg_\bs_\bp_\be_\bc or _\bs_\bi_\bg_\bn_\bu_\bm to the processes
named by each _\bi_\bd. Each _\bi_\bd may be a job specification _\bj_\bo_\bb_\bs_\bp_\be_\bc or
- a process ID _\bp_\bi_\bd. _\bs_\bi_\bg_\bs_\bp_\be_\bc is either a case-insensitive signal
- name such as S\bSI\bIG\bGK\bKI\bIL\bLL\bL (with or without the S\bSI\bIG\bG prefix) or a sig-
- nal number; _\bs_\bi_\bg_\bn_\bu_\bm is a signal number. If _\bs_\bi_\bg_\bs_\bp_\be_\bc is not sup-
+ a process ID _\bp_\bi_\bd. _\bs_\bi_\bg_\bs_\bp_\be_\bc is either a case-insensitive signal
+ name such as S\bSI\bIG\bGK\bKI\bIL\bLL\bL (with or without the S\bSI\bIG\bG prefix) or a sig-
+ nal number; _\bs_\bi_\bg_\bn_\bu_\bm is a signal number. If _\bs_\bi_\bg_\bs_\bp_\be_\bc is not sup-
plied, then k\bki\bil\bll\bl sends S\bSI\bIG\bGT\bTE\bER\bRM\bM.
The -\b-l\bl option lists the signal names. If any arguments are sup-
plied when -\b-l\bl is given, k\bki\bil\bll\bl lists the names of the signals cor-
- responding to the arguments, and the return status is 0. The
- _\be_\bx_\bi_\bt_\b__\bs_\bt_\ba_\bt_\bu_\bs argument to -\b-l\bl is a number specifying either a sig-
- nal number or the exit status of a process terminated by a sig-
- nal; if it is supplied, k\bki\bil\bll\bl prints the name of the signal that
+ responding to the arguments, and the return status is 0. The
+ _\be_\bx_\bi_\bt_\b__\bs_\bt_\ba_\bt_\bu_\bs argument to -\b-l\bl is a number specifying either a sig-
+ nal number or the exit status of a process terminated by a sig-
+ nal; if it is supplied, k\bki\bil\bll\bl prints the name of the signal that
caused the process to terminate. k\bki\bil\bll\bl assumes that process exit
statuses are greater than 128; anything less than that is a sig-
nal number. The -\b-L\bL option is equivalent to -\b-l\bl.
- k\bki\bil\bll\bl returns true if at least one signal was successfully sent,
+ k\bki\bil\bll\bl returns true if at least one signal was successfully sent,
or false if an error occurs or an invalid option is encountered.
l\ble\bet\bt _\ba_\br_\bg [_\ba_\br_\bg ...]
- Each _\ba_\br_\bg is evaluated as an arithmetic expression (see A\bAR\bRI\bIT\bTH\bH-\b-
- M\bME\bET\bTI\bIC\bC E\bEV\bVA\bAL\bLU\bUA\bAT\bTI\bIO\bON\bN above). If the last _\ba_\br_\bg evaluates to 0, l\ble\bet\bt
+ Each _\ba_\br_\bg is evaluated as an arithmetic expression (see A\bAR\bRI\bIT\bTH\bH-\b-
+ M\bME\bET\bTI\bIC\bC E\bEV\bVA\bAL\bLU\bUA\bAT\bTI\bIO\bON\bN above). If the last _\ba_\br_\bg evaluates to 0, l\ble\bet\bt
returns 1; otherwise l\ble\bet\bt returns 0.
l\blo\boc\bca\bal\bl [_\bo_\bp_\bt_\bi_\bo_\bn] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ... | - ]
For each argument, create a local variable named _\bn_\ba_\bm_\be and assign
- it _\bv_\ba_\bl_\bu_\be. The _\bo_\bp_\bt_\bi_\bo_\bn can be any of the options accepted by d\bde\be-\b-
- c\bcl\bla\bar\bre\be. When l\blo\boc\bca\bal\bl is used within a function, it causes the
- variable _\bn_\ba_\bm_\be to have a visible scope restricted to that func-
- tion and its children. It is an error to use l\blo\boc\bca\bal\bl when not
+ it _\bv_\ba_\bl_\bu_\be. The _\bo_\bp_\bt_\bi_\bo_\bn can be any of the options accepted by d\bde\be-\b-
+ c\bcl\bla\bar\bre\be. When l\blo\boc\bca\bal\bl is used within a function, it causes the
+ variable _\bn_\ba_\bm_\be to have a visible scope restricted to that func-
+ tion and its children. It is an error to use l\blo\boc\bca\bal\bl when not
within a function.
- If _\bn_\ba_\bm_\be is -, it makes the set of shell options local to the
- function in which l\blo\boc\bca\bal\bl is invoked: any shell options changed
- using the s\bse\bet\bt builtin inside the function after the call to l\blo\bo-\b-
- c\bca\bal\bl are restored to their original values when the function re-
- turns. The restore is performed as if a series of s\bse\bet\bt commands
- were executed to restore the values that were in place before
+ If _\bn_\ba_\bm_\be is -, it makes the set of shell options local to the
+ function in which l\blo\boc\bca\bal\bl is invoked: any shell options changed
+ using the s\bse\bet\bt builtin inside the function after the call to l\blo\bo-\b-
+ c\bca\bal\bl are restored to their original values when the function re-
+ turns. The restore is performed as if a series of s\bse\bet\bt commands
+ were executed to restore the values that were in place before
the function.
- With no operands, l\blo\boc\bca\bal\bl writes a list of local variables to the
+ With no operands, l\blo\boc\bca\bal\bl writes a list of local variables to the
standard output.
- The return status is 0 unless l\blo\boc\bca\bal\bl is used outside a function,
+ The return status is 0 unless l\blo\boc\bca\bal\bl is used outside a function,
an invalid _\bn_\ba_\bm_\be is supplied, or _\bn_\ba_\bm_\be is a readonly variable.
l\blo\bog\bgo\bou\but\bt [\b[_\bn]\b]
- Exit a login shell, returning a status of _\bn to the shell's par-
+ Exit a login shell, returning a status of _\bn to the shell's par-
ent.
m\bma\bap\bpf\bfi\bil\ble\be [-\b-d\bd _\bd_\be_\bl_\bi_\bm] [-\b-n\bn _\bc_\bo_\bu_\bn_\bt] [-\b-O\bO _\bo_\br_\bi_\bg_\bi_\bn] [-\b-s\bs _\bc_\bo_\bu_\bn_\bt] [-\b-t\bt] [-\b-u\bu _\bf_\bd] [-\b-C\bC
_\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk] [-\b-c\bc _\bq_\bu_\ba_\bn_\bt_\bu_\bm] [_\ba_\br_\br_\ba_\by]
r\bre\bea\bad\bda\bar\brr\bra\bay\by [-\b-d\bd _\bd_\be_\bl_\bi_\bm] [-\b-n\bn _\bc_\bo_\bu_\bn_\bt] [-\b-O\bO _\bo_\br_\bi_\bg_\bi_\bn] [-\b-s\bs _\bc_\bo_\bu_\bn_\bt] [-\b-t\bt] [-\b-u\bu _\bf_\bd] [-\b-C\bC
_\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk] [-\b-c\bc _\bq_\bu_\ba_\bn_\bt_\bu_\bm] [_\ba_\br_\br_\ba_\by]
- Read lines from the standard input, or from file descriptor _\bf_\bd
- if the -\b-u\bu option is supplied, into the indexed array variable
- _\ba_\br_\br_\ba_\by. The variable M\bMA\bAP\bPF\bFI\bIL\bLE\bE is the default _\ba_\br_\br_\ba_\by. Options, if
+ Read lines from the standard input, or from file descriptor _\bf_\bd
+ if the -\b-u\bu option is supplied, into the indexed array variable
+ _\ba_\br_\br_\ba_\by. The variable M\bMA\bAP\bPF\bFI\bIL\bLE\bE is the default _\ba_\br_\br_\ba_\by. Options, if
supplied, have the following meanings:
- -\b-d\bd Use the first character of _\bd_\be_\bl_\bi_\bm to terminate each input
+ -\b-d\bd Use the first character of _\bd_\be_\bl_\bi_\bm to terminate each input
line, rather than newline. If _\bd_\be_\bl_\bi_\bm is the empty string,
m\bma\bap\bpf\bfi\bil\ble\be will terminate a line when it reads a NUL charac-
ter.
-\b-n\bn Copy at most _\bc_\bo_\bu_\bn_\bt lines. If _\bc_\bo_\bu_\bn_\bt is 0, copy all lines.
- -\b-O\bO Begin assigning to _\ba_\br_\br_\ba_\by at index _\bo_\br_\bi_\bg_\bi_\bn. The default
+ -\b-O\bO Begin assigning to _\ba_\br_\br_\ba_\by at index _\bo_\br_\bi_\bg_\bi_\bn. The default
index is 0.
-\b-s\bs Discard the first _\bc_\bo_\bu_\bn_\bt lines read.
- -\b-t\bt Remove a trailing _\bd_\be_\bl_\bi_\bm (default newline) from each line
+ -\b-t\bt Remove a trailing _\bd_\be_\bl_\bi_\bm (default newline) from each line
read.
- -\b-u\bu Read lines from file descriptor _\bf_\bd instead of the stan-
+ -\b-u\bu Read lines from file descriptor _\bf_\bd instead of the stan-
dard input.
- -\b-C\bC Evaluate _\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk each time _\bq_\bu_\ba_\bn_\bt_\bu_\bm lines are read. The
+ -\b-C\bC Evaluate _\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk each time _\bq_\bu_\ba_\bn_\bt_\bu_\bm lines are read. The
-\b-c\bc option specifies _\bq_\bu_\ba_\bn_\bt_\bu_\bm.
- -\b-c\bc Specify the number of lines read between each call to
+ -\b-c\bc Specify the number of lines read between each call to
_\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk.
- If -\b-C\bC is specified without -\b-c\bc, the default quantum is 5000.
+ If -\b-C\bC is specified without -\b-c\bc, the default quantum is 5000.
When _\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk is evaluated, it is supplied the index of the next
array element to be assigned and the line to be assigned to that
- element as additional arguments. _\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk is evaluated after
+ element as additional arguments. _\bc_\ba_\bl_\bl_\bb_\ba_\bc_\bk is evaluated after
the line is read but before the array element is assigned.
- If not supplied with an explicit origin, m\bma\bap\bpf\bfi\bil\ble\be will clear _\ba_\br_\b-
+ If not supplied with an explicit origin, m\bma\bap\bpf\bfi\bil\ble\be will clear _\ba_\br_\b-
_\br_\ba_\by before assigning to it.
m\bma\bap\bpf\bfi\bil\ble\be returns zero unless an invalid option or option argument
- is supplied, _\ba_\br_\br_\ba_\by is invalid or unassignable, or if _\ba_\br_\br_\ba_\by is
+ is supplied, _\ba_\br_\br_\ba_\by is invalid or unassignable, or if _\ba_\br_\br_\ba_\by is
not an indexed array.
p\bpo\bop\bpd\bd [-n\bn] [+_\bn] [-_\bn]
- Remove entries from the directory stack. The elements are num-
- bered from 0 starting at the first directory listed by d\bdi\bir\brs\bs, so
- p\bpo\bop\bpd\bd is equivalent to "popd +0." With no arguments, p\bpo\bop\bpd\bd re-
- moves the top directory from the stack, and changes to the new
+ Remove entries from the directory stack. The elements are num-
+ bered from 0 starting at the first directory listed by d\bdi\bir\brs\bs, so
+ p\bpo\bop\bpd\bd is equivalent to "popd +0." With no arguments, p\bpo\bop\bpd\bd re-
+ moves the top directory from the stack, and changes to the new
top directory. Arguments, if supplied, have the following mean-
ings:
-\b-n\bn Suppress the normal change of directory when removing di-
rectories from the stack, only manipulate the stack.
- +\b+_\bn Remove the _\bnth entry counting from the left of the list
- shown by d\bdi\bir\brs\bs, starting with zero, from the stack. For
+ +\b+_\bn Remove the _\bnth entry counting from the left of the list
+ shown by d\bdi\bir\brs\bs, starting with zero, from the stack. For
example: "popd +0" removes the first directory, "popd +1"
the second.
- -\b-_\bn Remove the _\bnth entry counting from the right of the list
- shown by d\bdi\bir\brs\bs, starting with zero. For example: "popd
- -0" removes the last directory, "popd -1" the next to
+ -\b-_\bn Remove the _\bnth entry counting from the right of the list
+ shown by d\bdi\bir\brs\bs, starting with zero. For example: "popd
+ -0" removes the last directory, "popd -1" the next to
last.
- If the top element of the directory stack is modified, and the
- _\b-_\bn option was not supplied, p\bpo\bop\bpd\bd uses the c\bcd\bd builtin to change
+ If the top element of the directory stack is modified, and the
+ _\b-_\bn option was not supplied, p\bpo\bop\bpd\bd uses the c\bcd\bd builtin to change
to the directory at the top of the stack. If the c\bcd\bd fails, p\bpo\bop\bpd\bd
returns a non-zero value.
- Otherwise, p\bpo\bop\bpd\bd returns false if an invalid option is supplied,
- the directory stack is empty, or _\bn specifies a non-existent di-
+ Otherwise, p\bpo\bop\bpd\bd returns false if an invalid option is supplied,
+ the directory stack is empty, or _\bn specifies a non-existent di-
rectory stack entry.
- If the p\bpo\bop\bpd\bd command is successful, b\bba\bas\bsh\bh runs d\bdi\bir\brs\bs to show the
- final contents of the directory stack, and the return status is
+ If the p\bpo\bop\bpd\bd command is successful, b\bba\bas\bsh\bh runs d\bdi\bir\brs\bs to show the
+ final contents of the directory stack, and the return status is
0.
p\bpr\bri\bin\bnt\btf\bf [-\b-v\bv _\bv_\ba_\br] _\bf_\bo_\br_\bm_\ba_\bt [_\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs]
- Write the formatted _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs to the standard output under the
- control of the _\bf_\bo_\br_\bm_\ba_\bt. The -\b-v\bv option assigns the output to the
+ Write the formatted _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs to the standard output under the
+ control of the _\bf_\bo_\br_\bm_\ba_\bt. The -\b-v\bv option assigns the output to the
variable _\bv_\ba_\br rather than printing it to the standard output.
- The _\bf_\bo_\br_\bm_\ba_\bt is a character string which contains three types of
- objects: plain characters, which are simply copied to standard
- output, character escape sequences, which are converted and
- copied to the standard output, and format specifications, each
- of which causes printing of the next successive _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt. In
- addition to the standard _\bp_\br_\bi_\bn_\bt_\bf(3) format characters c\bcC\bCs\bsS\bS-\b-
+ The _\bf_\bo_\br_\bm_\ba_\bt is a character string which contains three types of
+ objects: plain characters, which are simply copied to standard
+ output, character escape sequences, which are converted and
+ copied to the standard output, and format specifications, each
+ of which causes printing of the next successive _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt. In
+ addition to the standard _\bp_\br_\bi_\bn_\bt_\bf(3) format characters c\bcC\bCs\bsS\bS-\b-
n\bnd\bdi\bio\bou\bux\bxX\bXe\beE\bEf\bfF\bFg\bgG\bGa\baA\bA, p\bpr\bri\bin\bnt\btf\bf interprets the following additional for-
mat specifiers:
%\b%b\bb causes p\bpr\bri\bin\bnt\btf\bf to expand backslash escape sequences in the
corresponding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt in the same way as e\bec\bch\bho\bo -\b-e\be.
- %\b%q\bq causes p\bpr\bri\bin\bnt\btf\bf to output the corresponding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt in a
- format that can be reused as shell input. %\b%q\bq and %\b%Q\bQ use
- the $\b$'\b''\b' quoting style if any characters in the argument
- string require it, and backslash quoting otherwise. If
- the format string uses the _\bp_\br_\bi_\bn_\bt_\bf alternate form, these
+ %\b%q\bq causes p\bpr\bri\bin\bnt\btf\bf to output the corresponding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt in a
+ format that can be reused as shell input. %\b%q\bq and %\b%Q\bQ use
+ the $\b$'\b''\b' quoting style if any characters in the argument
+ string require it, and backslash quoting otherwise. If
+ the format string uses the _\bp_\br_\bi_\bn_\bt_\bf alternate form, these
two formats quote the argument string using single
quotes.
- %\b%Q\bQ like %\b%q\bq, but applies any supplied precision to the _\ba_\br_\bg_\bu_\b-
+ %\b%Q\bQ like %\b%q\bq, but applies any supplied precision to the _\ba_\br_\bg_\bu_\b-
_\bm_\be_\bn_\bt before quoting it.
%\b%(\b(_\bd_\ba_\bt_\be_\bf_\bm_\bt)\b)T\bT
- causes p\bpr\bri\bin\bnt\btf\bf to output the date-time string resulting
- from using _\bd_\ba_\bt_\be_\bf_\bm_\bt as a format string for _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be(3).
+ causes p\bpr\bri\bin\bnt\btf\bf to output the date-time string resulting
+ from using _\bd_\ba_\bt_\be_\bf_\bm_\bt as a format string for _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be(3).
The corresponding _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt is an integer representing the
number of seconds since the epoch. This format specifier
recognizes two special argument values: -1 represents the
- current time, and -2 represents the time the shell was
+ current time, and -2 represents the time the shell was
invoked. If no argument is specified, conversion behaves
- as if -1 had been supplied. This is an exception to the
+ as if -1 had been supplied. This is an exception to the
usual p\bpr\bri\bin\bnt\btf\bf behavior.
The %b, %q, and %T format specifiers all use the field width and
precision arguments from the format specification and write that
- many bytes from (or use that wide a field for) the expanded ar-
- gument, which usually contains more characters than the origi-
+ many bytes from (or use that wide a field for) the expanded ar-
+ gument, which usually contains more characters than the origi-
nal.
The %n format specifier accepts a corresponding argument that is
treated as a shell variable name.
- The %s and %c format specifiers accept an l (long) modifier,
+ The %s and %c format specifiers accept an l (long) modifier,
which forces them to convert the argument string to a wide-char-
acter string and apply any supplied field width and precision in
terms of characters, not bytes. The %S and %C format specifiers
are equivalent to %ls and %lc, respectively.
- Arguments to non-string format specifiers are treated as C con-
+ Arguments to non-string format specifiers are treated as C con-
stants, except that a leading plus or minus sign is allowed, and
- if the leading character is a single or double quote, the value
- is the numeric value of the following character, using the cur-
+ if the leading character is a single or double quote, the value
+ is the numeric value of the following character, using the cur-
rent locale.
- The _\bf_\bo_\br_\bm_\ba_\bt is reused as necessary to consume all of the _\ba_\br_\bg_\bu_\b-
+ The _\bf_\bo_\br_\bm_\ba_\bt is reused as necessary to consume all of the _\ba_\br_\bg_\bu_\b-
_\bm_\be_\bn_\bt_\bs. If the _\bf_\bo_\br_\bm_\ba_\bt requires more _\ba_\br_\bg_\bu_\bm_\be_\bn_\bt_\bs than are supplied,
- the extra format specifications behave as if a zero value or
- null string, as appropriate, had been supplied. The return
- value is zero on success, non-zero if an invalid option is sup-
+ the extra format specifications behave as if a zero value or
+ null string, as appropriate, had been supplied. The return
+ value is zero on success, non-zero if an invalid option is sup-
plied or a write or assignment error occurs.
p\bpu\bus\bsh\bhd\bd [-\b-n\bn] [+_\bn] [-_\bn]
p\bpu\bus\bsh\bhd\bd [-\b-n\bn] [_\bd_\bi_\br]
Add a directory to the top of the directory stack, or rotate the
- stack, making the new top of the stack the current working di-
- rectory. With no arguments, p\bpu\bus\bsh\bhd\bd exchanges the top two ele-
- ments of the directory stack. Arguments, if supplied, have the
+ stack, making the new top of the stack the current working di-
+ rectory. With no arguments, p\bpu\bus\bsh\bhd\bd exchanges the top two ele-
+ ments of the directory stack. Arguments, if supplied, have the
following meanings:
- -\b-n\bn Suppress the normal change of directory when rotating or
- adding directories to the stack, only manipulate the
+ -\b-n\bn Suppress the normal change of directory when rotating or
+ adding directories to the stack, only manipulate the
stack.
+\b+_\bn Rotate the stack so that the _\bnth directory (counting from
- the left of the list shown by d\bdi\bir\brs\bs, starting with zero)
+ the left of the list shown by d\bdi\bir\brs\bs, starting with zero)
is at the top.
- -\b-_\bn Rotates the stack so that the _\bnth directory (counting
- from the right of the list shown by d\bdi\bir\brs\bs, starting with
+ -\b-_\bn Rotates the stack so that the _\bnth directory (counting
+ from the right of the list shown by d\bdi\bir\brs\bs, starting with
zero) is at the top.
_\bd_\bi_\br Adds _\bd_\bi_\br to the directory stack at the top.
After the stack has been modified, if the -\b-n\bn option was not sup-
- plied, p\bpu\bus\bsh\bhd\bd uses the c\bcd\bd builtin to change to the directory at
+ plied, p\bpu\bus\bsh\bhd\bd uses the c\bcd\bd builtin to change to the directory at
the top of the stack. If the c\bcd\bd fails, p\bpu\bus\bsh\bhd\bd returns a non-zero
value.
- Otherwise, if no arguments are supplied, p\bpu\bus\bsh\bhd\bd returns zero un-
- less the directory stack is empty. When rotating the directory
+ Otherwise, if no arguments are supplied, p\bpu\bus\bsh\bhd\bd returns zero un-
+ less the directory stack is empty. When rotating the directory
stack, p\bpu\bus\bsh\bhd\bd returns zero unless the directory stack is empty or
_\bn specifies a non-existent directory stack element.
- If the p\bpu\bus\bsh\bhd\bd command is successful, b\bba\bas\bsh\bh runs d\bdi\bir\brs\bs to show the
+ If the p\bpu\bus\bsh\bhd\bd command is successful, b\bba\bas\bsh\bh runs d\bdi\bir\brs\bs to show the
final contents of the directory stack.
p\bpw\bwd\bd [-\b-L\bLP\bP]
- Print the absolute pathname of the current working directory.
+ Print the absolute pathname of the current working directory.
The pathname printed contains no symbolic links if the -\b-P\bP option
is supplied or the -\b-o\bo p\bph\bhy\bys\bsi\bic\bca\bal\bl option to the s\bse\bet\bt builtin command
- is enabled. If the -\b-L\bL option is used, the pathname printed may
- contain symbolic links. The return status is 0 unless an error
+ is enabled. If the -\b-L\bL option is used, the pathname printed may
+ contain symbolic links. The return status is 0 unless an error
occurs while reading the name of the current directory or an in-
valid option is supplied.
r\bre\bea\bad\bd [-\b-E\bEe\ber\brs\bs] [-\b-a\ba _\ba_\bn_\ba_\bm_\be] [-\b-d\bd _\bd_\be_\bl_\bi_\bm] [-\b-i\bi _\bt_\be_\bx_\bt] [-\b-n\bn _\bn_\bc_\bh_\ba_\br_\bs] [-\b-N\bN _\bn_\bc_\bh_\ba_\br_\bs]
[-\b-p\bp _\bp_\br_\bo_\bm_\bp_\bt] [-\b-t\bt _\bt_\bi_\bm_\be_\bo_\bu_\bt] [-\b-u\bu _\bf_\bd] [_\bn_\ba_\bm_\be ...]
Read one line from the standard input, or from the file descrip-
- tor _\bf_\bd supplied as an argument to the -\b-u\bu option, split it into
- words as described above under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg, and assign the
- first word to the first _\bn_\ba_\bm_\be, the second word to the second
- _\bn_\ba_\bm_\be, and so on. If there are more words than names, the re-
- maining words and their intervening delimiters are assigned to
- the last _\bn_\ba_\bm_\be. If there are fewer words read from the input
- stream than names, the remaining names are assigned empty val-
- ues. The characters in the value of the I\bIF\bFS\bS variable are used
+ tor _\bf_\bd supplied as an argument to the -\b-u\bu option, split it into
+ words as described above under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg, and assign the
+ first word to the first _\bn_\ba_\bm_\be, the second word to the second
+ _\bn_\ba_\bm_\be, and so on. If there are more words than names, the re-
+ maining words and their intervening delimiters are assigned to
+ the last _\bn_\ba_\bm_\be. If there are fewer words read from the input
+ stream than names, the remaining names are assigned empty val-
+ ues. The characters in the value of the I\bIF\bFS\bS variable are used
to split the line into words using the same rules the shell uses
for expansion (described above under W\bWo\bor\brd\bd S\bSp\bpl\bli\bit\btt\bti\bin\bng\bg). The back-
- slash character (\\b\) removes any special meaning for the next
+ slash character (\\b\) removes any special meaning for the next
character read and is used for line continuation.
Options, if supplied, have the following meanings:
-\b-a\ba _\ba_\bn_\ba_\bm_\be
The words are assigned to sequential indices of the array
variable _\ba_\bn_\ba_\bm_\be, starting at 0. _\ba_\bn_\ba_\bm_\be is unset before any
- new values are assigned. Other _\bn_\ba_\bm_\be arguments are ig-
+ new values are assigned. Other _\bn_\ba_\bm_\be arguments are ig-
nored.
-\b-d\bd _\bd_\be_\bl_\bi_\bm
- The first character of _\bd_\be_\bl_\bi_\bm terminates the input line,
- rather than newline. If _\bd_\be_\bl_\bi_\bm is the empty string, r\bre\bea\bad\bd
+ The first character of _\bd_\be_\bl_\bi_\bm terminates the input line,
+ rather than newline. If _\bd_\be_\bl_\bi_\bm is the empty string, r\bre\bea\bad\bd
will terminate a line when it reads a NUL character.
- -\b-e\be If the standard input is coming from a terminal, r\bre\bea\bad\bd
- uses r\bre\bea\bad\bdl\bli\bin\bne\be (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to obtain the line.
- R\bRe\bea\bad\bdl\bli\bin\bne\be uses the current (or default, if line editing
- was not previously active) editing settings, but uses
+ -\b-e\be If the standard input is coming from a terminal, r\bre\bea\bad\bd
+ uses r\bre\bea\bad\bdl\bli\bin\bne\be (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to obtain the line.
+ R\bRe\bea\bad\bdl\bli\bin\bne\be uses the current (or default, if line editing
+ was not previously active) editing settings, but uses
r\bre\bea\bad\bdl\bli\bin\bne\be's default filename completion.
- -\b-E\bE If the standard input is coming from a terminal, r\bre\bea\bad\bd
- uses r\bre\bea\bad\bdl\bli\bin\bne\be (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to obtain the line.
- R\bRe\bea\bad\bdl\bli\bin\bne\be uses the current (or default, if line editing
- was not previously active) editing settings, but uses
+ -\b-E\bE If the standard input is coming from a terminal, r\bre\bea\bad\bd
+ uses r\bre\bea\bad\bdl\bli\bin\bne\be (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE above) to obtain the line.
+ R\bRe\bea\bad\bdl\bli\bin\bne\be uses the current (or default, if line editing
+ was not previously active) editing settings, but uses
bash's default completion, including programmable comple-
tion.
-\b-i\bi _\bt_\be_\bx_\bt
- If r\bre\bea\bad\bdl\bli\bin\bne\be is being used to read the line, r\bre\bea\bad\bd places
+ If r\bre\bea\bad\bdl\bli\bin\bne\be is being used to read the line, r\bre\bea\bad\bd places
_\bt_\be_\bx_\bt into the editing buffer before editing begins.
-\b-n\bn _\bn_\bc_\bh_\ba_\br_\bs
- r\bre\bea\bad\bd returns after reading _\bn_\bc_\bh_\ba_\br_\bs characters rather than
- waiting for a complete line of input, unless it encoun-
- ters EOF or r\bre\bea\bad\bd times out, but honors a delimiter if it
+ r\bre\bea\bad\bd returns after reading _\bn_\bc_\bh_\ba_\br_\bs characters rather than
+ waiting for a complete line of input, unless it encoun-
+ ters EOF or r\bre\bea\bad\bd times out, but honors a delimiter if it
reads fewer than _\bn_\bc_\bh_\ba_\br_\bs characters before the delimiter.
-\b-N\bN _\bn_\bc_\bh_\ba_\br_\bs
- r\bre\bea\bad\bd returns after reading exactly _\bn_\bc_\bh_\ba_\br_\bs characters
- rather than waiting for a complete line of input, unless
+ r\bre\bea\bad\bd returns after reading exactly _\bn_\bc_\bh_\ba_\br_\bs characters
+ rather than waiting for a complete line of input, unless
it encounters EOF or r\bre\bea\bad\bd times out. Any delimiter char-
- acters in the input are not treated specially and do not
+ acters in the input are not treated specially and do not
cause r\bre\bea\bad\bd to return until it has read _\bn_\bc_\bh_\ba_\br_\bs characters.
The result is not split on the characters in I\bIF\bFS\bS; the in-
tent is that the variable is assigned exactly the charac-
- ters read (with the exception of backslash; see the -\b-r\br
+ ters read (with the exception of backslash; see the -\b-r\br
option below).
-\b-p\bp _\bp_\br_\bo_\bm_\bp_\bt
Display _\bp_\br_\bo_\bm_\bp_\bt on standard error, without a trailing new-
- line, before attempting to read any input, but only if
+ line, before attempting to read any input, but only if
input is coming from a terminal.
-\b-r\br Backslash does not act as an escape character. The back-
- slash is considered to be part of the line. In particu-
- lar, a backslash-newline pair may not then be used as a
+ slash is considered to be part of the line. In particu-
+ lar, a backslash-newline pair may not then be used as a
line continuation.
-\b-s\bs Silent mode. If input is coming from a terminal, charac-
ters are not echoed.
-\b-t\bt _\bt_\bi_\bm_\be_\bo_\bu_\bt
- Cause r\bre\bea\bad\bd to time out and return failure if it does not
- read a complete line of input (or a specified number of
- characters) within _\bt_\bi_\bm_\be_\bo_\bu_\bt seconds. _\bt_\bi_\bm_\be_\bo_\bu_\bt may be a
- decimal number with a fractional portion following the
- decimal point. This option is only effective if r\bre\bea\bad\bd is
- reading input from a terminal, pipe, or other special
- file; it has no effect when reading from regular files.
- If r\bre\bea\bad\bd times out, it saves any partial input read into
- the specified variable _\bn_\ba_\bm_\be, and the exit status is
- greater than 128. If _\bt_\bi_\bm_\be_\bo_\bu_\bt is 0, r\bre\bea\bad\bd returns immedi-
- ately, without trying to read any data. In this case,
- the exit status is 0 if input is available on the speci-
- fied file descriptor, or the read will return EOF, non-
+ Cause r\bre\bea\bad\bd to time out and return failure if it does not
+ read a complete line of input (or a specified number of
+ characters) within _\bt_\bi_\bm_\be_\bo_\bu_\bt seconds. _\bt_\bi_\bm_\be_\bo_\bu_\bt may be a
+ decimal number with a fractional portion following the
+ decimal point. This option is only effective if r\bre\bea\bad\bd is
+ reading input from a terminal, pipe, or other special
+ file; it has no effect when reading from regular files.
+ If r\bre\bea\bad\bd times out, it saves any partial input read into
+ the specified variable _\bn_\ba_\bm_\be, and the exit status is
+ greater than 128. If _\bt_\bi_\bm_\be_\bo_\bu_\bt is 0, r\bre\bea\bad\bd returns immedi-
+ ately, without trying to read any data. In this case,
+ the exit status is 0 if input is available on the speci-
+ fied file descriptor, or the read will return EOF, non-
zero otherwise.
- -\b-u\bu _\bf_\bd Read input from file descriptor _\bf_\bd instead of the stan-
+ -\b-u\bu _\bf_\bd Read input from file descriptor _\bf_\bd instead of the stan-
dard input.
- Other than the case where _\bd_\be_\bl_\bi_\bm is the empty string, r\bre\bea\bad\bd ig-
+ Other than the case where _\bd_\be_\bl_\bi_\bm is the empty string, r\bre\bea\bad\bd ig-
nores any NUL characters in the input.
- If no _\bn_\ba_\bm_\be_\bs are supplied, r\bre\bea\bad\bd assigns the line read, without
- the ending delimiter but otherwise unmodified, to the variable
+ If no _\bn_\ba_\bm_\be_\bs are supplied, r\bre\bea\bad\bd assigns the line read, without
+ the ending delimiter but otherwise unmodified, to the variable
R\bRE\bEP\bPL\bLY\bY.
The exit status is zero, unless end-of-file is encountered, r\bre\bea\bad\bd
- times out (in which case the status is greater than 128), a
+ times out (in which case the status is greater than 128), a
variable assignment error (such as assigning to a readonly vari-
- able) occurs, or an invalid file descriptor is supplied as the
+ able) occurs, or an invalid file descriptor is supplied as the
argument to -\b-u\bu.
r\bre\bea\bad\bdo\bon\bnl\bly\by [-\b-a\baA\bAf\bf] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bw_\bo_\br_\bd] ...]
- The given _\bn_\ba_\bm_\be_\bs are marked readonly; the values of these _\bn_\ba_\bm_\be_\bs
+ The given _\bn_\ba_\bm_\be_\bs are marked readonly; the values of these _\bn_\ba_\bm_\be_\bs
may not be changed by subsequent assignment or unset. If the -\b-f\bf
- option is supplied, each _\bn_\ba_\bm_\be refers to a shell function. The
- -\b-a\ba option restricts the variables to indexed arrays; the -\b-A\bA op-
+ option is supplied, each _\bn_\ba_\bm_\be refers to a shell function. The
+ -\b-a\ba option restricts the variables to indexed arrays; the -\b-A\bA op-
tion restricts the variables to associative arrays. If both op-
- tions are supplied, -\b-A\bA takes precedence. If no _\bn_\ba_\bm_\be arguments
- are supplied, or if the -\b-p\bp option is supplied, print a list of
- all readonly names. The other options may be used to restrict
+ tions are supplied, -\b-A\bA takes precedence. If no _\bn_\ba_\bm_\be arguments
+ are supplied, or if the -\b-p\bp option is supplied, print a list of
+ all readonly names. The other options may be used to restrict
the output to a subset of the set of readonly names. The -\b-p\bp op-
tion displays output in a format that may be reused as input.
- r\bre\bea\bad\bdo\bon\bnl\bly\by allows the value of a variable to be set at the same
+ r\bre\bea\bad\bdo\bon\bnl\bly\by allows the value of a variable to be set at the same
time the readonly attribute is changed by following the variable
- name with =_\bv_\ba_\bl_\bu_\be. This sets the value of the variable is to
+ name with =_\bv_\ba_\bl_\bu_\be. This sets the value of the variable is to
_\bv_\ba_\bl_\bu_\be while modifying the readonly attribute.
- The return status is 0 unless an invalid option is encountered,
- one of the _\bn_\ba_\bm_\be_\bs is not a valid shell variable name, or -\b-f\bf is
+ The return status is 0 unless an invalid option is encountered,
+ one of the _\bn_\ba_\bm_\be_\bs is not a valid shell variable name, or -\b-f\bf is
supplied with a _\bn_\ba_\bm_\be that is not a function.
r\bre\bet\btu\bur\brn\bn [_\bn]
- Stop executing a shell function or sourced file and return the
+ Stop executing a shell function or sourced file and return the
value specified by _\bn to its caller. If _\bn is omitted, the return
- status is that of the last command executed. If r\bre\bet\btu\bur\brn\bn is exe-
- cuted by a trap handler, the last command used to determine the
+ status is that of the last command executed. If r\bre\bet\btu\bur\brn\bn is exe-
+ cuted by a trap handler, the last command used to determine the
status is the last command executed before the trap handler. If
r\bre\bet\btu\bur\brn\bn is executed during a D\bDE\bEB\bBU\bUG\bG trap, the last command used to
- determine the status is the last command executed by the trap
+ determine the status is the last command executed by the trap
handler before r\bre\bet\btu\bur\brn\bn was invoked.
When r\bre\bet\btu\bur\brn\bn is used to terminate execution of a script being ex-
- ecuted by the .\b. (s\bso\bou\bur\brc\bce\be) command, it causes the shell to stop
- executing that script and return either _\bn or the exit status of
- the last command executed within the script as the exit status
- of the script. If _\bn is supplied, the return value is its least
+ ecuted by the .\b. (s\bso\bou\bur\brc\bce\be) command, it causes the shell to stop
+ executing that script and return either _\bn or the exit status of
+ the last command executed within the script as the exit status
+ of the script. If _\bn is supplied, the return value is its least
significant 8 bits.
- Any command associated with the R\bRE\bET\bTU\bUR\bRN\bN trap is executed before
+ Any command associated with the R\bRE\bET\bTU\bUR\bRN\bN trap is executed before
execution resumes after the function or script.
- The return status is non-zero if r\bre\bet\btu\bur\brn\bn is supplied a non-nu-
+ The return status is non-zero if r\bre\bet\btu\bur\brn\bn is supplied a non-nu-
meric argument, or is used outside a function and not during ex-
ecution of a script by .\b. or s\bso\bou\bur\brc\bce\be.
s\bse\bet\bt [-\b-a\bab\bbe\bef\bfh\bhk\bkm\bmn\bnp\bpt\btu\buv\bvx\bxB\bBC\bCE\bEH\bHP\bPT\bT] [-\b-o\bo _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be] [-\b--\b-] [-\b-] [_\ba_\br_\bg ...]
s\bse\bet\bt [+\b+a\bab\bbe\bef\bfh\bhk\bkm\bmn\bnp\bpt\btu\buv\bvx\bxB\bBC\bCE\bEH\bHP\bPT\bT] [+\b+o\bo _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be] [-\b--\b-] [-\b-] [_\ba_\br_\bg ...]
s\bse\bet\bt -\b-o\bo
- s\bse\bet\bt +\b+o\bo Without options, display the name and value of each shell vari-
- able in a format that can be reused as input for setting or re-
+ s\bse\bet\bt +\b+o\bo Without options, display the name and value of each shell vari-
+ able in a format that can be reused as input for setting or re-
setting the currently-set variables. Read-only variables cannot
- be reset. In posix mode, only shell variables are listed. The
- output is sorted according to the current locale. When options
- are specified, they set or unset shell attributes. Any argu-
- ments remaining after option processing are treated as values
+ be reset. In posix mode, only shell variables are listed. The
+ output is sorted according to the current locale. When options
+ are specified, they set or unset shell attributes. Any argu-
+ ments remaining after option processing are treated as values
for the positional parameters and are assigned, in order, to $\b$1\b1,
- $\b$2\b2, ..., $\b$_\bn. Options, if specified, have the following mean-
+ $\b$2\b2, ..., $\b$_\bn. Options, if specified, have the following mean-
ings:
-\b-a\ba Each variable or function that is created or modified is
- given the export attribute and marked for export to the
+ given the export attribute and marked for export to the
environment of subsequent commands.
- -\b-b\bb Report the status of terminated background jobs immedi-
+ -\b-b\bb Report the status of terminated background jobs immedi-
ately, rather than before the next primary prompt or af-
- ter a foreground command terminates. This is effective
+ ter a foreground command terminates. This is effective
only when job control is enabled.
- -\b-e\be Exit immediately if a _\bp_\bi_\bp_\be_\bl_\bi_\bn_\be (which may consist of a
- single _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd), a _\bl_\bi_\bs_\bt, or a _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ -\b-e\be Exit immediately if a _\bp_\bi_\bp_\be_\bl_\bi_\bn_\be (which may consist of a
+ single _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd), a _\bl_\bi_\bs_\bt, or a _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd _\bc_\bo_\bm_\bm_\ba_\bn_\bd
(see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR above), exits with a non-zero status.
- The shell does not exit if the command that fails is
- part of the command list immediately following a w\bwh\bhi\bil\ble\be
- or u\bun\bnt\bti\bil\bl keyword, part of the test following the i\bif\bf or
- e\bel\bli\bif\bf reserved words, part of any command executed in a
- &\b&&\b& or |\b||\b| list except the command following the final &\b&&\b&
- or |\b||\b|, any command in a pipeline but the last (subject
- to the state of the p\bpi\bip\bpe\bef\bfa\bai\bil\bl shell option), or if the
- command's return value is being inverted with !\b!. If a
- compound command other than a subshell returns a non-
- zero status because a command failed while -\b-e\be was being
- ignored, the shell does not exit. A trap on E\bER\bRR\bR, if
- set, is executed before the shell exits. This option
+ The shell does not exit if the command that fails is
+ part of the command list immediately following a w\bwh\bhi\bil\ble\be
+ or u\bun\bnt\bti\bil\bl keyword, part of the test following the i\bif\bf or
+ e\bel\bli\bif\bf reserved words, part of any command executed in a
+ &\b&&\b& or |\b||\b| list except the command following the final &\b&&\b&
+ or |\b||\b|, any command in a pipeline but the last (subject
+ to the state of the p\bpi\bip\bpe\bef\bfa\bai\bil\bl shell option), or if the
+ command's return value is being inverted with !\b!. If a
+ compound command other than a subshell returns a non-
+ zero status because a command failed while -\b-e\be was being
+ ignored, the shell does not exit. A trap on E\bER\bRR\bR, if
+ set, is executed before the shell exits. This option
applies to the shell environment and each subshell envi-
- ronment separately (see C\bCO\bOM\bMM\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN E\bEN\bNV\bVI\bIR\bRO\bON\bNM\bME\bEN\bNT\bT
+ ronment separately (see C\bCO\bOM\bMM\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN E\bEN\bNV\bVI\bIR\bRO\bON\bNM\bME\bEN\bNT\bT
above), and may cause subshells to exit before executing
all the commands in the subshell.
- If a compound command or shell function executes in a
- context where -\b-e\be is being ignored, none of the commands
- executed within the compound command or function body
- will be affected by the -\b-e\be setting, even if -\b-e\be is set
- and a command returns a failure status. If a compound
- command or shell function sets -\b-e\be while executing in a
- context where -\b-e\be is ignored, that setting will not have
- any effect until the compound command or the command
+ If a compound command or shell function executes in a
+ context where -\b-e\be is being ignored, none of the commands
+ executed within the compound command or function body
+ will be affected by the -\b-e\be setting, even if -\b-e\be is set
+ and a command returns a failure status. If a compound
+ command or shell function sets -\b-e\be while executing in a
+ context where -\b-e\be is ignored, that setting will not have
+ any effect until the compound command or the command
containing the function call completes.
-\b-f\bf Disable pathname expansion.
- -\b-h\bh Remember the location of commands as they are looked up
+ -\b-h\bh Remember the location of commands as they are looked up
for execution. This is enabled by default.
- -\b-k\bk All arguments in the form of assignment statements are
- placed in the environment for a command, not just those
+ -\b-k\bk All arguments in the form of assignment statements are
+ placed in the environment for a command, not just those
that precede the command name.
- -\b-m\bm Monitor mode. Job control is enabled. This option is
- on by default for interactive shells on systems that
- support it (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL above). All processes run
+ -\b-m\bm Monitor mode. Job control is enabled. This option is
+ on by default for interactive shells on systems that
+ support it (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL above). All processes run
in a separate process group. When a background job com-
pletes, the shell prints a line containing its exit sta-
tus.
-\b-n\bn Read commands but do not execute them. This may be used
- to check a shell script for syntax errors. This is ig-
+ to check a shell script for syntax errors. This is ig-
nored by interactive shells.
-\b-o\bo _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be
The _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be can be one of the following:
Same as -\b-a\ba.
b\bbr\bra\bac\bce\bee\bex\bxp\bpa\ban\bnd\bd
Same as -\b-B\bB.
- e\bem\bma\bac\bcs\bs Use an emacs-style command line editing inter-
+ e\bem\bma\bac\bcs\bs Use an emacs-style command line editing inter-
face. This is enabled by default when the shell
is interactive, unless the shell is started with
- the -\b--\b-n\bno\boe\bed\bdi\bit\bti\bin\bng\bg option. This also affects the
+ the -\b--\b-n\bno\boe\bed\bdi\bit\bti\bin\bng\bg option. This also affects the
editing interface used for r\bre\bea\bad\bd -\b-e\be.
e\ber\brr\bre\bex\bxi\bit\bt Same as -\b-e\be.
e\ber\brr\brt\btr\bra\bac\bce\be
H\bHI\bIS\bST\bTO\bOR\bRY\bY. This option is on by default in inter-
active shells.
i\big\bgn\bno\bor\bre\bee\beo\bof\bf
- The effect is as if the shell command
+ The effect is as if the shell command
"IGNOREEOF=10" had been executed (see S\bSh\bhe\bel\bll\bl
V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs above).
k\bke\bey\byw\bwo\bor\brd\bd Same as -\b-k\bk.
p\bph\bhy\bys\bsi\bic\bca\bal\bl
Same as -\b-P\bP.
p\bpi\bip\bpe\bef\bfa\bai\bil\bl
- If set, the return value of a pipeline is the
- value of the last (rightmost) command to exit
- with a non-zero status, or zero if all commands
- in the pipeline exit successfully. This option
+ If set, the return value of a pipeline is the
+ value of the last (rightmost) command to exit
+ with a non-zero status, or zero if all commands
+ in the pipeline exit successfully. This option
is disabled by default.
- p\bpo\bos\bsi\bix\bx Change the behavior of b\bba\bas\bsh\bh where the default
- operation differs from the POSIX standard to
- match the standard (_\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be). See S\bSE\bEE\bE A\bAL\bLS\bSO\bO
+ p\bpo\bos\bsi\bix\bx Change the behavior of b\bba\bas\bsh\bh where the default
+ operation differs from the POSIX standard to
+ match the standard (_\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be). See S\bSE\bEE\bE A\bAL\bLS\bSO\bO
below for a reference to a document that details
how posix mode affects bash's behavior.
p\bpr\bri\biv\bvi\bil\ble\beg\bge\bed\bd
Same as -\b-p\bp.
v\bve\ber\brb\bbo\bos\bse\be Same as -\b-v\bv.
- v\bvi\bi Use a vi-style command line editing interface.
+ v\bvi\bi Use a vi-style command line editing interface.
This also affects the editing interface used for
r\bre\bea\bad\bd -\b-e\be.
x\bxt\btr\bra\bac\bce\be Same as -\b-x\bx.
- If -\b-o\bo is supplied with no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be, s\bse\bet\bt prints the
- current shell option settings. If +\b+o\bo is supplied with
- no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be, s\bse\bet\bt prints a series of s\bse\bet\bt commands to
- recreate the current option settings on the standard
+ If -\b-o\bo is supplied with no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be, s\bse\bet\bt prints the
+ current shell option settings. If +\b+o\bo is supplied with
+ no _\bo_\bp_\bt_\bi_\bo_\bn_\b-_\bn_\ba_\bm_\be, s\bse\bet\bt prints a series of s\bse\bet\bt commands to
+ recreate the current option settings on the standard
output.
- -\b-p\bp Turn on _\bp_\br_\bi_\bv_\bi_\bl_\be_\bg_\be_\bd mode. In this mode, the shell does
- not read the $\b$E\bEN\bNV\bV and $\b$B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV files, shell functions
- are not inherited from the environment, and the S\bSH\bHE\bEL\bL-\b-
- L\bLO\bOP\bPT\bTS\bS, B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS, C\bCD\bDP\bPA\bAT\bTH\bH, and G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE variables, if
- they appear in the environment, are ignored. If the
- shell is started with the effective user (group) id not
- equal to the real user (group) id, and the -\b-p\bp option is
- not supplied, these actions are taken and the effective
+ -\b-p\bp Turn on _\bp_\br_\bi_\bv_\bi_\bl_\be_\bg_\be_\bd mode. In this mode, the shell does
+ not read the $\b$E\bEN\bNV\bV and $\b$B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV files, shell functions
+ are not inherited from the environment, and the S\bSH\bHE\bEL\bL-\b-
+ L\bLO\bOP\bPT\bTS\bS, B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS, C\bCD\bDP\bPA\bAT\bTH\bH, and G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE variables, if
+ they appear in the environment, are ignored. If the
+ shell is started with the effective user (group) id not
+ equal to the real user (group) id, and the -\b-p\bp option is
+ not supplied, these actions are taken and the effective
user id is set to the real user id. If the -\b-p\bp option is
supplied at startup, the effective user id is not reset.
- Turning this option off causes the effective user and
+ Turning this option off causes the effective user and
group ids to be set to the real user and group ids.
-\b-r\br Enable restricted shell mode. This option cannot be un-
set once it has been set.
-\b-t\bt Exit after reading and executing one command.
-\b-u\bu Treat unset variables and parameters other than the spe-
- cial parameters "@" and "*", or array variables sub-
- scripted with "@" or "*", as an error when performing
- parameter expansion. If expansion is attempted on an
- unset variable or parameter, the shell prints an error
- message, and, if not interactive, exits with a non-zero
+ cial parameters "@" and "*", or array variables sub-
+ scripted with "@" or "*", as an error when performing
+ parameter expansion. If expansion is attempted on an
+ unset variable or parameter, the shell prints an error
+ message, and, if not interactive, exits with a non-zero
status.
-\b-v\bv Print shell input lines as they are read.
- -\b-x\bx After expanding each _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, f\bfo\bor\br command, c\bca\bas\bse\be
+ -\b-x\bx After expanding each _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, f\bfo\bor\br command, c\bca\bas\bse\be
command, s\bse\bel\ble\bec\bct\bt command, or arithmetic f\bfo\bor\br command, dis-
- play the expanded value of P\bPS\bS4\b4, followed by the command
- and its expanded arguments or associated word list, to
+ play the expanded value of P\bPS\bS4\b4, followed by the command
+ and its expanded arguments or associated word list, to
the standard error.
- -\b-B\bB The shell performs brace expansion (see B\bBr\bra\bac\bce\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
+ -\b-B\bB The shell performs brace expansion (see B\bBr\bra\bac\bce\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
above). This is on by default.
- -\b-C\bC If set, b\bba\bas\bsh\bh does not overwrite an existing file with
- the >\b>, >\b>&\b&, and <\b<>\b> redirection operators. Using the
- redirection operator >\b>|\b| instead of >\b> will override this
+ -\b-C\bC If set, b\bba\bas\bsh\bh does not overwrite an existing file with
+ the >\b>, >\b>&\b&, and <\b<>\b> redirection operators. Using the
+ redirection operator >\b>|\b| instead of >\b> will override this
and force the creation of an output file.
-\b-E\bE If set, any trap on E\bER\bRR\bR is inherited by shell functions,
- command substitutions, and commands executed in a sub-
- shell environment. The E\bER\bRR\bR trap is normally not inher-
+ command substitutions, and commands executed in a sub-
+ shell environment. The E\bER\bRR\bR trap is normally not inher-
ited in such cases.
-\b-H\bH Enable !\b! style history substitution. This option is on
by default when the shell is interactive.
- -\b-P\bP If set, the shell does not resolve symbolic links when
- executing commands such as c\bcd\bd that change the current
+ -\b-P\bP If set, the shell does not resolve symbolic links when
+ executing commands such as c\bcd\bd that change the current
working directory. It uses the physical directory
structure instead. By default, b\bba\bas\bsh\bh follows the logical
- chain of directories when performing commands which
+ chain of directories when performing commands which
change the current directory.
- -\b-T\bT If set, any traps on D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN are inherited by
+ -\b-T\bT If set, any traps on D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN are inherited by
shell functions, command substitutions, and commands ex-
- ecuted in a subshell environment. The D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN
+ ecuted in a subshell environment. The D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN
traps are normally not inherited in such cases.
-\b--\b- If no arguments follow this option, unset the positional
parameters. Otherwise, set the positional parameters to
the _\ba_\br_\bgs, even if some of them begin with a -\b-.
-\b- Signal the end of options, and assign all remaining _\ba_\br_\bgs
to the positional parameters. The -\b-x\bx and -\b-v\bv options are
- turned off. If there are no _\ba_\br_\bgs, the positional para-
+ turned off. If there are no _\ba_\br_\bgs, the positional para-
meters remain unchanged.
- The options are off by default unless otherwise noted. Using +
- rather than - causes these options to be turned off. The op-
+ The options are off by default unless otherwise noted. Using +
+ rather than - causes these options to be turned off. The op-
tions can also be specified as arguments to an invocation of the
- shell. The current set of options may be found in $\b$-\b-. The re-
- turn status is always zero unless an invalid option is encoun-
+ shell. The current set of options may be found in $\b$-\b-. The re-
+ turn status is always zero unless an invalid option is encoun-
tered.
s\bsh\bhi\bif\bft\bt [_\bn]
Rename positional parameters from _\bn+1 ... to $\b$1\b1 .\b..\b..\b..\b. Parameters
- represented by the numbers $\b$#\b# down to $\b$#\b#-_\bn+1 are unset. _\bn must
- be a non-negative number less than or equal to $\b$#\b#. If _\bn is 0,
- no parameters are changed. If _\bn is not given, it is assumed to
- be 1. If _\bn is greater than $\b$#\b#, the positional parameters are
- not changed. The return status is greater than zero if _\bn is
+ represented by the numbers $\b$#\b# down to $\b$#\b#-_\bn+1 are unset. _\bn must
+ be a non-negative number less than or equal to $\b$#\b#. If _\bn is 0,
+ no parameters are changed. If _\bn is not given, it is assumed to
+ be 1. If _\bn is greater than $\b$#\b#, the positional parameters are
+ not changed. The return status is greater than zero if _\bn is
greater than $\b$#\b# or less than zero; otherwise 0.
s\bsh\bho\bop\bpt\bt [-\b-p\bpq\bqs\bsu\bu] [-\b-o\bo] [_\bo_\bp_\bt_\bn_\ba_\bm_\be ...]
- Toggle the values of settings controlling optional shell behav-
- ior. The settings can be either those listed below, or, if the
+ Toggle the values of settings controlling optional shell behav-
+ ior. The settings can be either those listed below, or, if the
-\b-o\bo option is used, those available with the -\b-o\bo option to the s\bse\bet\bt
builtin command.
- With no options, or with the -\b-p\bp option, display a list of all
- settable options, with an indication of whether or not each is
- set; if any _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs are supplied, the output is restricted to
+ With no options, or with the -\b-p\bp option, display a list of all
+ settable options, with an indication of whether or not each is
+ set; if any _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs are supplied, the output is restricted to
those options. The -\b-p\bp option displays output in a form that may
be reused as input.
Other options have the following meanings:
-\b-s\bs Enable (set) each _\bo_\bp_\bt_\bn_\ba_\bm_\be.
-\b-u\bu Disable (unset) each _\bo_\bp_\bt_\bn_\ba_\bm_\be.
- -\b-q\bq Suppresses normal output (quiet mode); the return status
+ -\b-q\bq Suppresses normal output (quiet mode); the return status
indicates whether the _\bo_\bp_\bt_\bn_\ba_\bm_\be is set or unset. If multi-
- ple _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments are supplied with -\b-q\bq, the return
+ ple _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments are supplied with -\b-q\bq, the return
status is zero if all _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs are enabled; non-zero oth-
erwise.
- -\b-o\bo Restricts the values of _\bo_\bp_\bt_\bn_\ba_\bm_\be to be those defined for
+ -\b-o\bo Restricts the values of _\bo_\bp_\bt_\bn_\ba_\bm_\be to be those defined for
the -\b-o\bo option to the s\bse\bet\bt builtin.
- If either -\b-s\bs or -\b-u\bu is used with no _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments, s\bsh\bho\bop\bpt\bt
- shows only those options which are set or unset, respectively.
- Unless otherwise noted, the s\bsh\bho\bop\bpt\bt options are disabled (unset)
+ If either -\b-s\bs or -\b-u\bu is used with no _\bo_\bp_\bt_\bn_\ba_\bm_\be arguments, s\bsh\bho\bop\bpt\bt
+ shows only those options which are set or unset, respectively.
+ Unless otherwise noted, the s\bsh\bho\bop\bpt\bt options are disabled (unset)
by default.
- The return status when listing options is zero if all _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs
- are enabled, non-zero otherwise. When setting or unsetting op-
- tions, the return status is zero unless an _\bo_\bp_\bt_\bn_\ba_\bm_\be is not a
+ The return status when listing options is zero if all _\bo_\bp_\bt_\bn_\ba_\bm_\be_\bs
+ are enabled, non-zero otherwise. When setting or unsetting op-
+ tions, the return status is zero unless an _\bo_\bp_\bt_\bn_\ba_\bm_\be is not a
valid shell option.
The list of s\bsh\bho\bop\bpt\bt options is:
a\bar\brr\bra\bay\by_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_o\bon\bnc\bce\be
- If set, the shell suppresses multiple evaluation of as-
+ If set, the shell suppresses multiple evaluation of as-
sociative and indexed array subscripts during arithmetic
expression evaluation, while executing builtins that can
- perform variable assignments, and while executing
+ perform variable assignments, and while executing
builtins that perform array dereferencing.
a\bas\bss\bso\boc\bc_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_o\bon\bnc\bce\be
Deprecated; a synonym for a\bar\brr\bra\bay\by_\b_e\bex\bxp\bpa\ban\bnd\bd_\b_o\bon\bnc\bce\be.
- a\bau\but\bto\boc\bcd\bd If set, a command name that is the name of a directory
- is executed as if it were the argument to the c\bcd\bd com-
+ a\bau\but\bto\boc\bcd\bd If set, a command name that is the name of a directory
+ is executed as if it were the argument to the c\bcd\bd com-
mand. This option is only used by interactive shells.
b\bba\bas\bsh\bh_\b_s\bso\bou\bur\brc\bce\be_\b_f\bfu\bul\bll\blp\bpa\bat\bth\bh
- If set, filenames added to the B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE array vari-
- able are converted to full pathnames (see S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bi-\b-
+ If set, filenames added to the B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE array vari-
+ able are converted to full pathnames (see S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bi-\b-
a\bab\bbl\ble\bes\bs above).
c\bcd\bda\bab\bbl\ble\be_\b_v\bva\bar\brs\bs
- If set, an argument to the c\bcd\bd builtin command that is
- not a directory is assumed to be the name of a variable
+ If set, an argument to the c\bcd\bd builtin command that is
+ not a directory is assumed to be the name of a variable
whose value is the directory to change to.
- c\bcd\bds\bsp\bpe\bel\bll\bl If set, the c\bcd\bd command attempts to correct minor errors
- in the spelling of a directory component. Minor errors
- include transposed characters, a missing character, and
+ c\bcd\bds\bsp\bpe\bel\bll\bl If set, the c\bcd\bd command attempts to correct minor errors
+ in the spelling of a directory component. Minor errors
+ include transposed characters, a missing character, and
one extra character. If c\bcd\bd corrects the directory name,
- it prints the corrected filename, and the command pro-
+ it prints the corrected filename, and the command pro-
ceeds. This option is only used by interactive shells.
c\bch\bhe\bec\bck\bkh\bha\bas\bsh\bh
If set, b\bba\bas\bsh\bh checks that a command found in the hash ta-
- ble exists before trying to execute it. If a hashed
- command no longer exists, b\bba\bas\bsh\bh performs a normal path
+ ble exists before trying to execute it. If a hashed
+ command no longer exists, b\bba\bas\bsh\bh performs a normal path
search.
c\bch\bhe\bec\bck\bkj\bjo\bob\bbs\bs
If set, b\bba\bas\bsh\bh lists the status of any stopped and running
- jobs before exiting an interactive shell. If any jobs
+ jobs before exiting an interactive shell. If any jobs
are running, b\bba\bas\bsh\bh defers the exit until a second exit is
- attempted without an intervening command (see J\bJO\bOB\bB C\bCO\bON\bN-\b-
- T\bTR\bRO\bOL\bL above). The shell always postpones exiting if any
+ attempted without an intervening command (see J\bJO\bOB\bB C\bCO\bON\bN-\b-
+ T\bTR\bRO\bOL\bL above). The shell always postpones exiting if any
jobs are stopped.
c\bch\bhe\bec\bck\bkw\bwi\bin\bns\bsi\biz\bze\be
- If set, b\bba\bas\bsh\bh checks the window size after each external
- (non-builtin) command and, if necessary, updates the
- values of L\bLI\bIN\bNE\bES\bS and C\bCO\bOL\bLU\bUM\bMN\bNS\bS, using the file descriptor
- associated with the standard error if it is a terminal.
+ If set, b\bba\bas\bsh\bh checks the window size after each external
+ (non-builtin) command and, if necessary, updates the
+ values of L\bLI\bIN\bNE\bES\bS and C\bCO\bOL\bLU\bUM\bMN\bNS\bS, using the file descriptor
+ associated with the standard error if it is a terminal.
This option is enabled by default.
- c\bcm\bmd\bdh\bhi\bis\bst\bt If set, b\bba\bas\bsh\bh attempts to save all lines of a multiple-
- line command in the same history entry. This allows
- easy re-editing of multi-line commands. This option is
- enabled by default, but only has an effect if command
+ c\bcm\bmd\bdh\bhi\bis\bst\bt If set, b\bba\bas\bsh\bh attempts to save all lines of a multiple-
+ line command in the same history entry. This allows
+ easy re-editing of multi-line commands. This option is
+ enabled by default, but only has an effect if command
history is enabled, as described above under H\bHI\bIS\bST\bTO\bOR\bRY\bY.
c\bco\bom\bmp\bpa\bat\bt3\b31\b1
c\bco\bom\bmp\bpa\bat\bt3\b32\b2
c\bco\bom\bmp\bpa\bat\bt4\b43\b3
c\bco\bom\bmp\bpa\bat\bt4\b44\b4
c\bco\bom\bmp\bpa\bat\bt5\b50\b0
- These control aspects of the shell's compatibility mode
+ These control aspects of the shell's compatibility mode
(see S\bSH\bHE\bEL\bLL\bL C\bCO\bOM\bMP\bPA\bAT\bTI\bIB\bBI\bIL\bLI\bIT\bTY\bY M\bMO\bOD\bDE\bE below).
c\bco\bom\bmp\bpl\ble\bet\bte\be_\b_f\bfu\bul\bll\blq\bqu\buo\bot\bte\be
- If set, b\bba\bas\bsh\bh quotes all shell metacharacters in file-
- names and directory names when performing completion.
+ If set, b\bba\bas\bsh\bh quotes all shell metacharacters in file-
+ names and directory names when performing completion.
If not set, b\bba\bas\bsh\bh removes metacharacters such as the dol-
- lar sign from the set of characters that will be quoted
- in completed filenames when these metacharacters appear
- in shell variable references in words to be completed.
- This means that dollar signs in variable names that ex-
- pand to directories will not be quoted; however, any
- dollar signs appearing in filenames will not be quoted,
- either. This is active only when bash is using back-
- slashes to quote completed filenames. This variable is
- set by default, which is the default bash behavior in
+ lar sign from the set of characters that will be quoted
+ in completed filenames when these metacharacters appear
+ in shell variable references in words to be completed.
+ This means that dollar signs in variable names that ex-
+ pand to directories will not be quoted; however, any
+ dollar signs appearing in filenames will not be quoted,
+ either. This is active only when bash is using back-
+ slashes to quote completed filenames. This variable is
+ set by default, which is the default bash behavior in
versions through 4.2.
d\bdi\bir\bre\bex\bxp\bpa\ban\bnd\bd
- If set, b\bba\bas\bsh\bh replaces directory names with the results
- of word expansion when performing filename completion.
+ If set, b\bba\bas\bsh\bh replaces directory names with the results
+ of word expansion when performing filename completion.
This changes the contents of the r\bre\bea\bad\bdl\bli\bin\bne\be editing
- buffer. If not set, b\bba\bas\bsh\bh attempts to preserve what the
+ buffer. If not set, b\bba\bas\bsh\bh attempts to preserve what the
user typed.
d\bdi\bir\brs\bsp\bpe\bel\bll\bl
- If set, b\bba\bas\bsh\bh attempts spelling correction on directory
- names during word completion if the directory name ini-
+ If set, b\bba\bas\bsh\bh attempts spelling correction on directory
+ names during word completion if the directory name ini-
tially supplied does not exist.
- d\bdo\bot\btg\bgl\blo\bob\bb If set, b\bba\bas\bsh\bh includes filenames beginning with a "." in
- the results of pathname expansion. The filenames _\b. and
+ d\bdo\bot\btg\bgl\blo\bob\bb If set, b\bba\bas\bsh\bh includes filenames beginning with a "." in
+ the results of pathname expansion. The filenames _\b. and
_\b._\b. must always be matched explicitly, even if d\bdo\bot\btg\bgl\blo\bob\bb is
set.
e\bex\bxe\bec\bcf\bfa\bai\bil\bl
If set, a non-interactive shell will not exit if it can-
- not execute the file specified as an argument to the
- e\bex\bxe\bec\bc builtin. An interactive shell does not exit if
+ not execute the file specified as an argument to the
+ e\bex\bxe\bec\bc builtin. An interactive shell does not exit if
e\bex\bxe\bec\bc fails.
e\bex\bxp\bpa\ban\bnd\bd_\b_a\bal\bli\bia\bas\bse\bes\bs
- If set, aliases are expanded as described above under
+ If set, aliases are expanded as described above under
A\bAL\bLI\bIA\bAS\bSE\bES\bS. This option is enabled by default for interac-
tive shells.
e\bex\bxt\btd\bde\beb\bbu\bug\bg
- If set at shell invocation, or in a shell startup file,
+ If set at shell invocation, or in a shell startup file,
arrange to execute the debugger profile before the shell
- starts, identical to the -\b--\b-d\bde\beb\bbu\bug\bgg\bge\ber\br option. If set af-
- ter invocation, behavior intended for use by debuggers
+ starts, identical to the -\b--\b-d\bde\beb\bbu\bug\bgg\bge\ber\br option. If set af-
+ ter invocation, behavior intended for use by debuggers
is enabled:
1\b1.\b. The -\b-F\bF option to the d\bde\bec\bcl\bla\bar\bre\be builtin displays the
source file name and line number corresponding to
each function name supplied as an argument.
- 2\b2.\b. If the command run by the D\bDE\bEB\bBU\bUG\bG trap returns a
- non-zero value, the next command is skipped and
+ 2\b2.\b. If the command run by the D\bDE\bEB\bBU\bUG\bG trap returns a
+ non-zero value, the next command is skipped and
not executed.
- 3\b3.\b. If the command run by the D\bDE\bEB\bBU\bUG\bG trap returns a
- value of 2, and the shell is executing in a sub-
- routine (a shell function or a shell script exe-
- cuted by the .\b. or s\bso\bou\bur\brc\bce\be builtins), the shell
+ 3\b3.\b. If the command run by the D\bDE\bEB\bBU\bUG\bG trap returns a
+ value of 2, and the shell is executing in a sub-
+ routine (a shell function or a shell script exe-
+ cuted by the .\b. or s\bso\bou\bur\brc\bce\be builtins), the shell
simulates a call to r\bre\bet\btu\bur\brn\bn.
- 4\b4.\b. B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC and B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV are updated as described
+ 4\b4.\b. B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC and B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV are updated as described
in their descriptions above).
- 5\b5.\b. Function tracing is enabled: command substitu-
+ 5\b5.\b. Function tracing is enabled: command substitu-
tion, shell functions, and subshells invoked with
(\b( _\bc_\bo_\bm_\bm_\ba_\bn_\bd )\b) inherit the D\bDE\bEB\bBU\bUG\bG and R\bRE\bET\bTU\bUR\bRN\bN traps.
- 6\b6.\b. Error tracing is enabled: command substitution,
- shell functions, and subshells invoked with (\b(
+ 6\b6.\b. Error tracing is enabled: command substitution,
+ shell functions, and subshells invoked with (\b(
_\bc_\bo_\bm_\bm_\ba_\bn_\bd )\b) inherit the E\bER\bRR\bR trap.
- e\bex\bxt\btg\bgl\blo\bob\bb If set, enable the extended pattern matching features
+ e\bex\bxt\btg\bgl\blo\bob\bb If set, enable the extended pattern matching features
described above under P\bPa\bat\bth\bhn\bna\bam\bme\be E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn.
e\bex\bxt\btq\bqu\buo\bot\bte\be
- If set, $\b$'_\bs_\bt_\br_\bi_\bn_\bg' and $\b$"_\bs_\bt_\br_\bi_\bn_\bg" quoting is performed
- within $\b${\b{_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br}\b} expansions enclosed in double
+ If set, $\b$'_\bs_\bt_\br_\bi_\bn_\bg' and $\b$"_\bs_\bt_\br_\bi_\bn_\bg" quoting is performed
+ within $\b${\b{_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br}\b} expansions enclosed in double
quotes. This option is enabled by default.
f\bfa\bai\bil\blg\bgl\blo\bob\bb
- If set, patterns which fail to match filenames during
+ If set, patterns which fail to match filenames during
pathname expansion result in an expansion error.
f\bfo\bor\brc\bce\be_\b_f\bfi\big\bgn\bno\bor\bre\be
- If set, the suffixes specified by the F\bFI\bIG\bGN\bNO\bOR\bRE\bE shell
- variable cause words to be ignored when performing word
+ If set, the suffixes specified by the F\bFI\bIG\bGN\bNO\bOR\bRE\bE shell
+ variable cause words to be ignored when performing word
completion even if the ignored words are the only possi-
- ble completions. See S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs above for a de-
- scription of F\bFI\bIG\bGN\bNO\bOR\bRE\bE. This option is enabled by de-
+ ble completions. See S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs above for a de-
+ scription of F\bFI\bIG\bGN\bNO\bOR\bRE\bE. This option is enabled by de-
fault.
g\bgl\blo\bob\bba\bas\bsc\bci\bii\bir\bra\ban\bng\bge\bes\bs
- If set, range expressions used in pattern matching
- bracket expressions (see P\bPa\bat\btt\bte\ber\brn\bn M\bMa\bat\btc\bch\bhi\bin\bng\bg above) behave
- as if in the traditional C locale when performing com-
- parisons. That is, pattern matching does not take the
- current locale's collating sequence into account, so b\bb
- will not collate between A\bA and B\bB, and upper-case and
+ If set, range expressions used in pattern matching
+ bracket expressions (see P\bPa\bat\btt\bte\ber\brn\bn M\bMa\bat\btc\bch\bhi\bin\bng\bg above) behave
+ as if in the traditional C locale when performing com-
+ parisons. That is, pattern matching does not take the
+ current locale's collating sequence into account, so b\bb
+ will not collate between A\bA and B\bB, and upper-case and
lower-case ASCII characters will collate together.
g\bgl\blo\bob\bbs\bsk\bki\bip\bpd\bdo\bot\bts\bs
- If set, pathname expansion will never match the file-
- names _\b. and _\b._\b., even if the pattern begins with a ".".
+ If set, pathname expansion will never match the file-
+ names _\b. and _\b._\b., even if the pattern begins with a ".".
This option is enabled by default.
g\bgl\blo\bob\bbs\bst\bta\bar\br
If set, the pattern *\b**\b* used in a pathname expansion con-
- text will match all files and zero or more directories
- and subdirectories. If the pattern is followed by a /\b/,
+ text will match all files and zero or more directories
+ and subdirectories. If the pattern is followed by a /\b/,
only directories and subdirectories match.
g\bgn\bnu\bu_\b_e\ber\brr\brf\bfm\bmt\bt
If set, shell error messages are written in the standard
GNU error message format.
h\bhi\bis\bst\bta\bap\bpp\bpe\ben\bnd\bd
- If set, the history list is appended to the file named
+ If set, the history list is appended to the file named
by the value of the H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE variable when the shell ex-
its, rather than overwriting the file.
h\bhi\bis\bst\btr\bre\bee\bed\bdi\bit\bt
- If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, the user is given
- the opportunity to re-edit a failed history substitu-
+ If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, the user is given
+ the opportunity to re-edit a failed history substitu-
tion.
h\bhi\bis\bst\btv\bve\ber\bri\bif\bfy\by
- If set, and r\bre\bea\bad\bdl\bli\bin\bne\be 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 r\bre\bea\bad\bdl\bli\bin\bne\be 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 r\bre\bea\bad\bdl\bli\bin\bne\be editing buffer, allowing further modi-
fication.
h\bho\bos\bst\btc\bco\bom\bmp\bpl\ble\bet\bte\be
If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, b\bba\bas\bsh\bh will attempt to
- perform hostname completion when a word containing a @\b@
- is being completed (see C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg under R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE
+ perform hostname completion when a word containing a @\b@
+ is being completed (see C\bCo\bom\bmp\bpl\ble\bet\bti\bin\bng\bg under R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE
above). This is enabled by default.
h\bhu\bup\bpo\bon\bne\bex\bxi\bit\bt
If set, b\bba\bas\bsh\bh will send S\bSI\bIG\bGH\bHU\bUP\bP to all jobs when an inter-
active login shell exits.
i\bin\bnh\bhe\ber\bri\bit\bt_\b_e\ber\brr\bre\bex\bxi\bit\bt
- If set, command substitution inherits the value of the
- e\ber\brr\bre\bex\bxi\bit\bt option, instead of unsetting it in the subshell
- environment. This option is enabled when posix mode is
+ If set, command substitution inherits the value of the
+ e\ber\brr\bre\bex\bxi\bit\bt option, instead of unsetting it in the subshell
+ environment. This option is enabled when posix mode is
enabled.
i\bin\bnt\bte\ber\bra\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs
- In an interactive shell, a word beginning with #\b# causes
- that word and all remaining characters on that line to
- be ignored, as in a non-interactive shell (see C\bCO\bOM\bMM\bME\bEN\bNT\bTS\bS
+ In an interactive shell, a word beginning with #\b# causes
+ that word and all remaining characters on that line to
+ be ignored, as in a non-interactive shell (see C\bCO\bOM\bMM\bME\bEN\bNT\bTS\bS
above). This option is enabled by default.
l\bla\bas\bst\btp\bpi\bip\bpe\be
- If set, and job control is not active, the shell runs
+ If set, and job control is not active, the shell runs
the last command of a pipeline not executed in the back-
ground in the current shell environment.
- l\bli\bit\bth\bhi\bis\bst\bt If set, and the c\bcm\bmd\bdh\bhi\bis\bst\bt option is enabled, multi-line
+ l\bli\bit\bth\bhi\bis\bst\bt If set, and the c\bcm\bmd\bdh\bhi\bis\bst\bt option is enabled, multi-line
commands are saved to the history with embedded newlines
rather than using semicolon separators where possible.
l\blo\boc\bca\bal\blv\bva\bar\br_\b_i\bin\bnh\bhe\ber\bri\bit\bt
scope before any new value is assigned. The nameref at-
tribute is not inherited.
l\blo\boc\bca\bal\blv\bva\bar\br_\b_u\bun\bns\bse\bet\bt
- If set, calling u\bun\bns\bse\bet\bt on local variables in previous
- function scopes marks them so subsequent lookups find
+ If set, calling u\bun\bns\bse\bet\bt on local variables in previous
+ function scopes marks them so subsequent lookups find
them unset until that function returns. This is identi-
- cal to the behavior of unsetting local variables at the
+ cal to the behavior of unsetting local variables at the
current function scope.
l\blo\bog\bgi\bin\bn_\b_s\bsh\bhe\bel\bll\bl
- The shell sets this option if it is started as a login
- shell (see I\bIN\bNV\bVO\bOC\bCA\bAT\bTI\bIO\bON\bN above). The value may not be
+ The shell sets this option if it is started as a login
+ shell (see I\bIN\bNV\bVO\bOC\bCA\bAT\bTI\bIO\bON\bN above). The value may not be
changed.
m\bma\bai\bil\blw\bwa\bar\brn\bn
- If set, and a file that b\bba\bas\bsh\bh is checking for mail has
- been accessed since the last time it was checked, b\bba\bas\bsh\bh
- displays the message "The mail in _\bm_\ba_\bi_\bl_\bf_\bi_\bl_\be has been
+ If set, and a file that b\bba\bas\bsh\bh is checking for mail has
+ been accessed since the last time it was checked, b\bba\bas\bsh\bh
+ displays the message "The mail in _\bm_\ba_\bi_\bl_\bf_\bi_\bl_\be has been
read".
n\bno\bo_\b_e\bem\bmp\bpt\bty\by_\b_c\bcm\bmd\bd_\b_c\bco\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
If set, and r\bre\bea\bad\bdl\bli\bin\bne\be is being used, b\bba\bas\bsh\bh does not search
- P\bPA\bAT\bTH\bH for possible completions when completion is at-
+ P\bPA\bAT\bTH\bH for possible completions when completion is at-
tempted on an empty line.
n\bno\boc\bca\bas\bse\beg\bgl\blo\bob\bb
- If set, b\bba\bas\bsh\bh matches filenames in a case-insensitive
+ If set, b\bba\bas\bsh\bh matches filenames in a case-insensitive
fashion when performing pathname expansion (see P\bPa\bat\bth\bhn\bna\bam\bme\be
E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn above).
n\bno\boc\bca\bas\bse\bem\bma\bat\btc\bch\bh
- If set, b\bba\bas\bsh\bh matches patterns in a case-insensitive
+ If set, b\bba\bas\bsh\bh matches patterns in a case-insensitive
fashion when performing matching while executing c\bca\bas\bse\be or
[\b[[\b[ conditional commands, when performing pattern substi-
- tution word expansions, or when filtering possible com-
+ tution word expansions, or when filtering possible com-
pletions as part of programmable completion.
n\bno\boe\bex\bxp\bpa\ban\bnd\bd_\b_t\btr\bra\ban\bns\bsl\bla\bat\bti\bio\bon\bn
- If set, b\bba\bas\bsh\bh encloses the translated results of $\b$"\b"..."\b"
- quoting in single quotes instead of double quotes. If
+ If set, b\bba\bas\bsh\bh encloses the translated results of $\b$"\b"..."\b"
+ quoting in single quotes instead of double quotes. If
the string is not translated, this has no effect.
n\bnu\bul\bll\blg\bgl\blo\bob\bb
If set, pathname expansion patterns which match no files
removed, rather than expanding to themselves.
p\bpa\bat\bts\bsu\bub\bb_\b_r\bre\bep\bpl\bla\bac\bce\bem\bme\ben\bnt\bt
If set, b\bba\bas\bsh\bh expands occurrences of &\b& in the replacement
- string of pattern substitution to the text matched by
- the pattern, as described under P\bPa\bar\bra\bam\bme\bet\bte\ber\br E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
+ string of pattern substitution to the text matched by
+ the pattern, as described under P\bPa\bar\bra\bam\bme\bet\bte\ber\br E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
above. This option is enabled by default.
p\bpr\bro\bog\bgc\bco\bom\bmp\bp
- If set, enable the programmable completion facilities
+ If set, enable the programmable completion facilities
(see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn above). This option is en-
abled by default.
p\bpr\bro\bog\bgc\bco\bom\bmp\bp_\b_a\bal\bli\bia\bas\bs
- If set, and programmable completion is enabled, b\bba\bas\bsh\bh
- treats a command name that doesn't have any completions
+ If set, and programmable completion is enabled, b\bba\bas\bsh\bh
+ treats a command name that doesn't have any completions
as a possible alias and attempts alias expansion. If it
- has an alias, b\bba\bas\bsh\bh attempts programmable completion us-
+ has an alias, b\bba\bas\bsh\bh attempts programmable completion us-
ing the command word resulting from the expanded alias.
p\bpr\bro\bom\bmp\bpt\btv\bva\bar\brs\bs
If set, prompt strings undergo parameter expansion, com-
- mand substitution, arithmetic expansion, and quote re-
- moval after being expanded as described in P\bPR\bRO\bOM\bMP\bPT\bTI\bIN\bNG\bG
+ mand substitution, arithmetic expansion, and quote re-
+ moval after being expanded as described in P\bPR\bRO\bOM\bMP\bPT\bTI\bIN\bNG\bG
above. This option is enabled by default.
r\bre\bes\bst\btr\bri\bic\bct\bte\bed\bd_\b_s\bsh\bhe\bel\bll\bl
- The shell sets this option if it is started in re-
- stricted mode (see R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL below). The value
- may not be changed. This is not reset when the startup
- files are executed, allowing the startup files to dis-
+ The shell sets this option if it is started in re-
+ stricted mode (see R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL below). The value
+ 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.
s\bsh\bhi\bif\bft\bt_\b_v\bve\ber\brb\bbo\bos\bse\be
- If set, the s\bsh\bhi\bif\bft\bt builtin prints an error message when
+ If set, the s\bsh\bhi\bif\bft\bt builtin prints an error message when
the shift count exceeds the number of positional parame-
ters.
s\bso\bou\bur\brc\bce\bep\bpa\bat\bth\bh
If set, the .\b. (s\bso\bou\bur\brc\bce\be) builtin uses the value of P\bPA\bAT\bTH\bH to
- find the directory containing the file supplied as an
- argument when the -\b-p\bp option is not supplied. This op-
+ find the directory containing the file supplied as an
+ argument when the -\b-p\bp option is not supplied. This op-
tion is enabled by default.
v\bva\bar\brr\bre\bed\bdi\bir\br_\b_c\bcl\blo\bos\bse\be
- If set, the shell automatically closes file descriptors
- assigned using the _\b{_\bv_\ba_\br_\bn_\ba_\bm_\be_\b} redirection syntax (see
+ If set, the shell automatically closes file descriptors
+ assigned using the _\b{_\bv_\ba_\br_\bn_\ba_\bm_\be_\b} redirection syntax (see
R\bRE\bED\bDI\bIR\bRE\bEC\bCT\bTI\bIO\bON\bN above) instead of leaving them open when the
command completes.
x\bxp\bpg\bg_\b_e\bec\bch\bho\bo
- If set, the e\bec\bch\bho\bo builtin expands backslash-escape se-
- quences by default. If the p\bpo\bos\bsi\bix\bx shell option is also
+ If set, the e\bec\bch\bho\bo builtin expands backslash-escape se-
+ quences by default. If the p\bpo\bos\bsi\bix\bx shell option is also
enabled, e\bec\bch\bho\bo does not interpret any options.
s\bsu\bus\bsp\bpe\ben\bnd\bd [-\b-f\bf]
- Suspend the execution of this shell until it receives a S\bSI\bIG\bGC\bCO\bON\bNT\bT
- signal. A login shell, or a shell without job control enabled,
- cannot be suspended; the -\b-f\bf option will override this and force
- the suspension. The return status is 0 unless the shell is a
- login shell or job control is not enabled and -\b-f\bf is not sup-
+ Suspend the execution of this shell until it receives a S\bSI\bIG\bGC\bCO\bON\bNT\bT
+ signal. A login shell, or a shell without job control enabled,
+ cannot be suspended; the -\b-f\bf option will override this and force
+ the suspension. The return status is 0 unless the shell is a
+ login shell or job control is not enabled and -\b-f\bf is not sup-
plied.
t\bte\bes\bst\bt _\be_\bx_\bp_\br
[\b[ _\be_\bx_\bp_\br ]\b]
Return a status of 0 (true) or 1 (false) depending on the evalu-
- ation of the conditional expression _\be_\bx_\bp_\br. Each operator and
- operand must be a separate argument. Expressions are composed
- of the primaries described above under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS.
- t\bte\bes\bst\bt does not accept any options, nor does it accept and ignore
+ ation of the conditional expression _\be_\bx_\bp_\br. Each operator and
+ operand must be a separate argument. Expressions are composed
+ of the primaries described above under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS.
+ t\bte\bes\bst\bt does not accept any options, nor does it accept and ignore
an argument of -\b--\b- as signifying the end of options.
- Expressions may be combined using the following operators,
- listed in decreasing order of precedence. The evaluation de-
+ Expressions may be combined using the following operators,
+ listed in decreasing order of precedence. The evaluation de-
pends on the number of arguments; see below. t\bte\bes\bst\bt uses operator
precedence when there are five or more arguments.
!\b! _\be_\bx_\bp_\br True if _\be_\bx_\bp_\br is false.
(\b( _\be_\bx_\bp_\br )\b)
- Returns the value of _\be_\bx_\bp_\br. This may be used to override
+ Returns the value of _\be_\bx_\bp_\br. This may be used to override
normal operator precedence.
_\be_\bx_\bp_\br_\b1 -a\ba _\be_\bx_\bp_\br_\b2
True if both _\be_\bx_\bp_\br_\b1 and _\be_\bx_\bp_\br_\b2 are true.
null.
2 arguments
If the first argument is !\b!, 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 C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS, 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 C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS, the expression is
true if the unary test is true. If the first argument is
not a valid unary conditional operator, the expression is
false.
3 arguments
The following conditions are applied in the order listed.
- If the second argument is one of the binary conditional
+ If the second argument is one of the binary conditional
operators listed above under C\bCO\bON\bND\bDI\bIT\bTI\bIO\bON\bNA\bAL\bL E\bEX\bXP\bPR\bRE\bES\bSS\bSI\bIO\bON\bNS\bS, the
result of the expression is the result of the binary test
- using the first and third arguments as operands. The -\b-a\ba
- and -\b-o\bo operators are considered binary operators when
- there are three arguments. If the first argument is !\b!,
- the value is the negation of the two-argument test using
+ using the first and third arguments as operands. The -\b-a\ba
+ and -\b-o\bo operators are considered binary operators when
+ there are three arguments. If the first argument is !\b!,
+ the value is the negation of the two-argument test using
the second and third arguments. If the first argument is
exactly (\b( and the third argument is exactly )\b), 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
The following conditions are applied in the order listed.
If the first argument is !\b!, the result is the negation of
- the three-argument expression composed of the remaining
- arguments. If the first argument is exactly (\b( and the
+ the three-argument expression composed of the remaining
+ arguments. If the first argument is exactly (\b( and the
fourth argument is exactly )\b), the result is the two-argu-
- ment test of the second and third arguments. Otherwise,
- the expression is parsed and evaluated according to
+ ment test of the second and third arguments. Otherwise,
+ the expression is parsed and evaluated according to
precedence using the rules listed above.
5 or more arguments
- The expression is parsed and evaluated according to
+ The expression is parsed and evaluated according to
precedence using the rules listed above.
When the shell is in posix mode, or if the expression is part of
the [\b[[\b[ command, the <\b< and >\b> operators sort using the current lo-
- cale. If the shell is not in posix mode, the t\bte\bes\bst\bt and [\b[ com-
+ cale. If the shell is not in posix mode, the t\bte\bes\bst\bt and [\b[ com-
mands sort lexicographically using ASCII ordering.
- The historical operator-precedence parsing with 4 or more argu-
- ments can lead to ambiguities when it encounters strings that
- look like primaries. The POSIX standard has deprecated the -\b-a\ba
- and -\b-o\bo primaries and enclosing expressions within parentheses.
- Scripts should no longer use them. It's much more reliable to
- restrict test invocations to a single primary, and to replace
+ The historical operator-precedence parsing with 4 or more argu-
+ ments can lead to ambiguities when it encounters strings that
+ look like primaries. The POSIX standard has deprecated the -\b-a\ba
+ and -\b-o\bo primaries and enclosing expressions within parentheses.
+ Scripts should no longer use them. It's much more reliable to
+ restrict test invocations to a single primary, and to replace
uses of -\b-a\ba and -\b-o\bo with the shell's &\b&&\b& and |\b||\b| list operators.
- t\bti\bim\bme\bes\bs Print the accumulated user and system times for the shell and
+ t\bti\bim\bme\bes\bs Print the accumulated user and system times for the shell and
for processes run from the shell. The return status is 0.
t\btr\bra\bap\bp [-\b-l\blp\bpP\bP] [[_\ba_\bc_\bt_\bi_\bo_\bn] _\bs_\bi_\bg_\bs_\bp_\be_\bc ...]
The _\ba_\bc_\bt_\bi_\bo_\bn is a command that is read and executed when the shell
- receives any of the signals _\bs_\bi_\bg_\bs_\bp_\be_\bc. If _\ba_\bc_\bt_\bi_\bo_\bn is absent (and
+ receives any of the signals _\bs_\bi_\bg_\bs_\bp_\be_\bc. If _\ba_\bc_\bt_\bi_\bo_\bn is absent (and
there is a single _\bs_\bi_\bg_\bs_\bp_\be_\bc) or -\b-, each specified _\bs_\bi_\bg_\bs_\bp_\be_\bc is reset
- to the value it had when the shell was started. If _\ba_\bc_\bt_\bi_\bo_\bn is
- the null string the signal specified by each _\bs_\bi_\bg_\bs_\bp_\be_\bc is ignored
+ to the value it had when the shell was started. If _\ba_\bc_\bt_\bi_\bo_\bn is
+ the null string the signal specified by each _\bs_\bi_\bg_\bs_\bp_\be_\bc is ignored
by the shell and by the commands it invokes.
- If no arguments are supplied, t\btr\bra\bap\bp displays the actions associ-
+ If no arguments are supplied, t\btr\bra\bap\bp displays the actions associ-
ated with each trapped signal as a set of t\btr\bra\bap\bp commands that can
- be reused as shell input to restore the current signal disposi-
- tions. If -\b-p\bp is given, and _\ba_\bc_\bt_\bi_\bo_\bn is not present, then t\btr\bra\bap\bp
- displays the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc or, if none
+ be reused as shell input to restore the current signal disposi-
+ tions. If -\b-p\bp is given, and _\ba_\bc_\bt_\bi_\bo_\bn is not present, then t\btr\bra\bap\bp
+ displays the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc or, if none
are supplied, for all trapped signals, as a set of t\btr\bra\bap\bp commands
- that can be reused as shell input to restore the current signal
- dispositions. The -\b-P\bP option behaves similarly, but displays
- only the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc argument. -\b-P\bP re-
- quires at least one _\bs_\bi_\bg_\bs_\bp_\be_\bc argument. The -\b-P\bP or -\b-p\bp options may
- be used in a subshell environment (e.g., command substitution)
- and, as long as they are used before t\btr\bra\bap\bp is used to change a
+ that can be reused as shell input to restore the current signal
+ dispositions. The -\b-P\bP option behaves similarly, but displays
+ only the actions associated with each _\bs_\bi_\bg_\bs_\bp_\be_\bc argument. -\b-P\bP re-
+ quires at least one _\bs_\bi_\bg_\bs_\bp_\be_\bc argument. The -\b-P\bP or -\b-p\bp options may
+ be used in a subshell environment (e.g., command substitution)
+ and, as long as they are used before t\btr\bra\bap\bp is used to change a
signal's handling, will display the state of its parent's traps.
- The -\b-l\bl option prints a list of signal names and their corre-
- sponding numbers. Each _\bs_\bi_\bg_\bs_\bp_\be_\bc is either a signal name defined
+ The -\b-l\bl option prints a list of signal names and their corre-
+ sponding numbers. Each _\bs_\bi_\bg_\bs_\bp_\be_\bc is either a signal name defined
in <_\bs_\bi_\bg_\bn_\ba_\bl_\b._\bh>, or a signal number. Signal names are case insen-
- sitive and the S\bSI\bIG\bG prefix is optional. If -\b-l\bl is supplied with
+ sitive and the S\bSI\bIG\bG prefix is optional. If -\b-l\bl is supplied with
no _\bs_\bi_\bg_\bs_\bp_\be_\bc arguments, it prints a list of valid signal names.
- If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bEX\bXI\bIT\bT (0), _\ba_\bc_\bt_\bi_\bo_\bn is executed on exit from the
- shell. If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is D\bDE\bEB\bBU\bUG\bG, _\ba_\bc_\bt_\bi_\bo_\bn is executed before every
- _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, _\bf_\bo_\br command, _\bc_\ba_\bs_\be command, _\bs_\be_\bl_\be_\bc_\bt command, ((
- arithmetic command, [[ conditional command, arithmetic _\bf_\bo_\br com-
- mand, and before the first command executes in a shell function
- (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR above). Refer to the description of the
- e\bex\bxt\btd\bde\beb\bbu\bug\bg shell option (see s\bsh\bho\bop\bpt\bt above) for details of its ef-
- fect on the D\bDE\bEB\bBU\bUG\bG trap. If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is R\bRE\bET\bTU\bUR\bRN\bN, _\ba_\bc_\bt_\bi_\bo_\bn is exe-
+ If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bEX\bXI\bIT\bT (0), _\ba_\bc_\bt_\bi_\bo_\bn is executed on exit from the
+ shell. If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is D\bDE\bEB\bBU\bUG\bG, _\ba_\bc_\bt_\bi_\bo_\bn is executed before every
+ _\bs_\bi_\bm_\bp_\bl_\be _\bc_\bo_\bm_\bm_\ba_\bn_\bd, _\bf_\bo_\br command, _\bc_\ba_\bs_\be command, _\bs_\be_\bl_\be_\bc_\bt command, ((
+ arithmetic command, [[ conditional command, arithmetic _\bf_\bo_\br com-
+ mand, and before the first command executes in a shell function
+ (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR above). Refer to the description of the
+ e\bex\bxt\btd\bde\beb\bbu\bug\bg shell option (see s\bsh\bho\bop\bpt\bt above) for details of its ef-
+ fect on the D\bDE\bEB\bBU\bUG\bG trap. If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is R\bRE\bET\bTU\bUR\bRN\bN, _\ba_\bc_\bt_\bi_\bo_\bn is exe-
cuted each time a shell function or a script executed with the .\b.
or s\bso\bou\bur\brc\bce\be builtins finishes executing.
- If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bER\bRR\bR, _\ba_\bc_\bt_\bi_\bo_\bn is executed whenever a pipeline
- (which may consist of a single simple command), a list, or a
- compound command returns a non-zero exit status, subject to the
- following conditions. The E\bER\bRR\bR trap is not executed if the
+ If a _\bs_\bi_\bg_\bs_\bp_\be_\bc is E\bER\bRR\bR, _\ba_\bc_\bt_\bi_\bo_\bn is executed whenever a pipeline
+ (which may consist of a single simple command), a list, or a
+ compound command returns a non-zero exit status, subject to the
+ following conditions. The E\bER\bRR\bR trap is not executed if the
failed command is part of the command list immediately following
- a w\bwh\bhi\bil\ble\be or u\bun\bnt\bti\bil\bl keyword, part of the test in an _\bi_\bf statement,
+ a w\bwh\bhi\bil\ble\be or u\bun\bnt\bti\bil\bl keyword, part of the test in an _\bi_\bf statement,
part of a command executed in a &\b&&\b& or |\b||\b| list except the command
- following the final &\b&&\b& or |\b||\b|, any command in a pipeline but the
- last (subject to the state of the p\bpi\bip\bpe\bef\bfa\bai\bil\bl shell option), or if
+ following the final &\b&&\b& or |\b||\b|, any command in a pipeline but the
+ last (subject to the state of the p\bpi\bip\bpe\bef\bfa\bai\bil\bl shell option), or if
the command's return value is being inverted using !\b!. These are
the same conditions obeyed by the e\ber\brr\bre\bex\bxi\bit\bt (-\b-e\be) option.
When the shell is not interactive, signals ignored upon entry to
the shell cannot be trapped or reset. Interactive shells permit
trapping signals ignored on entry. Trapped signals that are not
- being ignored are reset to their original values in a subshell
- or subshell environment when one is created. The return status
+ being ignored are reset to their original values in a subshell
+ or subshell environment when one is created. The return status
is false if any _\bs_\bi_\bg_\bs_\bp_\be_\bc is invalid; otherwise t\btr\bra\bap\bp returns true.
t\btr\bru\bue\be Does nothing, returns a 0 status.
Indicate how each _\bn_\ba_\bm_\be would be interpreted if used as a command
name.
- If the -\b-t\bt option is used, t\bty\byp\bpe\be prints a string which is one of
- _\ba_\bl_\bi_\ba_\bs, _\bk_\be_\by_\bw_\bo_\br_\bd, _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn, _\bb_\bu_\bi_\bl_\bt_\bi_\bn, or _\bf_\bi_\bl_\be if _\bn_\ba_\bm_\be is an alias,
- shell reserved word, function, builtin, or executable file, re-
- spectively. If the _\bn_\ba_\bm_\be is not found, t\bty\byp\bpe\be prints nothing and
+ If the -\b-t\bt option is used, t\bty\byp\bpe\be prints a string which is one of
+ _\ba_\bl_\bi_\ba_\bs, _\bk_\be_\by_\bw_\bo_\br_\bd, _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn, _\bb_\bu_\bi_\bl_\bt_\bi_\bn, or _\bf_\bi_\bl_\be if _\bn_\ba_\bm_\be is an alias,
+ shell reserved word, function, builtin, or executable file, re-
+ spectively. If the _\bn_\ba_\bm_\be is not found, t\bty\byp\bpe\be prints nothing and
returns a non-zero exit status.
- If the -\b-p\bp option is used, t\bty\byp\bpe\be either returns the pathname of
- the executable file that would be found by searching $\b$P\bPA\bAT\bTH\bH for
+ If the -\b-p\bp option is used, t\bty\byp\bpe\be either returns the pathname of
+ the executable file that would be found by searching $\b$P\bPA\bAT\bTH\bH for
_\bn_\ba_\bm_\be or nothing if "type -t name" would not return _\bf_\bi_\bl_\be. The -\b-P\bP
- option forces a P\bPA\bAT\bTH\bH search for each _\bn_\ba_\bm_\be, even if "type -t
+ option forces a P\bPA\bAT\bTH\bH search for each _\bn_\ba_\bm_\be, even if "type -t
name" would not return _\bf_\bi_\bl_\be. If _\bn_\ba_\bm_\be is present in the table of
- hashed commands, -\b-p\bp and -\b-P\bP print the hashed value, which is not
+ hashed commands, -\b-p\bp and -\b-P\bP print the hashed value, which is not
necessarily the file that appears first in P\bPA\bAT\bTH\bH.
- If the -\b-a\ba option is used, t\bty\byp\bpe\be prints all of the places that
- contain a command named _\bn_\ba_\bm_\be. This includes aliases, reserved
- words, functions, and builtins, but the path search options (-\b-p\bp
- and -\b-P\bP) can be supplied to restrict the output to executable
- files. t\bty\byp\bpe\be does not consult the table of hashed commands when
+ If the -\b-a\ba option is used, t\bty\byp\bpe\be prints all of the places that
+ contain a command named _\bn_\ba_\bm_\be. This includes aliases, reserved
+ words, functions, and builtins, but the path search options (-\b-p\bp
+ and -\b-P\bP) can be supplied to restrict the output to executable
+ files. t\bty\byp\bpe\be does not consult the table of hashed commands when
using -\b-a\ba with -\b-p\bp, and only performs a P\bPA\bAT\bTH\bH search for _\bn_\ba_\bm_\be.
The -\b-f\bf option suppresses shell function lookup, as with the c\bco\bom\bm-\b-
- m\bma\ban\bnd\bd builtin. t\bty\byp\bpe\be returns true if all of the arguments are
+ m\bma\ban\bnd\bd builtin. t\bty\byp\bpe\be returns true if all of the arguments are
found, false if any are not found.
u\bul\bli\bim\bmi\bit\bt [-\b-H\bHS\bS] -\b-a\ba
u\bul\bli\bim\bmi\bit\bt [-\b-H\bHS\bS] [-\b-b\bbc\bcd\bde\bef\bfi\bik\bkl\blm\bmn\bnp\bpq\bqr\brs\bst\btu\buv\bvx\bxP\bPR\bRT\bT [_\bl_\bi_\bm_\bi_\bt]]
- Provides control over the resources available to the shell and
+ Provides control over the resources available to the shell and
to processes it starts, on systems that allow such control.
- The -\b-H\bH and -\b-S\bS options specify whether the hard or soft limit is
+ The -\b-H\bH and -\b-S\bS options specify whether 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 -\b-H\bH nor -\b-S\bS is speci-
+ to the value of the hard limit. If neither -\b-H\bH nor -\b-S\bS is speci-
fied, u\bul\bli\bim\bmi\bit\bt sets both the soft and hard limits.
The value of _\bl_\bi_\bm_\bi_\bt can be a number in the unit specified for the
- resource or one of the special values h\bha\bar\brd\bd, s\bso\bof\bft\bt, or u\bun\bnl\bli\bim\bmi\bit\bte\bed\bd,
- which stand for the current hard limit, the current soft limit,
- and no limit, respectively. If _\bl_\bi_\bm_\bi_\bt is omitted, u\bul\bli\bim\bmi\bit\bt prints
- the current value of the soft limit of the resource, unless the
- -\b-H\bH option is given. When more than one resource is specified,
- the limit name and unit, if appropriate, are printed before the
+ resource or one of the special values h\bha\bar\brd\bd, s\bso\bof\bft\bt, or u\bun\bnl\bli\bim\bmi\bit\bte\bed\bd,
+ which stand for the current hard limit, the current soft limit,
+ and no limit, respectively. If _\bl_\bi_\bm_\bi_\bt is omitted, u\bul\bli\bim\bmi\bit\bt prints
+ the current value of the soft limit of the resource, unless the
+ -\b-H\bH option is given. When more than one resource is specified,
+ the limit name and unit, if appropriate, are printed before the
value. Other options are interpreted as follows:
-\b-a\ba Report all current limits; no limits are set.
-\b-b\bb The maximum socket buffer size.
-\b-c\bc The maximum size of core files created.
-\b-d\bd The maximum size of a process's data segment.
-\b-e\be The maximum scheduling priority ("nice").
- -\b-f\bf The maximum size of files written by the shell and its
+ -\b-f\bf The maximum size of files written by the shell and its
children.
-\b-i\bi The maximum number of pending signals.
-\b-k\bk The maximum number of kqueues that may be allocated.
-\b-l\bl The maximum size that may be locked into memory.
- -\b-m\bm The maximum resident set size (many systems do not honor
+ -\b-m\bm The maximum resident set size (many systems do not honor
this limit).
-\b-n\bn The maximum number of open file descriptors (most systems
do not allow this value to be set).
-\b-r\br The maximum real-time scheduling priority.
-\b-s\bs The maximum stack size.
-\b-t\bt The maximum amount of cpu time in seconds.
- -\b-u\bu The maximum number of processes available to a single
+ -\b-u\bu The maximum number of processes available to a single
user.
- -\b-v\bv The maximum amount of virtual memory available to the
+ -\b-v\bv The maximum amount of virtual memory available to the
shell and, on some systems, to its children.
-\b-x\bx The maximum number of file locks.
-\b-P\bP The maximum number of pseudoterminals.
- -\b-R\bR The maximum time a real-time process can run before
+ -\b-R\bR The maximum time a real-time process can run before
blocking, in microseconds.
-\b-T\bT The maximum number of threads.
- If _\bl_\bi_\bm_\bi_\bt is supplied, and the -\b-a\ba option is not used, _\bl_\bi_\bm_\bi_\bt is
- the new value of the specified resource. If no option is sup-
+ If _\bl_\bi_\bm_\bi_\bt is supplied, and the -\b-a\ba option is not used, _\bl_\bi_\bm_\bi_\bt is
+ the new value of the specified resource. If no option is sup-
plied, then -\b-f\bf is assumed.
- Values are in 1024-byte increments, except for -\b-t\bt, which is in
- seconds; -\b-R\bR, which is in microseconds; -\b-p\bp, which is in units of
- 512-byte blocks; -\b-P\bP, -\b-T\bT, -\b-b\bb, -\b-k\bk, -\b-n\bn, and -\b-u\bu, which are unscaled
- values; and, when in posix mode, -\b-c\bc and -\b-f\bf, which are in
- 512-byte increments. The return status is 0 unless an invalid
+ Values are in 1024-byte increments, except for -\b-t\bt, which is in
+ seconds; -\b-R\bR, which is in microseconds; -\b-p\bp, which is in units of
+ 512-byte blocks; -\b-P\bP, -\b-T\bT, -\b-b\bb, -\b-k\bk, -\b-n\bn, and -\b-u\bu, which are unscaled
+ values; and, when in posix mode, -\b-c\bc and -\b-f\bf, which are in
+ 512-byte increments. The return status is 0 unless an invalid
option or argument is supplied, or an error occurs while setting
a new limit.
u\bum\bma\bas\bsk\bk [-\b-p\bp] [-\b-S\bS] [_\bm_\bo_\bd_\be]
- Set the user file-creation mask to _\bm_\bo_\bd_\be. If _\bm_\bo_\bd_\be begins with a
+ Set the user file-creation mask to _\bm_\bo_\bd_\be. If _\bm_\bo_\bd_\be begins with a
digit, it is interpreted as an octal number; otherwise it is in-
- terpreted as a symbolic mode mask similar to that accepted by
+ terpreted as a symbolic mode mask similar to that accepted by
_\bc_\bh_\bm_\bo_\bd(1). If _\bm_\bo_\bd_\be is omitted, u\bum\bma\bas\bsk\bk prints the current value of
the mask. The -\b-S\bS option without a _\bm_\bo_\bd_\be argument prints the mask
in a symbolic format; the default output is an octal number. If
the -\b-p\bp option is supplied, and _\bm_\bo_\bd_\be is omitted, the output is in
- a form that may be reused as input. The return status is zero
- if the mode was successfully changed or if no _\bm_\bo_\bd_\be argument was
+ a form that may be reused as input. The return status is zero
+ if the mode was successfully changed or if no _\bm_\bo_\bd_\be argument was
supplied, and non-zero otherwise.
u\bun\bna\bal\bli\bia\bas\bs [-a\ba] [_\bn_\ba_\bm_\be ...]
- Remove each _\bn_\ba_\bm_\be from the list of defined aliases. If -\b-a\ba is
- supplied, remove all alias definitions. The return value is
+ Remove each _\bn_\ba_\bm_\be from the list of defined aliases. If -\b-a\ba is
+ supplied, remove all alias definitions. The return value is
true unless a supplied _\bn_\ba_\bm_\be is not a defined alias.
u\bun\bns\bse\bet\bt [-f\bfv\bv] [-n\bn] [_\bn_\ba_\bm_\be ...]
- For each _\bn_\ba_\bm_\be, remove the corresponding variable or function.
+ For each _\bn_\ba_\bm_\be, remove the corresponding variable or function.
If the -\b-v\bv option is given, each _\bn_\ba_\bm_\be refers to a shell variable,
- and that variable is removed. If -\b-f\bf is specified, each _\bn_\ba_\bm_\be
- refers to a shell function, and the function definition is re-
- moved. If the -\b-n\bn option is supplied, and _\bn_\ba_\bm_\be is a variable
- with the _\bn_\ba_\bm_\be_\br_\be_\bf attribute, _\bn_\ba_\bm_\be will be unset rather than the
- variable it references. -\b-n\bn has no effect if the -\b-f\bf option is
- supplied. Read-only variables and functions may not be unset.
- When variables or functions are removed, they are also removed
- from the environment passed to subsequent commands. If no op-
- tions are supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is
- no variable by that name, a function with that name, if any, is
- unset. Some shell variables may not be unset. If any of
+ and that variable is removed. If -\b-f\bf is specified, each _\bn_\ba_\bm_\be
+ refers to a shell function, and the function definition is re-
+ moved. If the -\b-n\bn option is supplied, and _\bn_\ba_\bm_\be is a variable
+ with the _\bn_\ba_\bm_\be_\br_\be_\bf attribute, _\bn_\ba_\bm_\be will be unset rather than the
+ variable it references. -\b-n\bn has no effect if the -\b-f\bf option is
+ supplied. Read-only variables and functions may not be unset.
+ When variables or functions are removed, they are also removed
+ from the environment passed to subsequent commands. If no op-
+ tions are supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is
+ no variable by that name, a function with that name, if any, is
+ unset. Some shell variables may not be unset. If any of
B\bBA\bAS\bSH\bH_\b_A\bAL\bLI\bIA\bAS\bSE\bES\bS, B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV0\b0, B\bBA\bAS\bSH\bH_\b_C\bCM\bMD\bDS\bS, B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMM\bMA\bAN\bND\bD, B\bBA\bAS\bSH\bH_\b_S\bSU\bUB\bB-\b-
- S\bSH\bHE\bEL\bLL\bL, B\bBA\bAS\bSH\bHP\bPI\bID\bD, C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK, E\bEP\bPO\bOC\bCH\bHR\bRE\bEA\bAL\bLT\bTI\bIM\bME\bE,
- E\bEP\bPO\bOC\bCH\bHS\bSE\bEC\bCO\bON\bND\bDS\bS, F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE, G\bGR\bRO\bOU\bUP\bPS\bS, H\bHI\bIS\bST\bTC\bCM\bMD\bD, L\bLI\bIN\bNE\bEN\bNO\bO, R\bRA\bAN\bND\bDO\bOM\bM, S\bSE\bEC\bC-\b-
- O\bON\bND\bDS\bS, or S\bSR\bRA\bAN\bND\bDO\bOM\bM are unset, they lose their special properties,
- even if they are subsequently reset. The exit status is true
+ S\bSH\bHE\bEL\bLL\bL, B\bBA\bAS\bSH\bHP\bPI\bID\bD, C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK, E\bEP\bPO\bOC\bCH\bHR\bRE\bEA\bAL\bLT\bTI\bIM\bME\bE,
+ E\bEP\bPO\bOC\bCH\bHS\bSE\bEC\bCO\bON\bND\bDS\bS, F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE, G\bGR\bRO\bOU\bUP\bPS\bS, H\bHI\bIS\bST\bTC\bCM\bMD\bD, L\bLI\bIN\bNE\bEN\bNO\bO, R\bRA\bAN\bND\bDO\bOM\bM, S\bSE\bEC\bC-\b-
+ O\bON\bND\bDS\bS, or S\bSR\bRA\bAN\bND\bDO\bOM\bM are unset, they lose their special properties,
+ even if they are subsequently reset. The exit status is true
unless a _\bn_\ba_\bm_\be is readonly or may not be unset.
w\bwa\bai\bit\bt [-\b-f\bfn\bn] [-\b-p\bp _\bv_\ba_\br_\bn_\ba_\bm_\be] [_\bi_\bd ...]
Wait for each specified child process _\bi_\bd and return the termina-
- tion status of the last _\bi_\bd. Each _\bi_\bd may be a process ID _\bp_\bi_\bd or
- a job specification _\bj_\bo_\bb_\bs_\bp_\be_\bc; if a jobspec is supplied, w\bwa\bai\bit\bt
+ tion status of the last _\bi_\bd. Each _\bi_\bd may be a process ID _\bp_\bi_\bd or
+ a job specification _\bj_\bo_\bb_\bs_\bp_\be_\bc; if a jobspec is supplied, w\bwa\bai\bit\bt
waits for all processes in the job.
- If no options or _\bi_\bds are supplied, w\bwa\bai\bit\bt waits for all running
- background jobs and the last-executed process substitution, if
+ If no options or _\bi_\bds are supplied, w\bwa\bai\bit\bt waits for all running
+ background jobs and the last-executed process substitution, if
its process id is the same as $\b$!\b!, and the return status is zero.
- If the -\b-n\bn option is supplied, w\bwa\bai\bit\bt waits for any one of the
+ If the -\b-n\bn option is supplied, w\bwa\bai\bit\bt waits for any one of the
given _\bi_\bds or, if no _\bi_\bds are supplied, any job or process substi-
tution, to complete and returns its exit status. If none of the
- supplied _\bi_\bds is a child of the shell, or if no _\bi_\bds are supplied
- and the shell has no unwaited-for children, the exit status is
+ supplied _\bi_\bds is a child of the shell, or if no _\bi_\bds are supplied
+ and the shell has no unwaited-for children, the exit status is
127.
- If the -\b-p\bp option is supplied, w\bwa\bai\bit\bt assigns the process or job
- identifier of the job for which the exit status is returned to
- the variable _\bv_\ba_\br_\bn_\ba_\bm_\be named by the option argument. The vari-
- able, which cannot be readonly, will be unset initially, before
- any assignment. This is useful only when used with the -\b-n\bn op-
+ If the -\b-p\bp option is supplied, w\bwa\bai\bit\bt assigns the process or job
+ identifier of the job for which the exit status is returned to
+ the variable _\bv_\ba_\br_\bn_\ba_\bm_\be named by the option argument. The vari-
+ able, which cannot be readonly, will be unset initially, before
+ any assignment. This is useful only when used with the -\b-n\bn op-
tion.
- Supplying the -\b-f\bf option, when job control is enabled, forces
- w\bwa\bai\bit\bt to wait for each _\bi_\bd to terminate before returning its sta-
+ Supplying the -\b-f\bf option, when job control is enabled, forces
+ w\bwa\bai\bit\bt to wait for each _\bi_\bd to terminate before returning its sta-
tus, instead of returning when it changes status.
- If none of the _\bi_\bds specify one of the shell's active child
- processes, the return status is 127. If w\bwa\bai\bit\bt is interrupted by
- a signal, any _\bv_\ba_\br_\bn_\ba_\bm_\be will remain unset, and the return status
- will be greater than 128, as described under S\bSI\bIG\bGN\bNA\bAL\bLS\bS above.
+ If none of the _\bi_\bds specify one of the shell's active child
+ processes, the return status is 127. If w\bwa\bai\bit\bt is interrupted by
+ a signal, any _\bv_\ba_\br_\bn_\ba_\bm_\be will remain unset, and the return status
+ will be greater than 128, as described under S\bSI\bIG\bGN\bNA\bAL\bLS\bS above.
Otherwise, the return status is the exit status of the last _\bi_\bd.
S\bSH\bHE\bEL\bLL\bL C\bCO\bOM\bMP\bPA\bAT\bTI\bIB\bBI\bIL\bLI\bIT\bTY\bY M\bMO\bOD\bDE\bE
- Bash-4.0 introduced the concept of a _\bs_\bh_\be_\bl_\bl _\bc_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bi_\bl_\bi_\bt_\by _\bl_\be_\bv_\be_\bl, speci-
+ Bash-4.0 introduced the concept of a _\bs_\bh_\be_\bl_\bl _\bc_\bo_\bm_\bp_\ba_\bt_\bi_\bb_\bi_\bl_\bi_\bt_\by _\bl_\be_\bv_\be_\bl, speci-
fied as a set of options to the shopt builtin (c\bco\bom\bmp\bpa\bat\bt3\b31\b1, c\bco\bom\bmp\bpa\bat\bt3\b32\b2, c\bco\bom\bm-\b-
- p\bpa\bat\bt4\b40\b0, c\bco\bom\bmp\bpa\bat\bt4\b41\b1, and so on). There is only one current compatibility
+ p\bpa\bat\bt4\b40\b0, c\bco\bom\bmp\bpa\bat\bt4\b41\b1, and so on). There is only one current compatibility
level -- each option is mutually exclusive. The compatibility level is
- intended to allow users to select behavior from previous versions that
- is incompatible with newer versions while they migrate scripts to use
- current features and behavior. It's intended to be a temporary solu-
+ intended to allow users to select behavior from previous versions that
+ is incompatible with newer versions while they migrate scripts to use
+ current features and behavior. It's intended to be a temporary solu-
tion.
- This section does not mention behavior that is standard for a particu-
- lar version (e.g., setting c\bco\bom\bmp\bpa\bat\bt3\b32\b2 means that quoting the right hand
- side of the regexp matching operator quotes special regexp characters
- in the word, which is default behavior in bash-3.2 and subsequent ver-
+ This section does not mention behavior that is standard for a particu-
+ lar version (e.g., setting c\bco\bom\bmp\bpa\bat\bt3\b32\b2 means that quoting the right hand
+ side of the regexp matching operator quotes special regexp characters
+ in the word, which is default behavior in bash-3.2 and subsequent ver-
sions).
- If a user enables, say, c\bco\bom\bmp\bpa\bat\bt3\b32\b2, it may affect the behavior of other
- compatibility levels up to and including the current compatibility
- level. The idea is that each compatibility level controls behavior
- that changed in that version of b\bba\bas\bsh\bh, but that behavior may have been
- present in earlier versions. For instance, the change to use locale-
- based comparisons with the [\b[[\b[ command came in bash-4.1, and earlier
+ If a user enables, say, c\bco\bom\bmp\bpa\bat\bt3\b32\b2, it may affect the behavior of other
+ compatibility levels up to and including the current compatibility
+ level. The idea is that each compatibility level controls behavior
+ that changed in that version of b\bba\bas\bsh\bh, but that behavior may have been
+ present in earlier versions. For instance, the change to use locale-
+ based comparisons with the [\b[[\b[ command came in bash-4.1, and earlier
versions used ASCII-based comparisons, so enabling c\bco\bom\bmp\bpa\bat\bt3\b32\b2 will enable
- ASCII-based comparisons as well. That granularity may not be suffi-
- cient for all uses, and as a result users should employ compatibility
- levels carefully. Read the documentation for a particular feature to
+ ASCII-based comparisons as well. That granularity may not be suffi-
+ cient for all uses, and as a result users should employ compatibility
+ levels carefully. Read the documentation for a particular feature to
find out the current behavior.
- Bash-4.3 introduced a new shell variable: B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT. The value as-
+ Bash-4.3 introduced a new shell variable: B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT. The value as-
signed to this variable (a decimal version number like 4.2, or an inte-
- ger corresponding to the c\bco\bom\bmp\bpa\bat\bt_\bN_\bN option, like 42) determines the com-
+ ger corresponding to the c\bco\bom\bmp\bpa\bat\bt_\bN_\bN option, like 42) determines the com-
patibility level.
Starting with bash-4.4, b\bba\bas\bsh\bh began deprecating older compatibility lev-
els. Eventually, the options will be removed in favor of B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT.
- Bash-5.0 was the final version for which there was an individual shopt
- option for the previous version. B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT is the only mechanism to
+ Bash-5.0 was the final version for which there was an individual shopt
+ option for the previous version. B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT is the only mechanism to
control the compatibility level in versions newer than bash-5.0.
- The following table describes the behavior changes controlled by each
+ The following table describes the behavior changes controlled by each
compatibility level setting. The c\bco\bom\bmp\bpa\bat\bt_\bN_\bN tag is used as shorthand for
setting the compatibility level to _\bN_\bN using one of the following mecha-
- nisms. For versions prior to bash-5.0, the compatibility level may be
- set using the corresponding c\bco\bom\bmp\bpa\bat\bt_\bN_\bN shopt option. For bash-4.3 and
- later versions, the B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT variable is preferred, and it is re-
+ nisms. For versions prior to bash-5.0, the compatibility level may be
+ set using the corresponding c\bco\bom\bmp\bpa\bat\bt_\bN_\bN shopt option. For bash-4.3 and
+ later versions, the B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMP\bPA\bAT\bT variable is preferred, and it is re-
quired for bash-5.1 and later versions.
c\bco\bom\bmp\bpa\bat\bt3\b31\b1
ator (=~) has no special effect.
c\bco\bom\bmp\bpa\bat\bt3\b32\b2
- +\bo The <\b< and >\b> operators to the [\b[[\b[ command do not consider
+ +\bo The <\b< and >\b> operators to the [\b[[\b[ command do not consider
the current locale when comparing strings; they use ASCII
ordering.
c\bco\bom\bmp\bpa\bat\bt4\b40\b0
- +\bo The <\b< and >\b> operators to the [\b[[\b[ command do not consider
+ +\bo The <\b< and >\b> operators to the [\b[[\b[ command do not consider
the current locale when comparing strings; they use ASCII
ordering. B\bBa\bas\bsh\bh versions prior to bash-4.1 use ASCII col-
- lation and _\bs_\bt_\br_\bc_\bm_\bp(3); bash-4.1 and later use the current
+ lation and _\bs_\bt_\br_\bc_\bm_\bp(3); bash-4.1 and later use the current
locale's collation sequence and _\bs_\bt_\br_\bc_\bo_\bl_\bl(3).
c\bco\bom\bmp\bpa\bat\bt4\b41\b1
- +\bo In _\bp_\bo_\bs_\bi_\bx mode, t\bti\bim\bme\be may be followed by options and still
+ +\bo In _\bp_\bo_\bs_\bi_\bx mode, t\bti\bim\bme\be may be followed by options and still
be recognized as a reserved word (this is POSIX interpre-
tation 267).
+\bo In _\bp_\bo_\bs_\bi_\bx mode, the parser requires that an even number of
- single quotes occur in the _\bw_\bo_\br_\bd portion of a double-
- quoted parameter expansion and treats them specially, so
- that characters within the single quotes are considered
+ single quotes occur in the _\bw_\bo_\br_\bd portion of a double-
+ quoted parameter expansion and treats them specially, so
+ that characters within the single quotes are considered
quoted (this is POSIX interpretation 221).
c\bco\bom\bmp\bpa\bat\bt4\b42\b2
+\bo The replacement string in double-quoted pattern substitu-
- tion does not undergo quote removal, as it does in ver-
+ tion does not undergo quote removal, as it does in ver-
sions after bash-4.2.
- +\bo In posix mode, single quotes are considered special when
- expanding the _\bw_\bo_\br_\bd portion of a double-quoted parameter
- expansion and can be used to quote a closing brace or
- other special character (this is part of POSIX interpre-
- tation 221); in later versions, single quotes are not
+ +\bo In posix mode, single quotes are considered special when
+ expanding the _\bw_\bo_\br_\bd portion of a double-quoted parameter
+ expansion and can be used to quote a closing brace or
+ other special character (this is part of POSIX interpre-
+ tation 221); in later versions, single quotes are not
special within double-quoted word expansions.
c\bco\bom\bmp\bpa\bat\bt4\b43\b3
- +\bo Word expansion errors are considered non-fatal errors
- that cause the current command to fail, even in posix
- mode (the default behavior is to make them fatal errors
+ +\bo Word expansion errors are considered non-fatal errors
+ that cause the current command to fail, even in posix
+ mode (the default behavior is to make them fatal errors
that cause the shell to exit).
- +\bo When executing a shell function, the loop state
+ +\bo When executing a shell function, the loop state
(while/until/etc.) is not reset, so b\bbr\bre\bea\bak\bk or c\bco\bon\bnt\bti\bin\bnu\bue\be in
that function will break or continue loops in the calling
context. Bash-4.4 and later reset the loop state to pre-
vent this.
c\bco\bom\bmp\bpa\bat\bt4\b44\b4
- +\bo The shell sets up the values used by B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV and
- B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC so they can expand to the shell's positional
- parameters even if extended debugging mode is not en-
+ +\bo The shell sets up the values used by B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV and
+ B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC so they can expand to the shell's positional
+ parameters even if extended debugging mode is not en-
abled.
- +\bo A subshell inherits loops from its parent context, so
- b\bbr\bre\bea\bak\bk or c\bco\bon\bnt\bti\bin\bnu\bue\be will cause the subshell to exit.
- Bash-5.0 and later reset the loop state to prevent the
+ +\bo A subshell inherits loops from its parent context, so
+ b\bbr\bre\bea\bak\bk or c\bco\bon\bnt\bti\bin\bnu\bue\be will cause the subshell to exit.
+ Bash-5.0 and later reset the loop state to prevent the
exit
- +\bo Variable assignments preceding builtins like e\bex\bxp\bpo\bor\brt\bt and
+ +\bo Variable assignments preceding builtins like e\bex\bxp\bpo\bor\brt\bt and
r\bre\bea\bad\bdo\bon\bnl\bly\by that set attributes continue to affect variables
with the same name in the calling environment even if the
shell is not in posix mode.
c\bco\bom\bmp\bpa\bat\bt5\b50\b0
- +\bo Bash-5.1 changed the way $\b$R\bRA\bAN\bND\bDO\bOM\bM is generated to intro-
- duce slightly more randomness. If the shell compatibil-
+ +\bo Bash-5.1 changed the way $\b$R\bRA\bAN\bND\bDO\bOM\bM is generated to intro-
+ duce slightly more randomness. If the shell compatibil-
ity level is set to 50 or lower, it reverts to the method
- from bash-5.0 and previous versions, so seeding the ran-
- dom number generator by assigning a value to R\bRA\bAN\bND\bDO\bOM\bM will
+ from bash-5.0 and previous versions, so seeding the ran-
+ dom number generator by assigning a value to R\bRA\bAN\bND\bDO\bOM\bM will
produce the same sequence as in bash-5.0.
- +\bo If the command hash table is empty, bash versions prior
- to bash-5.1 printed an informational message to that ef-
- fect, even when producing output that can be reused as
- input. Bash-5.1 suppresses that message when the -\b-l\bl op-
+ +\bo If the command hash table is empty, bash versions prior
+ to bash-5.1 printed an informational message to that ef-
+ fect, even when producing output that can be reused as
+ input. Bash-5.1 suppresses that message when the -\b-l\bl op-
tion is supplied.
c\bco\bom\bmp\bpa\bat\bt5\b51\b1
- +\bo The u\bun\bns\bse\bet\bt builtin treats attempts to unset array sub-
- scripts @\b@ and *\b* differently depending on whether the ar-
- ray is indexed or associative, and differently than in
+ +\bo The u\bun\bns\bse\bet\bt builtin treats attempts to unset array sub-
+ scripts @\b@ and *\b* differently depending on whether the ar-
+ ray is indexed or associative, and differently than in
previous versions.
+\bo Arithmetic commands ( (\b((\b(...)\b))\b) ) and the expressions in an
arithmetic for statement can be expanded more than once.
- +\bo Expressions used as arguments to arithmetic operators in
- the [\b[[\b[ conditional command can be expanded more than
+ +\bo Expressions used as arguments to arithmetic operators in
+ the [\b[[\b[ conditional command can be expanded more than
once.
- +\bo The expressions in substring parameter brace expansion
+ +\bo The expressions in substring parameter brace expansion
can be expanded more than once.
+\bo The expressions in the $\b$(\b((\b(...)\b))\b) word expansion can be ex-
panded more than once.
- +\bo Arithmetic expressions used as indexed array subscripts
+ +\bo Arithmetic expressions used as indexed array subscripts
can be expanded more than once.
- +\bo t\bte\bes\bst\bt -\b-v\bv, when given an argument of A\bA[\b[@\b@]\b], where A\bA is an
+ +\bo t\bte\bes\bst\bt -\b-v\bv, when given an argument of A\bA[\b[@\b@]\b], where A\bA is an
existing associative array, will return true if the array
- has any set elements. Bash-5.2 will look for and report
+ has any set elements. Bash-5.2 will look for and report
on a key named @\b@.
+\bo The ${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br[\b[:\b:]\b]=\b=_\bv_\ba_\bl_\bu_\be} word expansion will return
- _\bv_\ba_\bl_\bu_\be, before any variable-specific transformations have
+ _\bv_\ba_\bl_\bu_\be, before any variable-specific transformations have
been performed (e.g., converting to lowercase). Bash-5.2
will return the final value assigned to the variable.
- +\bo Parsing command substitutions will behave as if extended
+ +\bo Parsing command substitutions will behave as if extended
globbing (see the description of the s\bsh\bho\bop\bpt\bt builtin above)
- is enabled, so that parsing a command substitution con-
+ is enabled, so that parsing a command substitution con-
taining an extglob pattern (say, as part of a shell func-
- tion) will not fail. This assumes the intent is to en-
- able extglob before the command is executed and word ex-
- pansions are performed. It will fail at word expansion
- time if extglob hasn't been enabled by the time the com-
+ tion) will not fail. This assumes the intent is to en-
+ able extglob before the command is executed and word ex-
+ pansions are performed. It will fail at word expansion
+ time if extglob hasn't been enabled by the time the com-
mand is executed.
c\bco\bom\bmp\bpa\bat\bt5\b52\b2
- +\bo The t\bte\bes\bst\bt builtin uses its historical algorithm to parse
- parenthesized subexpressions when given five or more ar-
+ +\bo The t\bte\bes\bst\bt builtin uses its historical algorithm to parse
+ parenthesized subexpressions when given five or more ar-
guments.
- +\bo If the -\b-p\bp or -\b-P\bP option is supplied to the b\bbi\bin\bnd\bd builtin,
+ +\bo If the -\b-p\bp or -\b-P\bP option is supplied to the b\bbi\bin\bnd\bd builtin,
b\bbi\bin\bnd\bd treats any arguments remaining after option process-
- ing as bindable command names, and displays any key se-
- quences bound to those commands, instead of treating the
+ ing as bindable command names, and displays any key se-
+ quences bound to those commands, instead of treating the
arguments as key sequences to bind.
R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL
If b\bba\bas\bsh\bh is started with the name r\brb\bba\bas\bsh\bh, or the -\b-r\br option is supplied at
- invocation, the shell becomes _\br_\be_\bs_\bt_\br_\bi_\bc_\bt_\be_\bd. A restricted shell is used
- to set up an environment more controlled than the standard shell. It
- behaves identically to b\bba\bas\bsh\bh with the exception that the following are
+ invocation, the shell becomes _\br_\be_\bs_\bt_\br_\bi_\bc_\bt_\be_\bd. A restricted shell is used
+ to set up an environment more controlled than the standard shell. It
+ behaves identically to b\bba\bas\bsh\bh with the exception that the following are
disallowed or not performed:
+\bo Changing directories with c\bcd\bd.
- +\bo Setting or unsetting the values of S\bSH\bHE\bEL\bLL\bL, P\bPA\bAT\bTH\bH, H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE, E\bEN\bNV\bV,
+ +\bo Setting or unsetting the values of S\bSH\bHE\bEL\bLL\bL, P\bPA\bAT\bTH\bH, H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE, E\bEN\bNV\bV,
or B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV.
+\bo Specifying command names containing /\b/.
- +\bo Specifying a filename containing a /\b/ as an argument to the .\b.
+ +\bo Specifying a filename containing a /\b/ as an argument to the .\b.
builtin command.
- +\bo Using the -\b-p\bp option to the .\b. builtin command to specify a
+ +\bo Using the -\b-p\bp option to the .\b. builtin command to specify a
search path.
- +\bo Specifying a filename containing a slash as an argument to the
+ +\bo Specifying a filename containing a slash as an argument to the
h\bhi\bis\bst\bto\bor\bry\by builtin command.
- +\bo Specifying a filename containing a slash as an argument to the
+ +\bo Specifying a filename containing a slash as an argument to the
-\b-p\bp option to the h\bha\bas\bsh\bh builtin command.
- +\bo Importing function definitions from the shell environment at
+ +\bo Importing function definitions from the shell environment at
startup.
- +\bo Parsing the value of S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS from the shell environment at
+ +\bo Parsing the value of S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS from the shell environment at
startup.
- +\bo Redirecting output using the >, >|, <>, >&, &>, and >> redirec-
+ +\bo Redirecting output using the >, >|, <>, >&, &>, and >> redirec-
tion operators.
+\bo Using the e\bex\bxe\bec\bc builtin command to replace the shell with another
command.
- +\bo Adding or deleting builtin commands with the -\b-f\bf and -\b-d\bd options
+ +\bo Adding or deleting builtin commands with the -\b-f\bf and -\b-d\bd options
to the e\ben\bna\bab\bbl\ble\be builtin command.
- +\bo Using the e\ben\bna\bab\bbl\ble\be builtin command to enable disabled shell
+ +\bo Using the e\ben\bna\bab\bbl\ble\be builtin command to enable disabled shell
builtins.
+\bo Specifying the -\b-p\bp option to the c\bco\bom\bmm\bma\ban\bnd\bd builtin command.
- +\bo Turning off restricted mode with s\bse\bet\bt +\b+r\br or s\bsh\bho\bop\bpt\bt -\b-u\bu r\bre\be-\b-
+ +\bo Turning off restricted mode with s\bse\bet\bt +\b+r\br or s\bsh\bho\bop\bpt\bt -\b-u\bu r\bre\be-\b-
s\bst\btr\bri\bic\bct\bte\bed\bd_\b_s\bsh\bhe\bel\bll\bl.
These restrictions are enforced after any startup files are read.
When a command that is found to be a shell script is executed (see C\bCO\bOM\bM-\b-
- M\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN above), r\brb\bba\bas\bsh\bh turns off any restrictions in the shell
+ M\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN above), r\brb\bba\bas\bsh\bh turns off any restrictions in the shell
spawned to execute the script.
S\bSE\bEE\bE A\bAL\bLS\bSO\bO
_\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc
The individual per-interactive-shell startup file
_\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bl_\bo_\bg_\bo_\bu_\bt
- The individual login shell cleanup file, executed when a login
+ The individual login shell cleanup file, executed when a login
shell exits
_\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bh_\bi_\bs_\bt_\bo_\br_\by
- The default value of H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE, the file in which bash saves the
+ The default value of H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE, the file in which bash saves the
command history
_\b~_\b/_\b._\bi_\bn_\bp_\bu_\bt_\br_\bc
Individual _\br_\be_\ba_\bd_\bl_\bi_\bn_\be initialization file
B\bBU\bUG\bG R\bRE\bEP\bPO\bOR\bRT\bTS\bS
If you find a bug in b\bba\bas\bsh\bh, you should report it. But first, you should
- make sure that it really is a bug, and that it appears in the latest
- version of b\bba\bas\bsh\bh. The latest version is always available from
+ make sure that it really is a bug, and that it appears in the latest
+ version of b\bba\bas\bsh\bh. The latest version is always available from
_\bf_\bt_\bp_\b:_\b/_\b/_\bf_\bt_\bp_\b._\bg_\bn_\bu_\b._\bo_\br_\bg_\b/_\bp_\bu_\bb_\b/_\bg_\bn_\bu_\b/_\bb_\ba_\bs_\bh_\b/ and _\bh_\bt_\bt_\bp_\b:_\b/_\b/_\bg_\bi_\bt_\b._\bs_\ba_\bv_\ba_\bn_\b-
_\bn_\ba_\bh_\b._\bg_\bn_\bu_\b._\bo_\br_\bg_\b/_\bc_\bg_\bi_\bt_\b/_\bb_\ba_\bs_\bh_\b._\bg_\bi_\bt_\b/_\bs_\bn_\ba_\bp_\bs_\bh_\bo_\bt_\b/_\bb_\ba_\bs_\bh_\b-_\bm_\ba_\bs_\bt_\be_\br_\b._\bt_\ba_\br_\b._\bg_\bz.
- Once you have determined that a bug actually exists, use the _\bb_\ba_\bs_\bh_\bb_\bu_\bg
- command to submit a bug report. If you have a fix, you are encouraged
+ Once you have determined that a bug actually exists, use the _\bb_\ba_\bs_\bh_\bb_\bu_\bg
+ command to submit a bug report. If you have a fix, you are encouraged
to mail that as well! You may send suggestions and "philosophical" bug
- reports to _\bb_\bu_\bg_\b-_\bb_\ba_\bs_\bh_\b@_\bg_\bn_\bu_\b._\bo_\br_\bg or post them to the Usenet newsgroup
+ reports to _\bb_\bu_\bg_\b-_\bb_\ba_\bs_\bh_\b@_\bg_\bn_\bu_\b._\bo_\br_\bg or post them to the Usenet newsgroup
g\bgn\bnu\bu.\b.b\bba\bas\bsh\bh.\b.b\bbu\bug\bg.
ALL bug reports should include:
A description of the bug behaviour
A short script or "recipe" which exercises the bug
- _\bb_\ba_\bs_\bh_\bb_\bu_\bg inserts the first three items automatically into the template
+ _\bb_\ba_\bs_\bh_\bb_\bu_\bg inserts the first three items automatically into the template
it provides for filing a bug report.
Comments and bug reports concerning this manual page should be directed
Shell builtin commands and functions are not stoppable/restartable.
- Compound commands and command lists of the form "a ; b ; c" are not
- handled gracefully when combined with process suspension. When a
- process is stopped, the shell immediately executes the next command in
- the list or breaks out of any existing loops. It suffices to enclose
- the command in parentheses to force it into a subshell, which may be
- stopped as a unit, or to start the command in the background and imme-
+ Compound commands and command lists of the form "a ; b ; c" are not
+ handled gracefully when combined with process suspension. When a
+ process is stopped, the shell immediately executes the next command in
+ the list or breaks out of any existing loops. It suffices to enclose
+ the command in parentheses to force it into a subshell, which may be
+ stopped as a unit, or to start the command in the background and imme-
diately bring it into the foreground.
Array variables may not (yet) be exported.
-GNU Bash 5.3 2024 November 29 _\bB_\bA_\bS_\bH(1)
+GNU Bash 5.3 2024 December 12 _\bB_\bA_\bS_\bH(1)
--- /dev/null
+%!PS-Adobe-3.0
+%%Creator: groff version 1.23.0
+%%CreationDate: Fri Dec 13 09:15:08 2024
+%%DocumentNeededResources: font Times-Italic
+%%+ font Times-Roman
+%%+ font Times-Bold
+%%+ font Courier
+%%+ font Symbol
+%%+ font Courier-Bold
+%%DocumentSuppliedResources: procset grops 1.23 0
+%%Pages: 96
+%%PageOrder: Ascend
+%%DocumentMedia: Default 612 792 0 () ()
+%%Orientation: Portrait
+%%EndComments
+%%BeginDefaults
+%%PageMedia: Default
+%%EndDefaults
+%%BeginProlog
+%%BeginResource: procset grops 1.23 0
+%!PS-Adobe-3.0 Resource-ProcSet
+/setpacking where{
+pop
+currentpacking
+true setpacking
+}if
+/grops 120 dict dup begin
+% The ASCII code of the space character.
+/SC 32 def
+/A/show load def
+/B{0 SC 3 -1 roll widthshow}bind def
+/C{0 exch ashow}bind def
+/D{0 exch 0 SC 5 2 roll awidthshow}bind def
+/E{0 rmoveto show}bind def
+/F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
+/G{0 rmoveto 0 exch ashow}bind def
+/H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/I{0 exch rmoveto show}bind def
+/J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
+/K{0 exch rmoveto 0 exch ashow}bind def
+/L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/M{rmoveto show}bind def
+/N{rmoveto 0 SC 3 -1 roll widthshow}bind def
+/O{rmoveto 0 exch ashow}bind def
+/P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+/Q{moveto show}bind def
+/R{moveto 0 SC 3 -1 roll widthshow}bind def
+/S{moveto 0 exch ashow}bind def
+/T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
+% name size font SF -
+/SF{
+findfont exch
+[exch dup 0 exch 0 exch neg 0 0]makefont
+dup setfont
+[exch/setfont cvx]cvx bind def
+}bind def
+% name a c d font MF -
+/MF{
+findfont
+[5 2 roll
+0 3 1 roll % b
+neg 0 0]makefont
+dup setfont
+[exch/setfont cvx]cvx bind def
+}bind def
+/level0 0 def
+/RES 0 def
+/PL 0 def
+/LS 0 def
+% Enable manual feed.
+% MANUAL -
+/MANUAL{
+statusdict begin/manualfeed true store end
+}bind def
+% Guess the page length.
+% This assumes that the imageable area is vertically centered on the page.
+% PLG - length
+/PLG{
+gsave newpath clippath pathbbox grestore
+exch pop add exch pop
+}bind def
+% BP -
+/BP{
+/level0 save def
+1 setlinecap
+1 setlinejoin
+DEFS/BPhook known{DEFS begin BPhook end}if
+72 RES div dup scale
+LS{
+90 rotate
+}{
+0 PL translate
+}ifelse
+1 -1 scale
+}bind def
+/EP{
+level0 restore
+showpage
+}def
+% centerx centery radius startangle endangle DA -
+/DA{
+newpath arcn stroke
+}bind def
+% x y SN - x' y'
+% round a position to nearest (pixel + (.25,.25))
+/SN{
+transform
+.25 sub exch .25 sub exch
+round .25 add exch round .25 add exch
+itransform
+}bind def
+% endx endy startx starty DL -
+% we round the endpoints of the line, so that parallel horizontal
+% and vertical lines will appear even
+/DL{
+SN
+moveto
+SN
+lineto stroke
+}bind def
+% centerx centery radius DC -
+/DC{
+newpath 0 360 arc closepath
+}bind def
+/TM matrix def
+% width height centerx centery DE -
+/DE{
+TM currentmatrix pop
+translate scale newpath 0 0 .5 0 360 arc closepath
+TM setmatrix
+}bind def
+% these are for splines
+/RC/rcurveto load def
+/RL/rlineto load def
+/ST/stroke load def
+/MT/moveto load def
+/CL/closepath load def
+% fill the last path
+% r g b Fr -
+/Fr{
+setrgbcolor fill
+}bind def
+% c m y k Fk -
+/setcmykcolor where{
+pop
+/Fk{
+setcmykcolor fill
+}bind def
+}if
+% g Fg -
+/Fg{
+setgray fill
+}bind def
+% fill with the "current color"
+/FL/fill load def
+/LW/setlinewidth load def
+/Cr/setrgbcolor load def
+/setcmykcolor where{
+pop
+/Ck/setcmykcolor load def
+}if
+/Cg/setgray load def
+% new_font_name encoding_vector old_font_name RE -
+/RE{
+findfont
+dup maxlength 1 index/FontName known not{1 add}if dict begin
+{
+1 index/FID ne
+2 index/UniqueID ne
+and
+{def}{pop pop}ifelse
+}forall
+/Encoding exch def
+dup/FontName exch def
+currentdict end definefont pop
+}bind def
+/DEFS 0 def
+% hpos vpos EBEGIN -
+/EBEGIN{
+moveto
+DEFS begin
+}bind def
+/EEND/end load def
+/CNT 0 def
+/level1 0 def
+% llx lly newwid wid newht ht newllx newlly PBEGIN -
+/PBEGIN{
+/level1 save def
+translate
+div 3 1 roll div exch scale
+neg exch neg exch translate
+% set the graphics state to default values
+0 setgray
+0 setlinecap
+1 setlinewidth
+0 setlinejoin
+10 setmiterlimit
+[]0 setdash
+/setstrokeadjust where{
+pop
+false setstrokeadjust
+}if
+/setoverprint where{
+pop
+false setoverprint
+}if
+newpath
+/CNT countdictstack def
+userdict begin
+/showpage{}def
+%
+% Any included setpagedevice should be ignored.
+% See: http://www.w-beer.de/doc/ps/.
+%
+/setpagedevice{}def
+mark
+}bind def
+/PEND{
+cleartomark
+countdictstack CNT sub{end}repeat
+level1 restore
+}bind def
+end def
+/setpacking where{
+pop
+setpacking
+}if
+%%EndResource
+%%EndProlog
+%%BeginSetup
+%%BeginFeature: *PageSize Default
+<< /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice
+%%EndFeature
+%%IncludeResource: font Times-Italic
+%%IncludeResource: font Times-Roman
+%%IncludeResource: font Times-Bold
+%%IncludeResource: font Courier
+%%IncludeResource: font Symbol
+%%IncludeResource: font Courier-Bold
+grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
+def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
+/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
+/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
+/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
+/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
+/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
+/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
+/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
+/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex
+/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y
+/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft
+/guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl
+/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
+/dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
+/quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen
+/brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft
+/logicalnot/minus/registered/macron/degree/plusminus/twosuperior
+/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior
+/ordmasculine/guilsinglright/onequarter/onehalf/threequarters
+/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE
+/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
+/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
+/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn
+/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
+/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
+/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash
+/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
+/Courier-Bold@0 ENC0/Courier-Bold RE/Courier@0 ENC0/Courier RE
+/Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
+/Times-Italic@0 ENC0/Times-Italic RE
+%%EndSetup
+%%Page: 1 1
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10.95/Times-Bold@0 SF -.219(NA)72 84 S(ME).219 E
+F1(bash \255 GNU Bourne-Ag)108 96 Q(ain SHell)-.05 E F2(SYNOPSIS)72
+112.8 Q/F3 10/Times-Bold@0 SF(bash)108 124.8 Q F1
+([options] [command_string | \214le])2.5 E F2(COPYRIGHT)72 141.6 Q F1
+(Bash is Cop)108 153.6 Q(yright \251 1989-2024 by the Free Softw)-.1 E
+(are F)-.1 E(oundation, Inc.)-.15 E F2(DESCRIPTION)72 170.4 Q F3(Bash)
+108 182.4 Q F1 .973(is an)3.474 F F3(sh)3.473 E F1 .973
+(-compatible command language interpreter that e)B -.15(xe)-.15 G .973
+(cutes commands read from the standard).15 F .289
+(input, from a string, or from a \214le.)108 194.4 R F3(Bash)5.289 E F1
+.289(also incorporates useful features from the)2.789 F F0 -.4(Ko)2.789
+G(rn).4 E F1(and)2.789 E F0(C)2.789 E F1 .289(shells \()2.789 F F3(ksh)A
+F1(and)108 206.4 Q F3(csh)2.5 E F1(\).)A .694(POSIX is the name for a f)
+108 223.2 R .694(amily of computing standards based on Unix.)-.1 F F3
+(Bash)5.694 E F1 .693(is intended to be a confor)3.193 F(-)-.2 E 1.097(\
+mant implementation of the Shell and Utilities portion of the IEEE POSI\
+X speci\214cation \(IEEE Standard)108 235.2 R(1003.1\).)108 247.2 Q F3
+(Bash)5 E F1(can be con\214gured to be POSIX-conformant by def)2.5 E
+(ault.)-.1 E F2(OPTIONS)72 264 Q F1 .483(All of the single-character sh\
+ell options documented in the description of the)108 276 R F3(set)2.983
+E F1 -.2(bu)2.983 G .483(iltin command, includ-).2 F(ing)108 288 Q F3
+<ad6f>2.718 E F1 2.718(,c)C .218
+(an be used as options when the shell is in)-2.718 F -.2(vo)-.4 G -.1
+(ke).2 G 2.718(d. In).1 F(addition,)2.719 E F3(bash)2.719 E F1 .219
+(interprets the follo)2.719 F .219(wing options)-.25 F(when it is in)108
+300 Q -.2(vo)-.4 G -.1(ke).2 G(d:).1 E F3<ad63>108 316.8 Q F1 .868
+(If the)158 316.8 R F3<ad63>3.368 E F1 .867(option is present, then com\
+mands are read from the \214rst non-option ar)3.368 F(gument)-.18 E F0
+(com-)3.567 E(mand_string)158 328.8 Q F1 5.726(.I).22 G 3.226(ft)-5.726
+G .726(here are ar)-3.226 F .727(guments after the)-.18 F F0
+(command_string)3.427 E F1 3.227(,t).22 G .727(he \214rst ar)-3.227 F
+.727(gument is assigned)-.18 F(to)158 340.8 Q F3($0)2.919 E F1 .419
+(and an)2.919 F 2.919(yr)-.15 G .419(emaining ar)-2.919 F .418
+(guments are assigned to the positional parameters.)-.18 F .418
+(The assignment)5.418 F(to)158 352.8 Q F3($0)2.5 E F1
+(sets the name of the shell, which is used in w)2.5 E
+(arning and error messages.)-.1 E F3<ad69>108 369.6 Q F1(If the)158
+369.6 Q F3<ad69>2.5 E F1(option is present, the shell is)2.5 E F0(inter)
+2.51 E(active)-.15 E F1(.).18 E F3<ad6c>108 386.4 Q F1(Mak)158 386.4 Q
+(e)-.1 E F3(bash)2.5 E F1(act as if it had been in)2.5 E -.2(vo)-.4 G
+-.1(ke).2 G 2.5(da).1 G 2.5(sal)-2.5 G(ogin shell \(see)-2.5 E/F4 9
+/Times-Bold@0 SF(INV)2.5 E(OCA)-.405 E(TION)-.855 E F1(belo)2.25 E(w\).)
+-.25 E F3<ad72>108 403.2 Q F1(If the)158 403.2 Q F3<ad72>2.5 E F1
+(option is present, the shell becomes)2.5 E F0 -.37(re)2.5 G(stricted)
+.37 E F1(\(see)3.27 E F4(RESTRICTED SHELL)2.5 E F1(belo)2.25 E(w\).)-.25
+E F3<ad73>108 420 Q F1 .929(If the)158 420 R F3<ad73>3.429 E F1 .929
+(option is present, or if no ar)3.429 F .93
+(guments remain after option processing, the shell reads)-.18 F 1.693
+(commands from the standard input.)158 432 R 1.692(This option allo)
+6.692 F 1.692(ws the positional parameters to be set)-.25 F(when in)158
+444 Q -.2(vo)-.4 G(king an interacti).2 E .3 -.15(ve s)-.25 H
+(hell or when reading input through a pipe.).15 E F3<ad44>108 460.8 Q F1
+1.065(Print a list of all double-quoted strings preceded by)158 460.8 R
+F3($)3.566 E F1 1.066(on the standard output.)3.566 F 1.066
+(These are the)6.066 F 1.47(strings that are subject to language transl\
+ation when the current locale is not)158 472.8 R F3(C)3.97 E F1(or)3.97
+E F3(POSIX)3.97 E F1(.)A(This implies the)158 484.8 Q F3<ad6e>2.5 E F1
+(option; no commands will be e)2.5 E -.15(xe)-.15 G(cuted.).15 E F3
+([\255+]O [)108 501.6 Q F0(shopt_option)A F3(])A F0(shopt_option)158
+513.6 Q F1 1.097(is one of the shell options accepted by the)3.596 F F3
+(shopt)3.597 E F1 -.2(bu)3.597 G 1.097(iltin \(see).2 F F4 1.097
+(SHELL B)3.597 F(UIL)-.09 E(TIN)-.828 E(COMMANDS)158 525.6 Q F1(belo)
+3.003 E 3.253(w\). If)-.25 F F0(shopt_option)3.253 E F1 .753
+(is present,)3.253 F F3<ad4f>3.253 E F1 .753(sets the v)3.253 F .753
+(alue of that option;)-.25 F F3(+O)3.252 E F1(unsets)3.252 E 3.456
+(it. If)158 537.6 R F0(shopt_option)3.456 E F1 .957(is not supplied,)
+3.457 F F3(bash)3.457 E F1 .957(prints the names and v)3.457 F .957
+(alues of the shell options ac-)-.25 F .276(cepted by)158 549.6 R F3
+(shopt)2.776 E F1 .276(on the standard output.)2.776 F .276(If the in)
+5.276 F -.2(vo)-.4 G .276(cation option is).2 F F3(+O)2.775 E F1 2.775
+(,t)C .275(he output is displayed)-2.775 F
+(in a format that may be reused as input.)158 561.6 Q F3<adad>108 578.4
+Q F1(A)158 578.4 Q F3<adad>3.363 E F1 .864
+(signals the end of options and disables further option processing.)
+3.363 F(An)5.864 E 3.364(ya)-.15 G -.18(rg)-3.364 G .864(uments after)
+.18 F(the)158 590.4 Q F3<adad>3.559 E F1 1.059
+(are treated as a shell script \214lename \(see belo)3.559 F 1.059
+(w\) and ar)-.25 F 1.058(guments passed to that script.)-.18 F(An ar)158
+602.4 Q(gument of)-.18 E F3<ad>2.5 E F1(is equi)2.5 E -.25(va)-.25 G
+(lent to).25 E F3<adad>2.5 E F1(.)A F3(Bash)108 619.2 Q F1 .303
+(also interprets a number of multi-character options.)2.803 F .304
+(These options must appear on the command line)5.303 F
+(before the single-character options to be recognized.)108 631.2 Q F3
+<adad646562>108 648 Q(ugger)-.2 E F1 .475(Arrange for the deb)144 660 R
+.475(ugger pro\214le to be e)-.2 F -.15(xe)-.15 G .475
+(cuted before the shell starts.).15 F -.45(Tu)5.474 G .474(rns on e).45
+F .474(xtended deb)-.15 F(ug-)-.2 E
+(ging mode \(see the description of the)144 672 Q F3(extdeb)2.5 E(ug)-.2
+E F1(option to the)2.5 E F3(shopt)2.5 E F1 -.2(bu)2.5 G(iltin belo).2 E
+(w\).)-.25 E F3(\255\255dump\255po\255strings)108 688.8 Q F1(Equi)144
+700.8 Q -.25(va)-.25 G(lent to).25 E F3<ad44>2.5 E F1 2.5(,b)C
+(ut the output is in the GNU)-2.7 E F0 -.1(ge)2.5 G(tte).1 E(xt)-.2 E F1
+(\231po\232 \(portable object\) \214le format.)2.5 E(GNU Bash 5.3)72 768
+Q(2024 December 12)136.795 E(1)190.955 E 0 Cg EP
+%%Page: 2 2
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(\255\255dump\255strings)108
+84 Q F1(Equi)144 96 Q -.25(va)-.25 G(lent to).25 E F2<ad44>2.5 E F1(.)A
+F2(\255\255help)108 112.8 Q F1
+(Display a usage message on standard output and e)144 112.8 Q
+(xit successfully)-.15 E(.)-.65 E F2<adad696e6974ad8c6c65>108 129.6 Q F0
+(\214le)2.5 E F2<adad72>108 141.6 Q(c\214le)-.18 E F0(\214le)2.5 E F1
+(Ex)144 153.6 Q 1.167(ecute commands from)-.15 F F0(\214le)5.577 E F1
+1.168(instead of the standard personal initialization \214le)3.847 F F0
+(\001/.bashr)5.334 E(c)-.37 E F1 1.168(if the)5.334 F
+(shell is interacti)144 165.6 Q .3 -.15(ve \()-.25 H(see).15 E/F3 9
+/Times-Bold@0 SF(INV)2.5 E(OCA)-.405 E(TION)-.855 E F1(belo)2.25 E(w\).)
+-.25 E F2(\255\255login)108 182.4 Q F1(Equi)144 194.4 Q -.25(va)-.25 G
+(lent to).25 E F2<ad6c>2.5 E F1(.)A F2(\255\255noediting)108 211.2 Q F1
+(Do not use the GNU)144 223.2 Q F2 -.18(re)2.5 G(adline).18 E F1
+(library to read command lines when the shell is interacti)2.5 E -.15
+(ve)-.25 G(.).15 E F2(\255\255nopr)108 240 Q(o\214le)-.18 E F1 .017
+(Do not read either the system-wide startup \214le)144 252 R F0(/etc/pr)
+4.183 E(o\214le)-.45 E F1 .017(or an)4.183 F 2.517(yo)-.15 G 2.517(ft)
+-2.517 G .017(he personal initialization \214les)-2.517 F F0
+(\001/.bash_pr)145.666 264 Q(o\214le)-.45 E F1(,)1.666 E F0
+(\001/.bash_lo)5.579 E(gin)-.1 E F1 3.913(,o)1.666 G(r)-3.913 E F0
+(\001/.pr)5.579 E(o\214le)-.45 E F1 6.413(.B)1.666 G 3.913(yd)-6.413 G
+(ef)-3.913 E(ault,)-.1 E F2(bash)3.913 E F1 1.414
+(reads these \214les when it is in-)3.913 F -.2(vo)144 276 S -.1(ke).2 G
+2.5(da).1 G 2.5(sal)-2.5 G(ogin shell \(see)-2.5 E F3(INV)2.5 E(OCA)
+-.405 E(TION)-.855 E F1(belo)2.25 E(w\).)-.25 E F2<adad6e6f72>108 292.8
+Q(c)-.18 E F1 .855(Do not read and e)144 292.8 R -.15(xe)-.15 G .855
+(cute the personal initialization \214le).15 F F0(\001/.bashr)5.02 E(c)
+-.37 E F1 .854(if the shell is interacti)5.02 F -.15(ve)-.25 G 5.854(.T)
+.15 G(his)-5.854 E(option is on by def)144 304.8 Q
+(ault if the shell is in)-.1 E -.2(vo)-.4 G -.1(ke).2 G 2.5(da).1 G(s)
+-2.5 E F2(sh)2.5 E F1(.)A F2(\255\255posix)108 321.6 Q F1 1.782
+(Change the beha)144 333.6 R 1.782(vior of)-.2 F F2(bash)4.282 E F1
+1.782(where the def)4.282 F 1.782(ault operation dif)-.1 F 1.782
+(fers from the POSIX standard to)-.25 F .333(match the standard \()144
+345.6 R F0 .333(posix mode)B F1 2.833(\). See)B F3 .333(SEE ALSO)2.833 F
+F1(belo)2.583 E 2.833(wf)-.25 G .332
+(or a reference to a document that details)-2.833 F(ho)144 357.6 Q 2.5
+(wp)-.25 G(osix mode af)-2.5 E(fects)-.25 E F2(Bash)2.5 E F1 1.1 -.55
+('s b)D(eha).55 E(vior)-.2 E(.)-.55 E F2<adad72>108 374.4 Q(estricted)
+-.18 E F1(The shell becomes restricted \(see)144 386.4 Q F3
+(RESTRICTED SHELL)2.5 E F1(belo)2.25 E(w\).)-.25 E F2<adad76>108 403.2 Q
+(erbose)-.1 E F1(Equi)144 415.2 Q -.25(va)-.25 G(lent to).25 E F2<ad76>
+2.5 E F1(.)A F2<adad76>108 432 Q(ersion)-.1 E F1(Sho)144 444 Q 2.5(wv)
+-.25 G(ersion information for this instance of)-2.65 E F2(bash)2.5 E F1
+(on the standard output and e)2.5 E(xit successfully)-.15 E(.)-.65 E/F4
+10.95/Times-Bold@0 SF(ARGUMENTS)72 460.8 Q F1 .016(If ar)108 472.8 R
+.016(guments remain after option processing, and neither the)-.18 F F2
+<ad63>2.516 E F1 .016(nor the)2.516 F F2<ad73>2.516 E F1 .016
+(option has been supplied, the \214rst)2.516 F(ar)108 484.8 Q .11(gumen\
+t is assumed to be the name of a \214le containing shell commands \(a)
+-.18 F F0 .109(shell script)2.609 F F1 2.609(\). If)B F2(bash)2.609 E F1
+.109(is in)2.609 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E .256(in this f)108
+496.8 R(ashion,)-.1 E F2($0)2.756 E F1 .257(is set to the name of the \
+\214le, and the positional parameters are set to the remaining ar)2.756
+F(gu-)-.18 E(ments.)108 508.8 Q F2(Bash)5.2 E F1 .2(reads and e)2.7 F
+-.15(xe)-.15 G .2(cutes commands from this \214le, then e).15 F(xits.)
+-.15 E F2(Bash)5.199 E F1 1.299 -.55('s e)D .199(xit status is the e).4
+F .199(xit status of)-.15 F .732(the last command e)108 520.8 R -.15(xe)
+-.15 G .732(cuted in the script.).15 F .733(If no commands are e)5.732 F
+-.15(xe)-.15 G .733(cuted, the e).15 F .733(xit status is 0.)-.15 F .733
+(Bash \214rst at-)5.733 F .087
+(tempts to open the \214le in the current directory)108 532.8 R 2.587
+(,a)-.65 G .086
+(nd, if no \214le is found, then searches the directories in)-2.587 F F3
+-.666(PA)2.586 G(TH)-.189 E F1(for the script.)108 544.8 Q F4(INV)72
+561.6 Q(OCA)-.493 E(TION)-1.04 E F1(A)108 573.6 Q F0(lo)2.5 E(gin shell)
+-.1 E F1(is one whose \214rst character of ar)2.5 E(gument zero is a)
+-.18 E F2<ad>2.5 E F1 2.5(,o)C 2.5(ro)-2.5 G(ne started with the)-2.5 E
+F2(\255\255login)2.5 E F1(option.)2.5 E(An)108 590.4 Q F0(inter)2.733 E
+(active)-.15 E F1 .234(shell is one started without non-option ar)2.733
+F .234(guments \(unless)-.18 F F2<ad73>2.734 E F1 .234
+(is speci\214ed\) and without the)2.734 F F2<ad63>2.734 E F1 2.787(opti\
+on, whose standard input and standard error are both connected to termi\
+nals \(as determined by)108 602.4 R F0(isatty)108.01 614.4 Q F1 .375
+(\(3\)\), or one started with the).32 F F2<ad69>2.875 E F1(option.)2.875
+E F2(Bash)5.375 E F1(sets)2.875 E F3(PS1)2.876 E F1(and)2.626 E F2<24ad>
+2.876 E F1(includes)2.876 E F2(i)2.876 E F1 .376
+(if the shell is interacti)2.876 F -.15(ve)-.25 G 2.876(,s).15 G 2.876
+(oa)-2.876 G(shell script or a startup \214le can test this state.)108
+626.4 Q .033(The follo)108 643.2 R .033(wing paragraphs describe ho)-.25
+F(w)-.25 E F2(bash)2.532 E F1 -.15(exe)2.532 G .032
+(cutes its startup \214les.).15 F .032(If an)5.032 F 2.532(yo)-.15 G
+2.532(ft)-2.532 G .032(he \214les e)-2.532 F .032(xist b)-.15 F .032
+(ut cannot be)-.2 F(read,)108 655.2 Q F2(bash)2.599 E F1 .099
+(reports an error)2.599 F 5.099(.T)-.55 G .099(ildes are e)-5.449 F .099
+(xpanded in \214lenames as described belo)-.15 F 2.6(wu)-.25 G(nder)-2.6
+E F2 -.18(Ti)2.6 G .1(lde Expansion).18 F F1(in)2.6 E(the)108 667.2 Q F3
+(EXP)2.5 E(ANSION)-.666 E F1(section.)2.25 E(When)108 684 Q F2(bash)
+2.896 E F1 .396(is in)2.896 F -.2(vo)-.4 G -.1(ke).2 G 2.896(da).1 G
+2.896(sa)-2.896 G 2.896(ni)-2.896 G(nteracti)-2.896 E .696 -.15(ve l)
+-.25 H .396(ogin shell, or as a non-interacti).15 F .695 -.15(ve s)-.25
+H .395(hell with the).15 F F2(\255\255login)2.895 E F1 .395(option, it)
+2.895 F 1.137(\214rst reads and e)108 696 R -.15(xe)-.15 G 1.137
+(cutes commands from the \214le).15 F F0(/etc/pr)5.303 E(o\214le)-.45 E
+F1 3.638(,i)1.666 G 3.638(ft)-3.638 G 1.138(hat \214le e)-3.638 F 3.638
+(xists. After)-.15 F 1.138(reading that \214le, it)3.638 F .707
+(looks for)108 708 R F0(\001/.bash_pr)4.873 E(o\214le)-.45 E F1(,)1.666
+E F0(\001/.bash_lo)4.873 E(gin)-.1 E F1 3.207(,a)1.666 G(nd)-3.207 E F0
+(\001/.pr)4.873 E(o\214le)-.45 E F1 3.207(,i)1.666 G 3.206(nt)-3.207 G
+.706(hat order)-3.206 F 3.206(,a)-.4 G .706(nd reads and e)-3.206 F -.15
+(xe)-.15 G .706(cutes commands).15 F .182(from the \214rst one that e)
+108 720 R .182(xists and is readable.)-.15 F(The)5.183 E F2
+(\255\255nopr)2.683 E(o\214le)-.18 E F1 .183
+(option may be used when the shell is started)2.683 F(GNU Bash 5.3)72
+768 Q(2024 December 12)136.795 E(2)190.955 E 0 Cg EP
+%%Page: 3 3
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(to inhibit this beha)108 84 Q(vior)-.2 E(.)-.55 E
+1.104(When an interacti)108 100.8 R 1.404 -.15(ve l)-.25 H 1.104
+(ogin shell e).15 F 1.104(xits, or a non-interacti)-.15 F 1.404 -.15
+(ve l)-.25 H 1.104(ogin shell e).15 F -.15(xe)-.15 G 1.104(cutes the).15
+F/F2 10/Times-Bold@0 SF(exit)3.604 E F1 -.2(bu)3.604 G 1.104
+(iltin command,).2 F F2(bash)108 112.8 Q F1(reads and e)2.5 E -.15(xe)
+-.15 G(cutes commands from the \214le).15 E F0(\001/.bash_lo)4.166 E
+(gout)-.1 E F1 2.5(,i)1.666 G 2.5(fi)-2.5 G 2.5(te)-2.5 G(xists.)-2.65 E
+1.697(When an interacti)108 129.6 R 1.997 -.15(ve s)-.25 H 1.698
+(hell that is not a login shell is started,).15 F F2(bash)4.198 E F1
+1.698(reads and e)4.198 F -.15(xe)-.15 G 1.698(cutes commands from).15 F
+F0(\001/.bashr)109.666 141.6 Q(c)-.37 E F1 3.956(,i)1.666 G 3.956(ft)
+-3.956 G 1.456(hat \214le e)-3.956 F 3.955(xists. The)-.15 F F2
+<adad6e6f72>3.955 E(c)-.18 E F1 1.455(option inhibits this beha)3.955 F
+(vior)-.2 E 6.455(.T)-.55 G(he)-6.455 E F2<adad72>3.955 E(c\214le)-.18 E
+F0(\214le)3.955 E F1 1.455(option causes)3.955 F F2(bash)108 153.6 Q F1
+(to use)2.5 E F0(\214le)2.5 E F1(instead of)2.5 E F0(\001/.bashr)4.166 E
+(c)-.37 E F1(.)1.666 E(When)108 170.4 Q F2(bash)5.305 E F1 2.805
+(is started non-interacti)5.305 F -.15(ve)-.25 G(ly).15 E 5.305(,t)-.65
+G 5.305(or)-5.305 G 2.806(un a shell script, for e)-5.305 F 2.806
+(xample, it looks for the v)-.15 F(ariable)-.25 E/F3 9/Times-Bold@0 SF
+-.27(BA)108 182.4 S(SH_ENV).27 E F1 1.011(in the en)3.261 F 1.011
+(vironment, e)-.4 F 1.01(xpands its v)-.15 F 1.01
+(alue if it appears there, and uses the e)-.25 F 1.01(xpanded v)-.15 F
+1.01(alue as the)-.25 F(name of a \214le to read and e)108 194.4 Q -.15
+(xe)-.15 G(cute.).15 E F2(Bash)5 E F1(beha)2.5 E -.15(ve)-.2 G 2.5(sa)
+.15 G 2.5(si)-2.5 G 2.5(ft)-2.5 G(he follo)-2.5 E(wing command were e)
+-.25 E -.15(xe)-.15 G(cuted:).15 E/F4 10/Courier@0 SF
+(if [ \255n "$BASH_ENV" ]; then . "$BASH_ENV"; fi)144 211.2 Q F1 -.2(bu)
+108 228 S 2.5(td).2 G(oes not use the v)-2.5 E(alue of the)-.25 E F3
+-.666(PA)2.5 G(TH)-.189 E F1 -.25(va)2.25 G
+(riable to search for the \214lename.).25 E(If)108 244.8 Q F2(bash)3.417
+E F1 .917(is in)3.417 F -.2(vo)-.4 G -.1(ke).2 G 3.417(dw).1 G .917
+(ith the name)-3.417 F F2(sh)3.417 E F1 3.417(,i)C 3.417(tt)-3.417 G
+.917(ries to mimic the startup beha)-3.417 F .917(vior of historical v)
+-.2 F .917(ersions of)-.15 F F2(sh)3.417 E F1(as)3.417 E .145
+(closely as possible, while conforming to the POSIX standard as well.)
+108 256.8 R .145(When in)5.145 F -.2(vo)-.4 G -.1(ke).2 G 2.645(da).1 G
+2.645(sa)-2.645 G 2.645(ni)-2.645 G(nteracti)-2.645 E .445 -.15(ve l)
+-.25 H(ogin).15 E 1.263(shell, or a non-interacti)108 268.8 R 1.563 -.15
+(ve s)-.25 H 1.264(hell with the).15 F F2(\255\255login)3.764 E F1 1.264
+(option, it \214rst attempts to read and e)3.764 F -.15(xe)-.15 G 1.264
+(cute commands).15 F(from)108 280.8 Q F0(/etc/pr)5.383 E(o\214le)-.45 E
+F1(and)5.383 E F0(\001/.pr)5.383 E(o\214le)-.45 E F1 3.717(,i)1.666 G
+3.717(nt)-3.717 G 1.217(hat order)-3.717 F 6.217(.T)-.55 G(he)-6.217 E
+F2(\255\255nopr)3.717 E(o\214le)-.18 E F1 1.217
+(option inhibits this beha)3.717 F(vior)-.2 E 6.216(.W)-.55 G 1.216
+(hen in-)-6.216 F -.2(vo)108 292.8 S -.1(ke).2 G 2.508(da).1 G 2.508(sa)
+-2.508 G 2.508(ni)-2.508 G(nteracti)-2.508 E .308 -.15(ve s)-.25 H .008
+(hell with the name).15 F F2(sh)2.508 E F1(,)A F2(bash)2.508 E F1 .008
+(looks for the v)2.508 F(ariable)-.25 E F3(ENV)2.508 E/F5 9
+/Times-Roman@0 SF(,)A F1 -.15(ex)2.258 G .008(pands its v).15 F .009
+(alue if it is de-)-.25 F .775(\214ned, and uses the e)108 304.8 R .775
+(xpanded v)-.15 F .774(alue as the name of a \214le to read and e)-.25 F
+-.15(xe)-.15 G 3.274(cute. Since).15 F 3.274(as)3.274 G .774(hell in)
+-3.274 F -.2(vo)-.4 G -.1(ke).2 G 3.274(da).1 G(s)-3.274 E F2(sh)3.274 E
+F1 .396(does not attempt to read and e)108 316.8 R -.15(xe)-.15 G .396
+(cute commands from an).15 F 2.896(yo)-.15 G .396
+(ther startup \214les, the)-2.896 F F2<adad72>2.896 E(c\214le)-.18 E F1
+.397(option has no ef-)2.896 F 3.871(fect. A)108 328.8 R(non-interacti)
+3.871 E 1.671 -.15(ve s)-.25 H 1.371(hell in).15 F -.2(vo)-.4 G -.1(ke)
+.2 G 3.871(dw).1 G 1.371(ith the name)-3.871 F F2(sh)3.871 E F1 1.37
+(does not attempt to read an)3.871 F 3.87(yo)-.15 G 1.37
+(ther startup \214les.)-3.87 F(When in)108 340.8 Q -.2(vo)-.4 G -.1(ke)
+.2 G 2.5(da).1 G(s)-2.5 E F2(sh)2.5 E F1(,)A F2(bash)2.5 E F1
+(enters posix mode after reading the startup \214les.)2.5 E(When)108
+357.6 Q F2(bash)2.793 E F1 .294(is started in posix mode, as with the)
+2.793 F F2(\255\255posix)2.794 E F1 .294(command line option, it follo)
+2.794 F .294(ws the POSIX stan-)-.25 F .621(dard for startup \214les.)
+108 369.6 R .621(In this mode, interacti)5.621 F .921 -.15(ve s)-.25 H
+.621(hells e).15 F .621(xpand the)-.15 F F3(ENV)3.121 E F1 -.25(va)2.87
+G .62(riable and read and e).25 F -.15(xe)-.15 G .62(cute com-).15 F
+(mands from the \214le whose name is the e)108 381.6 Q(xpanded v)-.15 E
+2.5(alue. No)-.25 F(other startup \214les are read.)2.5 E F2(Bash)108
+398.4 Q F1 .224(attempts to determine when it is being run with its sta\
+ndard input connected to a netw)2.723 F .224(ork connection,)-.1 F .85
+(as when e)108 410.4 R -.15(xe)-.15 G .85
+(cuted by the historical and rarely-seen remote shell daemon, usually)
+.15 F F0 -.1(rs)3.35 G(hd).1 E F1 3.35(,o)C 3.35(rt)-3.35 G .85
+(he secure shell)-3.35 F(daemon)108 422.4 Q F0(sshd)3.875 E F1 6.375(.I)
+C(f)-6.375 E F2(bash)3.875 E F1 1.376
+(determines it is being run non-interacti)3.875 F -.15(ve)-.25 G 1.376
+(ly in this f).15 F 1.376(ashion, it reads and e)-.1 F -.15(xe)-.15 G
+(cutes).15 E .384(commands from)108 434.4 R F0(\001/.bashr)4.549 E(c)
+-.37 E F1 2.883(,i)1.666 G 2.883(ft)-2.883 G .383(hat \214le e)-2.883 F
+.383(xists and is readable.)-.15 F F2(Bash)5.383 E F1 .383
+(does not read this \214le if in)2.883 F -.2(vo)-.4 G -.1(ke).2 G 2.883
+(da).1 G(s)-2.883 E F2(sh)2.883 E F1(.)A(The)108 446.4 Q F2<adad6e6f72>
+2.76 E(c)-.18 E F1 .26(option inhibits this beha)2.76 F(vior)-.2 E 2.76
+(,a)-.4 G .26(nd the)-2.76 F F2<adad72>2.761 E(c\214le)-.18 E F1 .261
+(option mak)2.761 F(es)-.1 E F2(bash)2.761 E F1 .261(use a dif)2.761 F
+.261(ferent \214le instead of)-.25 F F0(\001/.bashr)109.666 458.4 Q(c)
+-.37 E F1 2.65(,b)1.666 G .15(ut neither)-2.85 F F0 -.1(rs)2.65 G(hd).1
+E F1(nor)2.65 E F0(sshd)2.65 E F1 .149(generally in)2.65 F -.2(vo)-.4 G
+.349 -.1(ke t).2 H .149(he shell with those options or allo).1 F 2.649
+(wt)-.25 G .149(hem to be spec-)-2.649 F(i\214ed.)108 470.4 Q .433
+(If the shell is started with the ef)108 487.2 R(fecti)-.25 E .733 -.15
+(ve u)-.25 H .433
+(ser \(group\) id not equal to the real user \(group\) id, and the).15 F
+F2<ad70>2.934 E F1(op-)2.934 E 1.124(tion is not supplied, no startup \
+\214les are read, shell functions are not inherited from the en)108
+499.2 R 1.124(vironment, the)-.4 F F3(SHELLOPTS)108 511.2 Q F5(,)A F3
+-.27(BA)2.959 G(SHOPTS).27 E F5(,)A F3(CDP)2.959 E -.855(AT)-.666 G(H)
+.855 E F5(,)A F1(and)2.959 E F3(GLOBIGNORE)3.209 E F1 -.25(va)2.959 G
+.709(riables, if the).25 F 3.209(ya)-.15 G .71(ppear in the en)-3.209 F
+.71(vironment, are)-.4 F .905(ignored, and the ef)108 523.2 R(fecti)-.25
+E 1.205 -.15(ve u)-.25 H .904(ser id is set to the real user id.).15 F
+.904(If the)5.904 F F2<ad70>3.404 E F1 .904(option is supplied at in)
+3.404 F -.2(vo)-.4 G .904(cation, the).2 F(startup beha)108 535.2 Q
+(vior is the same, b)-.2 E(ut the ef)-.2 E(fecti)-.25 E .3 -.15(ve u)
+-.25 H(ser id is not reset.).15 E/F6 10.95/Times-Bold@0 SF(DEFINITIONS)
+72 552 Q F1(The follo)108 564 Q
+(wing de\214nitions are used throughout the rest of this document.)-.25
+E F2(blank)108 576 Q F1 2.5(As)144 576 S(pace or tab)-2.5 E(.)-.4 E F2
+(whitespace)108 588 Q F1 2.587(Ac)144 600 S .087
+(haracter belonging to the)-2.587 F F2(space)2.587 E F1 .088
+(character class in the current locale, or for which)2.587 F F0(isspace)
+2.588 E F1 .088(\(3\) re-)B(turns true.)144 612 Q F2 -.1(wo)108 624 S
+(rd).1 E F1 2.5(As)144 624 S
+(equence of characters considered as a single unit by the shell.)-2.5 E
+(Also kno)5 E(wn as a)-.25 E F2(tok)2.5 E(en)-.1 E F1(.)A F2(name)108
+636 Q F1(A)144 636 Q F0(wor)3.006 E(d)-.37 E F1 .165
+(consisting only of alphanumeric characters and underscores, and be)
+3.436 F .165(ginning with an alpha-)-.15 F
+(betic character or an underscore.)144 648 Q(Also referred to as an)5 E
+F2(identi\214er)2.5 E F1(.)A F2(metacharacter)108 660 Q F1 2.5(Ac)144
+672 S(haracter that, when unquoted, separates w)-2.5 E 2.5(ords. One)-.1
+F(of the follo)2.5 E(wing:)-.25 E F2 5(|&;\(\)<>s)144 684 S 2.5
+(pace tab newline)-5 F(contr)108 696 Q(ol operator)-.18 E F1(A)144 708 Q
+F0(tok)2.5 E(en)-.1 E F1(that performs a control function.)2.5 E
+(It is one of the follo)5 E(wing symbols:)-.25 E F2 2.5
+(|| & && ; ;; ;& ;;& \( \) | |&)144 720 R(<newline>)10 E F1
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(3)190.955 E 0 Cg EP
+%%Page: 4 4
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10.95/Times-Bold@0 SF(RESER)72 84 Q(VED W)-.602
+E(ORDS)-.11 E F0 .306(Reserved wor)108 96 R(ds)-.37 E F1 .306(are w)
+2.806 F .306(ords that ha)-.1 F .606 -.15(ve a s)-.2 H .306
+(pecial meaning to the shell.).15 F .307(The follo)5.307 F .307(wing w)
+-.25 F .307(ords are recognized as)-.1 F(reserv)108 108 Q .314
+(ed when unquoted and either the \214rst w)-.15 F .314
+(ord of a command \(see)-.1 F/F3 9/Times-Bold@0 SF .313(SHELL GRAMMAR)
+2.813 F F1(belo)2.563 E .313(w\), the third)-.25 F -.1(wo)108 120 S .643
+(rd of a).1 F/F4 10/Times-Bold@0 SF(case)3.143 E F1(or)3.143 E F4
+(select)3.143 E F1 .643(command \(only)3.143 F F4(in)3.143 E F1 .643
+(is v)3.143 F .643(alid\), or the third w)-.25 F .643(ord of a)-.1 F F4
+-.25(fo)3.143 G(r).25 E F1 .644(command \(only)3.143 F F4(in)3.144 E F1
+(and)3.144 E F4(do)3.144 E F1(are v)108 132 Q(alid\):)-.25 E F4 11.295
+(!c)144 148.8 S 8.795(ase copr)-11.295 F 8.795
+(oc do done elif else esac \214 f)-.18 F 8.795
+(or function if in select then)-.25 F 7.5(until while { } time [[ ]])144
+160.8 R F2(SHELL GRAMMAR)72 177.6 Q F1
+(This section describes the syntax of the v)108 189.6 Q
+(arious forms of shell commands.)-.25 E F4(Simple Commands)87 206.4 Q F1
+(A)108 218.4 Q F0 .388(simple command)2.888 F F1 .388
+(is a sequence of optional v)2.888 F .389(ariable assignments follo)-.25
+F .389(wed by)-.25 F F4(blank)2.889 E F1 .389(-separated w)B .389
+(ords and)-.1 F .816(redirections, and terminated by a)108 230.4 R F0
+(contr)3.316 E .815(ol oper)-.45 F(ator)-.15 E F1 5.815(.T)C .815
+(he \214rst w)-5.815 F .815(ord speci\214es the command to be e)-.1 F
+-.15(xe)-.15 G(cuted,).15 E(and is passed as ar)108 242.4 Q
+(gument zero.)-.18 E(The remaining w)5 E(ords are passed as ar)-.1 E
+(guments to the in)-.18 E -.2(vo)-.4 G -.1(ke).2 G 2.5(dc).1 G(ommand.)
+-2.5 E(The return v)108 259.2 Q(alue of a)-.25 E F0(simple command)2.5 E
+F1(is its e)2.5 E(xit status, or 128+)-.15 E F0(n)A F1
+(if the command is terminated by signal)3.333 E F0(n)2.86 E F1(.).24 E
+F4(Pipelines)87 276 Q F1(A)108 288 Q F0(pipeline)2.996 E F1 .496(is a s\
+equence of one or more commands separated by one of the control operato\
+rs)2.996 F F4(|)2.996 E F1(or)2.996 E F4(|&)2.996 E F1 5.496(.T)C(he)
+-5.496 E(format for a pipeline is:)108 300 Q([)144 316.8 Q F4(time)A F1
+([)2.5 E F4<ad70>A F1(]] [ ! ])A F0(command1)2.5 E F1 2.5([[)2.5 G F4(|)
+-2.5 E/F5 10/Symbol SF<ef>A F4(|&)A F1(])A F0(command2)2.5 E F1 -3.332
+1.666(... ])2.5 H .8(The standard output of)108 333.6 R F0(command1)3.5
+E F1 .799(is connected via a pipe to the standard input of)3.3 F F0
+(command2)3.499 E F1 5.799(.T).02 G .799(his con-)-5.799 F .214
+(nection is performed before an)108 345.6 R 2.714(yr)-.15 G .214
+(edirections speci\214ed by the)-2.714 F F0(command1)2.915 E F1(\(see)A
+F3(REDIRECTION)2.715 E F1(belo)2.465 E 2.715(w\). If)-.25 F F4(|&)2.715
+E F1 .3(is the pipeline operator)108 357.6 R(,)-.4 E F0(command1)2.8 E
+F1 1.4 -.55('s s)D .3(tandard error).55 F 2.8(,i)-.4 G 2.8(na)-2.8 G .3
+(ddition to its standard output, is connected to)-2.8 F F0(com-)2.8 E
+(mand2)108 369.6 Q F1 1.751 -.55('s s)D .651
+(tandard input through the pipe; it is shorthand for).55 F F4 .651
+(2>&1 |)3.151 F F1 5.651(.T)C .652
+(his implicit redirection of the stan-)-5.651 F
+(dard error to the standard output is performed after an)108 381.6 Q 2.5
+(yr)-.15 G(edirections speci\214ed by)-2.5 E F0(command1)2.5 E F1(.)A
+.48(The return status of a pipeline is the e)108 398.4 R .48
+(xit status of the last command, unless the)-.15 F F4(pipefail)2.98 E F1
+.48(option is enabled.)2.98 F(If)108 410.4 Q F4(pipefail)2.686 E F1 .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 422.4 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 F4(!)3.11 E F1 .61
+(precedes a pipeline, the)5.61 F -.15(ex)108 434.4 S .408
+(it status of that pipeline is the logical ne).15 F -.05(ga)-.15 G .408
+(tion of the e).05 F .408(xit status as described abo)-.15 F -.15(ve)
+-.15 G 5.408(.I).15 G 2.908(fap)-5.408 G .408(ipeline is e)-2.908 F -.15
+(xe)-.15 G(-).15 E(cuted synchronously)108 446.4 Q 2.5(,t)-.65 G
+(he shell w)-2.5 E(aits for all commands in the pipeline to terminate b\
+efore returning a v)-.1 E(alue.)-.25 E .358(If the)108 463.2 R F4(time)
+2.858 E F1(reserv)2.858 E .358(ed w)-.15 F .358(ord precedes a pipeline\
+, the shell reports the elapsed as well as user and system time)-.1 F
+.553(consumed by its e)108 475.2 R -.15(xe)-.15 G .554
+(cution when the pipeline terminates.).15 F(The)5.554 E F4<ad70>3.054 E
+F1 .554(option changes the output format to that)3.054 F .352
+(speci\214ed by POSIX.)108 487.2 R .352
+(When the shell is in posix mode, it does not recognize)5.352 F F4(time)
+2.852 E F1 .352(as a reserv)2.852 F .352(ed w)-.15 F .352(ord if the)-.1
+F(ne)108 499.2 Q .043(xt tok)-.15 F .043(en be)-.1 F .043
+(gins with a \231\255\232.)-.15 F .044(The v)5.043 F .044(alue of the)
+-.25 F F3(TIMEFORMA)2.544 E(T)-.855 E F1 -.25(va)2.294 G .044
+(riable is a format string that speci\214es ho).25 F(w)-.25 E .26
+(the timing information should be displayed; see the description of)108
+511.2 R F3(TIMEFORMA)2.76 E(T)-.855 E F1(belo)2.509 E 2.759(wu)-.25 G
+(nder)-2.759 E F4 .259(Shell V)2.759 F(ari-)-.92 E(ables)108 523.2 Q F1
+(.)A .287(When the shell is in posix mode,)108 540 R F4(time)2.787 E F1
+.287(may appear by itself as the only w)2.787 F .287
+(ord in a simple command.)-.1 F .288(In this)5.288 F .604(case, the she\
+ll displays the total user and system time consumed by the shell and it\
+s children.)108 552 R(The)5.603 E F3(TIME-)3.103 E(FORMA)108 564 Q(T)
+-.855 E F1 -.25(va)2.25 G
+(riable speci\214es the format of the time information.).25 E .303(Each\
+ command in a multi-command pipeline, where pipes are created, is e)108
+580.8 R -.15(xe)-.15 G .304(cuted in a).15 F F0(subshell)2.804 E F1
+2.804(,w)C .304(hich is a)-2.804 F .208(separate process.)108 592.8 R
+(See)5.208 E F3 .208(COMMAND EXECUTION ENVIR)2.708 F(ONMENT)-.27 E F1
+.208(for a description of subshells and a sub-)2.458 F .926(shell en)108
+604.8 R 3.426(vironment. If)-.4 F(the)3.427 E F4(lastpipe)3.427 E F1
+.927(option is enabled using the)3.427 F F4(shopt)3.427 E F1 -.2(bu)
+3.427 G .927(iltin \(see the description of).2 F F4(shopt)3.427 E F1
+(belo)108 616.8 Q(w\), and job control is not acti)-.25 E -.15(ve)-.25 G
+2.5(,t).15 G
+(he last element of a pipeline may be run by the shell process.)-2.5 E
+F4(Lists)87 633.6 Q F1(A)108 645.6 Q F0(list)2.85 E F1 .35(is a sequenc\
+e of one or more pipelines separated by one of the operators)2.85 F F4
+(;)2.849 E F1(,)A F4(&)2.849 E F1(,)A F4(&&)2.849 E F1 2.849(,o)C(r)
+-2.849 E F4(||)2.849 E F1 2.849(,a)C .349(nd option-)-2.849 F
+(ally terminated by one of)108 657.6 Q F4(;)2.5 E F1(,)A F4(&)2.5 E F1
+2.5(,o)C(r)-2.5 E F4(<newline>)2.5 E F1(.)A .96
+(Of these list operators,)108 674.4 R F4(&&)3.46 E F1(and)3.46 E F4(||)
+3.46 E F1(ha)3.46 E 1.26 -.15(ve e)-.2 H .961(qual precedence, follo).15
+F .961(wed by)-.25 F F4(;)3.461 E F1(and)3.461 E F4(&)3.461 E F1 3.461
+(,w)C .961(hich ha)-3.461 F 1.261 -.15(ve e)-.2 H .961(qual prece-).15 F
+(dence.)108 686.4 Q 2.5(As)108 703.2 S(equence of one or more ne)-2.5 E
+(wlines may appear in a)-.25 E F0(list)2.5 E F1
+(instead of a semicolon to delimit commands.)2.5 E .029
+(If a command is terminated by the control operator)108 720 R F4(&)2.529
+E F1 2.529(,t)C .029(he shell e)-2.529 F -.15(xe)-.15 G .029
+(cutes the command in the).15 F F0(bac)2.528 E(kgr)-.2 E(ound)-.45 E F1
+(in)2.528 E(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(4)190.955 E
+0 Cg EP
+%%Page: 5 5
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E 2.678(as)108 84 S 2.678(ubshell. The)-2.678 F .178
+(shell does not w)2.678 F .178
+(ait for the command to \214nish, and the return status is 0.)-.1 F .178
+(These are referred)5.178 F .779(to as)108 96 R F0(async)3.279 E(hr)-.15
+E(onous)-.45 E F1 3.279(commands. Commands)3.279 F .779(separated by a)
+3.279 F/F2 10/Times-Bold@0 SF(;)3.279 E F1 .779(are e)3.279 F -.15(xe)
+-.15 G .778(cuted sequentially; the shell w).15 F .778(aits for)-.1 F
+(each command to terminate in turn.)108 108 Q
+(The return status is the e)5 E(xit status of the last command e)-.15 E
+-.15(xe)-.15 G(cuted.).15 E .171(AND and OR lists are sequences of one \
+or more pipelines separated by the)108 124.8 R F2(&&)2.672 E F1(and)
+2.672 E F2(||)2.672 E F1 .172(control operators, re-)2.672 F(specti)108
+136.8 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 F0(command1)144 153.6 Q F2(&&)
+2.5 E F0(command2)2.5 E(command2)108.2 170.4 Q F1(is e)2.52 E -.15(xe)
+-.15 G(cuted if, and only if,).15 E F0(command1)2.7 E F1(returns an e)
+2.5 E(xit status of zero \(success\).)-.15 E(An OR list has the form)108
+187.2 Q F0(command1)144 204 Q F2(||)2.5 E F0(command2)2.5 E(command2)
+108.2 220.8 Q F1 .435(is e)2.955 F -.15(xe)-.15 G .435
+(cuted if, and only if,).15 F F0(command1)3.135 E F1 .435
+(returns a non-zero e)2.935 F .435(xit status.)-.15 F .434
+(The return status of AND)5.434 F(and OR lists is the e)108 232.8 Q
+(xit status of the last command e)-.15 E -.15(xe)-.15 G
+(cuted in the list.).15 E F2(Compound Commands)87 249.6 Q F1(A)108 261.6
+Q F0 1.053(compound command)3.553 F F1 1.053(is one of the follo)3.553 F
+3.553(wing. In)-.25 F 1.053(most cases a)3.553 F F0(list)3.553 E F1
+1.054(in a command')3.554 F 3.554(sd)-.55 G 1.054(escription may be)
+-3.554 F 1.027(separated from the rest of the command by one or more ne)
+108 273.6 R 1.026(wlines, and may be follo)-.25 F 1.026(wed by a ne)-.25
+F 1.026(wline in)-.25 F(place of a semicolon.)108 285.6 Q(\()108 302.4 Q
+F0(list)A F1(\))A F0(list)144 302.4 Q F1 .214(is e)2.714 F -.15(xe)-.15
+G .215(cuted in a subshell \(see).15 F/F3 9/Times-Bold@0 SF .215
+(COMMAND EXECUTION ENVIR)2.715 F(ONMENT)-.27 E F1(belo)2.465 E 2.715(wf)
+-.25 G .215(or a descrip-)-2.715 F .21(tion of a subshell en)144 314.4 R
+2.709(vironment\). V)-.4 F .209(ariable assignments and b)-1.11 F .209
+(uiltin commands that af)-.2 F .209(fect the shell')-.25 F(s)-.55 E(en)
+144 326.4 Q 1.068(vironment do not remain in ef)-.4 F 1.069
+(fect after the command completes.)-.25 F 1.069
+(The return status is the e)6.069 F(xit)-.15 E(status of)144 338.4 Q F0
+(list)2.5 E F1(.)A({)108 355.2 Q F0(list)2.5 E F1 2.5(;})C F0(list)144
+355.2 Q F1 .715(is e)3.215 F -.15(xe)-.15 G .715
+(cuted in the current shell en).15 F(vironment.)-.4 E F0(list)5.714 E F1
+.714(must be terminated with a ne)3.214 F .714(wline or semi-)-.25 F 2.5
+(colon. This)144 367.2 R(is kno)2.5 E(wn as a)-.25 E F0(gr)2.5 E
+(oup command)-.45 E F1 5(.T)C(he return status is the e)-5 E
+(xit status of)-.15 E F0(list)2.5 E F1(.)A .243(Note that unlik)144 384
+R 2.743(et)-.1 G .243(he metacharacters)-2.743 F F2(\()2.743 E F1(and)
+2.743 E F2(\))2.744 E F1(,)A F2({)2.744 E F1(and)2.744 E F2(})2.744 E F1
+(are)2.744 E F0 -.37(re)2.744 G .244(served wor).37 F(ds)-.37 E F1 .244
+(and must occur where a re-)2.744 F(serv)144 396 Q .952(ed w)-.15 F .951
+(ord is permitted to be recognized.)-.1 F .951(Since the)5.951 F 3.451
+(yd)-.15 G 3.451(on)-3.451 G .951(ot cause a w)-3.451 F .951
+(ord break, the)-.1 F 3.451(ym)-.15 G .951(ust be)-3.451 F
+(separated from)144 408 Q F0(list)2.5 E F1
+(by whitespace or another shell metacharacter)2.5 E(.)-.55 E(\(\()108
+424.8 Q F0 -.2(ex)C(pr).2 E(ession)-.37 E F1(\)\))A 2.213
+(The arithmetic)144 436.8 R F0 -.2(ex)4.713 G(pr).2 E(ession)-.37 E F1
+2.213(is e)4.713 F -.25(va)-.25 G 2.213
+(luated according to the rules described belo).25 F 4.714(wu)-.25 G
+(nder)-4.714 E F3(ARITH-)4.714 E .349(METIC EV)144 448.8 R(ALU)-1.215 E
+-.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF(.)A F1 .349(If the v)
+4.849 F .349(alue of the e)-.25 F .348
+(xpression is non-zero, the return status is 0; otherwise)-.15 F .781
+(the return status is 1.)144 460.8 R(The)5.782 E F0 -.2(ex)3.282 G(pr).2
+E(ession)-.37 E F1(under)3.282 E .782(goes the same e)-.18 F .782
+(xpansions as if it were within double)-.15 F(quotes, b)144 472.8 Q
+(ut double quote characters in)-.2 E F0 -.2(ex)2.5 G(pr).2 E(ession)-.37
+E F1(are not treated specially and are remo)2.5 E -.15(ve)-.15 G(d.).15
+E F2([[)108 489.6 Q F0 -.2(ex)2.5 G(pr).2 E(ession)-.37 E F2(]])2.5 E F1
+(Ev)144 501.6 Q 2.274(aluate the conditional e)-.25 F(xpression)-.15 E
+F0 -.2(ex)4.774 G(pr).2 E(ession)-.37 E F1 2.274
+(and return a status of zero \(true\) or non-zero)4.774 F(\(f)144 513.6
+Q 3.663(alse\). Expressions)-.1 F 1.164
+(are composed of the primaries described belo)3.663 F 3.664(wu)-.25 G
+(nder)-3.664 E F3(CONDITION)3.664 E 1.164(AL EX-)-.18 F(PRESSIONS)144
+525.6 Q F4(.)A F1 .138(The w)4.638 F .137(ords between the)-.1 F F2([[)
+2.637 E F1(and)2.637 E F2(]])2.637 E F1 .137(do not under)2.637 F .137
+(go w)-.18 F .137(ord splitting and pathname e)-.1 F(xpan-)-.15 E 2.761
+(sion. The)144 537.6 R .262(shell performs tilde e)2.761 F .262
+(xpansion, parameter and v)-.15 F .262(ariable e)-.25 F .262
+(xpansion, arithmetic e)-.15 F(xpansion,)-.15 E .282
+(command substitution, process substitution, and quote remo)144 549.6 R
+-.25(va)-.15 G 2.782(lo).25 G 2.782(nt)-2.782 G .282(hose w)-2.782 F
+2.781(ords. Conditional)-.1 F(oper)2.781 E(-)-.2 E(ators such as)144
+561.6 Q F2<ad66>2.5 E F1
+(must be unquoted to be recognized as primaries.)2.5 E(When used with)
+144 578.4 Q F2([[)2.5 E F1 2.5(,t)C(he)-2.5 E F2(<)2.5 E F1(and)2.5 E F2
+(>)2.5 E F1(operators sort le)2.5 E
+(xicographically using the current locale.)-.15 E .502(When the)144
+595.2 R F2(==)3.002 E F1(and)3.002 E F2(!=)3.002 E F1 .502(operators ar\
+e used, the string to the right of the operator is considered a pat-)
+3.002 F .81(tern and matched according to the rules described belo)144
+607.2 R 3.31(wu)-.25 G(nder)-3.31 E F2 -.1(Pa)3.31 G(tter).1 E 3.31(nM)
+-.15 G(atching)-3.31 E F1 3.31(,a)C 3.31(si)-3.31 G 3.31(ft)-3.31 G(he)
+-3.31 E F2(ext-)3.31 E(glob)144 619.2 Q F1 .313
+(shell option were enabled.)2.813 F(The)5.313 E F2(=)2.813 E F1 .313
+(operator is equi)2.813 F -.25(va)-.25 G .313(lent to).25 F F2(==)2.813
+E F1 5.313(.I)C 2.813(ft)-5.313 G(he)-2.813 E F2(nocasematch)2.813 E F1
+.314(shell op-)2.814 F .03
+(tion is enabled, the match is performed without re)144 631.2 R -.05(ga)
+-.15 G .029(rd to the case of alphabetic characters.).05 F .029(The re-)
+5.029 F .806(turn v)144 643.2 R .807(alue is 0 if the string matches \()
+-.25 F F2(==)A F1 3.307(\)o)C 3.307(rd)-3.307 G .807(oes not match \()
+-3.307 F F2(!=)A F1 3.307(\)t)C .807(he pattern, and 1 otherwise.)-3.307
+F(If)5.807 E(an)144 655.2 Q 3.1(yp)-.15 G .6(art of the pattern is quot\
+ed, the quoted portion is matched as a string: e)-3.1 F -.15(ve)-.25 G
+.599(ry character in the).15 F
+(quoted portion matches itself, instead of ha)144 667.2 Q(ving an)-.2 E
+2.5(ys)-.15 G(pecial pattern matching meaning.)-2.5 E .133
+(An additional binary operator)144 684 R(,)-.4 E F2<3d01>2.633 E F1
+2.633(,i)C 2.633(sa)-2.633 G -.25(va)-2.833 G .133
+(ilable, with the same precedence as).25 F F2(==)2.633 E F1(and)2.633 E
+F2(!=)2.633 E F1 5.133(.W)C .133(hen it is)-5.133 F .182
+(used, the string to the right of the operator is considered a POSIX e)
+144 696 R .182(xtended re)-.15 F .181(gular e)-.15 F .181(xpression and)
+-.15 F 2.623(matched accordingly \(using the POSIX)144 708 R F0 -.37(re)
+5.124 G(gcomp)-.03 E F1(and)5.124 E F0 -.37(re)5.124 G -.1(ge)-.03 G
+(xec)-.1 E F1(interf)5.124 E 2.624(aces usually described in)-.1 F F0
+-.37(re)144 720 S -.1(ge)-.03 G(x)-.1 E F1 3.241(\(3\)\). The).53 F .741
+(return v)3.241 F .741
+(alue is 0 if the string matches the pattern, and 1 otherwise.)-.25 F
+.74(If the re)5.74 F(gular)-.15 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(5)190.955 E 0 Cg EP
+%%Page: 6 6
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E -.15(ex)144 84 S .508
+(pression is syntactically incorrect, the conditional e).15 F
+(xpression')-.15 E 3.008(sr)-.55 G .509(eturn v)-3.008 F .509
+(alue is 2.)-.25 F .509(If the)5.509 F/F2 10/Times-Bold@0 SF(nocase-)
+3.009 E(match)144 96 Q F1 1.307
+(shell option is enabled, the match is performed without re)3.807 F -.05
+(ga)-.15 G 1.306(rd to the case of alphabetic).05 F(characters.)144 108
+Q .243(If an)144 124.8 R 2.743(yp)-.15 G .244
+(art of the pattern is quoted, the quoted portion is matched literally)
+-2.743 F 2.744(,a)-.65 G 2.744(sa)-2.744 G(bo)-2.744 E -.15(ve)-.15 G
+5.244(.I).15 G 2.744(ft)-5.244 G .244(he pattern)-2.744 F .368
+(is stored in a shell v)144 136.8 R .368(ariable, quoting the v)-.25 F
+.368(ariable e)-.25 F .368
+(xpansion forces the entire pattern to be matched)-.15 F(literally)144
+148.8 Q 5.389(.T)-.65 G .389(reat brack)-5.739 F .389(et e)-.1 F .389
+(xpressions in re)-.15 F .389(gular e)-.15 F .389(xpressions carefully)
+-.15 F 2.889(,s)-.65 G .389(ince normal quoting and pat-)-2.889 F
+(tern characters lose their meanings between brack)144 160.8 Q(ets.)-.1
+E .662(The match succeeds if the pattern matches an)144 177.6 R 3.162
+(yp)-.15 G .662(art of the string.)-3.162 F .661
+(Anchor the pattern using the)5.662 F F2<00>3.161 E F1(and)144 189.6 Q
+F2($)2.5 E F1(re)2.5 E(gular e)-.15 E
+(xpression operators to force it to match the entire string.)-.15 E .75
+(The array v)144 206.4 R(ariable)-.25 E/F3 9/Times-Bold@0 SF -.27(BA)
+3.25 G(SH_REMA).27 E(TCH)-.855 E F1 .751
+(records which parts of the string matched the pattern.)3.001 F(The)
+5.751 E .825(element of)144 218.4 R F3 -.27(BA)3.325 G(SH_REMA).27 E
+(TCH)-.855 E F1 .825(with inde)3.075 F 3.325(x0c)-.15 G .825
+(ontains the portion of the string matching the entire)-3.325 F(re)144
+230.4 Q 1.515(gular e)-.15 F 4.015(xpression. Substrings)-.15 F 1.515
+(matched by parenthesized sube)4.015 F 1.515(xpressions within the re)
+-.15 F 1.515(gular e)-.15 F(x-)-.15 E .147(pression are sa)144 242.4 R
+-.15(ve)-.2 G 2.647(di).15 G 2.647(nt)-2.647 G .146(he remaining)-2.647
+F F3 -.27(BA)2.646 G(SH_REMA).27 E(TCH)-.855 E F1 2.646(indices. The)
+2.396 F .146(element of)2.646 F F3 -.27(BA)2.646 G(SH_REMA).27 E(TCH)
+-.855 E F1 .514(with inde)144 254.4 R(x)-.15 E F0(n)3.014 E F1 .514
+(is the portion of the string matching the)3.014 F F0(n)3.014 E F1 .514
+(th parenthesized sube)B(xpression.)-.15 E F2(Bash)5.514 E F1(sets)3.014
+E F3 -.27(BA)144 266.4 S(SH_REMA).27 E(TCH)-.855 E F1 .659
+(in the global scope; declaring it as a local v)2.91 F .659
+(ariable will lead to une)-.25 F .659(xpected re-)-.15 F(sults.)144
+278.4 Q .785(Expressions may be combined using the follo)144 295.2 R
+.786(wing operators, listed in decreasing order of prece-)-.25 F(dence:)
+144 307.2 Q F2(\()144 324 Q F0 -.2(ex)2.5 G(pr).2 E(ession)-.37 E F2(\))
+2.5 E F1 .523(Returns the v)180 336 R .522(alue of)-.25 F F0 -.2(ex)
+3.022 G(pr).2 E(ession)-.37 E F1 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 348 Q F2(!)144 360 Q F0 -.2(ex)2.5 G(pr).2 E(ession)-.37
+E F1 -.35(Tr)180 372 S(ue if).35 E F0 -.2(ex)2.5 G(pr).2 E(ession)-.37 E
+F1(is f)2.74 E(alse.)-.1 E F0 -.2(ex)144 384 S(pr).2 E(ession1)-.37 E F2
+(&&)2.5 E F0 -.2(ex)2.5 G(pr).2 E(ession2)-.37 E F1 -.35(Tr)180 396 S
+(ue if both).35 E F0 -.2(ex)2.5 G(pr).2 E(ession1)-.37 E F1(and)2.5 E F0
+-.2(ex)2.5 G(pr).2 E(ession2)-.37 E F1(are true.)2.52 E F0 -.2(ex)144
+408 S(pr).2 E(ession1)-.37 E F2(||)2.5 E F0 -.2(ex)2.5 G(pr).2 E
+(ession2)-.37 E F1 -.35(Tr)180 420 S(ue if either).35 E F0 -.2(ex)2.5 G
+(pr).2 E(ession1)-.37 E F1(or)2.5 E F0 -.2(ex)2.5 G(pr).2 E(ession2)-.37
+E F1(is true.)2.52 E(The)144 436.8 Q F2(&&)2.675 E F1(and)2.675 E F2(||)
+2.675 E F1 .175(operators do not e)2.675 F -.25(va)-.25 G(luate).25 E F0
+-.2(ex)2.675 G(pr).2 E(ession2)-.37 E F1 .175(if the v)2.675 F .175
+(alue of)-.25 F F0 -.2(ex)2.676 G(pr).2 E(ession1)-.37 E F1 .176(is suf)
+2.676 F .176(\214cient to de-)-.25 F(termine the return v)144 448.8 Q
+(alue of the entire conditional e)-.25 E(xpression.)-.15 E F2 -.25(fo)
+108 465.6 S(r).25 E F0(name)2.5 E F1 2.5([[)2.5 G F2(in)A F1([)2.5 E F0
+(wor)2.5 E 2.5(d.)-.37 G 1.666(..)-.834 G F1 2.5(]];]).834 G F2(do)A F0
+(list)2.5 E F1(;)2.5 E F2(done)2.5 E F1 .269(First, e)144 477.6 R .269
+(xpand The list of w)-.15 F .268(ords follo)-.1 F(wing)-.25 E F2(in)
+2.768 E F1 2.768(,g)C .268(enerating a list of items.)-2.768 F .268
+(Then, the v)5.268 F(ariable)-.25 E F0(name)2.768 E F1(is)2.768 E .199
+(set to each element of this list in turn, and)144 489.6 R F0(list)2.699
+E F1 .2(is e)2.7 F -.15(xe)-.15 G .2(cuted each time.).15 F .2(If the)
+5.2 F F2(in)2.7 E F0(wor)2.7 E(d)-.37 E F1 .2(is omitted, the)2.7 F F2
+-.25(fo)144 501.6 S(r).25 E F1 .762(command e)3.262 F -.15(xe)-.15 G
+(cutes).15 E F0(list)3.261 E F1 .761
+(once for each positional parameter that is set \(see)3.261 F F3 -.666
+(PA)3.261 G(RAMETERS).666 E F1(be-)3.011 E(lo)144 513.6 Q 2.575
+(w\). The)-.25 F .075(return status is the e)2.575 F .075
+(xit status of the last command that e)-.15 F -.15(xe)-.15 G 2.575
+(cutes. If).15 F .075(the e)2.575 F .075(xpansion of the)-.15 F
+(items follo)144 525.6 Q(wing)-.25 E F2(in)2.5 E F1
+(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 F2 -.25(fo)108 542.4 S(r).25 E
+F1(\(\()2.5 E F0 -.2(ex)2.5 G(pr1).2 E F1(;)2.5 E F0 -.2(ex)2.5 G(pr2).2
+E F1(;)2.5 E F0 -.2(ex)2.5 G(pr3).2 E F1(\)\) ;)2.5 E F2(do)2.5 E F0
+(list)2.5 E F1(;)2.5 E F2(done)2.5 E F1 2.52(First, e)144 554.4 R -.25
+(va)-.25 G 2.519(luate the arithmetic e).25 F(xpression)-.15 E F0 -.2
+(ex)5.019 G(pr1).2 E F1 2.519(according to the rules described belo)
+5.019 F 5.019(wu)-.25 G(nder)-5.019 E F3 .922(ARITHMETIC EV)144 566.4 R
+(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF(.)A F1
+.922(Then, repeatedly e)5.422 F -.25(va)-.25 G .923
+(luate the arithmetic e).25 F(xpression)-.15 E F0 -.2(ex)3.423 G(pr2).2
+E F1 .923(until it)3.423 F -.25(eva)144 578.4 S 1.409(luates to zero.)
+.25 F 1.409(Each time)6.409 F F0 -.2(ex)3.909 G(pr2).2 E F1 -.25(eva)
+3.909 G 1.409(luates to a non-zero v).25 F 1.408(alue, e)-.25 F -.15(xe)
+-.15 G(cute).15 E F0(list)3.908 E F1 1.408(and e)3.908 F -.25(va)-.25 G
+1.408(luate the).25 F .052(arithmetic e)144 590.4 R(xpression)-.15 E F0
+-.2(ex)2.553 G(pr3).2 E F1 5.053(.I)C 2.553(fa)-5.053 G .353 -.15(ny ex)
+-2.553 H .053(pression is omitted, it beha).15 F -.15(ve)-.2 G 2.553(sa)
+.15 G 2.553(si)-2.553 G 2.553(fi)-2.553 G 2.553(te)-2.553 G -.25(va)
+-2.803 G .053(luates to 1.).25 F .053(The re-)5.053 F .692(turn v)144
+602.4 R .692(alue is the e)-.25 F .692
+(xit status of the last command in)-.15 F F0(list)3.192 E F1 .692
+(that is e)3.192 F -.15(xe)-.15 G .692(cuted, or non-zero if an).15 F
+3.192(yo)-.15 G 3.192(ft)-3.192 G(he)-3.192 E -.15(ex)144 614.4 S
+(pressions is in).15 E -.25(va)-.4 G(lid.).25 E .856(Use the)144 631.2 R
+F2(br)3.356 E(eak)-.18 E F1(and)3.356 E F2(continue)3.356 E F1 -.2(bu)
+3.356 G .857(iltins \(see).2 F F3 .857(SHELL B)3.357 F(UIL)-.09 E .857
+(TIN COMMANDS)-.828 F F1(belo)3.107 E .857(w\) to control loop)-.25 F
+-.15(exe)144 643.2 S(cution.).15 E F2(select)108 660 Q F0(name)2.5 E F1
+([)2.5 E F2(in)2.5 E F0(wor)2.5 E(d)-.37 E F1 2.5(];)2.5 G F2(do)A F0
+(list)2.5 E F1(;)2.5 E F2(done)2.5 E F1 .017(First, e)144 672 R .016
+(xpand the list of w)-.15 F .016(ords follo)-.1 F(wing)-.25 E F2(in)
+2.516 E F1 2.516(,g)C .016
+(enerating a list of items, and print the set of e)-2.516 F(xpanded)-.15
+E -.1(wo)144 684 S 1.143(rds the standard error).1 F 3.643(,e)-.4 G
+1.143(ach preceded by a number)-3.643 F 6.143(.I)-.55 G 3.643(ft)-6.143
+G(he)-3.643 E F2(in)3.643 E F0(wor)3.643 E(d)-.37 E F1 1.143
+(is omitted, print the posi-)3.643 F 1.307(tional parameters \(see)144
+696 R F3 -.666(PA)3.807 G(RAMETERS).666 E F1(belo)3.557 E(w\).)-.25 E F2
+(select)6.307 E F1 1.306(then displays the)3.806 F F3(PS3)3.806 E F1
+1.306(prompt and reads a)3.556 F .013(line from the standard input.)144
+708 R .013
+(If the line consists of a number corresponding to one of the displayed)
+5.013 F -.1(wo)144 720 S 1.14(rds, then).1 F F2(select)3.64 E F1 1.14
+(sets the v)3.64 F 1.14(alue of)-.25 F F0(name)4 E F1 1.139(to that w)
+3.82 F 3.639(ord. If)-.1 F 1.139(the line is empty)3.639 F(,)-.65 E F2
+(select)3.639 E F1 1.139(displays the)3.639 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(6)190.955 E 0 Cg EP
+%%Page: 7 7
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E -.1(wo)144 84 S 1.23(rds and prompt ag).1 F 3.73
+(ain. If)-.05 F 1.23(EOF is read,)3.73 F/F2 10/Times-Bold@0 SF(select)
+3.73 E F1 1.23(completes and returns 1.)3.73 F(An)6.23 E 3.73(yo)-.15 G
+1.23(ther v)-3.73 F 1.23(alue sets)-.25 F F0(name)144.36 96 Q F1 .406
+(to null.)3.086 F .406(The line read is sa)5.406 F -.15(ve)-.2 G 2.906
+(di).15 G 2.906(nt)-2.906 G .406(he v)-2.906 F(ariable)-.25 E/F3 9
+/Times-Bold@0 SF(REPL)2.906 E(Y)-.828 E/F4 9/Times-Roman@0 SF(.)A F1
+(The)4.906 E F0(list)2.996 E F1 .406(is e)3.586 F -.15(xe)-.15 G .406
+(cuted after each selec-).15 F .139(tion until a)144 108 R F2(br)2.639 E
+(eak)-.18 E F1 .139(command is e)2.639 F -.15(xe)-.15 G 2.639
+(cuted. The).15 F -.15(ex)2.639 G .139(it status of).15 F F2(select)2.64
+E F1 .14(is the e)2.64 F .14(xit status of the last com-)-.15 F(mand e)
+144 120 Q -.15(xe)-.15 G(cuted in).15 E F0(list)2.59 E F1 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 F2(case)108 136.8 Q F0(wor)2.5 E(d)-.37 E F2(in)2.5 E F1 2.5([[)2.5 G
+(\(])-2.5 E F0(pattern)2.5 E F1([)2.5 E F2(|)2.5 E F0(pattern)2.5 E F1
+2.5(].)2.5 G -3.332 1.666(.. \))-.834 H F0(list).834 E F1(;; ] .)2.5 E
+1.666(..)1.666 G F2(esac).834 E F1(A)144 148.8 Q F2(case)2.81 E F1 .31
+(command \214rst e)2.81 F(xpands)-.15 E F0(wor)2.81 E(d)-.37 E F1 2.81
+(,a)C .309(nd tries to match it ag)-2.81 F .309(ainst each)-.05 F F0
+(pattern)2.809 E F1 .309(in turn, proceeding)2.809 F .971
+(from \214rst to last, using the matching rules described under)144
+160.8 R F2 -.1(Pa)3.471 G(tter).1 E 3.471(nM)-.15 G(atching)-3.471 E F1
+(belo)3.471 E 4.771 -.65(w. A)-.25 H(pattern)4.121 E 1.007
+(list is a set of one or more patterns separated by)144 172.8 R 3.506
+(,a)5.172 G 1.006(nd the \) operator terminates the pattern list.)-3.506
+F(The)144 184.8 Q F0(wor)3.015 E(d)-.37 E F1 .515(is e)3.015 F .515
+(xpanded using tilde e)-.15 F .515(xpansion, parameter and v)-.15 F .515
+(ariable e)-.25 F .515(xpansion, arithmetic e)-.15 F(xpan-)-.15 E .051
+(sion, command substitution, process substitution and quote remo)144
+196.8 R -.25(va)-.15 G 2.551(l. Each).25 F F0(pattern)2.551 E F1 -.15
+(ex)2.551 G .05(amined is e).15 F(x-)-.15 E .76(panded using tilde e)144
+208.8 R .76(xpansion, parameter and v)-.15 F .76(ariable e)-.25 F .76
+(xpansion, arithmetic e)-.15 F .76(xpansion, command)-.15 F .419
+(substitution, process substitution, and quote remo)144 220.8 R -.25(va)
+-.15 G 2.919(l. If).25 F(the)2.919 E F2(nocasematch)2.919 E F1 .419
+(shell option is enabled,)2.919 F .706
+(the match is performed without re)144 232.8 R -.05(ga)-.15 G .706
+(rd to the case of alphabetic characters.).05 F(A)5.706 E F0(clause)
+3.207 E F1 .707(is a pattern)3.207 F(list and an associated)144 244.8 Q
+F0(list)2.5 E F1(.)A .14(When a match is found,)144 261.6 R F2(case)2.64
+E F1 -.15(exe)2.64 G .139(cutes the corresponding).15 F F0(list)2.639 E
+F1 5.139(.I)C 2.639(ft)-5.139 G(he)-2.639 E F2(;;)2.639 E F1 .139
+(operator terminates the case)2.639 F .695(clause, the)144 273.6 R F2
+(case)3.195 E F1 .695(command completes after the \214rst match.)3.195 F
+(Using)5.695 E F2(;&)3.195 E F1 .695(in place of)3.195 F F2(;;)3.195 E
+F1 .695(causes e)3.195 F -.15(xe)-.15 G(cu-).15 E .499
+(tion to continue with the)144 285.6 R F0(list)2.999 E F1 .498
+(associated with the ne)2.999 F .498(xt pattern list.)-.15 F(Using)5.498
+E F2(;;&)2.998 E F1 .498(in place of)2.998 F F2(;;)2.998 E F1(causes)
+2.998 E .669(the shell to test the ne)144 297.6 R .669
+(xt pattern list in the statement, if an)-.15 F 1.97 -.65(y, a)-.15 H
+.67(nd e).65 F -.15(xe)-.15 G .67(cute an).15 F 3.17(ya)-.15 G
+(ssociated)-3.17 E F0(list)3.17 E F1 .67(if the)3.17 F 1.189
+(match succeeds.)144 309.6 R 1.189(continuing the case statement e)6.189
+F -.15(xe)-.15 G 1.188(cution as if the pattern list had not matched.)
+.15 F(The e)144 321.6 Q(xit status is zero if no pattern matches.)-.15 E
+(Otherwise, it is the e)144 338.4 Q(xit status of the last command e)
+-.15 E -.15(xe)-.15 G(cuted in the last).15 E F0(list)2.5 E F1 -.15(exe)
+2.5 G(cuted.).15 E F2(if)108 355.2 Q F0(list)2.5 E F1(;)A F2(then)2.5 E
+F0(list)2.5 E F1 2.5(;[)C F2(elif)A F0(list)2.5 E F1(;)A F2(then)2.5 E
+F0(list)2.5 E F1 2.5(;].)C -3.332 1.666(.. [)-.834 H F2(else).834 E F0
+(list)2.5 E F1 2.5(;])C F2<8c>A F1(The)144 367.2 Q F2(if)2.977 E F0
+(list)3.067 E F1 .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 F2(then)2.978 E
+F0(list)2.978 E F1 .478(is e)2.978 F -.15(xe)-.15 G 2.978
+(cuted. Otherwise,).15 F(each)2.978 E F2(elif)2.978 E F0(list)2.978 E F1
+1.088(is e)144 379.2 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 F2(then)3.587 E
+F0(list)3.587 E F1 1.087(is e)3.587 F -.15(xe)-.15 G 1.087
+(cuted and the).15 F .103(command completes.)144 391.2 R .103
+(Otherwise, the)5.103 F F2(else)2.603 E F0(list)2.603 E F1 .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 403.2 Q -.15(xe)-.15 G
+(cuted, or zero if no condition tested true.).15 E F2(while)108 420 Q F0
+(list-1)2.5 E F1(;)A F2(do)2.5 E F0(list-2)2.5 E F1(;)A F2(done)2.5 E
+(until)108 432 Q F0(list-1)2.5 E F1(;)A F2(do)2.5 E F0(list-2)2.5 E F1
+(;)A F2(done)2.5 E F1(The)144 444 Q F2(while)3.45 E F1 .95
+(command continuously e)3.45 F -.15(xe)-.15 G .95(cutes the list).15 F
+F0(list-2)3.45 E F1 .95(as long as the last command in the list)3.45 F
+F0(list-1)144 456 Q F1 .205(returns an e)2.705 F .205
+(xit status of zero.)-.15 F(The)5.205 E F2(until)2.705 E F1 .205
+(command is identical to the)2.705 F F2(while)2.705 E F1 .205
+(command, e)2.705 F(xcept)-.15 E .6(that the test is ne)144 468 R -.05
+(ga)-.15 G(ted:).05 E F0(list-2)3.19 E F1 .6(is e)3.12 F -.15(xe)-.15 G
+.599(cuted as long as the last command in).15 F F0(list-1)3.189 E F1
+.599(returns a non-zero)3.099 F -.15(ex)144 480 S .204(it status.).15 F
+.204(The e)5.204 F .204(xit status of the)-.15 F F2(while)2.704 E F1
+(and)2.704 E F2(until)2.704 E F1 .205(commands is the e)2.704 F .205
+(xit status of the last command)-.15 F -.15(exe)144 492 S(cuted in).15 E
+F0(list-2)2.5 E F1 2.5(,o)C 2.5(rz)-2.5 G(ero if none w)-2.5 E(as e)-.1
+E -.15(xe)-.15 G(cuted.).15 E F2(Copr)87 508.8 Q(ocesses)-.18 E F1(A)108
+520.8 Q F0(copr)2.602 E(ocess)-.45 E F1 .102
+(is a shell command preceded by the)2.602 F F2(copr)2.602 E(oc)-.18 E F1
+(reserv)2.602 E .102(ed w)-.15 F 2.602(ord. A)-.1 F .102(coprocess is e)
+2.602 F -.15(xe)-.15 G .101(cuted asynchro-).15 F .641
+(nously in a subshell, as if the command had been terminated with the)
+108 532.8 R F2(&)3.142 E F1 .642(control operator)3.142 F 3.142(,w)-.4 G
+.642(ith a tw)-3.142 F(o-w)-.1 E(ay)-.1 E
+(pipe established between the e)108 544.8 Q -.15(xe)-.15 G
+(cuting shell and the coprocess.).15 E(The syntax for a coprocess is:)
+108 561.6 Q F2(copr)144 578.4 Q(oc)-.18 E F1([)2.5 E F0 -.27(NA)C(ME).27
+E F1(])A F0(command)2.5 E F1([)2.5 E F0 -.37(re)C(dir).37 E(ections)-.37
+E F1(])A .599(This creates a coprocess named)108 595.2 R F0 -.27(NA)
+3.099 G(ME).27 E F1(.)A F0(command)5.599 E F1 .599
+(may be either a simple command or a compound com-)3.099 F 1.4
+(mand \(see abo)108 607.2 R -.15(ve)-.15 G(\).).15 E F0 -.27(NA)6.4 G
+(ME).27 E F1 1.4(is a shell v)3.9 F 1.4(ariable name.)-.25 F(If)6.4 E F0
+-.27(NA)3.9 G(ME).27 E F1 1.4(is not supplied, the def)3.9 F 1.4
+(ault name is)-.1 F F2(CO-)3.9 E(PR)108 619.2 Q(OC)-.3 E F1(.)A
+(The recommended form to use for a coprocess is)108 636 Q F2(copr)144
+652.8 Q(oc)-.18 E F0 -.27(NA)2.5 G(ME).27 E F1({)2.5 E F0(command)2.5 E
+F1([)2.5 E F0 -.37(re)C(dir).37 E(ections)-.37 E F1(]; })A .799(This fo\
+rm is preferred because simple commands result in the coprocess al)108
+669.6 R -.1(wa)-.1 G .799(ys being named).1 F F2(COPR)3.299 E(OC)-.3 E
+F1(,)A(and it is simpler to use and more complete than the other compou\
+nd commands.)108 681.6 Q(If)108 698.4 Q F0(command)3.061 E F1 .561
+(is a compound command,)3.061 F F0 -.27(NA)3.061 G(ME).27 E F1 .562
+(is optional. The w)3.061 F .562(ord follo)-.1 F(wing)-.25 E F2(copr)
+3.062 E(oc)-.18 E F1 .562(determines whether)3.062 F .339(that w)108
+710.4 R .339(ord is interpreted as a v)-.1 F .339
+(ariable name: it is interpreted as)-.25 F F0 -.27(NA)2.839 G(ME).27 E
+F1 .338(if it is not a reserv)2.838 F .338(ed w)-.15 F .338
+(ord that intro-)-.1 F 1.121(duces a compound command.)108 722.4 R(If)
+6.121 E F0(command)3.621 E F1 1.121(is a simple command,)3.621 F F0 -.27
+(NA)3.621 G(ME).27 E F1 1.121(is not allo)3.621 F 1.122
+(wed; this is to a)-.25 F -.2(vo)-.2 G(id).2 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(7)190.955 E 0 Cg EP
+%%Page: 8 8
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(confusion between)108 84 Q F0 -.27(NA)2.5 G(ME).27
+E F1(and the \214rst w)2.5 E(ord of the simple command.)-.1 E .09
+(When the coprocess is e)108 100.8 R -.15(xe)-.15 G .09
+(cuted, the shell creates an array v).15 F .09(ariable \(see)-.25 F/F2
+10/Times-Bold@0 SF(Arrays)2.59 E F1(belo)2.59 E .09(w\) named)-.25 F F0
+-.27(NA)2.59 G(ME).27 E F1 .09(in the)2.59 F(conte)108 112.8 Q .302
+(xt of the e)-.15 F -.15(xe)-.15 G .302(cuting shell.).15 F .302
+(The standard output of)5.302 F F0(command)3.002 E F1 .302
+(is connected via a pipe to a \214le descriptor)3.572 F .588(in the e)
+108 124.8 R -.15(xe)-.15 G .587
+(cuting shell, and that \214le descriptor is assigned to).15 F F0 -.27
+(NA)3.087 G(ME).27 E F1 3.087([0]. The)B .587(standard input of)3.087 F
+F0(command)3.287 E F1(is)3.857 E 2.029
+(connected via a pipe to a \214le descriptor in the e)108 136.8 R -.15
+(xe)-.15 G 2.029
+(cuting shell, and that \214le descriptor is assigned to).15 F F0 -.27
+(NA)108 148.8 S(ME).27 E F1 2.879([1]. This)B .379
+(pipe is established before an)2.879 F 2.879(yr)-.15 G .379
+(edirections speci\214ed by the command \(see)-2.879 F/F3 9/Times-Bold@0
+SF(REDIRECTION)2.879 E F1(belo)108 160.8 Q 3.425(w\). The)-.25 F .925
+(\214le descriptors can be utilized as ar)3.425 F .926
+(guments to shell commands and redirections using stan-)-.18 F .286
+(dard w)108 172.8 R .286(ord e)-.1 F 2.786(xpansions. Other)-.15 F .286
+(than those created to e)2.786 F -.15(xe)-.15 G .286
+(cute command and process substitutions, the \214le de-).15 F
+(scriptors are not a)108 184.8 Q -.25(va)-.2 G(ilable in subshells.).25
+E 1.676(The process ID of the shell spa)108 201.6 R 1.676(wned to e)-.15
+F -.15(xe)-.15 G 1.676(cute the coprocess is a).15 F -.25(va)-.2 G 1.676
+(ilable as the v).25 F 1.677(alue of the v)-.25 F(ariable)-.25 E F0 -.27
+(NA)108 213.6 S(ME).27 E F1 2.5(_PID. The)B F2(wait)2.5 E F1 -.2(bu)2.5
+G(iltin may be used to w).2 E(ait for the coprocess to terminate.)-.1 E
+.336(Since the coprocess is created as an asynchronous command, the)108
+230.4 R F2(copr)2.836 E(oc)-.18 E F1 .335(command al)2.835 F -.1(wa)-.1
+G .335(ys returns success.).1 F
+(The return status of a coprocess is the e)108 242.4 Q(xit status of)
+-.15 E F0(command)2.5 E F1(.)A F2(Shell Function De\214nitions)87 259.2
+Q F1 2.697(As)108 271.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 283.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 F0(fname)108 300 Q
+F1(\(\))2.5 E F0(compound\255command)2.5 E F1([)2.5 E F0 -.37(re)C(dir)
+.37 E(ection)-.37 E F1(])A F2(function)108 312 Q F0(fname)2.5 E F1
+([\(\)])2.5 E F0(compound\255command)2.5 E F1([)2.5 E F0 -.37(re)C(dir)
+.37 E(ection)-.37 E F1(])A .217(This de\214nes a function named)144 324
+R F0(fname)2.717 E F1 5.217(.T)C .217(he reserv)-5.217 F .217(ed w)-.15
+F(ord)-.1 E F2(function)2.717 E F1 .216(is optional.)2.717 F .216
+(If the)5.216 F F2(function)2.716 E F1(re-)2.716 E(serv)144 336 Q .68
+(ed w)-.15 F .68(ord is supplied, the parentheses are optional.)-.1 F
+(The)5.68 E F0(body)3.18 E F1 .68(of the function is the compound)3.18 F
+(command)144 348 Q F0(compound\255command)2.784 E F1(\(see)3.354 E F2
+.084(Compound Commands)2.584 F F1(abo)2.584 E -.15(ve)-.15 G 2.584
+(\). That).15 F .084(command is usually a)2.584 F F0(list)144 360 Q F1
+.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 F2 .044
+(Compound Commands)2.544 F F1(abo)144 372 Q -.15(ve)-.15 G 5.532(.I).15
+G 3.032(ft)-5.532 G(he)-3.032 E F2(function)3.032 E F1(reserv)3.032 E
+.532(ed w)-.15 F .532(ord is used, b)-.1 F .532
+(ut the parentheses are not supplied, the braces are)-.2 F(recommended.)
+144 384 Q F0(compound\255command)6.253 E F1 1.253(is e)3.753 F -.15(xe)
+-.15 G 1.253(cuted whene).15 F -.15(ve)-.25 G(r).15 E F0(fname)3.753 E
+F1 1.254(is speci\214ed as the name of a)3.753 F 1.187(simple command.)
+144 396 R 1.187(When in posix mode,)6.187 F F0(fname)3.687 E F1 1.186
+(must be a v)3.687 F 1.186(alid shell)-.25 F F0(name)3.686 E F1 1.186
+(and may not be the)3.686 F .088(name of one of the POSIX)144 408 R F0
+.089(special b)2.589 F(uiltins)-.2 E F1 5.089(.I)C 2.589(nd)-5.089 G(ef)
+-2.589 E .089(ault mode, a function name can be an)-.1 F 2.589(yu)-.15 G
+(nquoted)-2.589 E(shell w)144 420 Q(ord that does not contain)-.1 E F2
+($)2.5 E F1(.)A(An)108 436.8 Q 2.93(yr)-.15 G .43(edirections \(see)
+-2.93 F F3(REDIRECTION)2.93 E F1(belo)2.68 E .43
+(w\) speci\214ed when a function is de\214ned are performed when the)
+-.25 F(function is e)108 448.8 Q -.15(xe)-.15 G(cuted.).15 E .57(The e)
+108 465.6 R .57(xit status of a function de\214nition is zero unless a \
+syntax error occurs or a readonly function with the)-.15 F .85
+(same name already e)108 477.6 R 3.35(xists. When)-.15 F -.15(exe)3.35 G
+.85(cuted, the e).15 F .85(xit status of a function is the e)-.15 F .85
+(xit status of the last com-)-.15 F(mand e)108 489.6 Q -.15(xe)-.15 G
+(cuted in the body).15 E 5(.\()-.65 G(See)-5 E F3(FUNCTIONS)2.5 E F1
+(belo)2.25 E -.65(w.)-.25 G(\)).65 E/F4 10.95/Times-Bold@0 SF(COMMENTS)
+72 506.4 Q F1 .982(In a non-interacti)108 518.4 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 F2(interacti)3.482 E -.1(ve)-.1 G(_comments).1
+E F1 .982(option to the)3.482 F F2(shopt)3.482 E F1 -.2(bu)108 530.4 S
+.612(iltin is enabled \(see).2 F F3 .612(SHELL B)3.112 F(UIL)-.09 E .612
+(TIN COMMANDS)-.828 F F1(belo)2.862 E .612(w\), a w)-.25 F .612(ord be)
+-.1 F .612(ginning with)-.15 F F2(#)3.111 E F1 .611(introduces a com-)
+3.111 F 2.854(ment. A)108 542.4 R -.1(wo)2.854 G .354(rd be).1 F .354
+(gins at the be)-.15 F .355
+(ginning of a line, after unquoted whitespace, or after an operator)-.15
+F 5.355(.T)-.55 G .355(he com-)-5.355 F .364(ment causes that w)108
+554.4 R .364
+(ord and all remaining characters on that line to be ignored.)-.1 F .363
+(An interacti)5.363 F .663 -.15(ve s)-.25 H .363(hell without).15 F(the)
+108 566.4 Q F2(interacti)2.62 E -.1(ve)-.1 G(_comments).1 E F1 .121
+(option enabled does not allo)2.621 F 2.621(wc)-.25 G 2.621
+(omments. The)-2.621 F F2(interacti)2.621 E -.1(ve)-.1 G(_comments).1 E
+F1 .121(option is)2.621 F(enabled by def)108 578.4 Q(ault in interacti)
+-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F4 -.11(QU)72 595.2 S -.438(OT)
+.11 G(ING).438 E F0(Quoting)108 607.2 Q F1 .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 .477(Quoting can be)5.477 F .184
+(used to disable special treatment for special characters, to pre)108
+619.2 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 631.2 Q -.15
+(ve)-.25 G(nt parameter e).15 E(xpansion.)-.15 E .289(Each of the)108
+648 R F0(metac)2.789 E(har)-.15 E(acter)-.15 E(s)-.1 E F1 .288
+(listed abo)2.789 F .588 -.15(ve u)-.15 H(nder).15 E F3(DEFINITIONS)
+2.788 E F1 .288(has special meaning to the shell and must be)2.538 F
+(quoted if it is to represent itself.)108 660 Q 1.344
+(When the command history e)108 676.8 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 F1(belo)3.595 E 1.345(w\), the)
+-.25 F F0(history e)108 688.8 Q(xpansion)-.2 E F1(character)2.5 E 2.5
+(,u)-.4 G(sually)-2.5 E F2(!)2.5 E F1 2.5(,m)C(ust be quoted to pre)-2.5
+E -.15(ve)-.25 G(nt history e).15 E(xpansion.)-.15 E .768
+(There are four quoting mechanisms: the)108 705.6 R F0 .768(escape c)
+3.458 F(har)-.15 E(acter)-.15 E F1 3.268(,s).73 G .767
+(ingle quotes, double quotes, and dollar)-3.268 F(-single)-.2 E(quotes.)
+108 717.6 Q(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(8)190.955 E
+0 Cg EP
+%%Page: 9 9
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E 2.962(An)108 84 S .463(on-quoted backslash \()
+-2.962 F/F2 10/Times-Bold@0 SF(\\)A F1 2.963(\)i)C 2.963(st)-2.963 G(he)
+-2.963 E F0 .463(escape c)3.153 F(har)-.15 E(acter)-.15 E F1 5.463(.I)
+.73 G 2.963(tp)-5.463 G(reserv)-2.963 E .463(es the literal v)-.15 F
+.463(alue of the ne)-.25 F .463(xt character that)-.15 F(follo)108 96 Q
+.878(ws, remo)-.25 F .878(ving an)-.15 F 3.378(ys)-.15 G .878
+(pecial meaning it has, with the e)-3.378 F .877(xception of <ne)-.15 F
+3.377(wline>. If)-.25 F(a)3.377 E F2(\\)3.377 E F1(<ne)A .877
+(wline> pair ap-)-.25 F .176
+(pears, and the backslash is not itself quoted, the)108 108 R F2(\\)
+2.676 E F1(<ne)A .176
+(wline> is treated as a line continuation \(that is, it is re-)-.25 F
+(mo)108 120 Q -.15(ve)-.15 G 2.5(df).15 G(rom the input stream and ef)
+-2.5 E(fecti)-.25 E -.15(ve)-.25 G(ly ignored\).).15 E .295
+(Enclosing characters in single quotes preserv)108 136.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 148.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 165.6 R .034
+(es the literal v)-.15 F .034
+(alue of all characters within the quotes, with the)-.25 F -.15(ex)108
+177.6 S .057(ception of).15 F F2($)2.557 E F1(,)A F2<92>2.557 E F1(,)A
+F2(\\)2.557 E F1 2.557(,a)C .057(nd, when history e)-2.557 F .056
+(xpansion is enabled,)-.15 F F2(!)2.556 E F1 5.056(.W)C .056
+(hen the shell is in posix mode, the)-5.056 F F2(!)2.556 E F1 .056
+(has no)2.556 F .46(special meaning within double quotes, e)108 189.6 R
+-.15(ve)-.25 G 2.96(nw).15 G .46(hen history e)-2.96 F .46
+(xpansion is enabled.)-.15 F .46(The characters)5.46 F F2($)2.96 E F1
+(and)2.96 E F2<92>2.96 E F1(re-)2.96 E .563
+(tain their special meaning within double quotes.)108 201.6 R .562
+(The backslash retains its special meaning only when fol-)5.563 F(lo)108
+213.6 Q .317(wed by one of the follo)-.25 F .318(wing characters:)-.25 F
+F2($)2.818 E F1(,)A F2<92>2.818 E F1(,)A F2(")3.651 E F1(,).833 E F2(\\)
+2.818 E F1 2.818(,o)C(r)-2.818 E F2(<newline>)2.818 E F1 5.318(.B)C .318
+(ackslashes preceding characters with-)-5.318 F
+(out a special meaning are left unmodi\214ed.)108 225.6 Q 3.144(Ad)108
+242.4 S .644(ouble quote may be quoted within double quotes by precedin\
+g it with a backslash.)-3.144 F .643(If enabled, history)5.643 F -.15
+(ex)108 254.4 S 1.267(pansion will be performed unless an).15 F F2(!)
+3.767 E F1 1.268
+(appearing in double quotes is escaped using a backslash.)6.267 F(The)
+6.268 E(backslash preceding the)108 266.4 Q F2(!)2.5 E F1(is not remo)5
+E -.15(ve)-.15 G(d.).15 E(The special parameters)108 283.2 Q F2(*)2.5 E
+F1(and)2.5 E F2(@)2.5 E F1(ha)2.5 E .3 -.15(ve s)-.2 H
+(pecial meaning when in double quotes \(see).15 E/F3 9/Times-Bold@0 SF
+-.666(PA)2.5 G(RAMETERS).666 E F1(belo)2.25 E(w\).)-.25 E .149
+(Character sequences of the form)108 300 R F2($)2.649 E F1<08>A F0
+(string)A F1 2.649<0861>C .149(re treated as a special v)-2.649 F .149
+(ariant of single quotes.)-.25 F .148(The sequence e)5.148 F(x-)-.15 E
+.527(pands to)108 312 R F0(string)3.027 E F1 3.027(,w)C .527
+(ith backslash-escaped characters in)-3.027 F F0(string)3.027 E F1 .528
+(replaced as speci\214ed by the ANSI C standard.)3.027 F
+(Backslash escape sequences, if present, are decoded as follo)108 324 Q
+(ws:)-.25 E F2(\\a)144 336 Q F1(alert \(bell\))180 336 Q F2(\\b)144 348
+Q F1(backspace)180 348 Q F2(\\e)144 360 Q(\\E)144 372 Q F1
+(an escape character)180 372 Q F2(\\f)144 384 Q F1(form feed)180 384 Q
+F2(\\n)144 396 Q F1(ne)180 396 Q 2.5(wl)-.25 G(ine)-2.5 E F2(\\r)144 408
+Q F1(carriage return)180 408 Q F2(\\t)144 420 Q F1(horizontal tab)180
+420 Q F2(\\v)144 432 Q F1 -.15(ve)180 432 S(rtical tab).15 E F2(\\\\)144
+444 Q F1(backslash)180 444 Q F2<5c08>144 456 Q F1(single quote)180 456 Q
+F2(\\")144 468 Q F1(double quote)180 468 Q F2(\\?)144 480 Q F1
+(question mark)180 480 Q F2(\\)144 492 Q F0(nnn)A F1
+(The eight-bit character whose v)180 492 Q(alue is the octal v)-.25 E
+(alue)-.25 E F0(nnn)2.5 E F1(\(one to three octal digits\).)2.5 E F2
+(\\x)144 504 Q F0(HH)A F1(The eight-bit character whose v)180 504 Q
+(alue is the he)-.25 E(xadecimal v)-.15 E(alue)-.25 E F0(HH)2.5 E F1
+(\(one or tw)2.5 E 2.5(oh)-.1 G .3 -.15(ex d)-2.5 H(igits\).).15 E F2
+(\\u)144 516 Q F0(HHHH)A F1 1.204
+(The Unicode \(ISO/IEC 10646\) character whose v)180 528 R 1.203
+(alue is the he)-.25 F 1.203(xadecimal v)-.15 F(alue)-.25 E F0(HHHH)
+3.703 E F1(\(one to four he)180 540 Q 2.5(xd)-.15 G(igits\).)-2.5 E F2
+(\\U)144 552 Q F0(HHHHHHHH)A F1 .244
+(The Unicode \(ISO/IEC 10646\) character whose v)180 564 R .245
+(alue is the he)-.25 F .245(xadecimal v)-.15 F(alue)-.25 E F0(HHHHH-)
+2.745 E(HHH)180 576 Q F1(\(one to eight he)2.5 E 2.5(xd)-.15 G(igits\).)
+-2.5 E F2(\\c)144 588 Q F0(x)A F1 2.5(Ac)180 588 S(ontrol-)-2.5 E F0(x)A
+F1(character)2.5 E(.)-.55 E(The e)108 604.8 Q(xpanded result is single-\
+quoted, as if the dollar sign had not been present.)-.15 E F2 -.74(Tr)87
+621.6 S(anslating Strings).74 E F1 2.884(Ad)108 633.6 S .383
+(ouble-quoted string preceded by a dollar sign \()-2.884 F F2($)A F1(")A
+F0(string)A F1 .383("\) causes the string to be translated according to)
+B 1.635(the current locale.)108 645.6 R(The)6.635 E F0 -.1(ge)4.135 G
+(tte).1 E(xt)-.2 E F1 1.636
+(infrastructure performs the lookup and translation, using the)4.135 F
+F2(LC_MES-)4.136 E(SA)108 657.6 Q(GES)-.55 E F1(,)A F2(TEXTDOMAINDIR)
+2.761 E F1 2.761(,a)C(nd)-2.761 E F2(TEXTDOMAIN)2.761 E F1 .261(shell v)
+2.761 F 2.761(ariables. If)-.25 F .261(the current locale is)2.761 F F2
+(C)2.76 E F1(or)2.76 E F2(POSIX)2.76 E F1(,)A 1.213
+(if there are no translations a)108 669.6 R -.25(va)-.2 G 1.214(ilable,\
+ or if the string is not translated, the dollar sign is ignored, and th\
+e).25 F .949(string is treated as double-quoted as described abo)108
+681.6 R -.15(ve)-.15 G 5.949(.T).15 G .949
+(his is a form of double quoting, so the string re-)-5.949 F .371
+(mains double-quoted by def)108 693.6 R .371
+(ault, whether or not it is translated and replaced.)-.1 F .372(If the)
+5.372 F F2(noexpand_translation)2.872 E F1 .14
+(option is enabled using the)108 705.6 R F2(shopt)2.639 E F1 -.2(bu)
+2.639 G .139
+(iltin, translated strings are single-quoted instead of double-quoted.)
+.2 F(See)5.139 E(the description of)108 717.6 Q F2(shopt)2.5 E F1(belo)
+2.5 E 2.5(wu)-.25 G(nder)-2.5 E F3(SHELL B)2.5 E(UIL)-.09 E
+(TIN COMMANDS)-.828 E/F4 9/Times-Roman@0 SF(.)A F1(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(9)190.955 E 0 Cg EP
+%%Page: 10 10
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10.95/Times-Bold@0 SF -.81(PA)72 84 S(RAMETERS)
+.81 E F1(A)108 96 Q F0(par)4.574 E(ameter)-.15 E F1 .824
+(is an entity that stores v)4.054 F 3.324(alues. It)-.25 F .824
+(can be a)3.324 F F0(name)3.685 E F1 3.325(,an).18 G(umber)-3.325 E
+3.325(,o)-.4 G 3.325(ro)-3.325 G .825(ne of the special characters)
+-3.325 F .802(listed belo)108 108 R 3.302(wu)-.25 G(nder)-3.302 E/F3 10
+/Times-Bold@0 SF .802(Special P)3.302 F(arameters)-.1 E F1 5.802(.A)C F0
+(variable)-2.21 E F1 .802(is a parameter denoted by a)3.482 F F0(name)
+3.662 E F1 5.801(.A).18 G -.25(va)-2.5 G .801(riable has a).25 F F0
+(value)108 120 Q F1 .368(and zero or more)2.868 F F0(attrib)2.868 E
+(utes)-.2 E F1 5.369(.A)C(ttrib)-5.369 E .369
+(utes are assigned using the)-.2 F F3(declar)2.869 E(e)-.18 E F1 -.2(bu)
+2.869 G .369(iltin command \(see).2 F F3(declar)2.869 E(e)-.18 E F1
+(belo)108 132 Q 2.5(wi)-.25 G(n)-2.5 E/F4 9/Times-Bold@0 SF(SHELL B)2.5
+E(UIL)-.09 E(TIN COMMANDS)-.828 E/F5 9/Times-Roman@0 SF(\).)A F1(The)4.5
+E F3(export)2.5 E F1(and)2.5 E F3 -.18(re)2.5 G(adonly).18 E F1 -.2(bu)
+2.5 G(iltins assign speci\214c attrib).2 E(utes.)-.2 E 2.755(Ap)108
+148.8 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 160.8 Q F3(unset)2.5 E F1 -.2(bu)
+2.5 G(iltin command \(see).2 E F4(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)
+-.828 E F1(belo)2.25 E(w\).)-.25 E(A)108 177.6 Q F0(variable)2.79 E F1
+(may be assigned to by a statement of the form)2.68 E F0(name)144 194.4
+Q F1(=[)A F0(value)A F1(])A(If)108 211.2 Q F0(value)3.022 E F1 .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 F0(values)3.023
+E F1(under)3.003 E .233(go tilde e)-.18 F .233(xpansion, parameter)-.15
+F .515(and v)108 223.2 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 F4(EXP)3.015 E(ANSION)-.666 E F1(belo)108 235.2 Q 2.698
+(w\). If)-.25 F .198(the v)2.698 F .198(ariable has its)-.25 F F3
+(integer)2.698 E F1(attrib)2.698 E .198(ute set, then)-.2 F F0(value)
+2.988 E F1 .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 .524(if the)108 247.2 R F3($\(\()3.024 E F1 1.666(...)C F3
+(\)\))-1.666 E F1 -.15(ex)3.024 G .523(pansion is not used \(see).15 F
+F3 .523(Arithmetic Expansion)3.023 F F1(belo)3.023 E 3.023(w\). W)-.25 F
+.523(ord splitting and pathname e)-.8 F(x-)-.15 E 1.363
+(pansion are not performed.)108 259.2 R 1.364
+(Assignment statements may also appear as ar)6.363 F 1.364
+(guments to the)-.18 F F3(alias)3.864 E F1(,)A F3(declar)3.864 E(e)-.18
+E F1(,)A F3(typeset)108 271.2 Q F1(,)A F3(export)3.871 E F1(,)A F3 -.18
+(re)3.871 G(adonly).18 E F1 3.871(,a)C(nd)-3.871 E F3(local)3.871 E F1
+-.2(bu)3.871 G 1.371(iltin commands \().2 F F0(declar)A(ation)-.15 E F1
+3.871(commands\). When)3.871 F 1.37(in posix mode,)3.871 F 1.141
+(these b)108 283.2 R 1.142
+(uiltins may appear in a command after one or more instances of the)-.2
+F F3(command)3.642 E F1 -.2(bu)3.642 G 1.142(iltin and retain).2 F
+(these assignment statement properties.)108 295.2 Q .377(In the conte)
+108 312 R .377(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
+(x, the +=)-.15 F .524(operator appends to or adds to the v)108 324 R
+(ariable')-.25 E 3.024(sp)-.55 G(re)-3.024 E .524(vious v)-.25 F 3.024
+(alue. This)-.25 F .524(includes ar)3.024 F .524(guments to)-.18 F F0
+(declar)3.024 E(ation)-.15 E F1(com-)3.024 E .546(mands such as)108 336
+R F3(declar)3.046 E(e)-.18 E F1 .546(that accept assignment statements.)
+3.046 F .546(When += is applied to a v)5.546 F .545
+(ariable for which the)-.25 F F3(integer)108 348 Q F1(attrib)3.533 E
+1.033(ute has been set, the v)-.2 F(ariable')-.25 E 3.533(sc)-.55 G
+1.033(urrent v)-3.533 F 1.033(alue and)-.25 F F0(value)3.533 E F1 1.033
+(are each e)3.533 F -.25(va)-.25 G 1.034(luated as arithmetic e).25 F
+(x-)-.15 E .353
+(pressions, and the sum of the results is assigned as the v)108 360 R
+(ariable')-.25 E 2.853(sv)-.55 G 2.852(alue. The)-3.103 F .352
+(current v)2.852 F .352(alue is usually an in-)-.25 F(te)108 372 Q .254
+(ger constant, b)-.15 F .254(ut may be an e)-.2 F 2.754(xpression. When)
+-.15 F .254(+= is applied to an array v)2.754 F .255
+(ariable using compound assign-)-.25 F .663(ment \(see)108 384 R F3
+(Arrays)3.163 E F1(belo)3.163 E .663(w\), the v)-.25 F(ariable')-.25 E
+3.163(sv)-.55 G .662
+(alue is not unset \(as it is when using =\), and ne)-3.413 F 3.162(wv)
+-.25 G .662(alues are ap-)-3.412 F .306(pended to the array be)108 396 R
+.306(ginning at one greater than the array')-.15 F 2.807(sm)-.55 G .307
+(aximum inde)-2.807 F 2.807(x\()-.15 G .307(for inde)-2.807 F -.15(xe)
+-.15 G 2.807(da).15 G .307(rrays\) or added)-2.807 F .246
+(as additional k)108 408 R -.15(ey)-.1 G<ad76>.15 E .246
+(alue pairs in an associati)-.25 F .546 -.15(ve a)-.25 H(rray).15 E
+5.246(.W)-.65 G .246(hen applied to a string-v)-5.246 F .245(alued v)
+-.25 F(ariable,)-.25 E F0(value)2.745 E F1 .245(is e)2.745 F(x-)-.15 E
+(panded and appended to the v)108 420 Q(ariable')-.25 E 2.5(sv)-.55 G
+(alue.)-2.75 E 3.382(Av)108 436.8 S .882(ariable can be assigned the)
+-3.632 F F0(namer)3.382 E(ef)-.37 E F1(attrib)3.382 E .882
+(ute using the)-.2 F F3<ad6e>3.382 E F1 .882(option to the)3.382 F F3
+(declar)3.382 E(e)-.18 E F1(or)3.383 E F3(local)3.383 E F1 -.2(bu)3.383
+G .883(iltin com-).2 F .316(mands \(see the descriptions of)108 448.8 R
+F3(declar)2.816 E(e)-.18 E F1(and)2.816 E F3(local)2.816 E F1(belo)2.816
+E .316(w\) to create a)-.25 F F0(namer)2.815 E(ef)-.37 E F1 2.815(,o)C
+2.815(rar)-2.815 G .315(eference to another v)-2.815 F(ari-)-.25 E 2.918
+(able. This)108 460.8 R(allo)2.918 E .418(ws v)-.25 F .418
+(ariables to be manipulated indirectly)-.25 F 5.419(.W)-.65 G(hene)
+-5.419 E -.15(ve)-.25 G 2.919(rt).15 G .419(he nameref v)-2.919 F .419
+(ariable is referenced, as-)-.25 F .133
+(signed to, unset, or has its attrib)108 472.8 R .132
+(utes modi\214ed \(other than using or changing the)-.2 F F0(namer)2.632
+E(ef)-.37 E F1(attrib)2.632 E .132(ute itself\), the)-.2 F 1.356
+(operation is actually performed on the v)108 484.8 R 1.357
+(ariable speci\214ed by the nameref v)-.25 F(ariable')-.25 E 3.857(sv)
+-.55 G 3.857(alue. A)-4.107 F 1.357(nameref is)3.857 F .972
+(commonly used within shell functions to refer to a v)108 496.8 R .971
+(ariable whose name is passed as an ar)-.25 F .971(gument to the)-.18 F
+2.5(function. F)108 508.8 R(or instance, if a v)-.15 E
+(ariable name is passed to a shell function as its \214rst ar)-.25 E
+(gument, running)-.18 E/F6 10/Courier@0 SF(declare \255n ref=$1)144
+525.6 Q F1 .385(inside the function creates a local nameref v)108 542.4
+R(ariable)-.25 E F3 -.18(re)2.885 G(f).18 E F1 .385(whose v)2.885 F .385
+(alue is the v)-.25 F .385(ariable name passed as the \214rst)-.25 F(ar)
+108 554.4 Q 3.531(gument. References)-.18 F 1.031(and assignments to)
+3.531 F F3 -.18(re)3.531 G(f).18 E F1 3.531(,a)C 1.031
+(nd changes to its attrib)-3.531 F 1.03
+(utes, are treated as references, as-)-.2 F .196(signments, and attrib)
+108 566.4 R .196(ute modi\214cations to the v)-.2 F .196
+(ariable whose name w)-.25 F .196(as passed as)-.1 F F3($1)2.696 E F1
+5.197(.I)C 2.697(ft)-5.197 G .197(he control v)-2.697 F(ariable)-.25 E
+.006(in a)108 578.4 R F3 -.25(fo)2.506 G(r).25 E F1 .006
+(loop has the nameref attrib)2.506 F .006(ute, the list of w)-.2 F .006
+(ords can be a list of shell v)-.1 F .006
+(ariables, and a name reference)-.25 F .325(is established for each w)
+108 590.4 R .325(ord in the list, in turn, when the loop is e)-.1 F -.15
+(xe)-.15 G 2.826(cuted. Array).15 F -.25(va)2.826 G .326
+(riables cannot be gi).25 F -.15(ve)-.25 G(n).15 E(the)108 602.4 Q F3
+(namer)2.536 E(ef)-.18 E F1(attrib)2.536 E 2.536(ute. Ho)-.2 F(we)-.25 E
+-.15(ve)-.25 G .836 -.4(r, n).15 H .036(ameref v).4 F .035
+(ariables can reference array v)-.25 F .035
+(ariables and subscripted array v)-.25 F(ari-)-.25 E 2.586
+(ables. Namerefs)108 614.4 R .086(can be unset using the)2.586 F F3
+<ad6e>2.587 E F1 .087(option to the)2.587 F F3(unset)2.587 E F1 -.2(bu)
+2.587 G 2.587(iltin. Otherwise,).2 F(if)2.587 E F3(unset)2.587 E F1 .087
+(is e)2.587 F -.15(xe)-.15 G .087(cuted with).15 F
+(the name of a nameref v)108 626.4 Q(ariable as an ar)-.25 E
+(gument, the v)-.18 E(ariable referenced by the nameref v)-.25 E
+(ariable is unset.)-.25 E F3 -.2(Po)87 643.2 S(sitional P).2 E
+(arameters)-.1 E F1(A)108 655.2 Q F0 .706(positional par)4.456 F(ameter)
+-.15 E F1 .706(is a parameter denoted by one or more digits, other than\
+ the single digit 0.)3.936 F(Posi-)5.705 E .444
+(tional parameters are assigned from the shell')108 667.2 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 679.2 Q F3
+(set)3.334 E F1 -.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(positional parameters are temporarily replaced when a shel\
+l function is e)108 691.2 Q -.15(xe)-.15 G(cuted \(see).15 E F4
+(FUNCTIONS)2.5 E F1(belo)2.25 E(w\).)-.25 E 1.403(When a positional par\
+ameter consisting of more than a single digit is e)108 708 R 1.404
+(xpanded, it must be enclosed in)-.15 F .436(braces \(see)108 720 R F4
+(EXP)2.936 E(ANSION)-.666 E F1(belo)2.686 E 2.936(w\). W)-.25 F .435
+(ithout braces, a digit follo)-.4 F .435
+(wing $ can only refer to one of the \214rst nine)-.25 F(GNU Bash 5.3)72
+768 Q(2024 December 12)136.795 E(10)185.955 E 0 Cg EP
+%%Page: 11 11
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(positional parameters \()108 84 Q/F2 10
+/Times-Bold@0 SF($1\255$9)A F1 2.5(\)o)C 2.5(rt)-2.5 G
+(he special parameter)-2.5 E F2($0)2.5 E F1(\(see the ne)2.5 E
+(xt section\).)-.15 E F2(Special P)87 100.8 Q(arameters)-.1 E F1 1.674
+(The shell treats se)108 112.8 R -.15(ve)-.25 G 1.674
+(ral parameters specially).15 F 6.675(.T)-.65 G 1.675
+(hese parameters may only be referenced; assignment to)-6.675 F
+(them is not allo)108 124.8 Q 2.5(wed. Special)-.25 F
+(parameters are denoted by one of the follo)2.5 E(wing characters.)-.25
+E F2(*)108 141.6 Q F1(\()144 141.6 Q F2($*)A F1 3.478(\)E)C .978
+(xpands to the positional parameters, starting from one.)-3.478 F .978
+(When the e)5.978 F .977(xpansion is not within)-.15 F .383
+(double quotes, each positional parameter e)144 153.6 R .383
+(xpands to a separate w)-.15 F 2.883(ord. In)-.1 F(conte)2.883 E .383
+(xts where w)-.15 F .383(ord e)-.1 F(x-)-.15 E .131
+(pansions are performed, those w)144 165.6 R .131
+(ords are subject to further w)-.1 F .13(ord splitting and pathname e)
+-.1 F(xpansion.)-.15 E 1.095(When the e)144 177.6 R 1.095
+(xpansion occurs within double quotes, it e)-.15 F 1.096
+(xpands to a single w)-.15 F 1.096(ord with the v)-.1 F 1.096(alue of)
+-.25 F .628(each parameter separated by the \214rst character of the)144
+189.6 R/F3 9/Times-Bold@0 SF(IFS)3.128 E F1 -.25(va)2.878 G 3.128
+(riable. That).25 F(is,)3.128 E F2("$*")3.128 E F1 .627(is equi)3.128 F
+-.25(va)-.25 G .627(lent to).25 F F2("$1)144 201.6 Q F0(c)A F2($2)A F0
+(c)A F2 1.666(...)C(")-1.666 E F1 2.805(,w)C(here)-2.805 E F0(c)3.005 E
+F1 .306(is the \214rst character of the v)3.115 F .306(alue of the)-.25
+F F3(IFS)2.806 E F1 -.25(va)2.556 G 2.806(riable. If).25 F F3(IFS)2.806
+E F1 .306(is unset, the pa-)2.556 F .129
+(rameters are separated by spaces.)144 213.6 R(If)5.129 E F3(IFS)2.629 E
+F1 .129(is null, the parameters are joined without interv)2.379 F .129
+(ening sep-)-.15 F(arators.)144 225.6 Q F2(@)108 237.6 Q F1(\()144 237.6
+Q F2($@)A F1 2.86(\)E)C .361
+(xpands to the positional parameters, starting from one.)-2.86 F .361
+(In conte)5.361 F .361(xts where w)-.15 F .361(ord splitting is)-.1 F
+.253(performed, this e)144 249.6 R .253
+(xpands each positional parameter to a separate w)-.15 F .253
+(ord; if not within double quotes,)-.1 F .396(these w)144 261.6 R .396
+(ords are subject to w)-.1 F .396(ord splitting.)-.1 F .396(In conte)
+5.396 F .396(xts where w)-.15 F .396
+(ord splitting is not performed, such)-.1 F .149(as the v)144 273.6 R
+.148(alue portion of an assignment statement, this e)-.25 F .148
+(xpands to a single w)-.15 F .148(ord with each positional)-.1 F .155
+(parameter separated by a space.)144 285.6 R .155(When the e)5.155 F
+.155(xpansion occurs within double quotes, and w)-.15 F .155(ord split-)
+-.1 F 1.484(ting is performed, each parameter e)144 297.6 R 1.484
+(xpands to a separate w)-.15 F 3.984(ord. That)-.1 F(is,)3.984 E F2
+("$@")3.984 E F1 1.484(is equi)3.984 F -.25(va)-.25 G 1.484(lent to).25
+F F2("$1" "$2" .)144 309.6 Q 1.666(..)1.666 G F1 .205
+(If the double-quoted e)3.538 F .205(xpansion occurs within a w)-.15 F
+.205(ord, the e)-.1 F .205(xpansion of the \214rst pa-)-.15 F .361
+(rameter is joined with the e)144 321.6 R .361(xpansion of the be)-.15 F
+.36(ginning part of the original w)-.15 F .36(ord, and the e)-.1 F
+(xpansion)-.15 E .196(of the last parameter is joined with the e)144
+333.6 R .197(xpansion of the last part of the original w)-.15 F 2.697
+(ord. When)-.1 F(there)2.697 E(are no positional parameters,)144 345.6 Q
+F2("$@")2.5 E F1(and)2.5 E F2($@)2.5 E F1 -.15(ex)2.5 G
+(pand to nothing \(i.e., the).15 E 2.5(ya)-.15 G(re remo)-2.5 E -.15(ve)
+-.15 G(d\).).15 E F2(#)108 357.6 Q F1(\()144 357.6 Q F2($#)A F1 2.5(\)E)
+C(xpands to the number of positional parameters in decimal.)-2.5 E F2(?)
+108 369.6 Q F1(\()144 369.6 Q F2($?)A F1 2.5(\)E)C(xpands to the e)-2.5
+E(xit status of the most recently e)-.15 E -.15(xe)-.15 G
+(cuted command.).15 E F2<ad>108 381.6 Q F1(\()144 381.6 Q F2<24ad>A F1
+2.78(\)E)C .279
+(xpands to the current option \215ags as speci\214ed upon in)-2.78 F -.2
+(vo)-.4 G .279(cation, by the).2 F F2(set)2.779 E F1 -.2(bu)2.779 G .279
+(iltin command,).2 F(or those set by the shell itself \(such as the)144
+393.6 Q F2<ad69>2.5 E F1(option\).)2.5 E F2($)108 405.6 Q F1(\()144
+405.6 Q F2($$)A F1 2.835(\)E)C .335
+(xpands to the process ID of the shell.)-2.835 F .335
+(In a subshell, it e)5.335 F .335(xpands to the process ID of the par)
+-.15 F(-)-.2 E(ent shell, not the subshell.)144 417.6 Q F2(!)108 429.6 Q
+F1(\()144 429.6 Q F2($!)A F1 .722(\)Expands to the process ID of the jo\
+b most recently placed into the background, whether e)B -.15(xe)-.15 G
+(-).15 E(cuted as an asynchronous command or using the)144 441.6 Q F2
+(bg)2.5 E F1 -.2(bu)2.5 G(iltin \(see).2 E F3(JOB CONTR)2.5 E(OL)-.27 E
+F1(belo)2.25 E(w\).)-.25 E F2(0)108 453.6 Q F1(\()144 453.6 Q F2($0)A F1
+3.094(\)E)C .594(xpands to the name of the shell or shell script.)-3.094
+F .594(This is set at shell initialization.)5.594 F(If)5.595 E F2(bash)
+3.095 E F1(is)3.095 E(in)144 465.6 Q -.2(vo)-.4 G -.1(ke).2 G 3.078(dw)
+.1 G .578(ith a \214le of commands,)-3.078 F F2($0)3.078 E F1 .578
+(is set to the name of that \214le.)3.078 F(If)5.577 E F2(bash)3.077 E
+F1 .577(is started with the)3.077 F F2<ad63>3.077 E F1 .368
+(option, then)144 477.6 R F2($0)2.869 E F1 .369
+(is set to the \214rst ar)2.869 F .369(gument after the string to be e)
+-.18 F -.15(xe)-.15 G .369(cuted, if one is present.).15 F(Other)5.369 E
+(-)-.2 E(wise, it is set to the \214lename used to in)144 489.6 Q -.2
+(vo)-.4 G -.1(ke).2 G F2(bash)2.6 E F1 2.5(,a)C 2.5(sg)-2.5 G -2.15 -.25
+(iv e)-2.5 H 2.5(nb).25 G 2.5(ya)-2.5 G -.18(rg)-2.5 G(ument zero.).18 E
+F2(Shell V)87 506.4 Q(ariables)-.92 E F1(The shell sets follo)108 518.4
+Q(wing v)-.25 E(ariables:)-.25 E F2(_)108 535.2 Q F1(\()144 535.2 Q F2
+($_)A F1 2.555(,a)C 2.555(nu)-2.555 G .055
+(nderscore\) This has a number of meanings depending on conte)-2.555 F
+2.555(xt. At)-.15 F .054(shell startup,)2.554 F F2(_)2.554 E F1 .054
+(is set)2.554 F .912(to the pathname used to in)144 547.2 R -.2(vo)-.4 G
+1.112 -.1(ke t).2 H .912(he shell or shell script being e).1 F -.15(xe)
+-.15 G .913(cuted as passed in the en).15 F(viron-)-.4 E .57(ment or ar)
+144 559.2 R .57(gument list.)-.18 F(Subsequently)5.57 E 3.07(,i)-.65 G
+3.069(te)-3.07 G .569(xpands to the last ar)-3.219 F .569
+(gument to the pre)-.18 F .569(vious simple com-)-.25 F .008(mand e)144
+571.2 R -.15(xe)-.15 G .008(cuted in the fore).15 F .008
+(ground, after e)-.15 F 2.508(xpansion. It)-.15 F .008
+(is also set to the full pathname used to in)2.508 F -.2(vo)-.4 G -.1
+(ke).2 G .556(each command e)144 583.2 R -.15(xe)-.15 G .556
+(cuted and placed in the en).15 F .555(vironment e)-.4 F .555
+(xported to that command.)-.15 F .555(When check-)5.555 F(ing mail,)144
+595.2 Q F2($_)2.5 E F1 -.15(ex)2.5 G
+(pands to the name of the mail \214le currently being check).15 E(ed.)
+-.1 E F2 -.3(BA)108 607.2 S(SH).3 E F1
+(Expands to the full \214lename used to in)144 607.2 Q -.2(vo)-.4 G .2
+-.1(ke t).2 H(his instance of).1 E F2(bash)2.5 E F1(.)A F2 -.3(BA)108
+619.2 S(SHOPTS).3 E F1 2.548(Ac)144 631.2 S .049
+(olon-separated list of enabled shell options.)-2.548 F .049(Each w)
+5.049 F .049(ord in the list is a v)-.1 F .049(alid ar)-.25 F .049
+(gument for the)-.18 F F2<ad73>2.549 E F1 .116(option to the)144 643.2 R
+F2(shopt)2.616 E F1 -.2(bu)2.616 G .116(iltin command \(see).2 F F3 .116
+(SHELL B)2.616 F(UIL)-.09 E .116(TIN COMMANDS)-.828 F F1(belo)2.366 E
+2.616(w\). The)-.25 F .115(options ap-)2.615 F 1.066(pearing in)144
+655.2 R F3 -.27(BA)3.566 G(SHOPTS).27 E F1 1.066(are those reported as)
+3.316 F F0(on)3.796 E F1(by)3.807 E F2(shopt)3.567 E F1 6.067(.I)C 3.567
+(ft)-6.067 G 1.067(his v)-3.567 F 1.067(ariable is in the en)-.25 F
+(vironment)-.4 E(when)144 667.2 Q F2(bash)2.766 E F1 .266
+(starts up, the shell enables each option in the list before reading an)
+2.766 F 2.766(ys)-.15 G .265(tartup \214les.)-2.766 F(This)5.265 E -.25
+(va)144 679.2 S(riable is read-only).25 E(.)-.65 E F2 -.3(BA)108 691.2 S
+(SHPID).3 E F1 .187(Expands to the process ID of the current)144 703.2 R
+F2(bash)2.687 E F1 2.688(process. This)2.688 F(dif)2.688 E .188
+(fers from)-.25 F F2($$)2.688 E F1 .188(under certain circum-)2.688 F
+.548(stances, such as subshells that do not require)144 715.2 R F2(bash)
+3.048 E F1 .548(to be re-initialized.)3.048 F .548(Assignments to)5.548
+F F3 -.27(BA)3.048 G(SHPID).27 E F1(ha)144 727.2 Q .3 -.15(ve n)-.2 H
+2.5(oe).15 G -.25(ff)-2.5 G 2.5(ect. If).25 F F3 -.27(BA)2.5 G(SHPID).27
+E F1(is unset, it loses its special properties, e)2.25 E -.15(ve)-.25 G
+2.5(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G
+(ubsequently reset.)-2.5 E(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(11)185.955 E 0 Cg EP
+%%Page: 12 12
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF -.3(BA)108 84 S(SH_ALIASES).3
+E F1 1.195(An associati)144 96 R 1.495 -.15(ve a)-.25 H 1.195(rray v).15
+F 1.195(ariable whose members correspond to the internal list of aliase\
+s as main-)-.25 F .16(tained by the)144 108 R F2(alias)2.66 E F1 -.2(bu)
+2.66 G 2.66(iltin. Elements).2 F .16
+(added to this array appear in the alias list; ho)2.66 F(we)-.25 E -.15
+(ve)-.25 G .96 -.4(r, u).15 H(nsetting).4 E .142
+(array elements currently does not remo)144 120 R .442 -.15(ve a)-.15 H
+.142(liases from the alias list.).15 F(If)5.142 E/F3 9/Times-Bold@0 SF
+-.27(BA)2.642 G(SH_ALIASES).27 E F1 .143(is unset, it)2.392 F
+(loses its special properties, e)144 132 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 F2
+-.3(BA)108 144 S(SH_ARGC).3 E F1 .935(An array v)144 156 R .935
+(ariable whose v)-.25 F .934
+(alues are the number of parameters in each frame of the current)-.25 F
+F2(bash)3.434 E F1 -.15(exe)144 168 S .535(cution call stack.).15 F .535
+(The number of parameters to the current subroutine \(shell function or\
+ script)5.535 F -.15(exe)144 180 S .142(cuted with).15 F F2(.)2.642 E F1
+(or)2.642 E F2(sour)2.642 E(ce)-.18 E F1 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.265(parameters passed is pushed onto)144
+192 R F3 -.27(BA)3.765 G(SH_ARGC).27 E/F4 9/Times-Roman@0 SF(.)A F1
+1.265(The shell sets)5.765 F F3 -.27(BA)3.765 G(SH_ARGC).27 E F1 1.265
+(only when in e)3.515 F(x-)-.15 E .948(tended deb)144 204 R .947
+(ugging mode \(see the description of the)-.2 F F2(extdeb)3.447 E(ug)-.2
+E F1 .947(option to the)3.447 F F2(shopt)3.447 E F1 -.2(bu)3.447 G .947
+(iltin belo).2 F(w\).)-.25 E(Setting)144 216 Q F2(extdeb)3.362 E(ug)-.2
+E F1 .862(after the shell has started to e)3.362 F -.15(xe)-.15 G .863
+(cute a script, or referencing this v).15 F .863(ariable when)-.25 F F2
+(extdeb)144 228 Q(ug)-.2 E F1 .706
+(is not set, may result in inconsistent v)3.207 F 3.206
+(alues. Assignments)-.25 F(to)3.206 E F3 -.27(BA)3.206 G(SH_ARGC).27 E
+F1(ha)2.956 E 1.006 -.15(ve n)-.2 H 3.206(oe).15 G(f-)-3.206 E
+(fect, and it may not be unset.)144 240 Q F2 -.3(BA)108 252 S(SH_ARGV).3
+E F1 .206(An array v)144 264 R .206
+(ariable containing all of the parameters in the current)-.25 F F2(bash)
+2.706 E F1 -.15(exe)2.706 G .207(cution call stack.).15 F .207
+(The \214-)5.207 F .567(nal parameter of the last subroutine call is at\
+ the top of the stack; the \214rst parameter of the initial)144 276 R
+.066(call is at the bottom.)144 288 R .067(When a subroutine is e)5.067
+F -.15(xe)-.15 G .067
+(cuted, the shell pushes the supplied parameters onto).15 F F3 -.27(BA)
+144 300 S(SH_ARGV).27 E F4(.)A F1 .854(The shell sets)5.354 F F3 -.27
+(BA)3.354 G(SH_ARGV).27 E F1 .853(only when in e)3.104 F .853
+(xtended deb)-.15 F .853(ugging mode \(see the de-)-.2 F .475
+(scription of the)144 312 R F2(extdeb)2.975 E(ug)-.2 E F1 .475
+(option to the)2.975 F F2(shopt)2.975 E F1 -.2(bu)2.975 G .475
+(iltin belo).2 F 2.975(w\). Setting)-.25 F F2(extdeb)2.976 E(ug)-.2 E F1
+.476(after the shell has)2.976 F .45(started to e)144 324 R -.15(xe)-.15
+G .45(cute a script, or referencing this v).15 F .45(ariable when)-.25 F
+F2(extdeb)2.95 E(ug)-.2 E F1 .45(is not set, may result in in-)2.95 F
+(consistent v)144 336 Q 2.5(alues. Assignments)-.25 F(to)2.5 E F3 -.27
+(BA)2.5 G(SH_ARGV).27 E F1(ha)2.25 E .3 -.15(ve n)-.2 H 2.5(oe).15 G
+-.25(ff)-2.5 G(ect, and it may not be unset.).25 E F2 -.3(BA)108 348 S
+(SH_ARGV0).3 E F1 .25(When referenced, this v)144 360 R .25(ariable e)
+-.25 F .251
+(xpands to the name of the shell or shell script \(identical to)-.15 F
+F2($0)2.751 E F1 2.751(;s)C(ee)-2.751 E .679
+(the description of special parameter 0 abo)144 372 R -.15(ve)-.15 G
+3.179(\). Assigning).15 F 3.178(av)3.178 G .678(alue to)-3.428 F F3 -.27
+(BA)3.178 G(SH_ARGV0).27 E F1(sets)2.928 E F2($0)3.178 E F1 .678(to the)
+3.178 F .45(same v)144 384 R 2.95(alue. If)-.25 F F3 -.27(BA)2.95 G
+(SH_ARGV0).27 E F1 .45(is unset, it loses its special properties, e)2.7
+F -.15(ve)-.25 G 2.951(ni).15 G 2.951(fi)-2.951 G 2.951(ti)-2.951 G
+2.951(ss)-2.951 G .451(ubsequently re-)-2.951 F(set.)144 396 Q F2 -.3
+(BA)108 408 S(SH_CMDS).3 E F1 .668(An associati)144 420 R .968 -.15
+(ve a)-.25 H .668(rray v).15 F .668(ariable whose members correspond to\
+ the internal hash table of commands)-.25 F .708(as maintained by the)
+144 432 R F2(hash)3.208 E F1 -.2(bu)3.208 G 3.208(iltin. Adding).2 F
+.708(elements to this array mak)3.208 F .708(es them appear in the hash)
+-.1 F .059(table; ho)144 444 R(we)-.25 E -.15(ve)-.25 G .859 -.4(r, u)
+.15 H .059(nsetting array elements currently does not remo).4 F .358
+-.15(ve c)-.15 H .058(ommand names from the hash).15 F 2.5(table. If)144
+456 R F3 -.27(BA)2.5 G(SH_CMDS).27 E F1
+(is unset, it loses its special properties, e)2.25 E -.15(ve)-.25 G 2.5
+(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
+-2.5 E F2 -.3(BA)108 468 S(SH_COMMAND).3 E F1 .21
+(Expands to the command currently being e)144 480 R -.15(xe)-.15 G .21
+(cuted or about to be e).15 F -.15(xe)-.15 G .21
+(cuted, unless the shell is e).15 F -.15(xe)-.15 G(-).15 E .304(cuting \
+a command as the result of a trap, in which case it is the command e)144
+492 R -.15(xe)-.15 G .304(cuting at the time of).15 F .15(the trap.)144
+504 R(If)5.15 E F3 -.27(BA)2.65 G(SH_COMMAND).27 E F1 .15
+(is unset, it loses its special properties, e)2.4 F -.15(ve)-.25 G 2.651
+(ni).15 G 2.651(fi)-2.651 G 2.651(ti)-2.651 G 2.651(ss)-2.651 G .151
+(ubsequently re-)-2.651 F(set.)144 516 Q F2 -.3(BA)108 528 S
+(SH_EXECUTION_STRING).3 E F1(The command ar)144 540 Q(gument to the)-.18
+E F2<ad63>2.5 E F1(in)2.5 E -.2(vo)-.4 G(cation option.).2 E F2 -.3(BA)
+108 552 S(SH_LINENO).3 E F1 .693(An array v)144 564 R .692(ariable whos\
+e members are the line numbers in source \214les where each correspondi\
+ng)-.25 F .969(member of)144 576 R F3(FUNCN)3.469 E(AME)-.18 E F1 -.1
+(wa)3.219 G 3.469(si).1 G -1.9 -.4(nv o)-3.469 H -.1(ke).4 G(d.).1 E F2
+(${B)5.969 E(ASH_LINENO[)-.3 E F0($i)A F2(]})A F1 .97
+(is the line number in the source)3.469 F 14.672(\214le \()144 588 R F2
+(${B)A(ASH_SOURCE[)-.3 E F0($i+1)A F2(]})A F1 17.172(\)w)C(here)-17.172
+E F2(${FUNCN)17.172 E(AME[)-.2 E F0($i)A F2(]})A F1 -.1(wa)17.172 G
+17.171(sc).1 G 14.671(alled \(or)-17.171 F F2(${B)144 600 Q(ASH_LINENO[)
+-.3 E F0($i\2551)A F2(]})A F1 1.256
+(if referenced within another shell function\).)3.756 F(Use)6.257 E F3
+(LINENO)3.757 E F1 1.257(to obtain)3.507 F(the current line number)144
+612 Q 5(.A)-.55 G(ssignments to)-5 E F3 -.27(BA)2.5 G(SH_LINENO).27 E F1
+(ha)2.25 E .3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G
+(ect, and it may not be unset.).25 E F2 -.3(BA)108 624 S(SH_LO).3 E(AD)
+-.4 E(ABLES_P)-.35 E -.95(AT)-.74 G(H).95 E F1 3.287(Ac)144 636 S .786
+(olon-separated list of directories in which the)-3.287 F F2(enable)
+3.286 E F1 3.286(command. looks)3.286 F .786(for dynamically load-)3.286
+F(able b)144 648 Q(uiltins.)-.2 E F2 -.3(BA)108 660 S(SH_MONOSECONDS).3
+E F1 .706(Each time this v)144 672 R .706(ariable is referenced, it e)
+-.25 F .707(xpands to the v)-.15 F .707(alue returned by the system')
+-.25 F 3.207(sm)-.55 G(onotonic)-3.207 E .058(clock, if one is a)144 684
+R -.25(va)-.2 G 2.558(ilable. If).25 F .057
+(there is no monotonic clock, this is equi)2.557 F -.25(va)-.25 G .057
+(lent to).25 F F2(EPOCHSECONDS)2.557 E F1(.)A(If)144 696 Q F3 -.27(BA)
+2.5 G(SH_MONOSECONDS).27 E F1
+(is unset, it loses its special properties, e)2.25 E -.15(ve)-.25 G 2.5
+(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
+-2.5 E(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(12)185.955 E 0
+Cg EP
+%%Page: 13 13
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF -.3(BA)108 84 S(SH_REMA).3 E
+(TCH)-.95 E F1 1.418(An array v)144 96 R 1.418
+(ariable whose members are assigned by the)-.25 F F2<3d01>3.918 E F1
+1.418(binary operator to the)3.918 F F2([[)3.918 E F1(conditional)3.918
+E 3.462(command. The)144 108 R .962(element with inde)3.462 F 3.462(x0i)
+-.15 G 3.462(st)-3.462 G .962
+(he portion of the string matching the entire re)-3.462 F .961(gular e)
+-.15 F(x-)-.15 E 3.82(pression. The)144 120 R 1.32(element with inde)
+3.82 F(x)-.15 E F0(n)3.82 E F1 1.32
+(is the portion of the string matching the)3.82 F F0(n)3.82 E F1 1.32
+(th parenthesized)B(sube)144 132 Q(xpression.)-.15 E F2 -.3(BA)108 144 S
+(SH_SOURCE).3 E F1 .126(An array v)144 156 R .125(ariable whose members\
+ are the source \214lenames where the corresponding shell function)-.25
+F .78(names in the)144 168 R/F3 9/Times-Bold@0 SF(FUNCN)3.28 E(AME)-.18
+E F1 .78(array v)3.03 F .78(ariable are de\214ned.)-.25 F .78
+(The shell function)5.78 F F2(${FUNCN)3.281 E(AME[)-.2 E F0($i)A F2(]})A
+F1(is)3.281 E .425(de\214ned in the \214le)144 180 R F2(${B)2.925 E
+(ASH_SOURCE[)-.3 E F0($i)A F2(]})A F1 .424(and called from)2.924 F F2
+(${B)2.924 E(ASH_SOURCE[)-.3 E F0($i+1)A F2(]})A F1 5.424(.A)C(ssign-)
+-5.424 E(ments to)144 192 Q F3 -.27(BA)2.5 G(SH_SOURCE).27 E F1(ha)2.25
+E .3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G
+(ect, and it may not be unset.).25 E F2 -.3(BA)108 204 S(SH_SUBSHELL).3
+E F1 .296(Incremented by one within each subshell or subshell en)144 216
+R .296(vironment when the shell be)-.4 F .297(gins e)-.15 F -.15(xe)-.15
+G(cuting).15 E .233(in that en)144 228 R 2.732(vironment. The)-.4 F .232
+(initial v)2.732 F .232(alue is 0.)-.25 F(If)5.232 E F3 -.27(BA)2.732 G
+(SH_SUBSHELL).27 E F1 .232(is unset, it loses its special prop-)2.482 F
+(erties, e)144 240 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 F2 -.3(BA)108 252 S
+(SH_TRAPSIG).3 E F1 .203
+(Set to the signal number corresponding to the trap action being e)144
+264 R -.15(xe)-.15 G .203(cuted during its e).15 F -.15(xe)-.15 G 2.703
+(cution. See).15 F .783(the description of)144 276 R F2(trap)3.282 E F1
+(under)3.282 E F3 .782(SHELL B)3.282 F(UIL)-.09 E .782(TIN COMMANDS)
+-.828 F F1(belo)3.032 E 3.282(wf)-.25 G .782
+(or information about signal)-3.282 F(numbers and trap e)144 288 Q -.15
+(xe)-.15 G(cution.).15 E F2 -.3(BA)108 300 S(SH_VERSINFO).3 E F1 2.644
+(Ar)144 312 S .144(eadonly array v)-2.644 F .144
+(ariable whose members hold v)-.25 F .144
+(ersion information for this instance of)-.15 F F2(bash)2.645 E F1 5.145
+(.T)C(he)-5.145 E -.25(va)144 324 S
+(lues assigned to the array members are as follo).25 E(ws:)-.25 E F2 -.3
+(BA)144 336 S(SH_VERSINFO[).3 E F1(0)A F2(])A F1(The major v)264 336 Q
+(ersion number \(the)-.15 E F0 -.37(re)2.5 G(lease).37 E F1(\).)A F2 -.3
+(BA)144 348 S(SH_VERSINFO[).3 E F1(1)A F2(])A F1(The minor v)264 348 Q
+(ersion number \(the)-.15 E F0(ver)2.5 E(sion)-.1 E F1(\).)A F2 -.3(BA)
+144 360 S(SH_VERSINFO[).3 E F1(2)A F2(])A F1(The patch le)264 360 Q -.15
+(ve)-.25 G(l.).15 E F2 -.3(BA)144 372 S(SH_VERSINFO[).3 E F1(3)A F2(])A
+F1(The b)264 372 Q(uild v)-.2 E(ersion.)-.15 E F2 -.3(BA)144 384 S
+(SH_VERSINFO[).3 E F1(4)A F2(])A F1(The release status \(e.g.,)264 384 Q
+F0(beta)2.5 E F1(\).)A F2 -.3(BA)144 396 S(SH_VERSINFO[).3 E F1(5)A F2
+(])A F1(The v)264 396 Q(alue of)-.25 E F3(MA)2.5 E(CHTYPE)-.495 E/F4 9
+/Times-Roman@0 SF(.)A F2 -.3(BA)108 408 S(SH_VERSION).3 E F1
+(Expands to a string describing the v)144 420 Q
+(ersion of this instance of)-.15 E F2(bash)2.5 E F1
+(\(e.g., 5.2.37\(3\)-release\).)2.5 E F2(COMP_CW)108 432 Q(ORD)-.1 E F1
+.397(An inde)144 444 R 2.897(xi)-.15 G(nto)-2.897 E F2(${COMP_W)2.896 E
+(ORDS})-.1 E F1 .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 456 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 F2(Pr)144 468 Q(ogrammable Completion)-.18 E
+F1(belo)2.5 E(w\).)-.25 E F2(COMP_KEY)108 480 Q F1 .017(The k)144 492 R
+.317 -.15(ey \()-.1 H .017(or \214nal k).15 F .317 -.15(ey o)-.1 H 2.517
+(fak).15 G .317 -.15(ey s)-2.617 H .016(equence\) used to in).15 F -.2
+(vo)-.4 G .216 -.1(ke t).2 H .016(he current completion function.).1 F
+.016(This v)5.016 F(ari-)-.25 E 1.612(able is a)144 504 R -.25(va)-.2 G
+1.612(ilable only in shell functions and e).25 F 1.612
+(xternal commands in)-.15 F -.2(vo)-.4 G -.1(ke).2 G 4.113(db).1 G 4.113
+(yt)-4.113 G 1.613(he programmable)-4.113 F(completion f)144 516 Q
+(acilities \(see)-.1 E F2(Pr)2.5 E(ogrammable Completion)-.18 E F1(belo)
+2.5 E(w\).)-.25 E F2(COMP_LINE)108 528 Q F1 1.208
+(The current command line.)144 540 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
+1.037(mands in)144 552 R -.2(vo)-.4 G -.1(ke).2 G 3.537(db).1 G 3.537
+(yt)-3.537 G 1.037(he programmable completion f)-3.537 F 1.037
+(acilities \(see)-.1 F F2(Pr)3.537 E 1.037(ogrammable Completion)-.18 F
+F1(be-)3.537 E(lo)144 564 Q(w\).)-.25 E F2(COMP_POINT)108 576 Q F1 .667
+(The inde)144 588 R 3.167(xo)-.15 G 3.167(ft)-3.167 G .666
+(he current cursor position relati)-3.167 F .966 -.15(ve t)-.25 H 3.166
+(ot).15 G .666(he be)-3.166 F .666(ginning of the current command.)-.15
+F .666(If the)5.666 F .534
+(current cursor position is at the end of the current command, the v)144
+600 R .535(alue of this v)-.25 F .535(ariable is equal to)-.25 F F2
+(${#COMP_LINE})144 612 Q F1 5.705(.T)C .705(his v)-5.705 F .704
+(ariable is a)-.25 F -.25(va)-.2 G .704
+(ilable only in shell functions and e).25 F .704(xternal commands in-)
+-.15 F -.2(vo)144 624 S -.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 F2(Pr)2.5 E
+(ogrammable Completion)-.18 E F1(belo)2.5 E(w\).)-.25 E F2(COMP_TYPE)108
+636 Q F1 .041(Set to an inte)144 648 R .041(ger v)-.15 F .041(alue corr\
+esponding to the type of attempted completion that caused a completion)
+-.25 F .338(function to be called:)144 660 R F0 -.5(TA)2.837 G(B).5 E F1
+2.837(,f)C .337(or normal completion,)-2.837 F F0(?)2.837 E F1 2.837(,f)
+C .337(or listing completions after successi)-2.837 F .637 -.15(ve t)
+-.25 H(abs,).15 E F0(!)144 672 Q F1 3.067(,f)C .567
+(or listing alternati)-3.067 F -.15(ve)-.25 G 3.067(so).15 G 3.067(np)
+-3.067 G .567(artial w)-3.067 F .567(ord completion,)-.1 F F0(@)3.067 E
+F1 3.067(,t)C 3.067(ol)-3.067 G .567(ist completions if the w)-3.067 F
+.567(ord is not un-)-.1 F .418(modi\214ed, or)144 684 R F0(%)2.918 E F1
+2.918(,f)C .418(or menu completion.)-2.918 F .417(This v)5.417 F .417
+(ariable is a)-.25 F -.25(va)-.2 G .417
+(ilable only in shell functions and e).25 F(xter)-.15 E(-)-.2 E .704
+(nal commands in)144 696 R -.2(vo)-.4 G -.1(ke).2 G 3.204(db).1 G 3.204
+(yt)-3.204 G .704(he programmable completion f)-3.204 F .704
+(acilities \(see)-.1 F F2(Pr)3.204 E .704(ogrammable Comple-)-.18 F
+(tion)144 708 Q F1(belo)2.5 E(w\).)-.25 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(13)185.955 E 0 Cg EP
+%%Page: 14 14
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(COMP_W)108 84 Q(ORDBREAKS)-.1
+E F1 1.336(The set of characters that the)144 96 R F2 -.18(re)3.836 G
+(adline).18 E F1 1.336(library treats as w)3.836 F 1.335
+(ord separators when performing w)-.1 F(ord)-.1 E 3.125(completion. If)
+144 108 R/F3 9/Times-Bold@0 SF(COMP_W)3.125 E(ORDBREAKS)-.09 E F1 .626
+(is unset, it loses its special properties, e)2.875 F -.15(ve)-.25 G
+3.126(ni).15 G 3.126(fi)-3.126 G 3.126(ti)-3.126 G 3.126(ss)-3.126 G
+(ubse-)-3.126 E(quently reset.)144 120 Q F2(COMP_W)108 132 Q(ORDS)-.1 E
+F1 .654(An array v)144 144 R .654(ariable \(see)-.25 F F2(Arrays)3.154 E
+F1(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.191(line. The)144 156 R
+.692(line is split into w)3.192 F .692(ords as)-.1 F F2 -.18(re)3.192 G
+(adline).18 E F1 -.1(wo)3.192 G .692(uld split it, using).1 F F3(COMP_W)
+3.192 E(ORDBREAKS)-.09 E F1 .692(as de-)2.942 F 1.558(scribed abo)144
+168 R -.15(ve)-.15 G 6.558(.T).15 G 1.558(his v)-6.558 F 1.558
+(ariable is a)-.25 F -.25(va)-.2 G 1.558
+(ilable only in shell functions in).25 F -.2(vo)-.4 G -.1(ke).2 G 4.057
+(db).1 G 4.057(yt)-4.057 G 1.557(he programmable)-4.057 F(completion f)
+144 180 Q(acilities \(see)-.1 E F2(Pr)2.5 E(ogrammable Completion)-.18 E
+F1(belo)2.5 E(w\).)-.25 E F2(COPR)108 192 Q(OC)-.3 E F1 .168(An array v)
+144 204 R .168(ariable \(see)-.25 F F2(Arrays)2.668 E F1(belo)2.669 E
+.169
+(w\) created to hold the \214le descriptors for output from and input)
+-.25 F(to an unnamed coprocess \(see)144 216 Q F2(Copr)2.5 E(ocesses)
+-.18 E F1(abo)2.5 E -.15(ve)-.15 G(\).).15 E F2(DIRST)108 228 Q -.55(AC)
+-.9 G(K).55 E F1 .79(An array v)144 240 R .79(ariable \(see)-.25 F F2
+(Arrays)3.29 E F1(belo)3.289 E .789
+(w\) containing the current contents of the directory stack.)-.25 F(Di-)
+5.789 E .099(rectories appear in the stack in the order the)144 252 R
+2.599(ya)-.15 G .099(re displayed by the)-2.599 F F2(dirs)2.599 E F1 -.2
+(bu)2.599 G 2.599(iltin. Assigning).2 F .099(to mem-)2.599 F .84
+(bers of this array v)144 264 R .84
+(ariable may be used to modify directories already in the stack, b)-.25
+F .84(ut the)-.2 F F2(pushd)3.34 E F1(and)144 276 Q F2(popd)2.714 E F1
+-.2(bu)2.714 G .214(iltins must be used to add and remo).2 F .514 -.15
+(ve d)-.15 H 2.715(irectories. Assigning).15 F .215(to this v)2.715 F
+.215(ariable does not)-.25 F .118(change the current directory)144 288 R
+5.118(.I)-.65 G(f)-5.118 E F3(DIRST)2.617 E -.495(AC)-.81 G(K).495 E F1
+.117(is unset, it loses its special properties, e)2.367 F -.15(ve)-.25 G
+2.617(ni).15 G 2.617(fi)-2.617 G 2.617(ti)-2.617 G 2.617(ss)-2.617 G
+(ub-)-2.617 E(sequently reset.)144 300 Q F2(EPOCHREAL)108 312 Q(TIME)
+-.92 E F1 .337(Each time this parameter is referenced, it e)144 324 R
+.338(xpands to the number of seconds since the Unix Epoch)-.15 F(\(see)
+144 336 Q F0(time)2.981 E F1 .351(\(3\)\) as a \215oating-point v).18 F
+.351(alue with micro-second granularity)-.25 F 5.35(.A)-.65 G .35
+(ssignments to)-5.35 F F3(EPOCHRE-)2.85 E(AL)144 348 Q(TIME)-.828 E F1
+1.09(are ignored.)3.34 F(If)6.09 E F3(EPOCHREAL)3.59 E(TIME)-.828 E F1
+1.09(is unset, it loses its special properties, e)3.34 F -.15(ve)-.25 G
+3.591(ni).15 G 3.591(fi)-3.591 G 3.591(ti)-3.591 G(s)-3.591 E
+(subsequently reset.)144 360 Q F2(EPOCHSECONDS)108 372 Q F1 .338
+(Each time this parameter is referenced, it e)144 384 R .337
+(xpands to the number of seconds since the Unix Epoch)-.15 F(\(see)144
+396 Q F0(time)4.143 E F1 4.013(\(3\)\). Assignments).18 F(to)4.013 E F3
+(EPOCHSECONDS)4.013 E F1 1.513(are ignored.)3.763 F(If)6.514 E F3
+(EPOCHSECONDS)4.014 E F1 1.514(is unset, it)3.764 F
+(loses its special properties, e)144 408 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 F2
+(EUID)108 420 Q F1 1.104(Expands to the ef)144 420 R(fecti)-.25 E 1.403
+-.15(ve u)-.25 H 1.103(ser ID of the current user).15 F 3.603(,i)-.4 G
+1.103(nitialized at shell startup.)-3.603 F 1.103(This v)6.103 F 1.103
+(ariable is)-.25 F(readonly)144 432 Q(.)-.65 E F2(FUNCN)108 444 Q(AME)
+-.2 E F1 .478(An array v)144 456 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 468 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 .065
+(element \(the one with the highest inde)144 480 R .065
+(x\) is \231main\232.)-.15 F .065(This v)5.065 F .065(ariable e)-.25 F
+.065(xists only when a shell function)-.15 F .003(is e)144 492 R -.15
+(xe)-.15 G 2.503(cuting. Assignments).15 F(to)2.503 E F3(FUNCN)2.503 E
+(AME)-.18 E F1(ha)2.252 E .302 -.15(ve n)-.2 H 2.502(oe).15 G -.25(ff)
+-2.502 G 2.502(ect. If).25 F F3(FUNCN)2.502 E(AME)-.18 E F1 .002
+(is unset, it loses its spe-)2.252 F(cial properties, e)144 504 Q -.15
+(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G
+(ubsequently reset.)-2.5 E 4.584(This v)144 520.8 R 4.584
+(ariable can be used with)-.25 F F3 -.27(BA)7.084 G(SH_LINENO).27 E F1
+(and)6.834 E F3 -.27(BA)7.085 G(SH_SOURCE).27 E/F4 9/Times-Roman@0 SF(.)
+A F1 4.585(Each element of)9.085 F F3(FUNCN)144 532.8 Q(AME)-.18 E F1
+.733(has corresponding elements in)2.983 F F3 -.27(BA)3.233 G(SH_LINENO)
+.27 E F1(and)2.983 E F3 -.27(BA)3.233 G(SH_SOURCE).27 E F1 .733
+(to describe the)2.983 F .012(call stack.)144 544.8 R -.15(Fo)5.012 G
+2.512(ri).15 G(nstance,)-2.512 E F2(${FUNCN)2.512 E(AME[)-.2 E F0($i)A
+F2(]})A F1 -.1(wa)2.512 G 2.512(sc).1 G .012(alled from the \214le)
+-2.512 F F2(${B)2.512 E(ASH_SOURCE[)-.3 E F0($i+1)A F2(]})A F1 1.184
+(at line number)144 556.8 R F2(${B)3.684 E(ASH_LINENO[)-.3 E F0($i)A F2
+(]})A F1 6.184(.T)C(he)-6.184 E F2(caller)3.683 E F1 -.2(bu)3.683 G
+1.183(iltin displays the current call stack using).2 F
+(this information.)144 568.8 Q F2(GR)108 580.8 Q(OUPS)-.3 E F1 1.228
+(An array v)144 592.8 R 1.228(ariable containing the list of groups of \
+which the current user is a member)-.25 F 6.229(.A)-.55 G(ssign-)-6.229
+E .572(ments to)144 604.8 R F3(GR)3.072 E(OUPS)-.27 E F1(ha)2.822 E .872
+-.15(ve n)-.2 H 3.072(oe).15 G -.25(ff)-3.072 G 3.072(ect. If).25 F F3
+(GR)3.072 E(OUPS)-.27 E F1 .572
+(is unset, it loses its special properties, e)2.822 F -.15(ve)-.25 G
+3.072(ni).15 G 3.071(fi)-3.072 G 3.071(ti)-3.071 G(s)-3.071 E
+(subsequently reset.)144 616.8 Q F2(HISTCMD)108 628.8 Q F1 2.81
+(The history number)144 640.8 R 5.31(,o)-.4 G 5.31(ri)-5.31 G(nde)-5.31
+E 5.311(xi)-.15 G 5.311(nt)-5.311 G 2.811
+(he history list, of the current command.)-5.311 F 2.811(Assignments to)
+7.811 F F3(HISTCMD)144 652.8 Q F1(ha)2.684 E .734 -.15(ve n)-.2 H 2.934
+(oe).15 G -.25(ff)-2.934 G 2.934(ect. If).25 F F3(HISTCMD)2.934 E F1
+.434(is unset, it loses its special properties, e)2.684 F -.15(ve)-.25 G
+2.934(ni).15 G 2.934(fi)-2.934 G 2.933(ti)-2.934 G 2.933(ss)-2.933 G
+(ubse-)-2.933 E(quently reset.)144 664.8 Q F2(HOSTN)108 676.8 Q(AME)-.2
+E F1(Automatically set to the name of the current host.)144 688.8 Q F2
+(HOSTTYPE)108 700.8 Q F1 .222(Automatically set to a string that unique\
+ly describes the type of machine on which)144 712.8 R F2(bash)2.723 E F1
+.223(is e)2.723 F -.15(xe)-.15 G(cut-).15 E 2.5(ing. The)144 724.8 R
+(def)2.5 E(ault is system-dependent.)-.1 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(14)185.955 E 0 Cg EP
+%%Page: 15 15
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(LINENO)108 84 Q F1 1.408(Eac\
+h time this parameter is referenced, the shell substitutes a decimal nu\
+mber representing the)144 96 R .078(current sequential line number \(st\
+arting with 1\) within a script or function.)144 108 R .079
+(When not in a script or)5.078 F .307(function, the v)144 120 R .307
+(alue substituted is not guaranteed to be meaningful.)-.25 F(If)5.306 E
+/F3 9/Times-Bold@0 SF(LINENO)2.806 E F1 .306(is unset, it loses its)
+2.556 F(special properties, e)144 132 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 F2(MA)
+108 144 Q(CHTYPE)-.55 E F1 .898(Automatically set to a string that full\
+y describes the system type on which)144 156 R F2(bash)3.398 E F1 .899
+(is e)3.398 F -.15(xe)-.15 G .899(cuting, in).15 F(the standard GNU)144
+168 Q F0(cpu-company-system)2.5 E F1 2.5(format. The)2.5 F(def)2.5 E
+(ault is system-dependent.)-.1 E F2(MAPFILE)108 180 Q F1 .294
+(An array v)144 192 R .294(ariable \(see)-.25 F F2(Arrays)2.794 E F1
+(belo)2.794 E .294(w\) created to hold the te)-.25 F .293
+(xt read by the)-.15 F F2(map\214le)2.793 E F1 -.2(bu)2.793 G .293
+(iltin when no).2 F -.25(va)144 204 S(riable name is supplied.).25 E F2
+(OLDPWD)108 216 Q F1(The pre)144 228 Q(vious w)-.25 E
+(orking directory as set by the)-.1 E F2(cd)2.5 E F1(command.)2.5 E F2
+(OPT)108 240 Q(ARG)-.9 E F1 1.626(The v)144 252 R 1.627
+(alue of the last option ar)-.25 F 1.627(gument processed by the)-.18 F
+F2(getopts)4.127 E F1 -.2(bu)4.127 G 1.627(iltin command \(see).2 F F3
+(SHELL)4.127 E -.09(BU)144 264 S(IL).09 E(TIN COMMANDS)-.828 E F1(belo)
+2.25 E(w\).)-.25 E F2(OPTIND)108 276 Q F1 1.652(The inde)144 288 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 F2(getopts)4.151 E F1 -.2(bu)
+4.151 G 1.651(iltin command \(see).2 F F3(SHELL)4.151 E -.09(BU)144 300
+S(IL).09 E(TIN COMMANDS)-.828 E F1(belo)2.25 E(w\).)-.25 E F2(OSTYPE)108
+312 Q F1 .329(Automatically set to a string that describes the operatin\
+g system on which)144 324 R F2(bash)2.83 E F1 .33(is e)2.83 F -.15(xe)
+-.15 G 2.83(cuting. The).15 F(def)144 336 Q(ault is system-dependent.)
+-.1 E F2(PIPEST)108 348 Q -.95(AT)-.9 G(US).95 E F1 .297(An array v)144
+360 R .297(ariable \(see)-.25 F F2(Arrays)2.797 E F1(belo)2.797 E .297
+(w\) containing a list of e)-.25 F .297(xit status v)-.15 F .297
+(alues from the commands in)-.25 F 1.601(the most-recently-e)144 372 R
+-.15(xe)-.15 G 1.601(cuted fore).15 F 1.602
+(ground pipeline, which may consist of only a simple command)-.15 F
+(\(see)144 384 Q F3 .216(SHELL GRAMMAR)2.716 F F1(abo)2.465 E -.15(ve)
+-.15 G(\).).15 E F2(Bash)5.215 E F1(sets)2.715 E F3(PIPEST)2.715 E -.855
+(AT)-.81 G(US).855 E F1 .215(after e)2.465 F -.15(xe)-.15 G .215
+(cuting multi-element pipelines,).15 F .333(timed and ne)144 396 R -.05
+(ga)-.15 G .333
+(ted pipelines, simple commands, subshells created with the \( operator)
+.05 F 2.834(,t)-.4 G(he)-2.834 E F2([[)2.834 E F1(and)2.834 E F2(\(\()
+2.834 E F1 .489(compound commands, and after error conditions that resu\
+lt in the shell aborting command e)144 408 R -.15(xe)-.15 G(cu-).15 E
+(tion.)144 420 Q F2(PPID)108 432 Q F1(The process ID of the shell')144
+432 Q 2.5(sp)-.55 G 2.5(arent. This)-2.5 F -.25(va)2.5 G
+(riable is readonly).25 E(.)-.65 E F2(PWD)108 444 Q F1(The current w)144
+444 Q(orking directory as set by the)-.1 E F2(cd)2.5 E F1(command.)2.5 E
+F2(RANDOM)108 456 Q F1 .417
+(Each time this parameter is referenced, it e)144 468 R .417
+(xpands to a random inte)-.15 F .417(ger between 0 and 32767.)-.15 F
+(As-)5.417 E .125(signing a v)144 480 R .125(alue to)-.25 F F3(RANDOM)
+2.625 E F1 .124(initializes \(seeds\) the sequence of random numbers.)
+2.374 F .124(Seeding the ran-)5.124 F 1.343
+(dom number generator with the same constant v)144 492 R 1.344
+(alue produces the same sequence of v)-.25 F 3.844(alues. If)-.25 F F3
+(RANDOM)144 504 Q F1(is unset, it loses its special properties, e)2.25 E
+-.15(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G
+(ubsequently reset.)-2.5 E F2(READLINE_ARGUMENT)108 516 Q F1(An)144 528
+Q 4.665(yn)-.15 G 2.165(umeric ar)-4.665 F 2.165(gument gi)-.18 F -.15
+(ve)-.25 G 4.665(nt).15 G 4.665(oa)-4.665 G F2 -.18(re)C(adline).18 E F1
+2.165(command that w)4.665 F 2.165
+(as de\214ned using \231bind \255x\232 \(see)-.1 F F3(SHELL B)144 540 Q
+(UIL)-.09 E(TIN COMMANDS)-.828 E F1(belo)2.25 E(w\) when it w)-.25 E
+(as in)-.1 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E F2(READLINE_LINE)108 552 Q
+F1 1.693(The contents of the)144 564 R F2 -.18(re)4.193 G(adline).18 E
+F1 1.693(line b)4.193 F(uf)-.2 E(fer)-.25 E 4.193(,f)-.4 G 1.694
+(or use with \231bind \255x\232 \(see)-4.193 F F3 1.694(SHELL B)4.194 F
+(UIL)-.09 E 1.694(TIN COM-)-.828 F(MANDS)144 576 Q F1(belo)2.25 E(w\).)
+-.25 E F2(READLINE_MARK)108 588 Q F1 .236(The position of the mark \(sa)
+144 600 R -.15(ve)-.2 G 2.736(di).15 G .236(nsertion point\) in the)
+-2.736 F F2 -.18(re)2.736 G(adline).18 E F1 .236(line b)2.736 F(uf)-.2 E
+(fer)-.25 E 2.736(,f)-.4 G .236(or use with \231bind \255x\232)-2.736 F
+(\(see)144 612 Q F3 1.016(SHELL B)3.516 F(UIL)-.09 E 1.016(TIN COMMANDS)
+-.828 F F1(belo)3.266 E 3.516(w\). The)-.25 F 1.017
+(characters between the insertion point and the)3.516 F
+(mark are often called the)144 624 Q F0 -.37(re)2.5 G(gion)-.03 E F1(.)A
+F2(READLINE_POINT)108 636 Q F1 .443
+(The position of the insertion point in the)144 648 R F2 -.18(re)2.943 G
+(adline).18 E F1 .443(line b)2.943 F(uf)-.2 E(fer)-.25 E 2.943(,f)-.4 G
+.442(or use with \231bind \255x\232 \(see)-2.943 F F3(SHELL)2.942 E -.09
+(BU)144 660 S(IL).09 E(TIN COMMANDS)-.828 E F1(belo)2.25 E(w\).)-.25 E
+F2(REPL)108 672 Q(Y)-.92 E F1(Set to the line of input read by the)144
+684 Q F2 -.18(re)2.5 G(ad).18 E F1 -.2(bu)2.5 G
+(iltin command when no ar).2 E(guments are supplied.)-.18 E F2(SECONDS)
+108 696 Q F1 .177(Each time this parameter is referenced, it e)144 708 R
+.178(xpands to the number of seconds since shell in)-.15 F -.2(vo)-.4 G
+(cation.).2 E .713(If a v)144 720 R .712(alue is assigned to)-.25 F F3
+(SECONDS)3.212 E/F4 9/Times-Roman@0 SF(,)A F1 .712(the v)2.962 F .712
+(alue returned upon subsequent references is the number)-.25 F
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(15)185.955 E 0 Cg EP
+%%Page: 16 16
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .627(of seconds since the assignment plus the v)144
+84 R .627(alue assigned.)-.25 F .628(The number of seconds at shell in)
+5.627 F -.2(vo)-.4 G(ca-).2 E .364(tion and the current time are al)144
+96 R -.1(wa)-.1 G .363
+(ys determined by querying the system clock at one-second reso-).1 F 2.5
+(lution. If)144 108 R/F2 9/Times-Bold@0 SF(SECONDS)2.5 E F1
+(is unset, it loses its special properties, e)2.25 E -.15(ve)-.25 G 2.5
+(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
+-2.5 E/F3 10/Times-Bold@0 SF(SHELLOPTS)108 120 Q F1 3.262(Ac)144 132 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 F3<ad6f>144 144 Q F1 1.174(option to the)3.674 F
+F3(set)3.674 E F1 -.2(bu)3.674 G 1.174(iltin command \(see).2 F F2 1.173
+(SHELL B)3.673 F(UIL)-.09 E 1.173(TIN COMMANDS)-.828 F F1(belo)3.423 E
+3.673(w\). The)-.25 F(options)3.673 E .019(appearing in)144 156 R F2
+(SHELLOPTS)2.519 E F1 .019(are those reported as)2.269 F F0(on)2.749 E
+F1(by)2.759 E F3 .019(set \255o)2.519 F F1 5.019(.I)C 2.519(ft)-5.019 G
+.019(his v)-2.519 F .02(ariable is in the en)-.25 F(vironment)-.4 E
+(when)144 168 Q F3(bash)2.766 E F1 .266
+(starts up, the shell enables each option in the list before reading an)
+2.766 F 2.766(ys)-.15 G .265(tartup \214les.)-2.766 F(This)5.265 E -.25
+(va)144 180 S(riable is read-only).25 E(.)-.65 E F3(SHL)108 192 Q(VL)
+-.92 E F1(Incremented by one each time an instance of)144 204 Q F3(bash)
+2.5 E F1(is started.)2.5 E F3(SRANDOM)108 216 Q F1 .561
+(Each time it is referenced, this v)144 228 R .561(ariable e)-.25 F .562
+(xpands to a 32-bit pseudo-random number)-.15 F 5.562(.T)-.55 G .562
+(he random)-5.562 F .65
+(number generator is not linear on systems that support)144 240 R F0
+(/de)4.816 E(v/ur)-.15 E(andom)-.15 E F1(or)4.816 E F0(ar)3.48 E(c4r)
+-.37 E(andom)-.15 E F1 .649(\(3\), so each).32 F .788
+(returned number has no relationship to the numbers preceding it.)144
+252 R .788(The random number generator)5.788 F .088
+(cannot be seeded, so assignments to this v)144 264 R .087(ariable ha)
+-.25 F .387 -.15(ve n)-.2 H 2.587(oe).15 G -.25(ff)-2.587 G 2.587
+(ect. If).25 F F2(SRANDOM)2.587 E F1 .087(is unset, it loses its)2.337 F
+(special properties, e)144 276 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 F3(UID)108 288 Q
+F1(Expands to the user ID of the current user)144 288 Q 2.5(,i)-.4 G
+(nitialized at shell startup.)-2.5 E(This v)5 E(ariable is readonly)-.25
+E(.)-.65 E .114(The shell uses the follo)108 304.8 R .114(wing v)-.25 F
+.114(ariables. In some cases,)-.25 F F3(bash)2.614 E F1 .115
+(assigns a def)2.614 F .115(ault v)-.1 F .115(alue to a v)-.25 F .115
+(ariable; these cases)-.25 F(are noted belo)108 316.8 Q -.65(w.)-.25 G
+F3 -.3(BA)108 333.6 S(SH_COMP).3 E -.95(AT)-.74 G F1 .503(The v)144
+345.6 R .502(alue is used to set the shell')-.25 F 3.002(sc)-.55 G .502
+(ompatibility le)-3.002 F -.15(ve)-.25 G 3.002(l. See).15 F F2 .502
+(SHELL COMP)3.002 F -.855(AT)-.666 G .502(IBILITY MODE).855 F F1(be-)
+2.752 E(lo)144 357.6 Q 2.662(wf)-.25 G .162(or a description of the v)
+-2.662 F .162(arious compatibility le)-.25 F -.15(ve)-.25 G .162
+(ls and their ef).15 F 2.663(fects. The)-.25 F -.25(va)2.663 G .163
+(lue may be a dec-).25 F .33(imal number \(e.g., 4.2\) or an inte)144
+369.6 R .33
+(ger \(e.g., 42\) corresponding to the desired compatibility le)-.15 F
+-.15(ve)-.25 G 2.83(l. If).15 F F2 -.27(BA)144 381.6 S(SH_COMP).27 E
+-.855(AT)-.666 G F1 .431
+(is unset or set to the empty string, the compatibility le)3.536 F -.15
+(ve)-.25 G 2.931(li).15 G 2.931(ss)-2.931 G .431(et to the def)-2.931 F
+.432(ault for)-.1 F .654(the current v)144 393.6 R 3.154(ersion. If)-.15
+F F2 -.27(BA)3.154 G(SH_COMP).27 E -.855(AT)-.666 G F1 .654
+(is set to a v)3.759 F .653(alue that is not one of the v)-.25 F .653
+(alid compatibility)-.25 F(le)144 405.6 Q -.15(ve)-.25 G .585
+(ls, the shell prints an error message and sets the compatibility le).15
+F -.15(ve)-.25 G 3.085(lt).15 G 3.085(ot)-3.085 G .585(he def)-3.085 F
+.585(ault for the cur)-.1 F(-)-.2 E .724(rent v)144 417.6 R 3.224
+(ersion. A)-.15 F .724(subset of the v)3.224 F .724(alid v)-.25 F .723
+(alues correspond to the compatibility le)-.25 F -.15(ve)-.25 G .723
+(ls described belo).15 F(w)-.25 E(under)144 429.6 Q F2 .144(SHELL COMP)
+2.644 F -.855(AT)-.666 G .144(IBILITY MODE).855 F/F4 9/Times-Roman@0 SF
+(.)A F1 -.15(Fo)4.644 G 2.645(re).15 G .145(xample, 4.2 and 42 are v)
+-2.795 F .145(alid v)-.25 F .145(alues that correspond)-.25 F .567
+(to the)144 441.6 R F3 .567(compat42 shopt)3.067 F F1 .567
+(option and set the compatibility le)3.067 F -.15(ve)-.25 G 3.066(lt).15
+G 3.066(o4)-3.066 G 3.066(2. The)-3.066 F .566(current v)3.066 F .566
+(ersion is also a)-.15 F -.25(va)144 453.6 S(lid v).25 E(alue.)-.25 E F3
+-.3(BA)108 465.6 S(SH_ENV).3 E F1 .298(If this parameter is set when)144
+477.6 R F3(bash)2.798 E F1 .298(is e)2.798 F -.15(xe)-.15 G .298
+(cuting a shell script, its e).15 F .299(xpanded v)-.15 F .299
+(alue is interpreted as a)-.25 F .468(\214lename containing commands to\
+ initialize the shell before it reads and e)144 489.6 R -.15(xe)-.15 G
+.467(cutes commands from).15 F .838(the script.)144 501.6 R .838(The v)
+5.838 F .838(alue of)-.25 F F2 -.27(BA)3.339 G(SH_ENV).27 E F1 .839
+(is subjected to parameter e)3.089 F .839
+(xpansion, command substitution,)-.15 F .922(and arithmetic e)144 513.6
+R .922(xpansion before being interpreted as a \214lename.)-.15 F F2
+-.666(PA)5.922 G(TH)-.189 E F1 .922(is not used to search for)3.172 F
+(the resultant \214lename.)144 525.6 Q F3 -.3(BA)108 537.6 S(SH_XTRA).3
+E(CEFD)-.55 E F1 .55(If set to an inte)144 549.6 R .55
+(ger corresponding to a v)-.15 F .551(alid \214le descriptor)-.25 F(,)
+-.4 E F3(bash)3.051 E F1 .551(writes the trace output generated)3.051 F
+.245(when \231set \255x\232 is enabled to that \214le descriptor)144
+561.6 R 2.745(,i)-.4 G .245(nstead of the standard error)-2.745 F 5.244
+(.T)-.55 G .244(he \214le descriptor is)-5.244 F .76(closed when)144
+573.6 R F2 -.27(BA)3.26 G(SH_XTRA).27 E(CEFD)-.495 E F1 .761
+(is unset or assigned a ne)3.01 F 3.261(wv)-.25 G 3.261(alue. Unsetting)
+-3.511 F F2 -.27(BA)3.261 G(SH_XTRA).27 E(CEFD)-.495 E F1 .583(or assig\
+ning it the empty string causes the trace output to be sent to the stan\
+dard error)144 585.6 R 5.582(.N)-.55 G .582(ote that)-5.582 F(setting)
+144 597.6 Q F2 -.27(BA)2.995 G(SH_XTRA).27 E(CEFD)-.495 E F1 .495(to 2 \
+\(the standard error \214le descriptor\) and then unsetting it will res\
+ult)2.745 F(in the standard error being closed.)144 609.6 Q F3(CDP)108
+621.6 Q -.95(AT)-.74 G(H).95 E F1 .554(The search path for the)144 633.6
+R F3(cd)3.054 E F1 3.054(command. This)3.054 F .554
+(is a colon-separated list of directories where the shell)3.054 F
+(looks for directories speci\214ed as ar)144 645.6 Q(guments to the)-.18
+E F3(cd)2.5 E F1 2.5(command. A)2.5 F(sample v)2.5 E
+(alue is \231.:\001:/usr\232.)-.25 E F3(CHILD_MAX)108 657.6 Q F1 .931
+(Set the number of e)144 669.6 R .931(xited child status v)-.15 F .931
+(alues for the shell to remember)-.25 F(.)-.55 E F3(Bash)5.931 E F1 .932
+(will not allo)3.431 F 3.432(wt)-.25 G(his)-3.432 E -.25(va)144 681.6 S
+1.078(lue to be decreased belo).25 F 3.577(waP)-.25 G 1.077
+(OSIX-mandated minimum, and there is a maximum v)-3.577 F 1.077
+(alue \(cur)-.25 F(-)-.2 E(rently 8192\) that this may not e)144 693.6 Q
+2.5(xceed. The)-.15 F(minimum v)2.5 E(alue is system-dependent.)-.25 E
+F3(COLUMNS)108 705.6 Q F1 .828(Used by the)144 717.6 R F3(select)3.328 E
+F1 .829(compound command to determine the terminal width when printing \
+selection)3.328 F 4.507(lists. Automatically)144 729.6 R 2.007
+(set if the)4.507 F F3(checkwinsize)4.507 E F1 2.006
+(option is enabled or in an interacti)4.507 F 2.306 -.15(ve s)-.25 H
+2.006(hell upon).15 F(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E
+(16)185.955 E 0 Cg EP
+%%Page: 17 17
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(receipt of a)144 84 Q/F2 9/Times-Bold@0 SF
+(SIGWINCH)2.5 E/F3 9/Times-Roman@0 SF(.)A/F4 10/Times-Bold@0 SF
+(COMPREPL)108 96 Q(Y)-.92 E F1 .847(An array v)144 108 R .848
+(ariable from which)-.25 F F4(bash)3.348 E F1 .848
+(reads the possible completions generated by a shell function)3.348 F
+(in)144 120 Q -.2(vo)-.4 G -.1(ke).2 G 2.785(db).1 G 2.785(yt)-2.785 G
+.285(he programmable completion f)-2.785 F .285(acility \(see)-.1 F F4
+(Pr)2.785 E .285(ogrammable Completion)-.18 F F1(belo)2.785 E 2.785
+(w\). Each)-.25 F(array element contains one possible completion.)144
+132 Q F4(EMA)108 144 Q(CS)-.55 E F1(If)144 156 Q F4(bash)3.07 E F1 .57
+(\214nds this v)3.07 F .57(ariable in the en)-.25 F .571
+(vironment when the shell starts with v)-.4 F .571
+(alue \231t\232, it assumes that)-.25 F
+(the shell is running in an Emacs shell b)144 168 Q(uf)-.2 E
+(fer and disables line editing.)-.25 E F4(ENV)108 180 Q F1 1.282
+(Expanded and e)144 180 R -.15(xe)-.15 G 1.282(cuted similarly to).15 F
+F2 -.27(BA)3.781 G(SH_ENV).27 E F1(\(see)3.531 E F2(INV)3.781 E(OCA)
+-.405 E(TION)-.855 E F1(abo)3.531 E -.15(ve)-.15 G 3.781(\)w).15 G 1.281
+(hen an interacti)-3.781 F -.15(ve)-.25 G(shell is in)144 192 Q -.2(vo)
+-.4 G -.1(ke).2 G 2.5(di).1 G 2.5(np)-2.5 G(osix mode.)-2.5 E F4
+(EXECIGNORE)108 204 Q F1 2.791(Ac)144 216 S .291
+(olon-separated list of shell patterns \(see)-2.791 F F4 -.1(Pa)2.791 G
+(tter).1 E 2.791(nM)-.15 G(atching)-2.791 E F1 2.791(\)d)C .292
+(e\214ning the set of \214lenames to be)-2.791 F .357
+(ignored by command search using)144 228 R F2 -.666(PA)2.857 G(TH)-.189
+E F3(.)A F1 .356(Files whose full pathnames match one of these patterns)
+4.856 F 1.432(are not considered e)144 240 R -.15(xe)-.15 G 1.432
+(cutable \214les for the purposes of completion and command e).15 F -.15
+(xe)-.15 G 1.433(cution via).15 F F2 -.666(PA)144 252 S(TH)-.189 E F1
+3.087(lookup. This)2.837 F .587(does not af)3.087 F .587(fect the beha)
+-.25 F .587(vior of the)-.2 F F4([)3.087 E F1(,)A F4(test)3.087 E F1
+3.087(,a)C(nd)-3.087 E F4([[)3.087 E F1 3.086(commands. Full)3.086 F
+(pathnames)3.086 E .103(in the command hash table are not subject to)144
+264 R F2(EXECIGNORE)2.603 E F3(.)A F1 .104(Use this v)4.603 F .104
+(ariable to ignore shared li-)-.25 F .33(brary \214les that ha)144 276 R
+.63 -.15(ve t)-.2 H .33(he e).15 F -.15(xe)-.15 G .33
+(cutable bit set, b).15 F .33(ut are not e)-.2 F -.15(xe)-.15 G .33
+(cutable \214les.).15 F .33(The pattern matching hon-)5.33 F
+(ors the setting of the)144 288 Q F4(extglob)2.5 E F1(shell option.)2.5
+E F4(FCEDIT)108 300 Q F1(The def)144 312 Q(ault editor for the)-.1 E F4
+(fc)2.5 E F1 -.2(bu)2.5 G(iltin command.).2 E F4(FIGNORE)108 324 Q F1
+2.598(Ac)144 336 S .098(olon-separated list of suf)-2.598 F<8c78>-.25 E
+.098(es to ignore when performing \214lename completion \(see)-.15 F F2
+(READLINE)2.599 E F1(belo)144 348 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 F1 .205(is e)2.455 F .204
+(xcluded from the list)-.15 F(of matched \214lenames.)144 360 Q 2.5(As)5
+G(ample v)-2.5 E(alue is \231.o:\001\232.)-.25 E F4(FUNCNEST)108 372 Q
+F1 .23(If set to a numeric v)144 384 R .231
+(alue greater than 0, de\214nes a maximum function nesting le)-.25 F
+-.15(ve)-.25 G 2.731(l. Function).15 F(in)2.731 E -.2(vo)-.4 G(-).2 E
+(cations that e)144 396 Q(xceed this nesting le)-.15 E -.15(ve)-.25 G
+2.5(lc).15 G(ause the current command to abort.)-2.5 E F4(GLOBIGNORE)108
+408 Q F1 2.924(Ac)144 420 S .423(olon-separated list of patterns de\214\
+ning the set of \214le names to be ignored by pathname e)-2.924 F(xpan-)
+-.15 E 2.947(sion. If)144 432 R 2.947<618c>2.947 G .447
+(le name matched by a pathname e)-2.947 F .448
+(xpansion pattern also matches one of the patterns in)-.15 F F2
+(GLOBIGNORE)144 444 Q F3(,)A F1 .14(it is remo)2.39 F -.15(ve)-.15 G
+2.64(df).15 G .14(rom the list of matches.)-2.64 F .139
+(The pattern matching honors the setting of)5.14 F(the)144 456 Q F4
+(extglob)2.5 E F1(shell option.)2.5 E F4(GLOBSOR)108 468 Q(T)-.4 E F1
+.075(Controls ho)144 480 R 2.575(wt)-.25 G .075
+(he results of pathname e)-2.575 F .075(xpansion are sorted.)-.15 F .075
+(The v)5.075 F .076(alue of this v)-.25 F .076(ariable speci\214es the)
+-.25 F .36(sort criteria and sort order for the results of pathname e)
+144 492 R 2.859(xpansion. If)-.15 F .359(this v)2.859 F .359
+(ariable is unset or set to)-.25 F .655(the null string, pathname e)144
+504 R .655(xpansion uses the historical beha)-.15 F .655
+(vior of sorting by name, in ascending)-.2 F(le)144 516 Q
+(xicographic order as determined by the)-.15 E F2(LC_COLLA)2.5 E(TE)
+-.855 E F1(shell v)2.25 E(ariable.)-.25 E .03(If set, a v)144 532.8 R
+.03(alid v)-.25 F .03(alue be)-.25 F .03(gins with an optional)-.15 F F0
+(+)2.53 E F1 2.529(,w)C .029(hich is ignored, or)-2.529 F F0<ad>2.529 E
+F1 2.529(,w)C .029(hich re)-2.529 F -.15(ve)-.25 G .029
+(rses the sort order).15 F 1.303(from ascending to descending, follo)144
+544.8 R 1.303(wed by a sort speci\214er)-.25 F 6.304(.T)-.55 G 1.304
+(he v)-6.304 F 1.304(alid sort speci\214ers are)-.25 F F0(name)4.164 E
+F1(,).18 E F0(numeric)144 556.8 Q F1(,).31 E F0(size)3.921 E F1(,).18 E
+F0(mtime)3.961 E F1(,).18 E F0(atime)3.911 E F1(,).18 E F0(ctime)3.781 E
+F1 3.581(,a).18 G(nd)-3.581 E F0(bloc)3.851 E(ks)-.2 E F1 3.581(,w).27 G
+1.08(hich sort the \214les on name, names in numeric)-3.581 F .979
+(rather than le)144 568.8 R .979(xicographic order)-.15 F 3.479<2c8c>-.4
+G .979
+(le size, modi\214cation time, access time, inode change time, and)
+-3.479 F .894(number of blocks, respecti)144 580.8 R -.15(ve)-.25 G(ly)
+.15 E 5.894(.I)-.65 G 3.394(fa)-5.894 G 1.194 -.15(ny o)-3.394 H 3.394
+(ft).15 G .894(he non-name k)-3.394 F -.15(ey)-.1 G 3.394(sc).15 G .893
+(ompare as equal \(e.g., if tw)-3.394 F 3.393<6f8c>-.1 G(les)-3.393 E
+(are the same size\), sorting uses the name as a secondary sort k)144
+592.8 Q -.15(ey)-.1 G(.)-.5 E -.15(Fo)144 609.6 S 2.692(re).15 G .192
+(xample, a v)-2.842 F .192(alue of)-.25 F F0(\255mtime)2.692 E F1 .192
+(sorts the results in descending order by modi\214cation time \(ne)2.692
+F(west)-.25 E(\214rst\).)144 621.6 Q(The)144 638.4 Q F0(numeric)3.844 E
+F1 1.344(speci\214er treats names consisting solely of digits as number\
+s and sorts them using)3.844 F .265(their numeric v)144 650.4 R .266
+(alue \(so \2312\232 sorts before \23110\232, for e)-.25 F 2.766
+(xample\). When)-.15 F(using)2.766 E F0(numeric)2.766 E F1 2.766(,n)C
+.266(ames contain-)-2.766 F .321(ing non-digits sort after all the all-\
+digit names and are sorted by name using the traditional beha)144 662.4
+R(v-)-.2 E(ior)144 674.4 Q(.)-.55 E 2.643(As)144 691.2 S .143
+(ort speci\214er of)-2.643 F F0(nosort)2.643 E F1 .144
+(disables sorting completely;)2.644 F F4(bash)2.644 E F1 .144
+(returns the results in the order the)2.644 F 2.644(ya)-.15 G(re)-2.644
+E(read from the \214le system, ignoring an)144 703.2 Q 2.5(yl)-.15 G
+(eading)-2.5 E F0<ad>2.5 E F1(.)A(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(17)185.955 E 0 Cg EP
+%%Page: 18 18
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .52(If the sort speci\214er is missing, it def)144
+84 R .52(aults to)-.1 F F0(name)3.02 E F1 3.02(,s)C 3.02(oav)-3.02 G .52
+(alue of)-3.27 F F0(+)3.02 E F1 .52(is equi)3.02 F -.25(va)-.25 G .52
+(lent to the null string,).25 F .482(and a v)144 96 R .482(alue of)-.25
+F F0(-)2.982 E F1 .482(sorts by name in descending order)2.982 F 5.482
+(.A)-.55 G .783 -.15(ny i)-5.482 H -1.95 -.4(nv a).15 H .483(lid v).4 F
+.483(alue restores the historical sort-)-.25 F(ing beha)144 108 Q(vior)
+-.2 E(.)-.55 E/F2 10/Times-Bold@0 SF(HISTCONTR)108 120 Q(OL)-.3 E F1
+2.654(Ac)144 132 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 .153(If the list)5.153 F .49(of v)144 144 R .49(alues includes)
+-.25 F F0(ignor)3 E(espace)-.37 E F1 2.99(,l).18 G .49(ines which be)
+-2.99 F .49(gin with a)-.15 F F2(space)2.99 E F1 .49
+(character are not sa)2.99 F -.15(ve)-.2 G 2.99(di).15 G 2.99(nt)-2.99 G
+.49(he his-)-2.99 F .558(tory list.)144 156 R 3.058(Av)5.558 G .558
+(alue of)-3.308 F F0(ignor)3.068 E(edups)-.37 E F1 .558
+(causes lines matching the pre)3.328 F .557
+(vious history entry not to be sa)-.25 F -.15(ve)-.2 G(d.).15 E 2.925
+(Av)144 168 S .425(alue of)-3.175 F F0(ignor)2.935 E(eboth)-.37 E F1
+.426(is shorthand for)3.205 F F0(ignor)2.926 E(espace)-.37 E F1(and)
+2.926 E F0(ignor)2.926 E(edups)-.37 E F1 5.426(.A)C -.25(va)-2.5 G .426
+(lue of).25 F F0(er)3.116 E(asedups)-.15 E F1(causes)3.196 E .699
+(all pre)144 180 R .698
+(vious lines matching the current line to be remo)-.25 F -.15(ve)-.15 G
+3.198(df).15 G .698(rom the history list before that line is)-3.198 F
+(sa)144 192 Q -.15(ve)-.2 G 2.763(d. An).15 F 2.763(yv)-.15 G .263
+(alue not in the abo)-3.013 F .563 -.15(ve l)-.15 H .263
+(ist is ignored.).15 F(If)5.263 E/F3 9/Times-Bold@0 SF(HISTCONTR)2.763 E
+(OL)-.27 E F1 .264(is unset, or does not include)2.513 F 2.607(av)144
+204 S .107(alid v)-2.857 F(alue,)-.25 E F2(bash)2.607 E F1(sa)2.607 E
+-.15(ve)-.2 G 2.607(sa).15 G .107(ll lines read by the shell parser on \
+the history list, subject to the v)-2.607 F .107(alue of)-.25 F F3
+(HISTIGNORE)144 216 Q/F4 9/Times-Roman@0 SF(.)A F1 .06
+(If the \214rst line of a multi-line compound command w)4.559 F .06
+(as sa)-.1 F -.15(ve)-.2 G .06(d, the second and sub-).15 F 1.394
+(sequent lines are not tested, and are added to the history re)144 228 R
+-.05(ga)-.15 G 1.393(rdless of the v).05 F 1.393(alue of)-.25 F F3
+(HISTCON-)3.893 E(TR)144 240 Q(OL)-.27 E F4(.)A F1 1.099
+(If the \214rst line w)5.599 F 1.099(as not sa)-.1 F -.15(ve)-.2 G 1.099
+(d, the second and subsequent lines of the command are not).15 F(sa)144
+252 Q -.15(ve)-.2 G 2.5(de).15 G(ither)-2.5 E(.)-.55 E F2(HISTFILE)108
+264 Q F1 .818(The name of the \214le in which command history is sa)144
+276 R -.15(ve)-.2 G 3.317(d\().15 G(see)-3.317 E F3(HIST)3.317 E(OR)
+-.162 E(Y)-.315 E F1(belo)3.067 E(w\).)-.25 E F2(Bash)5.817 E F1 .817
+(assigns a)3.317 F(def)144 288 Q .774(ault v)-.1 F .774(alue of)-.25 F
+F0(\001/.bash_history)4.94 E F1 5.774(.I)1.666 G(f)-5.774 E F3(HISTFILE)
+3.274 E F1 .775(is unset or null, the shell does not sa)3.024 F 1.075
+-.15(ve t)-.2 H .775(he com-).15 F(mand history when it e)144 300 Q
+(xits.)-.15 E F2(HISTFILESIZE)108 312 Q F1 1.623
+(The maximum number of lines contained in the history \214le.)144 324 R
+1.622(When this v)6.623 F 1.622(ariable is assigned a)-.25 F -.25(va)144
+336 S .124(lue, the history \214le is truncated, if necessary).25 F
+2.624(,t)-.65 G 2.624(oc)-2.624 G .125
+(ontain no more than that number of lines by re-)-2.624 F(mo)144 348 Q
+.066(ving the oldest entries.)-.15 F .065(The history \214le is also tr\
+uncated to this size after writing it when a shell)5.066 F -.15(ex)144
+360 S .407(its or by the).15 F F2(history)2.908 E F1 -.2(bu)2.908 G
+2.908(iltin. If).2 F .408(the v)2.908 F .408
+(alue is 0, the history \214le is truncated to zero size.)-.25 F
+(Non-nu-)5.408 E .406(meric v)144 372 R .406(alues and numeric v)-.25 F
+.405(alues less than zero inhibit truncation.)-.25 F .405
+(The shell sets the def)5.405 F .405(ault v)-.1 F(alue)-.25 E(to the v)
+144 384 Q(alue of)-.25 E F3(HISTSIZE)2.5 E F1(after reading an)2.25 E
+2.5(ys)-.15 G(tartup \214les.)-2.5 E F2(HISTIGNORE)108 396 Q F1 2.657
+(Ac)144 408 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 .997(tory list.)144 420 R .997
+(If a command line matches one of the patterns in the v)5.997 F .996
+(alue of)-.25 F F3(HISTIGNORE)3.496 E F4(,)A F1 .996(it is not)3.246 F
+(sa)144 432 Q -.15(ve)-.2 G 2.771(do).15 G 2.771(nt)-2.771 G .271
+(he history list.)-2.771 F .271(Each pattern is anchored at the be)5.271
+F .271(ginning of the line and must match the)-.15 F .087
+(complete line \()144 444 R F2(bash)A F1 .087(does not)2.587 F .086
+(implicitly append a \231)5.086 F F2(*)A F1 2.586(\232\). Each)B .086
+(pattern is tested ag)2.586 F .086(ainst the line after)-.05 F 2.252
+(the checks speci\214ed by)144 456 R F3(HISTCONTR)4.752 E(OL)-.27 E F1
+2.252(are applied.)4.502 F 2.252
+(In addition to the normal shell pattern)7.252 F 1.386
+(matching characters, \231)144 468 R F2(&)A F1 3.886<9a6d>C 1.386
+(atches the pre)-3.886 F 1.385(vious history line.)-.25 F 3.885(Ab)6.385
+G 1.385(ackslash escapes the \231)-3.885 F F2(&)A F1 1.385(\232; the)B
+.775(backslash is remo)144 480 R -.15(ve)-.15 G 3.275(db).15 G .775
+(efore attempting a match.)-3.275 F .776
+(If the \214rst line of a multi-line compound com-)5.775 F .76(mand w)
+144 492 R .76(as sa)-.1 F -.15(ve)-.2 G .76(d, the second and subsequen\
+t lines are not tested, and are added to the history re-).15 F -.05(ga)
+144 504 S .579(rdless of the v).05 F .579(alue of)-.25 F F3(HISTIGNORE)
+3.079 E F4(.)A F1 .579(If the \214rst line w)5.079 F .579(as not sa)-.1
+F -.15(ve)-.2 G .579(d, the second and subsequent).15 F .262
+(lines of the command are not sa)144 516 R -.15(ve)-.2 G 2.761(de).15 G
+(ither)-2.761 E 5.261(.T)-.55 G .261
+(he pattern matching honors the setting of the)-5.261 F F2(extglob)2.761
+E F1(shell option.)144 528 Q F2(HISTSIZE)108 540 Q F1 1.387
+(The number of commands to remember in the command history \(see)144 552
+R F3(HIST)3.887 E(OR)-.162 E(Y)-.315 E F1(belo)3.637 E 3.887(w\). If)
+-.25 F(the)3.888 E -.25(va)144 564 S 1.321
+(lue is 0, commands are not sa).25 F -.15(ve)-.2 G 3.821(di).15 G 3.821
+(nt)-3.821 G 1.321(he history list.)-3.821 F 1.32(Numeric v)6.32 F 1.32
+(alues less than zero result in)-.25 F -2.15 -.25(ev e)144 576 T .436
+(ry command being sa).25 F -.15(ve)-.2 G 2.936(do).15 G 2.936(nt)-2.936
+G .436(he history list \(there is no limit\).)-2.936 F .437
+(The shell sets the def)5.437 F .437(ault v)-.1 F(alue)-.25 E
+(to 500 after reading an)144 588 Q 2.5(ys)-.15 G(tartup \214les.)-2.5 E
+F2(HISTTIMEFORMA)108 600 Q(T)-.95 E F1 .926(If this v)144 612 R .926
+(ariable is set and not null, its v)-.25 F .925
+(alue is used as a format string for)-.25 F F0(strftime)3.765 E F1 .925
+(\(3\) to print the).18 F .672
+(time stamp associated with each history entry displayed by the)144 624
+R F2(history)3.173 E F1 -.2(bu)3.173 G 3.173(iltin. If).2 F .673(this v)
+3.173 F .673(ariable is)-.25 F .454
+(set, the shell writes time stamps to the history \214le so the)144 636
+R 2.954(ym)-.15 G .454(ay be preserv)-2.954 F .454
+(ed across shell sessions.)-.15 F(This uses the history comment charact\
+er to distinguish timestamps from other history lines.)144 648 Q F2
+(HOME)108 660 Q F1 1.27(The home directory of the current user; the def)
+144 672 R 1.27(ault ar)-.1 F 1.27(gument for the)-.18 F F2(cd)3.77 E F1
+-.2(bu)3.77 G 1.27(iltin command.).2 F(The)6.27 E -.25(va)144 684 S
+(lue of this v).25 E(ariable is also used when performing tilde e)-.25 E
+(xpansion.)-.15 E F2(HOSTFILE)108 696 Q F1 1.015
+(Contains the name of a \214le in the same format as)144 708 R F0
+(/etc/hosts)5.181 E F1 1.015(that should be read when the shell)5.181 F
+.55(needs to complete a hostname.)144 720 R .551
+(The list of possible hostname completions may be changed while)5.551 F
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(18)185.955 E 0 Cg EP
+%%Page: 19 19
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E 1.059(the shell is running; the ne)144 84 R 1.059
+(xt time hostname completion is attempted after the v)-.15 F 1.058
+(alue is changed,)-.25 F/F2 10/Times-Bold@0 SF(bash)144 96 Q F1 .138
+(adds the contents of the ne)2.638 F 2.638<778c>-.25 G .138(le to the e)
+-2.638 F .138(xisting list.)-.15 F(If)5.138 E/F3 9/Times-Bold@0 SF
+(HOSTFILE)2.638 E F1 .138(is set, b)2.388 F .139(ut has no v)-.2 F .139
+(alue, or)-.25 F .518(does not name a readable \214le,)144 108 R F2
+(bash)3.018 E F1 .518(attempts to read)3.018 F F0(/etc/hosts)4.683 E F1
+.517(to obtain the list of possible host-)4.683 F(name completions.)144
+120 Q(When)5 E F3(HOSTFILE)2.5 E F1(is unset,)2.25 E F2(bash)2.5 E F1
+(clears the the hostname list.)2.5 E F2(IFS)108 132 Q F1(The)144 132 Q
+F0 .555(Internal F)3.635 F .555(ield Separ)-.45 F(ator)-.15 E F1 .555
+(that is used for w)3.785 F .556(ord splitting after e)-.1 F .556
+(xpansion and to split lines into)-.15 F -.1(wo)144 144 S .054
+(rds with the).1 F F2 -.18(re)2.554 G(ad).18 E F1 -.2(bu)2.554 G .054
+(iltin command.).2 F -.8(Wo)5.054 G .053(rd splitting is described belo)
+.8 F 2.553(wu)-.25 G(nder)-2.553 E F3(EXP)2.553 E(ANSION)-.666 E/F4 9
+/Times-Roman@0 SF(.)A F1(The)4.553 E(def)144 156 Q(ault v)-.1 E
+(alue is \231<space><tab><ne)-.25 E(wline>\232.)-.25 E F2(IGNOREEOF)108
+168 Q F1 .503(Controls the action of an interacti)144 180 R .803 -.15
+(ve s)-.25 H .503(hell on receipt of an).15 F F3(EOF)3.003 E F1 .503
+(character as the sole input.)2.753 F .504(If set,)5.504 F .426(the v)
+144 192 R .426(alue is the number of consecuti)-.25 F -.15(ve)-.25 G F3
+(EOF)3.076 E F1 .426
+(characters which must be typed as the \214rst characters)2.676 F .46
+(on an input line before)144 204 R F2(bash)2.96 E F1 -.15(ex)2.96 G 2.96
+(its. If).15 F .46(the v)2.96 F .46(ariable is set b)-.25 F .46
+(ut does not ha)-.2 F .76 -.15(ve a n)-.2 H .46(umeric v).15 F .46
+(alue, or the)-.25 F -.25(va)144 216 S(lue is null, the def).25 E
+(ault v)-.1 E(alue is 10.)-.25 E(If it is unset,)5 E F3(EOF)2.5 E F1
+(signi\214es the end of input to the shell.)2.25 E F2(INPUTRC)108 228 Q
+F1 .112(The \214lename for the)144 240 R F2 -.18(re)2.612 G(adline).18 E
+F1 .112(startup \214le, o)2.612 F -.15(ve)-.15 G .112(rriding the def)
+.15 F .112(ault of)-.1 F F0(\001/.inputr)4.278 E(c)-.37 E F1(\(see)4.278
+E F3(READLINE)2.611 E F1(be-)2.361 E(lo)144 252 Q(w\).)-.25 E F2
+(INSIDE_EMA)108 264 Q(CS)-.55 E F1 .033(If this v)144 276 R .033
+(ariable appears in the en)-.25 F .033(vironment when the shell starts,)
+-.4 F F2(bash)2.534 E F1 .034(assumes that it is running in-)2.534 F
+(side an Emacs shell b)144 288 Q(uf)-.2 E
+(fer and may disable line editing, depending on the v)-.25 E(alue of)
+-.25 E F3(TERM)2.5 E F4(.)A F2(LANG)108 300 Q F1 1.24
+(Used to determine the locale cate)144 300 R 1.239(gory for an)-.15 F
+3.739(yc)-.15 G(ate)-3.739 E 1.239
+(gory not speci\214cally selected with a v)-.15 F(ariable)-.25 E
+(starting with)144 312 Q F2(LC_)2.5 E F1(.)A F2(LC_ALL)108 324 Q F1 .973
+(This v)144 336 R .973(ariable o)-.25 F -.15(ve)-.15 G .973
+(rrides the v).15 F .973(alue of)-.25 F F3(LANG)3.473 E F1 .973(and an)
+3.223 F 3.473(yo)-.15 G(ther)-3.473 E F2(LC_)3.473 E F1 -.25(va)3.473 G
+.974(riable specifying a locale cate-).25 F(gory)144 348 Q(.)-.65 E F2
+(LC_COLLA)108 360 Q(TE)-.95 E F1 .412(This v)144 372 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 384 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
+396 Q(xpansion and pattern matching.)-.15 E F2(LC_CTYPE)108 408 Q F1
+1.936(This v)144 420 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 432 Q
+(xpansion and pattern matching.)-.15 E F2(LC_MESSA)108 444 Q(GES)-.55 E
+F1(This v)144 456 Q(ariable determines the locale used to translate dou\
+ble-quoted strings preceded by a)-.25 E F2($)2.5 E F1(.)A F2(LC_NUMERIC)
+108 468 Q F1(This v)144 480 Q(ariable determines the locale cate)-.25 E
+(gory used for number formatting.)-.15 E F2(LC_TIME)108 492 Q F1(This v)
+144 504 Q(ariable determines the locale cate)-.25 E
+(gory used for data and time formatting.)-.15 E F2(LINES)108 516 Q F1
+.054(Used by the)144 516 R F2(select)2.554 E F1 .054(compound command t\
+o determine the column length for printing selection lists.)2.554 F .265
+(Automatically set if the)144 528 R F2(checkwinsize)2.765 E F1 .264
+(option is enabled or in an interacti)2.765 F .564 -.15(ve s)-.25 H .264
+(hell upon receipt of a).15 F F3(SIGWINCH)144 540 Q F4(.)A F2(MAIL)108
+552 Q F1 .463(If the v)144 552 R .464
+(alue is set to a \214le or directory name and the)-.25 F F3(MAILP)2.964
+E -.855(AT)-.666 G(H).855 E F1 -.25(va)2.714 G .464(riable is not set,)
+.25 F F2(bash)2.964 E F1(informs)2.964 E(the user of the arri)144 564 Q
+-.25(va)-.25 G 2.5(lo).25 G 2.5(fm)-2.5 G
+(ail in the speci\214ed \214le or Maildir)-2.5 E(-format directory)-.2 E
+(.)-.65 E F2(MAILCHECK)108 576 Q F1 .099(Speci\214es ho)144 588 R 2.599
+(wo)-.25 G .099(ften \(in seconds\))-2.599 F F2(bash)2.598 E F1 .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 do\
+es so before displaying the primary prompt.)144 600 R .224(If this v)
+5.224 F .224(ariable is unset,)-.25 F(or set to a v)144 612 Q(alue that\
+ is not a number greater than or equal to zero, the shell disables mail\
+ checking.)-.25 E F2(MAILP)108 624 Q -.95(AT)-.74 G(H).95 E F1 2.99(Ac)
+144 636 S .49(olon-separated list of \214lenames to be check)-2.99 F .49
+(ed for mail.)-.1 F .49(The message to be printed when mail)5.49 F(arri)
+144 648 Q -.15(ve)-.25 G 3.633(si).15 G 3.633(nap)-3.633 G 1.134(articu\
+lar \214le may be speci\214ed by separating the \214lename from the mes\
+sage with a)-3.633 F 2.559(\231?\232. When)144 660 R .059
+(used in the te)2.559 F .059(xt of the message,)-.15 F F2($_)2.559 E F1
+-.15(ex)2.559 G .059(pands to the name of the current mail\214le.).15 F
+-.15(Fo)5.059 G 2.558(re).15 G(x-)-2.708 E(ample:)144 672 Q/F5 10
+/Courier-Bold@0 SF(MAILPATH)144 684 Q/F6 10/Courier@0 SF(=\010/var/mail\
+/bfox?"You have mail":\001/shell\255mail?"$_ has mail!"\010)A F2(Bash)
+144 696 Q F1 .015(can be con\214gured to supply a def)2.515 F .015
+(ault v)-.1 F .015(alue for this v)-.25 F .015(ariable \(there is no v)
+-.25 F .015(alue by def)-.25 F .015(ault\), b)-.1 F(ut)-.2 E(the locati\
+on of the user mail \214les that it uses is system dependent \(e.g., /v)
+144 708 Q(ar/mail/)-.25 E F2($USER)A F1(\).)A(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(19)185.955 E 0 Cg EP
+%%Page: 20 20
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(OPTERR)108 84 Q F1 .39
+(If set to the v)144 96 R .39(alue 1,)-.25 F F2(bash)2.89 E F1 .389
+(displays error messages generated by the)2.889 F F2(getopts)2.889 E F1
+-.2(bu)2.889 G .389(iltin command \(see).2 F/F3 9/Times-Bold@0 SF .359
+(SHELL B)144 108 R(UIL)-.09 E .359(TIN COMMANDS)-.828 F F1(belo)2.609 E
+(w\).)-.25 E F3(OPTERR)5.359 E F1 .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 120 Q -.15(xe)-.15 G(cuted.)
+.15 E F2 -.74(PA)108 132 S(TH)-.21 E F1 .588
+(The search path for commands.)144 132 R .587
+(It is a colon-separated list of directories in which the shell looks)
+5.588 F .471(for commands \(see)144 144 R F3 .471(COMMAND EXECUTION)
+2.971 F F1(belo)2.722 E 2.972(w\). A)-.25 F .472
+(zero-length \(null\) directory name in the)2.972 F -.25(va)144 156 S
+.536(lue of).25 F F3 -.666(PA)3.036 G(TH)-.189 E F1 .535
+(indicates the current directory)2.786 F 5.535(.A)-.65 G .535
+(null directory name may appear as tw)-2.5 F 3.035(oa)-.1 G(djacent)
+-3.035 E .867(colons, or as an initial or trailing colon.)144 168 R .868
+(The def)5.868 F .868(ault path is system-dependent, and is set by the)
+-.1 F(administrator who installs)144 180 Q F2(bash)2.5 E F1 5(.A)C
+(common v)-2.5 E(alue is \231/usr/local/bin:/usr/lo-)-.25 E
+(cal/sbin:/usr/bin:/usr/sbin:/bin:/sbin\232.)144 192 Q F2(POSIXL)108 204
+Q(Y_CORRECT)-.92 E F1 .402(If this v)144 216 R .402
+(ariable is in the en)-.25 F .401(vironment when)-.4 F F2(bash)2.901 E
+F1 .401(starts, the shell enters posix mode before reading)2.901 F .011
+(the startup \214les, as if the)144 228 R F2(\255\255posix)2.511 E F1
+(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 240 Q F2(bash)
+3.344 E F1 .844(enables posix mode, as if the command \231set \255o pos\
+ix\232 had been e)3.344 F -.15(xe)-.15 G 3.344(cuted. When).15 F
+(the shell enters posix mode, it sets this v)144 252 Q(ariable if it w)
+-.25 E(as not already set.)-.1 E F2(PR)108 264 Q(OMPT_COMMAND)-.3 E F1
+.155(If this v)144 276 R .155(ariable is set, and is an array)-.25 F
+2.655(,t)-.65 G .155(he v)-2.655 F .155(alue of each set element is e)
+-.25 F -.15(xe)-.15 G .155(cuted as a command prior).15 F .407
+(to issuing each primary prompt.)144 288 R .407(If this is set b)5.407 F
+.407(ut not an array v)-.2 F .407(ariable, its v)-.25 F .407
+(alue is used as a com-)-.25 F(mand to e)144 300 Q -.15(xe)-.15 G
+(cute instead.).15 E F2(PR)108 312 Q(OMPT_DIR)-.3 E(TRIM)-.4 E F1 .676
+(If set to a number greater than zero, the v)144 324 R .676
+(alue is used as the number of trailing directory compo-)-.25 F .923
+(nents to retain when e)144 336 R .923(xpanding the)-.15 F F2(\\w)3.423
+E F1(and)3.423 E F2(\\W)3.423 E F1 .923(prompt string escapes \(see)
+3.423 F F3(PR)3.423 E(OMPTING)-.27 E F1(belo)3.173 E(w\).)-.25 E
+(Characters remo)144 348 Q -.15(ve)-.15 G 2.5(da).15 G
+(re replaced with an ellipsis.)-2.5 E F2(PS0)108 360 Q F1 1.174(The v)
+144 360 R 1.174(alue of this parameter is e)-.25 F 1.174(xpanded \(see)
+-.15 F F3(PR)3.674 E(OMPTING)-.27 E F1(belo)3.424 E 1.174
+(w\) and displayed by interacti)-.25 F -.15(ve)-.25 G
+(shells after reading a command and before the command is e)144 372 Q
+-.15(xe)-.15 G(cuted.).15 E F2(PS1)108 384 Q F1 .065(The v)144 384 R
+.065(alue of this parameter is e)-.25 F .065(xpanded \(see)-.15 F F3(PR)
+2.565 E(OMPTING)-.27 E F1(belo)2.315 E .065
+(w\) and used as the primary prompt)-.25 F 2.5(string. The)144 396 R
+(def)2.5 E(ault v)-.1 E(alue is \231\\s\255\\v\\$ \232.)-.25 E F2(PS2)
+108 408 Q F1 .117(The v)144 408 R .117(alue of this parameter is e)-.25
+F .117(xpanded as with)-.15 F F3(PS1)2.617 E F1 .118
+(and used as the secondary prompt string.)2.368 F(The)5.118 E(def)144
+420 Q(ault is \231> \232.)-.1 E F2(PS3)108 432 Q F1 1.116(The v)144 432
+R 1.115(alue of this parameter is used as the prompt for the)-.25 F F2
+(select)3.615 E F1 1.115(command \(see)3.615 F F3 1.115(SHELL GRAM-)
+3.615 F(MAR)144 444 Q F1(abo)2.25 E -.15(ve)-.15 G(\).).15 E F2(PS4)108
+456 Q F1 .1(The v)144 456 R .1(alue of this parameter is e)-.25 F .1
+(xpanded as with)-.15 F F3(PS1)2.6 E F1 .101(and the v)2.35 F .101
+(alue is printed before each command)-.25 F F2(bash)144 468 Q F1 .335
+(displays during an e)2.835 F -.15(xe)-.15 G .335(cution trace.).15 F
+.335(The \214rst character of the e)5.335 F .335(xpanded v)-.15 F .335
+(alue of)-.25 F F3(PS4)2.834 E F1 .334(is repli-)2.584 F
+(cated multiple times, as necessary)144 480 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 \231+ \232.)-.1 E F2(SHELL)108 492 Q F1 .542
+(This v)144 504 R .542(ariable e)-.25 F .542
+(xpands to the full pathname to the shell.)-.15 F .543
+(If it is not set when the shell starts,)5.543 F F2(bash)3.043 E F1
+(assigns to it the full pathname of the current user')144 516 Q 2.5(sl)
+-.55 G(ogin shell.)-2.5 E F2(TIMEFORMA)108 528 Q(T)-.95 E F1 .827(The v)
+144 540 R .826
+(alue of this parameter is used as a format string specifying ho)-.25 F
+3.326(wt)-.25 G .826(he timing information for)-3.326 F .648
+(pipelines pre\214x)144 552 R .648(ed with the)-.15 F F2(time)3.148 E F1
+(reserv)3.148 E .648(ed w)-.15 F .649(ord should be displayed.)-.1 F
+(The)5.649 E F2(%)3.149 E F1 .649(character introduces)3.149 F .712
+(an escape sequence that is e)144 564 R .711(xpanded to a time v)-.15 F
+.711(alue or other information.)-.25 F .711(The escape sequences)5.711 F
+(and their meanings are as follo)144 576 Q(ws; the brack)-.25 E
+(ets denote optional portions.)-.1 E F2(%%)144 588 Q F1 2.5(Al)194 588 S
+(iteral)-2.5 E F2(%)2.5 E F1(.)A F2(%[)144 600 Q F0(p)A F2(][l]R)A F1
+(The elapsed time in seconds.)194 600 Q F2(%[)144 612 Q F0(p)A F2(][l]U)
+A F1(The number of CPU seconds spent in user mode.)194 612 Q F2(%[)144
+624 Q F0(p)A F2(][l]S)A F1
+(The number of CPU seconds spent in system mode.)194 624 Q F2(%P)144 636
+Q F1(The CPU percentage, computed as \(%U + %S\) / %R.)194 636 Q .87
+(The optional)144 652.8 R F0(p)3.37 E F1 .87(is a digit specifying the)
+3.37 F F0(pr)3.37 E(ecision)-.37 E F1 3.37(,t)C .87
+(he number of fractional digits after a decimal)-3.37 F 2.67(point. A)
+144 664.8 R -.25(va)2.67 G .17
+(lue of 0 causes no decimal point or fraction to be output.).25 F F2
+(time)5.169 E F1 .169(prints at most six digits)2.669 F 1.21
+(after the decimal point; v)144 676.8 R 1.21(alues of)-.25 F F0(p)3.71 E
+F1 1.211(greater than 6 are changed to 6.)3.71 F(If)6.211 E F0(p)3.711 E
+F1 1.211(is not speci\214ed,)3.711 F F2(time)3.711 E F1
+(prints three digits after the decimal point.)144 688.8 Q .668
+(The optional)144 705.6 R F2(l)3.168 E F1 .668
+(speci\214es a longer format, including minutes, of the form)3.168 F F0
+(MM)3.168 E F1(m)A F0(SS)A F1(.)A F0(FF)A F1 3.167(s. The)B -.25(va)
+3.167 G(lue).25 E(of)144 717.6 Q F0(p)2.5 E F1
+(determines whether or not the fraction is included.)2.5 E(GNU Bash 5.3)
+72 768 Q(2024 December 12)136.795 E(20)185.955 E 0 Cg EP
+%%Page: 21 21
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E 13.364(If this v)144 84 R 13.364
+(ariable is not set,)-.25 F/F2 10/Times-Bold@0 SF(bash)15.865 E F1
+13.365(acts as if it had the v)15.865 F(alue)-.25 E F2($\010\\nr)144 96
+Q(eal\\t%3lR\\nuser\\t%3lU\\nsys\\t%3lS\010)-.18 E F1 5.293(.I)C 2.793
+(ft)-5.293 G .293(he v)-2.793 F .293(alue is null,)-.25 F F2(bash)2.793
+E F1 .292(does not display an)2.793 F 2.792(yt)-.15 G(iming)-2.792 E 2.5
+(information. A)144 108 R(trailing ne)2.5 E
+(wline is added when the format string is displayed.)-.25 E F2(TMOUT)108
+120 Q F1 .225(If set to a v)144 132 R .225(alue greater than zero, the)
+-.25 F F2 -.18(re)2.725 G(ad).18 E F1 -.2(bu)2.725 G .225
+(iltin uses the v).2 F .226(alue as its def)-.25 F .226(ault timeout.)
+-.1 F(The)5.226 E F2(select)2.726 E F1 .68
+(command terminates if input does not arri)144 144 R .98 -.15(ve a)-.25
+H(fter).15 E/F3 9/Times-Bold@0 SF(TMOUT)3.18 E F1 .68
+(seconds when input is coming from a)2.93 F 2.555(terminal. In)144 156 R
+.055(an interacti)2.555 F .355 -.15(ve s)-.25 H .055(hell, the v).15 F
+.055(alue is interpreted as the number of seconds to w)-.25 F .055
+(ait for a line)-.1 F .836(of input after issuing the primary prompt.)
+144 168 R F2(Bash)5.836 E F1 .836(terminates after w)3.336 F .836
+(aiting for that number of sec-)-.1 F
+(onds if a complete line of input does not arri)144 180 Q -.15(ve)-.25 G
+(.).15 E F2(TMPDIR)108 192 Q F1 .39(If set,)144 204 R F2(bash)2.89 E F1
+.39(uses its v)2.89 F .39(alue as the name of a directory in which)-.25
+F F2(bash)2.891 E F1 .391(creates temporary \214les for the)2.891 F
+(shell')144 216 Q 2.5(su)-.55 G(se.)-2.5 E F2(auto_r)108 228 Q(esume)
+-.18 E F1 .531(This v)144 240 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 .409
+(simple commands consisting of only a single w)144 252 R .409
+(ord, without redirections, are treated as candidates)-.1 F 1.018
+(for resumption of an e)144 264 R 1.018(xisting stopped job)-.15 F 6.018
+(.T)-.4 G 1.017(here is no ambiguity allo)-6.018 F 1.017
+(wed; if there is more than)-.25 F 1.002(one job be)144 276 R 1.002
+(ginning with or containing the w)-.15 F 1.002
+(ord, this selects the most recently accessed job)-.1 F 6.002(.T)-.4 G
+(he)-6.002 E F0(name)144.36 288 Q F1 .603
+(of a stopped job, in this conte)3.284 F .603
+(xt, is the command line used to start it, as displayed by)-.15 F F2
+(jobs)3.103 E F1(.)A 1.078(If set to the v)144 300 R(alue)-.25 E F0 -.2
+(ex)3.578 G(act).2 E F1 3.578(,t).68 G 1.078(he w)-3.578 F 1.079
+(ord must match the name of a stopped job e)-.1 F 1.079
+(xactly; if set to)-.15 F F0(sub-)3.919 E(string)144 312 Q F1 2.572(,t)
+.22 G .072(he w)-2.572 F .072
+(ord needs to match a substring of the name of a stopped job)-.1 F 5.071
+(.T)-.4 G(he)-5.071 E F0(substring)2.911 E F1 -.25(va)2.791 G .071
+(lue pro-).25 F .576(vides functionality analogous to the)144 324 R F2
+(%?)3.076 E F1 .576(job identi\214er \(see)5.576 F F3 .576(JOB CONTR)
+3.076 F(OL)-.27 E F1(belo)2.826 E 3.076(w\). If)-.25 F .576(set to an)
+3.076 F(y)-.15 E .843(other v)144 336 R .843(alue \(e.g.,)-.25 F F0(pr)
+4.593 E(e\214x)-.37 E F1 .843(\), the w).53 F .842
+(ord must be a pre\214x of a stopped job')-.1 F 3.342(sn)-.55 G .842
+(ame; this pro)-3.342 F .842(vides func-)-.15 F
+(tionality analogous to the)144 348 Q F2(%)2.5 E F0(string)A F1
+(job identi\214er)2.5 E(.)-.55 E F2(histchars)108 360 Q F1 .672(The tw)
+144 372 R 3.172(oo)-.1 G 3.172(rt)-3.172 G .672
+(hree characters which control history e)-3.172 F .673
+(xpansion, quick substitution, and tok)-.15 F(enization)-.1 E(\(see)144
+384 Q F3(HIST)4.066 E(OR)-.162 E 3.816(YE)-.315 G(XP)-3.816 E(ANSION)
+-.666 E F1(belo)3.816 E 4.066(w\). The)-.25 F 1.565
+(\214rst character is the)4.065 F F0 1.565(history e)4.065 F(xpansion)
+-.2 E F1(character)4.065 E 4.065(,t)-.4 G(he)-4.065 E .57
+(character which be)144 396 R .57(gins a history e)-.15 F .571
+(xpansion, normally \231)-.15 F F2(!)A F1 3.071(\232. The)B .571
+(second character is the)3.071 F F0(quic)3.071 E 3.071(ks)-.2 G(ub-)
+-3.071 E(stitution)144 408 Q F1(character)2.785 E 2.785(,n)-.4 G .285
+(ormally \231)-2.785 F F2<00>A F1 2.785(\232. When)B .285
+(it appears as the \214rst character on the line, history substi-)2.785
+F .015(tution repeats the pre)144 420 R .015
+(vious command, replacing one string with another)-.25 F 5.016(.T)-.55 G
+.016(he optional third charac-)-5.016 F .431(ter is the character which\
+ indicates that the remainder of the line is a comment when found as th\
+e)144 432 R .688(\214rst character of a w)144 444 R .688
+(ord, normally \231)-.1 F F2(#)A F1 3.188(\232. The)B .689
+(history comment character disables history substitu-)3.189 F .405
+(tion for the remaining w)144 456 R .405(ords on the line.)-.1 F .404
+(It does not necessarily cause the shell parser to treat the)5.405 F
+(rest of the line as a comment.)144 468 Q F2(Arrays)87 484.8 Q(Bash)108
+496.8 Q F1(pro)3.39 E .89(vides one-dimensional inde)-.15 F -.15(xe)-.15
+G 3.39(da).15 G .891(nd associati)-3.39 F 1.191 -.15(ve a)-.25 H .891
+(rray v).15 F 3.391(ariables. An)-.25 F 3.391(yv)-.15 G .891
+(ariable may be used as an)-3.641 F(inde)108 508.8 Q -.15(xe)-.15 G
+2.698(da).15 G .198(rray; the)-2.698 F F2(declar)2.698 E(e)-.18 E F1 -.2
+(bu)2.698 G .197(iltin e).2 F .197(xplicitly declares an array)-.15 F
+5.197(.T)-.65 G .197(here is no maximum limit on the size of an)-5.197 F
+(array)108 520.8 Q 3.705(,n)-.65 G 1.205(or an)-3.705 F 3.705(yr)-.15 G
+1.205(equirement that members be inde)-3.705 F -.15(xe)-.15 G 3.705(do)
+.15 G 3.705(ra)-3.705 G 1.205(ssigned contiguously)-3.705 F 6.205(.I)
+-.65 G(nde)-6.205 E -.15(xe)-.15 G 3.705(da).15 G 1.205(rrays are refer)
+-3.705 F(-)-.2 E .105(enced using arithmetic e)108 532.8 R .105
+(xpressions that must e)-.15 F .105(xpand to an inte)-.15 F .104
+(ger and are zero-based; associati)-.15 F .404 -.15(ve a)-.25 H .104
+(rrays are).15 F .529(referenced using arbitrary strings.)108 544.8 R
+.529(Unless otherwise noted, inde)5.529 F -.15(xe)-.15 G 3.029(da).15 G
+.529(rray indices must be non-ne)-3.029 F -.05(ga)-.15 G(ti).05 E .83
+-.15(ve i)-.25 H(n-).15 E(te)108 556.8 Q(gers.)-.15 E 2.463(An inde)108
+573.6 R -.15(xe)-.15 G 4.963(da).15 G 2.463
+(rray is created automatically if an)-4.963 F 4.963(yv)-.15 G 2.462
+(ariable is assigned to using the syntax)-5.213 F F0(name)4.962 E F1([)A
+F0(sub-)A(script)108 585.6 Q F1(]=)A F0(value)A F1 5.682(.T)C(he)-5.682
+E F0(subscript)3.522 E F1 .682(is treated as an arithmetic e)3.862 F
+.682(xpression that must e)-.15 F -.25(va)-.25 G .682
+(luate to a number greater).25 F .75(than or equal to zero.)108 597.6 R
+2.349 -.8(To e)5.749 H .749(xplicitly declare an inde).65 F -.15(xe)-.15
+G 3.249(da).15 G(rray)-3.249 E 3.249(,u)-.65 G(se)-3.249 E F2(declar)
+3.249 E 3.249<65ad>-.18 G(a)-3.249 E F0(name)3.249 E F1(\(see)3.249 E F3
+.749(SHELL B)3.249 F(UIL)-.09 E(TIN)-.828 E(COMMANDS)108 609.6 Q F1
+(belo)2.25 E(w\).)-.25 E F2(declar)5 E 2.5<65ad>-.18 G(a)-2.5 E F0(name)
+2.5 E F2([)A F0(subscript)A F2(])A F1(is also accepted; the)2.5 E F0
+(subscript)2.5 E F1(is ignored.)2.5 E(Associati)108 626.4 Q .3 -.15
+(ve a)-.25 H(rrays are created using).15 E F2(declar)2.5 E 2.5<65ad>-.18
+G(A)-2.5 E F0(name)2.5 E F1(.)A(Attrib)108 643.2 Q .94
+(utes may be speci\214ed for an array v)-.2 F .941(ariable using the)
+-.25 F F2(declar)3.441 E(e)-.18 E F1(and)3.441 E F2 -.18(re)3.441 G
+(adonly).18 E F1 -.2(bu)3.441 G 3.441(iltins. Each).2 F(attrib)3.441 E
+(ute)-.2 E(applies to all members of an array)108 655.2 Q(.)-.65 E .418
+(Arrays are assigned using compound assignments of the form)108 672 R F0
+(name)2.918 E F1(=)A F2(\()A F1 -.25(va)C(lue).25 E F0(1)A F1 -2.915
+1.666(... v)2.918 H(alue)-1.916 E F0(n)A F2(\))A F1 2.917(,w)C .417
+(here each)-2.917 F F0(value)2.917 E F1 .156(may be of the form [)108
+684 R F0(subscript)A F1(]=)A F0(string)A F1 5.156(.I)C(nde)-5.156 E -.15
+(xe)-.15 G 2.656(da).15 G .156(rray assignments do not require an)-2.656
+F .156(ything b)-.15 F(ut)-.2 E F0(string)2.656 E F1 5.156(.E)C(ach)
+-5.156 E F0(value)108 696 Q F1 .216(in the list is e)2.716 F .216
+(xpanded using the shell e)-.15 F .216(xpansions described belo)-.15 F
+2.716(wu)-.25 G(nder)-2.716 E F3(EXP)2.716 E(ANSION)-.666 E/F4 9
+/Times-Roman@0 SF(,)A F1 -.2(bu)2.466 G(t).2 E F0(value)2.716 E F1 2.715
+(st)C(hat)-2.715 E 1.325(are v)108 708 R 1.325(alid v)-.25 F 1.325
+(ariable assignments including the brack)-.25 F 1.326
+(ets and subscript do not under)-.1 F 1.326(go brace e)-.18 F 1.326
+(xpansion and)-.15 F -.1(wo)108 720 S(rd splitting, as with indi).1 E
+(vidual v)-.25 E(ariable assignments.)-.25 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(21)185.955 E 0 Cg EP
+%%Page: 22 22
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .164(When assigning to inde)108 84 R -.15(xe)-.15 G
+2.663(da).15 G .163(rrays, if the optional brack)-2.663 F .163
+(ets and subscript are supplied, that inde)-.1 F 2.663(xi)-.15 G 2.663
+(sa)-2.663 G(ssigned)-2.663 E .459(to; otherwise the inde)108 96 R 2.959
+(xo)-.15 G 2.959(ft)-2.959 G .459(he element assigned is the last inde)
+-2.959 F 2.96(xa)-.15 G .46(ssigned to by the statement plus one.)-2.96
+F(In-)5.46 E(de)108 108 Q(xing starts at zero.)-.15 E 1.288
+(When assigning to an associati)108 124.8 R 1.588 -.15(ve a)-.25 H(rray)
+.15 E 3.788(,t)-.65 G 1.288(he w)-3.788 F 1.288
+(ords in a compound assignment may be either assignment)-.1 F .608
+(statements, for which the subscript is required, or a list of w)108
+136.8 R .608(ords that is interpreted as a sequence of alter)-.1 F(-)-.2
+E 1.735(nating k)108 148.8 R -.15(ey)-.1 G 4.235(sa).15 G 1.735(nd v)
+-4.235 F(alues:)-.25 E F0(name)4.235 E F1(=)A/F2 10/Times-Bold@0 SF(\()A
+F0 -.1(ke)4.235 G 1.735(y1 value1 k)-.2 F -.3(ey)-.1 G 4.235(2v).3 G
+(alue2)-4.235 E F1 1.666(...)4.234 G F2(\))-1.666 E F1 6.734(.T)C 1.734
+(hese are treated identically to)-6.734 F F0(name)4.234 E F1(=)A F2(\()A
+F1([)108 160.8 Q F0 -.1(ke)C(y1)-.2 E F1(]=)A F0(value1)A F1([)2.91 E F0
+-.1(ke)C(y2)-.2 E F1(]=)A F0(value2)A F1 1.666(...)2.91 G F2(\))-1.666 E
+F1 5.41(.T)C .41(he \214rst w)-5.41 F .411
+(ord in the list determines ho)-.1 F 2.911(wt)-.25 G .411
+(he remaining w)-2.911 F .411(ords are inter)-.1 F(-)-.2 E .154
+(preted; all assignments in a list must be of the same type.)108 172.8 R
+.153(When using k)5.153 F -.15(ey)-.1 G(/v).15 E .153(alue pairs, the k)
+-.25 F -.15(ey)-.1 G 2.653(sm).15 G .153(ay not be)-2.653 F
+(missing or empty; a \214nal missing v)108 184.8 Q(alue is treated lik)
+-.25 E 2.5(et)-.1 G(he empty string.)-2.5 E .239
+(This syntax is also accepted by the)108 201.6 R F2(declar)2.739 E(e)
+-.18 E F1 -.2(bu)2.739 G 2.739(iltin. Indi).2 F .24
+(vidual array elements may be assigned to using the)-.25 F F0(name)108
+213.6 Q F1([)A F0(subscript)A F1(]=)A F0(value)A F1
+(syntax introduced abo)2.5 E -.15(ve)-.15 G(.).15 E .026
+(When assigning to an inde)108 230.4 R -.15(xe)-.15 G 2.526(da).15 G
+(rray)-2.526 E 2.525(,i)-.65 G(f)-2.525 E F0(name)2.885 E F1 .025
+(is subscripted by a ne)2.705 F -.05(ga)-.15 G(ti).05 E .325 -.15(ve n)
+-.25 H(umber).15 E 2.525(,t)-.4 G .025(hat number is interpreted)-2.525
+F .316(as relati)108 242.4 R .616 -.15(ve t)-.25 H 2.816(oo).15 G .316
+(ne greater than the maximum inde)-2.816 F 2.816(xo)-.15 G(f)-2.816 E F0
+(name)2.816 E F1 2.816(,s)C 2.816(on)-2.816 G -2.25 -.15(eg a)-2.816 H
+(ti).15 E .616 -.15(ve i)-.25 H .317(ndices count back from the end of)
+.15 F(the array)108 254.4 Q 2.5(,a)-.65 G(nd an inde)-2.5 E 2.5(xo)-.15
+G 2.5<66ad>-2.5 G 2.5(1r)-2.5 G(eferences the last element.)-2.5 E .644
+(The += operator appends to an array v)108 271.2 R .643
+(ariable when assigning using the compound assignment syntax; see)-.25 F
+/F3 9/Times-Bold@0 SF -.666(PA)108 283.2 S(RAMETERS).666 E F1(abo)2.25 E
+-.15(ve)-.15 G(.).15 E .683(An array element is referenced using ${)108
+300 R F0(name)A F1([)A F0(subscript)A F1 3.184(]}. The)B .684
+(braces are required to a)3.184 F -.2(vo)-.2 G .684(id con\215icts with)
+.2 F .298(pathname e)108 312 R 2.798(xpansion. If)-.15 F F0(subscript)
+2.798 E F1(is)2.798 E F2(@)2.798 E F1(or)2.798 E F2(*)2.798 E F1 2.797
+(,t)C .297(he w)-2.797 F .297(ord e)-.1 F .297(xpands to all members of)
+-.15 F F0(name)2.797 E F1 2.797(,u)C .297(nless noted in the)-2.797 F
+.144(description of a b)108 324 R .144(uiltin or w)-.2 F .144(ord e)-.1
+F 2.644(xpansion. These)-.15 F .144(subscripts dif)2.644 F .145
+(fer only when the w)-.25 F .145(ord appears within dou-)-.1 F .095
+(ble quotes.)108 336 R .095(If the w)5.095 F .095
+(ord is double-quoted, ${)-.1 F F0(name)A F1 .095([*]} e)B .094
+(xpands to a single w)-.15 F .094(ord with the v)-.1 F .094
+(alue of each array)-.25 F .256
+(member separated by the \214rst character of the)108 348 R F3(IFS)2.756
+E F1 .257(special v)2.506 F .257(ariable, and ${)-.25 F F0(name)A F1
+.257([@]} e)B .257(xpands each element)-.15 F(of)108 360 Q F0(name)3.461
+E F1 .961(to a separate w)3.461 F 3.461(ord. When)-.1 F .961
+(there are no array members, ${)3.461 F F0(name)A F1 .96([@]} e)B .96
+(xpands to nothing.)-.15 F .96(If the)5.96 F .726(double-quoted e)108
+372 R .727(xpansion occurs within a w)-.15 F .727(ord, the e)-.1 F .727
+(xpansion of the \214rst parameter is joined with the be-)-.15 F .8
+(ginning part of the e)108 384 R .8(xpansion of the original w)-.15 F .8
+(ord, and the e)-.1 F .8(xpansion of the last parameter is joined with)
+-.15 F .553(the last part of the e)108 396 R .554
+(xpansion of the original w)-.15 F 3.054(ord. This)-.1 F .554
+(is analogous to the e)3.054 F .554(xpansion of the special para-)-.15 F
+(meters)108 408 Q F2(*)2.5 E F1(and)2.5 E F2(@)2.5 E F1(\(see)2.5 E F2
+(Special P)2.5 E(arameters)-.1 E F1(abo)2.5 E -.15(ve)-.15 G(\).).15 E
+(${#)108 424.8 Q F0(name)A F1([)A F0(subscript)A F1 .33(]} e)B .33
+(xpands to the length of ${)-.15 F F0(name)A F1([)A F0(subscript)A F1
+2.83(]}. If)B F0(subscript)2.83 E F1(is)2.83 E F2(*)2.83 E F1(or)2.83 E
+F2(@)2.83 E F1 2.83(,t)C .33(he e)-2.83 F .33(xpansion is)-.15 F
+(the number of elements in the array)108 436.8 Q(.)-.65 E .386(If the)
+108 453.6 R F0(subscript)3.226 E F1 .386
+(used to reference an element of an inde)3.566 F -.15(xe)-.15 G 2.886
+(da).15 G .386(rray e)-2.886 F -.25(va)-.25 G .386
+(luates to a number less than zero, it is).25 F .687
+(interpreted as relati)108 465.6 R .987 -.15(ve t)-.25 H 3.187(oo).15 G
+.687(ne greater than the maximum inde)-3.187 F 3.186(xo)-.15 G 3.186(ft)
+-3.186 G .686(he array)-3.186 F 3.186(,s)-.65 G 3.186(on)-3.186 G -2.25
+-.15(eg a)-3.186 H(ti).15 E .986 -.15(ve i)-.25 H .686
+(ndices count back).15 F(from the end of the array)108 477.6 Q 2.5(,a)
+-.65 G(nd an inde)-2.5 E 2.5(xo)-.15 G 2.5<66ad>-2.5 G 2.5(1r)-2.5 G
+(eferences the last element.)-2.5 E .595(Referencing an array v)108
+494.4 R .595(ariable without a subscript is equi)-.25 F -.25(va)-.25 G
+.595(lent to referencing the array with a subscript of).25 F 2.5(0. An)
+108 506.4 R 2.5(yr)-.15 G(eference to a v)-2.5 E(ariable using a v)-.25
+E(alid subscript is v)-.25 E(alid;)-.25 E F2(bash)2.5 E F1
+(creates an array if necessary)2.5 E(.)-.65 E(An array v)108 523.2 Q
+(ariable is considered set if a subscript has been assigned a v)-.25 E
+2.5(alue. The)-.25 F(null string is a v)2.5 E(alid v)-.25 E(alue.)-.25 E
+.418(It is possible to obtain the k)108 540 R -.15(ey)-.1 G 2.918(s\()
+.15 G .418(indices\) of an array as well as the v)-2.918 F 2.917
+(alues. ${)-.25 F F2(!)A F0(name)A F1([)A F0(@)A F1 .417(]} and ${)B F2
+(!)A F0(name)A F1([)A F0(*)A F1(]})A -.15(ex)108 552 S .749
+(pand to the indices assigned in array v).15 F(ariable)-.25 E F0(name)
+3.249 E F1 5.749(.T)C .75
+(he treatment when in double quotes is similar to)-5.749 F(the e)108 564
+Q(xpansion of the special parameters)-.15 E F0(@)2.5 E F1(and)2.5 E F0
+(*)2.5 E F1(within double quotes.)2.5 E(The)108 580.8 Q F2(unset)3.282 E
+F1 -.2(bu)3.282 G .782(iltin is used to destro).2 F 3.281(ya)-.1 G
+(rrays.)-3.281 E F2(unset)5.781 E F0(name)3.281 E F1([)A F0(subscript)A
+F1 3.281(]u)C .781(nsets the array element at inde)-3.281 F(x)-.15 E F0
+(sub-)3.281 E(script)108 592.8 Q F1 2.858(,f)C .358(or both inde)-2.858
+F -.15(xe)-.15 G 2.858(da).15 G .358(nd associati)-2.858 F .658 -.15
+(ve a)-.25 H 2.858(rrays. Ne).15 F -.05(ga)-.15 G(ti).05 E .658 -.15
+(ve s)-.25 H .358(ubscripts to inde).15 F -.15(xe)-.15 G 2.858(da).15 G
+.358(rrays are interpreted as de-)-2.858 F 1.205(scribed abo)108 604.8 R
+-.15(ve)-.15 G 6.205(.U).15 G 1.205
+(nsetting the last element of an array v)-6.205 F 1.204
+(ariable does not unset the v)-.25 F(ariable.)-.25 E F2(unset)6.204 E F0
+(name)3.704 E F1(,)A(where)108 616.8 Q F0(name)2.907 E F1 .407
+(is an array)2.907 F 2.907(,r)-.65 G(emo)-2.907 E -.15(ve)-.15 G 2.907
+(st).15 G .407(he entire array)-2.907 F(.)-.65 E F2(unset)5.407 E F0
+(name)2.907 E F1([)A F0(subscript)A F1 2.907(]b)C(eha)-2.907 E -.15(ve)
+-.2 G 2.907(sd).15 G(if)-2.907 E .408(ferently depending on)-.25 F
+(whether)108 628.8 Q F0(name)2.915 E F1 .415(is an inde)2.915 F -.15(xe)
+-.15 G 2.915(do).15 G 2.915(ra)-2.915 G(ssociati)-2.915 E .715 -.15
+(ve a)-.25 H .415(rray when).15 F F0(subscript)2.915 E F1(is)2.915 E F2
+(*)2.915 E F1(or)2.915 E F2(@)2.915 E F1 5.415(.I)C(f)-5.415 E F0(name)
+2.914 E F1 .414(is an associati)2.914 F .714 -.15(ve a)-.25 H(rray).15 E
+(,)-.65 E .937(this unsets the element with subscript)108 640.8 R F2(*)
+3.437 E F1(or)3.437 E F2(@)3.437 E F1 5.937(.I)C(f)-5.937 E F0(name)
+3.437 E F1 .937(is an inde)3.437 F -.15(xe)-.15 G 3.437(da).15 G(rray)
+-3.437 E 3.437(,u)-.65 G .937(nset remo)-3.437 F -.15(ve)-.15 G 3.437
+(sa).15 G .937(ll of the ele-)-3.437 F(ments b)108 652.8 Q
+(ut does not remo)-.2 E .3 -.15(ve t)-.15 H(he array itself.).15 E .029
+(When using a v)108 669.6 R .029(ariable name with a subscript as an ar)
+-.25 F .028(gument to a command, such as with)-.18 F F2(unset)2.528 E F1
+2.528(,w)C .028(ithout us-)-2.528 F .515(ing the w)108 681.6 R .515
+(ord e)-.1 F .515(xpansion syntax described abo)-.15 F -.15(ve)-.15 G
+3.015(,\().15 G .515(e.g., unset a[4]\), the ar)-3.015 F .515
+(gument is subject to pathname e)-.18 F(x-)-.15 E 2.5(pansion. Quote)108
+693.6 R(the ar)2.5 E(gument if pathname e)-.18 E
+(xpansion is not desired \(e.g., unset \010a[4]\010\).)-.15 E(The)108
+710.4 Q F2(declar)2.684 E(e)-.18 E F1(,)A F2(local)2.684 E F1 2.684(,a)C
+(nd)-2.684 E F2 -.18(re)2.684 G(adonly).18 E F1 -.2(bu)2.684 G .184
+(iltins each accept a).2 F F2<ad61>2.684 E F1 .184
+(option to specify an inde)2.684 F -.15(xe)-.15 G 2.683(da).15 G .183
+(rray and a)-2.683 F F2<ad41>2.683 E F1(op-)2.683 E .963
+(tion to specify an associati)108 722.4 R 1.263 -.15(ve a)-.25 H(rray)
+.15 E 5.963(.I)-.65 G 3.463(fb)-5.963 G .963(oth options are supplied,)
+-3.463 F F2<ad41>3.463 E F1(tak)3.463 E .963(es precedence.)-.1 F(The)
+5.963 E F2 -.18(re)3.464 G(ad).18 E F1 -.2(bu)3.464 G(iltin).2 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(22)185.955 E 0 Cg EP
+%%Page: 23 23
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .441(accepts a)108 84 R/F2 10/Times-Bold@0 SF<ad61>
+2.941 E F1 .441(option to assign a list of w)2.941 F .441
+(ords read from the standard input to an array)-.1 F 5.441(.T)-.65 G(he)
+-5.441 E F2(set)2.941 E F1(and)2.941 E F2(declar)2.94 E(e)-.18 E F1 -.2
+(bu)108 96 S .685(iltins display array v).2 F .686(alues in a w)-.25 F
+.686(ay that allo)-.1 F .686(ws them to be reused as assignments.)-.25 F
+.686(Other b)5.686 F .686(uiltins accept)-.2 F .733(array name ar)108
+108 R .733(guments as well \(e.g.,)-.18 F F2(map\214le)3.233 E F1 .733
+(\); see the descriptions of indi)B .732(vidual b)-.25 F .732
+(uiltins belo)-.2 F 3.232(wf)-.25 G .732(or details.)-3.232 F
+(The shell pro)108 120 Q(vides a number of b)-.15 E(uiltin array v)-.2 E
+(ariables.)-.25 E/F3 10.95/Times-Bold@0 SF(EXP)72 136.8 Q(ANSION)-.81 E
+F1 .764(Expansion is performed on the command line after it has been sp\
+lit into w)108 148.8 R 3.264(ords. The)-.1 F .765(shell performs these)
+3.264 F -.15(ex)108 160.8 S(pansions:).15 E F0(br)3.797 E 1.027(ace e)
+-.15 F(xpansion)-.2 E F1(,).24 E F0 1.027(tilde e)3.657 F(xpansion)-.2 E
+F1(,).24 E F0(par)4.777 E 1.027(ameter and variable e)-.15 F(xpansion)
+-.2 E F1(,).24 E F0 1.027(command substitution)3.727 F F1(,).24 E F0
+(arithmetic e)108.33 172.8 Q(xpansion)-.2 E F1(,).24 E F0(wor)2.84 E 2.5
+(ds)-.37 G(plitting)-2.5 E F1(,).22 E F0(pathname e)3.75 E(xpansion)-.2
+E F1 2.5(,a).24 G(nd)-2.5 E F0(quote r)2.75 E(emo)-.37 E(val)-.1 E F1(.)
+.51 E .418(The order of e)108 189.6 R .418(xpansions is: brace e)-.15 F
+.418(xpansion; tilde e)-.15 F .419(xpansion, parameter and v)-.15 F .419
+(ariable e)-.25 F .419(xpansion, arithmetic)-.15 F -.15(ex)108 201.6 S
+.28(pansion, and command substitution \(done in a left-to-right f).15 F
+.28(ashion\); w)-.1 F .28(ord splitting; pathname e)-.1 F(xpansion;)-.15
+E(and quote remo)108 213.6 Q -.25(va)-.15 G(l.).25 E .257
+(On systems that can support it, there is an additional e)108 230.4 R
+.257(xpansion a)-.15 F -.25(va)-.2 G(ilable:).25 E F0(pr)2.757 E .257
+(ocess substitution)-.45 F F1 5.257(.T)C .257(his is per)-5.257 F(-)-.2
+E(formed at the same time as tilde, parameter)108 242.4 Q 2.5(,v)-.4 G
+(ariable, and arithmetic e)-2.75 E(xpansion and command substitution.)
+-.15 E F0 .25(Quote r)108 259.2 R(emo)-.37 E(val)-.1 E F1 .25(is al)2.75
+F -.1(wa)-.1 G .25(ys performed last.).1 F .249(It remo)5.25 F -.15(ve)
+-.15 G 2.749(sq).15 G .249(uote characters present in the original w)
+-2.749 F .249(ord, not ones)-.1 F(resulting from one of the other e)108
+271.2 Q(xpansions, unless the)-.15 E 2.5(yh)-.15 G -2.25 -.2(av e)-2.5 H
+(been quoted themselv)2.7 E(es.)-.15 E .171(Only brace e)108 288 R .171
+(xpansion, w)-.15 F .171(ord splitting, and pathname e)-.1 F .171
+(xpansion can increase the number of w)-.15 F .172(ords of the e)-.1 F
+(x-)-.15 E .777(pansion; other e)108 300 R .776(xpansions e)-.15 F .776
+(xpand a single w)-.15 F .776(ord to a single w)-.1 F 3.276(ord. The)-.1
+F .776(only e)3.276 F .776(xceptions to this are the e)-.15 F(x-)-.15 E
+.328(pansions of)108 312 R F2("$@")2.828 E F1(and)2.828 E F2("${)2.828 E
+F0(name)A F2([@]}")A F1 2.828(,a)C .328(nd, in most cases,)-2.828 F F2
+($*)2.828 E F1(and)2.828 E F2(${)2.828 E F0(name)A F2([*]})A F1 .329
+(as e)2.828 F .329(xplained abo)-.15 F .629 -.15(ve \()-.15 H(see).15 E
+/F4 9/Times-Bold@0 SF -.666(PA)2.829 G(-).666 E(RAMETERS)108 324 Q/F5 9
+/Times-Roman@0 SF(\).)A F2(Brace Expansion)87 340.8 Q F0(Br)108.58 352.8
+Q .307(ace e)-.15 F(xpansion)-.2 E F1 .307(is a mechanism to generate a\
+rbitrary strings sharing a common pre\214x and suf)3.047 F .306
+(\214x, either of)-.25 F .577(which can be empty)108 364.8 R 5.577(.T)
+-.65 G .577(his mechanism is similar to)-5.577 F F0 .577(pathname e)
+3.077 F(xpansion)-.2 E F1 3.078(,b)C .578
+(ut the \214lenames generated need)-3.278 F .266(not e)108 376.8 R 2.766
+(xist. P)-.15 F .266(atterns to be brace e)-.15 F .265
+(xpanded are formed from an optional)-.15 F F0(pr)4.015 E(eamble)-.37 E
+F1 2.765(,f).18 G(ollo)-2.765 E .265(wed by either a series)-.25 F 1.315
+(of comma-separated strings or a sequence e)108 388.8 R 1.315
+(xpression between a pair of braces, follo)-.15 F 1.316
+(wed by an optional)-.25 F F0(postscript)109.25 400.8 Q F1 5.66(.T).68 G
+.66(he preamble is pre\214x)-5.66 F .659(ed to each string contained wi\
+thin the braces, and the postscript is then)-.15 F
+(appended to each resulting string, e)108 412.8 Q
+(xpanding left to right.)-.15 E .472(Brace e)108 429.6 R .472
+(xpansions may be nested.)-.15 F .472(The results of each e)5.472 F .473
+(xpanded string are not sorted; brace e)-.15 F .473(xpansion pre-)-.15 F
+(serv)108 441.6 Q(es left to right order)-.15 E 5(.F)-.55 G(or e)-5.15 E
+(xample, a)-.15 E F2({)A F1(d,c,b)A F2(})A F1 2.5(ee)C
+(xpands into \231ade ace abe\232.)-2.65 E 3.149(As)108 458.4 S .649
+(equence e)-3.149 F .649(xpression tak)-.15 F .649(es the form)-.1 F F2
+({)3.149 E F0(x)A F2(..)A F0(y)A F2([..)A F0(incr)A F2(]})A F1 3.149(,w)
+C(here)-3.149 E F0(x)3.149 E F1(and)3.149 E F0(y)3.149 E F1 .649
+(are either inte)3.149 F .648(gers or single letters, and)-.15 F F0
+(incr)108 470.4 Q F1 2.615(,a)C 2.615(no)-2.615 G .115
+(ptional increment, is an inte)-2.615 F(ger)-.15 E 5.115(.W)-.55 G .115
+(hen inte)-5.115 F .115(gers are supplied, the e)-.15 F .115
+(xpression e)-.15 F .115(xpands to each num-)-.15 F .911(ber between)108
+482.4 R F0(x)3.411 E F1(and)3.411 E F0(y)3.411 E F1 3.411(,i)C(nclusi)
+-3.411 E -.15(ve)-.25 G 5.911(.I).15 G 3.411(fe)-5.911 G(ither)-3.411 E
+F0(x)3.411 E F1(or)3.411 E F0(y)3.411 E F1(be)3.41 E .91(gins with)-.15
+F F0(0)3.41 E F1 3.41(,e)C .91(ach generated term will contain the same)
+-3.41 F .513(number of digits, zero-padding where necessary)108 494.4 R
+5.513(.W)-.65 G .513(hen either)-5.513 F F0(x)3.013 E F1(or)3.014 E F0
+(y)3.014 E F1(be)3.014 E .514(gins with a zero, the shell attempts)-.15
+F .086(to force all generated terms to contain the same number of digit\
+s, zero-padding where necessary)108 506.4 R 5.085(.W)-.65 G .085
+(hen let-)-5.085 F .16(ters are supplied, the e)108 518.4 R .16
+(xpression e)-.15 F .161(xpands to each character le)-.15 F .161
+(xicographically between)-.15 F F0(x)2.661 E F1(and)2.661 E F0(y)2.661 E
+F1 2.661(,i)C(nclusi)-2.661 E -.15(ve)-.25 G 2.661(,u).15 G(s-)-2.661 E
+.485(ing the def)108 530.4 R .485(ault C locale.)-.1 F .485
+(Note that both)5.485 F F0(x)2.985 E F1(and)2.985 E F0(y)2.985 E F1 .484
+(must be of the same type \(inte)2.985 F .484(ger or letter\).)-.15 F
+.484(When the in-)5.484 F .271
+(crement is supplied, it is used as the dif)108 542.4 R .271
+(ference between each term.)-.25 F .271(The def)5.271 F .271
+(ault increment is 1 or \2551 as ap-)-.1 F(propriate.)108 554.4 Q .582
+(Brace e)108 571.2 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 583.2 R .015(ed in the result.)-.15 F .015
+(It is strictly te)5.015 F(xtual.)-.15 E F2(Bash)5.016 E F1 .016
+(does not apply an)2.516 F 2.516(ys)-.15 G .016
+(yntactic interpretation to the con-)-2.516 F(te)108 595.2 Q
+(xt of the e)-.15 E(xpansion or the te)-.15 E(xt between the braces.)
+-.15 E 2.502(Ac)108 612 S .002(orrectly-formed brace e)-2.502 F .001(xp\
+ansion must contain unquoted opening and closing braces, and at least o\
+ne un-)-.15 F(quoted comma or a v)108 624 Q(alid sequence e)-.25 E 2.5
+(xpression. An)-.15 F 2.5(yi)-.15 G(ncorrectly formed brace e)-2.5 E
+(xpansion is left unchanged.)-.15 E(A)108 640.8 Q F2({)2.521 E F1(or)
+2.521 E F2(,)2.521 E F1 .021(may be quoted with a backslash to pre)2.521
+F -.15(ve)-.25 G .022(nt its being considered part of a brace e).15 F
+2.522(xpression. T)-.15 F 2.522(oa)-.8 G -.2(vo)-2.722 G(id).2 E .172
+(con\215icts with parameter e)108 652.8 R .172(xpansion, the string)-.15
+F F2(${)2.672 E F1 .172(is not considered eligible for brace e)2.672 F
+.172(xpansion, and inhibits)-.15 F(brace e)108 664.8 Q
+(xpansion until the closing)-.15 E F2(})2.5 E F1(.)A 1.476(This constru\
+ct is typically used as shorthand when the common pre\214x of the strin\
+gs to be generated is)108 681.6 R(longer than in the abo)108 693.6 Q .3
+-.15(ve ex)-.15 H(ample:).15 E(mkdir /usr/local/src/bash/{old,ne)144
+710.4 Q -.65(w,)-.25 G(dist,b).65 E(ugs})-.2 E(or)108 722.4 Q
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(23)185.955 E 0 Cg EP
+%%Page: 24 24
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(cho)144 84 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 100.8 R .618
+(xpansion introduces a slight incompatibility with historical v)-.15 F
+.618(ersions of)-.15 F/F2 10/Times-Bold@0 SF(sh)3.118 E F1(.)A F2(sh)
+5.618 E F1 .618(does not treat open-)3.118 F .247
+(ing or closing braces specially when the)108 112.8 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 F2(Bash)5.248 E F1(remo)108 124.8 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 F2(sh)
+3.53 E F1(as)3.53 E F0(\214le{1,2})108 136.8 Q F1 .061
+(appears identically in the output.)2.561 F F2(Bash)5.061 E F1 .061
+(outputs that w)2.561 F .061(ord as)-.1 F F0 .061(\214le1 \214le2)4.471
+F F1 .062(after brace e)2.582 F 2.562(xpansion. Start)-.15 F F2(bash)108
+148.8 Q F1 .845(with the)3.345 F F2(+B)3.345 E F1 .845
+(option or disable brace e)3.345 F .845(xpansion with the)-.15 F F2(+B)
+3.345 E F1 .845(option to the)3.345 F F2(set)3.344 E F1 .844
+(command \(see)3.344 F/F3 9/Times-Bold@0 SF(SHELL)3.344 E -.09(BU)108
+160.8 S(IL).09 E(TIN COMMANDS)-.828 E F1(belo)2.25 E(w\) for strict)-.25
+E F2(sh)2.5 E F1(compatibility)2.5 E(.)-.65 E F2 -.18(Ti)87 177.6 S
+(lde Expansion).18 E F1 .845(If a w)108 189.6 R .846(ord be)-.1 F .846
+(gins with an unquoted tilde character \(\231)-.15 F F2<01>A F1 .846
+(\232\), all of the characters preceding the \214rst unquoted)B .185(sl\
+ash \(or all characters, if there is no unquoted slash\) are considered\
+ a)108 201.6 R F0(tilde-pr)2.685 E(e\214x)-.37 E F1 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 213.6 R .726
+(wing the tilde are treated as a possible)-.25 F F0(lo)108 225.6 Q .523
+(gin name)-.1 F F1 5.523(.I)C 3.023(ft)-5.523 G .523
+(his login name is the null string, the tilde is replaced with the v)
+-3.023 F .522(alue of the shell parameter)-.25 F F3(HOME)108 237.6 Q/F4
+9/Times-Roman@0 SF(.)A F1(If)5.076 E F3(HOME)3.076 E F1 .577
+(is unset, the tilde e)2.827 F .577
+(xpands to the home directory of the user e)-.15 F -.15(xe)-.15 G .577
+(cuting the shell instead.).15 F(Otherwise, the tilde-pre\214x is repla\
+ced with the home directory associated with the speci\214ed login name.)
+108 249.6 Q .368(If the tilde-pre\214x is a \231\001+\232, the v)108
+266.4 R .368(alue of the shell v)-.25 F(ariable)-.25 E F3(PWD)2.868 E F1
+.368(replaces the tilde-pre\214x.)2.618 F .368(If the tilde-pre\214x)
+5.368 F .227(is a \231\001\255\232, the shell substitutes the v)108
+278.4 R .227(alue of the shell v)-.25 F(ariable)-.25 E F3(OLDPWD)2.727 E
+F4(,)A F1 .227(if it is set.)2.477 F .227(If the characters follo)5.227
+F(w-)-.25 E .296
+(ing the tilde in the tilde-pre\214x consist of a number)108 290.4 R F0
+(N)2.796 E F1 2.796(,o)C .296(ptionally pre\214x)-2.796 F .296
+(ed by a \231+\232 or a \231\255\232, the tilde-pre\214x)-.15 F .813(is\
+ replaced with the corresponding element from the directory stack, as i\
+t w)108 302.4 R .814(ould be displayed by the)-.1 F F2(dirs)3.314 E F1
+-.2(bu)108 314.4 S .699(iltin in).2 F -.2(vo)-.4 G -.1(ke).2 G 3.199(dw)
+.1 G .699(ith the characters follo)-3.199 F .699
+(wing the tilde in the tilde-pre\214x as an ar)-.25 F 3.198(gument. If)
+-.18 F .698(the characters)3.198 F(follo)108 326.4 Q .482(wing the tild\
+e in the tilde-pre\214x consist of a number without a leading \231+\232\
+ or \231\255\232, tilde e)-.25 F .482(xpansion as-)-.15 F
+(sumes \231+\232.)108 338.4 Q .54(The results of tilde e)108 355.2 R .54
+(xpansion are treated as if the)-.15 F 3.04(yw)-.15 G .54
+(ere quoted, so the replacement is not subject to w)-3.04 F(ord)-.1 E
+(splitting and pathname e)108 367.2 Q(xpansion.)-.15 E
+(If the login name is in)108 384 Q -.25(va)-.4 G(lid, or the tilde e).25
+E(xpansion f)-.15 E(ails, the tilde-pre\214x is unchanged.)-.1 E F2
+(Bash)108 400.8 Q F1 .578(checks each v)3.078 F .578
+(ariable assignment for unquoted tilde-pre\214x)-.25 F .578
+(es immediately follo)-.15 F .578(wing a)-.25 F F2(:)3.078 E F1 .578
+(or the \214rst)3.078 F F2(=)3.078 E F1(,)A 1.042(and performs tilde e)
+108 412.8 R 1.042(xpansion in these cases.)-.15 F(Consequently)6.041 E
+3.541(,o)-.65 G 1.041(ne may use \214lenames with tildes in assign-)
+-3.541 F(ments to)108 424.8 Q F3 -.666(PA)2.5 G(TH)-.189 E F4(,)A F3
+(MAILP)2.25 E -.855(AT)-.666 G(H).855 E F4(,)A F1(and)2.25 E F3(CDP)2.5
+E -.855(AT)-.666 G(H).855 E F4(,)A F1(and the shell assigns the e)2.25 E
+(xpanded v)-.15 E(alue.)-.25 E F2(Bash)108 441.6 Q F1 1.768
+(also performs tilde e)4.268 F 1.768(xpansion on w)-.15 F 1.769
+(ords satisfying the conditions of v)-.1 F 1.769
+(ariable assignments \(as de-)-.25 F .464(scribed abo)108 453.6 R .764
+-.15(ve u)-.15 H(nder).15 E F3 -.666(PA)2.964 G(RAMETERS).666 E F4(\))A
+F1 .464(when the)2.714 F 2.964(ya)-.15 G .464(ppear as ar)-2.964 F .463
+(guments to simple commands.)-.18 F F2(Bash)5.463 E F1 .463(does not)
+2.963 F(do this, e)108 465.6 Q(xcept for the)-.15 E F0(declar)2.5 E
+(ation)-.15 E F1(commands listed abo)2.5 E -.15(ve)-.15 G 2.5(,w).15 G
+(hen in posix mode.)-2.5 E F2 -.1(Pa)87 482.4 S(rameter Expansion).1 E
+F1 .014(The \231)108 494.4 R F2($)A F1 2.514<9a63>C .014
+(haracter introduces parameter e)-2.514 F .014
+(xpansion, command substitution, or arithmetic e)-.15 F 2.515
+(xpansion. The)-.15 F(pa-)2.515 E .314(rameter name or symbol to be e)
+108 506.4 R .314
+(xpanded may be enclosed in braces, which are optional b)-.15 F .314
+(ut serv)-.2 F 2.813(et)-.15 G 2.813(op)-2.813 G(rotect)-2.813 E .414
+(the v)108 518.4 R .414(ariable to be e)-.25 F .414
+(xpanded from characters immediately follo)-.15 F .415
+(wing it which could be interpreted as part of)-.25 F(the name.)108
+530.4 Q 1.073
+(When braces are used, the matching ending brace is the \214rst \231)108
+547.2 R F2(})A F1 3.573<9a6e>C 1.072
+(ot escaped by a backslash or within a)-3.573 F .821
+(quoted string, and not within an embedded arithmetic e)108 559.2 R .822
+(xpansion, command substitution, or parameter e)-.15 F(x-)-.15 E
+(pansion.)108 571.2 Q(The basic form of parameter e)108 588 Q
+(xpansion is)-.15 E(${)108 604.8 Q F0(par)A(ameter)-.15 E F1(})A .285
+(which substitutes the v)108 621.6 R .285(alue of)-.25 F F0(par)2.785 E
+(ameter)-.15 E F1 5.285(.T)C .285(he braces are required when)-5.285 F
+F0(par)4.034 E(ameter)-.15 E F1 .284(is a positional parame-)3.514 F
+.066(ter with more than one digit, or when)108 633.6 R F0(par)3.816 E
+(ameter)-.15 E F1 .066(is follo)3.296 F .067
+(wed by a character which is not to be interpreted as)-.25 F .407
+(part of its name.)108 645.6 R(The)5.407 E F0(par)2.907 E(ameter)-.15 E
+F1 .406(is a shell parameter as described abo)2.907 F -.15(ve)-.15 G F2
+-.74(PA)3.056 G(RAMETERS).74 E F1 2.906(\)o)C 2.906(ra)-2.906 G 2.906
+(na)-2.906 G .406(rray ref-)-2.906 F(erence \()108 657.6 Q F2(Arrays)A
+F1(\).)A .346(If the \214rst character of)108 674.4 R F0(par)2.846 E
+(ameter)-.15 E F1 .346(is an e)2.846 F .346(xclamation point \()-.15 F
+F2(!)A F1 .346(\), and)B F0(par)2.846 E(ameter)-.15 E F1 .346(is not a)
+2.846 F F0(namer)2.846 E(ef)-.37 E F1 2.847(,i)C 2.847(ti)-2.847 G
+(ntroduces)-2.847 E 2.907(al)108 686.4 S -2.15 -.25(ev e)-2.907 H 2.907
+(lo).25 G 2.906(fi)-2.907 G(ndirection.)-2.906 E F2(Bash)5.406 E F1 .406
+(uses the v)2.906 F .406(alue formed by e)-.25 F .406
+(xpanding the rest of)-.15 F F0(par)2.906 E(ameter)-.15 E F1 .406
+(as the ne)2.906 F(w)-.25 E F0(par)2.906 E(ame-)-.15 E(ter)108 698.4 Q
+F1 2.935(;t)C .435(his ne)-2.935 F 2.935(wp)-.25 G .435
+(arameter is then e)-2.935 F .435(xpanded and that v)-.15 F .436
+(alue is used in the rest of the e)-.25 F .436
+(xpansion, rather than the)-.15 F -.15(ex)108 710.4 S .292
+(pansion of the original).15 F F0(par)2.791 E(ameter)-.15 E F1 5.291(.T)
+C .291(his is kno)-5.291 F .291(wn as)-.25 F F0(indir)2.791 E .291
+(ect e)-.37 F(xpansion)-.2 E F1 5.291(.T)C .291(he v)-5.291 F .291
+(alue is subject to tilde e)-.25 F(x-)-.15 E .163(pansion, parameter e)
+108 722.4 R .163(xpansion, command substitution, and arithmetic e)-.15 F
+2.663(xpansion. If)-.15 F F0(par)2.664 E(ameter)-.15 E F1 .164
+(is a nameref,)2.664 F(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E
+(24)185.955 E 0 Cg EP
+%%Page: 25 25
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .463(this e)108 84 R .463
+(xpands to the name of the parameter referenced by)-.15 F F0(par)2.962 E
+(ameter)-.15 E F1 .462(instead of performing the complete in-)2.962 F
+3.635(direct e)108 96 R 3.635(xpansion, for compatibility)-.15 F 8.635
+(.T)-.65 G 3.635(he e)-8.635 F 3.635(xceptions to this are the e)-.15 F
+3.636(xpansions of ${)-.15 F/F2 10/Times-Bold@0 SF(!)A F0(pr)A(e\214x)
+-.37 E F2(*)A F1 6.136(}a)C(nd)-6.136 E(${)108 108 Q F2(!)A F0(name)A F1
+([)A F0(@)A F1 .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 120 Q .334(In each of the cases belo)108
+136.8 R -.65(w,)-.25 G F0(wor)3.484 E(d)-.37 E F1 .334
+(is subject to tilde e)2.834 F .334(xpansion, parameter e)-.15 F .334
+(xpansion, command substitution,)-.15 F(and arithmetic e)108 148.8 Q
+(xpansion.)-.15 E .067(When not performing substring e)108 165.6 R .067
+(xpansion, using the forms documented belo)-.15 F 2.567(w\()-.25 G
+(e.g.,)-2.567 E F2(:-)2.567 E F1(\),)A F2(bash)2.567 E F1 .066
+(tests for a pa-)2.567 F(rameter that is unset or null.)108 177.6 Q
+(Omitting the colon tests only for a parameter that is unset.)5 E(${)108
+194.4 Q F0(par)A(ameter)-.15 E F2<3aad>A F0(wor)A(d)-.37 E F1(})A F2
+.722(Use Default V)144 206.4 R(alues)-.92 E F1 5.722(.I)C(f)-5.722 E F0
+(par)4.472 E(ameter)-.15 E F1 .723(is unset or null, the e)3.952 F .723
+(xpansion of)-.15 F F0(wor)3.563 E(d)-.37 E F1 .723(is substituted.)
+3.993 F(Other)5.723 E(-)-.2 E(wise, the v)144 218.4 Q(alue of)-.25 E F0
+(par)3.75 E(ameter)-.15 E F1(is substituted.)3.23 E(${)108 235.2 Q F0
+(par)A(ameter)-.15 E F2(:=)A F0(wor)A(d)-.37 E F1(})A F2 .266
+(Assign Default V)144 247.2 R(alues)-.92 E F1 5.266(.I)C(f)-5.266 E F0
+(par)4.016 E(ameter)-.15 E F1 .266(is unset or null, the e)3.496 F .265
+(xpansion of)-.15 F F0(wor)3.105 E(d)-.37 E F1 .265(is assigned to)3.535
+F F0(par)4.015 E(a-)-.15 E(meter)144 259.2 Q F1 2.957(,a).73 G .457
+(nd the e)-2.957 F .458(xpansion is the \214nal v)-.15 F .458(alue of)
+-.25 F F0(par)4.208 E(ameter)-.15 E F1 5.458(.P).73 G .458
+(ositional parameters and special para-)-5.458 F
+(meters may not be assigned in this w)144 271.2 Q(ay)-.1 E(.)-.65 E(${)
+108 288 Q F0(par)A(ameter)-.15 E F2(:?)A F0(wor)A(d)-.37 E F1(})A F2
+.725(Display Err)144 300 R .724(or if Null or Unset)-.18 F F1 5.724(.I)C
+(f)-5.724 E F0(par)4.474 E(ameter)-.15 E F1 .724
+(is null or unset, the shell writes the e)3.954 F .724(xpansion of)-.15
+F F0(wor)144 312 Q(d)-.37 E F1 .292(\(or a message to that ef)2.792 F
+.292(fect if)-.25 F F0(wor)3.132 E(d)-.37 E F1 .293
+(is not present\) to the standard error and, if it is not inter)3.562 F
+(-)-.2 E(acti)144 324 Q -.15(ve)-.25 G 3.639(,e).15 G 1.138
+(xits with a non-zero status.)-3.789 F 1.138(An interacti)6.138 F 1.438
+-.15(ve s)-.25 H 1.138(hell does not e).15 F 1.138(xit, b)-.15 F 1.138
+(ut does not e)-.2 F -.15(xe)-.15 G 1.138(cute the).15 F
+(command associated with the e)144 336 Q 2.5(xpansion. Otherwise,)-.15 F
+(the v)2.5 E(alue of)-.25 E F0(par)2.5 E(ameter)-.15 E F1
+(is substituted.)2.5 E(${)108 352.8 Q F0(par)A(ameter)-.15 E F2(:+)A F0
+(wor)A(d)-.37 E F1(})A F2 .745(Use Alter)144 364.8 R .745(nate V)-.15 F
+(alue)-.92 E F1 5.745(.I)C(f)-5.745 E F0(par)4.495 E(ameter)-.15 E F1
+.745(is null or unset, nothing is substituted, otherwise the e)3.975 F
+(xpan-)-.15 E(sion of)144 376.8 Q F0(wor)2.84 E(d)-.37 E F1
+(is substituted.)3.27 E(The v)5 E(alue of)-.25 E F0(par)2.5 E(ameter)
+-.15 E F1(is not used.)2.5 E(${)108 393.6 Q F0(par)A(ameter)-.15 E F2(:)
+A F0(of)A(fset)-.18 E F1(})A(${)108 405.6 Q F0(par)A(ameter)-.15 E F2(:)
+A F0(of)A(fset)-.18 E F2(:)A F0(length)A F1(})A F2 .002
+(Substring Expansion)144 417.6 R F1 5.002(.E)C .002(xpands to up to)
+-5.002 F F0(length)2.502 E F1 .002(characters of the v)2.502 F .002
+(alue of)-.25 F F0(par)2.502 E(ameter)-.15 E F1 .002(starting at the)
+2.502 F .003(character speci\214ed by)144 429.6 R F0(of)2.503 E(fset)
+-.18 E F1 5.003(.I)C(f)-5.003 E F0(par)2.503 E(ameter)-.15 E F1(is)2.503
+E F2(@)2.503 E F1(or)2.503 E F2(*)2.503 E F1 2.503(,a)C 2.503(ni)-2.503
+G(nde)-2.503 E -.15(xe)-.15 G 2.503(da).15 G .003(rray subscripted by)
+-2.503 F F2(@)2.503 E F1(or)2.503 E F2(*)2.504 E F1 2.504(,o)C 2.504(ra)
+-2.504 G(n)-2.504 E(associati)144 441.6 Q 1.022 -.15(ve a)-.25 H .722
+(rray name, the results dif).15 F .722(fer as described belo)-.25 F
+4.522 -.65(w. I)-.25 H(f).65 E F0(length)3.222 E F1 .722(is omitted, e)
+3.222 F .722(xpands to the)-.15 F .042(substring of the v)144 453.6 R
+.042(alue of)-.25 F F0(par)2.542 E(ameter)-.15 E F1 .043
+(starting at the character speci\214ed by)2.542 F F0(of)2.543 E(fset)
+-.18 E F1 .043(and e)2.543 F .043(xtending to the)-.15 F .847
+(end of the v)144 465.6 R(alue.)-.25 E F0(length)5.846 E F1(and)3.346 E
+F0(of)3.346 E(fset)-.18 E F1 .846(are arithmetic e)3.346 F .846
+(xpressions \(see)-.15 F/F3 9/Times-Bold@0 SF .846(ARITHMETIC EV)3.346 F
+(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E F1(belo)144 477.6 Q(w\).)-.25 E
+(If)144 494.4 Q F0(of)3.028 E(fset)-.18 E F1 -.25(eva)3.029 G .529
+(luates to a number less than zero, the v).25 F .529
+(alue is used as an of)-.25 F .529(fset in characters from the)-.25 F
+.046(end of the v)144 506.4 R .046(alue of)-.25 F F0(par)2.546 E(ameter)
+-.15 E F1 5.046(.I)C(f)-5.046 E F0(length)2.546 E F1 -.25(eva)2.546 G
+.046(luates to a number less than zero, it is interpreted as an).25 F
+(of)144 518.4 Q .202(fset in characters from the end of the v)-.25 F
+.202(alue of)-.25 F F0(par)2.702 E(ameter)-.15 E F1 .203
+(rather than a number of characters, and)2.702 F .558(the e)144 530.4 R
+.558(xpansion is the characters between)-.15 F F0(of)3.058 E(fset)-.18 E
+F1 .558(and that result.)3.058 F .557(Note that a ne)5.557 F -.05(ga)
+-.15 G(ti).05 E .857 -.15(ve o)-.25 H -.25(ff).15 G .557(set must be).25
+F(separated from the colon by at least one space to a)144 542.4 Q -.2
+(vo)-.2 G(id being confused with the).2 E F2(:-)2.5 E F1 -.15(ex)2.5 G
+(pansion.).15 E(If)144 559.2 Q F0(par)3.283 E(ameter)-.15 E F1(is)3.283
+E F2(@)3.283 E F1(or)3.283 E F2(*)3.284 E F1 3.284(,t)C .784
+(he result is)-3.284 F F0(length)3.284 E F1 .784
+(positional parameters be)3.284 F .784(ginning at)-.15 F F0(of)3.284 E
+(fset)-.18 E F1 5.784(.A)C(ne)-2.5 E -.05(ga)-.15 G(ti).05 E -.15(ve)
+-.25 G F0(of)144 571.2 Q(fset)-.18 E F1 .167(is tak)2.667 F .167
+(en relati)-.1 F .467 -.15(ve t)-.25 H 2.667(oo).15 G .167
+(ne greater than the greatest positional parameter)-2.667 F 2.666(,s)-.4
+G 2.666(oa)-2.666 G 2.666(no)-2.666 G -.25(ff)-2.666 G .166
+(set of \2551 e).25 F -.25(va)-.25 G(l-).25 E .023(uates to the last po\
+sitional parameter \(or 0 if there are no positional parameters\).)144
+583.2 R .023(It is an e)5.023 F(xpansion)-.15 E(error if)144 595.2 Q F0
+(length)2.5 E F1 -.25(eva)2.5 G(luates to a number less than zero.).25 E
+(If)144 612 Q F0(par)3.014 E(ameter)-.15 E F1 .514(is an inde)3.014 F
+-.15(xe)-.15 G 3.014(da).15 G .514
+(rray name subscripted by @ or *, the result is the)-3.014 F F0(length)
+3.014 E F1 .513(members of)3.013 F 1.081(the array be)144 624 R 1.081
+(ginning with ${)-.15 F F0(par)A(ameter)-.15 E F1([)A F0(of)A(fset)-.18
+E F1 3.581(]}. A)B(ne)3.581 E -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G F0
+(of)3.732 E(fset)-.18 E F1 1.082(is tak)3.582 F 1.082(en relati)-.1 F
+1.382 -.15(ve t)-.25 H 3.582(oo).15 G 1.082(ne greater)-3.582 F 1.08
+(than the maximum inde)144 636 R 3.58(xo)-.15 G 3.58(ft)-3.58 G 1.08
+(he speci\214ed array)-3.58 F 6.079(.I)-.65 G 3.579(ti)-6.079 G 3.579
+(sa)-3.579 G 3.579(ne)-3.579 G 1.079(xpansion error if)-3.729 F F0
+(length)3.579 E F1 -.25(eva)3.579 G 1.079(luates to a).25 F
+(number less than zero.)144 648 Q(Substring e)144 664.8 Q
+(xpansion applied to an associati)-.15 E .3 -.15(ve a)-.25 H
+(rray produces unde\214ned results.).15 E .82(Substring inde)144 681.6 R
+.821(xing is zero-based unless the positional parameters are used, in w\
+hich case the in-)-.15 F(de)144 693.6 Q .159(xing starts at 1 by def)
+-.15 F 2.659(ault. If)-.1 F F0(of)2.659 E(fset)-.18 E F1 .159
+(is 0, and the positional parameters are used,)2.659 F F2($0)2.659 E F1
+.159(is pre\214x)2.659 F .158(ed to)-.15 F(the list.)144 705.6 Q
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(25)185.955 E 0 Cg EP
+%%Page: 26 26
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(${)108 84 Q/F2 10/Times-Bold@0 SF(!)A F0(pr)A
+(e\214x)-.37 E F2(*)A F1(})A(${)108 96 Q F2(!)A F0(pr)A(e\214x)-.37 E F2
+(@)A F1(})A F2 .084(Names matching pr)144 108 R(e\214x)-.18 E F1 5.084
+(.E)C .084(xpands to the names of v)-5.084 F .084
+(ariables whose names be)-.25 F .085(gin with)-.15 F F0(pr)2.585 E
+(e\214x)-.37 E F1 2.585(,s)C(epa-)-2.585 E .258
+(rated by the \214rst character of the)144 120 R/F3 9/Times-Bold@0 SF
+(IFS)2.758 E F1 .257(special v)2.507 F 2.757(ariable. When)-.25 F F0(@)
+2.757 E F1 .257(is used and the e)2.757 F .257(xpansion appears)-.15 F
+(within double quotes, each v)144 132 Q(ariable name e)-.25 E
+(xpands to a separate w)-.15 E(ord.)-.1 E(${)108 148.8 Q F2(!)A F0(name)
+A F1([)A F0(@)A F1(]})A(${)108 160.8 Q F2(!)A F0(name)A F1([)A F0(*)A F1
+(]})A F2 1.136(List of array k)144 172.8 R(eys)-.1 E F1 6.136(.I)C(f)
+-6.136 E F0(name)3.636 E F1 1.136(is an array v)3.636 F 1.136
+(ariable, e)-.25 F 1.136(xpands to the list of array indices \(k)-.15 F
+-.15(ey)-.1 G 1.137(s\) as-).15 F .397(signed in)144 184.8 R F0(name)
+2.897 E F1 5.397(.I)C(f)-5.397 E F0(name)2.897 E F1 .397
+(is not an array)2.897 F 2.897(,e)-.65 G .397(xpands to 0 if)-3.047 F F0
+(name)2.897 E F1 .397(is set and null otherwise.)2.897 F(When)5.397 E F0
+(@)2.897 E F1(is used and the e)144 196.8 Q
+(xpansion appears within double quotes, each k)-.15 E .3 -.15(ey ex)-.1
+H(pands to a separate w).15 E(ord.)-.1 E(${)108 213.6 Q F2(#)A F0(par)A
+(ameter)-.15 E F1(})A F2 -.1(Pa)144 225.6 S 1.18(rameter length).1 F F1
+6.18(.S)C 1.18(ubstitutes the length in characters of the e)-6.18 F 1.18
+(xpanded v)-.15 F 1.18(alue of)-.25 F F0(par)3.68 E(ameter)-.15 E F1
+6.18(.I)C(f)-6.18 E F0(par)145.25 237.6 Q(ameter)-.15 E F1(is)3.282 E F2
+(*)2.552 E F1(or)2.552 E F2(@)2.552 E F1 2.552(,t)C .052(he v)-2.552 F
+.052(alue substituted is the number of positional parameters.)-.25 F(If)
+5.052 E F0(par)3.801 E(ameter)-.15 E F1(is)3.281 E .333
+(an array name subscripted by)144 249.6 R F2(*)2.833 E F1(or)2.833 E F2
+(@)2.833 E F1 2.833(,t)C .333(he v)-2.833 F .334
+(alue substituted is the number of elements in the array)-.25 F(.)-.65 E
+(If)144 261.6 Q F0(par)5.022 E(ameter)-.15 E F1 1.272(is an inde)4.502 F
+-.15(xe)-.15 G 3.772(da).15 G 1.272(rray name subscripted by a ne)-3.772
+F -.05(ga)-.15 G(ti).05 E 1.572 -.15(ve n)-.25 H(umber).15 E 3.772(,t)
+-.4 G 1.272(hat number is inter)-3.772 F(-)-.2 E .565(preted as relati)
+144 273.6 R .865 -.15(ve t)-.25 H 3.065(oo).15 G .565
+(ne greater than the maximum inde)-3.065 F 3.065(xo)-.15 G(f)-3.065 E F0
+(par)3.066 E(ameter)-.15 E F1 3.066(,s)C 3.066(on)-3.066 G -2.25 -.15
+(eg a)-3.066 H(ti).15 E .866 -.15(ve i)-.25 H .566(ndices count).15 F
+(back from the end of the array)144 285.6 Q 2.5(,a)-.65 G(nd an inde)
+-2.5 E 2.5(xo)-.15 G 2.5<66ad>-2.5 G 2.5(1r)-2.5 G
+(eferences the last element.)-2.5 E(${)108 302.4 Q F0(par)A(ameter)-.15
+E F2(#)A F0(wor)A(d)-.37 E F1(})A(${)108 314.4 Q F0(par)A(ameter)-.15 E
+F2(##)A F0(wor)A(d)-.37 E F1(})A F2(Remo)144 326.4 Q 1.396 -.1(ve m)-.1
+H 1.196(atching pr).1 F 1.196(e\214x patter)-.18 F(n)-.15 E F1 6.196(.T)
+C(he)-6.196 E F0(wor)4.036 E(d)-.37 E F1 1.196(is e)4.466 F 1.196
+(xpanded to produce a pattern just as in path-)-.15 F .543(name e)144
+338.4 R .544(xpansion, and matched ag)-.15 F .544(ainst the e)-.05 F
+.544(xpanded v)-.15 F .544(alue of)-.25 F F0(par)4.294 E(ameter)-.15 E
+F1 .544(using the rules described)3.774 F(under)144 350.4 Q F2 -.1(Pa)
+3.133 G(tter).1 E 3.133(nM)-.15 G(atching)-3.133 E F1(belo)3.132 E 4.432
+-.65(w. I)-.25 H 3.132(ft).65 G .632(he pattern matches the be)-3.132 F
+.632(ginning of the v)-.15 F .632(alue of)-.25 F F0(par)4.382 E(ameter)
+-.15 E F1(,).73 E 1.151(then the result of the e)144 362.4 R 1.151
+(xpansion is the e)-.15 F 1.151(xpanded v)-.15 F 1.151(alue of)-.25 F F0
+(par)4.902 E(ameter)-.15 E F1 1.152(with the shortest matching)4.382 F
+.554(pattern \(the \231#\232 case\) or the longest matching pattern \(t\
+he \231##\232 case\) deleted.)144 374.4 R(If)5.553 E F0(par)4.303 E
+(ameter)-.15 E F1(is)3.783 E F2(@)3.053 E F1(or)144 386.4 Q F2(*)3.018 E
+F1 3.018(,t)C .518(he pattern remo)-3.018 F -.25(va)-.15 G 3.018(lo).25
+G .518
+(peration is applied to each positional parameter in turn, and the e)
+-3.018 F(xpan-)-.15 E .304(sion is the resultant list.)144 398.4 R(If)
+5.304 E F0(par)4.054 E(ameter)-.15 E F1 .303(is an array v)3.533 F .303
+(ariable subscripted with)-.25 F F2(@)2.803 E F1(or)2.803 E F2(*)2.803 E
+F1 2.803(,t)C .303(he pattern re-)-2.803 F(mo)144 410.4 Q -.25(va)-.15 G
+2.987(lo).25 G .487
+(peration is applied to each member of the array in turn, and the e)
+-2.987 F .487(xpansion is the resultant)-.15 F(list.)144 422.4 Q(${)108
+439.2 Q F0(par)A(ameter)-.15 E F2(%)A F0(wor)A(d)-.37 E F1(})A(${)108
+451.2 Q F0(par)A(ameter)-.15 E F2(%%)A F0(wor)A(d)-.37 E F1(})A F2(Remo)
+144 463.2 Q .347 -.1(ve m)-.1 H .147(atching suf\214x patter).1 F(n)-.15
+E F1 5.147(.T)C(he)-5.147 E F0(wor)2.647 E(d)-.37 E F1 .147(is e)2.647 F
+.146(xpanded to produce a pattern just as in pathname)-.15 F -.15(ex)144
+475.2 S .458(pansion, and matched ag).15 F .458(ainst the e)-.05 F .458
+(xpanded v)-.15 F .458(alue of)-.25 F F0(par)4.209 E(ameter)-.15 E F1
+.459(using the rules described under)3.689 F F2 -.1(Pa)144 487.2 S(tter)
+.1 E 2.732(nM)-.15 G(atching)-2.732 E F1(belo)2.732 E 4.032 -.65(w. I)
+-.25 H 2.732(ft).65 G .231
+(he pattern matches a trailing portion of the e)-2.732 F .231(xpanded v)
+-.15 F .231(alue of)-.25 F F0(par)3.981 E(a-)-.15 E(meter)144 499.2 Q F1
+4.399(,t).73 G 1.899(hen the result of the e)-4.399 F 1.899
+(xpansion is the e)-.15 F 1.899(xpanded v)-.15 F 1.9(alue of)-.25 F F0
+(par)5.65 E(ameter)-.15 E F1 1.9(with the shortest)5.13 F .019(matching\
+ pattern \(the \231%\232 case\) or the longest matching pattern \(the \
+\231%%\232 case\) deleted.)144 511.2 R(If)5.019 E F0(par)3.769 E(a-)-.15
+E(meter)144 523.2 Q F1(is)3.559 E F2(@)2.829 E F1(or)2.829 E F2(*)2.829
+E F1 2.829(,t)C .329(he pattern remo)-2.829 F -.25(va)-.15 G 2.829(lo)
+.25 G .33(peration is applied to each positional parameter in turn, and)
+-2.829 F .64(the e)144 535.2 R .64(xpansion is the resultant list.)-.15
+F(If)5.64 E F0(par)4.39 E(ameter)-.15 E F1 .64(is an array v)3.87 F .64
+(ariable subscripted with)-.25 F F2(@)3.14 E F1(or)3.14 E F2(*)3.14 E F1
+3.14(,t)C(he)-3.14 E .422(pattern remo)144 547.2 R -.25(va)-.15 G 2.922
+(lo).25 G .422
+(peration is applied to each member of the array in turn, and the e)
+-2.922 F .423(xpansion is the)-.15 F(resultant list.)144 559.2 Q(${)108
+576 Q F0(par)A(ameter)-.15 E F2(/)A F0(pattern)A F2(/)A F0(string)A F1
+(})A(${)108 588 Q F0(par)A(ameter)-.15 E F2(//)A F0(pattern)A F2(/)A F0
+(string)A F1(})A(${)108 600 Q F0(par)A(ameter)-.15 E F2(/#)A F0(pattern)
+A F2(/)A F0(string)A F1(})A(${)108 612 Q F0(par)A(ameter)-.15 E F2(/%)A
+F0(pattern)A F2(/)A F0(string)A F1(})A F2 -.1(Pa)144 624 S(tter).1 E
+2.654(ns)-.15 G(ubstitution)-2.654 E F1 5.154(.T)C(he)-5.154 E F0
+(pattern)2.654 E F1 .154(is e)2.654 F .153
+(xpanded to produce a pattern just as in pathname e)-.15 F(xpansion)-.15
+E 1.452(and matched ag)144 636 R 1.452(ainst the e)-.05 F 1.452
+(xpanded v)-.15 F 1.452(alue of)-.25 F F0(par)3.952 E(ameter)-.15 E F1
+1.453(using the rules described under)3.952 F F2 -.1(Pa)3.953 G(tter).1
+E(n)-.15 E(Matching)144 648 Q F1(belo)4.037 E 5.337 -.65(w. T)-.25 H
+1.537(he longest match of).65 F F0(pattern)4.037 E F1 1.536(in the e)
+4.036 F 1.536(xpanded v)-.15 F 1.536(alue is replaced with)-.25 F F0
+(string)4.036 E F1(.)A F0(string)144 660 Q F1(under)3.778 E 1.278
+(goes tilde e)-.18 F 1.278(xpansion, parameter and v)-.15 F 1.278
+(ariable e)-.25 F 1.278(xpansion, arithmetic e)-.15 F 1.278
+(xpansion, com-)-.15 F(mand and process substitution, and quote remo)144
+672 Q -.25(va)-.15 G(l.).25 E .652(In the \214rst form abo)144 688.8 R
+-.15(ve)-.15 G 3.151(,o).15 G .651(nly the \214rst match is replaced.)
+-3.151 F .651(If there are tw)5.651 F 3.151(os)-.1 G .651
+(lashes separating)-3.151 F F0(par)3.151 E(a-)-.15 E(meter)144 700.8 Q
+F1(and)2.673 E F0(pattern)2.673 E F1 .173(\(the second form abo)2.673 F
+-.15(ve)-.15 G .173(\), all matches of).15 F F0(pattern)2.673 E F1 .173
+(are replaced with)2.673 F F0(string)2.673 E F1 5.174(.I)C(f)-5.174 E F0
+(pat-)2.674 E(tern)144 712.8 Q F1 .277(is preceded by)2.777 F F2(#)2.776
+E F1 .276(\(the third form abo)2.776 F -.15(ve)-.15 G .276
+(\), it must match at the be).15 F .276(ginning of the e)-.15 F .276
+(xpanded v)-.15 F(alue)-.25 E(of)144 724.8 Q F0(par)2.638 E(ameter)-.15
+E F1 5.138(.I)C(f)-5.138 E F0(pattern)2.638 E F1 .138(is preceded by)
+2.638 F F2(%)2.638 E F1 .138(\(the fourth form abo)2.638 F -.15(ve)-.15
+G .139(\), it must match at the end of the).15 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(26)185.955 E 0 Cg EP
+%%Page: 27 27
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E -.15(ex)144 84 S(panded v).15 E(alue of)-.25 E F0
+(par)2.5 E(ameter)-.15 E F1(.)A .034(If the e)144 100.8 R .034
+(xpansion of)-.15 F F0(string)2.534 E F1 .034(is null, matches of)2.534
+F F0(pattern)2.534 E F1 .034(are deleted and the)2.534 F/F2 10
+/Times-Bold@0 SF(/)2.534 E F1(follo)2.534 E(wing)-.25 E F0(pattern)2.534
+E F1 .033(may be)2.533 F(omitted.)144 112.8 Q .95(If the)144 129.6 R F2
+(patsub_r)3.45 E(eplacement)-.18 E F1 .95(shell option is enabled using)
+3.45 F F2(shopt)3.45 E F1 3.45(,a)C 1.25 -.15(ny u)-3.45 H .95
+(nquoted instances of).15 F F2(&)3.45 E F1(in)3.45 E F0(string)144 141.6
+Q F1(are replaced with the matching portion of)2.5 E F0(pattern)2.5 E F1
+(.)A .75(Quoting an)144 158.4 R 3.25(yp)-.15 G .75(art of)-3.25 F F0
+(string)3.25 E F1 .749(inhibits replacement in the e)3.249 F .749
+(xpansion of the quoted portion, including)-.15 F .808
+(replacement strings stored in shell v)144 170.4 R 3.308
+(ariables. Backslash)-.25 F(escapes)3.308 E F2(&)3.308 E F1(in)3.308 E
+F0(string)3.308 E F1 3.308(;t)C .808(he backslash is re-)-3.308 F(mo)144
+182.4 Q -.15(ve)-.15 G 3.101(di).15 G 3.101(no)-3.101 G .601
+(rder to permit a literal)-3.101 F F2(&)3.101 E F1 .601
+(in the replacement string.)3.101 F .6
+(Backslash can also be used to es-)5.6 F 1.428(cape a backslash;)144
+194.4 R F2(\\\\)3.928 E F1 1.428
+(results in a literal backslash in the replacement.)3.928 F 1.428
+(Users should tak)6.428 F 3.929(ec)-.1 G 1.429(are if)-3.929 F F0
+(string)144 206.4 Q F1 .292(is double-quoted to a)2.792 F -.2(vo)-.2 G
+.292(id unw).2 F .292
+(anted interactions between the backslash and double-quoting,)-.1 F .053
+(since backslash has special meaning within double quotes.)144 218.4 R
+-.15(Pa)5.053 G .054(ttern substitution performs the check).15 F .07
+(for unquoted)144 230.4 R F2(&)2.57 E F1 .07(after e)2.57 F(xpanding)
+-.15 E F0(string)2.569 E F1 2.569(;s)C .069
+(hell programmers should quote an)-2.569 F 2.569(yo)-.15 G .069
+(ccurrences of)-2.569 F F2(&)2.569 E F1(the)2.569 E(y)-.15 E -.1(wa)144
+242.4 S 1.112(nt to be tak).1 F 1.112
+(en literally in the replacement and ensure an)-.1 F 3.612(yi)-.15 G
+1.112(nstances of)-3.612 F F2(&)3.612 E F1(the)3.612 E 3.613(yw)-.15 G
+1.113(ant to be re-)-3.713 F(placed are unquoted.)144 254.4 Q(Lik)144
+271.2 Q 2.547(et)-.1 G .047(he pattern remo)-2.547 F -.25(va)-.15 G
+2.547(lo).25 G .047
+(perators, double quotes surrounding the replacement string quote the e)
+-2.547 F(x-)-.15 E 1.061(panded characters, while double quotes enclosi\
+ng the entire parameter substitution do not, since)144 283.2 R(the e)144
+295.2 Q(xpansion is performed in a conte)-.15 E(xt that doesn')-.15 E
+2.5(tt)-.18 G(ak)-2.5 E 2.5(ea)-.1 G .3 -.15(ny e)-2.5 H
+(nclosing double quotes into account.).15 E .687(If the)144 312 R F2
+(nocasematch)3.187 E F1 .687
+(shell option is enabled, the match is performed without re)3.187 F -.05
+(ga)-.15 G .687(rd to the case of).05 F(alphabetic characters.)144 324 Q
+(If)144 340.8 Q F0(par)4.334 E(ameter)-.15 E F1(is)3.814 E F2(@)3.084 E
+F1(or)3.084 E F2(*)3.084 E F1 3.084(,t)C .585(he substitution operation\
+ is applied to each positional parameter in turn,)-3.084 F .51
+(and the e)144 352.8 R .51(xpansion is the resultant list.)-.15 F(If)
+5.51 E F0(par)4.259 E(ameter)-.15 E F1 .509(is an array v)3.739 F .509
+(ariable subscripted with)-.25 F F2(@)3.009 E F1(or)3.009 E F2(*)3.009 E
+F1(,)A .495(the substitution operation is applied to each member of the\
+ array in turn, and the e)144 364.8 R .496(xpansion is the)-.15 F
+(resultant list.)144 376.8 Q(${)108 393.6 Q F0(par)A(ameter)-.15 E F2
+<00>A F0(pattern)A F1(})A(${)108 405.6 Q F0(par)A(ameter)-.15 E F2<0000>
+A F0(pattern)A F1(})A(${)108 417.6 Q F0(par)A(ameter)-.15 E F2(,)A F0
+(pattern)A F1(})A(${)108 429.6 Q F0(par)A(ameter)-.15 E F2(,,)A F0
+(pattern)A F1(})A F2 .438(Case modi\214cation)144 441.6 R F1 5.438(.T)C
+.438(his e)-5.438 F .437
+(xpansion modi\214es the case of alphabetic characters in)-.15 F F0(par)
+2.937 E(ameter)-.15 E F1 5.437(.T)C(he)-5.437 E F0(pattern)144 453.6 Q
+F1 .373(is e)2.873 F .374
+(xpanded to produce a pattern just as in pathname e)-.15 F 2.874
+(xpansion. Each)-.15 F .374(character in the e)2.874 F(x-)-.15 E .514
+(panded v)144 465.6 R .514(alue of)-.25 F F0(par)3.014 E(ameter)-.15 E
+F1 .514(is tested ag)3.014 F(ainst)-.05 E F0(pattern)3.014 E F1 3.014
+(,a)C .513(nd, if it matches the pattern, its case is con-)-3.014 F -.15
+(ve)144 477.6 S 2.5(rted. The).15 F
+(pattern should not attempt to match more than one character)2.5 E(.)
+-.55 E(The)144 494.4 Q F2<00>3.523 E F1 1.023(operator con)3.523 F -.15
+(ve)-.4 G 1.023(rts lo).15 F 1.023(wercase letters matching)-.25 F F0
+(pattern)3.523 E F1 1.023(to uppercase; the)3.523 F F2(,)3.523 E F1
+1.024(operator con)3.523 F -.15(ve)-.4 G(rts).15 E .013
+(matching uppercase letters to lo)144 506.4 R 2.513(wercase. The)-.25 F
+F2<0000>2.513 E F1(and)2.513 E F2(,,)2.513 E F1 -.15(ex)2.513 G .013
+(pansions con).15 F -.15(ve)-.4 G .013(rt each matched character).15 F
+.346(in the e)144 518.4 R .346(xpanded v)-.15 F .346(alue; the)-.25 F F2
+<00>2.846 E F1(and)2.846 E F2(,)2.847 E F1 -.15(ex)2.847 G .347
+(pansions match and con).15 F -.15(ve)-.4 G .347
+(rt only the \214rst character in the e).15 F(x-)-.15 E(panded v)144
+530.4 Q 2.5(alue. If)-.25 F F0(pattern)2.5 E F1
+(is omitted, it is treated lik)2.5 E 2.5(ea)-.1 G F2(?)A F1 2.5(,w)C
+(hich matches e)-2.5 E -.15(ve)-.25 G(ry character).15 E(.)-.55 E(If)144
+547.2 Q F0(par)4.18 E(ameter)-.15 E F1(is)3.66 E F2(@)2.93 E F1(or)2.93
+E F2(*)2.93 E F1 2.93(,t)C .429(he case modi\214cation operation is app\
+lied to each positional parameter in)-2.93 F .523(turn, and the e)144
+559.2 R .524(xpansion is the resultant list.)-.15 F(If)5.524 E F0(par)
+4.274 E(ameter)-.15 E F1 .524(is an array v)3.754 F .524
+(ariable subscripted with)-.25 F F2(@)3.024 E F1(or)144 571.2 Q F2(*)
+2.569 E F1 2.569(,t)C .068(he case modi\214cation operation is applied \
+to each member of the array in turn, and the e)-2.569 F(xpan-)-.15 E
+(sion is the resultant list.)144 583.2 Q(${)108 600 Q F0(par)A(ameter)
+-.15 E F2(@)A F0(oper)A(ator)-.15 E F1(})A F2 -.1(Pa)144 612 S .86
+(rameter transf).1 F(ormation)-.25 E F1 5.86(.T)C .86(he e)-5.86 F .86
+(xpansion is either a transformation of the v)-.15 F .86(alue of)-.25 F
+F0(par)3.36 E(ameter)-.15 E F1 .154(or information about)144 624 R F0
+(par)2.654 E(ameter)-.15 E F1 .153(itself, depending on the v)2.654 F
+.153(alue of)-.25 F F0(oper)2.653 E(ator)-.15 E F1 5.153(.E)C(ach)-5.153
+E F0(oper)2.653 E(ator)-.15 E F1 .153(is a sin-)2.653 F(gle letter:)144
+636 Q F2(U)144 648 Q F1 .142(The e)180 648 R .142
+(xpansion is a string that is the v)-.15 F .142(alue of)-.25 F F0(par)
+2.642 E(ameter)-.15 E F1 .142(with lo)2.642 F .143
+(wercase alphabetic charac-)-.25 F(ters con)180 660 Q -.15(ve)-.4 G
+(rted to uppercase.).15 E F2(u)144 672 Q F1 .43(The e)180 672 R .43
+(xpansion is a string that is the v)-.15 F .429(alue of)-.25 F F0(par)
+2.929 E(ameter)-.15 E F1 .429(with the \214rst character con)2.929 F
+-.15(ve)-.4 G(rted).15 E(to uppercase, if it is alphabetic.)180 684 Q F2
+(L)144 696 Q F1 .124(The e)180 696 R .124
+(xpansion is a string that is the v)-.15 F .124(alue of)-.25 F F0(par)
+2.624 E(ameter)-.15 E F1 .125(with uppercase alphabetic charac-)2.625 F
+(ters con)180 708 Q -.15(ve)-.4 G(rted to lo).15 E(wercase.)-.25 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(27)185.955 E 0 Cg EP
+%%Page: 28 28
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(Q)144 84 Q F1 1.065(The e)180
+84 R 1.065(xpansion is a string that is the v)-.15 F 1.065(alue of)-.25
+F F0(par)3.565 E(ameter)-.15 E F1 1.064(quoted in a format that can be)
+3.565 F(reused as input.)180 96 Q F2(E)144 108 Q F1 .44(The e)180 108 R
+.441(xpansion is a string that is the v)-.15 F .441(alue of)-.25 F F0
+(par)2.941 E(ameter)-.15 E F1 .441(with backslash escape sequences)2.941
+F -.15(ex)180 120 S(panded as with the).15 E F2<2408>2.5 E F1 1.666(...)
+C F2<08>-1.666 E F1(quoting mechanism.)2.5 E F2(P)144 132 Q F1 1.073
+(The e)180 132 R 1.073(xpansion is a string that is the result of e)-.15
+F 1.073(xpanding the v)-.15 F 1.073(alue of)-.25 F F0(par)3.573 E
+(ameter)-.15 E F1 1.073(as if it)3.573 F(were a prompt string \(see)180
+144 Q F2(PR)2.5 E(OMPTING)-.3 E F1(belo)2.5 E(w\).)-.25 E F2(A)144 156 Q
+F1 1.137(The e)180 156 R 1.138
+(xpansion is a string in the form of an assignment statement or)-.15 F
+F2(declar)3.638 E(e)-.18 E F1(command)3.638 E(that, if e)180 168 Q -.25
+(va)-.25 G(luated, recreates).25 E F0(par)2.5 E(ameter)-.15 E F1
+(with its attrib)2.5 E(utes and v)-.2 E(alue.)-.25 E F2(K)144 180 Q F1
+1.34(Produces a possibly-quoted v)180 180 R 1.339(ersion of the v)-.15 F
+1.339(alue of)-.25 F F0(par)3.839 E(ameter)-.15 E F1 3.839(,e)C 1.339
+(xcept that it prints the)-3.989 F -.25(va)180 192 S .257(lues of inde)
+.25 F -.15(xe)-.15 G 2.757(da).15 G .257(nd associati)-2.757 F .557 -.15
+(ve a)-.25 H .257(rrays as a sequence of quoted k).15 F -.15(ey)-.1 G
+(-v).15 E .257(alue pairs \(see)-.25 F F2(Ar)2.758 E(-)-.37 E(rays)180
+204 Q F1(abo)2.5 E -.15(ve)-.15 G 2.5(\). The).15 F -.1(ke)2.5 G
+(ys and v)-.05 E
+(alues are quoted in a format that can be reused as input.)-.25 E F2(a)
+144 216 Q F1(The e)180 216 Q
+(xpansion is a string consisting of \215ag v)-.15 E(alues representing)
+-.25 E F0(par)2.5 E(ameter)-.15 E F1 1.1 -.55('s a)D(ttrib).55 E(utes.)
+-.2 E F2(k)144 228 Q F1(Lik)180 228 Q 2.658(et)-.1 G .157
+(he K transformation, b)-2.658 F .157(ut e)-.2 F .157(xpands the k)-.15
+F -.15(ey)-.1 G 2.657(sa).15 G .157(nd v)-2.657 F .157(alues of inde)
+-.25 F -.15(xe)-.15 G 2.657(da).15 G .157(nd associati)-2.657 F .457
+-.15(ve a)-.25 H -.2(r-).15 G(rays to separate w)180 240 Q(ords after w)
+-.1 E(ord splitting.)-.1 E(If)144 256.8 Q F0(par)4.402 E(ameter)-.15 E
+F1(is)3.882 E F2(@)3.152 E F1(or)3.152 E F2(*)3.153 E F1 3.153(,t)C .653
+(he operation is applied to each positional parameter in turn, and the \
+e)-3.153 F(x-)-.15 E .403(pansion is the resultant list.)144 268.8 R(If)
+5.403 E F0(par)4.153 E(ameter)-.15 E F1 .403(is an array v)3.633 F .403
+(ariable subscripted with)-.25 F F2(@)2.903 E F1(or)2.903 E F2(*)2.903 E
+F1 2.903(,t)C .402(he opera-)-2.903 F
+(tion is applied to each member of the array in turn, and the e)144
+280.8 Q(xpansion is the resultant list.)-.15 E .708(The result of the e)
+144 297.6 R .708(xpansion is subject to w)-.15 F .708
+(ord splitting and pathname e)-.1 F .708(xpansion as described be-)-.15
+F(lo)144 309.6 Q -.65(w.)-.25 G F2(Command Substitution)87 326.4 Q F0
+.324(Command substitution)108 338.4 R F1(allo)2.824 E .324
+(ws the output of a command to replace the command itself.)-.25 F .323
+(There are tw)5.323 F 2.823(os)-.1 G(tan-)-2.823 E(dard forms:)108 350.4
+Q F2($\()144 367.2 Q F0(command)A F2(\))1.666 E F1(or \(deprecated\))108
+379.2 Q F2<92>144 391.2 Q F0(command)A F2<92>A F1(.)A F2(Bash)108 408 Q
+F1 .088(performs the e)2.588 F .088(xpansion by e)-.15 F -.15(xe)-.15 G
+(cuting).15 E F0(command)2.588 E F1 .089(in a subshell en)2.589 F .089
+(vironment and replacing the command)-.4 F .41
+(substitution with the standard output of the command, with an)108 420 R
+2.91(yt)-.15 G .41(railing ne)-2.91 F .41(wlines deleted.)-.25 F .41
+(Embedded ne)5.41 F(w-)-.25 E .191(lines are not deleted, b)108 432 R
+.192(ut the)-.2 F 2.692(ym)-.15 G .192(ay be remo)-2.692 F -.15(ve)-.15
+G 2.692(dd).15 G .192(uring w)-2.692 F .192(ord splitting.)-.1 F .192
+(The command substitution)5.192 F F2($\(cat)2.692 E F0(\214le)2.692 E F2
+(\))A F1(can be replaced by the equi)108 444 Q -.25(va)-.25 G(lent b).25
+E(ut f)-.2 E(aster)-.1 E F2($\(<)2.5 E F0(\214le)2.5 E F2(\))A F1(.)A
+-.4(Wi)108 460.8 S 1.237(th the old-style backquote form of substitutio\
+n, backslash retains its literal meaning e).4 F 1.237(xcept when fol-)
+-.15 F(lo)108 472.8 Q .527(wed by)-.25 F F2($)3.027 E F1(,)A F2<92>3.027
+E F1 3.027(,o)C(r)-3.027 E F2(\\)3.027 E F1 5.527(.T)C .528(he \214rst \
+backquote not preceded by a backslash terminates the command substituti\
+on.)-5.527 F .092(When using the $\()108 484.8 R F0(command).833 E F1
+2.592(\)f)1.666 G .092(orm, all characters between the parentheses mak)
+-2.592 F 2.592(eu)-.1 G 2.592(pt)-2.592 G .092(he command; none are)
+-2.592 F(treated specially)108 496.8 Q(.)-.65 E
+(There is an alternate form of command substitution:)108 513.6 Q F2(${)
+144 530.4 Q F0 2.5(cc)C(ommand)-2.5 E F2 1.666(;})C F1 .639(which e)108
+547.2 R -.15(xe)-.15 G(cutes).15 E F0(command)3.139 E F1 .639
+(in the current e)3.139 F -.15(xe)-.15 G .639(cution en).15 F .639
+(vironment and captures its output, ag)-.4 F .64(ain with trailing)-.05
+F(ne)108 559.2 Q(wlines remo)-.25 E -.15(ve)-.15 G(d.).15 E .271
+(The character)108 576 R F0(c)2.771 E F1(follo)2.771 E .271
+(wing the open brace must be a space, tab, ne)-.25 F .271(wline, or)-.25
+F F2(|)2.771 E F1 2.771(,a)C .271(nd the close brace must be in)-2.771 F
+2.821(ap)108 588 S .321(osition where a reserv)-2.821 F .321(ed w)-.15 F
+.321(ord may appear \(i.e., preceded by a command terminator such as se\
+micolon\).)-.1 F F2(Bash)108 600 Q F1(allo)2.71 E .21
+(ws the close brace to be joined to the remaining characters in the w)
+-.25 F .209(ord without being follo)-.1 F .209(wed by)-.25 F 2.5(as)108
+612 S(hell metacharacter as a reserv)-2.5 E(ed w)-.15 E(ord w)-.1 E
+(ould usually require.)-.1 E(An)108 628.8 Q 3.384(ys)-.15 G .884(ide ef)
+-3.384 F .884(fects of)-.25 F F0(command)3.384 E F1(tak)3.384 E 3.384
+(ee)-.1 G -.25(ff)-3.384 G .884(ect immediately in the current e).25 F
+-.15(xe)-.15 G .884(cution en).15 F .884(vironment and persist in)-.4 F
+(the current en)108 640.8 Q
+(vironment after the command completes \(e.g., the)-.4 E F2(exit)2.5 E
+F1 -.2(bu)2.5 G(iltin e).2 E(xits the shell\).)-.15 E .221
+(This type of command substitution super\214cially resembles e)108 657.6
+R -.15(xe)-.15 G .221(cuting an unnamed shell function: local v).15 F
+(ari-)-.25 E .172(ables are created as when a shell function is e)108
+669.6 R -.15(xe)-.15 G .172(cuting, and the).15 F F2 -.18(re)2.672 G
+(tur).18 E(n)-.15 E F1 -.2(bu)2.672 G .172(iltin forces).2 F F0(command)
+2.672 E F1 .172(to complete;)2.672 F(ho)108 681.6 Q(we)-.25 E -.15(ve)
+-.25 G 2.521 -.4(r, t).15 H 1.721(he rest of the e).4 F -.15(xe)-.15 G
+1.721(cution en).15 F 1.721
+(vironment, including the positional parameters, is shared with the)-.4
+F(caller)108 693.6 Q(.)-.55 E .392(If the \214rst character follo)108
+710.4 R .392(wing the open brace is a)-.25 F F2(|)2.892 E F1 2.892(,t)C
+.392(he construct e)-2.892 F .392(xpands to the v)-.15 F .392
+(alue of the)-.25 F F2(REPL)2.892 E(Y)-.92 E F1(shell)2.892 E -.25(va)
+108 722.4 S 2.274(riable after).25 F F0(command)4.774 E F1 -.15(exe)
+4.774 G 2.274(cutes, without remo).15 F 2.274(ving an)-.15 F 4.774(yt)
+-.15 G 2.274(railing ne)-4.774 F 2.274
+(wlines, and the standard output of)-.25 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(28)185.955 E 0 Cg EP
+%%Page: 29 29
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E F0(command)108 84 Q F1 .167
+(remains the same as in the calling shell.)2.666 F/F2 10/Times-Bold@0 SF
+(Bash)5.167 E F1(creates)2.667 E F2(REPL)2.667 E(Y)-.92 E F1 .167
+(as an initially-unset local v)2.667 F(ariable)-.25 E(when)108 96 Q F0
+(command)3.514 E F1 -.15(exe)3.514 G 1.014(cutes, and restores).15 F F2
+(REPL)3.514 E(Y)-.92 E F1 1.014(to the v)3.514 F 1.014
+(alue it had before the command substitution after)-.25 F F0(command)108
+108 Q F1(completes, as with an)2.5 E 2.5(yl)-.15 G(ocal v)-2.5 E
+(ariable.)-.25 E .894(Command substitutions may be nested.)108 124.8 R
+2.494 -.8(To n)5.894 H .894
+(est when using the backquoted form, escape the inner back-).8 F
+(quotes with backslashes.)108 136.8 Q .004
+(If the substitution appears within double quotes,)108 153.6 R F2(bash)
+2.504 E F1 .004(does not perform w)2.504 F .004
+(ord splitting and pathname e)-.1 F(xpan-)-.15 E(sion on the results.)
+108 165.6 Q F2(Arithmetic Expansion)87 182.4 Q F1 1.139(Arithmetic e)108
+194.4 R 1.139(xpansion e)-.15 F -.25(va)-.25 G 1.139
+(luates an arithmetic e).25 F 1.139
+(xpression and substitutes the result.)-.15 F 1.14
+(The format for arith-)6.139 F(metic e)108 206.4 Q(xpansion is:)-.15 E
+F2($\(\()144 223.2 Q F0 -.2(ex)C(pr).2 E(ession)-.37 E F2(\)\))A F1(The)
+108 240 Q F0 -.2(ex)2.736 G(pr).2 E(ession)-.37 E F1(under)2.976 E .236
+(goes the same e)-.18 F .236
+(xpansions as if it were within double quotes, b)-.15 F .235
+(ut double quote charac-)-.2 F .42(ters in)108 252 R F0 -.2(ex)2.92 G
+(pr).2 E(ession)-.37 E F1 .42(are not treated specially and are remo)
+2.92 F -.15(ve)-.15 G 2.921(d. All).15 F(tok)2.921 E .421(ens in the e)
+-.1 F .421(xpression under)-.15 F .421(go parame-)-.18 F 1.21(ter and v)
+108 264 R 1.21(ariable e)-.25 F 1.209
+(xpansion, command substitution, and quote remo)-.15 F -.25(va)-.15 G
+3.709(l. The).25 F 1.209(result is treated as the arith-)3.709 F
+(metic e)108 276 Q(xpression to be e)-.15 E -.25(va)-.25 G 2.5
+(luated. Arithmetic).25 F -.15(ex)2.5 G(pansions may be nested.).15 E
+1.378(The e)108 292.8 R -.25(va)-.25 G 1.378
+(luation is performed according to the rules listed belo).25 F 3.878(wu)
+-.25 G(nder)-3.878 E/F3 9/Times-Bold@0 SF 1.378(ARITHMETIC EV)3.878 F
+(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF(.)A F1
+(If)5.879 E F0 -.2(ex)108 304.8 S(pr).2 E(ession)-.37 E F1 .022(is in)
+2.762 F -.25(va)-.4 G(lid,).25 E F2(bash)2.522 E F1 .022
+(prints a message to standard error indicating f)2.522 F .022
+(ailure, does not perform the substi-)-.1 F(tution, and does not e)108
+316.8 Q -.15(xe)-.15 G(cute the command associated with the e).15 E
+(xpansion.)-.15 E F2(Pr)87 333.6 Q(ocess Substitution)-.18 E F0(Pr)108
+345.6 Q .405(ocess substitution)-.45 F F1(allo)2.905 E .405
+(ws a process')-.25 F 2.905(si)-.55 G .405
+(nput or output to be referred to using a \214lename.)-2.905 F .405
+(It tak)5.405 F .405(es the form)-.1 F(of)108 357.6 Q F2(<\()3.251 E F0
+(list)A F2(\)).833 E F1(or)3.251 E F2(>\()3.251 E F0(list)A F2(\)).833 E
+F1 5.751(.T)C .751(he process)-5.751 F F0(list)3.251 E F1 .751
+(is run asynchronously)3.251 F 3.251(,a)-.65 G .751
+(nd its input or output appears as a \214lename.)-3.251 F
+(This \214lename is passed as an ar)108 369.6 Q
+(gument to the current command as the result of the e)-.18 E(xpansion.)
+-.15 E .447(If the)108 386.4 R F2(>\()2.947 E F0(list)A F2(\)).833 E F1
+.447(form is used, writing to the \214le pro)2.947 F .447
+(vides input for)-.15 F F0(list)2.947 E F1 5.447(.I)C 2.948(ft)-5.447 G
+(he)-2.948 E F2(<\()2.948 E F0(list)A F2(\)).833 E F1 .448
+(form is used, reading the)2.948 F .504(\214le obtains the output of)108
+398.4 R F0(list)3.003 E F1 5.503(.N)C 3.003(os)-5.503 G .503
+(pace may appear between the)-3.003 F F2(<)3.003 E F1(or)3.003 E F2(>)
+3.003 E F1 .503(and the left parenthesis, otherwise)3.003 F
+(the construct w)108 410.4 Q(ould be interpreted as a redirection.)-.1 E
+1.014(Process substitution is supported on systems that support named p\
+ipes \()108 427.2 R F0(FIFOs)A F1 3.515(\)o)C 3.515(rt)-3.515 G(he)
+-3.515 E F2(/de)3.515 E(v/fd)-.15 E F1 1.015(method of)3.515 F
+(naming open \214les.)108 439.2 Q .897(When a)108 456 R -.25(va)-.2 G
+.896(ilable, process substitution is performed simultaneously with para\
+meter and v).25 F .896(ariable e)-.25 F(xpansion,)-.15 E
+(command substitution, and arithmetic e)108 468 Q(xpansion.)-.15 E F2
+-.75(Wo)87 484.8 S(rd Splitting).75 E F1 1.142
+(The shell scans the results of parameter e)108 496.8 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 508.8 Q
+F0(wor)2.84 E 2.5(ds)-.37 G(plitting)-2.5 E F1 5(.W).22 G
+(ords that were not e)-5.8 E(xpanded are not split.)-.15 E .063
+(The shell treats each character of)108 525.6 R F3(IFS)2.563 E F1 .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(using these characters as \214eld terminators.)108
+537.6 Q(An)108 554.4 Q F0 .686(IFS whitespace)3.186 F F1 .686
+(character is whitespace as de\214ned abo)3.186 F .986 -.15(ve \()-.15 H
+(see).15 E F2(De\214nitions)3.186 E F1 3.186(\)t)C .687
+(hat appears in the v)-3.186 F .687(alue of)-.25 F F3(IFS)108 566.4 Q F4
+(.)A F1 .002(Space, tab, and ne)4.502 F .002(wline are al)-.25 F -.1(wa)
+-.1 G .002(ys considered IFS whitespace, e).1 F -.15(ve)-.25 G 2.501(ni)
+.15 G 2.501(ft)-2.501 G(he)-2.501 E 2.501(yd)-.15 G(on')-2.501 E 2.501
+(ta)-.18 G .001(ppear in the locale')-2.501 F(s)-.55 E F2(space)108
+578.4 Q F1(cate)2.5 E(gory)-.15 E(.)-.65 E(If)108 595.2 Q F3(IFS)2.911 E
+F1 .411(is unset, \214eld splitting acts as if its v)2.661 F .411
+(alue were)-.25 F F2(<space><tab><newline>)2.911 E F1 2.911(,a)C .411
+(nd treats these characters)-2.911 F .197(as IFS whitespace.)108 607.2 R
+.197(If the v)5.197 F .197(alue of)-.25 F F3(IFS)2.697 E F1 .197
+(is null, no w)2.447 F .196(ord splitting occurs, b)-.1 F .196
+(ut implicit null ar)-.2 F .196(guments \(see be-)-.18 F(lo)108 619.2 Q
+(w\) are still remo)-.25 E -.15(ve)-.15 G(d.).15 E -.8(Wo)108 636 S .573
+(rd splitting be).8 F .573(gins by remo)-.15 F .573
+(ving sequences of IFS whitespace characters from the be)-.15 F .574
+(ginning and end of)-.15 F(the results of the pre)108 648 Q(vious e)-.25
+E(xpansions, then splits the remaining w)-.15 E(ords.)-.1 E .383
+(If the v)108 664.8 R .383(alue of)-.25 F F3(IFS)2.883 E F1 .383
+(consists solely of IFS whitespace, an)2.633 F 2.883(ys)-.15 G .382
+(equence of IFS whitespace characters delimits a)-2.883 F .299(\214eld,\
+ so a \214eld consists of characters that are not unquoted IFS whitespa\
+ce, and null \214elds result only from)108 676.8 R(quoting.)108 688.8 Q
+(If)108 705.6 Q F3(IFS)3.679 E F1 1.179
+(contains a non-whitespace character)3.429 F 3.679(,t)-.4 G 1.179
+(hen an)-3.679 F 3.679(yc)-.15 G 1.179(haracter in the v)-3.679 F 1.179
+(alue of)-.25 F F3(IFS)3.679 E F1 1.179(that is not IFS white-)3.429 F
+.722(space, along with an)108 717.6 R 3.222(ya)-.15 G .723
+(djacent IFS whitespace characters, delimits a \214eld.)-3.222 F .723
+(This means that adjacent non-)5.723 F 1.101
+(IFS-whitespace delimiters produce a null \214eld.)108 729.6 R 3.601(As)
+6.101 G 1.1(equence of IFS whitespace characters also delimits a)-3.601
+F(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(29)185.955 E 0 Cg EP
+%%Page: 30 30
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(\214eld.)108 84 Q .782(Explicit null ar)108 100.8 R
+.782(guments \()-.18 F/F2 10/Times-Bold@0 SF .833("").833 G F1(or)2.449
+E F2 .833<0808>4.115 G F1 3.282(\)a)C .782
+(re retained and passed to commands as empty strings.)-3.282 F .783
+(Unquoted im-)5.783 F 1.165(plicit null ar)108 112.8 R 1.165
+(guments, resulting from the e)-.18 F 1.165
+(xpansion of parameters that ha)-.15 F 1.464 -.15(ve n)-.2 H 3.664(ov)
+.15 G 1.164(alues, are remo)-3.914 F -.15(ve)-.15 G 3.664(d. Ex-).15 F
+.234(panding a parameter with no v)108 124.8 R .234(alue within double \
+quotes produces a null \214eld, which is retained and passed)-.25 F
+(to a command as an empty string.)108 136.8 Q 1.166
+(When a quoted null ar)108 153.6 R 1.166(gument appears as part of a w)
+-.18 F 1.166(ord whose e)-.1 F 1.166(xpansion is non-null, w)-.15 F
+1.165(ord splitting re-)-.1 F(mo)108 165.6 Q -.15(ve)-.15 G 3.336(st).15
+G .836(he null ar)-3.336 F .836(gument portion, lea)-.18 F .836
+(ving the non-null e)-.2 F 3.337(xpansion. That)-.15 F .837(is, the w)
+3.337 F .837<6f72642099ad6408>-.1 F .837(\010\232 becomes \231\255d\232)
+.833 F(after w)108 177.6 Q(ord splitting and null ar)-.1 E(gument remo)
+-.18 E -.25(va)-.15 G(l.).25 E F2 -.1(Pa)87 194.4 S(thname Expansion).1
+E F1 .371(After w)108 206.4 R .371(ord splitting, unless the)-.1 F F2
+<ad66>2.871 E F1 .371(option has been set,)2.871 F F2(bash)2.871 E F1
+.37(scans each w)2.87 F .37(ord for the characters)-.1 F F2(*)2.87 E F1
+(,)A F2(?)2.87 E F1 2.87(,a)C(nd)-2.87 E F2([)2.87 E F1(.)A .633
+(If one of these characters appears, and is not quoted, then the w)108
+218.4 R .634(ord is re)-.1 F -.05(ga)-.15 G .634(rded as a).05 F F0
+(pattern)4.384 E F1 3.134(,a).24 G .634(nd replaced)-3.134 F .282
+(with a sorted list of \214lenames matching the pattern \(see)108 230.4
+R/F3 9/Times-Bold@0 SF -.09(Pa)2.781 G(tter).09 E 2.531(nM)-.135 G
+(atching)-2.531 E F1(belo)2.531 E .281(w\) subject to the v)-.25 F .281
+(alue of the)-.25 F F2(GLOBSOR)108 242.4 Q(T)-.4 E F1(shell v)2.5 E
+(ariable.)-.25 E 1.754
+(If no matching \214lenames are found, and the shell option)108 259.2 R
+F2(nullglob)4.254 E F1 1.754(is not enabled, the w)4.254 F 1.754
+(ord is left un-)-.1 F 2.614(changed. If)108 271.2 R(the)2.614 E F2
+(nullglob)2.614 E F1 .114
+(option is set, and no matches are found, the w)2.614 F .113
+(ord is remo)-.1 F -.15(ve)-.15 G 2.613(d. If).15 F(the)2.613 E F2
+(failglob)2.613 E F1(shell)2.613 E .579
+(option is set, and no matches are found,)108 283.2 R F2(bash)3.079 E F1
+.579(prints an error message and does not e)3.079 F -.15(xe)-.15 G .579
+(cute the command.).15 F .689(If the shell option)108 295.2 R F2
+(nocaseglob)3.189 E F1 .689
+(is enabled, the match is performed without re)3.189 F -.05(ga)-.15 G
+.688(rd to the case of alphabetic).05 F(characters.)108 307.2 Q .309
+(When a pattern is used for pathname e)108 324 R .309(xpansion, the cha\
+racter \231.\232 at the start of a name or immediately fol-)-.15 F(lo)
+108 336 Q .191(wing a slash must be matched e)-.25 F(xplicitly)-.15 E
+2.691(,u)-.65 G .191(nless the shell option)-2.691 F F2(dotglob)2.69 E
+F1 .19(is set.)2.69 F .19(In order to match the \214le-)5.19 F(names)108
+348 Q F0(.)4.359 E F1(and)4.359 E F0(..)4.359 E F1 2.693(,t)1.666 G .193
+(he pattern must be)-2.693 F .193(gin with \231.\232 \(for e)-.15 F .193
+(xample, \231.?\232\), e)-.15 F -.15(ve)-.25 G 2.693(ni).15 G(f)-2.693 E
+F2(dotglob)2.694 E F1 .194(is set.)2.694 F .194(If the)5.194 F F2
+(globskip-)2.694 E(dots)108 360 Q F1 1.445
+(shell option is enabled, the \214lenames)3.946 F F0(.)5.611 E F1(and)
+5.611 E F0(..)5.611 E F1(ne)5.611 E -.15(ve)-.25 G 3.945(rm).15 G 1.445
+(atch, e)-3.945 F -.15(ve)-.25 G 3.945(ni).15 G 3.945(ft)-3.945 G 1.445
+(he pattern be)-3.945 F 1.445(gins with a \231.\232.)-.15 F(When not ma\
+tching pathnames, the \231.\232 character is not treated specially)108
+372 Q(.)-.65 E .061
+(When matching a pathname, the slash character must al)108 388.8 R -.1
+(wa)-.1 G .061(ys be matched e).1 F .061
+(xplicitly by a slash in the pattern,)-.15 F -.2(bu)108 400.8 S 3.395
+(ti).2 G 3.395(no)-3.395 G .894(ther matching conte)-3.395 F .894
+(xts it can be matched by a special pattern character as described belo)
+-.15 F 3.394(wu)-.25 G(nder)-3.394 E F3 -.09(Pa)108 412.8 S(tter).09 E
+2.25(nM)-.135 G(atching)-2.25 E/F4 9/Times-Roman@0 SF(.)A F1 .711
+(See the description of)108 429.6 R F2(shopt)3.211 E F1(belo)3.212 E
+3.212(wu)-.25 G(nder)-3.212 E F3 .712(SHELL B)3.212 F(UIL)-.09 E .712
+(TIN COMMANDS)-.828 F F1 .712(for a description of the)2.962 F F2
+(nocase-)3.212 E(glob)108 441.6 Q F1(,)A F2(nullglob)2.5 E F1(,)A F2
+(globskipdots)2.5 E F1(,)A F2(failglob)2.5 E F1 2.5(,a)C(nd)-2.5 E F2
+(dotglob)2.5 E F1(shell options.)2.5 E(The)108 458.4 Q F3(GLOBIGNORE)
+2.562 E F1 .062(shell v)2.312 F .061
+(ariable may be used to restrict the set of \214le names matching a)-.25
+F F0(pattern)3.811 E F1 5.061(.I).24 G(f)-5.061 E F3(GLO-)2.561 E
+(BIGNORE)108 470.4 Q F1 1.096(is set, each matching \214le name that al\
+so matches one of the patterns in)3.346 F F3(GLOBIGNORE)3.597 E F1 1.097
+(is re-)3.347 F(mo)108 482.4 Q -.15(ve)-.15 G 2.851(df).15 G .351
+(rom the list of matches.)-2.851 F .351(If the)5.351 F F2(nocaseglob)
+2.851 E F1 .351(option is set, the matching ag)2.851 F .351
+(ainst the patterns in)-.05 F F3(GLO-)2.85 E(BIGNORE)108 494.4 Q F1 .096
+(is performed without re)2.346 F -.05(ga)-.15 G .097(rd to case.).05 F
+.097(The \214lenames)5.097 F F0(.)4.263 E F1(and)4.263 E F0(..)4.263 E
+F1 .097(are al)4.263 F -.1(wa)-.1 G .097(ys ignored when).1 F F3
+(GLOBIG-)2.597 E(NORE)108 506.4 Q F1 .754(is set and not null.)3.004 F
+(Ho)5.753 E(we)-.25 E -.15(ve)-.25 G 1.553 -.4(r, s).15 H(etting).4 E F3
+(GLOBIGNORE)3.253 E F1 .753(to a non-null v)3.003 F .753
+(alue has the ef)-.25 F .753(fect of enabling)-.25 F(the)108 518.4 Q F2
+(dotglob)3.062 E F1 .562(shell option, so all other \214lenames be)3.062
+F .562(ginning with a \231.\232 match.)-.15 F 2.162 -.8(To g)5.562 H
+.562(et the old beha).8 F .563(vior of ig-)-.2 F .555
+(noring \214lenames be)108 530.4 R .554(ginning with a \231.\232, mak)
+-.15 F 3.054<6599>-.1 G 3.054(.*\232 one)-3.054 F .554
+(of the patterns in)3.054 F F3(GLOBIGNORE)3.054 E F4(.)A F1(The)5.054 E
+F2(dotglob)3.054 E F1(op-)3.054 E .021(tion is disabled when)108 542.4 R
+F3(GLOBIGNORE)2.521 E F1 .021(is unset.)2.271 F(The)5.021 E F2
+(GLOBIGNORE)2.521 E F1 .021(pattern matching honors the setting of)2.521
+F(the)108 554.4 Q F2(extglob)2.5 E F1(shell option.)2.5 E(The)108 571.2
+Q F3(GLOBSOR)3.912 E(T)-.36 E F1 1.412(shell v)3.662 F 1.412
+(ariable controls ho)-.25 F 3.912(wt)-.25 G 1.412
+(he results of pathname e)-3.912 F 1.411
+(xpansion are sorted, as described)-.15 F(abo)108 583.2 Q -.15(ve)-.15 G
+(.).15 E F2 -.1(Pa)108 600 S(tter).1 E 2.5(nM)-.15 G(atching)-2.5 E F1
+(An)108 616.8 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 2.722(itself. The)108 628.8 R .221
+(NUL character may not occur in a pattern.)2.722 F 2.721(Ab)5.221 G .221
+(ackslash escapes the follo)-2.721 F .221(wing character; the es-)-.25 F
+.418(caping backslash is discarded when matching.)108 640.8 R .418
+(The special pattern characters must be quoted if the)5.418 F 2.919(ya)
+-.15 G .419(re to)-2.919 F(be matched literally)108 652.8 Q(.)-.65 E
+(The special pattern characters ha)108 669.6 Q .3 -.15(ve t)-.2 H
+(he follo).15 E(wing meanings:)-.25 E F2(*)144 686.4 Q F1 .377
+(Matches an)180 686.4 R 2.877(ys)-.15 G .376
+(tring, including the null string.)-2.877 F .376(When the)5.376 F F2
+(globstar)2.876 E F1 .376(shell option is enabled,)2.876 F(and)180 698.4
+Q F2(*)3.275 E F1 .775(is used in a pathname e)3.275 F .775
+(xpansion conte)-.15 F .775(xt, tw)-.15 F 3.275(oa)-.1 G(djacent)-3.275
+E F2(*)3.275 E F1 3.275(su)C .775(sed as a single pattern)-3.275 F .079
+(match all \214les and zero or more directories and subdirectories.)180
+710.4 R .079(If follo)5.079 F .079(wed by a)-.25 F F2(/)2.578 E F1 2.578
+(,t)C .278 -.1(wo a)-2.578 H(d-).1 E(jacent)180 722.4 Q F2(*)2.5 E F1
+2.5(sm)C(atch only directories and subdirectories.)-2.5 E(GNU Bash 5.3)
+72 768 Q(2024 December 12)136.795 E(30)185.955 E 0 Cg EP
+%%Page: 31 31
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(?)144 84 Q F1(Matches an)180
+84 Q 2.5(ys)-.15 G(ingle character)-2.5 E(.)-.55 E F2([)144 96 Q F1
+1.666(...)C F2(])-1.666 E F1 1.312(Matches an)180 96 R 3.812(yo)-.15 G
+1.312(ne of the characters enclosed between the brack)-3.812 F 3.812
+(ets. This)-.1 F 1.312(is kno)3.812 F 1.313(wn as a)-.25 F F0(br)180 108
+Q(ac)-.15 E -.1(ke)-.2 G 3.677(te).1 G(xpr)-3.877 E(ession)-.37 E F1
+1.177(and matches a single character)3.677 F 6.177(.A)-.55 G 1.177
+(pair of characters separated by a)-2.5 F -.05(hy)180 120 S .179
+(phen denotes a).05 F F0 -.15(ra)2.679 G(ng).15 E 2.679(ee)-.1 G(xpr)
+-2.879 E(ession)-.37 E F1 2.679(;a)C .479 -.15(ny c)-2.679 H .179
+(haracter that f).15 F .179(alls between those tw)-.1 F 2.68(oc)-.1 G
+(haracters,)-2.68 E(inclusi)180 132 Q -.15(ve)-.25 G 3.004(,u).15 G .504
+(sing the current locale')-3.004 F 3.003(sc)-.55 G .503
+(ollating sequence and character set, matches.)-3.003 F .503(If the)
+5.503 F 2.039(\214rst character follo)180 144 R 2.039(wing the)-.25 F F2
+([)4.539 E F1 2.039(is a)4.539 F F2(!)4.539 E F1 2.039(or a)7.039 F F2
+<00>4.539 E F1 2.04(then an)4.54 F 4.54(yc)-.15 G 2.04
+(haracter not within the range)-4.54 F 2.632(matches. T)180 156 R 2.632
+(om)-.8 G .132(atch a)-2.632 F F2<ad>2.632 E F1 2.632(,i)C .132
+(nclude it as the \214rst or last character in the set.)-2.632 F 1.731
+-.8(To m)5.131 H .131(atch a).8 F F2(])2.631 E F1 2.631(,i)C(n-)-2.631 E
+(clude it as the \214rst character in the set.)180 168 Q 1.044
+(The sorting order of characters in range e)180 184.8 R 1.045
+(xpressions, and the characters included in the)-.15 F 2.34
+(range, are determined by the current locale and the v)180 196.8 R 2.34
+(alues of the)-.25 F/F3 9/Times-Bold@0 SF(LC_COLLA)4.84 E(TE)-.855 E F1
+(or)4.59 E F3(LC_ALL)180 208.8 Q F1 1.078(shell v)3.328 F 1.078
+(ariables, if set.)-.25 F 2.679 -.8(To o)6.079 H 1.079
+(btain the traditional interpretation of range e).8 F(xpres-)-.15 E
+2.408(sions, where)180 220.8 R F2([a\255d])4.908 E F1 2.408(is equi)
+4.908 F -.25(va)-.25 G 2.408(lent to).25 F F2([abcd])4.908 E F1 4.908
+(,s)C 2.408(et the v)-4.908 F 2.407(alue of the)-.25 F F2(LC_COLLA)4.907
+E(TE)-.95 E F1(or)4.907 E F2(LC_ALL)180 232.8 Q F1(shell v)2.5 E
+(ariables to)-.25 E F2(C)2.5 E F1 2.5(,o)C 2.5(re)-2.5 G(nable the)-2.5
+E F2(globasciiranges)2.5 E F1(shell option.)2.5 E -.4(Wi)180 249.6 S
+.177(thin a brack).4 F .177(et e)-.1 F(xpression,)-.15 E F0 -.15(ch)
+2.677 G(ar).15 E .177(acter classes)-.15 F F1 .178
+(can be speci\214ed using the syntax)2.677 F F2([:)2.678 E F0(class)A F2
+(:])A F1(,)A(where)180 261.6 Q F0(class)2.5 E F1(is one of the follo)2.5
+E(wing classes de\214ned in the POSIX standard:)-.25 E F2 5.889
+(alnum alpha ascii blank cntrl digit graph lo)180 278.4 R 5.889
+(wer print punct space up-)-.1 F 5(per w)180 290.4 R 5(ord xdigit)-.1 F
+F1 4.289(Ac)180 307.2 S 1.789(haracter class matches an)-4.289 F 4.289
+(yc)-.15 G 1.789(haracter belonging to that class.)-4.289 F(The)6.789 E
+F2 -.1(wo)4.29 G(rd).1 E F1(character)4.29 E
+(class matches letters, digits, and the character _.)180 319.2 Q -.4(Wi)
+180 336 S .013(thin a brack).4 F .013(et e)-.1 F .013(xpression, an)-.15
+F F0 .012(equivalence class)2.512 F F1 .012
+(can be speci\214ed using the syntax)2.512 F F2([=)2.512 E F0(c)A F2(=])
+A F1(,)A .124(which matches all characters with the same collation weig\
+ht \(as de\214ned by the current lo-)180 348 R(cale\) as the character)
+180 360 Q F0(c)2.5 E F1(.)A -.4(Wi)180 376.8 S(thin a brack).4 E(et e)
+-.1 E(xpression, the syntax)-.15 E F2([.)2.5 E F0(symbol)A F2(.])A F1
+(matches the collating symbol)2.5 E F0(symbol)2.5 E F1(.)A .54(If the)
+108 393.6 R F2(extglob)3.04 E F1 .54(shell option is enabled using the)
+3.04 F F2(shopt)3.039 E F1 -.2(bu)3.039 G .539
+(iltin, the shell recognizes se).2 F -.15(ve)-.25 G .539(ral e).15 F
+.539(xtended pattern)-.15 F .037(matching operators.)108 405.6 R .037
+(In the follo)5.037 F .037(wing description, a)-.25 F F0(pattern-list)
+2.538 E F1 .038(is a list of one or more patterns separated by)2.538 F
+(a)108 417.6 Q F2(|)2.5 E F1 5(.C)C
+(omposite patterns may be formed using one or more of the follo)-5 E
+(wing sub-patterns:)-.25 E F2(?\()144 434.4 Q F0(pattern-list).833 E F2
+(\)).833 E F1(Matches zero or one occurrence of the gi)180 446.4 Q -.15
+(ve)-.25 G 2.5(np).15 G(atterns.)-2.5 E F2(*\()144 458.4 Q F0
+(pattern-list).833 E F2(\)).833 E F1
+(Matches zero or more occurrences of the gi)180 470.4 Q -.15(ve)-.25 G
+2.5(np).15 G(atterns.)-2.5 E F2(+\()144 482.4 Q F0(pattern-list).833 E
+F2(\)).833 E F1(Matches one or more occurrences of the gi)180 494.4 Q
+-.15(ve)-.25 G 2.5(np).15 G(atterns.)-2.5 E F2(@\()144 506.4 Q F0
+(pattern-list).833 E F2(\)).833 E F1(Matches one of the gi)180 518.4 Q
+-.15(ve)-.25 G 2.5(np).15 G(atterns.)-2.5 E F2(!\()144 530.4 Q F0
+(pattern-list).833 E F2(\)).833 E F1(Matches an)180 542.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(The)108 559.2 Q F2(extglob)2.792 E F1 .292
+(option changes the beha)2.792 F .291(vior of the parser)-.2 F 2.791(,s)
+-.4 G .291(ince the parentheses are normally treated as opera-)-2.791 F
+.104(tors with syntactic meaning.)108 571.2 R 1.704 -.8(To e)5.104 H
+.105(nsure that e).8 F .105
+(xtended matching patterns are parsed correctly)-.15 F 2.605(,m)-.65 G
+(ak)-2.605 E 2.605(es)-.1 G .105(ure that)-2.605 F F2(extglob)108 583.2
+Q F1 1.355(is enabled before parsing constructs containing the patterns\
+, including shell functions and com-)3.855 F(mand substitutions.)108
+595.2 Q .988(When matching \214lenames, the)108 612 R F2(dotglob)3.488 E
+F1 .988
+(shell option determines the set of \214lenames that are tested: when)
+3.488 F F2(dotglob)108 624 Q F1 .345
+(is enabled, the set of \214lenames includes all \214les be)2.845 F .344
+(ginning with \231.\232, b)-.15 F(ut)-.2 E F0(.)4.51 E F1(and)4.51 E F0
+(..)4.51 E F1 .344(must be matched)4.51 F .075
+(by a pattern or sub-pattern that be)108 636 R .076
+(gins with a dot; when it is disabled, the set does not include an)-.15
+F 2.576<798c>-.15 G(lenames)-2.576 E(be)108 648 Q .807
+(ginning with \231.\232 unless the pattern or sub-pattern be)-.15 F .806
+(gins with a \231.\232.)-.15 F .806(If the)5.806 F F2(globskipdots)3.306
+E F1 .806(shell option is)3.306 F 1.009(enabled, the \214lenames)108 660
+R F0(.)5.175 E F1(and)5.175 E F0(..)5.176 E F1(ne)5.176 E -.15(ve)-.25 G
+3.51(ra).15 G 1.01(ppear in the set.)-3.51 F 1.01(As abo)6.01 F -.15(ve)
+-.15 G 3.51<2c99>.15 G 1.01(.\232 only has a special meaning when)-3.51
+F(matching \214lenames.)108 672 Q .969(Complicated e)108 688.8 R .969
+(xtended pattern matching ag)-.15 F .969(ainst long strings is slo)-.05
+F 2.268 -.65(w, e)-.25 H .968(specially when the patterns contain).65 F
+.09(alternations and the strings contain multiple matches.)108 700.8 R
+.091(Using separate matches ag)5.091 F .091
+(ainst shorter strings, or us-)-.05 F
+(ing arrays of strings instead of a single long string, may be f)108
+712.8 Q(aster)-.1 E(.)-.55 E(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(31)185.955 E 0 Cg EP
+%%Page: 32 32
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(Quote Remo)87 84 Q -.1(va)-.1
+G(l).1 E F1 1.113(After the preceding e)108 96 R 1.113
+(xpansions, all unquoted occurrences of the characters)-.15 F F2(\\)
+3.613 E F1(,)A F2<08>3.612 E F1 3.612(,a)C(nd)-3.612 E F2(")4.445 E F1
+1.112(that did not result)4.445 F(from one of the abo)108 108 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 124.8 Q F1 .545(Before a command is e)
+108 136.8 R -.15(xe)-.15 G .545(cuted, its input and output may be).15 F
+F0 -.37(re)3.045 G(dir).37 E(ected)-.37 E F1 .545
+(using a special notation interpreted)3.815 F .429(by the shell.)108
+148.8 R F0(Redir)5.428 E(ection)-.37 E F1(allo)2.928 E .428(ws commands\
+' \214le handles to be duplicated, opened, closed, made to refer to)-.25
+F(dif)108 160.8 Q .763(ferent \214les, and can change the \214les the c\
+ommand reads from and writes to.)-.25 F .763(When used with the)5.763 F
+F2(exec)3.263 E F1 -.2(bu)108 172.8 S .418
+(iltin, redirections modify \214le handles in the current shell e).2 F
+-.15(xe)-.15 G .417(cution en).15 F 2.917(vironment. The)-.4 F(follo)
+2.917 E .417(wing redirec-)-.25 F 1.694
+(tion operators may precede or appear an)108 184.8 R 1.695
+(ywhere within a)-.15 F F0 1.695(simple command)4.535 F F1 1.695
+(or may follo)4.965 F 4.195(wa)-.25 G F0(command).2 E F1(.).77 E
+(Redirections are processed in the order the)108 196.8 Q 2.5(ya)-.15 G
+(ppear)-2.5 E 2.5(,f)-.4 G(rom left to right.)-2.5 E .771(Each redirect\
+ion that may be preceded by a \214le descriptor number may instead be p\
+receded by a w)108 213.6 R .771(ord of)-.1 F .367(the form {)108 225.6 R
+F0(varname)A F1 2.867(}. In)B .368
+(this case, for each redirection operator e)2.867 F(xcept)-.15 E F2
+(>&\255)2.868 E F1(and)2.868 E F2(<&\255)2.868 E F1 2.868(,t)C .368
+(he shell allocates a)-2.868 F .461
+(\214le descriptor greater than or equal to 10 and assigns it to)108
+237.6 R F0(varname)2.961 E F1 5.461(.I)C 2.961(f{)-5.461 G F0(varname)
+-2.961 E F1 2.961(}p)C(recedes)-2.961 E F2(>&\255)2.961 E F1(or)2.961 E
+F2(<&\255)2.961 E F1(,)A .534(the v)108 249.6 R .534(alue of)-.25 F F0
+(varname)3.034 E F1 .534(de\214nes the \214le descriptor to close.)3.034
+F .535(If {)5.534 F F0(varname)A F1 3.035(}i)C 3.035(ss)-3.035 G .535
+(upplied, the redirection persists)-3.035 F(be)108 261.6 Q .45
+(yond the scope of the command, which allo)-.15 F .449
+(ws the shell programmer to manage the \214le descriptor')-.25 F 2.949
+(sl)-.55 G(ife-)-2.949 E(time manually without using the)108 273.6 Q F2
+(exec)2.5 E F1 -.2(bu)2.5 G 2.5(iltin. The).2 F F2 -.1(va)2.5 G(rr).1 E
+(edir_close)-.18 E F1(shell option manages this beha)2.5 E(vior)-.2 E(.)
+-.55 E .447(In the follo)108 290.4 R .447(wing descriptions, if the \
+\214le descriptor number is omitted, and the \214rst character of the r\
+edirec-)-.25 F .714(tion operator is \231<\232, the redirection refers \
+to the standard input \(\214le descriptor 0\).)108 302.4 R .714
+(If the \214rst character of)5.714 F(the redirection operator is \231>\
+\232, the redirection refers to the standard output \(\214le descriptor\
+ 1\).)108 314.4 Q(The)108 331.2 Q F0(wor)3.342 E(d)-.37 E F1(follo)3.342
+E .843(wing the redirection operator in the follo)-.25 F .843
+(wing descriptions, unless otherwise noted, is sub-)-.25 F .463
+(jected to brace e)108 343.2 R .463(xpansion, tilde e)-.15 F .462
+(xpansion, parameter and v)-.15 F .462(ariable e)-.25 F .462
+(xpansion, command substitution, arith-)-.15 F .866(metic e)108 355.2 R
+.866(xpansion, quote remo)-.15 F -.25(va)-.15 G .866(l, pathname e).25 F
+.867(xpansion, and w)-.15 F .867(ord splitting.)-.1 F .867(If it e)5.867
+F .867(xpands to more than one)-.15 F -.1(wo)108 367.2 S(rd,).1 E F2
+(bash)2.5 E F1(reports an error)2.5 E(.)-.55 E
+(The order of redirections is signi\214cant.)108 384 Q -.15(Fo)5 G 2.5
+(re).15 G(xample, the command)-2.65 E(ls)144 400.8 Q F2(>)2.5 E F1
+(dirlist 2)2.5 E F2(>&)A F1(1)A
+(directs both standard output and standard error to the \214le)108 417.6
+Q F0(dirlist)2.85 E F1 2.5(,w).68 G(hile the command)-2.5 E(ls 2)144
+434.4 Q F2(>&)A F1(1)A F2(>)2.5 E F1(dirlist)2.5 E .067
+(directs only the standard output to \214le)108 451.2 R F0(dirlist)2.917
+E F1 2.567(,b).68 G .066(ecause the standard error w)-2.567 F .066
+(as directed to the standard output)-.1 F(before the standard output w)
+108 463.2 Q(as redirected to)-.1 E F0(dirlist)2.85 E F1(.).68 E F2(Bash)
+108 480 Q F1 .598(handles se)3.098 F -.15(ve)-.25 G .598
+(ral \214lenames specially when the).15 F 3.099(ya)-.15 G .599
+(re used in redirections, as described in the follo)-3.099 F(wing)-.25 E
+2.673(table. If)108 492 R .173(the operating system on which)2.673 F F2
+(bash)2.672 E F1 .172(is running pro)2.672 F .172
+(vides these special \214les,)-.15 F F2(bash)2.672 E F1 .172
+(uses them; other)2.672 F(-)-.2 E
+(wise it emulates them internally with the beha)108 504 Q
+(vior described belo)-.2 E -.65(w.)-.25 G F2(/de)144 520.8 Q(v/fd/)-.15
+E F0(fd)A F1(If)180 532.8 Q F0(fd)2.5 E F1(is a v)2.5 E(alid inte)-.25 E
+(ger)-.15 E 2.5(,d)-.4 G(uplicate \214le descriptor)-2.5 E F0(fd)2.5 E
+F1(.)A F2(/de)144 544.8 Q(v/stdin)-.15 E F1
+(File descriptor 0 is duplicated.)180 556.8 Q F2(/de)144 568.8 Q
+(v/stdout)-.15 E F1(File descriptor 1 is duplicated.)180 580.8 Q F2(/de)
+144 592.8 Q(v/stderr)-.15 E F1(File descriptor 2 is duplicated.)180
+604.8 Q F2(/de)144 616.8 Q(v/tcp/)-.15 E F0(host)A F2(/)A F0(port)A F1
+(If)180 628.8 Q F0(host)2.996 E F1 .496(is a v)2.996 F .496
+(alid hostname or Internet address, and)-.25 F F0(port)2.997 E F1 .497
+(is an inte)2.997 F .497(ger port number or ser)-.15 F(-)-.2 E
+(vice name,)180 640.8 Q F2(bash)2.5 E F1
+(attempts to open the corresponding TCP sock)2.5 E(et.)-.1 E F2(/de)144
+652.8 Q(v/udp/)-.15 E F0(host)A F2(/)A F0(port)A F1(If)180 664.8 Q F0
+(host)2.997 E F1 .497(is a v)2.997 F .497
+(alid hostname or Internet address, and)-.25 F F0(port)2.996 E F1 .496
+(is an inte)2.996 F .496(ger port number or ser)-.15 F(-)-.2 E
+(vice name,)180 676.8 Q F2(bash)2.5 E F1
+(attempts to open the corresponding UDP sock)2.5 E(et.)-.1 E 2.5(Af)108
+693.6 S(ailure to open or create a \214le causes the redirection to f)
+-2.6 E(ail.)-.1 E .045(Redirections using \214le descriptors greater th\
+an 9 should be used with care, as the)108 710.4 R 2.546(ym)-.15 G .046
+(ay con\215ict with \214le de-)-2.546 F
+(scriptors the shell uses internally)108 722.4 Q(.)-.65 E(GNU Bash 5.3)
+72 768 Q(2024 December 12)136.795 E(32)185.955 E 0 Cg EP
+%%Page: 33 33
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(Redir)87 84 Q(ecting Input)
+-.18 E F1 .136
+(Redirecting input opens the \214le whose name results from the e)108 96
+R .135(xpansion of)-.15 F F0(wor)2.975 E(d)-.37 E F1 .135
+(for reading on \214le descrip-)3.405 F(tor)108 108 Q F0(n)2.86 E F1 2.5
+(,o).24 G 2.5(rt)-2.5 G(he standard input \(\214le descriptor 0\) if)
+-2.5 E F0(n)2.86 E F1(is not speci\214ed.)2.74 E
+(The general format for redirecting input is:)108 124.8 Q([)144 141.6 Q
+F0(n)A F1(])A F2(<)A F0(wor)A(d)-.37 E F2(Redir)87 158.4 Q
+(ecting Output)-.18 E F1 1.049
+(Redirecting output opens the \214le whose name results from the e)108
+170.4 R 1.05(xpansion of)-.15 F F0(wor)3.89 E(d)-.37 E F1 1.05
+(for writing on \214le de-)4.32 F(scriptor)108 182.4 Q F0(n)3.449 E F1
+3.089(,o).24 G 3.089(rt)-3.089 G .588
+(he standard output \(\214le descriptor 1\) if)-3.089 F F0(n)3.448 E F1
+.588(is not speci\214ed.)3.328 F .588(If the \214le does not e)5.588 F
+.588(xist it is cre-)-.15 F(ated; if it does e)108 194.4 Q
+(xist it is truncated to zero size.)-.15 E
+(The general format for redirecting output is:)108 211.2 Q([)144 228 Q
+F0(n)A F1(])A F2(>)A F0(wor)A(d)-.37 E F1 .154
+(If the redirection operator is)108 244.8 R F2(>)2.654 E F1 2.654(,a)C
+.154(nd the)-2.654 F F2(noclob)2.654 E(ber)-.1 E F1 .154(option to the)
+2.654 F F2(set)2.655 E F1 -.2(bu)2.655 G .155
+(iltin has been enabled, the redirection).2 F -.1(fa)108 256.8 S .177
+(ils if the \214le whose name results from the e).1 F .177(xpansion of)
+-.15 F F0(wor)2.677 E(d)-.37 E F1 -.15(ex)2.677 G .177(ists and is a re)
+.15 F .177(gular \214le.)-.15 F .177(If the redirection)5.177 F .693
+(operator is)108 268.8 R F2(>|)3.193 E F1 3.193(,o)C 3.193(rt)-3.193 G
+.693(he redirection operator is)-3.193 F F2(>)3.194 E F1 .694(and the)
+3.194 F F2(noclob)3.194 E(ber)-.1 E F1 .694(option to the)3.194 F F2
+(set)3.194 E F1 -.2(bu)3.194 G .694(iltin command is not).2 F(enabled,)
+108 280.8 Q F2(bash)2.5 E F1(attempts the redirection e)2.5 E -.15(ve)
+-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214le named by)-2.5 E F0(wor)2.5 E
+(d)-.37 E F1 -.15(ex)2.5 G(ists.).15 E F2 -.25(Ap)87 297.6 S
+(pending Redir).25 E(ected Output)-.18 E F1 3.409(Redirecting output)108
+309.6 R .909(in this f)3.409 F .908
+(ashion opens the \214le whose name results from the e)-.1 F .908
+(xpansion of)-.15 F F0(wor)3.748 E(d)-.37 E F1 .908(for ap-)4.178 F .639
+(pending on \214le descriptor)108 321.6 R F0(n)3.499 E F1 3.139(,o).24 G
+3.139(rt)-3.139 G .639(he standard output \(\214le descriptor 1\) if)
+-3.139 F F0(n)3.5 E F1 .64(is not speci\214ed.)3.38 F .64
+(If the \214le does)5.64 F(not e)108 333.6 Q(xist it is created.)-.15 E
+(The general format for appending output is:)108 350.4 Q([)144 367.2 Q
+F0(n)A F1(])A F2(>>)A F0(wor)A(d)-.37 E F2(Redir)87 384 Q
+(ecting Standard Output and Standard Err)-.18 E(or)-.18 E F1 .928(This \
+construct redirects both the standard output \(\214le descriptor 1\) an\
+d the standard error output \(\214le de-)108 396 R
+(scriptor 2\) to the \214le whose name is the e)108 408 Q(xpansion of)
+-.15 E F0(wor)2.84 E(d)-.37 E F1(.).77 E(There are tw)108 424.8 Q 2.5
+(of)-.1 G(ormats for redirecting standard output and standard error:)
+-2.5 E F2(&>)144 441.6 Q F0(wor)A(d)-.37 E F1(and)108 453.6 Q F2(>&)144
+465.6 Q F0(wor)A(d)-.37 E F1(Of the tw)108 482.4 Q 2.5(of)-.1 G
+(orms, the \214rst is preferred.)-2.5 E(This is semantically equi)5 E
+-.25(va)-.25 G(lent to).25 E F2(>)144 499.2 Q F0(wor)A(d)-.37 E F1(2)2.5
+E F2(>&)A F1(1)A .114(When using the second form,)108 516 R F0(wor)2.614
+E(d)-.37 E F1 .114(may not e)2.614 F .114(xpand to a number or)-.15 F F2
+<ad>2.614 E F1 5.114(.I)C 2.614(fi)-5.114 G 2.615(td)-2.614 G .115
+(oes, other redirection operators)-2.615 F(apply \(see)108 528 Q F2
+(Duplicating File Descriptors)2.5 E F1(belo)2.5 E
+(w\) for compatibility reasons.)-.25 E F2 -.25(Ap)87 544.8 S
+(pending Standard Output and Standard Err).25 E(or)-.18 E F1 1.032(This\
+ construct appends both the standard output \(\214le descriptor 1\) and\
+ the standard error output \(\214le de-)108 556.8 R
+(scriptor 2\) to the \214le whose name is the e)108 568.8 Q(xpansion of)
+-.15 E F0(wor)2.84 E(d)-.37 E F1(.).77 E
+(The format for appending standard output and standard error is:)108
+585.6 Q F2(&>>)144 602.4 Q F0(wor)A(d)-.37 E F1
+(This is semantically equi)108 619.2 Q -.25(va)-.25 G(lent to).25 E F2
+(>>)144 636 Q F0(wor)A(d)-.37 E F1(2)2.5 E F2(>&)A F1(1)A(\(see)108
+652.8 Q F2(Duplicating File Descriptors)2.5 E F1(belo)2.5 E(w\).)-.25 E
+F2(Her)87 669.6 Q 2.5(eD)-.18 G(ocuments)-2.5 E F1 .211(This type of re\
+direction instructs the shell to read input from the current source unt\
+il it reads a line contain-)108 681.6 R .27(ing only)108 693.6 R F0
+(delimiter)3.12 E F1 .27(\(with no trailing blanks\).)3.5 F .269
+(All of the lines read up to that point then become the standard)5.27 F
+(input \(or \214le descriptor)108 705.6 Q F0(n)2.5 E F1(if)2.5 E F0(n)
+2.5 E F1(is speci\214ed\) for a command.)2.5 E
+(The format of here-documents is:)108 722.4 Q(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(33)185.955 E 0 Cg EP
+%%Page: 34 34
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E([)144 84 Q F0(n)A F1(])A/F2 10/Times-Bold@0 SF(<<)A
+F1([)A F2<ad>A F1(])A F0(wor)A(d)-.37 E(her)164 96 Q(e-document)-.37 E
+(delimiter)144 108 Q F1 .241(The shell does not perform parameter and v)
+108 124.8 R .241(ariable e)-.25 F .241
+(xpansion, command substitution, arithmetic e)-.15 F(xpansion,)-.15 E
+(or pathname e)108 136.8 Q(xpansion is performed on)-.15 E F0(wor)2.84 E
+(d)-.37 E F1(.).77 E .053(If an)108 153.6 R 2.553(yp)-.15 G .053(art of)
+-2.553 F F0(wor)2.893 E(d)-.37 E F1 .053(is quoted, the)3.323 F F0
+(delimiter)2.902 E F1 .052(is the result of quote remo)3.282 F -.25(va)
+-.15 G 2.552(lo).25 G(n)-2.552 E F0(wor)2.892 E(d)-.37 E F1 2.552(,a).77
+G .052(nd the lines in the here-)-2.552 F .101(document are not e)108
+165.6 R 2.601(xpanded. If)-.15 F F0(wor)2.602 E(d)-.37 E F1 .102
+(is unquoted, the)2.602 F F0(delimiter)2.952 E F1(is)3.332 E F0(wor)
+2.602 E(d)-.37 E F1 .102(itself, and the here-document te)2.602 F .102
+(xt is)-.15 F .131(treated similarly to a double-quoted string: all lin\
+es of the here-document are subjected to parameter e)108 177.6 R(xpan-)
+-.15 E .894(sion, command substitution, and arithmetic e)108 189.6 R
+.894(xpansion, the character sequence)-.15 F F2(\\<newline>)3.394 E F1
+.895(is treated liter)3.394 F(-)-.2 E(ally)108 201.6 Q 2.624(,a)-.65 G
+(nd)-2.624 E F2(\\)2.624 E F1 .124(must be used to quote the characters)
+2.624 F F2(\\)2.624 E F1(,)A F2($)2.624 E F1 2.624(,a)C(nd)-2.624 E F2
+<92>2.624 E F1 2.624(;h)C -.25(ow)-2.624 G -2.15 -.25(ev e).25 H .924
+-.4(r, d).25 H .124(ouble quote characters ha).4 F .424 -.15(ve n)-.2 H
+2.624(os).15 G(pecial)-2.624 E(meaning.)108 213.6 Q .97
+(If the redirection operator is)108 230.4 R F2(<<\255)3.47 E F1 3.47(,t)
+C .971(hen the shell strips all leading tab characters from input lines\
+ and the)-3.47 F .366(line containing)108 242.4 R F0(delimiter)3.216 E
+F1 5.366(.T).73 G .366(his allo)-5.366 F .365
+(ws here-documents within shell scripts to be indented in a natural f)
+-.25 F(ash-)-.1 E(ion.)108 254.4 Q .797
+(If the delimiter is not quoted, the)108 271.2 R F2(\\<newline>)3.298 E
+F1 .798(sequence is treated as a line continuation: the tw)3.298 F 3.298
+(ol)-.1 G .798(ines are)-3.298 F .973(joined and the backslash-ne)108
+283.2 R .973(wline is remo)-.25 F -.15(ve)-.15 G 3.472(d. This).15 F
+.972(happens while reading the here-document, before the)3.472 F
+(check for the ending delimiter)108 295.2 Q 2.5(,s)-.4 G 2.5(oj)-2.5 G
+(oined lines can form the end delimiter)-2.5 E(.)-.55 E F2(Her)87 312 Q
+2.5(eS)-.18 G(trings)-2.5 E F1 2.5(Av)108 324 S
+(ariant of here documents, the format is:)-2.75 E([)144 340.8 Q F0(n)A
+F1(])A F2(<<<)A F0(wor)A(d)-.37 E F1(The)108 357.6 Q F0(wor)3.291 E(d)
+-.37 E F1(under)3.291 E .792(goes tilde e)-.18 F .792
+(xpansion, parameter and v)-.15 F .792(ariable e)-.25 F .792
+(xpansion, command substitution, arithmetic)-.15 F -.15(ex)108 369.6 S
+1.188(pansion, and quote remo).15 F -.25(va)-.15 G 3.687(l. P).25 F
+1.187(athname e)-.15 F 1.187(xpansion and w)-.15 F 1.187
+(ord splitting are not performed.)-.1 F 1.187(The result is)6.187 F .374
+(supplied as a single string, with a ne)108 381.6 R .375(wline appended\
+, to the command on its standard input \(or \214le descrip-)-.25 F(tor)
+108 393.6 Q F0(n)2.5 E F1(if)2.5 E F0(n)2.5 E F1(is speci\214ed\).)2.5 E
+F2(Duplicating File Descriptors)87 410.4 Q F1(The redirection operator)
+108 422.4 Q([)144 439.2 Q F0(n)A F1(])A F2(<&)A F0(wor)A(d)-.37 E F1
+.512(is used to duplicate input \214le descriptors.)108 456 R(If)5.512 E
+F0(wor)3.352 E(d)-.37 E F1 -.15(ex)3.782 G .512
+(pands to one or more digits, \214le descriptor).15 F F0(n)3.372 E F1
+.512(is made)3.252 F .097(to be a cop)108 468 R 2.597(yo)-.1 G 2.598(ft)
+-2.597 G .098(hat \214le descriptor)-2.598 F 5.098(.I)-.55 G 2.598(ti)
+-5.098 G 2.598(sar)-2.598 G .098(edirection error if the digits in)
+-2.598 F F0(wor)2.938 E(d)-.37 E F1 .098
+(do not specify a \214le descrip-)3.368 F 1.04(tor open for input.)108
+480 R(If)6.04 E F0(wor)3.88 E(d)-.37 E F1 -.25(eva)4.31 G 1.04
+(luates to).25 F F2<ad>3.54 E F1 3.54<2c8c>C 1.04(le descriptor)-3.54 F
+F0(n)3.9 E F1 1.04(is closed.)3.78 F(If)6.04 E F0(n)3.9 E F1 1.04
+(is not speci\214ed, this uses the)3.78 F
+(standard input \(\214le descriptor 0\).)108 492 Q(The operator)108
+508.8 Q([)144 525.6 Q F0(n)A F1(])A F2(>&)A F0(wor)A(d)-.37 E F1 .31
+(is used similarly to duplicate output \214le descriptors.)108 542.4 R
+(If)5.31 E F0(n)3.17 E F1 .31
+(is not speci\214ed, this uses the standard output \(\214le)3.05 F .552
+(descriptor 1\).)108 554.4 R .552
+(It is a redirection error if the digits in)5.552 F F0(wor)3.392 E(d)
+-.37 E F1 .552(do not specify a \214le descriptor open for output.)3.822
+F(If)108 566.4 Q F0(wor)3.227 E(d)-.37 E F1 -.25(eva)3.657 G .387
+(luates to).25 F F2<ad>2.887 E F1 2.887<2c8c>C .387(le descriptor)-2.887
+F F0(n)3.248 E F1 .388(is closed.)3.128 F .388(As a special case, if)
+5.388 F F0(n)2.888 E F1 .388(is omitted, and)2.888 F F0(wor)2.888 E(d)
+-.37 E F1 .388(does not e)2.888 F(x-)-.15 E 1.063
+(pand to one or more digits or)108 578.4 R F2<ad>3.563 E F1 3.563(,t)C
+1.063
+(his redirects the standard output and standard error as described pre)
+-3.563 F(vi-)-.25 E(ously)108 590.4 Q(.)-.65 E F2(Mo)87 607.2 Q
+(ving File Descriptors)-.1 E F1(The redirection operator)108 619.2 Q([)
+144 636 Q F0(n)A F1(])A F2(<&)A F0(digit)A F2<ad>A F1(mo)108 652.8 Q
+-.15(ve)-.15 G 3.017(st).15 G .517(he \214le descriptor)-3.017 F F0
+(digit)3.017 E F1 .517(to \214le descriptor)3.017 F F0(n)3.377 E F1
+3.017(,o).24 G 3.017(rt)-3.017 G .518
+(he standard input \(\214le descriptor 0\) if)-3.017 F F0(n)3.018 E F1
+.518(is not speci-)3.018 F(\214ed.)108 664.8 Q F0(digit)5 E F1
+(is closed after being duplicated to)2.5 E F0(n)2.5 E F1(.)A(Similarly)
+108 681.6 Q 2.5(,t)-.65 G(he redirection operator)-2.5 E([)144 698.4 Q
+F0(n)A F1(])A F2(>&)A F0(digit)A F2<ad>A F1(mo)108 715.2 Q -.15(ve)-.15
+G 2.768(st).15 G .268(he \214le descriptor)-2.768 F F0(digit)2.768 E F1
+.268(to \214le descriptor)2.768 F F0(n)3.128 E F1 2.768(,o).24 G 2.768
+(rt)-2.768 G .267(he standard output \(\214le descriptor 1\) if)-2.768 F
+F0(n)2.767 E F1 .267(is not speci-)2.767 F(\214ed.)108 727.2 Q
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(34)185.955 E 0 Cg EP
+%%Page: 35 35
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(Opening File Descriptors f)87
+84 Q(or Reading and Writing)-.25 E F1(The redirection operator)108 96 Q
+([)144 112.8 Q F0(n)A F1(])A F2(<>)A F0(wor)A(d)-.37 E F1 .279
+(opens the \214le whose name is the e)108 129.6 R .279(xpansion of)-.15
+F F0(wor)3.119 E(d)-.37 E F1 .279
+(for both reading and writing on \214le descriptor)3.549 F F0(n)3.139 E
+F1 2.779(,o).24 G 2.779(ro)-2.779 G(n)-2.779 E(\214le descriptor 0 if)
+108 141.6 Q F0(n)2.86 E F1(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 158.4 Q F0(Aliases)108 170.4 Q F1(allo)3.002
+E 3.002(was)-.25 G .502(tring to be substituted for a w)-3.002 F .502
+(ord that is in a position in the input where it can be the \214rst)-.1
+F -.1(wo)108 182.4 S .408(rd of a simple command.).1 F .408(Aliases ha)
+5.408 F .708 -.15(ve n)-.2 H .408(ames and corresponding v).15 F .409
+(alues that are set and unset using the)-.25 F F2(alias)108 194.4 Q F1
+(and)2.5 E F2(unalias)2.5 E F1 -.2(bu)2.5 G(iltin commands \(see).2 E/F4
+9/Times-Bold@0 SF(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F1(belo)
+2.25 E(w\).)-.25 E 1.034(If the shell reads an unquoted w)108 211.2 R
+1.033(ord in the right position, it checks the w)-.1 F 1.033
+(ord to see if it matches an alias)-.1 F 3.038(name. If)108 223.2 R .538
+(it matches, the shell replaces the w)3.038 F .538(ord with the alias v)
+-.1 F .538(alue, and reads that v)-.25 F .538(alue as if it had been)
+-.25 F 1.082(read instead of the w)108 235.2 R 3.582(ord. The)-.1 F
+1.082(shell doesn')3.582 F 3.582(tl)-.18 G 1.082(ook at an)-3.582 F
+3.582(yc)-.15 G 1.082(haracters follo)-3.582 F 1.082(wing the w)-.25 F
+1.081(ord before attempting)-.1 F(alias substitution.)108 247.2 Q .264
+(The characters)108 264 R F2(/)2.764 E F1(,)A F2($)2.764 E F1(,)A F2<92>
+2.764 E F1 2.764(,a)C(nd)-2.764 E F2(=)2.764 E F1 .264(and an)2.764 F
+2.764(yo)-.15 G 2.764(ft)-2.764 G .264(he shell)-2.764 F F0(metac)2.764
+E(har)-.15 E(acter)-.15 E(s)-.1 E F1 .264
+(or quoting characters listed abo)2.764 F .565 -.15(ve m)-.15 H .265
+(ay not).15 F .299(appear in an alias name.)108 276 R .298
+(The replacement te)5.298 F .298(xt may contain an)-.15 F 2.798(yv)-.15
+G .298(alid shell input, including shell metachar)-3.048 F(-)-.2 E 2.625
+(acters. The)108 288 R .125(\214rst w)2.625 F .125
+(ord of the replacement te)-.1 F .125(xt is tested for aliases, b)-.15 F
+.125(ut a w)-.2 F .126(ord that is identical to an alias be-)-.1 F .666
+(ing e)108 300 R .666(xpanded is not e)-.15 F .666
+(xpanded a second time.)-.15 F .666(This means that one may alias)5.666
+F F2(ls)3.166 E F1(to)3.166 E F2 .666(ls \255F)3.166 F F1 3.166(,f)C
+.666(or instance, and)-3.166 F F2(bash)108 312 Q F1
+(does not try to recursi)2.5 E -.15(ve)-.25 G(ly e).15 E
+(xpand the replacement te)-.15 E(xt.)-.15 E 1.035
+(If the last character of the alias v)108 328.8 R 1.035(alue is a)-.25 F
+F0(blank)3.805 E F1 3.535(,t).67 G 1.035(he shell checks the ne)-3.535 F
+1.036(xt command w)-.15 F 1.036(ord follo)-.1 F 1.036(wing the)-.25 F
+(alias for alias e)108 340.8 Q(xpansion.)-.15 E
+(Aliases are created and listed with the)108 357.6 Q F2(alias)2.5 E F1
+(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 F1(command.)2.5 E .742
+(There is no mechanism for using ar)108 374.4 R .741
+(guments in the replacement te)-.18 F 3.241(xt. If)-.15 F(ar)3.241 E
+.741(guments are needed, use a shell)-.18 F(function \(see)108 386.4 Q
+F4(FUNCTIONS)2.5 E F1(belo)2.25 E(w\) instead.)-.25 E .282
+(Aliases are not e)108 403.2 R .282
+(xpanded when the shell is not interacti)-.15 F -.15(ve)-.25 G 2.782(,u)
+.15 G .282(nless the)-2.782 F F2(expand_aliases)2.783 E F1 .283
+(shell option is set us-)2.783 F(ing)108 415.2 Q F2(shopt)2.5 E F1
+(\(see the description of)2.5 E F2(shopt)2.5 E F1(under)2.5 E F4
+(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F1(belo)2.25 E(w\).)-.25
+E .436
+(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 F1(al)2.935 E -.1(wa)
+-.1 G .435(ys reads at least).1 F .67
+(one complete line of input, and all lines that mak)108 444 R 3.17(eu)
+-.1 G 3.17(pac)-3.17 G .67(ompound command, before e)-3.17 F -.15(xe)
+-.15 G .67(cuting an).15 F 3.17(yo)-.15 G 3.17(ft)-3.17 G(he)-3.17 E
+1.059(commands on that line or the compound command.)108 456 R 1.059
+(Aliases are e)6.059 F 1.058(xpanded when a command is read, not)-.15 F
+.074(when it is e)108 468 R -.15(xe)-.15 G 2.574(cuted. Therefore,).15 F
+.075(an alias de\214nition appearing on the same line as another comman\
+d does not)2.574 F(tak)108 480 Q 2.839(ee)-.1 G -.25(ff)-2.839 G .339
+(ect until the shell reads the ne).25 F .339
+(xt line of input, and an alias de\214nition in a compound command does)
+-.15 F .031(not tak)108 492 R 2.531(ee)-.1 G -.25(ff)-2.531 G .031
+(ect until the shell parses and e).25 F -.15(xe)-.15 G .031
+(cutes the entire compound command.).15 F .032(The commands follo)5.032
+F(wing)-.25 E .726(the alias de\214nition on that line, or in the rest \
+of a compound command, are not af)108 504 R .725(fected by the ne)-.25 F
+3.225(wa)-.25 G(lias.)-3.225 E .657(This beha)108 516 R .657
+(vior is also an issue when functions are e)-.2 F -.15(xe)-.15 G 3.158
+(cuted. Aliases).15 F .658(are e)3.158 F .658
+(xpanded when a function de\214ni-)-.15 F .081
+(tion is read, not when the function is e)108 528 R -.15(xe)-.15 G .08
+(cuted, because a function de\214nition is itself a command.).15 F .08
+(As a con-)5.08 F .264
+(sequence, aliases de\214ned in a function are not a)108 540 R -.25(va)
+-.2 G .265(ilable until after that function is e).25 F -.15(xe)-.15 G
+2.765(cuted. T).15 F 2.765(ob)-.8 G 2.765(es)-2.765 G .265(afe, al-)
+-2.765 F -.1(wa)108 552 S
+(ys put alias de\214nitions on a separate line, and do not use).1 E F2
+(alias)2.5 E F1(in compound commands.)2.5 E -.15(Fo)108 568.8 S 2.5(ra)
+.15 G(lmost e)-2.5 E -.15(ve)-.25 G
+(ry purpose, shell functions are preferable to aliases.).15 E F3
+(FUNCTIONS)72 585.6 Q F1 3.468(As)108 597.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 F1
+.967(stores a series of commands for)3.217 F .534(later e)108 609.6 R
+-.15(xe)-.15 G 3.034(cution. When).15 F .535(the name of a shell functi\
+on is used as a simple command name, the shell e)3.034 F -.15(xe)-.15 G
+(cutes).15 E .295
+(the list of commands associated with that function name.)108 621.6 R
+.295(Functions are e)5.295 F -.15(xe)-.15 G .294(cuted in the conte).15
+F .294(xt of the call-)-.15 F 1.626(ing shell; there is no ne)108 633.6
+R 4.126(wp)-.25 G 1.627
+(rocess created to interpret them \(contrast this with the e)-4.126 F
+-.15(xe)-.15 G 1.627(cution of a shell).15 F(script\).)108 645.6 Q .256
+(When a function is e)108 662.4 R -.15(xe)-.15 G .256(cuted, the ar).15
+F .255
+(guments to the function become the positional parameters during its e)
+-.18 F(x-)-.15 E 2.507(ecution. The)108 674.4 R .007(special parameter)
+2.507 F F2(#)2.507 E F1 .007(is updated to re\215ect the ne)2.507 F
+2.508(wp)-.25 G .008(ositional parameters.)-2.508 F .008
+(Special parameter)5.008 F F2(0)2.508 E F1(is)2.508 E 2.638
+(unchanged. The)108 686.4 R .138(\214rst element of the)2.638 F F4
+(FUNCN)2.638 E(AME)-.18 E F1 -.25(va)2.388 G .138
+(riable is set to the name of the function while the func-).25 F
+(tion is e)108 698.4 Q -.15(xe)-.15 G(cuting.).15 E 1.25
+(All other aspects of the shell e)108 715.2 R -.15(xe)-.15 G 1.25
+(cution en).15 F 1.25
+(vironment are identical between a function and its caller with)-.4 F
+1.215(these e)108 727.2 R 1.215(xceptions: the)-.15 F F4(DEB)3.715 E(UG)
+-.09 E F1(and)3.465 E F2(RETURN)3.715 E F1 1.215
+(traps \(see the description of the)3.715 F F2(trap)3.714 E F1 -.2(bu)
+3.714 G 1.214(iltin under).2 F F4(SHELL)3.714 E F1(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(35)185.955 E 0 Cg EP
+%%Page: 36 36
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 9/Times-Bold@0 SF -.09(BU)108 84 S(IL).09 E .478
+(TIN COMMANDS)-.828 F F1(belo)2.728 E .479
+(w\) are not inherited unless the function has been gi)-.25 F -.15(ve)
+-.25 G 2.979(nt).15 G(he)-2.979 E/F3 10/Times-Bold@0 SF(trace)2.979 E F1
+(attrib)2.979 E .479(ute \(see)-.2 F .421(the description of the)108 96
+R F2(declar)2.92 E(e)-.162 E F1 -.2(bu)2.67 G .42(iltin belo).2 F .42
+(w\) or the)-.25 F F3 .42(\255o functrace)2.92 F F1 .42
+(shell option has been enabled with the)2.92 F F3(set)2.92 E F1 -.2(bu)
+108 108 S .071(iltin \(in which case all functions inherit the).2 F F3
+(DEB)2.572 E(UG)-.1 E F1(and)2.572 E F3(RETURN)2.572 E F1 .072
+(traps\), and the)2.572 F F2(ERR)2.572 E F1 .072(trap is not inher)2.322
+F(-)-.2 E(ited unless the)108 120 Q F3(\255o errtrace)2.5 E F1
+(shell option has been enabled.)2.5 E -1.11(Va)108 136.8 S .942
+(riables local to the function are declared with the)1.11 F F3(local)
+3.442 E F1 -.2(bu)3.442 G .942(iltin command \().2 F F0 .942
+(local variables)B F1 3.442(\). Ordinarily)B(,)-.65 E -.25(va)108 148.8
+S .39(riables and their v).25 F .39
+(alues are shared between the function and its caller)-.25 F 5.391(.I)
+-.55 G 2.891(fav)-5.391 G .391(ariable is declared)-3.141 F F3(local)
+2.891 E F1 2.891(,t)C(he)-2.891 E -.25(va)108 160.8 S(riable').25 E 2.5
+(sv)-.55 G(isible scope is restricted to that function and its children\
+ \(including the functions it calls\).)-2.5 E .727(In the follo)108
+177.6 R .727(wing description, the)-.25 F F0(curr)3.227 E .727
+(ent scope)-.37 F F1 .726(is a currently- e)3.226 F -.15(xe)-.15 G .726
+(cuting function.).15 F(Pre)5.726 E .726(vious scopes consist)-.25 F
+.965(of that function')108 189.6 R 3.465(sc)-.55 G .966(aller and so on\
+, back to the \231global\232 scope, where the shell is not e)-3.465 F
+-.15(xe)-.15 G .966(cuting an).15 F 3.466(ys)-.15 G(hell)-3.466 E 3.159
+(function. A)108 201.6 R .659(local v)3.159 F .658
+(ariable at the current scope is a v)-.25 F .658
+(ariable declared using the)-.25 F F3(local)3.158 E F1(or)3.158 E F3
+(declar)3.158 E(e)-.18 E F1 -.2(bu)3.158 G .658(iltins in).2 F
+(the function that is currently e)108 213.6 Q -.15(xe)-.15 G(cuting.).15
+E .587(Local v)108 230.4 R .587(ariables \231shado)-.25 F .587(w\232 v)
+-.25 F .587(ariables with the same name declared at pre)-.25 F .588
+(vious scopes.)-.25 F -.15(Fo)5.588 G 3.088(ri).15 G .588
+(nstance, a local)-3.088 F -.25(va)108 242.4 S .782
+(riable declared in a function hides v).25 F .782
+(ariables with the same name declared at pre)-.25 F .782
+(vious scopes, including)-.25 F 1.247(global v)108 254.4 R 1.248
+(ariables: references and assignments refer to the local v)-.25 F 1.248
+(ariable, lea)-.25 F 1.248(ving the v)-.2 F 1.248(ariables at pre)-.25 F
+(vious)-.25 E(scopes unmodi\214ed.)108 266.4 Q
+(When the function returns, the global v)5 E(ariable is once ag)-.25 E
+(ain visible.)-.05 E .727(The shell uses)108 283.2 R F0 .727
+(dynamic scoping)3.227 F F1 .726(to control a v)3.227 F(ariable')-.25 E
+3.226(sv)-.55 G .726(isibility within functions.)-3.226 F -.4(Wi)5.726 G
+.726(th dynamic scoping,).4 F .007(visible v)108 295.2 R .007
+(ariables and their v)-.25 F .007
+(alues are a result of the sequence of function calls that caused e)-.25
+F -.15(xe)-.15 G .008(cution to reach).15 F .814(the current function.)
+108 307.2 R .813(The v)5.814 F .813(alue of a v)-.25 F .813
+(ariable that a function sees depends on its v)-.25 F .813
+(alue within its caller)-.25 F 3.313(,i)-.4 G(f)-3.313 E(an)108 319.2 Q
+1.427 -.65(y, w)-.15 H .127
+(hether that caller is the global scope or another shell function.).65 F
+.127(This is also the v)5.127 F .127(alue that a local v)-.25 F(ari-)
+-.25 E(able declaration shado)108 331.2 Q(ws, and the v)-.25 E
+(alue that is restored when the function returns.)-.25 E -.15(Fo)108 348
+S 2.724(re).15 G .224(xample, if a v)-2.874 F(ariable)-.25 E F0(var)
+2.724 E F1 .223(is declared as local in function)2.724 F F0(func1)2.723
+E F1 2.723(,a)C(nd)-2.723 E F0(func1)2.723 E F1 .223
+(calls another function)2.723 F F0(func2)2.723 E F1(,)A 1.621
+(references to)108 360 R F0(var)4.121 E F1 1.621(made from within)4.121
+F F0(func2)4.121 E F1(resolv)4.121 E 4.121(et)-.15 G 4.121(ot)-4.121 G
+1.621(he local v)-4.121 F(ariable)-.25 E F0(var)4.121 E F1(from)4.122 E
+F0(func1)4.122 E F1 4.122(,s)C(hado)-4.122 E 1.622(wing an)-.25 F(y)-.15
+E(global v)108 372 Q(ariable named)-.25 E F0(var)2.5 E F1(.)A(The)108
+388.8 Q F3(unset)2.983 E F1 -.2(bu)2.983 G .483
+(iltin also acts using the same dynamic scope: if a v).2 F .482
+(ariable is local to the current scope,)-.25 F F3(unset)2.982 E F1 .57
+(unsets it; otherwise the unset will refer to the v)108 400.8 R .571
+(ariable found in an)-.25 F 3.071(yc)-.15 G .571
+(alling scope as described abo)-3.071 F -.15(ve)-.15 G 5.571(.I).15 G
+3.071(fa)-5.571 G -.25(va)108 412.8 S .11(riable at the current local s\
+cope is unset, it remains so \(appearing as unset\) until it is reset i\
+n that scope or).25 F .88(until the function returns.)108 424.8 R .88
+(Once the function returns, an)5.88 F 3.38(yi)-.15 G .88
+(nstance of the v)-3.38 F .88(ariable at a pre)-.25 F .88
+(vious scope be-)-.25 F .275(comes visible.)108 436.8 R .275
+(If the unset acts on a v)5.275 F .275(ariable at a pre)-.25 F .274
+(vious scope, an)-.25 F 2.774(yi)-.15 G .274(nstance of a v)-2.774 F
+.274(ariable with that name)-.25 F .62(that had been shado)108 448.8 R
+.62(wed becomes visible \(see belo)-.25 F 3.12(wh)-.25 G 1.12 -.25(ow t)
+-3.12 H(he).25 E F3(localv)3.12 E(ar_unset)-.1 E F1 .62
+(shell option changes this be-)3.12 F(ha)108 460.8 Q(vior\).)-.2 E(The)
+108 477.6 Q F2(FUNCNEST)3.881 E F1 -.25(va)3.631 G 1.381
+(riable, if set to a numeric v).25 F 1.38
+(alue greater than 0, de\214nes a maximum function nesting)-.25 F(le)108
+489.6 Q -.15(ve)-.25 G 2.5(l. Function).15 F(in)2.5 E -.2(vo)-.4 G
+(cations that e).2 E(xceed the limit cause the entire command to abort.)
+-.15 E .043(If the b)108 506.4 R .043(uiltin command)-.2 F F3 -.18(re)
+2.543 G(tur).18 E(n)-.15 E F1 .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 .683(the ne)108 518.4 R .683
+(xt command after the function call.)-.15 F(If)5.683 E F3 -.18(re)3.183
+G(tur).18 E(n)-.15 E F1 .683(is supplied a numeric ar)3.183 F .683
+(gument, that is the function')-.18 F(s)-.55 E .851
+(return status; otherwise the function')108 530.4 R 3.351(sr)-.55 G .851
+(eturn status is the e)-3.351 F .851(xit status of the last command e)
+-.15 F -.15(xe)-.15 G .852(cuted before).15 F(the)108 542.4 Q F3 -.18
+(re)4.667 G(tur).18 E(n)-.15 E F1 7.167(.A)C 2.466 -.15(ny c)-7.167 H
+2.166(ommand associated with the).15 F F3(RETURN)4.666 E F1 2.166
+(trap is e)4.666 F -.15(xe)-.15 G 2.166(cuted before e).15 F -.15(xe)
+-.15 G 2.166(cution resumes.).15 F .13(When a function completes, the v)
+108 554.4 R .13
+(alues of the positional parameters and the special parameter)-.25 F F3
+(#)2.63 E F1 .13(are restored)2.63 F(to the v)108 566.4 Q(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(The)108 583.2 Q F3<ad66>2.707 E F1 .207
+(option to the)2.707 F F3(declar)2.707 E(e)-.18 E F1(or)2.707 E F3
+(typeset)2.707 E F1 -.2(bu)2.707 G .206
+(iltin commands lists function names and de\214nitions.).2 F(The)5.206 E
+F3<ad46>2.706 E F1(op-)2.706 E .655(tion to)108 595.2 R F3(declar)3.155
+E(e)-.18 E F1(or)3.155 E F3(typeset)3.155 E F1 .655(lists the function \
+names only \(and optionally the source \214le and line number)3.155 F
+3.155(,i)-.4 G(f)-3.155 E(the)108 607.2 Q F3(extdeb)3.032 E(ug)-.2 E F1
+.532(shell option is enabled\).)3.032 F .532(Functions may be e)5.532 F
+.532(xported so that child shell processes \(those cre-)-.15 F .441
+(ated when e)108 619.2 R -.15(xe)-.15 G .441(cuting a separate shell in)
+.15 F -.2(vo)-.4 G .441(cation\) automatically ha).2 F .741 -.15(ve t)
+-.2 H .441(hem de\214ned with the).15 F F3<ad66>2.942 E F1 .442
+(option to the)2.942 F F3(export)108 631.2 Q F1 -.2(bu)2.5 G 2.5
+(iltin. The).2 F F3<ad66>2.5 E F1(option to the)2.5 E F3(unset)2.5 E F1
+-.2(bu)2.5 G(iltin deletes a function de\214nition.).2 E .372
+(Functions may be recursi)108 648 R -.15(ve)-.25 G 5.371(.T).15 G(he)
+-5.371 E F3(FUNCNEST)2.871 E F1 -.25(va)2.871 G .371
+(riable may be used to limit the depth of the function call).25 F .421
+(stack and restrict the number of function in)108 660 R -.2(vo)-.4 G
+2.922(cations. By).2 F(def)2.922 E(ault,)-.1 E F3(bash)2.922 E F1 .422
+(imposes no limit on the number of)2.922 F(recursi)108 672 Q .3 -.15
+(ve c)-.25 H(alls.).15 E/F4 10.95/Times-Bold@0 SF(ARITHMETIC EV)72 688.8
+Q(ALU)-1.478 E -1.04(AT)-.657 G(ION)1.04 E F1 1.089(The shell allo)108
+700.8 R 1.089(ws arithmetic e)-.25 F 1.089(xpressions to be e)-.15 F
+-.25(va)-.25 G 1.089(luated, under certain circumstances \(see the).25 F
+F3(let)3.588 E F1(and)3.588 E F3(de-)3.588 E(clar)108 712.8 Q(e)-.18 E
+F1 -.2(bu)3.187 G .687(iltin commands, the).2 F F3(\(\()3.188 E F1 .688
+(compound command, the arithmetic)3.188 F F3 -.25(fo)3.188 G(r).25 E F1
+.688(command, the)3.188 F F3([[)3.188 E F1 .688(conditional com-)3.188 F
+(mand, and)108 724.8 Q F3(Arithmetic Expansion)2.5 E F1(\).)A
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(36)185.955 E 0 Cg EP
+%%Page: 37 37
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(Ev)108 84 Q .256(aluation is done in the lar)-.25 F
+.256(gest \214x)-.18 F .256(ed-width inte)-.15 F .256(gers a)-.15 F -.25
+(va)-.2 G .256(ilable, with no check for o).25 F -.15(ve)-.15 G(r\215o)
+.15 E 1.556 -.65(w, t)-.25 H .256(hough di).65 F(vision)-.25 E .057
+(by 0 is trapped and \215agged as an error)108 96 R 5.058(.T)-.55 G .058
+(he operators and their precedence, associati)-5.058 F(vity)-.25 E 2.558
+(,a)-.65 G .058(nd v)-2.558 F .058(alues are the)-.25 F .222
+(same as in the C language.)108 108 R .222(The follo)5.222 F .222
+(wing list of operators is grouped into le)-.25 F -.15(ve)-.25 G .221
+(ls of equal-precedence oper).15 F(-)-.2 E 2.5(ators. The)108 120 R(le)
+2.5 E -.15(ve)-.25 G(ls are listed in order of decreasing precedence.)
+.15 E F0(id)108 136.8 Q/F2 10/Times-Bold@0 SF(++)A F0(id)2.5 E F2<adad>A
+F1 -.25(va)144 148.8 S(riable post-increment and post-decrement).25 E F2
+(++)108 160.8 Q F0(id)A F2<adad>2.5 E F0(id)A F1 -.25(va)144 172.8 S
+(riable pre-increment and pre-decrement).25 E F2 2.5<ad2b>108 184.8 S F1
+(unary minus and plus)144 184.8 Q F2 2.5<2101>108 196.8 S F1
+(logical and bitwise ne)144 196.8 Q -.05(ga)-.15 G(tion).05 E F2(**)108
+208.8 Q F1 -.15(ex)144 208.8 S(ponentiation).15 E F2 2.5(*/%)108 220.8 S
+F1(multiplication, di)144 220.8 Q(vision, remainder)-.25 E F2 2.5<2bad>
+108 232.8 S F1(addition, subtraction)144 232.8 Q F2(<< >>)108 244.8 Q F1
+(left and right bitwise shifts)144 244.8 Q F2(<= >= < >)108 256.8 Q F1
+(comparison)144 268.8 Q F2(== !=)108 280.8 Q F1(equality and inequality)
+144 280.8 Q F2(&)108 292.8 Q F1(bitwise AND)144 292.8 Q F2<00>108 304.8
+Q F1(bitwise e)144 304.8 Q(xclusi)-.15 E .3 -.15(ve O)-.25 H(R).15 E F2
+(|)108 316.8 Q F1(bitwise OR)144 316.8 Q F2(&&)108 328.8 Q F1
+(logical AND)144 328.8 Q F2(||)108 340.8 Q F1(logical OR)144 340.8 Q F0
+-.2(ex)108 352.8 S(pr).2 E F2(?)A F0 -.2(ex)C(pr).2 E F2(:)A F0 -.2(ex)C
+(pr).2 E F1(conditional operator)144 364.8 Q F2 2.5(=*)108 376.8 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
+(<= >>= &= \000= |=)-2.5 E F1(assignment)144 388.8 Q F0 -.2(ex)108 400.8
+S(pr1).2 E F2(,)2.5 E F0 -.2(ex)2.5 G(pr2).2 E F1(comma)144 412.8 Q .68
+(Shell v)108 429.6 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 441.6 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 453.6 S .68(pansion syntax.).15 F .68
+(This means you can use "x", where)5.68 F F0(x)3.181 E F1 .681
+(is a shell v)3.181 F .681(ariable name, in an arithmetic e)-.25 F
+(xpres-)-.15 E .206(sion, and the shell will e)108 465.6 R -.25(va)-.25
+G .205(luate its v).25 F .205(alue as an e)-.25 F .205
+(xpression and use the result.)-.15 F 2.705(As)5.205 G .205(hell v)
+-2.705 F .205(ariable that is null or)-.25 F(unset e)108 477.6 Q -.25
+(va)-.25 G(luates to 0 when referenced by name in an e).25 E(xpression.)
+-.15 E .828(The v)108 494.4 R .828(alue of a v)-.25 F .828(ariable is e)
+-.25 F -.25(va)-.25 G .828(luated as an arithmetic e).25 F .829
+(xpression when it is referenced, or when a v)-.15 F(ariable)-.25 E .192
+(which has been gi)108 506.4 R -.15(ve)-.25 G 2.692(nt).15 G(he)-2.692 E
+F0(inte)2.692 E -.1(ge)-.4 G(r).1 E F1(attrib)2.692 E .192(ute using)-.2
+F F2(declar)2.692 E 2.692<65ad>-.18 G(i)-2.692 E F1 .191
+(is assigned a v)2.692 F 2.691(alue. A)-.25 F .191(null v)2.691 F .191
+(alue e)-.25 F -.25(va)-.25 G .191(luates to 0.).25 F 2.5(As)108 518.4 S
+(hell v)-2.5 E(ariable need not ha)-.25 E .3 -.15(ve i)-.2 H(ts).15 E F0
+(inte)2.5 E -.1(ge)-.4 G(r).1 E F1(attrib)2.5 E
+(ute turned on to be used in an e)-.2 E(xpression.)-.15 E(Inte)108 535.2
+Q .517(ger constants follo)-.15 F 3.017(wt)-.25 G .518
+(he C language de\214nition, without suf)-3.017 F<8c78>-.25 E .518
+(es or character constants.)-.15 F .518(Constants with)5.518 F 3.283(al)
+108 547.2 S .783(eading 0 are interpreted as octal numbers.)-3.283 F
+3.282(Al)5.783 G .782(eading 0x or 0X denotes he)-3.282 F 3.282
+(xadecimal. Otherwise,)-.15 F(num-)3.282 E .815(bers tak)108 559.2 R
+3.315(et)-.1 G .815(he form [)-3.315 F F0(base#)A F1 .815
+(]n, where the optional)B F0(base)3.315 E F1 .816
+(is a decimal number between 2 and 64 representing)3.315 F .35
+(the arithmetic base, and)108 571.2 R F0(n)2.85 E F1 .35
+(is a number in that base.)2.85 F(If)5.35 E F0(base#)2.849 E F1 .349
+(is omitted, then base 10 is used.)2.849 F .349(When speci-)5.349 F
+(fying)108 583.2 Q F0(n)2.974 E F1 2.974(,i)C 2.974(fan)-2.974 G .474(o\
+n-digit is required, the digits greater than 9 are represented by the l\
+o)-2.974 F .475(wercase letters, the up-)-.25 F .518
+(percase letters, @, and _, in that order)108 595.2 R 5.518(.I)-.55 G(f)
+-5.518 E F0(base)3.018 E F1 .518(is less than or equal to 36, lo)3.018 F
+.518(wercase and uppercase letters)-.25 F
+(may be used interchangeably to represent numbers between 10 and 35.)108
+607.2 Q 1.127(Operators are e)108 624 R -.25(va)-.25 G 1.127
+(luated in precedence order).25 F 6.128(.S)-.55 G(ub-e)-6.128 E 1.128
+(xpressions in parentheses are e)-.15 F -.25(va)-.25 G 1.128
+(luated \214rst and may).25 F -.15(ove)108 636 S
+(rride the precedence rules abo).15 E -.15(ve)-.15 G(.).15 E/F3 10.95
+/Times-Bold@0 SF(CONDITION)72 652.8 Q(AL EXPRESSIONS)-.219 E F1 .256
+(Conditional e)108 664.8 R .256(xpressions are used by the)-.15 F F2([[)
+2.755 E F1 .255(compound command and the)2.755 F F2(test)2.755 E F1(and)
+2.755 E F2([)2.755 E F1 -.2(bu)2.755 G .255(iltin commands to test).2 F
+.133(\214le attrib)108 676.8 R .133
+(utes and perform string and arithmetic comparisons.)-.2 F(The)5.133 E
+F2(test)2.633 E F1(and)2.633 E F2([)2.634 E F1 .134
+(commands determine their be-)2.634 F(ha)108 688.8 Q .198
+(vior based on the number of ar)-.2 F .197
+(guments; see the descriptions of those commands for an)-.18 F 2.697(yo)
+-.15 G .197(ther command-)-2.697 F(speci\214c actions.)108 700.8 Q .413
+(Expressions are formed from the unary or binary primaries listed belo)
+108 717.6 R 4.214 -.65(w. U)-.25 H .414(nary e).65 F .414
+(xpressions are often used)-.15 F 1.465(to e)108 729.6 R 1.465
+(xamine the status of a \214le or shell v)-.15 F 3.964(ariable. Binary)
+-.25 F 1.464(operators are used for string, numeric, and \214le)3.964 F
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(37)185.955 E 0 Cg EP
+%%Page: 38 38
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(attrib)108 84 Q(ute comparisons.)-.2 E/F2 10
+/Times-Bold@0 SF(Bash)108 100.8 Q F1 1.202(handles se)3.702 F -.15(ve)
+-.25 G 1.202(ral \214lenames specially when the).15 F 3.703(ya)-.15 G
+1.203(re used in e)-3.703 F 3.703(xpressions. If)-.15 F 1.203
+(the operating system on)3.703 F(which)108 112.8 Q F2(bash)2.64 E F1 .14
+(is running pro)2.64 F .139(vides these special \214les, bash will use \
+them; otherwise it will emulate them inter)-.15 F(-)-.2 E .991
+(nally with this beha)108 124.8 R .991(vior: If an)-.2 F(y)-.15 E F0
+(\214le)3.491 E F1(ar)3.491 E .991
+(gument to one of the primaries is of the form)-.18 F F0(/de)5.157 E
+(v/fd/n)-.15 E F1 3.491(,t)1.666 G(hen)-3.491 E F2(bash)3.491 E F1 .882
+(checks \214le descriptor)108 136.8 R F0(n)3.382 E F1 5.882(.I)C 3.382
+(ft)-5.882 G(he)-3.382 E F0(\214le)3.382 E F1(ar)3.382 E .882
+(gument to one of the primaries is one of)-.18 F F0(/de)5.048 E(v/stdin)
+-.15 E F1(,)1.666 E F0(/de)5.048 E(v/stdout)-.15 E F1 3.382(,o)1.666 G
+(r)-3.382 E F0(/de)109.666 148.8 Q(v/stderr)-.15 E F1(,)1.666 E F2(bash)
+2.5 E F1(checks \214le descriptor 0, 1, or 2, respecti)2.5 E -.15(ve)
+-.25 G(ly).15 E(.)-.65 E .721
+(Unless otherwise speci\214ed, primaries that operate on \214les follo)
+108 165.6 R 3.221(ws)-.25 G .722(ymbolic links and operate on the tar)
+-3.221 F(get)-.18 E(of the link, rather than the link itself.)108 177.6
+Q .642(When used with)108 194.4 R F2([[)3.142 E F1 3.142(,o)C 3.142(rw)
+-3.142 G .642(hen the shell is in posix mode, the)-3.142 F F2(<)3.141 E
+F1(and)3.141 E F2(>)3.141 E F1 .641(operators sort le)3.141 F .641
+(xicographically using)-.15 F(the current locale.)108 206.4 Q
+(When the shell is not in posix mode, the)5 E F2(test)2.5 E F1
+(command sorts using ASCII ordering.)2.5 E F2<ad61>108 223.2 Q F0
+(\214le)2.5 E F1 -.35(Tr)144 223.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15
+(ex)2.5 G(ists.).15 E F2<ad62>108 235.2 Q F0(\214le)2.5 E F1 -.35(Tr)144
+235.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15(ex)2.5 G
+(ists and is a block special \214le.).15 E F2<ad63>108 247.2 Q F0
+(\214le)2.5 E F1 -.35(Tr)144 247.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15
+(ex)2.5 G(ists and is a character special \214le.).15 E F2<ad64>108
+259.2 Q F0(\214le)2.5 E F1 -.35(Tr)144 259.2 S(ue if).35 E F0(\214le)2.5
+E F1 -.15(ex)2.5 G(ists and is a directory).15 E(.)-.65 E F2<ad65>108
+271.2 Q F0(\214le)2.5 E F1 -.35(Tr)144 271.2 S(ue if).35 E F0(\214le)2.5
+E F1 -.15(ex)2.5 G(ists.).15 E F2<ad66>108 283.2 Q F0(\214le)2.5 E F1
+-.35(Tr)144 283.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15(ex)2.5 G
+(ists and is a re).15 E(gular \214le.)-.15 E F2<ad67>108 295.2 Q F0
+(\214le)2.5 E F1 -.35(Tr)144 295.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15
+(ex)2.5 G(ists and is set-group-id.).15 E F2<ad68>108 307.2 Q F0(\214le)
+2.5 E F1 -.35(Tr)144 307.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15(ex)2.5
+G(ists and is a symbolic link.).15 E F2<ad6b>108 319.2 Q F0(\214le)2.5 E
+F1 -.35(Tr)144 319.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15(ex)2.5 G
+(ists and its \231stick).15 E(y\232 bit is set.)-.15 E F2<ad70>108 331.2
+Q F0(\214le)2.5 E F1 -.35(Tr)144 331.2 S(ue if).35 E F0(\214le)2.5 E F1
+-.15(ex)2.5 G(ists and is a named pipe \(FIFO\).).15 E F2<ad72>108 343.2
+Q F0(\214le)2.5 E F1 -.35(Tr)144 343.2 S(ue if).35 E F0(\214le)2.5 E F1
+-.15(ex)2.5 G(ists and is readable.).15 E F2<ad73>108 355.2 Q F0(\214le)
+2.5 E F1 -.35(Tr)144 355.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15(ex)2.5
+G(ists and has a size greater than zero.).15 E F2<ad74>108 367.2 Q F0
+(fd)2.5 E F1 -.35(Tr)144 367.2 S(ue if \214le descriptor).35 E F0(fd)
+4.47 E F1(is open and refers to a terminal.)3.27 E F2<ad75>108 379.2 Q
+F0(\214le)2.5 E F1 -.35(Tr)144 379.2 S(ue if).35 E F0(\214le)2.5 E F1
+-.15(ex)2.5 G(ists and its set-user).15 E(-id bit is set.)-.2 E F2<ad77>
+108 391.2 Q F0(\214le)2.5 E F1 -.35(Tr)144 391.2 S(ue if).35 E F0
+(\214le)2.5 E F1 -.15(ex)2.5 G(ists and is writable.).15 E F2<ad78>108
+403.2 Q F0(\214le)2.5 E F1 -.35(Tr)144 403.2 S(ue if).35 E F0(\214le)2.5
+E F1 -.15(ex)2.5 G(ists and is e).15 E -.15(xe)-.15 G(cutable.).15 E F2
+<ad47>108 415.2 Q F0(\214le)2.5 E F1 -.35(Tr)144 415.2 S(ue if).35 E F0
+(\214le)2.5 E F1 -.15(ex)2.5 G(ists and is o).15 E(wned by the ef)-.25 E
+(fecti)-.25 E .3 -.15(ve g)-.25 H(roup id.).15 E F2<ad4c>108 427.2 Q F0
+(\214le)2.5 E F1 -.35(Tr)144 427.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15
+(ex)2.5 G(ists and is a symbolic link.).15 E F2<ad4e>108 439.2 Q F0
+(\214le)2.5 E F1 -.35(Tr)144 439.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15
+(ex)2.5 G(ists and has been modi\214ed since it w).15 E
+(as last accessed.)-.1 E F2<ad4f>108 451.2 Q F0(\214le)2.5 E F1 -.35(Tr)
+144 451.2 S(ue if).35 E F0(\214le)2.5 E F1 -.15(ex)2.5 G(ists and is o)
+.15 E(wned by the ef)-.25 E(fecti)-.25 E .3 -.15(ve u)-.25 H(ser id.).15
+E F2<ad53>108 463.2 Q F0(\214le)2.5 E F1 -.35(Tr)144 463.2 S(ue if).35 E
+F0(\214le)2.5 E F1 -.15(ex)2.5 G(ists and is a sock).15 E(et.)-.1 E F2
+<ad6f>108 475.2 Q F0(optname)2.5 E F1 -.35(Tr)144 487.2 S .262
+(ue if the shell option).35 F F0(optname)2.992 E F1 .262(is enabled.)
+2.942 F .262(See the list of options under the description of the)5.262
+F F2<ad6f>2.763 E F1(option to the)144 499.2 Q F2(set)2.5 E F1 -.2(bu)
+2.5 G(iltin belo).2 E -.65(w.)-.25 G F2<ad76>108 511.2 Q F0(varname)2.5
+E F1 -.35(Tr)144 523.2 S .327(ue if the shell v).35 F(ariable)-.25 E F0
+(varname)3.116 E F1 .326(is set \(has been assigned a v)3.006 F 2.826
+(alue\). If)-.25 F F0(varname)2.826 E F1 .326(is an inde)2.826 F -.15
+(xe)-.15 G 2.826(da).15 G -.2(r-)-2.826 G .131(ray v)144 535.2 R .131
+(ariable name subscripted by)-.25 F F0(@)2.631 E F1(or)2.631 E F0(*)
+2.631 E F1 2.631(,t)C .131(his returns true if the array has an)-2.631 F
+2.631(ys)-.15 G .131(et elements.)-2.631 F(If)5.131 E F0(var)2.632 E(-)
+-.2 E(name)144 547.2 Q F1 .737(is an associati)3.238 F 1.037 -.15(ve a)
+-.25 H .737(rray v).15 F .737(ariable name subscripted by)-.25 F F0(@)
+3.237 E F1(or)3.237 E F0(*)3.237 E F1 3.237(,t)C .737
+(his returns true if an element)-3.237 F(with that k)144 559.2 Q .3 -.15
+(ey i)-.1 H 2.5(ss).15 G(et.)-2.5 E F2<ad52>108 571.2 Q F0(varname)2.5 E
+F1 -.35(Tr)144 583.2 S(ue if the shell v).35 E(ariable)-.25 E F0
+(varname)2.79 E F1(is set and is a name reference.)2.68 E F2<ad7a>108
+595.2 Q F0(string)2.5 E F1 -.35(Tr)144 607.2 S(ue if the length of).35 E
+F0(string)2.5 E F1(is zero.)2.5 E F0(string)108 619.2 Q F2<ad6e>108
+631.2 Q F0(string)2.5 E F1 -.35(Tr)144 643.2 S(ue if the length of).35 E
+F0(string)2.84 E F1(is non-zero.)2.72 E F0(string1)108 660 Q F2(==)2.5 E
+F0(string2)2.5 E(string1)108 672 Q F2(=)2.5 E F0(string2)2.5 E F1 -.35
+(Tr)144 684 S .861(ue if the strings are equal.).35 F F2(=)5.861 E F1
+.861(should be used with the)3.361 F F2(test)3.361 E F1 .862
+(command for POSIX conformance.)3.362 F .447(When used with the)144 696
+R F2([[)2.946 E F1 .446
+(command, this performs pattern matching as described abo)2.946 F .746
+-.15(ve \()-.15 H F2(Compound).15 E(Commands)144 708 Q F1(\).)A
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(38)185.955 E 0 Cg EP
+%%Page: 39 39
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E F0(string1)108 84 Q/F2 10/Times-Bold@0 SF(!=)2.5 E
+F0(string2)2.5 E F1 -.35(Tr)144 96 S(ue if the strings are not equal.)
+.35 E F0(string1)108 108 Q F2(<)2.5 E F0(string2)2.5 E F1 -.35(Tr)144
+120 S(ue if).35 E F0(string1)2.5 E F1(sorts before)2.5 E F0(string2)2.5
+E F1(le)2.5 E(xicographically)-.15 E(.)-.65 E F0(string1)108 132 Q F2(>)
+2.5 E F0(string2)2.5 E F1 -.35(Tr)144 144 S(ue if).35 E F0(string1)2.5 E
+F1(sorts after)2.5 E F0(string2)2.5 E F1(le)2.5 E(xicographically)-.15 E
+(.)-.65 E F0(\214le1)108 160.8 Q F2(\255ef)2.5 E F0(\214le2)2.5 E F1
+-.35(Tr)144 172.8 S(ue if).35 E F0(\214le1)2.5 E F1(and)2.5 E F0
+(\214le2)2.5 E F1(refer to the same de)2.5 E(vice and inode numbers.)
+-.25 E F0(\214le1)108 184.8 Q F1<ad>2.5 E F2(nt)A F0(\214le2)2.5 E F1
+-.35(Tr)144 196.8 S(ue if).35 E F0(\214le1)2.5 E F1(is ne)2.5 E
+(wer \(according to modi\214cation date\) than)-.25 E F0(\214le2)2.5 E
+F1 2.5(,o)C 2.5(ri)-2.5 G(f)-2.5 E F0(\214le1)2.5 E F1 -.15(ex)2.5 G
+(ists and).15 E F0(\214le2)2.5 E F1(does not.)2.5 E F0(\214le1)108 208.8
+Q F1<ad>2.5 E F2(ot)A F0(\214le2)2.5 E F1 -.35(Tr)144 220.8 S(ue if).35
+E F0(\214le1)2.5 E F1(is older than)2.5 E F0(\214le2)2.5 E F1 2.5(,o)C
+2.5(ri)-2.5 G(f)-2.5 E F0(\214le2)2.5 E F1 -.15(ex)2.5 G(ists and).15 E
+F0(\214le1)2.5 E F1(does not.)2.5 E F0(ar)108.33 237.6 Q(g1)-.37 E F2
+(OP)2.5 E F0(ar)2.5 E(g2)-.37 E/F3 9/Times-Bold@0 SF(OP)144 249.6 Q F1
+.385(is one of)2.634 F F2(\255eq)2.885 E F1(,)A F2(\255ne)2.885 E F1(,)A
+F2(\255lt)2.885 E F1(,)A F2(\255le)2.885 E F1(,)A F2(\255gt)2.885 E F1
+2.885(,o)C(r)-2.885 E F2(\255ge)2.885 E F1 5.385(.T)C .385
+(hese arithmetic binary operators return true if)-5.385 F F0(ar)2.885 E
+(g1)-.37 E F1 .845(is equal to, not equal to, less than, less than or e\
+qual to, greater than, or greater than or equal to)144 261.6 R F0(ar)144
+273.6 Q(g2)-.37 E F1 3.708(,r)C(especti)-3.708 E -.15(ve)-.25 G(ly).15 E
+(.)-.65 E F0(ar)6.538 E(g1)-.37 E F1(and)3.708 E F0(ar)4.038 E(g2)-.37 E
+F1 1.209(may be positi)3.728 F 1.509 -.15(ve o)-.25 H 3.709(rn).15 G
+-2.25 -.15(eg a)-3.709 H(ti).15 E 1.509 -.15(ve i)-.25 H(nte).15 E 3.709
+(gers. When)-.15 F 1.209(used with the)3.709 F F2([[)3.709 E F1
+(command,)144 285.6 Q F0(ar)4.093 E(g1)-.37 E F1(and)3.763 E F0(ar)4.093
+E(g2)-.37 E F1 1.263(are e)3.783 F -.25(va)-.25 G 1.262
+(luated as arithmetic e).25 F 1.262(xpressions \(see)-.15 F F3 1.262
+(ARITHMETIC EV)3.762 F(ALU)-1.215 E(A-)-.54 E(TION)144 297.6 Q F1(abo)
+2.25 E -.15(ve)-.15 G(\).).15 E/F4 10.95/Times-Bold@0 SF
+(SIMPLE COMMAND EXP)72 314.4 Q(ANSION)-.81 E F1 .772(When the shell e)
+108 326.4 R -.15(xe)-.15 G .772
+(cutes a simple command, it performs the follo).15 F .772(wing e)-.25 F
+.773(xpansions, assignments, and redi-)-.15 F
+(rections, from left to right, in the follo)108 338.4 Q(wing order)-.25
+E(.)-.55 E(1.)108 355.2 Q 1.849(The w)144 355.2 R 1.849
+(ords 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 367.2 Q -.15(ve)-.2 G 2.5(df).15 G
+(or later processing.)-2.5 E(2.)108 384 Q .179(The w)144 384 R .179
+(ords that are not v)-.1 F .179
+(ariable assignments or redirections are e)-.25 F 2.68(xpanded. If)-.15
+F(an)2.68 E 2.68(yw)-.15 G .18(ords remain af-)-2.78 F .347(ter e)144
+396 R .347(xpansion, the \214rst w)-.15 F .347(ord is tak)-.1 F .347
+(en to be the name of the command and the remaining w)-.1 F .346
+(ords are)-.1 F(the ar)144 408 Q(guments.)-.18 E(3.)108 424.8 Q
+(Redirections are performed as described abo)144 424.8 Q .3 -.15(ve u)
+-.15 H(nder).15 E F3(REDIRECTION)2.5 E/F5 9/Times-Roman@0 SF(.)A F1(4.)
+108 441.6 Q .716(The te)144 441.6 R .717(xt after the)-.15 F F2(=)3.217
+E F1 .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 453.6 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 465.6 Q
+.586(If no command name results, the v)108 482.4 R .586
+(ariable assignments af)-.25 F .586(fect the current shell en)-.25 F
+3.087(vironment. In)-.4 F .587(the case of)3.087 F .371(such a command \
+\(one that consists only of assignment statements and redirections\), a\
+ssignment statements)108 494.4 R .835
+(are performed before redirections.)108 506.4 R .835(Otherwise, the v)
+5.835 F .835(ariables are added to the en)-.25 F .835
+(vironment of the e)-.4 F -.15(xe)-.15 G(cuted).15 E .839
+(command and do not af)108 518.4 R .838(fect the current shell en)-.25 F
+3.338(vironment. If)-.4 F(an)3.338 E 3.338(yo)-.15 G 3.338(ft)-3.338 G
+.838(he assignments attempts to assign a)-3.338 F -.25(va)108 530.4 S
+(lue to a readonly v).25 E(ariable, an error occurs, and the command e)
+-.25 E(xits with a non-zero status.)-.15 E .149
+(If no command name results, redirections are performed, b)108 547.2 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 559.2
+Q(xit with a non-zero status.)-.15 E 1.064
+(If there is a command name left after e)108 576 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 588
+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 600 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 612 Q
+(xits with a zero status.)-.15 E F4(COMMAND EXECUTION)72 628.8 Q F1 .546
+(After a command has been split into w)108 640.8 R .547
+(ords, if it results in a simple command and an optional list of ar)-.1
+F(gu-)-.18 E(ments, the shell performs the follo)108 652.8 Q
+(wing actions.)-.25 E .379(If the command name contains no slashes, the\
+ shell attempts to locate it.)108 669.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 681.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 F3(FUNCTIONS)
+2.746 E F5(.)A F1 .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 693.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 710.4 R .309
+(uiltin, and contains no slashes,)-.2 F F2(bash)2.809 E F1 .309
+(searches each element of)2.809 F(the)108 722.4 Q F3 -.666(PA)3.162 G
+(TH)-.189 E F1 .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 F1 .663
+(uses a hash table to remember)3.162 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(39)185.955 E 0 Cg EP
+%%Page: 40 40
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .859(the full pathnames of e)108 84 R -.15(xe)-.15
+G .858(cutable \214les \(see).15 F/F2 10/Times-Bold@0 SF(hash)3.358 E F1
+(under)3.358 E/F3 9/Times-Bold@0 SF .858(SHELL B)3.358 F(UIL)-.09 E .858
+(TIN COMMANDS)-.828 F F1(belo)3.108 E 3.358(w\). Bash)-.25 F(per)3.358 E
+(-)-.2 E .883(forms a full search of the directories in)108 96 R F3
+-.666(PA)3.383 G(TH)-.189 E F1 .883
+(only if the command is not found in the hash table.)3.133 F .884
+(If the)5.884 F .956(search is unsuccessful, the shell searches for a d\
+e\214ned shell function named)108 108 R F2(command_not_f)3.455 E
+(ound_han-)-.25 E(dle)108 120 Q F1 6.005(.I)C 3.505(ft)-6.005 G 1.005
+(hat function e)-3.505 F 1.005(xists, it is in)-.15 F -.2(vo)-.4 G -.1
+(ke).2 G 3.506(di).1 G 3.506(nas)-3.506 G 1.006(eparate e)-3.506 F -.15
+(xe)-.15 G 1.006(cution en).15 F 1.006
+(vironment with the original command)-.4 F .256
+(and the original command')108 132 R 2.756(sa)-.55 G -.18(rg)-2.756 G
+.256(uments as its ar).18 F .256(guments, and the function')-.18 F 2.755
+(se)-.55 G .255(xit status becomes the e)-2.905 F .255(xit sta-)-.15 F
+.263(tus of that subshell.)108 144 R .263(If that function is not de\
+\214ned, the shell prints an error message and returns an e)5.263 F .263
+(xit sta-)-.15 F(tus of 127.)108 156 Q 1.089(If the search is successfu\
+l, or if the command name contains one or more slashes, the shell e)108
+172.8 R -.15(xe)-.15 G 1.089(cutes the).15 F .197
+(named program in a separate e)108 184.8 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 196.8 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.049(If this e)108 213.6 R
+-.15(xe)-.15 G 1.049(cution f).15 F 1.049
+(ails because the \214le is not in e)-.1 F -.15(xe)-.15 G 1.048
+(cutable format, and the \214le is not a directory).15 F 3.548(,i)-.65 G
+3.548(ti)-3.548 G 3.548(sa)-3.548 G(s-)-3.548 E .143(sumed to be a)108
+225.6 R F0 .143(shell script)2.643 F F1 2.643(,a\214)C .143
+(le containing shell commands, and the shell creates a ne)-2.643 F 2.643
+(wi)-.25 G .143(nstance of itself to)-2.643 F -.15(exe)108 237.6 S .322
+(cute it.).15 F .322(Bash tries to determine whether the \214le is a te)
+5.322 F .321(xt \214le or a binary)-.15 F 2.821(,a)-.65 G .321
+(nd will not e)-2.821 F -.15(xe)-.15 G .321(cute \214les it de-).15 F
+.503(termines to be binaries.)108 249.6 R .503
+(This subshell reinitializes itself, so that the ef)5.503 F .503
+(fect is as if a ne)-.25 F 3.003(ws)-.25 G .503(hell had been in-)-3.003
+F -.2(vo)108 261.6 S -.1(ke).2 G 3.474(dt).1 G 3.474(oh)-3.474 G .973
+(andle the script, with the e)-3.474 F .973
+(xception that the locations of commands remembered by the parent)-.15 F
+(\(see)108 273.6 Q F2(hash)2.5 E F1(belo)2.5 E 2.5(wu)-.25 G(nder)-2.5 E
+F3(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F1
+(are retained by the child.)2.25 E .347(If the program is a \214le be)
+108 290.4 R .347(ginning with)-.15 F F2(#!)2.847 E F1 2.847(,t)C .348(h\
+e remainder of the \214rst line speci\214es an interpreter for the pro-)
+-2.847 F 3.178(gram. The)108 302.4 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 .206(format themselv)
+108 314.4 R 2.706(es. The)-.15 F(ar)2.706 E .206
+(guments to the interpreter consist of a single optional ar)-.18 F .206
+(gument follo)-.18 F .206(wing the in-)-.25 F .268
+(terpreter name on the \214rst line of the program, follo)108 326.4 R
+.267(wed by the name of the program, follo)-.25 F .267(wed by the com-)
+-.25 F(mand ar)108 338.4 Q(guments, if an)-.18 E -.65(y.)-.15 G/F4 10.95
+/Times-Bold@0 SF(COMMAND EXECUTION ENVIR)72 355.2 Q(ONMENT)-.329 E F1
+(The shell has an)108 367.2 Q F0 -.2(ex)2.5 G(ecution en).2 E(vir)-.4 E
+(onment)-.45 E F1 2.5(,w)C(hich consists of the follo)-2.5 E(wing:)-.25
+E<83>108 384 Q 1.257(Open \214les inherited by the shell at in)144 384 R
+-.2(vo)-.4 G 1.258
+(cation, as modi\214ed by redirections supplied to the).2 F F2(exec)
+3.758 E F1 -.2(bu)144 396 S(iltin.).2 E<83>108 412.8 Q(The current w)144
+412.8 Q(orking directory as set by)-.1 E F2(cd)2.5 E F1(,)A F2(pushd)2.5
+E F1 2.5(,o)C(r)-2.5 E F2(popd)2.5 E F1 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<83>108
+429.6 Q(The \214le creation mode mask as set by)144 429.6 Q F2(umask)2.5
+E F1(or inherited from the shell')2.5 E 2.5(sp)-.55 G(arent.)-2.5 E<83>
+108 446.4 Q(Current traps set by)144 446.4 Q F2(trap)2.5 E F1(.)A<83>108
+463.2 Q .152(Shell parameters that are set by v)144 463.2 R .152
+(ariable assignment or with)-.25 F F2(set)2.652 E F1 .152
+(or inherited from the shell')2.652 F 2.651(sp)-.55 G(arent)-2.651 E
+(in the en)144 475.2 Q(vironment.)-.4 E<83>108 492 Q
+(Shell functions de\214ned during e)144 492 Q -.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<83>108 508.8 Q
+(Options enabled at in)144 508.8 Q -.2(vo)-.4 G(cation \(either by def)
+.2 E(ault or with command-line ar)-.1 E(guments\) or by)-.18 E F2(set)
+2.5 E F1(.)A<83>108 525.6 Q(Options enabled by)144 525.6 Q F2(shopt)2.5
+E F1(.)A<83>108 542.4 Q(Shell aliases de\214ned with)144 542.4 Q F2
+(alias)2.5 E F1(.)A<83>108 559.2 Q -1.11(Va)144 559.2 S
+(rious process IDs, including those of background jobs, the v)1.11 E
+(alue of)-.25 E F2($$)2.5 E F1 2.5(,a)C(nd the v)-2.5 E(alue of)-.25 E
+F3(PPID)2.5 E/F5 9/Times-Roman@0 SF(.)A F1 .426
+(When a simple command other than a b)108 576 R .427
+(uiltin or shell function is to be e)-.2 F -.15(xe)-.15 G .427
+(cuted, it is in).15 F -.2(vo)-.4 G -.1(ke).2 G 2.927(di).1 G 2.927(nas)
+-2.927 G(eparate)-2.927 E -.15(exe)108 588 S .134(cution en).15 F .134
+(vironment that consists of the follo)-.4 F 2.634(wing. Unless)-.25 F
+.133(otherwise noted, the v)2.634 F .133(alues are inherited from)-.25 F
+(the shell.)108 600 Q<83>108 616.8 Q .817(The shell')144 616.8 R 3.317
+(so)-.55 G .818(pen \214les, plus an)-3.317 F 3.318(ym)-.15 G .818
+(odi\214cations and additions speci\214ed by redirections to the com-)
+-3.318 F(mand.)144 628.8 Q<83>108 645.6 Q(The current w)144 645.6 Q
+(orking directory)-.1 E(.)-.65 E<83>108 662.4 Q
+(The \214le creation mode mask.)144 662.4 Q<83>108 679.2 Q .729(Shell v)
+144 679.2 R .729(ariables and functions mark)-.25 F .729(ed for e)-.1 F
+.728(xport, along with v)-.15 F .728(ariables e)-.25 F .728
+(xported for the command,)-.15 F(passed in the en)144 691.2 Q
+(vironment.)-.4 E(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(40)
+185.955 E 0 Cg EP
+%%Page: 41 41
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E<83>108 84 Q -.35(Tr)144 84 S .131
+(aps caught by the shell are reset to the v).35 F .131
+(alues inherited from the shell')-.25 F 2.631(sp)-.55 G .132
+(arent, and traps ignored)-2.631 F(by the shell are ignored.)144 96 Q
+2.5(Ac)108 112.8 S(ommand in)-2.5 E -.2(vo)-.4 G -.1(ke).2 G 2.5(di).1 G
+2.5(nt)-2.5 G(his separate en)-2.5 E(vironment cannot af)-.4 E
+(fect the shell')-.25 E 2.5(se)-.55 G -.15(xe)-2.65 G(cution en).15 E
+(vironment.)-.4 E(A)108 129.6 Q F0(subshell)2.5 E F1(is a cop)2.5 E 2.5
+(yo)-.1 G 2.5(ft)-2.5 G(he shell process.)-2.5 E .577(Command substitut\
+ion, commands grouped with parentheses, and asynchronous commands are i\
+n)108 146.4 R -.2(vo)-.4 G -.1(ke).2 G 3.077(di).1 G(n)-3.077 E 2.744
+(as)108 158.4 S .244(ubshell en)-2.744 F .244
+(vironment that is a duplicate of the shell en)-.4 F .245(vironment, e)
+-.4 F .245(xcept that traps caught by the shell are)-.15 F .359
+(reset to the v)108 170.4 R .358
+(alues that the shell inherited from its parent at in)-.25 F -.2(vo)-.4
+G 2.858(cation. Builtin).2 F .358(commands that are in)2.858 F -.2(vo)
+-.4 G -.1(ke).2 G(d).1 E .113(as part of a pipeline, e)108 182.4 R .114
+(xcept possibly in the last element depending on the v)-.15 F .114
+(alue of the)-.25 F/F2 10/Times-Bold@0 SF(lastpipe)2.614 E F1 .114
+(shell option,)2.614 F .692(are also e)108 194.4 R -.15(xe)-.15 G .692
+(cuted in a subshell en).15 F 3.191(vironment. Changes)-.4 F .691
+(made to the subshell en)3.191 F .691(vironment cannot af)-.4 F .691
+(fect the)-.25 F(shell')108 206.4 Q 2.5(se)-.55 G -.15(xe)-2.65 G
+(cution en).15 E(vironment.)-.4 E .535
+(When the shell is in posix mode, subshells spa)108 223.2 R .535
+(wned to e)-.15 F -.15(xe)-.15 G .535
+(cute command substitutions inherit the v).15 F .535(alue of)-.25 F(the)
+108 235.2 Q F2<ad65>2.636 E F1 .136(option from their parent shell.)
+2.636 F .135(When not in posix mode,)5.135 F F2(bash)2.635 E F1 .135
+(clears the)2.635 F F2<ad65>2.635 E F1 .135(option in such subshells.)
+2.635 F .613(See the description of the)108 247.2 R F2(inherit_err)3.113
+E(exit)-.18 E F1 .613(shell option belo)3.113 F 3.114(wf)-.25 G .614
+(or ho)-3.114 F 3.114(wt)-.25 G 3.114(oc)-3.114 G .614(ontrol this beha)
+-3.114 F .614(vior when not in)-.2 F(posix mode.)108 259.2 Q .405
+(If a command is follo)108 276 R .405(wed by a)-.25 F F2(&)2.905 E F1
+.404(and job control is not acti)2.905 F -.15(ve)-.25 G 2.904(,t).15 G
+.404(he def)-2.904 F .404(ault standard input for the command)-.1 F
+1.414(is the empty \214le)108 288 R F0(/de)5.58 E(v/null)-.15 E F1 6.414
+(.O)1.666 G 1.414(therwise, the in)-6.414 F -.2(vo)-.4 G -.1(ke).2 G
+3.915(dc).1 G 1.415
+(ommand inherits the \214le descriptors of the calling)-3.915 F
+(shell as modi\214ed by redirections.)108 300 Q/F3 10.95/Times-Bold@0 SF
+(ENVIR)72 316.8 Q(ONMENT)-.329 E F1 2.344(When a program is in)108 328.8
+R -.2(vo)-.4 G -.1(ke).2 G 4.843(di).1 G 4.843(ti)-4.843 G 4.843(sg)
+-4.843 G -2.15 -.25(iv e)-4.843 H 4.843(na).25 G 4.843(na)-4.843 G 2.343
+(rray of strings called the)-4.843 F F0(en)5.033 E(vir)-.4 E(onment)-.45
+E F1 7.343(.T).68 G 2.343(his is a list of)-7.343 F F0(name)108 340.8 Q
+F1<ad>A F0(value)A F1(pairs, of the form)2.5 E F0(name)2.86 E F1(=)A F0
+(value)A F1(.).18 E .438(The shell pro)108 357.6 R .438(vides se)-.15 F
+-.15(ve)-.25 G .438(ral w).15 F .438(ays to manipulate the en)-.1 F
+2.938(vironment. On)-.4 F(in)2.938 E -.2(vo)-.4 G .438
+(cation, the shell scans its o).2 F .439(wn en-)-.25 F 2.033(vironment \
+and creates a parameter for each name found, automatically marking it f\
+or)108 369.6 R F0 -.2(ex)4.533 G(port).2 E F1 2.033(to child)5.213 F
+3.693(processes. Ex)108 381.6 R 1.193(ecuted commands inherit the en)
+-.15 F 3.693(vironment. The)-.4 F F2(export)3.693 E F1(,)A F2(declar)
+3.693 E 3.694<65ad>-.18 G(x)-3.694 E F1 3.694(,a)C(nd)-3.694 E F2(unset)
+3.694 E F1(commands)3.694 E .047(modify the en)108 393.6 R .047
+(vironment by adding and deleting parameters and functions.)-.4 F .046
+(If the v)5.046 F .046(alue of a parameter in the)-.25 F(en)108 405.6 Q
+.656(vironment is modi\214ed, the ne)-.4 F 3.156(wv)-.25 G .656
+(alue automatically becomes part of the en)-3.406 F .657
+(vironment, replacing the old.)-.4 F .155(The en)108 417.6 R .155
+(vironment inherited by an)-.4 F 2.654(ye)-.15 G -.15(xe)-2.804 G .154
+(cuted command consists of the shell').15 F 2.654(si)-.55 G .154
+(nitial en)-2.654 F .154(vironment, whose v)-.4 F(al-)-.25 E .789
+(ues may be modi\214ed in the shell, less an)108 429.6 R 3.289(yp)-.15 G
+.789(airs remo)-3.289 F -.15(ve)-.15 G 3.289(db).15 G 3.289(yt)-3.289 G
+(he)-3.289 E F2(unset)3.289 E F1(or)3.289 E F2 .789(export \255n)3.289 F
+F1 .789(commands, plus an)3.289 F(y)-.15 E(additions via the)108 441.6 Q
+F2(export)2.5 E F1(and)2.5 E F2(declar)2.5 E 2.5<65ad>-.18 G(x)-2.5 E F1
+(commands.)2.5 E .349(If an)108 458.4 R 2.849(yp)-.15 G .349
+(arameter assignments, as described abo)-2.849 F .649 -.15(ve i)-.15 H
+(n).15 E/F4 9/Times-Bold@0 SF -.666(PA)2.849 G(RAMETERS).666 E/F5 9
+/Times-Roman@0 SF(,)A F1 .349(appear before a)2.599 F F0 .349
+(simple command)3.189 F F1 2.849(,t).77 G(he)-2.849 E -.25(va)108 470.4
+S .442(riable assignments are part of that command').25 F 2.942(se)-.55
+G -.4(nv)-2.942 G .442(ironment for as long as it e).4 F -.15(xe)-.15 G
+2.942(cutes. These).15 F(assignment)2.942 E .014(statements af)108 482.4
+R .014(fect only the en)-.25 F .014(vironment seen by that command.)-.4
+F .013(If these assignments precede a call to a shell)5.014 F
+(function, the v)108 494.4 Q(ariables are local to the function and e)
+-.25 E(xported to that function')-.15 E 2.5(sc)-.55 G(hildren.)-2.5 E
+.81(If the)108 511.2 R F2<ad6b>3.31 E F1 .81(option is set \(see the)
+3.31 F F2(set)3.31 E F1 -.2(bu)3.31 G .81(iltin command belo).2 F .81
+(w\), then)-.25 F F0(all)3.64 E F1 .81
+(parameter assignments are placed in)3.82 F(the en)108 523.2 Q
+(vironment for a command, not just those that precede the command name.)
+-.4 E(When)108 540 Q F2(bash)3.339 E F1(in)3.339 E -.2(vo)-.4 G -.1(ke)
+.2 G 3.339(sa).1 G 3.339(ne)-3.339 G .839(xternal command, the v)-3.489
+F(ariable)-.25 E F2(_)3.339 E F1 .839
+(is set to the full pathname of the command and)3.339 F
+(passed to that command in its en)108 552 Q(vironment.)-.4 E F3(EXIT ST)
+72 568.8 Q -1.04(AT)-.986 G(US)1.04 E F1 .15(The e)108 580.8 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 F0(waitpid)2.651 E F1 .151
+(system call or equi)2.651 F -.25(va)-.25 G .151(lent func-).25 F 2.848
+(tion. Exit)108 592.8 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 604.8 Q 5.506(.E)-.65 G
+.506(xit statuses from shell b)-5.506 F .507
+(uiltins and compound commands are also limited to this range.)-.2 F
+(Under)5.507 E(certain circumstances, the shell will use special v)108
+616.8 Q(alues to indicate speci\214c f)-.25 E(ailure modes.)-.1 E -.15
+(Fo)108 633.6 S 3.435(rt).15 G .935(he shell')-3.435 F 3.435(sp)-.55 G
+.935(urposes, a command which e)-3.435 F .934(xits with a zero e)-.15 F
+.934(xit status has succeeded.)-.15 F .934(So while an e)5.934 F(xit)
+-.15 E(status of zero indicates success, a non-zero e)108 645.6 Q
+(xit status indicates f)-.15 E(ailure.)-.1 E
+(When a command terminates on a f)108 662.4 Q(atal signal)-.1 E F0(N)2.5
+E F1(,)A F2(bash)2.5 E F1(uses the v)2.5 E(alue of 128+)-.25 E F0(N)A F1
+(as the e)2.5 E(xit status.)-.15 E .404
+(If a command is not found, the child process created to e)108 679.2 R
+-.15(xe)-.15 G .404(cute it returns a status of 127.).15 F .405
+(If a command is)5.405 F(found b)108 691.2 Q(ut is not e)-.2 E -.15(xe)
+-.15 G(cutable, the return status is 126.).15 E(If a command f)108 708 Q
+(ails because of an error during e)-.1 E(xpansion or redirection, the e)
+-.15 E(xit status is greater than zero.)-.15 E .081(Shell b)108 724.8 R
+.081(uiltin commands return a status of 0 \()-.2 F F0(true)A F1 2.581
+(\)i)C 2.581(fs)-2.581 G .08(uccessful, and non-zero \()-2.581 F F0
+(false)A F1 2.58(\)i)C 2.58(fa)-2.58 G 2.58(ne)-2.58 G .08
+(rror occurs while)-2.58 F(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(41)185.955 E 0 Cg EP
+%%Page: 42 42
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(the)108 84 Q 2.967(ye)-.15 G -.15(xe)-3.117 G 2.967
+(cute. All).15 F -.2(bu)2.967 G .467(iltins return an e).2 F .468
+(xit status of 2 to indicate incorrect usage, generally in)-.15 F -.25
+(va)-.4 G .468(lid options or).25 F(missing ar)108 96 Q(guments.)-.18 E
+(The e)108 112.8 Q(xit status of the last command is a)-.15 E -.25(va)
+-.2 G(ilable in the special parameter $?.).25 E/F2 10/Times-Bold@0 SF
+(Bash)108 129.6 Q F1 .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 141.6
+Q(xits with a non-zero v)-.15 E 2.5(alue. See)-.25 F(also the)2.5 E F2
+(exit)2.5 E F1 -.2(bu)2.5 G(iltin command belo).2 E -.65(w.)-.25 G/F3
+10.95/Times-Bold@0 SF(SIGN)72 158.4 Q(ALS)-.219 E F1(When)108 170.4 Q F2
+(bash)2.502 E F1 .002(is interacti)2.502 F -.15(ve)-.25 G 2.502(,i).15 G
+2.502(nt)-2.502 G .002(he absence of an)-2.502 F 2.502(yt)-.15 G .002
+(raps, it ignores)-2.502 F/F4 9/Times-Bold@0 SF(SIGTERM)2.502 E F1 .002
+(\(so that)2.252 F F2 .002(kill 0)2.502 F F1 .002(does not kill an in-)
+2.502 F(teracti)108 182.4 Q .926 -.15(ve s)-.25 H .626
+(hell\), and catches and handles).15 F F4(SIGINT)3.126 E F1 .626
+(\(so that the)2.876 F F2(wait)3.126 E F1 -.2(bu)3.126 G .625
+(iltin is interruptible\).).2 F(When)5.625 E F2(bash)3.125 E F1(re-)
+3.125 E(cei)108 194.4 Q -.15(ve)-.25 G(s).15 E F4(SIGINT)2.95 E/F5 9
+/Times-Roman@0 SF(,)A F1 .45(it breaks out of an)2.7 F 2.95(ye)-.15 G
+-.15(xe)-3.1 G .45(cuting loops.).15 F .45(In all cases,)5.45 F F2(bash)
+2.95 E F1(ignores)2.95 E F4(SIGQ)2.95 E(UIT)-.09 E F5(.)A F1 .45
+(If job control is)4.95 F(in ef)108 206.4 Q(fect,)-.25 E F2(bash)2.5 E
+F1(ignores)2.5 E F4(SIGTTIN)2.5 E F5(,)A F4(SIGTT)2.25 E(OU)-.162 E F5
+(,)A F1(and)2.25 E F4(SIGTSTP)2.5 E F5(.)A F1(The)108 223.2 Q F2(trap)
+2.5 E F1 -.2(bu)2.5 G(iltin modi\214es the shell').2 E 2.5(ss)-.55 G
+(ignal handling, as described belo)-2.5 E -.65(w.)-.25 G(Non-b)108 240 Q
+.613(uiltin commands)-.2 F F2(bash)3.113 E F1 -.15(exe)3.113 G .613
+(cutes ha).15 F .913 -.15(ve s)-.2 H .613(ignal handlers set to the v)
+.15 F .612(alues inherited by the shell from its)-.25 F .064
+(parent, unless)108 252 R F2(trap)2.564 E F1 .065(sets them to be ignor\
+ed, in which case the child process will ignore them as well.)2.564 F
+(When)5.065 E .682(job control is not in ef)108 264 R .682
+(fect, asynchronous commands ignore)-.25 F F4(SIGINT)3.182 E F1(and)
+2.932 E F4(SIGQ)3.182 E(UIT)-.09 E F1 .682(in addition to these in-)
+2.932 F 1.139(herited handlers.)108 276 R 1.139
+(Commands run as a result of command substitution ignore the k)6.139 F
+-.15(ey)-.1 G 1.14(board-generated job).15 F(control signals)108 288 Q
+F4(SIGTTIN)2.5 E F5(,)A F4(SIGTT)2.25 E(OU)-.162 E F5(,)A F1(and)2.25 E
+F4(SIGTSTP)2.5 E F5(.)A F1 2.046(The shell e)108 304.8 R 2.046
+(xits by def)-.15 F 2.045(ault upon receipt of a)-.1 F F4(SIGHUP)4.545 E
+F5(.)A F1 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 316.8 Q F1
+.539(to all jobs, running or stopped.)2.789 F .54(The shell sends)5.54 F
+F4(SIGCONT)3.04 E F1 .54(to stopped jobs to ensure that the)2.79 F 3.04
+(yr)-.15 G(e-)-3.04 E(cei)108 328.8 Q 1.045 -.15(ve t)-.25 H(he).15 E F4
+(SIGHUP)3.245 E F1(\(see)2.995 E F4 .745(JOB CONTR)3.245 F(OL)-.27 E F1
+(belo)2.995 E 3.245(wf)-.25 G .745
+(or more information about running and stopped jobs\).)-3.245 F -.8(To)
+5.745 G(pre)108 340.8 Q -.15(ve)-.25 G .441
+(nt the shell from sending the signal to a particular job, remo).15 F
+.742 -.15(ve i)-.15 H 2.942(tf).15 G .442(rom the jobs table with the)
+-2.942 F F2(diso)2.942 E(wn)-.1 E F1 -.2(bu)108 352.8 S(iltin \(see).2 E
+F4(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F1(belo)2.25 E
+(w\) or mark it not to recei)-.25 E -.15(ve)-.25 G F4(SIGHUP)2.65 E F1
+(using)2.25 E F2(diso)2.5 E(wn \255h)-.1 E F1(.)A .555(If the)108 369.6
+R F2(huponexit)3.055 E F1 .555(shell option has been set using)3.055 F
+F2(shopt)3.054 E F1(,)A F2(bash)3.054 E F1 .554(sends a)3.054 F F4
+(SIGHUP)3.054 E F1 .554(to all jobs when an interac-)2.804 F(ti)108
+381.6 Q .3 -.15(ve l)-.25 H(ogin shell e).15 E(xits.)-.15 E(If)108 398.4
+Q F2(bash)2.629 E F1 .129(is w)2.629 F .129
+(aiting for a command to complete and recei)-.1 F -.15(ve)-.25 G 2.629
+(sas).15 G .129(ignal for which a trap has been set, it will not)-2.629
+F -.15(exe)108 410.4 S .952(cute the trap until the command completes.)
+.15 F(If)5.952 E F2(bash)3.452 E F1 .952(is w)3.452 F .952
+(aiting for an asynchronous command via the)-.1 F F2(wait)108 422.4 Q F1
+-.2(bu)2.986 G .486(iltin, and it recei).2 F -.15(ve)-.25 G 2.986(sas)
+.15 G .486(ignal for which a trap has been set, the)-2.986 F F2(wait)
+2.987 E F1 -.2(bu)2.987 G .487(iltin will return immediately).2 F
+(with an e)108 434.4 Q
+(xit status greater than 128, immediately after which the shell e)-.15 E
+-.15(xe)-.15 G(cutes the trap.).15 E .499
+(When job control is not enabled, and)108 451.2 R F2(bash)2.998 E F1
+.498(is w)2.998 F .498(aiting for a fore)-.1 F .498
+(ground command to complete, the shell re-)-.15 F(cei)108 463.2 Q -.15
+(ve)-.25 G 3.213(sk).15 G -.15(ey)-3.313 G .713
+(board-generated signals such as).15 F F4(SIGINT)3.213 E F1 .713
+(\(usually generated by)2.963 F F2<0043>3.213 E F1 3.213(\)t)C .714
+(hat users commonly intend)-3.213 F .455(to send to that command.)108
+475.2 R .454(This happens because the shell and the command are in the \
+same process group)5.455 F .724(as the terminal, and)108 487.2 R F2
+<0043>3.224 E F1(sends)3.224 E F4(SIGINT)3.224 E F1 .724
+(to all processes in that process group.)2.974 F(Since)5.724 E F2(bash)
+3.224 E F1 .724(does not enable)3.224 F 1.243(job control by def)108
+499.2 R 1.243(ault when the shell is not interacti)-.1 F -.15(ve)-.25 G
+3.742(,t).15 G 1.242(his scenario is most common in non-interacti)-3.742
+F -.15(ve)-.25 G(shells.)108 511.2 Q .096
+(When job control is enabled, and)108 528 R F2(bash)2.596 E F1 .097
+(is w)2.597 F .097(aiting for a fore)-.1 F .097
+(ground command to complete, the shell does not)-.15 F(recei)108 540 Q
+.975 -.15(ve k)-.25 H -.15(ey).05 G .675(board-generated signals, becau\
+se it is not in the same process group as the terminal.).15 F .675
+(This sce-)5.675 F .295(nario is most common in interacti)108 552 R .595
+-.15(ve s)-.25 H .295(hells, where).15 F F2(bash)2.796 E F1 .296
+(attempts to enable job control by def)2.796 F 2.796(ault. See)-.1 F F4
+(JOB)2.796 E(CONTR)108 564 Q(OL)-.27 E F1(belo)2.25 E 2.5(wf)-.25 G
+(or more information about process groups.)-2.5 E .994
+(When job control is not enabled, and)108 580.8 R F2(bash)3.493 E F1
+(recei)3.493 E -.15(ve)-.25 G(s).15 E F4(SIGINT)3.493 E F1 .993(while w)
+3.243 F .993(aiting for a fore)-.1 F .993(ground command, it)-.15 F -.1
+(wa)108 592.8 S(its until that fore).1 E
+(ground command terminates and then decides what to do about the)-.15 E
+F4(SIGINT)2.5 E F5(:)A F1(1.)108 609.6 Q .024
+(If the command terminates due to the)144 609.6 R F4(SIGINT)2.524 E F5
+(,)A F2(bash)2.274 E F1 .025(concludes that the user meant to send the)
+2.525 F F4(SIG-)2.525 E(INT)144 621.6 Q F1 .3
+(to the shell as well, and acts on the)2.55 F F4(SIGINT)2.8 E F1 .3
+(\(e.g., by running a)2.55 F F4(SIGINT)2.8 E F1 .3(trap, e)2.55 F .3
+(xiting a non-in-)-.15 F(teracti)144 633.6 Q .3 -.15(ve s)-.25 H
+(hell, or returning to the top le).15 E -.15(ve)-.25 G 2.5(lt).15 G 2.5
+(or)-2.5 G(ead a ne)-2.5 E 2.5(wc)-.25 G(ommand\).)-2.5 E(2.)108 650.4 Q
+.288(If the command does not terminate due to)144 650.4 R F4(SIGINT)
+2.788 E F5(,)A F1 .288(the program handled the)2.538 F F4(SIGINT)2.789 E
+F1 .289(itself and did)2.539 F .728(not treat it as a f)144 662.4 R .728
+(atal signal.)-.1 F .728(In that case,)5.728 F F2(bash)3.228 E F1 .728
+(does not treat)3.228 F F4(SIGINT)3.228 E F1 .728(as a f)2.978 F .728
+(atal signal, either)-.1 F 3.228(,i)-.4 G(n-)-3.228 E .771
+(stead assuming that the)144 674.4 R F4(SIGINT)3.271 E F1 -.1(wa)3.021 G
+3.271(su).1 G .771(sed as part of the program')-3.271 F 3.272(sn)-.55 G
+.772(ormal operation \(e.g., emacs)-3.272 F .41
+(uses it to abort editing commands\) or deliberately discarded.)144
+686.4 R(Ho)5.409 E(we)-.25 E -.15(ve)-.25 G -.4(r,).15 G F2(bash)3.309 E
+F1 .409(will run an)2.909 F 2.909(yt)-.15 G .409(rap set)-2.909 F(on)144
+698.4 Q F4(SIGINT)3.788 E F5(,)A F1 1.288(as it does with an)3.538 F
+3.788(yo)-.15 G 1.288(ther trapped signal it recei)-3.788 F -.15(ve)-.25
+G 3.789(sw).15 G 1.289(hile it is w)-3.789 F 1.289(aiting for the fore-)
+-.1 F(ground command to complete, for compatibility)144 710.4 Q(.)-.65 E
+.49(When job control is enabled,)108 727.2 R F2(bash)2.99 E F1 .49
+(does not recei)2.99 F .79 -.15(ve k)-.25 H -.15(ey).05 G .49
+(board-generated signals such as).15 F F4(SIGINT)2.99 E F1 .49
+(while it is)2.74 F(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(42)
+185.955 E 0 Cg EP
+%%Page: 43 43
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E -.1(wa)108 84 S .646(iting for a fore).1 F .646
+(ground command.)-.15 F .646(An interacti)5.646 F .946 -.15(ve s)-.25 H
+.647(hell does not pay attention to the).15 F/F2 9/Times-Bold@0 SF
+(SIGINT)3.147 E/F3 9/Times-Roman@0 SF(,)A F1 -2.15 -.25(ev e)2.897 H
+3.147(ni).25 G 3.147(ft)-3.147 G(he)-3.147 E(fore)108 96 Q .57
+(ground command terminates as a result, other than noting its e)-.15 F
+.57(xit status.)-.15 F .57(If the shell is not interacti)5.57 F -.15(ve)
+-.25 G(,).15 E 1.207(and the fore)108 108 R 1.207
+(ground command terminates due to the)-.15 F F2(SIGINT)3.707 E F3(,)A/F4
+10/Times-Bold@0 SF(bash)3.458 E F1 1.208(pretends it recei)3.708 F -.15
+(ve)-.25 G 3.708(dt).15 G(he)-3.708 E F2(SIGINT)3.708 E F1(itself)3.458
+E(\(scenario 1 abo)108 120 Q -.15(ve)-.15 G(\), for compatibility).15 E
+(.)-.65 E/F5 10.95/Times-Bold@0 SF(JOB CONTR)72 136.8 Q(OL)-.329 E F0
+-.25(Jo)108 148.8 S 3.369(bc).25 G(ontr)-3.369 E(ol)-.45 E F1 .868
+(refers to the ability to selecti)3.879 F -.15(ve)-.25 G .868
+(ly stop \().15 F F0(suspend)A F1 3.368(\)t)C .868(he e)-3.368 F -.15
+(xe)-.15 G .868(cution of processes and continue \().15 F F0 -.37(re)C
+(-).37 E(sume)108 160.8 Q F1 2.664(\)t)C .164(heir e)-2.664 F -.15(xe)
+-.15 G .164(cution at a later point.).15 F 2.665(Au)5.165 G .165
+(ser typically emplo)-2.665 F .165(ys this f)-.1 F .165
+(acility via an interacti)-.1 F .465 -.15(ve i)-.25 H(nterf).15 E .165
+(ace sup-)-.1 F(plied jointly by the operating system k)108 172.8 Q
+(ernel')-.1 E 2.5(st)-.55 G(erminal dri)-2.5 E -.15(ve)-.25 G 2.5(ra).15
+G(nd)-2.5 E F4(bash)2.5 E F1(.)A .599(The shell associates a)108 189.6 R
+F0(job)4.839 E F1 .599(with each pipeline.)3.329 F .599(It k)5.599 F
+.599(eeps a table of currently e)-.1 F -.15(xe)-.15 G .599
+(cuting jobs, which the).15 F F4(jobs)3.098 E F1 1.001
+(command will display)108 201.6 R 6.001(.E)-.65 G 1.001(ach job has a)
+-6.001 F F0 1.001(job number)3.501 F F1 3.501(,w)C(hich)-3.501 E F4
+(jobs)3.501 E F1 1.002(displays between brack)3.502 F 3.502(ets. Job)-.1
+F(numbers)3.502 E(start at 1.)108 213.6 Q(When)5 E F4(bash)2.5 E F1
+(starts a job asynchronously \(in the)2.5 E F0(bac)2.77 E(kgr)-.2 E
+(ound)-.45 E F1(\), it prints a line that looks lik).77 E(e:)-.1 E
+([1] 25647)144 230.4 Q .241(indicating that this job is job number 1 an\
+d that the process ID of the last process in the pipeline associated)108
+247.2 R .732(with this job is 25647.)108 259.2 R .733
+(All of the processes in a single pipeline are members of the same job)
+5.732 F(.)-.4 E F4(Bash)5.733 E F1(uses)3.233 E(the)108 271.2 Q F0(job)
+4.24 E F1(abstraction as the basis for job control.)2.73 E 2.374 -.8
+(To f)108 288 T .774(acilitate the implementation of the user interf).7
+F .773(ace to job control, each process has a)-.1 F F0(pr)3.273 E .773
+(ocess gr)-.45 F .773(oup ID)-.45 F F1(,)A .368
+(and the operating system maintains the notion of a)108 300 R F0(curr)
+2.868 E .368(ent terminal pr)-.37 F .368(ocess gr)-.45 F .368(oup ID)
+-.45 F F1 5.368(.P)C .369(rocesses that ha)-5.368 F -.15(ve)-.2 G 1.53
+(the same process group ID are said to be part of the same)108 312 R F0
+(pr)4.029 E 1.529(ocess gr)-.45 F(oup)-.45 E F1 6.529(.M)C 1.529
+(embers of the)-6.529 F F0(for)4.029 E -.4(eg)-.37 G -.45(ro).4 G(und)
+.45 E F1 .122(process group \(processes whose process group ID is equal\
+ to the current terminal process group ID\) recei)108 324 R -.15(ve)-.25
+G -.1(ke)108 336 S .139(yboard-generated signals such as)-.05 F F2
+(SIGINT)2.639 E F3(.)A F1 .139(Processes in the fore)4.639 F .139
+(ground process group are said to be)-.15 F F0(for)4.608 E(e-)-.37 E(gr)
+108 348 Q(ound)-.45 E F1(processes.)4.503 E F0(Bac)6.813 E(kgr)-.2 E
+(ound)-.45 E F1 1.234(processes are those whose process group ID dif)
+4.504 F 1.234(fers from the terminal')-.25 F(s;)-.55 E .533
+(such processes are immune to k)108 360 R -.15(ey)-.1 G .533
+(board-generated signals.).15 F .533(Only fore)5.533 F .533
+(ground processes are allo)-.15 F .533(wed to read)-.25 F .716(from or)
+108 372 R 3.216(,i)-.4 G 3.216(ft)-3.216 G .716(he user so speci\214es \
+with \231stty tostop\232, write to the terminal.)-3.216 F .717
+(Background processes which at-)5.717 F .378
+(tempt to read from \(write to when \231tostop\232 is in ef)108 384 R
+.377(fect\) the terminal are sent a)-.25 F F2 .377(SIGTTIN \(SIGTT)2.877
+F(OU\))-.162 E F1(signal)2.627 E(by the k)108 396 Q(ernel')-.1 E 2.5(st)
+-.55 G(erminal dri)-2.5 E -.15(ve)-.25 G .8 -.4(r, w).15 H
+(hich, unless caught, suspends the process.).4 E 1.087
+(If the operating system on which)108 412.8 R F4(bash)3.587 E F1 1.088
+(is running supports job control,)3.588 F F4(bash)3.588 E F1 1.088
+(contains f)3.588 F 1.088(acilities to use it.)-.1 F -.8(Ty)108 424.8 S
+.878(ping the).8 F F0(suspend)3.718 E F1 .878(character \(typically)
+4.148 F F4<005a>3.378 E F1 3.377(,C)C .877
+(ontrol-Z\) while a process is running stops that process and)-3.377 F
+.007(returns control to)108 436.8 R F4(bash)2.508 E F1 5.008(.T)C .008
+(yping the)-5.808 F F0 .008(delayed suspend)2.858 F F1 .008
+(character \(typically)3.278 F F4<0059>2.508 E F1 2.508(,C)C .008
+(ontrol-Y\) causes the process)-2.508 F .561(stop when it attempts to r\
+ead input from the terminal, and returns control to)108 448.8 R F4(bash)
+3.06 E F1 5.56(.T)C .56(he user then manipu-)-5.56 F .407
+(lates the state of this job, using the)108 460.8 R F4(bg)2.907 E F1
+.407(command to continue it in the background, the)2.907 F F4(fg)2.907 E
+F1 .407(command to con-)2.907 F .728(tinue it in the fore)108 472.8 R
+.728(ground, or the)-.15 F F4(kill)3.228 E F1 .728(command to kill it.)
+3.228 F .727(The suspend character tak)5.727 F .727(es ef)-.1 F .727
+(fect immediately)-.25 F(,)-.65 E .553(and has the additional side ef)
+108 484.8 R .553(fect of discarding an)-.25 F 3.053(yp)-.15 G .553
+(ending output and typeahead.)-3.053 F 2.153 -.8(To f)5.553 H .554
+(orce a background).8 F 2.261(process to stop, or stop a process that')
+108 496.8 R 4.761(sn)-.55 G 2.26
+(ot associated with the current terminal session, send it the)-4.761 F
+F2(SIGST)108 508.8 Q(OP)-.162 E F1(signal using)2.25 E F4(kill)2.5 E F1
+(.)A .777(There are a number of w)108 525.6 R .777
+(ays to refer to a job in the shell.)-.1 F(The)5.777 E F4(%)3.277 E F1
+.777(character introduces a job speci\214cation)3.277 F(\(jobspec\).)108
+537.6 Q .415(Job number)108 554.4 R F0(n)3.275 E F1 .415
+(may be referred to as)3.155 F F4(%n)2.915 E F1 5.415(.A)C .415
+(job may also be referred to using a pre\214x of the name used to)-2.5 F
+.034(start it, or using a substring that appears in its command line.)
+108 566.4 R -.15(Fo)5.035 G 2.535(re).15 G(xample,)-2.685 E F4(%ce)2.535
+E F1 .035(refers to a job whose com-)2.535 F .229(mand name be)108 578.4
+R .229(gins with)-.15 F F4(ce)2.729 E F1 5.229(.U)C(sing)-5.229 E F4
+(%?ce)2.729 E F1 2.729(,o)C 2.729(nt)-2.729 G .229
+(he other hand, refers to an)-2.729 F 2.729(yj)-.15 G .229
+(ob containing the string)-2.729 F F4(ce)2.729 E F1 .229(in its)2.729 F
+(command line.)108 590.4 Q
+(If the pre\214x or substring matches more than one job,)5 E F4(bash)2.5
+E F1(reports an error)2.5 E(.)-.55 E .441(The symbols)108 607.2 R F4(%%)
+2.941 E F1(and)2.941 E F4(%+)2.941 E F1 .441(refer to the shell')2.941 F
+2.941(sn)-.55 G .441(otion of the)-2.941 F F0(curr)3.141 E .441(ent job)
+-.37 F F1 5.441(.A).23 G .441(single % \(with no accompan)-2.5 F(y-)-.15
+E .207(ing job speci\214cation\) also refers to the current job)108
+619.2 R(.)-.4 E F4<25ad>5.207 E F1 .207(refers to the)2.707 F F0(pr)
+3.957 E -.15(ev)-.37 G .207(ious job).15 F F1 5.207(.W).23 G .207
+(hen a job starts in the)-5.207 F .185
+(background, a job stops while in the fore)108 631.2 R .186
+(ground, or a job is resumed in the background, it becomes the cur)-.15
+F(-)-.2 E .534(rent job)108 643.2 R 5.534(.T)-.4 G .534(he job that w)
+-5.534 F .534(as the current job becomes the pre)-.1 F .534(vious job)
+-.25 F 5.534(.W)-.4 G .534(hen the current job terminates, the)-5.534 F
+(pre)108 655.2 Q .123(vious job becomes the current job)-.25 F 5.123(.I)
+-.4 G 2.623(ft)-5.123 G .123(here is only a single job,)-2.623 F F4(%+)
+2.623 E F1(and)2.623 E F4<25ad>2.623 E F1 .124
+(can both be used to refer to)2.623 F 1.474(that job)108 667.2 R 6.474
+(.I)-.4 G 3.974(no)-6.474 G 1.473
+(utput pertaining to jobs \(e.g., the output of the)-3.974 F F4(jobs)
+3.973 E F1 1.473(command\), the current job is al)3.973 F -.1(wa)-.1 G
+(ys).1 E(mark)108 679.2 Q(ed with a)-.1 E F4(+)2.5 E F1 2.5(,a)C
+(nd the pre)-2.5 E(vious job with a)-.25 E F4<ad>2.5 E F1(.)A .686
+(Simply naming a job can be used to bring it into the fore)108 696 R
+(ground:)-.15 E F4(%1)3.186 E F1 .686(is a synon)3.186 F .686
+(ym for \231fg %1\232, bringing)-.15 F .069
+(job 1 from the background into the fore)108 708 R 2.568
+(ground. Similarly)-.15 F 2.568<2c99>-.65 G .068
+(%1 &\232 resumes job 1 in the background, equi)-2.568 F(v-)-.25 E
+(alent to \231bg %1\232.)108 720 Q(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(43)185.955 E 0 Cg EP
+%%Page: 44 44
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .13(The shell learns immediately whene)108 84 R
+-.15(ve)-.25 G 2.63(raj).15 G .13(ob changes state.)-2.63 F(Normally)
+5.131 E(,)-.65 E/F2 10/Times-Bold@0 SF(bash)2.631 E F1 -.1(wa)2.631 G
+.131(its until it is about to print a).1 F 1.279
+(prompt before notifying the user about changes in a job')108 96 R 3.779
+(ss)-.55 G 1.279(tatus so as to not interrupt an)-3.779 F 3.778(yo)-.15
+G 1.278(ther output,)-3.778 F .015
+(though it will notify of changes in a job')108 108 R 2.515(ss)-.55 G
+.015(tatus after a fore)-2.515 F .016
+(ground command in a list completes, before e)-.15 F -.15(xe)-.15 G(-)
+.15 E .673(cuting the ne)108 120 R .672(xt command in the list.)-.15 F
+.672(If the)5.672 F F2<ad62>3.172 E F1 .672(option to the)3.172 F F2
+(set)3.172 E F1 -.2(bu)3.172 G .672(iltin command is enabled,).2 F F2
+(bash)3.172 E F1(reports)3.172 E(status changes immediately)108 132 Q(.)
+-.65 E F2(Bash)5 E F1 -.15(exe)2.5 G(cutes an).15 E 2.5(yt)-.15 G
+(rap on)-2.5 E/F3 9/Times-Bold@0 SF(SIGCHLD)2.5 E F1
+(for each child that terminates.)2.25 E .352(When a job terminates and)
+108 148.8 R F2(bash)2.852 E F1 .352(noti\214es the user about it,)2.852
+F F2(bash)2.852 E F1(remo)2.852 E -.15(ve)-.15 G 2.852(st).15 G .352
+(he job from the table.)-2.852 F .352(It will not)5.352 F .52(appear in)
+108 160.8 R F2(jobs)3.02 E F1 .52(output, b)3.02 F(ut)-.2 E F2(wait)3.02
+E F1 .52(will report its e)3.02 F .52(xit status, as long as it')-.15 F
+3.02(ss)-.55 G .52(upplied the process ID associated)-3.02 F
+(with the job as an ar)108 172.8 Q 2.5(gument. When)-.18 F
+(the table is empty)2.5 E 2.5(,j)-.65 G(ob numbers start o)-2.5 E -.15
+(ve)-.15 G 2.5(ra).15 G 2.5(t1)-2.5 G(.)-2.5 E .06
+(If a user attempts to e)108 189.6 R(xit)-.15 E F2(bash)2.56 E F1 .06
+(while jobs are stopped \(or)2.56 F 2.561(,i)-.4 G 2.561(ft)-2.561 G(he)
+-2.561 E F2(checkjobs)2.561 E F1 .061(shell option has been enabled us-)
+2.561 F .3(ing the)108 201.6 R F2(shopt)2.8 E F1 -.2(bu)2.8 G .3
+(iltin, running\), the shell prints a w).2 F .3
+(arning message, and, if the)-.1 F F2(checkjobs)2.8 E F1 .3
+(option is enabled,)2.8 F .074(lists the jobs and their statuses.)108
+213.6 R(The)5.074 E F2(jobs)2.574 E F1 .074
+(command may then be used to inspect their status.)2.574 F .074
+(If the user im-)5.074 F 1.03(mediately attempts to e)108 225.6 R 1.03
+(xit ag)-.15 F 1.03(ain, without an interv)-.05 F 1.03(ening command,)
+-.15 F F2(bash)3.53 E F1 1.03(does not print another w)3.53 F(arning,)
+-.1 E(and terminates an)108 237.6 Q 2.5(ys)-.15 G(topped jobs.)-2.5 E
+.644(When the shell is w)108 254.4 R .644
+(aiting for a job or process using the)-.1 F F2(wait)3.145 E F1 -.2(bu)
+3.145 G .645(iltin, and job control is enabled,).2 F F2(wait)3.145 E F1
+(will)3.145 E .151(return when the job changes state.)108 266.4 R(The)
+5.151 E F2<ad66>2.651 E F1 .151(option causes)2.651 F F2(wait)2.651 E F1
+.15(to w)2.65 F .15(ait until the job or process terminates be-)-.1 F
+(fore returning.)108 278.4 Q/F4 10.95/Times-Bold@0 SF(PR)72 295.2 Q
+(OMPTING)-.329 E F1 .644(When e)108 307.2 R -.15(xe)-.15 G .644
+(cuting interacti).15 F -.15(ve)-.25 G(ly).15 E(,)-.65 E F2(bash)3.144 E
+F1 .645(displays the primary prompt)3.145 F F3(PS1)3.145 E F1 .645
+(when it is ready to read a command,)2.895 F(and the secondary prompt)
+108 319.2 Q F3(PS2)2.5 E F1
+(when it needs more input to complete a command.)2.25 E F2(Bash)108 336
+Q F1 -.15(ex)3.183 G .683(amines the v).15 F .682(alue of the array v)
+-.25 F(ariable)-.25 E F2(PR)3.182 E(OMPT_COMMAND)-.3 E F1 .682
+(just before printing each primary)3.182 F 2.576(prompt. If)108 348 R
+(an)2.576 E 2.576(ye)-.15 G .076(lements in)-2.576 F F2(PR)2.576 E
+(OMPT_COMMAND)-.3 E F1 .076(are set and non-null, Bash e)2.576 F -.15
+(xe)-.15 G .076(cutes each v).15 F .076(alue, in nu-)-.25 F .344
+(meric order)108 360 R 2.844(,j)-.4 G .344
+(ust as if it had been typed on the command line.)-2.844 F F2(Bash)5.343
+E F1(displays)2.843 E F3(PS0)2.843 E F1 .343(after it reads a command)
+2.593 F -.2(bu)108 372 S 2.5(tb).2 G(efore e)-2.5 E -.15(xe)-.15 G
+(cuting it.).15 E F2(Bash)108 388.8 Q F1(displays)2.5 E F3(PS4)2.5 E F1
+(as described abo)2.25 E .3 -.15(ve b)-.15 H
+(efore tracing each command when the).15 E F2<ad78>2.5 E F1
+(option is enabled.)2.5 E F2(Bash)108 405.6 Q F1(allo)2.934 E .434
+(ws the prompt strings)-.25 F F2(PS0)2.934 E F1(,)A F2(PS1)2.934 E F1(,)
+A F2(PS2)2.934 E F1 2.934(,a)C(nd)-2.934 E F2(PS4)2.934 E F1 2.934(,t)C
+2.935(ob)-2.934 G 2.935(ec)-2.935 G .435
+(ustomized by inserting a number of back-)-2.935 F
+(slash-escaped special characters that are decoded as follo)108 417.6 Q
+(ws:)-.25 E F2(\\a)144 434.4 Q F1(An ASCII bell character \(07\).)180
+434.4 Q F2(\\d)144 446.4 Q F1(The date in \231W)180 446.4 Q
+(eekday Month Date\232 format \(e.g., \231T)-.8 E(ue May 26\232\).)-.45
+E F2(\\D{)144 458.4 Q F0(format)A F2(})A F1(The)180 470.4 Q F0(format)
+3.67 E F1 1.17(is passed to)3.67 F F0(strftime)4.01 E F1 1.17
+(\(3\) and the result is inserted into the prompt string; an).18 F
+(empty)180 482.4 Q F0(format)2.5 E F1
+(results in a locale-speci\214c time representation.)2.5 E
+(The braces are required.)5 E F2(\\e)144 494.4 Q F1
+(An ASCII escape character \(033\).)180 494.4 Q F2(\\h)144 506.4 Q F1
+(The hostname up to the \214rst \231.)180 506.4 Q<9a2e>-.7 E F2(\\H)144
+518.4 Q F1(The hostname.)180 518.4 Q F2(\\j)144 530.4 Q F1
+(The number of jobs currently managed by the shell.)180 530.4 Q F2(\\l)
+144 542.4 Q F1(The basename of the shell')180 542.4 Q 2.5(st)-.55 G
+(erminal de)-2.5 E(vice name \(e.g., \231ttys0\232\).)-.25 E F2(\\n)144
+554.4 Q F1 2.5(An)180 554.4 S -.25(ew)-2.5 G(line.).25 E F2(\\r)144
+566.4 Q F1 2.5(Ac)180 566.4 S(arriage return.)-2.5 E F2(\\s)144 578.4 Q
+F1(The name of the shell: the basename of)180 578.4 Q F2($0)2.5 E F1
+(\(the portion follo)2.5 E(wing the \214nal slash\).)-.25 E F2(\\t)144
+590.4 Q F1(The current time in 24-hour HH:MM:SS format.)180 590.4 Q F2
+(\\T)144 602.4 Q F1(The current time in 12-hour HH:MM:SS format.)180
+602.4 Q F2(\\@)144 614.4 Q F1(The current time in 12-hour am/pm format.)
+180 614.4 Q F2(\\A)144 626.4 Q F1
+(The current time in 24-hour HH:MM format.)180 626.4 Q F2(\\u)144 638.4
+Q F1(The username of the current user)180 638.4 Q(.)-.55 E F2(\\v)144
+650.4 Q F1(The)180 650.4 Q F2(bash)2.5 E F1 -.15(ve)2.5 G
+(rsion \(e.g., 2.00\).).15 E F2(\\V)144 662.4 Q F1(The)180 662.4 Q F2
+(bash)2.5 E F1(release, v)2.5 E(ersion + patch le)-.15 E -.15(ve)-.25 G
+2.5(l\().15 G(e.g., 2.00.0\))-2.5 E F2(\\w)144 674.4 Q F1 1.645(The v)
+180 674.4 R 1.645(alue of the)-.25 F F2(PWD)4.145 E F1 1.645(shell v)
+4.145 F 1.645(ariable \()-.25 F F2($PWD)A F1 1.645(\), with)B F3($HOME)
+4.145 E F1(abbre)3.895 E 1.646(viated with a tilde)-.25 F(\(uses the v)
+180 686.4 Q(alue of the)-.25 E F3(PR)2.5 E(OMPT_DIR)-.27 E(TRIM)-.36 E
+F1 -.25(va)2.25 G(riable\).).25 E F2(\\W)144 698.4 Q F1(The basename of)
+180 698.4 Q F2($PWD)2.5 E F1 2.5(,w)C(ith)-2.5 E F3($HOME)2.5 E F1
+(abbre)2.25 E(viated with a tilde.)-.25 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(44)185.955 E 0 Cg EP
+%%Page: 45 45
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(\\!)144 84 Q F1
+(The history number of this command.)180 84 Q F2(\\#)144 96 Q F1
+(The command number of this command.)180 96 Q F2(\\$)144 108 Q F1
+(If the ef)180 108 Q(fecti)-.25 E .3 -.15(ve U)-.25 H(ID is 0, a).15 E
+F2(#)2.5 E F1 2.5(,o)C(therwise a)-2.5 E F2($)2.5 E F1(.)A F2(\\)144 120
+Q F0(nnn)A F1(The character corresponding to the octal number)180 120 Q
+F0(nnn)2.5 E F1(.)A F2(\\\\)144 132 Q F1 2.5(Ab)180 132 S(ackslash.)-2.5
+E F2(\\[)144 144 Q F1(Be)180 144 Q 1.128(gin a sequence of non-printing\
+ characters, which could be used to embed a terminal)-.15 F
+(control sequence into the prompt.)180 156 Q F2(\\])144 168 Q F1
+(End a sequence of non-printing characters.)180 168 Q .119
+(The command number and the history number are usually dif)108 184.8 R
+.12(ferent: the history number of a command is its)-.25 F .547(position\
+ in the history list, which may include commands restored from the hist\
+ory \214le \(see)108 196.8 R/F3 9/Times-Bold@0 SF(HIST)3.046 E(OR)-.162
+E(Y)-.315 E F1(be-)2.796 E(lo)108 208.8 Q .354(w\), while the command n\
+umber is the position in the sequence of commands e)-.25 F -.15(xe)-.15
+G .355(cuted during the current).15 F .823(shell session.)108 220.8 R
+.822(After the string is decoded, it is e)5.823 F .822
+(xpanded via parameter e)-.15 F .822(xpansion, command substitution,)
+-.15 F .682(arithmetic e)108 232.8 R .682(xpansion, and quote remo)-.15
+F -.25(va)-.15 G .682(l, subject to the v).25 F .683(alue of the)-.25 F
+F2(pr)3.183 E(omptv)-.18 E(ars)-.1 E F1 .683(shell option \(see the de-)
+3.183 F 1.198(scription of the)108 244.8 R F2(shopt)3.698 E F1 1.198
+(command under)3.698 F F3 1.197(SHELL B)3.697 F(UIL)-.09 E 1.197
+(TIN COMMANDS)-.828 F F1(belo)3.447 E 3.697(w\). This)-.25 F 1.197
+(can ha)3.697 F 1.497 -.15(ve u)-.2 H(nw).15 E(anted)-.1 E .322(side ef)
+108 256.8 R .322(fects if escaped portions of the string appear within \
+command substitution or contain characters spe-)-.25 F(cial to w)108
+268.8 Q(ord e)-.1 E(xpansion.)-.15 E/F4 10.95/Times-Bold@0 SF(READLINE)
+72 285.6 Q F1 .151
+(This is the library that handles reading input when using an interacti)
+108 297.6 R .45 -.15(ve s)-.25 H .15(hell, unless the).15 F F2
+(\255\255noediting)2.65 E F1(option)2.65 E .573(is supplied at shell in)
+108 309.6 R -.2(vo)-.4 G 3.073(cation. Line).2 F .573
+(editing is also used when using the)3.073 F F2<ad65>3.073 E F1 .573
+(option to the)3.073 F F2 -.18(re)3.074 G(ad).18 E F1 -.2(bu)3.074 G
+3.074(iltin. By).2 F(def)108 321.6 Q 1.244(ault, the line editing comma\
+nds are similar to those of emacs; a vi-style line editing interf)-.1 F
+1.243(ace is also)-.1 F -.2(av)108 333.6 S 3.35(ailable. Line)-.05 F .85
+(editing can be enabled at an)3.35 F 3.35(yt)-.15 G .85(ime using the)
+-3.35 F F2 .85(\255o emacs)3.35 F F1(or)3.35 E F2 .85(\255o vi)3.35 F F1
+.85(options to the)3.35 F F2(set)3.35 E F1 -.2(bu)3.35 G(iltin).2 E
+(\(see)108 345.6 Q F3 .763(SHELL B)3.263 F(UIL)-.09 E .763(TIN COMMANDS)
+-.828 F F1(belo)3.013 E 3.263(w\). T)-.25 F 3.263(ot)-.8 G .763(urn of)
+-3.263 F 3.263(fl)-.25 G .763
+(ine editing after the shell is running, use the)-3.263 F F2(+o)3.262 E
+(emacs)108 357.6 Q F1(or)2.5 E F2(+o vi)2.5 E F1(options to the)2.5 E F2
+(set)2.5 E F1 -.2(bu)2.5 G(iltin.).2 E F2(Readline Notation)87 374.4 Q
+F1 .862(This section uses Emacs-style editing concepts and uses its not\
+ation for k)108 386.4 R -.15(ey)-.1 G(strok).15 E 3.362(es. Control)-.1
+F -.1(ke)3.362 G .862(ys are de-)-.05 F .55(noted by C\255)108 398.4 R
+F0 -.1(ke)C(y)-.2 E F1 3.05(,e)C .55(.g., C\255n means Control\255N.)
+-3.05 F(Similarly)5.55 E(,)-.65 E F0(meta)3.43 E F1 -.1(ke)3.31 G .55
+(ys are denoted by M\255)-.05 F F0 -.1(ke)C(y)-.2 E F1 3.05(,s)C 3.05
+(oM)-3.05 G .55(\255x means)-3.05 F 2.5(Meta\255X. The)108 410.4 R
+(Meta k)2.5 E .3 -.15(ey i)-.1 H 2.5(so).15 G(ften labeled \231)-2.5 E
+(Alt\232 or \231Option\232.)-.8 E .149(On k)108 427.2 R -.15(ey)-.1 G
+.149(boards without a).15 F F0(Meta)3.329 E F1 -.1(ke)2.909 G 1.449 -.65
+(y, M)-.05 H<ad>.65 E F0(x)A F1 .149(means ESC)2.649 F F0(x)2.649 E F1
+2.649(,i)C .15(.e., press and release the Escape k)-2.649 F -.15(ey)-.1
+G 2.65(,t)-.5 G .15(hen press and)-2.65 F 1.217(release the)108 439.2 R
+F0(x)4.487 E F1 -.1(ke)4.247 G 2.517 -.65(y, i)-.05 H 3.716(ns).65 G
+3.716(equence. This)-3.716 F(mak)3.716 E 1.216(es ESC the)-.1 F F0 1.216
+(meta pr)3.716 F(e\214x)-.37 E F1 6.216(.T)C 1.216
+(he combination M\255C\255)-6.216 F F0(x)A F1 1.216(means ESC)3.716 F
+(Control\255)108 451.2 Q F0(x)A F1 2.93(:p)C .43
+(ress and release the Escape k)-2.93 F -.15(ey)-.1 G 2.93(,t)-.5 G .43
+(hen press and hold the Control k)-2.93 F .73 -.15(ey w)-.1 H .43
+(hile pressing the).15 F F0(x)3.7 E F1 -.1(ke)3.46 G -.65(y,)-.05 G
+(then release both.)108 463.2 Q .217(On some k)108 480 R -.15(ey)-.1 G
+.217(boards, the Meta k).15 F .517 -.15(ey m)-.1 H .216
+(odi\214er produces characters with the eighth bit \(0200\) set.).15 F
+-1.1(Yo)5.216 G 2.716(uc)1.1 G .216(an use)-2.716 F(the)108 492 Q F2
+(enable\255meta\255k)3.315 E(ey)-.1 E F1 -.25(va)3.315 G .816
+(riable to control whether or not it does this, if the k).25 F -.15(ey)
+-.1 G .816(board allo).15 F .816(ws it.)-.25 F .816(On man)5.816 F(y)
+-.15 E .568(others, the terminal or terminal emulator con)108 504 R -.15
+(ve)-.4 G .568(rts the meta\214ed k).15 F .868 -.15(ey t)-.1 H 3.068
+(oak).15 G .868 -.15(ey s)-3.168 H .568(equence be).15 F .568
+(ginning with ESC)-.15 F(as described in the preceding paragraph.)108
+516 Q .029(If your)108 532.8 R F0(Meta)2.529 E F1 -.1(ke)2.529 G 2.529
+(yp)-.05 G .029(roduces a k)-2.529 F .329 -.15(ey s)-.1 H .03
+(equence with the ESC meta pre\214x, you can mak).15 F 2.53(eM)-.1 G(-)
+-2.53 E F0 -.1(ke)C(y)-.2 E F1 -.1(ke)2.53 G 2.53(yb)-.05 G .03
+(indings you)-2.53 F(specify \(see)108 544.8 Q F2(Readline K)2.5 E
+(ey Bindings)-.25 E F1(belo)2.5 E(w\) do the same thing by setting the)
+-.25 E F2 -.25(fo)2.5 G -.18(rc).25 G(e\255meta\255pr).18 E(e\214x)-.18
+E F1 -.25(va)2.5 G(riable.).25 E F2(Readline)108 561.6 Q F1 .437
+(commands may be gi)2.937 F -.15(ve)-.25 G 2.937(nn).15 G(umeric)-2.937
+E F0(ar)3.267 E(guments)-.37 E F1 2.936(,w).27 G .436
+(hich normally act as a repeat count.)-2.936 F(Sometimes,)5.436 E(ho)108
+573.6 Q(we)-.25 E -.15(ve)-.25 G 1.418 -.4(r, i).15 H 3.118(ti).4 G
+3.119(st)-3.118 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 .296(acts in the forw)108 585.6 R .296
+(ard direction \(e.g.,)-.1 F F2(kill\255line)2.796 E F1 2.796(\)m)C(ak)
+-2.796 E .296(es that command act in a backw)-.1 F .296(ard direction.)
+-.1 F(Commands)5.296 E(whose beha)108 597.6 Q(vior with ar)-.2 E
+(guments de)-.18 E(viates from this are noted belo)-.25 E -.65(w.)-.25 G
+(The)108 614.4 Q F0(point)3.245 E F1 .745
+(is the current cursor position, and)3.245 F F0(mark)3.245 E F1 .745
+(refers to a sa)3.245 F -.15(ve)-.2 G 3.245(dc).15 G .745
+(ursor position.)-3.245 F .745(The te)5.745 F .745(xt between the)-.15 F
+.447(point and mark is referred to as the)108 626.4 R F0 -.37(re)2.947 G
+(gion)-.03 E F1(.)A F2(Readline)5.447 E F1 .447(has the concept of an)
+2.947 F F0 .447(active r)2.947 F -.4(eg)-.37 G(ion).4 E F1 2.946(:w)C
+.446(hen the re)-2.946 F(gion)-.15 E .304(is acti)108 638.4 R -.15(ve)
+-.25 G(,).15 E F2 -.18(re)2.804 G(adline).18 E F1 .304
+(redisplay highlights the re)2.804 F .305(gion using the v)-.15 F .305
+(alue of the)-.25 F F2(acti)2.805 E -.1(ve)-.1 G(-r).1 E
+(egion-start-color)-.18 E F1 -.25(va)2.805 G(riable.).25 E(The)108 650.4
+Q F2(enable\255acti)2.759 E -.1(ve)-.1 G<ad72>.1 E(egion)-.18 E F1 -.25
+(va)2.759 G .259(riable turns this on and of).25 F 2.759(f. Se)-.25 F
+-.15(ve)-.25 G .259(ral commands set the re).15 F .258(gion to acti)-.15
+F -.15(ve)-.25 G 2.758(;t).15 G(hose)-2.758 E(are noted belo)108 662.4 Q
+-.65(w.)-.25 G .811(When a command is described as)108 679.2 R F0
+(killing)3.311 E F1(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 .812
+(or possible future retrie)-3.311 F -.25(va)-.25 G 3.312(l\().25 G F0
+(yank-)-3.312 E(ing)108 691.2 Q F1 3.674(\). The)B 1.174(killed te)3.674
+F 1.174(xt is sa)-.15 F -.15(ve)-.2 G 3.674(di).15 G 3.674(na)-3.674 G
+F0 1.174(kill ring)B F1 6.174(.C)C(onsecuti)-6.174 E 1.474 -.15(ve k)
+-.25 H 1.174(ills accumulate the deleted te).15 F 1.173
+(xt into one unit,)-.15 F .567(which can be yank)108 703.2 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 715.2 Q(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(45)185.955
+E 0 Cg EP
+%%Page: 46 46
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(Readline Initialization)87 84
+Q(Readline)108 96 Q F1 .913
+(is customized by putting commands in an initialization \214le \(the)
+3.413 F F0(inputr)3.412 E(c)-.37 E F1 3.412(\214le\). The)3.412 F .912
+(name of this)3.412 F 2.517(\214le is tak)108 108 R 2.517(en from the v)
+-.1 F 2.517(alue of the)-.25 F/F3 9/Times-Bold@0 SF(INPUTRC)5.017 E F1
+2.518(shell v)4.767 F 5.018(ariable. If)-.25 F 2.518(that v)5.018 F
+2.518(ariable is unset, the def)-.25 F 2.518(ault is)-.1 F F0
+(\001/.inputr)109.666 120 Q(c)-.37 E F1 5.389(.I)1.666 G 2.889(ft)-5.389
+G .389(hat \214le)-2.889 F .389(does not e)5.389 F .389
+(xist or cannot be read,)-.15 F F2 -.18(re)2.888 G(adline).18 E F1 .388
+(looks for)2.888 F F0(/etc/inputr)4.554 E(c)-.37 E F1 5.388(.W)1.666 G
+.388(hen a program)-5.388 F .808(that uses the)108 132 R F2 -.18(re)
+3.308 G(adline).18 E F1 .809(library starts up,)3.309 F F2 -.18(re)3.309
+G(adline).18 E F1 .809(reads the initialization \214le and sets the k)
+3.309 F 1.109 -.15(ey b)-.1 H .809(indings and).15 F -.25(va)108 144 S
+(riables found there, before reading an).25 E 2.5(yu)-.15 G(ser input.)
+-2.5 E .34(There are only a fe)108 160.8 R 2.84(wb)-.25 G .34
+(asic constructs allo)-2.84 F .34(wed in the inputrc \214le.)-.25 F .34
+(Blank lines are ignored.)5.34 F .34(Lines be)5.34 F(ginning)-.15 E .778
+(with a)108 172.8 R F2(#)3.278 E F1 .778(are comments.)3.278 F .778
+(Lines be)5.778 F .778(ginning with a)-.15 F F2($)3.278 E F1 .778
+(indicate conditional constructs.)3.278 F .779(Other lines denote k)
+5.778 F -.15(ey)-.1 G(bindings and v)108 184.8 Q(ariable settings.)-.25
+E .775(The def)108 201.6 R .775(ault k)-.1 F -.15(ey)-.1 G .775
+(-bindings in this section may be changed using k).15 F 1.075 -.15(ey b)
+-.1 H .775(inding commands in the).15 F F0(inputr)3.285 E(c)-.37 E F1
+(\214le.)3.585 E(Programs that use the)108 213.6 Q F2 -.18(re)2.5 G
+(adline).18 E F1(library)2.5 E 2.5(,i)-.65 G(ncluding)-2.5 E F2(bash)2.5
+E F1 2.5(,m)C(ay add their o)-2.5 E(wn commands and bindings.)-.25 E
+-.15(Fo)108 230.4 S 2.5(re).15 G(xample, placing)-2.65 E
+(M\255Control\255u: uni)144 247.2 Q -.15(ve)-.25 G(rsal\255ar).15 E
+(gument)-.18 E(or)108 259.2 Q(C\255Meta\255u: uni)144 271.2 Q -.15(ve)
+-.25 G(rsal\255ar).15 E(gument)-.18 E(into the)108 288 Q F0(inputr)2.51
+E(c)-.37 E F1 -.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).15 E F2 -.18(re)2.5 G(adline).18 E F1
+(command)2.5 E F0(univer)2.58 E(sal\255ar)-.1 E(gument)-.37 E F1(.).68 E
+-2.15 -.25(Ke y)108 304.8 T 1.442(bindings may contain the follo)4.192 F
+1.442(wing symbolic character names:)-.25 F F0(DEL)4.522 E F1(,).53 E F0
+(ESC)4.453 E F1(,).72 E F0(ESCAPE)4.453 E F1(,).73 E F0(LFD)4.523 E F1
+(,).28 E F0(NEW)4.643 E(-)-.37 E(LINE)108 316.8 Q F1(,).73 E F0(RET)3.13
+E F1(,)1.27 E F0(RETURN)3.13 E F1(,)1.1 E F0 -.4(RU)2.5 G(BOUT).4 E F1
+(\(a destructi)3.77 E .3 -.15(ve b)-.25 H(ackspace\),).15 E F0(SP)2.83 E
+-.3(AC)-.9 G(E).3 E F1(,).73 E F0(SPC)2.83 E F1 2.5(,a).72 G(nd)-2.5 E
+F0 -.5(TA)2.5 G(B).5 E F1(.).27 E .079(In addition to command names,)108
+333.6 R F2 -.18(re)2.579 G(adline).18 E F1(allo)2.579 E .079(ws k)-.25 F
+-.15(ey)-.1 G 2.579(st).15 G 2.579(ob)-2.579 G 2.579(eb)-2.579 G .078
+(ound to a string that is inserted when the k)-2.579 F .378 -.15(ey i)
+-.1 H(s).15 E .192(pressed \(a)108 345.6 R F0(macr)2.692 E(o)-.45 E F1
+2.692(\). The)B(dif)2.692 E .192(ference between a macro and a command \
+is that a macro is enclosed in single or)-.25 F(double quotes.)108 357.6
+Q F2(Readline K)87 374.4 Q(ey Bindings)-.25 E F1 .366
+(The syntax for controlling k)108 386.4 R .666 -.15(ey b)-.1 H .366
+(indings in the).15 F F0(inputr)2.876 E(c)-.37 E F1 .366
+(\214le is simple.)3.176 F .366(All that is required is the name of the)
+5.366 F .011(command or the te)108 398.4 R .011(xt of a macro and a k)
+-.15 F .311 -.15(ey s)-.1 H .012(equence to which it should be bound.)
+.15 F .012(The k)5.012 F .312 -.15(ey s)-.1 H .012(equence may be).15 F
+.695(speci\214ed in one of tw)108 410.4 R 3.195(ow)-.1 G .695
+(ays: as a symbolic k)-3.295 F .995 -.15(ey n)-.1 H .695
+(ame, possibly with).15 F F0(Meta\255)3.195 E F1(or)3.195 E F0(Contr)
+3.194 E(ol\255)-.45 E F1(pre\214x)3.194 E .694(es, or as a)-.15 F -.1
+(ke)108 422.4 S 2.802(ys)-.05 G .302
+(equence composed of one or more characters enclosed in double quotes.)
+-2.802 F .303(The k)5.303 F .603 -.15(ey s)-.1 H .303(equence and name)
+.15 F(are separated by a colon.)108 434.4 Q
+(There can be no whitespace between the name and the colon.)5 E .161
+(When using the form)108 451.2 R F2 -.1(ke)2.661 G(yname).1 E F1(:)A F0
+(function\255name).833 E F1(or)2.661 E F0(macr)2.661 E(o)-.45 E F1(,)A
+F0 -.1(ke)2.661 G(yname)-.2 E F1 .16(is the name of a k)2.84 F .46 -.15
+(ey s)-.1 H .16(pelled out in Eng-).15 F 2.5(lish. F)108 463.2 R(or e)
+-.15 E(xample:)-.15 E/F4 10/Courier@0 SF
+(Control-u: universal\255argument)144 480 Q
+(Meta-Rubout: backward\255kill\255word)144 492 Q(Control-o: "> output")
+144 504 Q F1 .698(In the abo)108 520.8 R .998 -.15(ve ex)-.15 H(ample,)
+.15 E F0(C\255u)3.038 E F1 .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 F1(,)A F0(M\255DEL)
+3.878 E F1 .698(is bound to the func-)3.728 F(tion)108 532.8 Q F2
+(backward\255kill\255w)2.759 E(ord)-.1 E F1 2.759(,a)C(nd)-2.759 E F0
+(C\255o)2.599 E F1 .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
+544.8 Q(xt \231> output\232 into the line\).)-.15 E .055
+(In the second form,)108 561.6 R F2("k)2.555 E(eyseq")-.1 E F1(:)A F0
+(function\255name).833 E F1(or)2.555 E F0(macr)2.555 E(o)-.45 E F1(,)A
+F2 -.1(ke)2.555 G(yseq).1 E F1(dif)2.556 E .056(fers from)-.25 F F2 -.1
+(ke)2.556 G(yname).1 E F1(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 573.6 R 1.584
+-.15(ey s)-.1 H 1.284(equence may be speci\214ed by placing the sequenc\
+e within double quotes.).15 F(Some)6.284 E .101(GNU Emacs style k)108
+585.6 R .401 -.15(ey e)-.1 H .102(scapes can be used, as in the follo)
+.15 F .102(wing e)-.25 F .102(xample, b)-.15 F .102
+(ut none of the symbolic character)-.2 F(names are recognized.)108 597.6
+Q F4("\\C\255u": universal\255argument)144 614.4 Q
+("\\C\255x\\C\255r": re\255read\255init\255file)144 626.4 Q
+("\\e[11\001": "Function Key 1")144 638.4 Q F1 .315(In this e)108 655.2
+R(xample,)-.15 E F0(C\255u)2.655 E F1 .315(is ag)3.065 F .315
+(ain bound to the function)-.05 F F2(uni)2.815 E -.1(ve)-.1 G
+(rsal\255ar).1 E(gument)-.1 E F1(.)A F0 .315(C\255x C\255r)5.155 F F1
+.314(is bound to the func-)3.544 F(tion)108 667.2 Q F2 -.18(re)2.5 G
+<ad72>.18 E(ead\255init\255\214le)-.18 E F1 2.5(,a)C(nd)-2.5 E F0
+(ESC [ 1 1 \001)3.01 E F1(is bound to insert the te)2.61 E
+(xt \231Function K)-.15 E .3 -.15(ey 1)-.25 H<9a2e>.15 E
+(The full set of GNU Emacs style escape sequences a)108 684 Q -.25(va)
+-.2 G(ilable when specifying k).25 E .3 -.15(ey s)-.1 H(equences is).15
+E F2<5c43ad>144 696 Q F1 2.5(Ac)180 696 S(ontrol pre\214x.)-2.5 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(46)185.955 E 0 Cg EP
+%%Page: 47 47
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF<5c4dad>144 84 Q F1 .747
+(Adding the meta pre\214x or con)180 84 R -.15(ve)-.4 G .747
+(rting the follo).15 F .747(wing character to a meta character)-.25 F
+3.248(,a)-.4 G 3.248(sd)-3.248 G(e-)-3.248 E(scribed belo)180 96 Q 2.5
+(wu)-.25 G(nder)-2.5 E F2 -.25(fo)2.5 G -.18(rc).25 G(e-meta-pr).18 E
+(e\214x)-.18 E F1(.)A F2(\\e)144 108 Q F1(An escape character)180 108 Q
+(.)-.55 E F2(\\\\)144 120 Q F1(Backslash.)180 120 Q F2(\\")144 132 Q F1
+(Literal ", a double quote.)180 132 Q F2<5c08>144 144 Q F1
+(Literal \010, a single quote.)180 144 Q(In addition to the GNU Emacs s\
+tyle escape sequences, a second set of backslash escapes is a)108 160.8
+Q -.25(va)-.2 G(ilable:).25 E F2(\\a)144 172.8 Q F1(alert \(bell\))180
+172.8 Q F2(\\b)144 184.8 Q F1(backspace)180 184.8 Q F2(\\d)144 196.8 Q
+F1(delete)180 196.8 Q F2(\\f)144 208.8 Q F1(form feed)180 208.8 Q F2
+(\\n)144 220.8 Q F1(ne)180 220.8 Q(wline)-.25 E F2(\\r)144 232.8 Q F1
+(carriage return)180 232.8 Q F2(\\t)144 244.8 Q F1(horizontal tab)180
+244.8 Q F2(\\v)144 256.8 Q F1 -.15(ve)180 256.8 S(rtical tab).15 E F2
+(\\)144 268.8 Q F0(nnn)A F1(The eight-bit character whose v)180 268.8 Q
+(alue is the octal v)-.25 E(alue)-.25 E F0(nnn)2.5 E F1
+(\(one to three digits\).)2.5 E F2(\\x)144 280.8 Q F0(HH)A F1
+(The eight-bit character whose v)180 280.8 Q(alue is the he)-.25 E
+(xadecimal v)-.15 E(alue)-.25 E F0(HH)2.5 E F1(\(one or tw)2.5 E 2.5(oh)
+-.1 G .3 -.15(ex d)-2.5 H(igits\).).15 E 1.142(When entering the te)108
+297.6 R 1.141(xt of a macro, single or double quotes must be used to in\
+dicate a macro de\214nition.)-.15 F .62(Unquoted te)108 309.6 R .62
+(xt is assumed to be a function name.)-.15 F .62
+(The backslash escapes described abo)5.62 F .92 -.15(ve a)-.15 H .62
+(re e).15 F .62(xpanded in)-.15 F(the macro body)108 321.6 Q 5(.B)-.65 G
+(ackslash quotes an)-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 338.4 Q F1 1.197
+(will display or modify the current)3.697 F F2 -.18(re)3.696 G(adline)
+.18 E F1 -.1(ke)3.696 G 3.696(yb)-.05 G 1.196(indings with the)-3.696 F
+F2(bind)3.696 E F1 -.2(bu)3.696 G 1.196(iltin command.).2 F(The)6.196 E
+F2<ad6f>3.696 E(emacs)108 350.4 Q F1(or)3.673 E F2 1.173(\255o vi)3.673
+F F1 1.173(options to the)3.673 F F2(set)3.673 E F1 -.2(bu)3.673 G 1.174
+(iltin \(see).2 F/F3 9/Times-Bold@0 SF 1.174(SHELL B)3.674 F(UIL)-.09 E
+1.174(TIN COMMANDS)-.828 F F1(belo)3.424 E 1.174(w\) change the editing)
+-.25 F(mode during interacti)108 362.4 Q .3 -.15(ve u)-.25 H(se.).15 E
+F2(Readline V)87 379.2 Q(ariables)-.92 E(Readline)108 391.2 Q F1 .453
+(has v)2.953 F .452
+(ariables that can be used to further customize its beha)-.25 F(vior)-.2
+E 5.452(.A)-.55 G -.25(va)-2.5 G .452(riable may be set in the).25 F F0
+(in-)2.962 E(putr)108 403.2 Q(c)-.37 E F1
+(\214le with a statement of the form)2.81 E F2(set)144 420 Q F0
+(variable\255name value)2.5 E F1(or using the)108 432 Q F2(bind)2.5 E F1
+-.2(bu)2.5 G(iltin command \(see).2 E F3(SHELL B)2.5 E(UIL)-.09 E
+(TIN COMMANDS)-.828 E F1(belo)2.25 E(w\).)-.25 E .626
+(Except where noted,)108 448.8 R F2 -.18(re)3.127 G(adline).18 E F1 -.25
+(va)3.127 G .627(riables can tak).25 F 3.127(et)-.1 G .627(he v)-3.127 F
+(alues)-.25 E F2(On)3.127 E F1(or)3.127 E F2(Off)3.127 E F1 .627
+(\(without re)3.127 F -.05(ga)-.15 G .627(rd to case\).).05 F(Unrecog-)
+5.627 E .345(nized v)108 460.8 R .345(ariable names are ignored.)-.25 F
+(When)5.345 E F2 -.18(re)2.845 G(adline).18 E F1 .345(reads a v)2.845 F
+.345(ariable v)-.25 F .345(alue, empty or null v)-.25 F .345
+(alues, \231on\232 \(case-)-.25 F(insensiti)108 472.8 Q -.15(ve)-.25 G
+(\), and \2311\232 are equi).15 E -.25(va)-.25 G(lent to).25 E F2(On)2.5
+E F1 5(.A)C(ll other v)-5 E(alues are equi)-.25 E -.25(va)-.25 G
+(lent to).25 E F2(Off)2.5 E F1(.)A(The)108 489.6 Q F2 .713(bind \255V)
+3.213 F F1 .713(command lists the current)3.213 F F2 -.18(re)3.213 G
+(adline).18 E F1 -.25(va)3.214 G .714(riable names and v).25 F .714
+(alues \(see)-.25 F F3 .714(SHELL B)3.214 F(UIL)-.09 E .714(TIN COM-)
+-.828 F(MANDS)108 501.6 Q F1(belo)2.25 E(w\).)-.25 E(The v)108 518.4 Q
+(ariables and their def)-.25 E(ault v)-.1 E(alues are:)-.25 E F2(acti)
+108 535.2 Q -.1(ve)-.1 G<ad72>.1 E(egion\255start\255color)-.18 E F1
+2.73(As)144 547.2 S .23(tring v)-2.73 F .23
+(ariable that controls the te)-.25 F .229
+(xt color and background when displaying the te)-.15 F .229
+(xt in the acti)-.15 F -.15(ve)-.25 G(re)144 559.2 Q 1.526
+(gion \(see the description of)-.15 F F2(enable\255acti)4.026 E -.1(ve)
+-.1 G<ad72>.1 E(egion)-.18 E F1(belo)4.026 E 4.026(w\). This)-.25 F
+1.526(string must not tak)4.026 F 4.027(eu)-.1 G 4.027(pa)-4.027 G -.15
+(ny)-4.027 G(ph)144 571.2 Q .284
+(ysical character positions on the display)-.05 F 2.784(,s)-.65 G 2.784
+(oi)-2.784 G 2.784(ts)-2.784 G .283
+(hould consist only of terminal escape sequences.)-2.784 F .45
+(It is output to the terminal before displaying the te)144 583.2 R .45
+(xt in the acti)-.15 F .75 -.15(ve r)-.25 H -.15(eg).15 G 2.95
+(ion. This).15 F -.25(va)2.95 G .45(riable is reset to).25 F .379
+(the def)144 595.2 R .379(ault v)-.1 F .379(alue whene)-.25 F -.15(ve)
+-.25 G 2.879(rt).15 G .379(he terminal type changes.)-2.879 F .379
+(The def)5.379 F .379(ault v)-.1 F .378
+(alue is the string that puts the)-.25 F .654
+(terminal in standout mode, as obtained from the terminal')144 607.2 R
+3.155(st)-.55 G .655(erminfo description.)-3.155 F 3.155(As)5.655 G .655
+(ample v)-3.155 F(alue)-.25 E(might be \231\\e[01;33m\232.)144 619.2 Q
+F2(acti)108 631.2 Q -.1(ve)-.1 G<ad72>.1 E(egion\255end\255color)-.18 E
+F1 3.778(As)144 643.2 S 1.278(tring v)-3.778 F 1.277
+(ariable that \231undoes\232 the ef)-.25 F 1.277(fects of)-.25 F F2
+(acti)3.777 E -.1(ve)-.1 G<ad72>.1 E(egion\255start\255color)-.18 E F1
+1.277(and restores \231normal\232)3.777 F .216
+(terminal display appearance after displaying te)144 655.2 R .216
+(xt in the acti)-.15 F .516 -.15(ve r)-.25 H -.15(eg).15 G 2.716
+(ion. This).15 F .216(string must not tak)2.716 F 2.716(eu)-.1 G(p)
+-2.716 E(an)144 667.2 Q 3.738(yp)-.15 G -.05(hy)-3.738 G 1.238
+(sical character positions on the display).05 F 3.737(,s)-.65 G 3.737
+(oi)-3.737 G 3.737(ts)-3.737 G 1.237
+(hould consist only of terminal escape se-)-3.737 F 2.927(quences. It)
+144 679.2 R .427(is output to the terminal after displaying the te)2.927
+F .428(xt in the acti)-.15 F .728 -.15(ve r)-.25 H -.15(eg).15 G 2.928
+(ion. This).15 F -.25(va)2.928 G .428(riable is).25 F .519
+(reset to the def)144 691.2 R .518(ault v)-.1 F .518(alue whene)-.25 F
+-.15(ve)-.25 G 3.018(rt).15 G .518(he terminal type changes.)-3.018 F
+.518(The def)5.518 F .518(ault v)-.1 F .518(alue is the string that)-.25
+F .251(restores the terminal from standout mode, as obtained from the t\
+erminal')144 703.2 R 2.752(st)-.55 G .252(erminfo description.)-2.752 F
+(A)5.252 E(sample v)144 715.2 Q(alue might be \231\\e[0m\232.)-.25 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(47)185.955 E 0 Cg EP
+%%Page: 48 48
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(bell\255style \(audible\))108
+84 Q F1 1.284(Controls what happens when)144 96 R F2 -.18(re)3.784 G
+(adline).18 E F1 -.1(wa)3.784 G 1.284(nts to ring the terminal bell.).1
+F 1.284(If set to)6.284 F F2(none)3.784 E F1(,)A F2 -.18(re)3.784 G
+(adline).18 E F1(ne)144 108 Q -.15(ve)-.25 G 2.644(rr).15 G .144
+(ings the bell.)-2.644 F .144(If set to)5.144 F F2(visible)2.644 E F1(,)
+A F2 -.18(re)2.644 G(adline).18 E F1 .145
+(uses a visible bell if one is a)2.644 F -.25(va)-.2 G 2.645(ilable. If)
+.25 F .145(set to)2.645 F F2(audi-)2.645 E(ble)144 120 Q F1(,)A F2 -.18
+(re)2.5 G(adline).18 E F1(attempts to ring the terminal')2.5 E 2.5(sb)
+-.55 G(ell.)-2.5 E F2(bind\255tty\255special\255chars \(On\))108 132 Q
+F1 .516(If set to)144 144 R F2(On)3.016 E F1(,)A F2 -.18(re)3.016 G
+(adline).18 E F1 .516(attempts to bind the control characters that are \
+treated specially by the k)3.016 F(er)-.1 E(-)-.2 E(nel')144 156 Q 3.605
+(st)-.55 G 1.105(erminal dri)-3.605 F -.15(ve)-.25 G 3.605(rt).15 G
+3.605(ot)-3.605 G(heir)-3.605 E F2 -.18(re)3.605 G(adline).18 E F1(equi)
+3.605 E -.25(va)-.25 G 3.605(lents. These).25 F -.15(ove)3.605 G 1.105
+(rride the def).15 F(ault)-.1 E F2 -.18(re)3.605 G(adline).18 E F1
+(bindings)3.605 E .859(described here.)144 168 R -.8(Ty)5.859 G .859
+(pe \231stty \255a\232 at a).8 F F2(bash)3.359 E F1 .858
+(prompt to see your current terminal settings, including)3.359 F
+(the special control characters \(usually)144 180 Q F2(cchars)2.5 E F1
+(\).)A F2(blink\255matching\255par)108 192 Q(en \(Off\))-.18 E F1 .056
+(If set to)144 204 R F2(On)2.556 E F1(,)A F2 -.18(re)2.556 G(adline).18
+E F1 .056(attempts to brie\215y mo)2.556 F .356 -.15(ve t)-.15 H .057
+(he cursor to an opening parenthesis when a closing).15 F
+(parenthesis is inserted.)144 216 Q F2(color)108 228 Q
+(ed\255completion\255pr)-.18 E(e\214x \(Off\))-.18 E F1 .352(If set to)
+144 240 R F2(On)2.852 E F1 2.852(,w)C .352(hen listing completions,)
+-2.852 F F2 -.18(re)2.852 G(adline).18 E F1 .352
+(displays the common pre\214x of the set of possible)2.852 F 2.935
+(completions using a dif)144 252 R 2.935(ferent color)-.25 F 7.936(.T)
+-.55 G 2.936(he color de\214nitions are tak)-7.936 F 2.936
+(en from the v)-.1 F 2.936(alue of the)-.25 F F2(LS_COLORS)144 264 Q F1
+(en)3.077 E .577(vironment v)-.4 F 3.077(ariable. If)-.25 F .577
+(there is a color de\214nition in)3.077 F F2($LS_COLORS)3.077 E F1 .577
+(for the cus-)3.077 F .926(tom suf)144 276 R .926
+(\214x \231.readline-colored-completion-pre\214x\232,)-.25 F F2 -.18(re)
+3.426 G(adline).18 E F1 .926(uses this color for the common pre\214x)
+3.426 F(instead of its def)144 288 Q(ault.)-.1 E F2(color)108 300 Q
+(ed\255stats \(Off\))-.18 E F1 1.393(If set to)144 312 R F2(On)3.893 E
+F1(,)A F2 -.18(re)3.893 G(adline).18 E F1 1.393
+(displays possible completions using dif)3.893 F 1.393
+(ferent colors to indicate their \214le)-.25 F 2.5(type. The)144 324 R
+(color de\214nitions are tak)2.5 E(en from the v)-.1 E(alue of the)-.25
+E F2(LS_COLORS)2.5 E F1(en)2.5 E(vironment v)-.4 E(ariable.)-.25 E F2
+(comment\255begin \()108 336 Q F1<99>A F2(#)A F1<9a>A F2(\))A F1 .477
+(The string that the)144 348 R F2 -.18(re)2.977 G .477
+(adline insert\255comment).18 F F1 .477(command inserts.)2.977 F .477
+(This command is bound to)5.477 F F2(M\255#)2.977 E F1
+(in emacs mode and to)144 360 Q F2(#)2.5 E F1(in vi command mode.)2.5 E
+F2(completion\255display\255width \(\2551\))108 372 Q F1 1.453(The numb\
+er of screen columns used to display possible matches when performing c\
+ompletion.)144 384 R 1.106(The v)144 396 R 1.106(alue is ignored if it \
+is less than 0 or greater than the terminal screen width.)-.25 F 3.606
+(Av)6.106 G 1.106(alue of 0)-3.856 F
+(causes matches to be displayed one per line.)144 408 Q(The def)5 E
+(ault v)-.1 E(alue is \2551.)-.25 E F2(completion\255ignor)108 420 Q
+(e\255case \(Off\))-.18 E F1(If set to)144 432 Q F2(On)2.5 E F1(,)A F2
+-.18(re)2.5 G(adline).18 E F1
+(performs \214lename matching and completion in a case\255insensiti)2.5
+E .3 -.15(ve f)-.25 H(ashion.).05 E F2
+(completion\255map\255case \(Off\))108 444 Q F1 1.574(If set to)144 456
+R F2(On)4.074 E F1 4.074(,a)C(nd)-4.074 E F2(completion\255ignor)4.074 E
+(e\255case)-.18 E F1 1.574(is enabled,)4.074 F F2 -.18(re)4.074 G
+(adline).18 E F1 1.574(treats h)4.074 F 1.574(yphens \()-.05 F F0<ad>A
+F1 4.073(\)a)C 1.573(nd under)-4.073 F(-)-.2 E(scores \()144 468 Q F0(_)
+A F1 2.5(\)a)C 2.5(se)-2.5 G(qui)-2.5 E -.25(va)-.25 G
+(lent when performing case\255insensiti).25 E .3 -.15(ve \214)-.25 H
+(lename matching and completion.).15 E F2(completion\255pr)108 480 Q
+(e\214x\255display\255length \(0\))-.18 E F1 .689(The maximum length in\
+ characters of the common pre\214x of a list of possible completions th\
+at is)144 492 R .244(displayed without modi\214cation.)144 504 R .243
+(When set to a v)5.243 F .243(alue greater than zero,)-.25 F F2 -.18(re)
+2.743 G(adline).18 E F1 .243(replaces common)2.743 F(pre\214x)144 516 Q
+.102(es longer than this v)-.15 F .102
+(alue with an ellipsis when displaying possible completions.)-.25 F .103
+(If a comple-)5.102 F .135(tion be)144 528 R .135
+(gins with a period, and)-.15 F F2(eadline)2.635 E F1 .134
+(is completing \214lenames, it uses three underscores instead of)2.635 F
+(an ellipsis.)144 540 Q F2(completion\255query\255items \(100\))108 552
+Q F1 .529(This determines when the user is queried about vie)144 564 R
+.53(wing the number of possible completions gen-)-.25 F .561
+(erated by the)144 576 R F2(possible\255completions)3.061 E F1 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 588 R .783(If the number of possible completions is\
+ greater than or equal to the v)5.782 F .783(alue of this)-.25 F -.25
+(va)144 600 S(riable,).25 E F2 -.18(re)3.529 G(adline).18 E F1 1.029
+(asks whether or not the user wishes to vie)3.529 F 3.528(wt)-.25 G
+1.028(hem; otherwise)-3.528 F F2 -.18(re)3.528 G(adline).18 E F1(simply)
+3.528 E 1.349(lists them on the terminal.)144 612 R 3.849(Az)6.349 G
+1.349(ero v)-3.849 F 1.349(alue means)-.25 F F2 -.18(re)3.849 G(adline)
+.18 E F1 1.35(should ne)3.849 F -.15(ve)-.25 G 3.85(ra).15 G 1.35
+(sk; ne)-3.85 F -.05(ga)-.15 G(ti).05 E 1.65 -.15(ve v)-.25 H 1.35
+(alues are)-.1 F(treated as zero.)144 624 Q F2(con)108 636 Q -.1(ve)-.4
+G(rt\255meta \(On\)).1 E F1 .536(If set to)144 648 R F2(On)3.036 E F1(,)
+A F2 -.18(re)3.036 G(adline).18 E F1(con)3.036 E -.15(ve)-.4 G .535
+(rts characters it reads that ha).15 F .835 -.15(ve t)-.2 H .535
+(he eighth bit set to an ASCII k).15 F .835 -.15(ey s)-.1 H(e-).15 E
+.425(quence by clearing the eighth bit and pre\214xing it with an escap\
+e character \(con)144 660 R -.15(ve)-.4 G .426(rting the charac-).15 F
+1.044(ter to ha)144 672 R 1.344 -.15(ve t)-.2 H 1.044
+(he meta pre\214x\).).15 F 1.044(The def)6.044 F 1.044(ault is)-.1 F F0
+(On)3.544 E F1 3.544(,b)C(ut)-3.744 E F2 -.18(re)3.544 G(adline).18 E F1
+1.044(sets it to)3.544 F F0(Of)3.543 E(f)-.18 E F1 1.043
+(if the locale contains)3.543 F .53
+(characters whose encodings may include bytes with the eighth bit set.)
+144 684 R .53(This v)5.53 F .53(ariable is dependent)-.25 F .476(on the)
+144 696 R F2(LC_CTYPE)2.976 E F1 .476(locale cate)2.976 F(gory)-.15 E
+2.976(,a)-.65 G .476(nd may change if the locale changes.)-2.976 F .476
+(This v)5.476 F .476(ariable also af-)-.25 F(fects k)144 708 Q .3 -.15
+(ey b)-.1 H(indings; see the description of).15 E F2 -.25(fo)2.5 G -.18
+(rc).25 G(e\255meta\255pr).18 E(e\214x)-.18 E F1(belo)2.5 E -.65(w.)-.25
+G(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(48)185.955 E 0 Cg EP
+%%Page: 49 49
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF
+(disable\255completion \(Off\))108 84 Q F1 .708(If set to)144 96 R F2
+(On)3.208 E F1(,)A F2 -.18(re)3.208 G(adline).18 E F1 .708(inhibits w)
+3.208 F .709(ord completion.)-.1 F .709
+(Completion characters are inserted into the line)5.709 F(as if the)144
+108 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F2(self-insert)2.5 E F1(.)A
+F2(echo\255contr)108 120 Q(ol\255characters \(On\))-.18 E F1 1.037
+(When set to)144 132 R F2(On)3.537 E F1 3.537(,o)C 3.537(no)-3.537 G
+1.037(perating systems that indicate the)-3.537 F 3.537(ys)-.15 G 1.036
+(upport it,)-3.537 F F2 -.18(re)3.536 G(adline).18 E F1 1.036
+(echoes a character)3.536 F
+(corresponding to a signal generated from the k)144 144 Q -.15(ey)-.1 G
+(board.).15 E F2(editing\255mode \(emacs\))108 156 Q F1 .013
+(Controls whether)144 168 R F2 -.18(re)2.513 G(adline).18 E F1 .013
+(uses a set of k)2.513 F .313 -.15(ey b)-.1 H .013(indings similar to)
+.15 F F0(Emacs)2.513 E F1(or)2.513 E F0(vi)2.513 E F1(.)A F2
+(editing\255mode)5.013 E F1 .014(can be)2.514 F(set to either)144 180 Q
+F2(emacs)2.5 E F1(or)2.5 E F2(vi)2.5 E F1(.)A F2
+(emacs\255mode\255string \(@\))108 192 Q F1 .518(If the)144 204 R F0
+(show\255mode\255in\255pr)3.018 E(ompt)-.45 E F1 -.25(va)3.018 G .517
+(riable is enabled, this string is displayed immediately before the).25
+F .622(last line of the primary prompt when emacs editing mode is acti)
+144 216 R -.15(ve)-.25 G 5.622(.T).15 G .622(he v)-5.622 F .622
+(alue is e)-.25 F .622(xpanded lik)-.15 F 3.122(ea)-.1 G -.1(ke)144 228
+S 3.118(yb)-.05 G .617
+(inding, so the standard set of meta- and control- pre\214x)-3.118 F
+.617(es and backslash escape sequences is)-.15 F -.2(av)144 240 S 2.576
+(ailable. The)-.05 F .076(\\1 and \\2 escapes be)2.576 F .077
+(gin and end sequences of non-printing characters, which can be)-.15 F
+(used to embed a terminal control sequence into the mode string.)144 252
+Q F2(enable\255acti)108 264 Q -.1(ve)-.1 G<ad72>.1 E(egion \(On\))-.18 E
+F1 .622(When this v)144 276 R .622(ariable is set to)-.25 F F0(On)3.121
+E F1(,)A F2 -.18(re)3.121 G(adline).18 E F1(allo)3.121 E .621
+(ws certain commands to designate the re)-.25 F .621(gion as)-.15 F F0
+(ac-)3.121 E(tive)144 288 Q F1 5.082(.W)C .082(hen the re)-5.082 F .082
+(gion is acti)-.15 F -.15(ve)-.25 G(,).15 E F2 -.18(re)2.583 G(adline)
+.18 E F1 .083(highlights the te)2.583 F .083(xt in the re)-.15 F .083
+(gion using the v)-.15 F .083(alue of the)-.25 F F2(ac-)2.583 E(ti)144
+300 Q -.1(ve)-.1 G<ad72>.1 E(egion\255start\255color)-.18 E F1 -.25(va)
+2.775 G .275(riable, which def).25 F .274
+(aults to the string that enables the terminal')-.1 F 2.774(ss)-.55 G
+(tandout)-2.774 E 3.149(mode. The)144 312 R(acti)3.149 E .949 -.15(ve r)
+-.25 H -.15(eg).15 G .649(ion sho).15 F .649(ws the te)-.25 F .649
+(xt inserted by brack)-.15 F .649(eted-paste and an)-.1 F 3.15(ym)-.15 G
+.65(atching te)-3.15 F .65(xt found)-.15 F
+(by incremental and non-incremental history searches.)144 324 Q F2
+(enable\255brack)108 336 Q(eted\255paste \(On\))-.1 E F1 .688
+(When set to)144 348 R F2(On)3.187 E F1(,)A F2 -.18(re)3.187 G(adline)
+.18 E F1 .687
+(con\214gures the terminal to insert each paste into the editing b)3.187
+F(uf)-.2 E .687(fer as a)-.25 F .799(single string of characters, inste\
+ad of treating each character as if it had been read from the k)144 360
+R -.15(ey)-.1 G(-).15 E 2.625(board. This)144 372 R .125(is called)2.625
+F F0(br)2.625 E(ac)-.15 E -.1(ke)-.2 G .125(ted\255paste mode).1 F F1
+2.625(;i)C 2.625(tp)-2.625 G(re)-2.625 E -.15(ve)-.25 G(nts).15 E F2
+-.18(re)2.625 G(adline).18 E F1 .124(from e)2.624 F -.15(xe)-.15 G .124
+(cuting an).15 F 2.624(ye)-.15 G .124(diting com-)-2.624 F
+(mands bound to k)144 384 Q .3 -.15(ey s)-.1 H
+(equences appearing in the pasted te).15 E(xt.)-.15 E F2(enable\255k)108
+396 Q(eypad \(Off\))-.1 E F1 .403(When set to)144 408 R F2(On)2.903 E F1
+(,)A F2 -.18(re)2.903 G(adline).18 E F1 2.904(tries to)2.904 F .404
+(enable the application k)2.904 F -.15(ey)-.1 G .404
+(pad when it is called.).15 F .404(Some systems)5.404 F
+(need this to enable the arro)144 420 Q 2.5(wk)-.25 G -.15(ey)-2.6 G(s.)
+.15 E F2(enable\255meta\255k)108 432 Q(ey \(On\))-.1 E F1 .03
+(When set to)144 444 R F2(On)2.53 E F1(,)A F2 -.18(re)2.53 G(adline).18
+E F1 .03(tries to enable an)2.53 F 2.529(ym)-.15 G .029
+(eta modi\214er k)-2.529 F .329 -.15(ey t)-.1 H .029
+(he terminal claims to support.).15 F(On)5.029 E(man)144 456 Q 2.985(yt)
+-.15 G .485(erminals, the Meta k)-2.985 F .785 -.15(ey i)-.1 H 2.985(su)
+.15 G .485(sed to send eight-bit characters; this v)-2.985 F .485
+(ariable checks for the ter)-.25 F(-)-.2 E .656(minal capability that i\
+ndicates the terminal can enable and disable a mode that sets the eight\
+h bit)144 468 R(of a character \(0200\) if the Meta k)144 480 Q .3 -.15
+(ey i)-.1 H 2.5(sh).15 G(eld do)-2.5 E
+(wn when the character is typed \(a meta character\).)-.25 E F2
+(expand\255tilde \(Off\))108 492 Q F1(If set to)144 504 Q F2(On)2.5 E F1
+(,)A F2 -.18(re)2.5 G(adline).18 E F1(performs tilde e)2.5 E
+(xpansion when it attempts w)-.15 E(ord completion.)-.1 E F2 -.25(fo)108
+516 S -.18(rc).25 G(e\255meta\255pr).18 E(e\214x \(Off\))-.18 E F1 .481
+(If set to)144 528 R F2(On)2.981 E F1(,)A F2 -.18(re)2.981 G(adline).18
+E F1 .481(modi\214es its beha)2.981 F .481(vior when binding k)-.2 F
+.782 -.15(ey s)-.1 H .482(equences containing \\M- or Meta-).15 F(\(see)
+144 540 Q F2 -.25(Ke)2.785 G 2.785(yB).25 G(indings)-2.785 E F1(abo)
+2.784 E -.15(ve)-.15 G 2.784(\)b).15 G 2.784(yc)-2.784 G(on)-2.784 E
+-.15(ve)-.4 G .284(rting a k).15 F .584 -.15(ey s)-.1 H .284
+(equence of the form \\M\255).15 F F0(C)A F1 .284(or Meta\255)2.784 F F0
+(C)A F1 .284(to the tw)2.784 F(o-)-.1 E .78(character sequence)144 552 R
+F2(ESC)3.28 E F0(C)3.28 E F1 .78(\(adding the meta pre\214x\).)3.28 F
+(If)5.78 E F2 -.25(fo)3.28 G -.18(rc).25 G(e\255meta\255pr).18 E(e\214x)
+-.18 E F1 .78(is set to)3.28 F F2(Off)3.28 E F1 .78(\(the de-)3.28 F -.1
+(fa)144 564 S(ult\),).1 E F2 -.18(re)2.917 G(adline).18 E F1 .417
+(uses the v)2.917 F .417(alue of the)-.25 F F2(con)2.916 E -.1(ve)-.4 G
+(rt\255meta).1 E F1 -.25(va)2.916 G .416
+(riable to determine whether to perform this).25 F(con)144 576 Q -.15
+(ve)-.4 G .095(rsion: if).15 F F2(con)2.595 E -.1(ve)-.4 G(rt\255meta).1
+E F1(is)2.595 E F2(On)2.595 E F1(,)A F2 -.18(re)2.595 G(adline).18 E F1
+.095(performs the con)2.595 F -.15(ve)-.4 G .095(rsion described abo).15
+F -.15(ve)-.15 G 2.595(;i).15 G 2.595(fi)-2.595 G 2.595(ti)-2.595 G(s)
+-2.595 E F2(Off)2.595 E F1(,)A F2 -.18(re)144 588 S(adline).18 E F1(con)
+2.5 E -.15(ve)-.4 G(rts).15 E F0(C)2.5 E F1
+(to a meta character by setting the eighth bit \(0200\).)2.5 E F2
+(history\255pr)108 600 Q(eser)-.18 E -.1(ve)-.1 G(\255point \(Off\)).1 E
+F1 .553(If set to)144 612 R F2(On)3.052 E F1 3.052(,t)C .552(he history\
+ code attempts to place point at the same location on each history line\
+ re-)-3.052 F(trie)144 624 Q -.15(ve)-.25 G 2.5(dw).15 G(ith)-2.5 E F2
+(pr)2.5 E -.15(ev)-.18 G(ious-history).15 E F1(or)2.5 E F2(next-history)
+2.5 E F1(.)A F2(history\255size \(unset\))108 636 Q F1 .948
+(Set the maximum number of history entries sa)144 648 R -.15(ve)-.2 G
+3.448(di).15 G 3.448(nt)-3.448 G .948(he history list.)-3.448 F .949
+(If set to zero, an)5.948 F 3.449(ye)-.15 G(xisting)-3.599 E .483
+(history entries are deleted and no ne)144 660 R 2.983(we)-.25 G .483
+(ntries are sa)-2.983 F -.15(ve)-.2 G 2.983(d. If).15 F .482(set to a v)
+2.983 F .482(alue less than zero, the num-)-.25 F .228
+(ber of history entries is not limited.)144 672 R .229(By def)5.229 F
+(ault,)-.1 E F2(bash)2.729 E F1 .229
+(sets the the maximum number of history en-)2.729 F 1.192
+(tries to the v)144 684 R 1.192(alue of the)-.25 F F2(HISTSIZE)3.692 E
+F1 1.191(shell v)3.691 F 3.691(ariable. Setting)-.25 F F0
+(history\255size)3.691 E F1 1.191(to a non-numeric v)3.691 F(alue)-.25 E
+(will set the maximum number of history entries to 500.)144 696 Q
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(49)185.955 E 0 Cg EP
+%%Page: 50 50
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(horizontal\255scr)108 84 Q
+(oll\255mode \(Off\))-.18 E F1 .848(Setting this v)144 96 R .848
+(ariable to)-.25 F F2(On)3.348 E F1(mak)3.349 E(es)-.1 E F2 -.18(re)
+3.349 G(adline).18 E F1 .849(use a single line for display)3.349 F 3.349
+(,s)-.65 G .849(crolling the input hori-)-3.349 F .068(zontally on a si\
+ngle screen line when it becomes longer than the screen width rather th\
+an wrapping)144 108 R(to a ne)144 120 Q 2.5(wl)-.25 G 2.5(ine. This)-2.5
+F(setting is automatically enabled for terminals of height 1.)2.5 E F2
+(input\255meta \(Off\))108 132 Q F1 .371(If set to)144 144 R F2(On)2.871
+E F1(,)A F2 -.18(re)2.871 G(adline).18 E F1 .371(enables eight-bit inpu\
+t \(that is, it does not clear the eighth bit in the charac-)2.871 F
+.718(ters it reads\), re)144 156 R -.05(ga)-.15 G .718
+(rdless of what the terminal claims it can support.).05 F .717(The def)
+5.717 F .717(ault is)-.1 F F0(Of)3.217 E(f)-.18 E F1 3.217(,b)C(ut)
+-3.417 E F2 -.18(re)3.217 G(ad-).18 E(line)144 168 Q F1 1.246
+(sets it to)3.746 F F0(On)3.746 E F1 1.246(if the locale contains chara\
+cters whose encodings may include bytes with the)3.746 F .786
+(eighth bit set.)144 180 R .786(This v)5.786 F .786
+(ariable is dependent on the)-.25 F F2(LC_CTYPE)3.286 E F1 .786
+(locale cate)3.286 F(gory)-.15 E 3.286(,a)-.65 G .786(nd its v)-3.286 F
+.786(alue may)-.25 F(change if the locale changes.)144 192 Q(The name)5
+E F2(meta\255\215ag)2.5 E F1(is a synon)2.5 E(ym for)-.15 E F2
+(input\255meta)2.5 E F1(.)A F2(isear)108 204 Q(ch\255terminators \()-.18
+E F1<99>A F2(C\255[C\255j)A F1<9a>A F2(\))A F1 .439(The string of chara\
+cters that should terminate an incremental search without subsequently \
+e)144 216 R -.15(xe)-.15 G(cut-).15 E .935
+(ing the character as a command.)144 228 R .935(If this v)5.935 F .935
+(ariable has not been gi)-.25 F -.15(ve)-.25 G 3.434(nav).15 G .934
+(alue, the characters)-3.684 F F0(ESC)3.434 E F1(and)144 240 Q F2
+(C\255j)2.5 E F1(terminate an incremental search.)2.5 E F2 -.1(ke)108
+252 S(ymap \(emacs\)).1 E F1 1.82(Set the current)144 264 R F2 -.18(re)
+4.32 G(adline).18 E F1 -.1(ke)4.32 G 4.32(ymap. The)-.05 F 1.82
+(set of v)4.32 F 1.82(alid k)-.25 F -.15(ey)-.1 G 1.82(map names is).15
+F F0 1.82(emacs, emacs\255standar)4.32 F(d,)-.37 E .042
+(emacs\255meta, emacs\255ctlx, vi, vi\255command)144 276 R F1 2.542(,a)C
+(nd)-2.542 E F0(vi\255insert)2.832 E F1(.).68 E F0(vi)5.042 E F1 .042
+(is equi)2.542 F -.25(va)-.25 G .042(lent to).25 F F0(vi\255command)
+2.541 E F1(;)A F0(emacs)2.541 E F1 .481(is equi)144 288 R -.25(va)-.25 G
+.481(lent to).25 F F0(emacs\255standar)2.981 E(d)-.37 E F1 5.481(.T)C
+.481(he def)-5.481 F .481(ault v)-.1 F .481(alue is)-.25 F F0(emacs)
+2.981 E F1 2.982(;t)C .482(he v)-2.982 F .482(alue of)-.25 F F2
+(editing\255mode)2.982 E F1 .482(also af-)2.982 F(fects the def)144 300
+Q(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F2 -.1(ke)108 312 S
+(yseq\255timeout \(500\)).1 E F1 .235(Speci\214es the duration)144 324 R
+F2 -.18(re)2.735 G(adline).18 E F1 .234(will w)2.735 F .234
+(ait for a character when reading an ambiguous k)-.1 F .534 -.15(ey s)
+-.1 H(equence).15 E .524(\(one that can form a complete k)144 336 R .824
+-.15(ey s)-.1 H .524(equence using the input read so f).15 F(ar)-.1 E
+3.025(,o)-.4 G 3.025(rc)-3.025 G .525(an tak)-3.025 F 3.025(ea)-.1 G
+.525(dditional in-)-3.025 F .18(put to complete a longer k)144 348 R .48
+-.15(ey s)-.1 H 2.679(equence\). If).15 F F2 -.18(re)2.679 G(adline).18
+E F1 .179(does not recei)2.679 F .479 -.15(ve a)-.25 H .479 -.15(ny i)
+.15 H .179(nput within the timeout,).15 F .15(it uses the shorter b)144
+360 R .15(ut complete k)-.2 F .45 -.15(ey s)-.1 H 2.651(equence. The).15
+F -.25(va)2.651 G .151(lue is speci\214ed in milliseconds, so a v).25 F
+.151(alue of)-.25 F 1.35(1000 means that)144 372 R F2 -.18(re)3.85 G
+(adline).18 E F1 1.35(will w)3.85 F 1.35
+(ait one second for additional input.)-.1 F 1.35(If this v)6.35 F 1.35
+(ariable is set to a)-.25 F -.25(va)144 384 S 1.283
+(lue less than or equal to zero, or to a non-numeric v).25 F(alue,)-.25
+E F2 -.18(re)3.783 G(adline).18 E F1 -.1(wa)3.783 G 1.283
+(its until another k).1 F 1.583 -.15(ey i)-.1 H(s).15 E
+(pressed to decide which k)144 396 Q .3 -.15(ey s)-.1 H
+(equence to complete.).15 E F2(mark\255dir)108 408 Q(ectories \(On\))
+-.18 E F1(If set to)144 420 Q F2(On)2.5 E F1 2.5(,c)C
+(ompleted directory names ha)-2.5 E .3 -.15(ve a s)-.2 H(lash appended.)
+.15 E F2(mark\255modi\214ed\255lines \(Off\))108 432 Q F1(If set to)144
+444 Q F2(On)2.5 E F1(,)A F2 -.18(re)2.5 G(adline).18 E F1
+(displays history lines that ha)2.5 E .3 -.15(ve b)-.2 H
+(een modi\214ed with a preceding asterisk \().15 E F2(*)A F1(\).)A F2
+(mark\255symlink)108 456 Q(ed\255dir)-.1 E(ectories \(Off\))-.18 E F1
+.227(If set to)144 468 R F2(On)2.727 E F1 2.727(,c)C .227
+(ompleted names which are symbolic links to directories ha)-2.727 F .527
+-.15(ve a s)-.2 H .226(lash appended, sub-).15 F(ject to the v)144 480 Q
+(alue of)-.25 E F2(mark\255dir)2.5 E(ectories)-.18 E F1(.)A F2
+(match\255hidden\255\214les \(On\))108 492 Q F1 .512(This v)144 504 R
+.513(ariable, when set to)-.25 F F2(On)3.013 E F1 3.013(,f)C(orces)
+-3.013 E F2 -.18(re)3.013 G(adline).18 E F1 .513
+(to match \214les whose names be)3.013 F .513(gin with a \231.)-.15 F
+5.513<9a28>-.7 G(hid-)-5.513 E .737
+(den \214les\) when performing \214lename completion.)144 516 R .737
+(If set to)5.737 F F2(Off)3.237 E F1 3.237(,t)C .736
+(he user must include the leading)-3.237 F<992e>144 528 Q 5<9a69>-.7 G
+2.5(nt)-5 G(he \214lename to be completed.)-2.5 E F2
+(menu\255complete\255display\255pr)108 540 Q(e\214x \(Off\))-.18 E F1
+1.585(If set to)144 552 R F2(On)4.085 E F1 4.085(,m)C 1.585(enu complet\
+ion displays the common pre\214x of the list of possible completions)
+-4.085 F(\(which may be empty\) before c)144 564 Q
+(ycling through the list.)-.15 E F2(output\255meta \(Off\))108 576 Q F1
+.27(If set to)144 588 R F2(On)2.77 E F1(,)A F2 -.18(re)2.77 G(adline).18
+E F1 .269(displays characters with the eighth bit set directly rather t\
+han as a meta-pre-)2.77 F<8c78>144 600 Q .437(ed escape sequence.)-.15 F
+.437(The def)5.437 F .437(ault is)-.1 F F0(Of)2.937 E(f)-.18 E F1 2.938
+(,b)C(ut)-3.138 E F2 -.18(re)2.938 G(adline).18 E F1 .438(sets it to)
+2.938 F F0(On)2.938 E F1 .438(if the locale contains charac-)2.938 F
+.393(ters whose encodings may include bytes with the eighth bit set.)144
+612 R .393(This v)5.393 F .393(ariable is dependent on the)-.25 F F2
+(LC_CTYPE)144 624 Q F1(locale cate)2.5 E(gory)-.15 E 2.5(,a)-.65 G
+(nd its v)-2.5 E(alue may change if the locale changes.)-.25 E F2
+(page\255completions \(On\))108 636 Q F1 .291(If set to)144 648 R F2(On)
+2.791 E F1(,)A F2 -.18(re)2.791 G(adline).18 E F1 .291
+(uses an internal pager resembling)2.791 F F0(mor)3.171 E(e)-.37 E F1
+.292(\(1\) to display a screenful of possible).18 F
+(completions at a time.)144 660 Q F2(pr)108 672 Q
+(efer\255visible\255bell)-.18 E F1(See)144 684 Q F2(bell\255style)2.5 E
+F1(.)A F2(print\255completions\255horizontally \(Off\))108 696 Q F1 .231
+(If set to)144 708 R F2(On)2.731 E F1(,)A F2 -.18(re)2.731 G(adline).18
+E F1 .231(displays completions with matches sorted horizontally in alph\
+abetical order)2.731 F(,)-.4 E(rather than do)144 720 Q(wn the screen.)
+-.25 E(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(50)185.955 E 0
+Cg EP
+%%Page: 51 51
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF -2.29 -.18(re v)108 84 T
+(ert\255all\255at\255newline \(Off\)).08 E F1 .772(If set to)144 96 R F2
+(On)3.272 E F1(,)A F2 -.18(re)3.272 G(adline).18 E F1 .773
+(will undo all changes to history lines before returning when e)3.272 F
+-.15(xe)-.15 G(cuting).15 E F2(ac-)3.273 E(cept\255line)144 108 Q F1
+5.663(.B)C 3.163(yd)-5.663 G(ef)-3.163 E .663
+(ault, history lines may be modi\214ed and retain indi)-.1 F .663
+(vidual undo lists across calls)-.25 F(to)144 120 Q F2 -.18(re)2.5 G
+(adline).18 E F1(.)A F2(sear)108 132 Q(ch\255ignor)-.18 E
+(e\255case \(Off\))-.18 E F1 .102(If set to)144 144 R F2(On)2.603 E F1
+(,)A F2 -.18(re)2.603 G(adline).18 E F1 .103(performs incremental and n\
+on-incremental history list searches in a case\255in-)2.603 F(sensiti)
+144 156 Q .3 -.15(ve f)-.25 H(ashion.).05 E F2(sho)108 168 Q
+(w\255all\255if\255ambiguous \(Off\))-.1 E F1 .304(This alters the def)
+144 180 R .304(ault beha)-.1 F .304(vior of the completion functions.)
+-.2 F .304(If set to)5.304 F F2(On)2.804 E F1 2.803(,w)C .303
+(ords which ha)-2.903 F .603 -.15(ve m)-.2 H(ore).15 E 1.264(than one p\
+ossible completion cause the matches to be listed immediately instead o\
+f ringing the)144 192 R(bell.)144 204 Q F2(sho)108 216 Q
+(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F1 5.346
+(This alters the def)144 228 R 5.346(ault beha)-.1 F 5.345
+(vior of the completion functions in a f)-.2 F 5.345(ashion similar to)
+-.1 F F2(sho)144 240 Q(w\255all\255if\255ambiguous)-.1 E F1 6.69(.I)C
+4.19(fs)-6.69 G 1.691(et to)-4.19 F F2(On)4.191 E F1 4.191(,w)C 1.691
+(ords which ha)-4.291 F 1.991 -.15(ve m)-.2 H 1.691
+(ore than one possible completion).15 F 1.04(without an)144 252 R 3.54
+(yp)-.15 G 1.039
+(ossible partial completion \(the possible completions don')-3.54 F
+3.539(ts)-.18 G 1.039(hare a common pre\214x\))-3.539 F(cause the match\
+es to be listed immediately instead of ringing the bell.)144 264 Q F2
+(sho)108 276 Q(w\255mode\255in\255pr)-.1 E(ompt \(Off\))-.18 E F1 1.021
+(If set to)144 288 R F2(On)3.521 E F1 3.521(,a)C 1.022
+(dd a string to the be)-3.521 F 1.022
+(ginning of the prompt indicating the editing mode: emacs, vi)-.15 F
+(command, or vi insertion.)144 300 Q(The mode strings are user)5 E
+(-settable \(e.g.,)-.2 E F0(emacs\255mode\255string)2.5 E F1(\).)A F2
+(skip\255completed\255text \(Off\))108 312 Q F1 .095(If set to)144 324 R
+F2(On)2.595 E F1 2.595(,t)C .095(his alters the def)-2.595 F .095
+(ault completion beha)-.1 F .094
+(vior when inserting a single match into the line.)-.2 F(It')144 336 Q
+3.393(so)-.55 G .893(nly acti)-3.393 F 1.193 -.15(ve w)-.25 H .893
+(hen performing completion in the middle of a w).15 F 3.394(ord. If)-.1
+F(enabled,)3.394 E F2 -.18(re)3.394 G(adline).18 E F1(does)3.394 E .283
+(not insert characters from the completion that match characters after \
+point in the w)144 348 R .282(ord being com-)-.1 F
+(pleted, so portions of the w)144 360 Q(ord follo)-.1 E
+(wing the cursor are not duplicated.)-.25 E F2
+(vi\255cmd\255mode\255string \(\(cmd\)\))108 372 Q F1 .517(If the)144
+384 R F0(show\255mode\255in\255pr)3.017 E(ompt)-.45 E F1 -.25(va)3.017 G
+.518(riable is enabled, this string is displayed immediately before the)
+.25 F .475(last line of the primary prompt when vi editing mode is acti)
+144 396 R .775 -.15(ve a)-.25 H .475(nd in command mode.).15 F .475
+(The v)5.475 F(alue)-.25 E .134(is e)144 408 R .134(xpanded lik)-.15 F
+2.634(eak)-.1 G .434 -.15(ey b)-2.734 H .134
+(inding, so the standard set of meta- and control- pre\214x).15 F .135
+(es and backslash es-)-.15 F .405(cape sequences is a)144 420 R -.25(va)
+-.2 G 2.905(ilable. The).25 F .405(\\1 and \\2 escapes be)2.905 F .404
+(gin and end sequences of non-printing char)-.15 F(-)-.2 E(acters, whic\
+h can be used to embed a terminal control sequence into the mode string\
+.)144 432 Q F2(vi\255ins\255mode\255string \(\(ins\)\))108 444 Q F1 .517
+(If the)144 456 R F0(show\255mode\255in\255pr)3.017 E(ompt)-.45 E F1
+-.25(va)3.017 G .518
+(riable is enabled, this string is displayed immediately before the).25
+F .186(last line of the primary prompt when vi editing mode is acti)144
+468 R .486 -.15(ve a)-.25 H .186(nd in insertion mode.).15 F .186(The v)
+5.186 F .186(alue is)-.25 F -.15(ex)144 480 S .715(panded lik).15 F
+3.215(eak)-.1 G 1.015 -.15(ey b)-3.315 H .716
+(inding, so the standard set of meta- and control- pre\214x).15 F .716
+(es and backslash es-)-.15 F .405(cape sequences is a)144 492 R -.25(va)
+-.2 G 2.905(ilable. The).25 F .405(\\1 and \\2 escapes be)2.905 F .404
+(gin and end sequences of non-printing char)-.15 F(-)-.2 E(acters, whic\
+h can be used to embed a terminal control sequence into the mode string\
+.)144 504 Q F2(visible\255stats \(Off\))108 516 Q F1 .846(If set to)144
+528 R F2(On)3.346 E F1 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 F0(stat)3.346
+E F1 .846(\(2\) is appended to the \214lename)B
+(when listing possible completions.)144 540 Q F2
+(Readline Conditional Constructs)87 556.8 Q(Readline)108 568.8 Q F1 .494
+(implements a f)2.994 F .494(acility similar in spirit to the condition\
+al compilation features of the C preproces-)-.1 F .774(sor which allo)
+108 580.8 R .774(ws k)-.25 F 1.074 -.15(ey b)-.1 H .774(indings and v)
+.15 F .775(ariable settings to be performed as the result of tests.)-.25
+F .775(There are four)5.775 F(parser directi)108 592.8 Q -.15(ve)-.25 G
+2.5(sa).15 G -.25(va)-2.7 G(ilable.).25 E F2($if)108 609.6 Q F1(The)144
+609.6 Q F2($if)2.963 E F1 .463(construct allo)2.963 F .462(ws bindings \
+to be made based on the editing mode, the terminal being used,)-.25 F
+.787(or the application using)144 621.6 R F2 -.18(re)3.287 G(adline).18
+E F1 5.787(.T)C .787(he te)-5.787 F .787(xt of the test, after an)-.15 F
+3.288(yc)-.15 G .788(omparison operator)-3.288 F 3.288(,e)-.4 G .788
+(xtends to)-3.438 F(the end of the line; unless otherwise noted, no cha\
+racters are required to isolate it.)144 633.6 Q F2(mode)144 650.4 Q F1
+(The)180 650.4 Q F2(mode=)3.558 E F1 1.058(form of the)3.558 F F2($if)
+3.558 E F1(directi)3.558 E 1.358 -.15(ve i)-.25 H 3.558(su).15 G 1.058
+(sed to test whether)-3.558 F F2 -.18(re)3.557 G(adline).18 E F1 1.057
+(is in emacs or vi)3.557 F 3.065(mode. This)180 662.4 R .565
+(may be used in conjunction with the)3.065 F F2 .565(set k)3.065 F
+(eymap)-.1 E F1 .565(command, for instance, to)3.065 F .518
+(set bindings in the)180 674.4 R F0(emacs\255standar)3.018 E(d)-.37 E F1
+(and)3.018 E F0(emacs\255ctlx)3.018 E F1 -.1(ke)3.017 G .517
+(ymaps only if)-.05 F F2 -.18(re)3.017 G(adline).18 E F1 .517
+(is starting)3.017 F(out in emacs mode.)180 686.4 Q F2(term)144 703.2 Q
+F1(The)180 703.2 Q F2(term=)3.196 E F1 .696
+(form may be used to include terminal-speci\214c k)3.196 F .996 -.15
+(ey b)-.1 H .697(indings, perhaps to bind).15 F .654(the k)180 715.2 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 727.2 Q F2(=)3.231
+E F1 .731(is tested ag)3.231 F .732(ainst both the full name of the ter\
+minal and the portion of the terminal)-.05 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(51)185.955 E 0 Cg EP
+%%Page: 52 52
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .16(name before the \214rst)180 84 R/F2 10
+/Times-Bold@0 SF<ad>2.66 E F1 5.159(.T)C .159(his allo)-5.159 F(ws)-.25
+E F0(xterm)3.429 E F1 .159(to match both)2.979 F F0(xterm)3.429 E F1
+(and)2.979 E F0(xterm\255256color)3.429 E F1 2.659(,f).73 G(or)-2.659 E
+(instance.)180 96 Q F2 -.1(ve)144 112.8 S(rsion).1 E F1(The)180 124.8 Q
+F2 -.1(ve)2.89 G(rsion).1 E F1 .391
+(test may be used to perform comparisons ag)2.89 F .391
+(ainst speci\214c)-.05 F F2 -.18(re)2.891 G(adline).18 E F1 -.15(ve)
+2.891 G(rsions.).15 E(The)180 136.8 Q F2 -.1(ve)2.571 G(rsion).1 E F1
+-.15(ex)2.571 G .071(pands to the current).15 F F2 -.18(re)2.571 G
+(adline).18 E F1 -.15(ve)2.571 G 2.571(rsion. The).15 F .07
+(set of comparison operators in-)2.571 F(cludes)180 148.8 Q F2(=)3.063 E
+F1 3.063(,\()C(and)-3.063 E F2(==)3.063 E F1(\),)A F2(!=)3.063 E F1(,)A
+F2(<=)3.063 E F1(,)A F2(>=)3.063 E F1(,)A F2(<)3.063 E F1 3.063(,a)C(nd)
+-3.063 E F2(>)3.064 E F1 5.564(.T)C .564(he v)-5.564 F .564
+(ersion number supplied on the right side)-.15 F .318
+(of the operator consists of a major v)180 160.8 R .318(ersion number)
+-.15 F 2.818(,a)-.4 G 2.818(no)-2.818 G .318
+(ptional decimal point, and an op-)-2.818 F .46(tional minor v)180 172.8
+R .46(ersion \(e.g.,)-.15 F F2(7.1)2.96 E F1 2.96(\). If)B .461
+(the minor v)2.96 F .461(ersion is omitted, it def)-.15 F .461(aults to)
+-.1 F F2(0)2.961 E F1 5.461(.T)C .461(he op-)-5.461 F .83
+(erator may be separated from the string)180 184.8 R F2 -.1(ve)3.329 G
+(rsion).1 E F1 .829(and from the v)3.329 F .829(ersion number ar)-.15 F
+(gument)-.18 E(by whitespace.)180 196.8 Q F0(application)144.33 213.6 Q
+F1(The)180 225.6 Q F0(application)3.226 E F1 .726
+(construct is used to include application-speci\214c settings.)3.226 F
+.726(Each program)5.726 F .432(using the)180 237.6 R F2 -.18(re)2.932 G
+(adline).18 E F1 .432(library sets the)2.932 F F0 .431(application name)
+2.932 F F1 2.931(,a)C .431(nd an initialization \214le can test for)
+-2.931 F 2.535(ap)180 249.6 S .035(articular v)-2.535 F 2.535
+(alue. This)-.25 F .036(could be used to bind k)2.535 F .336 -.15(ey s)
+-.1 H .036(equences to functions useful for a spe-).15 F .397
+(ci\214c program.)180 261.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 273.6
+Q(vious w)-.25 E(ord in)-.1 E F2(bash)2.5 E F1(:)A/F3 10/Courier-Bold@0
+SF($if)180 290.4 Q/F4 10/Courier@0 SF(Bash)6 E 6(#Q)180 302.4 S
+(uote the current or previous word)-6 E("\\C-xq": "\\eb\\"\\ef\\"")180
+314.4 Q F3($endif)180 326.4 Q F0(variable)144.29 343.2 Q F1(The)180
+355.2 Q F0(variable)3.539 E F1 1.039(construct pro)3.539 F 1.039
+(vides simple equality tests for)-.15 F F2 -.18(re)3.539 G(adline).18 E
+F1 -.25(va)3.539 G 1.039(riables and v).25 F(alues.)-.25 E .08
+(The permitted comparison operators are)180 367.2 R F0(=)2.579 E F1(,)A
+F0(==)2.579 E F1 2.579(,a)C(nd)-2.579 E F0(!=)2.579 E F1 5.079(.T)C .079
+(he v)-5.079 F .079(ariable name must be sepa-)-.25 F .98(rated from th\
+e comparison operator by whitespace; the operator may be separated from)
+180 379.2 R 1.588(the v)180 391.2 R 1.587
+(alue on the right hand side by whitespace.)-.25 F 1.587
+(String and boolean v)6.587 F 1.587(ariables may be)-.25 F 2.5
+(tested. Boolean)180 403.2 R -.25(va)2.5 G(riables must be tested ag).25
+E(ainst the v)-.05 E(alues)-.25 E F0(on)2.5 E F1(and)2.5 E F0(of)2.5 E
+(f)-.18 E F1(.)A F2($else)108 420 Q F1(Commands in this branch of the)
+144 420 Q F2($if)2.5 E F1(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E
+-.15(xe)-.15 G(cuted if the test f).15 E(ails.)-.1 E F2($endif)108 436.8
+Q F1(This command, as seen in the pre)144 436.8 Q(vious e)-.25 E
+(xample, terminates an)-.15 E F2($if)2.5 E F1(command.)2.5 E F2
+($include)108 453.6 Q F1 .41(This directi)144 465.6 R .71 -.15(ve t)-.25
+H(ak).15 E .41(es a single \214lename as an ar)-.1 F .411
+(gument and reads commands and k)-.18 F .711 -.15(ey b)-.1 H .411
+(indings from).15 F(that \214le.)144 477.6 Q -.15(Fo)5 G 2.5(re).15 G
+(xample, the follo)-2.65 E(wing directi)-.25 E .3 -.15(ve w)-.25 H
+(ould read).05 E F0(/etc/inputr)4.166 E(c)-.37 E F1(:)1.666 E F2
+($include)144 494.4 Q F0(/etc/inputr)5.833 E(c)-.37 E F2(Sear)87 511.2 Q
+(ching)-.18 E(Readline)108 523.2 Q F1(pro)3.163 E .663
+(vides commands for searching through the command history \(see)-.15 F
+/F5 9/Times-Bold@0 SF(HIST)3.163 E(OR)-.162 E(Y)-.315 E F1(belo)2.913 E
+.663(w\) for lines)-.25 F(containing a speci\214ed string.)108 535.2 Q
+(There are tw)5 E 2.5(os)-.1 G(earch modes:)-2.5 E F0(incr)2.51 E
+(emental)-.37 E F1(and)3.01 E F0(non-incr)2.86 E(emental)-.37 E F1(.).51
+E .697(Incremental searches be)108 552 R .697
+(gin before the user has \214nished typing the search string.)-.15 F
+.698(As each character of the)5.698 F .979(search string is typed,)108
+564 R F2 -.18(re)3.479 G(adline).18 E F1 .978(displays the ne)3.478 F
+.978(xt entry from the history matching the string typed so f)-.15 F(ar)
+-.1 E(.)-.55 E .528(An incremental search requires only as man)108 576 R
+3.029(yc)-.15 G .529
+(haracters as needed to \214nd the desired history entry)-3.029 F 5.529
+(.W)-.65 G(hen)-5.529 E .517(using emacs editing mode, type)108 588 R F2
+(C\255r)3.017 E F1 .517(to search backw)3.017 F .517
+(ard in the history for a particular string.)-.1 F -.8(Ty)5.517 G(ping)
+.8 E F2(C\255s)3.017 E F1 .452(searches forw)108 600 R .452
+(ard through the history)-.1 F 5.452(.T)-.65 G .452
+(he characters present in the v)-5.452 F .452(alue of the)-.25 F F2
+(isear)2.953 E(ch-terminators)-.18 E F1 -.25(va)2.953 G(ri-).25 E .747
+(able are used to terminate an incremental search.)108 612 R .747
+(If that v)5.747 F .746(ariable has not been assigned a v)-.25 F(alue,)
+-.25 E F0(ESC)3.246 E F1(and)3.246 E F2(C\255j)108 624 Q F1 1.776
+(terminate an incremental search.)4.276 F F2(C\255g)6.776 E F1 1.777
+(aborts an incremental search and restores the original line.)4.276 F(W\
+hen the search is terminated, the history entry containing the search s\
+tring becomes the current line.)108 636 Q 2.052 -.8(To \214)108 652.8 T
+.452(nd other matching entries in the history list, type).8 F F2(C\255r)
+2.952 E F1(or)2.952 E F2(C\255s)2.952 E F1 .451(as appropriate.)2.952 F
+.451(This searches backw)5.451 F(ard)-.1 E .134(or forw)108 664.8 R .134
+(ard in the history for the ne)-.1 F .135
+(xt entry matching the search string typed so f)-.15 F(ar)-.1 E 5.135
+(.A)-.55 G .435 -.15(ny o)-5.135 H .135(ther k).15 F .435 -.15(ey s)-.1
+H(equence).15 E .716(bound to a)108 676.8 R F2 -.18(re)3.216 G(adline)
+.18 E F1 .715(command terminates the search and e)3.216 F -.15(xe)-.15 G
+.715(cutes that command.).15 F -.15(Fo)5.715 G 3.215(ri).15 G .715
+(nstance, a ne)-3.215 F(wline)-.25 E .601
+(terminates the search and accepts the line, thereby e)108 688.8 R -.15
+(xe)-.15 G .601(cuting the command from the history list.).15 F 3.102
+(Am)5.602 G -.15(ove)-3.102 G(-).15 E
+(ment command will terminate the search, mak)108 700.8 Q 2.5(et)-.1 G
+(he last line found the current line, and be)-2.5 E(gin editing.)-.15 E
+F2(Readline)108 717.6 Q F1 1.476
+(remembers the last incremental search string.)3.976 F 1.476(If tw)6.476
+F(o)-.1 E F2(C\255r)3.976 E F1 3.976(sa)C 1.475(re typed without an)
+-3.976 F 3.975(yi)-.15 G(nterv)-3.975 E(ening)-.15 E
+(characters de\214ning a ne)108 729.6 Q 2.5(ws)-.25 G(earch string,)-2.5
+E F2 -.18(re)2.5 G(adline).18 E F1(uses an)2.5 E 2.5(yr)-.15 G
+(emembered search string.)-2.5 E(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(52)185.955 E 0 Cg EP
+%%Page: 53 53
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .012(Non-incremental searches read the entire sear\
+ch string before starting to search for matching history entries.)108 84
+R(The search string may be typed by the user or be part of the contents\
+ of the current line.)108 96 Q/F2 10/Times-Bold@0 SF
+(Readline Command Names)87 112.8 Q F1 1.392(The follo)108 124.8 R 1.391
+(wing is a list of the names of the commands and the def)-.25 F 1.391
+(ault k)-.1 F 1.691 -.15(ey s)-.1 H 1.391(equences to which the).15 F
+3.891(ya)-.15 G(re)-3.891 E 2.5(bound. Command)108 136.8 R
+(names without an accompan)2.5 E(ying k)-.15 E .3 -.15(ey s)-.1 H
+(equence are unbound by def).15 E(ault.)-.1 E .054(In the follo)108
+153.6 R .054(wing descriptions,)-.25 F F0(point)2.554 E F1 .055
+(refers to the current cursor position, and)2.554 F F0(mark)2.555 E F1
+.055(refers to a cursor position)2.555 F(sa)108 165.6 Q -.15(ve)-.2 G
+2.679(db).15 G 2.679(yt)-2.679 G(he)-2.679 E F2(set\255mark)2.679 E F1
+2.679(command. The)2.679 F(te)2.679 E .178
+(xt between the point and mark is referred to as the)-.15 F F0 -.37(re)
+2.678 G(gion)-.03 E F1(.)A F2(Read-)5.178 E(line)108 177.6 Q F1 .381
+(has the concept of an)2.881 F F0 .381(active r)2.881 F -.4(eg)-.37 G
+(ion).4 E F1 2.881(:w)C .381(hen the re)-2.881 F .381(gion is acti)-.15
+F -.15(ve)-.25 G(,).15 E F2 -.18(re)2.881 G(adline).18 E F1 .382
+(redisplay highlights the re)2.881 F(gion)-.15 E 1.027(using the v)108
+189.6 R 1.027(alue of the)-.25 F F2(acti)3.527 E -.1(ve)-.1 G<ad72>.1 E
+(egion\255start\255color)-.18 E F1 -.25(va)3.527 G 3.527(riable. The).25
+F F2(enable\255acti)3.527 E -.1(ve)-.1 G<ad72>.1 E 1.027(egion r)-.18 F
+(eadline)-.18 E F1 -.25(va)3.527 G(riable).25 E(turns this on and of)108
+201.6 Q 2.5(f. Se)-.25 F -.15(ve)-.25 G(ral commands set the re).15 E
+(gion to acti)-.15 E -.15(ve)-.25 G 2.5(;t).15 G(hose are noted belo)
+-2.5 E -.65(w.)-.25 G F2(Commands f)87 218.4 Q(or Mo)-.25 E(ving)-.1 E
+(beginning\255of\255line \(C\255a\))108 230.4 Q F1(Mo)144 242.4 Q .3
+-.15(ve t)-.15 H 2.5(ot).15 G(he start of the current line.)-2.5 E
+(This may also be bound to the Home k)5 E .3 -.15(ey o)-.1 H 2.5(ns).15
+G(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2
+(end\255of\255line \(C\255e\))108 254.4 Q F1(Mo)144 266.4 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E
+(This may also be bound to the End k)5 E .3 -.15(ey o)-.1 H 2.5(ns).15 G
+(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2 -.25(fo)108 278.4 S
+(rward\255char \(C\255f\)).25 E F1(Mo)144 290.4 Q .3 -.15(ve f)-.15 H
+(orw).15 E(ard a character)-.1 E 5(.T)-.55 G
+(his may also be bound to the right arro)-5 E 2.5(wk)-.25 G .3 -.15
+(ey o)-2.6 H 2.5(ns).15 G(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2
+(backward\255char \(C\255b\))108 302.4 Q F1(Mo)144 314.4 Q .3 -.15(ve b)
+-.15 H(ack a character).15 E 5(.T)-.55 G
+(his may also be bound to the left arro)-5 E 2.5(wk)-.25 G .3 -.15(ey o)
+-2.6 H 2.5(ns).15 G(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2 -.25(fo)
+108 326.4 S(rward\255w).25 E(ord \(M\255f\))-.1 E F1(Mo)144 338.4 Q .822
+-.15(ve f)-.15 H(orw).15 E .522(ard to the end of the ne)-.1 F .523
+(xt w)-.15 F 3.023(ord. W)-.1 F .523
+(ords are composed of alphanumeric characters \(let-)-.8 F
+(ters and digits\).)144 350.4 Q F2(backward\255w)108 362.4 Q
+(ord \(M\255b\))-.1 E F1(Mo)144 374.4 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 386.4 Q F2(shell\255f)108 398.4
+Q(orward\255w)-.25 E(ord)-.1 E F1(Mo)144 410.4 Q .784 -.15(ve f)-.15 H
+(orw).15 E .484(ard to the end of the ne)-.1 F .484(xt w)-.15 F 2.984
+(ord. W)-.1 F .484(ords are delimited by non-quoted shell metacharac-)
+-.8 F(ters.)144 422.4 Q F2(shell\255backward\255w)108 434.4 Q(ord)-.1 E
+F1(Mo)144 446.4 Q .909 -.15(ve b)-.15 H .609
+(ack to the start of the current or pre).15 F .609(vious w)-.25 F 3.109
+(ord. W)-.1 F .608(ords are delimited by non-quoted shell)-.8 F
+(metacharacters.)144 458.4 Q F2(pr)108 470.4 Q -.15(ev)-.18 G
+(ious\255scr).15 E(een\255line)-.18 E F1 .89(Attempt to mo)144 482.4 R
+1.19 -.15(ve p)-.15 H .89(oint to the same ph).15 F .891
+(ysical screen column on the pre)-.05 F .891(vious ph)-.25 F .891
+(ysical screen line.)-.05 F .911(This will not ha)144 494.4 R 1.211 -.15
+(ve t)-.2 H .911(he desired ef).15 F .911(fect if the current)-.25 F F2
+-.18(re)3.411 G(adline).18 E F1 .91(line does not tak)3.41 F 3.41(eu)-.1
+G 3.41(pm)-3.41 G .91(ore than one)-3.41 F(ph)144 506.4 Q(ysical line o\
+r if point is not greater than the length of the prompt plus the screen\
+ width.)-.05 E F2(next\255scr)108 518.4 Q(een\255line)-.18 E F1 .481
+(Attempt to mo)144 530.4 R .781 -.15(ve p)-.15 H .481
+(oint to the same ph).15 F .481(ysical screen column on the ne)-.05 F
+.482(xt ph)-.15 F .482(ysical screen line.)-.05 F(This)5.482 E .05
+(will not ha)144 542.4 R .35 -.15(ve t)-.2 H .05(he desired ef).15 F .05
+(fect if the current)-.25 F F2 -.18(re)2.549 G(adline).18 E F1 .049
+(line does not tak)2.549 F 2.549(eu)-.1 G 2.549(pm)-2.549 G .049
+(ore than one ph)-2.549 F(ysical)-.05 E .033
+(line or if the length of the current)144 554.4 R F2 -.18(re)2.533 G
+(adline).18 E F1 .034
+(line is not greater than the length of the prompt plus the)2.533 F
+(screen width.)144 566.4 Q F2(clear\255display \(M\255C\255l\))108 578.4
+Q F1 1.499(Clear the screen and, if possible, the terminal')144 590.4 R
+3.999(ss)-.55 G 1.498(crollback b)-3.999 F(uf)-.2 E(fer)-.25 E 3.998(,t)
+-.4 G 1.498(hen redra)-3.998 F 3.998(wt)-.15 G 1.498(he current line,)
+-3.998 F(lea)144 602.4 Q
+(ving the current line at the top of the screen.)-.2 E F2(clear\255scr)
+108 614.4 Q(een \(C\255l\))-.18 E F1 1.36(Clear the screen, then redra)
+144 626.4 R 3.86(wt)-.15 G 1.36(he current line, lea)-3.86 F 1.36
+(ving the current line at the top of the screen.)-.2 F -.4(Wi)144 638.4
+S(th an ar).4 E
+(gument, refresh the current line without clearing the screen.)-.18 E F2
+-.18(re)108 650.4 S(draw\255curr).18 E(ent\255line)-.18 E F1
+(Refresh the current line.)144 662.4 Q F2(Commands f)87 679.2 Q
+(or Manipulating the History)-.25 E(accept\255line \(Newline, Retur)108
+691.2 Q(n\))-.15 E F1 .159(Accept the line re)144 703.2 R -.05(ga)-.15 G
+.159(rdless of where the cursor is.).05 F .158
+(If this line is non-empty)5.158 F 2.658(,a)-.65 G .158
+(dd it to the history list)-2.658 F .337(according to the state of the)
+144 715.2 R/F3 9/Times-Bold@0 SF(HISTCONTR)2.838 E(OL)-.27 E F1(and)
+2.588 E F2(HISTIGNORE)2.838 E F1 -.25(va)2.838 G 2.838(riables. If).25 F
+.338(the line is a modi-)2.838 F
+(\214ed history line, restore the history line to its original state.)
+144 727.2 Q(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(53)185.955
+E 0 Cg EP
+%%Page: 54 54
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(pr)108 84 Q -.15(ev)-.18 G
+(ious\255history \(C\255p\)).15 E F1 1.669(Fetch the pre)144 96 R 1.668
+(vious command from the history list, mo)-.25 F 1.668
+(ving back in the list.)-.15 F 1.668(This may also be)6.668 F
+(bound to the up arro)144 108 Q 2.5(wk)-.25 G .3 -.15(ey o)-2.6 H 2.5
+(ns).15 G(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2
+(next\255history \(C\255n\))108 120 Q F1 .214(Fetch the ne)144 132 R
+.214(xt command from the history list, mo)-.15 F .214(ving forw)-.15 F
+.214(ard in the list.)-.1 F .214(This may also be bound)5.214 F
+(to the do)144 144 Q(wn arro)-.25 E 2.5(wk)-.25 G .3 -.15(ey o)-2.6 H
+2.5(ns).15 G(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2
+(beginning\255of\255history \(M\255<\))108 156 Q F1(Mo)144 168 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he \214rst line in the history)-2.5 E(.)-.65 E
+F2(end\255of\255history \(M\255>\))108 180 Q F1(Mo)144 192 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 F2
+(operate\255and\255get\255next \(C\255o\))108 204 Q F1 .24
+(Accept the current line for e)144 216 R -.15(xe)-.15 G .24
+(cution as if a ne).15 F .24(wline had been entered, and fetch the ne)
+-.25 F .24(xt line rela-)-.15 F(ti)144 228 Q .61 -.15(ve t)-.25 H 2.81
+(ot).15 G .31(he current line from the history for editing.)-2.81 F 2.81
+(An)5.31 G .31(umeric ar)-2.81 F .31
+(gument, if supplied, speci\214es the)-.18 F
+(history entry to use instead of the current line.)144 240 Q F2
+(fetch\255history)108 252 Q F1 -.4(Wi)144 264 S .257(th a numeric ar).4
+F .257(gument, fetch that entry from the history list and mak)-.18 F
+2.756(ei)-.1 G 2.756(tt)-2.756 G .256(he current line.)-2.756 F -.4(Wi)
+5.256 G(th-).4 E(out an ar)144 276 Q(gument, mo)-.18 E .3 -.15(ve b)-.15
+H(ack to the \214rst entry in the history list.).15 E F2 -2.29 -.18
+(re v)108 288 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F1
+1.312(Search backw)144 300 R 1.312
+(ard starting at the current line and mo)-.1 F 1.312
+(ving \231up\232 through the history as necessary)-.15 F(.)-.65 E .29
+(This is an incremental search.)144 312 R .29(This command sets the re)
+5.29 F .29(gion to the matched te)-.15 F .29(xt and acti)-.15 F -.25(va)
+-.25 G .29(tes the).25 F(re)144 324 Q(gion.)-.15 E F2 -.25(fo)108 336 S
+(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F1 .972
+(Search forw)144 348 R .973(ard starting at the current line and mo)-.1
+F .973(ving \231do)-.15 F .973(wn\232 through the history as necessary)
+-.25 F(.)-.65 E .29(This is an incremental search.)144 360 R .29
+(This command sets the re)5.29 F .29(gion to the matched te)-.15 F .29
+(xt and acti)-.15 F -.25(va)-.25 G .29(tes the).25 F(re)144 372 Q(gion.)
+-.15 E F2(non\255incr)108 384 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18
+H(rse\255sear).15 E(ch\255history \(M\255p\))-.18 E F1 .164
+(Search backw)144 396 R .164(ard through the history starting at the cu\
+rrent line using a non-incremental search for)-.1 F 2.5(as)144 408 S
+(tring supplied by the user)-2.5 E 5(.T)-.55 G
+(he search string may match an)-5 E(ywhere in a history line.)-.15 E F2
+(non\255incr)108 420 Q(emental\255f)-.18 E(orward\255sear)-.25 E
+(ch\255history \(M\255n\))-.18 E F1 1.354(Search forw)144 432 R 1.354(a\
+rd through the history using a non-incremental search for a string supp\
+lied by the)-.1 F(user)144 444 Q 5(.T)-.55 G
+(he search string may match an)-5 E(ywhere in a history line.)-.15 E F2
+(history\255sear)108 456 Q(ch\255backward)-.18 E F1 .95(Search backw)144
+468 R .951(ard through the history for the string of characters between\
+ the start of the current)-.1 F .34(line and the point.)144 480 R .34
+(The search string must match at the be)5.34 F .34
+(ginning of a history line.)-.15 F .34(This is a non-)5.34 F
+(incremental search.)144 492 Q(This may be bound to the P)5 E(age Up k)
+-.15 E .3 -.15(ey o)-.1 H 2.5(ns).15 G(ome k)-2.5 E -.15(ey)-.1 G
+(boards.).15 E F2(history\255sear)108 504 Q(ch\255f)-.18 E(orward)-.25 E
+F1 .248(Search forw)144 516 R .249(ard through the history for the stri\
+ng of characters between the start of the current line)-.1 F .036
+(and the point.)144 528 R .036(The search string must match at the be)
+5.036 F .035(ginning of a history line.)-.15 F .035
+(This is a non-incre-)5.035 F(mental search.)144 540 Q
+(This may be bound to the P)5 E(age Do)-.15 E(wn k)-.25 E .3 -.15(ey o)
+-.1 H 2.5(ns).15 G(ome k)-2.5 E -.15(ey)-.1 G(boards.).15 E F2
+(history\255substring\255sear)108 552 Q(ch\255backward)-.18 E F1 .95
+(Search backw)144 564 R .951(ard through the history for the string of \
+characters between the start of the current)-.1 F .676
+(line and the point.)144 576 R .676(The search string may match an)5.676
+F .676(ywhere in a history line.)-.15 F .675(This is a non-incre-)5.676
+F(mental search.)144 588 Q F2(history\255substring\255sear)108 600 Q
+(ch\255f)-.18 E(orward)-.25 E F1 .248(Search forw)144 612 R .249(ard th\
+rough the history for the string of characters between the start of the\
+ current line)-.1 F .319(and the point.)144 624 R .319
+(The search string may match an)5.319 F .319(ywhere in a history line.)
+-.15 F .318(This is a non-incremental)5.318 F(search.)144 636 Q F2
+(yank\255nth\255ar)108 648 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F1 .622
+(Insert the \214rst ar)144 660 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 .773(at point.)144 672 R -.4(Wi)5.773 G .773
+(th an ar).4 F(gument)-.18 E F0(n)3.633 E F1 3.273(,i).24 G .773
+(nsert the)-3.273 F F0(n)3.273 E F1 .773(th w)B .773(ord from the pre)
+-.1 F .773(vious command \(the w)-.25 F .773(ords in the)-.1 F(pre)144
+684 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 F0(n)2.791 E F1 .291
+(th w)B .292(ord from the end of)-.1 F .699(the pre)144 696 R .699
+(vious command.)-.25 F .699(Once the ar)5.699 F(gument)-.18 E F0(n)3.199
+E F1 .698(is computed, this uses the history e)3.199 F .698(xpansion f)
+-.15 F(acili-)-.1 E(ties to e)144 708 Q(xtract the)-.15 E F0(n)2.5 E F1
+(th w)A(ord, as if the \231!)-.1 E F0(n)A F1 2.5<9a68>C(istory e)-2.5 E
+(xpansion had been speci\214ed.)-.15 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(54)185.955 E 0 Cg EP
+%%Page: 55 55
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(yank\255last\255ar)108 84 Q
+2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F1 1.307
+(Insert the last ar)144 96 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 108 S .204(th a numeric ar).4
+F .204(gument, beha)-.18 F .504 -.15(ve ex)-.2 H .204(actly lik).15 F(e)
+-.1 E F2(yank\255nth\255ar)2.704 E(g)-.1 E F1 5.203(.S)C(uccessi)-5.203
+E .503 -.15(ve c)-.25 H .203(alls to).15 F F2(yank\255last\255ar)2.703 E
+(g)-.1 E F1(mo)144 120 Q .806 -.15(ve b)-.15 H .507
+(ack through the history list, inserting the last w).15 F .507
+(ord \(or the w)-.1 F .507(ord speci\214ed by the ar)-.1 F(gument)-.18 E
+.416(to the \214rst call\) of each line in turn.)144 132 R(An)5.416 E
+2.916(yn)-.15 G .416(umeric ar)-2.916 F .416
+(gument supplied to these successi)-.18 F .715 -.15(ve c)-.25 H .415
+(alls de-).15 F 1.217(termines the direction to mo)144 144 R 1.518 -.15
+(ve t)-.15 H 1.218(hrough the history).15 F 6.218(.A)-.65 G(ne)-2.5 E
+-.05(ga)-.15 G(ti).05 E 1.518 -.15(ve a)-.25 H -.18(rg).15 G 1.218
+(ument switches the direction).18 F .419
+(through the history \(back or forw)144 156 R 2.919(ard\). This)-.1 F
+.419(uses the history e)2.919 F .418(xpansion f)-.15 F .418
+(acilities to e)-.1 F .418(xtract the last)-.15 F -.1(wo)144 168 S
+(rd, as if the \231!$\232 history e).1 E(xpansion had been speci\214ed.)
+-.15 E F2(shell\255expand\255line \(M\255C\255e\))108 180 Q F1 .367
+(Expand the line by performing shell w)144 192 R .368(ord e)-.1 F 2.868
+(xpansions. This)-.15 F .368(performs alias and history e)2.868 F
+(xpansion,)-.15 E F2($)144 204 Q F1<08>A F0(string)A F1 3.358<0861>C(nd)
+-3.358 E F2($)3.358 E F1(")A F0(string)A F1 3.358("q)C .857
+(uoting, tilde e)-3.358 F .857(xpansion, parameter and v)-.15 F .857
+(ariable e)-.25 F .857(xpansion, arithmetic e)-.15 F(x-)-.15 E .548
+(pansion, command and process substitution, w)144 216 R .548
+(ord splitting, and quote remo)-.1 F -.25(va)-.15 G 3.049(l. An).25 F
+-.15(ex)3.049 G .549(plicit ar).15 F(gu-)-.18 E .61
+(ment suppresses command and process substitution.)144 228 R(See)5.61 E
+/F3 9/Times-Bold@0 SF(HIST)3.109 E(OR)-.162 E 2.859(YE)-.315 G(XP)-2.859
+E(ANSION)-.666 E F1(belo)2.859 E 3.109(wf)-.25 G .609(or a de-)-3.109 F
+(scription of history e)144 240 Q(xpansion.)-.15 E F2
+(history\255expand\255line \(M\255\000\))108 252 Q F1 .938
+(Perform history e)144 264 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 F1(belo)3.189 E 3.439(wf)-.25 G .939(or a descrip-)
+-3.439 F(tion of history e)144 276 Q(xpansion.)-.15 E F2(magic\255space)
+108 288 Q F1 .438(Perform history e)144 300 R .438
+(xpansion on the current line and insert a space.)-.15 F(See)5.437 E F3
+(HIST)2.937 E(OR)-.162 E 2.687(YE)-.315 G(XP)-2.687 E(ANSION)-.666 E F1
+(be-)2.687 E(lo)144 312 Q 2.5(wf)-.25 G(or a description of history e)
+-2.5 E(xpansion.)-.15 E F2(alias\255expand\255line)108 324 Q F1 .394
+(Perform alias e)144 336 R .394(xpansion on the current line.)-.15 F
+(See)5.395 E F3(ALIASES)2.895 E F1(abo)2.645 E .695 -.15(ve f)-.15 H
+.395(or a description of alias e).15 F(xpan-)-.15 E(sion.)144 348 Q F2
+(history\255and\255alias\255expand\255line)108 360 Q F1
+(Perform history and alias e)144 372 Q(xpansion on the current line.)
+-.15 E F2(insert\255last\255ar)108 384 Q(gument \(M\255.)-.1 E 2.5(,M)
+.833 G -1.667(\255_ \))-2.5 F F1 2.5(As)144 396 S(ynon)-2.5 E(ym for)
+-.15 E F2(yank\255last\255ar)2.5 E(g)-.1 E F1(.)A F2
+(edit\255and\255execute\255command \(C\255x C\255e\))108 408 Q F1(In)144
+420 Q -.2(vo)-.4 G .347 -.1(ke a).2 H 2.647(ne).1 G .146
+(ditor on the current command line, and e)-2.647 F -.15(xe)-.15 G .146
+(cute the result as shell commands.).15 F F2(Bash)5.146 E F1(at-)2.646 E
+(tempts to in)144 432 Q -.2(vo)-.4 G -.1(ke).2 G F3($VISU)2.6 E(AL)-.54
+E/F4 9/Times-Roman@0 SF(,)A F3($EDIT)2.25 E(OR)-.162 E F4(,)A F1(and)
+2.25 E F0(emacs)2.5 E F1(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 448.8 Q(or Changing T)-.25 E
+(ext)-.92 E F0(end\255of\255\214le)108 460.8 Q F2(\(usually C\255d\))2.5
+E F1 .651(The character indicating end-of-\214le as set, for e)144 472.8
+R .651(xample, by)-.15 F F0(stty)3.491 E F1 3.151(\(1\). If).32 F .652
+(this character is read when)3.152 F .03
+(there are no characters on the line, and point is at the be)144 484.8 R
+.029(ginning of the line,)-.15 F F2 -.18(re)2.529 G(adline).18 E F1 .029
+(interprets it as)2.529 F(the end of input and returns)144 496.8 Q F3
+(EOF)2.5 E F4(.)A F2(delete\255char \(C\255d\))108 508.8 Q F1 .441
+(Delete the character at point.)144 520.8 R .442
+(If this function is bound to the same character as the tty)5.441 F F2
+(EOF)2.942 E F1(char)2.942 E(-)-.2 E(acter)144 532.8 Q 2.539(,a)-.4 G(s)
+-2.539 E F2(C\255d)2.539 E F1 .039(commonly is, see abo)2.539 F .339
+-.15(ve f)-.15 H .039(or the ef).15 F 2.539(fects. This)-.25 F .039
+(may also be bound to the Delete k)2.539 F .338 -.15(ey o)-.1 H(n).15 E
+(some k)144 544.8 Q -.15(ey)-.1 G(boards.).15 E F2
+(backward\255delete\255char \(Rubout\))108 556.8 Q F1 .552
+(Delete the character behind the cursor)144 568.8 R 5.553(.W)-.55 G .553
+(hen gi)-5.553 F -.15(ve)-.25 G 3.053(nan).15 G .553(umeric ar)-3.053 F
+.553(gument, sa)-.18 F .853 -.15(ve t)-.2 H .553(he deleted te).15 F
+.553(xt on)-.15 F(the kill ring.)144 580.8 Q F2 -.25(fo)108 592.8 S
+(rward\255backward\255delete\255char).25 E F1 .474
+(Delete the character under the cursor)144 604.8 R 2.974(,u)-.4 G .474
+(nless the cursor is at the end of the line, in which case the)-2.974 F
+(character behind the cursor is deleted.)144 616.8 Q F2
+(quoted\255insert \(C\255q, C\255v\))108 628.8 Q F1 .778(Add the ne)144
+640.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 F2(C\255q)3.279 E F1 3.279
+(,f)C(or)-3.279 E -.15(ex)144 652.8 S(ample.).15 E F2
+(tab\255insert \(C\255v T)108 664.8 Q(AB\))-.9 E F1
+(Insert a tab character)144 676.8 Q(.)-.55 E F2
+(self\255insert \(a, b, A, 1, !,)108 688.8 Q F1 1.666(...)2.5 G F2(\))
+-1.666 E F1(Insert the character typed.)144 700.8 Q(GNU Bash 5.3)72 768
+Q(2024 December 12)136.795 E(55)185.955 E 0 Cg EP
+%%Page: 56 56
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(brack)108 84 Q
+(eted\255paste\255begin)-.1 E F1 .573
+(This function is intended to be bound to the \231brack)144 96 R .572
+(eted paste\232 escape sequence sent by some ter)-.1 F(-)-.2 E .45
+(minals, and such a binding is assigned by def)144 108 R 2.95(ault. It)
+-.1 F(allo)2.95 E(ws)-.25 E F2 -.18(re)2.95 G(adline).18 E F1 .45
+(to insert the pasted te)2.95 F .45(xt as a)-.15 F .952(single unit wit\
+hout treating each character as if it had been read from the k)144 120 R
+-.15(ey)-.1 G 3.451(board. The).15 F(pasted)3.451 E 1.118
+(characters are inserted as if each one w)144 132 R 1.119(as bound to)
+-.1 F F2(self\255insert)3.619 E F1 1.119(instead of e)3.619 F -.15(xe)
+-.15 G 1.119(cuting an).15 F 3.619(ye)-.15 G(diting)-3.619 E(commands.)
+144 144 Q(Brack)144 156 Q(eted paste sets the re)-.1 E
+(gion to the inserted te)-.15 E(xt and acti)-.15 E -.25(va)-.25 G
+(tes the re).25 E(gion.)-.15 E F2(transpose\255chars \(C\255t\))108 168
+Q F1 .322(Drag the character before point forw)144 180 R .321(ard o)-.1
+F -.15(ve)-.15 G 2.821(rt).15 G .321(he character at point, mo)-2.821 F
+.321(ving point forw)-.15 F .321(ard as well.)-.1 F .372
+(If point is at the end of the line, then this transposes the tw)144 192
+R 2.872(oc)-.1 G .373(haracters before point.)-2.872 F(Ne)5.373 E -.05
+(ga)-.15 G(ti).05 E .673 -.15(ve a)-.25 H -.2(r-).15 G(guments ha)144
+204 Q .3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F2
+(transpose\255w)108 216 Q(ords \(M\255t\))-.1 E F1 .024(Drag the w)144
+228 R .024(ord before point past the w)-.1 F .023(ord after point, mo)
+-.1 F .023(ving point o)-.15 F -.15(ve)-.15 G 2.523(rt).15 G .023(hat w)
+-2.523 F .023(ord as well.)-.1 F .023(If point)5.023 F
+(is at the end of the line, this transposes the last tw)144 240 Q 2.5
+(ow)-.1 G(ords on the line.)-2.6 E F2(shell\255transpose\255w)108 252 Q
+(ords \(M-C-t\))-.1 E F1 .562(Drag the w)144 264 R .562
+(ord before point past the w)-.1 F .562(ord after point, mo)-.1 F .562
+(ving point past that w)-.15 F .563(ord as well.)-.1 F .563(If the)5.563
+F .019
+(insertion point is at the end of the line, this transposes the last tw)
+144 276 R 2.519(ow)-.1 G .019(ords on the line.)-2.619 F -.8(Wo)5.019 G
+.018(rd bound-).8 F(aries are the same as)144 288 Q F2(shell\255f)2.5 E
+(orward\255w)-.25 E(ord)-.1 E F1(and)2.5 E F2(shell\255backward\255w)2.5
+E(ord)-.1 E F1(.)A F2(upcase\255w)108 300 Q(ord \(M\255u\))-.1 E F1
+1.698(Uppercase the current \(or follo)144 312 R 1.698(wing\) w)-.25 F
+4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.999
+-.15(ve a)-.25 H -.18(rg).15 G 1.699(ument, uppercase the pre).18 F
+(vious)-.25 E -.1(wo)144 324 S(rd, b).1 E(ut do not mo)-.2 E .3 -.15
+(ve p)-.15 H(oint.).15 E F2(do)108 336 Q(wncase\255w)-.1 E
+(ord \(M\255l\))-.1 E F1(Lo)144 348 Q 1.648
+(wercase the current \(or follo)-.25 F 1.648(wing\) w)-.25 F 4.148
+(ord. W)-.1 F 1.647(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.947 -.15
+(ve a)-.25 H -.18(rg).15 G 1.647(ument, lo).18 F 1.647(wercase the pre)
+-.25 F(vious)-.25 E -.1(wo)144 360 S(rd, b).1 E(ut do not mo)-.2 E .3
+-.15(ve p)-.15 H(oint.).15 E F2(capitalize\255w)108 372 Q
+(ord \(M\255c\))-.1 E F1 1.974(Capitalize the current \(or follo)144 384
+R 1.974(wing\) w)-.25 F 4.474(ord. W)-.1 F 1.974(ith a ne)-.4 F -.05(ga)
+-.15 G(ti).05 E 2.274 -.15(ve a)-.25 H -.18(rg).15 G 1.975
+(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 396 S(rd, b).1
+E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F2 -.1(ove)108 408
+S(rwrite\255mode).1 E F1 -.8(To)144 420 S .438(ggle o).8 F -.15(ve)-.15
+G .438(rwrite mode.).15 F -.4(Wi)5.438 G .438(th an e).4 F .438
+(xplicit positi)-.15 F .737 -.15(ve n)-.25 H .437(umeric ar).15 F .437
+(gument, switches to o)-.18 F -.15(ve)-.15 G .437(rwrite mode.).15 F -.4
+(Wi)144 432 S .78(th an e).4 F .781(xplicit non-positi)-.15 F 1.081 -.15
+(ve n)-.25 H .781(umeric ar).15 F .781(gument, switches to insert mode.)
+-.18 F .781(This command af)5.781 F(fects)-.25 E(only)144 444 Q F2
+(emacs)4.395 E F1(mode;)4.395 E F2(vi)4.395 E F1 1.894(mode does o)4.395
+F -.15(ve)-.15 G 1.894(rwrite dif).15 F(ferently)-.25 E 6.894(.E)-.65 G
+1.894(ach call to)-6.894 F F0 -.37(re)4.394 G(adline\(\)).37 E F1 1.894
+(starts in insert)4.394 F(mode.)144 456 Q .092(In o)144 468 R -.15(ve)
+-.15 G .092(rwrite mode, characters bound to).15 F F2(self\255insert)
+2.593 E F1 .093(replace the te)2.593 F .093
+(xt at point rather than pushing the)-.15 F(te)144 480 Q .774
+(xt to the right.)-.15 F .773(Characters bound to)5.774 F F2
+(backward\255delete\255char)3.273 E F1 .773
+(replace the character before point)3.273 F .52(with a space.)144 492 R
+.52(By def)5.52 F .52(ault, this command is unbound, b)-.1 F .52
+(ut may be bound to the Insert k)-.2 F .82 -.15(ey o)-.1 H 3.02(ns).15 G
+(ome)-3.02 E -.1(ke)144 504 S(yboards.)-.05 E F2(Killing and Y)87 520.8
+Q(anking)-.85 E(kill\255line \(C\255k\))108 532.8 Q F1 1.415
+(Kill the te)144 544.8 R 1.414
+(xt from point to the end of the current line.)-.15 F -.4(Wi)6.414 G
+1.414(th a ne).4 F -.05(ga)-.15 G(ti).05 E 1.714 -.15(ve n)-.25 H 1.414
+(umeric ar).15 F 1.414(gument, kill)-.18 F(backw)144 556.8 Q
+(ard from the cursor to the be)-.1 E(ginning of the line.)-.15 E F2
+(backward\255kill\255line \(C\255x Rubout\))108 568.8 Q F1 .025
+(Kill backw)144 580.8 R .025(ard to the be)-.1 F .025
+(ginning of the current line.)-.15 F -.4(Wi)5.025 G .025(th a ne).4 F
+-.05(ga)-.15 G(ti).05 E .326 -.15(ve n)-.25 H .026(umeric ar).15 F .026
+(gument, kill forw)-.18 F(ard)-.1 E
+(from the cursor to the end of the line.)144 592.8 Q F2
+(unix\255line\255discard \(C\255u\))108 604.8 Q F1(Kill backw)144 616.8
+Q(ard from point to the be)-.1 E(ginning of the line, sa)-.15 E
+(ving the killed te)-.2 E(xt on the kill-ring.)-.15 E F2
+(kill\255whole\255line)108 628.8 Q F1
+(Kill all characters on the current line, no matter where point is.)144
+640.8 Q F2(kill\255w)108 652.8 Q(ord \(M\255d\))-.1 E F1 .729
+(Kill from point to the end of the current w)144 664.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 676.8 S
+(rd boundaries are the same as those used by).8 E F2 -.25(fo)2.5 G
+(rward\255w).25 E(ord)-.1 E F1(.)A F2(backward\255kill\255w)108 688.8 Q
+(ord \(M\255Rubout\))-.1 E F1(Kill the w)144 700.8 Q(ord behind point.)
+-.1 E -.8(Wo)5 G(rd boundaries are the same as those used by).8 E F2
+(backward\255w)2.5 E(ord)-.1 E F1(.)A(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(56)185.955 E 0 Cg EP
+%%Page: 57 57
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(shell\255kill\255w)108 84 Q
+(ord \(M\255C\255d\))-.1 E F1 .728
+(Kill from point to the end of the current w)144 96 R .729
+(ord, or if between w)-.1 F .729(ords, to the end of the ne)-.1 F .729
+(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 108 S
+(rd boundaries are the same as those used by).8 E F2(shell\255f)2.5 E
+(orward\255w)-.25 E(ord)-.1 E F1(.)A F2(shell\255backward\255kill\255w)
+108 120 Q(ord)-.1 E F1 3.025(Kill the w)144 132 R 3.025
+(ord behind point.)-.1 F -.8(Wo)8.025 G 3.025
+(rd boundaries are the same as those used by).8 F F2(shell\255back-)
+5.525 E(ward\255w)144 144 Q(ord)-.1 E F1(.)A F2(unix\255w)108 156 Q
+(ord\255rubout \(C\255w\))-.1 E F1 1.062(Kill the w)144 168 R 1.063
+(ord behind point, using white space as a w)-.1 F 1.063(ord boundary)-.1
+F 3.563(,s)-.65 G -.2(av)-3.563 G 1.063(ing the killed te).2 F 1.063
+(xt on the)-.15 F(kill-ring.)144 180 Q F2(unix\255\214lename\255rubout)
+108 192 Q F1 .266(Kill the w)144 204 R .266
+(ord behind point, using white space and the slash character as the w)
+-.1 F .265(ord boundaries, sa)-.1 F(v-)-.2 E(ing the killed te)144 216 Q
+(xt on the kill-ring.)-.15 E F2
+(delete\255horizontal\255space \(M\255\\\))108 228 Q F1
+(Delete all spaces and tabs around point.)144 240 Q F2(kill\255r)108 252
+Q(egion)-.18 E F1(Kill the te)144 264 Q(xt in the current re)-.15 E
+(gion.)-.15 E F2(copy\255r)108 276 Q(egion\255as\255kill)-.18 E F1(Cop)
+144 288 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 2.5(,s)-.4 G 2.5(oi)-2.5
+G 2.5(tc)-2.5 G(an be yank)-2.5 E(ed immediately)-.1 E(.)-.65 E F2
+(copy\255backward\255w)108 300 Q(ord)-.1 E F1(Cop)144 312 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 F2(back-)4.801 E(ward\255w)144 324
+Q(ord)-.1 E F1(.)A F2(copy\255f)108 336 Q(orward\255w)-.25 E(ord)-.1 E
+F1(Cop)144 348 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 F2
+-.25(fo)4.507 G -.37(r-).25 G(ward\255w)144 360 Q(ord)-.1 E F1(.)A F2
+(yank \(C\255y\))108 372 Q F1 -1(Ya)144 384 S
+(nk the top of the kill ring into the b)1 E(uf)-.2 E(fer at point.)-.25
+E F2(yank\255pop \(M\255y\))108 396 Q F1
+(Rotate the kill ring, and yank the ne)144 408 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 F2(yank)2.5 E
+F1(or)2.5 E F2(yank\255pop)2.5 E F1(.)A F2(Numeric Ar)87 424.8 Q
+(guments)-.1 E(digit\255ar)108 436.8 Q(gument \(M\2550, M\2551,)-.1 E F1
+1.666(...)2.5 G F2 2.5(,M)-1.666 G<adad29>-2.5 E F1 .367
+(Add this digit to the ar)144 448.8 R .367
+(gument already accumulating, or start a ne)-.18 F 2.867(wa)-.25 G -.18
+(rg)-2.867 G 2.867(ument. M\255\255).18 F .367(starts a ne)2.867 F -.05
+(ga)-.15 G(-).05 E(ti)144 460.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G
+(ument.).18 E F2(uni)108 472.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1
+E F1 .779(This is another w)144 484.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
+496.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
+508.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F2(uni)
+3.67 E -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F1(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 520.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 1.23
+(neither a digit nor minus sign, the ar)144 532.8 R 1.23
+(gument count for the ne)-.18 F 1.23(xt command is multiplied by four)
+-.15 F(.)-.55 E .822(The ar)144 544.8 R .822
+(gument count is initially one, so e)-.18 F -.15(xe)-.15 G .823
+(cuting this function the \214rst time mak).15 F .823(es the ar)-.1 F
+(gument)-.18 E(count four)144 556.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 F2(Completing)
+87 573.6 Q(complete \(T)108 585.6 Q(AB\))-.9 E F1 .203
+(Attempt to perform completion on the te)144 597.6 R .203
+(xt before point.)-.15 F F2(Bash)5.203 E F1 .203
+(attempts completion by \214rst check-)2.703 F .767(ing for an)144 609.6
+R 3.267(yp)-.15 G .767(rogrammable completions for the command w)-3.267
+F .768(ord \(see)-.1 F F2(Pr)3.268 E .768(ogrammable Completion)-.18 F
+F1(belo)144 621.6 Q .06(w\), otherwise treating the te)-.25 F .06
+(xt as a v)-.15 F .059(ariable \(if the te)-.25 F .059(xt be)-.15 F .059
+(gins with)-.15 F F2($)2.559 E F1 .059(\), username \(if the te)B .059
+(xt be-)-.15 F .474(gins with)144 633.6 R F2<01>2.974 E F1 .474
+(\), hostname \(if the te)B .474(xt be)-.15 F .474(gins with)-.15 F F2
+(@)2.974 E F1 .474(\), or command \(including aliases, functions, and)B
+-.2(bu)144 645.6 S(iltins\) in turn.).2 E
+(If none of these produces a match, it f)5 E
+(alls back to \214lename completion.)-.1 E F2
+(possible\255completions \(M\255?\))108 657.6 Q F1 .061
+(List the possible completions of the te)144 669.6 R .061
+(xt before point.)-.15 F .061(When displaying completions,)5.061 F F2
+-.18(re)2.56 G(adline).18 E F1(sets)2.56 E 1.002
+(the number of columns used for display to the v)144 681.6 R 1.002
+(alue of)-.25 F F2(completion-display-width)3.502 E F1 3.502(,t)C 1.003
+(he v)-3.502 F 1.003(alue of)-.25 F(the shell v)144 693.6 Q(ariable)-.25
+E/F3 9/Times-Bold@0 SF(COLUMNS)2.5 E/F4 9/Times-Roman@0 SF(,)A F1
+(or the screen width, in that order)2.25 E(.)-.55 E F2
+(insert\255completions \(M\255*\))108 705.6 Q F1 .783
+(Insert all completions of the te)144 717.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 F2(possible\255com-)3.282 E(pletions)144
+729.6 Q F1 2.5(,s)C(eparated by a space.)-2.5 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(57)185.955 E 0 Cg EP
+%%Page: 58 58
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(menu\255complete)108 84 Q F1
+.928(Similar to)144 96 R F2(complete)3.428 E F1 3.428(,b)C .929
+(ut replaces the w)-3.628 F .929
+(ord to be completed with a single match from the list of)-.1 F 1.618
+(possible completions.)144 108 R 1.618(Repeatedly e)6.618 F -.15(xe)-.15
+G(cuting).15 E F2(menu\255complete)4.118 E F1 1.618
+(steps through the list of possible)4.118 F .42
+(completions, inserting each match in turn.)144 120 R .421
+(At the end of the list of completions,)5.421 F F2(menu\255complete)
+2.921 E F1 .22(rings the bell \(subject to the setting of)144 132 R F2
+(bell\255style)2.719 E F1 2.719(\)a)C .219(nd restores the original te)
+-2.719 F 2.719(xt. An)-.15 F(ar)2.719 E .219(gument of)-.18 F F0(n)2.719
+E F1(mo)144 144 Q -.15(ve)-.15 G(s).15 E F0(n)2.546 E F1 .046
+(positions forw)2.546 F .046(ard in the list of matches; a ne)-.1 F -.05
+(ga)-.15 G(ti).05 E .346 -.15(ve a)-.25 H -.18(rg).15 G .046(ument mo)
+.18 F -.15(ve)-.15 G 2.546(sb).15 G(ackw)-2.546 E .046(ard through the)
+-.1 F 2.5(list. This)144 156 R(command is intended to be bound to)2.5 E
+F2 -.9(TA)2.5 G(B).9 E F1 2.5(,b)C(ut is unbound by def)-2.7 E(ault.)-.1
+E F2(menu\255complete\255backward)108 168 Q F1 .82(Identical to)144 180
+R F2(menu\255complete)3.32 E F1 3.32(,b)C .82(ut mo)-3.52 F -.15(ve)-.15
+G 3.32(sb).15 G(ackw)-3.32 E .82
+(ard through the list of possible completions, as if)-.1 F F2
+(menu\255complete)144 192 Q F1(had been gi)2.5 E -.15(ve)-.25 G 2.5(nan)
+.15 G -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve a)-.25 H -.18(rg).15 G
+2.5(ument. This).18 F(command is unbound by def)2.5 E(ault.)-.1 E F2
+(export\255completions)108 204 Q F1 1.412(Perform completion on the w)
+144 216 R 1.412(ord before point as described abo)-.1 F 1.712 -.15(ve a)
+-.15 H 1.412(nd write the list of possible).15 F .56(completions to)144
+228 R F2 -.18(re)3.06 G(adline).18 E F1 1.66 -.55('s o)D .56
+(utput stream using the follo).55 F .56
+(wing format, writing information on sepa-)-.25 F(rate lines:)144 240 Q
+<83>144 256.8 Q(the number of matches)180 256.8 Q F0(N)2.5 E F1(;)A<83>
+144 268.8 Q(the w)180 268.8 Q(ord being completed;)-.1 E<83>144 280.8 Q
+F0(S)180 280.8 Q F1(:)A F0(E)A F1 3.252(,w)C .753
+(here S and E are the start and end of)-3.252 F .753(fsets of the w)-.25
+F .753(ord in the)-.1 F F2 -.18(re)3.253 G(adline).18 E F1 .753(line b)
+3.253 F(uf)-.2 E(fer;)-.25 E(then)180 292.8 Q<83>144 304.8 Q
+(each match, one per line)180 304.8 Q .195(If there are no matches, the\
+ \214rst line will be \2310\232, and this command does not print an)144
+321.6 R 2.695(yo)-.15 G .195(utput after)-2.695 F(the)144 333.6 Q F0(S)
+2.704 E F1(:)A F0(E)A F1 5.204(.I)C 2.704(ft)-5.204 G .204
+(here is only a single match, this prints a single line containing it.)
+-2.704 F .205(If there is more than)5.205 F .233(one match, this prints\
+ the common pre\214x of the matches, which may be empty)144 345.6 R
+2.733(,o)-.65 G 2.732(nt)-2.733 G .232(he \214rst line af-)-2.732 F .097
+(ter the)144 357.6 R F0(S)2.597 E F1(:)A F0(E)A F1 2.598(,t)C .098
+(hen the matches on subsequent lines.)-2.598 F .098(In this case,)5.098
+F F0(N)2.598 E F1 .098(will include the \214rst line with the)2.598 F
+(common pre\214x.)144 369.6 Q .482(The user or application should be ab\
+le to accommodate the possibility of a blank line.)144 386.4 R .481
+(The intent)5.481 F .844(is that the user or application reads)144 398.4
+R F0(N)3.344 E F1 .844(lines after the line containing)3.344 F F0(S)
+3.345 E F1(:)A F0(E)A F1 .845(to obtain the match list.)3.345 F
+(This command is unbound by def)144 410.4 Q(ault.)-.1 E F2
+(delete\255char\255or\255list)108 427.2 Q F1 .234
+(Deletes the character under the cursor if not at the be)144 439.2 R
+.234(ginning or end of the line \(lik)-.15 F(e)-.1 E F2(delete\255char)
+2.734 E F1(\).)A .305(At the end of the line, it beha)144 451.2 R -.15
+(ve)-.2 G 2.805(si).15 G .305(dentically to)-2.805 F F2
+(possible\255completions)2.805 E F1 5.305(.T)C .305
+(his command is unbound)-5.305 F(by def)144 463.2 Q(ault.)-.1 E F2
+(complete\255\214lename \(M\255/\))108 480 Q F1
+(Attempt \214lename completion on the te)144 492 Q(xt before point.)-.15
+E F2(possible\255\214lename\255completions \(C\255x /\))108 508.8 Q F1
+(List the possible completions of the te)144 520.8 Q
+(xt before point, treating it as a \214lename.)-.15 E F2
+(complete\255user)108 537.6 Q(name \(M\255\001\))-.15 E F1
+(Attempt completion on the te)144 549.6 Q
+(xt before point, treating it as a username.)-.15 E F2(possible\255user)
+108 566.4 Q(name\255completions \(C\255x \001\))-.15 E F1
+(List the possible completions of the te)144 578.4 Q
+(xt before point, treating it as a username.)-.15 E F2(complete\255v)108
+595.2 Q(ariable \(M\255$\))-.1 E F1(Attempt completion on the te)144
+607.2 Q(xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E
+F2(possible\255v)108 624 Q(ariable\255completions \(C\255x $\))-.1 E F1
+(List the possible completions of the te)144 636 Q
+(xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E F2
+(complete\255hostname \(M\255@\))108 652.8 Q F1
+(Attempt completion on the te)144 664.8 Q
+(xt before point, treating it as a hostname.)-.15 E F2
+(possible\255hostname\255completions \(C\255x @\))108 681.6 Q F1
+(List the possible completions of the te)144 693.6 Q
+(xt before point, treating it as a hostname.)-.15 E(GNU Bash 5.3)72 768
+Q(2024 December 12)136.795 E(58)185.955 E 0 Cg EP
+%%Page: 59 59
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF
+(complete\255command \(M\255!\))108 84 Q F1 .581
+(Attempt completion on the te)144 96 R .581
+(xt before point, treating it as a command name.)-.15 F .58
+(Command comple-)5.58 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 120 Q -.15(xe)-.15 G
+(cutable \214lenames, in that order).15 E(.)-.55 E F2
+(possible\255command\255completions \(C\255x !\))108 136.8 Q F1
+(List the possible completions of the te)144 148.8 Q
+(xt before point, treating it as a command name.)-.15 E F2
+(dynamic\255complete\255history \(M\255T)108 165.6 Q(AB\))-.9 E F1 .092
+(Attempt completion on the te)144 177.6 R .092
+(xt before point, comparing the te)-.15 F .092(xt ag)-.15 F .092
+(ainst history list entries for pos-)-.05 F(sible completion matches.)
+144 189.6 Q F2(dab)108 206.4 Q(br)-.1 E -.15(ev)-.18 G(\255expand).15 E
+F1 .61(Attempt menu completion on the te)144 218.4 R .611
+(xt before point, comparing the te)-.15 F .611(xt ag)-.15 F .611
+(ainst lines from the his-)-.05 F
+(tory list for possible completion matches.)144 230.4 Q F2
+(complete\255into\255braces \(M\255{\))108 247.2 Q F1 .4(Perform \214le\
+name completion and insert the list of possible completions enclosed wi\
+thin braces so)144 259.2 R(the list is a)144 271.2 Q -.25(va)-.2 G
+(ilable to the shell \(see).25 E F2(Brace Expansion)2.5 E F1(abo)2.5 E
+-.15(ve)-.15 G(\).).15 E F2 -.25(Ke)87 288 S(yboard Macr).25 E(os)-.18 E
+(start\255kbd\255macr)108 300 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833
+E F1(Be)144 312 Q(gin sa)-.15 E
+(ving the characters typed into the current k)-.2 E -.15(ey)-.1 G
+(board macro.).15 E F2(end\255kbd\255macr)108 324 Q 2.5(o\()-.18 G
+(C\255x \))-2.5 E(\)).833 E F1(Stop sa)144 336 Q
+(ving the characters typed into the current k)-.2 E -.15(ey)-.1 G
+(board macro and store the de\214nition.).15 E F2
+(call\255last\255kbd\255macr)108 348 Q 2.5(o\()-.18 G(C\255x e\))-2.5 E
+F1(Re-e)144 360 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 app\
+ear as if).15 F(typed at the k)144 372 Q -.15(ey)-.1 G(board.).15 E F2
+(print\255last\255kbd\255macr)108 384 Q 2.5(o\()-.18 G(\))-2.5 E F1
+(Print the last k)144 396 Q -.15(ey)-.1 G
+(board macro de\214ned in a format suitable for the).15 E F0(inputr)2.5
+E(c)-.37 E F1(\214le.)2.5 E F2(Miscellaneous)87 412.8 Q -.18(re)108
+424.8 S<ad72>.18 E(ead\255init\255\214le \(C\255x C\255r\))-.18 E F1
+1.777(Read in the contents of the)144 436.8 R F0(inputr)4.277 E(c)-.37 E
+F1 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
+448.8 Q F2(abort \(C\255g\))108 460.8 Q F1 3.248
+(Abort the current editing command and ring the terminal')144 472.8 R
+5.749(sb)-.55 G 3.249(ell \(subject to the setting of)-5.749 F F2
+(bell\255style)144 484.8 Q F1(\).)A F2(do\255lo)108 496.8 Q(wer)-.1 E
+(case\255v)-.18 E(ersion \(M\255A, M\255B, M\255)-.1 E F0(x)A F2(,)A F1
+1.666(...)2.5 G F2(\))-1.666 E F1 1.739(If the meta\214ed character)144
+508.8 R F0(x)4.239 E F1 1.739
+(is uppercase, run the command that is bound to the corresponding)4.239
+F(meta\214ed lo)144 520.8 Q(wercase character)-.25 E 5(.T)-.55 G
+(he beha)-5 E(vior is unde\214ned if)-.2 E F0(x)2.5 E F1(is already lo)
+2.5 E(wercase.)-.25 E F2(pr)108 532.8 Q(e\214x\255meta \(ESC\))-.18 E F1
+(Metafy the ne)144 544.8 Q(xt character typed.)-.15 E/F3 9/Times-Bold@0
+SF(ESC)5 E F2(f)2.25 E F1(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F2
+(Meta\255f)2.5 E F1(.)A F2(undo \(C\255_, C\255x C\255u\))108 556.8 Q F1
+(Incremental undo, separately remembered for each line.)144 568.8 Q F2
+-2.29 -.18(re v)108 580.8 T(ert\255line \(M\255r\)).08 E F1 .23
+(Undo all changes made to this line.)144 592.8 R .231(This is lik)5.23 F
+2.731(ee)-.1 G -.15(xe)-2.881 G .231(cuting the).15 F F2(undo)2.731 E F1
+.231(command enough times to re-)2.731 F
+(turn the line to its initial state.)144 604.8 Q F2
+(tilde\255expand \(M\255&\))108 616.8 Q F1(Perform tilde e)144 628.8 Q
+(xpansion on the current w)-.15 E(ord.)-.1 E F2
+(set\255mark \(C\255@, M\255<space>\))108 640.8 Q F1
+(Set the mark to the point.)144 652.8 Q(If a numeric ar)5 E
+(gument is supplied, set the mark to that position.)-.18 E F2
+(exchange\255point\255and\255mark \(C\255x C\255x\))108 664.8 Q F1(Sw)
+144 676.8 Q .872(ap the point with the mark.)-.1 F .871
+(Set the current cursor position to the sa)5.871 F -.15(ve)-.2 G 3.371
+(dp).15 G .871(osition, then set the)-3.371 F
+(mark to the old cursor position.)144 688.8 Q F2(character\255sear)108
+700.8 Q(ch \(C\255]\))-.18 E F1 1.1(Read a character and mo)144 712.8 R
+1.4 -.15(ve p)-.15 H 1.101(oint to the ne).15 F 1.101
+(xt occurrence of that character)-.15 F 6.101(.A)-.55 G(ne)-2.5 E -.05
+(ga)-.15 G(ti).05 E 1.401 -.15(ve a)-.25 H -.18(rg).15 G(ument).18 E
+(searches for pre)144 724.8 Q(vious occurrences.)-.25 E(GNU Bash 5.3)72
+768 Q(2024 December 12)136.795 E(59)185.955 E 0 Cg EP
+%%Page: 60 60
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(character\255sear)108 84 Q
+(ch\255backward \(M\255C\255]\))-.18 E F1 1.071(Read a character and mo)
+144 96 R 1.371 -.15(ve p)-.15 H 1.071(oint to the pre).15 F 1.071
+(vious occurrence of that character)-.25 F 6.07(.A)-.55 G(ne)-2.5 E -.05
+(ga)-.15 G(ti).05 E 1.37 -.15(ve a)-.25 H -.18(rg).15 G(u-).18 E
+(ment searches for subsequent occurrences.)144 108 Q F2
+(skip\255csi\255sequence)108 120 Q F1 1.826
+(Read enough characters to consume a multi-k)144 132 R 2.126 -.15(ey s)
+-.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)-.1 G
+4.327(sl).15 G(ik)-4.327 E(e)-.1 E .345(Home and End.)144 144 R .345
+(CSI sequences be)5.345 F .345
+(gin with a Control Sequence Indicator \(CSI\), usually)-.15 F F0 .344
+(ESC [)3.354 F F1 5.344(.I).52 G(f)-5.344 E 1.437
+(this sequence is bound to \231\\e[\232, k)144 156 R -.15(ey)-.1 G 3.937
+(sp).15 G 1.437(roducing CSI sequences ha)-3.937 F 1.737 -.15(ve n)-.2 H
+3.937(oe).15 G -.25(ff)-3.937 G 1.438(ect unless e).25 F(xplicitly)-.15
+E .297(bound to a)144 168 R F2 -.18(re)2.797 G(adline).18 E F1 .297
+(command, instead of inserting stray characters into the editing b)2.797
+F(uf)-.2 E(fer)-.25 E 5.296(.T)-.55 G .296(his is)-5.296 F
+(unbound by def)144 180 Q(ault, b)-.1 E(ut usually bound to)-.2 E F0
+(ESC [)3.01 E F1(.).52 E F2(insert\255comment \(M\255#\))108 192 Q F1
+-.4(Wi)144 204 S .532(thout a numeric ar).4 F .533(gument, insert the v)
+-.18 F .533(alue of the)-.25 F F2 -.18(re)3.033 G .533
+(adline comment\255begin).18 F F1 -.25(va)3.033 G .533
+(riable at the be-).25 F .792(ginning of the current line.)144 216 R
+.791(If a numeric ar)5.791 F .791
+(gument is supplied, this command acts as a toggle: if)-.18 F .863
+(the characters at the be)144 228 R .864
+(ginning of the line do not match the v)-.15 F .864(alue of)-.25 F F2
+(comment\255begin)3.364 E F1 3.364(,i)C .864(nsert the)-3.364 F -.25(va)
+144 240 S .305(lue; otherwise delete the characters in).25 F F2
+(comment-begin)2.804 E F1 .304(from the be)2.804 F .304
+(ginning of the line.)-.15 F .304(In either)5.304 F .947
+(case, the line is accepted as if a ne)144 252 R .948
+(wline had been typed.)-.25 F .948(The def)5.948 F .948(ault v)-.1 F
+.948(alue of)-.25 F F2(comment\255begin)3.448 E F1 .363
+(causes this command to mak)144 264 R 2.863(et)-.1 G .363
+(he current line a shell comment.)-2.863 F .362(If a numeric ar)5.362 F
+.362(gument causes the)-.18 F(comment character to be remo)144 276 Q
+-.15(ve)-.15 G(d, the line will be e).15 E -.15(xe)-.15 G
+(cuted by the shell.).15 E F2(spell\255corr)108 288 Q(ect\255w)-.18 E
+(ord \(C\255x s\))-.1 E F1 .42
+(Perform spelling correction on the current w)144 300 R .421
+(ord, treating it as a directory or \214lename, in the same)-.1 F -.1
+(wa)144 312 S 4.718(ya).1 G 4.718(st)-4.718 G(he)-4.718 E F2(cdspell)
+4.718 E F1 2.218(shell option.)4.718 F -.8(Wo)7.217 G 2.217
+(rd boundaries are the same as those used by).8 F F2(shell\255f)4.717 E
+(or)-.25 E(-)-.37 E(ward\255w)144 324 Q(ord)-.1 E F1(.)A F2
+(glob\255complete\255w)108 336 Q(ord \(M\255g\))-.1 E F1 -.35(Tr)144 348
+S 1.037(eat the w).35 F 1.037
+(ord before point as a pattern for pathname e)-.1 F 1.038
+(xpansion, with an asterisk implicitly ap-)-.15 F(pended, then use the \
+pattern to generate a list of matching \214le names for possible comple\
+tions.)144 360 Q F2(glob\255expand\255w)108 372 Q(ord \(C\255x *\))-.1 E
+F1 -.35(Tr)144 384 S .033(eat the w).35 F .033
+(ord before point as a pattern for pathname e)-.1 F .033
+(xpansion, and insert the list of matching \214le)-.15 F .083
+(names, replacing the w)144 396 R 2.583(ord. If)-.1 F 2.583(an)2.583 G
+.083(umeric ar)-2.583 F .083(gument is supplied, append a)-.18 F F2(*)
+2.584 E F1 .084(before pathname e)2.584 F(xpan-)-.15 E(sion.)144 408 Q
+F2(glob\255list\255expansions \(C\255x g\))108 420 Q F1 .689
+(Display the list of e)144 432 R .689(xpansions that w)-.15 F .688
+(ould ha)-.1 F .988 -.15(ve b)-.2 H .688(een generated by).15 F F2
+(glob\255expand\255w)3.188 E(ord)-.1 E F1 .688(and redis-)3.188 F
+(play the line.)144 444 Q(If a numeric ar)5 E
+(gument is supplied, append a)-.18 E F2(*)2.5 E F1(before pathname e)2.5
+E(xpansion.)-.15 E F2(dump\255functions)108 456 Q F1 .473
+(Print all of the functions and their k)144 468 R .773 -.15(ey b)-.1 H
+.473(indings to the).15 F F2 -.18(re)2.973 G(adline).18 E F1 .473
+(output stream.)2.973 F .473(If a numeric ar)5.473 F(gu-)-.18 E
+(ment is supplied, the output is formatted in such a w)144 480 Q
+(ay that it can be made part of an)-.1 E F0(inputr)2.5 E(c)-.37 E F1
+(\214le.)2.5 E F2(dump\255v)108 492 Q(ariables)-.1 E F1 .456
+(Print all of the settable)144 504 R F2 -.18(re)2.956 G(adline).18 E F1
+-.25(va)2.955 G .455(riables and their v).25 F .455(alues to the)-.25 F
+F2 -.18(re)2.955 G(adline).18 E F1 .455(output stream.)2.955 F .455
+(If a nu-)5.455 F .108(meric ar)144 516 R .108
+(gument is supplied, the output is formatted in such a w)-.18 F .109
+(ay that it can be made part of an)-.1 F F0(in-)2.609 E(putr)144 528 Q
+(c)-.37 E F1(\214le.)2.5 E F2(dump\255macr)108 540 Q(os)-.18 E F1 .089
+(Print all of the)144 552 R F2 -.18(re)2.589 G(adline).18 E F1 -.1(ke)
+2.589 G 2.589(ys)-.05 G .089
+(equences bound to macros and the strings the)-2.589 F 2.589(yo)-.15 G
+.088(utput to the)-2.589 F F2 -.18(re)2.588 G(adline).18 E F1 .243
+(output stream.)144 564 R .243(If a numeric ar)5.243 F .243
+(gument is supplied, the output is formatted in such a w)-.18 F .244
+(ay that it can)-.1 F(be made part of an)144 576 Q F0(inputr)2.5 E(c)
+-.37 E F1(\214le.)2.5 E F2(execute\255named\255command \(M-x\))108 588 Q
+F1 1.084(Read a bindable)144 600 R F2 -.18(re)3.584 G(adline).18 E F1
+1.083(command name from the input and e)3.584 F -.15(xe)-.15 G 1.083
+(cute the function to which it').15 F(s)-.55 E .278(bound, as if the k)
+144 612 R .578 -.15(ey s)-.1 H .278(equence to which it w).15 F .279
+(as bound appeared in the input.)-.1 F .279(If this function is sup-)
+5.279 F(plied with a numeric ar)144 624 Q(gument, it passes that ar)-.18
+E(gument to the function it e)-.18 E -.15(xe)-.15 G(cutes.).15 E F2
+(display\255shell\255v)108 636 Q(ersion \(C\255x C\255v\))-.1 E F1
+(Display v)144 648 Q(ersion information about the current instance of)
+-.15 E F2(bash)2.5 E F1(.)A F2(Pr)87 664.8 Q(ogrammable Completion)-.18
+E F1 .379(When a user attempts w)108 676.8 R .378
+(ord completion for a command or an ar)-.1 F .378
+(gument to a command for which a comple-)-.18 F .92
+(tion speci\214cation \(a)108 688.8 R F0(compspec)3.42 E F1 3.42(\)h)C
+.92(as been de\214ned using the)-3.42 F F2(complete)3.42 E F1 -.2(bu)
+3.42 G .92(iltin \(see).2 F/F3 9/Times-Bold@0 SF .921(SHELL B)3.421 F
+(UIL)-.09 E .921(TIN COM-)-.828 F(MANDS)108 700.8 Q F1(belo)2.25 E(w\),)
+-.25 E F2 -.18(re)2.5 G(adline).18 E F1(in)2.5 E -.2(vo)-.4 G -.1(ke).2
+G 2.5(st).1 G(he programmable completion f)-2.5 E(acilities.)-.1 E
+(First,)108 717.6 Q F2(bash)2.664 E F1 .163
+(identi\214es the command name.)2.664 F .163
+(If a compspec has been de\214ned for that command, the compspec)5.163 F
+.454(is used to generate the list of possible completions for the w)108
+729.6 R 2.954(ord. If)-.1 F .454(the command w)2.954 F .455
+(ord is the empty string)-.1 F(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(60)185.955 E 0 Cg EP
+%%Page: 61 61
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .129(\(completion attempted at the be)108 84 R .129
+(ginning of an empty line\),)-.15 F/F2 10/Times-Bold@0 SF(bash)2.629 E
+F1 .129(uses an)2.629 F 2.629(yc)-.15 G .129(ompspec de\214ned with the)
+-2.629 F F2<ad45>2.628 E F1(op-)2.628 E .506(tion to)108 96 R F2
+(complete)3.006 E F1 5.506(.T)C(he)-5.506 E F2<ad49>3.006 E F1 .506
+(option to)3.006 F F2(complete)3.006 E F1 .506
+(indicates that the command w)3.006 F .507
+(ord is the \214rst non-assignment)-.1 F -.1(wo)108 108 S .437
+(rd on the line, or after a command delimiter such as).1 F F2(;)2.937 E
+F1(or)2.937 E F2(|)2.937 E F1 5.437(.T)C .436
+(his usually indicates command name com-)-5.437 F(pletion.)108 120 Q .29
+(If the command w)108 136.8 R .29(ord is a full pathname,)-.1 F F2(bash)
+2.79 E F1 .291(searches for a compspec for the full pathname \214rst.)
+2.79 F .291(If there)5.291 F .451(is no compspec for the full pathname,)
+108 148.8 R F2(bash)2.951 E F1 .45
+(attempts to \214nd a compspec for the portion follo)2.951 F .45
+(wing the \214nal)-.25 F 3.594(slash. If)108 160.8 R 1.094(those search\
+es do not result in a compspec, or if there is no compspec for the comm\
+and w)3.594 F(ord,)-.1 E F2(bash)108 172.8 Q F1 1.515(uses an)4.015 F
+4.015(yc)-.15 G 1.515(ompspec de\214ned with the)-4.015 F F2<ad44>4.015
+E F1 1.514(option to)4.015 F F2(complete)4.014 E F1 1.514(as the def)
+4.014 F 4.014(ault. If)-.1 F 1.514(there is no def)4.014 F(ault)-.1 E
+(compspec,)108 184.8 Q F2(bash)3.566 E F1 1.066(performs alias e)3.566 F
+1.066(xpansion on the command w)-.15 F 1.067
+(ord as a \214nal resort, and attempts to \214nd a)-.1 F
+(compspec for the command w)108 196.8 Q(ord resulting from an)-.1 E 2.5
+(ys)-.15 G(uccessful e)-2.5 E(xpansion.)-.15 E .96
+(If a compspec is not found,)108 213.6 R F2(bash)3.46 E F1 .96
+(performs its def)3.46 F .96(ault completion as described abo)-.1 F 1.26
+-.15(ve u)-.15 H(nder).15 E F2(Completing)3.46 E F1(.)A
+(Otherwise, once a compspec has been found,)108 225.6 Q F2(bash)2.5 E F1
+(uses it to generate the list of matching w)2.5 E(ords.)-.1 E(First,)108
+242.4 Q F2(bash)3.128 E F1 .628(performs the)3.128 F F0(actions)3.128 E
+F1 .628(speci\214ed by the compspec.)3.128 F .628
+(This only returns matches which are pre\214x)5.628 F(es)-.15 E .12
+(of the w)108 254.4 R .12(ord being completed.)-.1 F .12(When the)5.12 F
+F2<ad66>2.62 E F1(or)2.62 E F2<ad64>2.619 E F1 .119
+(option is used for \214lename or directory name completion,)2.619 F F2
+(bash)108 266.4 Q F1(uses the shell v)2.5 E(ariable)-.25 E/F3 9
+/Times-Bold@0 SF(FIGNORE)2.5 E F1(to \214lter the matches.)2.25 E(Ne)108
+283.2 Q .592(xt, programmable completion generates matches speci\214ed \
+by a pathname e)-.15 F .592(xpansion pattern supplied as)-.15 F .869
+(an ar)108 295.2 R .869(gument to the)-.18 F F2<ad47>3.369 E F1 3.369
+(option. The)3.369 F -.1(wo)3.369 G .869
+(rds generated by the pattern need not match the w).1 F .868
+(ord being com-)-.1 F(pleted.)108 307.2 Q F2(Bash)5.858 E F1 .858
+(uses the)3.358 F F3(FIGNORE)3.358 E F1 -.25(va)3.108 G .858
+(riable to \214lter the matches, b).25 F .859(ut does not use the)-.2 F
+F3(GLOBIGNORE)3.359 E F1(shell)3.109 E -.25(va)108 319.2 S(riable.).25 E
+(Ne)108 336 Q .718
+(xt, completion considers the string speci\214ed as the ar)-.15 F .718
+(gument to the)-.18 F F2<ad57>3.218 E F1 3.217(option. The)3.217 F .717
+(string is \214rst split)3.217 F .175(using the characters in the)108
+348 R F3(IFS)2.675 E F1 .175(special v)2.425 F .175
+(ariable as delimiters.)-.25 F .175
+(This honors shell quoting within the string, in)5.175 F 1.02
+(order to pro)108 360 R 1.02(vide a mechanism for the w)-.15 F 1.019
+(ords to contain shell metacharacters or characters in the v)-.1 F 1.019
+(alue of)-.25 F F3(IFS)108 372 Q/F4 9/Times-Roman@0 SF(.)A F1 .004
+(Each w)4.504 F .004(ord is then e)-.1 F .005(xpanded using brace e)-.15
+F .005(xpansion, tilde e)-.15 F .005(xpansion, parameter and v)-.15 F
+.005(ariable e)-.25 F(xpansion,)-.15 E 1.003
+(command substitution, and arithmetic e)108 384 R 1.003
+(xpansion, as described abo)-.15 F 1.303 -.15(ve u)-.15 H(nder).15 E F3
+(EXP)3.503 E(ANSION)-.666 E F4(.)A F1 1.003(The results are)5.503 F
+2.124(split using the rules described abo)108 396 R 2.424 -.15(ve u)-.15
+H(nder).15 E F2 -.75(Wo)4.624 G 2.124(rd Splitting).75 F F1 7.124(.T)C
+2.124(he results of the e)-7.124 F 2.124(xpansion are pre\214x-)-.15 F
+(matched ag)108 408 Q(ainst the w)-.05 E
+(ord being completed, and the matching w)-.1 E
+(ords become possible completions.)-.1 E .489(After these matches ha)108
+424.8 R .789 -.15(ve b)-.2 H .489(een generated,).15 F F2(bash)2.989 E
+F1 -.15(exe)2.989 G .489(cutes an).15 F 2.989(ys)-.15 G .488
+(hell function or command speci\214ed with the)-2.989 F F2<ad46>108
+436.8 Q F1(and)3.127 E F2<ad43>3.127 E F1 3.127(options. When)3.127 F
+.627(the command or function is in)3.127 F -.2(vo)-.4 G -.1(ke).2 G(d,)
+.1 E F2(bash)3.128 E F1 .628(assigns v)3.128 F .628(alues to the)-.25 F
+F3(COMP_LINE)3.128 E F4(,)A F3(COMP_POINT)108 448.8 Q F4(,)A F3
+(COMP_KEY)3.047 E F4(,)A F1(and)3.047 E F3(COMP_TYPE)3.297 E F1 -.25(va)
+3.047 G .796(riables as described abo).25 F 1.096 -.15(ve u)-.15 H(nder)
+.15 E F2 .796(Shell V)3.296 F(ariables)-.92 E F1 5.796(.I)C 3.296(fa)
+-5.796 G .696(shell function is being in)108 460.8 R -.2(vo)-.4 G -.1
+(ke).2 G(d,).1 E F2(bash)3.196 E F1 .696(also sets the)3.196 F F3
+(COMP_W)3.196 E(ORDS)-.09 E F1(and)2.947 E F3(COMP_CW)3.197 E(ORD)-.09 E
+F1 -.25(va)2.947 G 3.197(riables. When).25 F .347
+(the function or command is in)108 472.8 R -.2(vo)-.4 G -.1(ke).2 G .347
+(d, the \214rst ar).1 F .346(gument \()-.18 F F2($1)A F1 2.846(\)i)C
+2.846(st)-2.846 G .346(he name of the command whose ar)-2.846 F(guments)
+-.18 E .263(are being completed, the second ar)108 484.8 R .263
+(gument \()-.18 F F2($2)A F1 2.763(\)i)C 2.763(st)-2.763 G .264(he w)
+-2.763 F .264(ord being completed, and the third ar)-.1 F .264
+(gument \()-.18 F F2($3)A F1 2.764(\)i)C(s)-2.764 E 1.098(the w)108
+496.8 R 1.098(ord preceding the w)-.1 F 1.098
+(ord being completed on the current command line.)-.1 F 1.097
+(There is no \214ltering of the)6.097 F .576(generated completions ag)
+108 508.8 R .577(ainst the w)-.05 F .577
+(ord being completed; the function or command has complete freedom)-.1 F
+(in generating the matches and the)108 520.8 Q 2.5(yd)-.15 G 2.5(on)-2.5
+G(ot need to match a pre\214x of the w)-2.5 E(ord.)-.1 E(An)108 537.6 Q
+2.938(yf)-.15 G .437(unction speci\214ed with)-2.938 F F2<ad46>2.937 E
+F1 .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 549.6 Q F2(compgen)2.505 E F1(and)2.505 E F2(compopt)2.505 E
+F1 -.2(bu)2.505 G .005(iltins described belo).2 F 1.306 -.65(w, t)-.25 H
+2.506(og).65 G .006(enerate the matches.)-2.506 F .006
+(It must put the possible com-)5.006 F(pletions in the)108 561.6 Q F3
+(COMPREPL)2.5 E(Y)-.828 E F1(array v)2.25 E
+(ariable, one per array element.)-.25 E(Ne)108 578.4 Q .081(xt, an)-.15
+F 2.581(yc)-.15 G .081(ommand speci\214ed with the)-2.581 F F2<ad43>
+2.581 E F1 .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.766(stitution. It)
+108 590.4 R .267(should print a list of completions, one per line, to t\
+he standard output.)2.766 F .267(Backslash will escape a)5.267 F(ne)108
+602.4 Q(wline, if necessary)-.25 E 5(.T)-.65 G
+(hese are added to the set of possible completions.)-5 E .349
+(After generating all of the possible completions,)108 619.2 R F2(bash)
+2.848 E F1 .348(applies an)2.848 F 2.848<798c>-.15 G .348
+(lter speci\214ed with the)-2.848 F F2<ad58>2.848 E F1 .348
+(option to the)2.848 F .055(completions in the list.)108 631.2 R .055
+(The \214lter is a pattern as used for pathname e)5.055 F .055
+(xpansion; a)-.15 F F2(&)2.555 E F1 .055(in the pattern is replaced)
+2.555 F .576(with the te)108 643.2 R .576(xt of the w)-.15 F .575
+(ord being completed.)-.1 F 3.075(Al)5.575 G(iteral)-3.075 E F2(&)3.075
+E F1 .575(may be escaped with a backslash; the backslash is)3.075 F
+(remo)108 655.2 Q -.15(ve)-.15 G 2.988(db).15 G .488
+(efore attempting a match.)-2.988 F(An)5.488 E 2.988(yc)-.15 G .488
+(ompletion that matches the pattern is remo)-2.988 F -.15(ve)-.15 G
+2.988(df).15 G .488(rom the list.)-2.988 F(A)5.489 E(leading)108 667.2 Q
+F2(!)2.898 E F1(ne)2.898 E -.05(ga)-.15 G .397
+(tes the pattern; in this case).05 F F2(bash)2.897 E F1(remo)2.897 E
+-.15(ve)-.15 G 2.897(sa).15 G .697 -.15(ny c)-2.897 H .397
+(ompletion that does not match the pattern.).15 F(If)5.397 E(the)108
+679.2 Q F2(nocasematch)2.797 E F1 .297(shell option is enabled,)2.797 F
+F2(bash)2.797 E F1 .298(performs the match without re)2.797 F -.05(ga)
+-.15 G .298(rd to the case of alphabetic).05 F(characters.)108 691.2 Q
+(Finally)108 708 Q 2.78(,p)-.65 G .28(rogrammable completion adds an)
+-2.78 F 2.78(yp)-.15 G .279(re\214x and suf)-2.78 F .279
+(\214x speci\214ed with the)-.25 F F2<ad50>2.779 E F1(and)2.779 E F2
+<ad53>2.779 E F1 .279(options, respec-)2.779 F(ti)108 720 Q -.15(ve)-.25
+G(ly).15 E 2.5(,t)-.65 G 2.5(oe)-2.5 G
+(ach completion, and returns the result to)-2.5 E F2 -.18(re)2.5 G
+(adline).18 E F1(as the list of possible completions.)2.5 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(61)185.955 E 0 Cg EP
+%%Page: 62 62
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .246(If the pre)108 84 R .247
+(viously-applied actions do not generate an)-.25 F 2.747(ym)-.15 G .247
+(atches, and the)-2.747 F/F2 10/Times-Bold@0 SF .247(\255o dir)2.747 F
+(names)-.15 E F1 .247(option w)2.747 F .247(as supplied to)-.1 F F2
+(complete)108 96 Q F1(when the compspec w)2.5 E(as de\214ned,)-.1 E F2
+(bash)2.5 E F1(attempts directory name completion.)2.5 E .53(If the)108
+112.8 R F2 .53(\255o plusdirs)3.03 F F1 .53(option w)3.03 F .53
+(as supplied to)-.1 F F2(complete)3.03 E F1 .53(when the compspec w)3.03
+F .53(as de\214ned,)-.1 F F2(bash)3.03 E F1 .53(attempts direc-)3.03 F
+(tory name completion and adds an)108 124.8 Q 2.5(ym)-.15 G
+(atches to the set of possible completions.)-2.5 E .559(By def)108 141.6
+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
+.054(of possible completions.)108 153.6 R .054(The def)5.054 F(ault)-.1
+E F2(bash)2.554 E F1 .054(completions and the)2.554 F F2 -.18(re)2.553 G
+(adline).18 E F1(def)2.553 E .053(ault of \214lename completion are)-.1
+F 2.822(disabled. If)108 165.6 R(the)2.822 E F2 .322(\255o bashdefault)
+2.822 F F1 .322(option w)2.822 F .322(as supplied to)-.1 F F2(complete)
+2.823 E F1 .323(when the compspec w)2.823 F .323(as de\214ned, and the)
+-.1 F .373(compspec generates no matches,)108 177.6 R F2(bash)2.872 E F1
+.372(attempts its def)2.872 F .372(ault completions.)-.1 F .372
+(If the compspec and, if attempted,)5.372 F 1.214(the def)108 189.6 R
+(ault)-.1 E F2(bash)3.714 E F1 1.214
+(completions generate no matches, and the)3.714 F F2 1.214
+(\255o default)3.714 F F1 1.214(option w)3.714 F 1.214(as supplied to)
+-.1 F F2(complete)3.714 E F1(when the compspec w)108 201.6 Q
+(as de\214ned, programmable completion performs)-.1 E F2 -.18(re)2.5 G
+(adline).18 E F1 1.1 -.55('s d)D(ef).55 E(ault completion.)-.1 E .749
+(The options supplied to)108 218.4 R F2(complete)3.249 E F1(and)3.249 E
+F2(compopt)3.249 E F1 .749(can control ho)3.249 F(w)-.25 E F2 -.18(re)
+3.249 G(adline).18 E F1 .748(treats the completions.)3.248 F -.15(Fo)
+5.748 G 3.248(ri).15 G(n-)-3.248 E .791(stance, the)108 230.4 R F0 .791
+(\255o fullquote)3.291 F F1 .791(option tells)3.291 F F2 -.18(re)3.291 G
+(adline).18 E F1 .791(to quote the matches as if the)3.291 F 3.291(yw)
+-.15 G .791(ere \214lenames.)-3.291 F .792(See the de-)5.791 F
+(scription of)108 242.4 Q F2(complete)2.5 E F1(belo)2.5 E 2.5(wf)-.25 G
+(or details.)-2.5 E .766(When a compspec indicates that it w)108 259.2 R
+.765(ants directory name completion, the programmable completion func-)
+-.1 F .469(tions force)108 271.2 R F2 -.18(re)2.969 G(adline).18 E F1
+.469(to append a slash to completed names which are symbolic links to d\
+irectories, subject)2.969 F 2.575(to the v)108 283.2 R 2.575
+(alue of the)-.25 F F2(mark\255dir)5.075 E 2.575(ectories r)-.18 F
+(eadline)-.18 E F1 -.25(va)5.075 G 2.575(riable, re).25 F -.05(ga)-.15 G
+2.575(rdless of the setting of the).05 F F2(mark-sym-)5.075 E(link)108
+295.2 Q(ed\255dir)-.1 E(ectories r)-.18 E(eadline)-.18 E F1 -.25(va)2.5
+G(riable.).25 E .19
+(There is some support for dynamically modifying completions.)108 312 R
+.191(This is most useful when used in combina-)5.191 F 1.172
+(tion with a def)108 324 R 1.172(ault completion speci\214ed with)-.1 F
+F2 1.172(complete \255D)3.672 F F1 6.172(.I)C(t')-6.172 E 3.672(sp)-.55
+G 1.172(ossible for shell functions e)-3.672 F -.15(xe)-.15 G 1.172
+(cuted as).15 F .733(completion functions to indicate that completion s\
+hould be retried by returning an e)108 336 R .734(xit status of 124.)
+-.15 F .734(If a)5.734 F .1(shell function returns 124, and changes the\
+ compspec associated with the command on which completion is)108 348 R
+.665(being attempted \(supplied as the \214rst ar)108 360 R .666
+(gument when the function is e)-.18 F -.15(xe)-.15 G .666
+(cuted\), programmable completion).15 F .1(restarts from the be)108 372
+R .1(ginning, with an attempt to \214nd a ne)-.15 F 2.6(wc)-.25 G .1
+(ompspec for that command.)-2.6 F .1(This can be used to)5.1 F -.2(bu)
+108 384 S(ild a set of completions dynamically as completion is attempt\
+ed, rather than loading them all at once.).2 E -.15(Fo)108 400.8 S 2.636
+(ri).15 G .137
+(nstance, assuming that there is a library of compspecs, each k)-2.636 F
+.137(ept in a \214le corresponding to the name of)-.1 F
+(the command, the follo)108 412.8 Q(wing def)-.25 E
+(ault completion function w)-.1 E(ould load completions dynamically:)-.1
+E/F3 10/Courier@0 SF(_completion_loader\(\))144 424.8 Q({)144 436.8 Q 6
+(.")156 448.8 S
+(/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && return 124)-6 E(})144
+460.8 Q(complete \255D \255F _completion_loader \255o bashdefault \255o\
+ default)144 472.8 Q/F4 10.95/Times-Bold@0 SF(HIST)72 489.6 Q(OR)-.197 E
+(Y)-.383 E F1 .372(When the)108 501.6 R F2 .372(\255o history)2.872 F F1
+.372(option to the)2.872 F F2(set)2.872 E F1 -.2(bu)2.872 G .372
+(iltin is enabled, the shell pro).2 F .371(vides access to the)-.15 F F0
+.371(command history)2.871 F F1(,)A .304(the list of commands pre)108
+513.6 R .304(viously typed.)-.25 F .304(The v)5.304 F .304(alue of the)
+-.25 F/F5 9/Times-Bold@0 SF(HISTSIZE)2.804 E F1 -.25(va)2.554 G .305
+(riable is used as the number of com-).25 F .488(mands to sa)108 525.6 R
+.788 -.15(ve i)-.2 H 2.988(nah).15 G .488(istory list: the shell sa)
+-2.988 F -.15(ve)-.2 G 2.988(st).15 G .488(he te)-2.988 F .488
+(xt of the last)-.15 F F5(HISTSIZE)2.988 E F1 .487(commands \(def)2.738
+F .487(ault 500\).)-.1 F(The)5.487 E .805
+(shell stores each command in the history list prior to parameter and v)
+108 537.6 R .805(ariable e)-.25 F .805(xpansion \(see)-.15 F F5(EXP)
+3.305 E(ANSION)-.666 E F1(abo)108 549.6 Q -.15(ve)-.15 G 3.218(\)b).15 G
+.717(ut after history e)-3.418 F .717
+(xpansion is performed, subject to the v)-.15 F .717
+(alues of the shell v)-.25 F(ariables)-.25 E F5(HISTIGNORE)3.217 E F1
+(and)108 561.6 Q F5(HISTCONTR)2.5 E(OL)-.27 E/F6 9/Times-Roman@0 SF(.)A
+F1 .571(On startup,)108 578.4 R F2(bash)3.071 E F1 .571(initializes the\
+ history list by reading history entries from the the \214le named by t\
+he)3.071 F F5(HIST)3.072 E(-)-.828 E(FILE)108 590.4 Q F1 -.25(va)2.65 G
+.4(riable \(def).25 F(ault)-.1 E F0(\001/.bash_history)4.566 E F1 2.9
+(\). That)1.666 F .4(\214le is referred to as the)2.9 F F0 .399
+(history \214le)2.899 F F1 5.399(.T)C .399(he history \214le is trun-)
+-5.399 F .006(cated, if necessary)108 602.4 R 2.507(,t)-.65 G 2.507(oc)
+-2.507 G .007
+(ontain no more than the number of history entries speci\214ed by the v)
+-2.507 F .007(alue of the)-.25 F F5(HIST)2.507 E(-)-.828 E(FILESIZE)108
+614.4 Q F1 -.25(va)2.537 G 2.787(riable. If).25 F F5(HISTFILESIZE)2.787
+E F1 .287(is unset, or set to null, a non-numeric v)2.537 F .287
+(alue, or a numeric v)-.25 F .286(alue less)-.25 F
+(than zero, the history \214le is not truncated.)108 626.4 Q .385
+(When the history \214le is read, lines be)108 643.2 R .385
+(ginning with the history comment character follo)-.15 F .386
+(wed immediately by)-.25 F 3.486(ad)108 655.2 S .986
+(igit are interpreted as timestamps for the follo)-3.486 F .986
+(wing history line.)-.25 F .986(These timestamps are optionally dis-)
+5.986 F .328(played depending on the v)108 667.2 R .328(alue of the)-.25
+F F5(HISTTIMEFORMA)2.828 E(T)-.855 E F1 -.25(va)2.578 G 2.828
+(riable. When).25 F .329(present, history timestamps de-)2.828 F
+(limit history entries, making multi-line entries possible.)108 679.2 Q
+1.197(When a shell with history enabled e)108 696 R(xits,)-.15 E F2
+(bash)3.697 E F1 1.196(copies the last)3.696 F F5($HISTSIZE)3.696 E F1
+1.196(entries from the history list to)3.446 F F5($HISTFILE)108 708 Q F6
+(.)A F1 .056(If the)4.556 F F2(histappend)2.556 E F1 .056
+(shell option is enabled \(see the description of)2.556 F F2(shopt)2.556
+E F1(under)2.556 E F5 .056(SHELL B)2.556 F(UIL)-.09 E(TIN)-.828 E
+(COMMANDS)108 720 Q F1(belo)2.359 E(w\),)-.25 E F2(bash)2.609 E F1 .108
+(appends the entries to the history \214le, otherwise it o)2.608 F -.15
+(ve)-.15 G .108(rwrites the history \214le.).15 F(If)5.108 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(62)185.955 E 0 Cg EP
+%%Page: 63 63
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 9/Times-Bold@0 SF(HISTFILE)108 84 Q F1 .265(is \
+unset or null, or if the history \214le is unwritable, the history is n\
+ot sa)2.515 F -.15(ve)-.2 G 2.766(d. After).15 F(sa)2.766 E .266
+(ving the his-)-.2 F(tory)108 96 Q(,)-.65 E/F3 10/Times-Bold@0 SF(bash)
+2.5 E F1(truncates the history \214le to contain no more than)2.5 E F2
+(HISTFILESIZE)2.5 E F1(lines as described abo)2.25 E -.15(ve)-.15 G(.)
+.15 E .544(If the)108 112.8 R F2(HISTTIMEFORMA)3.044 E(T)-.855 E F1 -.25
+(va)2.794 G .544(riable is set, the shell writes the timestamp informat\
+ion associated with each).25 F .94
+(history entry to the history \214le, mark)108 124.8 R .94
+(ed with the history comment character)-.1 F 3.44(,s)-.4 G 3.44(ot)-3.44
+G .94(imestamps are preserv)-3.44 F(ed)-.15 E .105
+(across shell sessions.)108 136.8 R .105(This uses the history comment \
+character to distinguish timestamps from other history)5.105 F 2.5
+(lines. As)108 148.8 R(abo)2.5 E -.15(ve)-.15 G 2.5(,w).15 G(hen using)
+-2.5 E F2(HISTTIMEFORMA)2.5 E(T)-.855 E/F4 9/Times-Roman@0 SF(,)A F1
+(the timestamps delimit multi-line history entries.)2.25 E(The)108 165.6
+Q F3(fc)3.159 E F1 -.2(bu)3.159 G .659(iltin command \(see).2 F F2 .66
+(SHELL B)3.16 F(UIL)-.09 E .66(TIN COMMANDS)-.828 F F1(belo)2.91 E .66
+(w\) will list or edit and re-e)-.25 F -.15(xe)-.15 G .66(cute a por).15
+F(-)-.2 E .184(tion of the history list.)108 177.6 R(The)5.184 E F3
+(history)2.684 E F1 -.2(bu)2.684 G .184(iltin can display or modify the\
+ history list and manipulate the history).2 F 3.027(\214le. When)108
+189.6 R .528(using command-line editing, search commands are a)3.027 F
+-.25(va)-.2 G .528(ilable in each editing mode that pro).25 F(vide)-.15
+E(access to the history list.)108 201.6 Q 1.486(The shell allo)108 218.4
+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.485 E F2(HISTCONTR)3.985
+E(OL)-.27 E F1(and)3.735 E F2(HISTIGNORE)108 230.4 Q F1 -.25(va)2.816 G
+.566(riables are used to sa).25 F .866 -.15(ve o)-.2 H .566
+(nly a subset of the commands entered.).15 F .567(If the)5.566 F F3
+(cmdhist)3.067 E F1 .567(shell op-)3.067 F 1.404
+(tion is enabled, the shell attempts to sa)108 242.4 R 1.703 -.15(ve e)
+-.2 H 1.403(ach line of a multi-line command in the same history entry)
+.15 F(,)-.65 E 1.712(adding semicolons where necessary to preserv)108
+254.4 R 4.212(es)-.15 G 1.713(yntactic correctness.)-4.212 F(The)6.713 E
+F3(lithist)4.213 E F1 1.713(shell option modi\214es)4.213 F F3(cmdhist)
+108 266.4 Q F1 .037(by sa)2.537 F .037
+(ving the command with embedded ne)-.2 F .037
+(wlines instead of semicolons.)-.25 F .036(See the description of the)
+5.036 F F3(shopt)108 278.4 Q F1 -.2(bu)2.539 G .039(iltin belo).2 F
+2.539(wu)-.25 G(nder)-2.539 E F2 .04(SHELL B)2.539 F(UIL)-.09 E .04
+(TIN COMMANDS)-.828 F F1 .04
+(for information on setting and unsetting shell op-)2.29 F(tions.)108
+290.4 Q/F5 10.95/Times-Bold@0 SF(HIST)72 307.2 Q(OR)-.197 E 2.738(YE)
+-.383 G(XP)-2.738 E(ANSION)-.81 E F1 .611
+(The shell supports a history e)108 319.2 R .611
+(xpansion feature that is similar to the history e)-.15 F .61
+(xpansion in)-.15 F F3(csh)3.11 E F1 5.61(.T)C .61(his section)-5.61 F
+(describes what syntax features are a)108 331.2 Q -.25(va)-.2 G(ilable.)
+.25 E .771(History e)108 348 R .771(xpansion is enabled by def)-.15 F
+.771(ault for interacti)-.1 F 1.071 -.15(ve s)-.25 H .771
+(hells, and can be disabled using the).15 F F3(+H)3.272 E F1 .772
+(option to)3.272 F(the)108 360 Q F3(set)2.513 E F1 -.2(bu)2.513 G .013
+(iltin command \(see).2 F F2 .013(SHELL B)2.513 F(UIL)-.09 E .013
+(TIN COMMANDS)-.828 F F1(belo)2.263 E 2.513(w\). Non-interacti)-.25 F
+.313 -.15(ve s)-.25 H .012(hells do not perform).15 F(history e)108 372
+Q(xpansion by def)-.15 E(ault, b)-.1 E
+(ut it can be enabled with \231set -H\232.)-.2 E 1.305(History e)108
+388.8 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 .21
+(commands, insert the ar)108 400.8 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 412.8 Q(.)-.65 E 1.163(History e)108
+429.6 R 1.163(xpansion is performed immediately after a complete line i\
+s read, before the shell breaks it into)-.15 F -.1(wo)108 441.6 S .113
+(rds, and is performed on each line indi).1 F(vidually)-.25 E 5.113(.T)
+-.65 G .113(he shell attempts to inform the history e)-5.113 F .113
+(xpansion func-)-.15 F(tions about quoting still in ef)108 453.6 Q
+(fect from pre)-.25 E(vious lines.)-.25 E .248(It tak)108 470.4 R .248
+(es place in tw)-.1 F 2.748(op)-.1 G 2.748(arts. The)-2.748 F .249(\214\
+rst is to determine which history list entry to use during substitution\
+.)2.748 F(The)5.249 E(second is to select portions of that entry to inc\
+lude into the current one.)108 482.4 Q .075
+(The entry selected from the history is the)108 499.2 R F0 -.15(ev)2.575
+G(ent).15 E F1 2.575(,a)C .074
+(nd the portions of that entry that are acted upon are)-2.575 F F0(wor)
+2.574 E(ds)-.37 E F1(.)A -1.11(Va)108 511.2 S(rious)1.11 E F0
+(modi\214er)2.942 E(s)-.1 E F1 .443(are a)2.943 F -.25(va)-.2 G .443
+(ilable to manipulate the selected w).25 F 2.943(ords. The)-.1 F .443
+(entry is split into w)2.943 F .443(ords in the same)-.1 F -.1(fa)108
+523.2 S 1.427(shion as when reading input, so that se).1 F -.15(ve)-.25
+G(ral).15 E F0(metac)3.927 E(har)-.15 E(acter)-.15 E F1 1.427
+(-separated w)B 1.427(ords surrounded by quotes are)-.1 F .921
+(considered one w)108 535.2 R 3.421(ord. The)-.1 F F0 -.15(ev)3.421 G
+.921(ent designator).15 F F1 .921(selects the e)3.421 F -.15(ve)-.25 G
+.922(nt, the optional).15 F F0(wor)3.422 E 3.422(dd)-.37 G(esignator)
+-3.422 E F1 .922(selects w)3.422 F(ords)-.1 E(from the e)108 547.2 Q
+-.15(ve)-.25 G(nt, and v).15 E(arious optional)-.25 E F0(modi\214er)2.5
+E(s)-.1 E F1(are a)2.5 E -.25(va)-.2 G
+(ilable to manipulate the selected w).25 E(ords.)-.1 E .575(History e)
+108 564 R .575
+(xpansions are introduced by the appearance of the history e)-.15 F .574
+(xpansion character)-.15 F 3.074(,w)-.4 G .574(hich is)-3.074 F F3(!)
+3.907 E F1 .574(by de-)3.907 F -.1(fa)108 576 S 2.5(ult. History).1 F
+-.15(ex)2.5 G(pansions may appear an).15 E(ywhere in the input, b)-.15 E
+(ut do not nest.)-.2 E .79(Only backslash \()108 592.8 R F3(\\).833 E F1
+3.29(\)a).833 G .79(nd single quotes can quote the history e)-3.29 F .79
+(xpansion character)-.15 F 3.291(,b)-.4 G .791(ut the history e)-3.491 F
+(xpansion)-.15 E .789(character is also treated as quoted if it immedia\
+tely precedes the closing double quote in a double-quoted)108 604.8 R
+(string.)108 616.8 Q(Se)108 633.6 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 645.6 T
+3.722(ni).25 G 3.722(fi)-3.722 G 3.722(ti)-3.722 G 3.722(su)-3.722 G
+1.222(nquoted: space, tab, ne)-3.722 F 1.222(wline, carriage return,)
+-.25 F F3(=)3.722 E F1 3.722(,a)C 1.222
+(nd the other shell metacharacters de\214ned)-3.722 F(abo)108 657.6 Q
+-.15(ve)-.15 G(.).15 E 1.763(There is a special abbre)108 674.4 R 1.764
+(viation for substitution, acti)-.25 F 2.064 -.15(ve w)-.25 H 1.764
+(hen the).15 F F0(quic)4.264 E 4.264(ks)-.2 G(ubstitution)-4.264 E F1
+1.764(character \(described)4.264 F(abo)108 686.4 Q .99 -.15(ve u)-.15 H
+(nder).15 E F3(histchars)3.19 E F1 3.19(\)i)C 3.19(st)-3.19 G .69
+(he \214rst character on the line.)-3.19 F .69(It selects the pre)5.69 F
+.69(vious history list entry)-.25 F 3.19(,u)-.65 G .69(sing an)-3.19 F
+-2.15 -.25(ev e)108 698.4 T .586(nt designator equi).25 F -.25(va)-.25 G
+.586(lent to).25 F F3(!!)3.086 E F1 3.086(,a)C .586
+(nd substitutes one string for another in that entry)-3.086 F 5.587(.I)
+-.65 G 3.087(ti)-5.587 G 3.087(sd)-3.087 G .587(escribed belo)-3.087 F
+(w)-.25 E(under)108 710.4 Q F3(Ev)3.321 E .821(ent Designators)-.1 F F1
+5.821(.T)C .821(his is the only history e)-5.821 F .821
+(xpansion that does not be)-.15 F .82(gin with the history e)-.15 F
+(xpan-)-.15 E(sion character)108 722.4 Q(.)-.55 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(63)185.955 E 0 Cg EP
+%%Page: 64 64
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(Se)108 84 Q -.15(ve)-.25 G 1.216
+(ral shell options settable with the).15 F/F2 10/Times-Bold@0 SF(shopt)
+3.717 E F1 -.2(bu)3.717 G 1.217(iltin will modify history e).2 F 1.217
+(xpansion beha)-.15 F 1.217(vior \(see the de-)-.2 F 1.284
+(scription of the)108 96 R F2(shopt)3.783 E F1 -.2(bu)3.783 G 1.283
+(iltin belo).2 F 1.283(w\).and If the)-.25 F F2(histv)3.783 E(erify)-.1
+E F1 1.283(shell option is enabled, and)3.783 F F2 -.18(re)3.783 G
+(adline).18 E F1 1.283(is being)3.783 F .554(used, history substitution\
+s are not immediately passed to the shell parser)108 108 R 5.554(.I)-.55
+G .554(nstead, the e)-5.554 F .554(xpanded line is re-)-.15 F 2.746
+(loaded into the)108 120 R F2 -.18(re)5.246 G(adline).18 E F1 2.746
+(editing b)5.246 F(uf)-.2 E 2.746(fer for further modi\214cation.)-.25 F
+(If)7.746 E F2 -.18(re)5.246 G(adline).18 E F1 2.746
+(is being used, and the)5.246 F F2(histr)108 132 Q(eedit)-.18 E F1 .825
+(shell option is enabled, a f)3.325 F .825
+(ailed history substitution is reloaded into the)-.1 F F2 -.18(re)3.326
+G(adline).18 E F1 .826(editing b)3.326 F(uf)-.2 E(fer)-.25 E
+(for correction.)108 144 Q(The)108 160.8 Q F2<ad70>2.699 E F1 .199
+(option to the)2.699 F F2(history)2.699 E F1 -.2(bu)2.699 G .199
+(iltin command sho).2 F .199(ws what a history e)-.25 F .199
+(xpansion will do before using it.)-.15 F(The)5.198 E F2<ad73>108 172.8
+Q F1 .377(option to the)2.877 F F2(history)2.877 E F1 -.2(bu)2.878 G
+.378(iltin will add commands to the end of the history list without act\
+ually e).2 F -.15(xe)-.15 G(cuting).15 E(them, so that the)108 184.8 Q
+2.5(ya)-.15 G(re a)-2.5 E -.25(va)-.2 G(ilable for subsequent recall.)
+.25 E 1.109(The shell allo)108 201.6 R 1.108(ws control of the v)-.25 F
+1.108(arious characters used by the history e)-.25 F 1.108
+(xpansion mechanism \(see the de-)-.15 F .162(scription of)108 213.6 R
+F2(histchars)2.662 E F1(abo)2.662 E .462 -.15(ve u)-.15 H(nder).15 E F2
+.163(Shell V)2.662 F(ariables)-.92 E F1 2.663(\). The)B .163
+(shell uses the history comment character to mark)2.663 F
+(history timestamps when writing the history \214le.)108 225.6 Q F2(Ev)
+87 242.4 Q(ent Designators)-.1 E F1 .586(An e)108 254.4 R -.15(ve)-.25 G
+.586(nt designator is a reference to an entry in the history list.).15 F
+.586(The e)5.586 F -.15(ve)-.25 G .585
+(nt designator consists of the por).15 F(-)-.2 E 1.305(tion of the w)108
+266.4 R 1.305(ord be)-.1 F 1.305(ginning with the history e)-.15 F 1.306
+(xpansion character and ending with the w)-.15 F 1.306
+(ord designator if)-.1 F .445(present, or the end of the w)108 278.4 R
+2.945(ord. Unless)-.1 F .444(the reference is absolute, e)2.945 F -.15
+(ve)-.25 G .444(nts are relati).15 F .744 -.15(ve t)-.25 H 2.944(ot).15
+G .444(he current position)-2.944 F(in the history list.)108 290.4 Q F2
+(!)108 307.2 Q F1 .078(Start a history substitution, e)144 307.2 R .078
+(xcept when follo)-.15 F .079(wed by a)-.25 F F2(blank)2.579 E F1 2.579
+(,n)C -.25(ew)-2.579 G .079(line, carriage return, =, or).25 F 2.579(,w)
+-.4 G(hen)-2.579 E(the)144 319.2 Q F2(extglob)2.5 E F1
+(shell option is enabled using the)2.5 E F2(shopt)2.5 E F1 -.2(bu)2.5 G
+(iltin, \(.).2 E F2(!)108 331.2 Q F0(n)A F1(Refer to history list entry)
+144 331.2 Q F0(n)2.86 E F1(.).24 E F2<21ad>108 343.2 Q F0(n)A F1
+(Refer to the current entry minus)144 343.2 Q F0(n)2.86 E F1(.).24 E F2
+(!!)108 355.2 Q F1(Refer to the pre)144 355.2 Q(vious entry)-.25 E 5(.T)
+-.65 G(his is a synon)-5 E(ym for \231!\2551\232.)-.15 E F2(!)108 367.2
+Q F0(string)A F1 .865(Refer to the most recent command preceding the cu\
+rrent position in the history list starting with)144 367.2 R F0(string)
+144.34 379.2 Q F1(.).22 E F2(!?)108 391.2 Q F0(string)A F2([?])A F1
+1.503(Refer to the most recent command preceding the current position i\
+n the history list containing)144 403.2 R F0(string)144.34 415.2 Q F1
+5.497(.T).22 G .497(he trailing)-5.497 F F2(?)2.997 E F1 .497
+(may be omitted if)2.997 F F0(string)3.337 E F1 .496(is follo)3.216 F
+.496(wed immediately by a ne)-.25 F 2.996(wline. If)-.25 F F0(string)
+2.996 E F1(is)2.996 E .039(missing, this uses the string from the most \
+recent search; it is an error if there is no pre)144 427.2 R .04
+(vious search)-.25 F(string.)144 439.2 Q/F3 12/Times-Bold@0 SF<00>108
+456.2 Q F0(string1)-5 I F3<00>5 I F0(string2)-5 I F3<00>5 I F1 .753
+(Quick substitution.)144 463.2 R .753(Repeat the pre)5.753 F .753
+(vious command, replacing)-.25 F F0(string1)3.593 E F1(with)3.253 E F0
+(string2)3.592 E F1 5.752(.E).02 G(qui)-5.752 E -.25(va)-.25 G .752
+(lent to).25 F(\231!!:s)144 475.2 Q/F4 12/Times-Roman@0 SF<00>5 I F0
+(string1)-5 I F4<00>5 I F0(string2)-5 I F4<00>5 I F1 2.5<9a28>-5 K(see)
+-2.5 E F2(Modi\214ers)2.5 E F1(belo)2.5 E(w\).)-.25 E F2(!#)108 487.2 Q
+F1(The entire command line typed so f)144 487.2 Q(ar)-.1 E(.)-.55 E F2
+-.75(Wo)87 504 S(rd Designators).75 E F1 -.8(Wo)108 516 S .067
+(rd designators are used to select desired w).8 F .067(ords from the e)
+-.1 F -.15(ve)-.25 G 2.567(nt. The).15 F 2.567(ya)-.15 G .067
+(re optional; if the w)-2.567 F .068(ord designator)-.1 F(isn')108 528 Q
+3.516(ts)-.18 G 1.016(upplied, the history e)-3.516 F 1.016
+(xpansion uses the entire e)-.15 F -.15(ve)-.25 G 3.516(nt. A).15 F F2
+(:)3.516 E F1 1.015(separates the e)3.515 F -.15(ve)-.25 G 1.015
+(nt speci\214cation from the).15 F -.1(wo)108 540 S .331(rd designator)
+.1 F 5.331(.I)-.55 G 2.832(tm)-5.331 G .332(ay be omitted if the w)
+-2.832 F .332(ord designator be)-.1 F .332(gins with a)-.15 F F2<00>
+2.832 E F1(,)A F2($)2.832 E F1(,)A F2(*)2.832 E F1(,)A F2<ad>2.832 E F1
+2.832(,o)C(r)-2.832 E F2(%)2.832 E F1 5.332(.W)C .332(ords are num-)
+-6.132 F .194(bered from the be)108 552 R .194
+(ginning of the line, with the \214rst w)-.15 F .194
+(ord being denoted by 0 \(zero\).)-.1 F -.8(Wo)5.193 G .193
+(rds are inserted into).8 F
+(the current line separated by single spaces.)108 564 Q F2 2.5(0\()108
+580.8 S(zer)-2.5 E(o\))-.18 E F1(The zeroth w)144 592.8 Q 2.5(ord. F)-.1
+F(or the shell, this is the command w)-.15 E(ord.)-.1 E F0(n)108.36
+604.8 Q F1(The)144 604.8 Q F0(n)2.5 E F1(th w)A(ord.)-.1 E F2<00>108
+616.8 Q F1(The \214rst ar)144 616.8 Q(gument: w)-.18 E(ord 1.)-.1 E F2
+($)108 628.8 Q F1 .063(The last w)144 628.8 R 2.563(ord. This)-.1 F .063
+(is usually the last ar)2.563 F .064(gument, b)-.18 F .064(ut will e)-.2
+F .064(xpand to the zeroth w)-.15 F .064(ord if there is only)-.1 F
+(one w)144 640.8 Q(ord in the line.)-.1 E F2(%)108 652.8 Q F1 1.125
+(The \214rst w)144 652.8 R 1.125(ord matched by the most recent \231?)
+-.1 F F0(string)A F1 3.624(?\232 search,)B 1.124
+(if the search string be)3.624 F 1.124(gins with a)-.15 F .486
+(character that is part of a w)144 664.8 R 2.986(ord. By)-.1 F(def)2.986
+E .486(ault, searches be)-.1 F .487
+(gin at the end of each line and proceed to)-.15 F(the be)144 676.8 Q
+(ginning, so the \214rst w)-.15 E
+(ord matched is the one closest to the end of the line.)-.1 E F0(x)
+108.77 688.8 Q F2<ad>A F0(y)A F1 2.5(Ar)144 688.8 S(ange of w)-2.5 E
+(ords; \231\255)-.1 E F0(y)A F1 2.5<9a61>C(bbre)-2.5 E(viates \2310\255)
+-.25 E F0(y)A F1<9a2e>A F2(*)108 700.8 Q F1 .219(All of the w)144 700.8
+R .219(ords b)-.1 F .219(ut the zeroth.)-.2 F .219(This is a synon)5.219
+F .219(ym for \231)-.15 F F0(1\255$)A F1 2.719(\232. It)B .218
+(is not an error to use)2.719 F F2(*)2.718 E F1 .218(if there is)2.718 F
+(just one w)144 712.8 Q(ord in the e)-.1 E -.15(ve)-.25 G(nt; it e).15 E
+(xpands to the empty string in that case.)-.15 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(64)185.955 E 0 Cg EP
+%%Page: 65 65
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(x*)108 84 Q F1(Abbre)144 84 Q
+(viates)-.25 E F0(x\255$)2.5 E F1(.)A F2<78ad>108 96 Q F1(Abbre)144 96 Q
+(viates)-.25 E F0(x\255$)2.5 E F1(lik)2.5 E(e)-.1 E F2(x*)2.5 E F1 2.5
+(,b)C(ut omits the last w)-2.7 E 2.5(ord. If)-.1 F F2(x)2.5 E F1
+(is missing, it def)2.5 E(aults to 0.)-.1 E .368(If a w)108 112.8 R .368
+(ord designator is supplied without an e)-.1 F -.15(ve)-.25 G .368
+(nt speci\214cation, the pre).15 F .369(vious command is used as the e)
+-.25 F -.15(ve)-.25 G(nt,).15 E(equi)108 124.8 Q -.25(va)-.25 G(lent to)
+.25 E F2(!!)2.5 E F1(.)A F2(Modi\214ers)87 141.6 Q F1 .47
+(After the optional w)108 153.6 R .47(ord designator)-.1 F 2.97(,t)-.4 G
+.47(he e)-2.97 F .469
+(xpansion may include a sequence of one or more of the follo)-.15 F
+(wing)-.25 E(modi\214ers, each preceded by a \231:\232.)108 165.6 Q
+(These modify)5 E 2.5(,o)-.65 G 2.5(re)-2.5 G(dit, the w)-2.5 E
+(ord or w)-.1 E(ords selected from the history e)-.1 E -.15(ve)-.25 G
+(nt.).15 E F2(h)108 182.4 Q F1(Remo)144 182.4 Q .3 -.15(ve a t)-.15 H
+(railing pathname component, lea).15 E(ving only the head.)-.2 E F2(t)
+108 194.4 Q F1(Remo)144 194.4 Q .3 -.15(ve a)-.15 H
+(ll leading pathname components, lea).15 E(ving the tail.)-.2 E F2(r)108
+206.4 Q F1(Remo)144 206.4 Q .3 -.15(ve a t)-.15 H(railing suf).15 E
+(\214x of the form)-.25 E F0(.xxx)2.5 E F1 2.5(,l)C(ea)-2.5 E
+(ving the basename.)-.2 E F2(e)108 218.4 Q F1(Remo)144 218.4 Q .3 -.15
+(ve a)-.15 H(ll b).15 E(ut the trailing suf)-.2 E(\214x.)-.25 E F2(p)108
+230.4 Q F1(Print the ne)144 230.4 Q 2.5(wc)-.25 G(ommand b)-2.5 E
+(ut do not e)-.2 E -.15(xe)-.15 G(cute it.).15 E F2(q)108 242.4 Q F1
+(Quote the substituted w)144 242.4 Q
+(ords, escaping further substitutions.)-.1 E F2(x)108 254.4 Q F1 .385
+(Quote the substituted w)144 254.4 R .385(ords as with)-.1 F F2(q)2.885
+E F1 2.885(,b)C .386(ut break into w)-3.085 F .386(ords at)-.1 F F2
+(blanks)2.886 E F1 .386(and ne)2.886 F 2.886(wlines. The)-.25 F F2(q)
+2.886 E F1(and)2.886 E F2(x)2.886 E F1(modi\214ers are mutually e)144
+266.4 Q(xclusi)-.15 E -.15(ve)-.25 G 2.5(;e).15 G
+(xpansion uses the last one supplied.)-2.65 E F2(s/)108 278.4 Q F0(old)A
+F2(/)A F0(ne)A(w)-.15 E F2(/)A F1(Substitute)144 290.4 Q F0(ne)3.329 E
+(w)-.15 E F1 .469(for the \214rst occurrence of)3.279 F F0(old)3.199 E
+F1 .469(in the e)3.739 F -.15(ve)-.25 G .469(nt line.).15 F(An)5.469 E
+2.969(yc)-.15 G .469(haracter may be used as the)-2.969 F .294
+(delimiter in place of /.)144 302.4 R .295
+(The \214nal delimiter is optional if it is the last character of the e)
+5.294 F -.15(ve)-.25 G .295(nt line.).15 F(A)5.295 E .229
+(single backslash quotes the delimiter in)144 314.4 R F0(old)2.959 E F1
+(and)3.498 E F0(ne)3.088 E(w)-.15 E F1 5.228(.I).31 G 2.728(f&a)-5.228 G
+.228(ppears in)-2.728 F F0(ne)3.088 E(w)-.15 E F1 2.728(,i).31 G 2.728
+(ti)-2.728 G 2.728(sr)-2.728 G .228(eplaced with)-2.728 F F0(old)2.958 E
+F1(.).77 E 2.986(As)144 326.4 S .486(ingle backslash quotes the &.)
+-2.986 F(If)5.486 E F0(old)3.216 E F1 .486
+(is null, it is set to the last)3.756 F F0(old)3.216 E F1 .487
+(substituted, or)3.756 F 2.987(,i)-.4 G 2.987(fn)-2.987 G 2.987(op)
+-2.987 G(re)-2.987 E(vi-)-.25 E 1.09
+(ous history substitutions took place, the last)144 338.4 R F0(string)
+3.93 E F1 1.09(in a)3.81 F F2(!?)3.59 E F0(string)A F2([?])A F1 3.59
+(search. If)6.09 F F0(ne)3.95 E(w)-.15 E F1 1.09(is null, each)3.9 F
+(matching)144 350.4 Q F0(old)2.73 E F1(is deleted.)3.27 E F2(&)108 362.4
+Q F1(Repeat the pre)144 362.4 Q(vious substitution.)-.25 E F2(g)108
+374.4 Q F1 .267(Cause changes to be applied o)144 374.4 R -.15(ve)-.15 G
+2.767(rt).15 G .267(he entire e)-2.767 F -.15(ve)-.25 G .267(nt line.)
+.15 F .267(This is used in conjunction with \231)5.267 F F2(:s)A F1
+2.768<9a28>C(e.g.,)-2.768 E<99>144 386.4 Q F2(:gs/)A F0(old)A F2(/)A F0
+(ne)A(w)-.15 E F2(/)A F1(\232\) or \231)A F2(:&)A F1 2.5(\232. If)B
+(used with \231)2.5 E F2(:s)A F1(\232, an)A 2.5(yd)-.15 G
+(elimiter can be used in place of /, and the \214nal de-)-2.5 E
+(limiter is optional if it is the last character of the e)144 398.4 Q
+-.15(ve)-.25 G(nt line.).15 E(An)5 E F2(a)2.5 E F1
+(may be used as a synon)2.5 E(ym for)-.15 E F2(g)2.5 E F1(.)A F2(G)108
+410.4 Q F1(Apply the follo)144 410.4 Q(wing \231)-.25 E F2(s)A F1 2.5
+<9a6f>C 2.5<7299>-2.5 G F2(&)-2.5 E F1 2.5<9a6d>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 427.2 Q(UIL)-.11 E
+(TIN COMMANDS)-1.007 E F1 .063(Unless otherwise noted, each b)108 439.2
+R .062(uiltin command documented in this section as accepting options p\
+receded by)-.2 F F2<ad>108 451.2 Q F1(accepts)3.077 E F2<adad>3.077 E F1
+.577(to signify the end of the options.)3.077 F(The)5.577 E F2(:)3.077 E
+F1(,)A F2(true)3.077 E F1(,)A F2(false)3.077 E F1 3.077(,a)C(nd)-3.077 E
+F2(test)3.077 E F1(/)A F2([)A F1 -.2(bu)3.077 G .577
+(iltins do not accept options).2 F .462(and do not treat)108 463.2 R F2
+<adad>2.961 E F1(specially)2.961 E 5.461(.T)-.65 G(he)-5.461 E F2(exit)
+2.961 E F1(,)A F2(logout)2.961 E F1(,)A F2 -.18(re)2.961 G(tur).18 E(n)
+-.15 E F1(,)A F2(br)2.961 E(eak)-.18 E F1(,)A F2(continue)2.961 E F1(,)A
+F2(let)2.961 E F1 2.961(,a)C(nd)-2.961 E F2(shift)2.961 E F1 -.2(bu)
+2.961 G .461(iltins accept and).2 F .26(process ar)108 475.2 R .26
+(guments be)-.18 F .26(ginning with)-.15 F F2<ad>2.76 E F1 .261
+(without requiring)2.76 F F2<adad>2.761 E F1 5.261(.O)C .261(ther b)
+-5.261 F .261(uiltins that accept ar)-.2 F .261(guments b)-.18 F .261
+(ut are not)-.2 F 1.154(speci\214ed as accepting options interpret ar)
+108 487.2 R 1.154(guments be)-.18 F 1.154(ginning with)-.15 F F2<ad>
+3.654 E F1 1.154(as in)3.654 F -.25(va)-.4 G 1.154
+(lid options and require).25 F F2<adad>3.654 E F1(to)3.654 E(pre)108
+499.2 Q -.15(ve)-.25 G(nt this interpretation.).15 E F2(:)108 516 Q F1
+([)2.5 E F0(ar)A(guments)-.37 E F1(])A .451(No ef)144 528 R .451
+(fect; the command does nothing be)-.25 F .452(yond e)-.15 F(xpanding)
+-.15 E F0(ar)3.282 E(guments)-.37 E F1 .452(and performing an)3.222 F
+2.952(ys)-.15 G(peci\214ed)-2.952 E 2.5(redirections. The)144 540 R
+(return status is zero.)2.5 E F2(.)108 556.8 Q F1([)2.5 E F2<ad70>A F0
+(path)2.5 E F1(])A F0(\214lename)2.5 E F1([)2.5 E F0(ar)A(guments)-.37 E
+F1(])A F2(sour)108 568.8 Q(ce)-.18 E F1([)2.5 E F2<ad70>A F0(path)2.5 E
+F1(])A F0(\214lename)2.5 E F1([)2.5 E F0(ar)A(guments)-.37 E F1(])A(The)
+144 580.8 Q F2(.)2.79 E F1 .29(command \()2.79 F F2(sour)A(ce)-.18 E F1
+2.79(\)r)C .289(eads and e)-2.79 F -.15(xe)-.15 G .289
+(cute commands from).15 F F0(\214lename)4.699 E F1 .289
+(in the current shell en)2.969 F(viron-)-.4 E(ment and returns the e)144
+592.8 Q(xit status of the last command e)-.15 E -.15(xe)-.15 G
+(cuted from).15 E F0(\214lename)4.41 E F1(.).18 E(If)144 609.6 Q F0
+(\214lename)2.662 E F1 .162(does not contain a slash,)2.662 F F2(.)2.662
+E F1 .162(searches for it.)2.662 F .162(If the)5.162 F F2<ad70>2.662 E
+F1 .163(option is supplied,)2.663 F F2(.)2.663 E F1(treats)2.663 E F0
+(path)2.663 E F1 .163(as a)2.663 F .598
+(colon-separated list of directories in which to \214nd)144 621.6 R F0
+(\214lename)3.097 E F1 3.097(;o)C(therwise,)-3.097 E F2(.)3.097 E F1
+.597(uses the entries in)3.097 F/F4 9/Times-Bold@0 SF -.666(PA)3.097 G
+(TH)-.189 E F1 .302(to \214nd the directory containing)144 633.6 R F0
+(\214lename)4.712 E F1(.).18 E F0(\214lename)5.303 E F1 .303
+(does not need to be e)2.803 F -.15(xe)-.15 G 2.803(cutable. When).15 F
+F2(bash)2.803 E F1(is)2.803 E .459
+(not in posix mode, it searches the current directory if)144 645.6 R F0
+(\214lename)2.959 E F1 .459(is not found in)2.959 F F4 -.666(PA)2.959 G
+(TH)-.189 E/F5 9/Times-Roman@0 SF(,)A F1 -.2(bu)2.708 G 2.958(td).2 G
+.458(oes not)-2.958 F .6(search the current directory if)144 657.6 R F2
+<ad70>3.1 E F1 .6(is supplied.)3.1 F .6(If the)5.6 F F2(sour)3.1 E
+(cepath)-.18 E F1 .6(option to the)3.1 F F2(shopt)3.1 E F1 -.2(bu)3.1 G
+.6(iltin com-).2 F(mand is turned of)144 669.6 Q(f,)-.25 E F2(.)2.5 E F1
+(does not search)2.5 E F4 -.666(PA)2.5 G(TH)-.189 E F5(.)A F1 .65(If an)
+144 686.4 R(y)-.15 E F0(ar)3.15 E(guments)-.37 E F1 .649
+(are supplied, the)3.15 F 3.149(yb)-.15 G .649
+(ecome the positional parameters when)-3.149 F F0(\214lename)3.149 E F1
+.649(is e)3.149 F -.15(xe)-.15 G(cuted.).15 E
+(Otherwise the positional parameters are unchanged.)144 698.4 Q .498
+(If the)144 715.2 R F2<ad54>2.998 E F1 .498(option is enabled,)2.998 F
+F2(.)2.998 E F1 .498(inherits an)2.998 F 2.998(yt)-.15 G .498(rap on)
+-2.998 F F2(DEB)2.999 E(UG)-.1 E F1 2.999(;i)C 2.999(fi)-2.999 G 2.999
+(ti)-2.999 G 2.999(sn)-2.999 G .499(ot, an)-2.999 F(y)-.15 E F2(DEB)
+2.999 E(UG)-.1 E F1 .499(trap string is)2.999 F(sa)144 727.2 Q -.15(ve)
+-.2 G 3.26(da).15 G .76(nd restored around the call to)-3.26 F F2(.)3.26
+E F1 3.26(,a)C(nd)-3.26 E F2(.)3.26 E F1 .76(unsets the)3.26 F F2(DEB)
+3.26 E(UG)-.1 E F1 .76(trap while it e)3.26 F -.15(xe)-.15 G 3.26
+(cutes. If).15 F F2<ad54>3.26 E F1(is)3.26 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(65)185.955 E 0 Cg EP
+%%Page: 66 66
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E 1.076(not set, and the sourced \214le changes the)
+144 84 R/F2 10/Times-Bold@0 SF(DEB)3.576 E(UG)-.1 E F1 1.076
+(trap, the ne)3.576 F 3.576(wv)-.25 G 1.077(alue persists after)-3.826 F
+F2(.)3.577 E F1(completes.)3.577 E .424
+(The return status is the status of the last command e)144 96 R -.15(xe)
+-.15 G .423(cuted from).15 F F0(\214lename)2.923 E F1 .423
+(\(0 if no commands are)2.923 F -.15(exe)144 108 S
+(cuted\), and non-zero if).15 E F0(\214lename)4.41 E F1
+(is not found or cannot be read.)2.68 E F2(alias)108 124.8 Q F1([)2.5 E
+F2<ad70>A F1 2.5(][)C F0(name)-2.5 E F1([=)A F0(value)A F1 2.5(].)C
+1.666(..)-.834 G(])-1.666 E -.4(Wi)144 136.8 S 2.6(th no ar).4 F 2.6
+(guments or with the)-.18 F F2<ad70>5.1 E F1(option,)5.1 E F2(alias)
+5.101 E F1 2.601(prints the list of aliases in the form)5.101 F F2
+(alias)5.101 E F0(name)144 148.8 Q F1(=)A F0(value)A F1 1.715
+(on standard output.)4.215 F 1.715(When ar)6.715 F 1.714
+(guments are supplied, de\214ne an alias for each)-.18 F F0(name)4.214 E
+F1(whose)144 160.8 Q F0(value)2.508 E F1 .009(is gi)2.508 F -.15(ve)-.25
+G 2.509(n. A).15 F .009(trailing space in)2.509 F F0(value)2.509 E F1
+.009(causes the ne)2.509 F .009(xt w)-.15 F .009(ord to be check)-.1 F
+.009(ed for alias substi-)-.1 F .027(tution when the alias is e)144
+172.8 R .026(xpanded during command parsing.)-.15 F -.15(Fo)5.026 G
+2.526(re).15 G(ach)-2.526 E F0(name)2.526 E F1 .026(in the ar)2.526 F
+.026(gument list for)-.18 F .303(which no)144 184.8 R F0(value)2.803 E
+F1 .304(is supplied, print the name and v)2.804 F .304
+(alue of the alias)-.25 F F0(name)2.804 E F1(.)A F2(alias)5.304 E F1
+.304(returns true unless a)2.804 F F0(name)144 196.8 Q F1(is gi)2.5 E
+-.15(ve)-.25 G 2.5(n\().15 G(without a corresponding =)-2.5 E F0(value)A
+F1 2.5(\)f)C(or which no alias has been de\214ned.)-2.5 E F2(bg)108
+213.6 Q F1([)2.5 E F0(jobspec)A F1 1.666(...)2.5 G(])-1.666 E .745
+(Resume each suspended job)144 225.6 R F0(jobspec)3.245 E F1 .745
+(in the background, as if it had been started with)3.245 F F2(&)3.244 E
+F1 5.744(.I)C(f)-5.744 E F0(job-)4.984 E(spec)144 237.6 Q F1 .949
+(is not present, the shell uses its notion of the)3.759 F F0(curr)3.45 E
+.95(ent job)-.37 F F1(.)A F2(bg)5.95 E F0(jobspec)5.19 E F1 .95
+(returns 0 unless run)3.76 F .419(when job control is disabled or)144
+249.6 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 F0(jobspec)2.918 E F1 -.1(wa)2.918
+G 2.918(sn).1 G(ot)-2.918 E(found or w)144 261.6 Q
+(as started without job control.)-.1 E F2(bind)108 278.4 Q F1([)2.5 E F2
+<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2 E F1 2.5(][)C F2(\255lsvSVX)-2.5 E F1
+(])A F2(bind)108 290.4 Q F1([)2.5 E F2<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2 E
+F1 2.5(][)C F2<ad71>-2.5 E F0(function)2.5 E F1 2.5(][)C F2<ad75>-2.5 E
+F0(function)2.5 E F1 2.5(][)C F2<ad72>-2.5 E F0 -.1(ke)2.5 G(yseq)-.2 E
+F1(])A F2(bind)108 302.4 Q F1([)2.5 E F2<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2
+E F1(])A F2<ad66>2.5 E F0(\214lename)2.5 E F2(bind)108 314.4 Q F1([)2.5
+E F2<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2 E F1(])A F2<ad78>2.5 E F0 -.1(ke)
+2.5 G(yseq)-.2 E F1([:])A F0(shell\255command)2.5 E F2(bind)108 326.4 Q
+F1([)2.5 E F2<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2 E F1(])A F0 -.1(ke)2.5 G
+(yseq)-.2 E F1(:)A F0(function\255name)A F2(bind)108 338.4 Q F1([)2.5 E
+F2<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2 E F1(])A F2<ad70>2.5 E F1(|)A F2
+<ad50>A F1([)2.5 E F0 -.37(re)C(adline\255command).37 E F1(])A F2(bind)
+108 350.4 Q F1([)2.5 E F2<ad6d>A F0 -.1(ke)2.5 G(ymap)-.2 E F1(])A F0
+-.1(ke)2.5 G(yseq)-.2 E F1(:)A F0 -.37(re)C(adline\255command).37 E F2
+(bind)108 362.4 Q F0 -.37(re)2.5 G(adline-command-line).37 E F1 .238
+(Display current)144 374.4 R F2 -.18(re)2.738 G(adline).18 E F1 -.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 F2 -.18(re)2.739 G(adline)
+.18 E F1 .239(function or)2.739 F .211
+(macro or to a shell command, or set a)144 386.4 R F2 -.18(re)2.711 G
+(adline).18 E F1 -.25(va)2.711 G 2.711(riable. Each).25 F .211
+(non-option ar)2.711 F .211(gument is a k)-.18 F .511 -.15(ey b)-.1 H
+(ind-).15 E .258(ing or command as it w)144 398.4 R .259
+(ould appear in a)-.1 F F2 -.18(re)2.759 G(adline).18 E F1 .259
+(initialization \214le such as)2.759 F F0(.inputr)2.989 E(c)-.37 E F1
+2.759(,b).31 G .259(ut each bind-)-2.959 F .782
+(ing or command must be passed as a separate ar)144 410.4 R .781(gument\
+; e.g., \010"\\C\255x\\C\255r": re\255read\255init\255\214le\010.)-.18 F
+(In)5.781 E .192(the follo)144 422.4 R .192(wing descriptions, output a)
+-.25 F -.25(va)-.2 G .192
+(ilable to be re-read is formatted as commands that w).25 F .193
+(ould ap-)-.1 F .941(pear in a)144 434.4 R F2 -.18(re)3.441 G(adline).18
+E F1 .941(initialization \214le or that w)3.441 F .941
+(ould be supplied as indi)-.1 F .94(vidual ar)-.25 F .94(guments to a)
+-.18 F F2(bind)3.44 E F1 2.5(command. Options,)144 446.4 R
+(if supplied, ha)2.5 E .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)
+-.25 E F2<ad6d>144 458.4 Q F0 -.1(ke)2.5 G(ymap)-.2 E F1(Use)180 470.4 Q
+F0 -.1(ke)5.158 G(ymap)-.2 E F1 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 F0 -.1(ke)180 482.4 S(ymap)-.2 E F1 3.193(names are)
+5.883 F F0 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 494.4 Q F1 4.089(,a)C(nd)-4.089 E F0(vi\255insert)
+4.379 E F1(.).68 E F0(vi)6.589 E F1 1.589(is equi)4.089 F -.25(va)-.25 G
+1.589(lent to).25 F F0(vi\255command)4.089 E F1(\()4.089 E F0(vi\255mo)A
+(ve)-.1 E F1 1.59(is also a syn-)4.089 F(on)180 506.4 Q(ym\);)-.15 E F0
+(emacs)2.5 E F1(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F0
+(emacs\255standar)2.5 E(d)-.37 E F1(.)A F2<ad6c>144 518.4 Q F1
+(List the names of all)180 518.4 Q F2 -.18(re)2.5 G(adline).18 E F1
+(functions.)2.5 E F2<ad70>144 530.4 Q F1(Display)180 530.4 Q F2 -.18(re)
+2.982 G(adline).18 E F1 .481(function names and bindings in such a w)
+2.982 F .481(ay that the)-.1 F 2.981(yc)-.15 G .481(an be used as an)
+-2.981 F(ar)180 542.4 Q .192(gument to a subsequent)-.18 F F2(bind)2.692
+E F1 .192(command or in a)2.692 F F2 -.18(re)2.692 G(adline).18 E F1
+.193(initialization \214le.)2.693 F .193(If ar)5.193 F(guments)-.18 E
+1.524(remain after option processing,)180 554.4 R F2(bind)4.024 E F1
+1.523(treats them as)4.023 F F2 -.18(re)4.023 G(adline).18 E F1 1.523
+(command names and re-)4.023 F(stricts output to those names.)180 566.4
+Q F2<ad50>144 578.4 Q F1 .173(List current)180 578.4 R F2 -.18(re)2.673
+G(adline).18 E F1 .173(function names and bindings.)2.673 F .173(If ar)
+5.173 F .174(guments remain after option pro-)-.18 F(cessing,)180 590.4
+Q F2(bind)4.855 E F1 2.354(treats them as)4.855 F F2 -.18(re)4.854 G
+(adline).18 E F1 2.354(command names and restricts output to those)4.854
+F(names.)180 602.4 Q F2<ad73>144 614.4 Q F1(Display)180 614.4 Q F2 -.18
+(re)3.655 G(adline).18 E F1 -.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 626.4 S 2.555(yt).1 G .055
+(hat the)-2.555 F 2.555(yc)-.15 G .055(an be used as an ar)-2.555 F .055
+(gument to a subsequent)-.18 F F2(bind)2.555 E F1 .054(command or in a)
+2.554 F F2 -.18(re)2.554 G(adline).18 E F1(initialization \214le.)180
+638.4 Q F2<ad53>144 650.4 Q F1(Display)180 650.4 Q F2 -.18(re)2.5 G
+(adline).18 E F1 -.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 F2<ad76>144 662.4 Q F1(Display)180 662.4 Q F2 -.18(re)
+2.783 G(adline).18 E F1 -.25(va)2.783 G .283(riable names and v).25 F
+.283(alues in such a w)-.25 F .284(ay that the)-.1 F 2.784(yc)-.15 G
+.284(an be used as an ar)-2.784 F(-)-.2 E(gument to a subsequent)180
+674.4 Q F2(bind)2.5 E F1(command or in a)2.5 E F2 -.18(re)2.5 G(adline)
+.18 E F1(initialization \214le.)2.5 E F2<ad56>144 686.4 Q F1
+(List current)180 686.4 Q F2 -.18(re)2.5 G(adline).18 E F1 -.25(va)2.5 G
+(riable names and v).25 E(alues.)-.25 E F2<ad66>144 698.4 Q F0
+(\214lename)2.5 E F1(Read k)180 710.4 Q .3 -.15(ey b)-.1 H(indings from)
+.15 E F0(\214lename)2.5 E F1(.)A(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(66)185.955 E 0 Cg EP
+%%Page: 67 67
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF<ad71>144 84 Q F0(function)2.5
+E F1(Display k)180 96 Q .3 -.15(ey s)-.1 H(equences that in).15 E -.2
+(vo)-.4 G .2 -.1(ke t).2 H(he named).1 E F2 -.18(re)2.5 G(adline).18 E
+F0(function)2.5 E F1(.)A F2<ad75>144 108 Q F0(function)2.5 E F1
+(Unbind all k)180 120 Q .3 -.15(ey s)-.1 H(equences bound to the named)
+.15 E F2 -.18(re)2.5 G(adline).18 E F0(function)2.5 E F1(.)A F2<ad72>144
+132 Q F0 -.1(ke)2.5 G(yseq)-.2 E F1(Remo)180 144 Q .3 -.15(ve a)-.15 H
+.3 -.15(ny c).15 H(urrent binding for).15 E F0 -.1(ke)2.5 G(yseq)-.2 E
+F1(.)A F2<ad78>144 156 Q F0 -.1(ke)2.5 G(yseq)-.2 E F2([: ])A F0
+(shell\255command)A F1(Cause)180 168 Q F0(shell\255command)4.345 E F1
+1.845(to be e)4.345 F -.15(xe)-.15 G 1.845(cuted whene).15 F -.15(ve)
+-.25 G(r).15 E F0 -.1(ke)4.345 G(yseq)-.2 E F1 1.844(is entered.)4.344 F
+1.844(The separator be-)6.844 F(tween)180 180 Q F0 -.1(ke)3.015 G(yseq)
+-.2 E F1(and)3.015 E F0(shell\255command)3.016 E F1 .516
+(is either whitespace or a colon optionally follo)3.016 F .516(wed by)
+-.25 F 3.459(whitespace. If)180 192 R .958(the separator is whitespace,)
+3.459 F F0(shell\255command)3.458 E F1 .958(must be enclosed in double)
+3.458 F .622(quotes and)180 204 R F2 -.18(re)3.122 G(adline).18 E F1
+-.15(ex)3.122 G .623(pands an).15 F 3.123(yo)-.15 G 3.123(fi)-3.123 G
+.623(ts special backslash-escapes in)-3.123 F F0(shell\255command)3.123
+E F1(be-)3.123 E .713(fore sa)180 216 R .713(ving it.)-.2 F .713
+(If the separator is a colon, an)5.713 F 3.213(ye)-.15 G .712
+(nclosing double quotes are optional, and)-3.213 F F2 -.18(re)180 228 S
+(adline).18 E F1 .098(does not e)2.598 F .098
+(xpand the command string before sa)-.15 F .099(ving it.)-.2 F .099
+(Since the entire k)5.099 F .399 -.15(ey b)-.1 H(ind-).15 E .641(ing e)
+180 240 R .641(xpression must be a single ar)-.15 F .641
+(gument, it should be enclosed in single quotes.)-.18 F(When)5.64 E F0
+(shell\255command)180 252 Q F1 .563(is e)3.063 F -.15(xe)-.15 G .563
+(cuted, the shell sets the).15 F/F3 9/Times-Bold@0 SF(READLINE_LINE)
+3.063 E F1 -.25(va)2.813 G .563(riable to the contents).25 F .32(of the)
+180 264 R F2 -.18(re)2.82 G(adline).18 E F1 .32(line b)2.82 F(uf)-.2 E
+.32(fer and the)-.25 F F3(READLINE_POINT)2.82 E F1(and)2.57 E F3
+(READLINE_MARK)2.82 E F1 -.25(va)2.569 G(riables).25 E .545
+(to the current location of the insertion point and the sa)180 276 R
+-.15(ve)-.2 G 3.046(di).15 G .546(nsertion point \(the mark\), re-)
+-3.046 F(specti)180 288 Q -.15(ve)-.25 G(ly).15 E 7.188(.T)-.65 G 2.188
+(he shell assigns an)-7.188 F 4.688(yn)-.15 G 2.188(umeric ar)-4.688 F
+2.188(gument the user supplied to the)-.18 F F3(READ-)4.688 E
+(LINE_ARGUMENT)180 300 Q F1 -.25(va)2.398 G 2.648(riable. If).25 F .148
+(there w)2.648 F .148(as no ar)-.1 F .148(gument, that v)-.18 F .149
+(ariable is not set.)-.25 F .149(If the e)5.149 F(x-)-.15 E .583
+(ecuted command changes the v)180 312 R .583(alue of an)-.25 F 3.083(yo)
+-.15 G(f)-3.083 E F3(READLINE_LINE)3.083 E/F4 9/Times-Roman@0 SF(,)A F3
+(READLINE_POINT)2.832 E F4(,)A F1(or)2.832 E F3(READLINE_MARK)180 324 Q
+F4(,)A F1(those ne)2.25 E 2.5(wv)-.25 G
+(alues will be re\215ected in the editing state.)-2.75 E F2<ad58>144 336
+Q F1 .829(List all k)180 336 R 1.129 -.15(ey s)-.1 H .829
+(equences bound to shell commands and the associated commands in a for)
+.15 F(-)-.2 E(mat that can be reused as an ar)180 348 Q
+(gument to a subsequent)-.18 E F2(bind)2.5 E F1(command.)2.5 E
+(The return v)144 364.8 Q(alue is 0 unless an unrecognized option is su\
+pplied or an error occurred.)-.25 E F2(br)108 381.6 Q(eak)-.18 E F1([)
+2.5 E F0(n)A F1(])A .012(Exit from within a)144 393.6 R F2 -.25(fo)2.512
+G(r).25 E F1(,)A F2(while)2.512 E F1(,)A F2(until)2.512 E F1 2.512(,o)C
+(r)-2.512 E F2(select)2.512 E F1 2.512(loop. If)2.512 F F0(n)2.512 E F1
+.011(is speci\214ed,)2.512 F F2(br)2.511 E(eak)-.18 E F1 -.15(ex)2.511 G
+(its).15 E F0(n)2.511 E F1 .011(enclosing loops.)2.511 F F0(n)144.36
+405.6 Q F1 .632(must be)3.372 F/F5 10/Symbol SF<b3>3.132 E F1 3.132
+(1. If)3.132 F F0(n)3.492 E F1 .632(is greater than the number of enclo\
+sing loops, all enclosing loops are e)3.372 F(xited.)-.15 E
+(The return v)144 417.6 Q(alue is 0 unless)-.25 E F0(n)2.5 E F1
+(is not greater than or equal to 1.)2.5 E F2 -.2(bu)108 434.4 S(iltin).2
+E F0(shell\255b)2.5 E(uiltin)-.2 E F1([)2.5 E F0(ar)A(guments)-.37 E F1
+(])A(Ex)144 446.4 Q 1.261(ecute the speci\214ed shell b)-.15 F(uiltin)
+-.2 E F0(shell\255b)3.761 E(uiltin)-.2 E F1 3.761(,p)C 1.261(assing it)
+-3.761 F F0(ar)4.091 E(guments)-.37 E F1 3.761(,a).27 G 1.26
+(nd return its e)-3.761 F 1.26(xit status.)-.15 F 1.053(This is useful \
+when de\214ning a function whose name is the same as a shell b)144 458.4
+R 1.053(uiltin, retaining the)-.2 F 1.166(functionality of the b)144
+470.4 R 1.166(uiltin within the function.)-.2 F(The)6.166 E F2(cd)3.666
+E F1 -.2(bu)3.666 G 1.165(iltin is commonly rede\214ned this w).2 F(ay)
+-.1 E(.)-.65 E(The return status is f)144 482.4 Q(alse if)-.1 E F0
+(shell\255b)2.84 E(uiltin)-.2 E F1(is not a shell b)2.74 E
+(uiltin command.)-.2 E F2(caller)108 499.2 Q F1([)2.5 E F0 -.2(ex)C(pr)
+.2 E F1(])A .253(Returns the conte)144 511.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 F2(.)2.754 E F1(or)2.754 E F2(sour)144 523.2 Q
+(ce)-.18 E F1 -.2(bu)2.5 G(iltins\).).2 E -.4(Wi)144 540 S(thout).4 E F0
+-.2(ex)3.294 G(pr).2 E F1(,)A F2(caller)3.294 E F1 .793(displays the li\
+ne number and source \214lename of the current subroutine call.)3.294 F
+.124(If a non-ne)144 552 R -.05(ga)-.15 G(ti).05 E .424 -.15(ve i)-.25 H
+(nte).15 E .124(ger is supplied as)-.15 F F0 -.2(ex)2.624 G(pr).2 E F1
+(,)A F2(caller)2.624 E F1 .124(displays the line number)2.624 F 2.624
+(,s)-.4 G .124(ubroutine name, and)-2.624 F .743
+(source \214le corresponding to that position in the current e)144 564 R
+-.15(xe)-.15 G .743(cution call stack.).15 F .742(This e)5.743 F .742
+(xtra informa-)-.15 F(tion may be used, for e)144 576 Q
+(xample, to print a stack trace.)-.15 E(The current frame is frame 0.)5
+E .1(The return v)144 592.8 R .1(alue is 0 unless the shell is not e)
+-.25 F -.15(xe)-.15 G .101(cuting a subroutine call or).15 F F0 -.2(ex)
+2.601 G(pr).2 E F1 .101(does not correspond)2.601 F(to a v)144 604.8 Q
+(alid position in the call stack.)-.25 E F2(cd)108 621.6 Q F1([)2.5 E F2
+<ad4c>A F1 2.5(][)C F2<ad40>-2.5 E F1 2.5(][)C F0(dir)-2.5 E F1(])A F2
+(cd \255P)108 633.6 Q F1([)2.5 E F2<ad65>A F1 2.5(][)C F2<ad40>-2.5 E F1
+2.5(][)C F0(dir)-2.5 E F1(])A .322(Change the current directory to)144
+645.6 R F0(dir)2.822 E F1 5.322(.i)C(f)-5.322 E F0(dir)2.822 E F1 .321
+(is not supplied, the v)2.822 F .321(alue of the)-.25 F F3(HOME)2.821 E
+F1 .321(shell v)2.571 F .321(ariable is)-.25 F .74(used as)144 657.6 R
+F0(dir)3.24 E F1 5.74(.T)C .74(he v)-5.74 F(ariable)-.25 E F3(CDP)3.24 E
+-.855(AT)-.666 G(H).855 E F1 -.15(ex)2.99 G .74(ists, and).15 F F0(dir)
+3.24 E F1 .74(does not be)3.24 F .74(gin with a slash \(/\),)-.15 F F2
+(cd)3.24 E F1 .741(uses it as a)3.24 F 1.837
+(search path: the shell searches each directory name in)144 669.6 R F3
+(CDP)4.336 E -.855(AT)-.666 G(H).855 E F1(for)4.086 E F0(dir)4.336 E F1
+6.836(.A)C(lternati)-6.836 E 2.136 -.15(ve d)-.25 H(irectory).15 E .447
+(names in)144 681.6 R F3(CDP)2.947 E -.855(AT)-.666 G(H).855 E F1 .447
+(are separated by a colon \(:\).)2.697 F 2.948(An)5.448 G .448
+(ull directory name in)-2.948 F F3(CDP)2.948 E -.855(AT)-.666 G(H).855 E
+F1 .448(is the same as)2.698 F(the current directory)144 693.6 Q 2.5(,i)
+-.65 G(.e., \231.\232.)-2.5 E(The)144 710.4 Q F2<ad50>2.915 E F1 .415
+(option causes)2.915 F F2(cd)2.915 E F1 .415(to use the ph)2.915 F .414
+(ysical directory structure by resolving symbolic links while)-.05 F
+(tra)144 722.4 Q -.15(ve)-.2 G(rsing).15 E F0(dir)2.673 E F1 .173
+(and before processing instances of)2.673 F F0 1.666(..)4.339 G F1(in)
+2.673 E F0(dir)2.673 E F1 .174(\(see also the)2.673 F F2<ad50>2.674 E F1
+.174(option to the)2.674 F F2(set)2.674 E F1 -.2(bu)2.674 G(iltin).2 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(67)185.955 E 0 Cg EP
+%%Page: 68 68
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(command\).)144 84 Q(The)144 100.8 Q/F2 10
+/Times-Bold@0 SF<ad4c>3.039 E F1 .539(option forces)3.039 F F2(cd)3.039
+E F1 .539(to follo)3.039 F 3.039(ws)-.25 G .538
+(ymbolic links by resolving the link after processing instances)-3.039 F
+(of)144 112.8 Q F0 1.666(..)4.414 G F1(in)2.748 E F0(dir)2.748 E F1
+5.248(.I)C(f)-5.248 E F0 1.666(..)4.414 G F1 .248(appears in)2.748 F F0
+(dir)2.748 E F1(,)A F2(cd)2.748 E F1 .249(processes it by remo)2.749 F
+.249(ving the immediately pre)-.15 F .249(vious pathname)-.25 F .202
+(component from)144 124.8 R F0(dir)2.702 E F1 2.702(,b)C .202
+(ack to a slash or the be)-2.702 F .202(ginning of)-.15 F F0(dir)2.702 E
+F1 2.701(,a)C .201(nd v)-2.701 F .201(erifying that the portion of)-.15
+F F0(dir)2.701 E F1(it)2.701 E .282
+(has processed to that point is still a v)144 136.8 R .282
+(alid directory name after remo)-.25 F .282
+(ving the pathname component.)-.15 F .624(If it is not a v)144 148.8 R
+.624(alid directory name,)-.25 F F2(cd)3.124 E F1 .624
+(returns a non-zero status.)3.124 F .623(If neither)5.624 F F2<ad4c>
+3.123 E F1(nor)3.123 E F2<ad50>3.123 E F1 .623(is supplied,)3.123 F F2
+(cd)144 160.8 Q F1(beha)2.5 E -.15(ve)-.2 G 2.5(sa).15 G 2.5(si)-2.5 G
+(f)-2.5 E F2<ad4c>2.5 E F1(had been supplied.)2.5 E .245(If the)144
+177.6 R F2<ad65>2.745 E F1 .245(option is supplied with)2.745 F F2<ad50>
+2.745 E F1 2.745(,a)C(nd)-2.745 E F2(cd)2.745 E F1 .245
+(cannot successfully determine the current w)2.745 F .245(orking di-)-.1
+F(rectory after a successful directory change, it returns a non-zero st\
+atus.)144 189.6 Q .243(On systems that support it, the)144 206.4 R F2
+<ad40>2.743 E F1 .242(option presents the e)2.743 F .242(xtended attrib)
+-.15 F .242(utes associated with a \214le as)-.2 F 2.5(ad)144 218.4 S
+(irectory)-2.5 E(.)-.65 E(An ar)144 235.2 Q(gument of)-.18 E F2<ad>2.5 E
+F1(is con)2.5 E -.15(ve)-.4 G(rted to).15 E/F3 9/Times-Bold@0 SF
+($OLDPWD)2.5 E F1(before attempting the directory change.)2.25 E(If)144
+252 Q F2(cd)3 E F1 .5(uses a non-empty directory name from)3 F F3(CDP)
+3.001 E -.855(AT)-.666 G(H,).855 E F1 .501(or if)2.751 F F2<ad>3.001 E
+F1 .501(is the \214rst ar)3.001 F .501(gument, and the direc-)-.18 F
+1.243(tory change is successful,)144 264 R F2(cd)3.743 E F1 1.243
+(writes the absolute pathname of the ne)3.743 F 3.742(ww)-.25 G 1.242
+(orking directory to the)-3.842 F(standard output.)144 276 Q 1.113
+(If the directory change is successful,)144 292.8 R F2(cd)3.613 E F1
+1.113(sets the v)3.613 F 1.113(alue of the)-.25 F F2(PWD)3.613 E F1(en)
+3.613 E 1.113(vironment v)-.4 F 1.114(ariable to the)-.25 F(ne)144 304.8
+Q 4.306(wd)-.25 G 1.806(irectory name, and sets the)-4.306 F F2(OLDPWD)
+4.306 E F1(en)4.306 E 1.806(vironment v)-.4 F 1.806(ariable to the v)
+-.25 F 1.805(alue of the current)-.25 F -.1(wo)144 316.8 S
+(rking directory before the change.).1 E(The return v)144 333.6 Q
+(alue is true if the directory w)-.25 E(as successfully changed; f)-.1 E
+(alse otherwise.)-.1 E F2(command)108 350.4 Q F1([)2.5 E F2(\255pVv)A F1
+(])A F0(command)2.5 E F1([)2.5 E F0(ar)A(g)-.37 E F1 1.666(...)2.5 G(])
+-1.666 E(The)144 362.4 Q F2(command)3.078 E F1 -.2(bu)3.078 G .578
+(iltin runs).2 F F0(command)3.278 E F1(with)3.848 E F0(ar)3.408 E(gs)
+-.37 E F1 .579(suppressing the normal shell function lookup for)3.348 F
+F0(command)144 374.4 Q F1 6.346(.O)C 1.346(nly b)-6.346 F 1.345
+(uiltin commands or commands found in the)-.2 F F3 -.666(PA)3.845 G(TH)
+-.189 E F1(named)3.595 E F0(command)3.845 E F1 1.345(are e)3.845 F -.15
+(xe)-.15 G(-).15 E 2.714(cuted. If)144 386.4 R(the)2.714 E F2<ad70>2.714
+E F1 .214(option is supplied, the search for)2.714 F F0(command)2.914 E
+F1 .214(is performed using a def)3.484 F .215(ault v)-.1 F .215
+(alue for)-.25 F F3 -.666(PA)144 398.4 S(TH)-.189 E F1
+(that is guaranteed to \214nd all of the standard utilities.)2.25 E .273
+(If either the)144 415.2 R F2<ad56>2.773 E F1(or)2.773 E F2<ad76>2.773 E
+F1 .273(option is supplied,)2.773 F F2(command)2.773 E F1 .273
+(prints a description of)2.773 F F0(command)2.973 E F1 5.273(.T).77 G
+(he)-5.273 E F2<ad76>2.773 E F1(op-)2.772 E .436
+(tion displays a single w)144 427.2 R .437
+(ord indicating the command or \214lename used to in)-.1 F -.2(vo)-.4 G
+-.1(ke).2 G F0(command)3.237 E F1 2.937(;t).77 G(he)-2.937 E F2<ad56>
+2.937 E F1(option produces a more v)144 439.2 Q(erbose description.)-.15
+E .632(If the)144 456 R F2<ad56>3.131 E F1(or)3.131 E F2<ad76>3.131 E F1
+.631(option is supplied, the e)3.131 F .631(xit status is zero if)-.15 F
+F0(command)3.331 E F1 -.1(wa)3.901 G 3.131(sf).1 G .631
+(ound, and non-zero if)-3.131 F 2.809(not. If)144 468 R .309
+(neither option is supplied and an error occurred or)2.809 F F0(command)
+3.01 E F1 .31(cannot be found, the e)3.58 F .31(xit sta-)-.15 F
+(tus is 127.)144 480 Q(Otherwise, the e)5 E(xit status of the)-.15 E F2
+(command)2.5 E F1 -.2(bu)2.5 G(iltin is the e).2 E(xit status of)-.15 E
+F0(command)2.7 E F1(.).77 E F2(compgen)108 496.8 Q F1([)2.5 E F2<ad56>A
+F0(varname)2.5 E F1 2.5(][)C F0(option)-2.5 E F1 2.5(][)C F0(wor)-2.5 E
+(d)-.37 E F1(])A .013(Generate possible completion matches for)144 508.8
+R F0(wor)2.513 E(d)-.37 E F1 .013(according to the)2.513 F F0(option)
+2.513 E F1 .013(s, which may be an)B 2.512(yo)-.15 G(ption)-2.512 E
+1.216(accepted by the)144 520.8 R F2(complete)3.716 E F1 -.2(bu)3.716 G
+1.216(iltin with the e).2 F 1.216(xceptions of)-.15 F F2<ad70>3.716 E F1
+(,)A F2<ad72>3.717 E F1(,)A F2<ad44>3.717 E F1(,)A F2<ad45>3.717 E F1
+3.717(,a)C(nd)-3.717 E F2<ad49>3.717 E F1 3.717(,a)C 1.217(nd write the)
+-3.717 F(matches to the standard output.)144 532.8 Q 1.376(If the)144
+549.6 R F2<ad56>3.876 E F1 1.376(option is supplied,)3.876 F F2(compgen)
+3.876 E F1 1.376(stores the generated completions into the inde)3.876 F
+-.15(xe)-.15 G 3.875(da).15 G(rray)-3.875 E -.25(va)144 561.6 S(riable)
+.25 E F0(varname)2.5 E F1
+(instead of writing them to the standard output.)2.5 E .194
+(When using the)144 578.4 R F2<ad46>2.694 E F1(or)2.694 E F2<ad43>2.694
+E F1 .195(options, the v)2.695 F .195(arious shell v)-.25 F .195
+(ariables set by the programmable completion)-.25 F -.1(fa)144 590.4 S
+(cilities, 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 607.2 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
+619.2 R(If)5.02 E F0(wor)2.52 E(d)-.37 E F1 .02(is speci\214ed, only)
+2.52 F(those completions matching)144 631.2 Q F0(wor)2.5 E(d)-.37 E F1
+(will be displayed or stored.)2.5 E(The return v)144 648 Q
+(alue is true unless an in)-.25 E -.25(va)-.4 G
+(lid option is supplied, or no matches were generated.).25 E F2
+(complete)108 664.8 Q F1([)2.5 E F2(\255abcdefgjksuv)A F1 2.5(][)C F2
+<ad6f>-2.5 E F0(comp-option)2.5 E F1 2.5(][)C F2(\255DEI)-2.5 E F1 2.5
+(][)C F2<ad41>-2.5 E F0(action)2.5 E F1(])A([)144 676.8 Q F2<ad47>A F0
+(globpat)2.5 E F1 2.5(][)C F2<ad57>-2.5 E F0(wor)2.5 E(dlist)-.37 E F1
+2.5(][)C F2<ad46>-2.5 E F0(function)2.5 E F1 2.5(][)C F2<ad43>-2.5 E F0
+(command)2.5 E F1(])A([)144 688.8 Q F2<ad58>A F0(\214lterpat)2.5 E F1
+2.5(][)C F2<ad50>-2.5 E F0(pr)2.5 E(e\214x)-.37 E F1 2.5(][)C F2<ad53>
+-2.5 E F0(suf)2.5 E<8c78>-.18 E F1(])A F0(name)2.5 E F1([)2.5 E F0(name)
+A F1 1.666(...)2.5 G(])-1.666 E F2(complete \255pr)108 700.8 Q F1([)2.5
+E F2(\255DEI)A F1 2.5(][)C F0(name)-2.5 E F1 1.666(...)2.5 G(])-1.666 E
+(Specify ho)144 712.8 Q 2.5(wa)-.25 G -.18(rg)-2.5 G(uments to each).18
+E F0(name)2.5 E F1(should be completed.)2.5 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(68)185.955 E 0 Cg EP
+%%Page: 69 69
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .11(If the)144 84 R/F2 10/Times-Bold@0 SF<ad70>2.61
+E F1 .11(option is supplied, or if no options or)2.61 F F0(name)2.609 E
+F1 2.609(sa)C .109(re supplied, print e)-2.609 F .109
+(xisting completion spec-)-.15 F .924(i\214cations in a w)144 96 R .924
+(ay that allo)-.1 F .924(ws them to be reused as input.)-.25 F(The)5.924
+E F2<ad72>3.424 E F1 .924(option remo)3.424 F -.15(ve)-.15 G 3.425(sac)
+.15 G(ompletion)-3.425 E(speci\214cation for each)144 108 Q F0(name)2.5
+E F1 2.5(,o)C .8 -.4(r, i)-2.5 H 2.5(fn).4 G(o)-2.5 E F0(name)2.5 E F1
+2.5(sa)C(re supplied, all completion speci\214cations.)-2.5 E(The)144
+124.8 Q F2<ad44>2.585 E F1 .085(option indicates that other supplied op\
+tions and actions should apply to the \231def)2.585 F .084
+(ault\232 com-)-.1 F .032(mand completion; that is, completion attempte\
+d on a command for which no completion has pre)144 136.8 R(vi-)-.25 E
+.46(ously been de\214ned.)144 148.8 R(The)5.46 E F2<ad45>2.96 E F1 .459
+(option indicates that other supplied options and actions should apply)
+2.959 F .169(to \231empty\232 command completion; that is, completion a\
+ttempted on a blank line.)144 160.8 R(The)5.17 E F2<ad49>2.67 E F1 .17
+(option in-)2.67 F 1.025(dicates that other supplied options and action\
+s should apply to completion on the initial non-as-)144 172.8 R .281
+(signment w)144 184.8 R .281
+(ord on the line, or after a command delimiter such as)-.1 F F2(;)2.781
+E F1(or)2.781 E F2(|)2.781 E F1 2.781(,w)C .282(hich is usually command)
+-2.781 F .6(name completion.)144 196.8 R .599
+(If multiple options are supplied, the)5.6 F F2<ad44>3.099 E F1 .599
+(option tak)3.099 F .599(es precedence o)-.1 F -.15(ve)-.15 G(r).15 E F2
+<ad45>3.099 E F1 3.099(,a)C(nd)-3.099 E .186(both tak)144 208.8 R 2.686
+(ep)-.1 G .186(recedence o)-2.686 F -.15(ve)-.15 G(r).15 E F2<ad49>2.686
+E F1 5.186(.I)C 2.686(fa)-5.186 G .486 -.15(ny o)-2.686 H(f).15 E F2
+<ad44>2.686 E F1(,)A F2<ad45>2.686 E F1 2.686(,o)C(r)-2.686 E F2<ad49>
+2.686 E F1 .186(are supplied, an)2.686 F 2.686(yo)-.15 G(ther)-2.686 E
+F0(name)2.686 E F1(ar)2.687 E .187(guments are)-.18 F(ignored; these co\
+mpletions only apply to the case speci\214ed by the option.)144 220.8 Q
+.443(The process of applying these completion speci\214cations when att\
+empting w)144 237.6 R .442(ord completion)-.1 F .442(is de-)5.442 F
+(scribed abo)144 249.6 Q .3 -.15(ve u)-.15 H(nder).15 E F2(Pr)2.5 E
+(ogrammable Completion)-.18 E F1(.)A .555
+(Other options, if speci\214ed, ha)144 266.4 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 F2<ad47>3.056 E F1(,)A F2<ad57>3.056 E F1 3.056
+(,a)C(nd)-3.056 E F2<ad58>3.056 E F1 .723(options \(and, if necessary)
+144 278.4 R 3.223(,t)-.65 G(he)-3.223 E F2<ad50>3.223 E F1(and)3.223 E
+F2<ad53>3.223 E F1 .722
+(options\) should be quoted to protect them from e)3.223 F(xpan-)-.15 E
+(sion before the)144 290.4 Q F2(complete)2.5 E F1 -.2(bu)2.5 G
+(iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E F2<ad6f>144 307.2 Q
+F0(comp-option)2.5 E F1(The)184 319.2 Q F0(comp-option)2.79 E F1 .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 331.2 Q F0
+(comp-option)5 E F1(may be one of:)2.5 E F2(bashdefault)184 343.2 Q F1
+.281(Perform the rest of the def)224 355.2 R(ault)-.1 E F2(bash)2.781 E
+F1 .281(completions if the compspec generates no)2.781 F(matches.)224
+367.2 Q F2(default)184 379.2 Q F1(Use)224 379.2 Q F2 -.18(re)5.085 G
+(adline).18 E F1 3.685 -.55('s d)D(ef).55 E 2.586
+(ault \214lename completion if the compspec generates no)-.1 F(matches.)
+224 391.2 Q F2(dir)184 403.2 Q(names)-.15 E F1(Perform directory name c\
+ompletion if the compspec generates no matches.)224 415.2 Q F2
+(\214lenames)184 427.2 Q F1 -.7(Te)224 439.2 S(ll).7 E F2 -.18(re)4.104
+G(adline).18 E F1 1.604
+(that the compspec generates \214lenames, so it can perform an)4.104 F
+(y)-.15 E .291(\214lename\255speci\214c processing \(such as adding a s\
+lash to directory names, quot-)224 451.2 R .904
+(ing special characters, or suppressing trailing spaces\).)224 463.2 R
+.903(This is intended to be)5.904 F(used with shell functions.)224 475.2
+Q F2(fullquote)184 487.2 Q F1 -.7(Te)224 499.2 S(ll).7 E F2 -.18(re)2.5
+G(adline).18 E F1(to quote all the completed w)2.5 E(ords e)-.1 E -.15
+(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he)-2.5 E 2.5(ya)-.15 G
+(re not \214lenames.)-2.5 E F2(noquote)184 511.2 Q F1 -.7(Te)224 511.2 S
+(ll).7 E F2 -.18(re)3.096 G(adline).18 E F1 .597
+(not to quote the completed w)3.096 F .597(ords if the)-.1 F 3.097(ya)
+-.15 G .597(re \214lenames \(quoting)-3.097 F(\214lenames is the def)224
+523.2 Q(ault\).)-.1 E F2(nosort)184 535.2 Q F1 -.7(Te)224 535.2 S(ll).7
+E F2 -.18(re)2.5 G(adline).18 E F1
+(not to sort the list of possible completions alphabetically)2.5 E(.)
+-.65 E F2(nospace)184 547.2 Q F1 -.7(Te)224 547.2 S(ll).7 E F2 -.18(re)
+2.534 G(adline).18 E F1 .034(not to append a space \(the def)2.534 F
+.033(ault\) to w)-.1 F .033(ords completed at the end)-.1 F
+(of the line.)224 559.2 Q F2(plusdirs)184 571.2 Q F1 2.542
+(After generating an)224 571.2 R 5.042(ym)-.15 G 2.542
+(atches de\214ned by the compspec, attempt directory)-5.042 F
+(name completion and add an)224 583.2 Q 2.5(ym)-.15 G
+(atches to the results of the other actions.)-2.5 E F2<ad41>144 595.2 Q
+F0(action)2.5 E F1(The)184 607.2 Q F0(action)2.5 E F1
+(may be one of the follo)2.5 E
+(wing to generate a list of possible completions:)-.25 E F2(alias)184
+619.2 Q F1(Alias names.)224 619.2 Q(May also be speci\214ed as)5 E F2
+<ad61>2.5 E F1(.)A F2(arrayv)184 631.2 Q(ar)-.1 E F1(Array v)224 643.2 Q
+(ariable names.)-.25 E F2(binding)184 655.2 Q(Readline)224 655.2 Q F1
+-.1(ke)2.5 G 2.5(yb)-.05 G(inding names.)-2.5 E F2 -.2(bu)184 667.2 S
+(iltin).2 E F1(Names of shell b)224 667.2 Q(uiltin commands.)-.2 E
+(May also be speci\214ed as)5 E F2<ad62>2.5 E F1(.)A F2(command)184
+679.2 Q F1(Command names.)224 691.2 Q(May also be speci\214ed as)5 E F2
+<ad63>2.5 E F1(.)A F2(dir)184 703.2 Q(ectory)-.18 E F1(Directory names.)
+224 715.2 Q(May also be speci\214ed as)5 E F2<ad64>2.5 E F1(.)A
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(69)185.955 E 0 Cg EP
+%%Page: 70 70
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(disabled)184 84 Q F1
+(Names of disabled shell b)224 96 Q(uiltins.)-.2 E F2(enabled)184 108 Q
+F1(Names of enabled shell b)224 108 Q(uiltins.)-.2 E F2(export)184 120 Q
+F1(Names of e)224 120 Q(xported shell v)-.15 E 2.5(ariables. May)-.25 F
+(also be speci\214ed as)2.5 E F2<ad65>2.5 E F1(.)A F2(\214le)184 132 Q
+F1 .092(File and directory names, similar to)224 132 R F2 -.18(re)2.592
+G(adline).18 E F1 1.192 -.55('s \214)D .092(lename completion.).55 F
+.092(May also)5.092 F(be speci\214ed as)224 144 Q F2<ad66>2.5 E F1(.)A
+F2(function)184 156 Q F1(Names of shell functions.)224 168 Q F2(gr)184
+180 Q(oup)-.18 E F1(Group names.)224 180 Q(May also be speci\214ed as)5
+E F2<ad67>2.5 E F1(.)A F2(helptopic)184 192 Q F1
+(Help topics as accepted by the)224 204 Q F2(help)2.5 E F1 -.2(bu)2.5 G
+(iltin.).2 E F2(hostname)184 216 Q F1(Hostnames, as tak)224 228 Q
+(en from the \214le speci\214ed by the)-.1 E/F3 9/Times-Bold@0 SF
+(HOSTFILE)2.5 E F1(shell v)2.25 E(ariable.)-.25 E F2(job)184 240 Q F1
+(Job names, if job control is acti)224 240 Q -.15(ve)-.25 G 5(.M).15 G
+(ay also be speci\214ed as)-5 E F2<ad6a>2.5 E F1(.)A F2 -.1(ke)184 252 S
+(yw).1 E(ord)-.1 E F1(Shell reserv)224 264 Q(ed w)-.15 E 2.5(ords. May)
+-.1 F(also be speci\214ed as)2.5 E F2<ad6b>2.5 E F1(.)A F2(running)184
+276 Q F1(Names of running jobs, if job control is acti)224 276 Q -.15
+(ve)-.25 G(.).15 E F2(ser)184 288 Q(vice)-.1 E F1(Service names.)224 288
+Q(May also be speci\214ed as)5 E F2<ad73>2.5 E F1(.)A F2(setopt)184 300
+Q F1 -1.11(Va)224 300 S(lid ar)1.11 E(guments for the)-.18 E F2<ad6f>2.5
+E F1(option to the)2.5 E F2(set)2.5 E F1 -.2(bu)2.5 G(iltin.).2 E F2
+(shopt)184 312 Q F1(Shell option names as accepted by the)224 312 Q F2
+(shopt)2.5 E F1 -.2(bu)2.5 G(iltin.).2 E F2(signal)184 324 Q F1
+(Signal names.)224 324 Q F2(stopped)184 336 Q F1
+(Names of stopped jobs, if job control is acti)224 336 Q -.15(ve)-.25 G
+(.).15 E F2(user)184 348 Q F1(User names.)224 348 Q
+(May also be speci\214ed as)5 E F2<ad75>2.5 E F1(.)A F2 -.1(va)184 360 S
+(riable).1 E F1(Names of all shell v)224 360 Q 2.5(ariables. May)-.25 F
+(also be speci\214ed as)2.5 E F2<ad76>2.5 E F1(.)A F2<ad43>144 372 Q F0
+(command)2.5 E(command)184 384 Q F1 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 2.5
+(completions. Ar)184 396 R(guments are passed as with the)-.18 E F2
+<ad46>2.5 E F1(option.)2.5 E F2<ad46>144 408 Q F0(function)2.5 E F1 .114
+(The shell function)184 420 R F0(function)2.614 E F1 .114(is e)2.614 F
+-.15(xe)-.15 G .114(cuted in the current shell en).15 F 2.614
+(vironment. When)-.4 F .113(the func-)2.613 F .816(tion is e)184 432 R
+-.15(xe)-.15 G .816(cuted, the \214rst ar).15 F .816(gument \()-.18 F F2
+($1)A F1 3.316(\)i)C 3.316(st)-3.316 G .817
+(he name of the command whose ar)-3.316 F(guments)-.18 E 1.407
+(are being completed, the second ar)184 444 R 1.407(gument \()-.18 F F2
+($2)A F1 3.907(\)i)C 3.907(st)-3.907 G 1.407(he w)-3.907 F 1.407
+(ord being completed, and the)-.1 F .103(third ar)184 456 R .103
+(gument \()-.18 F F2($3)A F1 2.603(\)i)C 2.603(st)-2.603 G .103(he w)
+-2.603 F .104(ord preceding the w)-.1 F .104
+(ord being completed on the current com-)-.1 F 2.135(mand line.)184 468
+R(When)7.135 E F0(function)4.635 E F1 2.134
+(\214nishes, programmable completion retrie)4.635 F -.15(ve)-.25 G 4.634
+(st).15 G 2.134(he possible)-4.634 F(completions from the v)184 480 Q
+(alue of the)-.25 E F3(COMPREPL)2.5 E(Y)-.828 E F1(array v)2.25 E
+(ariable.)-.25 E F2<ad47>144 492 Q F0(globpat)2.5 E F1
+(Expand the pathname e)184 504 Q(xpansion pattern)-.15 E F0(globpat)2.5
+E F1(to generate the possible completions.)2.5 E F2<ad50>144 516 Q F0
+(pr)2.5 E(e\214x)-.37 E F1(Add)184 528 Q F0(pr)2.597 E(e\214x)-.37 E F1
+.098(to the be)2.597 F .098
+(ginning of each possible completion after all other options ha)-.15 F
+.398 -.15(ve b)-.2 H(een).15 E(applied.)184 540 Q F2<ad53>144 552 Q F0
+(suf)2.5 E<8c78>-.18 E F1(Append)184 552 Q F0(suf)2.5 E<8c78>-.18 E F1
+(to each possible completion after all other options ha)2.5 E .3 -.15
+(ve b)-.2 H(een applied.).15 E F2<ad57>144 564 Q F0(wor)2.5 E(dlist)-.37
+E F1 .834(Split the)184 576 R F0(wor)3.334 E(dlist)-.37 E F1 .833
+(using the characters in the)3.334 F F3(IFS)3.333 E F1 .833(special v)
+3.083 F .833(ariable as delimiters, and e)-.25 F(x-)-.15 E .017
+(pand each resulting w)184 588 R 2.518(ord. Shell)-.1 F .018
+(quoting is honored within)2.518 F F0(wor)2.518 E(dlist)-.37 E F1 2.518
+(,i)C 2.518(no)-2.518 G .018(rder to pro)-2.518 F .018(vide a)-.15 F
+1.158(mechanism for the w)184 600 R 1.158
+(ords to contain shell metacharacters or characters in the v)-.1 F 1.157
+(alue of)-.25 F F3(IFS)184 612 Q/F4 9/Times-Roman@0 SF(.)A F1 .04(The p\
+ossible completions are the members of the resultant list which match a\
+ pre\214x)4.54 F(of the w)184 624 Q(ord being completed.)-.1 E F2<ad58>
+144 636 Q F0(\214lterpat)2.5 E(\214lterpat)184 648 Q F1 .456
+(is a pattern as used for pathname e)2.956 F 2.956(xpansion. It)-.15 F
+.455(is applied to the list of possible)2.956 F 1.596
+(completions generated by the preceding options and ar)184 660 R 1.596
+(guments, and each completion)-.18 F(matching)184 672 Q F0(\214lterpat)
+3.205 E F1 .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(!)3.204 E F1
+(in)3.204 E F0(\214lterpat)3.204 E F1(ne)3.204 E -.05(ga)-.15 G .704
+(tes the pattern;).05 F(in this case, an)184 684 Q 2.5(yc)-.15 G
+(ompletion not matching)-2.5 E F0(\214lterpat)2.5 E F1(is remo)2.5 E
+-.15(ve)-.15 G(d.).15 E .46(The return v)144 700.8 R .46
+(alue is true unless an in)-.25 F -.25(va)-.4 G .461
+(lid option is supplied, an option other than).25 F F2<ad70>2.961 E F1
+(,)A F2<ad72>2.961 E F1(,)A F2<ad44>2.961 E F1(,)A F2<ad45>2.961 E F1(,)
+A(or)144 712.8 Q F2<ad49>2.986 E F1 .486(is supplied without a)2.986 F
+F0(name)2.986 E F1(ar)2.986 E .486(gument, an attempt is made to remo)
+-.18 F .785 -.15(ve a c)-.15 H .485(ompletion speci\214ca-).15 F 2.896
+(tion for a)144 724.8 R F0(name)5.396 E F1 2.896
+(for which no speci\214cation e)5.396 F 2.896
+(xists, or an error occurs adding a completion)-.15 F(GNU Bash 5.3)72
+768 Q(2024 December 12)136.795 E(70)185.955 E 0 Cg EP
+%%Page: 71 71
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(speci\214cation.)144 84 Q/F2 10/Times-Bold@0 SF
+(compopt)108 100.8 Q F1([)2.5 E F2<ad6f>A F0(option)2.5 E F1 2.5(][)C F2
+(\255DEI)-2.5 E F1 2.5(][)C F2(+o)-2.5 E F0(option)2.5 E F1 2.5(][)C F0
+(name)-2.5 E F1(])A .447(Modify completion options for each)144 112.8 R
+F0(name)2.947 E F1 .447(according to the)2.947 F F0(option)2.947 E F1
+.447(s, or for the currently-e)B -.15(xe)-.15 G(cuting).15 E .926
+(completion if no)144 124.8 R F0(name)3.426 E F1 3.426(sa)C .926
+(re supplied.)-3.426 F .926(If no)5.926 F F0(option)3.426 E F1 3.427(sa)
+C .927(re supplied, display the completion options)-3.427 F 1.314
+(for each)144 136.8 R F0(name)3.814 E F1 1.314
+(or the current completion.)3.814 F 1.314(The possible v)6.314 F 1.314
+(alues of)-.25 F F0(option)3.814 E F1 1.313(are those v)3.814 F 1.313
+(alid for the)-.25 F F2(complete)144 148.8 Q F1 -.2(bu)2.5 G
+(iltin described abo).2 E -.15(ve)-.15 G(.).15 E(The)144 165.6 Q F2
+<ad44>3.007 E F1 .507(option indicates that other supplied options shou\
+ld apply to the \231def)3.007 F .508(ault\232 command com-)-.1 F 1.413
+(pletion; the)144 177.6 R F2<ad45>3.913 E F1 1.412(option indicates tha\
+t other supplied options should apply to \231empty\232 command)3.913 F
+.378(completion; and the)144 189.6 R F2<ad49>2.878 E F1 .379(option ind\
+icates that other supplied options should apply to completion on)2.878 F
+(the initial w)144 201.6 Q(ord on the line.)-.1 E
+(These are determined in the same w)5 E(ay as the)-.1 E F2(complete)2.5
+E F1 -.2(bu)2.5 G(iltin.).2 E 1.216
+(If multiple options are supplied, the)144 218.4 R F2<ad44>3.715 E F1
+1.215(option tak)3.715 F 1.215(es precedence o)-.1 F -.15(ve)-.15 G(r)
+.15 E F2<ad45>3.715 E F1 3.715(,a)C 1.215(nd both tak)-3.715 F 3.715(ep)
+-.1 G(rece-)-3.715 E(dence o)144 230.4 Q -.15(ve)-.15 G(r).15 E F2<ad49>
+2.5 E F1(.)A .431(The return v)144 247.2 R .431
+(alue is true unless an in)-.25 F -.25(va)-.4 G .431
+(lid option is supplied, an attempt is made to modify the op-).25 F
+(tions for a)144 259.2 Q F0(name)2.5 E F1
+(for which no completion speci\214cation e)2.5 E
+(xists, or an output error occurs.)-.15 E F2(continue)108 276 Q F1([)2.5
+E F0(n)A F1(])A F2(continue)144 288 Q F1 .148(resumes the ne)2.648 F
+.148(xt iteration of the enclosing)-.15 F F2 -.25(fo)2.648 G(r).25 E F1
+(,)A F2(while)2.648 E F1(,)A F2(until)2.648 E F1 2.648(,o)C(r)-2.648 E
+F2(select)2.647 E F1 2.647(loop. If)2.647 F F0(n)3.007 E F1 .147
+(is speci-)2.887 F(\214ed,)144 300 Q F2(bash)3.092 E F1 .592
+(resumes the)3.092 F F0(n)3.092 E F1 .592(th enclosing loop.)B F0(n)
+5.952 E F1 .592(must be)3.332 F/F3 10/Symbol SF<b3>3.092 E F1 3.093
+(1. If)3.093 F F0(n)3.453 E F1 .593(is greater than the number of en-)
+3.333 F .41(closing loops, the shell resumes the last enclosing loop \(\
+the \231top-le)144 312 R -.15(ve)-.25 G .409(l\232 loop\).).15 F .409
+(The return v)5.409 F .409(alue is)-.25 F 2.5(0u)144 324 S(nless)-2.5 E
+F0(n)2.5 E F1(is not greater than or equal to 1.)2.5 E F2(declar)108
+340.8 Q(e)-.18 E F1([)2.5 E F2(\255aAfFgiIlnrtux)A F1 2.5(][)C F2<ad70>
+-2.5 E F1 2.5(][)C F0(name)-2.5 E F1([=)A F0(value)A F1 2.5(].)C 1.666
+(..)-.834 G(])-1.666 E F2(typeset)108 352.8 Q F1([)2.5 E F2
+(\255aAfFgiIlnrtux)A F1 2.5(][)C F2<ad70>-2.5 E F1 2.5(][)C F0(name)-2.5
+E F1([=)A F0(value)A F1 2.5(].)C 1.666(..)-.834 G(])-1.666 E 1.264
+(Declare v)144 364.8 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 F0(name)
+3.765 E F1 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 376.8
+S .572(riables or functions.).25 F(The)5.572 E F2<ad70>3.072 E F1 .571
+(option will display the attrib)3.072 F .571(utes and v)-.2 F .571
+(alues of each)-.25 F F0(name)3.431 E F1 5.571(.W).18 G(hen)-5.571 E F2
+<ad70>144 388.8 Q F1(is used with)2.5 E F0(name)2.5 E F1(ar)2.5 E
+(guments, additional options, other than)-.18 E F2<ad66>2.5 E F1(and)2.5
+E F2<ad46>2.5 E F1 2.5(,a)C(re ignored.)-2.5 E(When)144 405.6 Q F2<ad70>
+2.761 E F1 .261(is supplied without)2.761 F F0(name)2.761 E F1(ar)2.761
+E(guments,)-.18 E F2(declar)2.761 E(e)-.18 E F1 .261
+(will display the attrib)2.761 F .262(utes and v)-.2 F .262
+(alues of all)-.25 F -.25(va)144 417.6 S .28(riables ha).25 F .28
+(ving the attrib)-.2 F .279(utes speci\214ed by the additional options.)
+-.2 F .279(If no other options are supplied)5.279 F(with)144 429.6 Q F2
+<ad70>2.515 E F1(,)A F2(declar)2.515 E(e)-.18 E F1 .015
+(will display the attrib)2.515 F .015(utes and v)-.2 F .015
+(alues of all shell v)-.25 F 2.515(ariables. The)-.25 F F2<ad66>2.515 E
+F1 .015(option restricts)2.515 F(the display to shell functions.)144
+441.6 Q(The)144 458.4 Q F2<ad46>3.489 E F1 .989(option inhibits the dis\
+play of function de\214nitions; only the function name and attrib)3.489
+F(utes)-.2 E 1.31(are printed.)144 470.4 R 1.31(If the)6.31 F F2(extdeb)
+3.81 E(ug)-.2 E F1 1.31(shell option is enabled using)3.81 F F2(shopt)
+3.81 E F1 3.81(,t)C 1.31(he source \214le name and line)-3.81 F
+(number where each)144 482.4 Q F0(name)2.5 E F1
+(is de\214ned are displayed as well.)2.5 E(The)5 E F2<ad46>2.5 E F1
+(option implies)2.5 E F2<ad66>2.5 E F1(.)A(The)144 499.2 Q F2<ad67>2.735
+E F1 .235(option forces v)2.735 F .235
+(ariables to be created or modi\214ed at the global scope, e)-.25 F -.15
+(ve)-.25 G 2.734(nw).15 G(hen)-2.734 E F2(declar)2.734 E(e)-.18 E F1(is)
+2.734 E -.15(exe)144 511.2 S(cuted in a shell function.).15 E
+(It is ignored when)5 E F2(declar)2.5 E(e)-.18 E F1(is not e)2.5 E -.15
+(xe)-.15 G(cuted in a shell function.).15 E(The)144 528 Q F2<ad49>3.998
+E F1 1.498(option causes local v)3.998 F 1.499
+(ariables to inherit the attrib)-.25 F 1.499(utes \(e)-.2 F 1.499
+(xcept the)-.15 F F0(namer)3.999 E(ef)-.37 E F1(attrib)3.999 E 1.499
+(ute\) and)-.2 F -.25(va)144 540 S .658(lue of an).25 F 3.158(ye)-.15 G
+.658(xisting v)-3.308 F .658(ariable with the same)-.25 F F0(name)3.158
+E F1 .658(at a surrounding scope.)3.158 F .657(If there is no e)5.657 F
+(xisting)-.15 E -.25(va)144 552 S(riable, the local v).25 E
+(ariable is initially unset.)-.25 E .698(The follo)144 568.8 R .699
+(wing options can be used to restrict output to v)-.25 F .699
+(ariables with the speci\214ed attrib)-.25 F .699(ute or to)-.2 F(gi)144
+580.8 Q .3 -.15(ve v)-.25 H(ariables attrib)-.1 E(utes:)-.2 E F2<ad61>
+144 592.8 Q F1(Each)180 592.8 Q F0(name)2.5 E F1(is an inde)2.5 E -.15
+(xe)-.15 G 2.5(da).15 G(rray v)-2.5 E(ariable \(see)-.25 E F2(Arrays)2.5
+E F1(abo)2.5 E -.15(ve)-.15 G(\).).15 E F2<ad41>144 604.8 Q F1(Each)180
+604.8 Q F0(name)2.5 E F1(is an associati)2.5 E .3 -.15(ve a)-.25 H
+(rray v).15 E(ariable \(see)-.25 E F2(Arrays)2.5 E F1(abo)2.5 E -.15(ve)
+-.15 G(\).).15 E F2<ad66>144 616.8 Q F1(Each)180 616.8 Q F0(name)2.5 E
+F1(refers to a shell function.)2.5 E F2<ad69>144 628.8 Q F1 .558(The v)
+180 628.8 R .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 640.8 Q F1(abo)2.25 E -.15(ve)-.15 G 2.5(\)i).15 G 2.5(sp)-2.5 G
+(erformed when the v)-2.5 E(ariable is assigned a v)-.25 E(alue.)-.25 E
+F2<ad6c>144 652.8 Q F1 .909(When the v)180 652.8 R .909
+(ariable is assigned a v)-.25 F .909(alue, all upper)-.25 F .909
+(-case characters are con)-.2 F -.15(ve)-.4 G .91(rted to lo).15 F(wer)
+-.25 E(-)-.2 E 2.5(case. The)180 664.8 R(upper)2.5 E(-case attrib)-.2 E
+(ute is disabled.)-.2 E F2<ad6e>144 676.8 Q F1(Gi)180 676.8 Q 1.62 -.15
+(ve e)-.25 H(ach).15 E F0(name)3.82 E F1(the)3.82 E F0(namer)3.819 E(ef)
+-.37 E F1(attrib)3.819 E 1.319
+(ute, making it a name reference to another v)-.2 F(ariable.)-.25 E .477
+(That other v)180 688.8 R .478(ariable is de\214ned by the v)-.25 F .478
+(alue of)-.25 F F0(name)2.978 E F1 5.478(.A)C .478
+(ll references, assignments, and at-)-5.478 F(trib)180 700.8 Q .782
+(ute modi\214cations to)-.2 F F0(name)3.282 E F1 3.282(,e)C .782
+(xcept those using or changing the)-3.432 F F2<ad6e>3.281 E F1(attrib)
+3.281 E .781(ute itself, are)-.2 F .808(performed on the v)180 712.8 R
+.808(ariable referenced by)-.25 F F0(name)3.308 E F1 1.908 -.55('s v)D
+3.308(alue. The).3 F .809(nameref attrib)3.309 F .809(ute cannot be)-.2
+F(applied to array v)180 724.8 Q(ariables.)-.25 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(71)185.955 E 0 Cg EP
+%%Page: 72 72
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF<ad72>144 84 Q F1(Mak)180 84 Q
+(e)-.1 E F0(name)3.655 E F1 3.655(sr)C(eadonly)-3.655 E 6.154(.T)-.65 G
+1.154(hese names cannot then be assigned v)-6.154 F 1.154
+(alues by subsequent as-)-.25 F(signment statements or unset.)180 96 Q
+F2<ad74>144 108 Q F1(Gi)180 108 Q .729 -.15(ve e)-.25 H(ach).15 E F0
+(name)2.929 E F1(the)2.929 E F0(tr)2.929 E(ace)-.15 E F1(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 F1(and)2.93 E F2(RETURN)2.93 E F1
+(traps from the calling shell.)180 120 Q(The trace attrib)5 E
+(ute has no special meaning for v)-.2 E(ariables.)-.25 E F2<ad75>144 132
+Q F1 .91(When the v)180 132 R .909(ariable is assigned a v)-.25 F .909
+(alue, all lo)-.25 F(wer)-.25 E .909(-case characters are con)-.2 F -.15
+(ve)-.4 G .909(rted to upper).15 F(-)-.2 E 2.5(case. The)180 144 R(lo)
+2.5 E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F2<ad78>144
+156 Q F1(Mark each)180 156 Q F0(name)2.5 E F1(for e)2.5 E
+(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .657
+(Using \231+\232 instead of \231\255\232 turns of)144 172.8 R 3.157(ft)
+-.25 G .657(he speci\214ed attrib)-3.157 F .657(ute instead, with the e)
+-.2 F .657(xceptions that)-.15 F F2(+a)3.157 E F1(and)3.157 E F2(+A)144
+184.8 Q F1(may not be used to destro)2.5 E 2.5(ya)-.1 G(rray v)-2.5 E
+(ariables and)-.25 E F2(+r)2.5 E F1(will not remo)2.5 E .3 -.15(ve t)
+-.15 H(he readonly attrib).15 E(ute.)-.2 E .415
+(When used in a function,)144 201.6 R F2(declar)2.915 E(e)-.18 E F1(and)
+2.915 E F2(typeset)2.915 E F1(mak)2.915 E 2.915(ee)-.1 G(ach)-2.915 E F0
+(name)2.915 E F1 .415(local, as with the)2.915 F F2(local)2.915 E F1
+(command,)2.915 E .703(unless the)144 213.6 R F2<ad67>3.203 E F1 .703
+(option is supplied.)3.203 F .703(If a v)5.703 F .703
+(ariable name is follo)-.25 F .703(wed by =)-.25 F F0(value)A F1 3.204
+(,t)C .704(he v)-3.204 F .704(alue of the v)-.25 F(ari-)-.25 E .879
+(able is set to)144 225.6 R F0(value)3.379 E F1 5.879(.W)C .879
+(hen using)-5.879 F F2<ad61>3.379 E F1(or)3.379 E F2<ad41>3.379 E F1
+.879(and the compound assignment syntax to create array)3.379 F -.25(va)
+144 237.6 S(riables, additional attrib).25 E(utes do not tak)-.2 E 2.5
+(ee)-.1 G -.25(ff)-2.5 G(ect until subsequent assignments.).25 E .432
+(The return v)144 254.4 R .433(alue is 0 unless an in)-.25 F -.25(va)-.4
+G .433
+(lid option is encountered, an attempt is made to de\214ne a func-).25 F
+.278(tion using \231\255f foo=bar\232.)144 266.4 R .278
+(an attempt is made to assign a v)5.278 F .278(alue to a readonly v)-.25
+F .277(ariable, an attempt is)-.25 F .974(made to assign a v)144 278.4 R
+.974(alue to an array v)-.25 F .974
+(ariable without using the compound assignment syntax \(see)-.25 F F2
+(Arrays)144 290.4 Q F1(abo)2.86 E -.15(ve)-.15 G .36(\), one of the).15
+F F0(names)2.86 E F1 .36(is not a v)2.86 F .36(alid shell v)-.25 F .36
+(ariable name, an attempt is made to turn of)-.25 F(f)-.25 E .056
+(readonly status for a readonly v)144 302.4 R .057
+(ariable, an attempt is made to turn of)-.25 F 2.557(fa)-.25 G .057
+(rray status for an array v)-2.557 F(ari-)-.25 E
+(able, or an attempt is made to display a non-e)144 314.4 Q
+(xistent function with)-.15 E F2<ad66>2.5 E F1(.)A F2
+(dirs [\255clpv] [+)108 331.2 Q F0(n)A F2 2.5(][)C<ad>-2.5 E F0(n)A F2
+(])A F1 -.4(Wi)144 343.2 S .607
+(thout options, display the list of currently remembered directories.).4
+F .606(The def)5.606 F .606(ault display is on a)-.1 F 1.238
+(single line with directory names separated by spaces.)144 355.2 R 1.238
+(Directories are added to the list with the)6.238 F F2(pushd)144 367.2 Q
+F1 .928(command; the)3.428 F F2(popd)3.428 E F1 .928(command remo)3.428
+F -.15(ve)-.15 G 3.428(se).15 G .928(ntries from the list.)-3.428 F .928
+(The current directory is al-)5.928 F -.1(wa)144 379.2 S
+(ys the \214rst directory in the stack.).1 E(Options, if supplied, ha)
+144 396 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F2
+<ad63>144 408 Q F1
+(Clears the directory stack by deleting all of the entries.)180 408 Q F2
+<ad6c>144 420 Q F1 .881
+(Produces a listing using full pathnames; the def)180 420 R .882
+(ault listing format uses a tilde to denote)-.1 F(the home directory)180
+432 Q(.)-.65 E F2<ad70>144 444 Q F1
+(Print the directory stack with one entry per line.)180 444 Q F2<ad76>
+144 456 Q F1 .273(Print the directory stack with one entry per line, pr\
+e\214xing each entry with its inde)180 456 R 2.772(xi)-.15 G 2.772(nt)
+-2.772 G(he)-2.772 E(stack.)180 468 Q F2(+)144 480 Q F0(n)A F1 1.564
+(Displays the)180 480 R F0(n)4.064 E F1 1.565
+(th entry counting from the left of the list sho)B 1.565(wn by)-.25 F F2
+(dirs)4.065 E F1 1.565(when in)4.065 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E
+(without options, starting with zero.)180 492 Q F2<ad>144 504 Q F0(n)A
+F1 1.194(Displays the)180 504 R F0(n)3.694 E F1 1.194
+(th entry counting from the right of the list sho)B 1.194(wn by)-.25 F
+F2(dirs)3.694 E F1 1.194(when in)3.694 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E
+(without options, starting with zero.)180 516 Q .257(The return v)144
+532.8 R .258(alue is 0 unless an in)-.25 F -.25(va)-.4 G .258
+(lid option is supplied or).25 F F0(n)2.758 E F1(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 544.8 Q F2(diso)108 561.6 Q(wn)-.1 E F1([)2.5 E F2
+(\255ar)A F1 2.5(][)C F2<ad68>-2.5 E F1 2.5(][)C F0(id)-2.5 E F1 1.666
+(...)2.5 G(])-1.666 E -.4(Wi)144 573.6 S .343(thout options, remo).4 F
+.643 -.15(ve e)-.15 H(ach).15 E F0(id)2.853 E F1 .342
+(from the table of acti)3.613 F .642 -.15(ve j)-.25 H 2.842(obs. Each)
+.15 F F0(id)2.842 E F1 .342(may be a job speci\214cation)2.842 F F0
+(jobspec)144 585.6 Q F1(or a process ID)2.5 E F0(pid)2.5 E F1 2.5(;i)C
+(f)-2.5 E F0(id)2.5 E F1(is a)2.5 E F0(pid)2.5 E F1(,)A F2(diso)2.5 E
+(wn)-.1 E F1(uses the job containing)2.5 E F0(pid)2.5 E F1(as)2.5 E F0
+(jobspec)2.5 E F1(.)A .682(If the)144 602.4 R F2<ad68>3.183 E F1 .683
+(option is supplied,)3.183 F F2(diso)3.183 E(wn)-.1 E F1 .683
+(does not remo)3.183 F .983 -.15(ve t)-.15 H .683
+(he jobs corresponding to each).15 F F0(id)3.193 E F1 .683(from the)
+3.953 F .184(jobs table, b)144 614.4 R .184
+(ut rather marks them so the shell does not send)-.2 F/F3 9/Times-Bold@0
+SF(SIGHUP)2.684 E F1 .184(to the job if the shell recei)2.434 F -.15(ve)
+-.25 G(s).15 E(a)144 626.4 Q F3(SIGHUP)2.5 E/F4 9/Times-Roman@0 SF(.)A
+F1 .57(If no)144 643.2 R F0(id)3.08 E F1 .57(is supplied, the)3.84 F F2
+<ad61>3.07 E F1 .57(option means to remo)3.07 F .871 -.15(ve o)-.15 H
+3.071(rm).15 G .571(ark all jobs; the)-3.071 F F2<ad72>3.071 E F1 .571
+(option without an)3.071 F F0(id)3.081 E F1(ar)144 655.2 Q .659
+(gument remo)-.18 F -.15(ve)-.15 G 3.159(so).15 G 3.159(rm)-3.159 G .659
+(arks running jobs.)-3.159 F .658(If no)5.659 F F0(id)3.168 E F1 .658
+(is supplied, and neither the)3.928 F F2<ad61>3.158 E F1 .658(nor the)
+3.158 F F2<ad72>3.158 E F1(op-)3.158 E(tion is supplied,)144 667.2 Q F2
+(diso)2.5 E(wn)-.1 E F1(remo)2.5 E -.15(ve)-.15 G 2.5(so).15 G 2.5(rm)
+-2.5 G(arks the current job)-2.5 E(.)-.4 E(The return v)144 684 Q
+(alue is 0 unless an)-.25 E F0(id)2.51 E F1(does not specify a v)3.27 E
+(alid job)-.25 E(.)-.4 E F2(echo)108 700.8 Q F1([)2.5 E F2(\255neE)A F1
+2.5(][)C F0(ar)-2.5 E(g)-.37 E F1 1.666(...)2.5 G(])-1.666 E .424
+(Output the)144 712.8 R F0(ar)2.924 E(g)-.37 E F1 .424
+(s, separated by spaces, follo)B .424(wed by a ne)-.25 F 2.924
+(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F
+(error occurs.)144 724.8 Q(If)5 E F2<ad6e>2.5 E F1
+(is speci\214ed, the trailing ne)2.5 E(wline is not printed.)-.25 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(72)185.955 E 0 Cg EP
+%%Page: 73 73
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .48(If the)144 84 R/F2 10/Times-Bold@0 SF<ad65>2.98
+E F1 .48(option is gi)2.98 F -.15(ve)-.25 G(n,).15 E F2(echo)2.98 E F1
+.48(interprets the follo)2.98 F .48(wing backslash-escaped characters.)
+-.25 F(The)5.48 E F2<ad45>2.98 E F1(op-)2.98 E .469
+(tion disables interpretation of these escape characters, e)144 96 R
+-.15(ve)-.25 G 2.969(no).15 G 2.969(ns)-2.969 G .469(ystems where the)
+-2.969 F 2.97(ya)-.15 G .47(re interpreted)-2.97 F .41(by def)144 108 R
+2.91(ault. The)-.1 F F2(xpg_echo)2.91 E F1 .41
+(shell option determines whether or not)2.91 F F2(echo)2.91 E F1 .41
+(interprets an)2.91 F 2.91(yo)-.15 G .41(ptions and)-2.91 F -.15(ex)144
+120 S(pands these escape characters.).15 E F2(echo)5 E F1
+(does not interpret)2.5 E F2<adad>2.5 E F1(to mean the end of options.)
+2.5 E F2(echo)144 136.8 Q F1(interprets the follo)2.5 E
+(wing escape sequences:)-.25 E F2(\\a)144 148.8 Q F1(alert \(bell\))180
+148.8 Q F2(\\b)144 160.8 Q F1(backspace)180 160.8 Q F2(\\c)144 172.8 Q
+F1(suppress further output)180 172.8 Q F2(\\e)144 184.8 Q(\\E)144 196.8
+Q F1(an escape character)180 196.8 Q F2(\\f)144 208.8 Q F1(form feed)180
+208.8 Q F2(\\n)144 220.8 Q F1(ne)180 220.8 Q 2.5(wl)-.25 G(ine)-2.5 E F2
+(\\r)144 232.8 Q F1(carriage return)180 232.8 Q F2(\\t)144 244.8 Q F1
+(horizontal tab)180 244.8 Q F2(\\v)144 256.8 Q F1 -.15(ve)180 256.8 S
+(rtical tab).15 E F2(\\\\)144 268.8 Q F1(backslash)180 268.8 Q F2(\\0)
+144 280.8 Q F0(nnn)A F1(The eight-bit character whose v)180 280.8 Q
+(alue is the octal v)-.25 E(alue)-.25 E F0(nnn)2.5 E F1
+(\(zero to three octal digits\).)2.5 E F2(\\x)144 292.8 Q F0(HH)A F1
+(The eight-bit character whose v)180 292.8 Q(alue is the he)-.25 E
+(xadecimal v)-.15 E(alue)-.25 E F0(HH)2.5 E F1(\(one or tw)2.5 E 2.5(oh)
+-.1 G .3 -.15(ex d)-2.5 H(igits\).).15 E F2(\\u)144 304.8 Q F0(HHHH)A F1
+1.203(The Unicode \(ISO/IEC 10646\) character whose v)180 316.8 R 1.204
+(alue is the he)-.25 F 1.204(xadecimal v)-.15 F(alue)-.25 E F0(HHHH)
+3.704 E F1(\(one to four he)180 328.8 Q 2.5(xd)-.15 G(igits\).)-2.5 E F2
+(\\U)144 340.8 Q F0(HHHHHHHH)A F1 .245
+(The Unicode \(ISO/IEC 10646\) character whose v)180 352.8 R .244
+(alue is the he)-.25 F .244(xadecimal v)-.15 F(alue)-.25 E F0(HHHHH-)
+2.744 E(HHH)180 364.8 Q F1(\(one to eight he)2.5 E 2.5(xd)-.15 G
+(igits\).)-2.5 E F2(echo)144 381.6 Q F1(writes an)2.5 E 2.5(yu)-.15 G
+(nrecognized backslash-escaped characters unchanged.)-2.5 E F2(enable)
+108 398.4 Q F1([)2.5 E F2<ad61>A F1 2.5(][)C F2(\255dnps)-2.5 E F1 2.5
+(][)C F2<ad66>-2.5 E F0(\214lename)2.5 E F1 2.5(][)C F0(name)-2.5 E F1
+1.666(...)2.5 G(])-1.666 E 1.199(Enable and disable b)144 410.4 R 1.199
+(uiltin shell commands.)-.2 F 1.199(Disabling a b)6.199 F 1.199
+(uiltin allo)-.2 F 1.199(ws an e)-.25 F -.15(xe)-.15 G 1.2
+(cutable \214le which).15 F 1.737(has the same name as a shell b)144
+422.4 R 1.737(uiltin to be e)-.2 F -.15(xe)-.15 G 1.737
+(cuted without specifying a full pathname, e).15 F -.15(ve)-.25 G(n).15
+E(though the shell normally searches for b)144 434.4 Q
+(uiltins before \214les.)-.2 E(If)144 451.2 Q F2<ad6e>3.357 E F1 .857
+(is supplied, each)3.357 F F0(name)3.357 E F1 .857
+(is disabled; otherwise,)3.357 F F0(name)3.358 E F1 3.358(sa)C .858
+(re enabled.)-3.358 F -.15(Fo)5.858 G 3.358(re).15 G .858
+(xample, to use the)-3.508 F F2(test)144 463.2 Q F1(binary found usin g)
+2.5 E/F3 9/Times-Bold@0 SF -.666(PA)2.5 G(TH)-.189 E F1
+(instead of the shell b)2.25 E(uiltin v)-.2 E
+(ersion, run \231enable \255n test\232.)-.15 E 1.165(If no)144 480 R F0
+(name)3.665 E F1(ar)3.665 E 1.165(guments are supplied, or if the)-.18 F
+F2<ad70>3.665 E F1 1.165(option is supplied, print a list of shell b)
+3.665 F(uiltins.)-.2 E -.4(Wi)144 492 S 1.005(th no other option ar).4 F
+1.005(guments, the list consists of all enabled shell b)-.18 F 3.505
+(uiltins. If)-.2 F F2<ad6e>3.505 E F1 1.005(is supplied,)3.505 F .46
+(print only disabled b)144 504 R 2.96(uiltins. If)-.2 F F2<ad61>2.96 E
+F1 .46(is supplied, the list printed includes all b)2.96 F .46
+(uiltins, with an indica-)-.2 F .79
+(tion of whether or not each is enabled.)144 516 R(The)5.79 E F2<ad73>
+3.291 E F1 .791(option means to restrict the output to the POSIX)3.291 F
+F0(special)144 528 Q F1 -.2(bu)2.5 G(iltins.).2 E(The)144 544.8 Q F2
+<ad66>2.785 E F1 .285(option means to load the ne)2.785 F 2.785(wb)-.25
+G .285(uiltin command)-2.985 F F0(name)3.145 E F1 .285
+(from shared object)2.965 F F0(\214lename)4.695 E F1 2.785(,o).18 G
+2.785(ns)-2.785 G(ys-)-2.785 E .01(tems that support dynamic loading.)
+144 556.8 R(If)5.01 E F0(\214lename)2.51 E F1 .01
+(does not contain a slash,)2.51 F F2(Bash)2.51 E F1 .01(will use the v)
+2.51 F .01(alue of)-.25 F(the)144 568.8 Q F2 -.3(BA)4.457 G(SH_LO).3 E
+(AD)-.4 E(ABLES_P)-.35 E -.95(AT)-.74 G(H).95 E F1 -.25(va)4.457 G 1.956
+(riable as a colon-separated list of directories in which to).25 F .305
+(search for)144 580.8 R F0(\214lename)2.805 E F1 5.305(.T)C .305(he def)
+-5.305 F .305(ault for)-.1 F F2 -.3(BA)2.805 G(SH_LO).3 E(AD)-.4 E
+(ABLES_P)-.35 E -.95(AT)-.74 G(H).95 E F1 .305
+(is system-dependent, and may)2.805 F .054
+(include \231.\232 to force a search of the current directory)144 592.8
+R 5.054(.T)-.65 G(he)-5.054 E F2<ad64>2.554 E F1 .054
+(option will delete a b)2.554 F .054(uiltin pre)-.2 F(viously)-.25 E
+(loaded with)144 604.8 Q F2<ad66>2.5 E F1 5(.I)C(f)-5 E F0<ad73>2.5 E F1
+(is used with)2.5 E F0<ad66>2.5 E F1 2.5(,t)C(he ne)-2.5 E 2.5(wb)-.25 G
+(uiltin becomes a POSIX special b)-2.7 E(uiltin.)-.2 E .269
+(If no options are supplied and a)144 621.6 R F0(name)2.769 E F1 .269
+(is not a shell b)2.769 F(uiltin,)-.2 E F2(enable)2.769 E F1 .269
+(will attempt to load)2.769 F F0(name)2.769 E F1(from)2.769 E 2.5(as)144
+633.6 S(hared object named)-2.5 E F0(name)2.5 E F1 2.5(,a)C 2.5(si)-2.5
+G 2.5(ft)-2.5 G(he command were \231enable \255f)-2.5 E F0(name name)2.5
+E F1<9a2e>A .478(The return v)144 650.4 R .477(alue is 0 unless a)-.25 F
+F0(name)3.337 E F1 .477(is not a shell b)3.157 F .477
+(uiltin or there is an error loading a ne)-.2 F 2.977(wb)-.25 G(uiltin)
+-3.177 E(from a shared object.)144 662.4 Q F2 -2.3 -.15(ev a)108 679.2 T
+(l).15 E F1([)2.5 E F0(ar)A(g)-.37 E F1 1.666(...)2.5 G(])-1.666 E 1.347
+(Concatenate the)144 691.2 R F0(ar)3.847 E(g)-.37 E F1 3.847(st)C 1.348
+(ogether into a single command, separating them with spaces.)-3.847 F F2
+(Bash)6.348 E F1(then)3.848 E .177(reads and e)144 703.2 R -.15(xe)-.15
+G .176(cute this command, and returns its e).15 F .176
+(xit status as the return status of)-.15 F F2 -2.3 -.15(ev a)2.676 H(l)
+.15 E F1 5.176(.I)C 2.676(ft)-5.176 G .176(here are)-2.676 F(no)144
+715.2 Q F0(ar)2.83 E(gs)-.37 E F1 2.5(,o).27 G 2.5(ro)-2.5 G
+(nly null ar)-2.5 E(guments,)-.18 E F2 -2.3 -.15(ev a)2.5 H(l).15 E F1
+(returns 0.)2.5 E(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(73)
+185.955 E 0 Cg EP
+%%Page: 74 74
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(exec)108 84 Q F1([)2.5 E F2
+(\255cl)A F1 2.5(][)C F2<ad61>-2.5 E F0(name)2.5 E F1 2.5(][)C F0
+(command)-2.5 E F1([)2.5 E F0(ar)A(guments)-.37 E F1(]])A(If)144 96 Q F0
+(command)2.983 E F1 .283
+(is speci\214ed, it replaces the shell without creating a ne)3.553 F
+2.784(wp)-.25 G(rocess.)-2.784 E F0(command)5.284 E F1 .284(cannot be)
+2.784 F 2.878(as)144 108 S .378(hell b)-2.878 F .378
+(uiltin or function.)-.2 F(The)5.378 E F0(ar)3.208 E(guments)-.37 E F1
+.378(become the ar)3.148 F .377(guments to)-.18 F F0(command)2.877 E F1
+5.377(.I)C 2.877(ft)-5.377 G(he)-2.877 E F2<ad6c>2.877 E F1 .377
+(option is)2.877 F .078(supplied, the shell places a dash at the be)144
+120 R .078(ginning of the zeroth ar)-.15 F .078(gument passed to)-.18 F
+F0(command)2.779 E F1 5.079(.T).77 G(his)-5.079 E .139(is what)144 132 R
+F0(lo)2.729 E(gin)-.1 E F1 .139(\(1\) does.).24 F(The)5.139 E F2<ad63>
+2.639 E F1 .139(option causes)2.639 F F0(command)2.839 E F1 .139
+(to be e)3.409 F -.15(xe)-.15 G .138(cuted with an empty en).15 F
+(vironment.)-.4 E(If)144 144 Q F2<ad61>2.5 E F1
+(is supplied, the shell passes)2.5 E F0(name)2.86 E F1(as the zeroth ar)
+2.68 E(gument to the e)-.18 E -.15(xe)-.15 G(cuted command.).15 E(If)144
+160.8 Q F0(command)3.245 E F1 .545(cannot be e)3.815 F -.15(xe)-.15 G
+.546(cuted for some reason, a non-interacti).15 F .846 -.15(ve s)-.25 H
+.546(hell e).15 F .546(xits, unless the)-.15 F F2(execfail)3.046 E F1
+1.22(shell option is enabled.)144 172.8 R 1.22
+(In that case, it returns a non-zero status.)6.22 F 1.22(An interacti)
+6.22 F 1.52 -.15(ve s)-.25 H 1.22(hell returns a).15 F
+(non-zero status if the \214le cannot be e)144 184.8 Q -.15(xe)-.15 G
+2.5(cuted. A).15 F(subshell e)2.5 E(xits unconditionally if)-.15 E F2
+(exec)2.5 E F1 -.1(fa)2.5 G(ils.).1 E(If)144 201.6 Q F0(command)3.224 E
+F1 .524(is not speci\214ed, an)3.794 F 3.024(yr)-.15 G .524
+(edirections tak)-3.024 F 3.024(ee)-.1 G -.25(ff)-3.024 G .525
+(ect in the current shell, and the return status).25 F(is 0.)144 213.6 Q
+(If there is a redirection error)5 E 2.5(,t)-.4 G
+(he return status is 1.)-2.5 E F2(exit)108 230.4 Q F1([)2.5 E F0(n)A F1
+(])A .096(Cause the shell to e)144 230.4 R .096(xit with a status of)
+-.15 F F0(n)2.596 E F1 5.096(.I)C(f)-5.096 E F0(n)2.955 E F1 .095
+(is omitted, the e)2.835 F .095(xit status is that of the last command)
+-.15 F -.15(exe)144 242.4 S 2.5(cuted. An).15 F 2.5(yt)-.15 G(rap on)
+-2.5 E/F3 9/Times-Bold@0 SF(EXIT)2.5 E F1(is e)2.25 E -.15(xe)-.15 G
+(cuted before the shell terminates.).15 E F2(export)108 259.2 Q F1([)2.5
+E F2(\255fn)A F1 2.5(][).833 G F0(name)-2.5 E F1([=)A F0(value)A F1
+(]] .)A 1.666(..)1.666 G F2(export \255p)108 271.2 Q F1 .256
+(The supplied)144 283.2 R F0(names)3.117 E F1 .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.5
+(commands. If)144 295.2 R(the)2.5 E F2<ad66>2.5 E F1(option is gi)2.5 E
+-.15(ve)-.25 G(n, the).15 E F0(names)2.86 E F1(refer to functions.)2.77
+E(The)144 312 Q F2<ad6e>2.681 E F1 .181(option une)2.681 F .181
+(xports, or remo)-.15 F -.15(ve)-.15 G 2.681(st).15 G .181(he e)-2.681 F
+.181(xport attrib)-.15 F .181(ute, from each)-.2 F F0(name)2.68 E F1
+5.18(.I)C 2.68(fn)-5.18 G(o)-2.68 E F0(names)3.04 E F1 .18(are gi)2.95 F
+-.15(ve)-.25 G(n,).15 E .535(or if the)144 324 R F2<ad70>3.035 E F1 .536
+(option is supplied,)3.035 F F2(export)3.036 E F1 .536
+(prints a list of names of all e)3.036 F .536(xported v)-.15 F .536
+(ariables on the stan-)-.25 F(dard output.)144 336 Q F2(export)144 352.8
+Q F1(allo)2.94 E .44(ws the v)-.25 F .44(alue of a v)-.25 F .44
+(ariable to be set when it is e)-.25 F .44(xported or une)-.15 F .44
+(xported by follo)-.15 F .44(wing the)-.25 F -.25(va)144 364.8 S .151
+(riable name with =).25 F F0(value)A F1 5.152(.T)C .152(his sets the v)
+-5.152 F .152(alue of the v)-.25 F .152(ariable to)-.25 F F0(value)2.652
+E F1 .152(while modifying the e)2.652 F(xport)-.15 E(attrib)144 376.8 Q
+(ute.)-.2 E F2(export)6.361 E F1 1.361(returns an e)3.861 F 1.361
+(xit status of 0 unless an in)-.15 F -.25(va)-.4 G 1.36
+(lid option is encountered, one of the).25 F F0(names)144 388.8 Q F1
+(is not a v)2.5 E(alid shell v)-.25 E(ariable name, or)-.25 E F2<ad66>
+2.5 E F1(is supplied with a)2.5 E F0(name)2.86 E F1
+(that is not a function.)2.68 E F2(false)108 405.6 Q F1
+(Does nothing; returns a non-zero status.)144 405.6 Q F2(fc)108 422.4 Q
+F1([)2.5 E F2<ad65>A F0(ename)2.5 E F1 2.5(][)C F2(\255lnr)-2.5 E F1 2.5
+(][)C F0<8c72>-2.5 E(st)-.1 E F1 2.5(][)C F0(last)-2.5 E F1(])A F2
+(fc \255s)108 434.4 Q F1([)2.5 E F0(pat)A F1(=)A F0 -.37(re)C(p).37 E F1
+2.5(][)C F0(cmd)-2.5 E F1(])A .431
+(The \214rst form selects a range of commands from)144 446.4 R F0<8c72>
+4.842 E(st)-.1 E F1(to)3.612 E F0(last)3.022 E F1 .432
+(from the history list and displays or)3.612 F .142(edits and re-e)144
+458.4 R -.15(xe)-.15 G .142(cutes them.).15 F F0 -.45(Fi)5.141 G -.1(rs)
+.45 G(t).1 E F1(and)3.321 E F0(last)2.731 E F1 .141
+(may be speci\214ed as a string \(to locate the last command)3.321 F(be)
+144 470.4 Q .31(ginning with that string\) or as a number \(an inde)-.15
+F 2.811(xi)-.15 G .311(nto the history list, where a ne)-2.811 F -.05
+(ga)-.15 G(ti).05 E .611 -.15(ve n)-.25 H(umber).15 E(is used as an of)
+144 482.4 Q(fset from the current command number\).)-.25 E .747
+(When listing, a)144 499.2 R F0<8c72>3.247 E(st)-.1 E F1(or)3.247 E F0
+(last)3.247 E F1 .746(of 0 is equi)3.247 F -.25(va)-.25 G .746
+(lent to \2551 and \2550 is equi).25 F -.25(va)-.25 G .746
+(lent to the current command).25 F .778(\(usually the)144 511.2 R F2(fc)
+3.278 E F1 .779(command\); otherwise 0 is equi)3.279 F -.25(va)-.25 G
+.779(lent to \2551 and \2550 is in).25 F -.25(va)-.4 G 3.279(lid. If).25
+F F0(last)3.369 E F1 .779(is not speci-)3.959 F .513(\214ed, it is set \
+to the current command for listing \(so that \231fc \255l \25510\232 pr\
+ints the last 10 commands\))144 523.2 R .766(and to)144 535.2 R F0<8c72>
+5.176 E(st)-.1 E F1 3.266(otherwise. If)3.946 F F0<8c72>5.176 E(st)-.1 E
+F1 .766(is not speci\214ed, it is set to the pre)3.946 F .766
+(vious command for editing and)-.25 F(\25516 for listing.)144 547.2 Q
+.697(If the)144 564 R F2<ad6c>3.197 E F1 .697
+(option is supplied, the commands are listed on the standard output.)
+3.197 F(The)5.696 E F2<ad6e>3.196 E F1 .696(option sup-)3.196 F
+(presses the command numbers when listing.)144 576 Q(The)5 E F2<ad72>2.5
+E F1(option re)2.5 E -.15(ve)-.25 G(rses the order of the commands.).15
+E(Otherwise,)144 592.8 Q F2(fc)2.902 E F1(in)2.902 E -.2(vo)-.4 G -.1
+(ke).2 G 2.902(st).1 G .402(he editor named by)-2.902 F F0(ename)3.092 E
+F1 .402(on a \214le containing those commands.)3.082 F(If)5.402 E F0
+(ename)3.092 E F1 .542(is not supplied,)144 604.8 R F2(fc)3.042 E F1
+.542(uses the v)3.042 F .542(alue of the)-.25 F F3(FCEDIT)3.042 E F1
+-.25(va)2.792 G .542(riable, and the v).25 F .542(alue of)-.25 F F3
+(EDIT)3.042 E(OR)-.162 E F1(if)2.791 E F3(FCEDIT)3.041 E F1(is)2.791 E
+.212(not set.)144 616.8 R .212(If neither v)5.212 F .212
+(ariable is set,)-.25 F F2(fc)2.712 E F1(uses)2.712 E F0(vi.)4.378 E F1
+.212(When editing is complete,)4.378 F F2(fc)2.712 E F1 .213
+(reads the \214le containing)2.712 F
+(the edited commands and echoes and e)144 628.8 Q -.15(xe)-.15 G
+(cutes them.).15 E .712(In the second form,)144 645.6 R F2(fc)3.212 E F1
+(re-e)3.212 E -.15(xe)-.15 G(cutes).15 E F0(command)3.211 E F1 .711
+(after replacing each instance of)3.211 F F0(pat)3.211 E F1(with)3.211 E
+F0 -.37(re)3.211 G(p).37 E F1(.)A F0(Com-)5.711 E(mand)144 657.6 Q F1
+(is interpreted the same as)2.5 E F0<8c72>2.5 E(st)-.1 E F1(abo)2.5 E
+-.15(ve)-.15 G(.).15 E 2.826(Au)144 674.4 S .326
+(seful alias to use with)-2.826 F F2(fc)2.827 E F1 .327(is \231r="fc \
+\255s"\232, so that typing \231r cc\232 runs the last command be)2.827 F
+(ginning)-.15 E(with \231cc\232 and typing \231r\232 re-e)144 686.4 Q
+-.15(xe)-.15 G(cutes the last command.).15 E .44
+(If the \214rst form is used, the return v)144 703.2 R .439
+(alue is zero unless an in)-.25 F -.25(va)-.4 G .439
+(lid option is encountered or).25 F F0<8c72>4.849 E(st)-.1 E F1(or)3.619
+E F0(last)144.09 715.2 Q F1 .402(specify history lines out of range.)
+3.581 F .402(When editing and re-e)5.402 F -.15(xe)-.15 G .402
+(cuting a \214le of commands, the re-).15 F 2.421(turn v)144 727.2 R
+2.421(alue is the v)-.25 F 2.421(alue of the last command e)-.25 F -.15
+(xe)-.15 G 2.421(cuted or f).15 F 2.42
+(ailure if an error occurs with the)-.1 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(74)185.955 E 0 Cg EP
+%%Page: 75 75
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .884(temporary \214le.)144 84 R .884
+(If the second form is used, the return status is that of the re-e)5.884
+F -.15(xe)-.15 G .885(cuted command,).15 F(unless)144 96 Q F0(cmd)2.7 E
+F1(does not specify a v)3.27 E(alid history entry)-.25 E 2.5(,i)-.65 G
+2.5(nw)-2.5 G(hich case)-2.5 E/F2 10/Times-Bold@0 SF(fc)2.5 E F1
+(returns a non-zero status.)2.5 E F2(fg)108 112.8 Q F1([)2.5 E F0
+(jobspec)A F1(])A(Resume)144 124.8 Q F0(jobspec)4.639 E F1 .399
+(in the fore)3.209 F .399(ground, and mak)-.15 F 2.899(ei)-.1 G 2.899
+(tt)-2.899 G .399(he current job)-2.899 F 5.399(.I)-.4 G(f)-5.399 E F0
+(jobspec)4.639 E F1 .399(is not present,)3.209 F F2(fg)2.898 E F1(uses)
+2.898 E .247(the shell')144 136.8 R 2.747(sn)-.55 G .247(otion of the)
+-2.747 F F0(curr)2.747 E .247(ent job)-.37 F F1 5.247(.T)C .247
+(he return v)-5.247 F .247
+(alue is that of the command placed into the fore-)-.25 F .098
+(ground, or f)144 148.8 R .098
+(ailure if run when job control is disabled or)-.1 F 2.598(,w)-.4 G .098
+(hen run with job control enabled, if)-2.598 F F0(job-)4.337 E(spec)144
+160.8 Q F1(does not specify a v)2.81 E(alid job or)-.25 E F0(jobspec)
+4.24 E F1(speci\214es a job that w)2.81 E
+(as started without job control.)-.1 E F2(getopts)108 177.6 Q F0
+(optstring name)2.5 E F1([)2.5 E F0(ar)A(g)-.37 E F1 1.666(...)2.5 G(])
+-1.666 E F2(getopts)144 189.6 Q F1 .051(is used by shell scripts and fu\
+nctions to parse positional parameters and obtain options and)2.55 F
+1.13(their ar)144 201.6 R(guments.)-.18 E F0(optstring)6.36 E F1 1.129(\
+contains the option characters to be recognized; if a character is fol-)
+3.85 F(lo)144 213.6 Q .656(wed by a colon, the option is e)-.25 F .656
+(xpected to ha)-.15 F .957 -.15(ve a)-.2 H 3.157(na).15 G -.18(rg)-3.157
+G .657(ument, which should be separated from it).18 F(by white space.)
+144 225.6 Q(The colon and question mark characters may not be used as o\
+ption characters.)5 E .032(Each time it is in)144 242.4 R -.2(vo)-.4 G
+-.1(ke).2 G(d,).1 E F2(getopts)2.531 E F1 .031(places the ne)2.531 F
+.031(xt option in the shell v)-.15 F(ariable)-.25 E F0(name)2.891 E F1
+2.531(,i).18 G(nitializing)-2.531 E F0(name)2.891 E F1 .522
+(if it does not e)144 254.4 R .522(xist, and the inde)-.15 F 3.022(xo)
+-.15 G 3.022(ft)-3.022 G .522(he ne)-3.022 F .522(xt ar)-.15 F .522
+(gument to be processed into the v)-.18 F(ariable)-.25 E/F3 9
+/Times-Bold@0 SF(OPTIND)3.023 E/F4 9/Times-Roman@0 SF(.)A F3(OPTIND)144
+266.4 Q F1 .079
+(is initialized to 1 each time the shell or a shell script is in)2.33 F
+-.2(vo)-.4 G -.1(ke).2 G 2.579(d. When).1 F .079(an option requires)
+2.579 F(an ar)144 278.4 Q(gument,)-.18 E F2(getopts)2.5 E F1
+(places that ar)2.5 E(gument into the v)-.18 E(ariable)-.25 E F3(OPT)2.5
+E(ARG)-.81 E F4(.)A F1 .647(The shell does not reset)144 295.2 R F3
+(OPTIND)3.147 E F1 .647
+(automatically; it must be manually reset between multiple calls)2.897 F
+(to)144 307.2 Q F2(getopts)2.5 E F1(within the same shell in)2.5 E -.2
+(vo)-.4 G(cation to use a ne).2 E 2.5(ws)-.25 G(et of parameters.)-2.5 E
+.102(When it reaches the end of options,)144 324 R F2(getopts)2.602 E F1
+-.15(ex)2.602 G .102(its with a return v).15 F .101
+(alue greater than zero.)-.25 F F3(OPTIND)5.101 E F1(is)2.351 E
+(set to the inde)144 336 Q 2.5(xo)-.15 G 2.5(ft)-2.5 G
+(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F0(name)2.5 E F1
+(is set to ?.)2.5 E F2(getopts)144 352.8 Q F1 .485
+(normally parses the positional parameters, b)2.985 F .485
+(ut if more ar)-.2 F .485(guments are supplied as)-.18 F F0(ar)3.315 E
+(g)-.37 E F1 -.25(va)3.205 G(l-).25 E(ues,)144 364.8 Q F2(getopts)2.5 E
+F1(parses those instead.)2.5 E F2(getopts)144 381.6 Q F1 .833
+(can report errors in tw)3.333 F 3.333(ow)-.1 G 3.333(ays. If)-3.433 F
+.833(the \214rst character of)3.333 F F0(optstring)3.563 E F1 .833
+(is a colon,)3.553 F F2(getopts)3.333 E F1(uses)3.332 E F0(silent)144.34
+393.6 Q F1 .211(error reporting.)3.391 F .211(In normal operation,)5.211
+F F2(getopts)2.712 E F1 .212
+(prints diagnostic messages when it encounters)2.712 F(in)144 405.6 Q
+-.25(va)-.4 G .32(lid options or missing option ar).25 F 2.82
+(guments. If)-.18 F .32(the v)2.82 F(ariable)-.25 E F3(OPTERR)2.82 E F1
+.32(is set to 0,)2.57 F F2(getopts)2.819 E F1 .319(does not)2.819 F
+(display an)144 417.6 Q 2.5(ye)-.15 G(rror messages, e)-2.5 E -.15(ve)
+-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214rst character of)-2.5 E F0
+(optstring)2.73 E F1(is not a colon.)2.72 E(If)144 434.4 Q F2(getopts)
+2.672 E F1 .172(detects an in)2.672 F -.25(va)-.4 G .173
+(lid option, it places ? into).25 F F0(name)3.033 E F1 .173
+(and, if not silent, prints an error message)2.853 F 1.148(and unsets)
+144 446.4 R F3(OPT)3.647 E(ARG)-.81 E F4(.)A F1(If)5.647 E F2(getopts)
+3.647 E F1 1.147(is silent, it assigns the option character found to)
+3.647 F F3(OPT)3.647 E(ARG)-.81 E F1(and)3.397 E
+(does not print a diagnostic message.)144 458.4 Q .602(If a required ar)
+144 475.2 R .602(gument is not found, and)-.18 F F2(getopts)3.102 E F1
+.602(is not silent, it sets the v)3.102 F .602(alue of)-.25 F F0(name)
+3.102 E F1 .602(to a ques-)3.102 F 1.056(tion mark \()144 487.2 R F2(?)
+.833 E F1 1.056(\), unsets).833 F F3(OPT)3.556 E(ARG)-.81 E F4(,)A F1
+1.056(and prints a diagnostic message.)3.306 F(If)6.056 E F2(getopts)
+3.556 E F1 1.055(is silent, it sets the)3.556 F -.25(va)144 499.2 S
+(lue of).25 E F0(name)2.5 E F1(to a colon \()2.5 E F2(:).833 E F1 2.5
+(\)a).833 G(nd sets)-2.5 E F3(OPT)2.5 E(ARG)-.81 E F1
+(to the option character found.)2.25 E F2(getopts)144 516 Q F1 .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 528 Q F2(hash)108 544.8
+Q F1([)2.5 E F2(\255lr)A F1 2.5(][)C F2<ad70>-2.5 E F0(\214lename)2.5 E
+F1 2.5(][)C F2(\255dt)-2.5 E F1 2.5(][)C F0(name)-2.5 E F1(])A .636
+(Each time)144 556.8 R F2(hash)3.136 E F1 .636(is in)3.136 F -.2(vo)-.4
+G -.1(ke).2 G .636(d, it remembers the full pathname of the command).1 F
+F0(name)3.496 E F1 .636(as determined)3.316 F 1.427
+(by searching the directories in)144 568.8 R F2($P)3.927 E -.95(AT)-.74
+G(H).95 E F1 6.427(.A)C 1.727 -.15(ny p)-6.427 H(re).15 E 1.427
+(viously-remembered pathname associated with)-.25 F F0(name)144 580.8 Q
+F1 .943(is discarded.)3.443 F .943(If the)5.943 F F2<ad70>3.443 E F1
+.942(option is supplied,)3.443 F F2(hash)3.442 E F1(uses)3.442 E F0
+(\214lename)5.352 E F1 .942(as the full pathname of the)3.622 F
+(command.)144 592.8 Q(The)144 609.6 Q F2<ad72>3.312 E F1 .812
+(option causes the shell to for)3.312 F .813
+(get all remembered locations.)-.18 F .813(Assigning to the)5.813 F F2
+-.74(PA)3.313 G(TH)-.21 E F1 -.25(va)3.313 G(ri-).25 E .278
+(able also clears all hashed \214lenames.)144 621.6 R(The)5.278 E F2
+<ad64>2.778 E F1 .277(option causes the shell to for)2.778 F .277
+(get the remembered lo-)-.18 F(cation of each)144 633.6 Q F0(name)2.5 E
+F1(.)A .107(If the)144 650.4 R F2<ad74>2.607 E F1 .107
+(option is supplied,)2.607 F F2(hash)2.607 E F1 .108
+(prints the full pathname corresponding to each)2.607 F F0(name)2.608 E
+F1 5.108(.I)C 2.608(fm)-5.108 G(ultiple)-2.608 E F0(name)144 662.4 Q F1
+(ar)3.154 E .654(guments are supplied with)-.18 F F2<ad74>3.154 E F1(,)A
+F2(hash)3.154 E F1 .654(prints the)3.154 F F0(name)3.153 E F1 .653
+(before the corresponding hashed full)3.153 F 2.5(pathname. The)144
+674.4 R F2<ad6c>2.5 E F1
+(option displays output in a format that may be reused as input.)2.5 E
+1.19(If no ar)144 691.2 R 1.19(guments are gi)-.18 F -.15(ve)-.25 G
+1.191(n, or if only).15 F F2<ad6c>3.691 E F1 1.191(is supplied,)3.691 F
+F2(hash)3.691 E F1 1.191(prints information about remembered)3.691 F
+2.723(commands. The)144 703.2 R F2<ad74>2.723 E F1(,)A F2<ad64>2.723 E
+F1 2.723(,a)C(nd)-2.723 E F2<ad70>2.723 E F1 .222
+(options \(the options that act on the)2.723 F F0(name)2.722 E F1(ar)
+2.722 E .222(guments\) are mutually)-.18 F -.15(ex)144 715.2 S(clusi).15
+E -.15(ve)-.25 G 5.737(.O).15 G .737(nly one will be acti)-5.737 F -.15
+(ve)-.25 G 5.737(.I).15 G 3.238(fm)-5.737 G .738
+(ore than one is supplied,)-3.238 F F2<ad74>3.238 E F1 .738
+(has higher priority than)3.238 F F2<ad70>3.238 E F1(,)A(and both ha)144
+727.2 Q .3 -.15(ve h)-.2 H(igher priority than).15 E F2<ad64>2.5 E F1(.)
+A(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(75)185.955 E 0 Cg EP
+%%Page: 76 76
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(The return status is zero unless a)144 84 Q F0
+(name)2.86 E F1(is not found or an in)2.68 E -.25(va)-.4 G
+(lid option is supplied.).25 E/F2 10/Times-Bold@0 SF(help)108 100.8 Q F1
+([)2.5 E F2(\255dms)A F1 2.5(][)C F0(pattern)-2.5 E F1(])A .867
+(Display helpful information about b)144 112.8 R .867(uiltin commands.)
+-.2 F(If)5.867 E F0(pattern)4.617 E F1 .866(is speci\214ed,)3.607 F F2
+(help)3.366 E F1(gi)3.366 E -.15(ve)-.25 G 3.366(sd).15 G(etailed)-3.366
+E 1.093(help on all commands matching)144 124.8 R F0(pattern)4.843 E F1
+3.593(;o).24 G 1.093(therwise it displays a list of all the b)-3.593 F
+1.094(uiltins and shell)-.2 F(compound commands.)144 136.8 Q F2<ad64>144
+148.8 Q F1(Display a short description of each)180 148.8 Q F0(pattern)
+2.5 E F2<ad6d>144 160.8 Q F1(Display the description of each)180 160.8 Q
+F0(pattern)2.5 E F1(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat)-2.5 E F2
+<ad73>144 172.8 Q F1(Display only a short usage synopsis for each)180
+172.8 Q F0(pattern)2.5 E F1
+(The return status is 0 unless no command matches)144 189.6 Q F0
+(pattern)3.75 E F1(.).24 E F2(history [)108 206.4 Q F0(n)A F2(])A
+(history \255c)108 218.4 Q(history \255d)108 230.4 Q F0(of)2.5 E(fset)
+-.18 E F2(history \255d)108 242.4 Q F0(start)2.5 E F1(-)A F0(end)A F2
+(history \255anrw)108 254.4 Q F1([)2.5 E F0(\214lename)A F1(])A F2
+(history \255p)108 266.4 Q F0(ar)2.5 E(g)-.37 E F1([)2.5 E F0(ar)A(g)
+-.37 E F1 1.666(...)2.5 G(])-1.666 E F2(history \255s)108 278.4 Q F0(ar)
+2.5 E(g)-.37 E F1([)2.5 E F0(ar)A(g)-.37 E F1 1.666(...)2.5 G(])-1.666 E
+-.4(Wi)144 290.4 S .832
+(th no options, display the command history list with numbers.).4 F .831
+(Entries pre\214x)5.831 F .831(ed with a)-.15 F F2(*)3.331 E F1(ha)3.331
+E -.15(ve)-.2 G 1.081(been modi\214ed.)144 302.4 R 1.082(An ar)6.081 F
+1.082(gument of)-.18 F F0(n)3.942 E F1 1.082(lists only the last)3.822 F
+F0(n)3.942 E F1 3.582(entries. If)3.822 F 1.082(the shell v)3.582 F
+(ariable)-.25 E/F3 9/Times-Bold@0 SF(HISTTIME-)3.582 E(FORMA)144 314.4 Q
+(T)-.855 E F1 .464
+(is set and not null, it is used as a format string for)2.715 F F0
+(strftime)3.304 E F1 .464(\(3\) to display the time stamp).18 F 1.715
+(associated with each displayed history entry)144 326.4 R 6.715(.I)-.65
+G(f)-6.715 E F2(history)4.216 E F1(uses)4.216 E F3(HISTTIMEFORMA)4.216 E
+(T)-.855 E/F4 9/Times-Roman@0 SF(,)A F1 1.716(it does not)3.966 F
+(print an interv)144 338.4 Q
+(ening space between the formatted time stamp and the history entry)-.15
+E(.)-.65 E(If)144 355.2 Q F0(\214lename)3.37 E F1 .87(is supplied,)3.37
+F F2(history)3.37 E F1 .869
+(uses it as the name of the history \214le; if not, it uses the v)3.37 F
+.869(alue of)-.25 F F3(HISTFILE)144 367.2 Q F4(.)A F1(If)4.938 E F0
+(\214lename)2.938 E F1 .438(is not supplied and)2.938 F F3(HISTFILE)
+2.938 E F1 .438(is unset or null, the)2.688 F F2 .438
+(\255a, \255n, \255r)2.938 F(,)-.92 E F1(and)2.939 E F2<ad77>2.939 E F1
+(op-)2.939 E(tions ha)144 379.2 Q .3 -.15(ve n)-.2 H 2.5(oe).15 G -.25
+(ff)-2.5 G(ect.).25 E(Options, if supplied, ha)144 396 Q .3 -.15(ve t)
+-.2 H(he follo).15 E(wing meanings:)-.25 E F2<ad63>144 408 Q F1 .018
+(Clear the history list by deleting all the entries.)180 408 R .017
+(This can be used with the other options to)5.018 F
+(replace the history list.)180 420 Q F2<ad64>144 432 Q F0(of)2.5 E(fset)
+-.18 E F1 .389(Delete the history entry at position)180 444 R F0(of)
+2.889 E(fset)-.18 E F1 5.389(.I)C(f)-5.389 E F0(of)2.889 E(fset)-.18 E
+F1 .389(is ne)2.889 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G 2.89(,i).15
+G 2.89(ti)-2.89 G 2.89(si)-2.89 G .39(nterpreted as relati)-2.89 F -.15
+(ve)-.25 G .599(to one greater than the last history position, so ne)180
+456 R -.05(ga)-.15 G(ti).05 E .899 -.15(ve i)-.25 H .598
+(ndices count back from the end).15 F(of the history)180 468 Q 2.5(,a)
+-.65 G(nd an inde)-2.5 E 2.5(xo)-.15 G 2.5<66ad>-2.5 G 2.5(1r)-2.5 G
+(efers to the current)-2.5 E F2(history \255d)2.5 E F1(command.)2.5 E F2
+<ad64>144 480 Q F0(start)2.5 E F1<ad>A F0(end)A F1 1.25
+(Delete the range of history entries between positions)180 492 R F0
+(start)3.75 E F1(and)3.75 E F0(end)3.75 E F1 3.75(,i)C(nclusi)-3.75 E
+-.15(ve)-.25 G 6.25(.P).15 G(ositi)-6.25 E -.15(ve)-.25 G(and ne)180 504
+Q -.05(ga)-.15 G(ti).05 E .3 -.15(ve v)-.25 H(alues for)-.1 E F0(start)
+2.5 E F1(and)2.5 E F0(end)2.5 E F1(are interpreted as described abo)2.5
+E -.15(ve)-.15 G(.).15 E F2<ad61>144 516 Q F1 .776(Append the \231ne)180
+516 R .776(w\232 history lines to the history \214le.)-.25 F .775
+(These are history lines entered since)5.776 F(the be)180 528 Q
+(ginning of the current)-.15 E F2(bash)2.5 E F1(session, b)2.5 E
+(ut not already appended to the history \214le.)-.2 E F2<ad6e>144 540 Q
+F1 .732(Read the history lines not already read from the history \214le\
+ and add them to the current)180 540 R .143(history list.)180 552 R .143
+(These are lines appended to the history \214le since the be)5.143 F
+.142(ginning of the current)-.15 F F2(bash)180 564 Q F1(session.)2.5 E
+F2<ad72>144 576 Q F1(Read the history \214le and append its contents to\
+ the current history list.)180 576 Q F2<ad77>144 588 Q F1
+(Write the current history list to the history \214le, o)180 588 Q -.15
+(ve)-.15 G(rwriting the history \214le.).15 E F2<ad70>144 600 Q F1 .625
+(Perform history substitution on the follo)180 600 R(wing)-.25 E F0(ar)
+3.125 E(gs)-.37 E F1 .626(and display the result on the standard)3.125 F
+.469(output, without storing the results in the history list.)180 612 R
+(Each)5.469 E F0(ar)2.969 E(g)-.37 E F1 .468(must be quoted to disable)
+2.968 F(normal history e)180 624 Q(xpansion.)-.15 E F2<ad73>144 636 Q F1
+.362(Store the)180 636 R F0(ar)3.192 E(gs)-.37 E F1 .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 648 Q -.15(ve)
+-.15 G 2.5(db).15 G(efore adding the)-2.5 E F0(ar)2.83 E(gs)-.37 E F1(.)
+.27 E 1.153(If the)144 664.8 R F3(HISTTIMEFORMA)3.653 E(T)-.855 E F1
+-.25(va)3.402 G 1.152(riable is set,).25 F F2(history)3.652 E F1 1.152
+(writes the time stamp information associated)3.652 F .188
+(with each history entry to the history \214le, mark)144 676.8 R .189
+(ed with the history comment character as described)-.1 F(abo)144 688.8
+Q -.15(ve)-.15 G 5.265(.W).15 G .264
+(hen the history \214le is read, lines be)-5.265 F .264
+(ginning with the history comment character follo)-.15 F(wed)-.25 E
+(immediately by a digit are interpreted as timestamps for the follo)144
+700.8 Q(wing history entry)-.25 E(.)-.65 E .051(The return v)144 717.6 R
+.051(alue is 0 unless an in)-.25 F -.25(va)-.4 G .051
+(lid option is encountered, an error occurs while reading or writ-).25 F
+1.586(ing the history \214le, an in)144 729.6 R -.25(va)-.4 G(lid).25 E
+F0(of)4.086 E(fset)-.18 E F1 1.586(or range is supplied as an ar)4.086 F
+1.586(gument to)-.18 F F2<ad64>4.086 E F1 4.086(,o)C 4.086(rt)-4.086 G
+1.586(he history)-4.086 F(GNU Bash 5.3)72 768 Q(2024 December 12)136.795
+E(76)185.955 E 0 Cg EP
+%%Page: 77 77
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E -.15(ex)144 84 S(pansion supplied as an ar).15 E
+(gument to)-.18 E/F2 10/Times-Bold@0 SF<ad70>2.5 E F1 -.1(fa)2.5 G(ils.)
+.1 E F2(jobs)108 100.8 Q F1([)2.5 E F2(\255lnprs)A F1 2.5(][)C F0
+(jobspec)A F1 -3.332 1.666(... ])2.5 H F2(jobs \255x)108 112.8 Q F0
+(command)2.5 E F1([)2.5 E F0(ar)2.5 E(gs)-.37 E F1 -3.332 1.666(... ])
+2.5 H(The \214rst form lists the acti)144 124.8 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 F2<ad6c>144 136.8 Q F1
+(List process IDs in addition to the normal information.)180 136.8 Q F2
+<ad6e>144 148.8 Q F1 .193(Display information only about jobs that ha)
+180 148.8 R .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 160.8 Q F2<ad70>
+144 172.8 Q F1(List only the process ID of the job')180 172.8 Q 2.5(sp)
+-.55 G(rocess group leader)-2.5 E(.)-.55 E F2<ad72>144 184.8 Q F1
+(Display only running jobs.)180 184.8 Q F2<ad73>144 196.8 Q F1
+(Display only stopped jobs.)180 196.8 Q(If)144 213.6 Q F0(jobspec)5.19 E
+F1 .95(is supplied,)3.76 F F2(jobs)3.45 E F1 .95
+(restricts output to information about that job)3.45 F 5.95(.T)-.4 G .95
+(he return status is 0)-5.95 F(unless an in)144 225.6 Q -.25(va)-.4 G
+(lid option is encountered or an in).25 E -.25(va)-.4 G(lid).25 E F0
+(jobspec)4.24 E F1(is supplied.)2.81 E .394(If the)144 242.4 R F2<ad78>
+2.894 E F1 .394(option is supplied,)2.894 F F2(jobs)2.894 E F1 .394
+(replaces an)2.894 F(y)-.15 E F0(jobspec)4.634 E F1 .394(found in)3.204
+F F0(command)3.094 E F1(or)3.664 E F0(ar)3.224 E(gs)-.37 E F1 .395
+(with the corre-)3.164 F(sponding process group ID, and e)144 254.4 Q
+-.15(xe)-.15 G(cutes).15 E F0(command)2.7 E F1 2.5(,p).77 G(assing it)
+-2.5 E F0(ar)2.83 E(gs)-.37 E F1 2.5(,r).27 G(eturning its e)-2.5 E
+(xit status.)-.15 E F2(kill)108 271.2 Q F1([)2.5 E F2<ad73>A F0(sigspec)
+2.5 E F1(|)2.5 E F2<ad6e>2.5 E F0(signum)2.5 E F1(|)2.5 E F2<ad>2.5 E F0
+(sigspec)A F1(])A F0(id)2.5 E F1 2.5([.)2.5 G -3.332 1.666(.. ])-.834 H
+F2(kill \255l)108 283.2 Q F1(|)A F2<ad4c>A F1([)2.5 E F0(sigspec)A F1(|)
+2.5 E F0 -.2(ex)2.5 G(it_status).2 E F1(])A .662
+(Send the signal speci\214ed by)144 295.2 R F0(sigspec)3.501 E F1(or)
+3.471 E F0(signum)3.501 E F1 .661(to the processes named by each)3.481 F
+F0(id)3.171 E F1 5.661(.E).77 G(ach)-5.661 E F0(id)3.171 E F1(may)3.931
+E .294(be a job speci\214cation)144 307.2 R F0(jobspec)2.794 E F1 .294
+(or a process ID)2.794 F F0(pid)2.794 E F1(.)A F0(sigspec)5.634 E F1
+.295(is either a case-insensiti)3.105 F .595 -.15(ve s)-.25 H .295
+(ignal name).15 F .465(such as)144 319.2 R/F3 9/Times-Bold@0 SF(SIGKILL)
+2.965 E F1 .465(\(with or without the)2.715 F F3(SIG)2.965 E F1 .464
+(pre\214x\) or a signal number;)2.715 F F0(signum)3.304 E F1 .464
+(is a signal number)3.284 F(.)-.55 E(If)144 331.2 Q F0(sigspec)2.84 E F1
+(is not supplied, then)2.81 E F2(kill)2.5 E F1(sends)2.5 E F3(SIGTERM)
+2.5 E/F4 9/Times-Roman@0 SF(.)A F1(The)144 348 Q F2<ad6c>2.873 E F1 .374
+(option lists the signal names.)2.873 F .374(If an)5.374 F 2.874(ya)-.15
+G -.18(rg)-2.874 G .374(uments are supplied when).18 F F2<ad6c>2.874 E
+F1 .374(is gi)2.874 F -.15(ve)-.25 G(n,).15 E F2(kill)2.874 E F1 .374
+(lists the)2.874 F .12(names of the signals corresponding to the ar)144
+360 R .119(guments, and the return status is 0.)-.18 F(The)5.119 E F0
+-.2(ex)2.619 G(it_status).2 E F1(ar)2.619 E(-)-.2 E .799(gument to)144
+372 R F2<ad6c>3.299 E F1 .799
+(is a number specifying either a signal number or the e)3.299 F .8
+(xit status of a process termi-)-.15 F .381
+(nated by a signal; if it is supplied,)144 384 R F2(kill)2.881 E F1 .381
+(prints the name of the signal that caused the process to ter)2.881 F(-)
+-.2 E(minate.)144 396 Q F2(kill)6.09 E F1 1.09(assumes that process e)
+3.59 F 1.091(xit statuses are greater than 128; an)-.15 F 1.091
+(ything less than that is a)-.15 F(signal number)144 408 Q 5(.T)-.55 G
+(he)-5 E F2<ad4c>2.5 E F1(option is equi)2.5 E -.25(va)-.25 G(lent to)
+.25 E F2<ad6c>2.5 E F1(.)A F2(kill)144 424.8 Q F1 .277
+(returns true if at least one signal w)2.777 F .277
+(as successfully sent, or f)-.1 F .277(alse if an error occurs or an in)
+-.1 F -.25(va)-.4 G(lid).25 E(option is encountered.)144 436.8 Q F2(let)
+108 453.6 Q F0(ar)2.5 E(g)-.37 E F1([)2.5 E F0(ar)A(g)-.37 E F1 1.666
+(...)2.5 G(])-1.666 E(Each)144 465.6 Q F0(ar)3.992 E(g)-.37 E F1 1.162
+(is e)3.882 F -.25(va)-.25 G 1.162(luated as an arithmetic e).25 F 1.162
+(xpression \(see)-.15 F F3 1.162(ARITHMETIC EV)3.662 F(ALU)-1.215 E
+-.855(AT)-.54 G(ION).855 E F1(abo)3.412 E -.15(ve)-.15 G 3.663(\). If)
+.15 F(the last)144 477.6 Q F0(ar)2.83 E(g)-.37 E F1 -.25(eva)2.72 G
+(luates to 0,).25 E F2(let)2.5 E F1(returns 1; otherwise)2.5 E F2(let)
+2.5 E F1(returns 0.)2.5 E F2(local)108 494.4 Q F1([)2.5 E F0(option)A F1
+2.5(][)C F0(name)-2.5 E F1([=)A F0(value)A F1 2.5(].)C -3.332 1.666
+(.. | \255 ])-.834 H -.15(Fo)144 506.4 S 2.614(re).15 G .114(ach ar)
+-2.614 F .114(gument, create a local v)-.18 F .114(ariable named)-.25 F
+F0(name)2.974 E F1 .113(and assign it)2.794 F F0(value)2.903 E F1 5.113
+(.T).18 G(he)-5.113 E F0(option)2.613 E F1 .113(can be an)2.613 F(y)-.15
+E .909(of the options accepted by)144 518.4 R F2(declar)3.409 E(e)-.18 E
+F1 5.909(.W)C(hen)-5.909 E F2(local)3.409 E F1 .91
+(is used within a function, it causes the v)3.409 F(ariable)-.25 E F0
+(name)144.36 530.4 Q F1 .441(to ha)3.121 F .741 -.15(ve a v)-.2 H .441
+(isible scope restricted to that function and its children.).15 F .44
+(It is an error to use)5.44 F F2(local)2.94 E F1
+(when not within a function.)144 542.4 Q(If)144 559.2 Q F0(name)3.08 E
+F1 .58(is \255, it mak)3.08 F .581
+(es the set of shell options local to the function in which)-.1 F F2
+(local)3.081 E F1 .581(is in)3.081 F -.2(vo)-.4 G -.1(ke).2 G .581
+(d: an).1 F(y)-.15 E .352(shell options changed using the)144 571.2 R F2
+(set)2.851 E F1 -.2(bu)2.851 G .351
+(iltin inside the function after the call to).2 F F2(local)2.851 E F1
+.351(are restored to)2.851 F .324(their original v)144 583.2 R .324
+(alues when the function returns.)-.25 F .324
+(The restore is performed as if a series of)5.324 F F2(set)2.825 E F1
+(com-)2.825 E(mands were e)144 595.2 Q -.15(xe)-.15 G
+(cuted to restore the v).15 E
+(alues that were in place before the function.)-.25 E -.4(Wi)144 612 S
+(th no operands,).4 E F2(local)2.5 E F1(writes a list of local v)2.5 E
+(ariables to the standard output.)-.25 E .341
+(The return status is 0 unless)144 628.8 R F2(local)2.841 E F1 .341
+(is used outside a function, an in)2.841 F -.25(va)-.4 G(lid).25 E F0
+(name)3.201 E F1 .341(is supplied, or)3.021 F F0(name)2.841 E F1
+(is a readonly v)144 640.8 Q(ariable.)-.25 E F2(logout [)108 657.6 Q F0
+(n)A F2(])A F1(Exit a login shell, returning a status of)144 669.6 Q F0
+(n)2.5 E F1(to the shell')2.5 E 2.5(sp)-.55 G(arent.)-2.5 E F2
+(map\214le)108 686.4 Q F1([)2.5 E F2<ad64>A F0(delim)2.5 E F1 2.5(][)C
+F2<ad6e>-2.5 E F0(count)2.5 E F1 2.5(][)C F2<ad4f>-2.5 E F0(origin)2.5 E
+F1 2.5(][)C F2<ad73>-2.5 E F0(count)2.5 E F1 2.5(][)C F2<ad74>-2.5 E F1
+2.5(][)C F2<ad75>-2.5 E F0(fd)2.5 E F1 2.5(][)C F2<ad43>-2.5 E F0
+(callbac)2.5 E(k)-.2 E F1 2.5(][)C F2<ad63>-2.5 E F0(quantum)2.5 E F1
+2.5(][)C F0(arr)-2.5 E(ay)-.15 E F1(])A F2 -.18(re)108 698.4 S(adarray)
+.18 E F1([)2.5 E F2<ad64>A F0(delim)2.5 E F1 2.5(][)C F2<ad6e>-2.5 E F0
+(count)2.5 E F1 2.5(][)C F2<ad4f>-2.5 E F0(origin)2.5 E F1 2.5(][)C F2
+<ad73>-2.5 E F0(count)2.5 E F1 2.5(][)C F2<ad74>-2.5 E F1 2.5(][)C F2
+<ad75>-2.5 E F0(fd)2.5 E F1 2.5(][)C F2<ad43>-2.5 E F0(callbac)2.5 E(k)
+-.2 E F1 2.5(][)C F2<ad63>-2.5 E F0(quantum)2.5 E F1 2.5(][)C F0(arr)
+-2.5 E(ay)-.15 E F1(])A .328
+(Read lines from the standard input, or from \214le descriptor)144 710.4
+R F0(fd)4.798 E F1 .328(if the)3.598 F F2<ad75>2.829 E F1 .329
+(option is supplied, into the)2.829 F(inde)144 722.4 Q -.15(xe)-.15 G
+3.49(da).15 G .99(rray v)-3.49 F(ariable)-.25 E F0(arr)3.82 E(ay)-.15 E
+F1 5.99(.T).32 G .989(he v)-5.99 F(ariable)-.25 E F3(MAPFILE)3.489 E F1
+.989(is the def)3.239 F(ault)-.1 E F0(arr)3.489 E(ay)-.15 E F1 5.989(.O)
+C .989(ptions, if supplied,)-5.989 F(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(77)185.955 E 0 Cg EP
+%%Page: 78 78
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(ha)144 84 Q .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E/F2 10/Times-Bold@0 SF<ad64>144 96 Q F1 .281
+(Use the \214rst character of)180 96 R F0(delim)2.781 E F1 .281
+(to terminate each input line, rather than ne)2.781 F 2.782(wline. If)
+-.25 F F0(delim)2.782 E F1(is the empty string,)180 108 Q F2(map\214le)
+2.5 E F1(will terminate a line when it reads a NUL character)2.5 E(.)
+-.55 E F2<ad6e>144 120 Q F1(Cop)180 120 Q 2.5(ya)-.1 G 2.5(tm)-2.5 G
+(ost)-2.5 E F0(count)2.7 E F1 2.5(lines. If)3.18 F F0(count)2.5 E F1
+(is 0, cop)2.5 E 2.5(ya)-.1 G(ll lines.)-2.5 E F2<ad4f>144 132 Q F1(Be)
+180 132 Q(gin assigning to)-.15 E F0(arr)2.83 E(ay)-.15 E F1(at inde)
+2.82 E(x)-.15 E F0(origin)2.73 E F1 5(.T).24 G(he def)-5 E(ault inde)-.1
+E 2.5(xi)-.15 G 2.5(s0)-2.5 G(.)-2.5 E F2<ad73>144 144 Q F1
+(Discard the \214rst)180 144 Q F0(count)2.5 E F1(lines read.)2.5 E F2
+<ad74>144 156 Q F1(Remo)180 156 Q .3 -.15(ve a t)-.15 H(railing).15 E F0
+(delim)2.5 E F1(\(def)2.5 E(ault ne)-.1 E(wline\) from each line read.)
+-.25 E F2<ad75>144 168 Q F1(Read lines from \214le descriptor)180 168 Q
+F0(fd)2.5 E F1(instead of the standard input.)2.5 E F2<ad43>144 180 Q F1
+(Ev)180 180 Q(aluate)-.25 E F0(callbac)2.7 E(k)-.2 E F1(each time)3.17 E
+F0(quantum)2.5 E F1(lines are read.)2.5 E(The)5 E F2<ad63>2.5 E F1
+(option speci\214es)2.5 E F0(quantum)2.75 E F1(.).32 E F2<ad63>144 192 Q
+F1(Specify the number of lines read between each call to)180 192 Q F0
+(callbac)2.7 E(k)-.2 E F1(.).67 E(If)144 208.8 Q F2<ad43>2.968 E F1 .467
+(is speci\214ed without)2.967 F F2<ad63>2.967 E F1 2.967(,t)C .467
+(he def)-2.967 F .467(ault quantum is 5000.)-.1 F(When)5.467 E F0
+(callbac)2.967 E(k)-.2 E F1 .467(is e)2.967 F -.25(va)-.25 G .467
+(luated, it is sup-).25 F .261(plied the inde)144 220.8 R 2.761(xo)-.15
+G 2.761(ft)-2.761 G .261(he ne)-2.761 F .262(xt array element to be ass\
+igned and the line to be assigned to that element)-.15 F .275
+(as additional ar)144 232.8 R(guments.)-.18 E F0(callbac)5.275 E(k)-.2 E
+F1 .275(is e)2.775 F -.25(va)-.25 G .274
+(luated after the line is read b).25 F .274
+(ut before the array element is)-.2 F(assigned.)144 244.8 Q
+(If not supplied with an e)144 261.6 Q(xplicit origin,)-.15 E F2
+(map\214le)2.5 E F1(will clear)2.5 E F0(arr)2.5 E(ay)-.15 E F1
+(before assigning to it.)2.5 E F2(map\214le)144 278.4 Q F1 1.065
+(returns zero unless an in)3.565 F -.25(va)-.4 G 1.065
+(lid option or option ar).25 F 1.065(gument is supplied,)-.18 F F0(arr)
+3.566 E(ay)-.15 E F1 1.066(is in)3.566 F -.25(va)-.4 G 1.066(lid or).25
+F(unassignable, or if)144 290.4 Q F0(arr)2.5 E(ay)-.15 E F1
+(is not an inde)2.5 E -.15(xe)-.15 G 2.5(da).15 G(rray)-2.5 E(.)-.65 E
+F2(popd)108 307.2 Q F1<5bad>2.5 E F2(n)A F1 2.5(][)C(+)-2.5 E F0(n)A F1
+2.5(][)C<ad>-2.5 E F0(n)A F1(])A(Remo)144 319.2 Q 1.151 -.15(ve e)-.15 H
+.851(ntries from the directory stack.).15 F .85
+(The elements are numbered from 0 starting at the \214rst)5.851 F .848
+(directory listed by)144 331.2 R F2(dirs)3.348 E F1 3.348(,s)C(o)-3.348
+E F2(popd)3.348 E F1 .848(is equi)3.348 F -.25(va)-.25 G .848
+(lent to \231popd +0.).25 F 5.848<9a57>-.7 G .848(ith no ar)-6.248 F
+(guments,)-.18 E F2(popd)3.348 E F1(remo)3.348 E -.15(ve)-.15 G(s).15 E
+1.143(the top directory from the stack, and changes to the ne)144 343.2
+R 3.642(wt)-.25 G 1.142(op directory)-3.642 F 6.142(.A)-.65 G -.18(rg)
+-6.142 G 1.142(uments, if supplied,).18 F(ha)144 355.2 Q .3 -.15(ve t)
+-.2 H(he follo).15 E(wing meanings:)-.25 E F2<ad6e>144 367.2 Q F1 .504
+(Suppress the normal change of directory when remo)180 367.2 R .504
+(ving directories from the stack, only)-.15 F(manipulate the stack.)180
+379.2 Q F2(+)144 391.2 Q F0(n)A F1(Remo)180 391.2 Q .684 -.15(ve t)-.15
+H(he).15 E F0(n)2.884 E F1 .383
+(th entry counting from the left of the list sho)B .383(wn by)-.25 F F2
+(dirs)2.883 E F1 2.883(,s)C .383(tarting with zero,)-2.883 F .776
+(from the stack.)180 403.2 R -.15(Fo)5.776 G 3.276(re).15 G .776
+(xample: \231popd +0\232 remo)-3.426 F -.15(ve)-.15 G 3.276(st).15 G
+.777(he \214rst directory)-3.276 F 3.277<2c99>-.65 G .777
+(popd +1\232 the sec-)-3.277 F(ond.)180 415.2 Q F2<ad>144 427.2 Q F0(n)A
+F1(Remo)180 427.2 Q .336 -.15(ve t)-.15 H(he).15 E F0(n)2.536 E F1 .036
+(th entry counting from the right of the list sho)B .035(wn by)-.25 F F2
+(dirs)2.535 E F1 2.535(,s)C .035(tarting with zero.)-2.535 F -.15(Fo)180
+439.2 S 2.5(re).15 G(xample: \231popd \2550\232 remo)-2.65 E -.15(ve)
+-.15 G 2.5(st).15 G(he last directory)-2.5 E 2.5<2c99>-.65 G
+(popd \2551\232 the ne)-2.5 E(xt to last.)-.15 E 1.057
+(If the top element of the directory stack is modi\214ed, and the)144
+456 R F0<ad6e>3.558 E F1 1.058(option w)3.558 F 1.058(as not supplied,)
+-.1 F F2(popd)3.558 E F1 .25(uses the)144 468 R F2(cd)2.749 E F1 -.2(bu)
+2.749 G .249(iltin to change to the directory at the top of the stack.)
+.2 F .249(If the)5.249 F F2(cd)2.749 E F1 -.1(fa)2.749 G(ils,).1 E F2
+(popd)2.749 E F1 .249(returns a)2.749 F(non-zero v)144 480 Q(alue.)-.25
+E(Otherwise,)144 496.8 Q F2(popd)3.571 E F1 1.072(returns f)3.571 F
+1.072(alse if an in)-.1 F -.25(va)-.4 G 1.072
+(lid option is supplied, the directory stack is empty).25 F 3.572(,o)
+-.65 G(r)-3.572 E F0(n)3.572 E F1(speci\214es a non-e)144 508.8 Q
+(xistent directory stack entry)-.15 E(.)-.65 E 1.451(If the)144 525.6 R
+F2(popd)3.951 E F1 1.451(command is successful,)3.951 F F2(bash)3.951 E
+F1(runs)3.951 E F2(dirs)3.951 E F1 1.451(to sho)3.951 F 3.95(wt)-.25 G
+1.45(he \214nal contents of the directory)-3.95 F
+(stack, and the return status is 0.)144 537.6 Q F2(printf)108 554.4 Q F1
+([)2.5 E F2<ad76>A F0(var)2.5 E F1(])A F0(format)2.5 E F1([)2.5 E F0(ar)
+A(guments)-.37 E F1(])A .357(Write the formatted)144 566.4 R F0(ar)2.857
+E(guments)-.37 E F1 .357
+(to the standard output under the control of the)2.857 F F0(format)2.858
+E F1 5.358(.T)C(he)-5.358 E F2<ad76>2.858 E F1(op-)2.858 E
+(tion assigns the output to the v)144 578.4 Q(ariable)-.25 E F0(var)2.5
+E F1(rather than printing it to the standard output.)2.5 E(The)144 595.2
+Q F0(format)3.018 E F1 .517(is a character string which contains three \
+types of objects: plain characters, which are)3.018 F .704(simply copie\
+d to standard output, character escape sequences, which are con)144
+607.2 R -.15(ve)-.4 G .704(rted and copied to).15 F .036(the standard o\
+utput, and format speci\214cations, each of which causes printing of th\
+e ne)144 619.2 R .036(xt successi)-.15 F -.15(ve)-.25 G F0(ar)144 631.2
+Q(gument)-.37 E F1 7.824(.I)C 5.324(na)-7.824 G 2.824
+(ddition to the standard)-5.324 F F0(printf)6.575 E F1 2.825
+(\(3\) format characters)1.96 F F2(cCsSndiouxXeEfFgGaA)5.325 E F1(,)A F2
+(printf)144 643.2 Q F1(interprets the follo)2.5 E
+(wing additional format speci\214ers:)-.25 E F2(%b)144 655.2 Q F1
+(causes)180 655.2 Q F2(printf)2.596 E F1 .096(to e)2.596 F .096
+(xpand backslash escape sequences in the corresponding)-.15 F F0(ar)
+2.596 E(gument)-.37 E F1 .095(in the)2.595 F(same w)180 667.2 Q(ay as)
+-.1 E F2(echo \255e)2.5 E F1(.)A F2(%q)144 679.2 Q F1(causes)180 679.2 Q
+F2(printf)2.51 E F1 .01(to output the corresponding)2.51 F F0(ar)2.51 E
+(gument)-.37 E F1 .01(in a format that can be reused as shell)2.51 F
+(input.)180 691.2 Q F2(%q)5.544 E F1(and)3.044 E F2(%Q)3.044 E F1 .544
+(use the)3.044 F F2<240808>3.044 E F1 .544(quoting style if an)3.044 F
+3.044(yc)-.15 G .543(haracters in the ar)-3.044 F .543
+(gument string re-)-.18 F 1.285
+(quire it, and backslash quoting otherwise.)180 703.2 R 1.286
+(If the format string uses the)6.285 F F0(printf)3.786 E F1(alternate)
+3.786 E(form, these tw)180 715.2 Q 2.5(of)-.1 G(ormats quote the ar)-2.5
+E(gument string using single quotes.)-.18 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(78)185.955 E 0 Cg EP
+%%Page: 79 79
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(%Q)144 84 Q F1(lik)180 84 Q
+(e)-.1 E F2(%q)2.5 E F1 2.5(,b)C(ut applies an)-2.7 E 2.5(ys)-.15 G
+(upplied precision to the)-2.5 E F0(ar)2.5 E(gument)-.37 E F1
+(before quoting it.)2.5 E F2(%\()144 96 Q F0(datefmt)A F2(\)T)A F1
+(causes)180 108 Q F2(printf)4.404 E F1 1.904
+(to output the date-time string resulting from using)4.404 F F0(datefmt)
+4.404 E F1 1.903(as a format)4.404 F .333(string for)180 120 R F0
+(strftime)3.173 E F1 2.833(\(3\). The).18 F(corresponding)2.833 E F0(ar)
+2.834 E(gument)-.37 E F1 .334(is an inte)2.834 F .334
+(ger representing the number)-.15 F .977(of seconds since the epoch.)180
+132 R .977(This format speci\214er recognizes tw)5.977 F 3.476(os)-.1 G
+.976(pecial ar)-3.476 F .976(gument v)-.18 F(al-)-.25 E .602(ues: \2551\
+ represents the current time, and \2552 represents the time the shell w)
+180 144 R .602(as in)-.1 F -.2(vo)-.4 G -.1(ke).2 G 3.102(d. If).1 F
+.747(no ar)180 156 R .747(gument is speci\214ed, con)-.18 F -.15(ve)-.4
+G .747(rsion beha).15 F -.15(ve)-.2 G 3.247(sa).15 G 3.247(si)-3.247 G
+3.247<66ad>-3.247 G 3.247(1h)-3.247 G .747(ad been supplied.)-3.247 F
+.746(This is an e)5.746 F(x-)-.15 E(ception to the usual)180 168 Q F2
+(printf)2.5 E F1(beha)2.5 E(vior)-.2 E(.)-.55 E .946(The %b, %q, and %T\
+ format speci\214ers all use the \214eld width and precision ar)144
+184.8 R .946(guments from the)-.18 F .339
+(format speci\214cation and write that man)144 196.8 R 2.838(yb)-.15 G
+.338(ytes from \(or use that wide a \214eld for\) the e)-2.838 F .338
+(xpanded ar)-.15 F(-)-.2 E
+(gument, which usually contains more characters than the original.)144
+208.8 Q(The %n format speci\214er accepts a corresponding ar)144 225.6 Q
+(gument that is treated as a shell v)-.18 E(ariable name.)-.25 E .393
+(The %s and %c format speci\214ers accept an l \(long\) modi\214er)144
+242.4 R 2.894(,w)-.4 G .394(hich forces them to con)-2.894 F -.15(ve)-.4
+G .394(rt the ar).15 F(-)-.2 E .321
+(gument string to a wide-character string and apply an)144 254.4 R 2.821
+(ys)-.15 G .32(upplied \214eld width and precision in terms)-2.821 F
+.308(of characters, not bytes.)144 266.4 R .308
+(The %S and %C format speci\214ers are equi)5.308 F -.25(va)-.25 G .308
+(lent to %ls and %lc, respec-).25 F(ti)144 278.4 Q -.15(ve)-.25 G(ly).15
+E(.)-.65 E(Ar)144 295.2 Q .464(guments to non-string format speci\214er\
+s are treated as C constants, e)-.18 F .463
+(xcept that a leading plus or)-.15 F .359(minus sign is allo)144 307.2 R
+.359
+(wed, and if the leading character is a single or double quote, the v)
+-.25 F .36(alue is the nu-)-.25 F(meric v)144 319.2 Q(alue of the follo)
+-.25 E(wing character)-.25 E 2.5(,u)-.4 G(sing the current locale.)-2.5
+E(The)144 336 Q F0(format)2.515 E F1 .015
+(is reused as necessary to consume all of the)2.515 F F0(ar)2.515 E
+(guments)-.37 E F1 5.015(.I)C 2.514(ft)-5.015 G(he)-2.514 E F0(format)
+2.514 E F1 .014(requires more)2.514 F F0(ar)2.514 E(-)-.2 E(guments)144
+348 Q F1 .565(than are supplied, the e)3.065 F .566
+(xtra format speci\214cations beha)-.15 F .866 -.15(ve a)-.2 H 3.066(si)
+.15 G 3.066(faz)-3.066 G .566(ero v)-3.066 F .566(alue or null string,)
+-.25 F .542(as appropriate, had been supplied.)144 360 R .541
+(The return v)5.541 F .541(alue is zero on success, non-zero if an in)
+-.25 F -.25(va)-.4 G .541(lid op-).25 F
+(tion is supplied or a write or assignment error occurs.)144 372 Q F2
+(pushd)108 388.8 Q F1([)2.5 E F2<ad6e>A F1 2.5(][)C(+)-2.5 E F0(n)A F1
+2.5(][)C<ad>-2.5 E F0(n)A F1(])A F2(pushd)108 400.8 Q F1([)2.5 E F2
+<ad6e>A F1 2.5(][)C F0(dir)-2.5 E F1(])A 1.049(Add a directory to the t\
+op of the directory stack, or rotate the stack, making the ne)144 412.8
+R 3.549(wt)-.25 G 1.049(op of the)-3.549 F .089(stack the current w)144
+424.8 R .089(orking directory)-.1 F 5.089(.W)-.65 G .089(ith no ar)
+-5.489 F(guments,)-.18 E F2(pushd)2.589 E F1 -.15(ex)2.588 G .088
+(changes the top tw).15 F 2.588(oe)-.1 G .088(lements of)-2.588 F
+(the directory stack.)144 436.8 Q(Ar)5 E(guments, if supplied, ha)-.18 E
+.3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F2<ad6e>144
+448.8 Q F1 .347(Suppress the normal change of directory when rotating o\
+r adding directories to the stack,)180 448.8 R
+(only manipulate the stack.)180 460.8 Q F2(+)144 472.8 Q F0(n)A F1 .147
+(Rotate the stack so that the)180 472.8 R F0(n)2.647 E F1 .147
+(th directory \(counting from the left of the list sho)B .147(wn by)-.25
+F F2(dirs)2.647 E F1(,)A(starting with zero\) is at the top.)180 484.8 Q
+F2<ad>144 496.8 Q F0(n)A F1 .92(Rotates the stack so that the)180 496.8
+R F0(n)3.42 E F1 .92
+(th directory \(counting from the right of the list sho)B .92(wn by)-.25
+F F2(dirs)180 508.8 Q F1 2.5(,s)C(tarting with zero\) is at the top.)
+-2.5 E F0(dir)144.35 520.8 Q F1(Adds)180 520.8 Q F0(dir)2.85 E F1
+(to the directory stack at the top.)3.23 E .435
+(After the stack has been modi\214ed, if the)144 537.6 R F2<ad6e>2.935 E
+F1 .434(option w)2.934 F .434(as not supplied,)-.1 F F2(pushd)2.934 E F1
+.434(uses the)2.934 F F2(cd)2.934 E F1 -.2(bu)2.934 G .434(iltin to).2 F
+(change to the directory at the top of the stack.)144 549.6 Q(If the)5 E
+F2(cd)2.5 E F1 -.1(fa)2.5 G(ils,).1 E F2(pushd)2.5 E F1
+(returns a non-zero v)2.5 E(alue.)-.25 E .907(Otherwise, if no ar)144
+566.4 R .908(guments are supplied,)-.18 F F2(pushd)3.408 E F1 .908
+(returns zero unless the directory stack is empty)3.408 F(.)-.65 E 1.478
+(When rotating the directory stack,)144 578.4 R F2(pushd)3.978 E F1
+1.477(returns zero unless the directory stack is empty or)3.977 F F0(n)
+3.977 E F1(speci\214es a non-e)144 590.4 Q
+(xistent directory stack element.)-.15 E 1.172(If the)144 607.2 R F2
+(pushd)3.672 E F1 1.172(command is successful,)3.672 F F2(bash)3.672 E
+F1(runs)3.672 E F2(dirs)3.672 E F1 1.173(to sho)3.673 F 3.673(wt)-.25 G
+1.173(he \214nal contents of the directory)-3.673 F(stack.)144 619.2 Q
+F2(pwd)108 636 Q F1([)2.5 E F2(\255LP)A F1(])A .845
+(Print the absolute pathname of the current w)144 648 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
+660 R F2<ad50>2.681 E F1 .181(option is supplied or the)2.681 F F2 .181
+(\255o ph)2.681 F(ysical)-.15 E F1 .181(option to the)2.681 F F2(set)
+2.681 E F1 -.2(bu)2.681 G .182(iltin command is).2 F 3.264(enabled. If)
+144 672 R(the)3.264 E F2<ad4c>3.264 E F1 .763
+(option is used, the pathname printed may contain symbolic links.)3.264
+F .763(The return)5.763 F .405(status is 0 unless an error occurs while\
+ reading the name of the current directory or an in)144 684 R -.25(va)
+-.4 G .405(lid op-).25 F(tion is supplied.)144 696 Q(GNU Bash 5.3)72 768
+Q(2024 December 12)136.795 E(79)185.955 E 0 Cg EP
+%%Page: 80 80
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF -.18(re)108 84 S(ad).18 E F1
+([)2.5 E F2(\255Eers)A F1 2.5(][)C F2<ad61>-2.5 E F0(aname)2.5 E F1 2.5
+(][)C F2<ad64>-2.5 E F0(delim)2.5 E F1 2.5(][)C F2<ad69>-2.5 E F0(te)2.5
+E(xt)-.2 E F1 2.5(][)C F2<ad6e>-2.5 E F0(nc)2.5 E(har)-.15 E(s)-.1 E F1
+2.5(][)C F2<ad4e>-2.5 E F0(nc)2.5 E(har)-.15 E(s)-.1 E F1 2.5(][)C F2
+<ad70>-2.5 E F0(pr)2.5 E(ompt)-.45 E F1 2.5(][)C F2<ad74>-2.5 E F0
+(timeout)2.5 E F1 2.5(][)C F2<ad75>-2.5 E F0(fd)2.5 E F1(])A([)108 96 Q
+F0(name)A F1 1.666(...)2.5 G(])-1.666 E .146
+(Read one line from the standard input, or from the \214le descriptor)
+144 108 R F0(fd)2.645 E F1 .145(supplied as an ar)2.645 F .145
+(gument to the)-.18 F F2<ad75>144 120 Q F1 .618(option, split it into w)
+3.118 F .618(ords as described abo)-.1 F .918 -.15(ve u)-.15 H(nder).15
+E F2 -.75(Wo)3.118 G .618(rd Splitting).75 F F1 3.118(,a)C .618
+(nd assign the \214rst w)-3.118 F(ord)-.1 E .844(to the \214rst)144 132
+R F0(name)3.704 E F1 3.344(,t).18 G .844(he second w)-3.344 F .844
+(ord to the second)-.1 F F0(name)3.704 E F1 3.344(,a).18 G .844
+(nd so on.)-3.344 F .843(If there are more w)5.843 F .843(ords than)-.1
+F .052(names, the remaining w)144 144 R .052(ords and their interv)-.1 F
+.052(ening delimiters are assigned to the last)-.15 F F0(name)2.912 E F1
+5.052(.I).18 G 2.552(ft)-5.052 G(here)-2.552 E .541(are fe)144 156 R
+.541(wer w)-.25 F .541(ords read from the input stream than names, the \
+remaining names are assigned empty)-.1 F -.25(va)144 168 S 3.2
+(lues. The).25 F .7(characters in the v)3.2 F .7(alue of the)-.25 F/F3 9
+/Times-Bold@0 SF(IFS)3.2 E F1 -.25(va)2.95 G .701
+(riable are used to split the line into w).25 F .701(ords using)-.1 F
+.956(the same rules the shell uses for e)144 180 R .956
+(xpansion \(described abo)-.15 F 1.256 -.15(ve u)-.15 H(nder).15 E F2
+-.75(Wo)3.455 G .955(rd Splitting).75 F F1 3.455(\). The)B(back-)3.455 E
+1.183(slash character \()144 192 R F2(\\)A F1 3.683(\)r)C(emo)-3.683 E
+-.15(ve)-.15 G 3.683(sa).15 G 1.484 -.15(ny s)-3.683 H 1.184
+(pecial meaning for the ne).15 F 1.184
+(xt character read and is used for line)-.15 F(continuation.)144 204 Q
+(Options, if supplied, ha)144 220.8 Q .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E F2<ad61>144 232.8 Q F0(aname)2.5 E F1 1.026
+(The w)180 244.8 R 1.026
+(ords are assigned to sequential indices of the array v)-.1 F(ariable)
+-.25 E F0(aname)3.855 E F1 3.525(,s).18 G 1.025(tarting at 0.)-3.525 F
+F0(aname)180.33 256.8 Q F1(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 F0(name)2.5 E F1
+(ar)2.5 E(guments are ignored.)-.18 E F2<ad64>144 268.8 Q F0(delim)2.5 E
+F1 .502(The \214rst character of)180 280.8 R F0(delim)3.002 E F1 .503
+(terminates the input line, rather than ne)3.002 F 3.003(wline. If)-.25
+F F0(delim)3.003 E F1 .503(is the)3.003 F(empty string,)180 292.8 Q F2
+-.18(re)2.5 G(ad).18 E F1
+(will terminate a line when it reads a NUL character)2.5 E(.)-.55 E F2
+<ad65>144 304.8 Q F1 1.762
+(If the standard input is coming from a terminal,)180 304.8 R F2 -.18
+(re)4.261 G(ad).18 E F1(uses)4.261 E F2 -.18(re)4.261 G(adline).18 E F1
+(\(see)4.261 E F3(READLINE)4.261 E F1(abo)180 316.8 Q -.15(ve)-.15 G
+3.573(\)t).15 G 3.573(oo)-3.573 G 1.073(btain the line.)-3.573 F F2
+(Readline)6.073 E F1 1.073(uses the current \(or def)3.573 F 1.074
+(ault, if line editing w)-.1 F 1.074(as not)-.1 F(pre)180 328.8 Q
+(viously acti)-.25 E -.15(ve)-.25 G 2.5(\)e).15 G(diting settings, b)
+-2.5 E(ut uses)-.2 E F2 -.18(re)2.5 G(adline).18 E F1 1.1 -.55('s d)D
+(ef).55 E(ault \214lename completion.)-.1 E F2<ad45>144 340.8 Q F1 1.762
+(If the standard input is coming from a terminal,)180 340.8 R F2 -.18
+(re)4.261 G(ad).18 E F1(uses)4.261 E F2 -.18(re)4.261 G(adline).18 E F1
+(\(see)4.261 E F3(READLINE)4.261 E F1(abo)180 352.8 Q -.15(ve)-.15 G
+3.573(\)t).15 G 3.573(oo)-3.573 G 1.073(btain the line.)-3.573 F F2
+(Readline)6.073 E F1 1.073(uses the current \(or def)3.573 F 1.074
+(ault, if line editing w)-.1 F 1.074(as not)-.1 F(pre)180 364.8 Q .042
+(viously acti)-.25 F -.15(ve)-.25 G 2.542(\)e).15 G .042
+(diting settings, b)-2.542 F .042(ut uses bash')-.2 F 2.542(sd)-.55 G
+(ef)-2.542 E .042(ault completion, including program-)-.1 F
+(mable completion.)180 376.8 Q F2<ad69>144 388.8 Q F0(te)2.5 E(xt)-.2 E
+F1(If)180 388.8 Q F2 -.18(re)3.313 G(adline).18 E F1 .814
+(is being used to read the line,)3.313 F F2 -.18(re)3.314 G(ad).18 E F1
+(places)3.314 E F0(te)3.314 E(xt)-.2 E F1 .814(into the editing b)3.314
+F(uf)-.2 E .814(fer before)-.25 F(editing be)180 400.8 Q(gins.)-.15 E F2
+<ad6e>144 412.8 Q F0(nc)2.5 E(har)-.15 E(s)-.1 E F2 -.18(re)180 424.8 S
+(ad).18 E F1 .323(returns after reading)2.823 F F0(nc)2.823 E(har)-.15 E
+(s)-.1 E F1 .323(characters rather than w)2.823 F .323
+(aiting for a complete line of in-)-.1 F .736
+(put, unless it encounters EOF or)180 436.8 R F2 -.18(re)3.236 G(ad).18
+E F1 .736(times out, b)3.236 F .737
+(ut honors a delimiter if it reads fe)-.2 F(wer)-.25 E(than)180 448.8 Q
+F0(nc)2.5 E(har)-.15 E(s)-.1 E F1(characters before the delimiter)2.5 E
+(.)-.55 E F2<ad4e>144 460.8 Q F0(nc)2.5 E(har)-.15 E(s)-.1 E F2 -.18(re)
+180 472.8 S(ad).18 E F1 1.269(returns after reading e)3.77 F(xactly)-.15
+E F0(nc)3.769 E(har)-.15 E(s)-.1 E F1 1.269(characters rather than w)
+3.769 F 1.269(aiting for a complete)-.1 F .172
+(line of input, unless it encounters EOF or)180 484.8 R F2 -.18(re)2.673
+G(ad).18 E F1 .173(times out.)2.673 F(An)5.173 E 2.673(yd)-.15 G .173
+(elimiter characters in the)-2.673 F 1.246
+(input are not treated specially and do not cause)180 496.8 R F2 -.18
+(re)3.746 G(ad).18 E F1 1.245(to return until it has read)3.746 F F0(nc)
+3.745 E(har)-.15 E(s)-.1 E F1 2.566(characters. The)180 508.8 R .066
+(result is not split on the characters in)2.566 F F2(IFS)2.567 E F1
+2.567(;t)C .067(he intent is that the v)-2.567 F .067(ariable is)-.25 F
+.895(assigned e)180 520.8 R .895
+(xactly the characters read \(with the e)-.15 F .894
+(xception of backslash; see the)-.15 F F2<ad72>3.394 E F1(option)3.394 E
+(belo)180 532.8 Q(w\).)-.25 E F2<ad70>144 544.8 Q F0(pr)2.5 E(ompt)-.45
+E F1(Display)180 556.8 Q F0(pr)3.66 E(ompt)-.45 E F1 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 568.8 Q
+2.5(yi)-.15 G(nput, b)-2.5 E
+(ut only if input is coming from a terminal.)-.2 E F2<ad72>144 580.8 Q
+F1 .544(Backslash does not act as an escape character)180 580.8 R 5.543
+(.T)-.55 G .543(he backslash is considered to be part of)-5.543 F .492
+(the line.)180 592.8 R .492(In particular)5.492 F 2.992(,ab)-.4 G
+(ackslash-ne)-2.992 E .493
+(wline pair may not then be used as a line continua-)-.25 F(tion.)180
+604.8 Q F2<ad73>144 616.8 Q F1(Silent mode.)180 616.8 Q
+(If input is coming from a terminal, characters are not echoed.)5 E F2
+<ad74>144 628.8 Q F0(timeout)2.5 E F1(Cause)180 640.8 Q F2 -.18(re)2.767
+G(ad).18 E F1 .267(to time out and return f)2.767 F .266
+(ailure if it does not read a complete line of input \(or a)-.1 F .468
+(speci\214ed number of characters\) within)180 652.8 R F0(timeout)2.968
+E F1(seconds.)2.968 E F0(timeout)5.468 E F1 .469(may be a decimal num-)
+2.968 F .464(ber with a fractional portion follo)180 664.8 R .464
+(wing the decimal point.)-.25 F .463(This option is only ef)5.463 F
+(fecti)-.25 E .763 -.15(ve i)-.25 H(f).15 E F2 -.18(re)180 676.8 S(ad)
+.18 E F1 1.176(is reading input from a terminal, pipe, or other special\
+ \214le; it has no ef)3.676 F 1.177(fect when)-.25 F .108
+(reading from re)180 688.8 R .108(gular \214les.)-.15 F(If)5.108 E F2
+-.18(re)2.608 G(ad).18 E F1 .108(times out, it sa)2.608 F -.15(ve)-.2 G
+2.607(sa).15 G .407 -.15(ny p)-2.607 H .107
+(artial input read into the speci-).15 F .942(\214ed v)180 700.8 R
+(ariable)-.25 E F0(name)3.442 E F1 3.442(,a)C .942(nd the e)-3.442 F
+.942(xit status is greater than 128.)-.15 F(If)5.943 E F0(timeout)3.443
+E F1 .943(is 0,)3.443 F F2 -.18(re)3.443 G(ad).18 E F1(returns)3.443 E
+(immediately)180 712.8 Q 3.26(,w)-.65 G .76(ithout trying to read an)
+-3.26 F 3.26(yd)-.15 G 3.26(ata. In)-3.26 F .759(this case, the e)3.259
+F .759(xit status is 0 if input is)-.15 F -.2(av)180 724.8 S
+(ailable on the speci\214ed \214le descriptor)-.05 E 2.5(,o)-.4 G 2.5
+(rt)-2.5 G(he read will return EOF)-2.5 E 2.5(,n)-.8 G
+(on-zero otherwise.)-2.5 E(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(80)185.955 E 0 Cg EP
+%%Page: 81 81
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF<ad75>144 84 Q F0(fd)2.5 E F1
+(Read input from \214le descriptor)180 84 Q F0(fd)2.5 E F1
+(instead of the standard input.)2.5 E(Other than the case where)144
+100.8 Q F0(delim)2.5 E F1(is the empty string,)2.5 E F2 -.18(re)2.5 G
+(ad).18 E F1(ignores an)2.5 E 2.5(yN)-.15 G(UL characters in the input.)
+-2.5 E .96(If no)144 117.6 R F0(names)3.82 E F1 .96(are supplied,)3.73 F
+F2 -.18(re)3.46 G(ad).18 E F1 .961
+(assigns the line read, without the ending delimiter b)3.461 F .961
+(ut otherwise)-.2 F(unmodi\214ed, to the v)144 129.6 Q(ariable)-.25 E/F3
+9/Times-Bold@0 SF(REPL)2.5 E(Y)-.828 E/F4 9/Times-Roman@0 SF(.)A F1 .033
+(The e)144 146.4 R .033
+(xit status is zero, unless end-of-\214le is encountered,)-.15 F F2 -.18
+(re)2.532 G(ad).18 E F1 .032(times out \(in which case the status is)
+2.532 F .31(greater than 128\), a v)144 158.4 R .311
+(ariable assignment error \(such as assigning to a readonly v)-.25 F
+.311(ariable\) occurs, or)-.25 F(an in)144 170.4 Q -.25(va)-.4 G
+(lid \214le descriptor is supplied as the ar).25 E(gument to)-.18 E F2
+<ad75>2.5 E F1(.)A F2 -.18(re)108 187.2 S(adonly).18 E F1([)2.5 E F2
+(\255aAf)A F1 2.5(][)C F2<ad70>-2.5 E F1 2.5(][)C F0(name)-2.5 E F1([=)A
+F0(wor)A(d)-.37 E F1 2.5(].)C 1.666(..)-.834 G(])-1.666 E .77(The gi)144
+199.2 R -.15(ve)-.25 G(n).15 E F0(names)3.27 E F1 .77(are mark)3.27 F
+.77(ed readonly; the v)-.1 F .77(alues of these)-.25 F F0(names)3.63 E
+F1 .77(may not be changed by subse-)3.54 F .445
+(quent assignment or unset.)144 211.2 R .446(If the)5.446 F F2<ad66>
+2.946 E F1 .446(option is supplied, each)2.946 F F0(name)2.946 E F1 .446
+(refers to a shell function.)2.946 F(The)5.446 E F2<ad61>144 223.2 Q F1
+.383(option restricts the v)2.883 F .383(ariables to inde)-.25 F -.15
+(xe)-.15 G 2.883(da).15 G .383(rrays; the)-2.883 F F2<ad41>2.883 E F1
+.382(option restricts the v)2.883 F .382(ariables to associa-)-.25 F(ti)
+144 235.2 Q 1.558 -.15(ve a)-.25 H 3.758(rrays. If).15 F 1.258
+(both options are supplied,)3.758 F F2<ad41>3.758 E F1(tak)3.758 E 1.258
+(es precedence.)-.1 F 1.258(If no)6.258 F F0(name)4.118 E F1(ar)3.938 E
+1.258(guments are sup-)-.18 F .412(plied, or if the)144 247.2 R F2<ad70>
+2.912 E F1 .412(option is supplied, print a list of all readonly names.)
+2.912 F .411(The other options may be)5.411 F .327
+(used to restrict the output to a subset of the set of readonly names.)
+144 259.2 R(The)5.327 E F2<ad70>2.827 E F1 .327(option displays output)
+2.827 F(in a format that may be reused as input.)144 271.2 Q F2 -.18(re)
+144 288 S(adonly).18 E F1(allo)2.653 E .153(ws the v)-.25 F .153
+(alue of a v)-.25 F .153
+(ariable to be set at the same time the readonly attrib)-.25 F .152
+(ute is changed)-.2 F .687(by follo)144 300 R .687(wing the v)-.25 F
+.687(ariable name with =)-.25 F F0(value)A F1 5.688(.T)C .688
+(his sets the v)-5.688 F .688(alue of the v)-.25 F .688(ariable is to)
+-.25 F F0(value)3.188 E F1(while)3.188 E(modifying the readonly attrib)
+144 312 Q(ute.)-.2 E .303(The return status is 0 unless an in)144 328.8
+R -.25(va)-.4 G .303(lid option is encountered, one of the).25 F F0
+(names)3.162 E F1 .302(is not a v)3.072 F .302(alid shell)-.25 F -.25
+(va)144 340.8 S(riable name, or).25 E F2<ad66>2.5 E F1
+(is supplied with a)2.5 E F0(name)2.86 E F1(that is not a function.)2.68
+E F2 -.18(re)108 357.6 S(tur).18 E(n)-.15 E F1([)2.5 E F0(n)A F1(])A
+.182(Stop e)144 369.6 R -.15(xe)-.15 G .182
+(cuting a shell function or sourced \214le and return the v).15 F .182
+(alue speci\214ed by)-.25 F F0(n)3.042 E F1 .182(to its caller)2.922 F
+5.183(.I)-.55 G(f)-5.183 E F0(n)3.043 E F1 .589
+(is omitted, the return status is that of the last command e)144 381.6 R
+-.15(xe)-.15 G 3.089(cuted. If).15 F F2 -.18(re)3.089 G(tur).18 E(n)-.15
+E F1 .589(is e)3.089 F -.15(xe)-.15 G .588(cuted by a trap).15 F
+(handler)144 393.6 Q 3.469(,t)-.4 G .969
+(he last command used to determine the status is the last command e)
+-3.469 F -.15(xe)-.15 G .97(cuted before the).15 F .13(trap handler)144
+405.6 R 5.13(.I)-.55 G(f)-5.13 E F2 -.18(re)2.63 G(tur).18 E(n)-.15 E F1
+.13(is e)2.63 F -.15(xe)-.15 G .13(cuted during a).15 F F2(DEB)2.629 E
+(UG)-.1 E F1 .129(trap, the last command used to determine the)2.629 F
+(status is the last command e)144 417.6 Q -.15(xe)-.15 G
+(cuted by the trap handler before).15 E F2 -.18(re)2.5 G(tur).18 E(n)
+-.15 E F1 -.1(wa)2.5 G 2.5(si).1 G -1.9 -.4(nv o)-2.5 H -.1(ke).4 G(d.)
+.1 E(When)144 434.4 Q F2 -.18(re)3.817 G(tur).18 E(n)-.15 E F1 1.317
+(is used to terminate e)3.817 F -.15(xe)-.15 G 1.318
+(cution of a script being e).15 F -.15(xe)-.15 G 1.318(cuted by the).15
+F F2(.)3.818 E F1(\()6.318 E F2(sour)A(ce)-.18 E F1 3.818(\)c)C(om-)
+-3.818 E .808(mand, it causes the shell to stop e)144 446.4 R -.15(xe)
+-.15 G .807(cuting that script and return either).15 F F0(n)3.667 E F1
+.807(or the e)3.547 F .807(xit status of the)-.15 F .314(last command e)
+144 458.4 R -.15(xe)-.15 G .314(cuted within the script as the e).15 F
+.314(xit status of the script.)-.15 F(If)5.315 E F0(n)2.815 E F1 .315
+(is supplied, the return)2.815 F -.25(va)144 470.4 S
+(lue is its least signi\214cant 8 bits.).25 E(An)144 487.2 Q 3.176(yc)
+-.15 G .676(ommand associated with the)-3.176 F F2(RETURN)3.176 E F1
+.675(trap is e)3.175 F -.15(xe)-.15 G .675(cuted before e).15 F -.15(xe)
+-.15 G .675(cution resumes after the).15 F(function or script.)144 499.2
+Q .948(The return status is non-zero if)144 516 R F2 -.18(re)3.449 G
+(tur).18 E(n)-.15 E F1 .949(is supplied a non-numeric ar)3.449 F .949
+(gument, or is used outside a)-.18 F(function and not during e)144 528 Q
+-.15(xe)-.15 G(cution of a script by).15 E F2(.)2.5 E F1(or)3.333 E F2
+(sour)2.5 E(ce)-.18 E F1(.)A F2(set)108 544.8 Q F1([)2.5 E F2
+(\255abefhkmnptuvxBCEHPT)A F1 2.5(][)C F2<ad6f>-2.5 E F0(option\255name)
+2.5 E F1 2.5(][)C F2<adad>-2.5 E F1 2.5(][)C F2<ad>-2.5 E F1 2.5(][)C F0
+(ar)-2.5 E(g)-.37 E F1 1.666(...)2.5 G(])-1.666 E F2(set)108 556.8 Q F1
+([)2.5 E F2(+abefhkmnptuvxBCEHPT)A F1 2.5(][)C F2(+o)-2.5 E F0
+(option\255name)2.5 E F1 2.5(][)C F2<adad>-2.5 E F1 2.5(][)C F2<ad>-2.5
+E F1 2.5(][)C F0(ar)-2.5 E(g)-.37 E F1 1.666(...)2.5 G(])-1.666 E F2
+(set \255o)108 568.8 Q(set +o)108 580.8 Q F1 -.4(Wi)144 580.8 S .574
+(thout options, display the name and v).4 F .574(alue of each shell v)
+-.25 F .573(ariable in a format that can be reused)-.25 F .113
+(as input for setting or resetting the currently-set v)144 592.8 R 2.613
+(ariables. Read-only)-.25 F -.25(va)2.613 G .113
+(riables cannot be reset.).25 F(In)5.113 E .958
+(posix mode, only shell v)144 604.8 R .958(ariables are listed.)-.25 F
+.957(The output is sorted according to the current locale.)5.957 F .58
+(When options are speci\214ed, the)144 616.8 R 3.081(ys)-.15 G .581
+(et or unset shell attrib)-3.081 F 3.081(utes. An)-.2 F 3.081(ya)-.15 G
+-.18(rg)-3.081 G .581(uments remaining after op-).18 F .161
+(tion processing are treated as v)144 628.8 R .161
+(alues for the positional parameters and are assigned, in order)-.25 F
+2.66(,t)-.4 G(o)-2.66 E F2($1)2.66 E F1(,)A F2($2)144 640.8 Q F1 2.5(,.)
+C 1.666(..)-.834 G(,)-1.666 E F2($)2.5 E F0(n)A F1 5(.O)C
+(ptions, if speci\214ed, ha)-5 E .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E F2<ad61>144 652.8 Q F1 1.377(Each v)184 652.8 R
+1.377(ariable or function that is created or modi\214ed is gi)-.25 F
+-.15(ve)-.25 G 3.877(nt).15 G 1.377(he e)-3.877 F 1.378(xport attrib)
+-.15 F 1.378(ute and)-.2 F(mark)184 664.8 Q(ed for e)-.1 E
+(xport to the en)-.15 E(vironment of subsequent commands.)-.4 E F2<ad62>
+144 676.8 Q F1 .132
+(Report the status of terminated background jobs immediately)184 676.8 R
+2.632(,r)-.65 G .131(ather than before the ne)-2.632 F(xt)-.15 E .48
+(primary prompt or after a fore)184 688.8 R .48
+(ground command terminates.)-.15 F .48(This is ef)5.48 F(fecti)-.25 E
+.78 -.15(ve o)-.25 H .48(nly when).15 F(job control is enabled.)184
+700.8 Q(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(81)185.955 E 0
+Cg EP
+%%Page: 82 82
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF<ad65>144 84 Q F1 .088
+(Exit immediately if a)184 84 R F0(pipeline)2.588 E F1 .087
+(\(which may consist of a single)2.588 F F0 .087(simple command)2.587 F
+F1 .087(\), a)B F0(list)2.587 E F1 2.587(,o)C(r)-2.587 E(a)184 96 Q F0
+1.52(compound command)4.02 F F1(\(see)4.021 E/F3 9/Times-Bold@0 SF 1.521
+(SHELL GRAMMAR)4.021 F F1(abo)3.771 E -.15(ve)-.15 G 1.521(\), e).15 F
+1.521(xits with a non-zero status.)-.15 F .08(The shell does not e)184
+108 R .079(xit if the command that f)-.15 F .079
+(ails is part of the command list immediately)-.1 F(follo)184 120 Q
+1.654(wing a)-.25 F F2(while)4.154 E F1(or)4.154 E F2(until)4.154 E F1
+-.1(ke)4.154 G(yw)-.05 E 1.655(ord, part of the test follo)-.1 F 1.655
+(wing the)-.25 F F2(if)4.155 E F1(or)4.155 E F2(elif)4.155 E F1(reserv)
+4.155 E(ed)-.15 E -.1(wo)184 132 S .582(rds, part of an).1 F 3.082(yc)
+-.15 G .582(ommand e)-3.082 F -.15(xe)-.15 G .581(cuted in a).15 F F2
+(&&)3.081 E F1(or)3.081 E F2(||)3.081 E F1 .581(list e)3.081 F .581
+(xcept the command follo)-.15 F(wing)-.25 E 1.206(the \214nal)184 144 R
+F2(&&)3.706 E F1(or)3.706 E F2(||)3.706 E F1 3.706(,a)C 1.506 -.15(ny c)
+-3.706 H 1.206(ommand in a pipeline b).15 F 1.206
+(ut the last \(subject to the state of the)-.2 F F2(pipefail)184 156 Q
+F1 1.308(shell option\), or if the command')3.808 F 3.807(sr)-.55 G
+1.307(eturn v)-3.807 F 1.307(alue is being in)-.25 F -.15(ve)-.4 G 1.307
+(rted with).15 F F2(!)3.807 E F1 6.307(.I)C 3.807(fa)-6.307 G .274(comp\
+ound command other than a subshell returns a non-zero status because a \
+command)184 168 R -.1(fa)184 180 S .195(iled while).1 F F2<ad65>2.695 E
+F1 -.1(wa)2.695 G 2.695(sb).1 G .195(eing ignored, the shell does not e)
+-2.695 F 2.694(xit. A)-.15 F .194(trap on)2.694 F F2(ERR)2.694 E F1
+2.694(,i)C 2.694(fs)-2.694 G .194(et, is e)-2.694 F -.15(xe)-.15 G(-).15
+E .59(cuted before the shell e)184 192 R 3.09(xits. This)-.15 F .59
+(option applies to the shell en)3.09 F .59(vironment and each sub-)-.4 F
+1.492(shell en)184 204 R 1.492(vironment separately \(see)-.4 F F3 1.492
+(COMMAND EXECUTION ENVIR)3.992 F(ONMENT)-.27 E F1(abo)3.741 E -.15(ve)
+-.15 G(\),).15 E(and may cause subshells to e)184 216 Q(xit before e)
+-.15 E -.15(xe)-.15 G(cuting all the commands in the subshell.).15 E
+.998(If a compound command or shell function e)184 232.8 R -.15(xe)-.15
+G .999(cutes in a conte).15 F .999(xt where)-.15 F F2<ad65>3.499 E F1
+.999(is being ig-)3.499 F .089(nored, none of the commands e)184 244.8 R
+-.15(xe)-.15 G .089(cuted within the compound command or function body)
+.15 F .502(will be af)184 256.8 R .502(fected by the)-.25 F F2<ad65>
+3.002 E F1 .502(setting, e)3.002 F -.15(ve)-.25 G 3.002(ni).15 G(f)
+-3.002 E F2<ad65>3.002 E F1 .502(is set and a command returns a f)3.002
+F .503(ailure sta-)-.1 F 4.184(tus. If)184 268.8 R 4.184(ac)4.184 G
+1.684(ompound command or shell function sets)-4.184 F F2<ad65>4.183 E F1
+1.683(while e)4.183 F -.15(xe)-.15 G 1.683(cuting in a conte).15 F(xt)
+-.15 E(where)184 280.8 Q F2<ad65>3.153 E F1 .653
+(is ignored, that setting will not ha)3.153 F .954 -.15(ve a)-.2 H .954
+-.15(ny e).15 H -.25(ff).15 G .654(ect until the compound command).25 F
+(or the command containing the function call completes.)184 292.8 Q F2
+<ad66>144 304.8 Q F1(Disable pathname e)184 304.8 Q(xpansion.)-.15 E F2
+<ad68>144 316.8 Q F1 .988(Remember the location of commands as the)184
+316.8 R 3.488(ya)-.15 G .988(re look)-3.488 F .988(ed up for e)-.1 F
+-.15(xe)-.15 G 3.488(cution. This).15 F .987(is en-)3.487 F
+(abled by def)184 328.8 Q(ault.)-.1 E F2<ad6b>144 340.8 Q F1 .513
+(All ar)184 340.8 R .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 352.8 Q F2
+<ad6d>144 364.8 Q F1 .149(Monitor mode.)184 364.8 R .149
+(Job control is enabled.)5.149 F .148(This option is on by def)5.149 F
+.148(ault for interacti)-.1 F .448 -.15(ve s)-.25 H(hells).15 E .65
+(on systems that support it \(see)184 376.8 R F3 .651(JOB CONTR)3.151 F
+(OL)-.27 E F1(abo)2.901 E -.15(ve)-.15 G 3.151(\). All).15 F .651
+(processes run in a separate)3.151 F .679(process group.)184 388.8 R
+.678(When a background job completes, the shell prints a line containin\
+g its)5.679 F -.15(ex)184 400.8 S(it status.).15 E F2<ad6e>144 412.8 Q
+F1 .652(Read commands b)184 412.8 R .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
+424.8 Q(This is ignored by interacti)5 E .3 -.15(ve s)-.25 H(hells.).15
+E F2<ad6f>144 436.8 Q F0(option\255name)2.5 E F1(The)184 448.8 Q F0
+(option\255name)2.5 E F1(can be one of the follo)2.5 E(wing:)-.25 E F2
+(allexport)184 460.8 Q F1(Same as)224 472.8 Q F2<ad61>2.5 E F1(.)A F2
+(braceexpand)184 484.8 Q F1(Same as)224 496.8 Q F2<ad42>2.5 E F1(.)A F2
+(emacs)184 508.8 Q F1 .089
+(Use an emacs-style command line editing interf)224 508.8 R 2.589
+(ace. This)-.1 F .089(is enabled by def)2.589 F(ault)-.1 E .95
+(when the shell is interacti)224 520.8 R -.15(ve)-.25 G 3.45(,u).15 G
+.95(nless the shell is started with the)-3.45 F F2(\255\255noediting)
+3.45 E F1 2.5(option. This)224 532.8 R(also af)2.5 E
+(fects the editing interf)-.25 E(ace used for)-.1 E F2 -.18(re)2.5 G
+(ad \255e).18 E F1(.)A F2(err)184 544.8 Q(exit)-.18 E F1(Same as)224
+544.8 Q F2<ad65>2.5 E F1(.)A F2(errtrace)184 556.8 Q F1(Same as)224
+556.8 Q F2<ad45>2.5 E F1(.)A F2(functrace)184 568.8 Q F1(Same as)224
+580.8 Q F2<ad54>2.5 E F1(.)A F2(hashall)184 592.8 Q F1(Same as)224 592.8
+Q F2<ad68>2.5 E F1(.)A F2(histexpand)184 604.8 Q F1(Same as)224 616.8 Q
+F2<ad48>2.5 E F1(.)A F2(history)184 628.8 Q F1 .587
+(Enable command history)224 628.8 R 3.087(,a)-.65 G 3.087(sd)-3.087 G
+.587(escribed abo)-3.087 F .887 -.15(ve u)-.15 H(nder).15 E F3(HIST)
+3.087 E(OR)-.162 E(Y)-.315 E/F4 9/Times-Roman@0 SF(.)A F1 .587
+(This option is)5.087 F(on by def)224 640.8 Q(ault in interacti)-.1 E .3
+-.15(ve s)-.25 H(hells.).15 E F2(ignor)184 652.8 Q(eeof)-.18 E F1 .821
+(The ef)224 664.8 R .822
+(fect is as if the shell command \231IGNOREEOF=10\232 had been e)-.25 F
+-.15(xe)-.15 G(cuted).15 E(\(see)224 676.8 Q F2(Shell V)2.5 E(ariables)
+-.92 E F1(abo)2.5 E -.15(ve)-.15 G(\).).15 E F2 -.1(ke)184 688.8 S(yw).1
+E(ord)-.1 E F1(Same as)224 700.8 Q F2<ad6b>2.5 E F1(.)A(GNU Bash 5.3)72
+768 Q(2024 December 12)136.795 E(82)185.955 E 0 Cg EP
+%%Page: 83 83
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(monitor)184 84 Q F1(Same as)
+224 84 Q F2<ad6d>2.5 E F1(.)A F2(noclob)184 96 Q(ber)-.1 E F1(Same as)
+224 108 Q F2<ad43>2.5 E F1(.)A F2(noexec)184 120 Q F1(Same as)224 120 Q
+F2<ad6e>2.5 E F1(.)A F2(noglob)184 132 Q F1(Same as)224 132 Q F2<ad66>
+2.5 E F1(.)A F2(nolog)184 144 Q F1(Currently ignored.)224 144 Q F2
+(notify)184 156 Q F1(Same as)224 156 Q F2<ad62>2.5 E F1(.)A F2(nounset)
+184 168 Q F1(Same as)224 168 Q F2<ad75>2.5 E F1(.)A F2(onecmd)184 180 Q
+F1(Same as)224 180 Q F2<ad74>2.5 E F1(.)A F2(ph)184 192 Q(ysical)-.15 E
+F1(Same as)224 192 Q F2<ad50>2.5 E F1(.)A F2(pipefail)184 204 Q F1 1.03
+(If set, the return v)224 204 R 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 216
+R 1.136
+(xit with a non-zero status, or zero if all commands in the pipeline)
+-.15 F -.15(ex)224 228 S(it successfully).15 E 5(.T)-.65 G
+(his option is disabled by def)-5 E(ault.)-.1 E F2(posix)184 240 Q F1
+2.091(Change the beha)224 240 R 2.091(vior of)-.2 F F2(bash)4.591 E F1
+2.091(where the def)4.591 F 2.091(ault operation dif)-.1 F 2.091
+(fers from the)-.25 F 1.212(POSIX standard to match the standard \()224
+252 R F0 1.212(posix mode)B F1 3.712(\). See)B/F3 9/Times-Bold@0 SF
+1.212(SEE ALSO)3.712 F F1(belo)3.463 E(w)-.25 E .955
+(for a reference to a document that details ho)224 264 R 3.454(wp)-.25 G
+.954(osix mode af)-3.454 F .954(fects bash')-.25 F 3.454(sb)-.55 G(e-)
+-3.454 E(ha)224 276 Q(vior)-.2 E(.)-.55 E F2(pri)184 288 Q(vileged)-.1 E
+F1(Same as)224 300 Q F2<ad70>2.5 E F1(.)A F2 -.1(ve)184 312 S(rbose).1 E
+F1(Same as)224 312 Q F2<ad76>2.5 E F1(.)A F2(vi)184 324 Q F1 .209
+(Use a vi-style command line editing interf)224 324 R 2.709(ace. This)
+-.1 F .209(also af)2.709 F .21(fects the editing in-)-.25 F(terf)224 336
+Q(ace used for)-.1 E F2 -.18(re)2.5 G(ad \255e).18 E F1(.)A F2(xtrace)
+184 348 Q F1(Same as)224 348 Q F2<ad78>2.5 E F1(.)A(If)184 360 Q F2
+<ad6f>2.766 E F1 .266(is supplied with no)2.766 F F0(option\255name)
+2.765 E F1(,)A F2(set)2.765 E F1 .265
+(prints the current shell option settings.)2.765 F(If)5.265 E F2(+o)
+2.765 E F1 .078(is supplied with no)184 372 R F0(option\255name)2.578 E
+F1(,)A F2(set)2.578 E F1 .079(prints a series of)2.579 F F2(set)2.579 E
+F1 .079(commands to recreate the cur)2.579 F(-)-.2 E
+(rent option settings on the standard output.)184 384 Q F2<ad70>144 396
+Q F1 -.45(Tu)184 396 S 3.278(rn on).45 F F0(privile)7.028 E -.1(ge)-.4 G
+(d).1 E F1 5.777(mode. In)6.548 F 3.277
+(this mode, the shell does not read the)5.777 F F3($ENV)5.777 E F1(and)
+5.527 E F3($B)184 408 Q(ASH_ENV)-.27 E F1 .018
+(\214les, shell functions are not inherited from the en)2.267 F .018
+(vironment, and the)-.4 F F3(SHEL-)2.518 E(LOPTS)184 420 Q/F4 9
+/Times-Roman@0 SF(,)A F3 -.27(BA)2.59 G(SHOPTS).27 E F4(,)A F3(CDP)2.59
+E -.855(AT)-.666 G(H).855 E F4(,)A F1(and)2.59 E F3(GLOBIGNORE)2.84 E F1
+-.25(va)2.589 G .339(riables, if the).25 F 2.839(ya)-.15 G .339
+(ppear in the en)-2.839 F(vi-)-.4 E .02(ronment, are ignored.)184 432 R
+.021(If the shell is started with the ef)5.02 F(fecti)-.25 E .321 -.15
+(ve u)-.25 H .021(ser \(group\) id not equal to).15 F .043
+(the real user \(group\) id, and the)184 444 R F2<ad70>2.543 E F1 .043
+(option is not supplied, these actions are tak)2.543 F .043(en and the)
+-.1 F(ef)184 456 Q(fecti)-.25 E .878 -.15(ve u)-.25 H .579
+(ser id is set to the real user id.).15 F .579(If the)5.579 F F2<ad70>
+3.079 E F1 .579(option is supplied at startup, the ef-)3.079 F(fecti)184
+468 Q 1.21 -.15(ve u)-.25 H .91(ser id is not reset.).15 F -.45(Tu)5.91
+G .91(rning this option of).45 F 3.41(fc)-.25 G .91(auses the ef)-3.41 F
+(fecti)-.25 E 1.21 -.15(ve u)-.25 H .91(ser and group).15 F
+(ids to be set to the real user and group ids.)184 480 Q F2<ad72>144 492
+Q F1(Enable restricted shell mode.)184 492 Q
+(This option cannot be unset once it has been set.)5 E F2<ad74>144 504 Q
+F1(Exit after reading and e)184 504 Q -.15(xe)-.15 G
+(cuting one command.).15 E F2<ad75>144 516 Q F1 -.35(Tr)184 516 S .662
+(eat unset v).35 F .662(ariables and parameters other than the special \
+parameters \231@\232 and \231*\232, or)-.25 F .349(array v)184 528 R
+.348(ariables subscripted with \231@\232 or \231*\232, as an error when\
+ performing parameter e)-.25 F(x-)-.15 E 2.89(pansion. If)184 540 R -.15
+(ex)2.89 G .391(pansion is attempted on an unset v).15 F .391
+(ariable or parameter)-.25 F 2.891(,t)-.4 G .391(he shell prints an)
+-2.891 F(error message, and, if not interacti)184 552 Q -.15(ve)-.25 G
+2.5(,e).15 G(xits with a non-zero status.)-2.65 E F2<ad76>144 564 Q F1
+(Print shell input lines as the)184 564 Q 2.5(ya)-.15 G(re read.)-2.5 E
+F2<ad78>144 576 Q F1 .315(After e)184 576 R .315(xpanding each)-.15 F F0
+.315(simple command)2.815 F F1(,)A F2 -.25(fo)2.815 G(r).25 E F1
+(command,)2.815 E F2(case)2.815 E F1(command,)2.815 E F2(select)2.815 E
+F1(command,)2.815 E 1.235(or arithmetic)184 588 R F2 -.25(fo)3.736 G(r)
+.25 E F1 1.236(command, display the e)3.736 F 1.236(xpanded v)-.15 F
+1.236(alue of)-.25 F F3(PS4)3.736 E F4(,)A F1(follo)3.486 E 1.236
+(wed by the com-)-.25 F(mand and its e)184 600 Q(xpanded ar)-.15 E
+(guments or associated w)-.18 E(ord list, to the standard error)-.1 E(.)
+-.55 E F2<ad42>144 612 Q F1 1.206(The shell performs brace e)184 612 R
+1.206(xpansion \(see)-.15 F F2 1.205(Brace Expansion)3.705 F F1(abo)
+3.705 E -.15(ve)-.15 G 3.705(\). This).15 F 1.205(is on by de-)3.705 F
+-.1(fa)184 624 S(ult.).1 E F2<ad43>144 636 Q F1 .213(If set,)184 636 R
+F2(bash)2.713 E F1 .213(does not o)2.713 F -.15(ve)-.15 G .214
+(rwrite an e).15 F .214(xisting \214le with the)-.15 F F2(>)2.714 E F1
+(,)A F2(>&)2.714 E F1 2.714(,a)C(nd)-2.714 E F2(<>)2.714 E F1 .214
+(redirection opera-)2.714 F 3.148(tors. Using)184 648 R .648
+(the redirection operator)3.148 F F2(>|)3.148 E F1 .648(instead of)3.148
+F F2(>)3.148 E F1 .648(will o)3.148 F -.15(ve)-.15 G .648
+(rride this and force the cre-).15 F(ation of an output \214le.)184 660
+Q F2<ad45>144 672 Q F1 .103(If set, an)184 672 R 2.603(yt)-.15 G .103
+(rap on)-2.603 F F2(ERR)2.603 E F1 .104
+(is inherited by shell functions, command substitutions, and com-)2.603
+F .839(mands e)184 684 R -.15(xe)-.15 G .839(cuted in a subshell en).15
+F 3.339(vironment. The)-.4 F F2(ERR)3.338 E F1 .838
+(trap is normally not inherited in)3.338 F(such cases.)184 696 Q
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(83)185.955 E 0 Cg EP
+%%Page: 84 84
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF<ad48>144 84 Q F1(Enable)184
+84 Q F2(!)3.031 E F1 .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 96 Q -.15(ve)-.25 G(.).15 E F2<ad50>144 108 Q F1 .96
+(If set, the shell does not resolv)184 108 R 3.459(es)-.15 G .959
+(ymbolic links when e)-3.459 F -.15(xe)-.15 G .959
+(cuting commands such as).15 F F2(cd)3.459 E F1 1.452
+(that change the current w)184 120 R 1.452(orking directory)-.1 F 6.452
+(.I)-.65 G 3.953(tu)-6.452 G 1.453(ses the ph)-3.953 F 1.453
+(ysical directory structure in-)-.05 F 3.335(stead. By)184 132 R(def)
+3.335 E(ault,)-.1 E F2(bash)3.334 E F1(follo)3.334 E .834
+(ws the logical chain of directories when performing com-)-.25 F
+(mands which change the current directory)184 144 Q(.)-.65 E F2<ad54>144
+156 Q F1 .89(If set, an)184 156 R 3.39(yt)-.15 G .89(raps on)-3.39 F F2
+(DEB)3.39 E(UG)-.1 E F1(and)3.39 E F2(RETURN)3.39 E F1 .89
+(are inherited by shell functions, command)3.39 F 1.932
+(substitutions, and commands e)184 168 R -.15(xe)-.15 G 1.932
+(cuted in a subshell en).15 F 4.432(vironment. The)-.4 F F2(DEB)4.432 E
+(UG)-.1 E F1(and)4.432 E F2(RETURN)184 180 Q F1
+(traps are normally not inherited in such cases.)2.5 E F2<adad>144 192 Q
+F1 .909(If no ar)184 192 R .909(guments follo)-.18 F 3.409(wt)-.25 G
+.909(his option, unset the positional parameters.)-3.409 F .91
+(Otherwise, set the)5.909 F(positional parameters to the)184 204 Q F0
+(ar)2.5 E(g)-.37 E F1(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 F2<ad>2.5 E F1(.)A F2<ad>144
+216 Q F1 1.368(Signal the end of options, and assign all remaining)184
+216 R F0(ar)3.868 E(g)-.37 E F1 3.867(st)C 3.867(ot)-3.867 G 1.367
+(he positional parameters.)-3.867 F(The)184 228 Q F2<ad78>2.848 E F1
+(and)2.848 E F2<ad76>2.848 E F1 .349(options are turned of)2.848 F 2.849
+(f. If)-.25 F .349(there are no)2.849 F F0(ar)2.849 E(g)-.37 E F1 .349
+(s, the positional parameters re-)B(main unchanged.)184 240 Q .425
+(The options are of)144 256.8 R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)
+-2.925 E .425(ault unless otherwise noted.)-.1 F .425
+(Using + rather than \255 causes these options)5.425 F .177
+(to be turned of)144 268.8 R 2.677(f. The)-.25 F .178
+(options can also be speci\214ed as ar)2.678 F .178(guments to an in)
+-.18 F -.2(vo)-.4 G .178(cation of the shell.).2 F(The)5.178 E .654
+(current set of options may be found in)144 280.8 R F2<24ad>3.153 E F1
+5.653(.T)C .653(he return status is al)-5.653 F -.1(wa)-.1 G .653
+(ys zero unless an in).1 F -.25(va)-.4 G .653(lid op-).25 F
+(tion is encountered.)144 292.8 Q F2(shift)108 309.6 Q F1([)2.5 E F0(n)A
+F1(])A .596(Rename positional parameters from)144 321.6 R F0(n)3.097 E
+F1 .597(+1 .)B -2.735 1.666(.. t)1.666 H(o)-1.666 E F2 .597($1 .)3.097 F
+1.666(..)1.666 G(.)-1.666 E F1 -.15(Pa)5.597 G .597
+(rameters represented by the numbers).15 F F2($#)3.097 E F1(do)144 333.6
+Q .079(wn to)-.25 F F2($#)2.579 E F1<ad>A F0(n)A F1 .078(+1 are unset.)B
+F0(n)5.438 E F1 .078(must be a non-ne)2.818 F -.05(ga)-.15 G(ti).05 E
+.378 -.15(ve n)-.25 H .078(umber less than or equal to).15 F F2($#)2.578
+E F1 5.078(.I)C(f)-5.078 E F0(n)2.938 E F1 .078(is 0, no)2.818 F .502
+(parameters are changed.)144 345.6 R(If)5.502 E F0(n)3.362 E F1 .502
+(is not gi)3.242 F -.15(ve)-.25 G .502(n, it is assumed to be 1.).15 F
+(If)5.503 E F0(n)3.363 E F1 .503(is greater than)3.243 F F2($#)3.003 E
+F1 3.003(,t)C .503(he posi-)-3.003 F .46
+(tional parameters are not changed.)144 357.6 R .46
+(The return status is greater than zero if)5.46 F F0(n)3.32 E F1 .46
+(is greater than)3.2 F F2($#)2.96 E F1(or)2.96 E
+(less than zero; otherwise 0.)144 369.6 Q F2(shopt)108 386.4 Q F1([)2.5
+E F2(\255pqsu)A F1 2.5(][)C F2<ad6f>-2.5 E F1 2.5(][)C F0(optname)-2.5 E
+F1 1.666(...)2.5 G(])-1.666 E -.8(To)144 398.4 S .639(ggle the v).8 F
+.639(alues of settings controlling optional shell beha)-.25 F(vior)-.2 E
+5.639(.T)-.55 G .64(he settings can be either those)-5.639 F .375
+(listed belo)144 410.4 R 1.675 -.65(w, o)-.25 H 1.175 -.4(r, i).65 H
+2.875(ft).4 G(he)-2.875 E F2<ad6f>2.875 E F1 .375
+(option is used, those a)2.875 F -.25(va)-.2 G .375(ilable with the).25
+F F2<ad6f>2.875 E F1 .374(option to the)2.875 F F2(set)2.874 E F1 -.2
+(bu)2.874 G .374(iltin com-).2 F(mand.)144 422.4 Q -.4(Wi)144 439.2 S
+.547(th no options, or with the).4 F F2<ad70>3.048 E F1 .548
+(option, display a list of all settable options, with an indication of)
+3.048 F .675(whether or not each is set; if an)144 451.2 R(y)-.15 E F0
+(optnames)3.175 E F1 .674
+(are supplied, the output is restricted to those options.)3.175 F(The)
+144 463.2 Q F2<ad70>2.5 E F1
+(option displays output in a form that may be reused as input.)2.5 E
+(Other options ha)144 480 Q .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E F2<ad73>144 492 Q F1(Enable \(set\) each)180 492
+Q F0(optname)2.5 E F1(.)A F2<ad75>144 504 Q F1(Disable \(unset\) each)
+180 504 Q F0(optname)2.5 E F1(.)A F2<ad71>144 516 Q F1 .003(Suppresses \
+normal output \(quiet mode\); the return status indicates whether the)
+180 516 R F0(optname)2.504 E F1(is)2.504 E .042(set or unset.)180 528 R
+.042(If multiple)5.042 F F0(optname)2.542 E F1(ar)2.542 E .042
+(guments are supplied with)-.18 F F2<ad71>2.542 E F1 2.542(,t)C .042
+(he return status is zero)-2.542 F(if all)180 540 Q F0(optnames)2.5 E F1
+(are enabled; non-zero otherwise.)2.5 E F2<ad6f>144 552 Q F1
+(Restricts the v)180 552 Q(alues of)-.25 E F0(optname)2.5 E F1
+(to be those de\214ned for the)2.5 E F2<ad6f>2.5 E F1(option to the)2.5
+E F2(set)2.5 E F1 -.2(bu)2.5 G(iltin.).2 E .624(If either)144 568.8 R F2
+<ad73>3.124 E F1(or)3.124 E F2<ad75>3.124 E F1 .624(is used with no)
+3.124 F F0(optname)3.124 E F1(ar)3.124 E(guments,)-.18 E F2(shopt)3.124
+E F1(sho)3.124 E .624(ws only those options which are)-.25 F .984
+(set or unset, respecti)144 580.8 R -.15(ve)-.25 G(ly).15 E 5.984(.U)
+-.65 G .984(nless otherwise noted, the)-5.984 F F2(shopt)3.484 E F1 .983
+(options are disabled \(unset\) by de-)3.483 F -.1(fa)144 592.8 S(ult.)
+.1 E 1.544(The return status when listing options is zero if all)144
+609.6 R F0(optnames)4.044 E F1 1.545(are enabled, non-zero otherwise.)
+4.045 F .696
+(When setting or unsetting options, the return status is zero unless an)
+144 621.6 R F0(optname)3.196 E F1 .696(is not a v)3.196 F .695
+(alid shell)-.25 F(option.)144 633.6 Q(The list of)144 650.4 Q F2(shopt)
+2.5 E F1(options is:)2.5 E F2(array_expand_once)144 667.2 Q F1 1.831
+(If set, the shell suppresses multiple e)184 679.2 R -.25(va)-.25 G
+1.832(luation of associati).25 F 2.132 -.15(ve a)-.25 H 1.832(nd inde)
+.15 F -.15(xe)-.15 G 4.332(da).15 G 1.832(rray sub-)-4.332 F .025
+(scripts during arithmetic e)184 691.2 R .025(xpression e)-.15 F -.25
+(va)-.25 G .025(luation, while e).25 F -.15(xe)-.15 G .025(cuting b).15
+F .025(uiltins that can perform)-.2 F -.25(va)184 703.2 S
+(riable assignments, and while e).25 E -.15(xe)-.15 G(cuting b).15 E
+(uiltins that perform array dereferencing.)-.2 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(84)185.955 E 0 Cg EP
+%%Page: 85 85
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(assoc_expand_once)144 84 Q F1
+(Deprecated; a synon)184 96 Q(ym for)-.15 E F2(array_expand_once)2.5 E
+F1(.)A F2(autocd)144 108 Q F1 .199
+(If set, a command name that is the name of a directory is e)184 108 R
+-.15(xe)-.15 G .2(cuted as if it were the ar).15 F(gu-)-.18 E
+(ment to the)184 120 Q F2(cd)2.5 E F1 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
+F2(bash_sour)144 132 Q(ce_fullpath)-.18 E F1 .124
+(If set, \214lenames added to the)184 144 R F2 -.3(BA)2.624 G(SH_SOURCE)
+.3 E F1 .124(array v)2.624 F .124(ariable are con)-.25 F -.15(ve)-.4 G
+.123(rted to full path-).15 F(names \(see)184 156 Q F2(Shell V)2.5 E
+(ariables)-.92 E F1(abo)2.5 E -.15(ve)-.15 G(\).).15 E F2(cdable_v)144
+168 Q(ars)-.1 E F1 .155(If set, an ar)184 180 R .155(gument to the)-.18
+F F2(cd)2.655 E F1 -.2(bu)2.655 G .156
+(iltin command that is not a directory is assumed to be the).2 F
+(name of a v)184 192 Q(ariable whose v)-.25 E
+(alue is the directory to change to.)-.25 E F2(cdspell)144 204 Q F1
+1.293(If set, the)184 204 R F2(cd)3.793 E F1 1.293(command attempts to \
+correct minor errors in the spelling of a directory)3.793 F 3.982
+(component. Minor)184 216 R 1.482
+(errors include transposed characters, a missing character)3.982 F 3.982
+(,a)-.4 G 1.482(nd one)-3.982 F -.15(ex)184 228 S .973(tra character).15
+F 5.973(.I)-.55 G(f)-5.973 E F2(cd)3.473 E F1 .972
+(corrects the directory name, it prints the corrected \214lename, and)
+3.473 F(the command proceeds.)184 240 Q
+(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.)
+.15 E F2(checkhash)144 252 Q F1 .736(If set,)184 264 R F2(bash)3.236 E
+F1 .736(checks that a command found in the hash table e)3.236 F .737
+(xists before trying to e)-.15 F -.15(xe)-.15 G(-).15 E(cute it.)184 276
+Q(If a hashed command no longer e)5 E(xists,)-.15 E F2(bash)2.5 E F1
+(performs a normal path search.)2.5 E F2(checkjobs)144 288 Q F1 .449
+(If set,)184 300 R F2(bash)2.949 E F1 .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 2.783(shell. If)184 312 R(an)
+2.783 E 2.783(yj)-.15 G .283(obs are running,)-2.783 F F2(bash)2.784 E
+F1 .284(defers the e)2.784 F .284(xit until a second e)-.15 F .284
+(xit is attempted with-)-.15 F .835(out an interv)184 324 R .835
+(ening command \(see)-.15 F/F3 9/Times-Bold@0 SF .835(JOB CONTR)3.335 F
+(OL)-.27 E F1(abo)3.085 E -.15(ve)-.15 G 3.334(\). The).15 F .834
+(shell al)3.334 F -.1(wa)-.1 G .834(ys postpones).1 F -.15(ex)184 336 S
+(iting if an).15 E 2.5(yj)-.15 G(obs are stopped.)-2.5 E F2
+(checkwinsize)144 348 Q F1 1.09(If set,)184 360 R F2(bash)3.59 E F1 1.09
+(checks the windo)3.59 F 3.59(ws)-.25 G 1.09(ize after each e)-3.59 F
+1.09(xternal \(non-b)-.15 F 1.09(uiltin\) command and, if)-.2 F
+(necessary)184 372 Q 2.938(,u)-.65 G .438(pdates the v)-2.938 F .438
+(alues of)-.25 F F3(LINES)2.938 E F1(and)2.688 E F3(COLUMNS)2.938 E/F4 9
+/Times-Roman@0 SF(,)A F1 .437(using the \214le descriptor associ-)2.688
+F(ated with the standard error if it is a terminal.)184 384 Q
+(This option is enabled by def)5 E(ault.)-.1 E F2(cmdhist)144 396 Q F1
+.172(If set,)184 396 R F2(bash)2.672 E F1 .172(attempts to sa)2.672 F
+.472 -.15(ve a)-.2 H .173
+(ll lines of a multiple-line command in the same history en-).15 F(try)
+184 408 Q 5.597(.T)-.65 G .597(his allo)-5.597 F .597
+(ws easy re-editing of multi-line commands.)-.25 F .597
+(This option is enabled by de-)5.597 F -.1(fa)184 420 S 1.287(ult, b).1
+F 1.288(ut only has an ef)-.2 F 1.288
+(fect if command history is enabled, as described abo)-.25 F 1.588 -.15
+(ve u)-.15 H(nder).15 E F3(HIST)184 432 Q(OR)-.162 E(Y)-.315 E F4(.)A F2
+(compat31)144 444 Q(compat32)144 456 Q(compat40)144 468 Q(compat41)144
+480 Q(compat42)144 492 Q(compat43)144 504 Q(compat44)144 516 Q(compat50)
+144 528 Q F1 .889(These control aspects of the shell')184 540 R 3.389
+(sc)-.55 G .889(ompatibility mode \(see)-3.389 F F3 .889(SHELL COMP)
+3.389 F -.855(AT)-.666 G(IBILITY).855 E(MODE)184 552 Q F1(belo)2.25 E
+(w\).)-.25 E F2(complete_fullquote)144 564 Q F1 .653(If set,)184 576 R
+F2(bash)3.153 E F1 .653(quotes all shell metacharacters in \214lenames \
+and directory names when per)3.153 F(-)-.2 E 1.525(forming completion.)
+184 588 R 1.524(If not set,)6.525 F F2(bash)4.024 E F1(remo)4.024 E -.15
+(ve)-.15 G 4.024(sm).15 G 1.524(etacharacters such as the dollar sign)
+-4.024 F 2.667(from the set of characters that will be quoted in comple\
+ted \214lenames when these)184 600 R .029
+(metacharacters appear in shell v)184 612 R .028
+(ariable references in w)-.25 F .028(ords to be completed.)-.1 F .028
+(This means)5.028 F 1.072(that dollar signs in v)184 624 R 1.073
+(ariable names that e)-.25 F 1.073
+(xpand to directories will not be quoted; ho)-.15 F(w-)-.25 E -2.15 -.25
+(ev e)184 636 T 1.923 -.4(r, a).25 H 1.423 -.15(ny d).4 H 1.123
+(ollar signs appearing in \214lenames will not be quoted, either).15 F
+6.123(.T)-.55 G 1.122(his is acti)-6.123 F -.15(ve)-.25 G .59
+(only when bash is using backslashes to quote completed \214lenames.)184
+648 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 660 Q
+(ault, which is the def)-.1 E(ault bash beha)-.1 E(vior in v)-.2 E
+(ersions through 4.2.)-.15 E F2(dir)144 672 Q(expand)-.18 E F1 .487
+(If set,)184 684 R F2(bash)2.987 E F1 .486
+(replaces directory names with the results of w)2.986 F .486(ord e)-.1 F
+.486(xpansion when perform-)-.15 F 1.25(ing \214lename completion.)184
+696 R 1.25(This changes the contents of the)6.25 F F2 -.18(re)3.75 G
+(adline).18 E F1 1.25(editing b)3.75 F(uf)-.2 E(fer)-.25 E 6.25(.I)-.55
+G(f)-6.25 E(not set,)184 708 Q F2(bash)2.5 E F1(attempts to preserv)2.5
+E 2.5(ew)-.15 G(hat the user typed.)-2.5 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(85)185.955 E 0 Cg EP
+%%Page: 86 86
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(dirspell)144 84 Q F1 .859
+(If set,)184 84 R F2(bash)3.359 E F1 .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 96 Q(xist.)-.15 E
+F2(dotglob)144 108 Q F1 1.087(If set,)184 108 R F2(bash)3.587 E F1 1.088
+(includes \214lenames be)3.588 F 1.088
+(ginning with a \231.\232 in the results of pathname e)-.15 F(xpan-)-.15
+E 2.5(sion. The)184 120 R(\214lenames)2.5 E F0(.)4.166 E F1(and)4.166 E
+F0(..)4.166 E F1(must al)4.166 E -.1(wa)-.1 G(ys be matched e).1 E
+(xplicitly)-.15 E 2.5(,e)-.65 G -.15(ve)-2.75 G 2.5(ni).15 G(f)-2.5 E F2
+(dotglob)2.5 E F1(is set.)2.5 E F2(execfail)144 132 Q F1 .517
+(If set, a non-interacti)184 132 R .817 -.15(ve s)-.25 H .517
+(hell will not e).15 F .516(xit if it cannot e)-.15 F -.15(xe)-.15 G
+.516(cute the \214le speci\214ed as an ar).15 F(-)-.2 E(gument to the)
+184 144 Q F2(exec)2.5 E F1 -.2(bu)2.5 G 2.5(iltin. An).2 F(interacti)2.5
+E .3 -.15(ve s)-.25 H(hell does not e).15 E(xit if)-.15 E F2(exec)2.5 E
+F1 -.1(fa)2.5 G(ils.).1 E F2(expand_aliases)144 156 Q F1 .716
+(If set, aliases are e)184 168 R .717(xpanded as described abo)-.15 F
+1.017 -.15(ve u)-.15 H(nder).15 E/F3 9/Times-Bold@0 SF(ALIASES)3.217 E
+/F4 9/Times-Roman@0 SF(.)A F1 .717(This option is enabled)5.217 F
+(by def)184 180 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.)
+.15 E F2(extdeb)144 192 Q(ug)-.2 E F1 .17(If set at shell in)184 204 R
+-.2(vo)-.4 G .17(cation, or in a shell startup \214le, arrange to e).2 F
+-.15(xe)-.15 G .17(cute the deb).15 F .17(ugger pro\214le)-.2 F 1.081
+(before the shell starts, identical to the)184 216 R F2<adad646562>3.582
+E(ugger)-.2 E F1 3.582(option. If)3.582 F 1.082(set after in)3.582 F -.2
+(vo)-.4 G 1.082(cation, be-).2 F(ha)184 228 Q
+(vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F2(1.)184
+240 Q F1(The)220 240 Q F2<ad46>4.251 E F1 1.751(option to the)4.251 F F2
+(declar)4.251 E(e)-.18 E F1 -.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 252 Q
+(gument.)-.18 E F2(2.)184 264 Q F1 1.667(If the command run by the)220
+264 R F2(DEB)4.167 E(UG)-.1 E F1 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 276
+Q -.15(xe)-.15 G(cuted.).15 E F2(3.)184 288 Q F1 .841
+(If the command run by the)220 288 R F2(DEB)3.341 E(UG)-.1 E F1 .841
+(trap returns a v)3.341 F .84(alue of 2, and the shell is)-.25 F -.15
+(exe)220 300 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 F2(.)2.988 E F1(or)2.988 E F2
+(sour)220 312 Q(ce)-.18 E F1 -.2(bu)2.5 G
+(iltins\), the shell simulates a call to).2 E F2 -.18(re)2.5 G(tur).18 E
+(n)-.15 E F1(.)A F2(4.)184 324 Q F3 -.27(BA)220 324 S(SH_ARGC).27 E F1
+(and)3.154 E F3 -.27(BA)3.404 G(SH_ARGV).27 E F1 .904
+(are updated as described in their descriptions)3.154 F(abo)220 336 Q
+-.15(ve)-.15 G(\).).15 E F2(5.)184 348 Q F1 1.637(Function tracing is e\
+nabled: command substitution, shell functions, and sub-)220 348 R
+(shells in)220 360 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F2
+(\()2.5 E F0(command)2.5 E F2(\))2.5 E F1(inherit the)2.5 E F2(DEB)2.5 E
+(UG)-.1 E F1(and)2.5 E F2(RETURN)2.5 E F1(traps.)2.5 E F2(6.)184 372 Q
+F1 1.082(Error tracing is enabled: command substitution, shell function\
+s, and subshells)220 372 R(in)220 384 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw)
+.1 G(ith)-2.5 E F2(\()2.5 E F0(command)2.5 E F2(\))2.5 E F1(inherit the)
+2.5 E F2(ERR)2.5 E F1(trap.)2.5 E F2(extglob)144 396 Q F1 .856
+(If set, enable the e)184 396 R .856
+(xtended pattern matching features described abo)-.15 F 1.157 -.15(ve u)
+-.15 H(nder).15 E F2 -.1(Pa)3.357 G(thname).1 E(Expansion)184 408 Q F1
+(.)A F2(extquote)144 420 Q F1 .86(If set,)184 432 R F2($)3.36 E F1<08>A
+F0(string)A F1 3.36<0861>C(nd)-3.36 E F2($)3.36 E F1(")A F0(string)A F1
+3.36("q)C .86(uoting is performed within)-3.36 F F2(${)3.36 E F0(par)A
+(ameter)-.15 E F2(})A F1 -.15(ex)3.36 G .86(pansions en-).15 F
+(closed in double quotes.)184 444 Q(This option is enabled by def)5 E
+(ault.)-.1 E F2(failglob)144 456 Q F1 .242(If set, patterns which f)184
+456 R .243(ail to match \214lenames during pathname e)-.1 F .243
+(xpansion result in an e)-.15 F(x-)-.15 E(pansion error)184 468 Q(.)-.55
+E F2 -.25(fo)144 480 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F1 .937
+(If set, the suf)184 492 R<8c78>-.25 E .936(es speci\214ed by the)-.15 F
+F3(FIGNORE)3.436 E F1 .936(shell v)3.186 F .936(ariable cause w)-.25 F
+.936(ords to be ignored)-.1 F .32(when performing w)184 504 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.239
+(pletions. See)184 516 R F2 .739(Shell V)3.239 F(ariables)-.92 E F1(abo)
+3.238 E 1.038 -.15(ve f)-.15 H .738(or a description of).15 F F3
+(FIGNORE)3.238 E F4(.)A F1 .738(This option is en-)5.238 F(abled by def)
+184 528 Q(ault.)-.1 E F2(globasciiranges)144 540 Q F1 2.518
+(If set, range e)184 552 R 2.519
+(xpressions used in pattern matching brack)-.15 F 2.519(et e)-.1 F 2.519
+(xpressions \(see)-.15 F F3 -.09(Pa)5.019 G(tter).09 E(n)-.135 E
+(Matching)184 564 Q F1(abo)2.965 E -.15(ve)-.15 G 3.215(\)b).15 G(eha)
+-3.215 E 1.015 -.15(ve a)-.2 H 3.214(si).15 G 3.214(fi)-3.214 G 3.214
+(nt)-3.214 G .714(he traditional C locale when performing comparisons.)
+-3.214 F .987(That is, pattern matching does not tak)184 576 R 3.487(et)
+-.1 G .987(he current locale')-3.487 F 3.487(sc)-.55 G .987
+(ollating sequence into ac-)-3.487 F 1.552(count, so)184 588 R F2(b)
+4.052 E F1 1.552(will not collate between)4.052 F F2(A)4.051 E F1(and)
+4.051 E F2(B)4.051 E F1 4.051(,a)C 1.551(nd upper)-4.051 F 1.551
+(-case and lo)-.2 F(wer)-.25 E 1.551(-case ASCII)-.2 F
+(characters will collate together)184 600 Q(.)-.55 E F2(globskipdots)144
+612 Q F1 .727(If set, pathname e)184 624 R .727(xpansion will ne)-.15 F
+-.15(ve)-.25 G 3.227(rm).15 G .727(atch the \214lenames)-3.227 F F0(.)
+4.893 E F1(and)4.893 E F0(..)4.893 E F1 3.227(,e)1.666 G -.15(ve)-3.477
+G 3.227(ni).15 G 3.227(ft)-3.227 G .728(he pattern)-3.227 F(be)184 636 Q
+(gins with a \231.\232.)-.15 E(This option is enabled by def)5 E(ault.)
+-.1 E F2(globstar)144 648 Q F1 .519(If set, the pattern)184 648 R F2(**)
+3.019 E F1 .519(used in a pathname e)3.019 F .519(xpansion conte)-.15 F
+.518(xt will match all \214les and zero)-.15 F .431
+(or more directories and subdirectories.)184 660 R .431
+(If the pattern is follo)5.431 F .432(wed by a)-.25 F F2(/)2.932 E F1
+2.932(,o)C .432(nly directories)-2.932 F(and subdirectories match.)184
+672 Q F2(gnu_errfmt)144 684 Q F1(If set, shell error messages are writt\
+en in the standard GNU error message format.)184 696 Q(GNU Bash 5.3)72
+768 Q(2024 December 12)136.795 E(86)185.955 E 0 Cg EP
+%%Page: 87 87
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(histappend)144 84 Q F1 .676
+(If set, the history list is appended to the \214le named by the v)184
+96 R .676(alue of the)-.25 F/F3 9/Times-Bold@0 SF(HISTFILE)3.176 E F1
+-.25(va)2.926 G(ri-).25 E(able when the shell e)184 108 Q
+(xits, rather than o)-.15 E -.15(ve)-.15 G(rwriting the \214le.).15 E F2
+(histr)144 120 Q(eedit)-.18 E F1 .117(If set, and)184 132 R F2 -.18(re)
+2.617 G(adline).18 E F1 .118(is being used, the user is gi)2.617 F -.15
+(ve)-.25 G 2.618(nt).15 G .118(he opportunity to re-edit a f)-2.618 F
+.118(ailed his-)-.1 F(tory substitution.)184 144 Q F2(histv)144 156 Q
+(erify)-.1 E F1 .403(If set, and)184 168 R F2 -.18(re)2.903 G(adline).18
+E F1 .403
+(is being used, the results of history substitution are not immediately)
+2.903 F .661(passed to the shell parser)184 180 R 5.661(.I)-.55 G .662
+(nstead, the resulting line is loaded into the)-5.661 F F2 -.18(re)3.162
+G(adline).18 E F1(editing)3.162 E -.2(bu)184 192 S -.25(ff).2 G(er).25 E
+2.5(,a)-.4 G(llo)-2.5 E(wing further modi\214cation.)-.25 E F2
+(hostcomplete)144 204 Q F1 1.182(If set, and)184 216 R F2 -.18(re)3.682
+G(adline).18 E F1 1.182(is being used,)3.682 F F2(bash)3.682 E F1 1.181
+(will attempt to perform hostname completion)3.681 F 1.38(when a w)184
+228 R 1.38(ord containing a)-.1 F F2(@)3.881 E F1 1.381
+(is being completed \(see)3.881 F F2(Completing)3.881 E F1(under)3.881 E
+F3(READLINE)3.881 E F1(abo)184 240 Q -.15(ve)-.15 G 2.5(\). This).15 F
+(is enabled by def)2.5 E(ault.)-.1 E F2(huponexit)144 252 Q F1(If set,)
+184 264 Q F2(bash)2.5 E F1(will send)2.5 E F3(SIGHUP)2.5 E F1
+(to all jobs when an interacti)2.25 E .3 -.15(ve l)-.25 H(ogin shell e)
+.15 E(xits.)-.15 E F2(inherit_err)144 276 Q(exit)-.18 E F1 .22
+(If set, command substitution inherits the v)184 288 R .219(alue of the)
+-.25 F F2(err)2.719 E(exit)-.18 E F1 .219(option, instead of unsetting)
+2.719 F(it in the subshell en)184 300 Q 2.5(vironment. This)-.4 F
+(option is enabled when posix mode is enabled.)2.5 E F2(interacti)144
+312 Q -.1(ve)-.1 G(_comments).1 E F1 .208(In an interacti)184 324 R .508
+-.15(ve s)-.25 H .208(hell, a w).15 F .209(ord be)-.1 F .209
+(ginning with)-.15 F F2(#)2.709 E F1 .209(causes that w)2.709 F .209
+(ord and all remaining char)-.1 F(-)-.2 E .612
+(acters on that line to be ignored, as in a non-interacti)184 336 R .912
+-.15(ve s)-.25 H .612(hell \(see).15 F F3(COMMENTS)3.112 E F1(abo)2.862
+E -.15(ve)-.15 G(\).).15 E(This option is enabled by def)184 348 Q
+(ault.)-.1 E F2(lastpipe)144 360 Q F1 .066
+(If set, and job control is not acti)184 360 R -.15(ve)-.25 G 2.566(,t)
+.15 G .066(he shell runs the last command of a pipeline not e)-2.566 F
+-.15(xe)-.15 G(-).15 E(cuted in the background in the current shell en)
+184 372 Q(vironment.)-.4 E F2(lithist)144 384 Q F1 .655(If set, and the)
+184 384 R F2(cmdhist)3.155 E F1 .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 396 Q
+(wlines rather than using semicolon separators where possible.)-.25 E F2
+(localv)144 408 Q(ar_inherit)-.1 E F1 .421(If set, local v)184 420 R
+.422(ariables inherit the v)-.25 F .422(alue and attrib)-.25 F .422
+(utes of a v)-.2 F .422(ariable of the same name that)-.25 F -.15(ex)184
+432 S .174(ists at a pre).15 F .174(vious scope before an)-.25 F 2.673
+(yn)-.15 G .673 -.25(ew va)-2.673 H .173(lue is assigned.).25 F .173
+(The nameref attrib)5.173 F .173(ute is not)-.2 F(inherited.)184 444 Q
+F2(localv)144 456 Q(ar_unset)-.1 E F1 .328(If set, calling)184 468 R F2
+(unset)2.828 E F1 .328(on local v)2.828 F .329(ariables in pre)-.25 F
+.329(vious function scopes marks them so subse-)-.25 F .365
+(quent lookups \214nd them unset until that function returns.)184 480 R
+.364(This is identical to the beha)5.364 F(v-)-.2 E
+(ior of unsetting local v)184 492 Q
+(ariables at the current function scope.)-.25 E F2(login_shell)144 504 Q
+F1 .486
+(The shell sets this option if it is started as a login shell \(see)184
+516 R F3(INV)2.987 E(OCA)-.405 E(TION)-.855 E F1(abo)2.737 E -.15(ve)
+-.15 G 2.987(\). The).15 F -.25(va)184 528 S(lue may not be changed.).25
+E F2(mailwar)144 540 Q(n)-.15 E F1 .815(If set, and a \214le that)184
+552 R F2(bash)3.315 E F1 .814
+(is checking for mail has been accessed since the last time it)3.315 F
+-.1(wa)184 564 S 2.5(sc).1 G(heck)-2.5 E(ed,)-.1 E F2(bash)2.5 E F1
+(displays the message \231The mail in)2.5 E F0(mail\214le)2.5 E F1
+(has been read\232.)2.5 E F2(no_empty_cmd_completion)144 576 Q F1 .609
+(If set, and)184 588 R F2 -.18(re)3.109 G(adline).18 E F1 .609
+(is being used,)3.109 F F2(bash)3.109 E F1 .609(does not search)3.109 F
+F3 -.666(PA)3.109 G(TH)-.189 E F1 .61(for possible completions)2.86 F
+(when completion is attempted on an empty line.)184 600 Q F2(nocaseglob)
+144 612 Q F1 .437(If set,)184 624 R F2(bash)2.937 E F1 .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 636 S
+(pansion \(see).15 E F2 -.1(Pa)2.5 G(thname Expansion).1 E F1(abo)2.5 E
+-.15(ve)-.15 G(\).).15 E F2(nocasematch)144 648 Q F1 1.193(If set,)184
+660 R F2(bash)3.693 E F1 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 .551(while e)184 672 R -.15(xe)-.15 G(cuting).15 E F2(case)3.051 E F1
+(or)3.051 E F2([[)3.051 E F1 .551
+(conditional commands, when performing pattern substitution)3.051 F -.1
+(wo)184 684 S .622(rd e).1 F .623(xpansions, or when \214ltering possib\
+le completions as part of programmable com-)-.15 F(pletion.)184 696 Q
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(87)185.955 E 0 Cg EP
+%%Page: 88 88
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(noexpand_translation)144 84 Q
+F1 .67(If set,)184 96 R F2(bash)3.17 E F1 .669
+(encloses the translated results of)3.169 F F2($")3.169 E F1 1.666(...)C
+F2(")-1.666 E F1 .669(quoting in single quotes instead of)3.169 F
+(double quotes.)184 108 Q
+(If the string is not translated, this has no ef)5 E(fect.)-.25 E F2
+(nullglob)144 120 Q F1 1.581(If set, pathname e)184 132 R 1.581
+(xpansion patterns which match no \214les \(see)-.15 F F2 -.1(Pa)4.081 G
+1.581(thname Expansion).1 F F1(abo)184 144 Q -.15(ve)-.15 G 2.5(\)e).15
+G(xpand to nothing and are remo)-2.65 E -.15(ve)-.15 G(d, rather than e)
+.15 E(xpanding to themselv)-.15 E(es.)-.15 E F2(patsub_r)144 156 Q
+(eplacement)-.18 E F1 .106(If set,)184 168 R F2(bash)2.606 E F1 -.15(ex)
+2.606 G .106(pands occurrences of).15 F F2(&)2.606 E F1 .105
+(in the replacement string of pattern substitution to)2.606 F .527
+(the te)184 180 R .527(xt matched by the pattern, as described under)
+-.15 F F2 -.1(Pa)3.028 G .528(rameter Expansion).1 F F1(abo)3.028 E -.15
+(ve)-.15 G 5.528(.T).15 G(his)-5.528 E(option is enabled by def)184 192
+Q(ault.)-.1 E F2(pr)144 204 Q(ogcomp)-.18 E F1 .767
+(If set, enable the programmable completion f)184 216 R .766
+(acilities \(see)-.1 F F2(Pr)3.266 E .766(ogrammable Completion)-.18 F
+F1(abo)184 228 Q -.15(ve)-.15 G 2.5(\). This).15 F
+(option is enabled by def)2.5 E(ault.)-.1 E F2(pr)144 240 Q
+(ogcomp_alias)-.18 E F1 2.124
+(If set, and programmable completion is enabled,)184 252 R F2(bash)4.624
+E F1 2.124(treats a command name that)4.624 F(doesn')184 264 Q 3.11(th)
+-.18 G -2.25 -.2(av e)-3.11 H(an)3.31 E 3.11(yc)-.15 G .61
+(ompletions as a possible alias and attempts alias e)-3.11 F 3.11
+(xpansion. If)-.15 F .61(it has)3.11 F 1.473(an alias,)184 276 R F2
+(bash)3.973 E F1 1.473
+(attempts programmable completion using the command w)3.973 F 1.473
+(ord resulting)-.1 F(from the e)184 288 Q(xpanded alias.)-.15 E F2(pr)
+144 300 Q(omptv)-.18 E(ars)-.1 E F1 1.448(If set, prompt strings under)
+184 312 R 1.448(go parameter e)-.18 F 1.447
+(xpansion, command substitution, arithmetic)-.15 F -.15(ex)184 324 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/F3 9
+/Times-Bold@0 SF(PR)2.671 E(OMPTING)-.27 E F1(abo)2.421 E -.15(ve)-.15 G
+(.).15 E(This option is enabled by def)184 336 Q(ault.)-.1 E F2 -.18(re)
+144 348 S(stricted_shell).18 E F1 1.069
+(The shell sets this option if it is started in restricted mode \(see)
+184 360 R F3 1.069(RESTRICTED SHELL)3.569 F F1(belo)184 372 Q 2.86
+(w\). The)-.25 F -.25(va)2.86 G .36(lue may not be changed.).25 F .36
+(This is not reset when the startup \214les are e)5.36 F -.15(xe)-.15 G
+(-).15 E(cuted, allo)184 384 Q(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
+F2(shift_v)144 396 Q(erbose)-.1 E F1 .502(If set, the)184 408 R F2
+(shift)3.002 E F1 -.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 420 Q F2(sour)
+144 432 Q(cepath)-.18 E F1 .77(If set, the)184 444 R F2(.)3.27 E F1(\()
+3.27 E F2(sour)A(ce)-.18 E F1 3.27(\)b)C .77(uiltin uses the v)-3.47 F
+.771(alue of)-.25 F F3 -.666(PA)3.271 G(TH)-.189 E F1 .771
+(to \214nd the directory containing the)3.021 F .422
+(\214le supplied as an ar)184 456 R .422(gument when the)-.18 F F2<ad70>
+2.921 E F1 .421(option is not supplied.)2.921 F .421
+(This option is enabled)5.421 F(by def)184 468 Q(ault.)-.1 E F2 -.1(va)
+144 480 S(rr).1 E(edir_close)-.18 E F1 .74(If set, the shell automatica\
+lly closes \214le descriptors assigned using the)184 492 R F0({varname})
+3.24 E F1(redi-)3.24 E .424(rection syntax \(see)184 504 R F3
+(REDIRECTION)2.924 E F1(abo)2.674 E -.15(ve)-.15 G 2.924(\)i).15 G .424
+(nstead of lea)-2.924 F .424(ving them open when the com-)-.2 F
+(mand completes.)184 516 Q F2(xpg_echo)144 528 Q F1 .073(If set, the)184
+540 R F2(echo)2.574 E F1 -.2(bu)2.574 G .074(iltin e).2 F .074
+(xpands backslash-escape sequences by def)-.15 F 2.574(ault. If)-.1 F
+(the)2.574 E F2(posix)2.574 E F1(shell)2.574 E(option is also enabled,)
+184 552 Q F2(echo)2.5 E F1(does not interpret an)2.5 E 2.5(yo)-.15 G
+(ptions.)-2.5 E F2(suspend)108 568.8 Q F1([)2.5 E F2<ad66>A F1(])A .91
+(Suspend the e)144 580.8 R -.15(xe)-.15 G .91
+(cution of this shell until it recei).15 F -.15(ve)-.25 G 3.41(sa).15 G
+F3(SIGCONT)-.001 E F1 3.409(signal. A)3.159 F .909
+(login shell, or a shell)3.409 F 1.043
+(without job control enabled, cannot be suspended; the)144 592.8 R F2
+<ad66>3.543 E F1 1.043(option will o)3.543 F -.15(ve)-.15 G 1.044
+(rride this and force the).15 F 2.744(suspension. The)144 604.8 R .244(\
+return status is 0 unless the shell is a login shell or job control is \
+not enabled and)2.744 F F2<ad66>144 616.8 Q F1(is not supplied.)2.5 E F2
+(test)108 633.6 Q F0 -.2(ex)2.5 G(pr).2 E F2([)108 645.6 Q F0 -.2(ex)2.5
+G(pr).2 E F2(])2.5 E F1 .877(Return a status of 0 \(true\) or 1 \(f)144
+645.6 R .878(alse\) depending on the e)-.1 F -.25(va)-.25 G .878
+(luation of the conditional e).25 F(xpression)-.15 E F0 -.2(ex)144 657.6
+S(pr).2 E F1 5.53(.E).73 G .53
+(ach operator and operand must be a separate ar)-5.53 F 3.03
+(gument. Expressions)-.18 F .53(are composed of the)3.03 F 1.36
+(primaries described abo)144 669.6 R 1.66 -.15(ve u)-.15 H(nder).15 E F3
+(CONDITION)3.86 E 1.36(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A
+F2(test)5.86 E F1 1.361(does not accept an)3.86 F 3.861(yo)-.15 G(p-)
+-3.861 E(tions, nor does it accept and ignore an ar)144 681.6 Q
+(gument of)-.18 E F2<adad>2.5 E F1(as signifying the end of options.)2.5
+E .786(Expressions may be combined using the follo)144 698.4 R .785
+(wing operators, listed in decreasing order of prece-)-.25 F 2.93
+(dence. The)144 710.4 R -.25(eva)2.93 G .43
+(luation depends on the number of ar).25 F .43(guments; see belo)-.18 F
+-.65(w.)-.25 G F2(test)6.08 E F1 .43(uses operator prece-)2.93 F
+(dence when there are \214v)144 722.4 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G
+(ore ar)-2.5 E(guments.)-.18 E(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(88)185.955 E 0 Cg EP
+%%Page: 89 89
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E/F2 10/Times-Bold@0 SF(!)144 84 Q F0 -.2(ex)2.5 G
+(pr).2 E F1 -.35(Tr)180 84 S(ue if).35 E F0 -.2(ex)2.5 G(pr).2 E F1
+(is f)3.23 E(alse.)-.1 E F2(\()144 96 Q F0 -.2(ex)2.5 G(pr).2 E F2(\))
+2.5 E F1(Returns the v)180 96 Q(alue of)-.25 E F0 -.2(ex)2.5 G(pr).2 E
+F1 5(.T)C(his may be used to o)-5 E -.15(ve)-.15 G
+(rride normal operator precedence.).15 E F0 -.2(ex)144 108 S(pr1).2 E F1
+<ad>2.5 E F2(a)A F0 -.2(ex)2.5 G(pr2).2 E F1 -.35(Tr)180 120 S
+(ue if both).35 E F0 -.2(ex)2.5 G(pr1).2 E F1(and)2.5 E F0 -.2(ex)2.5 G
+(pr2).2 E F1(are true.)2.52 E F0 -.2(ex)144 132 S(pr1).2 E F1<ad>2.5 E
+F2(o)A F0 -.2(ex)2.5 G(pr2).2 E F1 -.35(Tr)180 144 S(ue if either).35 E
+F0 -.2(ex)2.5 G(pr1).2 E F1(or)2.5 E F0 -.2(ex)2.5 G(pr2).2 E F1
+(is true.)2.52 E F2(test)144 160.8 Q F1(and)2.5 E F2([)2.5 E F1 -.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 177.6 S -.18(rg)-2.5 G(uments).18 E(The e)
+180 189.6 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 201.6 S -.18
+(rg)-2.5 G(ument).18 E(The e)180 213.6 Q
+(xpression is true if and only if the ar)-.15 E(gument is not null.)-.18
+E 2.5(2a)144 225.6 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar)
+180 237.6 R .37(gument is)-.18 F F2(!)2.87 E F1 2.87(,t)C .37(he e)-2.87
+F .37(xpression is true if and only if the second ar)-.15 F .37
+(gument is null.)-.18 F .379(If the \214rst ar)180 249.6 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
+261.6 Q .553(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(,)A F1 .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 273.6 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 285.6 S -.18(rg)-2.5 G
+(uments).18 E .236(The follo)180 297.6 R .236
+(wing conditions are applied in the order listed.)-.25 F .236
+(If the second ar)5.236 F .236(gument is one of)-.18 F .855
+(the binary conditional operators listed abo)180 309.6 R 1.155 -.15
+(ve u)-.15 H(nder).15 E F3(CONDITION)3.355 E .855(AL EXPRESSIONS)-.18 F
+F4(,)A F1(the)3.104 E .578(result of the e)180 321.6 R .578(xpression i\
+s the result of the binary test using the \214rst and third ar)-.15 F
+(guments)-.18 E 1.333(as operands.)180 333.6 R(The)6.333 E F2<ad61>3.833
+E F1(and)3.833 E F2<ad6f>3.832 E F1 1.332
+(operators are considered binary operators when there are)3.832 F .558
+(three ar)180 345.6 R 3.058(guments. If)-.18 F .558(the \214rst ar)3.058
+F .558(gument is)-.18 F F2(!)3.058 E F1 3.058(,t)C .558(he v)-3.058 F
+.558(alue is the ne)-.25 F -.05(ga)-.15 G .558(tion of the tw).05 F
+(o-ar)-.1 E(gument)-.18 E .521(test using the second and third ar)180
+357.6 R 3.021(guments. If)-.18 F .521(the \214rst ar)3.021 F .52
+(gument is e)-.18 F(xactly)-.15 E F2(\()3.02 E F1 .52(and the third)3.02
+F(ar)180 369.6 Q .485(gument is e)-.18 F(xactly)-.15 E F2(\))2.985 E F1
+2.985(,t)C .485(he result is the one-ar)-2.985 F .485
+(gument test of the second ar)-.18 F 2.985(gument. Other)-.18 F(-)-.2 E
+(wise, the e)180 381.6 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(4a)144
+393.6 S -.18(rg)-2.5 G(uments).18 E .43(The follo)180 405.6 R .43
+(wing conditions are applied in the order listed.)-.25 F .429
+(If the \214rst ar)5.429 F .429(gument is)-.18 F F2(!)2.929 E F1 2.929
+(,t)C .429(he re-)-2.929 F 1.314(sult is the ne)180 417.6 R -.05(ga)-.15
+G 1.314(tion of the three-ar).05 F 1.314(gument e)-.18 F 1.314
+(xpression composed of the remaining ar)-.15 F(gu-)-.18 E 2.902
+(ments. If)180 429.6 R .402(the \214rst ar)2.902 F .401(gument is e)-.18
+F(xactly)-.15 E F2(\()2.901 E F1 .401(and the fourth ar)2.901 F .401
+(gument is e)-.18 F(xactly)-.15 E F2(\))2.901 E F1 2.901(,t)C .401
+(he result is)-2.901 F 1.235(the tw)180 441.6 R(o-ar)-.1 E 1.236
+(gument test of the second and third ar)-.18 F 3.736
+(guments. Otherwise,)-.18 F 1.236(the e)3.736 F 1.236(xpression is)-.15
+F(parsed and e)180 453.6 Q -.25(va)-.25 G
+(luated according to precedence using the rules listed abo).25 E -.15
+(ve)-.15 G(.).15 E 2.5(5o)144 465.6 S 2.5(rm)-2.5 G(ore ar)-2.5 E
+(guments)-.18 E 1.635(The e)180 477.6 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
+489.6 Q -.15(ve)-.15 G(.).15 E .163
+(When the shell is in posix mode, or if the e)144 506.4 R .163
+(xpression is part of the)-.15 F F2([[)2.663 E F1 .163(command, the)
+2.663 F F2(<)2.663 E F1(and)2.663 E F2(>)2.663 E F1(opera-)2.663 E .669
+(tors sort using the current locale.)144 518.4 R .669
+(If the shell is not in posix mode, the)5.669 F F2(test)3.169 E F1(and)
+3.169 E F2([)3.169 E F1 .668(commands sort)3.169 F(le)144 530.4 Q
+(xicographically using ASCII ordering.)-.15 E .006
+(The historical operator)144 547.2 R .006
+(-precedence parsing with 4 or more ar)-.2 F .006
+(guments can lead to ambiguities when)-.18 F .632
+(it encounters strings that look lik)144 559.2 R 3.132(ep)-.1 G 3.132
+(rimaries. The)-3.132 F .632(POSIX standard has deprecated the)3.132 F
+F2<ad61>3.132 E F1(and)3.132 E F2<ad6f>3.132 E F1 .885
+(primaries and enclosing e)144 571.2 R .886
+(xpressions within parentheses.)-.15 F .886
+(Scripts should no longer use them.)5.886 F(It')5.886 E(s)-.55 E .066
+(much more reliable to restrict test in)144 583.2 R -.2(vo)-.4 G .066
+(cations to a single primary).2 F 2.566(,a)-.65 G .066
+(nd to replace uses of)-2.566 F F2<ad61>2.566 E F1(and)2.566 E F2<ad6f>
+2.566 E F1(with the shell')144 595.2 Q(s)-.55 E F2(&&)2.5 E F1(and)2.5 E
+F2(||)2.5 E F1(list operators.)2.5 E F2(times)108 612 Q F1 1.229(Print \
+the accumulated user and system times for the shell and for processes r\
+un from the shell.)144 612 R(The return status is 0.)144 624 Q F2(trap)
+108 640.8 Q F1([)2.5 E F2(\255lpP)A F1 2.5(][)C([)-2.5 E F0(action)A F1
+(])A F0(sigspec)2.5 E F1 1.666(...)2.5 G(])-1.666 E(The)144 652.8 Q F0
+(action)4.332 E F1 1.501(is a command that is read and e)4.242 F -.15
+(xe)-.15 G 1.501(cuted when the shell recei).15 F -.15(ve)-.25 G 4.001
+(sa).15 G 1.801 -.15(ny o)-4.001 H 4.001(ft).15 G 1.501(he signals)
+-4.001 F F0(sigspec)144.34 664.8 Q F1 5.708(.I).31 G(f)-5.708 E F0
+(action)3.538 E F1 .709(is absent \(and there is a single)3.449 F F0
+(sigspec)3.209 E F1 3.209(\)o)C(r)-3.209 E F2<ad>3.209 E F1 3.209(,e)C
+.709(ach speci\214ed)-3.209 F F0(sigspec)3.209 E F1 .709(is reset to)
+3.209 F .293(the v)144 676.8 R .292(alue it had when the shell w)-.25 F
+.292(as started.)-.1 F(If)5.292 E F0(action)3.122 E F1 .292
+(is the null string the signal speci\214ed by each)3.032 F F0(sigspec)
+144.34 688.8 Q F1(is ignored by the shell and by the commands it in)2.81
+E -.2(vo)-.4 G -.1(ke).2 G(s.).1 E .165(If no ar)144 705.6 R .165
+(guments are supplied,)-.18 F F2(trap)2.665 E F1 .165
+(displays the actions associated with each trapped signal as a set)2.665
+F(of)144 717.6 Q F2(trap)2.57 E F1 .069(commands that can be reused as \
+shell input to restore the current signal dispositions.)2.57 F(If)5.069
+E F2<ad70>2.569 E F1 .473(is gi)144 729.6 R -.15(ve)-.25 G .473(n, and)
+.15 F F0(action)3.303 E F1 .473(is not present, then)3.213 F F2(trap)
+2.973 E F1 .473(displays the actions associated with each)2.973 F F0
+(sigspec)3.314 E F1(or)3.284 E(,)-.4 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(89)185.955 E 0 Cg EP
+%%Page: 90 90
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .364
+(if none are supplied, for all trapped signals, as a set of)144 84 R/F2
+10/Times-Bold@0 SF(trap)2.864 E F1 .363
+(commands that can be reused as shell)2.864 F .207
+(input to restore the current signal dispositions.)144 96 R(The)5.207 E
+F2<ad50>2.707 E F1 .207(option beha)2.707 F -.15(ve)-.2 G 2.707(ss).15 G
+(imilarly)-2.707 E 2.707(,b)-.65 G .208(ut displays only)-2.907 F 1.553
+(the actions associated with each)144 108 R F0(sigspec)4.052 E F1(ar)
+4.052 E(gument.)-.18 E F2<ad50>6.552 E F1 1.552(requires at least one)
+4.052 F F0(sigspec)4.052 E F1(ar)4.052 E(gument.)-.18 E(The)144 120 Q F2
+<ad50>2.779 E F1(or)2.779 E F2<ad70>2.779 E F1 .279
+(options may be used in a subshell en)2.779 F .28
+(vironment \(e.g., command substitution\) and, as)-.4 F .239
+(long as the)144 132 R 2.739(ya)-.15 G .239(re used before)-2.739 F F2
+(trap)2.739 E F1 .238(is used to change a signal')2.739 F 2.738(sh)-.55
+G .238(andling, will display the state of its)-2.738 F(parent')144 144 Q
+2.5(st)-.55 G(raps.)-2.5 E(The)144 160.8 Q F2<ad6c>2.515 E F1 .016
+(option prints a list of signal names and their corresponding numbers.)
+2.515 F(Each)5.016 E F0(sigspec)2.856 E F1 .016(is either)2.826 F 2.615
+(as)144 172.8 S .115(ignal name de\214ned in <)-2.615 F F0(signal.h)A F1
+.114(>, or a signal number)B 5.114(.S)-.55 G .114
+(ignal names are case insensiti)-5.114 F .414 -.15(ve a)-.25 H .114
+(nd the).15 F/F3 9/Times-Bold@0 SF(SIG)144 184.8 Q F1 .782
+(pre\214x is optional.)3.032 F(If)5.782 E F2<ad6c>3.282 E F1 .782
+(is supplied with no)3.282 F F0(sigspec)3.282 E F1(ar)3.282 E .783
+(guments, it prints a list of v)-.18 F .783(alid signal)-.25 F(names.)
+144 196.8 Q .017(If a)144 213.6 R F0(sigspec)2.857 E F1(is)2.827 E F3
+(EXIT)2.517 E F1(\(0\),)2.267 E F0(action)2.847 E F1 .017(is e)2.757 F
+-.15(xe)-.15 G .017(cuted on e).15 F .016(xit from the shell.)-.15 F
+.016(If a)5.016 F F0(sigspec)2.856 E F1(is)2.826 E F3(DEB)2.516 E(UG)
+-.09 E/F4 9/Times-Roman@0 SF(,)A F0(action)2.596 E F1(is)2.756 E -.15
+(exe)144 225.6 S .797(cuted before e).15 F -.15(ve)-.25 G(ry).15 E F0
+.797(simple command)3.297 F F1(,)A F0(for)3.297 E F1(command,)3.297 E F0
+(case)3.298 E F1(command,)3.298 E F0(select)3.298 E F1 .798
+(command, \(\( arith-)3.298 F .574
+(metic command, [[ conditional command, arithmetic)144 237.6 R F0(for)
+3.073 E F1 .573(command, and before the \214rst command)3.073 F -.15
+(exe)144 249.6 S 1.98(cutes in a shell function \(see).15 F F3 1.98
+(SHELL GRAMMAR)4.48 F F1(abo)4.23 E -.15(ve)-.15 G 4.48(\). Refer).15 F
+1.98(to the description of the)4.48 F F2(extdeb)144 261.6 Q(ug)-.2 E F1
+.385(shell option \(see)2.885 F F2(shopt)2.884 E F1(abo)2.884 E -.15(ve)
+-.15 G 2.884(\)f).15 G .384(or details of its ef)-2.884 F .384
+(fect on the)-.25 F F2(DEB)2.884 E(UG)-.1 E F1 2.884(trap. If)2.884 F(a)
+2.884 E F0(sigspec)3.224 E F1(is)144 273.6 Q F3(RETURN)2.802 E F4(,)A F0
+(action)2.882 E F1 .302(is e)3.042 F -.15(xe)-.15 G .302
+(cuted each time a shell function or a script e).15 F -.15(xe)-.15 G
+.303(cuted with the).15 F F2(.)2.803 E F1(or)2.803 E F2(sour)2.803 E(ce)
+-.18 E F1 -.2(bu)144 285.6 S(iltins \214nishes e).2 E -.15(xe)-.15 G
+(cuting.).15 E .349(If a)144 302.4 R F0(sigspec)3.189 E F1(is)3.159 E F3
+(ERR)2.849 E F4(,)A F0(action)2.929 E F1 .349(is e)3.089 F -.15(xe)-.15
+G .349(cuted whene).15 F -.15(ve)-.25 G 2.849(rap).15 G .349
+(ipeline \(which may consist of a single simple)-2.849 F .164
+(command\), a list, or a compound command returns a non\255zero e)144
+314.4 R .165(xit status, subject to the follo)-.15 F(wing)-.25 E 2.577
+(conditions. The)144 326.4 R F3(ERR)2.577 E F1 .077(trap is not e)2.327
+F -.15(xe)-.15 G .077(cuted if the f).15 F .076
+(ailed command is part of the command list imme-)-.1 F .506
+(diately follo)144 338.4 R .506(wing a)-.25 F F2(while)3.006 E F1(or)
+3.006 E F2(until)3.006 E F1 -.1(ke)3.006 G(yw)-.05 E .506
+(ord, part of the test in an)-.1 F F0(if)3.016 E F1 .506
+(statement, part of a command)4.966 F -.15(exe)144 350.4 S .807
+(cuted in a).15 F F2(&&)3.307 E F1(or)3.307 E F2(||)3.307 E F1 .807
+(list e)3.307 F .807(xcept the command follo)-.15 F .807
+(wing the \214nal)-.25 F F2(&&)3.307 E F1(or)3.307 E F2(||)3.307 E F1
+3.307(,a)C 1.106 -.15(ny c)-3.307 H .806(ommand in a).15 F .758
+(pipeline b)144 362.4 R .758(ut the last \(subject to the state of the)
+-.2 F F2(pipefail)3.258 E F1 .759(shell option\), or if the command')
+3.258 F 3.259(sr)-.55 G(eturn)-3.259 E -.25(va)144 374.4 S
+(lue is being in).25 E -.15(ve)-.4 G(rted using).15 E F2(!)2.5 E F1 5
+(.T)C(hese are the same conditions obe)-5 E(yed by the)-.15 E F2(err)2.5
+E(exit)-.18 E F1(\()2.5 E F2<ad65>A F1 2.5(\)o)C(ption.)-2.5 E .07
+(When the shell is not interacti)144 391.2 R -.15(ve)-.25 G 2.57(,s).15
+G .069
+(ignals ignored upon entry to the shell cannot be trapped or reset.)
+-2.57 F(Interacti)144 403.2 Q .951 -.15(ve s)-.25 H .651
+(hells permit trapping signals ignored on entry).15 F 5.651(.T)-.65 G
+.652(rapped signals that are not being ig-)-6.001 F .577
+(nored are reset to their original v)144 415.2 R .576
+(alues in a subshell or subshell en)-.25 F .576
+(vironment when one is created.)-.4 F(The return status is f)144 427.2 Q
+(alse if an)-.1 E(y)-.15 E F0(sigspec)2.84 E F1(is in)2.81 E -.25(va)-.4
+G(lid; otherwise).25 E F2(trap)2.5 E F1(returns true.)2.5 E F2(true)108
+444 Q F1(Does nothing, returns a 0 status.)144 444 Q F2(type)108 460.8 Q
+F1([)2.5 E F2(\255aftpP)A F1(])A F0(name)2.5 E F1([)2.5 E F0(name)A F1
+1.666(...)2.5 G(])-1.666 E(Indicate ho)144 472.8 Q 2.5(we)-.25 G(ach)
+-2.5 E F0(name)2.86 E F1 -.1(wo)2.68 G
+(uld be interpreted if used as a command name.).1 E .8(If the)144 489.6
+R F2<ad74>3.3 E F1 .8(option is used,)3.3 F F2(type)3.3 E F1 .801
+(prints a string which is one of)3.3 F F0(alias)3.631 E F1(,).27 E F0
+-.1(ke)3.301 G(ywor)-.2 E(d)-.37 E F1(,).77 E F0(function)5.271 E F1(,)
+.24 E F0 -.2(bu)3.301 G(iltin).2 E F1 3.301(,o).24 G(r)-3.301 E F0
+(\214le)145.91 501.6 Q F1(if)3.622 E F0(name)3.802 E F1 .942
+(is an alias, shell reserv)3.622 F .942(ed w)-.15 F .942
+(ord, function, b)-.1 F .942(uiltin, or e)-.2 F -.15(xe)-.15 G .942
+(cutable \214le, respecti).15 F -.15(ve)-.25 G(ly).15 E 5.942(.I)-.65 G
+(f)-5.942 E(the)144 513.6 Q F0(name)2.86 E F1(is not found,)2.68 E F2
+(type)2.5 E F1(prints nothing and returns a non-zero e)2.5 E
+(xit status.)-.15 E 1.482(If the)144 530.4 R F2<ad70>3.982 E F1 1.482
+(option is used,)3.982 F F2(type)3.982 E F1 1.482
+(either returns the pathname of the e)3.982 F -.15(xe)-.15 G 1.483
+(cutable \214le that w).15 F 1.483(ould be)-.1 F .441
+(found by searching)144 542.4 R F2($P)2.941 E -.95(AT)-.74 G(H).95 E F1
+(for)2.941 E F0(name)3.301 E F1 .441
+(or nothing if \231type \255t name\232 w)3.121 F .44(ould not return)-.1
+F F0(\214le)4.85 E F1 5.44(.T).18 G(he)-5.44 E F2<ad50>2.94 E F1 .205
+(option forces a)144 554.4 R F3 -.666(PA)2.705 G(TH)-.189 E F1 .205
+(search for each)2.455 F F0(name)2.705 E F1 2.705(,e)C -.15(ve)-2.955 G
+2.705(ni).15 G 2.706<6699>-2.705 G .206(type \255t name\232 w)-2.706 F
+.206(ould not return)-.1 F F0(\214le)4.616 E F1 5.206(.I).18 G(f)-5.206
+E F0(name)2.706 E F1 .242(is present in the table of hashed commands,)
+144 566.4 R F2<ad70>2.742 E F1(and)2.742 E F2<ad50>2.742 E F1 .241
+(print the hashed v)2.742 F .241(alue, which is not neces-)-.25 F
+(sarily the \214le that appears \214rst in)144 578.4 Q F3 -.666(PA)2.5 G
+(TH)-.189 E F4(.)A F1 .652(If the)144 595.2 R F2<ad61>3.152 E F1 .652
+(option is used,)3.152 F F2(type)3.153 E F1 .653
+(prints all of the places that contain a command named)3.153 F F0(name)
+3.513 E F1 5.653(.T).18 G(his)-5.653 E .736(includes aliases, reserv)144
+607.2 R .736(ed w)-.15 F .736(ords, functions, and b)-.1 F .736
+(uiltins, b)-.2 F .736(ut the path search options \()-.2 F F2<ad70>A F1
+(and)3.235 E F2<ad50>3.235 E F1(\))A .291
+(can be supplied to restrict the output to e)144 619.2 R -.15(xe)-.15 G
+.292(cutable \214les.).15 F F2(type)5.292 E F1 .292
+(does not consult the table of hashed)2.792 F(commands when using)144
+631.2 Q F2<ad61>2.5 E F1(with)2.5 E F2<ad70>2.5 E F1 2.5(,a)C
+(nd only performs a)-2.5 E F3 -.666(PA)2.5 G(TH)-.189 E F1(search for)
+2.25 E F0(name)2.5 E F1(.)A(The)144 648 Q F2<ad66>2.758 E F1 .257
+(option suppresses shell function lookup, as with the)2.758 F F2
+(command)2.757 E F1 -.2(bu)2.757 G(iltin.).2 E F2(type)5.257 E F1 .257
+(returns true if)2.757 F(all of the ar)144 660 Q(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
+676.8 Q F1([)2.5 E F2(\255HS)A F1(])A F2<ad61>2.5 E(ulimit)108 688.8 Q
+F1([)2.5 E F2(\255HS)A F1 2.5(][)C F2(\255bcde\214klmnpqrstuvxPR)-2.5 E
+(T)-.4 E F1([)2.5 E F0(limit)A F1(]])A(Pro)144 700.8 Q .278
+(vides control o)-.15 F -.15(ve)-.15 G 2.778(rt).15 G .278
+(he resources a)-2.778 F -.25(va)-.2 G .278
+(ilable to the shell and to processes it starts, on systems that).25 F
+(allo)144 712.8 Q 2.5(ws)-.25 G(uch control.)-2.5 E(GNU Bash 5.3)72 768
+Q(2024 December 12)136.795 E(90)185.955 E 0 Cg EP
+%%Page: 91 91
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(The)144 84 Q/F2 10/Times-Bold@0 SF<ad48>2.694 E F1
+(and)2.694 E F2<ad53>2.694 E F1 .193
+(options specify whether the hard or soft limit is set for the gi)2.693
+F -.15(ve)-.25 G 2.693(nr).15 G 2.693(esource. A)-2.693 F(hard)2.693 E
+.497(limit cannot be increased by a non-root user once it is set; a sof\
+t limit may be increased up to the)144 96 R -.25(va)144 108 S
+(lue of the hard limit.).25 E(If neither)5 E F2<ad48>2.5 E F1(nor)2.5 E
+F2<ad53>2.5 E F1(is speci\214ed,)2.5 E F2(ulimit)2.5 E F1
+(sets both the soft and hard limits.)2.5 E .402(The v)144 124.8 R .402
+(alue of)-.25 F F0(limit)2.992 E F1 .402(can be a number in the unit sp\
+eci\214ed for the resource or one of the special v)3.582 F(al-)-.25 E
+(ues)144 136.8 Q F2(hard)3.018 E F1(,)A F2(soft)3.018 E F1 3.018(,o)C(r)
+-3.018 E F2(unlimited)3.018 E F1 3.018(,w)C .518
+(hich stand for the current hard limit, the current soft limit, and no)
+-3.018 F 1.056(limit, respecti)144 148.8 R -.15(ve)-.25 G(ly).15 E 6.056
+(.I)-.65 G(f)-6.056 E F0(limit)3.646 E F1 1.056(is omitted,)4.236 F F2
+(ulimit)3.555 E F1 1.055(prints the current v)3.555 F 1.055
+(alue of the soft limit of the re-)-.25 F .636(source, unless the)144
+160.8 R F2<ad48>3.137 E F1 .637(option is gi)3.137 F -.15(ve)-.25 G
+3.137(n. When).15 F .637
+(more than one resource is speci\214ed, the limit name)3.137 F
+(and unit, if appropriate, are printed before the v)144 172.8 Q 2.5
+(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F2
+<ad61>144 184.8 Q F1(Report all current limits; no limits are set.)180
+184.8 Q F2<ad62>144 196.8 Q F1(The maximum sock)180 196.8 Q(et b)-.1 E
+(uf)-.2 E(fer size.)-.25 E F2<ad63>144 208.8 Q F1
+(The maximum size of core \214les created.)180 208.8 Q F2<ad64>144 220.8
+Q F1(The maximum size of a process')180 220.8 Q 2.5(sd)-.55 G(ata se)
+-2.5 E(gment.)-.15 E F2<ad65>144 232.8 Q F1
+(The maximum scheduling priority \(\231nice\232\).)180 232.8 Q F2<ad66>
+144 244.8 Q F1
+(The maximum size of \214les written by the shell and its children.)180
+244.8 Q F2<ad69>144 256.8 Q F1(The maximum number of pending signals.)
+180 256.8 Q F2<ad6b>144 268.8 Q F1
+(The maximum number of kqueues that may be allocated.)180 268.8 Q F2
+<ad6c>144 280.8 Q F1(The maximum size that may be lock)180 280.8 Q
+(ed into memory)-.1 E(.)-.65 E F2<ad6d>144 292.8 Q F1
+(The maximum resident set size \(man)180 292.8 Q 2.5(ys)-.15 G
+(ystems do not honor this limit\).)-2.5 E F2<ad6e>144 304.8 Q F1 .791(T\
+he maximum number of open \214le descriptors \(most systems do not allo)
+180 304.8 R 3.29(wt)-.25 G .79(his v)-3.29 F .79(alue to)-.25 F
+(be set\).)180 316.8 Q F2<ad70>144 328.8 Q F1
+(The pipe size in 512-byte blocks \(this may not be set\).)180 328.8 Q
+F2<ad71>144 340.8 Q F1
+(The maximum number of bytes in POSIX message queues.)180 340.8 Q F2
+<ad72>144 352.8 Q F1(The maximum real-time scheduling priority)180 352.8
+Q(.)-.65 E F2<ad73>144 364.8 Q F1(The maximum stack size.)180 364.8 Q F2
+<ad74>144 376.8 Q F1(The maximum amount of cpu time in seconds.)180
+376.8 Q F2<ad75>144 388.8 Q F1(The maximum number of processes a)180
+388.8 Q -.25(va)-.2 G(ilable to a single user).25 E(.)-.55 E F2<ad76>144
+400.8 Q F1 .47(The maximum amount of virtual memory a)180 400.8 R -.25
+(va)-.2 G .47(ilable to the shell and, on some systems, to).25 F
+(its children.)180 412.8 Q F2<ad78>144 424.8 Q F1
+(The maximum number of \214le locks.)180 424.8 Q F2<ad50>144 436.8 Q F1
+(The maximum number of pseudoterminals.)180 436.8 Q F2<ad52>144 448.8 Q
+F1(The maximum time a real-time process can run before blocking, in mic\
+roseconds.)180 448.8 Q F2<ad54>144 460.8 Q F1
+(The maximum number of threads.)180 460.8 Q(If)144 477.6 Q F0(limit)
+3.062 E F1 .471(is supplied, and the)3.651 F F2<ad61>2.971 E F1 .471
+(option is not used,)2.971 F F0(limit)2.971 E F1 .471(is the ne)2.971 F
+2.971(wv)-.25 G .471(alue of the speci\214ed resource.)-3.221 F
+(If no option is supplied, then)144 489.6 Q F2<ad66>2.5 E F1
+(is assumed.)2.5 E -1.11(Va)144 506.4 S .388
+(lues are in 1024-byte increments, e)1.11 F .388(xcept for)-.15 F F2
+<ad74>2.888 E F1 2.888(,w)C .388(hich is in seconds;)-2.888 F F2<ad52>
+2.888 E F1 2.888(,w)C .389(hich is in microsec-)-2.888 F(onds;)144 518.4
+Q F2<ad70>3.287 E F1 3.287(,w)C .787
+(hich is in units of 512-byte blocks;)-3.287 F F2<ad50>3.287 E F1(,)A F2
+<ad54>3.287 E F1(,)A F2<ad62>3.287 E F1(,)A F2<ad6b>3.287 E F1(,)A F2
+<ad6e>3.286 E F1 3.286(,a)C(nd)-3.286 E F2<ad75>3.286 E F1 3.286(,w)C
+.786(hich are unscaled)-3.286 F -.25(va)144 530.4 S .498
+(lues; and, when in posix mode,).25 F F2<ad63>2.998 E F1(and)2.998 E F2
+<ad66>2.998 E F1 2.998(,w)C .498(hich are in 512-byte increments.)-2.998
+F .499(The return status)5.498 F(is 0 unless an in)144 542.4 Q -.25(va)
+-.4 G(lid option or ar).25 E
+(gument is supplied, or an error occurs while setting a ne)-.18 E 2.5
+(wl)-.25 G(imit.)-2.5 E F2(umask)108 559.2 Q F1([)2.5 E F2<ad70>A F1 2.5
+(][)C F2<ad53>-2.5 E F1 2.5(][)C F0(mode)-2.5 E F1(])A .792
+(Set the user \214le-creation mask to)144 571.2 R F0(mode)3.672 E F1
+5.792(.I).18 G(f)-5.792 E F0(mode)3.672 E F1(be)3.472 E .791
+(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 583.2 R F0 -.15(ch)2.566 G(mod).15 E F1(\(1\).).77 E(If)144
+595.2 Q F0(mode)3.032 E F1 .152(is omitted,)2.832 F F2(umask)2.652 E F1
+.152(prints the current v)2.652 F .152(alue of the mask.)-.25 F(The)
+5.152 E F2<ad53>2.651 E F1 .151(option without a)2.651 F F0(mode)2.651 E
+F1(ar)2.651 E(-)-.2 E .394
+(gument prints the mask in a symbolic format; the def)144 607.2 R .394
+(ault output is an octal number)-.1 F 5.394(.I)-.55 G 2.894(ft)-5.394 G
+(he)-2.894 E F2<ad70>2.894 E F1(op-)2.894 E .329(tion is supplied, and)
+144 619.2 R F0(mode)3.209 E F1 .329
+(is omitted, the output is in a form that may be reused as input.)3.009
+F .329(The re-)5.329 F .15(turn status is zero if the mode w)144 631.2 R
+.151(as successfully changed or if no)-.1 F F0(mode)2.651 E F1(ar)2.651
+E .151(gument w)-.18 F .151(as supplied, and)-.1 F(non-zero otherwise.)
+144 643.2 Q F2(unalias)108 660 Q F1<5bad>2.5 E F2(a)A F1 2.5(][)C F0
+(name)-2.5 E F1 1.666(...)2.5 G(])-1.666 E(Remo)144 672 Q .707 -.15
+(ve e)-.15 H(ach).15 E F0(name)2.907 E F1 .406
+(from the list of de\214ned aliases.)2.907 F(If)5.406 E F2<ad61>2.906 E
+F1 .406(is supplied, remo)2.906 F .706 -.15(ve a)-.15 H .406
+(ll alias de\214nitions.).15 F(The return v)144 684 Q
+(alue is true unless a supplied)-.25 E F0(name)2.86 E F1
+(is not a de\214ned alias.)2.68 E F2(unset)108 700.8 Q F1<5bad>2.5 E F2
+(fv)A F1 2.5(][)C<ad>-2.5 E F2(n)A F1 2.5(][)C F0(name)-2.5 E F1 1.666
+(...)2.5 G(])-1.666 E -.15(Fo)144 712.8 S 3.803(re).15 G(ach)-3.803 E F0
+(name)4.163 E F1 3.803(,r).18 G(emo)-3.803 E 1.603 -.15(ve t)-.15 H
+1.303(he corresponding v).15 F 1.303(ariable or function.)-.25 F 1.303
+(If the)6.303 F F2<ad76>3.804 E F1 1.304(option is gi)3.804 F -.15(ve)
+-.25 G 1.304(n, each).15 F F0(name)144.36 724.8 Q F1 .069
+(refers to a shell v)2.749 F .069(ariable, and that v)-.25 F .069
+(ariable is remo)-.25 F -.15(ve)-.15 G 2.569(d. If).15 F F2<ad66>2.569 E
+F1 .069(is speci\214ed, each)2.569 F F0(name)2.929 E F1 .068(refers to)
+2.748 F(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(91)185.955 E 0
+Cg EP
+%%Page: 92 92
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E 2.565(as)144 84 S .065
+(hell function, and the function de\214nition is remo)-2.565 F -.15(ve)
+-.15 G 2.566(d. If).15 F(the)2.566 E/F2 10/Times-Bold@0 SF<ad6e>2.566 E
+F1 .066(option is supplied, and)2.566 F F0(name)2.566 E F1 .066(is a)
+2.566 F -.25(va)144 96 S .875(riable with the).25 F F0(namer)3.375 E(ef)
+-.37 E F1(attrib)3.375 E(ute,)-.2 E F0(name)3.375 E F1 .875
+(will be unset rather than the v)3.375 F .874(ariable it references.)
+-.25 F F2<ad6e>5.874 E F1 1.216(has no ef)144 108 R 1.216(fect if the)
+-.25 F F2<ad66>3.716 E F1 1.216(option is supplied.)3.716 F 1.216
+(Read-only v)6.216 F 1.217(ariables and functions may not be unset.)-.25
+F .714(When v)144 120 R .714(ariables or functions are remo)-.25 F -.15
+(ve)-.15 G .714(d, the).15 F 3.214(ya)-.15 G .714(re also remo)-3.214 F
+-.15(ve)-.15 G 3.213(df).15 G .713(rom the en)-3.213 F .713
+(vironment passed to)-.4 F 1.003(subsequent commands.)144 132 R 1.003
+(If no options are supplied, each)6.003 F F0(name)3.503 E F1 1.003
+(refers to a v)3.503 F 1.003(ariable; if there is no)-.25 F -.25(va)144
+144 S .177(riable by that name, a function with that name, if an).25 F
+1.477 -.65(y, i)-.15 H 2.677(su).65 G 2.676(nset. Some)-2.677 F .176
+(shell v)2.676 F .176(ariables may not be)-.25 F 2.804(unset. If)144 156
+R(an)2.804 E 2.804(yo)-.15 G(f)-2.804 E/F3 9/Times-Bold@0 SF -.27(BA)
+2.804 G(SH_ALIASES).27 E/F4 9/Times-Roman@0 SF(,)A F3 -.27(BA)2.554 G
+(SH_ARGV0).27 E F4(,)A F3 -.27(BA)2.554 G(SH_CMDS).27 E F4(,)A F3 -.27
+(BA)2.555 G(SH_COMMAND).27 E F4(,)A F3 -.27(BA)2.555 G(SH_SUB-).27 E
+(SHELL)144 168 Q F4(,)A F3 -.27(BA)2.79 G(SHPID).27 E F4(,)A F3(COMP_W)
+2.79 E(ORDBREAKS)-.09 E F4(,)A F3(DIRST)2.79 E -.495(AC)-.81 G(K).495 E
+F4(,)A F3(EPOCHREAL)2.79 E(TIME)-.828 E F4(,)A F3(EPOCHSECONDS)2.79 E F4
+(,)A F3(FUNCN)144 180 Q(AME)-.18 E F4(,)A F3(GR)4.367 E(OUPS)-.27 E F4
+(,)A F3(HISTCMD)4.368 E F4(,)A F3(LINENO)4.368 E F4(,)A F3(RANDOM)4.368
+E F4(,)A F3(SECONDS)4.368 E F4(,)A F1(or)4.368 E F3(SRANDOM)4.618 E F1
+2.118(are unset,)4.368 F(the)144 192 Q 2.742(yl)-.15 G .242
+(ose their special properties, e)-2.742 F -.15(ve)-.25 G 2.741(ni).15 G
+2.741(ft)-2.741 G(he)-2.741 E 2.741(ya)-.15 G .241
+(re subsequently reset.)-2.741 F .241(The e)5.241 F .241
+(xit status is true unless)-.15 F(a)144 204 Q F0(name)2.86 E F1
+(is readonly or may not be unset.)2.68 E F2(wait)108 220.8 Q F1([)2.5 E
+F2(\255fn)A F1 2.5(][)C F2<ad70>-2.5 E F0(varname)2.5 E F1 2.5(][)C F0
+(id)-2.5 E F1 1.666(...)2.5 G(])-1.666 E -.8(Wa)144 232.8 S 1.008
+(it for each speci\214ed child process).8 F F0(id)3.508 E F1 1.008
+(and return the termination status of the last)3.508 F F0(id)3.509 E F1
+6.009(.E)C(ach)-6.009 E F0(id)3.509 E F1 .5(may be a process ID)144
+244.8 R F0(pid)3 E F1 .5(or a job speci\214cation)3 F F0(jobspec)2.999 E
+F1 2.999(;i)C 2.999(faj)-2.999 G .499(obspec is supplied,)-2.999 F F2
+(wait)2.999 E F1 -.1(wa)2.999 G .499(its for all).1 F
+(processes in the job)144 256.8 Q(.)-.4 E .386(If no options or)144
+273.6 R F0(id)2.886 E F1 2.886(sa)C .386(re supplied,)-2.886 F F2(wait)
+2.886 E F1 -.1(wa)2.886 G .386
+(its for all running background jobs and the last-e).1 F -.15(xe)-.15 G
+(cuted).15 E(process substitution, if its process id is the same as)144
+285.6 Q F2($!)2.5 E F1 2.5(,a)C(nd the return status is zero.)-2.5 E .47
+(If the)144 302.4 R F2<ad6e>2.97 E F1 .47(option is supplied,)2.97 F F2
+(wait)2.97 E F1 -.1(wa)2.97 G .47(its for an).1 F 2.97(yo)-.15 G .47
+(ne of the gi)-2.97 F -.15(ve)-.25 G(n).15 E F0(id)2.97 E F1 2.97(so)C
+1.27 -.4(r, i)-2.97 H 2.97(fn).4 G(o)-2.97 E F0(id)2.97 E F1 2.97(sa)C
+.47(re supplied, an)-2.97 F(y)-.15 E .481
+(job or process substitution, to complete and returns its e)144 314.4 R
+.482(xit status.)-.15 F .482(If none of the supplied)5.482 F F0(id)2.982
+E F1 2.982(si)C 2.982(sa)-2.982 G .376(child of the shell, or if no)144
+326.4 R F0(id)2.876 E F1 2.876(sa)C .376
+(re supplied and the shell has no unw)-2.876 F .375
+(aited-for children, the e)-.1 F .375(xit sta-)-.15 F(tus is 127.)144
+338.4 Q .346(If the)144 355.2 R F2<ad70>2.846 E F1 .347
+(option is supplied,)2.846 F F2(wait)2.847 E F1 .347
+(assigns the process or job identi\214er of the job for which the e)
+2.847 F(xit)-.15 E .006(status is returned to the v)144 367.2 R(ariable)
+-.25 E F0(varname)2.506 E F1 .006(named by the option ar)2.506 F 2.506
+(gument. The)-.18 F -.25(va)2.506 G .006(riable, which can-).25 F .224
+(not be readonly)144 379.2 R 2.724(,w)-.65 G .224
+(ill be unset initially)-2.724 F 2.724(,b)-.65 G .224(efore an)-2.724 F
+2.724(ya)-.15 G 2.724(ssignment. This)-2.724 F .225
+(is useful only when used with)2.725 F(the)144 391.2 Q F2<ad6e>2.5 E F1
+(option.)2.5 E .533(Supplying the)144 408 R F2<ad66>3.033 E F1 .533
+(option, when job control is enabled, forces)3.033 F F2(wait)3.033 E F1
+.533(to w)3.033 F .533(ait for each)-.1 F F0(id)3.033 E F1 .532
+(to terminate)3.033 F(before returning its status, instead of returning\
+ when it changes status.)144 420 Q .311(If none of the)144 436.8 R F0
+(id)2.811 E F1 2.811(ss)C .311(pecify one of the shell')-2.811 F 2.811
+(sa)-.55 G(cti)-2.811 E .611 -.15(ve c)-.25 H .311
+(hild processes, the return status is 127.).15 F(If)5.311 E F2(wait)
+2.812 E F1 .153(is interrupted by a signal, an)144 448.8 R(y)-.15 E F0
+(varname)2.653 E F1 .153
+(will remain unset, and the return status will be greater than)2.653 F
+.21(128, as described under)144 460.8 R F2(SIGN)2.71 E(ALS)-.2 E F1(abo)
+2.71 E -.15(ve)-.15 G 5.21(.O).15 G .21
+(therwise, the return status is the e)-5.21 F .21
+(xit status of the last)-.15 F F0(id)144 472.8 Q F1(.)A/F5 10.95
+/Times-Bold@0 SF(SHELL COMP)72 489.6 Q -1.04(AT)-.81 G(IBILITY MODE)1.04
+E F1 1.355(Bash-4.0 introduced the concept of a)108 501.6 R F0 1.355
+(shell compatibility le)3.855 F(vel)-.15 E F1 3.855(,s)C 1.354
+(peci\214ed as a set of options to the shopt)-3.855 F -.2(bu)108 513.6 S
+.621(iltin \().2 F F2(compat31)A F1(,)A F2(compat32)3.121 E F1(,)A F2
+(compat40)3.121 E F1(,)A F2(compat41)3.121 E F1 3.121(,a)C .621
+(nd so on\).)-3.121 F .622(There is only one current compatibility)5.622
+F(le)108 525.6 Q -.15(ve)-.25 G 3.058<6c8a>.15 G .557
+(each option is mutually e)-.001 F(xclusi)-.15 E -.15(ve)-.25 G 5.557
+(.T).15 G .557(he compatibility le)-5.557 F -.15(ve)-.25 G 3.057(li).15
+G 3.057(si)-3.057 G .557(ntended to allo)-3.057 F 3.057(wu)-.25 G .557
+(sers to select be-)-3.057 F(ha)108 537.6 Q 1.083(vior from pre)-.2 F
+1.083(vious v)-.25 F 1.083(ersions that is incompatible with ne)-.15 F
+1.083(wer v)-.25 F 1.083(ersions while the)-.15 F 3.584(ym)-.15 G 1.084
+(igrate scripts to use)-3.584 F(current features and beha)108 549.6 Q
+(vior)-.2 E 5(.I)-.55 G(t')-5 E 2.5(si)-.55 G
+(ntended to be a temporary solution.)-2.5 E 1.457
+(This section does not mention beha)108 566.4 R 1.457
+(vior that is standard for a particular v)-.2 F 1.456
+(ersion \(e.g., setting)-.15 F F2(compat32)3.956 E F1 .445
+(means that quoting the right hand side of the re)108 578.4 R(ge)-.15 E
+.446(xp matching operator quotes special re)-.15 F(ge)-.15 E .446
+(xp characters in)-.15 F(the w)108 590.4 Q(ord, which is def)-.1 E
+(ault beha)-.1 E(vior in bash-3.2 and subsequent v)-.2 E(ersions\).)-.15
+E .523(If a user enables, say)108 607.2 R(,)-.65 E F2(compat32)3.023 E
+F1 3.023(,i)C 3.023(tm)-3.023 G .523(ay af)-3.023 F .523(fect the beha)
+-.25 F .523(vior of other compatibility le)-.2 F -.15(ve)-.25 G .522
+(ls up to and includ-).15 F .259(ing the current compatibility le)108
+619.2 R -.15(ve)-.25 G 2.759(l. The).15 F .259
+(idea is that each compatibility le)2.759 F -.15(ve)-.25 G 2.76(lc).15 G
+.26(ontrols beha)-2.76 F .26(vior that changed)-.2 F 1.646(in that v)108
+631.2 R 1.646(ersion of)-.15 F F2(bash)4.146 E F1 4.146(,b)C 1.646
+(ut that beha)-4.346 F 1.646(vior may ha)-.2 F 1.946 -.15(ve b)-.2 H
+1.646(een present in earlier v).15 F 4.146(ersions. F)-.15 F 1.645
+(or instance, the)-.15 F .76
+(change to use locale-based comparisons with the)108 643.2 R F2([[)3.261
+E F1 .761(command came in bash-4.1, and earlier v)3.261 F .761
+(ersions used)-.15 F 1.905(ASCII-based comparisons, so enabling)108
+655.2 R F2(compat32)4.405 E F1 1.904
+(will enable ASCII-based comparisons as well.)4.405 F(That)6.904 E .295
+(granularity may not be suf)108 667.2 R .296
+(\214cient for all uses, and as a result users should emplo)-.25 F 2.796
+(yc)-.1 G .296(ompatibility le)-2.796 F -.15(ve)-.25 G .296(ls care-).15
+F(fully)108 679.2 Q 5(.R)-.65 G(ead the documentation for a particular \
+feature to \214nd out the current beha)-5 E(vior)-.2 E(.)-.55 E .532
+(Bash-4.3 introduced a ne)108 696 R 3.032(ws)-.25 G .531(hell v)-3.032 F
+(ariable:)-.25 E F3 -.27(BA)3.031 G(SH_COMP).27 E -.855(AT)-.666 G F4(.)
+.855 E F1 .531(The v)5.031 F .531(alue assigned to this v)-.25 F .531
+(ariable \(a decimal)-.25 F -.15(ve)108 708 S .107(rsion number lik).15
+F 2.607(e4)-.1 G .107(.2, or an inte)-2.607 F .107
+(ger corresponding to the)-.15 F F2(compat)2.608 E F0(NN)A F1 .108
+(option, lik)2.608 F 2.608(e4)-.1 G .108(2\) determines the com-)-2.608
+F(patibility le)108 720 Q -.15(ve)-.25 G(l.).15 E(GNU Bash 5.3)72 768 Q
+(2024 December 12)136.795 E(92)185.955 E 0 Cg EP
+%%Page: 93 93
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E .734(Starting with bash-4.4,)108 84 R/F2 10
+/Times-Bold@0 SF(bash)3.233 E F1(be)3.233 E -.05(ga)-.15 G 3.233(nd).05
+G .733(eprecating older compatibility le)-3.233 F -.15(ve)-.25 G 3.233
+(ls. Ev).15 F(entually)-.15 E 3.233(,t)-.65 G .733(he options will be)
+-3.233 F(remo)108 96 Q -.15(ve)-.15 G 2.5(di).15 G 2.5(nf)-2.5 G -.2
+(avo)-2.6 G 2.5(ro).2 G(f)-2.5 E/F3 9/Times-Bold@0 SF -.27(BA)2.5 G
+(SH_COMP).27 E -.855(AT)-.666 G/F4 9/Times-Roman@0 SF(.).855 E F1 1.44
+(Bash-5.0 w)108 112.8 R 1.44(as the \214nal v)-.1 F 1.44
+(ersion for which there w)-.15 F 1.441(as an indi)-.1 F 1.441
+(vidual shopt option for the pre)-.25 F 1.441(vious v)-.25 F(ersion.)
+-.15 E F3 -.27(BA)108 124.8 S(SH_COMP).27 E -.855(AT)-.666 G F1
+(is the only mechanism to control the compatibility le)3.105 E -.15(ve)
+-.25 G 2.5(li).15 G 2.5(nv)-2.5 G(ersions ne)-2.65 E(wer than bash-5.0.)
+-.25 E 1.614(The follo)108 141.6 R 1.613(wing table describes the beha)
+-.25 F 1.613(vior changes controlled by each compatibility le)-.2 F -.15
+(ve)-.25 G 4.113(ls).15 G 4.113(etting. The)-4.113 F F2(compat)108 153.6
+Q F0(NN)A F1 1.186
+(tag is used as shorthand for setting the compatibility le)3.685 F -.15
+(ve)-.25 G 3.686(lt).15 G(o)-3.686 E F0(NN)3.686 E F1 1.186
+(using one of the follo)3.686 F(wing)-.25 E 3.807(mechanisms. F)108
+165.6 R 1.307(or v)-.15 F 1.307
+(ersions prior to bash-5.0, the compatibility le)-.15 F -.15(ve)-.25 G
+3.806(lm).15 G 1.306(ay be set using the corresponding)-3.806 F F2
+(compat)108 177.6 Q F0(NN)A F1 .502(shopt option.)3.002 F -.15(Fo)5.502
+G 3.002(rb).15 G .502(ash-4.3 and later v)-3.002 F .502(ersions, the)
+-.15 F F3 -.27(BA)3.002 G(SH_COMP).27 E -.855(AT)-.666 G F1 -.25(va)
+3.607 G .502(riable is preferred, and it).25 F
+(is required for bash-5.1 and later v)108 189.6 Q(ersions.)-.15 E F2
+(compat31)108 206.4 Q F1<83>144 218.4 Q(Quoting the rhs of the)180 218.4
+Q F2([[)2.5 E F1(command')2.5 E 2.5(sr)-.55 G -.15(eg)-2.5 G -.15(ex).15
+G 2.5(pm).15 G(atching operator \(=\001\) has no special ef)-2.5 E
+(fect.)-.25 E F2(compat32)108 235.2 Q F1<83>144 247.2 Q(The)180 247.2 Q
+F2(<)3.251 E F1(and)3.251 E F2(>)3.251 E F1 .751(operators to the)3.251
+F F2([[)3.251 E F1 .75
+(command do not consider the current locale when com-)3.251 F
+(paring strings; the)180 259.2 Q 2.5(yu)-.15 G(se ASCII ordering.)-2.5 E
+F2(compat40)108 276 Q F1<83>144 288 Q(The)180 288 Q F2(<)3.25 E F1(and)
+3.25 E F2(>)3.25 E F1 .75(operators to the)3.25 F F2([[)3.251 E F1 .751
+(command do not consider the current locale when com-)3.251 F .496
+(paring strings; the)180 300 R 2.996(yu)-.15 G .496(se ASCII ordering.)
+-2.996 F F2(Bash)5.495 E F1 -.15(ve)2.995 G .495
+(rsions prior to bash-4.1 use ASCII col-).15 F 1.173(lation and)180 312
+R F0(str)4.013 E(cmp)-.37 E F1 1.173
+(\(3\); bash-4.1 and later use the current locale').19 F 3.674(sc)-.55 G
+1.174(ollation sequence and)-3.674 F F0(str)180.34 324 Q(coll)-.37 E F1
+(\(3\).).51 E F2(compat41)108 340.8 Q F1<83>144 352.8 Q(In)180 352.8 Q
+F0(posix)3.754 E F1(mode,)3.754 E F2(time)3.754 E F1 1.254(may be follo)
+3.754 F 1.253(wed by options and still be recognized as a reserv)-.25 F
+(ed)-.15 E -.1(wo)180 364.8 S(rd \(this is POSIX interpretation 267\).)
+.1 E<83>144 376.8 Q(In)180 376.8 Q F0(posix)2.673 E F1 .174
+(mode, the parser requires that an e)2.673 F -.15(ve)-.25 G 2.674(nn).15
+G .174(umber of single quotes occur in the)-2.674 F F0(wor)2.674 E(d)
+-.37 E F1 .282(portion of a double-quoted parameter e)180 388.8 R .282
+(xpansion and treats them specially)-.15 F 2.781(,s)-.65 G 2.781(ot)
+-2.781 G .281(hat charac-)-2.781 F(ters within the single quotes are co\
+nsidered quoted \(this is POSIX interpretation 221\).)180 400.8 Q F2
+(compat42)108 417.6 Q F1<83>144 429.6 Q .753(The replacement string in \
+double-quoted pattern substitution does not under)180 429.6 R .753
+(go quote re-)-.18 F(mo)180 441.6 Q -.25(va)-.15 G(l, as it does in v)
+.25 E(ersions after bash-4.2.)-.15 E<83>144 453.6 Q .514
+(In posix mode, single quotes are considered special when e)180 453.6 R
+.514(xpanding the)-.15 F F0(wor)3.014 E(d)-.37 E F1 .513(portion of)
+3.013 F 3.39(ad)180 465.6 S .89(ouble-quoted parameter e)-3.39 F .89
+(xpansion and can be used to quote a closing brace or other)-.15 F 2.355
+(special character \(this is part of POSIX interpretation 221\); in lat\
+er v)180 477.6 R 2.355(ersions, single)-.15 F
+(quotes are not special within double-quoted w)180 489.6 Q(ord e)-.1 E
+(xpansions.)-.15 E F2(compat43)108 506.4 Q F1<83>144 518.4 Q -.8(Wo)180
+518.4 S .374(rd e).8 F .374(xpansion errors are considered non-f)-.15 F
+.374(atal errors that cause the current command to)-.1 F -.1(fa)180
+530.4 S .605(il, e).1 F -.15(ve)-.25 G 3.105(ni).15 G 3.105(np)-3.105 G
+.605(osix mode \(the def)-3.105 F .605(ault beha)-.1 F .605
+(vior is to mak)-.2 F 3.105(et)-.1 G .605(hem f)-3.105 F .605
+(atal errors that cause the)-.1 F(shell to e)180 542.4 Q(xit\).)-.15 E
+<83>144 554.4 Q .195(When e)180 554.4 R -.15(xe)-.15 G .196
+(cuting a shell function, the loop state \(while/until/etc.\)).15 F .196
+(is not reset, so)5.196 F F2(br)2.696 E(eak)-.18 E F1(or)2.696 E F2
+(continue)180 566.4 Q F1 1.167
+(in that function will break or continue loops in the calling conte)
+3.667 F 3.666(xt. Bash-4.4)-.15 F(and later reset the loop state to pre)
+180 578.4 Q -.15(ve)-.25 G(nt this.).15 E F2(compat44)108 595.2 Q F1<83>
+144 607.2 Q .481(The shell sets up the v)180 607.2 R .481(alues used by)
+-.25 F F3 -.27(BA)2.981 G(SH_ARGV).27 E F1(and)2.731 E F3 -.27(BA)2.981
+G(SH_ARGC).27 E F1 .481(so the)2.731 F 2.981(yc)-.15 G .481(an e)-2.981
+F(xpand)-.15 E(to the shell')180 619.2 Q 2.5(sp)-.55 G
+(ositional parameters e)-2.5 E -.15(ve)-.25 G 2.5(ni).15 G 2.5(fe)-2.5 G
+(xtended deb)-2.65 E(ugging mode is not enabled.)-.2 E<83>144 631.2 Q
+3.855(As)180 631.2 S 1.355(ubshell inherits loops from its parent conte)
+-3.855 F 1.354(xt, so)-.15 F F2(br)3.854 E(eak)-.18 E F1(or)3.854 E F2
+(continue)3.854 E F1 1.354(will cause the)3.854 F(subshell to e)180
+643.2 Q 2.5(xit. Bash-5.0)-.15 F(and later reset the loop state to pre)
+2.5 E -.15(ve)-.25 G(nt the e).15 E(xit)-.15 E<83>144 655.2 Q -1.11(Va)
+180 655.2 S .494(riable assignments preceding b)1.11 F .494(uiltins lik)
+-.2 F(e)-.1 E F2(export)2.994 E F1(and)2.995 E F2 -.18(re)2.995 G
+(adonly).18 E F1 .495(that set attrib)2.995 F .495(utes con-)-.2 F .12
+(tinue to af)180 667.2 R .12(fect v)-.25 F .119
+(ariables with the same name in the calling en)-.25 F .119(vironment e)
+-.4 F -.15(ve)-.25 G 2.619(ni).15 G 2.619(ft)-2.619 G .119(he shell is)
+-2.619 F(not in posix mode.)180 679.2 Q F2(compat50)108 696 Q F1
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(93)185.955 E 0 Cg EP
+%%Page: 94 94
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E<83>144 84 Q 1.209(Bash-5.1 changed the w)180 84 R
+(ay)-.1 E/F2 9/Times-Bold@0 SF($RANDOM)3.709 E F1 1.209
+(is generated to introduce slightly more random-)3.459 F 3.372(ness. If)
+180 96 R .871(the shell compatibility le)3.372 F -.15(ve)-.25 G 3.371
+(li).15 G 3.371(ss)-3.371 G .871(et to 50 or lo)-3.371 F(wer)-.25 E
+3.371(,i)-.4 G 3.371(tr)-3.371 G -2.15 -.25(ev e)-3.371 H .871
+(rts to the method from).25 F .732(bash-5.0 and pre)180 108 R .732
+(vious v)-.25 F .733
+(ersions, so seeding the random number generator by assigning a)-.15 F
+-.25(va)180 120 S(lue to).25 E F2(RANDOM)2.5 E F1
+(will produce the same sequence as in bash-5.0.)2.25 E<83>144 132 Q .696
+(If the command hash table is empty)180 132 R 3.196(,b)-.65 G .696
+(ash v)-3.196 F .695(ersions prior to bash-5.1 printed an informa-)-.15
+F 1.32(tional message to that ef)180 144 R 1.321(fect, e)-.25 F -.15(ve)
+-.25 G 3.821(nw).15 G 1.321
+(hen producing output that can be reused as input.)-3.821 F
+(Bash-5.1 suppresses that message when the)180 156 Q/F3 10/Times-Bold@0
+SF<ad6c>2.5 E F1(option is supplied.)2.5 E F3(compat51)108 172.8 Q F1
+<83>144 184.8 Q(The)180 184.8 Q F3(unset)2.955 E F1 -.2(bu)2.955 G .455
+(iltin treats attempts to unset array subscripts).2 F F3(@)2.954 E F1
+(and)2.954 E F3(*)2.954 E F1(dif)2.954 E .454(ferently depending)-.25 F
+(on whether the array is inde)180 196.8 Q -.15(xe)-.15 G 2.5(do).15 G
+2.5(ra)-2.5 G(ssociati)-2.5 E -.15(ve)-.25 G 2.5(,a).15 G(nd dif)-2.5 E
+(ferently than in pre)-.25 E(vious v)-.25 E(ersions.)-.15 E<83>144 208.8
+Q .234(Arithmetic commands \()180 208.8 R F3(\(\()2.734 E F1 1.666(...)C
+F3(\)\))-1.666 E F1 2.734(\)a)2.734 G .234(nd the e)-2.734 F .234
+(xpressions in an arithmetic for statement can be)-.15 F -.15(ex)180
+220.8 S(panded more than once.).15 E<83>144 232.8 Q .251
+(Expressions used as ar)180 232.8 R .251
+(guments to arithmetic operators in the)-.18 F F3([[)2.751 E F1 .25
+(conditional command can)2.751 F(be e)180 244.8 Q
+(xpanded more than once.)-.15 E<83>144 256.8 Q(The e)180 256.8 Q
+(xpressions in substring parameter brace e)-.15 E(xpansion can be e)-.15
+E(xpanded more than once.)-.15 E<83>144 268.8 Q(The e)180 268.8 Q
+(xpressions in the)-.15 E F3($\(\()2.5 E F1 1.666(...)C F3(\)\))-1.666 E
+F1 -.1(wo)2.5 G(rd e).1 E(xpansion can be e)-.15 E
+(xpanded more than once.)-.15 E<83>144 280.8 Q(Arithmetic e)180 280.8 Q
+(xpressions used as inde)-.15 E -.15(xe)-.15 G 2.5(da).15 G
+(rray subscripts can be e)-2.5 E(xpanded more than once.)-.15 E<83>144
+292.8 Q F3 .605(test \255v)180 292.8 R F1 3.105(,w)C .605(hen gi)-3.105
+F -.15(ve)-.25 G 3.105(na).15 G 3.105(na)-3.105 G -.18(rg)-3.105 G .605
+(ument of).18 F F3(A[@])3.105 E F1 3.105(,w)C(here)-3.105 E F3(A)3.105 E
+F1 .606(is an e)3.105 F .606(xisting associati)-.15 F .906 -.15(ve a)
+-.25 H(rray).15 E 3.106(,w)-.65 G(ill)-3.106 E .714
+(return true if the array has an)180 304.8 R 3.214(ys)-.15 G .714
+(et elements.)-3.214 F .714(Bash-5.2 will look for and report on a k)
+5.714 F -.15(ey)-.1 G(named)180 316.8 Q F3(@)2.5 E F1(.)A<83>144 328.8 Q
+1.362(The ${)180 328.8 R F0(par)A(ameter)-.15 E F3([:]=)A F0(value)A F1
+3.862(}w)C 1.362(ord e)-3.962 F 1.362(xpansion will return)-.15 F F0
+(value)3.862 E F1 3.862(,b)C 1.363(efore an)-3.862 F 3.863(yv)-.15 G
+(ariable-spe-)-4.113 E .623(ci\214c transformations ha)180 340.8 R .923
+-.15(ve b)-.2 H .623(een performed \(e.g., con).15 F -.15(ve)-.4 G .623
+(rting to lo).15 F 3.123(wercase\). Bash-5.2)-.25 F(will)3.123 E
+(return the \214nal v)180 352.8 Q(alue assigned to the v)-.25 E
+(ariable.)-.25 E<83>144 364.8 Q -.15(Pa)180 364.8 S .945
+(rsing command substitutions will beha).15 F 1.245 -.15(ve a)-.2 H 3.445
+(si).15 G 3.446(fe)-3.445 G .946(xtended globbing \(see the description)
+-3.596 F .339(of the)180 376.8 R F3(shopt)2.839 E F1 -.2(bu)2.839 G .339
+(iltin abo).2 F -.15(ve)-.15 G 2.839(\)i).15 G 2.839(se)-2.839 G .338
+(nabled, so that parsing a command substitution containing)-2.839 F .022
+(an e)180 388.8 R .022(xtglob pattern \(say)-.15 F 2.522(,a)-.65 G 2.522
+(sp)-2.522 G .022(art of a shell function\) will not f)-2.522 F 2.523
+(ail. This)-.1 F .023(assumes the intent is)2.523 F .04(to enable e)180
+400.8 R .039(xtglob before the command is e)-.15 F -.15(xe)-.15 G .039
+(cuted and w).15 F .039(ord e)-.1 F .039(xpansions are performed.)-.15 F
+(It)5.039 E .4(will f)180 412.8 R .4(ail at w)-.1 F .4(ord e)-.1 F .4
+(xpansion time if e)-.15 F .4(xtglob hasn')-.15 F 2.9(tb)-.18 G .4
+(een enabled by the time the command)-2.9 F(is e)180 424.8 Q -.15(xe)
+-.15 G(cuted.).15 E F3(compat52)108 441.6 Q F1<83>144 453.6 Q(The)180
+453.6 Q F3(test)3.168 E F1 -.2(bu)3.168 G .667
+(iltin uses its historical algorithm to parse parenthesized sube).2 F
+.667(xpressions when)-.15 F(gi)180 465.6 Q -.15(ve)-.25 G 2.5<6e8c>.15 G
+.3 -.15(ve o)-2.5 H 2.5(rm).15 G(ore ar)-2.5 E(guments.)-.18 E<83>144
+477.6 Q .483(If the)180 477.6 R F3<ad70>2.983 E F1(or)2.983 E F3<ad50>
+2.983 E F1 .483(option is supplied to the)2.983 F F3(bind)2.983 E F1 -.2
+(bu)2.983 G(iltin,).2 E F3(bind)2.983 E F1 .483(treats an)2.983 F 2.984
+(ya)-.15 G -.18(rg)-2.984 G .484(uments remain-).18 F .339
+(ing after option processing as bindable command names, and displays an)
+180 489.6 R 2.839(yk)-.15 G .639 -.15(ey s)-2.939 H(equences).15 E
+(bound to those commands, instead of treating the ar)180 501.6 Q
+(guments as k)-.18 E .3 -.15(ey s)-.1 H(equences to bind.).15 E/F4 10.95
+/Times-Bold@0 SF(RESTRICTED SHELL)72 518.4 Q F1(If)108 530.4 Q F3(bash)
+3.571 E F1 1.071(is started with the name)3.571 F F3(rbash)3.571 E F1
+3.571(,o)C 3.571(rt)-3.571 G(he)-3.571 E F3<ad72>3.571 E F1 1.071
+(option is supplied at in)3.571 F -.2(vo)-.4 G 1.071
+(cation, the shell becomes).2 F F0 -.37(re)3.572 G(-).37 E(stricted)108
+542.4 Q F1 5.445(.A)C .445(restricted shell is used to set up an en)-2.5
+F .445(vironment more controlled than the standard shell.)-.4 F .445
+(It be-)5.445 F(ha)108 554.4 Q -.15(ve)-.2 G 2.5(si).15 G(dentically to)
+-2.5 E F3(bash)2.5 E F1(with the e)2.5 E(xception that the follo)-.15 E
+(wing are disallo)-.25 E(wed or not performed:)-.25 E<83>108 571.2 Q
+(Changing directories with)144 571.2 Q F3(cd)2.5 E F1(.)A<83>108 588 Q
+(Setting or unsetting the v)144 588 Q(alues of)-.25 E F2(SHELL)2.5 E/F5
+9/Times-Roman@0 SF(,)A F2 -.666(PA)2.25 G(TH)-.189 E F5(,)A F2(HISTFILE)
+2.25 E F5(,)A F2(ENV)2.25 E F5(,)A F1(or)2.25 E F2 -.27(BA)2.5 G(SH_ENV)
+.27 E F5(.)A F1<83>108 604.8 Q(Specifying command names containing)144
+604.8 Q F3(/)2.5 E F1(.)A<83>108 621.6 Q
+(Specifying a \214lename containing a)144 621.6 Q F3(/)2.5 E F1
+(as an ar)2.5 E(gument to the)-.18 E F3(.)2.5 E F1 -.2(bu)5 G
+(iltin command.).2 E<83>108 638.4 Q(Using the)144 638.4 Q F3<ad70>2.5 E
+F1(option to the)2.5 E F3(.)2.5 E F1 -.2(bu)5 G
+(iltin command to specify a search path.).2 E<83>108 655.2 Q
+(Specifying a \214lename containing a slash as an ar)144 655.2 Q
+(gument to the)-.18 E F3(history)2.5 E F1 -.2(bu)2.5 G(iltin command.).2
+E<83>108 672 Q .351(Specifying a \214lename containing a slash as an ar)
+144 672 R .351(gument to the)-.18 F F3<ad70>2.851 E F1 .351
+(option to the)2.851 F F3(hash)2.852 E F1 -.2(bu)2.852 G .352
+(iltin com-).2 F(mand.)144 684 Q<83>108 700.8 Q
+(Importing function de\214nitions from the shell en)144 700.8 Q
+(vironment at startup.)-.4 E(GNU Bash 5.3)72 768 Q(2024 December 12)
+136.795 E(94)185.955 E 0 Cg EP
+%%Page: 95 95
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E<83>108 84 Q -.15(Pa)144 84 S(rsing the v).15 E
+(alue of)-.25 E/F2 9/Times-Bold@0 SF(SHELLOPTS)2.5 E F1
+(from the shell en)2.25 E(vironment at startup.)-.4 E<83>108 100.8 Q(Re\
+directing output using the >, >|, <>, >&, &>, and >> redirection operat\
+ors.)144 100.8 Q<83>108 117.6 Q(Using the)144 117.6 Q/F3 10/Times-Bold@0
+SF(exec)2.5 E F1 -.2(bu)2.5 G
+(iltin command to replace the shell with another command.).2 E<83>108
+134.4 Q(Adding or deleting b)144 134.4 Q(uiltin commands with the)-.2 E
+F3<ad66>2.5 E F1(and)2.5 E F3<ad64>2.5 E F1(options to the)2.5 E F3
+(enable)2.5 E F1 -.2(bu)2.5 G(iltin command.).2 E<83>108 151.2 Q
+(Using the)144 151.2 Q F3(enable)2.5 E F1 -.2(bu)2.5 G
+(iltin command to enable disabled shell b).2 E(uiltins.)-.2 E<83>108 168
+Q(Specifying the)144 168 Q F3<ad70>2.5 E F1(option to the)2.5 E F3
+(command)2.5 E F1 -.2(bu)2.5 G(iltin command.).2 E<83>108 184.8 Q -.45
+(Tu)144 184.8 S(rning of).45 E 2.5(fr)-.25 G(estricted mode with)-2.5 E
+F3(set +r)2.5 E F1(or)2.5 E F3(shopt \255u r)2.5 E(estricted_shell)-.18
+E F1(.)A(These restrictions are enforced after an)108 201.6 Q 2.5(ys)
+-.15 G(tartup \214les are read.)-2.5 E 1.566
+(When a command that is found to be a shell script is e)108 218.4 R -.15
+(xe)-.15 G 1.566(cuted \(see).15 F F2 1.566(COMMAND EXECUTION)4.066 F F1
+(abo)3.816 E -.15(ve)-.15 G(\),).15 E F3(rbash)108 230.4 Q F1(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/F4 10.95
+/Times-Bold@0 SF(SEE ALSO)72 247.2 Q F0(Bash Refer)108 259.2 Q
+(ence Manual)-.37 E F1 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)
+-.15 E F0(The Gnu Readline Libr)108 271.2 Q(ary)-.15 E F1 2.5(,B)C
+(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F0(The Gnu History Libr)
+108 283.2 Q(ary)-.15 E F1 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E
+(y)-.15 E F0 -.8(Po)108 295.2 S(rtable Oper).8 E
+(ating System Interface \(POSIX\) P)-.15 E(art 2: Shell and Utilities)
+-.8 E F1 2.5(,I)C(EEE \212)-2.5 E(http://pubs.opengroup.or)144 307.2 Q
+(g/onlinepubs/9799919799/)-.18 E(http://tiswww)108 319.2 Q
+(.case.edu/\001chet/bash/POSIX \212 a description of posix mode)-.65 E
+F0(sh)108 331.2 Q F1(\(1\),)A F0(ksh)2.5 E F1(\(1\),)A F0(csh)2.5 E F1
+(\(1\))A F0(emacs)108 343.2 Q F1(\(1\),)A F0(vi)2.5 E F1(\(1\))A F0 -.37
+(re)108 355.2 S(adline).37 E F1(\(3\))A F4(FILES)72 372 Q F0(/bin/bash)
+109.666 384 Q F1(The)144 396 Q F3(bash)2.5 E F1 -.15(exe)2.5 G(cutable)
+.15 E F0(/etc/pr)109.666 408 Q(o\214le)-.45 E F1
+(The systemwide initialization \214le, e)144 420 Q -.15(xe)-.15 G
+(cuted for login shells).15 E F0(\001/.bash_pr)109.666 432 Q(o\214le)
+-.45 E F1(The personal initialization \214le, e)144 444 Q -.15(xe)-.15 G
+(cuted for login shells).15 E F0(\001/.bashr)109.666 456 Q(c)-.37 E F1
+(The indi)144 468 Q(vidual per)-.25 E(-interacti)-.2 E -.15(ve)-.25 G
+(-shell startup \214le).15 E F0(\001/.bash_lo)109.666 480 Q(gout)-.1 E
+F1(The indi)144 492 Q(vidual login shell cleanup \214le, e)-.25 E -.15
+(xe)-.15 G(cuted when a login shell e).15 E(xits)-.15 E F0
+(\001/.bash_history)109.666 504 Q F1(The def)144 516 Q(ault v)-.1 E
+(alue of)-.25 E F3(HISTFILE)2.5 E F1 2.5(,t)C
+(he \214le in which bash sa)-2.5 E -.15(ve)-.2 G 2.5(st).15 G
+(he command history)-2.5 E F0(\001/.inputr)109.666 528 Q(c)-.37 E F1
+(Indi)144 540 Q(vidual)-.25 E F0 -.37(re)2.5 G(adline).37 E F1
+(initialization \214le)2.5 E F4 -.548(AU)72 556.8 S(THORS).548 E F1
+(Brian F)108 568.8 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
+(bfox@gnu.or)108 580.8 Q(g)-.18 E(Chet Rame)108 597.6 Q 1.3 -.65(y, C)
+-.15 H(ase W).65 E(estern Reserv)-.8 E 2.5(eU)-.15 G(ni)-2.5 E -.15(ve)
+-.25 G(rsity).15 E(chet.rame)108 609.6 Q(y@case.edu)-.15 E F4 -.11(BU)72
+626.4 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F1 .567
+(If you \214nd a b)108 638.4 R .568(ug in)-.2 F F3(bash)3.068 E F1 3.068
+(,y)C .568(ou 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 650.4 R 5.625(ersion of)-.15 F F3
+(bash)8.125 E F1 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 F0(ftp://ftp.gnu.or)108 662.4 Q(g/pub/gnu/bash/)-.37
+E F1(and)2.5 E F0(http://git.savannah.gnu.or)2.5 E
+(g/cgit/bash.git/snapshot/bash-master)-.37 E(.tar)-1.11 E(.gz)-1.11 E F1
+(.)A .41(Once you ha)108 679.2 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 F0(bashb)3.181 E(ug)-.2 E F1 .411(command to submit a b)3.131 F
+.411(ug report.)-.2 F(If)5.411 E .022(you ha)108 691.2 R .322 -.15
+(ve a \214)-.2 H .021(x, you are encouraged to mail that as well!).15 F
+-1.1(Yo)5.021 G 2.521(um)1.1 G .021
+(ay send suggestions and \231philosophical\232 b)-2.521 F(ug)-.2 E
+(reports to)108 703.2 Q F0 -.2(bu)2.5 G(g-bash@gnu.or).2 E(g)-.37 E F1
+(or post them to the Usenet ne)2.5 E(wsgroup)-.25 E F3(gnu.bash.b)2.5 E
+(ug)-.2 E F1(.)A(ALL b)108 720 Q(ug reports should include:)-.2 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(95)185.955 E 0 Cg EP
+%%Page: 96 96
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Italic@0 SF -.25(BA)72 48 S(SH).25 E/F1 10/Times-Roman@0 SF
+138.32(\(1\) General).95 F(Commands Manual)2.5 E F0 -.25(BA)140.82 G(SH)
+.25 E F1(\(1\)).95 E(The v)108 84 Q(ersion number of)-.15 E/F2 10
+/Times-Bold@0 SF(bash)2.5 E F1(The hardw)108 96 Q
+(are and operating system)-.1 E(The compiler used to compile)108 108 Q
+2.5(Ad)108 120 S(escription of the b)-2.5 E(ug beha)-.2 E(viour)-.2 E
+2.5(As)108 132 S(hort script or \231recipe\232 which e)-2.5 E -.15(xe)
+-.15 G(rcises the b).15 E(ug)-.2 E F0(bashb)108.27 148.8 Q(ug)-.2 E F1
+(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
+165.6 Q(ug reports concerning this manual page should be directed to)-.2
+E F0 -.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F1(.)
+.25 E/F3 10.95/Times-Bold@0 SF -.11(BU)72 182.4 S(GS).11 E F1(It')108
+194.4 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 211.2 R 1.868(ferences between)-.25 F F2
+(bash)4.369 E F1 1.869(and traditional v)4.369 F 1.869(ersions of)-.15 F
+F2(sh)4.369 E F1 4.369(,m)C 1.869(ostly because of the)-4.369 F/F4 9
+/Times-Bold@0 SF(POSIX)108 223.2 Q F1(speci\214cation.)2.25 E
+(Aliases are confusing in some uses.)108 240 Q(Shell b)108 256.8 Q
+(uiltin commands and functions are not stoppable/restartable.)-.2 E .146
+(Compound commands and command lists of the form \231a ; b ; c\232 are \
+not handled gracefully when combined)108 273.6 R .5
+(with process suspension.)108 285.6 R .5
+(When a process is stopped, the shell immediately e)5.5 F -.15(xe)-.15 G
+.5(cutes the ne).15 F .5(xt command in)-.15 F .941
+(the list or breaks out of an)108 297.6 R 3.441(ye)-.15 G .941
+(xisting loops.)-3.591 F .941(It suf)5.941 F .941
+(\214ces to enclose the command in parentheses to force it)-.25 F .824(\
+into a subshell, which may be stopped as a unit, or to start the comman\
+d in the background and immedi-)108 309.6 R
+(ately bring it into the fore)108 321.6 Q(ground.)-.15 E(Array v)108
+338.4 Q(ariables may not \(yet\) be e)-.25 E(xported.)-.15 E
+(GNU Bash 5.3)72 768 Q(2024 December 12)136.795 E(96)185.955 E 0 Cg EP
+%%Trailer
+end
+%%EOF
--- /dev/null
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 2024.1 (TeX Live 2024) Copyright 2024 Radical Eye Software
+%%Title: bashref.dvi
+%%CreationDate: Fri Dec 13 14:15:09 2024
+%%Pages: 212
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 612 792
+%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMMI12 CMMI10 CMCSC10
+%%+ CMTI10 CMSLTT10 SFRM1095 CMTT12 CMTT9 CMMI9 CMR9 SFRM1440
+%%DocumentPaperSizes: Letter
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
+%DVIPSParameters: dpi=600
+%DVIPSSource: TeX output 2024.12.13:0915
+%%BeginProcSet: tex.pro 0 0
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
+/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
+setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
+restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
+N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
+false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
+length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
+forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
+BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
+{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
+round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
+rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
+/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}
+B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
+-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
+0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: cm-super-t1.enc 0 0
+% This file is generated from `T1uni.map' and `glyphlist.txt', `gl-other.txt'
+%
+% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ;
+% LIGKERN quoteleft quoteleft =: quotedblleft ;
+% LIGKERN quoteright quoteright =: quotedblright ;
+% LIGKERN comma comma =: quotedblbase ; less less =: guillemotleft ;
+% LIGKERN greater greater =: guillemotright ;
+% LIGKERN f f =: ff ; f i =: fi ; f l =: fl ; ff i =: ffi ; ff l =: ffl ;
+%
+% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ;
+% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ;
+% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ;
+% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ;
+% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ;
+% LIGKERN nine {} * ; * {} nine ;
+%
+/T1Encoding [
+% 0x00
+/grave
+/acute
+/circumflex
+/tilde
+/dieresis
+/hungarumlaut
+/ring
+/caron
+/breve
+/macron
+/dotaccent
+/cedilla
+/ogonek
+/quotesinglbase
+/guilsinglleft
+/guilsinglright
+% 0x10
+/quotedblleft
+/quotedblright
+/quotedblbase
+/guillemotleft
+/guillemotright
+/endash
+/emdash
+/afii61664
+/perthousandzero % PERTHOUSAND ZERO
+/dotlessi
+/dotlessj
+/ff
+/fi
+/fl
+/ffi
+/ffl
+% 0x20
+/uni2423
+/exclam
+/quotedbl
+/numbersign
+/dollar
+/percent
+/ampersand
+/quoteright
+/parenleft
+/parenright
+/asterisk
+/plus
+/comma
+/hyphen
+/period
+/slash
+% 0x30
+/zero
+/one
+/two
+/three
+/four
+/five
+/six
+/seven
+/eight
+/nine
+/colon
+/semicolon
+/less
+/equal
+/greater
+/question
+% 0x40
+/at
+/A
+/B
+/C
+/D
+/E
+/F
+/G
+/H
+/I
+/J
+/K
+/L
+/M
+/N
+/O
+% 0x50
+/P
+/Q
+/R
+/S
+/T
+/U
+/V
+/W
+/X
+/Y
+/Z
+/bracketleft
+/backslash
+/bracketright
+/asciicircum
+/underscore
+% 0x60
+/quoteleft
+/a
+/b
+/c
+/d
+/e
+/f
+/g
+/h
+/i
+/j
+/k
+/l
+/m
+/n
+/o
+% 0x70
+/p
+/q
+/r
+/s
+/t
+/u
+/v
+/w
+/x
+/y
+/z
+/braceleft
+/bar
+/braceright
+/asciitilde
+/hyphen.alt % HANGING HYPHEN
+% 0x80
+/Abreve
+/Aogonek
+/Cacute
+/Ccaron
+/Dcaron
+/Ecaron
+/Eogonek
+/Gbreve
+/Lacute
+/Lcaron
+/Lslash
+/Nacute
+/Ncaron
+/Eng
+/Ohungarumlaut
+/Racute
+% 0x90
+/Rcaron
+/Sacute
+/Scaron
+/Scedilla
+/Tcaron
+/Tcommaaccent
+/Uhungarumlaut
+/Uring
+/Ydieresis
+/Zacute
+/Zcaron
+/Zdotaccent
+/IJ
+/Idotaccent
+/dcroat
+/section
+% 0xA0
+/abreve
+/aogonek
+/cacute
+/ccaron
+/dcaron
+/ecaron
+/eogonek
+/gbreve
+/lacute
+/lcaron
+/lslash
+/nacute
+/ncaron
+/eng
+/ohungarumlaut
+/racute
+% 0xB0
+/rcaron
+/sacute
+/scaron
+/scedilla
+/tcaron
+/tcommaaccent
+/uhungarumlaut
+/uring
+/ydieresis
+/zacute
+/zcaron
+/zdotaccent
+/ij
+/exclamdown
+/questiondown
+/sterling
+% 0xC0
+/Agrave
+/Aacute
+/Acircumflex
+/Atilde
+/Adieresis
+/Aring
+/AE
+/Ccedilla
+/Egrave
+/Eacute
+/Ecircumflex
+/Edieresis
+/Igrave
+/Iacute
+/Icircumflex
+/Idieresis
+% 0xD0
+/Eth
+/Ntilde
+/Ograve
+/Oacute
+/Ocircumflex
+/Otilde
+/Odieresis
+/OE
+/Oslash
+/Ugrave
+/Uacute
+/Ucircumflex
+/Udieresis
+/Yacute
+/Thorn
+/SS % Germandbls
+% 0xE0
+/agrave
+/aacute
+/acircumflex
+/atilde
+/adieresis
+/aring
+/ae
+/ccedilla
+/egrave
+/eacute
+/ecircumflex
+/edieresis
+/igrave
+/iacute
+/icircumflex
+/idieresis
+% 0xF0
+/eth
+/ntilde
+/ograve
+/oacute
+/ocircumflex
+/otilde
+/odieresis
+/oe
+/oslash
+/ugrave
+/uacute
+/ucircumflex
+/udieresis
+/yacute
+/thorn
+/germandbls % or /germandbls.alt
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro 0 0
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginFont: SFRM1440
+%!FontType1-1.0: SFRM1440 0.3
+%%CreationDate: Wed Sep 12 2001
+% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>.
+% See the file COPYING (GNU General Public License) for license conditions.
+% Converted from METAFONT EC/TC and LH fonts:
+% ecrm1440, tcrm1440, larm1440, lbrm1440, lcrm1440, rxrm1440.
+11 dict begin
+/FontInfo 6 dict dup begin
+/version (0.3) def
+/FullName (Computer Modern Roman) def
+/FamilyName (Computer Modern) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/Weight (Medium) def
+end readonly def
+/FontName /SFRM1440 def
+/Encoding StandardEncoding def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] def
+/FontBBox{-178 -319 1370 944}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11
+69C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB
+CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89
+F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3
+F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C
+EF25195F68A2A98170E4875AA6B96583CD5632BAD9EB3D511DF934CD36447A31
+D420FA313B5721C37085F478B27E13191957AD30B8B082BCE733AF8402AA3B7D
+EC69807BBAA8142AF1CE151D99F5A59AD18798F94781EFAD48BEC8C62C05C56A
+336D71AB584F6DF014C56523108606FADE931125496247870E980A65AB33C0C6
+D5B074864D0F58CBE333EFA1201AF335FBDBFB1CC8B1294856C250F222BFB8BE
+5DE74F808904F7678552F213C674497F829E96812D340939F73737731D289801
+54E5A8F7F5067ACD9D768F4649B51E54513F2F7878141FC719627C23FC5FBBB6
+3F663343D902E95C56C559B588088227B22378FAAB29392FA62933283D2FB2EA
+FDAEC6C1A94ABA0B5BEFA1E728A2052434BFBF6D9759D02A2C6092D4EF794241
+CC28BC939A424AFA193F96530985EE89E2731F6A99BC84C6551A3FEA1342509D
+D389F786C8EAF972B8C98B79003B6C71E6696518BE4CAD2A317C5D29621031B4
+00A035445D8CFB67D6C136B3F6D82396E11A3679BC82498519C27601236F1FCA
+073DA7817B529424CAF49A0AEE8FF7520C0F204A3B1725F46C2C6953C20E93B6
+2F3EED0EEDF87A350CB841516107D9571503A3D62A2F81840070D43392160783
+D111F3463760EBE634515DA1A1B6C3A5D14FC475F277BAC792FB69B4219E9BF5
+E6F8520584096A7B7BFE439A1604C2BBBB9140A4F4728B4B553A27E1AF52181D
+701E90C4FBB16EA8DB39B562E5A2932D45893081D52E020A1FCBC44DC204F4A5
+BEE47F9D25876644CC856B1FC225B61124B89B896C39CDAB0ACCA8277F827382
+6F58A0C8456DC41217219D894B42968FB2EC75D5518B6C4413BAC889532F0B0B
+A8D728949CEA00D4A1FD757B3A2336D472842ACF8EB9869044947C67D9AC7BBF
+7386DDE209A8DC9F18085952818F67FDC6088D9C8BC51BA6DC0FA37A0F81EDB8
+6F259FA8C0FA3D55BC44529889E72E407C89ACF658631A0508FD7991088644B4
+C958031B52421F9CE73A0479A3175231EFD9E0F7A7B08380E9BAF015730B175B
+93C380D1D0F3EB929B7182691BE7E2116CE295CA4331ABD7ECAD7D2DD46FE3E0
+5D3893ED100135901FD42B4E11BEB2689A13E86F1E68635DD81E5A720082E802
+89B440A111B2CDC6BFE79E5B2EB0C528FA0E958F0E981EC29C3B02A9186D7907
+A0CC29251E567958BA95DE609A421581433DD50AF96A82A5ADEFD1C9540D87A8
+D74A7709AF84AD36753784ED8267D3C2521A32C7A9D5BE01E0AF3B349200639C
+90C8BF2E26920AC410A9C5D1EB85C0ADD16BAA83B6C0BFE82483D3B719DC19AC
+89155140691E3E37F861C53A6F39441B5F229828B198DF5BF6286060DCB64433
+F43499E4AB973F84655311A644ED0921B41B9AE7A8060CB1F45E824FB3497C63
+0A13CB5902294E66186E4496A825447734DF4AB581803488B912E7DCD6007527
+B4CFDC5AD5D1DB430007AE929F969EE332CCF235DAF977D387E47BE0EE337118
+8CFAAC0907E16B0BEAECC3B39221867AE6464BE9AB4CE591B2E24B45AD2C70E2
+A183065810D6AC3DE8EA9F66615113F1E683A4475CE5817491ECBDD4A4818AED
+EAFEAB8B93FBDB335D02FAF9276958EFAEE1057C45D313419D195068076D77B2
+C0FF6EA8D6F3F0A899D17E04B8B2141EE335
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMR9
+%!PS-AdobeFont-1.0: CMR9 003.002
+%%Title: CMR9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
+/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR9 def
+/FontBBox {-39 -250 1036 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR9.) readonly def
+/FullName (CMR9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 12 /fi put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 82 /R put
+dup 83 /S put
+dup 88 /X put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9AF72336CC4AD340
+15A449513D5F74BFB9A68ABC471020464E3E6E33008238B123DEDE18557D712E
+ED5223722892A4DAC477120B8C9F3FE3FD334EACD3E8AABDC3C967C61FF003B4
+B10C56D6A490CE9594D57A2D431B9E5E10FE3D8832E227A7087611431ABCD029
+85F4865E17E17F8CFBD2CADC97E0A8820E3ACEC873F31464466A9545E967E53C
+DBDDB8478E69063FBB891566BAF88B7660A4405B16834761F041CCF7650AF955
+F9E853AA9F5F4382E1FE7D0C5BB4023818A2383F91249D48CE021250EC9EEB1D
+2835E18FB73026250B32A8849067D5E2258797C917F998F2D4121D96560C5FB5
+B5D3471216639A8671B6DFAC5E3554EC36D9A72518525A795590C74DD70DA3A7
+78BFC43E51D6F2BA52F17D4DD00D389D3983EC54912AFF73684A8A7E345537B7
+E62361C04A47859DA084BC72EA53512DC54132EB2EE671793603015652EAFDE3
+41C4B6B679BD60AEC5153EA0D2200CB1D097DAD770F5F31E6FC475A225995277
+B867B731D5401E2D02B85BA85158C80FF7E2BBCC42B98AC867E67D25DB656072
+55A0D32AB7AA483A5A9686CEA4E2B3031D90D84DB3E2DEE7706C91BA81CB8DAA
+700E5F61E07D6998C9552C81B66FD10A10033D49EF3BCB0FF22ED0A3737523C9
+8F851C61C4BF8A213BF6EC70C956AE48B5BD276CC0437C72BF6515B10739919A
+F00F6ADD2798CB211668842349171A5AEB0664D2C44397E55A4A9EBDF54A3EF4
+FBBCDAD9DAEF4B0CAEF7112FA828F2F8D9F633D37E5516AB5ECEA87342EF8DC4
+3A50548490F5BC9A8A1F98AC7AEAD9D913BFA10CA86D73AEB5BACC1FEEFDCC15
+B3655522CCA2C772E902FAB2A6FC153597D52763EB44AB7489FF061F7F58E8F2
+AEAAF4D17F36CBFC00D3C653F335D14240C87DB4339DA9D30A5BD1F502BC9013
+461B9DB2FBEEC01BB18990439A0E9CA6576BC9CF6B1A3DB9386C4A5D4AA6A5DC
+CFA45FB75F22E10ECB72565DB441A194902C91427B4F676E531C661F7A2C3C85
+CD534D1C89B6779B2EDC8E44667B992C20C70B663BFBF680A6CF4383EB7CA26C
+4D1F06B5EF4025BBE65795F1EDB5CCB97050872D6C07BC2974F905ACDB7A765F
+291365D6C8152153E7F017A25FB4476C60FD9EAF9A121633DBEAC32F62850223
+D6418566AB350F90F4B35F19598478F76B63E347D4C61E203D4DB8ECB9889181
+C387F4B663A502C638761D2782BB96EAC81A0108D7BD6938F67FEBB69218D115
+D8E89CFABCE15C6ACC7FEB983332A51A6A73CF4E341574F366713D7FB29956D9
+9BF238A87483D37E526A2EA2F101EDD34E34CB92730DCA7235AA0027189BE405
+2DAB4AA021A30C28B26C50808E1E965C02F6212EC7C72F5683339425A7739380
+A422E6191ED8453AF0CAAA424AE44DFA7CC5C2F6EAA8D73A5101D8E9517DBCFB
+2858D0E8ECB7DC430EF23A9E4428CB7DED8D035D6050251AC101A2D0E884721E
+2F21E573F948048BB8FF888911C508CC198BD750083B339500C426AFCD5634A6
+AAAC1C7E91249667B231BBFC64B4317192FE07FE9DA0DDB5E517D097AAE46577
+9555F29D45C67CDE9812CAD03F220B20519F2FF32DCA56A554D4296FE2D1F3FB
+B209B5270E0E695EA5A0EF1144957CE045881AEB8D05D72CE57F4D34617AED67
+0D3AF0472CD8D60933651626550366E300E72A9C89ACD475C2E2ED9BD44B472D
+9DAFE943F8E02A6DC38E447EED964624C37C3130E48211CA279BB6A0BD59466B
+42F3D89B5746F29E084E22CF58395AF0F29E55113F3A3F2F52CB3A6DF3D026D0
+C81754B8E2E4A15F6943BE9D0087D5166060734FD07C4C57D7C7D90E8C9C1F35
+623CEEE3ABAE75E1A18A1E3B50B7266BD2D8E812CFEB4A46B856885B185640D6
+B9C22179551002B94282F57FB433B7FF157D2F0D240836B72AF4A331668AE5D4
+E6B85415F4E8B9D2F9AF90FAFAA0A3866DF417CA5A31348CF9B41B8F5F4D2F97
+CCF7ADE851B5E2E2F6E319AAF5792EBB9DA2C6AA8B73D889F3CDAA42932CDA7D
+07A7E59183CD89520DDFC36E5D513BFD8AD0886046585F29B4D7F42CC0C27AA7
+53915AB1167D292FE91957E94A57FEE2D49C20C9070ECD736BDEE0F046E60350
+EA539DC298156A4E0D019E7D481FDDA6861E20678516AB80ABEC1F09B126BCB9
+52E8272A06BB6DD87ACFC423B4A4FC9A3DC8DCAEBB807C5F748F1FF8B17B8B88
+F426206BF1B7B7D239D26BC3CF0776C467A98CFBBCA5FB6145D5900137ED19DC
+D002F10704AA680EC753C22E29AAB15712EF22AF73D80820A1EEE953463D4EA3
+81FAF99518D4FD0F862A324FC44C4B9542A92C5B60CC983CC8F647CE5BDB4D6D
+B92B380E0E5F7208A9CD91FA9A469548162C761C1BA05AC9D60B766764D821B6
+B4E17F56CE455F06EA1EE2D38FE47581746C4C5FBA63AEE2B58E877D1A8FA83A
+31C972D53B64E92EEEA147426A92CFBF76FC614119C6E9C6476FD6A069C803BF
+E949FBE50B5AB1F1463F9747E8D353F7BBD991C4F90F920BC9407D8E24720293
+846D052214E60390C3CB926D38C83AF697425D80C2B4FC4706615B905516B733
+46ACA325CEA68FB21B2D17CF0B68BA4DF249368625CF83441EDBF2B86C957C1E
+44CD722BD2537CE84FBA07EC7AE15C840041B9F7F3040072E6084CD55B301C08
+A64A53BD4D3DC30DCAC6C152F316ABC59B8EE978793EBD568849DCC2A75A495A
+BC83470D503F8E389F54B4A4A31624E83C601B43AC1E52CB811FAA7CA6B644A5
+1AE0BFD4FC774C9C9DFC2769ABFA9C83F900BE2DD4010416053A1D4874E6ECF4
+D86E44B4CAB15D53E5630C144B0C15B58DAAD785BA298B1893D1B09BA5D40344
+6678FD2D17FF6674433C976D6DAC659175CED26139967C9B2B9CFFD78FC2570A
+E5142141C2888DBF2DC8503F9137CE7CB21A1EBC2D65BF33FCEFBC85C9CB736E
+24E8595CE934AB032CC70BD6A3B0F3BDBFBBE185512FDB7BE3D4A6620478453E
+75D044BF770B44C9741E31985E6DAF5A318D7BED12B02A4BCFE60D25EF12843D
+EFC9BAE2A3F2EFAD66D7858E83EB46BB09D2FF8AE9C43844A7001C86ED97AF51
+C511E3A89A1BE349FF5215D1A57843EF51456B9838133846F19BE79AAA5C1AB0
+5F400E5E8E7B0BF96EFCA3B8F0894BE589F2C9FB6C97BD16D38F0A237CD4F034
+099C41F85C7E2C7BEC8E02C4F327306A53B4B48B26A8926670CEEF96F6DF2281
+7C2DAD99EF8B81BBB777227C2475AE7400DC393D9C0445E925DB1E955950F7AE
+53E9AC4306794239346A419F7B5DF4168382EF5956B81F83BD4BB7635B3BCC84
+7D84D05AEDC02D14675D777CD19B08124001A4F4EA96990D96000C082A12F00F
+7FEF793A7FA69D56D3A38D012168C5458B667190AFE80E02C816CAFF0A71953C
+D80B085CD286027E2FDBB05452AA762FD7C813B2E19A79C74190E04E746C4933
+CE1E300CAF5DD53B08110509BDA404EF07FA1BC5224BF1205DE8E0C3276A13DD
+866675103B960C5F36644F96B4FAC16F5D6E91F74629B318FCCC8E8CB13EB76B
+B0B7B90718D913A52A04732EA3667674994A325A7973C601A7DDD50F658E0826
+ACB8E53D4914B0274AED98D7BC3B2B7F9D48A7ECC2F8ABEE05CF2C4F2B90360B
+B7DF779EAF3E103D1D83EDBE32DDA873768D8C37DC10A5354A94B4153049AD64
+FF3E0BB51AB91D7C0B4134D8731CD0270DAAF19BED9EAD800A14B65B68EEE89B
+40DD624111670DDC7C030DEFE0D1B96420E249332445C155BA96231C88E70643
+D526BDF3CA1E05FEE72CE2B881CFC01ED780C10E89F0828AD55FE29043BC56E8
+2750A6DD15AADD54492F6092618F4CC6A31766B17FC60766D18C307EFC9BB787
+39047DAD6B38419EFBA46B4E2C932F97451FE78AD75FA90DE409FC6DD46585D2
+1941F5ED47A8FBAEF5A917A240959E8D9F9917DEA3247D9CAE6BF7A88DB4C4A4
+F9F5A6DCE542420A032FF3392FE0F3357B51F884D6181583A554F75B1DF192E9
+253CC828FF06B0D992D5316435980B044BB191508C7C45CD90F797F88856424B
+14A5707459C50EDCF3E3D8D1667AAA83015405354CE744C66D9A5728F29E0085
+6DBF740717FA0799E3BCC4ED7841588B496A5E549B953A7FD288B4A045DB611E
+E3B2F35963FF18ACCB1C968BEEA2CBF52B3999AAF89A05320BB2E97F52CFE06B
+9F10E3A79865A3059A957F97972D80ADF678A36E2B586C101FC6AFA4D137C13E
+EE7102C9B8EF78CB057F8B7476F146E8FF5C897FD5503DD198128CFF7B5FB339
+FAD0AF0EA967F77B07B367A4AC9F668F8BED99B98E87FAC750EE045602D76C3F
+289FC9D97694C96AAC0AD1BD3FA94DF2CBCEA24B40F47B9B59E54EECEE7AC4C3
+A3F5D19160E4C1EA830D57FBE10D8D46AC5CA0260F22FAA45236F0F542BEA9C5
+5A88F878F68B36114E0573900C65E305462B22A3429A17C7A567694414DDDA46
+5F30542B8FD4F00F6C295B2E8D3A986B953D96822DB2ECD48E8BB1763434E652
+152EF3717F5E7FA10FF0B01D9F64E22C5DBD7254629658887BACEC0ABDE972EE
+67299FB84A05B3EFE22B6976DB4CCA384232DDAE38C31623A4E39EA2E82C1EA3
+BBB68F1A7DBF405DEC37CB7203A895C36A44BD2D63F45B3888AF91D37B510A59
+3C921BB44DA620892AD87B665F69F6FA510B071ECC403CB2BE2F54B3969C9E88
+713244BC97C1466DA8216DA7600C221E7E7EF5C789D2E12B36422023A03E11BF
+2790FD6062FE6BF62F5010A92F0A104B76E255A0975E04F6F20F760881BDA7F5
+D834D1D328B6EC19AA7D5E5678A84C74C82553DBE8BB5765E84F5A8789032143
+6020940B4B8D45FC3433D356E28C25F42D0C19F911213D85951B2B00D01B77BB
+A4C72E964F9D95422BEDE582A05CD52E03D28A996E6CC8FCD910CBAB728073F9
+F9FAEED5470FFA55930447C5BA816F826F983D53EC9941EC8364B3060FD74C95
+26D4F5CA753B574FD2FA4D1D333785241D8741B79E628BC852FDC35478C5ED9A
+C1BE88C5EE7302816E65C12B58EA16FEDD4672EB3E24B6EDAD5DCE263BA8A970
+350B651E5A9F3C281D85BC3F44EADD0D93402E36489BA5185E7D388974B0B700
+70575188BB610CCA20F081E2CBDA13DCC6F72567962ADB342E02C1E763B673C5
+F7384E24C6E1730A3A790D690A2103AEF88E0C1D4480DC9B25E5C8C9E1919C95
+F83320179B4C7C4A26D559BFB24D7D596FB73758C9990C451E77FCDDD17763B8
+9C30A9534E3CB6680D3D419D4B70B0B0A0D160FCCDE169714E373F65B7144CC2
+DB9A44E041211E1517D3148E65A2486CBE5E74E625261CCF65392FB4F3091473
+F9E8DF327D59A58558E5C9F7190DB577D5DC658F5E36258291C708B3D224653D
+064BB6079F91293FC733710893AD1C96169B30CBFE4E9D52E7EFAE4AFEE68FEF
+1AFD5E7E9DFCE8DE332B0FDC0514F9B3090AC85BBFB527FD8034DD33E9576325
+A8769AE09AF1BA792447DDD932B98FC9486B39E0B04DDB3EFB7A30DA0940B33E
+E27490E0E841E87B1C90E5248A91742ABEDC10F43A8AF0F9C5B4A4930B1AADAF
+01874B9AC3B8D0DBECCDA6CD7E96471FAA15CB7F8A599C5746327CE392224C3C
+40BD60AF97BCA6FF6FCAB2FEA114D7300B89E91C3BC92D5B3E2C83BB37992D8C
+72F661EFD0AA034C738C019DFB79BF40651A1A34BC1EB9F5AAF58F8B3DA32645
+24AFF8636486F08BC21533B5FF7391B0679A78DFDCB03DAF6BB7475A1D51DAC1
+EE4BE9B986655D1FDB6936445EF99B58B303FE79F11275EEA96A9F6808EA8775
+D873D1052FAC93769789C700F20EB2ED6D15676F6E563A769CA9298E463FC311
+83281483B1C953370D196727A6A0E66D32D9480AB1B6DCA77868C1A2D5DB6483
+5F31EB6B18EEFEF1CDC31533E69B0AFC6B30FC9912DC89BAAEEADC30BE14F448
+1A6B70D36A5D9B01799BEEA686066114910842D022EB464A9A1E8F0A5628BA69
+AA9A1925CCADD44703BC67A89F3B48E4680726DC4360274185CF3C8AB747A8FC
+4B928AD62B092EFE48B01E33ED756DB696171FDB775396BBA138E056F71EDAE3
+7A1E4CC272B8418114B0E81DE0BC43DB3C133167344488820A92DF10FFA26FB9
+65FCA2C87D302E956DE6B4FE145145440C83DB43A68F8B29A592B127BDF49063
+B7F11E155CD4CAE305525BEA56B7C412A6260426407BD892A3F2B444AC3421E6
+FB6E6425EB5C3053C5644666B80405530FA0012B54557327C98E0F4F064099A6
+4ACAAFC1870359C1B6FBE7606BB8A26026AE20C212210449905E628AF1B20490
+8CE908B7EF3E3DB551C85AEB0F7FEB6A8D215B97998E5DD9C7CCFB2A9402B8B6
+1770D4023777D4B45A73F471355353412C51D4CE71FAD1E0AFBD87B5F86307F3
+10D0B94F1194EFFB64AD5DA54A4200490F609CA8B912E149F8217ABB1E9EBB3B
+C4470E7365CF5E1E761AA1945044B225BD53D142F6588C50E0644740F7DD55E4
+8F73201E5354A8BC78339211AFC4935F44701FBA043AAC4BA4698E9D7700029A
+C79F992F62627C91EB855F64C4B251718FDA71EDAF082A0C7B00550949D617A0
+7071FB14F05620CCF2180941341D8E60FC88823438FD728A4042AFA8B853107F
+852F631518B61B234565291B5D5B89DA818DEE3AE3B68A2869DFA63255CC882C
+3B16BBA08FCE3632E57FF7A07F857A1F0FDCADAB39D77960BD827CCC8661A997
+648BF5BEBC0FD2286C2A112A8DEB9CCB6330A049170D5D68EEEEA011D3EF3EBD
+855236B9380087CBBB6BE24191F728B7EAC5B50F7A547AA0989B7C7D3437DBCE
+1669341264E290646F2C8C5A3ACAAC7CB63DC692FAAE13E9B40E8BD39FE16A0C
+1660CE66872D061056C04DDDC265C024BEF8B7E3C3AEE76FE5C9702002C28BE0
+B180295EE00E567FA2E5CD1638226D24A7C732E1BD8103B476EF5702768689C7
+D4FCD47F2AB94A2B1FBAE6ABF87B09E7713C773FB65CA83F7318035B332B9F99
+24A2C8897527021321D003AAD7C273E4BFA2710B9BB26C2CFD3D9A5D7ED1096C
+552D50028AE2476FCD6D12A5D0A897521313ED1A3A8456A70C16EAA50A3E6733
+6DC89FEC56AB54A579EF264377A103939D5EE00A90B4F2206D0023AF9491FBE0
+800C6540FC945199E20E945F46CEEA2E885F6800B9DF042BCEF4291A4B1A62C8
+6A7ACFF872B25FA3AE69E0093F3D0FF13A3313430C06F1AF94D500431566F659
+E8C859A5F80F5BD2E85C8E32603D3745628E8FE6FBC50FA68F9C3811A2BEFEA4
+5852CAE2AE5AAD3230ED050593BAD0A9581EB7B327C6916B8FC348F4C23E6FA2
+00FA28AAACCB3091C1D83F7BB88672A53A2EA3B8C7C24374E400C57F0F01019F
+E52D5C47F389D4C9AF126F4080F9AB8D1C8F470932BBECCEC72A9796F6E965A4
+82057DDB43D68298A00880D4C2E2496F26F015FD83C5549215753459310339B7
+6B2961EEEE74DA31FEC8E2BDDA42D4080A32372AC372524BDDA580EF6634ACE3
+128C69D04D890DCA337212B109585C665AA83EFE47D5BABC2627A86EAD11BF7D
+744176652C7F9497785A7A06A994ED8414BBE8B26E74D48CB83FA24AAFBDD507
+84A90195EA3D77BCE8C2BEDDD1DC52E8164DF15D65B916EBDF3A8A76849653DF
+AE3CAF9561AF3B705F75B9E5DFD6758DB65A2FD54683759912E0D0035CFBCD86
+5D2579DAAEE12528C23ED8A1A2F34CAD1CE8BA67D0B660E9281F247EC10F816B
+FBD6B9E8AAAA1DFCC4C9FF1C6AD05C0D776DBF675838C2629826D5337EED815F
+4268604A4EED01A2C7842FCAED2E37F7F39F980866DC5BCACA8616749FFE946C
+A0AB0475DA734C00D99912C544BD31F8A69367D068F0A18EE79FBD4D5385B8C1
+DEB92502ACB3B657A54C9BF786D7DC1ACABDF29591D77ACE1D4FE00E935D2858
+3733656C79DD1C174C26DD97D462B4323F33B410DEB64244095927C572FA90C6
+4C8B709C5B7E4386AEB936C2656B59AAFB74F9E40E680D890903458CB1B2AB8E
+6E629F88B51546877F7799B99DECDC13638E2765343988DE2ED33279DEC3FF0E
+2255A734F5925608991F068274CB1E5301C5B8623C5878851857B3E665490A7F
+FCE5A8DC0FFCF3D56BF55E4AB2ACC6743F52B59C1343A1C25BD46A6A3722957E
+24A6F4B970A594F67A09BADB6A7B4BEAD3FF97D0734470750FCE29807D315EFE
+F93BE16F39C0B59D107D1834FDDFD520D8A429FCDCA408C79DEB580081191B43
+20650B5375AECFC2DC500E3CA934AFA3D241FE7988892CEA42C8677DE18C43FA
+C3094F8DCB1D070DE0D32B69E2E1ECB4A82AD9E38D889D05418DF4E3C398FEA7
+BFE9B364A389B13BE713F5B2553ACD16C14AAE521B63E8A7DD0258EFFB95646C
+18226B01D916D41DDB322F6E83C3E3717FC113BF7D7AFDA2CC03B8175BD7DCD2
+AEC82FB156E051F2D87B9F12F81E1F43E822EE27219758B3E237AD772E7B1DB0
+19ABCE7BE6A2FC3C7DA0766FB82CEDBAFC19F7EB19C7448C1719C88FE99BCB73
+F7DEA427FBFCDF4F00E0FDACD080AF068F7A1CDE18315BD694C60B1DC71DAF1D
+1009AFC847156F96D9CD38A764D0EA70E5E9B6E19A2A0B80ECBB84CA44C137F1
+4925EF5766F00C22F967FEED8115BFB080B2E13010E6D0C16FE49DB5DD70B6F2
+B2BBCDF710370A14E4B419371CF255F11783A875497398D5059866AC5A8D42F8
+C864CC60067A997A808F2F607F0A2A7E468B2E8E763415D55A92E543151A94C7
+EFE9FC9B719148E7F754B8404895FCCE83EC50163DBAA27B9819D4C64D1888EE
+16D4507B3BB0F9DC7CE31CAD5B84A02CEDB67BE34032A62C6A84D9BA4DEA5C65
+1DD36643371D0BAEBEC7D1A1F920D15628C16E6793780FCADB1DF5527B597FD3
+FAD5DD7FE9B65B35C7207A5F9A501ECBA1C6E908275A2F1490C4465D71D4E654
+E34E33A8879E6E1E1C2D2C0CED0282D058E2997B621F6D796CC9385ADE2F08C9
+BD32C9A448773697E3B916313BB4C7B4F880CFCE823CA5968AE062DA5102690A
+59E5AB473675F8DB599319665AEAB7B258021C87C157A07AAD095647EB850426
+B0C23C49395CDC48DBB13D76932D63B667CF035120BAD91EEA82A5E5858A463D
+1D1546B67ABB40632DD64D12C7D9BB515E7526B5AAE5D7E6344DA0AD7947C1BA
+2A9A504B2A0A92D648CB77B08184D56DEFCA72130213E9E9386A9041FB958F9B
+FFD5618983399D0C9F7CE2061903FA8E88D69B4ADF316B992FD40ED5B195E4AE
+88B845F7FEC3D90C2C0D1E8CF78EBE55ABDB3BE802B5CF68AA2FDB9A09A73F3B
+83F07D7C787EDA0A40E0D040BF0F12E3AE2DAAEBEFCF9069994A576F542678C2
+2F2CA8BE2FF6BA35916EBDB784D2807DC9ED8E01892CAF51E965825FE77B1B8C
+D7F561861D274920B3B7933745D6866EDE88F3FF519BA7E0320DBCEA4ED3D6E5
+90546B4C3E0E0F292CC210EF4EE7A73CD45B03B68B6BE3C9CE55C5D627E1BC97
+B6CE264D02FC5E06DB45B1719B1A803034812A30471EF8E6C0140240A0B3FF07
+4004123379D3CD5456262CC9DFAA1A59643044E28E2991E55E2608F652EBB6A8
+AE4DF9A425CC6BF81FF21CF1ED934CF355C7972ED8E7789EF9899F9ADA1F1EDF
+8E6B72A5B8C1F7A12B00979B585CDFECE3165D8AB84573EC5A0AD42D773502E0
+F6A2A35B0C82EFC57F42E2FCD847DC7FFD81829DCF53FA1E0BF44F4C7F124920
+F46186D5FB9A126DBD06427B88C841054CCB55AD373DDA7C429AB6B818DEB5A9
+0389032FE6682EB660D8D3783FBD4D219AD9426E329368C9A161C35F14A94792
+A67024A18FB2EF64FAEFDDE463B141449871AB157F0467AD4DF3034D2272575C
+5DDF0A5B2EB7C03E10DE25AE1908F866715B79BF01A60F4D9C07A3E2D54DBFB3
+7509299DCB92C8BB25F8EEB434CDE7436FBE5D67D8D6BFEF18E45E6D967E1BDD
+CD6CF7456BDF31DDFBE0975E715EA045AB81300F027E53F61C9A3ACB0EC46077
+B0F20BBFBB874846D75651244286A3317D29962E535C4110F79E03C885DEF635
+AE071BDEB87CB2DE62566DC837A28FDE9E1FE0C6E244C61B908244F7BE350910
+8B61ED33B128C139E9CBFB4C8294D75BBFD1922ECDC6ED533CDE8F504B58E078
+98EB92D3CDDF2CE86DDB34598B8CAED5B6DA81A6C816C747524E96A8F41B387A
+E7E4D6EDC2658A029D0F7EE557944A25217443B29E58C9B8665607A99CAAC911
+D500280F0B848E7562E99E652B19B9C77F8171DEF5F462614D45B1C83CDB4CD6
+41331A6AA9772FF7646E0A08294BA7F7CB639AB1EA17449FA59272F6E8F024A2
+21794BF5D7645F539FBB219C868A531F05DFC8314E86EEAC33E4D26DE4884FF2
+CA959E588860E8C50921BEBF3D27A1F0A0041474C81BDAE753780F0E90AB696E
+2B146E9DA34C23F65369B1AF6C89C1855DFB5AF7E7B98D0C963D2B7FEFC47B6D
+C848265B3CA1C85555E4268939C9C8EA2496E6F26452773B6A3E12E2CF11371C
+51A7E1A33C263E2317FC4538F75E8D0AE597B3E6BC664E2AA6412DF95EAFE6AC
+777885C16393C2928FC0A3F7EC5E27345ECC7334823C20A5BECC893B2F90A194
+B96BD811319D25344DB5BDCF8A1D7E1786B47EB4704B09DF1C9176BFBCE7EACA
+A8AF3DBA0BE5FCDB81D472CA53547CB9F3D6053689BC8B1E952B673B411FE6FA
+AC28DFD3F8D189B4C6819A23128D9C23EB21DF4E47D5D52215AA05E690FA4F8A
+66189F057F1A1B6FBFAF717E274943DB2024CC896210C4080263BFC5011FD506
+819CCF318A0EFA77D945C8E2B83B9CBFA789B5A7A1E0C603E9AF95BED431569A
+D16A71D3D7F986535C92176384BD959FF8D0CB69DCDB1381A050CE2C8CED8C47
+DED5A13775EDFB33A3867F44D0AF7E53B400A748F3CDDC2B9B2A175DF50929E6
+1869AEBAEEA3C0AC1D05A3F0001CFDD9B76CCB484F34A0AD15471A2477BD3760
+CA783C9147530FA952526B581C6F28E618C8864AE84E7CE054B01204A4FCC083
+E78373C026157896DB7C7E7DB9BCEC9A9CAD3080FB3D1F37F819ABBC9FCD4B72
+1686A705B9525B7F31B8FC8B06915856AE9D5501CE5C9813240D1B2403544623
+4303675906FB936EE3CAFC898D40AB6A035ACCEF08293BCB0FDCEB71848D2E7C
+D6B7663755C82A6CCB4C93DD2B9AE5A932F76997CBF36C95BFCEBBAC79C9ED4C
+FBADDF60B9745B91AF68EBBD5869565E8053CADFC76CB2B9A2E231E6E5E27F01
+37700F94C4F7FE4034A7B73CCBA472121DB948F25436343EB26C26BE3A826E9B
+CFFE4C9D0C7CEBF5B416EAC51FE1EBE97676E9DB688FF9BC581BD2050CAA21B5
+27A604BFA1DA0450AE66442AF320B4899BE5465854D767745595CC3B9FD79AD3
+B5B4311B1970ECC861C30B77C38B95DED26A24DD55110C28FEC5087D09CA73AA
+B8064F3041C893E40CA50B30F5BFAFF4C7B648DBD9CF6E135EE0E380EA310280
+DB9F15F44D1053592D634E4B841CE63FDCCBA0E140672D866B5975E2187BF785
+932CAB8EA180DA39875DD99DA885D9100A2F090957DF2E49E5BB061C1F739437
+50E3A6153273F999408CFC75D427673AA4734C94CD6D0DC894C23802BF537973
+50172A82E42508A0F1A0CE81540115A33595F8D59C0C3FB3B92A21CCD7827372
+742E33898C45E18268DE21B69C05D7A63BBFBB3B84B88D30F4D9227E2D88397B
+CEFA8F00A418B35E84F348B96CEA7C8A10FE664A88C1B0CEF8C3CCF02FF5BE8C
+D0A96C87FCEADAC0FC54DCCAA3D2248D917CDCAE5DBBE96C6B0479BE97203606
+5474AFAA473759440C1A2E3A7EBE61E24D506F0F26511C89F5A484989383E665
+BB8B868D12A5E9A1DBEA25E2E341724F5146A67457EDD48D35408424410DF16A
+EB0D56D908F0A9B0579D16503298410645EF81BF9753E2EED685118A2C7E1075
+7DF960653BE713541FA119390485C658D8CD5B665A0133A76A872F4BDA4F01A3
+661F40E9F987E86DF70AEB15463CAFEDC919854FD9A88560F1DF9B36FE935AC7
+5845B414191FE536C5C0CE0DB0D721F3D51B62715AE4BF559D04F1292A8DF50F
+26EF4180F215DF2B53FC705AEA3B95F5DA49A583D49C9AE952008D2CD8D79F66
+75039E7AFE90836E6218711C43824B746886E00CD177FF0CAFB95C62E50362DC
+FE20303C6950543580ACA6570692F3C53D906D74B04B8F627084C6D30270934B
+59DBBDF61D9EA6C8069A088A7F38D4F3EB8DB9DEFD542EF6DEE0F6E5C9A78E29
+8F9F293F9DACC5A6AD4AC8373C367AD8BCB521E1AD27993770371658095A247D
+8559EBD023089B73198CB56F853B618040858800F20F9738A061DE083F5720E0
+C99A6E4C6A64214FC5BD0FC0E52526DC998B63A3C57802A043D8862D32400B3C
+46A4C0665627FD605053F9C8A71EE00D47F82F4607AB791E2401B42B0D9B7311
+D529F1596B1A53FE5E4901D1D1D4E75F7FD641856B931DB693F88CE954A99798
+34796F962A5A9DF70BEF70B9C33EFE09D3DF4FD0D089827A70FA5D7CED20CAFF
+E1A5809030DBC5BDE1B8AC7580C21C5657F04D2AAD7D1332C4C735F9A0C7A94D
+3166F2ACCD2C4D974A4B1BB0ABDEEA154FC14334143C2A519CD7D170ADFA0B9F
+D88D26B340D68016A8DAEB93F5BD9B96013273ECCC5A2B33CAC92A354CFE2897
+D3132365B8D6AA1F0E20CC5EB05D1CA98EE33E9A19883688547B5A6EABD44389
+4EAF23C8433EEEC90D2FE0B1D2FE1AC6CF819110E6FE634FE2021E133533BE4C
+E93A17C5AD191C51E5D55D28DA865819855112F502003E5D3D7D52A5C6639935
+BE0BC8FF7BBCED0AEA1CA74FA4F891B1C187E40D15B20B46BD3504D57A860008
+ACEB1ED83CA25A681B1869487D007B0F2B9BA48058D33352106651A479E5CA4C
+DC107B2D5FE3BE08E12EDFC4034DF884D25068A307836B55AB2481CE8B9CB6B1
+06CCEFDC55505D450252AC3360BE96D3CF748F5423ADD67C168CACB594CA0B6F
+E4E65CDCE0231C5760B035D75275D1B474697076DDA2919210B000B325D60C59
+325D0530644810AF81F4CA8EDDCCFFADA4B4C1B3B58295D0CDADEEA8CE4199FA
+3D451C1F9D7940FF162C5F6EAD72E7B2D95BA2EE6EB6B5733697C4A027C81A38
+C195B7D7D01CA8D671CF5CCC6F9805D2D9F6AE695326FFB0C42EBE087C1D913D
+D617FCA36AE9151FBEEFA1D0B43AD77CB2E7B3994BEBF761683DCBA5BAA51ED9
+5768F8D7C080D2E136D479EC264092C7CBE63D88FEBDA39D1BB0A1BDC544064D
+07B419E963D7C87D5024D9B92D25C1235A9FE95A3A03E220F07D1561542E1255
+D33C3FB77EF5B8FA67335AFBC0AEBBA3E42965DA5101C7434267920D74D0C2C5
+B1C16BD9AA234C61594E389588176B10011E343C61FA06AADEA0D981B310EFFB
+CFEC8BE0BF5ACFD19D9AA083AB4EEA1F3F7541319DC5FFAF8DA18575EC7D7E3E
+F26484045DCF949908B0F13F80716144D5E433E60255CA2548458403D72077B8
+9CCCBDCC7E47B19FC4A40459D74C1037FBE7B417A1D776C5AE8D40FCD6D9B321
+85E49BEFD4722476A6D2EB6F76C8002694F15691739D5DDD05375D7FBFC95F6E
+B0377CE6E9C784B49E9EC0BFE88684A74E48D4F8CA18607CF6B73A83CDB3D7D0
+3A23AA668CF8307F1FEFDF5CBF6256571567BA7C619756242170DB690686799B
+6C0145F5B64DBF603DD0D005DDF083427628214C2DF695AD7AA335EEECE4BA3B
+66528870EEB687AA7577C8EB4BCC88AC734D625858081E72B034A2E9F0317FD9
+B2FDEE4EDEE912C91620FD6F85432AB454ADAF5C03B68038DB42875F3E3FBEBB
+6BA834770328823E91D46BA0B0F5B7E33B76D8042C28ED304C81C1C207EA33AC
+B45DEA5D01F19200E40B443378B5430FF70389974211759F607C1351ADA80F17
+634CAAEC259382833451B1D2F2536664C3C0C3CEBC21553A5EB85D654BC8C65B
+809399223618879ED9F5E9240C7C2A2D13DA24B83CFF25989239AE3D18E8688F
+F94A979F2175D9C544DE0E8541CC910D04DF8AD57A4DA520FCC1F2BB88122997
+40C336DF7DBCFF09357225235DD7B3D8C8BEF6B733DEAF5DAF27650A542830AC
+27C472E665B4AA61E9337E4A943F8AA2AB598B964AFF61A83A65F1212F57EC28
+E17D8B2225DD8537FC32B5BD4CD13DE391B27705923446D054F6D61A036B088A
+5991793DD35EF55D6322BBEBB9D9FFD5A76BAF3AD13DB9BE67832795F66CE68D
+773A77238FF6E886404B047AD987CED55C6771C9FB486FDDB22752B735D87EBF
+88C6BBFBB5C2CACE8C7346247EE06B44C23E2D24A6A70C7EA7247B32F21FA49E
+37B37BDF2AE98C88895B0C67F9A8399900ED1890312E59CAA90C8E5CB1BFE535
+F0A83C4F4D342E3F4D37D0280D77321E7CB734145D9DDB584C332C57B3677241
+DCF963EFAB373D9A2391FC04A3B4ED9FDF0772245A6070981FF839DE10984A84
+FBA0BF132471904DFF49942D0123CA75512AD55A874820986807BAB0E88CE732
+AA275383D830D4C5B5D2F94F56045430E520C4AB4A270A1BD0201A9494541AC7
+66842E15525630247823BBDF6EC27BD45769086D9717D42EB94590DDCC45CE52
+430CEF71DD8FDE2539DC0F94266AB853A139BDCD66E46802C3E9A53C902D7DD6
+5D1362823C38D1C57E845D3E7639F6776D698FCCE4DC24AB3C078B1D83602035
+08B56F89AFCA3B432EE6476C92F4DD94A2766DB83AB1E4A4AF4060268D8BD677
+A6F957B1D8C5A3BBAC6B46431674480624BC8715A3B549EB8698EC3900EF5DFA
+062012A7DD640D8622B1EAE2F7375EC3748AC1764E5DF4E6F897A3E2FE3E6D7F
+44C2D640875969895654C00A5F8A4421D095FEC32E4BC9B74AB5A5B2D8FB6580
+78540EB85372B3100FAFFDAA31C090ECE3F8B7BD686F647C389E4B0FDD42ECD1
+EE3E26EC886CEF29739058F297A0DAFF1F8FBC5D60CB9F6EBDAFBC8978DC33E1
+537F8CACDCB57D9B7027EA11ED32CD310F748A3043EC7DF7C85C90F0B5C74BE4
+53175EDD7F2CC5A88DBC2A8D98EF14A6662B45F9EDCDECD6B5F690CB8B86D1E1
+CFEF5866E030790E2A43DD660401F985F1856D8A743A05A7099E9DB4894FFB8B
+1B4D720DA23033A1E4595B6539225A4FF6C824D3668BA06F99CAEDEFED78E4E1
+E48221A5A1C3AF12ACC3660294CF3A57D420E1B16F6EB361F51A5C61042F806A
+336A3D066E2B22CE4AA21DF6444BCEA77304454090E8431BD9692CC837AB2CDD
+B96D2580162FB55DE3A8773700902570E1B6E689296A36402B5366E366A3F0B6
+18BA230CD8DAE17DF90E741DAF4C0404CFEFA8159E8C03AD6016BD663BE33BE0
+8F1BF9AD73FA922D5791732A50354D38F2AC7B83C6E60FDA761F0F009F51BB1E
+4A2E82673D75CBAEEE3B8EC80DEB9A7AD2B328AF15C78F762F88EEE3BCE81410
+4789AEBB271942176DD52474A07BECB54DDCDD8FA2913380ADBCEB87D1B23C52
+50E6CF2A913E14AB5F4FA802604D35C98AD99A92917C87F15EE76AACF39DC28A
+D59C5AAB05B9216F5385146B25B50655E1462E191FB3ADE1C97E36C4C9369577
+A9402AE7E9F4137E8B1E4008D50F76483BD4E9806BA9FB98E54537BEC1E56B05
+0591EE6F2266CED194B29C73E5F625826522A71B7454D98AFFA2EC5926D93DF6
+D089CC3E12C7584830CD9C77EB43FF7E2583A5074773D7495361644C85B6442F
+844F2FD71F0F5D3A1CBA9739ADD039980F3C0DFDD485C50DAA60F0E81C6CD3CE
+9B81C179A12A51A60BED147CEF4B94BD26FB960833A5421A65614D08EEEFD011
+C48432359ED7B999977163BE124399D38B9700FD5728086984A108426D0AED4D
+E505C25C4BB3F80F2231043459B22628709EFD992EF0EA0BA2CC26DFE03B1B42
+6A0692971A2C35C702EDF29A9A30D5018F7BEF2A2E72202215A421DC6191EEB3
+CDE5FE41A2E43F9FB0CDAAC238AB9D87AF0D43C01130B7318A4FDCCD2B83F46D
+DA9207EBF4F608EE7D8717D7483122FDDE8644B02F77ADACAAFC0DEAC9D16048
+DE81C482D21B6DB8D5339D3139993093EE114F0C58BC6A3690EBA9AB3FEFF940
+F6777596AF0F6D352CC2A5DC30A39BEF34A73610E4514E8E68B893B761A16F3B
+186BED0C92C7F61E6A524C90FF77B606ED46C9BE9AA64F536B0C7B0BCE755E92
+1689D7508D047A690D50B31A2F17547A0F53A935829FBCFA1D6EE4E246C4611C
+6B9B6D4E20BE924DB9EE7543D963693F2482BFDF19109544CE83D4546A1CF959
+A2EF1E1C272871D221986A4438A3689B43966B3698AF22BF4246396D928F7558
+A9F9D272B43EFC2F57201500F6B8EE48FAADC453516DD08CDD2A78E3E534AFF7
+C1DCAE8635E1A4B79193E73B8F62774C0F589244D4917B994ECEC314790FCB2D
+0D621A40DACE081033C26440721DB001CA83F44508AB923FAC6A0857D730C281
+6FD89E28346ACDDD9A398F8CA668C3D39FCB3611D0F03B73D2057C38C83DBD02
+F1CC338EF812A3FE086A4EF7E4ED14F756A7FA5C79AE83FF0108D47FE72541CA
+8E34DAA88E94B5BF75B1B35B4D2B21F62640EABDF4BF68B4216D51A8D769EEB4
+C73AEF6AD4C9A27ADD9C5CC129740699B273C1F01E2AEDCC75619A80B5256A4C
+7228B41A07B6A32A969D8B6BBE6116589A76AB2B9425DA1306C2AA231E3AC37C
+2FF072C9051415AF8DC563B0A765C33B07804A9916ACA8BE7C4AB80E8594BFFC
+046939F974E682C3A927591A25528FF07B614AF96CA8F847DF97DCD48EF1FCD4
+B2F45C6055A75BD19C94B2FF9A947CD5BB7C8C1AE7338C950A8E30BF328B7B42
+971AC3C4B5F3ADD9C31166DCC4D4978223D949F8C8F4A775C642789043BDF923
+57A0070FB40D81F4803FB76937D4C21F2E8F06A1F4CD83A627157395A28521C0
+9B2C759EA0A02EB28FEED28AFDC824647FB9B6AA04740C5279F7F95BA34FB925
+BB5CAB08A9E514AA9F8B676A96348DCDA1A82485B6C0B28F849307EA6F41B821
+153DF55470564207486316071549B5F80E0238E509E3F7273946D3CBB0AB59F5
+E08884F4AEEAF142F32FF2668A9FF3507205D25179B9CB593733ED0498C99273
+3190A30C5F66FCB0FF2BB220B009774F5584EF66B6A419034E51EF5B3E83DAE0
+66369E8D16259EC1BB75BAE6C63DAC64E07759FEF0DA60AE4DB990226E9A8093
+D291991FEFD6417251FA873437C4AB31E643461B78ECB1BBE5D5AE8789385F2E
+CADE863C9743222DDFEACC25DC8635CF6EFD759DEE67ED0FB286A1C045337693
+B6754495C96352F9F74EEF9A967F67024CC5E4A6115F3085AC7E07785787ACB3
+568401CD3CC278402979B44FD0CFE93F078BBC1B050563FE0CDF9FBD11CB1550
+8AB40ADD10B9723B46E7D4F53C42FC7D8C23EB92C9790D2BD26EFC403703D017
+1F91B722610A52E62B23FE31BD1AF215611DF847B9E3131471E386447ECA86E0
+71F65B0612857F360B036FF3E407F90B058D4C2C36AADA2DD6D810F916489A36
+877278F4EDAD98B790D771E06FA859F0AF592545F8873426ECA440119649A1A7
+084B2AA1927A97280E11D065ACC8D60C6D44BEBA3149E7FFF76B02918679489D
+976C50673A3B07C3BCF33302DCB31B285284903D64CF5EB0C8E8D47E0FBE0FDD
+DF6651D6D84F30D7E9F90DDF5123A8F152891229089F736FFCBD03D90DDB1D6A
+27176D9A9EC84376E9B4F575568B3666D956899CD754137A2680DE933E201048
+0A858CFC4B957F6079511F72544FC23281464669FB0B08790CBD44F71A5CE530
+B0FE5FC4DD698652A8B5903ECDAB02D650448AFBAFBCE58022C4B7F78C7AC6CF
+9B79596025A761A16EF0EF4D922CB211697568EA0D83DDD7470AEF757CFC14F2
+9527AED9BD969F2179F0DEB9F491D1A7F0FFAD4C36820C72F0B71252D6A41F1A
+F3E76A7ACCE5D49836E95EF0DDF5A6170911B18FA7E00F9FD1587294AD441F79
+B7468205827884BA231CB24CDC62D8D326E24F7229DA8B246571FD46CDAF9C4E
+09F9CBB6D7E3F70C1D177444A7DFBDADB125EC54373679C166205C7F1A1645AD
+BCC888749B56996A65A1606C0E1324E0514F7CE999D420C283148118A0E352CB
+27E9B0E393765D0D98A166506A4B10894122DE49D6BEF4058A85D8E55030CB7B
+107FD5023CE33DCBF4C4BEA7C3B7886AEC9D1E31F604411337613C9D8E273A11
+DE7261463ABA89DC2A2E06A270860A98B3B460D87E2B2D65974EE66AB048D945
+642152EA04CEBED61FBC84A663DBE4E3FE75B31F21F8C62447F7E85DC4B54617
+B898B4F47348226659D98F746B4ACC7C886D401BB86D323AF4A253D4825792CE
+5C855E4D548FCAD5CC74C8CD9FD20F30B2B33DF38880823D6658E4AAF624BC23
+24A2E64BBD0756C1EE5ABECFEBD307DB45FB2476939E0C1EDCAD9E0CE0CA7CFB
+0220E91C707A11D75BD9DE2F376695E5090234848D21DC1BCCE385BCDF41AC17
+6F6CCB0189A8810D8120100F8FCE871ECDDDCF2FB4A626EA3E54C4FCC981AE50
+23E59C140399DAC4AB7206A228FFC78AF577117C26314FA2BE52F5F88B9BDA46
+CFA6212ADE3748354C5F6081037FA10DB289438E67FA7E906D1257BB91DC1DD9
+3C2339811ED975322A120CD1DE2FF1B9648B651F2FA0F64EBA306D5F914FF59B
+C0550C3A61A3771D7CA1E02E242B8367C9968B62506E0770228BD5A95B11CD06
+695B828C7E712276531E5274FA311EE31B47CE4A4D218148ED89431DFFB7C22E
+DBB1EDF744F824A08C0F3C7091BA4D421CD3BEB57CF66FD77A0142D7517C9A9D
+BEEA3F9311A4D84ACEFCBBE93186078BEA4102AA3251B14D7F763DB586405BD6
+1500EE9DD1542A6484A2276DCE6E17458FC6899671CA0241E1802FDE52C7661B
+11A8704BD7231C892DEE22A02D1188F5540252C69D02591557107B909D641D00
+B755B1F9315E1D953BC99321B635FC596BA68F677C2CAC1180036F2E911B30FD
+779371239D1E12965717A66BDB540A99385ACA8A0C63A4402954A2615248F1DE
+4D02ACB29A17A63F028B3D3B9153B315A6A5EB6C8AF611D61C4AA9082520EB6B
+50B642EE1018A45DAE44A7EA71AFE82F53F6BDFC19F6701B671053A71CC394D1
+5693DA65C246A400258D0E127F7CE599DACB334AD75F550940C108C8FE279C12
+C9380437E0C6C8E69EA83C47C4780BDA38E755DDF36B9C540CB5DF7E46F95B7D
+73D1A4E00F352E6741B81C1F82D4B3D5333A3F98CD3B956510A52A7D60F68CAA
+74DADCBF5281DF0D81EAA61B0193BF918F21FA9A454BE34033463594FEC414E0
+E14966820D96C5F5FCCA2490E783EB61240174B0CA2BC9B928745D067D263D28
+B2CD61C2D75015166ACA537C2D3B8E241DD57D9AF50EBCF715410CBA17746A46
+3E834B64D26FB7D887A038DDA657C44E2E422544B4DD929047B4CFC58D760FE6
+2A52AFC76D250DD6594776F573563653D516975601F6831211D5C748E66B3DA7
+2B861E300C72D7AE4FA0A19E1605E8C4F911B346B8ECF5EB7C654F62254A33EF
+4ED3FD138A5E157BEDBDE5C8FCC333F1DE4AC6C1030F1A5407E5D1FD230AB639
+D06872378FF6DE332EE3F0A1DD26E86C0FFE90B9CF08E811404ACF29A13472EA
+3B465F09D3D4C2C6FB189E70713D8E2FE03E346BF54CEEBFD5129D1B285D3AA7
+EE9B581443C09356BE8D8A5D7A8DFB81F0CF6CABD86C1E75E3071AA45FB963EC
+0AA826EBB493F753816876C8F102600C1760DD1EB9D2CB6EA36EDB43CAC0B78E
+27C4A1DF528A46060226219F4DF76707718698CB4B65B4C52C3729BD958D416D
+3B27BFECB1727E6B721DDE8A1FEA8B68D007EC57B5A4519E023C3CB3FA937247
+792EE9F605956AF4ECE86D3CA47BE1CD114BDF04548FFE59D2E58FC9ED82BF46
+CA02D51D3EBF597CFAD13410F309468F64F1011E84E2F7C3893BE1602DEC3EAC
+9229C9A95FD563E05EE029C9F38C59542B66D0AFF441FCC67DA214EB207CEB74
+F77A10A63E1C7446A41F0DC71384CD637D6A3C414035A56D9039E891B77AB2F4
+B2CB91699538D79CF107A7F4743E37FFFF5282F1BF9EBFAAF827FDB01233E5BD
+112F5660B10A4B963C243F5B6E6FAFECE94554DF537649C97D7ACC8DFAD9D732
+79D5A9841CE59E79EEB948138FC33EC003CEB51898F6FC62812DB37991335EB0
+5D8DAD683A3D300D7684AC8D9E587C77B74D1B7341BD5D0369552C3E756BDAF8
+B6A5419476B97BA84BE2FF05636B6B2A87AAA2AA72D82CD95016235CFD06A285
+456A092C53AFD8C8EF8FA4CA0EB461AF88C279D4FE01FA83B8C7C5343476DC87
+FC99EC822E7CCC6B05A9608029C0DA9AC146918EEDC491AA22278E476CC848F1
+14FABBB7EF247ABF5C25AC641A8EF9193446DCABEF1A7B521AD607E3A84B9488
+A16CE55A941A1F69814E5A0EEECB2824FFDB5219DB0ADD43C096E6E039CC992A
+48EC1C588EFC34690DF3790C5685F375068E1F42E5DB5AF73EB79FFA6F0AC4FD
+FF769FD4D55C546D77940E8056F40D6B01A034DDA886DD574F00742A34308E35
+C2738868118C127D04C92D9362116B4B7C09C57EF6A5FA878D727F79A7638F17
+2CCC14FAEBD9286AFE00298C925AED083372A0A8328CD363A7189DEE38FFE591
+5506158D18AD4F371EB0B296C2FAB98BF1F7F38AA06739C9AB8A57448A1B1A0C
+B99CFDBE803419CE23291A8BFFCB4E21D9FD2BFE79C3622636DE477C67487A22
+E91D6BA92330DB07BB40F91378096A362BD85B959CCF587C5AAEED19BAA9212E
+B0B34870481D8FA4337223D2E3F5B743F5B57BE9FA7FA3B3E43F4AE0C9303B9E
+88D1F88B8864C4F015140F8A105E0A61DA5E1B93961C4B4315E28666C275626C
+A647AC5B4E0FCCD862EB470F014DFB77AC2EBAA1C4DCF9D7834D830670F07E02
+350D8ECF29DB5737462A0C36822C739D93375F8428C37A873A87B3EAA65FAAE5
+932465C8B530D9FE423A00CED684050AAF64F5D747C5B856444AA93F6B5F03FB
+CC41D94D6DEDF12DBEAF6306ACAC51CC75302D9C6A4CA70CD7A684AE2EDF14BC
+CF388C39179DDCB046C6738AF421A0A01630530D0FAB6FFF8E6042E6AB17D810
+96506BB827EFF95306E7AF195EFB0B9EEB55A1899DB82C625492234CF4E68A29
+C07C2EA2BDE38220EFC6B9FE83101091FE396587248417D42283C9D92847BA8D
+881C8A716F84557E12DE4E3DB791F6AD527E51BA7A0736E62CD1CEB66042F993
+9F92E25D656E42BBBC9C6BC54A5F78F21660B4CB151D0391E97B85362C22FA6F
+8E67858CB6B040ACA9E7204C2599D6155D37E75A7E9C0F3055482311B764F1C4
+F17EA0B29A546C1B81CBDB19F30D0058B9796E4D3289A9C2E86B6D56552F5762
+3C02F83DDA7B8F61ED2C9EF0D14105465B0E7C3D688792C287D4DE2D71652CCB
+182B0EACF0FDA865CE6A782D33BB49540A0A6B047D19F57FB0EBD39072622032
+1E4894586F5C7CF31EEC0427D5FA06B29FF0C5D4B900A45E790E8C23C8957133
+CFD400F240A030C2FBD326712D9F5120037A7FCBBA4B39ED0AAF1C18C0D78A72
+C6A1E291E5EC47F4B66318B47422E6C455A3D6814D079E22950DA752F46ED341
+6126BE00C0A6D8C7FDC227C8A625D08FACC075E2BB529A385EFA7F38B172CCD9
+0D731A652455CA8F4B4216C60CB1A1B49224D8B00E4A7F8D3C31DBB136042628
+5A9BA1323DDE0BDBB408A024042BAF622E0040C17CA813A7A6530D5684DCCAFD
+0634936916C2887CE72703B5D9359E4C887616695DFFF992C5C9F7904C5A5627
+1AA1C8D9FCA58B379F670C6141B52F1AC84D8C3A591C0713B5367F4F8F6957F6
+0DC81D67C0BD6BEBAFE4D030B5D743B30998EC0EB70A70A58A014E8DE3EC0850
+79D8A751041D488D8018059A62B44FC0C40D8D11A740D74311A918E9204F2236
+94860B2644D810BC3E87B3DD527A8423A2925C2A59A335B8D57F033691216BA6
+E3D5D38FBE15A498BD87B5C31A02323F61A695B20B65DBC985CCC2CE245E6F1D
+60601957C468607BA412319DEFB3D42315609C925522B96F4ECDD70131CDDB10
+36CD036818025B63C235ECF08FE395285B9225AF765143B3F13FE8FE1353EA87
+B459F98D6EE85DF6C06C323F421927B129DC2A9AD9208BDCF859CAEA206DE82D
+7C1464425EA25D04CF2AED4C83AEDD2511B3D4E08FE9F147419CC9C28B38A8C9
+FF8B9BE9CF6951573A98EC461C6B2303DC86E3A5BB8BD938ECBE7ACB705CFBC5
+1701FF9EE7A76C487E72C0822991C15DFF0BF6983029B812C970F80782A09687
+DD10D3CD198B29532908C4DFC2EE7496FD230AC7BAB5B15331F0CD8036367FDB
+1ABB2B332ED837ACFC52CBB63C6F27572FB42CC28E67AB9D2FB3712BBA12007B
+B11CF498A6DFB4ADB9A2C74994D75A1347A0B7BC8AD7A7CD08CA6AD68C7AEE18
+19BCF01DCD01AD1D6965CF93434325E788D7552C8B1852CA77757C86AA675338
+012ACA95E484E1199E7ED174B9A95EA7015A3E8B1FE6FC8AF744FC86B4D2F614
+A6C6A21748436EBD06A8D5BBA8A67C47438690A85BF8EF10CACA4B2261825B5A
+B3856886BF5D7FAE24FB07F5610E0DE95DDB232FAFE284A770DED27022B513CC
+7CBC92EA51DCF8485606BDE0ADBE56A38CFE8DBBB4945E6033B5632ABCCADAEF
+28B51D4543938AF9EDF15A3B05DDD7D0AD6329790D8ED77FBA7D3E9C484B2AFD
+80A9418BFCB205A8F0F24B6E72298AC4E592F56DDC0AFF071227D26099A714D9
+AA03D76B9D1AD77EA2755214CB70575FED0319A5C32B46493718BF4FF1D61044
+49716F0BD726DF7F5093B93AF7AA3F1F4BE65D5D8186079B15A4D83DAB75BE9B
+747CF15FE3BAFA4851AF8ED91A3016F531485EED2ADA0C65D785F4298F9EA5A2
+4217A74AE867ADCA725873E97AC8AA70D537189C683636AB356AAA3787397966
+5C0D75FE27D177376DD1C5C63FE4B3ED139D99FCB62383BB6584C2706E405079
+90F9E7102923AD74F8A10430BD4B220A8FA119FAD9DF27961F04179733F2F0AD
+48AB77D0FFD04B815795281D8DB5E61293C8CFA8D0389C12615FBF1475DE1CC4
+4CFFC5219DBF80685F8AFB23A10C1DF11C649EE187FAB44B0666E3AD3A1FE31F
+431D63F220EA9CBF61D5434D435B4AF4CAA0991CB1EF93702B179EE60280B0E2
+873274B93A37B799E141593D6677F6468017C019D8078B0D1AA9C251C1ABD9C7
+93749B520966DD021C8B4415E36F9B03C866847359946583E7E3F63BF138AA84
+BD006ABD37D837CD7455D3D5AAD9723F236311650E466193CD8852ABABAED8E4
+E633588EEAA7570D7C1E682ACF6ABCC2F7226CE740CC1BF12F04A0A4891652B9
+1672BE774E5CC37C5CEDC9E9681DF791AD13C7F5BD62846778493A082B820E42
+FB5BF542533E228BB93428AE9198E0DD790E148847DE4794D82EC075DDE75DAF
+EF2E3A232EDF2DC309285C9796B759E0887C0DE13A5094966E247226B51BB0F3
+1771D58DE6F9AE49423C72EA25D53C0B80AD59C5C443D294C99A5B909332634F
+AAC6BB5BBAA4C99D535938006518B19A9E2827E94D296F8899314143D7D9E14A
+559014144536D3DC4920B150B9C4659E7E56D889B729B0ABC8F889F15AA73DED
+74A3668D53E0A98E91788A60C2EA71673CCC9A9003EA4F35862999AE1F55D5B9
+906C64DCB360F272E882F3D699FA8AF743726FFCDF98E058F4CE87EAA1CEDB60
+032203CD52FE9E42E573F96800D9398C431B5D20C41802D63DB076716CE894EB
+BE9759DF4562C6FBACDFE1F474FE4256DDCB4FAEBB69A91E8AF74D0E6C2949E9
+0BEF88A4B5471C335A622E28838BB7771DC79322A95585B002DA09FE6C013DD4
+7D668F3292BEF05A929B7D18CEF6BAA71ADBB2D156B82CB219E618D48C3FF60A
+8C9D26CEA3890E3037FB722A412FE89D6DD2861458863FA44C9E2A018D30BF82
+1B18F4CC928F36B5167DB984FDFE407413A91C2BC655CE98E171F0F60C42290A
+05B90184C60CFF41137745B94410311784D318D678036EBAC713F7CA201132EC
+C764F2B6E9619F68BA347B9BA629E0F7EFA7DC7EA63567BFBB75FE0345597BFB
+2378827E4A825B97A744F2FC97A7CAF94E76AF6BB4A16259DEB2A19F9A9F1FF7
+581352A33602FE2D088336C270637E473B4D7557418C198D35005E2641B2E7C9
+
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI9
+%!PS-AdobeFont-1.0: CMMI9 003.002
+%%Title: CMMI9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
+/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI9 def
+/FontBBox {-29 -250 1075 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
+/FullName (CMMI9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 58 /period put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
+7E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
+7A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
+BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
+82DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
+E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
+91564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
+540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
+7BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
+93AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
+EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
+972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
+6F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
+796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
+DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
+D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
+E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
+0F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
+F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
+ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
+72A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
+F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
+4DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
+692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
+BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
+4E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
+CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
+41B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
+9198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
+5BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
+2E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
+8DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
+33809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
+03313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
+749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
+CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
+3C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
+64F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
+90B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
+DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
+F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
+4EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
+49D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
+E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
+58619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
+88BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
+B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
+7377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
+01794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
+19654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
+194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
+53EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
+F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
+412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
+C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
+C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
+4FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
+E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
+AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
+00F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
+E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
+C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
+B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
+2FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
+F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
+0B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
+28352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
+E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
+C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
+20EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
+7014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
+5DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
+74ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
+90430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
+3EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
+98A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
+54799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
+93C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
+19CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
+9DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
+E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
+A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
+107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
+5DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
+22013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
+B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
+403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
+D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
+20781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
+943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
+AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
+A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
+B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
+2691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
+2FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
+E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
+E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
+8D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
+87326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
+2B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
+D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
+512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
+4D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
+6155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
+9CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
+0BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
+9718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
+FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
+430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
+56424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
+718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
+F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
+95F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
+EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
+6B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
+6ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
+630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
+6E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
+89950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
+3BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
+90777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
+38CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
+EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
+B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
+9B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
+1571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
+1B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
+62B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
+84B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
+AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
+D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
+BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
+4ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
+531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
+FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
+43FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
+D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
+0151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
+E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
+DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
+99D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
+8DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
+8A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
+A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
+362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
+C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
+E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
+07F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
+0ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
+190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
+5B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
+F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
+005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
+6F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
+D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
+F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
+F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
+2BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
+F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
+0D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
+73CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
+62CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
+5F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
+F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
+6BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
+DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
+EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
+E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
+536E8D90189917D343F5299024239E2EC1D2D177D82DC8E344A7CF2AC71AEC18
+36F139E7A4EB59A67192BCA9ED0EB25DE13032F6FEAFC3B1F4FC81BB0EDC41DF
+B9EB92618667C59EA499B788CD26C2137D70F1B0AF793AF5AD0D0941F2E746E3
+F5A7F0288BC1EE11E982EAAE763CA422D72FBBC0D754AD58FBF92629DC8866A0
+431213513744DB48E52EFC89C83FEB082588E4F30D7DA77BB598E51CAE7E4900
+5CD570C914EFBA426BAFF7A56FC775ECF5BE13F2C42E51EF96784E5201C0B64C
+074AC229FF0BFDF71E6D5E08D8755D2C12B770B6466A9C9C61C15582DCD2FF78
+E9E74DC2B1CAA344EC0339EBFF92CD2CC1D62E2FA8FF15E7459A83C6CFA58A77
+2F1A40BD276E76B675FD6834052B33BF9190F04DF6AA5FA3BB7D77A88DD5B600
+324C5E28216F47682EC29EABF35BA842BA2294A3D72B126EBB852AB741186C9F
+FC84B12DC4A6CEC08F2D03EE61B65C845841EE17F1B765649A
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSLTT10
+%!PS-AdobeFont-1.0: CMSLTT10 003.002
+%%Title: CMSLTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSLTT10 def
+/FontBBox {-20 -233 617 696 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
+/FullName (CMSLTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 39 /quoteright put
+dup 45 /hyphen put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 58 /colon put
+dup 65 /A put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 80 /P put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 88 /X put
+dup 91 /bracketleft put
+dup 92 /backslash put
+dup 93 /bracketright put
+dup 95 /underscore put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
+2E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
+6B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
+979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
+ABA3AD094FE8D6293916FA82EE4F486C7E513A06D4C9BE44306A8287970B4ABF
+B6D1F9274A5A0BB6ECF713ADBD1260D5D6C4420D357FD486470A74B2F0621B59
+A9373ABECDBF32FA68AABB66FAB0C970A3354A335FEDDA1C288245E6C890B8DA
+3D0EB953283ABFE372221EEB1586B0167F634E3F29CADCAB484B81A243CE1E3F
+D5106AD6BDB1AEC91123377F816711CB9D5140120FEA84B8205B79D1569509FC
+6B671211985CEF51691C45A168740BD826464B2CB0ABC575E7D453161328F80F
+3AF1C99EC219010EC6C95E0A8D1909719CF18BE424967E90DF67537220E60C3C
+4345B154D08F9EA684710E659DFFB0BA1B7FDDCD519305900A5E1CDA219A6C90
+DF8BD712A3686DAB90344E8784C7A9AF3318550285039B701B9FA1D3A3C3B6C2
+753F1E794A3463A173C99A9EC0E2AB5737134CEC2C97CD6A37E38692ADB4B131
+54697B7BBBB23680C72CE96066D8007B90AF0FC5958232AB4F21826691E9874D
+107F47DAC1026298D787989BD77CB43A09FC95F6997DB00D8483AE9C2716CBD3
+7CDF02DA34FDA2F0754ED0968270E118DDD8BAAAA65C41D699E2BCC2556AA231
+328187D2F50FD518CF458B0BA1F7DBAF4B231CFD61D5DC56335B53C3013BCCC9
+85690E19E992ACE55EEF2BA7A75DEE6DC33933C226FC1494269B7CA4CBAE987C
+2C787386400172AE3F44AE47115F4117EED866713BDDCA4A7AF658C49F913CB7
+308635000043F63BA210410A66E192289592882C477B2EEA0B2A339F0E7CF450
+CA0EF79D3A6C28598825CA03FD688DA60C95EF707C6E67CB7E57DE7A80545195
+739ACBDF27069F34C9E0216C3D17CFE7A652B910FCC9B9AECC2E646809C22D93
+FAFAD465DE794755AFF5BEC17160C9563B5C51D07022E2D3A256FB5CACE131D6
+F4B30F591A0419D957D8F0DCAA0A8D65A8D83422AD7C2613FF13A302E152B312
+3F1ABB45E42084EAC894FE335C07324849C9736D00C872C4551997DB889AF17A
+A52C5AA77DEB548B0103B77F65717F70B90C1BBAEA7BCB4959F32851A9882A3F
+55673F24103D6BF7FB3AD3EC3CC50FD8FBB4A6B13C3D278174320713A7B327CC
+A71F01E50840B33D0FC3F5F6A6F2B0F2D0E38494B1C73096A430510F927235FB
+69E931DA8CE5415EE88D0248565E3347353621A48F7948AC9EAB5F5057541B50
+82BA955D90BBC82E582FD71904445A59186022FB928015235B60830DA59813D0
+8DA3FC306C43FF8BB2CB6772B1F7BA3C1AA4B2343E7DA7E065EA53A4E5E28DC8
+0790F2D5CFB203CB135A08DCC9702B59A63290444F202756E55B9FB053F773D6
+0F69C63E74DE593E49186FF4304E8FA76C3E3006358DE549E946DB69431981E8
+1261C9C9A884E4EC708F69E6AF5D22C5BAC49F2AE85903E3D48D03B7B97054F1
+D2937A0C685D912D6D20A75A77712164DCBF8FE4D5460DACE139C5A934EEA09F
+B94DBF168A4BC03A9D689936D833018FF43837DF9519AD10F357F00BC068E737
+170FC9FC6715165F733A0B6FADB9ABB48B845167DBE6D771C916577FC2132863
+767DC6E3D460E779254194AA690983184D934F5E858C1176B3862B69B42EBE7D
+EC9AC4E020085D474093F7694C8A8C2025D4B0163E29320C384D62A9F3FBCB1F
+AB5A374EF3DBA48AC2147A207AEFE8B78BECEBC55C97B538F3A0FF4589D171E3
+826342C8A5186224FEE54E4C6AD5EB02BCB4088B132FA1A48362824BEF161235
+8E661DCFDFD8429C65CCEF63902D0E07C2FEC1DC2756D942F13FECCB7E8A8048
+345338F24B7808E46A04A915C111F939E2669A12FAC0BA4F74B832EAC83EABEE
+67E2817C058E69C2010F2572FDD15194CD8DF0FE9F827D349C0444A18D1A86FD
+802BC120A5114FA3523C221242C7E767B0AAF6AD15DA1561CE8EB18A2401D71E
+20481FA5F1E247CB5288F47795A6A3A3BB186E89EAAC4A54AC91405427136127
+5B151203426830F7CADABDB3FF63B40CA29CF8E667E71615869978E99E6F3F07
+0170EACDE3DC62DC05681D7680E2E96C30002AE34A4E5EAEDF88577601A82C36
+22D625A03B0451D7BBAAAE0C396711500E94A482EA787495073F16A76D1657DC
+4EA7C7B83BC30CE7F145B65B6E2ADC207D192CE3B5FEF7031F4BD64F57E1BEFF
+CCFFE06F1E4ECA48B442DF413766A70DA626359183A9B24C70419487423C816B
+4BCB067E661E47E172563090D6328BD738D2B0FE41A0C1D7A47576A79BAFC880
+0473229D134F998909898301CEF50A82B627A9A06DF59D0B9C530EC5D877F1E5
+220D3A1ABD2ACBFDF1933F92B3137B22B9F95A961D93B729307749A50D8A6403
+7AD0F9C40743E39B8D198CFCF7C033D99440D46D821D97545B930EF92E7AE005
+27F2FC766FDD4790FD1913C7A13328E73E587618ABD9008022C5C6C23935CEFE
+B5ECA2CEBA1D25DD846B48423F7186E03B1F61C8F1D5AC95CE03C83B2F221300
+7A761D6CB5F7F9251D3F9A7F4B25B99EE7A1347ED3059A811A82A35A033E9B07
+A4FB2A95009576F48665605C478E5F6C1B135016FEB4AE6A6BE4B4359836E04D
+45AA11366992162973FB6266547C2E570B8F56F6D992D2C0F63950A16839FE10
+F56E59D93A37573E3268C5892C9F3358753D1FAD6379E82BE740FA17236E96F7
+C53A2FF785FAB86AD17EB1DE8A6AA9C69B91C9D9B43B5188E51F6939FEC21B65
+AF17DCE95DD3BA4F1DD51F0BD5E5869A1ECA7398B6E664EB0D189181E9C23012
+DC1E54C146842A90909DBEC03B79B58909205F2CB2A7F83C66B437D7F7DB9781
+FF0C67F004E979C95B706D8D85255CCD827CF6196D847DB380B56980109E96CA
+997157BE78A4F758CE59D78158A854EF2C20099438F74777D3B0298D45BA86D4
+3C0AC30C984718FD62ABA0567AF0A70C1DD41953E3E7212D5C562085177E650A
+2ACD49940551E3F7619B4CC31DBF67AC15D938619B95DBF66E6D1300B1BB8605
+31C4011379FB5388CA49E4A9BD6C921560CB8D513F8716A0733D2A7D77E62D22
+A69B54E9048CA168D210816E613CF6357706EF6B118A1263B858B7E19AA98891
+43BD675B06C893579957BAB97199ACB82C080593ECB8B66A7334779CC16E4D0D
+4AF365CA6AF9727AE29417B61A5FD52452873B1D666044F8E7C1F6C6AA3397B5
+94A5780F4005FB5E41698FADD1594B505A58253D68D2AE3320E22165D198050E
+425820CC0A43FF1D61F168D87CDD30C14D387610B6CDB63BAA39B3EC9B3CA616
+FF1CC679227749DED3DDEA26B4D97C633090DCB8D8A6E5E07E3579E4A99BF1D5
+51E43D1D7F139C9CB1D76D8F693A3F23A74EFBE79F01E0B850BC6B6C7F62C2E9
+859469A144853434895D73DA6BD2B348A48BA80E79327ABD96539F2EA2209852
+E1BF6B0B819D7C68A9A1D0F6F39416E3EC4AC21DCD3C51D3B5B8D417EFAE165F
+2A7E0B76E558AC9F685A76FEC7E3C73CD607D9025DE6113BE5D0401887A53910
+82A813B026A502B51D484797D9D7E79A25B6624940AEDB4A15F2C73CA1AF60FA
+22D15BFBF268EB044FAE17822511AC6580D1D74DBA3C3335217780B29FEE792D
+200B00B8CD888A8BFF15D938FC758BB5CD9B3E08E1AC6CD1669E663BE86711A5
+892684DFCAF70C11E803164994BDAD89128AAD6461D4558AC2ECA3E05EB56D32
+0290AB16A6DF7133DDCBDEAE89C6CD83552792E23CBF567D57E46548EEB0A140
+437492B53C14419B6FE7E64AC23923A9E85F56A9DF209DC4E6BCAF1E045F9CA3
+BB904BFA150F4083C18B0CB5580450CDB657EA768E71222C71DA911A722AB9D9
+E18B6847F417125C40EA8A0CA1F551A4548712D098209C78DF9C3F78605E5402
+DA2DBE2218E49B819296D5AC88D17DDBA982E171733D1E9E295B3157C9B90BF1
+CE68CB185947D1E3D7544155B741296D14B064BEFD3E6AF25C74006CF6800551
+80FCAAEE6FC9105E1674EDFE68C45617D8D3E2264CD395EE94EDD017EB85884F
+FDF530EDF4F3F14750CA066F149E688FAF8EF4B5FE6AB515CD298E8D170346CA
+9B32BAD1D86DC147BD12EBEDF6CE1E749C5B48314F512470A568C172C35CFA41
+031E34586A89404CB5372D7B2C7A6D96F420D4D7C2D4C08184F4AF86B4536A90
+9367598424112A7B05D7107B23695CBCD569002290599E0FF4EC5C852C31F5F3
+9BD56BB840DC17DEEA579E7A7A9F764788D4E3774BD523D21267869224D68891
+4523070E80A123B58F7B579866332FC38A41A5915EC06F2D14FBE4A6CAF59AEB
+57E98D661637EBB885AA5D74AD429CCFF64E5149815E7350118E6385F4C74E0B
+2EB474A6DED021D429F01C9B0634A09250C40E22B3BFE1B7246D18116D585F39
+0E06E9B5F27A6CB77C8E9462189CB900CFEF08F798CAE15FBD94587F33816EE9
+03FB2DA6826EB69D8C284AB9F7B00630D0420EB6E35E0E288BA25F5C2345C067
+22412633898AF99C2FB232D1469025BF262B567F29A05F4816FE8EEF5F02BD79
+06202F6A1E3E5D4B3C91BA8D5FF53D5136BF70E5FAEF441A7310CA83721711FC
+39EE48BFB2FF287234B1A6102AF146B10A632A53AF97E11FFAC3A2A86BBAE3BD
+E0459ECF0305366078066F2CC628A3918E775E4236651B3D817AF1684B07A163
+A0142D16F55D2FB5F2255A8813B8E54EF3E801E95A4A226AB8C0476AC5EDCAD6
+9258ACB6F7C0CBDD298A0B816560622A1871FBE2FAEBFE697A8216A0D8FE30C6
+B1BA6C3E975F78182743842E7F851064037394142AC91B2530FB1D511EB20F3F
+79EDD8B7E1579D35F6E7B2883C47A46B6C1A458BECD6BE58AAFD834A7D82A553
+2FE4E66878E4699856DEDE964F454638F768AEDB595A883E380408F558015FB5
+8720954ECE2704AFAD4D62E8BB2657C4FA920D72248B3F762B2F12D125B796AA
+1C4BD6B42D766EC1C9B2C7AA4B6A3474BF753742DE8AB76D0AB0DD9A20EE2DCA
+0F34CB25995ED3183759CA83ABC32B8BDF0B06EF169252587971F7D37463BFA2
+BE36B2E45559DD73DE7CBE29DE92B9BE6B9F8093F934BA311D81E18A8DA92FC3
+312E3FAB43C53E803975981F0076EBB8F257C123908450661B6FA79E7ECE98F3
+B0A94E0DE3A4DCC8E0FEC106CDEDAA297A75BF1E40F3C2419BF72A644F452E2F
+9A8793810319885EB3AB23B1E80E8B62A889311355C73722C18E62711A7E6A16
+A5B923408444B13F6522FECA9A60B067EE332B83E1A69CD835C9D69B5D8859D6
+91F9276863D2E2E8193641E4239F4ED15E2C482C735BF5434BAA454EC2830C1F
+7CF766DAC9E924F17F03093132627673BA3D99DC2DBFC89E5BA032C16D3C1C8D
+78B3C464081044DB53C7A29E925F4157EEEE928C8E28EDA5F0A4BB6E0042D8AC
+7595C350645118172D04FBF06B2C9A9F3603A54B57999E2960C993724CCD6A09
+766BDF73F66E07FCA9BD09079CE8010E6CFECBE2E5DE1EA4E280AB78D5184C11
+016385007CB5AC0BC95955A1E88EA1A1D8EFEA886007708BA063F556D9284D4D
+C764E75CECA51BEE3D35DFCEBF6175953D30FDAC00F23B1721A1DD577945B5E3
+8176A21A649D907B5F63C71718ECF32ECCF1B26BF15AF694F1045CF98FC75278
+E9782ACD3D83CBDBEE690D29B3176E745AAE436382D258CB22F3DEDD02E441FC
+6A9931AC2F61156DE258DAAD5EDAD41E6C0DFC902173168BB4F51DFA7EA615C8
+B0F92FDB118378CBAC3D56B6B9BB0883C0C14EAA67396AAA7987222A132B7959
+44FC1E9D6DB6D549DFBEF8D2DD8C53DD3B66935FC239E74E2C440CCA13C068EB
+C4A3B69F499F573D076E2C92E24F2C69B806591B0807CD903E078683854963EE
+5125C3640860CEF37BE186DB781475554BFE6C528A9633AD5772BD53244E24AB
+42CA2D1123AF45FA257940CE611D83014DF04E60220E9AF27CB2A2247BBB004A
+F5722A5EF058FDC7DC2B6ED1406649DBAA58DF2ED3A91483D60F11C4A39BAF57
+CB1E320A987B790672CDD3E3BEF4A67032244DED2FF4588B2072CDABFEB36009
+9F4BCBEE16F811A44CEC77F8AE873C90C0F4C975E51014ECBD45A56A63F034C2
+82212977023A132E5C88AAA826D841FDE9CBCE7A01E4B6F0EBDDB9A69EFEBD72
+0B41EDA807CEDB791084047624BC11CE10B7A0A311272EFC9E013FA374D97EA5
+F7998FD908748CA72D8CABFD0F01220C2114D3B462B22FB71A23B284B1CBC7D9
+EA20BE71F8ACCED21F096009A14A7C7B51450BA51514707EB46B9FAAB31CFBEA
+E1DDA6F5D9AF0B6E7D05A1EEEEECD606427B0F2363D1B882B50140466B9D3CBD
+D00DB06DDD1BD4681E367DAA4B7C405C6281B67FFF794041738FC6A01D261CDD
+F6E0A330985F2CA782CBCC02B6F4EE5993434F656B91A51CC03B1D73FFA6629F
+14F6075EBFD83B702D8844A96CFB5C14051595BC7DB2218156A6DEDA5C98CAD8
+BEB5284D9D9F86406A8C1AE85857185991C360E5F44DEF352A1F301207BE94C2
+9A3A11BA468FACB3FA2D683419C44EFDD7C8F1079659F3ABD89D7F168B1591E5
+6105F9B3FA481BA953CD34CCFE73E427D3AFC46E5C58C2981198BA284DB8B37A
+6647BEAA561799877DD6858FCA71CA6003F2961FAA529906673EA94D82D78116
+4DAC81011FD175DA707C1E15D4B6FF19F8720A4E05E6E103E2DE880FA9C192BE
+C5ABE7C311C2ECCBCE8F9713DBA74AEC37A61C8F21F271B35F0F7C88B182525B
+A4183377597ACDA9A6E2F181725D427795B975BC4168A408D292CAA484BD1B8C
+9DC62E737ABC805C8FCB7E96454DA032B601345570EAE0379BDA84BB6D15D780
+42FA1E068A7D62F152B43B788513E13724666FAB4E2B4F04B0448194E46582CE
+7389BAF0D1DD4435BAA6B82AC305C04686B89FD51197C721D941BD2893596024
+1598E6C2BD84527EDA6FAB782033E4BB4F964FBACD96CAEC3F3CF89CBABF6B4D
+4D3AD14A03D4BE931632BB03BC2B92842FAD51A19A756892D5B978DB695D0540
+CC9D030C612E2B201D60D09F56332DD0BA1351EE62816C21A35C33DC11B37BE4
+D2F164ACD836A5CA1553CBC733E3B159860454B17064B4E22D3764FF6293BC81
+CFA3B2325C8E072857F6FF4ADAA8818247D431A28D3C5FDFBFB24A6CAA327AC1
+0B3630C84ED9F0D33B8255A3CAA9C5A0C79F7BF6BA3B9801C3BD0B30AEF7CCA9
+92F25E332EA97A7CC653C93D1497992D6B76363885B92ADE34C2A33E30A3B1A0
+57E9C16D8CEC189565808D3FAC92973C71CDE74DE9D8781CCAF88747758014C4
+5B62667D4D2CC5EBEBE77C5AD00C6A69D1819F5A786964501E077EB3BBEA52A4
+57729AEDF35253F7E1D31F2DD1587BC15CCFC1B0CA930DA83E2031B099A38158
+8D1849E7145AC74777A3C7136DEABB0C787E5A218309A65EC7D128147EDE3AE0
+C0AC039B56F767A22555CFCC12DCBC7F5A5A3B4E86EF5A69EEA93DF0BAF2A3F3
+7504F5C6A7A67388D2F9045BD755BEB7DFBC2EED679497EBEC808BE20FDCB5C7
+B586463BBB898DECCCF7249E9047DA943FAF0718A2050FCFDF8A4C2029FBA674
+EA64003AC03A847185936FC375CC67B3006EA681F61F640C3640A78D0C7FF521
+D477981E23E5956BAF42252463FDBEC49BB560A9428D248B0C5250CFA2A49CD9
+DBCEF73123C13BA382D3CF6A7B8A8CA3191D379A659F0E2C6E9CAFE9DA2AC074
+F622E397A2F7C73347364AE249B11AE2C34AA7F0D27B5F35D548D5AD1228597D
+D16A478C901D3A34D870BA39F770885B7DE62298F0114752435050E99EA4E5E0
+56B965EA185E8DF96B9FE97EE23DD45AADBFE02B427222B9FC99DA94FB2648B8
+46BD30F881BAD3820DCA4D8093BA0FE70E03482CC063B751439125623FA7AE40
+52DB2A380D89D5E37BF264CC73DA9A1540031587F481A0F146C6ED6F3F2957FA
+19477F075ACF64D424279612DA5AE02B2A140048386D01B1F30EADF2050B71A7
+993773D5B68C6FE65EAC53411AC6E7E26E49BE5FE1079A8BC565D2CEB7E3B896
+593D720DBF66CDB26DA5D8E533A346845E31374A7C85FB6B06C3D54FE3408013
+864CB0954A2FFC00ED17CC167AF714716376B789A71059DF2032E0E907761E81
+F0C887810337F52662AF43FA1A7528923B0A30A217FA184ACB73207EB3018D5C
+09EA88CA0873AE690E94D43B360D9C1070D7CBAE9BBA72E82EF9914D3AED6D1A
+5539585EA969F0A1407C8FEDAB69BA3EEE3097D5B123C5770D5ACBCB0882F35A
+E8A3E3B1FE3903A941EA2090266B60D218407AB99EEF38F18C9FA307D73E2F5C
+42F8C37E2F668BA6B0779791D8404E2B2CA52E28F0B34C85250B0D6AAF9D2DCA
+A12133B5B601D971345EB6D892B85FB971DB8C4A4188ADA6575DC6DC42D2F0C8
+4EB946AB47F487B6B4C4C59B2FCEB1291C386805C5B62B61FD7310A13B4620BA
+650DDF28FC1AF21FA124C16EE8ABB98904F03E7F49E54348B1AF2211A1768768
+D62E35EA2EF7F2756B58168F9FFB5785DAEAB324C90FDF6207E670DF277D6AB5
+F0924B26BCF52CDA2980680320314F41244B73DA6367C434B5DCDB96B6F0F454
+89BE772F9A8B4DF72D83923C87D8DE5F9A34F4A221A0813168DA2140B74E415E
+E0D7776B86AFCA5C6A24927FEE493B0DEA861804ADEFDF7823EDE59940E2810C
+6AB44DFD9C2C79C5C4855B514C64A33EFC4411006D6E7F10A3A6869D5FD6DA0F
+CA39AF458C583D600D18C9AC9C8325A02139C24C634144862E1A07448BE8BA4F
+09030D39AA74BA631AF7370E3FC2F33FB9F19052D5418504BD590495996A3A13
+45AAE77F8A657FF1A41B3E2D9166743E3DAB549E89BBBF14FDBBD6BBAF24089A
+1878AF0758A56AB894D1232CBF429242B5A64EFFCA48D249E3FCCDAF57E7D159
+5C1502BDA4F4FB6611AD80E2F770C9937138B5BC0A55FB2211ABFEDB3E8592A8
+301DDA6ED93ECD673CD5A1AA3FBDBB62772313AD1C3A2B73C05D7202905F10A7
+6D295A07FCE97831B68BCAB081F0DF2BA97D425F409EFBAE2831CDEB299E353D
+BBDD7CE0041FB2DBF57E6F66EAEB0DA1A6AEBF50E78779440410764AB03A7100
+F491E92782B89A665B288A03846796394367C05A213E072A108BDD9D1D1763DE
+15CB12CA7984981AE8C05019D3AF855E37023E14012C2BA0DB768E37C3128EE0
+9C0DFE3D3B3BC42634AFAF4FCECE835689C49690222C5E2136E4843AA9E428EE
+990B46FBFF889F75D756D5D82D5D6772857997D4BA8258744C6665573E661A79
+73EAAA2BCDFA1A76AC5925A93CF052C766ED8B37806ABA24F37E50401799E2DD
+9DD1738F09EF3F2BC7029AE73B55991D89523B09FAE70671D22D0509CEEA68FE
+B5C14A412A3FB6F70A7BA5090CEB3923A17527AA7BE9B49105340C6A561DF3A5
+AAB7B43DD95461D1611D6D8BDA96F5578662BCEA3054CDA86033EECC7347B564
+BB034F230FDF4337703C156865E1EF00CA127816572A1DC5F341895256155CF4
+83848B1CC0C3B4B5DD2007A0FAE66FF9DB4DED11F1FD718CF6D2F186DE00C338
+DA4A895A31539C698ADBED03E308E2309BA867EE59AED836DDF6A19B96345E86
+BA48CC96CEBA702644952EAEABC4E9048961518C5C6DF396E7089AC7493B847D
+D4BAB5647316AD31A97D54E9EB5D292704FF8F43ED9F61C0BE5A7EC3E7C2B833
+73FFA3C78139D494B0ADA8B03414A2A5339BE9DC9AFADBF801CDAB652D68BB70
+85FF2F586F8202D534893B9B79F7AF2B27D46672C23E38903454FC2632CB3368
+D87397E13270EC8F7BB76074C39C26323042FBA8922455247EB620A4B42458F4
+D770E3E5A08DEA1FD34A862A4D8F8FFA5E31534CFDB5143E7D547E3A47655E05
+E2AE1C613F4D0195EABE455BE63FE2AFE2D6B514FAD44C86F3938511DC9EB590
+530E055F904A71C4FF15CACE3F59403B19344DB4809B558AA5F5640DB3E682AA
+307DDA3A46DFBA6A7AF82110519F8D51FB66C4F8D9F4A18BB9EEA39D6C637F0E
+765DC076740D8A210C91797AD069DF95DE0260F446C3A20A1C6434686DD99150
+6FBE2ED314B24B65B28C607AE3EA478BCFD62FF2FF5EDE5BE4BE0000E939B71F
+333AA8981A43024A509531E075E74594492A7121798BE5E5C4EA29F2744DC70B
+20EDB37953452FCE47CC55C9DF7F65DDAFFDF95D89C21F6879B6D292922D4D32
+241554B5EAF2DB8231E2655E9E3397E4A167B48BD93BC16C91D6B6C4B1696685
+ECCA2B198F1BCA5B38F97DABDF27C3A8323A581BD40FD2DAC5C9C06A229DA326
+ADC343604C50285CC6E45AAEB1054AB0973A5BD73573CC389A6606C3BAC40B9A
+E5F4A5685E04F91CC25B5C41A6231FA9EF82B3EE1FED2F1BB6D79096E2A775DA
+CCD42E4080EA17947BD80667E6564E47DD90C62CF0C5311C68AB72AD15E5E46C
+A2D38A95530827F5C5BF7C24ADA00F28CF981CF0CC80B473A9351EE28CD6841A
+84BA8CDFA125371ECECCECD50DFABF6EE5B5371A7E943C51AD3E8EDF018DE8EA
+B50D8A530B6C7ED32C07222B4D469155B85FC06401AA264A2160D058359F0718
+0B4AA76823BF3E55332876BAC15FB8A00E023B88222494C1814084719E931BE5
+AD8094E3BB1372543444E13C3B286FC981799FF55CF24842C9CBC772C17CB0A2
+67D927930E29A050F682EE612F51157B33671A195558D8CFD8DBC5480AA59372
+BC9C85BE5270EF8EBA5AC71B1B47386268786BA4A4737D11677BE0E6FEAC378B
+94F4A215C3D8E0EF94638F3C8C95CC59FE19665017756C82FFCCEC6F628846A3
+B88BDEE7D41840313891A2A53F9747AC96BDD710260010C3E6C882210860BDFB
+FD81FFA8A8D2657ED7C69759ED4415F5CBCDCDA031425E083C215FAE849758D3
+8C55E03A58B2646C16C49E29B612AD5D9610EB02C7415B2211F883CDCD498BEC
+F24F473F374A4DCC56050299361A8FA9BAE265F894118D3B702C360EBF6BD9F7
+A1CF799BE7F05284AB25328880B1E34D204D62F5415DBB13C272987BDD6C6D5D
+DDAEDB62BB850A78B386B3E7D343620188FA7C6FB8843C91FD4B1DAFCAE89624
+E298853990A9636B92FCDD7DCFEF07F933667B6109968C1C18555DD9D785D55A
+D2B809BDFA936E80B10E1B07A013FDF2FC7E262A7C450317936CB2E13EFD216F
+8D4BF87DF0B973061F6B735856A6D43724928D14433B258B92AE531CEA5C1B3C
+2681CBAD39D59E2A97A0C4120096F0216A6200CB6E57BB36D283CD959760A11F
+546AF65B699E169CF5632CF0EDAC06DAEB255A56964BB82BEEA15D684ED60DE6
+198BE3F79A54F295A7A38E37D2E5E876B1AEEECBE0C01A4FC14BF18FD39D850C
+03725D43A83D4C87A9260967CA95D331A690960A046148530802CC7F02069900
+5F6C0D107D67F0BA9C7D506911C52494B880A0F87CD3A82FA2CF0113EB5940D5
+C7C980133B004CEB5753524562AA8BC3BF5CED71C36CF359065C6A363E24797E
+ECE14969EA2A9EB684861B1654917B77D2EBBF45BACEA966318752E66D7C31D3
+2BDC9B9DB24D9160E0FC52473CEF1AFF38D203BB351FF39296F88E93AD356774
+F38D00769198C604519F447561D7354DA24280EAE19F849657529BE5D3A6153A
+B62363931E5D7A92C5DB026BE5B713C83BDFE8C7587AA7180AFFA0E75DDE9A4E
+2E1AA290EB31C4E7E46A23CA191CE6D95C00F521DBAD593B94769D5D6BE3D168
+73B196B82109797CF96BC04928EB8170C3D38221E42D7C7A3E1AC0102841F678
+9152D56BD088E8D99928347A578D363C665873FCEF06219A4AF1D0B8C257D872
+C0DFE89AE70F31943046657E8B897D1517A4EE80970645EF16E0B2E8AE4E4EF9
+55BF36260357C4149FA567A76229F2060E32B0466140B24BB3961C260C49AE68
+277851D73C8BBE0BF77A78704EB963D4344A850003E28A375E2A69565F8C3FAB
+2E09BFF66AB7CFD1D552BD7E45078487EB1A7E594C369ED6348F55F933368C03
+610727B32150B0EB50DCD5AEC9BEE951D1D8A9E29F65AA65505FD3EC373DD7BD
+2FB9208F7684EFB4F1D1469B777A20E2BE49653F72CA4CFA82BA6E2C1D6F1BF7
+7DD55370D844534620759DB5BDC1892B11317780A8F9A96F09C3E62085B0DE33
+D504B75034B7B2E9A5DDFEBFF6EFFC839A3576F255542777DAC9D4F1ADCEC04F
+9E778979707862AE686D3BE9AF114407D4A2BB038696086BDA5FECAC853ED562
+D41B0C9AFDB3ACC0643CAB65EEFC00DD23F0BC62F1B37D63FA11227A00CD9A62
+D53767F3858768C5269227417709BA5B16262950EF0B044C70DDAB2B2E23E414
+273433D416961C2D70D295FD067632B927DD5C696F0F06FB797294C67BB49FB2
+082A983123221EB7B996D01F2DBC29BF64776779E57100DE79D782DAC503F9A0
+D6AF653F90B88AD0448AA489372197C73AC04AD25BE6F6ABB5522C8949EA9AD7
+595A8DA1F85CEE2319E5CB52E14AD7190A848162699DC403F621E8D397FCD6CD
+AD675B5FB6F94ECD86CE5F393A3DBA655EB9D7F378CBFC1B825B0D30FF547B9D
+F438239E33FA25D3AE1647DBBC2D2FBBC4633212C87DE6C4D9C24B63389F7485
+9317993ABED205C2EC8343290CB5C4607D8FBCAE3D8CF488AC2B375E106679B5
+33D0CA1FC53CA84213C6D730E6E323A70D83896E9CC3830829405923628762E8
+04EDDDF92D60D017F145206FF3D8B24920F0C5245B40047BC2737CB798C6F45C
+6A8A0C93F774F2802CF456E073F71946A134169E43DEE07741A22A320F26AD40
+AB4DFF0911F8410A41FD42FF85CCE6A36BFE491EF9E55D289C7819D80C0DC683
+DDD6F9EAA64ED6EE3EBF9856E6AB7B2414CE6092962BCA221D33F88A96A56A23
+BAF4263BD1DA16FF9603763885F53B487900CE67B4D284BC5BF26C703160E521
+4E03A8B9027895B0EE1A83870CD51E19F3067C8CAA48B8C0413A4C72ECA3EEBD
+69E48BE8F07725C2C148AFCC5473313AB8A5BC9E8E4ED6394432D6A4E744921E
+E9EF653830F38DDC8A6F9CDAAAD7C0FE8A4D899A1E2D195BFC406B2FBF68B051
+1461097A6E722E5820E24A6E9B12266CC199D60539FF43AF421123A64D16EF88
+FED55774EC4590C27AE8D7A1761B0E794756A0993C0D5A696701A930476B878C
+394598197A0C220A86DAC3FFE9B5CF3EE2A8C5424CECE9F1325CA21F365D0429
+AF995E5EB97D3F15FC9C55B0DDC8B50B7A453114F48D316D4CEDB25EC5482606
+65CDBDFCEC87764297922A66012FB5BAD133DC94E240382FD82483BE01F51DE0
+923D0D96F86552805E220BF8E8C0F380D5164C298D05D1CE52A34A28C04BBC52
+E0F8BE2CEC964ADCD8380518EB6D8811F851FFBA2A6506A5BE2BDB77C6D676CF
+443F4C3F37279F1D7BAD1DF5D8D4CDC87552BC21033E1368110E801D5099765A
+E5BED70CB5EE00E3BE43C99A33B7E2931B4B27F1F432B310326F5DED88698BE4
+346043A6023D9BB5ADFDDEE75BB2D988B19B6F3AC387FB494F20264A0C4FC57B
+F6A074B930A0FAA8B052EA6CA69E2F7B908C918B7A8E591F3D557F8451D657CE
+71AFBBE239B0C98F0EA80A967A19BD6644E317AC52AD965D0E7D9F4AE2FEC110
+FCAAC2D3440187C8FEF875DB92105452DE04F311D236914DAEB84AE8788FD47B
+9BD6DFAA777B512B4FE15F4C1822947CF8912366733E60BBF206F557682135E0
+55FAE5EA672123F895ECFA6FEF3ED60D08FEC6ED3BDEE50E9D63812C3D2DD783
+1DD5795757D4FBAD9AD2AF3E4E1C553A0C2DF99E7E61404CC9FB5EACB796CE1A
+117C235608020FDCD05BA16EA4C01E0A82450648060932DB12FB5F74A9C554FA
+5A93A80E1FBEF6E3778DE1F0D5286F330E0B5FE4C75D62646F7C85AFEE9E7B93
+A7BF0E414DC1863AC784829B402EF906BBDD5F627A95396409FE7F39A2028EC1
+5B4A10E26C8A5A18FACEFA9AEE9E8915D37139C5229FF0A5A05CD2F653560616
+0FE1E6F7FF482CD4FDB7FD142318FC99303C6F5A8E38750DB1856E075D8E8DFF
+191DA6912E238315325F662372DA1974D6B1D23A0FE4642B374637758C222356
+B3B6047756A13A928B3C85789F8411818AC0F324BAC8CAA92E90D4644C77CEB9
+76ACB388F9A4F293770E2CE67D1D3B341E39273C75257D9B1BAA2F087094E796
+5A074FFE3F5850183B4B9D693B0A158CE0D3098C7C9A8D2E499463125267080D
+2843D44A355EBF88F59F03C47CC335ECE2C7BE42DD8642633A5F15D674F29AD4
+753C26BFAA261D1F1DEBC6BE493255049964B4072861A73DDB193C3E58295BC8
+8AD51CC8D9458D619354638AF537762E7FE6D316737B869C717D343D8EF630B7
+137347144689CCB81672E0E386215B1C3AEF691FF2CF292E73A193C9D74EB428
+14AAC558E8C4525880A2C7281BA3CE6F9EC501DC127D28345E9AF7E9709225D2
+0C60358C55E4CC8ECD149A78B21F2EBEBFE166AD7308B859D7B4349245EDF9BC
+6F54739155EFF438C6CB6C91104D9F1825605372FC062947F1EBD1D7CBF8FDF1
+AAB32E35516CDC2E00951CBAD1C71FC969EB5086DA8E08C09F5560216BD4A170
+3DB6E2DE02C07AF656F062F390CABBF691476C9539ADE8195CA2E3D8C099CD10
+F4DD4657C898C94FA38C3B8C5638088CA55EEAC94D7D219FCA0F88345C6C9EDA
+DF6F83867982C0B9FBEB1AB936507F6BC752C20581E43BEBA07571E46BFF81E1
+5E86123D6742FA2A52EAD557383E9A0A503D60C3E70F94F7F2ACC89AE2906734
+53AF63352BDCE3CF1F8D0CFA5F626BB106CEDC52A306DAF6B2927662B6979534
+2B3EC21893220EF713D5DF65135F5104B49444911B4B4D6C2C9F7DAC826F99B3
+464D11F72A97B1ECA89C70CB2C842DA260319F9FFAF1BDA611AA95B649C76E42
+2BB637D899D0B6C621FEEB60D1515A96B1D9832E2C04E2569F9CF7E8CBB1D204
+4B1FB28302BADBFD1565A00CE9C9F57B5F570F30398FC3D4443D38CF90BD2C17
+04B324338F4AEBF8A981046383AE55DF81F790E010752F4FAF81727D015A9948
+56C05460804E13C79C4D47EE1CCDDA43575EAAB1DD280BE6698C1970538B7CDB
+197B4E1B8D42F7ED791AD2017445863EE8AA5DD04DA5E276D809A835D66DBF61
+0BC8CEB2CF577B77F84B0F9768235F8EBC2CF7E4EBD3BA79D87CB1DB81180644
+DFF6B4B98CDD23C4D7A48FC2DE56E8ADCAFCA7C39C6E668D4F30CF758400581A
+B5DC9BE94782D6C80B9774363B59FA2F743FE060820E613F8E43B274902CBC05
+1F9BCF5149560C71021005C5C5DEA5A6C395CF814BB94240AAFC6633A38B7E16
+06A2448E6E3E6AB66A0E5185C486FFDA2FDA024A52841A58425F85243C69ED99
+23439D51305613CCF81D3ECBFA89C1A15809E8064C401288C430F7EF0DF4E9B5
+4A7120944D23010FFDD476558C0305F668F45560F8E205B3B9AA763F56FFFFE9
+5B6A86EE97D93CD0741FB17BA5FACA451BFDF6BE95286F88F8D38CC5B43DBC2F
+E7BF2F0B74C8C9DF80CA79FC8CCC95FDFD9504B405645533E8CD4B43E1C78563
+D04C51595EDFFF8BEC0686C78CE9FC4AC68BC4D85F96ED6A6E3CBACAB509F25A
+436A260FE38A0300E53A9F642464F431CD4C5A0E3B9B29CDB89CC970D3E83A98
+969463640C5C884B0F86542DCBAF3F8633B17A84A22229423866A18B5C5C0B6D
+53A5F0342D7DE8EA24866F993788A3356D6EEB55FC1AE972ADA0D79B87707E06
+0619521AA74D87D40811CE9E855E6F41A0101C0B4EFF29BE26C2E8D00BB60612
+6A355164081F912689E6D5EFE23F8D27CCE733239DDDB636ADCC813FD66FDDFC
+AD2781F053EF9A1FE7A58D094F82F38B12CA9AE82FA61AEEB139F5F8A8252EF1
+679600A46BAC5C0BFD72AA4946D951D7C2661260878E9D25B6E9044542D907E7
+CBE2ED81B2D82DB3295E939D3ABF1C36F6D36DE762835B5DE47251EE2936C02D
+3CD841A9659D82BED613D2DA9E3495698EAE741300E664B300E4A27FE62E3FEF
+D6A56E8F2F022A10B5283F6051136CA61AB8437CFFEBE0673DA2CBA9AF104BC1
+5E8DBE1E4962672411887F695734D5B678F889C1BD4FCF307B4434DBAB5D67FF
+0ACD8632F334FA4AC51EB8A19E7BFD2E7E28657381C10E3D0E5BB5DDF042CAA7
+349AD78446868A0F7B0ABE98D483E2E8DBA63DF25DAA9B7DDB3359372BED3588
+241CF87CAC183673D71281CE06895EACC815D19B18E6B3B89C6B3081505EAD5D
+E0E72CA6417222E3C1473F30DDB991CFB02405482F818DE9220188086BC6C8F9
+47C74D3CCE03231A923E9E0DE319CBF9795BCEC39666C0587BA02F9DC6688293
+4D1F15616E7E01366C4179453FFE4C3A4BB29F56C8926858A74940FCD18A1186
+EB1CCDA83AB6B3FCCF3619F43B3C581BF0E5443CDDDDEAC930B97281C3F9E252
+5CB5ABF70C2BE11A3A4CBF85D4197854E2A157EF0CFF287321B3719A7ADE8FD2
+F3BE459681DC85EF5F0E885DCA942742CEF39E8FAAF5E057EB3BCFCEB7ED9B10
+66902F943506BB738F57FD25FA954D28E64FE8F3F50A502D520AC6270699AD1F
+BFAEFDD4B88D6A7A1EA64B945C9C44E2A3669680E60F3523EBABC5FED606C778
+EADF4538655865B10936646AD7208D21BCF7B2E57F4068C5A0E8660E1B301F0E
+ED4E0B8B8A3F40C2C922E41002384D767F3A8FB3A11B62F230A9679A35922A61
+181581CC15A13E7F61AE877119A0064993917A446EC52CF656E554AD9BD9D144
+72148D82FCA963976B1B00F33A952F80FB0D3A6D9316F448350103723619CC4A
+B1707D5C5E8DEBED0BEEC0744032FE0BBC2FD472DC75A2C4F14706B251EBB828
+D3955A1D7E36E011D4F72B61D63DBFA70AF54C326B6861A19D24EE210CE1D319
+75FF6B4A682B97432DAF059372FF2F4E52781716E605B83CA32001D61C20DAF9
+26714CDAA4F20C55242C18B3E5898140CD0944E1AA876200036434112FEE9B62
+FA35EDBCDDE3C0A5ED9F63CE2558DBF6E1AB0EB6906D4E8A42A5764809EAE7A6
+A7537A9A573F5076925F1B62056BAB1F099B926B375EDFBB24BE522F4BDB3DB7
+F5BEA76B058C86869FDFA7890169B6348A94D9EAFF775FE2577A52EF76A77DC5
+A29688E833A340FCE21355EE57EF30E303D5D9B6DD2178A3C10C30BFC136F728
+8CAD848779C0B5E12538795D50E16AD2C3EE94B1209264BC1F12B769C7A5C0A1
+AE2F7254EA38A70B4F829C189E1601BD64BE364E6674C59183359653041072A8
+B09B3569953E6F771E2A4174B829F4487020A87F842BDC2DB7CD3FB613B9F294
+D33D5D8E2353F787CCC3320898CBF22F164734F77FFD4E2EAFA65833119311B9
+888D0BE9CEE2F32AC56CF4E6B596EE732A973075EF01B5488C686CDB0ADC8C0C
+C233D4948F0360F6D56F8D589902E5E628760651A3F58802A63741BFBCE0F734
+D3376BCB4B493927C4EAECE1404013021C7C0999CAAC5629A0DE33DE1A2DC418
+B828567133D9574960EB7BB0875FAD78B3DE8B178F502B7A726503CA905F3347
+6D5A8530ADE146063D1874B4BB41C00330EE17EF5A0F9CAFFBD205D622102B8F
+0D9B072E319458046CC28881295E4BB9B23C992AC130360CEAD9A521337383E5
+5C24335A41B47A996D21F2989C839E4D327D6BAE2E9B63DA85596FDC4C68D6ED
+96DE7B1A57738F6003800A8D8724584494FD92083E674009F6B004097644D2CD
+28E3FD77EE41F1D34BE89BCE631FF56315E616100A4E1E04380A828351DA905E
+74316EA611ECEFAC9EB81838B12C69E96DBBFCEADF8A373C7A4462CD6A1BC58C
+4EE6544EEE1B5F7BC2B210B7243D0F38B0EC6C100341D2BE89E080A235A966CA
+B113631F66F1BBD45A2A724684C903CB09B569DFB8A3C750DC23EADC43667100
+79543852C44A70FB5FA9F0DE7463D3565976F0FDCAE03F58D1F29BD261C976B8
+4BAFD037C03EEE434D7E37ADFB3D7220D3A26283E88F14D4711AF59FFC897D08
+77127068DAFD031E5DACB522BB942AFF08E775D7AAB901F7AB8E77C6FBA0BD40
+EBE4A89F95F33C66BD1B0499984B8B4E3B9DDF5ED490B8BB504221F15E47E28E
+CEC5FB4D5EFCC6B97A2B68D100AD7437350B25455CBC63EC2EE047076DEB7215
+90AB8606F3C9FE7A89C0E96DF22C54B1C143930EDEDD7F431604C1A8874E7D0D
+7506E66C161CEBA0B1886FD0FD407A3E5D299B3FB2E039F8CF5A8BEC78697FD1
+DBE98C722C7F43BA28BE838E886A56A94089519AF2E46825E8CDCEBE115770EE
+ADAD9978D9510901056C8EC54B6E593E395009C3544AE9FE402922BABD4DA452
+F03453671177955AD0BFBFC6872549EA8197E0548CAA7E52841F2AA3C6297E1C
+73D90B1358C7207930887CE5A7AB1F91A28A84CCE9E8930C503362C0D29EBCCA
+35871CE490D20231FE8307AD5864FA75C3B942ABC9083F15602A346C16670A91
+4B25B8CEA32384C8ABF7C0DD8475E5F397754F3E47824DAFE91BB81C8B9C6FC1
+8D9B6389AE4B1002BCE6922F7A2B215B381C0D757187A506296297BF94906A67
+837A7A87285463DF5F731160FA8B800E678B873651C2E9A408864D58DCA363ED
+7F5970756CEDD2A49B8264164E6691BE09C806BE0EBD3F7438B40197BDD2AFCF
+01981E5710F520F9C1B0951F1A6BC906D5663C9B086AA735565D6A5EADA5AD61
+3727EC014B079E6D09A17D02EE272A2E0BC1BD8FD48A23B771E8DF42F1181B36
+9130DEA2C9D6C0ACA8198583B1E80FA0CC51201F3035817CA4E7DA2189D51DC4
+77865B61FF01369429796CC2CE7524AE4B6CEBE9BD8D0D3D0EAE8AAFBE5F3F6A
+EB0C9A446945A7A8941CF3DF2A2DB3C5A2F0632EDEFE0E4B571C1861FAD1A749
+8869865FCE693468A52ACA6598210C2C8F220D50C9FCE6823474060C943DE4E9
+D94867DEB3EE3428E798ED41ED8BB08B5592A15320A0C7D36D4556E7B8620543
+C33BE5A252B6EAA2D52140B83FC450213716309FA35112E8D95E5DAC1C6A995E
+9DF2171135278BED55DA8A5A2A183661AB684159396182EB6C6FDF19DCBF2574
+BA529D4AF83C30D950B85E290CC4C9C2B7E6DEE46C2DCC9D354BED7FD003F3B6
+953D07731841626CEE6D7686CF67669B19943BE10C8F7420530AF0C5F41FB173
+CBB5B4C549AA31F08830CBFB0A161AFA1F599B48EA9507CD87126FB25B15D069
+EF3BF31FD7BD130C2FF2A99B2DD636232AA28B40FD07D1668370AF7C97E2B6FA
+59A08955D2FBD868591E1B9BB487572EE416B4B3DE3E921FB0CE4C9928E2DD1B
+EAFD8D0E68CFB95C41201280C68183B3CB6BDAFA383D346A04680F22AE5A2D79
+6CA818F696E202A2640CC8148A03C854EB5B3444F771692F35E5E21E3B
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT9
+%!PS-AdobeFont-1.0: CMTT9 003.002
+%%Title: CMTT9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
+/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT9 def
+/FontBBox {-6 -233 542 698 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT9.) readonly def
+/FullName (CMTT9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 33 /exclam put
+dup 35 /numbersign put
+dup 36 /dollar put
+dup 38 /ampersand put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 60 /less put
+dup 62 /greater put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 90 /Z put
+dup 91 /bracketleft put
+dup 93 /bracketright put
+dup 94 /asciicircum put
+dup 95 /underscore put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /braceleft put
+dup 125 /braceright put
+dup 126 /asciitilde put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E6BABDA4215500A0
+42D1A3D0D02C0C98BB1D6ED0B7791274C38B038FC7921FF1FB8FAE7258C09259
+4B8E1BD9EDCEDE9ADAD9BD9598EEA9691589649A9A21539161E374075BEE3457
+689F308A4A7AC9F2FE4B301A6C36B0442FB92E3B002623493DC087800B5A0521
+0DB96A23175AC584DE166F59142779F26FEE9783E28DE49FC3A8D6583EE63FBA
+610DA773CA18ACE6F64A4867A1A7817120ABF9DE4D17782866E6CB6B65A9F6D8
+3667C8D3E61E5356E35343FDD4C6436DF73934470916CB5F0ECEA6BFF092E735
+C7C355B56189D1DD5715EC97E50145FFC17BB1497315A9585D713A7A6DFC7933
+995468EFD0F59E3C15865B87925A3F2930E20D5A35970E2C44F1629FA16E00EE
+EE21EFC50D49F5BC02300D0A7BB85E649CB4E2E828C8B1C5469463013E71D723
+2CB11BCBAC191AC751A2AF7FC228395CE9472DC1809052012AEC2CD66695DAF0
+4CA04234F0187F4116C93F59A7F1F8123DE87F111853B785A20CA8B49B3B0CEC
+B11AD345E1A11578D2EFEB0536D125237086CC8CD9F34A5137AC5DDFD8746014
+D74AAE8239B81ACF65F379CF2153B06A238A2D767F294CAE0D79228F0B7D45CE
+510AC9657A1776202FEF42F96D476E7DF407786AEA12DEA0013D3B4C5D0640F5
+BC5BB72C34066270399CE595827175B23B25072723BD24E07F6BCD9EF0175DEF
+93714BAA53960F81103CFB731CED4A267B53727BCA3C97B0BA5004055D4EF0EC
+F725658E53AC86E4061B489AD4154915C3981B3B703E1E2A8D390CCECCA99385
+45EBE35441B062D7D12DAB2B31569387187D74A4043FD71F1C6D352EAE0F6757
+4345FBFB6DB15CAE47CAC4BAE47AECAE5FF5EC19057DCEFA1B23F47364ABDF47
+088A7C6A2AE26B10459B6D41CB69182FD1472F326CE3A15B59255D1DE3B616D8
+9D1F12561038839781E657C896B8C58A32DF5AEA23732A0966D96C68C988ED7A
+09B7E2C8F9F3D0D56879764781566299A4EDD3588BDF70E3D924D25074F30988
+E35BDD827AE4D0B4A06F55A9976BF0DB3C0B1D09CD08E8CB168B50617691638C
+0EC1A791C228177D4FFB021EC3DF5082CA3487AD2EFC8DE9466A690ADDB4C52A
+FE2A6DB4CC275CD33D9136E735279FBB2008D59E667905EBB04326EC33C98B2C
+94744B7F540D86E90DED64572ECF1EAD3A58EC101642B245A9C7232DC8FB8741
+03F97883BB32FB955C22F878FA0FD114451A3B3859B0B5537AFAB73AEC7DB2BF
+409E1FB41D473714F6BEA73CB085139879FA31710E01915C2938C37BAD6D7D71
+45B897E00857D3931A489EAC7B42BCE4E65F73F67FE027CE482DC47598ABCB95
+39E98DA8ECA3E23F0799D5963ABA6E2984DEACBE7B46B40ADC6213E0F4D08971
+58F68C946C748E4B4217CBA2391BE2086C9758F4E32C9B6413E48D84D33A6E85
+84747029C0A9C9B92841D217A902BA8EB333999D62FDA9F82BFC8ED11F67988A
+0CAE42182E414A9766AFFF4B046A09D476F8E3F15A8C7829BEE982D8350BDF5F
+F215F2BBBF68D4B567BAB798B9604C79306C475926E9FEC0F07A99F43473C6FD
+B15AC29C3D07FEBAD1BAFF75AAF2FBE94F104F1DBF838044FAD94B661B06AECD
+D9AEBD02B60CA4546DD6B5B5C1A3833ED07845671CEFCA8955CE0DE5DB8FC93B
+3306683CBFB8E5B79A863DE78D455DE9D592043C2686F88A43140F8B9F3B553B
+7047420E93E753829F8D47AC7621CFE3626F271E31F0019CC02D0B57F67BB47D
+8CFB63E902EA3231C00EC66EEC0D30FE8394558BD3535C888C4CEFC6EB72E737
+712ADC6300162D5D79BEE0CA1F6E4127A0BC90656C01692F6D82C85550AFC97E
+C2693E379160FDB9636FA41AE9C75B7F6643B05971C6D67CE30971D590FC07B3
+E0B36B4D1C7F25110B5DA2130D574FA292B47322975A2BADBDB39AAE69BDDBDA
+A880F9AAB580117708C79204DFFDC08BF4A48919B5C22228845CE8C3109E93AC
+2479E523B8A1C12A6E541118F121DC6B4EAED83491A03192D5C3A2A45D1A2467
+757E7B377C635CF5CAE11A7CB49D49F3A1BB2286090B5F0E4F89869D1771D50C
+54B5C5E091E3048A2C194F0ED00DD64FB95BAC6FA9D61ECD093ED416DA3A4981
+DB07CFF17C4F55C62DF628EBFF06FAC3F3D3F91C30EBB34052BE1A08F5EDA4B9
+08977197950A282B84E21D43C64BE3AE4BCE22C70E7D392DE09D89B7F23351AD
+6AD37225C12BA79EC9951F5DA1E505DB26200190ADE0E549305B7530CB86EFD2
+A896F13A97E51754F70B609CB4511CEFC38BA579C071E9510A49982389980DC5
+336D6C4A2DB100DFEC4055C7AA9C55880F94FBEA9EB280BEF66CB8E1E38A359D
+E5AFB12B540CD599085ADDA7FC2C72E7C873015773FFEECA2C596B75BC39A3EB
+3C43FA2E53C0D7993042F3D652BCC483E48B7F6C94C3FF6D38E276086A6AE67A
+E5A571B9C72E0D7824E0BC2ADF51A393B9E334649F786EC1923C854382B89627
+1B9E701AE5A6C42E672B2C6A33C8BBCA8F69B9061E787D6B92183F20CF4C3903
+FF5417427B84798C82BE28D2C81624E3920CA61EC9EADB364B5A6E50E49A1A72
+A9A090A1FCD84814B8B2708AD787D2B5015DA1305874F58C5EB62F843685FCB6
+465FCA80176CAB2B2FE65E0A270BCE1E3DB97564BEDFAE5CA44395A8DF4505C0
+3E103CC3B914359B2870DA6CD30382EAE8949131CFE31E9E75C3E47A3834BB32
+CF183D4A8B9001710D0A11390C9DAD116196568591D38C2AF4ADD852F31494EF
+573462759A35415900360882739789D6B89ACEFA251C5ED90ED704DD7C3C80CA
+9F6CDED69537D201D520C99E69EEAD5D3C0EB84C166660B3C190166D93EDFE6D
+15BCB6DC5CDCA825E48D33845CC2FB15291AAB823F25CF8BB0A1EAED8BEC524D
+D9CA016027141FAC9D35B64FB9C224552F29EF6B32497254E319090E698FD8A5
+15491CDFE1B988C79A0E3B9D01E12FF084E9FA86CCAE02A3EE6F2917B61A2CC1
+64B8CAF309D1AB48A34227A7729DFF99CB6EC282E3FAEDD2673779AA7E4C1789
+D93FDC37FE95F087C5F88F53D30A2DA9C913BF205FC6BDD060A40184F4AAEB3C
+D080D63B89CA3DEFF310D09EF0A83F3914BD5B7932980ECE139EF0313C20B4C8
+576EE0FE3F28FAF4D3CE7CD0890BC824A85B8EF4636BDF1EF1BB519F93D36540
+ED09FAF93FD71992CA2CE2E83F5355162ECEB32AD218092F45D5A61A44E67135
+EF0453589CECDC6962D0E8DA7E7567603BAF50B2C8F1CA65EA5320984E7D69AC
+9A7D3D7F92565D79E8C9DD2D92CCA7DE9CD058545E9F98AA47904D70E1897099
+3C4C852B3BA131DDD348433C336BDF5FBDFB62120DDEAEB3255E3207B0C84A0A
+1ECF9EC869DB9BFA3693B03FCB27C5A5D3CDD62630DEDE91B4DD5B9784BF0BDD
+FC6EEC3FA7ACA9E15FAE47CDD9B7FCD2BF0EFA10716F08C0AF25FF67CB6F9598
+C607D2FCA452417D2C69DC808A9441A66492394C3450BD30632AE739EAD654BA
+4343459CA36B6D5B2C12C39495952F2EF93D82C73E33236785A79609E260C4E0
+CF3A3C950DE71DDC3939D42DB1CB1CA917CEAD56979A70F8F3B207C805319FA7
+3C000AE2B21D711A6D78C7BFB901334DC06F59EAB6D94B507734C27971F8458D
+D00193645AB92FB8FE163D5C51AE4F40BDB4F2C51691E76EE0636F071F37AAA9
+BA78BD12459CA499210EB0CE2F8BD317387797C33F5933AE7A6264DA06B4A6A6
+1188326147A16B205D1F965872DED7D8EDB3294FAD2FCDF0D423329E9CCF879D
+4E0B966D509F45527F7609DD09694D286F6FF7535EF8971B7DFBAF608A19D442
+C133207EB1152ABBD11C455D0977F66A9B73E51381D1CA4B66E87C0C7175A63D
+80C699A052F00C41DAEF42E7A40E07B1B14107AB0787E24E17C1462960E3C54C
+AE73BE4924464FB177EC62F116B2822842541543EFF7ABDDEE197D6BD8F8D4E6
+59175D8C5957550B70BE775AD52FFF6E7C00DA7CDC16E1DF7446BB5D8FD82647
+3E9F87D5EA365C82A2D991321ECB14A9E3AEADC5A56665DF7072D6DAE402BCB6
+14D92B17F9E063E4E9D8D239C91F5C7C0BCD2FBD936C9D4A0B57659420343B59
+B395BBD1AB5B6003F653699D57E7581F9813CC98D4F072FB78899D6DECC42D34
+F2787EDEA64058B46C4BFAA2BB96E9BE5CACE8D91E4C080ADFC0FA0D4A29C6B8
+54FEA9E11DBCF53D9CA40A21AE5076451EDAB3593E56B6D453DC8EAB8C78B588
+34D4C4F36861B5649BC1E9F3091E704BDA7613ED45C911DFECA74EEA05165191
+825F95A947CAF382FBAF01F3B8B041ACCDF39718D7DC5BA6CA12BB20EEE96439
+BF2E2628AA3BD2C91998E6247A690FCB0CC95F286F427345CC4F1115BA3A6E54
+4743355F2CC991CBDFF5725902C1F5A6DEFDC8638A26EA456C33C27773D6214F
+66536CD2E44FD253531732D5A8C44B336B1BB47B0477350EB8CF74889B93402E
+2356A9CAAFCA562315D8E0B3F42F08932CB87BA2499A875AFA08D11DA73B38AF
+F46D03B7F639A8D7BF88CF07FFF4E91716DCCE6E2CCAB60A64D5E40EFD8B336A
+1BFCC4CB04F49DE1FBDE7AA5B2092A6EDBD913D161A3271AB6411622D0E14416
+37F81E0102F5B0F2F9A2B27819E4BACD7C50E29D6291AE5B0973C657761545A6
+741729620EF2BF1046B3913399C10982EE5F4142CF461EA31042E432CC79A1A1
+39C607D22E45A6DEC008CB4BF6007CDE9DD5802B49A62C8E02A6D448B64177CC
+887AD71D171B99E7ABE2085B37D90B3BD8513995D9A57F53184DA474F6DB5E49
+B73E04CC214EA5398DF7D7541F94E623E8687B511640457A48A68E9D9D6584CD
+15B57CC044D8091C771D175F2EEDD411099BC8F7B4317DC503BB5E405AEEB526
+5E6E1B1F2705275D274E012A98F66075CEB90AFC648B964DDC0E9C4AE7B24CE1
+80B051022E5781A533A21DCFB97893847D685137EAD85BA708A7E118C72FA839
+A9E460B5D17365A0AF1F53A98319FB64A5819B087F554BC056C4BE44113A5404
+BEF759F890C1CA5E7AE156F4F8106FDB4F8DFCCC640976983EADB30976344048
+2A86D7B2AF4A01CA736B98D52ACE392AD4BECE7E61C710B08B66F01857CA460B
+B8376E257113E10F6DEDF14CE2A4E6A99ECBCD302C36CADB713D849EAE9EB598
+F29DC98531D793B79F83091F9B136809E006F34E423D528CC4309AFFB3EEB47B
+9A9DE4D5B25CE953345C326BCBE2B4912641780637783084D3D12693F8135483
+CBB0AC4EE0B5610D7CEB7DF205830BDB9BB404DC1B28FB0824CC187B26C19A91
+DA0025EC739BF3993700101D042DED86D67F5FB87912CFC51AA7DF53F2162D62
+6314A2CE13810D0B8D81F45771391A236422CFA0F35F7A0CDF14ACB2724AA57B
+7C2C28D53029B1146558610E0CFBBF72A85AB9BA308F846228F299F13F68E8F7
+D963B2EE9EF7D4C21690632B640BDDAD0556EFA4EFBF035F13377ABB5CBC280B
+9E0C12AACB153C93351E5BA95A7D149010E204950A59C7FC6581D9703468C1E9
+EFAE37E7E6ACB892B3F8D1248D9A4A72F642FECC5E0B25C15EEB921EDDE84D12
+0E524FE6133C4921FF4921242392C12FBE69744D53739F7E849C1B96C4020AB2
+1FF10DEA608F111749E2FBD8DBCB17F353DCB3075B4F4B8186963EFE95A76A10
+85AA5BB6DB4095291974221829A8E436680F4860E01C3843BE5BB3101D0869C0
+EFCE08D187BC04F58C7A450A59093680A0F09E8E3F12DF5223E7EAFEFA01978F
+D8354753A68022CC92C71F2CA732DADAA8A466D4AAE5999B0DC077715671F518
+E6277741F44AE798EE50DF44CCF71FCF8BC71F76374005FEBC4883C6EDA854B0
+88C0C2B476709AA809ECE41AE786DB1A32B3FBBCC14921673578D3514C8CA842
+E1FF90BE33F7B93ADF6BFB8B1AFBBD080783BEF056A6BFAEF676F7BF9F2DFCC8
+01D255A9F0391951210D60D4D4DCA93AA858B38C0D7B8FD740D5FC6F277C2A68
+54CC2DE1F40B6347201FCA2A0A91822708D820CE645C3E4E5A09FE25721AB33A
+97871ED448F38FC5A349D81F402B34461D840D5768BFC6849439AB6115104F78
+B87115B1DAE12542EA898F86ACE247709817850B067F537E6137196101D46DD2
+D842EA03EF4501E34074E8458E638ACC4EB349A7430AB035BEF2DD4CE00554F9
+18F9FE32A55AC1E7E50D64AAFDA278D77A7149C59DC5B1E3064A4B281A54C9CE
+A5EA94ABEAE4C6D5674C208ABC72563976487136AF2E21F835BEFD232D7F0D13
+1D19932367F51D5379934DA7F1635AC51EE5CEBFA63D4D32F018DEF13624EE62
+31DAE68A08DBE3B4FDAAFC75291C8C6CC7A657E3C7453C7D1461A36E88E633D5
+408253B673AD87A9FB2D0F56DF1305916D14D5DD62051E27BCE09CEE9A1F14AF
+1D7164BA5FB6E6EC8D38750F7E28BE330909F303ECDEE692E347DE13C8C2F82E
+29C8BE6EFD76546F362A12A1C2DC12389EA95ACB4DCBE95620F0C193EAD91B33
+BAAC5801AE827B9AB3FCE5D11D1D7854F8FA8A31670119CC0CA98628F801838B
+AAC7EF90AC5466BE69CE3E3CD9951A5EB9AC08014285422F6DA6F6E221BB30F8
+0042A11F2E4B765BB0D142AD52F4D85785EA71B2E1CE20728B9E9306CE93268D
+99B822A5AB5232EC7E26EE1160850AD3905864A01357F22722B6A54D4EBE58CE
+480EAD9FBF068EE965AC4B5FD2FA8CCB91ECFC6E90B9C49268CA0B0FDAD23ADC
+D5A74B41149BB08454054C451AD0DA4CCF8B60F2EBD061AA03A011D548B6B481
+FAB00AF9225BB5463F27FD67333FB51F8664536267E95CFAA0BE3BC1B8F889CB
+587A3A4FA2B45864F07E11372C9507A625C0030EF7030A0B4D931BCC48F6DD51
+A4D1F63FDC4B59C1CB18E6242E9F4B4B8AD9755B870FE60D640181FB7EB8120C
+C56F51DC8C47FCC6318C2145EDCBEFA7BC4253315BA67FD2B3D4AF6A9F3F229C
+AB75B592EADE15B1FB5FDBA1C0F786BD21A51506B7A2E42C2D086BA6F84D1B3D
+AC7531545F0B01346831FF36A52CAC1E390F99AEDC265B44B0FC9C581BBA6BE4
+48B723811EBCAEA5FEFAEA7E5B987F2C7B3E9A65D2D14A7B74F099401C57E367
+385352D0776D2A908F7A5A2E4D4160946C5591397877025C8C387CA413EFED56
+8B142E8341E349DB4DBA422A4FEE56A573972A0C66590175158E48850A9F7F38
+4B95726787B8F969FDBC97491CC81CABC976CD00A27D1DFCA7CF467A956C1C6C
+839817AEF8794B6151FAE9261119DD5DB787DC9D3B420FD325ED6599FACADE0C
+320D54C2E0D296537E22C1783670A9D9BECAEC63853EC2F05A990260DC189D63
+7CCC0BDDF2CF7585071ABAC14630666737041194D0777EA4292AE60BD7F7100E
+DB568C90F0D899EA006CA423CFFD6EC70A5D3D8AC43C747DBAD3B02219E47D8D
+DE030631F4678C357A58ECC52782B31B50CFD44EC33F41585E51B27E3997D33F
+461BEF897220AEC80007F13C5A1EE3A0430CA899047DF944831F8B010A7DE74A
+BFD26001472DC00CDC9F17CC435F61ADAD4E9AE062ED477FC621FDDF9242C449
+1BB3F77FDD1519A251B663A693D84B42BF0962F537757F38CE5C5D56B98AB10A
+3B70C8AE8D52DCAFCEC22E7B09D3C4EFDA1841C74CA975E4F8294F7BDC796500
+0ABE197ED3737A65F7BAE601C91DB3983EAE11DA3EA18ABBBA3650DC361C2E77
+EF9F97618B0C337A906FF39926D2B0B7883ABBA650816C4C6B34EEA836994EEA
+AFEDDE56E0099D0E09EB88EB093544B9BF4871200746A0409C475FC4232A38D8
+F3105B0FF44E4F132378DD12D9E796412FD0F9478322215E9F59E69396C35AC4
+097C4995B2C3BAB2DD04B1A7097DE16DFDD76465E79ADEEBA90489ADD0914EBA
+53E11A43ECB11D072C68D2131BE1C7C43CB9DD5FBA0A67BA43D6851AD4CD3BC7
+39AE2E22CCC183A56CEB71D4F9F578518E376426E42B6390426A8434B5A83E78
+77A5B9963BAECD5FA5521C2A29418764E4EC1A72462B04957F823E2817A7F8D0
+1512919889500024B1C42EC107E8B8533C0B314EE4E23313A4C1BDB009A2073F
+9BAB479A3F9DA76CCD65629CCEF78015ADBC2D0D124B3BB2D322FC4D209E417D
+84BC3C758B6AB64A01E25C9C7B71D741AF90A19A339F99A0BE9FC39622F04C6F
+737474CFEC19C890A657BCE192B9DCD8F273CDC5294875DD4507DC5723EBB357
+73DB0933927DC21081E67E5DCF4E41FAA6E00E8DF04128F86348FB0718068FA9
+918319C4EE9D090CDF348153B6CC48648C55E889B4FFD3D75466F1B50C437546
+7DD9CF20980B148F60BB146402DC0732A27F255DCB859CFB6F9D329C12FB14A6
+7824D6DE27B03FF85BC59703A5D6C5B7D1CEBCF3C3FCD71D6D6F0311E41BF8BF
+0609D23C84720FA9EAC961C9D49C2E962D9618C32BAFBAA8CAB0B2F616E57DA6
+8CB44C5595A22377B28599F7D34A3BEA4173E1D31A2A6C5670D1F026EE2092A1
+DD0D2BBACAB46E5B0A7113B1BC379709C5870981E482E01EE3D16AF9ACF1A5D8
+7ABDB4BA5C3B13AF047826F360C8892642B482C3C61FAC97F332888AE156B35C
+5C8415A75B4F0F25F8E95BC4102FEB4A8287C544C99778EB0C163C22481F615B
+0004F764FB7CCB01AE01A614AFC9650D3934F748E8785416BBC89F66C696AF5B
+B5F6F125F115241728D85E7159FCDBB10B64598249BB0E6FF1AF845B0A2370AE
+E6A973023FCAC4BB6158D48B0C928ABC4E29A0DD611D0F5266AAC8239064C266
+82D4D33B032418967406BC98156CFCE1F091F733D8BAB9523690B4D6765DBADC
+210E814DB8715A269474EC0501CF66FA0D8FD224EDDE93AF243032E73714F730
+FB382372C0F9B9372450FA6F13689C9429EDE1A105F234B216263A7D0A917A15
+D1FC128580A16B5572436E398C353A0EC62539CAA188901FC30DF7511C1BF6E3
+B462203AE937653C4562FFFF03078EE7A184F554E6F01932AFD07722A00E50BB
+2D2BB785961F76273A16CEEB0EE833DFE14BBA539CC7E48F67A9D20C94283137
+BE84025E86C714DC9C6FD7CE4D1D0C50B6EDC79E066521FDFAB6285C83A68B4E
+B1A119875B4E45BF5403950A25286214CB4183C345173F72E6ACFEA5C13B4D2D
+FD12BD235193EE6BB66519B553CD963EDD68E7EF9439DF0411C8193ACB183C09
+4143657304B1BE2AB8D2D0203E677FA1DD01152D2ECF9D987B16C3FE0B3F5F12
+5C920243E1CB5FDCBE97DF55102EDED12811F3F7165F4FE1F6FD5A6BA809824C
+041FF9441529509EF4442EA873E8E7FF507607D526DD27315859B31D0AC11475
+53C573EBF9DC37A4667133E99D8AA608ACB729F90B736395211043CCA3272AD1
+470F1EB485629AA8B9DCB56479F734703D859F1E4EE8789FD6F739D0122348F5
+1D487FAF1F24EF7A14CF69ADE7A87550F55F394506BC7627A5E319B30F362528
+8AB497EC03B69B58736A5EE0AD63743E7F22125536104674EA63F9AC5286A746
+47C73EE8E0320E7DC098CF43F23EDEF32D213523125110140F46202435EA8E79
+E285C7F3AA0C5877F75FE0F16BDF478A00A6F380C7B677BE479FE900ED3C4A0C
+832966F634C63211B58E9AAC3A3346ACACBD040164B491287B45E0131479046F
+B430EDCF59B0DB6B0594775AA57CE029EE8DC445463169EA976945A5765AC390
+CA615933FD05173C47D30DD5CCBD56D89B4557C7192C31D7B500B779D7DD3707
+BD4B64980767B6C9A1BC9A948DFB8518AEF581A1D888C6F767F3315EE99F57E8
+4EAA54D04A3A9E34B100024AA7C49DFE273231E3DF17073CCAF5B0EF20566755
+6831F85C57454D1B0A5A8438EFC7F4E396F09CC200643564BADECD2208915FEC
+78E94025CEC8ED965EEE5F6B8BA081478231547355F93491915CFC4DBD619862
+0F99133CE7F44756C593C8DF1874E973237ACB17F9614B79D45672CF62AFE009
+EC61B395BD96B0081DE750421A41E9D474F0E030C6B8591D364F29A6D7246EF1
+6B4CF9B931A9A474011C62D504F408651692921AE83116CA0E4E6F41AF877FC3
+CE77764197719291E68B01570AB7038D91B8B81EA501DCB5ECB6083B6764BE3D
+DF21B4B3A1E1A5C917F324A1CE5AF92BE3B2F8634A140637425F9BDFBD21FF33
+CBA42069981B230D211602FEF410EFDC199B6DF283343FA5E6B4FF2804DE56A1
+61DDC684579F82C65DAC3A4F92B34FFB6273EF4F4591317B8D2250850BBA236B
+C1E36185BC3C8C7A7654B24D7A10A489BDF675F6EFE7B4253F14CB3B5ECD1756
+1882F3D139EB5EC7860D70A176D1536F5119A6C23EE9AE9AB21B586DA19B483C
+6BEBA87C457B9DE3D7C71DD7F97E352B642D84455E44EFC54417ADBE7E190F7B
+7ABF6FA0EA84A394C8316BF420D6E2DE5B867E6D602365925C3ACFC69ED653A1
+DA30FF3B49D407237196B9401B1EDB7EF2260E582D02B18EDD38AC0016F28896
+0A61CA720216012D0FE2B58D5D675D25A679B1D70FAC10A4EB38060C0BB1AD1D
+D1C59BD5F44FDD8768EFBE75B6795543533C02198E21A4B8A5430C2C432E45AA
+0C0937D6CED532EE6714C58ADFE2B15B117E9AEDFFC1E172716C756260BA9931
+23AB837CCC7C36BD6B86B628BAA7D6002720AF00411E9D039E435EE479D5015E
+23DC9F3993546E50A442CD9D0429F7AF22D9F14064CADF2A3062F218582CA520
+3FD8E0F30B224408594EC426C8DEA57ED60FAB24461611E86302C421BA600CDF
+D4EDBF4044F0E2893143D4BABF0A6AA09F28FB4190B779B82A61C65264A199D7
+C2F50BD82837F08970F630E1CC74B4EF421B1032967FEF552DF3C1C83ED995BC
+CB9192ED8AAA906CD9708A4882150B27B1E75FFC0D1383C50BB3E6C36F5CBF28
+C0572BD2F01AFFEE5927EBE3B6CB8FE778ED2B524E252F59AF00A3F8F880116B
+8EA655D9C6A68CAA28DB7A75003D0C3B653C7587BD1A7D93BE73CA6219024EA1
+07C31E7F7BC9B874183C9337538C925226CDC48FA25D51A6A0677A2BFF699AE1
+E28D9E58369BD6AD73ABA706531DE565E1984A9C89D0C1EC6FC030A93D3D863F
+C45EA66F195CFEFF9A03A1673BC544FB4F491AE5E50ECFF7F34B095DA96288F4
+31C02347DCB6792ABE9DE684A1A92318A2BDA38C2D8DDEF29B8FED450DCDCC7A
+5C5D124FF0DA047D37E8874370D5537AEE869E771835EA607E1634BC0707C0FF
+75D5764B867BEDD8FA075F0CBBA7191B3CBAFC9EF8DFE79E9D7FD5A58916101A
+A920F37BC5EC845621EFE3A953C19853C2989FD31952FC4876A8F7C58C4F21C1
+31E6ECE0389BFDC8D6E391B04D443EDEFAEB77985808C398583BC4D8C9979A38
+9842C4FCB7A4E84BD67BE72551A43B2B330293D8655A3D6655A2358E014F5686
+613D19B474AE0A92A80E6E701F4B63EDAF59C3E12DD961A5B413FD1CB5400743
+91F673B3502C6FD90A1349D649EBA4F5D8A6E5AA41F1A4DE1C387E22C9CC2733
+D542291D5B2E5CCD0E1FC1835BD6A74F5DB97FC174730AF33CFE5E68349BEFB6
+F2C76171C578412F075F9730567BE7A2644B17012DDA04D681018CBE09BDFCA6
+1BB460699CBD6006C031A02634BE0B16375FDB9C582EBE6683B60768BC3901E7
+4388A7E058B61713E3046F28F5ABF58417DA878E1870787C472FA08C2FAC7517
+4CE71727BB69D19BB40AEB50F1BD66704EA37D2A0B82F60D72E15440BD27064C
+E67CA41D97349309151DA28E1A7850587569A794E9FE46848A4611066291973C
+A6CD19857B92F0E36B271F24D54ED663A7C64DE3534B0989D41E21E01469AD69
+916AE35C5177C6BA8CEDA45C92694077DF3EBB0377269619F9925876919A472D
+14751E6515118EF9B84A5DD8C92695818BA4C959485EE1EDB6C6D3553B6FBD27
+A0FC42DDF20BB335F7D46F0951C51E9BB69FA6E7C76A8C960FB6A4305FDD2A30
+234A5EFA64C34948422255C14C2A0D8A57174AFB7DF3DB2F520EBB401CA2DD79
+FDF6C624654DFFCEA8FCF5B34C34CAA7C6EAEBA6DC98E8557042126E49E51C3E
+BB7C91497A44A69E4EBCBDC0656AA5A7F419D0443576F530C8136AE8612589CE
+781205654730006F3A39B4F3E5301784F164A2C87C2F86C894EAFB5E79D7231B
+E410219BED0210BADEFCF27EEF683A01FE01DAB70AC8DC4E82ACCF6B5BFB4DAC
+A42AEF344755A06DE8A6BF6F2786435E2EB1D103C8FA4306573BE699571880DA
+53548A1FC1F24E50B3C2BACE9261C0245F671694A0FBFB4ADAD535AB9949C020
+DEFE36F7EA12B3F8D80E3E3D7B3CBBD8B6EB0AD2573DD5DD0B4FABBC790C9F28
+428B33CA533D5A6348D1A64D868863F4385A3F19D9F4766B6B81CF634981090D
+AF0D763F09A2919A9DABC0DC4602D72F8747176F947A92077956FF59FD0D88CF
+FE224B9B16C5DD710E6DE3B94D47DED695BCE5414A3794E4CEB7845915272ECF
+E4A657C7B53DE7DE96A8C901DA24D54A467EE083181CEE606E5917FED2C97728
+57887C7D19EEA950AADF6E8A99798789757BA126D925E330BB7D931FDF4EE14A
+04F58858CE09DCB1F57B8F780DABEDD1C26D72C9A5287C9DD30365693C5DD06D
+7365B309AF1C97BD3443B393309929F6D1AE27A1CB55C2F5085EE81928E138F4
+4FA21E90C89F0397C9CDB4D707780F2418B38D8A8D76793C868D4BBF10AFBCD2
+9BBB8202DCC02C37BE63D3CD22208A23743025921A54307A72037E6356EF807F
+B2E7DF2B94C51F19895C3C059DB4C42C2DBF4E08E27E31A294B580E2367D2F63
+0C074F03DB73EEC7293AB98DEF387B3C18761C716EE02C95315A36D42BC5334D
+984E6E35587BC0711D1B7F8EA8656C8059683C49CA41B0520D6FE1952A1991DC
+659D83269307EAAF5A9CA8000FA086B55587FCD0C798FD93905B1CD88A9AA33E
+9DBC2FE2A89CC800565567422052BCF5BAA443EB441E3B7B6AF0322014458764
+7AAEF162D0E03F28F1D0A0EEED8714442E9DC41FD4B90436DB8A7E3A9431E726
+FAC0CB7151B6236B2438DCE9EE814A358DC10699244FAFB932C928E0E878D91E
+36E840135A9F372A0DC2EECA730E8490F4D42DE218150497C5EE87A5FF5C2282
+3AA9D4B71996F86F8BDA700EBC01E3054459AA3F87CAB9C3A230551D4534C3AD
+18F6C76C41E10DB9DD67D19614A516BDD39C432005676C78B36C53BDB3646934
+3AE6BC84D339851BD4D07CEC26129467C7181760DE58D0A288FF1F0DEE52D68A
+8423FEA92D3D9331F75E3B062BDB37BEE45D5C338BFC462612D1CA5CFF432D7D
+89D34ABEB9F42CB40A63BBECECACC033538136B3F9B81F1230453A52549B648F
+E8AA9EE2B0AE82A1904FB78A6237247DD96B906B82945AAA772DA058B85494B5
+DBF53ADE76C1013C1DCC7A19AA3ADD198E3EEDE3269C4F3A6DFE54CBD17C7608
+3BF7513E37D9C8D688087E2A09B863882D46454A5B99CBFF538C008FA9BADC2C
+004ED4ECE65C4301862323B134BA11C6D4E691AA899C0E83CEA6A625AED13F65
+78D330A389A6D6EC23CD82D70D53D4F571C9D872E1A09679444FE686A12647B1
+6BB67C8AA4D500F6DACCB2E0C682C835D24C646A51259A72ED3E281C93743832
+A51B3B89D38E575B8521A39D87F8105F892AE9BE53FD758B8DBE2021716ACFB7
+350D5408C621CDEDC04E63DC4468C301435C2C2D61F3B2C24117F9ACBCD9E3A6
+BEA36A9A4227287DCACA0EBB1C6267F23BC0C3E0F28A89184FACFB919D49843B
+AEA30EDC40944FFE38FFBD7B33B6B05F5AE1D0E168E924AC698B7200D2E86C14
+E79E6768E27E848768A75DD694B48FE4839058824A9F5C472081962020B96FE8
+45DBD7153E2086C2DECB97B99850286211660573EB090E315BD727C989B8FE41
+D25635F195218A2F15FE8A5C5FAD2857F75969D1257158EE5C52055C1E11D18A
+8770E2DE895D7118B3886FD549441424F56DCB3820D5709B9D838435AAE4D64B
+6F49CB37B640BD905D6C3FC1E53C8304B0EB694269D6C48D81300DD537373040
+65B95EF64F81AEE581FFAFFF8B32DBFC16B4F1F7FF9DDCE9CF5D6A8A6D79E4C4
+209E47E16C32343B7D8B65D863F33717FC01CEF14A0F012805FAA46552535809
+14126B88CCC2F0E276F5EB42E0C7628CB2397645DD951E31566B9D80F4379A57
+8D10288DD980E93AD47F7F5EB41C4E0DE8AFC5118CFE87A804F309C6A9D1E126
+C0912E55D9B1FA95611FE7FD22C722610746316AA8703953AEE8D52F4B67F0E8
+1C12A3A1A38B3AFC87E78B29AB79174E1CB09880DED63F5EE28AE6916E9BDF2D
+3DBBF6F8A09A229BCFE45B37D0E28A3A519DD20CD8B7AFAABCF0EEE058EC5BEC
+98CA3FF46CDB8324A5CFD9985AFD545B1425BA1B1F8A3209D159925194C2C7B4
+F353F587F1CEC839996FB9761DA1343F24A17BBE4206324041E9DB6DC5CFB21E
+789DCC82093269E3D2894773C8BCD25DB0D6B3DBF7A799276936132C262C2F0C
+980D6689EBC8459C62E19C91EF5169439185F8DB0946D7156108A689F9B0A52D
+10E02422207CDF2CEF1C2B5D3D50E4D458B4A6C936CE9E6A6C4975AFD8790E5D
+057FACE7B96263BAE67A549B42F8CA016C5EF42B55C2FDF20D3A25A68B13FA44
+99D57478B9FFB6BACF69CABEA3C64B559A0D0897176CE2BE218396DD2CB25D70
+59BB599060F97D2CA6422F46D28D3FED8AA36FE161A91DADE4B621EC24BEB0DB
+31FAB9F4B67209C5DA12F4AC49B8BADD510C8226962D4657A80DD7DD49104E88
+A0287F75C8784516C98BD7BD15D91F4513384B46BB097291EF6D6229A529BF62
+0A5F4AF3C21150A058B08D0B47DAF540DB98EAAFC88E117BC9DBA9AC19DDD756
+9A90C45BA3E8C37368C7E44BD6BDFD96619ED819CB067ECBC13BE325409987C6
+CB804C705C040AE82EEA129A1A7AD4B7B362E799F2CE5C0390722A16FC60B1E8
+44B0B85D097AE0D5E08DEC18C3E576E22268D7F0CDA46D9469019C20EAE9BA74
+7B49EA6166F5AC94672063D25C4C0E8FCE359712939ACEDFFF9AB5E7442A2A00
+A7E7A05E9E10A209672155C03EB12CD5E80155A5DEE3D503BA08D71E423C472B
+A74CD26E15A200FBAB8E94086928E73860E50BB7389B3A8E0E833ABAC5FF8C62
+B894E007E5C220FAE6D53ADE85C747BD84D88BD0F40132A0D1FE51ECDCE1BE9B
+BD89734A56C3577515520025A7743F45B01D74588DAED6FCC209CC819CE0DC65
+B590337F93D92D71615422728C6A8AA4D357A4E350BF6CE2480D4E1A818EFD9C
+E6243B96F72EF5C5E88645A73189D9772E97911A0713A03201A69D78A98F743C
+C0C8562CD876F8DE0A488CCAA3EC11142190BC32B2D8FFBEE6E155EFD20BB003
+055C74D843F2AB34D9552E5620FACE9E40C04DD84E29A602151B7C3352798963
+94674A8246B77CECFCC9A896B64F296EBD891E669A538343C0394E6634D9BDB7
+AB6D9C584DC7DEDF6AEB695FF83953653CED9E2B7F6E5D2A965B60F1FD3DC752
+3FE4EBD010AD47E0A9FD989B15559783B429F50B3A70A1D8CFCBC150A492A8C6
+4F570111E78A66DB463BB2EA226890FC25BD5CCFAEDAB7DEB2D081480821426B
+45EDFD5C048A41F295415C43E86930C53961D954B54F6886044A1C5F6D2526EF
+F6521BFA9BCEA510AB3E1731719DA2E83729BD08AA2814663532756B1AC5E199
+329025C143B47106919977514AC51B681FBBF5B115AB82A15E24C7315091DFD4
+CD11E813DCFB89355F4CFAFBBD54822018E7EA7ACB3A06DE7B571267E0C66BD5
+6DEFA8A8AED615B9A7F40B138841D094D5BEB32197BF5213BA572AED3C87AC6F
+6ED6356BA2A2B9A3E26E43B3E6780BB66CC93A1A2CE94C90D48ADCA2BE608B64
+7C0C0410A9134B81EF24CCDC7426E5096CAE44EE96D666A4F3F72774105AB03E
+320FC752F294CA8A537BE8EB6FA85F069E6809553D3A9CB3384E132275D2028A
+DC6CE52E75DE9142E8D19C656F7A74D985BEC5367F151A151E5D41346AF70ED3
+14D68F0C83E4EC225E6F60A48200AAA0FAC3725551B8859AF513FFBE2AB3C205
+DCD56B1177021C5D819DC38BA8A042DB92A0A34224E37250AA0F65707C2786C6
+189F518C2E635D327D999949C4358402F4EFB6237C8A0A8BBC01E9B01F58A83E
+3BF161E39EF504F2E31BB62F27B4830EAE9B05977DA47EF338817109E0BA1059
+6DFFC6426DBBCE33297E6D36D3492B098C1691DEA31FDF967BE80808199760C8
+46E9D075B01F433DD5A43A2AD872061B3852B74BB421B3564E57C44ED0DE500B
+D976E02B51C656974673846B1B5E31F7F9EB5FAB81F92F62ED34EA0715950780
+6F5674E2D6120A4B9B89F749120921EE65043A66F0272B75C05BDDD09217A10F
+E9E93E647617CA513F52252556D23F34248D0EBDB3FFCA6BD7C31E3369CB1F0C
+20BF53BDF7C4F7A1C37BAD112254C227FACDFD40CA33EDF4688600E16586A5B1
+D53C2AFEEAA2416B29948B4FA677FC1EAC94B4A7A2AA4EFFA901F90B56BC2F04
+921AAC33FA46982497BD267EC185F64A2C6F51C48691908568A4F9814175AC6B
+E1B34565EF12D99AD27B74481FCBA29E4C58C8D031DAC1E58E24AE5E432C74E4
+CFDA7278C66FE60C11D9501EE25CFB8F816F06D1427D8A8A119F7E9A66471847
+90BEA16129627D6E12463C9DB6E4CBF9AC20F51EEFC808ED48D41F334115616C
+FC0F037AAEAB996F754FA6A8653B8912BA0A9BD0D0EA381B3A54A86155156D1E
+BF1BFF694F9EEA20EBE388D4F01CE5117C0EA6E061B807AD4B53270006E6CC45
+5016272BB7FE8540070D51A260A018E09D9A1C7CB3E3C6409BC1993E59667A42
+049F2393C872D0E8EC41FBC2671D0F5E4B99BDC5AD13F7B0930B881CC049FC39
+938DD4D270BA8FD68DFF2ADCC21C7C24ABD1391C947142F1C7CC6E7EE5D31252
+F84B92C304757C0B8394E9E2C2D4DCEBD7709FA645B883D8A5F9657FE6116F2C
+891F3DB3BD7DEA5922EE488678297C5A043720DDD777451AB916FA664519A6A8
+9BE9214DC67D68FAF516E19E1F65F162C246B6C010911220978C2FAEEA7023CD
+E2C2A175D2C79817AD4E4364090B9C6B95CE86840857599448EA77982CDEE30D
+F4E739DE78F7C1831B2FAD322EB48FCA0ED8FE56A0BE9E26E6921171C31F8E79
+D5A59BC6225A0AA217FEB684D1CCF1B12E21DBEF1F1315C920EB46163B5C2F46
+80669943D09CD519256D5A4DE9144FD5103B52774A530D2A4318E9ABFFEF15A0
+24F0590F23BA7612351FC0BD9E5F9A5A8D6ECB677978C4E2AFC4560986B7A8DD
+0CC30A82C2CBD2707A18D988C164F2B8CED74B1C12991E705F005E3A8D10BB25
+F5A45974096ED5C5F8A09ADA293175C763CDF9C3484C4B9ABA9839BB9028425F
+DD34E700820CA4B2BAF969C1DEEE659A6FF568EDE7B58400C07BDA06310B92EE
+17FEF247A7FAFBB56044FAD23EB2933D8F313A161767FE211FC103F392A9A1E8
+B633A259920A15D19A4F5780C09071ED04C83FBAB9ABF344A1B0F1FBD2A96A87
+E03F2785DD00CFD5B3B95736CFE6315E86E8A5E838F4C02B36859AB4CA203FED
+4AB0D43E2964FEF26993ACA619F1CF12D3DCFBD8E50AD02A72A6593EB876E244
+D5CDFEE1128408A5C10B5E70D680299E8A33489E1179FA0F753B7FABBB826BD1
+39D7F7A8E7C15C359E24B6569640123700FF628B2D76E2B7B2DE7C2F098A7A46
+8309CCDEA49CD277E96366EF221C4DBCCF17882C4565340EA41EBE83998AC89F
+D66825F75F751395FACA772DFCEDA5E3368094CF378C31DF2B405D92690F2546
+AA982FE7F32660E0FB33BF253F632FE978DDAFEECCF840997558C607ECF0CD57
+5CDB3EE71642ADAC37D462F7A23541F850382BC1140C8437FC62C34CD9BE7002
+0C136657F2ED4AF914AD3AEC860B2E873A77C818E491440EEE98075FBD7EE393
+B68FAB94C574EC914FAE259B065C8666CBB2D3604F9FFAA52DEB5F157079D53D
+3FBBCC93C598FD83769A8C039EFA0C7BDC027A34721E437E548F120137EC099B
+15D65CF68B5F2E5ACBD11A46A6E2168F6E38DACB52D0AF949B8BFC8AA92A6C1B
+E5A362B1B05A46F3E58921F6A1CD4C97730B14D31F0C1E2C132D25B2A63D631D
+C65813C00332FB695789D21D9903B3CD1425CC36C25C18C7D49014F85BB771C8
+D0D18204492ECCBF69D97B2342457C95A7CBD46C489690CE6B4A4363653B9D46
+A5A03BB8BC675B56A1CDFC8E0C3BC7DD7E4804E61DD27EB6D25119887EEF49DE
+905543AEA98A60471A3D512D63CFA12F8768CBDCF8F9EDD9AF084027DBF313DD
+059EC75136FC08C22D280B76F1A4AE628CF21DB9A6E567085DCEF55E68812A8D
+F72DFBF59786430216884E02416419FEC67428E36B62093250EE61EDA4E9FDC9
+08F01063F9841E1A5FC54F34A65F738A9E330E8074930BD9E85F05AB0E9DDCF1
+2CCC343C8BA7619FA512292B53F37BC95635A3EE07C3E4E91B123E2CC34EA9F9
+123C38F41B1DF9C2A7034BD05D83CFC2B86D69639B8C34940F53F44D5F549305
+F196464989975EF35F33B2B4B52CA9EDC6B32033B63BB03462CC58BBED662365
+2F36F7A46A371A60B245D53F9A7DAA64428EECD40A8F4C93D460490B092558CB
+647E53E34771DC04DEEB2C285965F4DCF2CCB8669ADB238CC12897F7DF46E6DB
+FD9D5BFBEA1DD262C4CC1B24E681643FAB80B34D057BC920ABAED5B39D2ACFE7
+4CA3A1999ACF8C9AD0F99B12922D37C03D06B77985EF38B3FBCBD6AFD21572BF
+84A7BB8C4ED5C3BE657673F8E9F3A1655C0179A4CA565D3B6F0949B2CBBEC189
+B0B46D5727EA5EDB274B66C9FD872C00969B9C6B7CDC3A8CEC053A443CB847F2
+540FAE81CBE3F6B306D1B8B913919D1B9FC029CD5D414DB2E16C7EC97F0BC73C
+1BDCD5F3FB0695EB84873FA73629005D7CE48A9A1374CD2A0DAC7F507D3F04EA
+A8F71F37B65C4D5F5928C7A59BDB73E1702D4E9508519508DF62DD29AE1209FA
+8766D6311A78B12C830AC0D870CB02DAC0D6434801CB48972C196E0CC92BDDEA
+398622BAA5B384FB8A0396777CF517A08F646774EFD5C6CAB81C37ED7AF68276
+C86AD81C3C41476A6398A6A22D65421526EEC405F6CC9F2520FAD97FFDDBA3EF
+9E8DD5295CE2390650C5B19930B45A410083442196A24413ED58BC3994D003EE
+F13DA0A43E7D99C70365FE768AADD61628BDF66FFC0D4195AE0CB7FF33EE475E
+2B0EB97F66B2FE63D3436568729519B2639BF5AD17F7061BF9F8A2EADDC7F806
+50C1EBC0AF0BAB233868B10EC7711A0C2FFAACDCE3C49D3A0301C49B82A2DD78
+92BD6740EC601CBD20D460B90EED562B2AE48E55A7C28C8643B4DACAE95AD33F
+27F2CB34AC65A0E62BE71CDC3D05361D1F07584945E4E89514C40D8A3132C707
+A4D56B054572CAF5F12E40406C26E5077C9E255516000F1733B136CA5C58961D
+A9B22F6FEE7B57DA278A3F8F2B8A2B52B5E2E1FED54F14AFC9F13B18734E42C5
+C04846F7CEE4700920DAC45D381100CF7D5DF4E601D3B933998D86D5FDFDF666
+CC4ECF675477D74327EAB256DC1727A44C3F7A6A970D9598EB46A5C38E81F3C5
+10D8307C19D849BBEB0C962BFBB37409195756E505278D619A73140B2C661235
+2091B4C6A3C81A3F532B8168E69EB1DA998C84834C2C87A910A2A65B264A20AD
+50F7B5B8DDA82DC3F45F394BAAE1BAAF5FE217BB95A30E2164C3193083013EDB
+950B9F2F8559B483BD35507E77A8C59CE5E6571EF07AA5ADFC51C4E54346AE1E
+6E22EE5A58C7B31687B936299B29547E214971677A0D5FDC566E61EA08E86BC6
+976077F73FBC8EA0CFCA796D37DDF0977130FF25C4791DC6CD5B7450A594BD1B
+291A8650DFFFAB3154F4129AEBE08C3A0F76A61F23A6662795F20B096772DA49
+FDC818E8F431C8D7488139A55443B81474F5D80D63E1CC6B1AA2241C0AEE0169
+9077ED92D2CB61C71F765AEB0A26665F2677D214B6C5EF0111171B165531D3E4
+7E9E43F1659A4F3E96BFE53F74D902BCCB2557013D900D19B86DBEE27F12CE31
+A94697D4DA12D98DF2F197BF7B7F6380E1CD7D1F9E13B65D5841A990642DE6F8
+0F86E9C087D82FD2A903B7C5191D7D87CB2797C3B24432F7D29BB50DE05D37A5
+B9090F2D26B1AF1EF3DF11645E317BBAD8136611F64885A3D635C3C1F1F42995
+83BB3D6719766FE2D016B42753A30887C1D57DF9CB860FAC2F95BF993EB7DC4B
+F61EA29CCCA247F2728D4504648A8EE0B7FA0A766282E63511F89CAD7B612348
+7E83A9D8F233757716321B251D122D9793FCC20090AB7BE19B1575A3AD6CB93B
+9FED5A9A6CDD855A1F09FCBE5C9DD97F93C49FAD92D3DAB4B32DFAE82E36165D
+5A6BFCE2AEA0F568A481C480D75C1F32ABA8FB904CCBF3FA6AAF58C02B501A62
+4D6C1F8F690BB4B7325A31B13A712549AFA18174BDFDA6010BBFECCCDFDB06B9
+406732F56AA41EFBC80266EBF0B9852EE08E76EEB14A276935114FAD24214CB5
+D177262C90AB93798A00D55A152D635C96846D70395C7EAC49F7A750027F9024
+3781BEE23D56131397B4B241BC6976A4F2B04C8C64EFD55E801D833664019765
+7A22B810889C096B55AD2B4D8963CE240D5DF0FDAB71E9091A167A80F5A3418F
+DF87AA78FFB1EFEBD8A2C97E8E7667B289BC23CFC16F0B138CE179402015CC4D
+F36912CAE318490F6A050B56B778DCEDA7AD335FBB6F3F05C526C8B5EF0B7BD2
+DFBCF5FD5C40F39B6A3455B86B34E89060AB0E6AB96C3914019CEE49EED033F2
+EE547725E1EDD60358DDF57F9EC734134515949C482D52079316D9A2481A1547
+94B4CA6724EFABBE3DE13F07951329A119D84A07CA8CDB199704694F4B3AF26B
+95DABE0B18F99025A88898EDE46BB3C314FDDA77018279B5DC8C854096F3C7F5
+4DE88F3BE84881A03C5E19A77B769EC57B4F6E5BB885485CF242A23C6E5FC322
+04511A00F27AB274232A97A2E5C45188538013667C552E804283C579F1700DD8
+B3C70F6D22FE133C15FA6D5095582333F9B4495282BAD0537B90BC6548427F7E
+12C9D744869A3F5F133CB2CA078C83B80F95AAEE5D64203110CA1AF12E5E0273
+298B2EB72DBB5FBC3F6A6D7004FAA17AEFB086870C83E8D742EE560DEAA5F727
+CD7BA16A4D6FAB7ED191AB92BA39300BFB73EE31B7820D85DAE74DE35B2E3FF5
+8879D9D02B251D7903CA30DA07E2B5694F23631CFB5EB08656AECE21A93DA6B9
+EB6CE1A290631B795A55CA75A5EFBC99BD1E21C40D7374181C96B43B696F9079
+E7BC8BCC96044E09E48EAA625B9D5C53CAF79C84E8032A0F976EC2FEEA9583AC
+25DCC02DEC8D4798E0C145CC523E5EEE82A1A73AE0EFBB08876278A7983FFF86
+527052AC0100CB273390888702DA5C62889808C3DC427BCC5B0A8D787102E641
+2ABFCA74C325F26A74AE2CC7637C9996547B34F33CE355165910F2C0E6445E7E
+70DE25D7D187EF97902D4D535956A4ADA1F1FA0CE9881399477A0B72CFB5F841
+1893157F662F071419B5AAB14EE66E1D478AA9DDA4E4DCDAFB7060EC629ADFAF
+5C779DE9AB8A65A65722109954599B931C42DE431F5A988459BE94F48F7D2539
+1A8D09133020EA37FA9C7CF8A32C9C1BAE51E112CFCF59CD7FA6E9676BAFD4D8
+093CBF4FCC3BB2E468ED55E28D75DF47CCF621662632E2087A8227945723823C
+02629CCDF94D5168A3810B815522588487CD8AD69EDE6D7FA593E638F603D808
+0E2DC9278B63534E63D22876BDEE3A7CAB88C637DC55C9D1C4F3309C01DF68F0
+3919523B2CE7CA52961AA3C2E618EFE1BBCD2C8DC65EC648CD380E3421F287C7
+6F7308C13F6D857C74522BE6A0B09E15420CFAAE8DE28CFE6350217DA9DB5083
+D15B0CA455D343119E3C1D25F1CA143D5568D63CE32856F21328D5AAD69236BD
+208BEC83099D6652E91253440A613155EBE7F2D902CAC765F5049FB5433AD361
+7C7EF2BF062877DB1981B9481F961A097D0402CD89E0BFA180027E29B990C2EF
+138AACF0D146CE117990CB9561FA6C0A8D1929D5B8BA4C4D9168D6A744ED4B4F
+457EFD4B36189371E60DCE4D2D97EDE139145241DFB26394A142D4457AFC0E04
+990DBBF7E40FF9CC5B0624E9B898CEED3A63865690D1CA256330F472EFA9059E
+81920A9D365AD4CF9618E64AF8FE19DEFEFAAABF8B878C42C07490AA600C0E56
+76E6C97F5B0038169395855E4338C84108D1ACB59E5482AF5FA034769A116EF2
+F408FDFAF2205DAD5AE5324EE9F1AC7192E070EA40EF350817F8A69D680DCEE2
+1B30277FDCE432D5541D27536E9086C2C74B2B0D5AB976C3E188EBED10777172
+76F7D7F73E38D15D03809B350C2F55E80AB7EB7D4C4C9B7DD97179F36DB5E4F0
+1140662023CA3C389A8B168A68303117179A4AF84A64B2C2A56ACCBECD6A98AA
+14CD43B8CD3FB79202D957E0D5BFFB49967E5421426205FE24C9608E5F591854
+DF895083505CD0A4F53DA06D931AFE3BB68F3FC3DCEC7059D3FF5218BF5F1082
+CDEA29587E7E9E357EC1329411FCCA0C3078E9787A12EA78D59B2E8CF2AF09C8
+DA12B2B0EA4A43283C8FC9AC945EB0E63CCFE272BE758B0F8B2C9BAC46F3BA97
+D05C0E720C584E805589D2804EFEFEDA9962B4CD5B145FF7305FA959B660FC9B
+37C79503EBC2D1639D2593B0A9F24EE3CC07352614C0B6C531585F27CFB6EFCF
+044F2F2A261B0C2D79FF78899DB6B1F2FB06BFAFEB488504D2FD579F55980DFE
+9D15DBCCC176E41EA7AD6364D40D931CE561E0AB57F5FEA21549290E539A3C7F
+DCE12F4ED93538385B2D30DFA578BAC6DC92A144A72D1C2CEA334ACA6F6C2133
+D1996B97AE8B102EC56426ED5D59DBBA11BA7D6FD39A8692F0931B64538975F5
+61B79F8640773407E873FB4714516037A5C6FFA8C796A9B01898CDFDC2A3F2A1
+5D3BD4C09165F6AFA9EEA3E0C84DB1D058A4C54EC0673860170038CC318DCCF7
+1F3960F12AA2C9447090D91B0EF8A320E933FC8E89FDA5D5897266A4D156BDB4
+077745CC076FB9A12F9D3BE989E2F8ABF44F4BF842DF548111DE129B36B535ED
+E5ECF8AB96D94EDB9E0484E00BF942491ED250EA8E062FC59F223A85F26649CC
+AB1AF18824045625756CE044529471B253B1F3B5FA2BBC3DCEDC457C0A42E29D
+7A152AE14C8D60122C5AEAF5D4360E51BE81A84F3A6CB164181DD1B62AB204E2
+3F078794D9FE570D6115B1C9DEA193996CEBDC5A32D8EF3EA3C309B9F87C726C
+5F2957494663A92639A418C450D42D027053DE7342921EEFD3CCF162DBD32E16
+9C8FF39084FE1117958230EF168E6FA9B48590EDC108D7FDCEBD76BAAAFFBD0A
+4EBBA485DEA8C89778456A1A36F420FE78B0A8F854CFDE7E26E76CDC2270C983
+1D5D914F3EEEC7E4105228ADD1646013CAE11C03108C6971EAD9C13524537A4C
+2CC3D193CE5CF0FED9939AF23E241FF6C82FCBE73CACA6B4B6F88C17A18CE4D3
+4F49BEFCF830777A1B26CF228DA61EA5177A826645B18F21C10E06C748E113C9
+03402DFE318270EAA54F518FF635C340FF581055C1529CD6976951F6819D5A45
+A4DD081C55E7597D257DB9E2E3DBD46B0878895155DB0C4D859B1E61291EAFFA
+7F2816E365A5D6AF6EACFD49362833DE3ECA447871D071BEACE9EB8591F31EC7
+CBCE3C2EA428301FCEB42ED2E082F89476F39F7EB993044B8DC23832B25DD3AB
+FD6E0A199A3CF03A79F323FF826682C8FEC47BB2B74C22A92D01F0E0CD8CEBB5
+C59ECEE83A7B02E949225EDEE26D5D11521DB381A26E30CEAC4D8E2FFB87E0F1
+44ED94C0E3C022D4B2DC2922321EEF1BB71DE6C221535B0EB6A9837C8A775440
+BDC58FAA05C859F05A654242BBB4620D92E5E8B3C5A937B98064BF97549E68B8
+8FD29B4E57EE27055217C910A199900E2A465051AE0573E3D46E5CD541BBBA59
+5062CF9444E95536CAB30FDCD35A56AF4F5038E65690633DA9890CE8229F6EB9
+E5BAA68E54F9AF6590B4FDAD42B7BC0A6708A1C2E809B743A5767ED46FCB9847
+8274E288E9B2A49803D238ED5FAEFBDE3863B29D55118E3ADC937E4B02287439
+B452DD41CE8298B10AE99AE275D45C5E0EB5680DDDE9F449855FF97B28AD1A9B
+BE728BC56C8B4632938A4337D794EFDB56050F5459C031DCCBB1CFAEBBA79348
+F5514685F1F16FADF390B55DB5B671D0E020C03C8D301683FDA4BE8CDB3C7948
+2F5648A2E049A495608CE414857236A70AAEF5EBAABAF1A0950A2B0B814AFD0D
+443CD6D2E0365332CEBFD557DD16FE1E3342A85057C5C8337ECEE5466406A324
+B7A5F881BBB2E442C9775A1C33B5321887E3A8E8001ABAA65B1B2BD1191D6659
+3BBD32F2B01A37BBFE2A3964BF37646262E4D667BEBCAF970226BE5AFFB86A1A
+21CC0D74E7376B9634EC8BCC46D551FAA67603D4B707DCBF6C65D932FC76C2B4
+8B2D03F5E29C4E2327F5791CCE1E42395319739422607AFC0B6962680A04A5CE
+B9FCA10C3EA7F9B1CFEA675F44029F68E3C9C0B90CD7751040239137508E1E3F
+1FFCA19DA7B0933ACEB8239703097AFA4DBEC0FD8F94AA7854F83DF191A44326
+EA23CB5F18E342A9110D30A1D9427492564E7CA82FA80CDE8B7ADD8787B3FCDF
+A5D52B14B6147262461F3563101CD20A457672F78F9BCB7F996D7699975C018C
+07ABAE4E0987AEB32A45577BA6157B51E9BBC37839FCBB886B8987389D8C82C2
+0281A89F98874003140328866916A547FF0B47F24982E346FEC11458EF35C95B
+033F35334E2956A631F7192A
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.0: CMR10 003.002
+%%Title: CMR10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
+/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR10 def
+/FontBBox {-40 -250 1009 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 13 /fl put
+dup 14 /ffi put
+dup 33 /exclam put
+dup 34 /quotedblright put
+dup 35 /numbersign put
+dup 36 /dollar put
+dup 37 /percent put
+dup 38 /ampersand put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 61 /equal put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 90 /Z put
+dup 91 /bracketleft put
+dup 92 /quotedblleft put
+dup 93 /bracketright put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /endash put
+dup 124 /emdash put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9B8591E5F01442D8
+569672CF86B91C3F79C5DDC97C190EE0082814A5B5A2A5E77C790F087E729079
+24A5AC880DDED58334DD5E8DC6A0B2BD4F04B17334A74BF8FF5D88B7B678A04A
+2255C050CB39A389106B0C672A1912AFA86A49EFD02E61E6509E50EE35E67944
+8FC63D91C3D2794B49A0C2993832BC4CDC8F7BD7575AD61BCDF42E2E421AA93E
+3FF9E4FAD980256D8B377043A07FC75D6169338028692CCA8CD1FE92FD60AD26
+D57B7519B80A8F8DCE9CEE5CDF720AF268D3C14099498A843D76E3B6C0328F24
+D36EFE7F5C4E5B5C612786200C8DE3A41EE5F1FFAF4097653CFCDC8F4FD32E0B
+03EDB3E413283B9EFB0AC33B055617005BC9B0057FD68C52D1B0E67F0C571685
+767F2AA85ADE4E0104A1C777733D5E318A22A9944336E5B98D965E50D31F357A
+8B6EA5A0EA98E1B027CE68C2EDB149EDDD04ED74A1B3D206D471A0C11C11449B
+DE190BBFEBC08C9E1B7513B43DA3134D6B11A2516E6E86B67F68C970A320D05E
+94FEC57FB347606DF89989C33482BD09D011C55AA920319E7B26A205D3D0F004
+22466F09C0482A164CFB27EF6ED2B040ECCC3DCAF345B5A73676F193D43123B7
+72FD6CFC5E37930E61EBD5A6307E4DE70194E6384EC0D79DB6AD86D3B319A31C
+8B0589D0FE28241D8ACE280D0530EE99C80723E560BB72AE9D53F4713181F491
+344B06D3027BA4E9E94D4305BE1D817197C54C8FF56CD6964165F6448ECC8A8A
+64B48B4F0FD69299A137589E2491A283509B21A3A5772F75B7602A9F60AE559B
+07A58436D04222C73EAEA72DE9A5A441F88D27C11F4F91255EFE280E91A4ACAC
+1E98A4E5E6C57B9AE86FD218C3CD8F24A4104156A80F13821384E529783C52C8
+78B94AB3A0096090867ED32E8A30980E737922037F75F062BD83BF4F5929BC51
+CC22AEE2DBBAAA001CFFBFF41D258424FAD888FFF1BEAB796A44E3126159E120
+7E4025C676CF94888A1971AEF8B6764B3AF4A92D36FAF6FC56FD049710EE3782
+BC2CD84FE2473F133BE03C1346B875463F126DCAB15C7A9BCC9A727D23611462
+4E8D2BFD2466600285D79518712B8681ABCD69608E6AA9578F7BD771EC36E01A
+5A17BC17E375020ECA59B43790ABEB9DF5F4FBBEF807E5699EFEAC563E1ACC5D
+EFA336E75DE6D8248E9381BB110884FDC89C2F9A41EBBC9A8A1F98E6A41F68BE
+EE30E25CA148C1EFF42DFF8C214A6537AB11F260B8C329A4947B5FC8DC9C5622
+4DF7BF4FBFB00380D47BABB03BC30627AA74103E553F55278F538EDD8C1E64CE
+0F1398CA0AB5A86630139B4A7E8FC02804CAFF3830114640AE50D2FDA3B561B5
+C63AD7EE3347804CBB40FB1E77A6C89735DD870351C3A1811591AB493251B904
+314F65791963C0412377C1D02362C5E9655F1C3D4803CD379A8EF24C48218C2E
+DF1165840462BF37DDE1B8D5FF09FA2C3B261E2F1A65ECFBE5D4EAD43B52C029
+EEB3948CB8A252CBAF545C8FA1C31E920E23A12DD7222CEF2D2A513BD758EA13
+DA33BF5FBF1D734653EB83DA2D374A5B9A0CE316F24EE375D6DF6BDA49954C2E
+DB25A88821193636119D469BA66E5DAA9C92520FD4F84426A4E54273FA469084
+7517817A6EE3E21176D333825E88046F50B3CF6938AF9BA79A2F51398239EB91
+1A2D07F7FCD948427FF62F40FF95E39FE1A1AA8451411563FD5388472251C155
+69BDE9283B41900B21EB1190D06E6B13B7794FED020D2C1BDD205AE77B084BCE
+EF628249398B496DE85B406FC2E1939EF00DFC84C07E26CF72EC401BAAE756E5
+7F6673216E7560D1C2A723CB405EE5CA474A07F61B81F8836482F73DC9516D67
+CE0CB770EAD755B6B356198B4B97EBB29C63456953270CCC8D5650C1D006E69D
+38DE2DFEAB27DAD50A817F0D645D30AF5B75A7B53CBD3D2B8D87BD0A7E525AF3
+22F7ADDFCE31716914C2318260C2E2B4664893921B68C5A93334A361D94A759C
+0D7B146D6FD94F0442D672BDA0F6432E18F3C5DFA37ADA378D95B75F413C9ED1
+BB5C606A3EC7DFB3F796F59B0478C13FD1900381EFE0BB5242D5B5D34D03AF1D
+4BDC93EAF8020E26CA23C8B0E7DDEBBC6762A557067A4CE05A524188A8F02E2F
+3625DA38DFCF381727887F5646A3995A8A38A5FB1E5D5EBB395FDD0B7C8E71AD
+B48EEDB62AB2CE99D121435EFBBFCEEA69AE9ED8238B60CC7288DE33C766CDFE
+15B767B4AE2E6CE0965E77272AC9F86023DA620548CFAC85BC751C44218A29C9
+849F1C2DCBDFAD895B54E51A569952ED50F82DC8A19F367E7E44643854EFD6B3
+FCAEB04E55E4661C82D31E2932611748480EF61FB2FBFB0CFB940BEA81AFCD84
+4C6A6332D7A600170E38A8EAFCD4F93DC153C43175434C86BC747348FAC61B76
+1FEC9027C1A193E55C80F1F20B5317AA0A05AAA36AE235F6E49F06E570FEE798
+84857D7552EA92EF3EFAD52DE39C2F8F43C59E3A957B7B926FC95FC4B60186DF
+7F3523EE2AB74E294C8C4BCD8B4975E84849E0FBDA6C0B0F24A636DFA578B122
+CF97BC5089E21E9F5298D1C9F30CB8BAFF6A3A11BB4D9A0A5CF2B18D055C44CA
+4FD4D8FE1AF3630907DE7E585AA811F9CD11FB2C8FC791851D651009FA5DF20B
+3C33FD2FF848A9E3F5652BD294965A332DD3F246C91B0ADA34017FF2451D1394
+F9C3C95AAC6EC8062BE98E8914D51DA6A164AD13938693D446044859D03A949D
+F9AC5DF4A000CDA98BB516D762CB9F6D44B5268FD0C26E88BC4A760C0F75A140
+DEBDECA4F511128B7D2805872160C55236F0A0FA7637FF0D4E94AC079CD3C8A7
+D03A5A56F26B0438B577C46011A10532FEBCAD14FBD6032E224F45691A726886
+56F305231EB2FCDF59C8BBFCB5DBD2D093A0E84D62AC93A2312CA69295E937C4
+8DBA1802B85F54B5E7E6D6216A918F911FF705D3B5CF055F1D873B96283A0B53
+59344D910CD396D883F6F7836BA65FAB4393A773A8F6BC298069E5BA38210EED
+49C9D920F718E3FCE692527DC7CCE6963BF744F2C91BC5952564196D60574E86
+87A0FAB21F2DB2BD5A51D7FBD8FC19946D24E5A228462C4772F978E650ADCE3B
+8D66B9C21279C531CA1C3A8ECE3420BB65837287A7222CC3673A2A5F8BBFDB60
+C719CD073EF9A23675198462C7C87B24CC92D6AEE5C25AC63855CC3281494342
+D28F3D2FDE0C183486769A4FD5B0143193D31FCB2C2A14E487BBD96D0BADBB64
+D1B56021C363A795BF10E2DB448261C363A54A4AC1182B470C457AA82DF3F5D1
+F4B329806141EBD53CAE309319B94133D7EBDC2D0453A905ADD207364371E178
+0A95C2686E3B34C4A978BFC0EE968C39ABA00889BC5149162C2B54483D44FD3B
+5CFF41F611C7E03B94945F414560E874D7CF27FFD0630890D7D7EA66CBD15448
+229059E1C436BB33D69552B5367AB5D53591C4678D0C704DD3EA23F5D9E8A7AC
+17D003C19E333E726FFFA2961F33C70F429085F7BFE3E2510F59B78F58B19CB4
+01B48E184BAD9020FECCE3AF52048A056981DAEA02AE78197E65855DDB170616
+F54278395D9EA50DC83761AE759F9CDEF9E1948E7002414FC05286ED793E6662
+3347F2A9AF8917493D7305B92CF93E8E9185F70015F5594084298A6C2F9FD3C0
+689F262AC9FEDC9B89577ECDE92F08D3142209FBCE7B5C0A840CC767BCA56C20
+4E4E545E2BE4D21C53855CEE4CD0AB35D1A604C0FFFF77DBAE4289752276559F
+A05FEE65F45ECAF44E95E23FAB6052195C7948AF0B1126482D4E02D72BF8AB03
+DE0F1A632F7672AD9DDE70EDC82AA993678A82BEAD0BC2649C4707FD8509810D
+364B5C6FE0E10772E95288C622C2F06C634F4DF8C7FD1432BC9310D5F24FEE3F
+7AB324863D6DABAA1576E70643CA79EF4D7DF4105093D66CEE0F3B87D2164A7F
+26EA05F5C4645B22D3E1BFD2219657712C168FD90DE801FB0F32759E80DEC1E1
+43CEEB19FED12D757205043FC98FEC62D6A8D8B97BC083B4A0E985AF7850D6FD
+8716B9957C1C35A0675BC53DF672C425C79F43FDABAEE7D63F092CF271C9A9D7
+C41F40C4189510987887942E60A412B3EEC84C9A6E1AC7D54D528F5604B72C08
+94B7882621A5BF1F325B92FF96B80878CC550D1AE4D8196E41CB1251856609A5
+C4D3BD05A922D0D45E039D9450DEF8490A3E924E41434194910BF60BA1B08BE1
+B41824345627745541A4F1703E956328F6227D11C74946B38CFB096139979E56
+4E723B889B44C6D78673868C89912F8B4F0B4B485F1587A637B630F92E6072D5
+7F3B44EA6FD96BBD4FC28A6C1D90805E3BE3E42A7BC9C880762966C55BC04E01
+204D083AE976FAE6F37C94F27E68F8C0F28D52B17F6C0FD7C9150701FD78F8CE
+B8E8DC9260E3974005EB5CA728171F482D765016C94D4ADFE4A42EF42212BC56
+7E4EEEE8B0D2A7856CD4E44F55C0BAB762F92CB8D64C17022D4BF3A47C12F5E6
+279FC23101FEE93753653CE8CEDC3B75C9CCB29BF1D4554C6120DE8EE750FCBB
+E38B5D915206974962E320362E59B3F21B3AB1875703191043D03284D4467346
+CFF2F98CEB4845B73ED8E003E0DC94251B73E13A9B51A3F1430BCF6A21EB9B7A
+65E17FA411F53BE6432F1506232B8159E008FA257F884A4A01AC53BE91754D78
+BF14A5B0FBFB9C31BF4908355F8A762052968DF526D118708CCB0B7CB5BEE285
+6DAB6CD2E3934178E60BECB11AAB5478623CF6C50C92F8BB5D1A583609028FA7
+B8A53B791BDC9EF76A124F3F7641857E4BEA0837CB36176EC9A522EA7F41B8D3
+63C37D1145367BD300F17B54522A834BBB74DE12BF9EB26ACE6F24A046D58F89
+4D4B7DF74875F1A0C1C9D97BE0849593D7B398EB4B00BEBC8C8D1497B6EF831A
+A35380FFB7F1AFA4D888AA52C9482E8B1755CC209905F98F40D95B44D4DCBCB6
+67423D1BC2F3560FF0A8B4F0CAC352A4EE2C1D946E45AAEC8A6AD40303F3382C
+DF0756BFA3B1ED64C169E56ED1C760F2FF0E24DC5C9F41306EF8D2628153D30A
+5DCB0791126BEFD4947D7EF08301FE015F2B0008DFFCBF9F2D4D859FD43EC7D9
+C5BE237E9BF6665B7B1BEBB362F0C0C3A8D86010B9C97FA741C97C2E0513386C
+9C26C235B14DD2A58BFDAC7B5F63DB4DA6D5D37D0098175A9071590E1DF66A3D
+B8173A047C29D7D35557F06132CC920B5460B8AFC11D23D09A4E45D089F5EB51
+963FA1A6256E359D485107FD143B2BF21FDE9DA5744BC2615E86C31C89470CF0
+D06C6397D9FCCB316EA9989430240759D2C4945D941F159FC02327F34B042BAB
+B5C3A47C78E8C1A6FBCD396B1A51CC4B020B8AD401841EDABACECDB482D6EC5B
+72D2BFEB4556720FADD49D07307C8B22ACB7E310CA4151A85C71EEF70E8D15DE
+B3B00F26E0E166C14647A65ADA228A3D1C89025BE059306565DB1B1EFC37D358
+8C1EB024254AFD049BA977BD4C2C605050E17940A89D0D4C5D963E792320F5DB
+3706682E03D25D9E02487247819551465092CC22B6B56E93F3AB528038FEC3F0
+668F866707A19B0463BE706EC729D2EE1653AAC7E29BD25BFB3241D4792F5152
+ED415B4E7FA92C2EE5A22E27E8B75542C492E56D811C192E95542A6FE0BFE5A5
+69273C2ABED4300D491B92D2AECDD278404CB84B1BB1BD7AFEC858215837D118
+C0E928BE7E07CFEEB51A6D21375B772B8248C994564014015232A0DA4BEA1754
+3274F407FED0837A236371F1A32056240F2015B1E7F4B2CA72C6B58610A66F13
+407CFFBA5E0A2893C1F572D50F51286E9133B5A84239C9493B0574E77D281D01
+11D00683354A000C9700EAFBC1FD104EA19DFCB87470190E7E2CE26E3A6FD0FF
+2620B87B82AC8686B6206B530F17E9348BC7D04B948348802CE53A312443DB87
+4DBBA5313A6A2A8DAB8A1CC9A594FF8C299281C0A261C8CB2226B732FBEEDE40
+2C6ACC74A1A61379E2E1CD5548CD908268A32FA83D8504C442EA0E183ADBF7FF
+9FD09C037AB03516ECCA93FF048235BD11A25DB07F164512A079C5392AC7F889
+CE96AE5C8D9580BCAFCC087C35E76EED1A671E87C12E3045E15A687134736DF8
+DA984772AFD189D68571A2ED7256F1E204230E41D3D9DD876F938951714A3973
+0CA9310489F8E807C1C7A4E51AEA5BC030610A5D7263FF7E0F9FDE3E5E37A362
+5B919000BD94D978583B942EB79CF2BEAC33FEBC9A67272EB10865BA8FB75FD7
+9D280AB59F91B96C16C982DE848D76D8FA8620DFD7C80B7DEAE7264350D6FB3A
+EF04794DA3305844A7CF718F6D1A4A3AFF6826173A076A1372ABFC54ED3AC6C2
+09C9287FC830556CA694E21CA5342ECA7B10C90AFC4783D841D7B1E34FA3DB7A
+2B706F3E21B0FBAB23E7257962FC3BC309CEA2C7239A9D6B44CC96825115ABD2
+AF9A2566D2F3382C01569FBDB94C8D664A5DA0F7DC3DD140CA77C743D7BC1420
+324ECF9E4780280EB119885E96A6C619CE3C0C8E1E264E2DEB137E5DC8149786
+486D65667ECF47B1A1E20E9E6E4FC8323E0BC8E61BDD3BCDFC6575C69C03E31A
+EFFC290472CBBD049DE3F840AEE37A2486034240F80E75D8A79E0762377DF660
+52B12EAA16D678990B11A9BFBC03C1D4FCDA9FD4FFBB3E88352438102F10B7C5
+9F04C013B6575B5E948FAB58EA691984A0E54E6B9F3F505FFFEF74D06FA1CDF3
+4B8A95904C8A2763AA8AF5B71D00F5DE09DC1CDF87A08B6D181453063E14C12D
+B7BB3775A6E2A901636273D9EEB833EA8CF20FD83AE899E28DADE10EEEC20BD7
+BD93085A4B1AC80AC1AE8280C14767F1A487BD066007A0D050317BD081131A14
+6EA0898ED59E46DA7B6254BDCCBC660686E2EDA0E77A705A653733BB5C5497D0
+B130359F866CF293FB6EF0C2AC5BAA2DB0DED045E2DED3A2612D078333260359
+16CF0CCB272D34767EA069E0F0B0D42327A18529D72E890EDA6195C2688438ED
+E9ACDBEED41E81CA8EB5E43C2B09CE266EFCA03F2D7FF57F12B06F9E54FCC6A6
+546676F6FFC5B8B7D3F0982B6FF0D21D949309F0C0B175CC1D0976F8C55C6AED
+6E821C39041E22D91AB30922F2B2EC2746BC7DAB484991542FBC82D87B487507
+559AB466F73EE23C2D3194DC5CE4C9AE66D3164613AC5CBB3DB501B64DA7C91B
+C7ED2EE9027FC0906820B35D4F2CF66C4F9CE4A884B7C07155BCA884ECA5EB3A
+ABB83F84DB1F5639599DC7D3F51241AB5D95C3BCB7AB1EC90B4BC989F74FB354
+04B2D7366A34D335A47B8C00C05CB423482BF6C7970A95545424A08AFF9A035B
+7F83F52B65A9799CE76E303B85664B624C65E9CA58184C7BE2BB9D9C86A4DE5A
+8165EE3DA2E652B5022EE7893896BABD88931DE1D538F615787645DF5ACBBA0B
+A8E5B899A37321AA7D4B283AC9234978C2DD81813A1EE5DB6EC170DAC1B6EF02
+94892635B498765C07A38D2E9DB0B7581B11056C28278F89B0E60998379C07EB
+C0EAEDC32AA69B8B836F92A61AFD35688315B2C3F860632FC13E4BDFB63214BC
+41CC6859EAB3AC3034449213CAB99FA1D216563419CD6D6CE4E1B56F33E6C654
+7AA9DCB5B05FC068DF02AC32408C8010AD004F6CCA9887830927F8CBCD49CDB5
+18CAC1EAFF815FF2F6F527F936948201565003022C6C7390B4E3C2B219FB4F76
+9F12BD25CA7B3B61D1A2F8DFEE795D04D5428B42FB66E0C254AF7B7A10CEF7FD
+E5ADA5E217BE24851180E9A1700FBA66C7D2B0D7BFDE4F4EED1D24B821A40947
+5620363657F6D048E651A689822CF815E72FC8AE9D835BE31D1DD8B54C9A717F
+4DC319B4B59AE073936EA40B070524C7E71D5A7B64436DA107749746B516E29F
+E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
+9F9EC2518C77806A19730C97F54BEAD604548D553D4A6EDB247853225E24E7E9
+89D71F6BC94DB986467E755CCC99069B313F5745B02B4BB608A39F0A0A732B87
+7EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
+AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
+3141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
+61A06A43575568DC3CF3844BABF04CA767E2995196097015E0C4F622C4356B6B
+F41DBAFD797A4B9D7AC22332C552043EF98913D0D9B50CA6B7CDAF903BC5C04F
+D20A952BA5CC35B646ACD0A287C956B98C450051AF6AAF79DF37F8954473F8F6
+652BF03AE2AE82B99D820CF93F5FC0BA17EBD7AF90313E70594EB5C354023BFA
+07912408F1757319C7288E99872B907D5AB583B082EEED8AB079C63E38B07D11
+6744856E689A479CB3A8BC081F33CB06755926204981DC0A45B3ACC18F6865BB
+EE2C50DB43B62E3630FC1D9B1FFB3BFFAA6D0A20C0381ADF48E4D916BEE85BA2
+BB40F538F55C11D50F882B73913840B45161262BC8B0012694C3EF26452F9B77
+2CD7C7AD6BFEEAFE31C8A721C2D46AA00C10681BA9970D09F1E10DDC250E2AC3
+9A160EC8C9654FCEB36AC2B586E978D54744FC8A0E963D8EF6E228ADD22D093B
+B889C940206F504F14DD921D909BE06EC9BACBC23EB9E9D137FBC983570FFD2E
+CC5D2EB5D2A4A8604A4AD418B800EDC6B89809E0009760E9470F037FDD15E649
+93E9C8FCD9436AF02447C7F5AC380FBE69D1405189E8DBFDACF0E7DAECFA095F
+E6AE1A2E9ACFC032BA9A5DEDE9DDEE22A88D9A1F1E0FD9BAE2D88FA168386D43
+4B93EFF3AD84A9C05A80462BB3A940B2F7311CF7054F501BDD4F1347213C9327
+5653B73E9D78866901235C66B0C49CBDE3A1BA3A11991E6B8443117745D96020
+38F4A74D9676E4E99291D4420C57ADE4A8D5214D07B14916D83DF15114393048
+FBE0DB83223F609ABE120AB877FEF549B6E2389487BB7ECF1979BCB0785DAD1A
+2916961A1DA60AB491FC90BCD6578571226B4DFD204E75FF18FB5E72DFE8A028
+C66F8576254930567A877DBD22F8372E7BA4F23F9497ED653906F5F67A66A1B2
+51957AEB8D443550161075E5523F3D2AFF386E2640B276C3EC5EDAB74AC0DC94
+7D975D7F5781A652BD13AA7F97ADDBE68847167997ACDD038E74E930D8248F0C
+2CCBC094031C7147BD8D4DD664184695CF8C474845692540FE2B8A72CDF9DB62
+BE05E15A05F59D56E5EDBE7C371BE5CB3B276FC7A03B5942057EC3136591A1B9
+15E504DC497B663A9DD1729EFD1478C233B9317351D000DC0982F061BFF25A3A
+8983E560AE31E321DFB137C77C0AEC704F8DA99024232F26AA6920D58CB17DE3
+C1BC8E20988FBC4705E594569BEFC3F6666785B2FFA49367E3CC695F2A1EB846
+DEB37E120B0F4C0783C0D54655C143C4F74DA0690C6D08D07ED225F361BC0F86
+572D79540730791DCAC15823991FD5DF1AB8F25F84EF40C085B17C9070C59EE6
+31DCE45AFA78440BDE4C69A4D954C2006070A2C310179851F2D39B1B5D3EDBAA
+289570BE80F25D75116BBDA61F002B832F9EF2C32B53258B15A1174225168B28
+EC3324C6EC61E5711811E658A1BA65C8D2D47CEC6071CD88DBCDE9CFD2BC34DF
+1ECD2226AD588B50AF2399D171E99D8086DDE33E24640A767F249797B1B742CC
+F4E95A64E1AF8D88FB128194673CDEFD6A1672DD1D03B6749E729587C0CB7C6D
+13BFC785759F35578D611E924CD89FF87DFBC5C93FA7BE150624825F7D137CBB
+FBFB1238C1A397826B8D1DF0A39EBDABA5F10B37FE8C27568E1C088F279A0E28
+020DFD377694024FA154AB5C06EDC3CAAC3CB5A69297E1079F5C2F351D81614C
+D73ED708907A96F6F8FB0994D3247045E8D41028432E91C7ADB2F22066D6F8D2
+701298CC9FDA7928F99CA135B69808AF6FA1E0A3CCE1BFDE234E9218A565FE28
+96541CB9381E887182873FD7866F5F8415EBE92E51E7FF064D6CEB7BDBEE4DF9
+97633E53488AB11EE93137AA185AA7E4AA043BC73DF1739C92B4D3A8C46BA689
+B9F8FA73BE010D7C4F9007937AD0EE3EE4E3041C72A2C4DB92C6C5433DF33A10
+700F9E891885DAFDA44A00781BD019A9FFFDB6FDF9361520D50AA5037E654C8A
+ACD179511AF61BA10DB29A0535972DDE8B838091B5EC3F6C3408E02B8CBB3FD1
+E213E2C53DB7AB14D465CB0E4FE2A2CAFA20E74BF4601CC23687FA7921CB1B86
+6DB57E04C99BF7F56FED75A052362016840676DE91888490B4A1DFE0C079C88D
+C8C3BD3527F7C006E1403DABB47C3F9174208A379C221931724F06270985BDE6
+A53263227EDB00124C5677613BEA94BA029F9D6F8BD1F7B87C4426210AE554C0
+7BC707199BF6DB673E40D55741CE1F0853504A414099BA8E0BC7F5EBA5392684
+79552A5D4F7C0CD3A6D80B18014008AB011C8C66C74D32AAD748EF30C1AD484D
+B56BFB090C5BB937E81189912665F332911E11E83CCE75A79DEC2838E811D5B7
+DA85AD6ACB7D8A98D15DEC66504CF2131FF06AC9A8A4FBC4CF34EFB8455C231D
+0F73A50052AC8FCFB2B2ACB95033AF04078E9CB99551FBB1C46EE6C413D86C90
+AE8BD7FBDB7BA6E9087658C79C4758E242256C0546DB76A3857BC89F26A4DD9A
+F4A848104BF1ADB2DCDA25C79BBBDB66CE1C1A45C7427FE7CE5BDDA7CB599B4D
+B5D346B15414DC9688A9D00F0372DB98FD33E6164E5D78D6CCEEF0FEA60A7F5A
+9873AA7E2A7F98893AC5A9598B71BD06D13D2766489248190A262E5EAA459888
+6D0A38261697EBFA55180F3D416C2190B36C309202D1619A405764612BAA3506
+7D157F49FA1E0A7F252FCB0B8459A30975E02748AE1A891FD6BB288E0D7C144A
+1D348F1DDD145912678DAE1906796591E35012373AE01E18515F5CC3BB29A629
+F8B28B54376A9E10D0CFB29B81981E66F27B6AF44DDE0A3621B9ADADA9588201
+11A0362FEF840B200C84480177C9E3F0777350BE92707BA916A90AA81160D498
+6417DB6C7E15766EC5C9058CD51879041BDF2D2514B0D6B968CA0A300EE2E30B
+6AE41238D76DF324B0502BF79D58C2DA1FF7E384891182AA59918DC8EDF92299
+BA162134FC3DADB6FA5CEABB94D1CA9BE1635F769EAA88377AD96510A4DA8F8C
+5319E0C06CDBDA1BA9845302F716DECFF7B965BE413A7BCFF3C4EADC91626070
+9A5776EC64C67DDBDBBC66F16962306631D70E62616DE4997ECFE39DC6BC9A75
+D2297C2159066195F43B7002138456AE7EF69220925877C87405D06144D250E3
+55EEF1575DE8564BF98E2ED403591F2EA4F6AD71A126A9B1F5D350819058FE4A
+949B8C3A7907A725B463B752EB3B44B090C731EBB86FAFE24340D1A89D3FC0A6
+B89E64C3FA480C91DFCCE4922C000B0533A052FB9305EA3B58A38A3AC2688715
+A7C7418637C393439725F0509B3B08E07DE5E0350A005E4C5DB815CD317EDACF
+6460DADCF9281BC6523DC8FFFFE18CFFB2EC61884E7B324806851A91F7E0336C
+F86AF2C88F1EA1EAF0F87013AFC7DAB6F6BE426D92A406437E38C75614AAC461
+4EDBD8F129D985A1385B0F9F1A4E6D9936FEC600F4E431C653DFD1D56F694471
+FABDCEC7BAAA0C266D35D7380AEE587F61DA5CD1229D99F82BFA7B1A45A165FB
+658A4E7A741E11931D6E5C1358CF76056CC0DCF4B623C2A8CCED91694E46661F
+BCBA0225541BA9A58EA1F2E2B2402299EF2B691C39A87AB3D5C722DB2738EDC6
+8ADEB09750D714286EB392D198A55784AD908470517724B92849D539ACAE89E7
+A8E37CF20CA87635FF92F1140DDBAA76CD52BFC0B40FBFCA768F837D0AFBC7E9
+BBC89422CBD6429B284F67AD2DF917AF69346A5BFE8DA3DA8F9597C2265F3BC5
+A90CCE79572DB45176AED6E1A5FBADC98816F0E29BF58DBCEF62EF76A8D8C845
+4C7E9AB94A0EA43D2FA271BEA800890613D8247171938596CE4948BCBC7960AD
+5B2BA3E0A4384749A7D88F3DD515CC1DA7292EE9775B67F621E156020419D0D2
+1A6AF5B51E64D3EA7D182AA65AD1F663FB28739B86F9EE5880A5A96C3AE1C563
+7A002FD0ECE3AEE80AF18A0FBCA3EDD496C18C8974E856BA39226C382CF8541F
+F7E2C35B3CEB1DEE3BA8F346199944BE2F350E4C3DC89D789250C3C5192236AC
+513D1A3058230470BBA11E0B39141F48065B808B6FC459A897C304B749B5A656
+38B55950D6F379A535CE2816498DE36D03747FD07514C2DA1764217BF2DE17BF
+C8FB2F06382136D301953DC42EA0B429489275571F6B86AAF496E6A2EB196547
+B76BD6DFF6054DAFC9CDC11FBC541426DF0351ED027FE76128411F6F62DAD159
+C116B43AC59C885B3308B158EB74405541F2BD247BEED5D3B35554EABCC133F1
+B71EA3C7C7876661EEDC141818A3E8A9C519E7054E26DC023320A0166FED1C19
+DB1C3044D23E5BA7F039D86ACFBCB5F881A6FF9135E1F5DCF910A873E6F7DF8F
+11372C039D09A875DDACA3FFADB73504C1749932C3792CA80D78979CE0269AD7
+47CBE7CA39E26FCE1E71DB711D176644423FB964CF8CCDF16FBB686877B1B99B
+FC570BBEE55DC7F2AED8E81FF38DFD61322F1FB69E5CD6EEB8135128A35FC23A
+5ADD95D4F873B2EFD14A1FF76CD20454BD3BD2752C9A5F0C21F1E5F39C5865C6
+D4874580E6224B22FAB9240E0346C843AF0C495E7FD5B3310D90A6308D47E882
+EAF80772C87D3F7FB9DDA52F253FE4E3D1E56EBFCBDB9BB9A977DC7E9772428C
+47EDCE4D4F793F4DB9C66E65827109E83723E50424A87B36D6E74DD05B327128
+E407252F937ABE315B18312C8BE965E84ED9C895D275A331EBA6E872DBCEE1BB
+C6254960940B95F46CAB4F8469E7412F546E62683AA356366F454308367A789E
+B1E6F3A07B87829111DD17856727E948E0FAECA4EB00192F125C2331011AABA8
+F4067FD01D56853FA445ADEAE5901242DF460ED8AEF939332F87D81DBE9A30A4
+18884AFF8A7F00530BC7DDD3A1E6C40549BE3E567B225E7C8844F0AF3E19A4A7
+E61F818A5F1BC836012FBB9AC4A5AE737FFA908EBFC88B2EAA62877B05B1B1BB
+65062420B89BC4C3C4B7CFAD1148C6A373F26ABA9A8DDC74DBFE47937035DB49
+20F0B8E788C0AD02381732BEB2B9587D6B50E6F7B4E9DAD171B8C64B60A04776
+F70BDD9C6C8831AE39561701FB54D68810E4C3249C32E4D39BB40C500C8A735D
+F316A68985E3A0338D8CF730881326E2B76D75BD2566D7387C0DD8C5724592D5
+1FEE9798B269DE09387D3A1EDAB20063BA852726BC7EF07CED98E2DD1957F94F
+7E336F6047A935E128444DA8F525FF1E458ADBCB1B6D910B68955DCC59512591
+2F1228007F9524A0AA6113FC6805AC4ED806D5CE6E03AC9EB6830EA9A7AE975D
+99A4FDA50B92FB6977BCE8BCBE2D8EA44BCE9B39718584A452205C4349561CBC
+7B1E281C058D0BE636CDDE883E1C1AE3802A35C5426443AEB6FF705EC26AF94A
+2A7BC536F373C0EBAB41C780E56F5BD1CA645DCED5090CF32D4F0E5A780651A0
+477CB27558B2D0E2AE3D0A02565EE38D5F437D01308A6BEF55E80422F5B5B56F
+6DD11ED717B034083F9BB1536D76E321255A137E618B398875B5BB8F5AF02B6E
+B4DFFB173C424B24BCAF3C9271A54166A65927519C9770B0DC44CE276ED0C20C
+8EF41AC3AEBEB0996DEE664E8F872023710D0BA81DD3A3EBF79BC24717BA1280
+9E9CEE362F5BBADAF6D8200835311B1063FAE4D6EC8325A694EC516AFD24FF99
+EEE758AC14E76FA1573462BCAA75D246AC363C412185D20CDF1539011C35D1C9
+B3B3717F6A37DE522943CF9B3D8CF284B4C0068A1ABD9B58FDFC20CFDC45BCA3
+DD054AF00C18CD7EAF8DFFD45C28A82C7B417AB7188BDB49A5871320B2EFE0B0
+25CE25F3BEFB53856689A44D365C55218190B407B7BF9855ADCBEC5C0094CA63
+11E014EAFA0D1BB324D3B1D94DA4A7AAE9D29C71E2D5F122F1C79726731FD066
+6545816A5E05DE1F8DEF865DDAE0D80E9AD0120A0C81384AFA5BCAED3F8FF80B
+B9F8C8A7517A3863034C312BE64AEABAD77A5269253883D460DCB2F0A3B28700
+255BB96397D1D613A14C3368C9F27F3E42B887108793F4B12E2233E5A3620BC4
+F886F124503FE64421C1A40C37B25127094476713D39EB73004CB56E877935BF
+BA0C7B095414A1FD59CA11573B86EA32E297BA38B907938B3A25992F0563022D
+CF54FD863B8792EFB58A27DC2CA6C4DF48B9388F5676CD462C1AC745488F6BA4
+2B923427A7D29935417E010099FEB69B16BE5A2AF7B4883BBA80815A09693AD3
+2B78D3A939FF18798043F7C88A76BDD527B554BEBAEF922FDC9B381D72C7CD3C
+49698A1444FC33E276D3B9263CAFA375F1E64C8B39C89D4A65FC42A7183E41F4
+1C3F0CF7EBBE5260F862EBBA059765497817B8597DECFCDDDA5C1D15AFD3C3D1
+6F1A8E43709540948B1E3B41E32AC13B469222867483B0E765FB427300AE9BB5
+4CED17DE5C45EC8391687036EF43D57835CFE689B99FA0B860E3FAA6471417AB
+BD505F23013DBD726BB5645F3006BDAFFD5ED0CAA7428EAFB448E0A30F8B7858
+311E3FC16FAF9FAC5E86998E4954AC4C9E32FBE6E9DF280B457BE80DDA2959A4
+0A874282A7F9AE5236843298C26D5D4160A4554ADBD3EF0254C4F2D108D49DAD
+E1D1B996D5147560D574FC238DD005D18CB32A6CD73C265F05E0AEA17C73E3F7
+2FAA00290D1A6361CF67EEAA68800D9212BB5B8F0259FC8D133A21E6BD375FF0
+4BB0FB1E78F065E51298E97164C1FF241336428932D1AB97E1D0ADEE93BA8903
+A8124A3169AE0B905465D7E8DF132D903C9B4C64074147F2BDB1F722BC261E10
+D366C246E8D664CB57A92883CD7174218655BA68D9919D0C8678DC4E7A7E66B5
+DD7DA4E011769991DA9D93311A06A623B680DDCA32B287104A1D7BBD05AA061E
+019BE06684F9BF987FA635B9764DCEC3A3286340A7D50355663D5556103267CF
+8CD9DDB4DAF109C47176A1E9443F3E2703788B85B6FDC8951783D08F02DF72AB
+DB5F8739B2B9B38CC813796F48FCC21B0CFEBC8F074E464989AE5EDDEE5CC3EA
+69C281CC4CC295360FC11F67AF3746CE3598A215FA109709A4B193BFEA270261
+8ACB9B7081A9D60CC49AB3F25B0B6F922672E58708BD707AF7DF35E32E7CB939
+CC25BE8392B3DF687FB67F25342671FA831264230CA39D189AB6267095B7CBE5
+09DDBFD5512A8831DFDCF53CDA45E3F0C097C0C4DA1F12589F7AB3D83178E9FB
+2E9B5236ABD35A872EB9A37ED9545C6ADAF8FF2000E67AA8C8A8E61C9829F29C
+5555FA19BF6949AE81487EBA68E8ACB6244ED2EE8CD537155B68BD1305FCE20D
+710147B9AB3CCF6BBC0F2C3D8D77D783ADFA68B208829F05522211E28432729E
+AE8A8C09C04174BAEF8D560D62733BBAF506D2EBA030AA77F18A38EA8E98B38B
+C03B5A3C33A7B36EBFD1D55D503FC06F19056EEF9D1D01CE279D2BF23B04E880
+D6873E16AAA583ABBEF1EA8E5D6C3D038738573081E264C01DFBEEEF02B8844B
+19BB8D27BAD7354AD310ED720DE2D4240F3106275AEF6F7ED61735D799306DB6
+4A3BECE20525769A0D99EB90D957297D5913CC48A98EEE84FEE5D02B30651CA3
+B7573DE50F1B9D8D50E5746394DA8C5BA5D71CF1647F80BC9337F00EC31476E3
+1019B41BD01DE7FD55886402565F688D1E09810DD8AF982032B048548D87AEBF
+B20C6B938C6D8F96C2D7B42A1E69DBFE6AC28D166804E03AC698B180A48503D0
+0549D2DD2EBA5C601841A711DBE9D7019E5DE56CF78457F412E42CEEC248DC5A
+C0F349903F745E40897D0331124749D0F9F9C71B704E4CB0898AC7120A880215
+236800020AC60B1E5682656534F3332C2DB06A7510AEA061D9206B4C033A80F8
+77DC8EAF7D32A7B791FA3930647CB1A29228DE62A9733C6AE072144BEFF15651
+791C8F99508DA1E3F8B451985DC68251044FEF9F91C7578A2F3956D97D544D3D
+0E6A3F7719F9561B47D76612D833BDB64780728A6456E8CF273BB708FFFEF743
+CF069E55B1A871718E02778CA80A5D21597D597246C260AD390E5F4A285A5CCD
+E55AE1C37589EE307C6D2E1DEFC605C9BC33511968CC8AA7E61F5390951087AC
+F4376C5BC48DCB22D8F0CA6CABF25383616DADD012FAD655FF4198245209E305
+274D18A98D760203C8AB09F7204A967D07B75E7650BE0A0595742F821F74193D
+CA0AF1A4875F50D1F3F2786C5532EA3913B3589215386E78157D6F38C4860698
+7DC51E51908A7AA304DF1233ABAE2B3C9B03F2496B320DCA5B7DE98FFBFD6FF6
+EFD2FFECDCEA32D0A7F799382366C6325B89C94B37CED9A1A1BC88602AC5D9BD
+1BEDB8D5CD2D38FD1FA33703C41F979BC24F1609B3B35295CF756551F9F2D770
+ADC3D23C5B7C6A777CB33A06791EE8481BF577A94016A061D8AF8882466F7499
+E66E7E93F104E599C79CB6F76D42608B9BC1171A9AFAAD93E846008330DC3C0B
+6E8BC7623E8693C1E7E8B5B8BC426B1EF8EE705D2E806486775BAC15660BDB75
+66BD708939D23762BFB8628A863C4F9978F83733049F63709066CD4203476CF4
+575DB5CA5B5F01D8E4DF345D78C2A938B5EEEE618507B2AC9EB9C4BC9B64CFBD
+AECF052FA5D93B306C075AA8A645E5B93D1005C252F0DAB540243C7E3C3EE52C
+0886A5D89A30DAAB4ED8F38ECE11217F0198347E62BDA7A1BEB6D46482BE3726
+33CFBB23A78756BA63741693D764467273078167DA48362985CCEA2889133C7F
+A5B0BA827E92333BB02221F6757E4ACB8C2198BD7A976A29387CFB9B7F51C65C
+2E151D1D1F73470B14587A6F11AAD77465975961CB77306E7793EDAC65EA7AD5
+E562F2673FBE78794C9D38659647EF5189F6ADD9B4250085A59F84C0448EE47A
+A073B712B6B1CE984DDE3125960C16AC77098424004666BA6116A042551B48E7
+507FA464B21209D31C506D1DAFB628FC2AB30279E6148F3A2DFDD183FD770551
+0CD3FE854FD619E7D2B62A8888C300838E41744BA759EA4E4F19AD5CD249E8DF
+74E81BFBFBEE42B2F67370B748B1B3FD5C6201866D8CFFF8D9ED127F43F4009A
+CB5D9651587B54ACB8C6D410128362A74EB358437D0CEBB9E0FEA7FFC27A5509
+E799762B27F30B5FAA4ED3B492752B04702E48B1D0C55155157FD7B4E578A560
+5C0343A472546826E9B9B80E91867D2D4C3EEC02133BC338954AC6B58499AA9D
+24CC3CBD2023E962D147618C08BBDDCDF36E91EC2D51D6DEB97A1477D8156707
+9C1B858385FBA45CF0FE74563A5D5A51ACCC3EFE991429A8CE57131AD56F352C
+E95401BEE11B310C96E9C3CFACACA00114625BA7B4400FFBC5947574317E8699
+90BD8678107AAFFE1516A59027E9907359B61C6B8A97B4F99A338BEFDA2C25DC
+D6413A0CAC46051E76BF732CFFCCD0FF1408DD26C76DFFB54F7745C79F3A7ED3
+1D9F8BED7C6977067E6C8E46EFEC63AE0D3953175A6E51DA38EFA2DEF475DD93
+1C34376F5C6C6218DF78EB84773361B9339FA58A88E96C646F291CEEF398D281
+E0DEB2EE21C3EDE0996427EDA0CA0A44247B1A0E03BD9366E75F763C9B1D2BD8
+00D2066BEF933DC6AB3586EEBD04E6D750A22978ABE902200200B468135B690F
+B840BEAD5EF80E068F6F87442D93848684A127EA79F4A8A24DE737A373ECCA3B
+B405847430C138E51DC18C367702E868CBAAEF6890FEE68A75C5781F32B96D86
+BF5A0C99F04DF2B7FE968B6566BD816C96D7EE35A863C0D4635047FF09F68302
+EF62B9293BBB8BADCFA64C6CD9024C4F739C8C730BD62F2B613C6E1923F04BD5
+62C556E3927411C2655045B9744C9DCB7F1DA9C1B5C70A145E9A35DACF1B68A8
+B5DAE1C62DF9220483F1DC721D559B87D7CD802AB539AF1BF3E434EBCB796A8E
+378B1139CB3DD3134DE8F40C716BA87185D3E406E3C941D336A1436D891803E3
+D2C8E627204A343811FA82FD1A232FFD6915501C1B158E890C534CB94FCD9ABA
+F64EAF649056C1198F0F58F56D3E1C91C167D4D9B4481D48A12CE297D5DCD0BB
+8BE16BF18DE1D58F7D2587B70FF5734EF8391DC5F709BC39E729713CDCFC2EC4
+5E7AA863CBEE1CE8185E657E7FA6565EBD6868F478554E96FA808A708B48E463
+AACC817DF43EB9A5233606A402F3A83FCE99F73B8DD819A4D014FB435BA7F23D
+F2AC40C473A34FEAF0A5DE457AB5A18A6CEEE95A55FF604AB5225C5C1DB6C6C7
+0C7647F075E5FD3CBA9F3B316887B4A01F1C2FE09719B4BD09A84C5A3DCB82BF
+F5EE9FD0133F987FCF77098E0CB919CA7FB8468059FD35088B97705F180D5A19
+CDEFA29A02C5D3EC4893985A2478B0BE83B18FABD32654040A2F2A9BF7BB4F7B
+5781D2A6B5E416BA14BDBB481B3D619B0C885CB392111E32B2AD6C8BA13E9F93
+49CC4B5A35B1F93B68A5ACCA4823DE44BA8979181E50A3804E43D6245488A15A
+BD51999A729A20B9DE927F728E59312ABCF89176C35BDED4BEBEC14636B19989
+CB8BF2927C1BDF5460BBB09BA81FB83020BE4D4B69179C8E3B838D6763946166
+B328ED82B448CAB5EC2331CE7601EE8B39B334BCE11038B0EBD8437E5463C640
+73C5FACEA06A219AE83515674CEF03AA2F5FEACF656ADBAB944CBB237813CDC5
+06C303EA518CC59486410D65F5E5395DE84D0EBF8EA37633BECF5A08851B4758
+1BAE6460B2B67D29A8F88FBE52A26DE7A6E6D859CA00BF437837DC123C459B9E
+43FB6DA6B79DC16C60F9035EE3B10E2CCEA9F7ED4FE29667E0559A3A34F6B550
+E4184ED8E953247B104DE7D912C5BF66F3259214FF091096DAD710C9F4EF531B
+B4C6B3BFBB4715F3654587A5EAC63C917E100F37862B03EC240E762F2DF72CCC
+9CBF233ED204EB966F6A34519C0A169EA6130D18CB8E53EE96B7A63C828CFB28
+45CDBBF7FD775137119B7C7BB2A665074691199B387ECF452A3DC5F859D4248F
+3A02D4D65167A9E6C92E0A16D293ACE234C049D98E961D14D070DF2A7F55C232
+B2CBF0378ED83686DF80E05DD417153A3FB34A7B2F0DEFA69A34E19CBFF56D1F
+14EB4CEFE99DE9CABC5F0FDDEDED79A50F29151294E2576CE97CA00F734702C7
+B94243299D8080957B7102AB370D5448226870CBB5DEA5A295D3D5C8F7D1B5C9
+44E6F16F703E4CD3F74B37AD19BB53635CC4801A317C953F2A131F82DBF39694
+FE552FC18B94EEFC490A579F263DCF470D2AF1336C166F0FC69D84800CB1765D
+85937598431461E7B5DB95839BFA81D51ADE49E4242E2DEA4560DF41D27C7733
+2D1F036614FA1AB505537197F419E6722D4EBAF5DB087FCFF838E782D239BE68
+43AB130B26003747C36CFFE7A96CF8522F3F369E1E6443C923C4EF6616241DC2
+5366259FA9FB2559B5B797ECFA474D491E96F2CF07DFCB0765A1A7B0FA8EB181
+0A82708A93C8C8C2EC711CEB46D4A4D51ED42E6D023932F6C29F7E4D9735A5D5
+269481F9A92673E88970CD15DD2F532A2D96C48150C10854F3A98B200612EED5
+C2074848780E53C5E086AB78EBD0444A064C5377945680900997D1739E93EABB
+520519269E2516C7757FFACF312E6725805BB2261552C760CB68A7BCDDA0438E
+0BD4E6DD87C204039396684FDFC4398421E1D94B110F2831AC0DA589822357AD
+A78CEF72FAB2EFCC848DE7C5486AC56D56DBD0BCB39D608F40E0981572B9FB0E
+51F11778CDE7A9DCE029ACD63D61C22135CA5AC9DA490C29FF12165AE20F3127
+9D57AF7441F31659BDA2872A720100F3F63D9CBEB596FCC23FE1BDC7DAB26FD8
+00182A4EB8C9ED92B3BB9971AD01063CA67ABE06F51F66232545EA42AC145113
+1BB165ED65DCC3A1C0E288FED14706BD7FA08D3D4F143B8B3BA68BEABE09225D
+2D0524B51E2D7ECDFAC0F8D66C7D96D885D0D87B7657F6134B3E7D0493E4BA5A
+6DD7591027A957EF7E04AD08B10D93205A5F268E65B30242AD7D07C2EF59238F
+F5B6FB46BAFB04D0E354072DD934FC5C63A4FD47541A4BA4B68E531E4614BEF5
+15AC43BEB87A1204B9BC873E9E79BAE958F4622077B7F7C2EBC0FFB7F7B6EA39
+C9D47152C26BC4A41188B367569A22762B8800E715416B7B396BB3B5ABC11A19
+C427DA9CC6EFAB2450C54030DC95A775422AF14156388FC0DB8901D3D13CB248
+B774DC8E8E36C7FEB216ECD93288F0520FDA6FCAC443C62347D680CFE38039F4
+1D15F56B06632BB1E91AA8E098EF73D8A054AF1A8E327BC6E7D37EF19166633D
+1714371B2E916869E420A69BFC9AF4CCD3F1DA4569D3542AA43722748E5079E6
+EBDAD7306314586BB17C9C7FF0825D865AF14F0FB03EA08F5E2D22A97B9702A4
+8A169602A94B3F08ED7A0CF6B9288E35FD989F2D0020411EE777702C408920E2
+7A7F37E36734BA4937FEC3B14FB1FCC92BE0944C9D893929A63DEA8030DFD9BF
+86C40A4E5421C663BEE7F2C29248B4839E441AD9D04F051AA0991A6D6EC47280
+10CEF96A41D329CB263A566A2D0C993FB918C6356C1249BC14BBE3B39596F7FE
+DF719A7A9175B271E37F0C3B46B6F1A53ED40E6C3EA4313A7C90B65997EBD308
+E2F08EA3B7038E0694294BE05E9583BC74306255DE19846A692C0D0D64506C30
+F1E7B83EE2090F0B0C9A1DE01474DF9DC7D618193149E95DB2F6BD8C0DDE48C9
+625313BC0C265A6A4BF5FC9598EF8E16477DD19068CD1AB4C52777E9CBD2EF5F
+99E28F5A2CE31E2924C196492A8E3319B1024C84CBD4FC175BE286F1F0829E3C
+7628AA9FFFB1810C93336E3749A818E46206A3E415139064C9C7D004D0CEC1F1
+FAB611B672C0EB951AB9CEFE67BEB2817BE9248F887836DB614BD26A59CCA79F
+04CA82700DDD8D792E89EA14D0B90FB3F8D6648090A39C99894C8CB638EADAEB
+D9BC62555D36EBED36A39AD7601BCE938D26C84EB1A6302CA1111B0C362C7718
+3791067E2B506460D1BE71A13D02451036C4FAD7B917CC9CB347E8FC30EDE59E
+8BF9874561A4B0E4235BBA799471EFBAAA64DC644958D1695526A86D56DAA3B6
+8AFA3A1AA7B66C840DDA7860072BF4C937B37FDA41922388FF8B4E3C305335BB
+ED114714115CFE1385261C6EF0EC27CE200A0B2434BE519CF064FD5860CB7395
+C934A9D7B06DAA01F039DCF3318F393E22AA8CCEA80F58094F5129B06A5856C6
+9DB2EEB9B377135ACDD04876012CFCE0CAEFA831CDDE6B3ABF574573EB6D72D6
+F03D294CE59A42D5348781C90D1F0D8BDCF770E6989A939E3FD42A68D34E6B0E
+A0AE88E2B52577B1BAA36EEA23071FCFB8FC4C41A8FCB9F8871F265D78B274B2
+D0D8F92D55011A124E037B5254162E7956465E96DC76D0CD96643AF172BD33A9
+DD48C30161EF717BA3AE6C7231F05DC4E330964C01F6BE6EE652AEE0AA41086A
+B2FB3DEE6697965BF24EFDEB87D49BB4D617A10480CC29C978C953A0B826E470
+BC73AB39F4A8A94306CAC840DE844C60F650537E695C6323991AB9038DB838DC
+0264EDB30E27E3F38B9073C8F7FAEEEF4B8285FDFEFF1C7CB16E43C712D78345
+813848FC335ACBA0768BCA0A9D57E99026CF04808F002FD842AF9DDD4E72BC61
+4997B2B39E28E971F60F8D96B66D8EB5911B8856287E3CC2D24D662312C238F3
+777745B73A30CF91BCAF4C6205808A2286285462580052DE31EC1EDB0BBDE46E
+5DBA461A815EEDCA60F8D64F7A2A84613DEB4C4745EBD6C04DAE969BF4681B5A
+F95ABFAFD2E9FB49A8504348551E67EB6EED4F87362FF9A5CC9BF06478E815E9
+EB946FBAC21430CF51569E331E0060BABFC7B21535D987B480FE1264A3738EB9
+F67197E54D9C2B032A06AAACD80FEEE298763DF5CFD00E2814F58A69A8643AB3
+3902057079A36C46D8ABE38C48ECCC6F7491D4D4A581A452C48CFC961DD8E85A
+5929131DD9543262E81C96631C7FD7B94C724102DE9C365AD97D6ABAF44AEFEC
+BFFCB5DB96D395117A665FD30A70E8090C3883FCF7ABE76954BFC07E4467E5D6
+262D9C949ADA532E94F9676D15DE90911D34BA384081A789D304584C688025BA
+4F6EABB4ABBD427CD00FF823773B11F283241BAA9B9719808D7FC5E77FCFFFA4
+F95DAA339D4843AD99133A1DE37103F386B4092343814923FCC22A87D8A91F98
+3E72139EA419D61789C36D99A207600C188477278887467F15D6A6635BC18D38
+53FC280A6AF75015E003E2C80F312FC1D967203234583FF829FF13890D62FDAD
+69DBF4D1AA69AB22A11A64662AFA11952042294C55F890EC1805936402B7C229
+F0A33C29453754544D92CB1E338AB7F3337BAFDC535CC93DCA0A049368B91FB7
+07670DEC8F84592CA1B4B8CF94E0D6A64A0DF9C0C239382D283AB166206B1893
+510E6320866A16450FBC2B0F82A38E460689EB07AD663A0785971D53E42EDD4A
+4BA81BAECF10B93B346B20FBAA70E4D15AFEFBE7CCA040D982A92E7853D055E2
+065A09DEBCFA1B2ECAE26C38F8DBD378E976FF597397C27828EE0E6791B8641A
+95CEAAEE1849027B06DA878994B70F94C835444F6B69A2DFBD6E4FECA5160C53
+7F12F395CBB410A6C92DFF74F8CDDAF64EFCF4F8ED9B832AD75E48B3F01DBFA8
+86D7ABCC22CA3C13603580C64B639948E2B74654FC8AF03B4F56BC8302645BB3
+B682950933DF6086F8641FEA62CC01F451312D22F4CC5804EDCDF981F6DEE997
+BB777110A8E8ACADFAF6428096108F535472D856AF4165C255A1B43342202F3B
+A72C931CD8A966D1898B78B12B14DBC0D3663983A9E2153CBC23184A4FDA6A0F
+779AF83DB6FA36FF6258473B17FB452EA4AB02F0D34C0B8C8E1FBBB35B680D94
+0201AB0D0F0637DDE7031FDD239BCD083FF5A28AC9AAB7271D9179A8AE589B26
+A897659AA8E9CA50ADCECF5D5F4D21C7142D4A85678466CBF033D883ADF819FD
+CD27E3A6046F3EAEF987DD9171440DE702ECFD3AA51C12AEAB971FB8E3128291
+592A3619A00A4DDE933F960CF460C31AB712D12AE4A37357E42CAA235672926B
+00FF510B7686F013ED7841FD01805D2496293CC262F80E730D2FB94EF320314B
+2E9BFC65A17A0BCC2233F53ACCC3ADFFAE00F19277AFABBBE4D2E377BE54EC2D
+82038A9D3A35D7B13744E468A1AB3D0231D394EBEFF06BC1D52F18430F7F77E8
+DB47FE2A958D86452CB7FB6FAB65198AC7507BAC92FF4F46B97A265BB80E99EE
+B2211B9989BBF73B1753B4BD6730271DB7679FAF4D3B223839094C1C980C15D3
+2C9E74DC9DCE7CE0D48B1E2A8E2E3DEBE2DCF6FF7B8407FA88F59A8D572E818F
+0C6AEF5B4A99F83398F97B162429D82A62E2377361853F630E7D0A7D728DFEC6
+EE39A9DAD89967BF1579C57AB99CD78DE820C407CAE52C2D7E65C97A594FCE3D
+378AC8FF6F8867E8953FBE91D2D8131AF97821F28D6EAA5A9F025DF790FA0967
+2C0A1339E953EEE5FC75F76FEEEE780F332A1C0C08DD80EEF52F1CB7E02DFE52
+86F148A998753B27CB823FA9B4907B37007A5FDB8395AB3FEE7CCD947D1F6CFE
+E81CD88BC9690E2F89F7CB130C9A2834F938B3D562A42CEFDC45A38E6BF62ADA
+1517974E61F6D35267795C7A9E945856824329B14E70EB350C997756A8FC0A8F
+7CBABC48C4AAF0A5D6A8F58AC190AC3F980C00D93FEFF1539D417AF2DFBE1021
+2882782C625D2BD323B9E0D53F1494F8CEF84ABEE30CA90C251887075A697386
+89F38001C3B2FDA9991D9A5EDA186C37DFBD0A77D47E24204981DC0A45B3AC66
+DD14D43A8A9826A0BBD96FE2279638F5AF12F010474075C381BE0243E3217199
+ABF00214D7D13F66411A6AB4FDBFDDF295163DEF72E788302F63FA8225F08ECE
+1F32D71BDBCC1ECBBC067187C9713C686E3EDF304BD3C58981C76B6943E66F34
+2BE57CB3145FE9A286F570074DC259CDAB2A415DCFDCAF46FA3E195FD43C38F5
+A612D653E3F178E16D9FCCB637CAC9AFEA648AF52B945B9BFE37F241DF9DDD61
+5425B37F903B079F337E8E15B70CCDB8920F15AF89538608A573E7C9008BE814
+FFAD305F0B94C7AE5F3DB35D34C04C1A250E89C252759581AD933896B468547F
+BF0AFC136FEC40C7436120A944979C9DB4D492A52B0FD658E8083E0EACBC60DE
+67DCC01E3F87F04754223A34732D211B43248A5A5BDB19992CAF481A564DC9DE
+B16CABD3BBF40BB4F84D67015773F7261FB175806DBA97597A0A8AF8920596A1
+3C77C728F23CDA310161CC8573ADE490419AE08CEB622DB6883CF0B75D43F0B8
+B37715EB9AFD9CBA33DEC10BD2D78E541499738D77A6450B93B795EBAD5F44C7
+311134D264B1881069ED3422281C15D1822DE565FF7768B80B58096D5B03D168
+0158B52A52B7B5B94609793DB02F8EA785A2E0A039FE4F8CBA3CD0C2A934F2D0
+A2F862F75093FFB2743748EAE9947B5D9F56CA0D67ABCC01E4432BE67E22DE05
+39664D8D7E9D732A897F03DF889A0D3C09E60C4F3A3996AED7293B8743353739
+DE1D41C5FEDC2BBF6662BFC35660CF8EA4F2C0DA06AE90AE91A9E0A8BC94D43A
+B79F3778BB68BB937032EE09062E1C4611EF8E86CB7007F2AA7DD3E46A31AC00
+8CC36771023DE9E9BB5483C051FFEF412A14A65F30DF95C91990408BBB8A1E6E
+FE801BA15666D3C270F045A8178BE9E424998653471706D0D86D49967771961C
+3F62F1B6F36652DE97526AD89E748221893C9B6E5915C1504FF46B6CD09D85F5
+57F881284D70C35BEA64731C99C0D865E2E9C9FFBD50806164157CE198DF009F
+B560FA76FD75CF742308B01F8ABF13E7F9DF82298FE454C1F709387B6F23C306
+61FD8651CA2F51C5F28786D6766B4339928115601BB265F6895712C39D4EB75E
+1E1EBE9BD2E808299CAD5092397B7AFC8B386E992AF8A47FB618101925514570
+2CF7F3D9418ECDF120DE0D9B14BA35A19312BB4C87C9A1862E7AC946AAF7E0DB
+9126282D6813095178325D6F7510550788D387CC3F7936E5BDFC55543FC2AD73
+0A47BF75CB6B625FE8F087C3E53330DA3EDA69BEB3601FE3223BF111C6235FC6
+8ACA71E69693779A68F93DB849000C3915225B007E9F1A64211A66634F67247D
+CB39A389107705AD40B0EE4D1E1AFB6B6F6E7F1D59D12847F748BAA026367172
+61FB9E0FF8EAD4609047340623E92C4954683F777B761B09A1B6E06E13977B66
+B7D5B557C9E0682A0E4EB4B04EC5191E68ED14DB179A9E167389023CEBD2F046
+05B7B10F352B91FBC1D499BC63A8B63A782692732DD2C49C0532E0D98BF9B5B9
+F1EDF5A5E00EA42DF50F9FF5700FA06DE26B5EFDBD15375BFB87068ABFD6101E
+4DCFB11A4F6CE0A126B1AF08A0DD21B487FCE447DB919FB215BF614D5027E67C
+CBDD8B631B0755EF9B2F6E261D4EE7D892285D1579F3027F9B04BCB1DB28A8E3
+BB0E83592AB3BF25CB92A3BA038A91C5854402DD5C47E1F535750D1090DEE1BB
+A5AB0785C67806FE7A4D1C7DA3A8D40E5F8EECD2DB7F5221ECC3AAE50BC607A5
+6B91C718E2092102B2958EEE11B3FAA96868D425513142D1C374886E63A705EE
+6D996AE31AC5F89456AD296DD490CA6E63BA98B78E4E9FC2AB540F27D47BAA6D
+C8BA9D2F10FB380F3C37575FDCAFC69F42E83301FCFA1DC31DEE29087614B306
+F158970D92374D7435EF08EFB3B32BECBC3C6C9FBD42951801B86C715A7FB306
+65B90CFF9FDE5AA20F20BC8DA696E5FE7214E98F39D2EE60185F926027A6CD5B
+960579744D143C1A7BC8BDF10C70003858B2A6EE72F854CD35ECCEC8E92BD664
+F9734FEBD981C41DAA2A42AE83697E3B030C9E2C6C3969293D324A7D68274044
+487004C3F6FAC5B64BA149DF711EDF2F17881864AEDE3E1E4C3147BB3DDB4ED0
+2F79305B402E76F974CD56CB04A4B562DFF36B40DBED2F35D38DBCA5CE8DDD12
+70C28A19C891D126927DAAECF16B2DF41802882956716BDBB442E9F062DAF65F
+6E3808CF58F9A4912209644195F04B4A5B209314017E96A700903AF6F4A8E8EA
+6CE36F67EA9139F816CC75A806C3585BBFD882F14028770670FEA22F34358E0D
+CD9626705BEDEB3A0965697647220C1962FCE67D0D3E2B9FC5DA3C3861F84209
+C56B90CC792B95076CD73D35974433DF6567FCE72A24162B434208A79117055E
+53BE3CDCA527E33638F940BED805EE57A3526186F80ADC5B6ACAEE25E2081A63
+3E6D985A8A6256F923B971E34BDA04D21EA99D34095AB201BF44B62258B19ECC
+45149754F896F64FBBBA939E41A11082C307165C5EA32F7C8CDEB80851B5219B
+7A680F7A8D02C9BAB72FE3B941E324F554E34F5DD5E4936250A82DB846F5966B
+779F29A9A4E53BCEA49CB4C6CC7D0034515E9F7B357B6AFC0FCC6FCDA1A34B5B
+103062647367EB77762F6B47773264536E40536C5DB2985C3048969F9D6C698A
+EEB959112EC964BDB8DC3C6F307477C2615BB536C03E9C9B346A7916D1C69C0E
+116DD955FEE0B8F6A0B476DDF245B7C901473A96C2C53DFB5BF4833F984F4D42
+C06B6751BFA6D96E9493139AEE7BE7839B8CB2290735C80542C40D266283CF68
+4DE60FABB54F29A930357CD2AAA60F5E85D1E674610F2E7C280401061AD47B55
+5A1EA0B0196423DD4DC994CD41094818332B99FC9218B2D628E86983DBC5B842
+AEDB7362D479C940452A947973C8BCCD46588808F0F9FFC55EF2D75C1C075BF7
+FE6C21DF51E5F6B00D807B033ACD1C7C6A8B3CCB7332E5ADC93433422095C0C3
+8CBDC619DC8EAC0382428C88443B16ED0DF49CD042D38082CDA4DFB035CE50C3
+9271344F46D3765ACA3E1B2942215F559EF1E308DBC2AF0659DC980F5DCEC6DA
+B33D596CB3F26EDD5A11D6647DB7AC5AC4FD41B62BC353356CD12DA5FC6EC2ED
+86DB312ED5C8323E1C766A0108ECE43C11D2BA0A63F1BE2B0A9D40EB995647C1
+82D5C9FC55169F50121ECA94D1953CFBF9F38B1FE0C7DD8B786902A841F24A23
+B8762B929FB5AF021414A5321C7288BCA19A240EE15D106043DA19354C4EE1B2
+434A967968C29B9125BE84A907D22B0BC2A2CD09AED00F3CC3C5C7C9AE7C906A
+7050756D4E67E11F2F2C14DE59A92C013849CAD0A1B6CD32C0CEAD2A4B20AD3E
+ACF8CE2AA125F1EE154B79690659E1B90563E3884B47699AE1F7A71579C3C4CD
+B66E6FA9BF98769452C5A2BD8B54112351F05BB77D3D3E3EE9250953BBA94EC9
+C0DAF20B0606C3CFCE4815A876F9CAB8A9A2E5662F7764050A0F5A7852B9AE4B
+5799C95B8718D481452AB4262A843E01CCE943DBB8377B7052FB397600962A01
+25E5FA112149DF197FD9C8F16BE5819096B87CB3555969026B8A5F4FCDBF3171
+BB1D5F36E7CF89D94457F4CFFFECFD8BB3E009655D799C4F262FBEF937E5107A
+511677585FE4D4560C34F03183E6293EC2BDECF5DB400CD1A29BA1678083CBDF
+EAFE8D078B72B42BC1CEF9FB5FAB5B2EAA044F5E98D99D9B907A3FE4E1BD4E0A
+2B845C58D7D0119C323AAC85463968D97A651A087DF3B6866EE0D09BA5583D8A
+8DB9837B487DF5FA27624BE3C7F17E6C734D294A1D200D971EAECF983A0A2378
+BC2FF6B206A5121EC01229C14E0C22CFE7371AE1007ED8F556B54347ED545D05
+EB488D7DBD5F668F45986703122FFF97A19523731B7D3CDFF8FE45ECCF2B91A2
+0907AB03E8698E0E3F6D846A4417B9F66703DEC16AB8DE158431D3424BF6462A
+70085CD88F8BD3DF2023F0738FA6E3F36E752DBE7590F6BBFE1BA8092CB69B54
+BA30D871F6200BB9CEAAD3D6A5AD721FD4A48D002BDFD8E339483D6E32ABE379
+914BE6B673F6FF3CC20BB2A971184433A714E802CBAFE2C85DD5F0E29B5F9459
+16AFA7D594B373139006786FB5B8594D50C91217D49ECE8E684C292946D79658
+A9BC010ACED5F757796BB9C32F98409ECA6511351E340C2C9E3CE2AC1007A52E
+95E6DA9F56E11D4B0586F88A149FA8A2BE78DD25F89BF504A99140A7453E4C3B
+EC9F94B300E4F6AB24C4528E029DBC0C61E116BDA8F0AE3108E3269A76927509
+95B41AAF17DB3759D04E9F0E7CA4863A9A771A49293B1EE6CB38E33A125342D0
+6C63AB27F308D08F60F4DEB8C0A335B115D25683F8AFF549598A3B1E88BBCBFB
+7C418723054B346E748DB987ADF0EB40FD0B8FAAFE5871EDDF9D68821C8C9643
+7A3EF4FD3BDE591022C83EECE829BE8189C6D819708103BB96A29CD107F416FE
+3230C3E7E358722AFD9469FFF2C7FD9DEC35BE527B99BAFF00C799B99080BE0E
+C88272197BFDEE472E29D1A197083F1BF10324E834C9D76190223E095487AB37
+50BB4FC92179754DD1138F9A55269137543FDE3173BB57BF3E5A2C42F5C58536
+BF4FE748D9033B0E319E3061A7044883A795BFF107E9C12F2449197FD29A2BD4
+C5B7DBC42C28596D43CA57E4184250213D3EE5D447A0D8023E2BDCA6B095DAB2
+3094B07797FA4AD49A4BC874F462D46F9DB4A21773BA0181B3482CF9235D9C78
+B967B280FF82EF3938F51211D5822F527127A5B4D7D643A443581EC8599C62A9
+A91D57B358D8787A39DFC4AD363869F6002E1EE878EC3573521ABBA11B6FAA80
+2F73E889DE675B42463A8488C72AF383482D6509F49786ADA521F76D93C4A91B
+7A5B23417305F5F89FB34261C2FF16B3BF983B19DBAB9BB6B1A2EBA3C2AF80C7
+450248EFADA22E1F8D18CBEE599C8D210498432C47CA067449143710A73DA7C1
+38C859665D0D88FF0E4ACB573E954655B5DD4B8C7DBE9B8A3B2C4526872CEB80
+45CB40C3D53F89ACEF33BF54BA05439AB4137D9F6A5F7CC983CC0344216AEE0E
+2BCED1790BF4506A8908E1D7AC441366E9938551A962C6AF4BF5E2E6B706CB0D
+8572EC4AC8CA0714A5EF6D4861932F42509F217477AC1547A3F96CCD15787A6B
+B7DFFA17B0F44E83A08486E779A1E36B7748B17F2D09FE6D7717E1CD3E306004
+F69F2EE47DD0A9FEDA1D43558C8217FC810C109B8E55446B6F151D44C08FC996
+63530C24C7F0B8A59AE9FB7ECD212902BD8E4115A6F6411266A57CA3F7532E2F
+C631F18FAAEE1F1B7224B598AC585A4279155501B1BE29E06893A8C56DE80D66
+4D5586C74C54B88D1B61602D44CAC618E21F447A3A17123F9032AE7B7854C08E
+E63B5335540A7F4B36DCD11A47FC8E672E8EDBD9BE813702927FA8B0E0715943
+E1AD81AFDA2350A8D9C05295A208EAB36592672ED05E16C4D9392B3CDC1EAC2C
+526F600BACC7C2F6E0AD1283259B1388E83880DF85DC9790DCED3EE2CB06245C
+3FA795567CF8F6E63059D974D5E2DA8B5262CBEAE15984ED2D6FBE0C5580CD20
+05640AC7C4D28C5692D3F814A1A90A7BA2633A68A7A9752AE74761AD428B19DB
+79133438C8E0CACA1624A5780A14DF07A74003E6EF75F75662EF6E817223BACB
+0B0B47C05B22016F6EC2E518EA8AF4DA0BDC4B02EBBA5D746CCD8F698E5F25CC
+47184CA13E1670BC214C44C27A70CE6DFBFA31B6C82B015C1A4F64F2C767960D
+E2E40BC61F84B19C6F874381488053602966F43AE5058C0FAD7FCD563D01DC11
+09C7252BD1FC94D7975F72047395F685A7FABA083130F64B8DEA9029F14C6AC6
+874B97B05248E3D6A435711263526F395BA49D30A21D4AE548141E399FBAB5B1
+6EE081015FE3C5663CCC484B8B4183EFB92E69EFFDD7F01F518569E03A72C4FB
+6772A0644FA922FC56B0B99B1F35832A11D929CAEC8280793D062109E3BC57B9
+43E01331FCA8548A573FEB914F916BE1D06D2561296972C28F6AB92BD7C739FB
+B1D5251FC46E2ACA742585DA6C13ABF373F66B51B45B44DB1471220A3C5AC33D
+B1CBEA5B541B8C1AAEE38ED30735CB1C12D02DF0F6770979AE08BA566887CFF7
+54C4AF9ACC382793D4BF251D09A088691EDF51E72BD9BF9F2455A8380D40723B
+1D90B78C210ED9972BA6BEAD25A7B240219C012E3757353802DA6183C365F51D
+D94C2C57373A44EC5C422D3959C140BD87F1271405B33BB9747A78E5460A96DE
+2C1E98D4B4FD3A15E10989FAFBBA5C57644D6206CDB81493667B3E4FD684F3F5
+8FAEC6F36B47625DAC46AF37D9A04536EB5D64B84D17FA194BA862BADF76E107
+548B078BD5DEAFEC764E789E6CC8E78039801CC4716FFF5E7857B0FA3BC31CA7
+E1AB37C519A9EFC58DD1D3926226A3AB147EEDF10D63CBCDAF2DE66E4356711D
+EFB9601764562A81D21D943A01AAA3D814DA167531C164BDE763F6E3D619FE40
+4705A2A03672929945500B4D11F01ECB2B09CED1927029D49A9ABC19B23463EB
+0FAB85297CE11F97C1D560C5CFD27691E39FAAA95B468A502988BA484664EF88
+2630187E829EAFC67146942DAFE5DD566A72FD6BF32B33F27B383ABF99F9E438
+C30F7CF8513F209A6B4E76F16BEA603005E8F71C817BA98D25B415B930988A1D
+4EFC4CC7BA7801869D53863261CCAF234BBC398FFC8D7F736F231E77DC9C0EA3
+1AA359D0A1962649825F59DBBA3B5975D70B2D6FBEE024FEBB2908E47858568D
+4BF000D59D21F549FBC46726878B0123BC5F2450F60B092AB46065DDC9BB7D41
+8E3CDB9982369E2CED9B88B58D47A94A108324E6BC009395CB656230FD9C5EC3
+8631D1F70F5B29CBABA91706687A4EC238AADFD7BC3B43166134AC044E72007B
+8BB28A578560F256B2C9F818D948CD3CB57E351BA8F34834C164F3AF6F544B64
+0DA5FF8D23E70669BE37DDD66EDD81132EE4AC92607D6309C5CDFC6D800FA012
+BEDEF9E53F5F3DE3B0955FF6D7F6AFAF7C5026F2B989F8103E4FD2E39176E5C7
+A50333B89EC266B1C39E2534EA4AB75B62B90962065D26D8958DE43A879FB0A6
+316D86559080C6048BF798AAB878E578673FF67A92741F60CADD40265C658184
+A42E9B85997CC8BB4696F50CB08AA5F0F1A658041F6C32A0859B99E9B41A0141
+E9EC90FDA5A358995A7FE0F8E7D5B74F1CEE7C6EE8272B35BD242B5219AC103B
+CDD20FB4F83F7BC30E2D0DC150B036CEB93C92908D53C6FD6D2D5BE1A1EB1596
+CD9374A4F388507EB1624048C79366F13C1319E410B9EEF4F33C5BC5BA7392CE
+852B8F2F649AF0781AD969BA91CE623BAAE3A45626D4A6D98F210C30C60DFB30
+72C19559C54ECD9FBE406551B0B3C8B1833A8834E1BFECD87A20D90B25F4859A
+3A7A21054BD82BD20A3E2112F447ADAD7BDE83EE87ED04683DAB283627AEC13E
+450DA15C25855BC4ADA345C1D92CB5880AD4466DDA84568FF703A824A8EE8E29
+F0E221661D6BCF20BF046F80C044A860A2925E96063CCE02D044DAA35923E5FF
+6DAEFA7845ECDA7EB4D3145F0436EB4850AB3A65120C32BD2AFAFF65518A7529
+AF8B2E8F5DB78B7F789ED6144D3EE5588A64DC1709E64C69B3907A8B4872AAC2
+896172C0119889060CFC265751C8A781208282157BA8F925BFDFE72E4AE0BB4C
+D472F838F9FD40E229A3B36F18D96C99FE8D88CA44BD2702C5723D7BD75CA5E7
+E606909DC6EF9550DC7866C54E6F08F6993E6AC0E78CA0FDB60DB16AFE9149D9
+CE9E29E6461C1FDCAC59B0CA7814F7CB663BD335998F2B946407D92791AB32CA
+BC3FAF02A19178205981B654FBC761D3316337936BB9C02F4435E9FF33A93228
+CDCB3DBD347E15779CEB58473E78A5AF2F234F2FF350FF5F2589FD2A3F38EA2A
+0411507AE1ED51B550AD45D561344D3A6470C9449E25522F261E9F861A87F272
+250144D4A7FF42EFE2F53F262B4D50A9296958A5FCCAB2A72192C87AA4D7163E
+F5C23005FB2BFDDBB7696A39A987822C4D71A1BCFFF58FCE32435CE6580DC9FF
+F02B40A04772837D1C090B31D98E73E79D6E63D973AF32C762643D50575E99B2
+D2944583F89A5C23DB7BC78F34E2A23079DFE9CE9E9AD70C5EA9AC910B721861
+9CD2CF56C2E9F92311D2F4319C4E55411BCE3D593188E4324A653B730C2435DA
+3D2839B68C3919AF4DFE343C1F1BE951985F50F264253552CC514B6962EA363D
+CA92F7AFF2A2F64B14194F69137D3EE3E4854B0BE9E9D9400EF10A9F1B40A01F
+0AB88A7542A3F40A29B012ACD52C644EBE181CD24FBAA9A2687A182BDC142695
+6013E51C2A8E561A067760B4696EC55E2DF1D6A04CEE65E74A11F712BCB2F8A6
+9994358EC86660EC04F7DA6C7A133CAB415B034B567F36DC71EDD3DEF8F0802D
+437DC1488532EDEC290E147FC9279F4821F0EA2F5BA6E2A43B64CAF0B1942F33
+215C18ED620C928F1EA7D0452613927FE3A78377C01542FBA8A397D0C6D6D26B
+AEE8F0A3C15AE5CC927CA38E4C0CD2AB9C71B6780E5EE878523177130C291C70
+75D865FD73B3A875F450331C332ED0205F74355A07C528AA047568789CE16005
+A3CDB32578707DFABCA888B476BDB2FBC69425F9157AE29C0E807B4D996DA7E0
+75C8F714F2EF2803C456E2EE318F6111C286CC7305D2C1E270643BAD7587DC7D
+4030E32069D4CB84C8F07D0DF1E492E4F4C9AC6C71ADC174925CECA25FE6878C
+4C2BD2D4E3A3CFF16E0FCD8C308B759C2A4FEEDF484BEB0F5BB9B7895DC641D2
+922631FD2E23257128523B31B369AEC4D3A63E3AB3DBE2F649BA1C2E4BB4F8FA
+7CC579D3C6FBF2B045EAEC3E5522802DF1E107179B98CDB9F0A9D400CC5DC89C
+561A93455644ECF841E34C28FD690062504AEF2D5E09E9E84230E93B56B741D1
+1AC88BDB4E77B90D49DAFF1333758F9E72CC153F4F1823407E9EA929067E180B
+989D5B459D867D3B242CECABDA3439BA08BE3F96155B62E3323FFD874DB7897B
+CC139739546D83739C5C1665F6CCD89F74CB7C07138891E23DACABD4B67AD04A
+1DA2D547378B8E77D1D6CF3A89295BC499F383FEE55EA8359544EF60ACF1F750
+1C607FFAA1AA10A361DDDE23B2858E77C71F0FD2D47ECDE5E77CEE1DA878A8B1
+40211679D7691011B81246ACFF2B487F106FEFF52E79B7B7B05442D846FA7381
+98E1EE04940FD3446A516B47C815943870C9CA9C1B1BDA2894AD89DEA6E1B96E
+60C94BE49C89A0FC4B009AEAA8B9E658798B79AB404EB06515D23D0C83465473
+4833AFB6B56761858EDBC5E125891D58DE477CD512943AEFCFCCA741D39CFA02
+E0CBD9045ED5FAF2580C39A1102196A85E1CBC67A1C56A7CDFA12BE2AD351D9F
+37D4783CD6A8B0EA717B5FE28D7B39000712E37E622A821D040AC927726402E3
+63345131FE928E3147B83D619DA8F212E144B19EDA829C7F6CBDE636F76ABEB7
+82658AE7276C2F8BEFD02188598DC592E05666984DA2BC8C9F3549E96DF45D44
+9FC713AF972127020E99F95AF3904EAA898F4B67D19BA296AA36FBC14C4DC5AB
+C88DCCE567002214C7518098D015FA37AF02BEA5D9F5845FE3FF9037C15EBC79
+4CDCB7D79129ACBFD2573A884EDEAF3939E2D3D6967F1A0117A0DC6C8597FD47
+01813A0B01D60D7709BC55D5DDFCB08F53B441D7EEC6544FF96638CF1ED431EC
+794A0E716F63233C0D80E8B4123F30E632AD427857EF57A6CF6A106F5382EF74
+F9088615AF05E3362609E86DC9CB58CD2F709F8196FB61FB4F82F9B1F0792B09
+D6AD2F194A9353F60EDE331B84B7704F0C797415FAC6F5DBD56D39B44A45D1DE
+B6A2319784AF1B2A9573DB75B573926AFC074627FAA9E8B4BF773A802896CC96
+65B535DDA172851A2F052934E7D7D593D3E2644444F7C635179D00536099420E
+CC56526A9FBCA1B2DDFC48D479DD9A928197AE138735926D72737FE8EF7D1B21
+6425B94AF20B5EE8BC00FD87705DB8DF11ADF16715177FE917C2AAE6DC1CE5EC
+EBFA2BBC044398B8F85DF05D50BA8A53E97F44D6CCE9690F901A50B844416408
+91F0DA30C55BC25008122D9A08EE92A8C84F6CEACF40591E4320A114E2B62F15
+92971E5DD0613D6D323245F1DE0C5397802E88C79D9C8C7719F4A13902828BDB
+34D6E8D8B68BEEF5A4AB6A4DFCD93AF6ACE8C60A16A593474CB17982F611D6B1
+3294A28699B8E8E73C27C68910AB90B2CC147944323A5F339A5844B674AD75EE
+7BA8094D3BFA4FBE6D1EFBBF7603607E38B920BF9CE43E418452E4D61A6D28C1
+F91CC04699210332A1555931106ECB43AC1FE2D08882F0E9180E5924C0335693
+AA13697E9F7F1091D71360D373661CBAA631992B3B2627DA5340DC655F712572
+FD675340127A1CBEFE3656AB4009BCD1BAE64048275146C32E79F031EEC428A2
+0B786601B1B44D5BF9E464CAF224E5636B0D2D83EF07E81A545EE9A5F9A531D2
+064EC94A90714E13760440450A6ACF3DD244C32A9ED0A65C546BA46C27FD7801
+C94F5C0735A1E9E6934D30AD680799FB3A761896C9E1F1BC0422CEEDDE021770
+1837B9A79B0F8775340CE0C2A18E260F6C471E98A3C6E4AC73A148CAB6EFAB3C
+E50F14240785645FEE335349C9B8D59B99FD884EA4A1C878A5AB6934511DA544
+7D009675FD5B62F999ED528C3B70D337A7D93D4D14522D1270B5C345B5ADE5ED
+518AB80590221630B0E66A85B1DC67A6CDC6B3694F8EE53BF90223FD68ACF7D9
+A4106D543E16EA756EC3CF9C96FAD7E45A8966B8BBBD5B1E5E9509F2DDA57EC1
+AB2B457D495F9C8452376C11C649FE4015844D876967666AF9824AE5E3ED033C
+D3DE8808897B223FB36CC42BF7867775B8B97610CAD61760B48C7F3F2DE23908
+035EA9A89551B4AC734DEFF55D121AA9D365BFE4C621AC78344A11360E042213
+EE8F7EB0EEC8BEC6C9294D22467B5D6DB1A0B0E03F371E1AE162C5DD46DD127F
+F8F75142EA07F5F5E3B4848E9F4B884F0257D4FCBA87797839A716CAAF03EE52
+FF4479EB9FA912146C609AD0784C7EBC41CD480FB7B3CBA7D5BB91BEBA43B5BC
+AA5E4A9CEDB68B34B4EF7A15AE58EEBD677D7D2ACB6570A569F79AA9F8C08334
+2575F0AD37AD980DECA14BD61D6D0F38DA4C8F5E4350778BE866AB63AA8260F0
+3D9105FD3738B1C5417EBC9BE27027718016DAB611E3D06529A5F9C2C0A05371
+3A7B87144805AE4E317F26B518FAC096F5A9BAA8EA45D77BE19CDD1E352FC955
+1ADDD93B080C6E95DE94CE3CC6AE60E797B09EB9FF1EA0B5C60822953F8612A5
+93923E7D7FA07A86AD52B23D3D0B88630B88D6E8C62D009DEF41CC7D95EAC8EB
+B26AC8E3DCF0929016378EC4841E1C4F951059105BB7F4D9D827ABA155102A09
+0242EDC57D050CBB9A0B6C5302B1534EC041093CF0C05C0E30F0B3513F3F5356
+75E913640AE066B795197E009D880CF19ED6C92FBE4D9CD3C96C88A59F2097E3
+D9F0F923CF7537FC69D5C714DA5E53CBEF307D8BA7FEB8CAF2DC63B9B07D4556
+CF751C7AA7CB1268BEE3591838C5DA625BDD22B4748A2118B7073C7AC7A885A1
+4996A7900CE4F42B19383E12F0BFBF0862E3A539F952038E1149B57D3B92DD18
+FC33B2AEFF202D53D5212300869B57A104AD5640DDE1A5E3F1240482EA9CC7DD
+A63BE8B6DB82A2FBB5DFD31E72A6CED413ABA65C6DD3674A76E547A4CC9C1C5A
+504992A649C7F2AC469A9BCA5E9C84333AA74C686A863A05FB73110E466A34C1
+3E3AE5E21B912282BEDAE14864E420B05F9E2EE8B1C523B362A4237929BF2D06
+A0D398D91ADCFD021113D4489736B4D8E703D77F2BB92973874EE461E76ECFE3
+D114EEB3F611531FF20CE6310C338C6C426F2CDE535C69E3F14CBFE16F48C7E7
+7420777D9A175710174DD5E23B2BA6FFEC521907939AD66488857BE8021B385B
+D6E1162BFD8BB36174E0D5C238BFD778BA5817BF31B2624429080A5B93AC98E3
+B6C5E9C792F9B1CBA7BBDF63277A28B6891DDCD36D0CF656C4F510C77AA08991
+0545717C76D2289D77C79DB34F2FF22E29AFB3F5E9B6313A2F582E4DDD2373CE
+6064843D24FBC35B1A08AAD4A9B408541301166DBE585317FF2A8E15C25DA94F
+5A5B9D11F5F0B1A658648C529717151A96623F590FD41908A5CA20CDC0D75D84
+6DBFD25E5D4739177AF9
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMCSC10
+%!PS-AdobeFont-1.0: CMCSC10 003.002
+%%Title: CMCSC10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
+/UniqueID get 5087402 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMCSC10 def
+/FontBBox {14 -250 1077 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC10.) readonly def
+/FullName (CMCSC10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 47 /slash put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 105 /i put
+dup 108 /l put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 117 /u put
+dup 120 /x put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BB89566A9BDEC70EB4F2
+048A6EB631F05C014D372103E37FC3FA317EBC9973565A638403DA02E48B7D31
+CFF6C241DC5CDB470561002FF46437C06EF93BC99352DF04393C661FFFBF4BA2
+0723ABD9B3E9CA9E63BA57EFDBAE684655CBBDBA15ADAE43E1A2C98A3CF060A3
+D16AF8FE3A49B50A24C20EEED716E49AF6013D4D38CD9CC41A91C17E4D04D79D
+567E1EF49110AA9C34464E95D81A730ECEB2C9AF38FBA6B45E253288438B4CB3
+DC75B3A906D4357293BA41E59C35223A6C9CBD6FF5FC90C2D07CBB376C7320FF
+435A6251822BFCBB612CE630EDF826C37E95F541C21B93FCE127591D5E38165E
+2B58A34AAE37712BC58B63FFD70AB80F4F24612CFD2F1466BAAF3CA2BCB45148
+D0DEA0E9B8FBA4C4FF5B8B3CB02E461355051842BD1C94F41066B9B909DB83B1
+DCDCBEF7CD00A43E4C0B8191A29600CA197F0BA227FB8309BB539D2A620BAC70
+8A1AB2DFA51ADC9873B8E5582DCD3ED154E5D727D1665F99BD89883D69E6CC2F
+DB3A57AEB612171A88E22F038461DE03FC357F771675E34E90D4D19B4B36891C
+9D2333960400E97494F4FC4DBCE6A73C34A0409E433BBDC0AAAEBA7D3555066E
+1CFBB4515C8B573C9B9DD12ED5B6ECEBE35AD0DDEA9DB004FC6CB540B5117B49
+59CABE5FD74C6F5B6482B42C20B5FF0467D1DBD7CED2CC651CA57852B6FBB402
+A6764DB342889132C911CAA713A7F2FDD8A5E849345D6C81025E02F5B8B682BA
+90CC9B467FBC37362436EA6BF8EB62D784B01D5430147945BC09D1F49EE89F2E
+3E2B8E6D439248A56F82F2E03EA5C7A922F2813BE6538A3A423BEBC55B345AFB
+3B3C125306749E137C647D78028AE1FBF3E1A82C260132832A9668F454D39C41
+736717DED0A99F6B11F005F0E1D07FE84713AAB4C042FDC166AA146D7B5E9198
+E4F485BE5B135EA281FF1C1E616B5AAF02771F58C5840CB5A427FF9794F93E94
+17FD799C78AED1DC4810BCEF4C6C51D3C1504EA2C6F2B29805B7ECF97B5F637D
+FE92E168CB9029E90404CB54FB312FC7AA8A9F2F524C03E61F03B1E31D4F061E
+1677B39D5D30C9FD4673E1723F4AE3CCF38593AD6D7F61E9DF3C010E51F25085
+35D51105E1464BA146A78D7297D4D310AD91342A0BB942034A3EC0696B467367
+3E39D202D637E6B14D0EBCA6AD3CF22B07D4CA69C0FCBB6C93782B2F0DFC5AC1
+5D8A16CB5EDB671A0C1BA9D10F63CEAFCD0E06E42C730C8EF769CCFD57937245
+658F486036D37E8BDDE5670A212FB488A8753322A5B170C9662750AA958C0BBD
+8E97D8239D2A08B30416504DEEC4E506013E037C91785C674F8A6A44E23FEE6F
+CCC00CC5E4D355B0871FDB8ECD64F70EE32449BB5D6F84F8C8AA2D5B1A489BA9
+D7FF2DBAA8D0B84054E93D64D3E77850A3724824914A0F821EEC3D605DD851A7
+606936B8B9E24D6E932E16C448140FE94DD96C75AECB73850035ED9C04A1D93C
+64B21E7D4657E030483EC5C3554AEF8BE4D0FE5B9743B875340B09E01273DAE8
+F256C50A1A8F2E0417440A8BB0173F59E11523E1CEF2593A4AC5AF2167627B00
+C5EA97D125EB8A4BD4C372877ABF10F5B7B149D73787E0834BFB3084E9508DF7
+072DD71637019599252059738D4D6BC57A9358E4B14F6AF9C4B31DB8E25C29B3
+7A15F9953BD73ACDE5F0445A5DC406BB4635FAE51C1D8202AE31730E6F355317
+1DC197DB0B6177307C60E5D38F4487363EE051B2E609A52BC4D45B14B6558B6B
+5E1618748794B8340752CDBE7756C068975B559615D4CD5A97CE30BAA7B2B1A3
+2FEF2E055232B24FD8A21BECDE1B6A479A28EC80AE2CD16DB50B30B4A6CFCF06
+491C7CD5AC29FB964D4846415233947522676DEABDA0D9535F8507D33693930C
+B4E4240A02B0CE7EA288516B8A6EF908D7F8BAF9012D052C6AC96D9F8F6ADB07
+8984F3559C5E7E3022A957982155FC9CD599C74E18328D3AB46F9DD15D1C4C3F
+9B93ADB4489BA02CFCF57DE6270F3AD2F8597BE71786510EF08142F430EE5568
+4F9DDB792B7C46B6135E341DBBF062FBC50FABA80CD4A384157BAE57CBEA9781
+AA4416323265168AC097DE7E30A0D4750143A4FCE70A863A31876A8FA5327C3E
+36E89589E363AA2B1A6E8B09F5AEB8FFFD0396067173465B6503383DE517A6EA
+88C0FC08578398C2A721E5AEB29F4AC9BC990A50CD87BD35A11F9E81F68E7B85
+5E5B95A4F9A5D30379EF90D78E1E466DEF867BAEFC4F5ED2C762BFF099C1C2B3
+5E0DA1C2FB33BE1379413CDDB1EE6BB3A495331F72F2FAEB8152E8AD5FD334A8
+AAB0082A71D5574B618EA8D487B8FAF1B445F3395B1E21224F5492A0E06F5152
+7726835C900E2E52BE3B7B654183AEDEC68053DD0AF19EF6DBC10B6FC08EC7D0
+CC0E2C8FAF8C9A4C21FB7C34E074BBA4EE64226BEC8C928A784C1BEE35B72EC8
+E9295240B29DDC2539CD118BAC38DB3917D14CD33AB45FE47E827F2A2B193AFF
+53C5396C52CEA4F43F06AC2D08C74CC85D608CBA267175EC31311EE25AB48DD9
+FE811B411AE426C9FC0B6044D1EBF130231623F1566CEA4D1C06D8032FD9808A
+94479C842BC41B675CF6B90113BD681F8D43F51D5016D80EDC11D7640FB950D4
+E709A46184406ED90D0892A4CD9062938A8205697A200DBE1F38EB166EFEA0EC
+4FCB45CDAF82EA103DD6FDD03D146F3E42EDA6496064DB3F4FC1C5280C9E604B
+D5EBCA08BF2AAC90156C11EF68137DC76502EBF216F3AF3EE30DD2676D218428
+F41C655093F8B530FCA378B5769F262A6FDB4B66B83F18F050E77227E28D71F4
+5F4425CB8D51B3DAE872CD86D7804F870BC564A6DA1CA13EDB00D131CE4F6460
+7021661B99612629DCC20C85CF155EDC5111E015A77B0B82A8FC1EBB374B7EF2
+361419BA93B857D5C9944BB5B4AEDD86ABCC261542077FE09701C96370168579
+5F89D5AAA08D700E2643E88C2FB8D1D56D37AAA9744872E7C050B4CE046B47A7
+83F224FA9FD311C955EFBF173042C8FC66524135F579B1397828870D5C9DC71F
+8615FADE2A1CFAEA90F732B6C266E2F3048FC43EDA7A6B6D98E9DB793CF457B3
+F5877E7A055C92B0246FEA8C72B3B3456F93BF36E2651D32CD614C3AECC0B4BC
+F824C8363E593A6458D37408FC5B09883B280005DD24123E2D4B1B85F4113327
+EEDD9186A4AF2CD6439B46C5C168C125CA80F9EE9E68906620EE126CFBF26E15
+B269838A54224EDCFE2A373EB750D4829BFA410DE5F1541E428BB1E024AF496D
+F5F1C151F5A645C8622F2EF9088D57A2811868A8A8BFCDBFCE3ACB8463AC35B4
+8B6F44E1C1232805842F56FA468F81FF37D5D55B81CA56058558544C142EB3BE
+07CFB1F75DECB1E48C14D6AFDD455989AA6FFE8B8DC54F462B3C20E31D270BCE
+8E68E2B43A6625AC7E9792704FAAD6CE8BBE0B341DA7189EBB3E9D5375B27FD4
+12506D5BCA50AEDC6955E6C3C7BAA84BACAF7ABDF3A270C7734EC3C6EC22793B
+E67B0E288F99699D38DA8B79F2D21DD97945FBDDD132A8F0BF947950D3C0B4AA
+EB7B2C435AFE54489E1930610311D718AC610C21A644F34CB2D1959B3066F39B
+EADEAB5CFC6AF4D191D86B02402B00D1C5262707861C5308730579795EB53207
+A291A27A8B5C4DAE0A87A0C6A260026CA3CB620E1002E066A515D7990F3DEA29
+0FAC962E0B82B7A6C86B1EDC54007822BAECED673FAAEF88C8109777EB79A53F
+AF3C58546974F2F56E70E9B5CB59ACB5C27CB01895557B2D82134D7F02029B24
+3331621F38E68717F5CB68A8892D0B9C0A8ED4F8BB56E80505170D44C6856128
+2DED0254ADA4875CF56B4D97372AAE730D4C77A2940DC8C178274DF88A9EE037
+215C6FE7B9D481EE4DE809B124C0270782411ACCCF89906A8B143D0BA8B2CEDE
+E9B90465C3E57A4FD9AD2702323450256ABD09A1F8C26F08480317C08B75B720
+70A161C99715A35A94DD5C9647ED0F8A5337B774C8E54F9653AC859485A1FED5
+37B725A7E4BA58711CBCDA6054E34CBD8E9F9460179DA7DBD243D81A1531FDDE
+BF2BD425BD9DBE75EAA333B1F5793669A215549A774597E6ADA16D323FE5601A
+EDA41092730009A99BF5B5AAE281844A6BF3292D4D4EDE36B4FD8BCAEB6EB72F
+AC5D3CD53D0D621CA9EA8D254FDCB2B5161EE9E80B266563F669805A3A15271A
+0753983004A1ECC7FBADF62AFEA4DAB49A178C231759857DB910668BDB07CB3F
+7E8EC24901863088B3231EE3FA563924032C91CA9D68DB398F9BD9AC0C651EC8
+9051C9F709CD784F3FF5951DECD7E869ACC34B83AECDB011E6594347855EE7F5
+28811F744A4BD70D4E9077EA7EC19FFCF612689F12B34332857AE41F13E6D16A
+962DB9B6AAAC167B9FBDF0068EA13412F318384134B29F3F0C399F1973A3564E
+F9C3C39B5BDD4C98D81A6CB476E565860B50704BD65ABD630A5F1372F2D826F3
+3AD47C08B8AD3176A170C369EF3CEEB190134006D6135C5B8CCDBE1C11FFF1EC
+3F6D8C46E15C4F5EB9ED9F31A129594D542D40DC3815CD075A0DBB648D868AF5
+15A05C4BDB28BF23653A3AD96CF6AFC065DCCCB23D5D9A945F8CBB539DD3BFA8
+DB8F1FBF9B6F25B41EB4309995CA3D5D6ABD70CBB4A2F0C6364E5439AD1045FF
+72F6B45A30BD3A548CFAADDCC6C15D46F6D783D3E520215751DC98335A4ED512
+D7D19235CDF911CC69F3CF4365B678EBF3E87C456A4E77339C74930083445588
+462529C22A96A28C5CE87AFA0C981F26CAED5A1C8DBCDDA612624DBE0373F026
+465185A4D8C73CCD8D71EE97116F8F7D341B87FD78F9CCB9FBDA2A7799711607
+6BBA855AE9D5C505870DC85FDFAAA130A351D56AADBFBD6A7D52055E3200F8B7
+8AE9A00092B55DEA8BDE224B4BA7FD4A191CB1FFC4CB995FEE1AC2883AB69E1A
+AFFC09AB5B9AE311A030A5BA05E2213F9BBF016C8FA80689C069314D91274B20
+53FCC65C7D7B3A7504887525BFFA060304931672A078BCD7F269595686310E34
+E1ECA868899BC402D17EC36CE40D5041D7CEDA77F7764C9D98793F5334F574DF
+E93CB10A5E8ADAE95CE63D2339557091B4B4911A4987CF21B7F1DBADBC2DD605
+8EB72473C1F2EABCC44E0D0339EECB55DA74085606C3F89D57ACFBF5755A5395
+CA8D4BD47E4EE8D8B882D3AB31A1F0C62E74654C7E041E4FF2693A38A9796064
+46526B0A37E6B5BF8E48E80EDEF81E34DA8F6CC9025936A4D0E6D709D61B7B5C
+AB550397117F3F9D2F5A542A64DEA8E1178F7337124D6B56BA92F659AAD694D7
+391028731E01284BFEA635314A8DA8DF7A34EA3B6B2F8803BE6DCB423A9E8015
+55EBD90EBAE8A00298B3B6B1C02BA516AF528122C1F2B07EF69F5466C2C36643
+0D665D6561705509B7582D8301AF3C32E2F3B9433E3E04D62117C7E8A368BDE1
+0D4DAA1C415B2A6573116D2A169AFEF700A83F55D88813585E89C94C07802BA8
+3AE8F9BC3CDBFD9C2E35D062B1FD6E79E1EF104FC70B0AB09D12CA027F33F85A
+22F0ECBB4AD55FE8C616B82C46CE69A600E4F767BD7A9C5F9B37A3196B038384
+5DEF76A8884425FE598A63AEB19FA698C2AF7CAA4983CEC789268E22BA051EE0
+20A40633D22D8F707626ED30E8273EAAD1C065F0B2E1718B5AC853ABE09330C3
+B0082A71D557169BC1559B6D285A3499D41C4CCF1F74884EC3917EB9C574371E
+AFE8578DDCA459B8D22C0188A8D150437B05FB92022C95EB6FBCC954216B5FED
+CBC7C90B9A1F061376A9840FB64390A6BA99CFC8279A86A730C6DBFD14C53C4B
+7277D676BD42203677E9ABEEC8C97E13DAA626474513B06F8734DD784F2FBBB9
+B3B448B8E8221E380AB4A86D3A683B86A54129519D50DD4FE63B30954D805CED
+A9A5D9A39C58B65B08E1C19555E927C6DBF7FD07252B2B57F62B905D6B488201
+213D106A41033B26FFBAC2E616DA6ADA6D560BADF10E68872806CFD6F6E19D7B
+57CF1F7A030A7BAD374F16A977E0ECB8742D034ADAF9C247DA19C8AEA74EF6CE
+DAFD6B1DC562FD3B77E4D008BDE4D8C7FCA9895DA1AC9EAA01C32A0DA712B082
+9438E77230D38FC4153E1711417B918BA6CC03203A5FF082AF880F48518D8271
+C1121E4F1386B30A7F1BC6F10EA98443F8A65C867A109336B808BC9A8E2A75AC
+F950835AA84B56F59DA4C8A18859C3B68F6B6DE09A6675F639EA9107BDB67B0F
+54EBC564BC2D781B61C14363A54956BA78A2BB89C9F966C94EEFC29EE9F4E23E
+C0BF750144DC289F0DEE1F8A25BB52E54F656FAFEE4BD2DA57E1306BBE648051
+1D0CFD6A23A3DF082E3CF13197BF1B7FB22B2CD427BB78F455C9634DF989DC90
+7BB2AE247B1C99AB2062855B2948341B0F857ACD750B59E370A6698C6A1F5287
+72A4A9628A592E313956C242DF8277EDD2F1FDFB07CDC104275FFBF796D7518A
+DF49FF3CDEC3BDFF1D290C382F244DF18005ECDABF0C5C2C64EEC4383E2E07DC
+5C82587C071E59B46B7BEF31D268F39D9B12D534344FBA515E9DE8F166FAD1E2
+7D1558967AAAD3829D3F7EC6938D20E5379F414532976ABA844D97A5E9078901
+EAE4D0ED1F4C7EE7A2D80D891A5013D6409A38ACFA497F5A169EB7F9F4890DC4
+62FA6A89EA48267331F086992B9CA9305E16611E6AEE67DCDD588A25D37F45B1
+0DE75C802EE021E574B64B3969DE2E5061ED9364B646C38D4BBA86802CA6338A
+94E135D2256920EBFB1AA22D9E90C7D16853F0DF9F2D942748EE540E4FCE63C6
+5380D7AB4ADD6CB00FE8F7867E4862D8DB432F28331428CC350CDF7F447A65ED
+D7683ECA35A22ADD06E9FE6BAF060913AEEE7B2B8EE4798E437698CC9EB2428E
+74CE73F84D0D2292DE709D71FFF8901C3505370E6F1D4E28E6B7372492C65A88
+159371B1D60D77CEC93B272B6C5394EE1D2EF9969DB2838B8E128553879A1BA5
+2884B0A596E8FC3D1E648B7E26A4AC57DF09B9CE09B2F91D8CA618CA52AB3DBD
+D005A56A420366069B73146A6F58E88BA49671A1AB7C2070C3D42AA770285143
+40AE7D7868C0E1993506B07C086AD7D4F28CE2D15853FC5FBCBF9425D8012B9E
+DB6E1E5002517659C8DA69DCEACA94F368537668843D281FC11782F1C5F71977
+CA215349EE6F20565DE3D8D8212A40E1227A4B22965FA64A0B02C62BFDE97E6F
+C3C54FED4057EF9D258C42D7440C78C5E0CC58A40DD74ECED4152F70A93CE71A
+1B3A57C46F74A6D27BF98C97CCD31A8EA487260F224A3E40F52C65490AB4098A
+7B9EEB54A5A415C8C88568F7D9EFE74BBB785FA18AA27D9201F28BBC477A20A5
+D1307AA78EB8C7CAD409AB64B29E4115E45F5FADDCC80CA74B296C4265A40614
+37F2ACD8386AC0202D6FDB6711E8CB06442F209D781E940ADDD6D881D4F8E874
+357C533115923B90138FFE31D3577C6AAE60D768970FAAB682CD0DCA3E9A9A68
+6393E4B772691C1013ADFFC90C508D51B02D2518ADCC7E79F7DE5DF9D18B8435
+6129064DD1A3995E5A6F45D78287CC10A0EAFBF47223494C5EA934B1BC2F7C53
+686C5880303F9E3ADC8B100D441D944686E1FD811C646C6DD0224F6CF55FA87F
+D132EF50450879A25242A18683BD6D0266F8F333F3768D1952B0F32AA75106D8
+EC0AB703F287E847CB91FFB88CD9DA174B49171822BDE34621CF41EA772230A6
+3088F8D19CF2364A329162D39E166AC728B267758341630B00398D64538FCC4D
+E3E6CF103794C29AEF7F7E56970F6B1ABA87DC8D23E280EDC77556593D02DFF3
+154883CFE4EF04E07E7539A4750FA1CF1A994E99B656E728D140C83AE1F196AD
+9F049188A4184C84556C0476BE46DDA8ED86888DDA3065C5091D99EEEAC43092
+40B97ECF9E6EC8F51ACB40869E5A6E08A0BAB6B7892A232A3A1E688B81077DDB
+844137AB35E862CECB9761D4FD3514C707D6C00DF5F2109C43785B93336E939E
+B40A8E211CA36120572EEE2EA522F9BB1A60FCCF768D4D6E62F4F6521A7490A0
+7CE1F14CD451B5A1D6149A6AE7D0F27B7E0E31F556E2E06F41340ADE94AF27C9
+C8C0CEB284B103EF6D31C8DB0FE731362CB594A3D6D3F6FB52DA232DCFB65F66
+B2FF61B4380D93ACBB9EEFD298C052BFC0B40FBFCA767F3B1EEA76B1520772E1
+6C7915DBF8C3C012829FA69B8F3A265EFB97D093DDA4FA5244191C7F7EFADB33
+2D0EA8344CF7B8F03811562696AD81F736B1C3AA2C6CBCB5811316E0C1D139D1
+E6407C61D8DD5ADE2F04C13004D5F31EE929B8D5462DBC4AA6D48704A316A0C2
+E22A8D139D91985FEF3BE7B937A3BE91BCC9AC2F4359FF77A2EC81D686435C3C
+184241368906A4C566E76C74B5C24D453534A7FECC771106BCEDED5735E4E116
+AA0593AFFB47F3F3BB30602EBDBB815DB9059A761FB609C52B6D7DB9A0A6310C
+1B1C876006A573F53F12FACE12B3E27B2AA92920ACD28917B5F494B16034D58A
+4B1D27519970B25A67FA52EF9026B77569820BBE1DE8724D5B11F1E5C7DEF2AF
+CB7FA37CC69354C383D0DEA937B0A1EC4C27E4254CC7260D2683CAA547789EC8
+C09D8A3BB0E5D27B2657DB2AA0A2B17AFA5DB8FCB819073EDE520F94A9FD8CBE
+3EA35355AC509C4889EC55CF0E1C1C31D46880EF539AA5C0E56BD734D4C29D8B
+E90CC28C35FE29CB1A9D15FD8A224248F586DEE4286C5E66D870B033ADB5F05F
+2700309D1BCE34C5706C56811F7FC1E25BB368B6F9E6DE4F87D50875FA90945D
+ACCA92EE90E1D87850B1A90CA61B7825E9A0E6457EDD44FEB04431DCD86F3205
+39036FFEAC731AD38B715B3A0F360FF4BACB6E6D420A01789A64CF4AA60104D4
+285D48B767054D9B7F0B269955CB466BED12DE796929F2A9999EDACDA78F59EE
+00A2C9AB5CEFFD50C1BC3CDAAF6848EEACD2B6CC8B50A9A7B2727B954D3DC6E0
+6EDAA655BC07DB79D50B763CED64D9D53F5801A1298BC8D8151D97B517A6F90E
+88CB64B69997FB57315376C02E4AE6EDAD2BE6B6EC67589EE1E4B6EA4A7238D6
+3255D4EBB3C26BDE5B2A36B874A42672F2DC05C78FBAEF08989566012112C866
+4459A1CCB2FFAEF70581DB8A582476D6A4C277A3F36FEB81EAB7D05FADCD97C4
+ACDB8EAFC7699DEC35B8ECACA1075B845B9EC9C043FE1ECAA4ACD434AA81052E
+3AA97704DFF6AE73ACFD37F87D3F2B05B7164D21F9023C51AC35F020644183CC
+4F6973D6039F7E33C33B3ED9AEF22E78F346A44F918A18E0AD5072EC9D01C014
+F325735DA7B62A9DEDFE7E2E4F3542E955041F0F16841F672ECE7C2AB698429A
+42625DBF8C54AD77F2AB02324ED2C64E4CB5F4717C4F88D5D0704D041C1AE94F
+DE6FF8172C889533A86E2E0943872BE93CDE8A4882D98E2A1303EB3B5C623745
+4D3EF466459B4563BF9D64979CAE5043583BB3671E0AEBBA6599DB6A9E6DA06C
+5AABC6F5563ACDB0B88EFAB5F25306242361D4AAFB8DC02D1C67A5E66BD519CF
+CFB4D2B254952973094944D0FF7F44388580E39A57560E9E350DE63E336F660A
+22F297555F1A13E508188B0C720213782C45CEBFE87CE36761DCFE98638E35E0
+21C3D9B8F6E198C8B65DA0CBC6D17FA11BFFA1596D5D17525BA86C49DB5F39B7
+D7DD0C015EDC0CDBC68261057BB07F2449E16084F5752B7D04AD13A0DAD9C11B
+F22909BB65408C6EC3FC6D0965883F450B570203D65BED26A76FCD06B2D74E33
+B5CC12A0346A142443A5B57BD44C4482BB56A15D874B21E53F1A8A8E010D6827
+74E952402BBC7EA19BF16738DC6D7823363BE37F65E066D2D1FC935B357B726A
+C8A4C4A05A721D8221769B05B3535A2DABD2993E941346A3C8CB722DC01C4637
+AF69C3180E45E87B3074B41589D4C20B2A79D60EE1D35AECE1AC4FC65E8CC398
+CE3265B6B6E4B32060FB107AB18548B486A46D6C703C08B4BCE5B0ECC6C5B36E
+4B541E8DC6AB90BD9AF50AADE1727E15C5C0CD86A41D04C01FC84E6F043D0257
+18FD2BB385F123D32455A0C55DE1A7D757482891368B07B42D87649DB8F97A73
+365EB9CC190555997B8E318F399DCA5B4D81DB352C024747589487F7A93B27E4
+CE1A24286FED40C39DBC5F06C8E0E0A539A7D2681AC1EBAA2BF4BD7B60732364
+CF25362033B8DC7EDA9E52A868DE398ED08F9A07B1ABB85AB1B49751B5017292
+20202619AEB6AF457663215843E298104616F960480039C92E55D33EFEE37D89
+A31420B8ECF9146DA43030D2AC28E4850A34D673727FFD74CE78C99EABEF33B9
+A0BAD12471C5C98119EC8A114CB52D72CDD564C61CD767C5A47A878DF1068A04
+0435FC3FB7E797719E4903216642A167381ED5D702BFD850672E1B2107A2BF31
+F03B9A59F850AE86C4C406AB6A9E2D430AA47E70D54179DF9D96228FABEEC960
+7B3D43F9A6EF86977C23FBE9F0DDE32D96883327344249BDE9FE27CE11932BFA
+AAAD0EB7092F32FC9ACED53604FBA348CD04737665A1668CCB9B84D0D57FF86E
+A19A5554BFE4BCD2BF954BAA60FBE8C9A7EA1F8C281F3FAC4FDF3B0F7F5FB94A
+31B73010D275FBFE26B0BBC46FCCFC4AE49AB90257A67DD0A0E3F6F341DFB4B3
+9398A8A9BC17E3FD3D060BF73B47758E8BC29CE561373FFA66D29598B78AAC65
+263805825686264CC0DFA6A6330F279FB3DBEDB8F11ED26A1596FF15BF79823C
+253EE1AB6BBCD8E5B86C1AD2B5C3D26F80FC355CCDD2FA2E5E04D7175056CBA8
+AA13B132E451AE035A06C2D47B03311EAE636DBB418DA0DC38C3117E9FD041F4
+90163BC81ECF991AF6440BD23BFFB6FC4F8B081CC71C6BAD6E8C7A90FFD72E6E
+6A9B446D0FDA477503F0A97E8E22E6AC6667D1F07B168324C6188B2436568D44
+8DD464B907699B541EC76098D3C773DF8E4B32573A8C2258A718FE5D4B855ADC
+9A403B778293BA0AE9A04B408DF47A31C44AE3319BAC07EF62381F1F761419C0
+ADE85DF798E9DB479179C271B93A46A16E3DCF4A4DBAE5D8A51C0023875B9105
+CEA9B873B39E596B042B83481C011BA9314125EFFCEC69F5E4EAF9303DC5E606
+E1FFC6A84954BA289336CC62BC4F411C5BE730E24D4261D71E0F6872083AB32C
+764546C806958EFC69D561360865DBABB8EF54F4FAB58D8E3B27197B7415192B
+A1448B6F53C9F659B5017F5B3E29B9BB58CF1D808CB2C3D2A1994FBAFDF928B2
+F6BE9DD53735E92387394CC85246F4290DCA7A9FA28BE2A5B42BB8017314D00E
+A6DC63CD2ECC10AD39B597527EF7DAA225B7C2ACD81856288366086FE30C3ED9
+04BEA02A13DA57D69FE284DB157FD587F5B0A9FA8DBBE8A9F471CAE55F56292A
+1079D1A69C4AFEC851C4E402C76AF809E571F25809746564F75FB0D87B136ECB
+5A7144EA16D58B378FFDE9A672442B76F1AC5882CC5CC4893A5C401035BEFB1C
+D5D7A85E24FB670F8A5EBF8D99D600160DF2596C7505152D8B5B3E17E46C77A4
+F8D142D6FD6CCABDCCAE648C60304850E01FF12A539E5B69070B5231B175DAF3
+8C70C4527576C445A63ECEA5342EDD8CC4C09272ABE45D08EA1F4A81AC514A01
+340AA85F34B10C3E500DAADB58B9EA6D4D374750B062F4B7A8DAA4ABFD1BA656
+97670A2F5E95481E9997F838C70A57C2BF08EDBB2E0EE7DE5D06478493509E90
+F261CE44E19589ABE7E33D088675024F87D68CAD8897233A64280C7BDE4DFEF5
+FA827E632F76CC9FDEC46BB14A98E931DBC01C30908A6E51312602AE381FB317
+90D5FCD15B7E69355FD30C4F1043D25388938043A1F43BC8BB841DC13E2A0DD3
+2FC638B8FE39DDC3B30CFA9BA34D45FDA9DADE671A455029BDFBD93BC6E6E59C
+C35C028F42BC350BDE9BF90A705FD1F31464DB23F635CE03EF6F4DDD972D5D21
+98076D9112F645A1804CE57343D8725589F85332D142A4DDF52E6D5AB5856122
+E6BF337C0BE21C8F8232ACCED00223AAC3D48B4B588164D8194D8F2C287178BC
+D817D22BA486CEC56BB77396968DA2AD4DBAD82789869F2CF55C413538F4A5F9
+33004C936AD0588B093D08BF19D1C55122BF12022538151AE9AC1DC6EBA1DB5B
+208881BE8721D399ED24B08BD70DEED6E90981E6EFE8E6A6D0927AC66BF4908E
+13BD31C4F65F1213F3645E17650E0899A84C867CDFA7534E0AC5ED3B88367564
+AC6A4DF0C03FC7CD70B0DEBB3C693F074E58FFB1B068016AAE2C595E9680EB95
+BB876A20976F1E146CABD3022D2D090F9E6C12999A81EF7ACDB90FC6F273422E
+D1640C2E860B8875125DC2044B16BDB8B019175CA96E62286FFA32B7AABFF1AC
+F7D7A5C8BC2F096339F8E9B6CAEB43FC684A25E675489C816D85576966897BC8
+FAAF75FF9F5774F6CDF757121A81D15DEFD0604FCBD5705C27A0BD527671B2D8
+0151719C05EA1845AC8CE83B42EF3CDB45F887A4AFC676F12DDE4E376C4F0316
+0D3A98495C9EE09BAB5164C3FBD5E3667D72FB196F8F28F55961969990BDF4A6
+7C9163CCB7FCD26EDEF2ED5AD3A0BD0266DC60987BE6800FA9A5855590971A16
+7C3A4A57602F3C9FC193200382488FD5CD976620A84C2C4B2E853C527C2A48C2
+CF32D64ADAE36F754425B3BC52C5927B4DF0823930B58047FD162DD6850EB34D
+01560FDB65BDA94F0BB1C3A27A5EC439B15089B04D12CDA52A187D2E8799E364
+EAF39718E4C02C0DC8195579C77ED3DB82FE19E9F8F38F332507E5999E82ECED
+B79571F205ADE2E28F80BAF4E88A95FBAC0AF0AD3C39A26B6ED0B83409EFEDFF
+B26A73E4E7D14FA1FA28767B95F0D4A427FE18A5AE23A8236570
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT12
+%!PS-AdobeFont-1.0: CMTT12 003.002
+%%Title: CMTT12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT12 known{/CMTT12 findfont dup/UniqueID known{dup
+/UniqueID get 5000833 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT12 def
+/FontBBox {-1 -234 524 695 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT12.) readonly def
+/FullName (CMTT12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 45 /hyphen put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 108 /l put
+dup 110 /n put
+dup 111 /o put
+dup 115 /s put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57D05DA0555DF933BB0
+7B42D264831116C06C79335D519461E7B0E870A6715E3D74A08D1BCF86E3BCC3
+A43FC6BAD1C68BD9D4AFCC06D845FD1F1E70D7A47F0BBCAECE8396E04591E5E3
+4797F646AFEEB7DB548183F0B74C9BB6BA2AA04E7F5950EC8AE97C741D4B2C5C
+A8E7A8DF5A36A30B5A7592D95E1DBC63EF33C92FE459792CED29E2B8B6919251
+75EF62089BD7D44A6E1F9B62EC802FBE62B821DA1C3B2DDED45D27964AD29ED0
+9FB7868F3A8FEADA87A8E42D52C1EB7229D7C79B60BDA263F2BDB025AE14A507
+098FA274206BACFB4A0A7257D5998EE8F0FDCA79CB61DD1FC59DADD11E16BF02
+ECDFD706CDA1E72054D4EB55AF7BA9F19955886BC0BD6E0E3FE3769C94AF3581
+DFB2BCD67FE2892AF07E858A01280194D8DD7332B3D0A585C87FAB056C2EAA9B
+5AD48D1C9F00CEF8EF0D1408DBE1C03D04B231D7B8D5D998FE0CD7EE19828EF2
+F988EBF6DDBFEE00F04A4A1F4E1A55DED7EF3AACEAB5005F1962C724A017C914
+2936E2E0DF26A55ACD7DD836C6035CBF07981C1BCE3615064F0540A1034C69B4
+E3908E76EF8925D486DF0B4A8E1F02D8AA99585A7C31847AB9382F83880C1C21
+C496AB2DF8E7BD4643B28B704B5F6B53429D3EE940A79135F5BF0396E5B46F23
+42AF406C26D12BEA7A41F332AEB75DF43C15334CF4651A99F602036946B1B91D
+4BB0D2E51C20216D892C8173241AC8FD15A37C3CDD8AB4FB67D8565AFA61C068
+95E3D6E46D7C09BBD09428207D506AD43C693F3C3D787F6A5C39084AE45E81C9
+830900DB50DAD10A17E118FB5E9680B5194716A788FF7514A1167DD1A305FBE5
+5925388A2E95AE46E8806E0F7B954D1A9F70EE29B069A9FEB0349298CE5311BB
+CAB039C21AEB714781BBCDBF2FFCBE7C4750D7693ED142ED0475EE9DB5D5F94F
+4D4613E2C379E494464447C4167C625D70B9DBE4756DEF299974B704A3C238DC
+FCD3AD96645559ACA5056F7FD695D2AA709960E30F055ADBDCC7FDF641920A9F
+A279AAB98424E76D01937F9CFE3CF4E3779650D7C2DC38AB27FB81EB16C19B13
+D47E0AC60C83641CCC1A00136625FE274C6AC706B516CBF14C54000BC2B7BD20
+A28D40FCD6D9B321855BDA608E23BD365208DAB23983C0D8A7C9DDC28ED62216
+12A20A3068D843B5FA016B8C6B9BBD36356BF85A128F96F0CE861FB9C998BB21
+E8624E3DE453C686D41DA7B72ABD919C5BE2F24440D11962C77742A8C0115A72
+9E974E71247FCD58318A4347813D4D5A73CF882A7513E2EFE05CE8C7195BDDC7
+DF250B59AD14D02D2991E2D0CF2D0022EF52D78F043D6D7FEEC3E77B6982B1C0
+8CE51E4D3C8342C08ABD84EFCC8239883D8E66CB0FB0BFE8699155B179CCD63E
+884C502F7F0496A01360C67D7A9BFC8533346485646AF058A743472B3276FB96
+EC4C82188A4A67763ABCE6AF7898C3B924A01118DCE34C77F22E62BB4C4CB561
+75C93226142D43D5ECB9F43C3A275A52F9E5AE4C9BB9E614082AAEAC5E7453DE
+B3F71F9FB747033E227E84E853E75E79771B71495CACE8F911329274CE752AFC
+46C993132BA8CF6B9DA2CFC11A0BD57C9A4BC11B7A6D68A4C346D9768E6A6204
+4227F51932162DA350878EF80D0F4084C82CC61F3223010D771EBE7DEC1B80CF
+327393AAD4C689BF6A791CA2925878C51069C4F06ABFA42B66860082301FCA71
+EA52BED540116A9B12D9741A4C078F207F92B78923C7965A47A3130CCAEF480F
+6B4AD58077FBECC4F99F53BC1F4F24CF3777182A7ADC32FE3260C774E5244912
+470697609A0726EECB72390E6C5C5A1204521D45316989E3C0B4D398958D4363
+3C7A4524B500241161C55C4D8C4CB06034BD825AA2CF2A6895BB9A30BFF00422
+553E4346A53B271C70DE5D0A5AEB92F81CAC1A0E75E47229AA80C8DB09EE3B19
+6E9D3EC0E7ECAB7B879C652282A376C52E5BBF5D4BAF051A0A995460B7F427E9
+521743E74783312E8D7100DE1F31C1C7C85DA33D8D0A626E6E6184DDD538EA7F
+46D50247225E036DB3E6072395C88026D429659DFCFC6416D22A9BE285EEA910
+F7B1B74275B8B043721A829F2D4FE6140E5AFB78F0CFCC27FF27ACE773131462
+48B271781695D31C909FED024B2F3220C206B63601A1B02DBBE2C5D94D027982
+F9E7EA6D4B0A812D28855CF62D372A040F138069F7C28BE3344262EA72795CAC
+2CC8E21D1A666ABFED384875FD2D098066FF0CD902AD6725AECFE61B2CD83860
+82E587B8893F5E09B155EBD813030499E534C050D6902E5F8BA296030512ACCE
+BF19933ECDDA6DAAA1848686DAC81EC429CA7AB1A73B7DFEC0750B404F601F1E
+6755F07C0784A56E403C5962905E9147E44E8042C3858E4A91F7B8A71143263C
+21DC47E481DF1A38EC4A9F682FE059FE80F257576FEF3A3300A36BC27273152A
+78019783D0BC34AB29353EDAEDF48FF6C5DC27C1633CE1CE2C03509992549B87
+75AE1100939A6A2F5AA2BC7C534357687DA72129B9C9F2E511BD95452F10DF8C
+A698CEE0BCAF726111B63C4838F05AC5B2EB43D04115145CDBF2EDCC1EFAB612
+5E35EF5CCC5F4296536DC96F1326B86C65DE657BA06E5B97BB7C4F8ED11DF9CD
+969FA4302F06A5D43B48D40D3DE360F6A7B8F329022CF5B13A33980E8BE54325
+17FE37C9D78E73A74B5734231ADF0594A2E5F2DAD9BCB682A0F5C59507032DE3
+AD0C62E50C258F1F820ADF788D6611CBE6D1988D09D07F8813D6A3EDEBE034C8
+05F7EDC5DD2E4C15B60FE9284E267C8F7DF53F3CC13C131201DE819049324E53
+499FE93874A92EF07AD0121B8FDA88F7D60DE52E2B20AF958A77421F221F8B29
+B2188307F484E1832988059E5A68C52AA7E840D805E646F17DFFDCE1A2A8C0B5
+2CF6F218A06EE1E2543461030E9697624B086FC6619205C04230CC8DADA60721
+F5C4622673ACA45BEABBE3941E7F40080D652567DED98AA3404A4384DA3006A4
+E8A9298AC3FEF04C92A273
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: SFRM1095
+%!FontType1-1.0: SFRM1095 0.3
+%%CreationDate: Wed Sep 12 2001
+% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>.
+% See the file COPYING (GNU General Public License) for license conditions.
+% Converted from METAFONT EC/TC and LH fonts:
+% ecrm1095, tcrm1095, larm1095, lbrm1095, lcrm1095, rxrm1095.
+11 dict begin
+/FontInfo 6 dict dup begin
+/version (0.3) def
+/FullName (Computer Modern Roman) def
+/FamilyName (Computer Modern) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/Weight (Medium) def
+end readonly def
+/FontName /SFRM1095 def
+/Encoding StandardEncoding def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] def
+/FontBBox{-188 -320 1445 942}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11
+69C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB
+CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89
+F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3
+F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C
+EF25195F68A2A98170E48759F33528B839DFD4B92DF0482493852D12053A7904
+BF6E144B9488970F220C299E80886366662C1276120E72472BF84082B9EEC729
+F7007ECDC5A850C88810EA679DABE81714004E65D938DA9ABDF29C949A52EF02
+EDA8451563235D51286E9133FFC7A27067DF0332ED614AC2D4FAB88EC84E6CB9
+FAB41C933E84B88097BA8742BC30A81416D1CAA3545F08E2554B28362B99B79E
+FC42281922B94604AABAF5F7A9B8E2D9A4358F38F2382EF9544B859D098DF243
+034CC475CEDEBF0EDD0A60C907127BB32F7D85A62A44E90B4056D9B4B2FF3A49
+786032C6B25794E2C0003C7852C6B0688351FBFC43300FB0B72880BB7B58BB61
+3D1064E7D4DDB128A9B38EF7510B7E5F82BDE39489E2D1DF08816781B13836E4
+89390F84577F31776FE43A5F94F817A4AA4A698AA4AE84B178FCB65F1B5A5CE1
+334417595F6E40849041565BAA497F6E4B8F4305D849128C9A26A98B909EABE9
+8F2659189ED27C588ADC7C744712B4D9AD0C5DD25D1233E979DE7F53C5F1C47C
+E9DF254086E5EC70EBC6B7E080060BA72F15E6BB75C75011B15B7ABB6BF761DD
+428FF1BD688938C75BEABA7DEE2AF49364D2E198FDC7F8FA2313BBE598ED3703
+7ECAAA4670BE3A85C693ACA829A5936778BCDCDB38A5981D4CAC8994E2B2F086
+26D8793AC1393D49A8F2FE391F0EF8899F63CFA5A77BC739C867C6CFB9A226B4
+620AED34573F068052604331B7E8E1F0C3BC0BD7DF733F056DB8C3F57E3035BB
+EC82DF5B511453A952D429AC721A4F94D5C9BA5B83545948643D0596F4C6C9C5
+796BEC7B26EB9D729F337E0FDFA91E5955585C330D0C4F193FAC870A28CE054C
+8942BDA170717B7AE9927C936DF0076507F55CA2979BADD3EFACC0A599933EB6
+F148BB7C3D61066CCC93A5856D253D759F30E37534743210743F0D53F58D0B45
+463F053E19A16E5A1B111915D1E664802F8C6C3ACA0F1BFCF3E209D1FD6C79D1
+5D867E142AD6E69933768274F4E2AB57CC518AD5A1C120887EEDDDF18C291BE7
+B3DB17E8FDB124B11B6142DC60F560DDD668D700614732F3FBAC4637B9F41361
+54CD2D8757A9D9BEDD1EC72FDAAED3CE4A1144F1E919FDB952BA7CA1E3D31C3E
+9E434E2E44E7A83AE3480EBE89E0881584045E4AA5814897382EEE5FB5C9410C
+2DC7A2136551DE2AA713487A77B911A7E7AEE41F0BEA1FDAC1950473B1394479
+513741DE60091BFB9751C780D99F2DADD5AD8283DC9CD1C81B902C9F3C9C3EB9
+55608E09D6DD423540BCF72394A24F81135C9D9063C0F4441BFE0120E03558D3
+4A16744457EC281AB2A60432C97DEDD16B2F1FF4C1A90D72D46C9F9BE984C6E3
+E239F98B59A938C2A6490889B437CFC21D923572530E41B7567A9C7E2464DB2B
+18FAF3EB7CBFE7BED6E77219C0366A7D54D469CE3FF62E75FCA2ED6A46F3E5C4
+489992EE1A42C19DA52F0CB2B1A6956BB3F1767B97FDF225685FF7C9E9243497
+144D31ECF634CABABB79E323CFD483BD7A7B0C2679A9C3DFF0D44F09F084CF3E
+886CBC91C5386A266730CE2AF3863534E2450583F6ABB520C27C4EFEA01EBC8A
+F019D25B7BDB40CD6712D7DF2DEBF0BC70A92D3B64D1FDF723DBF3D4AE939E96
+D93646BAAE0BC57BB244AAF47ADE59A5228F057192D917E2BBBF588335E09095
+1CD4AA406C1D10C8EE6812DA676A8FD166461064BE4150CB95C41FC055FF8FA1
+89A4BAACB0B978A58EDDDB0CBEBF6566D47CC0AFC93110751B59EA33AB5D6EAB
+0DB9A65CB16A053495F06B0D49A70BA8A7826EB571B8428AFE5EBB99AB9B56C6
+F69DCC77C25BBBB53FF25C5DB5CB8E742E3C0BFC25098B4CAEF12D299C886881
+0D4EB71D637BC0CD4D63BD6B4F5FEF9B083D95C34FB9E7BC9FCCAC0B9C7D8AB1
+1816B17AFBFE1DA146662723887E435E17AD2E2315AD800EBEE700B3C12B50EF
+4A48C2839AB4BB367E908F59BB5AB88635C3E1B89948BE9F32EFEDC2E439CC79
+BD9754280477F7C982850438092D309C213D70F8D476728119E8FA03762C22B8
+89AC2A2A7C0BEBB0C91CAA95BCCDF91AA918766C82A978B7313870327F89107E
+11A44FF02F597C8D4B085F6D7A098233ADADA521CDF34A78081F8965DCA615FB
+55DB12C1E3459E49C273ABD2663B13447365C9C1C52E192282E96049FD58506F
+FBC9507DDD77014C29275D1352CD5FC765853E858A5781F2DA41360D32FB5A54
+D04E088FD99F8C01DF740E587AACB0E431E03E170CBDA9FF1FCDE8D9FF5E43A5
+73166AF5990B238122AB322F709FEF2F0E2FA7C04FBB62C5383997BC9CFAC8EE
+3FAD26E788DB37ECB388CD80A7D861AA9E9199E7BD065BD7A4D21A0D56DA9323
+2AFAE158CBB662283EA7310D32FB5A54D04E088FD99F8C01DF7535A5156B8344
+F1CCDE84A46AB2CC7F0CFD113074A1C4D90758EE58F61589051A0150121A7BAB
+A636171E6814A1398DCB9F13FE9B11ED5A5F2EEAC14E0C831B2540D10BC0EDAE
+833A83965A33180B0AEA361848DF8FE8E50DF6856F1D10C8EE6BB5198CFB7607
+B6B044160CBE8D4CFF067DF3579918B19B9128C2A83512FC0567CF47B38961BD
+CC60FB8C6330A30AFEA9B276DA89313D6A83343298F34461B13C382575BE392E
+F94E3EA3004D6D37C025DA3F1846E41606DD510D2C7D0BE9DD194E46BE7CAAF7
+A60D496CE85D2393457C50B2D586E010C7C4C7272F496F0CED0084EA956455F6
+2EE57D13B6485B968190360A3E30210D2664BF91C73AD1A811651CAC09A9DC0E
+3A328E1DCA16082699B41A3D533703E58E366E871C982F262478E41DA3483028
+6BDBF03E444C6F0F4DA2CE9AB049F324F887732D21C4BF9C5365C603C9971CFA
+7E45249203329FB9B4054B163C166E1322DED12CAAE39E289C126301D25076D0
+2FD409FABA5247D7A25945AD5881E18C2DAEC09606228CF925557DDFA155400F
+8D446CFB8AD19704B6C544CFCE47ACCB854A74DEB5C646318679DD738987F800
+96844722729076811B5054DA998F9AEBE37DE5068418F41A007E645599C0BC21
+8363573C695B3F68111CE4A6199C8BD40D61E46A153C3C25D0C7DC125415D125
+D0C6130BB6B603ED78153E0CFE7384F7481FD4EDA141C27898B3636398EFBBC1
+9E81060816655B2F7052016A4C72A6A1CDB83BCCB2EB475A9BE17EB08A5ADA04
+CA8AACF6FE68BBDE580243B111BE76EC06E70CB7751A8B206143D0134BF52670
+BB3F44DD8AA7D26283A483CB46286EE0A9BB4FDB0337342BBF362C236C30A120
+D85812760265E3B283F48C05E78F47CF5C678F54658A30EBD7AAD5840F3C7B9E
+21D8CA390CFD164792FF2040E07FA087FDA110A93430C7FAD65C951AEEF79D91
+FC25EC950E250511BB22156C2886A249CD442575934D385554B2B4534AC28C31
+43A657DC937CFAF3F6C87EF4F2826BB02C41DB634D91B70BCCC4F83F4C32796F
+C5664490597DA5F2CAC7C0013B18373EF51520DFE081F95E0C1693D02E39AA2B
+E356FD312C233285B2A8C8C337504C1EA7E9E1F6BD250B5874842F68C92DA11D
+F74E6068495709EDCC6E4BB3A96AA3A4C89411FF06B66DA03FCBB052CF5DE837
+4834FDB84E2248DBC10CD7454636E97E399A7AC5A16A2191D763AFC09588F5EE
+57E80130CBDAF18FE2F530BDBD2CFC21D684AF84A8CA37BF2258C80CA61485BB
+27EFEBB52E5FDDA77E57AC8EEB3811BE2BC948A926FBBBAE974D9CE89333C945
+A9DFE37E5F34BA68EE97019BDBDAC7482826B8F71EC51A777B64C52B1C37326D
+1172F83F6E4DF93B37E66CDD6344810758B10B2EA8C68918DBDBC72F8821F1E1
+96AB78288A2E00C2E03FA05640009DD0EB0D0D318C6A726DE5D8F2B1B035C658
+D09053A4B27B18F18BE4396C900A730908D832F3E8A21C36E32F2D603D0263C0
+8EADB43290CC59C43AD57D357057B13C9ABE55F11DAAA8D78574C430939CEF9E
+FB36B462DA71CFB6E86C72ACAA04D5FE4732AC386F52D4AC92C47F9B11FC32E5
+B188AF2890EE3786AE2772D2FBC5D75A7FC59B0519F32D930B71AAEC8B88F1F5
+DCBACC2CBB9951DCC8F21A26F197A309C26ABBC4C25E3FF22B2A511A96F0BFF1
+2BD9AA37DA5DDDF261EAB0E48C62DE0885B8D074A7642D59C8E216B5F0A8B327
+1794E0BA5B672E41832562DE119AC5DA1AFB74AA66885ADB605AF60B44C1D904
+EF85F00E1F143A19DAC00F751E77EE62D394ACD26B463F7C7EBE4EFD40DD93F8
+81C2956C4250F5F28207671D7AFB3AC09FDD0126533384CF1B2004F31E053135
+44EDCAD0114140E52B7E153C354CF3F2BF37A15E2D19A2ED688710B6F9F83C5B
+BA14795934112F7963FFD217F016DE82353B915549CECBDF7BDFC6FA4F7B74BE
+E202170C9F25C7448970684BC555C8390E34A5098F55E0B003B841CAE775D48C
+1603730AF8C091C0622640AC5A0B46757165B44F0AE1EC1072DA26A8EE0DA335
+A6BC8AF994F5508921F3D9E4E09B375A58ACBB9E6B0448903E19A5CF2A51F619
+81D2A539A4556B9C25722D4DFAAB480586C90874DCDFC2D70716B18572557BE9
+E9CAB7F5A3959D5419DD9FEC22D015EBB5D4BB5CABE110D76E8A76D6EF3513DB
+5C23D3AE05BEFA77BF6B4ED5C413E8DB87B5ABD1B2FA9B3BF37A81C784ABC42B
+1FEFDE6DF012974241B33B67AA67FA38798336F7354F0984D612DBB455D0662B
+C8F15F12DA07E391480C1A150213ABBBB0F2927D223D5752B69C930053655C34
+FC487DD271A8AF594F457F6A083C4150686FBCBD60832E4E7D0D4987CAE5484B
+CA81A230A21F9C49DFBEB24C94C93ADC954B9B3B3EC484C502BD0DFD605F6D5E
+13158237535FA2EADA044ADCC1E1AD42918C8C67320F6621369C250D5335FC05
+AFEA1B294EA5D2A6F335FADB80CB26FCE9EBC0A4EBF72DD47806EBA23C3BCD77
+7F175E2041EA03E2F0B2BD2B81E9A6DD43BA3486375883C30B8606D917C678B6
+6E567A92A0E0DE89BEE5E5AC45C9202D46EED5E045302B71EABAC5FD997A9A7D
+8F522B2CA316B7FDF16CE4981DBC25E4E2FCE3981324B16A18236476FE242584
+AE70C683199B7647325D295528EB7CB15A7E3940FE2D248945015E9DEEB9EB26
+7012041740F5A2A6C7DB7B2358EBC0358E9385E734D208957ADFC7DEF83F5E5F
+4EDE55E2F078E994312214EEAF63F8D0B481C3D523E712901AD838AF2D840055
+E57D34F8FDD4C842D64D3D94B1CA46CEADF497A2FC75A45AC59F8696DE49672E
+E33773AEB31A204F01793262E820E813949115DB90A7C798BDDEA0D5D1E699ED
+753593F2B6373BD24D4647CF35A448037ED5E72DF3175DD6744ABAA0E2E0864A
+2F4EFF3B07B035520A598CDF1AA97D7DC3057414513DDDDE40C2A9DEFB23631C
+B2291ECEEF4D18652CEA451BB1559C0743FE3205BFB6711F1026A613D244BB07
+DB3830F07F32EA637775BCC1B2CEF0C6B0D119AF6CCA17DB1B03AB1E9281C568
+33502239B067013D261BBF33358AAB8803C451B2F570EC34BBA052170AB42F95
+F9386DA11A2C7BB9C05E8C9FDC96111549EAC90DFD8DC906C03F0281C40EC1BF
+EB6B15455CF32FCE5C7DF6F55C91132223FD13FBD62A787EB15CF3E4E6E59AB7
+A529DA186B178CC6E8A4D876794527F3AD72FA86B7C2BAE14D3E5A41D8F90754
+AA28185D92C9ECBBDE4EE53E2BBDF05AB4C9700C1367B3D81FFC1AA34A79CEC1
+1CA7D422CB58C8E21870F680E48EB1B2D5A30D974A7E9B24DE13958976C76225
+45415635E32FF316DC4A69B3CD5EFC6EF5F845C8E24C92166C9076691817FA6E
+AA5D1F1CE12235DEA3902F3C355CBDA5CC344376A5394AAA7C2CB50BCF32DB50
+4B6D9BED63F0A8928C0C06829558B714FD54F355501EEBE29882185A6CA1703F
+6AE65F03CB07406324CCDF00093EBC76627A11A84B5EDB688D20DF49616D8D3F
+7491719761E7627CF8FDCFC0DD2265160BEB33ADBE3AD01E7464370E3E0F9D45
+51FC9A87C678EAE5B16A564333DB11687FCB4D1D82C75A2F551FB4F940E0C71D
+74CFDDA0974D787BE959B2B87FE13DC290C53819DBDC2081CCD16F34F0A61AF4
+3CF53914B713820BF8F2243C0679345EFD56307165AEDF16E3BC771EFBFF595E
+C6B1DB8B028342D5DA1E8CF3FF4269126B48BDDE9BEEF7896CBA70EC77063CFB
+0EB3C6FF697509736BCACAA7F03C4C326875396F0499B198DAF7842384C36C2F
+36B17A65A1D9FB77649DD78499592C817679F344E0B88D80B8D78EEF9EC6A9FF
+41F4D635520B2269035CEDDCB3B5518D63DEBAD4F365A70533AE119F11323AB2
+EF07047536DA6370C07B2215C3A82BFDB44DA593C6B3A33BACC38A105BEA2109
+06DC63737E3EB362A122FE90CE8EF37B9C73FA6933BF27C39EBDE137F15AC495
+7F58F6549759FFD86C2BD3A09490AB47B60E204B16910AFB0C18E4F2361AA033
+9BE5EF972F4B52F18548E3CB947F083768C7254FC019CBD8C4DE7E01DFA456A1
+065EF834C7B146FD395ADBB9FB72B8EABF58EE9E2B2276C87FB83CEAD49BBA55
+7DA56ECA50BE1AE4819EA3C72DBE30F363D43C75287945B0DE47D1FF0283C494
+EA65527E8708279B3B2437BF1CA2456E260020E4FC0A85BA18562CDB8261FDBE
+0B928EF40F0DD40E215B8BBD40BB5B5DCF2FD9AB4D5AF64F82EC77BFF8C37BE3
+74BB9B2E44C819E84CE2C634D55A9EEB4F6DA28025C3831B601AD254108178F3
+3EC068E78ED8C72AFC5C3BE0BFE17F31A23B55E7158FFC40381F36DFEB6612EF
+33A54D2004D92F0A44B3468DBAC0ED5E34F70561F5E77DA369754685B7F6B04F
+233454A59AFDF45F28383B05B6120717744B58D2A96BA706CC9317B5E7FD0848
+56665EB38E31C7F8C87B0C65041A5D2E349CB4264523AABF9C10CA95CDD3BE1D
+9923C1A11D046FFC2E82A09E36ED0146978DC383AC6D70EABB20327360CF7EE1
+DC4DE736760F5CF3B47F7BA082DCBF881ED8DEBC1A4580C287418295CFEBFB01
+51B09DFC98C8A8C9C5F9AAA6971CA95D96A23166E5931F7E464B288F4E357112
+4111BB33FB7F0E042448478D3ED7AAEA57D1B0B4E237F919152F8D9E86229BFC
+B8D59BF9FB9E0062A3ED67A367669D0F2F8EFEB2219E5FFE7400A9DC725ADA62
+706D4D1860BC04D4432F49D7F4271376678D381B148D72DAD9012173FF3779A1
+7C4D92B28D3117888C864440902499FF0F9BEAB0C83FBD788E26B0BA47484188
+FC01B0349E045421E7D912E1BD329A536F61169344F16D65F6B90DB87E22F72D
+8E6F486F8D21E6DAE282C35A2723464F560CAD8B31A931CCA7A2FDB9530769FC
+BE0A5F66F1D4DBC0EAF834D078CFAFA415F43DC87AC62A1D8913334016B3FF37
+20902A7E5644848A57346228A13D7B1C757DFA9B5FC4E9E1DCB2C2AA2FD37386
+87E6B350662256D158D8C7DCD2F7AB1E02D6C5C8E3ECB1C6055A6C0B807B8FF7
+997E562EDBEDF7646B64165A55DED91178BF13FD30ADC1A6B6D621B1A7AEE1F4
+2E30D49CF3BD0656F584CECE76A17151913D7ADB223727B47EB3D7F491385112
+D36848973526DDAD7C1C1C0FB672EC627172D10DD33ADF2445483470F28AF65F
+29CB086189B3FFA31E0CDA710B6DE2B0EE515A46A3FCFC354AF01AF5C5D0B301
+C8FDEADC6DB9D492554777965E2751A715F8FFB6E0248AC51928DD65CA4F6574
+BB1E01B3ED95D736691EBEA8ADFCD8265F128A67C372720840A206056F66A7A4
+10E1722E4C1BDEA8C980250F9E034C29FE0F7D2F5DAACAE3173C865CA9C4C240
+49B6D4D0CD90B75D3BC68B8C84605923075A9A2D5D6F7008365E52796975CCA5
+02770D168EAF28C337D45762A08817666907C68142CFAB9D75C4F6D6A73FB4C0
+748F038F140CB009A24A80270037C9B5E514E04AEAD7CA8468C4D22E1059F2D2
+EA0E7CA2979C7066F1629B49FDB893DBECF6620FF9C48132297E81F717820A90
+BDB45E16CA1D0D9C152B12D50AF4E1B2519FBB2B779218C5E42E31FDF82448E3
+5AFC5F90AA018902EFFC4D5A14D4326911F7055F9B7AC5B592E2E2D3A198E2C7
+F476CB49DBA0FFB2CAAF494DAD087639203084CEA25DED422E0F8A30634FF1DF
+EE5C61FEEC33D547A17961534B3535AA673AE15F560DDFF08EA7AC126882B57F
+A1AE8A5313E6D21F67FB6D16AD32690FCE021616D0DB89C51001090A4A7FB515
+139B751F6137DFEA833004F4689474DE3A8FF64D98EF09D25802C3B35DD2DED9
+FB5300E4F50E5CC70FAD3A21917D15D5DAAFE30DC1CCF79A359B81AA3F21359D
+297B9795636C03E483A80D47A4826930854329FAC093193AEE3A19BA91063421
+988EA0ACD987862A716C42F071140254B72AC91B91911CD6A9D275FD7F6636B7
+4B1B0A47FD39120411E1D5442E711A6C1EB0741C67B0A44C1A2F98C9FF245A9D
+5AE4A04B529CC5FDBABB1C6E8C1590B3CE658EB77B58F4D04803DC351C5645D0
+4DB49D76906E068C3FB553AE91FDFF5F22F734DC4BF8E9D019B06D3A1BB7CDCE
+9101E9D2276CCACFB36B9EC74AD213BCE896FAC45D08EBE43E676816DDA135EA
+8B78003042DA8581975D4C14CBDECE0B027AE87DF28611F387E64B951812C848
+B661FCC0DF91B39DEF14976D7D00609DE2DB8195C186E376F4029CBACE3AF24D
+AABB788FB1AC87D58BF341F95EC2DBD14BFF27D3DAD9A06569FD4EEE40C516AC
+D809E761BFCA049DCD6F8E43E60A0BFE64BCB922D1989CC14EAC1987147A5559
+4F1CA14635DF029AC387BE36036BAEA8AE7DD09D090EBE271FE59FD806894A72
+61C714D6D08322726CAAF168C08CE31F26CDF6613C06CC50DBD59B70DA211B44
+1BFA22AD62D56AD098FFB998E25FABBD89A2C17EB7A3AE81F79C05AA4677D744
+7F412484C16CFB322FABEACF98AF9F152E3217D0F2593D6863E7872C5B6F82BB
+FDFD09B13FA639680E972DC7B086D7DAAB076CF346814556119BDFBDC3A16374
+E7B92CE50B3BEE8B7C26856BDD3C2ED98337C2B877ED5EE4878C50F06A64F750
+E9C8CA83B7FE6C91E10FA717CCEC0D2F8E21CB5A2367B5C90A81897B6973FAD7
+D4D95F6BEDE4E1EBE6D852A937D5D814AA6BA62324C08AC12FC09C5037588F7B
+1B043BC503D725EC657F47DE02CBA939ECD8418F4B7C705EDA3E9AF1E623A989
+074165DB0DDD59B7ECF513C714B7D0A1013E4E3F2B071F6A6DB89B7BBC2774B8
+87ADA7C572B0AA702156B715159829BA38A9EC28E1CF3494B0CEC876A97B4617
+2CC9162F204C36850CA9188B0B97300CDB1AB4F57B55D39BC539BFA5047B032F
+02A88CDF11D098FD30F6A6B82B98AB9D288570FE18E4E6A707179D96287D438F
+2D5D3C2305C5FAF075E0979EAB1DB645AD9DC87A621219C260FF67C2DB8D541F
+8BE9E20ACDCF64C4C721AEF5B2B65761D0310CEF36B1A3E57092DEFB978A43F8
+B553169F523517518CA0618E31F9A5940EDA42D8B9D851AD1E77BC1C0C8EED23
+F469B0568B5A556A5FD5A20F5F4E00FA6F030ECC5E711865F1549E409792F7DA
+D1FFD1BE1E6DD22619163B98EB0425319E738254ADA0AE57FE29E121B0D8F172
+DD717E0B59842BE9F6B37FEC3F1BBECE15664851EDA3DA3A1848191C38F2CF60
+7A262D4440322C26150C605AADAD4EC3EF0CA22D6A2F63BE63C9C08EA643B68B
+9C88ED95D2F2F0868CC40278DC2752A1E61C793FB87EE69A6D348F98A0174B09
+5AE09E214EDA066174A6823347B831ADF2619281E43A71D549FE194D5AD4ED5B
+1DE112CA90BB9D92C57FC3D89F1A57F7CEF2ACE8E944B8B725557F567D9DFC72
+3D28B0E11DA3F81633C042B5FD05513542A2B431B3744E2E9581ED828F5F8A8A
+C600F526EA874274FEB94E64F0AD787F47C98899DAA4552E447D4B97B3774334
+8DF26A38D7CD36EA79B64CB31DB0302BFD0DD2280E10FFDEF59E2D1F6452FB09
+E2A7015523BC1A46AC2F816135FD4EC198D30E95203ECD2623E83FFC1436FF74
+068CFF87C1ABDE2D31AD1FEEE6031D889A25B9F2C05036F16BBDC143705545D8
+4D14A2467639644AFF1D239BB08AA769BB5476DD4FE9974DC01E85C02F82958C
+12C3AAE071BF1E57C358F72290F15A2655C1C79DB5E5264133AD0139F9F9B540
+972A3FD82BF0377FDB8711A746B9F4C6016172C30CB33CEC0B327DA0DE2668BB
+CD41
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMBX12
+%!PS-AdobeFont-1.0: CMBX12 003.002
+%%Title: CMBX12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
+/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX12 def
+/FontBBox {-53 -251 1139 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX12.) readonly def
+/FullName (CMBX12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 33 /exclam put
+dup 35 /numbersign put
+dup 36 /dollar put
+dup 42 /asterisk put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 91 /bracketleft put
+dup 93 /bracketright put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 123 /endash put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43A151FEE81296FBE
+0CF37DF6A338C826464BA5198991445EC4BE80971DB687336AE8F74B516E333D
+2D8AB74D362C559AAE6ACFAE49AEEF4F52E28C869222C1301D041E7A0BC1B608
+1BF728EF9E98F3A12EB2714E7F16B14E055FE1FA0EEFB058860ACADEDA9D0E4C
+42E3C6F1E4869471BFAA3760175F3FBD842755A9D7847EBF605F18293B42F557
+FBE2715002669091BB033E1AAD657532F34F7C66E4F04D63ABB07E6CB9D9AEAE
+78EDE8B79DD9BC87A1FF445EAA05B5572BB880E69F4DE1F82D7F0E9980AB0C18
+22C448B0B1722D3CC33C56FF287CECB80658B3AF5E7675BE82CEFF3DAD5942EE
+A03C955FF979E41E54BCFB5316A9AB8945C403A73180D0961416EC9C92F49811
+4B91BC4C788392994587517718521E416D469F69952149FF7F9224377EBA1065
+4A727BF806A112A7B45B0A1BA1D5A23683960575368D9EAC8C04753BF7465AF7
+95F25C258C63E4FDFFD0B412FD381946AA38C0B961652BCEC30322C47BF4755D
+9F91880688AF066E32FFB22E1A52DE741307AD3ED830D6BAA1D1F562919666DC
+5E8FD9862AC8600B0AE0BC7FC779252AAC57248744ACC8A8AAFA836BCF09B0DF
+9253DFBB1CB77EA8A59D42D1B18FF25E9AED72FA62FEC3F126F030F5D7DED9C3
+CF60FE890BA4A48E39E687BFFAEAB96AE542A6387F6624486037C8924002A511
+BEE5FBFD780AC1D4BEC3FBC47A930BAD0280D444259528B6C565DE11DE36BB65
+9BADC55C1EDA1A80458E98896D782DFB5C137897419602809F9BF8CA39F00C68
+EFB9E076FB324C2963F23CBFED28B9EF70EAA4E4B903225D1F199A7162AB239A
+D92D71C18B1B682D04C6A48926275BCB16D413B2A0E953E1257E0B12D8B717CE
+2EC84CFBC046A4338A69F454A469B12118E562B4F56C5FFB3CA5D357513E6FFE
+947A564B229C7FD873057D5C7CDF03E958294A1003B37D8DF565A70A00A3734B
+0138AE5277D383D10C2BD853EF806D3CCDC47739F0E374A3DF3B63638B949ED6
+4EC25869DC1C0B1F4DBDFFCC97382841D8F10F3635C792139A1EC462FDBA379C
+BE0990CA2E70FE73137AFBBF30CA54954D7E7377CC50BDD780DDD4C7FDC77AD2
+F3EB1169F14A0041F18160F43C24FAF556DB5D621709FBC544CE55424F7446D4
+6AC07A51C8CD5161AB0AD5084A96FB35D77F1CA155147DEF8D7A590EA6939514
+D4A226588295CE0007BA8A550895511C8D80BBE5CDFB8A50D249C3BDCA974415
+F5557914A9B805782F399E4078DDB6264F1A49A9A5BA45E284A5196E9828EBA8
+481D357B8D9E6ECA631A6204439FDFACE7D7E6A2392726107CB7D2517CD19A24
+FBE592C119626DB221BBB635B6EB84845C16A9585282E34958B961F4A543AF9D
+419B6A9105BF185FC767712D923437BE08A9C0EB92AB6792DBDC671029B6FCA6
+7F717FCE379C0F3B51C6CF042A762ED04898FBB4B0105C3C4ADDDC18C51BAA3B
+70A93666669547081D9246732CFF74C83EE90DA17F5B4F8BAF47FE4D81590988
+2858C9B96071341FA0A0D23BDD4947FC9BC2297913CFBD4FD6CA4303AB3179AE
+0203F1BD502065F90CE9BEA3B52DAFE4A29446082EA0E6B1D7AF1F31D0AD02CC
+9A7FACE2CA86E5FE0F6A425B28A5940ECA306891CECDB3CFC7A5BBC76B5D9E8A
+C754379ADE80B4D72CE493010317BF21A0CF4A0A55C1246218839DCA3F4D626D
+1F4161D38F54AD5142C1CEE95C61D8BB10FAD4B772F4955777AFDE8AE5A837C2
+A2BBB11D0BF5DA2E63D0B75ED421DBA9C789B281B01846B65DC572BA69591969
+21265DB722AE86BD8CAA3D887C975A617ACEDDFB7AAB341F47532AC0F354A530
+7662C089DA3939588774FFA16FC4A52555DED6D6F51DE718BF5F345C23C90198
+17B77CB8B5D53A5CE7A79F3E286B6A59F3F6178AC8BF15C0A15C1A8A95D03B60
+30EBE53DE328CE085CD9A1D49C69AA299C5B58B24334A546F6E274C1B534DC8F
+3289553F560C2F81E413ADB92FA0E7DD1C2F39D5FD268EBA97AB7335ECF28257
+96B4EADB7D0778706CB41C7E9C882760E7670936774A1088FFB2011115FDADB3
+B69EBD5108760762521C25C968C3E282DC3400001AC8FB1EA27FF643E3025950
+1D617BB8BB321281708E496277E11DD3AE0023DA9F25AD06B39C7CF527FED27B
+57397E88D3DF70EE4FCCEFC8A0927D6B05517E571B3E70ECC99F3CBA32CCD4DE
+B8BF22626B6C94FE65598A88AB90D238461EBD9A098DADEA4091AF1CDD7560EC
+8E1B9BC2321686E1759E6B8A270C8CB4A254F7368039602EAEAB86ED21CDED91
+8F2DB9889F46981C494C7EAF5E819B91C129F0740B8002B510014985E5791F59
+B16879CC6521D8E9F1C4C1890AC85A78022BE614BEFF318AB2616F0C3F02405E
+BB425D1555472A2642BA7686E431DC3FB8A1688B76660D9957C3FDE8D58109AC
+21B1234C9DDF3F0FAF93BCF7B2F88A001F23162E1A13E5E9118D51B485B70A91
+D0CBC39CF44413FD8686D9030782DAB58064F5B987E0402AF5B264B17BD31BD4
+FDF63951BECD73ACA6138854EF35B062D01F33073850D9C09A818828C581241F
+A625AB3638081DD0F00F946BE5450D38489CECEA4E66B4D85CC8AE0157E2AEE4
+A22A9313829F24D573101D84CC1784D1CED7DFAD5DD966601370C6CCBB723082
+A86BBAF0A5D867D0D2E3CA16E14E5109A29EF02649C47E12E88B3B397D65CACA
+DEB9940B92100744D686066F8250FF30E5F13D81428EE238A2E4E07ACE0F5C38
+7D79D4A336D0D26AF9C2B84088ED8ECDF94A1E3FADB45AFDAB46CAD6FF950B0F
+07AA2CDF82374DA76C56D29C80138841EB13F0D02ADD32F88B23E282ECC845F9
+BB9AAECE9CDC644AC2D49577A92307A83A99434F6493156DF25DBF0FCF2EC21E
+8C50A312C3D19E0609C0038554CF4FEF3ACEB7A833FD54B06EF0D617C2971C89
+E4C06075B09B84A4F78A82152B9A9C540B1D881313C2C74F20ED064A9606EC2C
+B56D7BB4797F1EEF4A9B13579CCF311FA4A4DFA62D80FDB7F535CC6526D1AAE5
+45C008EAF024B48C377522F74D939A475970533E645B1BFA81997549AFF26F67
+2AAE6C2EFA357DB3B525276EF330905688777057F4E4CBF584520A534A8587E5
+5A8360891E75A15205E8ADAC4A4E5A6E27D0C4A7D492216E4BC023AB027F37AF
+A8DC7579BA50204D5F45A51460C5BD8A5A7F87668CA6451137F2F59E117BBE28
+5C40820882A5546FA76F0CF49F8A6EC445F0647CC3227C400F56E7E9B84A6975
+E85E243CC1666DBAFF4E07EEAF3AF71BDACB30DAEA792F2B8504CAB071544F01
+5D66243D529C479D276FE22F7E275D9E7FA9C6EECA18716B2F213916E32C1D94
+6E32397B41AC6779543218E506569E3544803BBF9B404A983EBA62A494187B30
+8D3DFA4E1237A2E5E08224A60492C09ADAD8775B7CDB830520829BA164209ACB
+BCDEB2D574CEBFB7AE4BE72DF4EB1945FEF2458761AD8DCC0D378AEB7DA002C6
+9C14A665DAAA532B0ABA98D7BFB5A6151FF6703385AF7AE8FD315A492FCCDBCB
+B825707F9566B3B4943A3C61C3DEFDC31A843A2D67AB06891F3E110DD8C73D3B
+B5E4151B51D9F13905D7D94DB9ABBFCAF35F43B6EEE256B1A80ED6D1739D8D5E
+8C767F6F0E8704C5345D028A2A6DAFD9BB7AA048B8B895FE9423A7ACE858BADD
+595CB074A128DAFE08FDFFD6BDAC0114159A702FDCBF8013804B0CAEAD7AF38E
+FAF086A3248AD4FCA1401A85AE2F72E3E6956DC0996FE8ADB18F89B14A208A15
+13F81AF73D0DB72F78C4DA634ADE3C73756CAE6AF2E149C26316DFD93370BE1A
+FB4A79F77A67C07CB0A53C78367F21661D4AFE9E27328E077B522B50FD9AE2E3
+DA087BE481515B5DD7BF894A96A84A6C78874100505B7DDE1D22EFCE8D58B3AB
+313AB5495F72E2CA4E6AE22C0CB854302B9990372F1661D9F0A517F90686F248
+C5643008B3D29F7296E5C8FD4049886662EFDD4106E17C879F5D41CE84F87E89
+F6A3117C968B95A35940CC29C43E1E0DEF51C1E46B676301F40D59615C3F73DD
+DE37B72FF7105DB84227DA5241583272AB1C3CD97AE11C1EE98FFDB5E5F44844
+8FC41BEA5C54B26341AFF6830D9D0A5A2901B0653D8BD0746838194D240FF753
+E99750D3383373F453723D86BE97B571B8B84D8696089B5CFDD53E6C562A2197
+A8C4FB0CC690C27761A816B441029D3D306245052E0C41B53025D8CB7267CFE3
+C17FDFE348E765326F91AEB700CC49162DF748171214252CBC821493DD01AA20
+417D66DF47EBEFFF3E9BB2B0A2BE7D9B8C68BD570FC2EB0FA54CECC318F04C43
+19598BDE93F2F13DC7847354C99059AB20593EE51E94F9D4E9241869D605AAF4
+9D9B5FD88C3798A039A67993C5EC68B6326B132E647F67EACCA7F7AE7F718D85
+12666E90D7C73EF210E344964A38228B236679A2B18F5E081234CAA2458F8D83
+3F0CA308D19663CB12EB904076EF88E556407C33C9380A6A3D68A9EFE65387C1
+A1BCD2D26DFD2AC0881EC30E81C0A4E76C244A2BD822EE88C4A60B480D107E68
+90E419A1F512E865BA922A7830909BC2611A80931CB2E9344529586726614D94
+3AC5200FB9FF68AD9686506C5EFA8788C0AD0251AFE7F95E84683380CDB421C5
+B1A783B6D5F3A6BD1BC1C14B363DB01C87C0796DCDD5BECF41A1A9F43183CF6B
+82C2AE49F0BFDC5DEF7729F2E638EE6EA9E4D059EB9BB1B992AD8C82D501A550
+1BF73CBBFE740179B54E193E84A55DCD61B343C1852780FFB44248FC9426AC94
+AA2B3FE20FBA30F6C4D1E0FF3EDCDD8C0F57CCB50CDB0EFE2E04A8927E239C1D
+9B026C7929BB48461D4D695FFC766C8A0E545B1BCC2AA068D1865333108E7985
+2D93F9B00EA0A90939D0D3840D59B6CC0CE2C147B2E1A9A4F14270FE3ACF51D5
+99F7349106165AD627CBBB0ABA01ECC6D3A14C1DC1ED23A9DB9865BB4396C51A
+31ECD001EAC94B33C34E29C5611148EF3E55DD61813470B8F3CE32564C749414
+3C93C77EA5A3538A0B5AE3FC4DA32813B06772E0E48E25BB39F3F6FDCC077E86
+F86FA50E18FD19EB2F37311CE87F18F3BC85CE7FD71CA92D5C3264E34E04A2E5
+70C79D99F54D6C6D9D527AE45EBB48411221134587D2253E7C8ED7658EDCA34E
+5E768DD14E0200470F73C44D006CE8CB35DE1CA3EC10ADC668B0662A7774C891
+84EC95A31DD872F0728D9F65CA80940080E04630BE4DEC77A2C49E3913C39978
+BF145F8832AF2C4385EBCDB15F9D32C22CBA0CF950877717D6F1591D7C0B8047
+8C9BFCB16AF7124ED83137695F3D69228DB633053208C29E0ABA1B06A7FB3EE7
+5625CB44927E2DA6E038A6E62DEBDA2D96A03177982D8FA33BAAF4426E05F4B7
+9C1748B3FF7691F9888E7FF864A10B9DF761A41E6B5CFAD2BDD7E1C4924AC97B
+F4B352705316DD1A58637CC12D71C18A5CA691AB2AA8F171590EC24582B1123E
+94D4DC587D8F99E18A711776BF4013C96446BFECFEE4C809EA94B169088024DE
+0CBD20199A915AA406F0BD5F3D63D1467C49B4691AEBBB35ED6624F2D7BB74BC
+E80FD92B9FD04DD9C2BE9B6FD29EC7EC07FAB447511C61DD299C783BC09AE2A4
+7B3CBCA6A20C6631D06D0B2E2482A50612BB7C29B7E7D0A205EB0E8436702581
+596BC996ABD58CD8D5BAAE4B1478195CAFF98FE0141287296C4EFB8D2E7A8442
+F0A3AA9F9264329982532295A176BA1867EF732BBAC49AF485D9D0F7130F617E
+7F7DEEF935874D55A22240F8EDE4F247D5F73481373A392D40A8076BD91079E1
+1CE5998BA13D48D56B49A92B4A18430E316405D2E2E391B496A1934671FF1785
+AF42BA3B2D14B8E04014437FD194455C50289DFBA61B5C377BCBDADA48E82DEE
+4E70EF5E9DC03064907BCB8BE4D59DE069FB0C0CB140DA54708E630767313F9F
+744594AD8A499CFEF733E640A11FD74E46A749F9C7D18D49251BF85C6EB4668D
+67598C31A8F90922FEAEAD4B83B6E7184567DC798E4BA1C4C9B3461A478D63CA
+054F13B502DACB674EB49D6BB935E5EC82BF99FDA7D47C581AD7F940DF4FC6FA
+6C6D25D647033AC69505F0CAC58DE99087F365531A6283CB89CB644688963C3B
+8B2203A94294E58739EF23C7803630A1F9121D62BE1977DE2F41687C8CAF87FE
+CBD7AD3B98E0D95C8C6E1A7CCB0E09465AA874DC90A0F5DB2C5E7C130297FD39
+EFE63B0350B5139D09E6864D22C3F1150B29196E40EEF9723E71158B7ECFB8E4
+C426FEDCD439420B7F1C251FADA347C9A2C49738B5A17922E1EA93CA7B125B76
+57449EAA9C1D591CAD327D0E98EF2D44D614EE9ED49DD31ACAC0B956620B6BA5
+5BF6D08CA7541059D5ED2EF00AE2EE95488F5645BF6837D9241C0D3959B7580F
+C9ECB2BCF3E65C07D52EC9CFB21C11CD4C883E44C173214C900C44D2E1E43DD1
+CE8DFE3DA93C38B548BC4EC46FF91F30CFB97525E1FD4E77686433B20BABF8D2
+848C1CDF1BCF185CFD7A81D2D4BB826E837E2AF35CFC4F419F698DB0C43E9F9C
+B0FB628AC9A3CBE9B1FF4A067016E70333E78B32AB2D89C483834B31F5808FDB
+77492E099F1504DABCA5722C7860CDCEDB2DDEB512FFCC7D287F4945FD711F28
+87BC3D36173566B81FC2C1290C717A09697DAC6072408E20926D39270121CE58
+3EF97CE12EDD7F87F2C8CFE36C3C0400869C0D813B71C425343EE0CDF717BDD8
+409D5297D0F8F7FDEB0257C0A391F5635E0DB1116058942FF3E7C94D5F2873A7
+A3B0ADAFC3835AF2BE474E6741319BC6695FB37F59AEE388F81F6E66F910000B
+72E6BA7531B4378CEFEEDC79CCF4947BA1703823B5AB4F4AD73D9615C66C489D
+99D68E49C9BF765B7FC547BAB9640D51D5A7A2396507AB5A4DFF3D14F52422CD
+8FCFEAA06A56C6C7FFCD29C9A7A59DDD2A909A9363FE5F1E9629616D25ED38CB
+E754C059E4379318CC491C3B1A90128693AC53F80F8210FAEA7EE638902A7D3C
+82B95B3F5AE340EC1B648DBB9FB679D6E80B7F426D8671FE7136D97F51E2D2F3
+C9CE9183E4061CA40091A2A70DBB9ECBB19CE3F65ADD0FB346B54BAB182E2CD0
+EAF4C0F402C25573FB344EA771B297BEB615FCD0595172E84ED2A62FF8962634
+23C19076C2A9ECEED5135994EB397303A9619C76DC55E032DA83FBA441BD484A
+59F70A5110A8927F6239A14D4E223E189A5462E4A92EAEFFA4B961A2A32B320F
+C2B4E8C1821FA67A655B5042C15E4DE1FB3652B55078DB123573C4E986B19DB0
+1C5131F3DFAB271C30A5476B4A19D8FC922E31879C34BAED94C07A4841B8209C
+403369FB8E842610D1EB4662B6171A4465FD0E819964F62EC5B0ADC92F08CF90
+1DE0B410FFBAD16F6D355E8AD72CCF67961EDB6CDA82398021007C2D0462E893
+75EB0710AE4A6CDD15077C9DEFC5774EF4A657734D703CE42174259B58E5277E
+0DF26BF59AF8D1A3E7DC12E3C12AA4B67CF35B19962F6950C2020B698D971B35
+82FF84E72F72FBB0C54A112BADBAE6C4CAA358BDE6A705AB59332C3850CA3D25
+C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
+A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
+9512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
+0693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
+5ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
+62B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
+6E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
+1ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
+648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
+FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
+754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
+E124929876488AFA97FAD262BE3D172E2F03F564F1325C9F1E050C83C12E0CE3
+C7F58270B5C40B46B3F592FB41FFB7F59EBD69B2F489441E398FEF7F84C85055
+531D95FD21629B0E509C2FCEE995D025BAD5D3F28CDBA5CD414405ACBD936C3F
+AA4CB2620D7426002161F983AE95E542EB8553AFF7E57B82E05FDD5FC433E1DB
+BBCFFB1ED92299DB0291CAB10A84529B7FE279C62628A24A2FC36B01976E13A9
+C528A198B8EC8654AD69CCB5C209964A2B25D6DA9BA0FFB366D19D8C69701D7E
+8ECBEA88569601C80ACCC2D5487DDBDC27DC463A53A8E59F9EC17D0ECB7D2188
+B6CEC6BBCEE631DBB9959A9855B997481B5D88B8BA29995053CF42C5518A3E8C
+AD21553A0F6BC3483624B013D3537F7C85D7C558A9C772554CFC1C3FE7A70633
+318A99508F5D2FB656B5A91E94F80F74C7472F507428AADC375AB9F18CCED8EE
+9DD57456CA8DB8D3B133596CFF2D510746BFA00B23F4001A3D0E8A24476C497F
+A14422160995F3378EC9A74A5D72D776BF8BF91146E73518E61C94AC5C7ACEE7
+783E29B29962E638F75366A0C0235475327F024CC6C824A52A6C25E669546A39
+C3459E06945AF250269C9F7B541B1EDA04DF9B9C7B442CC7484595E7B1A860C2
+EE36E1F845BC6E79C445E11925A881A0D3A9849030954BC5FBFED8D254AB3307
+A399E20BC127C05EC76D54C928A3CE1F99F672A8F47C8520C5D444D1EACEE114
+A71EBF58CA1088DEF117A723C391F62C0AF3985BCFD5526503360C33B1DB957C
+039360854589686E27DCA9375B709FF2F8F5EAED9564F979A245AE2498556344
+69E2A27804B51D5C52844E3582CFA648E82492354EE0A312AFCC4E90866F63CD
+173E4CC6A74D82568D0CD88E078BEB0A5232202C7F74C3A8C80DA4CA4BE6C421
+15B80B4A2A50F91F7841F60C5EBB4DC67ABB15A3A285214E20B5090E25EC9C7A
+2A8F1C9F2FD755368F61370634A37A2EBDC4B8728D2439D55B73596A2D5B28BB
+A83A38BFCE4B84AA3D8D373C53DCF5DBB5A327D9364288907C0ABC0D5E6B1D1F
+7E57E3E21ECD67DD9E3F0E86E00BAE52ABF645D6FE70EEBAD9C853FE34801A46
+8F6BAB6A2C22BAE5DED459A3F06096ECBA2D20C707A5F47FA067FCEC8C8D6466
+9E478B07712A577400F5FFC65EC107578C4E6F28961509BB7C41E49F5E45FC1F
+ED4AF951E8BF1B261E06E4D8AC3B4CD60AA0FC495E73E6203605E5473047818A
+46C98482D55F198EFECEA05092BF11A982798FACA6AC540293AA90208B56E2B4
+05A05AA45B2F8A67CA109A6987A670340523EAABC230E0034454E773C31543EB
+C1C2A99CBD1DC7532E2D2169C3C25B5853E2F0148E4AB501112B8BF210A5B39C
+1C4E8991DD2DDCC634D3D63415B5C7DFC564102751C1BCA38AEAA8F4E69D603C
+13A5B5A81BAACDBF724AAF76189BF3DB6239A7E19A1B2D6DB4943910A0FEC76B
+233994CDB5A903872A55E51561F06A6B999E0F91C9FEA20E0176612E869FC157
+CA648E8C2C4859D3C17905352F1E950675D8C56369B50BC8C75413021319BE2D
+C982926A6CFC9FDFD4BD728E8FC1B6FA1074FD7271C136B260C013A9A33CDFED
+A82DB154C0423B391E7BDD9C5B35D92D3C4F5CA5C773AD3712840EF3BD5F3C0C
+9BF19092B9296CFDA740566999ABF31B92E8AA5A92D29840D33625338A3E7C02
+5854A6B272591E3B581BFCFC1620C9C0F0B128B0B69CF0FE34E56B191FF65DD0
+59BB27457FB4CAE161551620278082F048A6BE2B9073ACF7A6BFAC7D1F9F7F0B
+3DBB05CBA5BE5424E1A07BA58458074101EB3731E775802C97133C9FEAE5494F
+C0EAA6D6CF2DDBC064CE7696F610A3DD93024161BFF27FA1D8075A295BE3B80F
+CC225A257619628F07D9D740349854CBF43BD72E25F63249470C6AD3E171C6AE
+149931C1434F22B467BC377604669C077F5806E9193F9E16A737C19BD3FD5C3B
+7420A718C022EF57CFC7D7BDFE22C3FE896EF34BFDC09A6D5A6E559D6E1F4D31
+8A6B69C544385C1CB338D352749ED74FD1A051ED6579D5F1673522CB02BC25D4
+5A9A51D740B3A9B6AA52F2B9532A32F4C22FECE7BE96873ACFA2836063BABD50
+D4D0647FCF2FC9975A2ADAB86FE1AB14A5FB4C3A576387A993E9EAD3D401D3B9
+F231F890215B7192A71327BE72F2405E94E47EB82C9A7479B00C6122A94DFEB3
+293F1F328765B0AB7A2D4B51C48E5E2B6E7C96C765EFB49FEBCB593DF1A90284
+4C0723CBD625288D62D821F47FC3C28473B3C5DD3322C8D16C4EBEA14523376A
+844F4E51F255B2C1FEFDE840EF9F3E5812411FDB55185100403155B295C63B3A
+DBC92BAC9D6973F0D609CD11CC3C3BE89C92CDB21B6C976164FCE64C78C7DCFC
+DC64B362067DB28BA59ECB57C2A5880EDCE8DF84606B2A87979DB086E06ABE21
+2663D35368F31CE867F91BF71FF831CE0E38084F98D501095CD4706C2B82FD59
+4E1501EDA7B03CCA974AA84EE5B39FED998FFC3D641B2634D72D92AE5B8BE9BF
+64FBCA1B8A80969285372EBCF24A27AE19B48009B144376992058FC36C23CC5A
+6E4A0CF12337A9EB8AF4EB6694621877CAD1C713A85940DCCE4FA1EFB2CAC5A1
+5FC3CBB1E61418DE140D044900F52A6BACC68CECF39C9491756BD3153D07768E
+9D271FDF798A9BE772E9D6203CB03206020B45BF76810C0315448861A5A2030F
+DA8EC1254C22D7CC89684B5AAA2141B7FE3AA4EA3BF55D907B8AD5FDD7488DF2
+A92B28261638A4862130B2EDC13E78F97B9E61B0E933F0AA0EDF58A66BE288FE
+84C209CC1881C5E57ACB026EE9EEA1CBCD4A4B02E7FDEE62BF76D885E26B2297
+2C274B7FB21A9B660E934FEA1471473999B90DF953DCFB6D68DF5D2E021349D3
+14314662237C892EE094D4735D2858FFCD6DD748530645E493C98D80A8285CE5
+6715A6328533B1397C3705CD56E0C75387838B370112A8B235ADC17A0A56E03C
+D175FB1AC49115DF3A8068BFAE58E8CBBCE530216BBBD0F9F3944427571544F2
+8C62339695952397AB33C31BB14D2B0C9F3ADA35ADFA8E4C4B60412A4ED03363
+7EB00119980897F8FAD36DD39AAEB4D841CB7FD8A232A277AF527D50DE49C5BD
+936E0784FA8D2E9820110C5BA10584B294B2791FD0E49A687753DEE31EA923DE
+BBD92D8C08FBACD88FE0677BCAB4938C5902229AE85756DA918D1EAAC6290FF7
+D9F6060953B2BEF26E8C07CC430D70EB307F1C727A57F3D46BD6267A03FF3437
+E1D2A9716E3C4054FC42D3C0246721BDC61D4A5BDD65016F90D55BE8FB63BFD7
+06B527A49F84B91FB321607879A9669EDFBA9668D1B4DBD407A7D53F7EF6CC40
+83B4F1A930BA2432BF2C984C4EA14CBFB7030CD0BC1DE50473BE03E04BE50DD1
+7FB991971A7410A7EE4118F6FE4198835C448B709D612075D0187F1D064A55D0
+BF3AEBDEAC29A16EB33EB458F44B0664E74A58EA5BDD24B9EE38374F68E2A923
+8E6EF9E9F26315A22BFE353D875F5ADDF0821009F568476C9642BD3B942090F9
+39B7902DA57E8C13BDD10ED0E137F3521D1B29F287FD6CDFA7D26E2EAF839C7A
+38F06ACD6D713FCBFF0510C4C35038553E463A0761F0A23DC9030F6CC4FF96BF
+99AF97F7D9267593812BE751607032E736626FAE21BA2912CB67547A5624F9FF
+3253923D889FEADC594F8975A032E566CEB10E876AF5047937881C262732BFB8
+1F73C6FD56077C00902C6EBB852D1747B8FFFB1468E8204A9400C4AAF7F7504B
+89244B5317C1DB608BAF91FABC56827754D6AB01EB4188C1DD73EB4258F962F6
+D18B5C14089225B509D23D5CD4C1DC4EBDEAD354A1B108466BDC3DD86535C7D5
+9DC062AC8F099821864264F13C4AB2441E7ACD2C47AF331AAEE509B0BA31A92F
+18CCEE565B5CE02FF94D635AAAFD9497FD00E8CFD213D22F06BE684D43369131
+24DA92CD0D50373B137892A8B6A9D619094621247B06BE1E433FDB25CBEDDE0C
+A7DBFF7A6CCD6DD55186F56A089E3901136B014C0F5AC86C819D5824292E6FBB
+17704445C90AC7BE8252FEB750B78804B33B2CDA000073A5530C7A7F2A4AE279
+4D627939E1DF094EFFD5FCE391C4CF81949BF45203819647EDEC018D18CC1D5A
+C0C1B1FE3D2BCBABEA21861E2F2FE5DA884F134A93F17F001DE4D595014F3E76
+D4ABF5249A652CA8B53ECE9461924FD87EA819F5F68893EED1A7A1FE4F231514
+3E69D4993A48F014F7E4FAAFF2D8685DF2FF50A41F309F5626E6328EBE3D7793
+6B8EB46F10997C63901343326BC91D6945666C8B3362A1A94A73AAD158E38E2D
+1436AF6B3AD32B064A6FFFBEAE70AD11ABCE5ACBF810974EED6623FF916F947E
+8897C2171970FE02EF18874092950F75632A916FC6EE77883AF461597245F0AE
+8C9C7005217A59C63F192A57B8CB74D07048E7A25F294418AAAB0ED28B0229D4
+2571A21B6B46570EC066319191D8B155B903598F4942F692E3547AFE51D76191
+3A16F163FCB3A73C36471EE438FD549754C91190553CAD1FCC0BA3B1C1921470
+78784DBF40B54294F9EC7EC7F5A8D574CF9CF9D22B5AFA790BA5659631FA3059
+E2E1953F58FB83780B1C99407D48B75A13999CC536089B8AED30485E52DC4985
+82D1A5790B451407C982AD06399DABB46A1A4AFAB1FB85F11B558723706CA227
+37FA6429311FC4A178800ED5DAFFE353929EE385E7AC9E04E4FC63C66296C1E6
+3C5E2DEDD62975D7743C6D35155A5A8367EF7395E4092F095745C3192A5A66A9
+7AE6B45029753FB2230B881A5F7B0A393AB2193B15C06535458598458618C70A
+CA5EAAA28AAFE895B5D4CF0A6B2E3C2573F790EB4E0B91C69E1E17FA78B77CC1
+376510918CDF6E955F231BD7DBE1D4B0C1B663DDDBBCD1D95024181273D58215
+A7455285B8DE11E9795DC15B579EA328D21E9E2F8F276D3D7DD7DD69A5BED0A9
+351216C84EBFDB27DA7A3E151B42BFD9165B491D670014B3FA0274F15863F51C
+54C322A69313804D6960AA6F0CD14A970F28182796656266DF384B25F627CF3B
+5D51F9831719A33AE20EB9CD0511871B416E3DDD76916219B7C93431CF22C76B
+DBBF4D6E85432A920C532D8EED18515C4352A52E0B3CECCBADFC1C1133267F2E
+D66668799BCCA45FB84FEC96E1BE5F9F62784043B71C05383C353CC53F04162A
+9D8419FF16DF736F4CEDF9EC973C501587145DB5E1F1ED63838CD8312011F19F
+94F8BDA1CF1225204B9510B972ABAA4F6E9A92A86787127AD97A42BD3952C5D5
+3C588E96FBC8B48C088979F3881BE01C85B53BD456E0EAC91B8A899BFE0E5C1B
+D6E38EB78BBA172D26B7F1F6E90F029AFD3CCC6E3B101777F6E045D8892C2005
+12CEE278F85797C382624E847BDC406BDFC013F099F6236C6B4C21D85F205D3E
+6FFE140165D3176467E7B241E4BCEDCB0850B03E2810045E79E3190BC6D251C9
+8A2D9CA4314B334868DD0B63DB9D00CCE4D80B4D359E54E9E81F01799905F8A5
+FC2860201F49F53045CAF0D9DDF9EEA4B00221BE2EEEB189D5E1CB6B15DC91E2
+DA3C7A24A571BB9517F8FAC84F7DD0A41F53148D61BC69C6BA042714A69340D2
+86F5874B6653A43EFFD735CBAF59B539B91C1B05E6699A74B1995D5E6AB5601F
+9A606A94F85F32DE43ACF78E3E2B75411565BCD9A90491E29E22DB3596F92BA6
+F7C2DE622841483492295376FCE5EE8BA0B13D54740109D82F686810A03CED91
+CA7442086B0E3A5DCC22F11FAADA1474AE0B6A893B3CA6065343D21B834F7239
+48B88675A71B046352293E2FA73932485BFFE08C8CF502F6BE95E999660D8B2A
+0FA634AB11C8C4765CB478F19595D5AC0EEAC22E20BD6F30B1A1E3B10805CE25
+FA694E5DEA8DC007C05D654BA6593C846B1FB7548A7ADB2579811D5785EAD68B
+AD679E1B61F5FF45E4F8684C7EB447EBB9C9F19C1D346A1D321F2D49E84FD923
+5C54CAA7F85B97232B8CEE6BD06F88F71755AFBD86D0CD6FA10ACF67CE92B40C
+605C488E397A2CC9C206C3D96133EF0CCBAEA910F86DD04D645AB8D40F440439
+3D5F0DE8C89DD451C007793ACB6592E65441A9F49BAADB4C33EEF1BB685A74A1
+25BFB78143CF48AE6E4220532452C6437E8FA281C961C9D205DB1B9ECE54A7B2
+02128113842C8454CDD922610DEDEC6AFA3605F800A2C66B1E014EE0520FA2EC
+E033F8E7BA6C6A64334D877426070CC64F4A30CF382F2FA2511FCC4E8F32B68B
+10D7EEC8A2D3FEB524B64E1ACC9A5D888916D1C52CB3358E4064926E46A0E80A
+D7D379A531BE1B3679CD227B51E6D6C02FF46437C0689E7E5346D47AF8694844
+8DD0BA48D36677A4E612DF41F5109385E07B96AE023621BEEFA0A691E2AA2B90
+E8CADEA34F5570B8B23BC40420ED1D6B2561C28A147E099EEDA54721E38D48EF
+4C685E67F4228E94F657486A8066269822E58B38B3BC343F9D5F57987579C683
+1568DB43597420CE2BACAC2BB30614464BA2D6CD239CAA21F4CABD42E0025967
+017314B488D7E5EE80E110F82477CCEE750ED06A76054A57FEA3E58EDA4E3C3E
+E420DAF021E8ED0D4EF74864A7A1E824C4FF703ECE2C7A1E6BBEDCF03E07B370
+4E1165A4EDD682BE80FFB57B031CF2F1AA3A087FD8F0097423DD6C5CB7534B5D
+657B06513CBA6B7003EEF17DE1694B408603A07E466032CE47A12D891803588E
+B1C2A4654A823859C31F6A9C1E43A6CD1BC33ED401C057ACF6226FB683A81D5A
+9275BE95DC05E58600D03387859171860B5CC021542EC0F9A1D09564CD5D1AB9
+AB4D7912746DB575690193F7AF9F1E8796C9D768C36CC1E7881B7DAF0B577A49
+3120506D2C28E487509CE32C3AF08DDAD24E3661C510A118B1E6532BBF715A0D
+6823411E2F423322A0AE1278664A2A391525C51407FC44082FA112B052D18241
+C4BD149FD298430464B8805A392636365F16B552C3A8C85FB4391779C219E8C8
+7666533C8173D05FBD8380AF078D402E8ECD110D8211100B61C2B3AD289F2ED8
+06513E48847DEC3265DDA8589CE2D08462D88BC1DE42C42C7B85C5814FDE1A22
+185627E533C6D6FEF2F08829E4308401F9A3688E43966F682E008CBCEA1FAA78
+AF167872B047977087BABE9CBD0D32C5BEE00DBA8FB601CA91632BCBCF931FB2
+6A7545A1B85240B4CC322AB87215F7FD0861E2E15D6610793D37343DDD37CFE2
+DA8FE76F21F89D36681AA6A43DC0A18AEE2B8890A7888DEBDC7706B0950C5941
+1B4E0DA58D126082D077CDED69545AEC02608232764F1BD76E619096084F6A40
+E2C90B7DCC3EC1B44B0A9D57CF9A26175839B5E794DDF3D971A66BD17066F96B
+8F5BCD802920130F76E434A76F8FAE8CE36A682B88013043CD4FC58F0E43957E
+6BAD3CD19DA0CDDC20A1A59232EBA4B3D7BFBDFB03B340476C88C8D1E2610162
+AFA87AE597856905EA9E3BF9A9F876708E4EE74EA2B873CD6334EF39934E82EF
+57FED286EC865B17F0458D8C80EEA530A48AE583D90327BEF4D5572C2D6302B7
+2826CDC8273D472681AADF689B1C35468B4BD921176E2E6110B701CEE8849057
+1308F271EB8865D933305FAC772D81DBB57AB63B9FE4A099FC5C12A3D0C3B53E
+5734D8F9A6363E7A495DA00171614BB09EAC3DBDF70FF4BE66A1B7CBDB0EE947
+A66EFB7FE439A044014FE080B3456E6882885826AB7F7607B83420EB3F1938BC
+CD256A898830737E39B674A2AA18FFEF4A5060294EB206535C95C56EBDE03FC6
+58A99B4F468DFA4BE4F63E1355C57B9365CFC853D4DA74774E8C6EC887F1BA26
+5D1850271128267EAD0C2B707BC18382C8F1C30F45DE1BA668B694AA78AFBB5D
+C8948DA576469BA18204F616F978E606BE2B07BD972F3247351D3F8119EFA501
+7C471171B70EF45ED3557A26501F599B7606A1F3D3F543C840B38AB2A9AE7D3F
+9AA1633E6DE860AB2378329FB9513F1B479B9C553EE43B4565E49D4FB7E39CD2
+998D5FC63EEDA03C1CFB5CC07F3203AACA07C853B69DABD3B48FF745B79AE1F4
+E6013DA04F13E069648104D5A38A2678F31BB1DD166D07578DA08A3476E773E0
+9C23D8E05016ED76A0CCA6BC01BF814996AAF260249389C47CC8CE66B454A5E9
+2643DC04C42CFB12FBB9ADB0E78C79C982D7F24B2FB4E5D32EE804FFEDC9FDC0
+B9984261D8124B3086B2303636C1DCD552AB7CD18AE2E6BFE248D02882014F5D
+659C48DB8AE75DD1C5589272EC3D33A552089E26F80142AD0CC676F70A94E2A8
+70BD0F2DE0F1BEAA038C6EE73CF58AA15BE408EFFDE8BC1B2645E1C13272EEB2
+45E63EC4B4E34DE3F1BF7E8530DDDCAD1DB9477E253BB0CDD7DB76423668F37B
+6D8CF668643783F562D1A88F831885F92165158476A408B5891AE6583B10E0A8
+2DC1178398D7DDD886B05FEEEF6505C499EAE9A4ED51099D3D424879E7BBD4AA
+61C14D18B0239F63C1E6A3D559D232C4833E09C36B5E7A22ADC68E1963610666
+1A6BDFB86A6693CC2CB647A4E339C09BF17FDD40BF22CD952491A5F5A66B9732
+017B68D7961C360A317C013F335CD54FAED7A0F75C75C25C575DE3E65E3F0FDE
+C30C7FA545BAA0A3A1A22BB859C16F58E93FB0CA74E98E3899D7923C055AE485
+E75FE2C05DFF8874F452796F95BAB9CBD271423DB40C6087626C5122454C6A9C
+BBF205BC00D07D9830F8AD3A76A5A228E9911583358D2122F959B233A8F590FE
+BB916539D2AF54A10C52AC6541B1C1CE997480908E02A722256EDB75BEC4E962
+1CE8BDDABF01A673F31775C408EAA2A5FED6AAC014B05C36F3C54D9AD2DCD025
+BB70733EA2185F9FD618788854DF25427E870D37224C6B6617E3FA0C251C3FB0
+6B358CA539D752088A0945DF665D6488E37017EBCC6502CABE9CE267BA87A6DA
+E48B1F12FAA0BF3C12FA2E860259C6586FA7843F584CDA55404C88D283141685
+41812C6FEFA7A66AE6C731929D09CE093EC6712749285DC2FD2512F40EC1B114
+70B7613B43D761CB6A02F570A059331ADFA10921C3A3C4E6BE9637FC8B690F23
+138A098D8E1EC01EFF56C86D246BE7270FFAA7C512C6FBD96E3C472F939C1893
+C8A3394C34045B700CF10355913744AF99463D6E2573106B2FB9ED07B79ECEDA
+F9F6D041B6061CFD8E02887E5C5B0194243F3DCB40909C3C03333A279E0D9A9B
+037B84BD6F7300D0E5EAF980EE53B7FD883886528D521DDE4F74536C7F1C5BA8
+6CF279C90DDBB82DDD1EED77FDB05E8350DA91080BCEE5E3C84F003325433D10
+D03C08B43EF95318EA3748DB9BF84D57A712C0308E80F5A54A38F0B2F7AA403B
+C57BD4BB6243F7A0B09AB0C885735D9861115ACA7567ADEA6FEC6F59973584BD
+43B3AFD18824327CD6C21D4FE1F16F6C67D01B97FBB6F70DB5D7D6E46FDE0D09
+DBC1E45DCF82E9FB3D465175DCBBF254C59447D3C3DF1F66E0EF8CB6653EA52E
+4C1D346D33499D2CF129D9704D74AC399DA2A23092216969B5B8D8B520F05DB0
+345E1BE31E211BE01A1B1FEDCD9F2699E9533385D29F0C80F990CA5A874EC60D
+8CDBC045FC2E2F6E7A2E426C485DD04C4052A80568951B7C5B7A7FDF8DD163A3
+CA1D6A36A80B7CB4401674E6E1B9E8F2DEF2ACBF87879AF5131DBDF6A0458B01
+3243CAFB8284DF8C4F946C328B453A363103665491D387CB40A493B9159F46F1
+E95207F8E71D827A15A895EB17899D2C0FD610B9C3D3F8378310602034DA6BB4
+6131CE208D659FD3AEB590D2CA5918ABD2C10E16DC378CC922D605C66850C6FF
+2CA7BB0A1538BE6DD5CCBE51CA7509A995F2FBA6D2813AFFFB625604D25D5BE3
+4B677D6CC459FED33F0A58E740A1EF93455D2B7CD3B6D7ABEE83D3BC3823F2AA
+FA77DA4784BB1DBDA4083D991F9104BB62EFE168D1BA37A2E3EA54BFE6FC2C94
+47078B5E340D2237B312258AA715FE854291D40061B6AA9F9907146EB2FA3B1E
+A1CCF2C8D2FB8230406FEBA3D184317B4F7F777410261D500F55751A0A445DCF
+8B100FE5B149B2D2880C3390422BBB8E8C6B8A8B773072A0091C1BBF8415B329
+D16FE300AD05CB4B62C90ED22ECCE09B5786547455213BDCA572889B926E3DC2
+6FCA839E42D5519C1C2CDCF412755B645AF3BC38897CE7750B8E47F6E352702C
+9C554B0E2ADB99F2A0CDF93DCF419AA331BA310ACD315C11912F4F8898EE964D
+C1E9B8606981B25AEB7E411114D74B37952C0528E51447675CD888D80A0F15C6
+21A42FC33BB3346D51B6BA20B726EC79F582A90EC43EE690F0A83B83D2E23F3E
+4F5C12E8BD48F1CFD04A189937925596C040562F4DA681B185BEABB00F7EEF7E
+1E44F8ADFC6792AFC7C3C809338A6B1C046917289139040D382F60652624775E
+6C6214AF5BE1D81A2A23CF2380BF6A13E88E87E2F1095B60798AB4F657A26671
+FE1C598578506C804FD43FFBFB76DF8D4C8E647F9D021C46011E70880A8AEDA8
+CBF3F181533340999B7620066A460E564C3C23FA8B29CC1BC8D337E2B1E49ED6
+9D10EAD96A52AB4D06982F4C48873C6F4872054695F253B592B83A1BC90A4BA9
+8371C4D319DD261B9A0AB13F74274E5B376A3288FF60C93421F114B51355E725
+FB265D39C00AABB2DE4300968FBE7F652C4EC71A7EBD58A20F2B4C1E2D1E3646
+902A0F815E9D67B50861D6CC2AE3AB45BDDF3782D685ED8E41C0D8F1FA37F238
+00A8A3ACAD22D898CF8E95855558179BC84D199C6C79A3EE2651167A4067A9A3
+49109AE7F53B59EEB1F57DFD4A00077DFC2BD2CB1E3169F0A348D4DDD2D9BFDB
+A31951065B0230504FEC2975FB5015838759745EEA1347DE8591A58783F1EA48
+C7A7456E94BD2ECB916B85160277F98FDEC95DEFA7FC19532AF90C6AB3399C55
+86BF03B871A4C4386714AC62E44857919EEB2658D1AD72570D70F1F9926D6B3A
+D12988299F620196898ADC3125C5A7D11765025B237983BA1DB66418B484B022
+EA1018CB14150269A089EE9CB3EAF08D4F7E15E29048F729B9D39A15C00B8715
+F030F927C8AC027A3B040CCD0CA1FFC5C6BCBD00457BDDB418BA3805C30AC43B
+A8DAAE706D404E22DFEB24AF9874D741C9DA45B3163C259E8DBFFB6ECECE2B97
+6BD4335015222631F5D86490C0F9BD7C22ABD32D6DD412DF772548B38399EC08
+0E28700A2ADAE8F0D50EFC4CA8642E0E996D72BFCDEE1CFB252A6F4D8E03347E
+F6328BF18282ECBC88DE3FF382726F910FAC2DD599E63EF7C3068C1CD785D101
+16B7671ECE1E0D30CCA1C6F2D3AB5E81E309696DBE4973F71D240C207CF73CAA
+D620DBE563AC9B2000A628E8657A45A24030432AC74B5ABDD022CCF6AB855E1A
+61619EB4DBB848A6C2ED5745005938EC8F516979806AF5E714704027A0CECE87
+4C44DAE80608392EE0EE0E39555ACADF1D3A873D35CA84D87ECC2AC41937CB62
+B250E3C1AB878BA32AE2E161D13FA536A305B352E3E0210636A81C6655CFED25
+A2B75AAA6FB0D2FCF696358223E78DBC2B9BCA15271F7612769ADC00BA66A2FA
+8E38ACEB99E18B7B4A5C2B7977169EC141121F0664EAD87EDDA372BE22988222
+27D477A6A4715C71091CB2F01C6B3176160BEE79CC8FC854166DBB093A49DCF5
+E45AB3B20EF3223684E83C8FFB2D5DE9CB49754799E038B748E75C99EBA6D69B
+36E162CC3860E33896371D0164C14138181F2E00FFC08E2A3619E1820A560C7F
+63B054216AC8CBA7B034AEEA8E735705AEBB0D78F17856E1A0476DA6E543E985
+4F7AAD98E3ABB2D7B4B1629FB0E24B9FF10F06192AC8475CF8C35EE3E635BEF6
+ACA79F1847FB84C4B20E6067BC0593C7C39657E08A3CFF64915F887D5B99356D
+91C0722A917B347945E1A867B062C016EBB7D924F11C74873EB4656B61A41CCE
+DA1780D204D28B6F0CDCB1E059B3517A5AB44D45B43221DC53FC699BBDC4F2D2
+865C697EAA3B49D2AF5A4CBB66244196A3D8A09C8815FFDA307DA47760CFAD34
+434D00946C23BE41A6292220F0CC19CED3277801C9C1C3CBFC755A261B4ADA4A
+0C9C3E7F8ADB77A5C68021775619D9CE770B4FE975CD468BC5CED173CE1356CD
+A26E6AE273197511E50A014B19A5B79C7B75A57B08185B20AED966A4C9DB4426
+1294A5BF040A05A4FE60FB202C7CD2BE018DA7702CDE728193B72F03C3C0F1EE
+58CEF81EF167CE9F8967B4DB7A3A3BC0868B8542DFF05D46DA08CA79F62ABDC4
+39373C66A08D536491CCB5EE828E410576057488E85A47D5D9F99F748E19AC88
+E207C21EB573B9429A7086A93CA63467B3EDFE08931BF575DB82B76AA9C05E00
+29C7D4F53CA16E6DD53BF23A0991B1C5B4902E4DDD5178E55C2BAEA308C5877A
+3A21D1184FDAF68ADF993920AAD2EDB045E98C990584EFED9250A332BBC01217
+DD58CCBF7DB9C0E51473CA37655DECE639C28E04EB47E5B52DCA10E92BF83F08
+AF3EC395D0A74BCD4377EB7AFBD1F0B521F6D8F0741A07BE28D6A8C235B90B7E
+B448354C9FD450F98270B3083515004B56718E81C4C6654E40B692780D83695C
+3F456A401A6D24740C67A485AA8B616B94B23EB889AE93CE66F5CD6916E32C66
+809F5D3C4D52195D1335F89D1AEA6C07A1AC8E8F30AC662E11541536C50A6763
+5D8C71FA8E0EA2BB0141FCADA7AF9CA0A69AC758DF87159707038D81DD706B6D
+123D53212F77FBF6AC06A7771FE86D254F9E6B29045CB60628EF491A26226D02
+D799A4B2E1E4DC25BB157BBDFD0958E1A4617EFF11145D3EB94A389F514D1247
+4B6A4CDE1DDF18A826C0BA8FBDCA2045C3BD3465C371248428A4CE147069B2DE
+63E85D5F92038E8986DF08510C6FF1DCD615A7164A287A8C8C869C4B1151820C
+8BE898107D19E768E66125C6A6BCA28D1A99BD7E6F58F60DA14E77ABA2001B54
+899B488C4DE7DA167A762CA3CAB0E8D157F6BED3679F019546F0322A7F6ED7E0
+D6AB34BF0F646E07A4C08EABC1DC40062E17386A406F88FF43C3AD322E8A85B3
+9EC8C24C751ECCA65BC7A2ABC5BC0E8C883ED0FE37DC111181650CC6DF943495
+5F0DEE475D1CFED3C23655E6053A884DC41E8A4D194A02051E5F7F38C625FF89
+5894F611575CF75A533095881952BAB2C81BD8C303C903C81D937E4D72A28261
+2167382EB3632D975CADB689A7DD5419F12E32DE2345CFAD7A85A9ACE0E63BB5
+3C49A690274EBCC5CDE015218223D2FAE1A1E7344932BD8CD076FE564F523B92
+6B50380301C36A67A264AC735C9B038CFD7D897ADAEC00EC65E174F47EF1EF0E
+F4A1C83EAEC77CD415ADBFF5E3AF7769661AD8506C356C20595B1BBB7BFF1808
+92015E73FEBB58376DB5368C54BD47B486330BD22F9E1804A05B350671BA373D
+737BD0BBF7E78ECE5C76FCE2B1DA10BDC7074164DCE3D2940F1CDBD02A996EB9
+7F4227B2446C7BDC11AA79B727696467941A4C2E3D51E3EAF366EAC7857F8180
+AB05461898B99098E955BFA09A8371FCF1EB671DE86C89776B7C90AFB9A4EE02
+39B35FFDE25BE1585476BDE88912D1E2D4C1083BA56BA4346B90EE84E6CE5BDD
+A7CB599B4D716F7F25668D8C559E2347F20311D49CC7D3D4AA0117D017F065D6
+E43EB82320EEE8B29B7C7B83A6CF79D3A20B16393235FCE7F9D0D5592A80B33C
+E664FD2F2B0FFDF29C89F7F5A5B0EA96456CC42DE1C2BC36E791BDEE54293D48
+BAD9DFA71606A78B5C2B8120A45F17A394F417C60CC181EB7ACA7D461A1A8095
+2372E368C1869D19E4A1A23607B6C2B0FAEF474C703492E7C1D68A3248CB8F77
+FB17BDF28A502BACFB2E4601BE018D24EC2CEAA4537271B2B9BB7807CF447BDF
+5A7DF27A00D96C481ABE0B02EC0B61606505E357FBC1BF8F1A198A184BFC8B88
+1ECCF1EEAFADC8D299F72370BF10AF53EDCA219DBBE145E0F1FF317515BEC422
+623045574C79B689412F5E7E5B66FB463E11C507DCFAF31AC1AC380F35CB7DA3
+FF9A0B82402DE0696CA50B4CAF93667A489C1640867AD454CB797645710D9929
+4857D74A887D7E458109B90202A50ED46F0375F71482C7C6BC14E5CA6B001206
+62A44754C351B56B41AA8324EECF26A80E7D3FD85086741E70FD33C8BBD546C6
+3AA832DD5BDB976D17B28481B7DAF12DEF348DDFAAC53E3455F82DEB8056C13E
+931F9159178FF1C744AA7882E7D49D88398EB3D023A272B8A89FB5659AF715D3
+0809BB26F3EF80A788CF54449988A73B416219862845F904E091951992A279F8
+33FF4A4CC37F9AFD5521E41F6FF1F12B1D9C7C0482BB38D1BE007DDCCCC37C9E
+1F7F34B5ECEC3E6DDF6F6EDFD95605BF60F55F2B1D345430A89813FE189F391E
+844C44571502F66FC3A56B222DFEF0D676041A660E6D741D8F72967DDE8C0A3E
+96BC0FE3243DC07CBC1F0E99619BEA04EE85039B404122E496AA7BE34A4775AD
+E4A310C1C020AFC6E74279DBDD0F6F374691D8E3B6EEC90B11AABD20E59F8595
+3397C7E9BA2052454250585469A67EF40741A9F09BA2A2A04885CED6AAAC081D
+0475A63CA91BFA5D6A3770C1CF80F9D01521A51D815ABB1F31A89EA13412BA42
+7F1916165E012C0A94135C485E42A5161C7B94A02724B5E6D196D42BE3F408A1
+C11D207F5EA2CC3F2DEDBACF246719BD222861389AAC1ACFB94496CDFC5F3348
+4ED4336E52D03342822CC7E267C2C9694D9C07448ED043C56C57123B08124AB6
+8EC0700E42478E6F0FEFBB0549B2BE787570D2AED16C44AACBD6933A925055A2
+022517A427181398FF7ADAAF7910954360EB4403E16A92D7203A4587ADB06169
+EADDEBC7EA4AD684C2FCB0C1008CA92508C4B755E93401568145C5555C8B794E
+F9FE03CDD2D904FF6B3C4429188DE0ACA011BC44D0ADAC60939EEDBAB25AD69D
+48A5E171F88DC43B1511C6883DA9AEA734590F09FB58793D0BA23CC46DFE5FE8
+A9C82D1411002EC457793FE7DA76D29FB65F026587DB905A1EE651AF6E4F2122
+A8561A524984E0FA2FBDFEB7A8A4935DF29E126C1CF41ED66412FCDA7D07053F
+EEDB110E865CED746D2530704C3D906DA828873B6AF2FC2D9E9EFD835D71BEB4
+A0C889B6156AE539B48E0D8026F5A8FD0DEB71FF8EAFC66BEA2130B9005645C7
+6FCA01DE45783C2D7B75EE9A9A6A8F5BA5F1B13EBDAF2F246D701507DADB5518
+CA8E75918A1975617EDD5F5701AC7FDD1365F9408E3BA2171D4903A78D223BB8
+0CA0E842DDBBA3C6B41D2339A7C620692F10C4FA9E8C950AAC4E86607955BD81
+A4E3B0131984BEF21770B436B286B93456646004854BA2055C3DE31CDF212205
+883E2D4DDF58152F192E50B4663F0F9779B455C665ACD6F40E7948351BD9F78F
+24550832F18950ED308B402D5FC6327CFE094F1090871431A59C7238CF1AA562
+3A976BCD5808405E7BCC3DED691D332C9B279C849936CD65A6FEBCF58CC2311A
+054CBD1D630459B59071379C3865C3C6A14E22B5B0381F44372DF1DBC8727B1C
+59A733C294C4322E243223A986FB8D2BF832755B5CEED304E6B3699998B223E8
+E28EA70BEA1358C2CEB7AB07112D30B83197B263E56937CDD0F074EC29FAE7BC
+8D6A89133CE8F837D64B703BC40EB64F2DCC73C763A0D31F3C058B5E9443EEB7
+52874573C500ACAE072071AF89FB9C4F4641AECCD14F7315150E5947731C8963
+55403D9A4A92EFAAAC4F5F6E95B4751351C4177271712F85495397CCFCCEE992
+98E7DBADAE9D3C1F273AA78F75012CA5AA357DB035655B3D98ACC2988169E894
+C573D80D60010DFE08394A6D05932944E07BAF050AEC00E45E04A424C6C351C1
+511DB1E856616281570F6DB61D75078B2D1DB18629731358D8663C615782D63D
+E6D7D9464CD95D8B446E563D684D16914B0CA2978C473CB514A5A06D25522569
+9CD74C4E46C95DCA19C8AE79ECF576A677BBEE3510F93C4176A4B5F1A4F24E36
+E0C5CEB30DCED55B7B051C01AB5251CB839AC2E371944C169D9CA4AE4B91450C
+5503BFFCEBFE1AFE8574E2020D3DF2BC16BEDEEEB76C7FBE3FEF7F085BBF4BCF
+2513333E3A01DCA64322049010D1802D1E50B50E39768F960BA243AE4A79C12A
+54D8F7CB63476916E634273F76663E4496466DB6BC16CE9E74727C9EE9FE79FD
+B27EF3DF0E46EA9C028AA3FE5470E983BB251AC803FC07164644F385B6BA347F
+3FC80E540BB262BB5E0CA619CBED3C8A4311B9C2B0EB70DAAAB4DBD04CA642A9
+53FA5B77D48384A8FE1F706DAE7DC478145A2F97FE5075092149C536F32A83C8
+32DEB9CBF5177AB311222565F16AAC5109F31F7C84321824ED15CF558D65BCA4
+9A73C570753D325F081EE9A3A78AA2F18258C5DFB32739242C0297C185C22200
+34C6F979B51240A7B1A3326677929904B567550051B4D548F3AAA253111F7316
+D3C84FC22E64F65882773C7AC585041DFFE3A6A15F365D825FA0C43DE16DB215
+243E53975DFAB3C1FA30D6CB8B52B9C55FEF96526624D5D8807AA901B16293F3
+AE0C4E03E6E22ABD78342AF9837A380BB99B68ADF493C1FB18CC4B968D707AB7
+B744D296FFEB8F2178B7C47D94DEDEAA916AABF76FA32BC0B86E2526F66ECF17
+6FE4A289C2571DE0F86B9B44459726C41C6C648838F928A8E6FA682A43DEA7FC
+3C724137DAEBD60591A73E72F2A92373103808D3973501F08647028F83F2A9FF
+400344095BCEC1EDA8A93325FDD58769ECB58511436843AFC403B5ACA14B7F22
+AD9D64C888F1A8F4E2FAD374804A72E16C0DCC0F2F56B91B3908FAF52A2C6DAD
+EB9BF87C40FE29015B6E655F40FAC45FEE240C5DE731CF7B54C0F48027697146
+3A6FF6ADE84F6CC90E3799331799DA11AA92F445929BF4A95E9C5F4BD4D63CA1
+C84FE7BE3CDCA2ADF4DCEA99EBCD25D7724760516259D45DDC9D6CDF7E538128
+F3D92F8676AC2D0CFC3687AFB29E8BAE8671ADE209AECC9CED20037759EAB6AE
+42E1B41111C9BB92D422CD344E7CB85A7403788C7765AAFA62CBA09A5522A6A5
+0EBE06D0ACD23E77BEF1A15A9E99A4713E67E7C08467C6B2890EEE9AA1F0558F
+EC24065FBFB04573E13C52137EACC7A931791A5D5F675AB42E9B716DECB6308D
+EF96E59E36E8D40B99A1E6D9F2DA7F32C1E47091733341D89DD109FCA2AFD4B6
+2D65D6366EAFE4A5BB0891B9344557DB94F065B3CD7D75874AD92F24454C2B21
+C4D2600AAD92684996A07B4DBC73BF4A3A01620373202E31B7495DCA42DA4B50
+6464003C1431AF808D30E08C4AF67E5CAE26F78188000AA0E8C97151491BF1C4
+94B1CDD72126412E0673ACD9B9322C3EBAA2AA1D039EFB53BD2C708873BF77A4
+7C89B9A48EFAB9E55ABE4FBB6FE868A9B2D86F96A5DB527514C6361DEAB44B53
+BC93CE3D3546324D72B13FDCB33F519812C1D9D66ECC126F8C3724F4D194DCD6
+3FA6E6F06B2509FCEF85C6A80F9C2ADC3D15A9562D2A65C4D1392FF915679CA4
+36E048D8C93D540DFE0265952094E7E6C8CB33BDCD517247FB81D564670F3964
+E65AD1F253EC49752D8ABF2CE12B2425551E7F03D5AFF08A7AF854E99322B8AD
+4C2A300672CB3A06B668A11B752BBE824C07531EB46698EE6C6B65112CB77F0A
+FEFA9A531F51D29EE7F45E8D0C73ADA57B32099FE3F0DD59BB97BCEF2CBA4E84
+D892E8B6880397808D46E78E05F42AACF717A2DDEC317BE5E5FFCAEA963032AE
+515B76D34F880C049F3DF624FB85DAAFE31882A2D7CC9C29E7EF28E2AA4C46A2
+FE2B035FF8303879C436EA4A2BC67DF287FF0C3430E9566857F0CAF38CDFD955
+559249751A61BB9ABB4946A31881ADED4F938C6468318A97B9F1D60A59C996C9
+C8154F002185DDE6063E67449A6E0A9D9155EF95A7EEC84568EC8DEC4E3E9D6D
+5E3E37F01FA5CD500715E0777C0B8FC6940C4BB4E6BE1CBFF8D7F461CCEF1641
+9FBBE9EF79801121137F5336350701ECC4A2ED838874BA412944545B2395C1CC
+6873816AFAB5F4B71E978EBA442C309799F81E66312BD6585FDF500075CCD649
+DA023880E008D9E046660FEE0C93B5FF18722BDF423C5D820DCE694C6803B83B
+101E61412650B945C63348D5053C3F97B6D38821A262600A8231E151718268DE
+4DCB22329C49DF12D9135872A03CD900DAF07D8F3A396A39FC9A5FD04C8AD26D
+4A41211D509B31D9032418D372A90CA0AF2E16DB8996E659CF103EC725BC4820
+9ACFB3C8D5155D87A2AFCE311BA6A18F95E37A9218BB5A45620FA20FD485FBC6
+DFBA5A3FA163833657572CC295C5BE868D584046555006623FAACB6602F612B5
+E6DA8CF67C8C7664992B8062C25E877B578194A33F29039ABD44B3DF14980E77
+18F51B2AC035CF9CC17F6C6C3D75D2FF145B14CBC4F9A551D5050B7E52C855E7
+B5D02F32D2807518958AF87E7380B6968C51A54C735000F02DD66B2E837EE0FD
+BAD9D9603E517B55B8A9765B5C6301040A83E56AE013786CB760C98DB9537966
+8D9AE205EE938ACEAE707397C3BE2980B090C3B50C814A247F82B3267FD63506
+A21E253CA1FE7DA323C9AEE3F8BFAB2D9DF4A01F18DD530E3C618C889B219610
+E313775F33870ED4791EAFA21B649142534100060E28CA081A2391F1458F3ECD
+CAB0BB41419C90D0C9CA95C5A4631A01DF76F52DDE04C6570F22578D556AB841
+A38FFC5A97300AAAB48177442755D76247F84BF57284B05E5D8DE15D0F69D689
+0264FCC502E5A8D8FC2DE3F7823A0363F1BDEC4B694282D0850CCCBFFD84F4AC
+06CEB968973837652E674C1F953725039933EB7988BA490D4D8567EE3BAE7BD0
+21CC586C3CDD38F79B0A3A94FB81FACD7D9ED04B4007345A4C7A47860E38F965
+8CB23565121D1E7A0D0F3F3B7DA86BC3BDF2B4CF412BEBE667E6C427F3F86E63
+DCF7920FECF73F2E421E54F6F0A8E84A8BDE2D0B9C5E441F4C428CE8622360CF
+6D319385106B2590E0D1A8B6C56DFDE8874A3F30D6DC25C1ECB02356D488BAA8
+C2BA0E8CFF8EF6DA75E2EEA6D27E822F511BBA288F7AB46B3C519FA75B676B55
+72E553764D23EC460CB17BAB327FACE33450E14D8329F2339600F0366869153A
+D775A0F12471286F485A65054859B96A00723E1C451C6A8A05C88B32D10AB013
+94D834F675EE8DE2A26910F924583509BBAB4B1DCC5B1FC8781D80E8CF024EAE
+BED6FE0FBBE088F73987477FCE10B4055C28199A91BFDCE080B5F52A1DD5EF9E
+8506B78DE1DAAA88DCDE13C048AAC003735970A5A74E469EA21D2078FF721966
+FEC29EB8D667540184E3CE37797EBA575CFE7F484C71F16D84ACFCC11A769250
+585B7E825E70BC5AF10B9DA5D4E0D7661B486DE2B1357259D473A57598E257B3
+993F51D3FC6E6EEB9F4792150179796020914877D26AEB07C527CAA4468AC50B
+56D8BF2F137F59E55AF7E778DB993EA55FF446CEE4E8E5D87852F211CC342557
+D2F3647F6BC423260E2AC6398D
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTI10
+%!PS-AdobeFont-1.0: CMTI10 003.002
+%%Title: CMTI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
+/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTI10 def
+/FontBBox {-35 -250 1124 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTI10.) readonly def
+/FullName (CMTI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 12 /fi put
+dup 45 /hyphen put
+dup 97 /a put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 118 /v put
+dup 120 /x put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57C5FD29DA32D34C95E
+2AB2ADB3F60EEB0600C8ADE15A2380DE10AC5AAD585FBD13097B1A7E8E210D4A
+EE96785449E07F0C8EBC2EC5EFBFD0897DFDC15E5BFAC9584D8DE95C5AB288CD
+8AD8B9BEF0B8E5F887B3B0B331542FC8184DCCB753DB6ACEEF98B85756B988DF
+CAF1AE0DBE7D37D5F44A2E760AAE3A5197C27B15E32275A64946C3E4D0476FD2
+7FDE148C788DD2106F7C825E270588AC05B57E625AB17BDD02306F9E5FC851DC
+32A5A6EDC43C770A71419B2C0C8074EF3F222C8A2097CD81A91F333A521B3A09
+482A4FE1CB231CE344AD126AA284C3280AAC3AD162CF0EE241BFB4C8F20502FF
+118507F5D1B5FD898571015E73E5CF2281085072E00D401F6F59761EEC3E8381
+1F26F75DB66C504AB6BABA87D121B1E7040A07AA2FE01F80DBC246CC03C4B2DC
+C2A715980C52B7F96BC1A78FCC7F4F52EEED5F705E08FC1E5BBFCAD121FA88AA
+8EBE58172C162AF409DBB0728F14923ED02A65EA24E5D52B6AD07777455A70A4
+61833D3789C719BA92E901232599767E423D5AD9C807670BE0E7B5CFF8256A20
+C7BF7214FFE0342809570F5966A2C43E784F35015D9040BA34FEAB6A6F089504
+3A40A9E9D711A2721D3F4998371430FB3C94BFC619559B97D49627BB630F4B70
+9D0A8FE4E916235335C3962F3CFDB04C4A3CF714DB5E260F4E66FFF2F27CEF2A
+D4AA26BBCAED23B8BDC98F8F453BA27AD7758537561E766B82DC3032E92A9EB0
+125D98A22C5466AF069BF72A9BFA052A8628FEC6A6AD0B711DFFEDE3AA2D7CE8
+34EA487038EF50F953B8B4471CBA6FC3C53877EC1BC94582B1123EDF44B4056A
+30F49394BDE22CDAD7F01951C7013D26979277D18EFA594E8F4F2B5E615187D9
+39E842EC28461B9ABA52020A127D2CB9002A673A435B13C10602EEFDBBA6BD49
+9DDEAB9E68D655443A5C2492BA061C1391A51592BA8C353A6F6A0708E8860184
+2B5D031D2CAB87D618E9F6F7A0BF3F66B3FD5A25BB91F7F1F5F99CFF56EFF4FF
+0A35C55658001ED2E97B26C869292F6274D433A5443179DBB8EE987196306348
+3F9E87C6422AFFDD30080C9AC4EE7FE5E2DCBFEE4974331F4AAE479FD8806D4D
+9C2B85FC69EB0453AD827A1E767E5C484BDFBF5C8D6E2B3C96298B390F22D757
+802643A79D5E29CF3AEDF0E12CFBECA4663444FC87F2027571DBA9ECF688BF28
+FF0DDB3AEDBA0FB28447CB4B5D5205F40C1E7A525FD7373392EEFFD910AC82D0
+98E71660A1B3227C4A2592F3E853CA4CDF64DF19A52582E167234F4036FAAAB9
+5446BE102DE2BF43E82F0112C2A20F15A3F92C6571AC761665A905362C4F8BDF
+AC8705519C99862CD9C0D75113C4AB5FBB83C880E46B82715B5628890D9103AD
+A2329638B95D93C4DECDC5E6C588C9D5183EE6FC28FAF9825F02DCA567306D93
+5440987A81B51EE7291107A08F201C609FEF91A8F0587E8B13D4BAF74A5A6815
+DE9E4441F46AF8E1DDDFA2D611C889614040B144A5EC064DEE4638C04EAB2E37
+4CA8F50FB8C4D65BB296DCCCD39F1F554CFBED96670A91F515CA10EF896874BC
+8EF48C6447752C70FF5A06F928DB55586354076773BFF7E94C4C3A7A1C1F421B
+A9B4E3936EC26E0C19BBBFC90F021E877F54B62108F6DD1C7F6D5B8E64FC9362
+E173F01BF2904B7E5A08B3543611562C2714099DE7D4FA330DB148B560A9601F
+42A84452811CE213DCE782A0D7809CFD954D6BC1EBF2BA4D1B18F50FA8174C96
+3E0120E266AD5DDB40B3F6798AC28CDC5C3C4BC34583528F5B5DC8A222B80B59
+A3A93DC715D061EC6915E6E6E21A25425C25E8747C60F170D61047108826F96F
+7830E220C108B441B6EA3198E33C49BAD8D43086E49F5A2BC7958A1A8CD011C4
+49045193394696EC3DDD0BE084E8F2E9F0B9496F035C0DEC1CE11409DF566428
+D50043CFF5CDD1092F6E0807E660B68163BCA738E8D98FC6EE3F713164CD204C
+0BA84FFF4F33F47BC31750B448603D7ADB9AE92FA91AEBBBEC0DCD66980E6955
+CEB425ED07115B24E40F53B29B9D840842EAC691B4F591F866DF27556474B485
+1C6F53DD72499847109B16C7093984A6B8487D4F3870DD517945CD90E648C1BB
+8A6861E540FCF9D75B984B5009B5CC760CBE297042C240DD624111670B703388
+6FE6FC0E89C6B4C88F51DFF3913D0CC1FB4770C8CBEADD4B86393605C0B6C468
+83CA5594754411B6FC331EF56D7CD6D247FAE42E966583C29239A8F862348D29
+60B177984B6B957E733DB4D275015691D91443BBB13C2DA96097A29733CDB284
+42F89C85A7A743338C9DD3BBC4EE53F695E5163E6E1ABE5791ABF100B198B9B2
+1C21E2FA2FB4AFE7F9BB2D381260CDD3A2CC05BF513AA1E80ED69FA27BC5ED5A
+21445BF00BC2F997B356D94AF13736C6D3B0613EB6F4CD96A685FEB672661DCA
+206105EDC3CA07900676EB2FAB37F48D2E8207BDE1463894DA3C5B1488AC1EE9
+D39DAF691648048F5D7A384B8927F8DA2BE3602669F71D80686E427F395134E7
+7ADCC611BA91AD4B7A0237213C60CF2C905359C90795230344FC3C50A22BD44B
+55B2044792509F50F5C21F53D9F9E9F063ADBED3AB99E2613B23334FE8DF70B4
+6120F2EDF69F50BE793EE145B9FF9C73179DE640FC2ACEB5C6617F918CEEB762
+4CD81E665B2E544864D13230B058717B207D3CC5D6647D5343DB4D0356082392
+871EFFA896631A7E0D6477942B632074A9A4EF7B09D4701B1639BAAB4E03A40E
+9B54A7A4F845CD63F88831EBFA4FB847847CB98F3455CB5957F2E0A0F5623645
+DBB5C5564C7F8B117D6E27E65C0F3EA81AE67B4AE4B201E7C4FB0A8364FE53F5
+41A7CE8F834C2C4B322809B353A5E63BBA7BF3B7DC1A85EA700BD287C2BD3FC8
+2832B0BB4695FC937FF5EF06FCD87DCE6DE793C2B1EE10E6450352C17726155F
+220D550B1759E15AB2C1D5968E52C8080CD280E99D3CCC0E80C2EF8BBFD96001
+A226FEED7311EFB4B67F424B557A877379A15BCA54780F0CD2CCA00400B9B39D
+981C6B552AFD2506D1B23618FA9AE6D8143CD7198A8482CB416CCE62B992347F
+337D505A4078713BBD91E5535BD58EF0351EBDCD749CC24D4AD39F8CECD7D6C8
+139756680A4C03A58B3374CEC658D30160AE4863A3938A891BB59CBE02BB451B
+1BA4B2B6E68AB61DEB85F95E3C909B8B66E220B9F18280161C279F10F7093CDC
+100A53D542F071CC0A5AF834DC1D18738F5DD62A5573E884E1FFD22BD810828A
+1EA47F8218C15A2E97CBC609927DA3CC2B802EA4A0D7EB57627C135E3B065905
+F97597D818A2C5CC6F328AD25AD11FA50F1E4FE637980B7474D6F85A521892FB
+72989AABEBE02A2D0EFE88A6F67AC29F5D8DDFEDAAF465C439983C6B84389FF7
+A6434462BEB7B07DBE4BBA61ACD4A60C55B5C0AAE527DE381DFECA2E6BAFDC8D
+310364ECB42CAFF72BA93C067B2F02D1CA7C34AE7CDC46787A0E234C8BE8A928
+7A6F3DDE0338FAD532A9886E8E3525B85DD39364AB03EC4C0DD25DC179CC1989
+1BE232E387E857C78332D834679195E10F1E7B87B7966DA3B2238F53D1E13FE2
+8F55ED6A92A750C7250C9B91E29796621E7E9520373214D7DA81B2875A986D33
+80382AFF6DE1F829F048E57664D9C4ACE91E4684A51023943A4964AB5657D610
+3A5405EFD4CFD1EBA684243E15093C9667797BB47617B66054EE02C41FFEC45C
+C1BAE8AD56B00D323FCB1D2744F061FA16E161988741A319B1564E04BA210996
+4F9F02A3268CABE450D166A763F5284954564A1C86B76544C5F5ACDFE0D758DB
+865A1CFCF9FE8CD5F9C3B2998C56468FD52DF8EE60C6935A3D221EAEC7714E3B
+301371C7DDA0B03A2416238F2B47BAD3A2C5021C886DF51C695AF9C87A864B48
+3BB3FE0B355EED5454B59B25A0D8A1B8CBD356C24F64D9B55E16C30C011365C9
+1E0380753BA3EDC0868788D5F50B9353D0227BCEE1BE36998B2622C0759BD66B
+E4444250589F9CEDE766D8B940770CB6B89503E925B35C00CBEC2873D2DC4A29
+0823FB7A3717B69A7DEDBAAECC067949932728E89BEECAA91DE3AF9BF070B9C0
+30EEFA8C0A55C8388CAA2F0515915C98E67FA095BB98967D14B0DCAFA9622E4E
+2E0EBFC768D80585ACDF28D8A5C2B6EE2FE7AAF62FFB90F569F84A0903996DF0
+C1D5723366C436E4088F3E2BB9B47F9789052A71CF5C49908CDC1DDA194BFB89
+14D7E3D7D4D72A150FD6FFD8303E9DE5A97A71B808B8BDF2AE466F31BF5D7A4A
+44F81230BBE2B456A221E2F72A8B59F8FEA8D31F8A005A5BD93B9F49CFDC3DCC
+CE2B67090460F632271C7157BDC2F05BC2749FD562FC28682A616A52D1B67654
+DF78B7843A9EC26A7DE2EB168F874904C2915B97534B2D4D9F74A9573A771D34
+9F7BC855E8F794621BF6AD471BCC347E2DF5F620F5C209E33A4CBF1EA85AEA87
+4492A77342DD33EF615FF34037D660B713C908786D9022051B825226545827A3
+2AD1B05D654DB6E6D261B4E8AF0933AD1F0FCFC7201E1A7C1B4199F160C38676
+21ABA2DDF1CEB655B3EC3226E0B122976EEA998F7A5241F062E54AD1DFD6ED26
+47C99A439E0AE95415059179867CDD3F0FF751F3141309F40E00A6C7C28433E4
+F649BCD5DAA64177580E05C495EE7BCBCC5FBF104DAF360CC2711386655B26F9
+D349D887EEB32ADE595241560FD5924A1745A22E6A01DB9C285EF14596EBFF0F
+03F36EB2E0A7C3864F819EF7B0855121292D49482F046A55CD7271FE03F02EA5
+886864D9D8EC22A68C23089EAEFFF03DED6484D8C341861EF8B6FD3C5BDF5AC8
+352DA4E13A1E30D0CB71E090E9CFB9AB2CAFD0CA7C34AE7D8E3B2EB4666834BD
+9CCD1AC2108348AFEF6071796F4BB2FFA4A67ED917E76A109FA2DC2A30D744A0
+9AE653A748C1D18FB52595D84E87F1C1FB6B2F32667FE203262C66627AEFFED3
+92B23861E5EB238BB4EDCE09DAE1C65BAFC198CDD1B45D42CDF93E16BB82D35F
+821E9E49067E966AFAB2AB52928F8DD6359984071FC37AA652FB834A09E5BD93
+3AFAE161140E74C6531E413E8FBBFC42BFE8A464B71EB1D8CAA93B33D7BCC3B0
+47C7EEFCD3E9FCF26FF9441DD9BDE68D77AD7251C06BBB9A2103049E8827CAF0
+F26BEF33F656A690235DEEC623CC519AFA82DE2AE16FB99F780FD7D8290DA40B
+9B604AEF36B529FD184239E7D50561A07428D28E51B55546590A1AEAD4B7F2B1
+AB8C5B9022C1FA03E33F8F409B24911AB8BFCF6EF4A8E415263C789F89063E71
+C0910DC20347469380B7FC1EEB87D4CED7F4A361E58B61C91AFCABA35C03F978
+B9FB5257C31657EE48504C355CE893FE3C553274C641DBC4004F5D5B879CC5ED
+D3F21F867F6DF054127067DE86189F0B59A1B90FDABCDFEE61423609D888EEFD
+F4A1367129962110C651D9481CEDDB8C5C2576A59AED64E95F7ED042AEAE2F7E
+81AC0C408E593DC30DCAC334EDE9EE27D932B98F040DDCD195D6155607DD2038
+970EB78221A94C52BD4F0EAC65F1FC10E5DAA93C17266F351669CAE56F42B68C
+6D01E1EA03AE554D63CE76D800FDD9CFD89F80A241EAEFF7EDFA41794EA25CE7
+97BD5028464D2CD45B53834B4AEF8BF0B9E7C6ECDEACEC887E8790A47A93F668
+A9095E5FA1116A122C0E5B74E2226C654D3187C6CFD8807917820423DA3EC1DE
+AA020EEEF2280C44A15209EE2F3FC1776875308CEAD38571E7BF889F287E4594
+971A83605E0B4169D4A23EE790515223DF8724054EDAD905F57918FC0BC64F96
+514B4BF7DC9BA79E763C22C977FB6146B10D26FEA1BAA7BAF21312F78D1625A7
+8E242D743471DB5821408AB786E4A7EA9D35E30E85533C617689F95758FB2C7C
+392E759C299DCCE36689686DE0C4DCE32649493650BA194A6208C5EAB670B170
+3F2C70BF0EF0E3BE2FB0A79224FF4ECECD6BB3388C6D06867A0E5E3DB93C1B2F
+464C23E44D3132E7D4086E3B59B1D13F49EB4772DEDF8EDC4F603217233FB7BE
+C13C28648E9AA51D53F11FB896839F97AEDD8834BCA53CB0021AE91FD8E95E2E
+F8A094093AF556B9639F508A401542B06821FF9DE1A745FE9AC5CACD5E8E1053
+911442FC15CA5333751ABFE2C617D38FA1DC332BFEF44AE569DC631C93EC54D6
+261583A695F5A392867A57F59B741EFCD2DCFECBC55D1EA5F2317601C9DFE9ED
+D1EA466210FFA905A8F85BD58B98991BEA58DFD1CDED5C9B086D42CCE632DADA
+147941917B879139E016B0DDEB8446BA017FC8EE5A354533D667B0835F5D027D
+C2D580C16B80B3D05CC92C0465CAE077729F0A15B2DAFC89DCD349B3F81D0516
+C65526EB5C10E45A8A85D716EE35FB9AB201FD7C89ADE5AD925A174169DA20FB
+61E96C73A143DF964C20589EF24A0FCFE6195317F2FA0D2249C0D8E649C3D9AD
+FF13332EA2E4C9CD36D8443EC8F027B61CEF92C6A6B72DD4ACBACC16E429A9A3
+F5F29C1631360E32F8C1C93ACB22F810B86D2969A7480F486F62F8488BEEC74C
+2C1AF13BB92BC578E8CD30BEA6BC8CB68ED730F54CED0167605FA76AD7B7E88C
+7AE7688E598F91C471BD65A542E96D64B1EAF19FB4F1234308C48C2DC86E2193
+11ABDB4C6189C6F201627C693691A86DD07FF55C30FDB3F72381E09C6080FD7C
+9182762E5001E30F52A216E0B71E4D2D4E2F3B20F95DF3A11FDB2D2B5B5FAA66
+C46226D5E0C77066349770514E5675550FAC9394FB27CD2C2F974F1FD58C04A3
+1EF53A8AB3B2202CCA1CEFA66228E1480A0709436C44BD3319C40CF888AE4692
+5DBBB52B15CF3A518F627F672135A24D5DB9B2EBEF04C860AECF231EBB5A3BF5
+6DCCD5E72FE4B6DD29E896691868A7DE4120AD06AC573F5608B8449B38E71CA0
+EB5CDA3F942482EA7973661170F81DC88D54DD5B92323F46F833DFA757107E9E
+F62A47CC50FAA1B68ED535C3E0E1073532A05ED339C8D70B3B9864808ABACD23
+AA95E9FDA43D54C66A675FA074E0A5B8777D3C07850A09087F36852B5351F35D
+8BC4DDFCA35CF29CD5E3DE118A741FAC4DED36847F2E2C6CFE08669301722D94
+376F540982958074E7F1383C409652F6C99DA39FE90B38221E75BC1ECB93ABF6
+B00F410A0C5651DB418566AB350FDA1789AFD88286AF3BCB42B98386F7BC144B
+02DEB8940D20A6B3062F0C4244EABC50923390064F1D027A8BACC3DE45156E56
+4A942D1B87F1C4A76B0D4D6801AE792CCAE3009BF25368B31B6AD5476FBD3BFF
+9759EF463EF5E78E10B7BF64005B2ABE0E8813950A08A1808587A98E0021D0DD
+751AD515E8278F1A0759E85D8A084490BBB0F8206484AA36388B1013643D3198
+3509078847BDAE08E76FA5BF3E3A73C323CE093DCC148E3C02C2DE1E26C94D5A
+40EC8308ECB02FF7DD04EC1005A2A0DC74D4E587F10A3EF349E828F69FD38962
+2F0C74D5DAB3ED6CC9F97008ACCE74C086A503948DEF1AAF58FC8BEC703CD360
+D32098A56AC776B1BD08442052A2A4EF6C8798F7CDC102AF1A2009657254762A
+0793F79A39DCD6ADBAA5EC84A7ED6018BBE727E5D477893D84F157074B24C13E
+8D4881C7DF8ADC13EBA0D89745EF93B7616EC5355600BB0D2B630AABA3CF2946
+AFFD0B2B724EF0F28393F2034B2E69DA5061426805353EB4D80E20739BC4C510
+6C45275B8261DCBA10DE1D104B12F46ACD230977EE7D7D1D35D2814139E38C4B
+CA6937CCFA653349B1EF64A98457F7B4B5D8F2978F16ECCEF7054905863AA46E
+DD524CB33459220C71E9EFA7845A3A760A507B3D3ABC525B35930B613710A13D
+098832C58EBBC8B0CA6AD516E6385792C59220331D0922A1F6F838A8DE13C337
+900462F952EABBDC2EB1FBF94A66186C177501453CD3FE3582073DD86F04406B
+41B6AEB440DA475E13240445D46726A6D45185D56BAB8807CEC8A8F7CE1AD149
+7CE2E1BB5DE4E5B9592241DD136479A65905FD0062C91DFF7349874BFEA5D9EA
+2F610ADB9AE7757B2307A1BB9D6797D9F9C4844A59841C7C7682105E23A374BC
+A91885E7410F56F60C29AB8B417E2D6092F8BB70A2DD5DEDD4BA1077D7CC62FD
+EA43428C6F79C332342E15F75B08A1ED360B3511F823E75AD49BA7AE63B19238
+2AFE8FAC2715E2FDC895E95036D23127557837506A3B542B0E4651CE2B89C252
+31EE8ADC26E2C04E8E30A9CA12F066CE01953BE7867171FF6C7E834742C36C3B
+58E74E4B482CB85FD4D24DB03D753F260A585D552CDC9E1941446F2F5B45FF24
+2DA4932B973139F328E7E92828B900BFD398B6F41DAA0D6861C66AA7F5E3299C
+87A5925CE0E0F9E09AAE0792954A1F2C0AAA8288DEEFFE579E38A3CE8A943EB4
+55322A87C1634074EBEC25F724DC1BCC1BC10458CA6C4395659B0DB6B612C151
+557CC669D8DC37769E59A5AC6BF061C79FEE265DBB59520EB8FFEA273601D1E8
+2984B8AE31AE343F37D03E2BF97DC48AFE50BB6138C7B9F9B5E28672A37BD8F5
+8F8C98DC43DB22C6537028798198E2D3B0453ED72487267D653DD50F1BBBDA92
+833A987A95FC1F275B90B581B4BB62B6863A4CFAE37F715EDF3EA5A33679FEB6
+4847ABB4B3D170C275B9F1AC3156D731198DACE0B051674E85B758500AC9FBEE
+ECC75EBBD85F8D62AAA328FB09C6526F853077AEF7EFBFC2B6A29D6D508B1E19
+EAFA4C67EEE44045B9F15B9762B3DDF5CE5C18B23A5C2F73A1F6DF7F8679AB78
+843AA41FD2A7DC02B45B729EB76C66A89F5F76E5C4A0C0563B1EC5E75D72EE35
+A7F1FC89216B60D82F6F2B8DBE85E4FF4D63712C689E696F60B52AB622C2A4F9
+37C380775EDB72638D3F81F61D8D74C76D813DDFFF35ABD9A502F2BC7FF65754
+2A8660A5A53E0CDC2E8A95B6E33CA153EB711DC796D313C8183D707D3F0E3EE8
+BA65E0FCE3F1C07F3D93F77056688B5496AE35A6BA0B59619DE78640A8C3F7D9
+7DC5E94894E1E63A7D80600B945B1CCA50F1B85F57673C6CE09EFC4E229D4635
+48AB466118D273BAF7C1B52A067A88C00EBFA7FCB378F1575BC0145F294E6F7F
+8007602C6560476FA20BDB91831B22404DB1C4C167594B1216C25226D262FEC6
+F5D0DBAC4B8D743C669CFF2068CB9BCD2DAE8CD6EE1B33BBF7514C4E5EA79D46
+11AAEEA72B791C22A1822E686F3858E95A37D9CEF904EDEC7EBFB0E60995CF64
+57CF0EAAE6D4925126349DE06E101868BED82BB51E911852E6780772912570AF
+CD5690C6DA70110DD9903BAA3BAD581D206571D1E57712C75D112254C7A3DC8C
+892B66CA346EE682E7D910343C1CCD07465D9E49489839BEDA6174FB2E0DB935
+2D2CBA6B67ADDA1BAA6A51690A10C819692C9BD35BDC689F9DEFEA78BFE79C47
+C9CCFB3D04D20F1D3E0B73498FC0BDC50A3BA6DDB3FAB9458803BB26487C1397
+511717CA3493A7590E27B34C2E2E1BE2ED884CAFD5F7C185CD6EDA68951673D6
+384E6CD12944F86D178E73C8D78D9048A5B1E2FCB489E723F8178F842B362BC9
+F3E4D511B369670908B2C8087AA29F8B592B8AF7018311C0F12A8D45A3625096
+D4C88B19890571C60821F38310685F8DEE7A7A5D209265986F92AAF11143DC85
+F435BC210621851001B6A402E3A07D0F204A3B0D75DA3CD7FF6637D1F434B962
+F404DB3C6BC318EF517AA0836A975C5196976250B5D6B21DF528FB47181F5279
+E1EEBBA0F344D7EABE71904B5C1DB0FD07694C469085D50DF4990E294334E785
+5E5BCC4ADCD38685147CE535B23F3027AAC01A0D65AC751D9CA289B4A8906A64
+165427976FE6FD699442196B0C247C960C9086AB2E440885D11BDD314A3FFD40
+9C5FFF29B40110381ED22F58CA53CB2407E5B993930DE5E32CBC4CDB2FC46604
+AE51C1375F9A41D7B5CB2B2FA52F65CB925BDA5CE18BDCFC46933071789E3F20
+C08FC64F367F409C38279E5F88EDFBEE38105A2469CF009344F9E846419519E5
+8A5EC45DE2F6837C65A883C524305D18769A563691F5887D920CAA8EF0D9D56F
+F208395E7390570C6DBBE5AF515BF64478059F922068F0E473C020E54CEBF22D
+495D5E843839912C58FDE0A61D4E390E4502E9973562BCA49B3A17BCAC0352AE
+5C27DA44578C4FA5821B9A3B03FFAA97E15E83CE09AE155BE919EA42301E6195
+F59C0A9131C4089E97223BF614A37B5C7603190DD465105AD86DFEB74E65479B
+BBCEC9EF93508604339454483E244A348A78F29EC4A60554E77136749A4A74BE
+F4DE4955FFDB6AEEBE19705EA184605994D2A5284C05A479A33D56FF398DDF3C
+5B474F53743255BD5F42DADADD7F71BAC446A10084DE15876FF74765654405C3
+470144E2902EF213A594FB721D0B0FD823DAC347777B7AA58688EA834514299F
+75A3C80BCF2FD24D19650B7D2C21ED664D290EFB9122C125F5DE1B2C4A817905
+06C27E7188C9BF3965A6A25A5A9C0353A53D05BF64FD4C226837AF6D9599BE70
+04142CC78E03626BF10D68CE17C2D081B3A4248FF392E985A6946D89BE97AF1B
+C6BE7E9820405D06F5FFC06D6304028E5697E8AE15225A8FE19CDF3DFA2079A8
+BA537833DDBEB6106BAADD45E9ABD1C7B5157C5CB26F971B0E7EE8069E3C8FD4
+A7A1833B19CB43DE4E7497D505AE0B7BFEBB3E489315842DCB3D6CB7E6E43AEE
+E215D011B2854A3CEE5AADB34A9CB5AE595F2F02CC5CAEA9AB28161FD93F3FD5
+87D17D564939ED05A5055029D1AAAD21726C1AEFA777EFEDF8D687D9F2FCA607
+CE3B585E044A8CFFBD6E93849467378BAE5AB8C02615AA974546C3D7AD70AF26
+55C62A9C4EFE256B5303BBD0B9E13544F408F8AFD7265425BE1421FE6B1E41E3
+B6D9C509B4EB820507F2B41A92F93A584AF62987450095DCE78F9862284F0C53
+F46B02549CA9EA57C9C4CA8A0BC1EBE947AFE73B8F7958853BEAF81D78E23C25
+3BEB6EC3823E1DC7524E38CD63577795EC3DDE03027369957906C85A22F9D805
+2EBD287C2CAEE0D3985264AE614380E421EF23453A68F6E616B3191B506113AD
+F6D569E4A20D3B23961DFB3ECE07B382AFD2CCB1F2BC4F3C1974C06C8652682B
+EE7ED59D4B2F9EB8492FF978747AB12E123932B34C0F9F3335587C7B8B8E13A4
+0E1EE5212AB1671DD7A2AB5AF2373B60B3353C22FF8128198A5245F9C701B6E9
+80E92AB14A77AE7BA217D33ABDED222EEE9B5888AC6653459EA8738703FF7423
+8391380AF83E56A3BDFD3AD43F2F00E87DB9153D99A3B358A38313A7E6D6B43B
+07804A9928304B3EB654F7978C76EA1140DE21F581261F64F72DD3E4443EF2F9
+8D8A2B68384F317A3D3D674A493E2FD4B52873D906387E97911F85730051CB36
+28DFF8115D95E9066A4611246A8C37555F5E55960EF51F80BFBED7F92A5B8771
+2AE862AE94ADC2CD678738B999EC6C11530926AF3855292672C657A52819D15F
+646AC6BA0BC2004D39005351D53DD499D666A55B508AED6B69477B9761E2D229
+7C889C36033DBF3F8B43D2BEAF70768431EBDFD518333060C55DD3980B1E3C48
+8224F1619450CA198E6942076EEE81285FBB3C062791E063CB9D40570B5A3C9A
+AB2DC3552D0C5197433C3B4DFB31EA7538C61090F5D7962BB88FE8AE53800D8A
+CA1A0EB9DF7BFD70E1FD4E90686C26613B678419791AA936888316876534286C
+23AA95265E15492CD4A059DBC697908F1AC0443D74445257ADEBEC5D23472817
+A403FCA531CEFD99BDE099A5CF033D0C58DDAEEBC913AA97DE222019D49E4E39
+BAA0DC9F85DED250828098B562E549AC8539DA58D8C8247A0A000ECC0D355A02
+C750EBF77D4670DEE0B6D94D9C9278100C44CE1E4614FFDF550B03F44882F204
+E82C2F73E8EBF294DDEE10BFF014DB757A74ACAF6C77583C6CBE90131BB42AC7
+033AD78319D061D6FB9BEAFDE49A162A77DEEBDD0F4A7D92B18937F2C9BD997F
+D0C09E88B2696847080F955F153055DFC88508A483161F90C513AA673FD9C0B7
+A82C96FEAD4FC8CBD48B8606176328CCC23C38F930B02CC23DA8D9D3B241FA0B
+57CDC84AE69BB5F1F147065B11AD4DC8526C3C5D1A96E88911C283715062D02A
+AE1211A1F673F378237236BFD781255710835E9CC5317E4517E94A9DEB1C12EE
+8BAEDCB1B000D7BFA93AF4DDFE8C0ECBAC69271A1CC5CD0FCAF3E9B6FBA25F52
+E2BC8D70AD1DDBB11510E16269DBAF3ACE1526FEE212D0E21C4AA4221474C179
+9F387147835D501AA31BE514134E414CB3533739E6B46EAB31A09CDD9B3952A9
+C5C9A2082CEBB4E97F7035840A720B16EA43AE51BF523CE39CE63E92570A8ABA
+5F2340530E1E5CDF20045FF305F70CF69DF30449D2074920ABD17876E71C0E10
+5694F9FD0EFB234B6223B2CB6BEB86FA6FB55590198C0B4E5CD841F4221F64E8
+A2CD64F4936416D6090778FC774027692B44C4731E973F39529D7B879C10B9F4
+311CE06E3BA308D98B5F0FA1B67F5ADA006D99FCEC3842C57E3C2E8C7C201F82
+E8326163EB4DE30F4E63FB1FCA5AF541C79EB76D5F9900357ABCFA1BE4768205
+F1D4D2C9D54B1BCDC5108EB8C9F6732FA6C97E1ACC4A377B8C2D6A9071B528B5
+F842A94FBEC3DAED249F8D548EFE67630EAC5C94681B49CA87C3B45D17828EE3
+EAFC72C7E7DAD743BB6FCF4AD38B6DB4142D4EA23F4A30A94C801E7E74836426
+31873813FF9ED28D026242C3B7D68A8CC8EABF50A7DDF6C966B4BA17FCD494B5
+6F001621A6F693F6ED8F2C03469275D479832E22D9F933403E16B25660191D0A
+2A0544FD7ABAC0734933059E3A44167AB8991791690727A545117F72F7BC9E90
+DF5B3329A1A2F5D079693C448B0495A348B8F31AACC9AD8247CD43621B48CFE0
+D6959D5114EA53A24D885F5A03CDC1ACDDA45891B747F66FC07D8F0694CCE542
+24BCF8CDFAB5A1062A11E17D77FCAAECC7FEF85E25ACAC3E93F77F294029EA38
+9145669E8CC1914CDEA2F2C4ED969CC5C8C11FA492430AD3EE7C7DE073DE6CE0
+7D9BD486C6B77C361209E4C26BDB04D02D96EE75C09772522BDEA3195FCB2372
+29B167BB7C3CF0BB0FD5BB38071156DA3337A430F267A8C3DBC92E3CE5D8E689
+19C482B04E21874D2060E2240561B7737C95F9EA0D5F58291350F11201F05D90
+56EBCA27FF800F6965E26DF36361B7BA073966C8A1FAE17D5804E92CE947E695
+072C211BBD56F3C5B519129C9112A16E376A95001E23150E6B1F206ABC741035
+5112DB0E9387F2186957948624D0D50D9995321082A82DF379DDFC38EAB7BBD6
+69C3E14124B6C06D5D01253EBA966C774E7BD1D4B4CC80DB9EEF2097777E3FF4
+B3CC0C8C2305566EE9E1D12C73299F542CDE024C92AFC50AA69F7205BD4FC8E6
+0D344A8208C8D7ED445C34E82D0F969E2AA953832D094E69337091CA15E11B24
+BA6A4CCBB9CAD7242C9A6A655E55239AE8994D91FDFC1DF91745CAFBAFE4C587
+0464A72F9F117223A897D55658787F2125563B8B7040E4701950A02C8E1876A6
+1E7E963B053C3D22FE7714F6BCA2211F585DA40AD1352E95F5C5DC0A2E0BB205
+D62BAC7C49785C8B7106CC7ACD40CF106732E898E2F3A5AAA3279AA3E875DC58
+A2831CA10159E2D85E38D0C0C60AA7278AA042B74BB321203363B273B41C7D10
+92236116931326ECFD632CD34C59A3E36941508E544B4387AAE44B001FF0B401
+7A8120A9CCF897F7E1A0EC89F7AC6F9E18FFC46700CD67A1FE1162A3F3B7B59E
+2867D7F67AB1457A4B8C511542C0A5AA426263B11E5CF096DA591FECD734540C
+A9E34F311904D3C2DE5B2E86435924092C70AA2B8B3AEE950FDBC1E4C876A427
+BCF6319294CEC3A6CB7A5F2F60CAB90ACE7D002D10DFB6636DB1056726CE2891
+A41CC81794621788F0812B228A49E69345B58DCE7C50DB569ED3D26A9B6AB3E7
+F9324C86E336D84900FFE0D5AA3DAF902D519A818D0E1033C326D726939491D1
+809471D01420744A5072A7C79D9E58F882472A8A2DB6853D7DDEC80CD52B467D
+500F0B09033CEF13DA043CC579FBC6C23102F8B76034999AE268E893DF58D373
+297150A1BDF0C4148E62DD8EBB8989B660F14C89CF489886751E10A6D455A233
+F594F0FAE5216AE31A727DE008DEC0D709FC6B0209223481FCBBC971C701D2F7
+7EC4E1C51095EF407BB5E45E296C13B54957B43B2745C3BFE7B84EEDFAC60F87
+3F7B5E339758831CA697C11CCFA5C45CF59C90BE41F39A3EF52630FB6BCFC1A6
+9B1C50CD188D8CF285A40E11648FA0BF7E17291AB2398C889FC2D5C3CC78C6A2
+26B071B6D5F24D08A7E77B7B7470F8CB795C08A9D0F56495ED03334AD9E4D642
+EEAFC1EB175B8F2E0C72274793DE078EE7E819003CCF47C6A81E0E8901779640
+7EDE8172A90833A700B69D924836149AB1FC080FB4D81637EB97B37B5E7AC143
+43EBE65CA7BCD90FA7E9EE92A3BBEC9CB9B036BC0128C3986C226738270CA24D
+05C676BC05522D8BE97707DDEC642C26FB9E9DF5C420C9756BDEA6C0E32B6379
+56D684D57C41308C280DA1F87D62C780B847355855F8D86EA067EDB4AD9C33AE
+313D95D50D9BA129591895912714784A11251643A4F6902F31A129919A495A9C
+B6D0E875203A5DB0655F34F88B8A325D753C934D1A9810EDA53C63ABF2CB166A
+6805FE36232E748917CF3CCBD9AE81E39EC2BE2154A42F5D4A9A2758B9442B74
+63C0B3D2F48CC7E5A56D5D19454F73D4065A52CE1E981DC616F61DD3
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.0: CMMI10 003.002
+%%Title: CMMI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
+/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI10 def
+/FontBBox {-32 -250 1048 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 58 /period put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
+1EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
+7B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
+0D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
+EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
+404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
+78CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
+A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
+88BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
+C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
+BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
+98C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
+E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
+143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
+981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
+88A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
+4BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
+FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
+347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
+FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
+C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
+B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
+F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
+29F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
+36C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
+048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
+80814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
+9B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
+75ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
+4AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
+74616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
+D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
+E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
+EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
+543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
+710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
+EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
+7F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
+03CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
+01CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
+500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
+F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
+AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
+1EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
+85C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
+4DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
+6A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
+55809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
+085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
+BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
+2E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
+CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
+BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
+D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
+991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
+6BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
+E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
+E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
+B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
+4DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
+1DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
+B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
+8172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
+FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
+AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
+BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
+E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
+38944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
+7622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
+2A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
+DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
+22B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
+8D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
+44F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
+D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
+42926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
+C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
+0C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
+66579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
+E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
+6943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
+1854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
+B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
+897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
+EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
+A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
+F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
+A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
+2AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
+51779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
+598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
+87B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
+178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
+4B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
+7B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
+AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
+3DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
+337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
+C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
+DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
+7DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
+6F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
+98907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
+821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
+C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
+7D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
+B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
+A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
+23C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
+C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
+969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
+3A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
+9C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
+1976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
+B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
+95F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
+FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
+44AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
+FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
+E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
+633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
+6F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
+FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
+375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
+6CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
+EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
+E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
+F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
+DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
+D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
+D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
+9588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
+9F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
+B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
+D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
+8FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
+FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
+B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
+00D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
+909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
+5661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
+7F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
+BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
+C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
+BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
+BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
+4B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
+94B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
+F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
+E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
+92C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
+63553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
+CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
+B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
+5EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
+86F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
+AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
+3950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
+35F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
+155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
+AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
+E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
+226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
+9E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
+8B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
+919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
+A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
+9C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
+523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
+88D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
+2C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
+AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
+B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D916672480464F7E22
+CA6E431FE38D3FC019BDD229E064B72C545C61C6EA55984565CCA88ACB01F744
+3B4593CC8944C70F30925FB48A16342CC26D444F54CA15E5A624C4A2DAA2AEF8
+404145BBA339F2A2D6FC2F3ECE54387761CA1213C8D56FF96E37C6147CA44B84
+262EA87E7CC10D931E6B5B80D7F09813498497AA84ACB4AC69BC6C8481ED2953
+084F560D7B1CF90555E69BD2AF7C5D944E8E3506165014652462BE1BC81CA341
+E1B0725159D36DA0FFF3577D1DEBC5D91AE683FB0384
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI12
+%!PS-AdobeFont-1.0: CMMI12 003.002
+%%Title: CMMI12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
+/UniqueID get 5087386 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI12 def
+/FontBBox {-31 -250 1026 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI12.) readonly def
+/FullName (CMMI12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 58 /period put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBFE3573BF464E2BE
+882A715BE109B49A15C32F62CF5C10257E5EA12C24F72137EB63297C28625AC3
+2274038691582D6D75FE8F895A0813982793297E49CC9B54053BA2ABD429156A
+7FFCD7B19DAA44E2107720921B74185AE507AC33141819511A6AC20BC20FB541
+0B5AAEC5743673E9E39C1976D5E6EB4E4D8E2B31BEA302E5AF1B2FBCEC6D9E69
+987970648B9276232093695D55A806D87648B1749CB537E78BB08AA83A5001F7
+609CD1D17FFA1043EB3807AF0B596AF38C91A9675E2A53196FEF45849C95F7DC
+182A5EC0EC4435A8A4B6E1CDBF9A5AF457564EA72BF85228EB6FD244F2511F5A
+CA9B71A65D53CC06EF5F7EC3A85106139A4D312378BC22183C09A229577B793A
+1B7422611C03E84BF809F46C62CE52D3AE29CE01C32B202ACDAA5B72733EB0AE
+C31D7EF7BA88D2D14F85313F7A8B9B7A5B124B03AB923744D336C969E5CE304D
+3AD977A46664479EDEFB69F113024E761C05FA48A54072DF9E12C2F352ACB3E6
+D04F6EEFFDE209E7FA3DA22E5B1D1409461F4286B7F4F8251B44E5CB7805762E
+E129FF4A06A7458F3191926B1CAF70E32C6571AD2DC07C34FF62840896F4D200
+761B1A7FA356526D1E3AB4C542AF13623BAEB9F61B1BEEF79A9205B1FEFDAE24
+8799D516A9ACC30BC0139C63C9A0523E9D5439213B67D490C96F902958779B8F
+68BD8E9FDDCE8A3A2E35877DB6C94B7612382ED8F218EB1157D2ADD090A2448D
+10B99FBC9211C5629ED1C61C74FE93041E5AA03EA4AC3FFDA00C2B6E719CFAA4
+262FE17F66804A6B54D3669836EE4367D2A2991580C5564463C973CA0DA38AC6
+922716E13B4A807B50304B8826CEFEAA47C305FC07EB2AF25FA7945797237B16
+56CDE17AB0834F5C97E0CC5741B061C6FF3A8DD1A79B9A173B66A6A750538E26
+32FBC92E75BA15CFFE22A7302F47908547007402569158F62C29BA2956534FEA
+7DACF1E507AC309DAE8C325F2A6023D2FBD81EF42146BFCE6A16A6310A650460
+7B07BB7647C8760FADDF0DBBCD3DA6CC4645D1732DB3A22D8B76E1D2D48E4D4A
+46F4BEB80CE65F3517283A1AE08391FD1C10ED452133706BC6725AABC80107FD
+754A8BA47B0281D479F052CE26A723EFFACB79B213041A536542AB334769A2BF
+88505D82C498ABDD5A73EB539530F47CAC52825D16A969C8BB56D4A7F2830B8F
+CB63B92B576E7BD922A4B25E634751F8A3B7C4EBAFCB373EDC8B8281B1D1371A
+7844E9AD990CFF09F0D7ED73A5CF873D2D5C9E8A9923CFA31E1A4B4CCCC40760
+8B3AC8FC3C88BC08BD7407725281BB879A1A822D94997826418F1B89D303F2C0
+BE7A0102E6F529630CBF1BC5BF3E4578C164A3DDE45E62A957EF3FB7F0FBBA6B
+CA1E79A1ED195B6A11CFB345B663C5E72FA55D80476F604F6C4257B51686AE25
+8F7D159FE605DDA0AC74BAA5034F29FFFD403070013C6E2D8EF6A0990D91173B
+D5A3AEB98B64E412991505C3CB7C2CDE13C091FEB3DFBCAF30C4C19511102300
+135BD5D444BB55692013F52056908DFAB2ABFACE81A58423ACEC59344CEF7D4A
+C5A3EFFFFF70759BC3E593D878281225060B97D1BEE6B26EED90571FEAFA1812
+1115C0EEC892F5DE6FDD68321A0B3F10A2D771B79BD85476AF6018472A499A86
+07D64CFF4550866AFE590C471C80EB12CB3A989A60BC7BED39097C12D9286E39
+14C7952C4C64820B4DE44A1827B7B0B535244E93FDB80036D6332F90F95B472D
+7031E7E3819E881BD0313CFA112EB3AAE943C99C47635CCA7E34DC0306C04E5D
+2E9F60FF037EB11602BE74E8E6B711392E866E3E55D988F7C856417A2B9C186D
+639819B4786D039B77F8578EF63C088FF28BD08D8353031445C8498A8F445BC3
+D08923D32AC04BF3CAFEFCCC1E77EA894F4E846F47EF62D6841B8D8576FEAE8F
+90044626869D04D61D64D56E8C51AF8C18D6CC3FEF3B6C4F7D56FE3260354948
+10104F69B117FB8269292579A7D52FED688C663B643D8D99F13956612271073E
+1A337AED059B7A93819A28CDF01569CBEB51069D22ADAE25C47355560F402B2E
+8C9900DA82B79C64497C8494F42FABE5AC41791C2010D98FB7E593C744F250DC
+D837DB0EAA4F75D0016970F3AE8359878A08CF9A697A06C5EA945819151265B9
+1A12122B98F79185DF852257BB4798E7DC03712EA6ED34F6E6AE1476788DBC33
+9229FADB8D581BE1A63F596698DBD6DB98A092F67197A4FD4A50B648F2691875
+EE2495D6BB310078F516785A0CEC7EB6E8305FDBAEB1D15690409FE32DD9CFAE
+DBD3866FB63EBCAAB73E3E4BE5D7F3AA44793938AAF3F8341683F0790F1D46A3
+60CE083F9BEDDA22E0639A92393960F86602216FA51E2754BC2F4CD0BDECE3D8
+FFAB7E0E49613DD4956C9A10AEA798BDA1F756C755BEC12147ADECAB0FB73B7D
+203A11D84DD2AB5AA98FD38C1C2573570FD49A4924A94A106D2A7D850E793608
+FB135853E8C4204441CDBE697FD0CB330B1C3596F32D2BCBF263237EAB362D09
+DA6F531B40384DC91F30674760CA7B64BA1968F6A7FC9EBEF431A1AFC5E76D7F
+2D44DCB7F61C7F6B16196B3E8B47343F572DBA8B8B21B43E35BB6B2DD5C7982D
+244FD4304D254D6CCB5E8CF70E77F50812F41A988EEB3B26BF0F6F69BBA18077
+31134B5A5823D10FEF6201D045AEE7A24E0F25376E9FC66340C56C05F6CD810B
+724D85CC4BB8D789834A447CBBA159565D08BA5793D8599035BB5063271518E8
+F6C50E7DCE71B1D186270DDC860C6DC0CD506010EB5B1FDF6BE47A9A18CC15D7
+D657E58BED9EECAD5CE5D49F63139A39BC52C6584BB2C3264D51BD584B40F8EA
+AFCD8B83F548594386EB2B05CE803105E84931DC6E7A1398073D48E130E0D907
+CD0F1ECC3254EDF5D4DDBF44415DC9BA66C673820CDB0FDF033D59BE2B5EFCEF
+01FF9D33EDC88F8D522E07F1689D024DBCD09A16A63519E1764C8630FF36058D
+CFC07027E0ECDA01E0E85B166C613B22F587B4D355EB018BA93E92A36007B4DA
+287FF5A91F7D8A0EDF5554ACCF45AC8066E88865C5692E63EB99CAC81367B605
+8E6C19EB98EBFE0D2D161B447B9A70CDD1122C7B78A413369016E6D8481E2AE9
+9AA97B5DD0ACC9B0820F7742CEB2F46F89F3E2092621969A88DC0156B4F941A1
+6BF1546D4B136657C47B082A8A35FE96016BAF3D9679B8C32EDDD6AE6DF3BFB5
+7854074FA019707FC22BFA82299E72ADF9A980AE29A8E2434277E58B01F6B03C
+192E1E25DADD49F6E3F69799AE62B56E00B60A031BF8721DB8B2CB6D4A4C15CA
+AB1FDE010AB7DC0DDED977389B101B8E53A949222FAA126656E02817DD32B0D4
+A49516CEC2B97EA7C78FD66229B044EB92F502384BCC6CCDFFF995EABE3BB7A9
+50D5D1AED861E7D3BA8D333026C673C5762712E763E59261426044583D789C67
+A606B96F97663F92BF104CE02FBFDFC521EC0D6670B7D4F85A229F51426DE912
+3B729C4A535FB7C88D0A5E78074751B58885DD6BDD2DD9E9C83F105E8CF63DDF
+CA7DB39D0319CA7CC2E73F42747F007574DE25AE1538B4D493D22D0D5F0F80C6
+5F6FA3937C8391DE2F0116F81DB2DB0EF751EC838A7F85F163A6F48804E84B96
+8D715EF25B7E2A5CAECC558D80F421052A1D698F3B8452AC27E30A4E6226E3CE
+084C8A83ADA0818A110923CF7AC7AD4CB92AE4ABBE0A9EC1FF935FD02774C1F7
+92A278E513012AD17722A23C55EF82E18F8847B5CCE47F4FE3EC508BA563F7B2
+AE56C94285A18DED4D432FB0CEFC05A20BC17DDF9FF919C724810A8ED7358A27
+97EC93C1A13C443A91947FE1F6F528EA7B628917FA7E554A1D7B31ED46C5ABCF
+92BA57961C8876DB4041305EBB029B03D8351D5E2819FF87E97ED214D8F1CEF5
+7F7668DDE223721C0B810F4A4AC81CA4EAC86EAE546E1B15D91E626FB9A31824
+5BFF17C4E79FD56ADBF6DBF01BAF6453A81EBDCB38A5FC0FD0FF0646B3B0D199
+13E2E59A1B5CAB6DE5329BE389BA0E2A2AB55CA40B711ED746C24F1E48892E76
+6DACF7DA163CDC90CF076763008E7A899870CDED5A80758E6177BE6B93B07EB1
+5800A3BF7B9AAC3FA825CE594EF5B7546B181375FA8F37608DF17856D2F8EBD5
+6030A9E6F6BEAF224AD2AEF76D03B023E2FCB922CB8E3C6816AABB61FE6E4F83
+F21B4935102C860ECA03DBEFCA461F0E5B93E5A8D18440BCF7D1D6252A24CB6E
+A64FDAC8B67C4888519AA368D9C4A8C08C7155DF5BACD75C5196C571C3C456C4
+7CE8D90215FA6EE8CDD72C48740F7F5930EC3632DB63A9C8D2DA125088C0F05A
+9FC83D16B7F53163F4EB6FF372C6C3115F1E68EB35967D11126EDEDF0BF80817
+E68A698183B3EB0A207DB43786E1B9D289359D75AD5E465328CAA90E712C2962
+AE2A466173F2FF30EB535A6054BB0B875DC8552C16B49DF17CF84D98D35497BD
+F55E273FCBB0C735899529A69990E09149FBD2DDE64B7FA8D50AE83925DF03C8
+0B63EA158FBABB12A028803DA4B9DD6C48C0FEC469C4E730729F4BB420D5B003
+1918B4AE9CF35CFD31E8E62A44C0484E3D00143BF1D330235E821E5CFEAB4D31
+7CB4604DB1F310457FCF9075A3527279644D908DE847CCD00B6F50DBDEF91D3E
+38238CAF550FDCABA2C3A46237218DCC5A09AFAF69997E1EBDA7EFE6FC99ECC8
+5D4AFD5EE35FE2346BE79B499EC8EC436868154A947D13BC02C780EBA4B9E64F
+3026F1BF5DC1F8D64FEA1281EA40B4BC355638A3A59BD9055BCBB232FA45EA0B
+B405131B64F105814019BC55466EE78E9E9ABB62DB30EA452F7EFD7196C76A85
+15B2CFCD89922CADC0F392B0C54A231F3999AEFB53C24EB0C63B0C8A1A1ABB6B
+AAB2F93E5ECC7AB90EADA320E918106BAAFC1F8C425C617639984629018BA674
+6FF4F338AC43E23BC3740542911C058D43A49A11CB3A0CC8E3088BB5BA6048D6
+CC2AD250DE956BFBE83BB24C945C20D9C22E7105983F284EF478F9B68BFB0322
+EEB7D62802CBAAEFF1C2332159DCC7243EA40CE15C734EA905E04C476B178B82
+A08ABCB0B86A7330C75E62EE7844C9E22DDB013ADDF20AFE08122EE1B930A81D
+806A0F8CC584CB7FF5F56F9B35E5FF78FD93E7E4A40C64537464EAA275FE88F4
+461FC6A467C8A69B9A9FBC10D44AC1B753D313A8E7D97F5FAEB60F82855658D1
+4DCEE043C8FCDFD8A29DD091F3BA55874A458B2B8989F35055C72FC411382361
+9AADC717E602B48D7C9521D3971A6F7EB19D539445DDE9EFBC5B58FA9E5E426C
+172C45CDA24985FC4632287FC3B15849DEB56F5A061993AB10A6BC59868534E6
+69888175053108B77E4978D971B4EC57224C0F93EEA4C15AE92254140A94704E
+ED5666FC06C5341F643F779CC88A9E81891565C63B6F7F6286E664F4E0A48690
+356DC96F1B98026C563700772485B83BFA06435D4E0793EF822F423C93FBACA0
+E5D889D2B76771C6F0EE997A5DB43C2F6921132890406E3C33F6F159B14C5D78
+7C151BDFFDD02B697315F191B5490073EB418A4FF2A398C68D44F0CD1B87CF9C
+B52F12728B72F94D752D23151196A256908135C87991E508B8906CE2539DCA8A
+31F86809C8C6C18A09F6129BD7CDC6B37E76B648788056851F22BD3E3B5772FF
+EC01D822B57FFDB3BAE624F05531292641FD6A7E3666152D18F6C653048DD7D7
+98A942C840C4A0FA662F260B21C64214152BB86F03662A330109C5AC0A5EBA30
+C6201F558858130703DF76AF4FBBEE069BDE45C0D9467077D85FFED4F9BA9C61
+AED87D67CDCA453A6528AC5BA153E1039D9CCC556CEA5CBB542265FF54A1B208
+E0E13740E7E7C26AA00AEE909F8F3ADC2726081A744D8EF6BB711BF5F611A900
+76F91C26A338DA13A7160A9F42410CCEB3190000D963D036FDA05A29F598EF40
+8FAE6F8E7E6F50C99C3304A573501C13A00023085F057DF331E3354CBE65D573
+CAE73BF15B3B96B502E0AAF2B4A86237E98A997AAEFFF4227D5A26E8972C48E7
+761F430733E6EF8AB2D903C17FAFBFA21C25F8A0AC157D397BF3CC1AE7598F0A
+2BE4FB46B29443CE57F41FD5F91122E9D86F903E94D5B55E2BB95949C156D138
+89883BEFD634311F9280C7F028DCA6408D3A682DF5B55B9F7ABF08F019190F60
+D39E4F0E80F0594235B09A5320109638B938633A2C196E4ED2B43DCD8643C3CF
+C6123B076B7F73352F906D96FDE0FBF50CCCA432712C574D5857838BAC30B485
+D25024EB254A7EFE57D1DF0892C275CDB3DF77602F0FED0FAEBC644BCACA04B8
+B424DB125E487794CAB36E01B5E1A26F5E1E97A739AA36D77A12F5B45338EB39
+AF36CEBDED55DCBFCF497FD475FC6BAB5530AD6153C6BD982564EE8712185F1F
+D5EA7ADF4104661168A01994C1FD773A50C8AD6A3E4D332E4D59521BB8BBC6C3
+866EB4AC3EA4532477E6CBF6BBF0860031C3B916AA25E3492670EA67F55CF4FD
+207C684A0DDB6F4AD21B2909CBA71BCE2E762012B0927BA72367A6AE0AF87F73
+756C9BC85E4EDE35317E2CCCD138C02C7A8013AFDC1A48C3A4BB8EF257BDEEA7
+60E012F54D12D31D18DC59D5E526F12567B8688B4B67E16B56713870300016BD
+A3B9DA87FDC865246AF8E94316799110D86B1DDADB8A673402D4226C519C058A
+1D1E5A5778584FC28AF12819B1924060BC4F54B1054EA6AB0149E04B8C4302D4
+A56D8A347EB5D3D2A0E12CF7E35059BDB53D9FF6BD25F6D9619BC4669CFC1048
+C6C9978B8751B840F27D82A69075832BE59F55C1737CBB1220FB8FF691FDBDF3
+03BD7D225A9372AC221C38245E48320E1CCF898D9EEDD678E5B8C65B7F588321
+1A3953EEB9B39EA9A8CB72DB08C3E9234DFFF5FDF9DF804C021D57E97DA7622B
+97F4CB6E0EB640E0DC9EA15C5193F92A3A7565F4C7A4C9CC327F7CD2C44900AE
+D9E76FFE62FC37FA376E77131B566AE67C3E09DA80F198BBB995EE8FA47EEDB8
+4B467C6C7DB8AEA745CF8C56B8BE56534E9C56FCB2B7006426DFE93D728FA4CF
+94F131C549814E54ECE7C914C5FE8E4961D3437CE7475D03534B62650F551D97
+201C794AA877445DBEB11C85ADF6119B05360700F8CEDE4766E3A1D7A35CDDC7
+9ABF7C619E3868A39D1852DBE1EEAF5D7898C78323873AC005542B68C43C5000
+CC58F675EB595F87C879694751494676465891E8A897158B481F11A171CCBBD7
+29603F00210CFD7FF31FE3D273933ECC34AFBCC4108D9B76D9ECE63EA06CF939
+4799092A54A749DACB82C1424E9879672C8BC084C360014C9C1B6D5D65C68AED
+66CE329C3AD712C0A36BE7EF03FDF339CAA2E0336D387A693B1DFAB5D5164E31
+14755A158168962C9B399F8F1DF3FF5060D7464D5071058C30C572A2BC7DEE53
+84BD7614A4BEC4C84E18CF7EC81C811724463BD46CECA5FB57B0F55EAE20CC74
+6AD815D1897B037C197D2456797B992C20C70B663BF99FE28C513B4E221C8E12
+49779F8C0AE8517048ADDF7CDF0D698E3EFE60071C4997B7F5EF12B6CB65390C
+224F13FBB99FFC034C0710F05019899689B6D3350BBA65C7CE7C2AB03D81B9A5
+5F3D65E4D462DAB189006669F7390A78A1B8908A4C913B15DB8827DFF15BB9A4
+A6037DDB643103B937257A7DAB025F09D53FBBC2BCB6B0BCD8D56B2B2784E498
+1F6CF8470DCC892AD0CFE11578718948BABF9C1427084643B66BB9181094E29D
+5FBE37708E1D8A6B7518A96876844CB66954227A7A6AF28DD075A462526DD5D6
+40EECC56FA366106E55C7068997B54B7F0D03AC1AD45D28C67C7ECA99DBEDB1C
+E18A79C353113E2E05B837E703278B202112B1C69E42A69D64B62F0E7D8F7E5B
+C1F93F0F99EC20EF312046F4B0CD7DAB31E422070B629A7FA96583CF3F1519CD
+CF08806F40ACD7BB5C960F21E9DA7FB3C72CBA0801ADE83DF738A4EC94F2977D
+2B95A166BA4AE28CAD1E37FBBF49D342CDB4DF615E2C5F3076313AC517C350DE
+710F5D52DE31DF69864D29DABF14234DF13904BA4333B0D714EEA55CDD79DE45
+FF5D64259C877191547076B1C7684CD252C0337BD9DF66CDC5DBAA4F3102F2E8
+FE48385C55727B80D11F3BE0B7568AA9356FB2B180A6B1392D620DED02F0B736
+5F4399FB9D32DFBC8ED942AD311C82250DA8BFE98D65
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSY10
+%!PS-AdobeFont-1.0: CMSY10 003.002
+%%Title: CMSY10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
+/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY10 def
+/FontBBox {-29 -960 1116 775 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
+/FullName (CMSY10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /minus put
+dup 13 /circlecopyrt put
+dup 15 /bullet put
+dup 33 /arrowright put
+dup 55 /mapsto put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
+3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
+91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
+E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
+11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
+C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
+D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
+B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
+93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
+10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
+7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
+B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
+491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
+F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
+019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
+915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
+356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
+5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
+9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
+3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
+FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
+720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
+D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
+BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
+7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
+DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
+AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
+A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
+0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
+AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
+CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
+0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
+5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
+5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
+E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
+54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
+E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
+A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
+4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
+4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
+038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
+B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
+5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
+B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
+A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
+2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
+CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
+455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
+FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
+16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
+16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
+483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
+67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
+3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
+1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
+93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
+051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
+8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
+8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
+6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
+06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
+84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
+D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
+DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
+0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
+8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
+C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
+754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
+1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
+CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
+1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
+153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
+905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
+617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
+8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
+98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
+53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
+888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
+052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
+CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
+A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
+07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
+B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
+10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
+CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
+3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
+D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
+849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
+648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
+84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
+2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
+2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
+9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
+B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
+D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
+135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
+EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
+C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
+7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
+4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
+9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
+050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
+3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
+C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
+843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
+CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
+B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
+3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
+19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
+FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
+17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
+8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
+CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
+F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
+1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
+4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
+2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
+9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
+E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
+8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
+BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
+04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
+C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
+ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
+4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
+84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
+C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
+09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
+D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
+56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
+035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
+FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
+CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
+B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
+F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
+CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
+0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
+B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
+33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
+4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
+F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
+2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
+CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
+88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
+17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
+55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
+A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
+2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
+406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
+AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
+60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
+C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
+5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
+822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
+94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
+D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
+343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
+894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
+DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
+DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
+8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
+A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
+DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
+E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
+DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
+4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
+5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
+02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
+88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70B15A0
+657F5ED27D204449A841ED19E01432CFFE928E921321113780D036D34F2797DE
+D4459CFD15BB117B5C9745EF3CD2B296D91FAD48C80B136D94476967E255F808
+AD2B5D522ADEC64176833756510391815A1D4A8DA1D0AEE7CAD36A1D161889F2
+3347D5B6BC503300FDDD48F594F391D5FB42C42113C538E707C16EE24A3F375E
+7C506E8F49CE50FF9DEF3B4A4C1BEB3848EAA3477349833BA22D2A9012287D8B
+A8C4CB4307A1188ACC0E6E9338E1559BE5FAFF381BD82A6C71C267409468B3C0
+2C1A29F4281D565836EAE57F680490FEA4A952FF64C8CD11C377C294DCD1EC25
+CEFB2B6DCE959D0208F85B6E32E9B44FD455F9B134A5306D95EA29F37BB8B86D
+9E592159338E1293F449380E13C21AE42E6D6952083BFD432F72DFB7B6F9257F
+5784C683A6E9ACD72334E0EA8060A81E14EE32300055040E24B49810DFA1468D
+A962DE1D1AEE09B49109257898F155A63A83D514996DCD2F96BC0F52796267DD
+DA6229F5E9024F78B02154C27EFDB9B6E09B131C9E9E4DB41A0FAEDD93A05512
+A919AC8869C09FC929682B51174D816B85DADE28C00F6391429BA98327848AA8
+C52FEFEBB2296BB78F06BC1950A8E0405EDBA2D8C51F1F607E73F5A2173E5469
+BEB7918844D450B652DCFBC4C0D0C4AC2AD678B7165AA8F053B717C1D417ECF2
+3A2909E864E503059135C05EA8F7CF185DA45CE17FA40B4076ABDD8B167B6F02
+3C8962F09CE07257495ECE5357F755C48E49F4385DB5CE4FBACA3AD4D18E39B8
+F7057F4BF581ED26ADAEE218CE130B0CCCA0C7B273E51D7F314F53EC8EC84100
+8292750A37A4D4551A5C2A65D2382DB0941409D83FE1005752BAD1980307F153
+BD7C92FC12AEBC7C04839FD7F01BC85F0880DB22FE524204FB924445B6B3DF6E
+1B657353086539BF4E60909524FFC4CCFBC8E0139F65F53ACF3EEC572C673CD0
+64AB1C29253049B26888A322E0FFCF7DF8871F701CAF5BE7B509E090C43B4755
+B100C929D5A8A4B9646E8EB39F2E705006AD23EEC58E0E1CD0C18A346D8ED66B
+D0D2E215F637D25EC4F05C449FF8E25250211635C9D5121EE0D51E712B7A8699
+19E96ED8451ECBE97A7197337C65CCB44FA2522EF6735BFB60CD053EFAC10381
+C70053C2DB3B6DB8DAD720DA6DA25069131FD9759EC2182D1B649AE67FE4181D
+B223BA15F5FEB0BBA498F9993F6A9C8DB9088DFACF064ECCB56FC4951EC8F9
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSL10
+%!PS-AdobeFont-1.0: CMSL10 003.002
+%%Title: CMSL10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
+/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSL10 def
+/FontBBox {-62 -250 1123 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
+/FullName (CMSL10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 14 /ffi put
+dup 33 /exclam put
+dup 36 /dollar put
+dup 45 /hyphen put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
+DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
+7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
+C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
+25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
+7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
+299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
+80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
+5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
+8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
+5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
+F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
+966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
+A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
+9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
+A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
+94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
+DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
+E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
+5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
+8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
+155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
+4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
+44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
+8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
+04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
+A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
+F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
+111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
+8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
+567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
+C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
+C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
+51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
+66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
+9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
+2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
+4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
+5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
+0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
+233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
+BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
+62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
+B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
+DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
+C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
+CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
+38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
+FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
+303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
+8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
+8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
+C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
+9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
+4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
+03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
+93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
+91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
+FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
+06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
+95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
+9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
+7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
+6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
+5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
+3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
+CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
+797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
+DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
+CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
+8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
+04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
+78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
+730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
+021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
+CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
+90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
+97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
+F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
+4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
+40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
+3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
+362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
+DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
+7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
+04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
+DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
+C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
+B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
+9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
+3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
+D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
+B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
+74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
+44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
+A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
+3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
+BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
+01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
+6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
+DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
+CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
+683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
+87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
+550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
+2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
+17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
+3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
+F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
+B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
+1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
+61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
+124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
+ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
+0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
+D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
+F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
+BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
+75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
+8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
+B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
+7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
+F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
+F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
+322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
+523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
+6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
+66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
+B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
+5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
+093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
+B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
+6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
+EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
+A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
+8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
+144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
+7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
+172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
+254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
+5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
+011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
+B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
+0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
+3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
+E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
+993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
+0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
+18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
+ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
+CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
+1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
+A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
+6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
+BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
+DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
+1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
+93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
+E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
+4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
+F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
+4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
+361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
+95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
+AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
+50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
+88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
+AB7916D44EC2210CB941B1455867E510E9D8A0B83CB645BCABDCDBFCD51A4E12
+60CFFEF0CCA548F654037D01CD631FC4E1F97B4F65DA9AE79D99F13A726E93DC
+BBB027B7D175FD17A704C4668F6F8428262959DACA9F8C687C923CFA053804C9
+9B2005FA7E0F07D81E52A9A37AD5CEBA8EA63929093ED0DAB9F7C99C82A50E6C
+6440387049A0C359218F5268C9A28F581783BB9D29E08772D7252FAFA6739687
+22570150178893C418531769CB3D96F799BF1C6415820F96B6EFAB5344E82796
+38A0DF66609F5EA332C1065274EC93027D264B84B52AA8AD82E13E2A41AED340
+B240D1888CB89FBB748FD10B214773D466A44AA2AF44371CA8B9A4450DA76EDC
+0167B4015A270B9983B89EFFA023A3DFFDE181B90C51D70557B08444263B84F8
+A2A807C55D74265931B553F6D7F132B110DDDD3361BC9563803C888B89881DD5
+09E1A623957F074F5B3644BB3F93D7F96770C73499AC0AFC3D7157EA08BF9D15
+DA7739FAB528A8BC30C0EA7899A3193CB9E8EB51EF67DF4F97D36005EC228B30
+E54D14471A6ADD6DFC0A9E182436B4C197CB675C37F29D0404846AE086C2A5A8
+DA576BD98FD5245F1F19D20D265FE8A6C29571864BDADF555E0516D49EE5FC67
+CD278CA322575D75BC18E682A112F3EA978790C6FB0202939323D9D520F768F4
+EE5DEFFFB37D802D896E4E6943986006BAED87780F3B9D967B2FC8DC44A4A529
+2103A5C8E05BFF06517D8851AE4EDE73EBF32875A148CF6CEA6D4AE03DD1328F
+651158122376528BB9826C2DD8D7E79847902DAA002E452D12A8F8356C363FDF
+76C5969E2CD60336F300EB511BE4B7F1F5585DA7C6FBF995DB71B8CF22C0B458
+B6ACE92E0215C34849D8EFC56C9052A3924B628DF69B0435810BA49EDFA03E52
+CCE470EC571986F64D294E0DB056C9E509C81AC64E65BF1E2C17024BC8ED4352
+636CA39A3937DC3800FCCB1F77969154EFE9A7091ABE21970887F6898A281500
+7ABAA2EDD1A825E36155689AEBF310C63BBA08FB3C7414C49F445AEC145A06AF
+E6FDB6A30B367DA1BF73AAEB9C503D23CAC63D77AF39A9AAB1C1FD22BEFB8F1A
+0E50F612DF0A30B5984E18950261544B3AF01D1E839CEE5D093AF2E3567278BC
+0D91A5301CE5FFC6ED8B9C38A11BB939EE48C37F2DE47E9BB52195BF1FC46E1F
+FDA886B899401F144E4B32438F28CDDD418CB529CE8379771A0DE13E584BC354
+2E26FBC8D9BB1B1F92BC0300CA7046145698EF64A6540A468603092D633E8B2C
+2F2F688ECC7F457BB6FC2F075F87EA556B5837E3632E993C79D08414E033C21B
+F6238CC12034BDDAAE28A09A9CAAE51667A3AE782A92BF7F4A89A37731426D6C
+FF47EFDB75BD2D462A79F9E55EB522FC6F5C6713775142D2FE1038D2D49FAC19
+39A26862AE2859DC5065C1565EF8C249D95D501A8C53F659CBDF3B0AFFF1A4BC
+5BE2E54A2BCC84402D4EABBA36CFB9932CBE589476A9335F509ED972724004ED
+289D44141EB8D3B63494CF9AAF357A2EE23B857DD0B1A0BBEB207039C30AB085
+28BC18F13B235F1B8C2881C0B581226D1230E7FAFB5652A728B50B5EC6AACA19
+26587B0CF2AD14DD7CD690373D166C1B9FEFDEB345C2023994F2755F34333FD0
+241342CB4CB78E98A798FA200F3BEBD3B1B8FB26F68A32D4970CC1BDF7880416
+EA7F68EEA9EDCBAAE75E762362127A9888D470EEE54D9103433F623924FE361B
+6C0B370C8906FE9727A8F249D1B4291ECCA02BCB0BAF9A785CBF4C9451321F45
+775970916DFC43E0C2FFBDB9194DE54EA990B1CBAB06C5567F4E6DA7EBDD7028
+A475FCF7506BB8B3CA785233225544C87F74D792571FF09B3F6599B3F1111750
+201DE0AA6472939D049C2D674F91508A19809E82D0BA3ED2EEB76916543B8A19
+D758901E5999F8348E74D24A8FC602B7D16F986401C0463C2FADDF67F3FB2C1F
+E08CBF9F753023701A1C9860135284C5CF30E5262C5408D6FCBCA90F14B9EDCA
+7E15F68419A3A1842CF2F988F6E77057873007FC22A2575EE9FCF9B80682E944
+83C776E6F32ACD52BCD48CA90E2D5C31088F646E6A81D27BF7FECD78CD81B2CC
+755155CDF0F1B951A3EC59012FF66E005CD4EA1F160C721CCA6C156957124C03
+0708EF85B90556AE357E27BBE9A6F9283D5B50F4C286D961B61C87F85DBFA44D
+2F9C0D008334B4E2B2C4E6E461EAC86699E8EB8FFB216DC850ACEA016674CCD8
+BF7827FA6FA3D167C6980D6ECC7FB70BD5668DB9AA8BC2013900C693B2890A3E
+5B86A27556DADEF2870ED87EA2EECA8DD0C1E1F58A7CFDF7AF3CDADCE2FE6D8E
+9CDD02887120032EE541A73150BBF388AF868841C2C5EE9598D78A10414A8599
+2D936D5A9E83CA777D35563263ABFF48D283CD76B3F88FBB8F41278BD2E88B20
+2D950635AED81014E46E425434214BF56AEA935150DBB8F2C673DE93EA9C5A22
+E1D305798D85CA7A11F194E47F74F2658DA990E6CFD068F1426650F59269B269
+D2BCBC24A4973EC99EF1C30DDF20F6F383807A59B615E20A05B75582B82520D5
+E1B9B5B145C49F70009C1BD507F895382F82807CBB53E303CEB5C1F693ED6315
+A545E313B6130A9197FF31062F81F623FBD6E4D5B9534412265A8BC7BCC76B6F
+AFE43079E82D77B54EAA36B21CFC2AE1E6AF5D19952E8E339507EB7A7A2D4578
+0724DB516F848EE099885D861A399E72D738395F4DC3E857BACF340C6D6E549C
+79820E43D624F35FADC643944906B7154837693057F2F19A638FD68C246A5BEF
+49363D787DCCA6C9A3FEAF0023FEC63F88F8998FCEE527957ECBF03B9556B68E
+F7BE8C04FBD8CCDDC4DBA0A628D157DE2D1C752B07A9FD9442D6A423E4522630
+133D1094AE3C72FE88E50F13E2ABB0181E41C3C77F30E94190A66A4A110B7A90
+E0896CC9350E9ED01A2CA395851BFDD8A5711D8004E8C79FE8C1E98BAC0BD985
+A7FCE6A92077E0CB291A0F7AB5CC6C30B8CA7CE2B39B374E531A38C5CCB37C3C
+91726D52D98E98A8908FFB91BDC68D30AA8A636C9788E6594AD2F176A9AAEE16
+EA3F249B42FC47A95BC492E52504C184B114389BE0909E827AFE2A33A1F61C95
+593102EC2AA44BEDF477FD2BD876C6F15F612BB8A2B3F6EE46676F36FA1B3BFD
+1C48379F8E92A5EBD064758BFCFF2C1E9B908DCF51ED2FCA8E07A5578BA7BE6D
+9C9FCF5FD25AAE03135B453279FAECE868B55C9D46C008AF8CC68B460C75D1E2
+D6F1F82FABD77EC7DD17FA21E207CB7EB7DBFF1FC61A36135E0A024FE527D4E4
+80C7E92B8A61D52A1C753BCFEEB2460B10AA8A72A76C87ED59600BA7D0ECB249
+65AEEB86F31AE0BA4D0E05FFDCE431884AC5FB9C8D149A1E421F82BE02E46E44
+240B53E7CABE9055C483981031E866C7231CC096AD7DA409FBD0EF0583AFF0C0
+88C7893082CC45C35D0CB712CC92A5156B98191A600FCD6B9ACDDBF31DF29BF4
+AAB4425E9D7C3C21D1F6E2505039DC84F2C7194A2CFBDF296D0FC08055E562E2
+123237E095F8A338BBBB0D4CE5A23BC1F722DC2D3457A6A95565420AEF16E07F
+E78B81E5C0AD05259E6393893FB8536AB9C151875B3B085827622F485626C2B4
+C731C01E3ED08DD36C6DF477736C14C8B319F0B0D29B9D251E40AE9EEA341C56
+59684AA49DD1F293F3E54DD332CEA090A45010A29F978FD4F7F9B8B85437527E
+0A17E7A5A03BD0D7ED518FD95353C931F84BD2B9CD6D4A0D6CCEC055850D5265
+856D9ABE52C7261B1CC637F5546B5476277908562F07E45BA586676A68798F94
+BBEA8AAF33B903912A65E9800B108E8463F90484747EB6E236071EC765D0B7C2
+D2B53047E8BDCB3C720AAAA41EA294178C2061710E8E5788F640C389935B0DA2
+B4C2615B956BEA859332D01DF2ACEAE7B939B68FB214621C5099CDCE43B63343
+6E51F0EFE835CC2B864DB358D8123DE4B50C49C1C16087A99FC427128A78891D
+9821CD5330FD6D2D990028C42B968DF91C7545E5AD2ED35C2AEC94828E85B1AD
+A18B0B1E347DA38E0076EB8ABA028E97424E3C902FE65E0FD8275E371DE741AC
+9AABA09E2BB7DC781758A6973C7B5548E2659727AEA2141DC14AE1110D24F25A
+D58CCBF9FE7C432D015150FB9197A4B2AA739B773289998FA15E8110959FD0D1
+30EA7B2AFA731E411A68B6F7963A3637BDC24002651F9FD67E8B7327C41A145A
+A18BD7284A293F0BFDC4CC7F04AC310B6B3DAABB50B67FA45B8973959D84832B
+11F27A2C5F2C0F9D328EF826D56A18DB5681D55784E3786A9C37B31DDEEE9E5D
+51FFE1C4B23D716CF95FAA7FEFDAD7675C4BF94B5E7C5BDE9166D5793BA50E6F
+C89AF166A3B12DFFCE61980C0D90C29776BF27FA7B16C14786C7DB3B04533AB3
+ADF781FB5E0A865E373CB52A1EB8D19F1A50DD3635D48313B3CD35CE6E55E0CE
+39D75C50C6FFEBE7737FECED33F77228DDC38679988807A42D4120CE1D1E1C00
+206788347219F6CF84FDC75641B6E918E9A12124CE9806FBA2972ADFA13AB2DB
+9C1FCCB6ED1C3C67448CB296FDFAB129F502CCEF4F06B5BE9640D9257CEF91B5
+9EE85B290F46109FCC2DF46F924BA1A5A841E78C9A7773C2F39C02CA14841EA4
+B002ED8F79827A85F158790AE542AB87B62ED40300C5F78B9D6B66DC1ED48C22
+1DFD400817D1197A4B82A87ADD3D469CA228B5D0DED28EAC563C3C77C7A564AF
+46193EB6A759EA60C670D7B6AA51DCFF9B93F8C920671BFAF1D7649504B80CAB
+C0C0C2800E3D9D42AA21498C7B8814A88D0A0C7FAB92F6D2B1A77539969B8F7A
+9E388660CCFF786522E3EF9A6B1A6A1CE0E5E540B6FBA177A37ECBAB0C4A498C
+6121EDD8874C465500279EF36D44F16F1C0E8E39F9780D8FB382FB99A606AB49
+A6497AF68BE879707C949F6B52223F577CBD6D55B16416465A2A18F30F321B53
+F86B6B4E4A8EA02D39E6AAC2EFC9E848E20BE60FF60DBB4B1F42D7158CD1C878
+EB878137575F3409CCEEF60008B8E5F2EC7262106299A2440EC668BD640B9B70
+C89AEE5E76B6C61A77CD81717DD17330385A1CA549BB232A8E7DE7B9E6AF8D25
+EDD53753C11D779F01E1F6CF64BD611DBC17CB4A9A3EB586BC51B0B9CB944678
+9D224BFD2F6BF275455A4ABD904D7018A00F9C3FBF4B06E52D62F201F870F53F
+0BFD9D906116A375102AF114E4866FB7876C405E4B12A764E1D2B16E52C2D454
+BB3E0658D12C847274BA1E561C6D953FFE020C4D21609754B7EA3728197C3F12
+C06B2AC1FA2FBF315B86CFF65ADAD5C9DB29818B47888B2F1942DE87908769E2
+F7B46935FF7B966F86417B5B59F68A2C9E0D54BAA2F7115C520A51666A24A17C
+945DA6E9E6A64FC800C0B13625C59B205EBC203962690C6467A588CE8BB5C73F
+C9F33559A153FF3AA8DB074626F22288F91DDF87512C86885C0CE6C2A634D51E
+74D1F255FCBE3F21D4ECA36B55B2704518C48AF9825683DFF3D7195AD31CE104
+7B81AC823A3F96575A87511D88F4BE86880C255960D5C6F8F6667FB4E91BDD1C
+189FFBFD488D6E0966EEE480B02D8D0ACB6434A69B0C165F3C2BAB407F108E55
+434F6D70C0D1D9E5F7EE1F1A955B2F1443E945C86F20F124ABFDC516D1D5C7A6
+0D265EA3DE933CB95CBD095AE5248CD7A019DC1B8E0CB17AC89EB720E10A07B1
+CE057341EC034E1F67F4C10A981860ADA5D9175D276EDD89526CF90A8B2A5B30
+720D30C059BB45974AA5FC3DACF45B6E0DC37C94DC04B73DE1682149EC449235
+AF23622F2B08551824A1608CE6CCDBF2B9DD243193B67E60C33ED2DA8DF74032
+08A047143DDC307C848CCC58FF9F49D7AD7D0D150E0DDC93ED7248BC4B7914B8
+814D3F203F42BEF94BE753B1F1F928272077C685985604245C1F2882736E52DA
+A24D4A438F7A8B6DECE1F2EC46E57E2501B301D1557063494E2E10A9F2DDAD5A
+4D77795A5085AFF300F89F4A18FC1671FE8D212A4D45B7BB75A9280DD9B4384C
+B1978B239702E4D41E963C93AE5F9D49D811D1580DF3F23BBE42A42B1116E177
+6E45D530ED3C60A097284C8CEB81F3892713030BF4306E3B03516F40BACC8CB7
+41CF6D5830F3373AAFEF24D890B199468D4FDCDA31DE44B5E0BD6088A899CA32
+78BF14F27023A4F43EA2AF37E19DB03974D146768A7AB7F78674C87C5B45EFBC
+DCEE7224DA2A09ABA73F289CBC2C2A8A038CB4998BE859A02491C236BCC01455
+F233CEAA8BD1FB734A16965E3535592E1C99FF1D4040FBFF10D67CEAF472A14B
+F47B062A156A5EE99400E110B12E28D7C3CC78C6A226B071DA7741338673A1CB
+AE8791EB72C96EF04395AA310C6FD72CD3D35AD5717B0A103DABB1E05162E352
+F5135940DDAA514B7C80DEFA7B462AC20575FFC8ADC2D692CB8E17BB403CDEA8
+51919D22000D71358A0941335B0BBDF97B17BE572219A048178D416F03C23FF4
+DD54A7E33A782608544AD9855A88B2BEC481E88F030FB1897FE724BB133CBC58
+CD2E1AB3D37A10D68B193B0A2B6D0290E7AC666202E54EF54050AEE1BD93F17C
+B7DFF6A4637E99573C13C83B5ED1B655B177832CD7D2269A1A049685EB9D967E
+725F9AA675D4F2AA894910C8282423CC21A76331F7B440B2DF17064F2CC315E2
+7171069DFF4FFBD2CD712DBA0318D0ADF26B74F69379632B62D9E5A84FA3963B
+FFAEC76D8595DAFCC582DE1D0298471CA74A0FC705A6113C8E450EBC3A7255CC
+616BC14CB460AC4CC4F133AAE02A6190B138A537FED28402C323967DE2CF9C16
+34D125235B611067411F4027282031D7C0018F2D1C2EA3E84ED19FE1FC897453
+EEC1984F610345D0E9B116C2452222876A85D70333F8C09E6625C56534050F3C
+67EA3EBCBD1701C8CBF0290A29F1DA9CC4031F9A1D031B0F46407FF674AC3461
+972BB99309342CFD823E2DD3D709B7A6D6B5A14627719A64566A194DD7D6B235
+BC431470D3ABF9F77C835298A94BD7504666111A77392EBDAF12EA6D151EB066
+79BF397C1A3688A92E8FA79DB5612849541CB32FF7D147CB3E80C67DCB827C41
+D152106CE160DA98B98B87CE52DA32E503A24A56A3D9CA5297AF041E7EECE5B1
+3C968705D7EF6CF9835F6F06AB24F35FAF950DB4BFE055B83BFCF139F0F36972
+627C50DC7345D8F0F2A96587A65D6A4DE4B871FBAC063645A69BC962D8CF6E97
+66D3E3DD5FD66CB36F0E88F515A20A9B744EC99EDE47C52D59973E04CB8B841A
+CD30925511E03316325363142BE60C05788A3D885AA056B4BCD3EF0CBA0F1E12
+FE691408B1199EE36F8AFEBA63222D6BE82401C4F92AB8399B7FB8468A7E367C
+5812897F5132D94AED7ED5E6B6D1BA9885921A26F4C3C0C74A8DE00A6CEDB86F
+BBCB4B870E512656BD06C8973CEB1C4491D72CF275E73FACB0EF188F5363FEB7
+60289B08B9188CA4BEECFCC1E7784EC4DC6A6D09270CC03493B12594C2A58940
+93E3D21BF4595B03AA66AA345A6DE2984CE6BF84E6C688BB9F63700B19E7E022
+3BEF869DF341F35204BBE57858C84E4F34EAE1A4EB2C572EEF95FDB7CF9C4096
+E1E315D289DB185F3D9C9DAF29C595FAE8A1189C61F18027BA7D020FBC437A52
+D732B1A2C01604D5A0ADCC4C03B7B132227A959D467538C450A7EB3FAAFE54F2
+B53512AA39D1B7EBEEAA695194B133AB002A5255ECB9C77371BA5BB96F07FD58
+29F170806E338E089F561675AA48691A25BFF36262972E0E25FD426EB859B49C
+9AF25DAD09D04239F0AB99560DD9438EC917F7D818BDD643E9C13049D4A7F4BA
+53ADC2F80C81B7D65C1B387A64CE36AB962CB9E16A2400EEA520168F2D2FFD95
+CC9CE4463307FD600BE92F3821F8B134CD943780BE11C75F6F941BD45E17E58E
+9826A5324FF33F5BE169E929C5C81ACA441A0E129EC0B03B208BC8F3F5D4DAC4
+8AAAA06FEF0ED5C64A633573EBA28F6D60ADD0E0617C6AC7A7E2DF9AC13F3E84
+B21DA463242695C6D1E5E477FDC4F44486A0DD5057DEBDE9F30805E69A95AB38
+F071CF69216E8B97B7C34027F02BF8F8DFC40AFF393947675609620795904E62
+CCD878C6BFE822CCD362F84215BA3E432C8A1D735764E6B94C8DEC547080E71E
+89B0330112912B6EE92ED907CD40671AB2439EC7164EFF0F6946EC3BC2FB8EBF
+C63173E727D0B5F39F90DE255EABEB9B651869B73CE96D12DF72D4FC9A1B2089
+229D78CDF2747D4D220AF37FC53FAFDBA8B59351F03DDAE5D8E384CA3C4F4EE9
+72661D9C0EBEAEACF659BBFD9FEE1EBDBACFBA58EB3D09D45DBF64E0684A4F0E
+8A4012ECF46C8EDC6D2A78FBFC0E270B25649869BF367654434740C9ACAEFB94
+C7245A96C497197F0C193261AD1B8C5E42DF36FCDB9346E36443DC25948EC853
+CFC83CEA22F542A850490688497CAC46912BDF9282194E26D21A8DFBBFA1B7E9
+7FB5F1C7AA0ADD56635852EC046B7AE2A1899C76FF2628E90E0E1B211DA41E53
+CF84CF171CDA201D2DEDDA1796B5C1AA566C09E9DAC7AB344D76BF15CFBFDA77
+09C57A65ECCED62AFE178B332DE685E89C5CE758BEFA961497C813624530F2BF
+04F22C4F60B3500FE8B79B2CCA30DEEBB39E1F62126C36A298B17BF6279D60A3
+4DECF56B9AFA112E0EE4902607265E0E2F0054A78C5613CC0A2B2C34C6986917
+BDE26EF41EE3B2DF98D842543807D09755592FC7BF83DCF9E68CEA9CE3FFB01A
+A75B0D707E94E5127B40909AFD7DA2D680D59B7F0E61023318D5A07F8D56720D
+2ECE0817DDF8FCE62CBF322B0A5B6E943A909200BF2B6085D30A98349C1AB963
+FC42E5DD2E97E251D18A840FDDF6F6842AEE8CD572A98FD9E3B919947CEE9CA6
+1B14E47992DB97A5F953C6B699BB97ED06012B33FF6D94F3EAF783B38240B657
+517AFD4522F3346E9D9F8A70B094F54E2527E85D9773C1370C3F899F11A61A61
+C3536C5140E72BB9F810F52CA5971F46F68652058D5871C78DAAED58E712F103
+991727F4D7F49FE30DAFC3A9AE78BBD5DEAED16CE4742EFE9249CE0B4D4CD0C2
+6ABB4C30E85A5886F590B9F444DACFB3E4B68BCC76F36684E9CE60DF5B2236B3
+5621DC80EA9DD3EE4F16465B801B33D4CE128B9C6A82CE08560B72C1B5291BCF
+358A2A1EEF0FA209FC7168B3B661E3E40FB3D30E2E08B4604F4300EDDC4E11E6
+B479570F9B02BD42DF120D18E77911AB884BF326B7142646962C80F0BB5C3C12
+2E3880EAB34105F292036EA0A88839AF654B5BC9704D53B3EF7629C046BB5379
+C094EF8FEB5FB5565E86A3762E057AD3837CBA0F536EA7057C84EB868C498722
+2AA001D636CCC2F3A72B193591CC6B1C3354838F4C245BA4BB9A4BBC613262F3
+FA6FBC748C8FACA17B135E49AB960DB6872C615875D5985C899F2D656CAC3EA3
+62E4053EE049631EA48B97BFE9B53062491D4C2ACA65AE744590C5EDDAC78F57
+1040D9442EB10927FAC2024FC24B2FF9ABA44A8701585DDFDFAEB432696138B4
+FE9939888A40CE6287299BFDAC91175953C7F38020C332467B704135E8644868
+42B6FCA4DDC9AC04CD32EE5C3C9B45B6893372F9498CF5C19651414A61F6A2A2
+13568EC8CEB032718C17E0E5C1C1D2876724532FB2FBFEBE179470F22B15CC09
+E9E6A22C5C1F8CB7F05CBAEC0EEB8873BC1B56FFC529437E57DF1B040ED1EC6B
+4BA14ADE52B503E4FE18296F0036760BC6ECF1044A15DFFC81EB7C11AED5F6FE
+DB81B37D82BD82724F1B77C840E41524CF1589388686FFC21C05394D848824CB
+4762A5ABE288644ACB5D973671B664B6F68104F2E7F93392EA076F819EA58EB2
+95F750BFC9D53EA8E1703EE20B43AD610FCB7784B4738ADE4C33458185D3640B
+DC0B3B5503EEDBC99E1C45B9ABDE7D779F8C7838F2B21C4398EF3C4D567FF21A
+E427A40E22F1E5DBF380B83DE726AA60FF43270D8E920B320F89E787C41274E5
+8DD0B2D4A2A1105A63B413215C98839CEBDA6194F9EF46837198DAF734775FB0
+C763B9B4162B93735ECB20B7C16D379521DC6A80209052A20EB8ADD1A00EFB4C
+CF393C91A9D4F2D63800116992D2FF10DC312BCDAB3D59A6E21C53F840A84D52
+15076DA66068631349169BA98940872612831C1E70650F6B56D6BE0CA3F75C27
+AB9C03BB10CD06F73AA955E59C9CEA09D04D49230778E065B691E693F287F0B5
+B59924424E61166BABEB8D01317F050F54BEAA5901B9D0B4798F9EAEF69D0209
+03B8E7799D4803392EBC7439891C10A669299CED3DF9AA0AAA8FB43B4F998D24
+43E93ECB1909A6DB6232069DBB017ADE281F5AF5812D74C09B28FD373249634F
+D74F3571B232049A1C2BF2AADEAB5DD550D8CA32F065CDB5A1FE05CB7CDD78B0
+7653F8373028D46D763D6B29F5ABCADD76212A375956C60FE89664F9B34FDD74
+45B9F8B6C30C5F79A2E95B6E334E5E572312183E77033C18B958B986A9CF82F6
+74ED57F1E160BBD3FD80F7BD9D17C6F289F76B87D5D8B1287F8F242B6808A8FD
+61E612E92370437378888C1D7036AACA20B8C81CE15A5FF5D927EB390A72BB73
+A55CABD8F077AD7FBAF38E3B51E2F9F73915320C0017A4AC1A7D00E2054D153F
+4BA820292C7169ED744BA9BE3A8C94495B7D022D813676CB59D95C549948ED15
+70D44B4145ABA9E9236D9608C0DFF2701A32E2787C0E8046DEFE46352F48D2D9
+54A29EDFF73AF590FB45665433EAE72EF04C4DCEB7653881ABC7BDB3A1F3C2AD
+C329FAD88C32EB5F8B33AA189A568FBD35C16B71CE8482A7B64DB55C86F8239F
+98933FC55FA21BA995C80716D22649A7AF709E358160CB5FF0324FFA4643223B
+EC275C2474DF68C574C9B18BCC9CDADE1937754FCE03062EF6F3CB90DB7A79D6
+339F7B8EB3B63685FCC0756BAED7DB4AFC9BAF17DE8E8836CB5DF8FCAF71B91E
+9B20B2B142E136CD6CB672268FF521EC5EFA6E56988E5FCA6F75FF15C6D5AD84
+82F4DEC84DEE67FBE91258DE2AA3D94DB48A7DF859E1C6A502DE1B9917C41E61
+E6A3C9F82997081E93439562FCFED61B664266C3A66B5AD73005844ABEF97EFB
+BB37992257469285B3EC714C9E7D30CBDB1E834602DD7205CC2ABB19DB3D1E9E
+5D6AA8AC9919845F826FB91EC327318FB1EABD8B905FA0BF9972EBE6F9E15822
+D6C47A35535BFA4DA0551BF2464F51649F6BF77E71A9806EA733CF96CB30FAF1
+7CB0677EECEF8142F3A59C751653C378D84C458B920F9BBF7BC108B6BE76B74E
+6490BAB904CBB88A7E0A3D503B98A9D116DB6850B617BEF14DB927DAFC53A189
+095B31448CF73AD25F25BDB75ADC18342FD1BF1227F53AF69D31C5E0B2D5264F
+EE7320D06761AE8EA0F0929768A77E87D800AD2B118EE10572D29BF71973BE61
+A348B2FAFF76F58ECF1A47AFDB4BC8951C5AFE7946323D5413CB292A56876EA6
+7A4E35C3D39A74EA7E138EE15D3B2678D91E38D94CF8D8B91766855CDE05F613
+D16873814293488AB11A7F0DE7EB574349A807595E652DB17713E59DFC1D98C4
+D65186BB1D6EF8B2648211FD4F38988E48A5CAF1B27CDB0BE437D558B669434A
+9CC69F4E6EB94B697EF4238DD92EA780E3F5CF75E34E18CDD17AD1E1C6B2AC7E
+50040C583D33E7A82C338BCA54F1693B4432C3C452E1F657A27BDFAA83CA6CC7
+2E890A145A2ADBF33C3567BC056FFD49D6976AFFE64D92235219FBC8A3C92B38
+E21B6D0C1A8EC5B6992475CED740DA6E8C853F8E443D9765B1F438B2E1106DE9
+542FA489DD082EE09FA5FDFB3648D6506B377D209406A9657E8C436F5E307899
+E02769D9D67CD58E6D2CB22A6D526B516BAB38B1C733596A102B82406A0886C1
+5D476584F0F6418055372B3C6002EAB0AC8AF380A6978669E78C2C57407CBF86
+4AB437DF85C25F59AE98FBF834C78C39B007A51A697A88C561E484E93599C72B
+BB562C7250B59329B8D1F7F4B4AB2476875E0AF3714CD6E4E7973703CB501E27
+A6A311F10B9F0BFBC1E0BEBB4C89CC994AC0E4D2EDBCBBB962D31A343FC331E9
+073233ACAB6886E2DC0367C7CC2992369645B296413C03D27BAF418C4363E582
+3FB2DA273C1042F3085F7F9F4FCAE40F351418EB5A898BA998F384E1932C5E46
+CF173F2A9786817045A1E08737D8F1C0B9A6133D0086FB96343E1EDB50739601
+1B7903BA0454745C2E9C081691D196C6D04BBFF988EF3FD5669E0EA141D48B2E
+B86009F1E4627BAE2C5791146FAFE1E91FED3CD8152EC28938B42392D8D3BAF7
+DF3683840CA5F4305E986230139D77D15AB1182A5DFBB3F2036586AD40D1D36F
+D49BE7ED69F75DBD3BEEEBAFBA28B0559149BEC6475301CE35E37D72A1BF55DC
+30C23CF987046E64D284D0DC3D09411CDA75C4C5C7868C2206E4A7998908BBA5
+1F522F266369DD5F9286B0864D45A01EBC7B1D8CDD1B8D34E723F36F682F2179
+F4D406621C2FAA6E554EC7C09DA5BE8527FD957392C9716F050C7942A629A9EE
+9A4897B6C15E8DD63D0DE0F7CF826D76124ED6DE77F6064A01502E1304C55049
+1FF9AA67092FBF18145D8027F518B10F9710760A6CBA733F0C1B64ADAF5BC527
+4C24B6B3A684DD13171751B4C437F32AAD123454214F4B2CC7629B54E5BB40CD
+93431C21EF4960852DE0735B223111FB1CF9854BB704EA64A5E258895195214C
+C6AEAE8B127B62C3E6EB8B9D23621B02C430E8DB93C03895D567226715E694D1
+48A2674E6512FCB553700A947CCDC6AE3847258D2E33A9A89E7F8BC93F44A621
+30F0E10E2A27EF0EBB15F6D12E8D95D9886280CCCC35DD78128470BDEFBEC5C5
+AADF6CC0C5D21FA4E2C207E25400CCD1D9F9FD6ECDBB1426ED4DD76366AAF04A
+D99225CA931C49227431B5ACFE00F965AD2A232CCEF1A25919E75914D253E58D
+44D02EE0D669608AF1911716895A40E582633F2DA096A0E918F68874766439A4
+C250EBE7F3E6949C02FE6B403B7F11643EB352FD0EDABB005FFD6A6398CD1AE0
+C8809EC535E6BD855A001364D6E9A4DBEA39E2C79B6C9AC0405502FCCC58FD16
+1BBE3EDEE443B184B5B6ECE6A965E7492D0D1698406DBB171A9B681BCBB74B08
+AB64BEFFEF8BED8D9233739929D07AE6D639529DB2ECD8CF90EF164194019467
+EB38DB6748D4760D097463B3173CA931CEA327AB3C74E228C0FCB0330251D499
+A9D4FBABD24E1E696AC6A63716BC620A42FAEBC720359452A7D9810907577EA0
+636BC1A5309AD52A5D0630B3FA14FE23F968D3A105EFE033CD1DC39C8E9D1D9E
+B0A0AD022C5D6A819218A7A31C95FC9633FBF852591441EEE8A03A1C68E67315
+CC66ECDB8A6D22DF313C5B3A21A0CB079080571F9070D2D2F87504E5D1E678BC
+C16A00EB2FDEFC760AF97982FD1795A2563CA69DC5F7BE7D6473C24B2676C511
+81105B3118D0E3BED89612AA3E441BE3D0F1698CF987891FFF04E20A1EA40228
+12953BE70E0621829E0DF6B9C369F34977E3340768C1B1124CDCD1694D3B64F7
+E81E95BD54B025CAAEDB75EC864BCC78723D0F48978744F0BF8419A55D35E273
+67D916F3E28F5A06630BBBEE1339CE5601738FB4FA8044D9561F484AB58E4702
+6061613EFBA708D398CCDDA3E15EA4A82DF5E91E9D5ABC00DF191AD6521F427A
+51208AE8E9D193F280C8083BE0EFBD75E0C33F398E59F318E6C193A7503A4732
+F9E11E8DDB511230BBAADA494CDE66C55B18C04170C247C84101A351C5CF1BED
+A8E1B4268B511B0438FC14FFE363DCB276D4689564D743D0C35EAE0E711C7A80
+ABA0D520949819C273BAE91A300550ACBC30AAD247F2B13922D2F343FE137C89
+E06644B88A3E028556AAD5D25883E61063AC1300A803DE78B28E7292B5738665
+360B72A19266842D48E68314526512E4D938C64D636FD87E3C3401D528D0FAD8
+B198DD4BBCD6FC518106F210C725178C7B084F39DFBF49007B012BA73F11F0A2
+FC8C5084A79ABD0C176C08357070672A1238B9000AE85B00D363926BA430224E
+EF247211757471C59755A710BFCE3E953D679A175AE6D1B0AD8EDA26984898EB
+BCF0190FFCD38ADF3F2210CFB9E40805D795389781A154ADF379005BB8EFD6DA
+EC676B8921D15EBA849557BEDEE27EC680FD2FB92453683899ECE7EC916A9C8D
+279BC3E6BC789AB0DAD27F68FB8FFB2C0C4FAE9BA8BA8BCC60406A67D3F8D44A
+3ADDDB77EFE9840B6A2F97BE6CA43512E91F1A5F1381D91A28C5CA612DEBDA0C
+0975398C316ADCF7E1B9FC19D2781D8862BAD0DD63553601A589446811D850A4
+7A5EE9DC3BDE8DBA90307EB406572CBA608A874FF2CCB28D43DEE85E29717E20
+D93B5A3727EE3957F03DD83AA7EAFD41479699D983CE2D5DA023B95FD3A51E70
+E0571FAC0B7475177A11405714BB1567BF1F8D9CA2C8A97110E824DA2217DB17
+06F148EA959F791B16899375DC1D9228EA2482DD7AA22B6155BCF232732DBB61
+65A2D565487A303798FCF9E41541E3430ABEBA47F456CE1A122A662A392C7892
+C3D6D36DD99040B3CEC1786B03B46A58F0F5BA6B6B9E6CC3606F05D396AAA768
+7D4CBEA2400C1B0134D72D1FD173316B5C96DF8EA36A61BB73ADE9EAE53DE5C3
+C1526D9F0F8E1CDB1D0077047FE0D37DB3D9BBAD7AFB720F533BFB50EC001C82
+59C8559A0132EC46B57F00B52BB55800FEC1D94278EF2D366E9A36B45F36DB1C
+8E476730CBCD0C4C16D338021FEE54FBD6B272196FD03159E57FF281DCDCDB53
+D67032ED477C0BAEC4BFD0708C0E527E6B849A7D12C434F970AC1B59A24F6DC2
+D252A1DF140AE17DE96263A66A91498CB5FAA64F9274E38F100CDC46420B8956
+1398D0BA55B26340B4885176992B50A0A1B52897D28CF346DED35BF49A35D82C
+923AE3807CA5ED589DD3D44445B4A9A38D7AB80190FD3D8CD06228237EB849B6
+7F229DF0CA44DC2562FB572937B9EF41593DA9E048271C177BACD692F5AE7F23
+A192387094CA82EDC627A4EC87E3D38C43C54F156F6E4E76F0BA6808D8939C15
+2D7441B265E800E5897FA43AF8F31DEAB3F504703F47DDFE8443005E8A2013D4
+3DD9930928B091E0F68601B71F9C3766D3807322C0C78E70731FD700A7580098
+D7E95A706EC6AD11FDA3A6C32B31171DFF4BEAF84FA3FF9055E97B302E39E9FF
+0C9C26A029EF0C17EA6173DEB3BFC8CFA190EC377A2C9E3361C212E0D6FE6B18
+190D70089E81E176D6627104FC9A25452BDF80B1E811A38F9AD3B08AAF5CC871
+EA34DA1C26361917ED6086F36F44B9CCD55E415F678871035A69E6F03E3320E1
+7181C1E00DF9863075226B6DDCCEB01A1E2014972D9D540F871E14170EC7492D
+F6602AF3F7BAE9B56484EED9B1FB10D9A472BF9A42B4A5A20E34480740F88EB6
+6C0712F211D8768AE1138F17F4BD46D49784D5267E42876C50BF165A04C036D7
+14C17E5E0ABE870BE2605234B378764BA7D62A90EA13A89872CE0BFDEA89BE4F
+00A006945A3095F26E89C32660D3F8E72897FB733D5879521E8C2C4E8A88FBCF
+E4B8ED5AFE948A097354F21566C09D4AE09D1D42D3210AF5A256E6E8E8FF9F6B
+F3695BF0CC12D06C0B6587C08D2FD03D6EE510AF09CE83DDF5D5DB328E36CD5A
+CD3FDB378F9FD85DC7ED303E13E0D045BB89464DB81B6FB5E90B9C189C69B7DE
+63D26B5ED513A021978B16B961C284A9316FB879382446215EDED65A3B53E4AC
+6E257AA871CC8FA0C4E7B5CDB20049C8CFE11AA1131C41C3E06CD50F5F943B68
+F7FBE41F4EF6A8D0F730804E7D5F83F5C07F5D74E7F9B862F9A9910FEA396AF2
+9FBF78DB85A44E01A2814721A2B3018A811C3A5525541CF2EC43EE6977BE6B94
+8EB93A9B201033EF1F579D96E230C2620D00B2019E1E931B473C18FB13ED752C
+3594AE05FBFE782E42F86323F1A3379799608111171BBEC2FC881EFF28DFE535
+D673AA5F6585A18628939AF3DFA6E1AC0D1B99D2EE76CEDF684FC2CBFE5F9B70
+3D5169903AECF35F70C6DB08E79FBCD59B022C1F0B9C4C8A056273FAA158B6DA
+2ED09E1AAA97B9F503B3FDDFBBD678B60E8854272962B5C3E22E4E349DE6B6AB
+3DF9C4972FB6C76E7C299F581EE84B2EA5968B17011E397F1CCDEF068F094892
+C6C84942127235EC69585BDB0E29EEEDE588D05A6C649A5B86647D6500090F91
+5D1D4A0A427B99CF7F32B3B2775EFE99004B4B7B0E3E39B378A0A7508310E576
+E25C4799D60C2C02C438DFA54D0EE25172DA4730DB65A97AF1D29F4A03B1F2D8
+C2969D2313478B6C6996BCFF955A5F9B87CC64C9B75BAE42AC8689172946DE94
+0C09FD5722FA7733180F3179B1AF11543F203A46A9811DF89A1ED63E4E8351A5
+A693F1275E32C63595D12F50F3CB06DEAD536548F9A8C02B23B32367D3B60AAC
+70E2DBE1527D3F3D377C6DAD63FF037FC65E921B68114DD6056FFAE6A6A7DF17
+551D45B0EB8B92052CCA1F7783BB0ED64BF63B1BD12D58E372C103D3B5B18044
+275EF3817FE6D81753AC36950490EBB50F7E832418251C3C2EB411F1DF7ADBA0
+5AB8EC8F2482915E8BAB115A889D764E9B7CDE83020655042984DE0F70AAED5F
+4C1A2DBC0105A5C5FCE2B14B87722D094B7148EEB07CC0B24D14EE0E49D80AD5
+4D2AE2B08A543C292DAD7F9635292D95DEFD842DABB1D376F4915303A116F0B2
+CDF207803CA5F54C0519E58F57969A771905DB60C3BA7B7BEC66A04B80080AA6
+F07629374B635D427873794A6C0177F392A2276C64D389B7513B17C9824C3D8E
+9602E1D21DBAA82BDF7439DB9F54AE2F4D9CAB3C798969FA557DD87D25E89B88
+19AED8E384D446BBE309B79E2C7CAA43091C88E0546A602F6B2009805312AFDD
+C8A6C65BAE07D024C353522DD8157C696CA6E1E66233BC2CED1D626DFF75C45D
+829B3A2EA1FFB6F9F3853CCDC8C42B2A4E9AF21016B33876CE7032052D9A1BC5
+365D76B9CA4545FDCE8DB019116101424C6476A1BF24F678A99244003FD4871F
+88FE0815DA4345CB44538CD546873714859A699D62E427C2FAB185730BEC1E5E
+7ED24ED665CD75999B4EB4DF93D6FBBE34AEF6A28B3926FB3608C82081C67BF7
+66CC514A1A9FA5183EBBEC332998941601D803A099791043EB837C589B4C05D5
+C159E55D6531E40B0B8BDD2A381500FE835D2607EECB2B5A624F3F642EED3A44
+8058D47C2761D0A025720D61BA3A07EA6FD1F4DC08CCDFEE89AB2E3FB1D187C8
+55FAA26B8421EEB6C2BAAFC5CFE65DF7C4DE2E82C1409864DB763BFAA4CABC8C
+CD3EE1B33A46F51165889E5EA9B3AB62409D5D3D82640507040E71A587A3935D
+91E21453D240A879785FFCFFA7E692F74A1C89F16B9A9CA69BEA517058D59282
+3451E6AF43F89A89B2FD284166636D1085619020F337CF3D1D91219BC3500D69
+0B61F81B20C3925456A7E0E45DB8C18830CDD3B3AEFD01ABA44CD65F6E107B10
+3269C83D74BACBBDDE201683E3FEFB559C2FEA062BC036F068C4BC80FFC5F823
+1A3A9559AB85BBBB14C660B6B612910FA6391F3F2BA9A4E43BA4014337B510CA
+AC86FB10D829E9EA54E33951E0394D0C238669BE9E2971E2FC07AC2DE0A96055
+1F3DFE71F8B6E36AE0D58ECD8396317243D16BA545EB2B30D7D9AE66757DF8AD
+425D3C0CE41F643210804009E1FD7DEC1B12ABC063CBDB35739B13ECEFEC1B8F
+418333069290AE870450C35535CD9BE88E50C3E08FD236921AC6D688596BF32C
+8655A239B16A061FAD80C1C562761C7E0542245913EF905DE20626167CDF6D1A
+82CD1C77A27601C870C2DD6EFC851BC7DC37E7F6E47D1B8CFE2CFF3B6153B6AA
+39C011A06D087730B9E90523F17AA253A4396FC40ADF13525CFC74CAB3D7575A
+CD9B5E5B48CD468B0DBB1BD9B8AE10E23D0F9D1C75D892022C130D7BCEE847C6
+8C61B019E78BD7DC599E082E35B28DB5E6FE364A0C95D585A61012997B5698B0
+3A31841F8A44401C09DC7D8DA4308165FCD4E3AFF17182D52FE151915B142CE9
+BFF709C02298FA1D71710CA4CF2FDDEFF2EFE9CBF70C11806151F20BF0B8AA44
+78E7B7271567C7460BBB30360805D531001B6FC4D3903EE55E07DF1B80C6AC72
+C34D617B1ECF3C4107E6E6838522EB39291354309FB398FC688918A2F4CB8B64
+31BA3950541541A33F1E5F7E6366954A86A4D385087B235B9B30C77D9EB89560
+644E13E877C788399BC2EBC24B2BA81D838B3491EA8F25A146D157CA12B63071
+BFF7748B6E2924B3F5D0CAE0F2951CC2BCD7611313605E421E08E2FD0D23618B
+555ED35451616AE0E6824B83F334C6C942B0AB18665DBEBCF8953387C60746C8
+FF7579E0F2F568C3D790FE65A7BFEA4E3CE852C0800761A6A97459E6AC9DC618
+F697D4C084C873F19DB30FF3A30F953557BF19F3D537FE0E862A5F83044ED6C6
+99FA35F823A506A1E6954AD12D9184FCB91E1FC1F31447CB76B8A07D987A3BB3
+693050C15C1BE82982916797BFD39D9F00818447827A7AD945A46D9F124229EA
+3AFF1CFA38CD9FCFA5C92A68311D0262C2098BE84E4CAE3C486618AA20CE60A1
+17B7DD54B60854E9771B0F906E413196C63A3A647C125BBFDE36570DD6F1962B
+B044CAF4CFE97E03AAB00B4AD6622C9EBE897C135E6E94421F535BC698544781
+71CA7ED98FC755FAFCFDD6BBF532D5A263999E85E4F2FC6292B42301881482D9
+F71F70A9491F5B5C742C394DB0D8D1EC6FED020ABC879758AD572BAABC776CF8
+D13E3B086C7C512995BFBE098A790464529D5FFAEB88A298D5A911397E2C1484
+5D70F57D8E4BDFC516C12BACA35B4281E4B74255EED832FCC098D887FCE46D40
+9973999C987DE98F15022EAF4ACBEFBB3A59045D1DB954FB1D8FEF731F0CB419
+164BF5EF2519ED558439D97094864ED18DB07E09686B092B963FB6487A1C5418
+230AFA1D0772C67DD872B21687E1DAC09AC2D62B83A614A16D31C90FCC9C33A6
+4050C66CD6C5D3F437AE3D885381CDE61720D2756C97472611A2F83E02620934
+786C2B9297CEA8098D0710247CCF585248AB4A55261EFD6F4B9794063C36AB02
+B627827D28B60ACF5BF5CF56E91752EEC8400A93B4A211CD771AA9AACCCBF8F6
+0CE3D8E52236D8533BD469C4F4C2E9C94F163FF5CD4FFDD58467FC13AD78DD80
+955667B352680673799EAE573D3350D7FFB18BF11F66B12D33954D8194506BA5
+899566E467FC7DBC1CFD07C7A8EFA4686F79A8B3F613605DB9C99EC2190136CB
+DC3B806C965228715A357A1C8E3BF790C09DA6E67DE70EED8C6619B99ADB864B
+33597C0FFAD809311FAA54F814E5E0C06CFA07921668A235FC095ECBBDB51000
+204E44FD1857C8E1D57680D97BD11C973F5D010D6895D29BF2BF28E9A2437B1E
+3F2C7D7582823CF375F2143C2D08F032EE9F5F30D57BA2F69FFCD28E08AE3418
+D14303D9959B4D763B9BBD371C49E94846F196D16DF822CDC6E6C67493D70058
+9ACA628BC60AEE755B021B640118AEAB84055D6090A221107F43427C33256FE9
+44D300
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT10
+%!PS-AdobeFont-1.0: CMTT10 003.002
+%%Title: CMTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT10 def
+/FontBBox {-4 -233 537 696 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT10.) readonly def
+/FullName (CMTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 33 /exclam put
+dup 34 /quotedbl put
+dup 35 /numbersign put
+dup 36 /dollar put
+dup 37 /percent put
+dup 38 /ampersand put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 43 /plus put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 60 /less put
+dup 61 /equal put
+dup 62 /greater put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 90 /Z put
+dup 91 /bracketleft put
+dup 92 /backslash put
+dup 93 /bracketright put
+dup 94 /asciicircum put
+dup 95 /underscore put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /braceleft put
+dup 124 /bar put
+dup 125 /braceright put
+dup 126 /asciitilde put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E5ECEBA191DB82B3
+7A69521B0C4D40495B5D9CE7A3AF33D17EE69979B82B715BAD8A5904C5DE0260
+6C15950CCF6E188A0CDF841EB68E5A2F88253E382140F87C87E55C9EA93B8C89
+14A36CDF630D6BE7CD36DBDCE22B21778E8648B97B7EC6742EB5114BDF0454B0
+0EA7B1FE236C84C0E5308C871F67B973892890557AA12E00B2C20C71F516C397
+3F3BBD14A1D0149CA064391056E45E9470FC7F6F556ABC82653B3C8049AB5CF4
+BA83C8F2158C236B2FFD4208846013BAF4165E8BB8D334C8FF2E8D74AF5DAB2F
+D44788869B08399421AAA900ECC6A2D594641C121660D4B5F512938994C18DD0
+FCD9B008F68F0351D21ED735B2740CB1E0C1CCD25EB548C35B844601D98828DB
+556F71D07E081A593FF12DAF83676492A0FFE16E95717A07082B43A966C1EE8F
+8A59E1255E1705C43A23CF29A5E4A6547C93F1680A870EE7BAD8CF74D838CD5E
+F806911D8FE4262ED8E7F5BC58B92C9C6D74F8AD45FBB021EC7E97393018B9DB
+B1B84E7B243ADB05ADD3F1DB3692ADC5D47FEC7DF93080669E63281F1576B673
+125EDF08016664BE73364F65389F7C3B66623AD1754ECBEF9E5CE6948D933787
+A5674279ACB2EBECD3B4E6361419AB32028A27670C9F3E18B746A10B00AF6D77
+4EC00E3BE521C02A99AE5BAA98F793EB1228952BE67934B91472E01AF7B816BC
+56D7F19F631A1927846D800C107B1E9CBFF9D2DD513B4A8CE2E0DFD77B1ED178
+E43FA7052765E9FAF89989D490D8FEF6C536EC0D4AE27A74F474B98DA9E6B92F
+15E063DB260571979A5DE2423920CE1F59F56EB11E00E3BB9D466A8263E1E385
+2014BEFDA8D1EA3EDA04BE32AEE6CD15C5C010A1DF7F705A2C0C18E87C8DCCE9
+05D9163181CBA56C0FAC8C06A2990554C8E759D076B01BBEADE3B5FB8B551390
+6C8E4A2A1C6E7D9C708614626F3770C0AB7DD2027469C77975C27576065862AD
+04E5E50CEBE907E3E991FA0C627302C0E207B4D5992BEBAB5853AD1C0D271728
+C76F40A79392ACCA7358F948AC65DC823CFDA59E1FF69CEBB6B7EC3CF21669E4
+70D999508F9C49E2D9F8818CA53C977D93E15FBBBAF75B1E84F0BA62BCC4BAFA
+4EEC82D804C8A8C0210F3E5E258BB1F6921AF02BA9861BAD5C3D5FC8CEFABA8A
+A607E547B802096F7AEB09FBA99C83C9A494B94408DD607CA6561A6E6660C473
+62CF8D35F31D052F6C6C8138A8E1430CBA7EA6973D6D510C1A06B3FBD79D9364
+240C1A00272DA44B89A9FE8D5BF36DC1B5EBB4A78ADBE9C5EDB485F093D9517D
+69E1AC9A8E6C9D7C324E3797CFEAD9A18E82E03F69B2CED7D5DDCD1A218BF2E2
+ED2293AE999FE2A4B5213A10083EE0407BCF8007670B8C737EAB30311C868D84
+121149ACB4A27F3ED6C0C181C98AAAF51B105F264B5672D7F745131ABAB5BEA4
+0C9B43C0DD9116D6DC61F90BE72018F290D26D5E9D341055CAF09C9F45333CDB
+D45B7954271767F638EEC499F7B53C2CC5774EA7A7F024C4CABFB93D9CB1856A
+0C671A4ECA7C62EA5242648A84E7F3AFB9547A0AFC29593CFCE6D8B873A78157
+D337CABD291431C0A2CE1F37E0CD7340567AC206FF98E4B5A6410F70F750451C
+550EFB54AA259A1B236CA9CB730D2CEF125EC65D959441F7CC9768F777B44844
+CC9842A307C72B740680ACBBF6AA35FA7A94825069BF7696ED81A371A9E5475A
+9D997F2DFAD339AADF797F7E03E654234455AC3D17702A420EE0A597BA31BDE4
+FEB8DBA7C61D311CC90441A620164DC22DC2D373973EF84CC553453AB1B3337F
+7B39983B8DFFB3A9425F119B45C1CD37A76F905777B3154CA6200792F1759D06
+E017890F4041A385F2238E3C48B6C8EE6F5258463FDBFF7AC762F6C4363926D6
+50F004D473B7B7F73CA686B559C2885F1AA761653C727A77D73431E9D110E76A
+2E55C68CD50F43997C9B2FC4710F8C8540909829E215678E63BB8363C4B8AF05
+9986102BB36580D9CA95CD216B7C321822CB41B2E0422CD077F3B55E0246FDB2
+44D5976F67296B5B0BE4B06F6E43535C21164E6C5089C3E9BA2D6B30888C57DE
+49DC8D9D46C0D5EDC47ACF2C03B72DE3B69512508539019B759280BABEA12BC9
+385308A0395C4CD33182A10A5A229743379C2075D82D8BFCE4A66E1AA087A091
+8F5372684FA5037D1B92D50CD9CB4F50AD4F8EE7D51F1C9E63C721CB5B9BD011
+6F0A8DD4FDCD2B008F223A1036D90F0F3B252487DE7898F9AFBB3A9D9CD49E0C
+EF4ADAD5155A98D2125ED5A3D3907F67301649519419F33CD942E8DDEAC1BDA0
+E90C431B198F646766A8FA9F8D1561B57E126EF604838C0C1966655CF31FB7EB
+C8CCC434FC1C96046D38203E1791EC824A3D7AED85C029288D4608CA7668A2BE
+484C99639F121845B22EEFCE0A3B808261921AA042AE19E641769E91277BEC29
+4594082CCB3058F90FAC4A700A8A827ACA00FCF574ABC8EB7DBCECD97F2B22C0
+0AA19E8739B81AF8C6F621D69B8E6F29BAE233FBA655A0AF5BDFD7F5C6B9167C
+6BC7AB693D45EF2AD999F5DA3CEFA39BA48A17EE6D9F2C4DAB91AE3F0044DC3F
+5D5506CE4675AA928B0092D6F173644F91295216D8BBB14CDDE0AD524A4D545C
+1B5E284A3BF0396664081CFB4F186A84A0D24D61E82F4767C1E55A0642720CF3
+909FA1AB8EAB78030B59BEA067DEDBD2F1D0340E790AB2777DB18248521934A8
+BB38A58B7F633DEA4291B0D5D13E9A882C974697CC6D3B49E030C94EA29B5506
+CC29C44D01B4751B453A46A9F6BF3BF135AE87A4CE232AF57B66578310DE41E0
+2A6AC422117F1963C4D7CC306BD25A6E724E51921779F22F029733122E23E2F0
+CB340008813ABB104380C80A492B3FC6D0BB07CB8D8409E9576891EF6E5C9D08
+EB8320DFA31BAFFBD336D0C2BBC3D3B2D30368B9860768FC080D30569C7F7811
+0EBEDA2962476113625EEB555490B8CE4C5F99D74ED10F738C61854CFF8B41C6
+9402E56BE8856144A1A05D0B05F4CB7EF728B2F4F5A439F18C3B68CEFA41E59A
+D8308ADC92EC1289DC84CF48D2CDEFF509A145BF945E1E00D552D329EBD2A7C4
+21D58082CC8FA790E981F4AC8EAB99950678FD3A7DA3DF13778681B208DD71A0
+7C3CBD0664B37C9EDC6B601D79A2C51FB54DAEE849F93209793849104E722D3F
+52DFAF7047EEEDDFE744787A5801E4AC2C3D58EC5DDC15FCEE03990C53B0C57A
+FC54F125A04C8E4A0ADAA725808C587E7DAFB9F784FA2875689979D316DC22BD
+AA36B306A1ABCF907B63C6476737B746099973CAEA8C1E2C5C41F27E0F7DE8D7
+F0D942E34E92F43FE902653D4D2EBB6F3B9F7928B1550A82AF234D45D028F429
+067652BD3D391BF423AE72B9CB1E8D91E898161BE3A7849D456A861A2046711E
+E934DC59442AE7D81661CE8EF727D8D7DDC0270E937E40F896AEAE6171661431
+C1025C53172F9D366834BA0054FBFD84503FBAE328B6FDEA180F8EA35B1DA937
+5CC3B8F00C206908C2FFFFA6A7AC6915D15EA44BDCF29E2BFCFD4A849535F19B
+0D307C696BE8205C7D84B9C77F02EF27D911056EDBB4080E4D3ED72788666CAD
+CD91B0ECE27A177DB23320A7FA9C31408B4D02D2A4B1CC6DDE1A6CAC3D8EC1EC
+2226EC98E51046D1EC26FA20EE62D24747D83CF4941DCE5CCEEC0DBE387149CD
+E05B19FFCAFC0D117F9A3E60DCD4C815228D98EF95EB559AD0ACC0D50FFDF714
+56C3C812EA5ADBB013BBD956A7C4CC0ED7D3E25D5C9AF5E626F18297F75D4957
+F5B0B33379114B903FE98BCF35C3FF76FEE1D9AEB711F2962276531F7380EE3F
+E368720E0292A170A15C5539B1FC7BB954EE2624B504CB8C805B8D31AC38307F
+0513606F09211AE64DAC447693B2A0AD15E9A64C34F5A911ECD0ABCA90E9791D
+67C6BD202B0858EF96E7722305B8AC02B01AB1706CC6AE875A8DDD15EE349046
+EAA65005E7866B506EDFB7A5A2AFD5C9E9DCC821A79EE9C1EA2C7BBA32A40BC7
+CEC26DB1AC473C8C3960ACEC581B37D6569E8C8C42950BAB7930B65E1570E3F8
+9A7FA719F1DCFDA45A3BF2AAB32C9A93BA3552608A61C623DE59BCB346E87EF5
+9CF025A87803161221C5C1C6F6B3403712C76E9D755C7BD68D7F2DC03C14CDF0
+C1BBED1D648B905B4B17037B7263C1EA7A7F06FAAC4E09E08483A8D714C19861
+327CD9C32DDF850302DD6DDE24912D00C22ECDF3CDFB18FA831A41A7488EC203
+F564CFE30D506F0829A96D35A7E09C3DCD107D589B627A15B55C5D6649126BEC
+60B88C55ECCBB4E680265D9EAB4CE22965D3B1AF759B01ACB0D0E6C92B6B4EFD
+A81E6A648708979487FC591CF09631310D46891423F4EC159A73E30D8DD147A4
+B0EACF6D45D18CD16CEB8176F03ABCB41F2234747B9733C8FAF34AE5D43D3BA5
+0CE0FACFC9B087F84FB6C68678BC6E76022B1526D6E5B3A48EC1A110BD75F45F
+1C4DC6D39F254976453F57DF873B7D635C80C42026DE020E5BAFE0DA0D54D1E1
+DC634D2621BA184347E5252F645A6A1DB7657C48124186F0E4C644077457C24D
+55753C651A9A7B6349867641464B515B821349C795A645420508673B93750D0C
+7A3B33EB1F09782033742AE8F3A23FC02284E6C03818FADD1731361542E3FA3E
+75B8D52B668C3E18A4AE967D0FC3157083D952AFB8144D549E69EAAC51C279C5
+E5D88A0D9D53013DFFB4352A1598FF84DCDE6FA32FC377306B9B92C0F96EE149
+8CD55E7B2445B86CCA7A547FA732D52D59025129FD8C6333AC0DF4F0CFF6287E
+F2036D5DBBB3B91B92F12FEBE0B61A313A4DB5A9CF0BB3DDB781A56FEBFFACCB
+8CB9D1D3DBDBC4CB6AAE6769E470582403CB920630221B68BCB625CD4605FA8F
+D3D5B7A1A28D15E44B38E92E906C138E72C15B86F64C38E23BF0440052A8C914
+54397F49DBED99D0AF7CEA3B0A05FF37C2D7EAE1412567E6776333237C31E3C0
+49949EC8BFD6E0F6446CE2D4DCD2C1524A288818CC5D159BF8463A847AE4A2B9
+CC8C58F822804B81B13BF4F2DEB6229C4F51F093075581791D02C36A13B855A0
+34900AA7CD4F1A797652656FE3A8425A38F421C4CC0ACA1CDD44FA6B31219276
+1CDE1CD63D6A58CE705CB56CCA1260F9B86E989019071563A9B4C274A87558CA
+6EF1660D574EDA276801F0057740E2C3B80D253D697736484D892CE1AB128B8A
+DECD69712F5E70E895FBAA927E8194D792A04AB6CE205E04E38A433BBB793FB4
+E8BBC4279D58A223C6673D909D6AFECD246E66A52F4CB35E5931D24C828489BD
+4ECAF621A220D8ECF702BEB01C4FC7510197D3F6D15321EC87175ADBA6434ECD
+2B5A306E91375CAD22CD94301763E4A8B981472890422C5488FCD523C9CB17DC
+ED22FBF12D5F7525D0D6BCFE8CE85B0DFB1D6F989C267FFBA0A996D309E4A934
+3DB54A9D29C88B9D55D7300DA3D46419256C5A07A2A529A8DE8BD1727281F5FE
+97033D861E0531B14E811378EC1AF1CC7EE9BA2B07D935843D3053F673979F8C
+FAFD59D555B56CE338F606747238B22BD62C42BB7238FEA335678D474A643570
+A9E7B4970E8C541CE9DBC7BF70ED7BA33639D6744A18379455029E934C95E2EF
+639C4848CE9A0879B51649FAB023A71782444B451F92A34CB8A124270CCF86D4
+D18EEF5C1D2B2A29012613851C49F50702D63BACF95EE2AB4D72B375E0A62615
+E0991E130A67ECBA9E05329B740708F1CB148724C3A6E5E3AEC1F88EBCA398D2
+1CA8827C977D72734310233176D1AE26C55CF2CEACA62223315C28FCF6305C7E
+A22414D4739A059F552F1F9372CCCA5FED4F9AC987942848EB498900269511F3
+F408CBEA0659B954F5F1B18AE4FB270213646F9B28AE4439D2BA2D3E0AAAA780
+5E530E4EFC8A060EB979E12191044509DA0C14397AFF949E12DC970658D5EAF5
+4EA963F5BC1407A32F3837CA6A24B7F3D60EB8E6222B702E25ED903F9D21AE50
+664A095009BDEAF4B78DAF94E5A55D48366CABF07791A1684B2F54EA69070844
+4F031AF8DF416C2D3679F8BA038B0DC9DD0400CA6B34667BCBBC07E62C1668A8
+35A8C57C9048A7227E672E89681B54D662079A189A9E96A3CA96D8DD10189B04
+1DA49BA2729F1CA585B1BD5C467295285D52E47CA904235A1A3E48EFAE9EB6F6
+01374125CE89D53C276858668CF45D2F092DDCAA52418E0BB94C2B8266B4D88A
+5D911507BB1DDA3D8F6E7C14A91CA11AE799EC42E993098E18CADA70BD2A1D82
+2C39326C6E3F9E84CD9758B9AE43D79BF99E6A0CD713E95B3D9B7DB90D127DE0
+DAFEBF850CAAACBD860B5DEF2082F1ADA64B44B193C4A1417BE221FDCA36456C
+BE5934C8CE3ED55AE3A11697C2D682B7D0F72D48976451D205783BE25DBD2507
+39C14FFB4BB828DFD187104F38A7F11D5F0698C11E8C1D4F107CACE573FDC4B1
+C56FDAE47024D6FD16A2FEABB434CA320300FC4B6C1B6CA08F76C60B7C08A665
+99F404DBA8A2A1EB18EF6750E4EC186E31561A3F080BA6562967546715859481
+7BA782940F5C5D06626D6F6A412CA7C13820EC7C1DF23E15E5829F698CF617BE
+D940523E4EE4ADECEC48C24297DBAD528BA1DCE7AC335A1D15D55415B108EFC8
+6D45030D27B3EA63B2B4CD771DBE66AE0218ABB1153D4B7482289D1313CEF184
+5C960B1E3C3C953912CC6F4521D1E15636C1545EEE457EFB87B88C9E43CC2F38
+6BC4BC96969F4FF28ABB06F4454C01CEF1B6DC538F1E832FC1666D977E5A881B
+F72F1B4C7DD4BE167A5535F1163A0706F9A0B26400178DF8A128FB5EBE6A7B81
+E478AD183EC06622B591337B9F1872AAEA356F4FC67EE767B34CB5A4D90702D9
+39FB846947F4096FB3DCF16EC81455164783BA0B5D723060DAFF411B68307E81
+7BEA1D9A47A5AA3D648E618C83C60F060029E6EC4D46B045FA7415BAB2AD0AA5
+ED9C729C24136F6AF61E6409C0B5CA760B16225641E268A68CFB8260BBEAFC77
+6626EBD97195E77CAB425CFB0096D805D9EE699E41680D095AE9FA10122A7882
+2F00F495C9EB2102DF0D3E61833BC0A2E468C5CF7AB430FDB7C0BE3DF2C0D230
+1580BAA25D65F599378D873165482A1FBB224AEA89C6BCCFBDBA42AE1C5DCF41
+06969F585CD3B737D1388D6359F5468D88FCD2279BDB270F6A858FB7D2ABDEFE
+5EE8FB79FA437F8F50237B92C307B73B0DCB808D07A9C3255CB9B3B17039CE5A
+288103D05D132863FB522A02CEE3839EF9AF7F07D99732F0B8B384745369FB3E
+7901166478F4A16076A1504C5E98D17408494E270BBF4470ED12B4332422679F
+759F1D93984D7E506D16950DB6C2682FE1379EFFA6F6C95DD71F6E55BE3EF6AF
+E0CB25388EEB436E6527806FC75484133F6E561DEB979D5C1FFEFDAF2A6D964E
+03BAE0BD593C2992AD84569C81050F7A793C5263E50C2F50B98C4CC703EAE17A
+6AEDAACE312DAFAF5278D125B6EFC5587484F61DAFF46B87B7C9B1EEDECA4859
+314A9A9E2248467DE1E54D90DD671660B9040B3E0DD982260822177EFD757266
+74A16C83A7FB168016A320D3DF3BD7726F1F4EC90EE5DFE810C96B099FD4368D
+906AE4699049EFD37E8EF058D4B97BF71106445AADD4FC6E90615A0066823A36
+673B8DE32322BBE861AE251226B4385AB28702831270DBD25D666FBB0AD7B96E
+A44E891EA1EAF0F87013AFC982E33D67A28E96E0C9CB99B9E4192536830D9901
+931A8CAFA41289633B20BA3BD7AA3414B6DA8D57CCF2FBE39920CC06361F075B
+CC40335DB9A0071CFF77F6B7BB47F3100DBDC9C4A58C2B81EC99E8E966AF3390
+E3FBCC28BA1D79961C8A1584266454DF772FBA99664D74D4A89FC82FFEDFCFE1
+4C9E4A04291E803D142E37E7ACA66AB279378F2F192FFB2B5BBAD18B95F03136
+2CB594A3D6D3F8576B90A6C4DAD6D6C8EE07AF682F925F01D0B26CBA347C03BE
+F3B0585CF4539FDC66915E22117078CC94D621F31DCB3E021998A5D6EE94CA4B
+E214D07517283D56973D8E4367392BF6C1150DEBF459D141AE0941C1C8C5CFBE
+E735D796E365A1B0F60BB4CF2801EAFE4889EE5F338D3C4885368281B3C95CCE
+251C28A90D318A8A0384439B38D63B94757252062EA44E88509FDD2E75FAAB71
+7329622828B2785C1A8B26351BC74237A6BF99216652ACBD4CCF54CFC8AC72A6
+46342F1E32D4318E7E27C7B2DAC943B3E72C472FC6F1DDA8684AA922516A672C
+E969C047E318B5E3B1270C1BEB1C4071A15BC81B29B268C679B41FC5E381BE33
+DD95F0D68118CBB60C521E5CB2BA46A10E50E9238163713290DF6DD8A27D3813
+F871C07E725D4518013D9A84CEC96782541E5580E33C2EBCDB18F08EB4655A46
+507A8526DB26C854928B81FD502B0CCE4A68943C12078F57C10F4E85FBEE1025
+46D925B8B3B447D4920410FEEB9844FABE985F9228FDD9F58392F2F3BD650E49
+2E3AD5A14984874DF4572816931885CE8A448EC95BBF40DDF4F85653AD90A88C
+C4A879C0C7596E61997B972E8A55E57B17F802C738E5C7A8FBF6424F8B131B23
+CEE3EA3747DB066246C250EAD335A76FA166ABF75120CECB59076AB31A51F176
+57176CBE8C802A97B0542A5CFD6D5E6D7EC848B923012E45D9F065BFFA0D03E6
+788B68BA4DE51DA37994948F859D41C28BA939C3A82BFDB44DA585AE80B8CD7B
+A6EEA79B70BFB4864E06F06A9751BD2D2A209D150D7135E0A25D67263EDD2A7C
+C63B5B76ADB05D44BD5BC0BB3EBCE2E74E1AE5F7DE07A59D90C932DAA2553505
+27F2AFC05F7CEB39E1C7E54F69FB0BBB069959F2FBD11709F8E81F6E7CA06DBA
+1CBDD8E7A78487462596DA288B50B295E46F4C3D9BA862688C68859734B232A7
+4B371D2BD786924F186524765E789EEAA30B20C069322D42C893A30BF1BD2C46
+F8F3732DDFE80B8FC1789239345944D8B457824FD80D11184E73FBA30EB80A9F
+2FD466826D4E666E3A835B98A1D4AE5D17053A6A648E26E77BD08F9A3E02956A
+AE82C4929E9666F539079846527D0E326FE7CBBF86E3722BA3E53F8A5121080B
+ACF8D3C67A2A1DF624B9DB92105D3C833F5A6ECEC108E026E1D3D968967A1447
+15CEFDD09123D56606134BC3449404ADAB1330C9238DE48F3CDFBC91EB86D7B3
+8B85B5BA97376A0673E434DBFF19798EA90BFBD94493E2D21976F8106FC0C276
+C81C9B9F7D4A68120DDA56FC6EC65FFA40DB78A60A05EC270A106DEEBD2CB92B
+F0622BD2B1D43771DF39AAD3ECB655F317AB483F7290C148690903AAA636583C
+99DE3DBA99EFE20773D3D8DDD816A28D7BD8881DE570BAF5C7A30679179E1214
+FCFED81605FE56AEA21C1894167F93D648B474352A65C0756F812F97AB435ADD
+22C031A21714A626DE35308AC51CD676DB1748DD2773532294FA77CFB2AAFD32
+A72BB7A045F12B4934A768F89217233DBBD69B900B28492A26713CA5D61A9042
+A982CB071F1F875718FAC168E4E275860DB6369B8114E1BDD4801110B62C3E3E
+CF140554C826967A99F4E9726526E87D57BF845CE38E33893E5F9788769B6A4B
+A4577C38C8D45AF2EDC9F4FA7DD9979AB8E14FF5D8956233AB4C02982BE8E561
+C63B7BC314793F634DB6F086E1A60D9FC3B69D3A7C20A99FBF3CB028CDBCEB60
+E803C8DC3C5F0CCAC030905E72BBAC052520CB0E40E23B46B2150DE67F61E4B1
+8C4D55904B7F90DDE4A4A78B11AE1009DE46DA396791B1C0EA63FB6897FDFA0F
+42474042E7E9B06A703A7C6E672AC6705506F3C0B6861BC85CEBB9DC9BCFDE0D
+43F5248CD7CAD4B89835BACABBCE6C791BC35FE7211E775C009844FC75CBF6CA
+DA6A6B7B488270BFAFFA3E9950914CB0F88C8AB7CDEFD2FDE11ADA7073037EF3
+1A5CEEE37090F3A56D06FBC70597907A26498593783878C02722ECFD5D65903C
+7D421CAFA78924DD27756853568535B02533C3393183D6E30DA6ED4BD6582E09
+A5A4B4404EC452E91CB44515AC6124EBADAAE8A98D8A95E7D14DA39951EBC461
+D426490071462F246794023DE1BDC04AB0F1834D50F748C3C60A07E1FB8EF400
+78DBAB90B59500BD1232A872ED51928329CC8F06E83164FBB2D0B24222223EE5
+992241E8E00D5DCCD6DB9A8E2325ADBE12FC8512AC127BBEABDA739672C1644B
+554850CD75724E6779A7E76424CAF89E9455860E0AE2679231F4A535C0ED4336
+313717D6F7A4A4DA833847A1BCFC7BF99234FA645F2B85C9A9AAF7108931E3CB
+077A9C571E57B0D7EFD92B56C3AA4FCEC0BCAA96005E649AE8012366BE6E62CD
+9E742F8F45AE4C96BCD73AD80AFB6F061D629ABEAEC3018CFF45E41F46751953
+44E490B1355DC49C1E10BF343307263584091D122ABB1E3892E532B6DBAA105F
+CD48375C112331EC5DB49E4D4CE2D126C9274B21E678E5E3EAAD4EA0CAAA29A7
+86FD8819217B195EC6E40AF23ABCD71156656DAD38C931C8730715A2773DC44C
+4DEF14D92C2A054739F27D7EF349A0EB76D952BD9BA169B4F85C09D80984D232
+2CB4A3812BDE539DC79E2EDC7C221739D16B10246A5F57151C210878556D4176
+31EFF3AB6C4D78C4F0DF81692B3C9BDE4F85242BF0E84BACBFA39688BB222A81
+E85E9CB332868ED5B64E140C66E242B97A90C13B6DFBC3D285A49BA9D4BA1A47
+64D83577FFB50BF974D953F42A249ADF9AC228CC4D8E82213FD463BC757AFF26
+DF4D1678FBCD55AFD5FB3014C0380B2F8CA9D6400DF2AA041580A6FA5694ADBA
+674286F00E531693DB28F7C996D5A66F80AAAF53001EDFBC065C72FA5BE3F114
+1FA3354376AEF7374AE1D0A8E9B06C58FD029922164DC9FA09343FB6652232E2
+2EE34C662F0092BE479D739ACE775C6F589775DD768B736F7391B9AEBDE7F760
+727702E145CF749DC457B2E98A36C52416107B1E59084B5F777B61511B8D17AC
+88386A7933CAF852CA23FE179B67DF8DCF15800755605847ECC0FD77873727FC
+1AF2BA8BC75D30E26C40913771E528724FD7C5DE284A8B58AE55A5C48AF26AC8
+02E155B8FCD6755D8F7F5A6F1AE66E4D24A13567B6463B18E65972BD75ABF732
+FB41F87A62FECE9A50C697BCEA1E3B3DF1E3DC961DCA598220CC746326F85F83
+72E803A4E69106EC5BCA01139F92171DBF9964BBEC8D3370039623CA1F927CBF
+FE7DA71B04B4321EB4D3FCB27F8404994CC7DE5F26AB8FC019A203D6DF2F449D
+85A4F103F7604986A1AC1F7D05D239E728FD6AD1DB5024B0A0542130D2B0E7EA
+4432F910F9FD75568F5732EAC95F7A87CEBC359949C26595741533E952327791
+87E42DF84E1064E1BDD3F5A6455087B8E9C783AB9ABBCAF032E9FA32C27ED7E6
+CA7E3D1D76CD1905166090BD81A85485B9B4E976DB2E19A8E62EFB795FD6298C
+9ADA57D5BDA2FEBB227F0EFEC59E4B51E06B8358006F9D79C1EFE92510D6046B
+6AFEEDC793137DE622A8B3F5C9E3B21F29A98A589D9CEE75E348FD4D206415CE
+508AB95A7496236AF1F6F5ED6B3ADFBAF1E35B51484F9B1E0C11C5AEAB9336F5
+A8861ACE1EC74C4A145A64E4FC8F6BEB3A16B021AFF4AEDA59B06326A8D7FCB3
+3B75F9729BFB7EEEDA8A1774728C80AED40BC35D42045E5CEEBBBEFAD2566CB1
+AD69A9A972826DF0F2303BB232367E611C115E8955DC97779B1AF269B84574C0
+9D816C88BAE3AACA6428CFC648FCF0869AD9236591E3B8FA326BD2EDE7F97286
+511C75F4EE4F7B4DA33BA2CE7F778D92AE7C1B4844CAB3ED8FCA285454D78469
+1639D24729E8002E4507A114407DF51543CF7DFFDB7E05ADB2D36E139F2DBACF
+D90AF274AFB3E5AB5B38918A28EDFCF6EACA78248BEFDC2FAC0E041AD35B130F
+8A91E20251CE976680FCE3F8B65B33118EF7C138CA1260D3CA855C94FCC02CC2
+B29C94A3FFD38056ACE512DE680DA29D97BCFC35FB2A85057E484FC9F72C9A7D
+08AFAFCA705335C6E9AEDAFA97D884E0E463E79D8AB45DDF86C56EC922283C4B
+777EAABC0D57BEE30D4D47FFA16FEAE2FA972E36516480E1FCAFFA5CE692B7E8
+8F887C5AE573B96643F10BC62FAFA4BC6CD04F5353C0D40CBCEFBBA4DE7B8960
+352E7F6497C9C4489779028934084522336B5E5DF6FF84A78158ED5035FFFC9F
+F199AFD543D5D81C0155F3EE0E7F6FAF7898F7F26941D417F7AB37703FE67D37
+C263078FDC85C5430CF379E657FF9ADA0C00DBD605386F5494459C63D4AC057B
+2E061B06E17B54AEF38A9EB401FD4C76C6755F2AB651473DA2F19E28C89229E3
+FD385D8559EFFEEE5D0CEF127A8A6CF9017459466E0FAC341DE1994C03A0CA5A
+799CCD03DD2B41A05F7B36493638AAF8D7CD380E03726B0A18B02A46A0BCA027
+9BF16ED75AE0494C36161ED2C22DD7036FBBA2E319106B9A56FECC732B87E2F2
+596167125221D42DE9D4435DAD321F878FDA68B9E72DBC2E31178621327BAC50
+72148C123D4C8568DE822169839906B9F0ACAF3B4DCEB9352C8A9E246A9A5EA7
+31E04981D0A53F44B6905704CFFB9F0463518C02538DEF2DBDABE936D1213FBB
+FCD28F833C5872057CAA92536B8E8EBA129745E2E2B5A9F07086A1212D466785
+EE640432A0E47C91CCFF3FED5669C8ABC2B43551AD04E7A2FEE2F3C16511F7D4
+048A8207351E83AD32A72360A2DB1AA8F78C5D2630D770F5E13D5C49BE166475
+79483B2F7FEBC1D73B04E0E5D9B8243DBEF7E5D201D9F644B150A230B5CF9B90
+CA34BB8474BCF408E37757B8CE5B33FE7400A68C70F542C7E2A22B8C0AB1EF9F
+2BBA7A646A4C872C43C0A748F078AA98A13E882085B460050CB3F5B09B62EC01
+AB87AF8DFCA6823ED6CF8426EC115C5E4DA335FE416E1D37311B7FD56793CCA0
+BF90B579B0FD4E4E1D0A26FB0C1D490D99CF4994693630FA343960E15AFFC596
+49BB7297BFB82FD56BBCB36DC1597F94A157AEDFC53419BA867CC02C26464BC0
+2875127C688DA6902567716A908153DB4CBF710CDBCE50AB98E0CCF1DF5CC571
+00027F6582CF6AB4E584436471D3C8DA2D780E5B02A9B1717364899D51EC679D
+CF5F4A4981EDC24F710E892772E4F891AD02B7B98A113FB1AD2B5A51046693A4
+19D03A75A3140C19791C85A0DDD173BB3618E9498CDDC8696CCA6EF81729AD1E
+EFE4F3D6242E1766A3079371D1D1833841F46F04F2F8029D8C1943F6986A95E4
+9E77806F221CECAFB3EAE0F979DADC5D2E4715BFB5C64245CBD2300E59030B99
+0885F08417E1A0C57C3746230F9EF4E968C0F41F67706BDA2E983012BF317612
+38E9C0178F027EDA0E679F306AF71F0D8985C712C4B4BBBFC57A86AE052CC2FE
+5C1BDFD948801509ADFD4FF9FA7A25E30D6CCC7C7E418EEAB34C4ECC6AC8FADA
+637B5CC70136EA5A57B727EB11075755A7840215CE2B9939BBB6C3A7E22DE42E
+B3725C1AD0BEE0A54C0B57CB93E6A20E319E2FE4515D80D09972E0A742D20DE0
+55117C1B9F3C181456406FCA70A7E3B757A813F7CF9E3562EB8CAE1CFB65DAA2
+B384C17AE103C20851906846AA4AA5EEE5EE989F292D42B11EB4C4FC057EE4BB
+B09A4D81E8AF0CE1C851B2E328E977207A6989F13F7FF039A4E295507CF0A53F
+10A345A516EDB7C5FD5763CC27543452249D229BC22099C6FC1DFCC07A35144C
+6267BE8D5BDCE57F9C7C65F6A64A74DC2207C8601231477DD57BC8259B26C683
+22FD4DBF0E3BD814E31C9E194CE2EB212268A249216DB084226802B79DC72AAB
+FAC4ED3AF6BC51E2D9A1D5A37F5124BEBB1E0B010C34A1B7FBCED45414AD2285
+43BE684BC7BB56C5036D182AFECC061F749522456B4DCD80E3315F48E7E8AB98
+40C4FBDE71DA957C8FD860C4AB02C97578BC8299EF448A526CFC585F27EA14E8
+88F9928CBF87C8E46F69100F0CB43E2720B0BC8DCA50D59FEFBB84383B4036A3
+0ED89F67B433AB4BF686487194107C63BF989A80D761EF3FB20146A0A496E5E9
+26375866581146F3537156051C61F82AA5C68B6E8418297DDA7704EA50262775
+B96E1E1D7643370288780188ABCF25B9B23BBE408EC5DE254F51469D5FB06FF6
+2EA926F94CF1730E014F34822ED267643B773B7CADF967D431B6F3DDC998E56A
+243880E9F772F3BAB3702C19C5DC92ACF864D6A771783E178F4A7BFBAD36008A
+F0A61C5B437A69E31235DDA9898B4B081F1176C197C0834CAA25FDC9BEB696AA
+8ABD1FDBE17E30070690EDA533E2EBC19180DCE4CA8146D6657BDDB765DDFB21
+D0CDB86912E49DB109F66DBB9226E297945BCE9073E724EBABB58E42AD94CDA4
+C9DAEC40F79F3A3D36777B18C61DC9D22EC351324FAC3426917C893E36C8D953
+4ACFACA05F8764BC61A17F6B40D3A97177B97CF88C2B0023ECB3F29F9CB347DC
+E686012FB31904DCA042679776108D9D611EEE971D341ABCEACBD0866DA21DCC
+270D3DBBBC9CD438F4F651B58D1405A82960CA991CF690B8B564033154645D8D
+ED5E4E059D9DFAF3A5C2BA1C1AFE1B865901C8D117262CAB210A3C7A03443544
+E22EA5577AEF1378A9A4528592F32A8AEBCB1CB6A7E4948FF78C6FD230A5892B
+D8953ED89392929FB91C042D31E7E8A4912FC701E722D7FAF0308625B3B748F2
+26DE427383236E131022A95395C72B3DEBB139C81811582FA4E9C7F970FA605D
+C8DBB3ED8B141428ACE6DF426B2567B10C5D68A4060F25D5D64BA262101CF5C3
+4B7948CDEB6CAC66FFFA0F1795C5F3174F7D319D252DC2D22BD08FAB54CEA742
+64C0C6B94BDF182DC0942C0C82E82A0B04654A7C2E6BE685EC3DAF1D5FE48790
+DA815DBBD0A176BB4D4424ED7F893B4CED54C2EF94D73CBB154E547CD33D874A
+E754A17AD1F10C23BC5FA4E709330A10A73C93B843D8CD8A65D5A4241B35CD19
+938F2BA2FA95551F0C2FEF1CB8B056D9A9120F7607BD4C497762C577B66B2DF6
+8F3F661EBD7F3E73E3A0032790ED80F774423A026F8ADE2FA82129E1FF27DB3A
+1B6E603479668FD783735606F7AC6BE9D65C17F7ECCA3B622C13F0FC95F8259D
+DA4801A7EE18656AAC3D730CF2E17FCE8657AD6289850DC06E897A759F7B53CA
+502E764B07FDDBE6E99D25ECF1600D6646622334871C57133A8AFD03FBBC2368
+1BCDABFA9FF4C4A9EF150045F694A3AA487BE461BDD2BF1BBB38BBC365837063
+70963C7C1E7E4809797F4E497DBF6D5A90A71D6E89BEEDD5D16B31ADCAD67A81
+A9A3085B4CA7BD93E1A9591BD4A7C88FF930EE7A131C5F3338817D88AE31813A
+C09D5E7120AFA6565B0A647A40CA94B78F20905B7110FE44A90794F7F0CD63DB
+E99675C781255B7BA257CEB14DFDF9C13A02701B0FE41C6A6F50CC62C028A3BA
+E9A918549B7F9F206DA0909F2009CC87BBB565F281F24D0ACBCB71F12709DB31
+5D355415D97F66DB25CAC37E90BEDB51F2FA97E0A61EF85E845F702D0B3AF935
+14F3EB201323209D76C7C5970AEFCE4225FFB4A1477B177BB52332AA0539291B
+9B8004F23CE4E055F7AB6D6F2A8E74C2994306A407A4FC831D1C887C42FFD0DF
+EF07891681C7F4AA914AECC427057A8D73261E25F82DC3EEE7295C0870E91523
+E15187584B32B8F8B0F2E9BF4E67E5A2858F00B0C59DA1B1B59B00374C6C6AD9
+741E0998EE0DCC6F5ACD1925CC40807D5B66E971CDCFA4651BBF2490FADD15EF
+C8A7EA3ECD078D34D875C3EC5EDAB74AC0DCA00F2329184455C24C97EB0AD4C5
+40B8E4AA2CE6E7816580F9DBCDAE7F01AF0533397CD37C401D4841B60CB976EB
+E3093FC863F368C85AECE6E6CF7D9ADABDF628D9806C1269A0EE06FEC90948E5
+CBE40C0A2C72E08D9AD94F07470692D571F595E465CB32BF486AE9C3971B6F7B
+FBBDE2699E1FC9DACB156D880DA379262A98C6708A9850FF8EE36C35FF636E46
+D8D00FB3550786C1D73E6B91F9B35D6998F33BC953E0C8AFF996F4C707F8DBAA
+AFD76432E45605D5E703C2569856A0BD8C8ACB29BCAC87F1A72F859D20205328
+6272929343C1CBCB053D7E19AEC4B2EFAA765B2002F43E7F62ED5281C94ABDAE
+750B2C88B3801559FC6DF0D66E55952FD67AD41718D49D35DBF2B7CCBC1E755E
+800ABB45EA4D7547756CE9E6D3AE0B80D8D97D681DFFCF4D5D5330F0FD6AA729
+5BCB1475F18E9612197D6F5F7C7AE8FB931C242993D385AAE7829391D370819A
+496B9518C6F913E666C27F0896C7684AA1DB1A335C7B50762B4F8445D45C907B
+9E30F7FD84E403DACCB0A8DFF2940312386C315FFA700B0E42242EEE04042E2A
+3F4840E719A42FAC426870CC20DF083537010550A6B43A02A330D92CE15222FB
+BE6A9F6EFA44F7987224533983D96BD2E1E536437F89E2E43884AE09FF5C7902
+A284704F78AC067C332EA207F53CAB61ED51EF3FE79A9B7A373C3DF72A4F3A5D
+67B4F60BB470E5D093FD880AD32809160E550CC1EE67E01CFA80318C03E6FDAD
+A8E744FEA593E2761C60D2CE83F3F6D3A2B203739C62A69D4E271FA12372C45F
+6C378E4CC21B9B0CBFCF43233562E4BD4D52F7A634D1F0493F8DE445D140EA4A
+D3956E9971263B7C3CAEC8AC83E541D58F52E00C1C80EBD9A31F0A9D17FA2D63
+E5E0D22CA28D51E39A055C40AB769EF224AEFE2AF714E322FDCB9770EB00686B
+208AAEE2160D059DEED823FF4F9769359C183A6A6398F9E4ED55397F02C68FB1
+016CB495A0599DED25BF1006343DF9AB7C3BAEBD1EB2F99F4FCB07E84AD2D959
+D1D573B89C220DAD815D9EBA41CEF4D664630082DB97645AEA6779A8F0D7765E
+B76A4B8B429CF95F22474EEF2FF1C792DD525E50E1EE0A1ECD78570970B62293
+43DBE6E9B97585B754AEFE28E960B5F8B3F549EC7F168FFFC5EBB52C7CDDACCB
+DF9E1FD89F2F8CEE44285E79724FDDFED021AAD2025006239EE5CA8543B86200
+C7E8522668B07608615F6F102E295003B1B89264810A2BFC3DAFECFF126B1807
+2388839274203BEEC2B319C7F263ABBE6B181FECB5FDB9516E8F0456B6A1BEAD
+7F45DB0F95F4943B2ACF52CB30DFDC6EC936A6292DC2AD0BD67164900CECF3DC
+097528073246A88607DDEE1DE4BCFC298892F3B73E897734D7001A466170F60E
+5F2948ED36A6AC13975086A2D68B6CD8B033CD14C1B85EEE4AD3679D74DEB998
+AF62D045BF1102FB3927E5B9078F8AF93A0ADDF1937276C423CD346F30D17D3C
+C57CE052053EC21A2991D063B157FD535850DD63E55890427BC2C883785DFBA2
+436BDED247251001AB1AE56EA19880B88B3F1BFA6C232876E6C002E9EA850700
+517C80537C27033737A162B10B179624F869FEC056F339D5A292E6E945E7BB31
+A271CA30990B4AA5874CAD851C1154275BBA868EDA5D156F4663E2D436DE6DD2
+74E6579AB19EC803927046D9130BD9E735D64248A6FA78F1DD6B51DF0B1DD553
+316D96795355878C426BDA09F052D54880E5F3E5C1F29786DA0A8084D81A5849
+B2A301BFF171446EEB4DAECAF40D8C4F6C489BEA6C592F8257E68C514180756D
+A13569A03827561348B73584D69626B3175247018DB9DFAA9E989E55C97F9A32
+B02423EA16FADA78FE1E3C56EF4122C640EB8D77C5E957B5E425A2FBFD173423
+E8AA1758A91E1B5B85D174D7DA1F11B3AA76761346D2464BDBA290435A6DA50C
+1F14E14FE29396C918E3E4C388E93D1C3F7A7161FC61DFA1543D4CA86B6A3A5D
+B64FC69BADC3F3E0F7DA2AA5FD6C39700C2CB8A6C823D2620D39FBB0B507003B
+6D28C8D67F57C019DE3D8A4B6BD01CF0B305163BB1229F470AAD7436D13C326C
+5D205B4C818D0F765E2B9FDDE26B033D1060EBEEAD6E5C49EC8C6F395B54C259
+4E24E89DB787773423E358A1C64C3FDEE4CCBAAC4AC652012A0CD7269A062643
+0F52A1BD1DEE9401B5835752C48CD0B705476B00458D31E70599761C793987D1
+1A14288D5EB2C9452C2C4524202A40A8C773AA8A3B9D10ABFF457478532B2C58
+0DA8776E116853B77D1A8EE320C87B23A693BB5D3E77A9C419772675690DD75C
+7AC5BC3ACF97BB11C70C0261EB5DECD96577D755B03EECBC66B3B8FAFAD87950
+94AA617A40E4CFE88939F28D0D36C5C6FB5B4F6E4321BDBF12DCD428BDEC76DC
+192AD968A9699084DBFFA3FE06D5F79D336DD6CFCA4C9E1F427A29DB1F4F0492
+A29F5F052310D455E8AE1847083B70EE57C4799FF4B470655D855B8298FD3694
+66E00CF5D04415601598C0ABD6802FA0DC4C12965546076E46C2DE87467CCC8D
+F9ED9FE429CDE1DB2AFE61363327B4D11F46C678B59E74F8F09D8B9C14C48004
+CEC93F33A4A6906CD71B2414C05B3599E4D1FC1EB839D4B5E5968711359D3BB2
+8E6E262896409C7EE86DF7A8CF1DCA1EDCB2BE723CAAF5B1D7DC94F093864855
+7FB08EF776FDCF9DD8342ECB7F7B307542880A7C04D3BD09D65BE13F80E36120
+24BBE4C422F1CC0DC956CE53261B903ABA0E0CF1CB0AA8895C0DA8127DE3DC9D
+4B491926B5408AC8D29D2FE62CC3CEF548C0A57A1DA202EAEA8F4584D8B64E49
+A3D11A48600CC0913B744180AFB6873BE72DCDFF8EA2203E34082E011C87C3F8
+EE91457705ED0BD4E2C193B7E818B50DDDD734F2BA1B876D262C39D94B0FC27F
+0B5A87423EAE91BDAB38BE457EB0309D05FA5E458109305C03295FC39B0D06BD
+BFA2B4520DD610E12C3AF842A94296108FB67495B300991C3491F0983B5A0403
+68A8D19218D9429EE400C3B91DDE2A9F163684D9F28120B584FEC88628EAA60F
+79F5988BE7BE31153A675BC7B344E7F62CE85E8850361D1996D57E71690472BB
+8055755DE965D795E6D2424F7D76AE7F249AEF4BFD75103B2CE4D62FECCD2FAE
+3702A57A3320C54D19D5015ABA5AF39B237C53D38DBD80773C0B9D6406574BFA
+48BA4EE71769AD140E202D24D9F1691BA072E1AF182FD6DC06C2FD25E3437E38
+ED1D0033E77D2B188F3A84EAE17787110EC5462EF5CD0FEBBE5CE39976B5CDA4
+8206BE5EB8A06C7698C5E6A45EC7F59CAD3D6ED3AC19FABF3D29C9AEBEFDD74A
+6B7261D349FE509BD769D9A24B16C276C917F0CBE8B25FFE19BF8528E1C46D38
+3738E3CEE8170E3EE323A464A3C8FF30B3DAD0BE87518E008E37F60DB471E3EC
+110E9B8AAA5C875AF759126B39B90A8E7BCB25FA3EFA783AF7B069AED1887A19
+6A75C799940E5352C34A93F125DE82A7387CFDD7073A28C1026C9E06A1D8163B
+E66DC3BAAEBBDF96B7B3143B9414AB45643D022294C2AF8C87EBFF1276EF991B
+7A1C720C1A7CFD392F211A190A530A19012EB117670AFAE4CF700048D901A5BE
+074F9B05AA555FA4ED6D0A92C08E4B795279F9BE48887886B5121DDD857E8A86
+A2885B9A672C72BAB990E0AF6DCCC769A7E18E65A86B3E1482D8297FD98E0510
+30B27AFCB9B261771A1AFC298F96E272E779A8B6AB6B03410ECE32B7B69369C7
+5597FDD08BF2E6CA29E093428DBB0BC53C64E5ECBF216111AC90E82822E7604B
+A9AF479BE9FD2FB2ED27EBF4027C22357DB27A5A6FBC6B14607DC26F95A81BA5
+1737D6C406B19857FFF2903F966DCD56BB73B06F5F74C917517DF95D8D5E5108
+350AB839CBDFD7D1F3C687D0B6B576FFE108AE8708B967C29F9840A0D6784789
+DDD7A0D76E92082162603CC916ADAD75BB205E7C9B7A72D286C5411F3771EB6B
+9F9022BB24AC9EE7700907280F52862F1D542605F3D3AB06679252DB9A8A4E41
+FD9740AE35473A9FD025F364B863DDD063AF91A114EB529A38F28C4B4551E276
+F76C254669B81BD3CA8479F0C7208AFE5A1927F2AB12FBEC47FE0BF9AC3DBF3C
+340DC67125FA0D65B245260B32FB74F90CCA6D327874BDB6C252614C75425F20
+2AD8C9ADD15733715B9281DB9D73C66B9664491416643C04165C64F5939CA73F
+F8D7652592F391E59B82EF0BEDA9DC7F42713005E4AEAA1111EAB4E74BD99119
+D86490DEE3DA6C021B36D7AFDF9EEDBB1E3253176EF0607469E0982034AF57A8
+83F024DD4B42B99BBA110514E52498F6BE463B3053DF5114F2D6644FA27702D3
+15DB327F632E3750171BDAD75F0B7D2A84267C712132373A2FE740BB086D53B5
+C3E9A68583159E46FE46ED3B645B0FD505D206E09D438052E27B75EFE7F5D83F
+BC153E4BAD47FF241AD46BE13605E1840C5C2CE3492C29EA5FFF5550AA3986E4
+FF28A404908C88269D821EB2FBB193DC311750F6163D75872603A254B949C756
+CB97829F0BE3AD796D52969E483A0A53CA650CFB9AD57E0F4DED89C7746341EB
+3D3333F06556BC61BABC3553C7B0D83DDC5B3BFDC77DBD9B6DE41680DD6439E9
+4C9FA49DF62830C86E7A4B1CBD37F2794EB6DAFC3F1676697392A6A635E626DD
+3A3BC9E2378C152F9895178C694596191B37BE3DD8C0FF34C82C386289EBD7CC
+B63139A3243F193EA10211A8E390B4C4046663CEC373928556F5CC99FE094ED2
+841DDF013CAA6CA5C48CD9382CB776964B38BC24BB009DF203DB81D4EE3A4463
+C5F2BD876E0C9B9B226FF39C0CE6E67589A38388A02A81D3DEA72CC031BB8B2F
+66C481F00167DC0BEEE6740A78D736F429B44B82A3B01ED2127052646DB442FC
+C1EC78B100F11D42512810F26EEABFFDEE3E46DD584FCC2194896F7BB5670634
+480771223C1E2641A253CE2490AD75591FD94F19B2DBA95F0CD64EE4BA03D3B2
+BB0C7A6437B610004CA4F1B914D9075051F7CBB6CDA305F6337307F317CC05C7
+8BA5A409ED6D915263680852670F8A474AB0646ACF77FA3AC35332DFE2B00CEA
+FA99D25DAC950B173DB84ACD9DD99AB23973390FE32E384C6003FEB9A4D3FB1A
+CA17FE87AD558921F203432EC00D0BD9E0294A0364048A9743516F46EAC01B7A
+AF23DACE21FC2D26692D8F1A85F1B0AA8156D6360B322724C4804FAE55DFA814
+ACCE2F8508335CD775539E7931007A73DFDEEF7695487B10BB0D95FCA66D0F53
+6E86DD15234A025709C4F7DD08761711D05655EAD8122D8BA2F7177E820B48C2
+5EC82CD16644832ADF374ACF193975B4635FB374451D0AED47030807CFDCF240
+783160D79230AAC1F2E5066F09C327ACE24CA2D712D08749FC63C3D8EDADCE22
+B81A7E03350AE88F30BE8222B6954ED0D2910AECBA460EC21BB032C4D5DC1B12
+39F1EB91215B384CDE3F1FBDABA298E37D4460D0B07B0493053444AC73654815
+376ADD2F64BDE78BF59CD75D93A3A3BC730562E9A1F2A730A2F766AA19DE458F
+06DD501B215E0C2070CD64DDE13E99719671FA4809FBCB6623E206253081A50F
+5329F16F1B0F0F69276852A7A0AC023A821B8E7880F9D7AE5DA74D0483AACB4F
+FF09D975ABF439500ADEADA4990CA29A50D82C0A7704F11DDE0C9C8E4DA21382
+C4F7289719D9A4A44BF2735CCAA2BCA698A5FAEC9A3BCCDDA1C88CCE18510733
+5A88B88A193C9DF15ACD00F20A965C11DD8A35CE316EF3E4716AB3FB4EC6288A
+91C0F824FC9933315C9A71CA786C9305A9A30F407777F0AEA7D341D1D9605378
+72CF445A4A2E3666C0075E2F9AAC3F452811EF7E60E6C04F37F3808FE8BD39F2
+346F5E25757E3ED2232F1B9B4DADF83DA45F7F302809251973F705CF71E34C18
+7C452C4B5D29E0CB74CD6EA67637FFF0E9D9B211FF96E04FFFE9A27BE5E13BF6
+B51EF214FF4F0A58C5D5734E6BCB0ECD419AE3CF79AB67D1B3EAE70FC1E83691
+095D0C370C9CF847C2A914F0B810124D763A972464C5F2C1F69914A8672D46EE
+30F9EFFA7E9628D667E5DB582C123160BF28E77DBBD77598F14A32DD74F67032
+B4A0537D0FF938CC61BB0F9798B600FFB1AD7AE6AEE67E0FC6557FC3FBAA1E4E
+C793B0D207EE0395913818CB2446E9B82B880537C1625C70ACBC87F97CEA8C77
+82E6229E1734F80FBF8477F062F3836FA9DCF83A4BA49703FE3DCB5F2CF6266F
+4480EDFA91B1D98FAB8BE14DA6E84B9D58B46DE5D034734496474241F59317F4
+4AE4AFFABA7CA3FA149A26CF5050B83BDCB1C56B529900AA20EE6098D135E65E
+61026EF0852D497B3799DA044CB378332924CA360A1C62E24B5A0628813829AF
+A1236DD728559DAA01188D6EBBF3CEF983C5201904D03A46B62A41E9C5F494DB
+135F6B62BD5F3745625E96E1B401848BFD935AD1FE128507866FB807693E8376
+634F1B39763087EE7E454069D5CED93DAE8BE9D1366669A152968E2DF13EFA54
+D1A631CCCA33D914CC1DA8C0DF8ECE2FABD18641FFB43BB5E82DD0A56CC20DCC
+64EC0A7A04709085C80C2A1477CF85A29D0C11F204CEA455072DFBA6F5F5C693
+CB2B56EA189926EB51E92D2B5D89F25AB94E1F7FA208916FFE89601B616B41EB
+EFA70F4C8CFC3FAD1D056E4076E8CDC2C3058A2B35B34FA0A29A2ED3746060AD
+1A6B6988B1B0986DE495FDE9A8C45119DA7EC756E1C83C89842C8744AC4B80DC
+264792E2E8D5AE4120BC57C170C742EEB0EAE8C9C4537AE432654DA4DF89FD45
+AE0DBDD92D0DDFA0C90C4FB90FD5A7ABB522A193117153CF578A584447FCD674
+548ECB9250DA4669DDC8CDBEBBA49999F2519DE29B0CE693DEB2F420D4B0CE02
+D9AA3C2C15A6DC98495E1EA54C7670482E2B1034B91692285AC47EFD6271659E
+400D6D7DC137A904647FD092B1B4D59170F1EED8E29FCD584FEA2C77642AB839
+0A44403D75504E8DDF1BDBBA6B51B7F9F64B63676B6FBDE514701B9333312126
+4D8AC19B638254A4BFDEACA80AB2CBC4DD12AB48BC34771E210FB576FA0DE013
+5C49E765028D57C056BD7C14E6941B0A92A2073CA3CCA67E9A18F18BE4934550
+EFB984B486B9036B8E3221F63D8642E2C71E6547A8E4B25FC3EC3C42D27DFD85
+E85F2D08C69CDCF3174A09E363E92A8B3D75BFD57CA37144D5267BA4D1750988
+8FA3A9B9100838AA7DFFA97C5E4D2516F5649CA756C97C5A3D500A60D2AC5039
+812B603639C2E3CE36F26CC0AFCB385A5BBD582E7BD1B5920F67DBAF9ABF9EE5
+FCF66EECB566DD87F0618AB73199C230034DE379CAC1F6BD17526305D6B6ECD5
+8C5C57FA76FA775B2A25C7F5C83C27A1F4C71DCA93487469004EDFF855A156C0
+8C8EE1972CEB91B9292F5619118F7DA38B1FCDD069D71D0DAE61BE55AF0E255B
+3B8D2DE974592BCA7D92F0DE92538C74A801CF16A424621627BEE5BEC2CC5E68
+9B88BE0ADDB7C8125F7C35D74A52779C6D5D87143506EAB799765589617D08F3
+1305B15752D134A97F7D872CF330F4B3BB62946570C5EA7DB77612DF9B7F91E9
+22321623627FEC40FA04FDC1AA21DECC7AE531510375D6F68A68C6B8BD649A67
+A3E24B30E04ACC2171A510DCD77F7688E2ABD7D3346BD84E8363BCDB2EABBE0E
+5BC87A595CE80F977190EF06D3D0BE12DA50EA0C33D25617A9DA8940967906B5
+F5317F4CDCE1DCC7ED48B4AC4DA131EBCCD11F7D241551AF8A2A723A5C634EAC
+575113186D3B83F8B6E2E50796481B6CA50D440D5B20C5206A85F539FB7D52B8
+B831EF10B784D195BF7EFF05A9125A3B90CE131D84ADBBE6E47AAC2FBE51DDDF
+1286C0DCCA8343F7803FCB25CD690EF9FB49C1C3B91BB7FCE5D330C781744502
+AE46FEC050B4C695101F3B86ACE09D502572DFF5F8534DBE6DEAE838B4000712
+4B21697BA3FCDCCB3B858251438F05B3EA1F8CABC08A502C5324D1315214E7DA
+6B62576C10E6EE9A69FDB9D424FE1C7BC32CF37EE9EFC42B9F6726C486762574
+03913F9B3F5A20B1EFA8D4E072EA2F641D7AF64403C4EC76E3A81185B976499D
+C78FAD546598AB094B628942EBA51C11FD572264BFC7B0E97A1715D7443F29EB
+7BB4E6848383836F99850E22316C73B76B0E6848008B832E49B7373A94DADEE4
+E7EB32C428F531FFA2067E3316A47C08068D93E27525A9A2A915CD9F204AB4DE
+01EF65ECE8167C184DFA747930AA322FC136DE0D412E99E6F37ACF87A788141B
+3043A3B0D20DDE8C2137EF0DA77A899A581A51AC4CD5A1031F84BD428D0A17A9
+989877277917D07CB806DF051C23F1AB0049FBDE843B34CFC9DEC4147D97759E
+983C395F0C9DC2832139DFDE0455002BEBC392E7617156400301F76441347A3E
+E94D2FB65A31DA189BCC3CE94AFC1613B546D424A36EB2F83F3444DDAB0F03A0
+F3C270A9B8BC62465F46D83929DB7F0240E52CAC458194BFD50645F825D0C41C
+773B1D6757625906C7643BDCE990E24467C011ACDAF6D4A26A62D71FAF1F475C
+F14CA4D545E9E4F80BB01F3AC573D046DA7356FB9884CAE3A29DC357BC8CB255
+E5108AB355F0E087902C9BB458DCE8F341F1AEB79E468EE9A45855FE037780E7
+9EA9ADC1CFA141A3F976DFEF51A428D237F234BF5C694DAD4CCF2AE84FFAB574
+A25C1FBA2F38110C305D962420A310FE93301B8677478BDBBBDC518B8C94E819
+26BD2529D0EBF0E770CB3A1E107440D135848D2F90CE8F37693EDAF6071B79F4
+FEA5ABF4D9F2DC67F2468F2BDA3FA968EED4CAF8D7A22CB28AA43804F72F56B9
+545DBD0E3F27DD5617329305CD8577AF38CD4C472CB181CF3DBEA07CD42C6C1C
+51E819286FFFC75E38F5EFF96C763F51A31A78B0848CF56DE1A2CBE2F39B0C41
+FC7C0D42D48D6C75516316B27F6C34AE6D5F5873233914790ECE044C014E9796
+20E200F53FC51ABFEC15C1E08D36E9A4DA7E58DAC014E2C0627EE8ACC6AD021A
+D2E2C431ACE954602EB99D4584250637F807507A17DA18521B6820E066058B09
+8C2B4609FDEA9E02007A097F833C7A9854D74B38DC81016759DD8FC6F98071FE
+620AFA1A8DE5AA974C281A1DEC9C8B866E7E350BE5EF3C7C53F82280790CF239
+C847E4C7F74BCEBED8BCC57D4C01BC4394F0E9EC5AD01852B3B06B93A477A1AB
+AA97B588415A03C1984B0C9619C899DFD4766A2CE91CD6A65120E07756100696
+297345CACCE1551A2CB549077A292B73ECD47C3A098049BC49F2125BBF004DAA
+8827C407B06A07E5F39CC17843FE876FB2DC6CA2ADC0A4D8812901FC82913ECF
+BD04C66B3647B7A698B4BC6C2F136C04AF4792F10C31231F2A04E4B55538CC17
+AFE4B47BA2F575BB4E7E222E9F6A4F904F11CBBC6DF6C2F3C15DCF268A39D6AB
+DEB9D091EFE6ECD5DF61ED23E570D484A6AFD5F8D34B7D484F76F150D3D97EBE
+5E91D7A458FAB380BE167E7F2FAAC82BC2C7F3C14BDFD06D9665F5AB2CE34800
+E779AC43B70E22199D3BC4A2A14EFD5D20AF12D8CC26BCE54762ECCA9D9F5FDE
+84B43104575B2D6533FD3BD245AAAA4B82314EAEC2E6E566EB32AE367D2F2BBE
+8F6DF9D63F56693D701E259ED828A3E27561A5901B87F606AADBEDDD7E846AC1
+F07D1ACCEC90CF6AB18114A140FE4BC918EDC9B06284B40E2C82D4BE3C1EAB92
+E2E2F0DE115737561F7ACA173B81C9AF7EFCD6797BC1AE6366646C8F1ADC38A9
+F1928933BFB6AB474FA81D8C006AA11B76461ED98DB4DCB95D7772E3D15C2A29
+F116DF0437225E8EA1FC5C3997633CD63539069F7788AAB84BC9FA8A1A61316D
+2C0F07D2914A61B0418912B276561540BE5DBC1F7A20241E85ED95BB775E16D4
+1F22262C8128967F53031EBA86D0A2184DEB01D51D4F7E15BADE50B7DE246C05
+38B9B49D264A4B29A372FCBF57323308C71A0E14748850B56D51BB932B1DCAA3
+A1469E84536A42B0D8B55A0292C8050D6CD1BFDCC4D287B15082801EA40AB8DE
+CD8628D0E1252DBC57333D74841246D7A6392F158EAA9FD5BC6CB2E535DDBEAB
+F16FF32617952596187203D41342DF7FC1E0CAEA2EE8F012236DAB0208A626E4
+5FC5EC819580727F7890BF2B114523A3006CFE3B67F19419A009826C635C4B2C
+10CED88293D753A6FC63C5C17A424E911169E316DAC022EE37A5F93A6D7BB446
+5402EDB1F758FFCCBE83F7842CF09E84DAC17CC8A5D0521CDBCA8B320D90F24F
+32AA9B86DAFD068FB0D234C94EC0889134DCCF83F8B0C89F67D660EC4D6E2B34
+D4CC5E094049ACFA09767E7C0AFD789767D0660825FC94878BFCA40105597194
+BDF88A8636D180BAFEF635601218B47E1242497D1E90E7A0F1098FE4161E6C7D
+D1E920DBECEDE54FD9D8EA40E25881F0E31C3FECCA22ED507DF496122D25AF56
+E6E690952EC746BE46F4D228D54C634B04D036DD33252E5A5B6309E559EB9CF9
+DD17101EF262D5FEBE9C207007A2E7F3BCCCE3243333F0A79C1779E727414D60
+B451BDC14BA3FFCBB9D49641DE51BE92C7D136C2C910559A6EE106DC05CB4890
+322BC12FD592C4789FD8368DFB7827A67FF8FADE351646D0B4B35F74A924E229
+DDCBE1B5D24D049CBD4424B123B6AAE7F5AF8AEEC7F862431541F6B755A272CE
+177CAB058D297A35041646435664056644B2422B2CB890080C3BEC3C52C6363C
+B843F24977C482C7A37CF18DEDE4E8FECB280E86263BBB5BD413A9BE19329817
+EC424B1AEEEF713A52D68143AF0DC2B02F293425F041A616D148ABED9E7FA7A0
+AE99B5762A52E38BE8E7148EF22808632CBDEA8613948D8E3D576580FA3F4B3E
+0B5F9E1B240BC7D0744FB1D121E3231994DEDE24B919A72869C15B839DDD9917
+D3BF2466E673B142E4B527B17893D3405603E1271E2D005A6318DC98CFA3D25C
+3A7B59A16B1D6C5C31F267B964E951DFDB1143F8D9005E378A3D4F5B072911CC
+814C191A806A989BC176544E45BA9A5CB16281394572CC6275A96865BEAB6F9D
+06DD94701FB30DEAC86652473C182379F43877528F28AB0B5FD9669347003055
+2E6169601690053E00E18BE7FA7143DA61EA74326BE8122E56485E65B0572821
+BBE05576C1D9706EE219A8377338E93DFFFEE5E37E6054412A9B875A092C948C
+C4663F161AEBAFBB964859E9056D42B76A806A2B1C435318459E272DD51339B6
+B16BC73787ADF1D7A2CD630CA98F8B6C479693BA427D7096E83AAC35B6D1CCAE
+B5879B03B706C6AA3FC1A1D180315A2252DE59C45E9429E107D7A73A645AB182
+6FCD53B44907874A1B286BC50D9051160CBFB374856E59C961C376C3B553454B
+108BC5FFAC60EB8C7426A70A1FFC2CE80D8989A3EEC43A9AD51771D48884BB32
+1749E328FDCCD4FDD104E80EB6813FB98D83139791DD2A2C9ED7A70BC458DB09
+5D73B21DAF0FFC110324B8F2BC145FA61962C5D78B4D6C8D014D6938AF09F36A
+2A3E5634A140A1A525BFCAA00616AA1D8195A8A68E4260B8ADDDF789B131C074
+01EF325E06AEA94A459CE1F51F312C3C19142528AC941551F324BE2653BBCF38
+46DDC6BDF7EF77D68C32F4DE7D8604E63A632AB2108086C77B94DC31D926D1E7
+1D3653D8B35CC5AC431368B7B2D7C3A565FEE9D9B2E366F265A627FE7B4378C4
+81A0C4DBDDE6F7DD940F08764D307A5B09097320431AA76A41C4ADE92C260588
+522B197B802DC488FA2169BC2E13AE36A98591E1673C1CAC29B4E0E15D2227E7
+80928CA4C060FECE89B014C3FB6A42313FC438E448DDD73CB66ADEF1FACF2E2A
+4601F76ECFF658D97BC22C765C0B1B04B03EE08A41E2C778A8E5954CABE7B386
+BFC2DC7C60E720BAB2B1A726D8AF4933355F21731FD7C930F31720C1E16F6C01
+C0C8B6747961B605CDFFB02FD6D6A7758B1097AA1D47C6DA9DBF0F87E55672AD
+FE93D17DA6FE7B2E3A5360C5BF0C3F4715165CC6748BC95CFA74D4AD57B481B9
+3784040A6B1BB028CA9F69B6AE52CFF8FF3FD169FDE1A85B52651D99B4042E72
+D5E952BD9F976EFA21C935F2ECBF5C8D4D8BA0AA97DD1458650F6DB9C80B3B21
+F60761C150944567DE98E9DED3BB831A57DE2A5C8CC4417D0D02BF24EB09C2A7
+B8262EFB223FDEDB45E75E2559190060C676B43721B5894EA52440AAAF72B77D
+42138ABF062B92255DCE006EC18492D4CC0CA6FE753E8851305B967B4B01D481
+85D8A1B78CAEBEB99ED44E5BD7B0CD242B46F8C3C4B1DCE6B103497A89D0C48A
+FCA2DDB3CBEF2CC076673FE28DD397F4975BF03EABF542C8ECAE8311822A6564
+14C20DE022F9AFBF672B31D124F96E2475073E6B53F8032685A45AC7181B0158
+A6FDBF2DFCC9D842D42E098BC02AEFABA6D571821604BBDC389E80931BC8A767
+A92DC7CE49EDDC3C89521CD3AF5AEFF121EAA27B74A37BF043B1AC045A0D9A38
+8767D85D15DBF0F5ABC495207AA3AD05BE201642206044F470EFDF4A8D52C050
+D600F04B97ACED3F7FC8A56E7640A6A4AAAE1816F3A77D887A378AA0B130B509
+72A8ADBD5808E9BBB7F83216D995EC74FD168D5A3D171AB9C52A0E21169172A2
+9C680D926D2327A314835700D399CE25A8311D22D1127B43CB8A9D900133C4D1
+CA1F71C4331F37DBE7F26650B4D512C5E192635CD8CF4C560AB5BFFE0671424D
+456BA00271A643AA2477DAB650F682D89B932BEBB5A66EBC9072A469EE78E0B3
+86F58B1BA76F31B978C167A0E5CE18889C4DA968CEF94EFA70060960E1D53535
+17230FC0C8AA0E878AD3D6E306533800DB46BF785219872DBCAAEC33A236A8AA
+E86D9C9316CEE8D75888217824D56420EF7AFE70E18C6AC6E7E71161373D574A
+D399548B201868F2D1B2DEC136ECFEFE25C307630331F2F893FE36E0CCC8113F
+9D7A6DE87881BC713E6B438F1E804B2C6F00DAA4FF0A33F2B051EE2655BD8583
+9AA5BB2F7A4AD400F34963FA1BD28D5AB933EAE84C047D636122BE431DB097BC
+85D7CB6C30B09333A567F7DFC0A0482E4373512294562297BACC2F53E2BF1718
+4E23AA470CB1879235832D66846522B8EC1536E17172B8DA9DEB14877C9405D4
+531E548E8ACEBE66D41992C0D0A25CE7FE2641DC2F06A1399C864A7C1155DDD4
+20A2D292688E6426B147572C2CD3706C96C22C977A4A6C4A30A54C7DDD50DCB9
+7BBC5C0B744CD85DF88166B916C0F1909A38742C6BCB58045C4223B70F4B3BAD
+74EBBE8395A3F64A14D6838554EB6AB7CE417DD7448EBB4F3EE10B13B454C4EA
+949AF16A87E72ED21159408171A4847199C5E403FADCC67D0FFA5A58452ADC67
+FC3C597826B20BD85A1AC7BFA715531D99DDA5155185E3FBF29DDF559A103F75
+538AC8CC0B4C4041288E89B387F6ABE04F90E8CEB2099293D1DC4FE00647C80C
+5DBE532282708D050BC6A226F45DBC314D109554BB25CF04770ED4874EED1B1F
+E18E006F254BB4297C435B416A9AFC6FC51568D89317BCDD9885E2D1ED15F4F7
+AF253B5FAEE5CC44BF9D860982B7F4706C8B8018E6488E337B773A4A7AAF9998
+6796B30721736F7AB66CE22EBEF616FE5847929A2E08D64DA7E912F4CA899F73
+6A0A1F1F2163886A7C5E6999D98AB9708EADE2030050B2D05AEF0AA9447F8698
+7C191DD81DB9131D0DC19BB7CD0CD9A60AEBBA3FAD203CA51B6FECB75EC91C14
+EE75CBB49420594C7B9A56EDE29343B5D1817AFF27B71F0BF2B8D59D8198C2B7
+A9F4091A085C973412051D6ACCD3F0B37D502D8FE193CD5E42769D1F497847CF
+B986233F0DE24FE2F4ED03BFA105DD04182887D3C6CB827A1D5B00170B8DFA5E
+EB1BE4FEEACCC82A5BB4BCE2C8320CBCF6EEBFC955025F3980763F51170EA440
+C2144AD36893326E5A3DC214AF59FF505E8168593AB9543FC6690F0D63262FBB
+978B833906430E5D2DC99D729D1CCE7A0A91725537BCF91DFBF8073EEE494A2B
+E38F1AA3D81C602D05FAD3CA3A8A5A7E1F0A7F7CA736B561F3C29275E68D01E1
+FA253D089243988C475ABF8077C71DD93F1414E69FAEE565F42C863C61BE554B
+44C92919D78D898E70510D9EA1FCAB702FD53337263606A777A001224390AA6C
+D8CA04FE8F34D61F03E083D0A050EA3985ED026479142A7184494C615A7AC675
+97B6196C56F2034850A77938B7585B18AEEA2D249E41D25302DFF2416FCADC13
+E69030FD907778821C66F93220A31991386640AC2315A5B7DB80B4AE91A6A4D7
+8BC19E632295CFECA8D65B4045C5A7614852CD48686A27D61F6DC6ED6120D30D
+92C97F4D0B5135823FA4A59DFB7633
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi)
+@start /Fa 130[55 1[55 123[{ T1Encoding ReEncodeFont }2
+116.231 /SFRM1440 rf /Fb 133[34 41 41 55 41 43 30 30
+30 41 43 38 43 64 21 41 23 21 43 38 23 34 43 34 43 38
+8[58 4[43 57 1[52 60 58 70 48 2[28 58 3[59 55 54 58 7[38
+38 38 38 38 38 38 38 38 38 2[26 21 31[43 12[{}53 74.7198
+/CMR9 rf /Fc 197[21 58[{}1 74.7198 /CMMI9 rf /Fd 134[39
+39 2[39 39 39 39 2[39 39 39 39 2[39 39 1[39 39 39 2[39
+19[39 27[39 39 2[39 45[{}20 74.7198 /CMSLTT10 rf /Fe
+129[39 39 1[39 39 39 39 39 39 39 39 39 39 39 39 39 39
+39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 1[39
+39 39 39 39 39 39 39 39 39 1[39 39 39 39 39 39 1[39 39
+39 39 39 39 39 39 39 39 39 39 1[39 39 39 5[39 39 39 39
+39 39 39 39 39 1[39 39 39 39 39 1[39 39 1[39 33[{}81
+74.7198 /CMTT9 rf /Ff 167[62 3[60 46 2[57 1[62 76 52
+1[43 1[62 65 54 1[63 60 67[{}13 83.022 /CMR10 rf /Fg
+135[67 2[67 1[50 2[61 69 5[33 1[70 2[68 52[60 47[{}9
+109.174 /CMCSC10 rf /Fh 140[56 3[56 56 1[56 2[56 56 56
+57[56 45[{}8 109.091 /CMTT12 rf /Fi 130[45 1[45 123[{
+ T1Encoding ReEncodeFont }2 91.3242 /SFRM1095 rf /Fj
+134[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 1[48 1[48 48 48 2[48 3[48 48
+48 1[48 1[48 48 48 2[48 48 1[48 48 48 48 1[48 6[48 6[48
+48 48 48 2[48 5[48 39[{}51 90.9091 /CMSLTT10 rf /Fk 134[65
+65 89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61
+37 56 68 55 68 60 7[93 93 127 1[94 85 68 92 92 84 92
+96 116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61
+61 61 61 61 61 61 61 61 1[34 41 34 31[68 72 11[{}63 109.091
+/CMBX12 rf /Fl 135[42 1[42 1[30 37 38 1[46 46 51 74 23
+2[28 1[42 28 42 46 42 1[46 51[33 32[51 12[{}19 90.9091
+/CMTI10 rf /Fm 135[56 2[56 1[42 55 1[51 58 56 1[47 2[27
+1[58 49 51 57 54 53 56 97[{}16 90.9091 /CMCSC10 rf /Fn
+197[25 58[{}1 90.9091 /CMMI10 rf /Fo 197[33 58[{}1 119.552
+/CMMI12 rf /Fp 134[85 85 1[85 90 63 64 66 1[90 81 90
+134 45 1[49 45 90 81 49 74 90 72 90 78 10[122 124 112
+90 120 3[126 153 97 1[83 60 126 127 101 106 124 117 115
+122 7[81 81 81 81 81 81 81 81 81 81 35[90 94 11[{}52
+143.462 /CMBX12 rf /Fq 200[0 21[91 17[45 1[91 12[71{}5
+90.9091 /CMSY10 rf /Fr 133[40 48 48 66 48 51 35 36 36
+48 51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 7[68
+68 93 1[68 66 51 67 71 62 71 68 83 57 71 1[33 68 71 59
+62 69 66 64 68 13[45 45 45 3[30 8[45 2[25 18[76 1[51
+53 11[{}58 90.9091 /CMSL10 rf /Fs 132[67 1[71 71 97 71
+75 52 53 55 1[75 67 75 112 37 71 41 37 75 67 41 61 75
+60 75 65 3[37 1[37 1[102 102 139 102 103 94 75 100 101
+92 101 105 128 81 105 69 50 105 106 85 88 103 97 96 102
+105 64 4[37 67 67 67 67 67 67 67 67 67 67 1[37 1[37 1[67
+5[67 112 1[41 20[75 78 11[{}73 119.552 /CMBX12 rf /Ft
+129[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 33[{}93 90.9091 /CMTT10 rf /Fu 131[91 45
+40 48 48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25
+51 45 28 40 51 40 51 45 25 2[25 45 25 56 68 68 93 68
+68 66 51 67 71 62 71 68 83 57 71 47 33 68 71 59 62 69
+66 64 68 71 43 1[71 1[25 25 45 45 45 45 45 45 45 45 45
+45 45 25 30 25 1[45 35 35 25 71 76 45 76 45 25 18[76
+51 51 53 11[{}91 90.9091 /CMR10 rf /Fv 138[108 1[76 79
+3[108 1[54 3[108 1[59 88 1[86 1[94 14[144 4[184 10[138
+66[{}13 172.154 /CMBX12 rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+%%BeginPaperSize: Letter
+/setpagedevice where
+{ pop << /PageSize [612 792] >> setpagedevice }
+{ /letter where { pop letter } if }
+ifelse
+%%EndPaperSize
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5
+b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31
+b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(5.3,)g(for)f
+Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.3.)3145 1697 y(Decem)m(b)s(er)g(2024)
+150 4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11
+b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068
+y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
+b(oundation)p 150 5141 3600 17 v eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop 150 4279 a Fu(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 4389 y(5.3,)c(12)f(Decem)m(b)s
+(er)g(2024\).)150 4523 y(This)f(is)g(Edition)h(5.3,)h(last)g(up)s
+(dated)d(12)i(Decem)m(b)s(er)h(2024,)h(of)d Fr(The)g(GNU)i(Bash)e
+(Reference)i(Man)m(ual)p Fu(,)150 4633 y(for)e Ft(Bash)p
+Fu(,)g(V)-8 b(ersion)31 b(5.3.)150 4767 y(Cop)m(yrigh)m(t)602
+4764 y(c)577 4767 y Fq(\015)f Fu(1988{2024)35 b(F)-8
+b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
+4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
+b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
+(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
+b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
+b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
+b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
+b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
+b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
+b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
+5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
+b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
+%%Page: -1 3
+TeXDict begin -1 2 bop 3725 -116 a Fu(i)150 299 y Fp(T)-13
+b(able)53 b(of)h(Con)l(ten)l(ts)150 649 y Fs(1)135 b(In)l(tro)t
+(duction)31 b Fo(:)19 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)h(:)f(:)g(:)44 b Fs(1)275 786 y Fu(1.1)92
+b(What)31 b(is)f(Bash?)10 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)23 b Fu(1)275 896 y(1.2)92 b(What)31
+b(is)f(a)h(shell?)22 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)35 b Fu(1)150 1147 y Fs(2)135 b(De\014nitions)31
+b Fo(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
+f(:)h(:)f(:)g(:)h(:)43 b Fs(3)150 1425 y(3)135 b(Basic)45
+b(Shell)g(F)-11 b(eatures)19 b Fo(:)h(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+h(:)f(:)32 b Fs(5)275 1562 y Fu(3.1)92 b(Shell)30 b(Syn)m(tax)13
+b Fn(:)j(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+27 b Fu(5)399 1671 y(3.1.1)93 b(Shell)30 b(Op)s(eration)14
+b Fn(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(5)399
+1781 y(3.1.2)93 b(Quoting)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)37 b Fu(6)524 1890 y(3.1.2.1)93
+b(Escap)s(e)30 b(Character)19 b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)33 b Fu(6)524
+2000 y(3.1.2.2)93 b(Single)31 b(Quotes)16 b Fn(:)g(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)30
+b Fu(6)524 2110 y(3.1.2.3)93 b(Double)31 b(Quotes)14
+b Fn(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)28 b Fu(6)524 2219 y(3.1.2.4)93
+b(ANSI-C)30 b(Quoting)15 b Fn(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29 b Fu(6)524
+2329 y(3.1.2.5)93 b(Lo)s(cale-Sp)s(eci\014c)32 b(T)-8
+b(ranslation)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)30
+b Fu(7)399 2438 y(3.1.3)93 b(Commen)m(ts)14 b Fn(:)i(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(9)275 2548 y(3.2)92
+b(Shell)30 b(Commands)9 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)23 b Fu(9)399 2658 y(3.2.1)93 b(Reserv)m(ed)31
+b(W)-8 b(ords)27 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)40
+b Fu(9)399 2767 y(3.2.2)93 b(Simple)30 b(Commands)15
+b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)29 b Fu(9)399 2877 y(3.2.3)93
+b(Pip)s(elines)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)36 b Fu(10)399 2986 y(3.2.4)93 b(Lists)30
+b(of)h(Commands)20 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(11)399
+3096 y(3.2.5)93 b(Comp)s(ound)28 b(Commands)9 b Fn(:)14
+b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+22 b Fu(11)524 3205 y(3.2.5.1)93 b(Lo)s(oping)30 b(Constructs)16
+b Fn(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)29
+b Fu(12)524 3315 y(3.2.5.2)93 b(Conditional)31 b(Constructs)25
+b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39
+b Fu(12)524 3425 y(3.2.5.3)93 b(Grouping)30 b(Commands)22
+b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)36
+b Fu(17)399 3534 y(3.2.6)93 b(Copro)s(cesses)26 b Fn(:)15
+b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(18)399
+3644 y(3.2.7)93 b(GNU)31 b(P)m(arallel)13 b Fn(:)k(:)f(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)26 b Fu(19)275 3753 y(3.3)92 b(Shell)30
+b(F)-8 b(unctions)16 b Fn(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+(:)h(:)29 b Fu(19)275 3863 y(3.4)92 b(Shell)30 b(P)m(arameters)c
+Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38 b
+Fu(22)399 3973 y(3.4.1)93 b(P)m(ositional)32 b(P)m(arameters)8
+b Fn(:)17 b(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)21 b Fu(23)399 4082 y(3.4.2)93 b(Sp)s(ecial)30
+b(P)m(arameters)c Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37 b Fu(23)275 4192
+y(3.5)92 b(Shell)30 b(Expansions)24 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)38 b Fu(24)399 4301 y(3.5.1)93 b(Brace)31
+b(Expansion)9 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b
+Fu(25)399 4411 y(3.5.2)93 b(Tilde)30 b(Expansion)18 b
+Fn(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)31 b Fu(26)399 4521 y(3.5.3)93
+b(Shell)30 b(P)m(arameter)i(Expansion)26 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)39 b Fu(27)399 4630 y(3.5.4)93
+b(Command)29 b(Substitution)20 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(35)399 4740
+y(3.5.5)93 b(Arithmetic)31 b(Expansion)c Fn(:)15 b(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b
+Fu(36)399 4849 y(3.5.6)93 b(Pro)s(cess)30 b(Substitution)15
+b Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)28 b Fu(36)399 4959 y(3.5.7)93 b(W)-8
+b(ord)31 b(Splitting)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41
+b Fu(37)399 5068 y(3.5.8)93 b(Filename)32 b(Expansion)22
+b Fn(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)35 b Fu(37)524 5178 y(3.5.8.1)93 b(P)m(attern)31
+b(Matc)m(hing)14 b Fn(:)k(:)d(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)27 b Fu(38)399 5288 y(3.5.9)93
+b(Quote)31 b(Remo)m(v)-5 b(al)17 b Fn(:)g(:)e(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)30
+b Fu(40)p eop end
+%%Page: -2 4
+TeXDict begin -2 3 bop 3699 -116 a Fu(ii)275 83 y(3.6)92
+b(Redirections)14 b Fn(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)27 b Fu(40)399 193 y(3.6.1)93 b(Redirecting)31
+b(Input)11 b Fn(:)j(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(41)399 302
+y(3.6.2)93 b(Redirecting)31 b(Output)15 b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)28
+b Fu(42)399 412 y(3.6.3)93 b(App)s(ending)28 b(Redirected)k(Output)20
+b Fn(:)14 b(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(42)399
+521 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)h(and)f(Standard)h
+(Error)16 b Fn(:)e(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)29 b
+Fu(42)399 631 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)h
+(Standard)f(Error)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40
+b Fu(42)399 741 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)15
+b Fn(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)27 b Fu(43)399 850 y(3.6.7)93
+b(Here)31 b(Strings)16 b Fn(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29
+b Fu(43)399 960 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)25
+b Fn(:)15 b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37
+b Fu(43)399 1069 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)d
+Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+40 b Fu(44)399 1179 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
+(for)f(Reading)h(and)f(W)-8 b(riting)29 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f
+(:)41 b Fu(44)275 1289 y(3.7)92 b(Executing)31 b(Commands)24
+b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Fu(44)399 1398 y(3.7.1)93
+b(Simple)30 b(Command)f(Expansion)11 b Fn(:)k(:)g(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)24 b Fu(44)399 1508 y(3.7.2)93 b(Command)29
+b(Searc)m(h)i(and)f(Execution)15 b Fn(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+28 b Fu(45)399 1617 y(3.7.3)93 b(Command)29 b(Execution)i(En)m
+(vironmen)m(t)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)30 b Fu(45)399
+1727 y(3.7.4)93 b(En)m(vironmen)m(t)26 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)39 b Fu(46)399 1836 y(3.7.5)93 b(Exit)31
+b(Status)16 b Fn(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)29
+b Fu(47)399 1946 y(3.7.6)93 b(Signals)23 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)36 b Fu(48)275
+2056 y(3.8)92 b(Shell)30 b(Scripts)12 b Fn(:)i(:)i(:)f(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)25 b Fu(49)150 2306
+y Fs(4)135 b(Shell)45 b(Builtin)g(Commands)14 b Fo(:)20
+b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)27 b Fs(51)275 2443 y Fu(4.1)92 b(Bourne)30
+b(Shell)g(Builtins)16 b Fn(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29
+b Fu(51)275 2553 y(4.2)92 b(Bash)30 b(Builtin)h(Commands)13
+b Fn(:)h(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)26 b Fu(60)275 2663 y(4.3)92 b(Mo)s(difying)30
+b(Shell)g(Beha)m(vior)18 b Fn(:)f(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)31 b Fu(72)399
+2772 y(4.3.1)93 b(The)30 b(Set)g(Builtin)14 b Fn(:)i(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)27 b Fu(72)399 2882 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)21
+b Fn(:)16 b(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)34 b Fu(77)275 2991 y(4.4)92
+b(Sp)s(ecial)30 b(Builtins)9 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)22 b Fu(83)150 3242 y Fs(5)135 b(Shell)45
+b(V)-11 b(ariables)11 b Fo(:)20 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)24 b Fs(85)275 3379 y Fu(5.1)92
+b(Bourne)30 b(Shell)g(V)-8 b(ariables)10 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+23 b Fu(85)275 3489 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)26
+b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38
+b Fu(86)150 3739 y Fs(6)135 b(Bash)44 b(F)-11 b(eatures)32
+b Fo(:)19 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+44 b Fs(99)275 3876 y Fu(6.1)92 b(In)m(v)m(oking)31 b(Bash)16
+b Fn(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)29
+b Fu(99)275 3986 y(6.2)92 b(Bash)30 b(Startup)g(Files)c
+Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39 b Fu(101)275 4095
+y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)30 b Fu(103)399 4205 y(6.3.1)93 b(What)31
+b(is)f(an)h(In)m(teractiv)m(e)h(Shell?)23 b Fn(:)15 b(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)36 b Fu(103)399 4315 y(6.3.2)93 b(Is)30
+b(this)g(Shell)g(In)m(teractiv)m(e?)20 b Fn(:)e(:)e(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(103)399 4424
+y(6.3.3)93 b(In)m(teractiv)m(e)33 b(Shell)d(Beha)m(vior)8
+b Fn(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22
+b Fu(103)275 4534 y(6.4)92 b(Bash)30 b(Conditional)h(Expressions)c
+Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)41
+b Fu(104)275 4643 y(6.5)92 b(Shell)30 b(Arithmetic)11
+b Fn(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)24 b
+Fu(106)275 4753 y(6.6)92 b(Aliases)18 b Fn(:)e(:)g(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)31
+b Fu(108)275 4863 y(6.7)92 b(Arra)m(ys)23 b Fn(:)15 b(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)36
+b Fu(109)275 4972 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)14
+b Fn(:)j(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)27 b Fu(111)399 5082 y(6.8.1)93
+b(Directory)32 b(Stac)m(k)f(Builtins)20 b Fn(:)c(:)f(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)33 b Fu(111)275 5191
+y(6.9)92 b(Con)m(trolling)31 b(the)g(Prompt)10 b Fn(:)15
+b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)23 b Fu(112)275 5301 y(6.10)92 b(The)30 b(Restricted)h
+(Shell)9 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22 b Fu(114)p
+eop end
+%%Page: -3 5
+TeXDict begin -3 4 bop 3674 -116 a Fu(iii)275 83 y(6.11)92
+b(Bash)31 b(and)e(POSIX)12 b Fn(:)j(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)25
+b Fu(115)399 193 y(6.11.1)93 b(What)31 b(is)g(POSIX?)22
+b Fn(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)36 b Fu(115)399 302 y(6.11.2)93 b(Bash)31
+b(POSIX)e(Mo)s(de)18 b Fn(:)e(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)31 b Fu(115)275 412 y(6.12)92
+b(Shell)30 b(Compatibilit)m(y)i(Mo)s(de)25 b Fn(:)15
+b(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
+b Fu(120)150 663 y Fs(7)135 b(Job)45 b(Con)l(trol)35
+b Fo(:)20 b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
+g(:)48 b Fs(123)275 800 y Fu(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)23
+b Fn(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)36 b Fu(123)275 909
+y(7.2)92 b(Job)30 b(Con)m(trol)h(Builtins)11 b Fn(:)k(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)24 b Fu(124)275 1019 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8
+b(ariables)26 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Fu(127)150
+1269 y Fs(8)135 b(Command)45 b(Line)g(Editing)11 b Fo(:)20
+b(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)k Fs(128)275 1406 y Fu(8.1)92 b(In)m(tro)s(duction)
+30 b(to)h(Line)f(Editing)12 b Fn(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)25 b Fu(128)275 1516 y(8.2)92
+b(Readline)31 b(In)m(teraction)14 b Fn(:)j(:)e(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)27
+b Fu(128)399 1626 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)13
+b Fn(:)j(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)26
+b Fu(129)399 1735 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
+(Commands)13 b Fn(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)27
+b Fu(129)399 1845 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)24
+b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
+b Fu(130)399 1954 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)17
+b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)30 b Fu(130)399 2064 y(8.2.5)93 b(Searc)m(hing)31
+b(for)f(Commands)f(in)h(the)h(History)15 b Fn(:)g(:)h(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)28 b Fu(131)275
+2174 y(8.3)92 b(Readline)31 b(Init)f(File)8 b Fn(:)17
+b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b Fu(131)399 2283
+y(8.3.1)93 b(Readline)31 b(Init)f(File)i(Syn)m(tax)21
+b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)34
+b Fu(131)399 2393 y(8.3.2)93 b(Conditional)31 b(Init)f(Constructs)14
+b Fn(:)h(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)27
+b Fu(141)399 2502 y(8.3.3)93 b(Sample)30 b(Init)g(File)20
+b Fn(:)d(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(142)275 2612 y(8.4)92
+b(Bindable)30 b(Readline)h(Commands)19 b Fn(:)c(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(145)399 2721 y(8.4.1)93
+b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)16 b Fn(:)h(:)e(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29 b Fu(145)399
+2831 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f
+(History)c Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)39 b Fu(146)399 2941 y(8.4.3)93 b(Commands)29 b(F)-8
+b(or)31 b(Changing)f(T)-8 b(ext)9 b Fn(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)23 b Fu(148)399 3050 y(8.4.4)93 b(Killing)31
+b(And)e(Y)-8 b(anking)10 b Fn(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(149)399
+3160 y(8.4.5)93 b(Sp)s(ecifying)30 b(Numeric)g(Argumen)m(ts)25
+b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)39 b Fu(151)399
+3269 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)20 b Fn(:)c(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)33
+b Fu(151)399 3379 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)9
+b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(153)399 3489 y(8.4.8)93
+b(Some)30 b(Miscellaneous)j(Commands)14 b Fn(:)f(:)j(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)27 b Fu(153)275 3598 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)e
+Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41 b Fu(156)275
+3708 y(8.6)92 b(Programmable)30 b(Completion)25 b Fn(:)15
+b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)37
+b Fu(156)275 3817 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)14
+b Fn(:)i(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(159)275
+3927 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)8
+b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)22 b Fu(163)150 4178 y
+Fs(9)135 b(Using)45 b(History)h(In)l(teractiv)l(ely)28
+b Fo(:)22 b(:)d(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+(:)h(:)41 b Fs(166)275 4315 y Fu(9.1)92 b(Bash)30 b(History)h(F)-8
+b(acilities)9 b Fn(:)19 b(:)c(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(166)275
+4424 y(9.2)92 b(Bash)30 b(History)h(Builtins)d Fn(:)16
+b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)h(:)f(:)41 b Fu(167)275 4534 y(9.3)92 b(History)31
+b(Expansion)10 b Fn(:)k(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)23
+b Fu(169)399 4643 y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)19
+b Fn(:)e(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)32 b Fu(170)399 4753 y(9.3.2)93 b(W)-8
+b(ord)31 b(Designators)c Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(171)399
+4863 y(9.3.3)93 b(Mo)s(di\014ers)15 b Fn(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)29 b Fu(172)p eop end
+%%Page: -4 6
+TeXDict begin -4 5 bop 3677 -116 a Fu(iv)150 83 y Fs(10)135
+b(Installing)46 b(Bash)16 b Fo(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)h(:)f(:)29 b Fs(173)275 220 y Fu(10.1)92 b(Basic)32
+b(Installation)8 b Fn(:)17 b(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22
+b Fu(173)275 330 y(10.2)92 b(Compilers)30 b(and)g(Options)17
+b Fn(:)d(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)30 b Fu(174)275 439 y(10.3)92 b(Compiling)30
+b(F)-8 b(or)32 b(Multiple)f(Arc)m(hitectures)10 b Fn(:)16
+b(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)23 b Fu(174)275 549 y(10.4)92
+b(Installation)32 b(Names)22 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)35
+b Fu(175)275 658 y(10.5)92 b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s
+(e)21 b Fn(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)34 b Fu(175)275 768 y(10.6)92 b(Sharing)30 b(Defaults)24
+b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37 b Fu(175)275
+878 y(10.7)92 b(Op)s(eration)30 b(Con)m(trols)12 b Fn(:)k(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)25 b Fu(176)275 987 y(10.8)92 b(Optional)31
+b(F)-8 b(eatures)19 b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)32
+b Fu(176)150 1238 y Fs(App)t(endix)44 b(A)119 b(Rep)t(orting)46
+b(Bugs)21 b Fo(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)35 b Fs(182)150 1498 y(App)t(endix)44
+b(B)125 b(Ma)7 b(jor)46 b(Di\013erences)g(F)-11 b(rom)284
+1639 y(The)45 b(Bourne)f(Shell)35 b Fo(:)19 b(:)h(:)f(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)47 b Fs(183)275 1776 y Fu(B.1)92
+b(Implemen)m(tation)31 b(Di\013erences)h(F)-8 b(rom)31
+b(The)e(SVR4.2)j(Shell)22 b Fn(:)15 b(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)35 b Fu(188)150 2027 y Fs(App)t(endix)44 b(C)124 b(GNU)36
+b(F)-11 b(ree)35 b(Do)t(cumen)l(tation)i(License)25 b
+Fo(:)20 b(:)29 b Fs(190)150 2305 y(App)t(endix)44 b(D)118
+b(Indexes)27 b Fo(:)20 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)40
+b Fs(198)275 2442 y Fu(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h
+(Commands)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38
+b Fu(198)275 2552 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8
+b(ords)20 b Fn(:)c(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)34
+b Fu(199)275 2661 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
+b(ariable)32 b(Index)27 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)42 b Fu(200)275 2771 y(D.4)92 b(F)-8 b(unction)31
+b(Index)24 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38
+b Fu(202)275 2880 y(D.5)92 b(Concept)30 b(Index)15 b
+Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)29 b
+Fu(204)p eop end
+%%Page: 1 7
+TeXDict begin 1 6 bop 3705 -116 a Fu(1)150 299 y Fp(1)80
+b(In)l(tro)t(duction)150 604 y Fs(1.1)68 b(What)45 b(is)g(Bash?)150
+763 y Fu(Bash)38 b(is)g(the)g(shell,)i(or)d(command)h(language)h(in)m
+(terpreter,)h(for)e(the)g Fm(gnu)f Fu(op)s(erating)h(system.)63
+b(The)150 873 y(name)33 b(is)g(an)g(acron)m(ym)g(for)g(the)g(`)p
+Ft(Bourne-Again)27 b(SHell)p Fu(',)32 b(a)i(pun)d(on)i(Stephen)f
+(Bourne,)h(the)g(author)150 983 y(of)f(the)f(direct)h(ancestor)h(of)e
+(the)h(curren)m(t)f(Unix)g(shell)h Ft(sh)p Fu(,)f(whic)m(h)g(app)s
+(eared)g(in)g(the)h(Sev)m(en)m(th)g(Edition)150 1092
+y(Bell)g(Labs)e(Researc)m(h)h(v)m(ersion)g(of)f(Unix.)275
+1221 y(Bash)f(is)g(largely)i(compatible)f(with)f Ft(sh)g
+Fu(and)g(incorp)s(orates)g(useful)g(features)g(from)g(the)g(Korn)g
+(shell)150 1330 y Ft(ksh)37 b Fu(and)h(the)g(C)g(shell)g
+Ft(csh)p Fu(.)64 b(It)38 b(is)g(in)m(tended)g(to)h(b)s(e)f(a)g
+(conforman)m(t)h(implemen)m(tation)h(of)e(the)g Fm(ieee)150
+1440 y(posix)c Fu(Shell)g(and)g(T)-8 b(o)s(ols)35 b(p)s(ortion)f(of)g
+(the)h Fm(ieee)f(posix)f Fu(sp)s(eci\014cation)j(\()p
+Fm(ieee)e Fu(Standard)f(1003.1\).)56 b(It)150 1550 y(o\013ers)31
+b(functional)f(impro)m(v)m(emen)m(ts)i(o)m(v)m(er)g Ft(sh)d
+Fu(for)i(b)s(oth)e(in)m(teractiv)m(e)k(and)d(programming)g(use.)275
+1678 y(While)h(the)g Fm(gnu)f Fu(op)s(erating)h(system)g(pro)m(vides)f
+(other)h(shells,)g(including)f(a)h(v)m(ersion)g(of)g
+Ft(csh)p Fu(,)f(Bash)150 1788 y(is)j(the)h(default)f(shell.)49
+b(Lik)m(e)34 b(other)g Fm(gnu)f Fu(soft)m(w)m(are,)i(Bash)f(is)f(quite)
+h(p)s(ortable.)49 b(It)33 b(curren)m(tly)g(runs)f(on)150
+1897 y(nearly)c(ev)m(ery)g(v)m(ersion)g(of)f(Unix)h(and)e(a)i(few)f
+(other)h(op)s(erating)g(systems)f Fq(\000)g Fu(indep)s(enden)m
+(tly-supp)s(orted)150 2007 y(p)s(orts)j(exist)h(for)f(Windo)m(ws)g(and)
+g(other)h(platforms.)150 2236 y Fs(1.2)68 b(What)45 b(is)g(a)h(shell?)
+150 2395 y Fu(A)m(t)32 b(its)f(base,)h(a)f(shell)g(is)h(simply)e(a)h
+(macro)h(pro)s(cessor)f(that)g(executes)i(commands.)42
+b(The)30 b(term)h(macro)150 2505 y(pro)s(cessor)25 b(means)g
+(functionalit)m(y)i(where)d(text)j(and)d(sym)m(b)s(ols)h(are)h
+(expanded)e(to)i(create)h(larger)f(expres-)150 2615 y(sions.)275
+2743 y(A)34 b(Unix)h(shell)g(is)f(b)s(oth)g(a)h(command)g(in)m
+(terpreter)g(and)f(a)h(programming)f(language.)55 b(As)35
+b(a)g(com-)150 2853 y(mand)30 b(in)m(terpreter,)i(the)g(shell)f(pro)m
+(vides)g(the)h(user)e(in)m(terface)j(to)f(the)f(ric)m(h)h(set)g(of)f
+Fm(gnu)g Fu(utilities.)44 b(The)150 2962 y(programming)31
+b(language)i(features)e(allo)m(w)i(these)f(utilities)g(to)g(b)s(e)f
+(com)m(bined.)44 b(Users)31 b(can)g(create)i(\014les)150
+3072 y(con)m(taining)24 b(commands,)g(and)e(these)h(b)s(ecome)f
+(commands)g(themselv)m(es.)40 b(These)22 b(new)g(commands)g(ha)m(v)m(e)
+150 3182 y(the)32 b(same)f(status)h(as)g(system)f(commands)g(in)h
+(directories)g(suc)m(h)f(as)h Ft(/bin)p Fu(,)f(allo)m(wing)i(users)d
+(or)i(groups)150 3291 y(to)f(establish)g(custom)f(en)m(vironmen)m(ts)h
+(to)g(automate)h(their)f(common)g(tasks.)275 3420 y(Shells)i(ma)m(y)h
+(b)s(e)f(used)g(in)m(teractiv)m(ely)k(or)d(non-in)m(teractiv)m(ely)-8
+b(.)54 b(In)33 b(in)m(teractiv)m(e)j(mo)s(de,)f(they)e(accept)150
+3529 y(input)21 b(t)m(yp)s(ed)h(from)g(the)h(k)m(eyb)s(oard.)37
+b(When)22 b(executing)i(non-in)m(teractiv)m(ely)-8 b(,)27
+b(shells)c(execute)g(commands)150 3639 y(read)30 b(from)g(a)h(\014le)f
+(or)h(a)g(string.)275 3768 y(A)41 b(shell)g(allo)m(ws)h(execution)h(of)
+e Fm(gnu)g Fu(commands,)i(b)s(oth)e(sync)m(hronously)f(and)h(async)m
+(hronously)-8 b(.)150 3877 y(The)29 b(shell)g(w)m(aits)i(for)e(sync)m
+(hronous)f(commands)h(to)h(complete)h(b)s(efore)e(accepting)i(more)e
+(input;)g(asyn-)150 3987 y(c)m(hronous)22 b(commands)h(con)m(tin)m(ue)h
+(to)f(execute)h(in)e(parallel)i(with)f(the)f(shell)h(while)g(it)g
+(reads)g(and)f(executes)150 4096 y(additional)35 b(commands.)50
+b(The)33 b Fr(redirection)h Fu(constructs)g(p)s(ermit)f(\014ne-grained)
+g(con)m(trol)i(of)f(the)g(input)150 4206 y(and)40 b(output)f(of)i
+(those)f(commands.)70 b(Moreo)m(v)m(er,)45 b(the)c(shell)f(allo)m(ws)h
+(con)m(trol)h(o)m(v)m(er)g(the)e(con)m(ten)m(ts)i(of)150
+4316 y(commands')30 b(en)m(vironmen)m(ts.)275 4444 y(Shells)k(also)i
+(pro)m(vide)g(a)f(small)h(set)f(of)g(built-in)g(commands)g(\()p
+Fr(builtins)t Fu(\))g(implemen)m(ting)h(function-)150
+4554 y(alit)m(y)i(imp)s(ossible)e(or)g(incon)m(v)m(enien)m(t)j(to)e
+(obtain)g(via)g(separate)g(utilities.)61 b(F)-8 b(or)37
+b(example,)i Ft(cd)p Fu(,)e Ft(break)p Fu(,)150 4663
+y Ft(continue)p Fu(,)28 b(and)i Ft(exec)f Fu(cannot)i(b)s(e)f(implemen)
+m(ted)h(outside)g(of)f(the)h(shell)f(b)s(ecause)h(they)f(directly)h
+(ma-)150 4773 y(nipulate)d(the)g(shell)g(itself.)41 b(The)27
+b Ft(history)p Fu(,)g Ft(getopts)p Fu(,)f Ft(kill)p Fu(,)i(or)g
+Ft(pwd)f Fu(builtins,)h(among)g(others,)h(could)150 4883
+y(b)s(e)34 b(implemen)m(ted)g(in)g(separate)h(utilities,)i(but)d(they)g
+(are)g(more)h(con)m(v)m(enien)m(t)h(to)f(use)f(as)g(builtin)g(com-)150
+4992 y(mands.)40 b(All)31 b(of)f(the)h(shell)f(builtins)g(are)h
+(describ)s(ed)e(in)h(subsequen)m(t)g(sections.)275 5121
+y(While)39 b(executing)h(commands)e(is)g(essen)m(tial,)43
+b(most)c(of)g(the)g(p)s(o)m(w)m(er)f(\(and)g(complexit)m(y\))j(of)e
+(shells)150 5230 y(is)34 b(due)f(to)i(their)f(em)m(b)s(edded)f
+(programming)h(languages.)52 b(Lik)m(e)35 b(an)m(y)f(high-lev)m(el)i
+(language,)h(the)d(shell)150 5340 y(pro)m(vides)c(v)-5
+b(ariables,)32 b(\015o)m(w)e(con)m(trol)i(constructs,)f(quoting,)g(and)
+f(functions.)p eop end
+%%Page: 2 8
+TeXDict begin 2 7 bop 150 -116 a Fu(Chapter)30 b(1:)41
+b(In)m(tro)s(duction)2592 b(2)275 299 y(Shells)37 b(o\013er)h(features)
+f(geared)i(sp)s(eci\014cally)f(for)f(in)m(teractiv)m(e)j(use)e(rather)f
+(than)g(to)h(augmen)m(t)h(the)150 408 y(programming)31
+b(language.)43 b(These)31 b(in)m(teractiv)m(e)j(features)d(include)g
+(job)f(con)m(trol,)j(command)e(line)g(edit-)150 518 y(ing,)38
+b(command)d(history)h(and)f(aliases.)59 b(This)35 b(man)m(ual)h
+(describ)s(es)f(ho)m(w)h(Bash)g(pro)m(vides)g(all)g(of)g(these)150
+628 y(features.)p eop end
+%%Page: 3 9
+TeXDict begin 3 8 bop 3705 -116 a Fu(3)150 299 y Fp(2)80
+b(De\014nitions)150 552 y Fu(These)30 b(de\014nitions)g(are)h(used)e
+(throughout)h(the)h(remainder)f(of)g(this)h(man)m(ual.)150
+720 y Ft(POSIX)240 b Fu(A)27 b(family)g(of)g(op)s(en)f(system)g
+(standards)g(based)g(on)h(Unix.)39 b(Bash)27 b(is)g(primarily)f
+(concerned)630 830 y(with)k(the)h(Shell)f(and)g(Utilities)i(p)s(ortion)
+e(of)h(the)f Fm(posix)g Fu(1003.1)j(standard.)150 995
+y Ft(blank)240 b Fu(A)30 b(space)h(or)g(tab)f(c)m(haracter.)150
+1161 y Ft(whitespace)630 1271 y Fu(A)f(c)m(haracter)i(b)s(elonging)f
+(to)g(the)g Ft(space)e Fu(c)m(haracter)j(class)f(in)f(the)g(curren)m(t)
+g(lo)s(cale,)j(or)d(for)630 1380 y(whic)m(h)h Ft(isspace\(\))e
+Fu(returns)h(true.)150 1546 y Ft(builtin)144 b Fu(A)35
+b(command)g(that)g(is)g(implemen)m(ted)g(in)m(ternally)h(b)m(y)f(the)g
+(shell)g(itself,)i(rather)d(than)h(b)m(y)630 1655 y(an)30
+b(executable)i(program)e(somewhere)h(in)f(the)g(\014le)h(system.)150
+1821 y Ft(control)d(operator)630 1931 y Fu(A)20 b Ft(token)f
+Fu(that)i(p)s(erforms)e(a)i(con)m(trol)g(function.)37
+b(It)21 b(is)f(a)h Ft(newline)d Fu(or)j(one)f(of)h(the)f(follo)m(wing:)
+630 2040 y(`)p Ft(||)p Fu(',)31 b(`)p Ft(&&)p Fu(',)f(`)p
+Ft(&)p Fu(',)h(`)p Ft(;)p Fu(',)g(`)p Ft(;;)p Fu(',)f(`)p
+Ft(;&)p Fu(',)h(`)p Ft(;;&)p Fu(',)f(`)p Ft(|)p Fu(',)h(`)p
+Ft(|&)p Fu(',)f(`)p Ft(\()p Fu(',)h(or)f(`)p Ft(\))p
+Fu('.)150 2206 y Ft(exit)f(status)630 2315 y Fu(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
+2425 y(bits,)h(so)f(the)h(maxim)m(um)f(v)-5 b(alue)31
+b(is)f(255.)150 2591 y Ft(field)240 b Fu(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 2700 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 2810 y(and)30 b(argumen)m(ts.)150 2975 y Ft(filename)96
+b Fu(A)30 b(string)h(of)f(c)m(haracters)i(used)e(to)h(iden)m(tify)g(a)f
+(\014le.)150 3141 y Ft(job)336 b Fu(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 3251 y(that)h(are)g(all)g(in)f(the)h(same)f
+(pro)s(cess)g(group.)150 3416 y Ft(job)f(control)630
+3526 y Fu(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 3635 y(execution)32 b(of)e(pro)s(cesses.)150 3801
+y Ft(metacharacter)630 3910 y Fu(A)23 b(c)m(haracter)h(that,)h(when)d
+(unquoted,)h(separates)h(w)m(ords.)37 b(A)23 b(metac)m(haracter)i(is)e
+(a)g Ft(space)p Fu(,)630 4020 y Ft(tab)p Fu(,)29 b Ft(newline)p
+Fu(,)e(or)i(one)h(of)f(the)h(follo)m(wing)g(c)m(haracters:)42
+b(`)p Ft(|)p Fu(',)29 b(`)p Ft(&)p Fu(',)h(`)p Ft(;)p
+Fu(',)g(`)p Ft(\()p Fu(',)g(`)p Ft(\))p Fu(',)g(`)p Ft(<)p
+Fu(',)f(or)h(`)p Ft(>)p Fu('.)150 4186 y Ft(name)288
+b Fu(A)37 b Ft(word)f Fu(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
+4295 y(with)23 b(a)g(letter)h(or)f(underscore.)38 b Ft(Name)p
+Fu(s)22 b(are)h(used)f(as)i(shell)f(v)-5 b(ariable)24
+b(and)e(function)h(names.)630 4405 y(Also)31 b(referred)f(to)h(as)f(an)
+h Ft(identifier)p Fu(.)150 4570 y Ft(operator)96 b Fu(A)38
+b Ft(control)28 b(operator)36 b Fu(or)h(a)i Ft(redirection)27
+b(operator)p Fu(.)61 b(See)38 b(Section)g(3.6)h([Redirec-)630
+4680 y(tions],)f(page)f(40,)i(for)d(a)g(list)h(of)f(redirection)h(op)s
+(erators.)58 b(Op)s(erators)35 b(con)m(tain)j(at)f(least)630
+4790 y(one)31 b(unquoted)e Ft(metacharacter)p Fu(.)150
+4955 y Ft(process)f(group)630 5065 y Fu(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
+Fm(id)p Fu(.)150 5230 y Ft(process)e(group)h(ID)630 5340
+y Fu(A)h(unique)g(iden)m(ti\014er)h(that)f(represen)m(ts)h(a)g
+Ft(process)d(group)h Fu(during)g(its)i(lifetime.)p eop
+end
+%%Page: 4 10
+TeXDict begin 4 9 bop 150 -116 a Fu(Chapter)30 b(2:)41
+b(De\014nitions)2662 b(4)150 299 y Ft(reserved)28 b(word)630
+408 y Fu(A)h Ft(word)e Fu(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 518 y(shell)j(\015o)m(w)f(con)m(trol)i(constructs,)f(suc)m(h)f(as)g
+Ft(for)g Fu(and)g Ft(while)p Fu(.)150 677 y Ft(return)f(status)630
+787 y Fu(A)h(synon)m(ym)g(for)g Ft(exit)g(status)p Fu(.)150
+946 y Ft(signal)192 b Fu(A)40 b(mec)m(hanism)h(b)m(y)e(whic)m(h)h(a)h
+(pro)s(cess)e(ma)m(y)i(b)s(e)e(noti\014ed)h(b)m(y)g(the)h(k)m(ernel)f
+(of)g(an)g(ev)m(en)m(t)630 1056 y(o)s(ccurring)30 b(in)g(the)h(system.)
+150 1215 y Ft(special)d(builtin)630 1325 y Fu(A)j(shell)f(builtin)g
+(command)h(that)g(has)f(b)s(een)g(classi\014ed)h(as)g(sp)s(ecial)g(b)m
+(y)f(the)h Fm(posix)f Fu(stan-)630 1435 y(dard.)150 1594
+y Ft(token)240 b Fu(A)38 b(sequence)h(of)f(c)m(haracters)h(considered)f
+(a)h(single)g(unit)e(b)m(y)h(the)h(shell.)64 b(It)38
+b(is)g(either)h(a)630 1704 y Ft(word)29 b Fu(or)i(an)f
+Ft(operator)p Fu(.)150 1863 y Ft(word)288 b Fu(A)28 b(sequence)g(of)g
+(c)m(haracters)h(treated)g(as)f(a)g(unit)f(b)m(y)h(the)g(shell.)40
+b(W)-8 b(ords)28 b(ma)m(y)g(not)g(include)630 1973 y(unquoted)i
+Ft(metacharacters)p Fu(.)p eop end
+%%Page: 5 11
+TeXDict begin 5 10 bop 3705 -116 a Fu(5)150 299 y Fp(3)80
+b(Basic)54 b(Shell)e(F)-13 b(eatures)150 601 y Fu(Bash)37
+b(is)g(an)f(acron)m(ym)h(for)g(`)p Ft(Bourne-Again)27
+b(SHell)p Fu('.)59 b(The)36 b(Bourne)g(shell)h(is)g(the)g(traditional)h
+(Unix)150 710 y(shell)45 b(originally)h(written)e(b)m(y)h(Stephen)e
+(Bourne.)83 b(All)46 b(of)e(the)h(Bourne)f(shell)h(builtin)f(commands)
+150 820 y(are)36 b(a)m(v)-5 b(ailable)38 b(in)d(Bash,)i(and)e(the)h
+(rules)f(for)g(ev)-5 b(aluation)37 b(and)e(quoting)h(are)f(tak)m(en)i
+(from)e(the)h Fm(posix)150 929 y Fu(sp)s(eci\014cation)31
+b(for)f(the)h(`standard')f(Unix)g(shell.)275 1086 y(This)h(c)m(hapter)i
+(brie\015y)e(summarizes)h(the)h(shell's)f(`building)g(blo)s(c)m(ks':)45
+b(commands,)32 b(con)m(trol)i(struc-)150 1196 y(tures,)k(shell)e
+(functions,)h(shell)g Fl(p)-5 b(ar)g(ameters)p Fu(,)41
+b(shell)36 b(expansions,)i Fl(r)-5 b(e)g(dir)g(e)g(ctions)p
+Fu(,)40 b(whic)m(h)c(are)h(a)f(w)m(a)m(y)h(to)150 1306
+y(direct)31 b(input)e(and)h(output)g(from)g(and)g(to)h(named)f
+(\014les,)g(and)g(ho)m(w)g(the)h(shell)g(executes)g(commands.)150
+1580 y Fs(3.1)68 b(Shell)45 b(Syn)l(tax)150 1740 y Fu(When)40
+b(the)h(shell)g(reads)f(input,)i(it)f(pro)s(ceeds)f(through)g(a)h
+(sequence)g(of)g(op)s(erations.)71 b(If)40 b(the)h(input)150
+1849 y(indicates)31 b(the)f(b)s(eginning)f(of)h(a)g(commen)m(t,)h(the)f
+(shell)g(ignores)g(the)g(commen)m(t)h(sym)m(b)s(ol)f(\(`)p
+Ft(#)p Fu('\),)h(and)e(the)150 1959 y(rest)i(of)f(that)h(line.)275
+2116 y(Otherwise,)h(roughly)f(sp)s(eaking,)i(the)f(shell)g(reads)g(its)
+g(input)f(and)h(divides)f(the)i(input)e(in)m(to)h(w)m(ords)150
+2225 y(and)23 b(op)s(erators,)j(emplo)m(ying)e(the)g(quoting)h(rules)e
+(to)h(select)i(whic)m(h)d(meanings)h(to)h(assign)f(v)-5
+b(arious)23 b(w)m(ords)150 2335 y(and)30 b(c)m(haracters.)275
+2492 y(The)38 b(shell)h(then)f(parses)g(these)h(tok)m(ens)h(in)m(to)f
+(commands)g(and)f(other)h(constructs,)i(remo)m(v)m(es)f(the)150
+2602 y(sp)s(ecial)31 b(meaning)f(of)g(certain)h(w)m(ords)f(or)g(c)m
+(haracters,)i(expands)d(others,)h(redirects)h(input)e(and)g(output)150
+2711 y(as)d(needed,)g(executes)g(the)g(sp)s(eci\014ed)e(command,)j(w)m
+(aits)f(for)f(the)g(command's)g(exit)i(status,)f(and)f(mak)m(es)150
+2821 y(that)31 b(exit)g(status)g(a)m(v)-5 b(ailable)33
+b(for)d(further)f(insp)s(ection)h(or)h(pro)s(cessing.)150
+3043 y Fk(3.1.1)63 b(Shell)41 b(Op)s(eration)150 3190
+y Fu(The)c(follo)m(wing)h(is)f(a)h(brief)e(description)i(of)f(the)g
+(shell's)h(op)s(eration)f(when)f(it)i(reads)f(and)f(executes)j(a)150
+3299 y(command.)h(Basically)-8 b(,)34 b(the)c(shell)h(do)s(es)f(the)h
+(follo)m(wing:)199 3456 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(49\),)k
+(from)41 b(a)i(string)330 3566 y(supplied)30 b(as)h(an)g(argumen)m(t)h
+(to)g(the)f Ft(-c)g Fu(in)m(v)m(o)s(cation)i(option)f(\(see)g(Section)g
+(6.1)g([In)m(v)m(oking)g(Bash],)330 3675 y(page)f(99\),)h(or)e(from)g
+(the)h(user's)f(terminal.)199 3821 y(2.)61 b(Breaks)43
+b(the)g(input)f(in)m(to)h(w)m(ords)f(and)g(op)s(erators,)k(ob)s(eying)d
+(the)g(quoting)g(rules)f(describ)s(ed)f(in)330 3931 y(Section)30
+b(3.1.2)h([Quoting],)f(page)f(6.)41 b(These)29 b(tok)m(ens)h(are)f
+(separated)h(b)m(y)e Ft(metacharacters)p Fu(.)37 b(This)330
+4040 y(step)30 b(p)s(erforms)f(alias)j(expansion)e(\(see)h(Section)h
+(6.6)f([Aliases],)h(page)f(108\).)199 4186 y(3.)61 b(P)m(arses)35
+b(the)g(tok)m(ens)g(in)m(to)h(simple)e(and)g(comp)s(ound)f(commands)h
+(\(see)h(Section)h(3.2)f([Shell)g(Com-)330 4296 y(mands],)30
+b(page)h(9\).)199 4442 y(4.)61 b(P)m(erforms)40 b(the)h(v)-5
+b(arious)40 b(shell)h(expansions)f(\(see)h(Section)g(3.5)g([Shell)g
+(Expansions],)h(page)f(24\),)330 4551 y(breaking)35 b(the)g(expanded)g
+(tok)m(ens)h(in)m(to)g(lists)f(of)g(\014lenames)h(\(see)g(Section)f
+(3.5.8)i([Filename)g(Ex-)330 4661 y(pansion],)30 b(page)h(37\))h(and)e
+(commands)g(and)g(argumen)m(ts.)199 4807 y(5.)61 b(P)m(erforms)36
+b(an)m(y)i(necessary)f(redirections)g(\(see)h(Section)f(3.6)h
+([Redirections],)i(page)e(40\))g(and)e(re-)330 4916 y(mo)m(v)m(es)c
+(the)e(redirection)h(op)s(erators)g(and)f(their)g(op)s(erands)f(from)h
+(the)h(argumen)m(t)f(list.)199 5062 y(6.)61 b(Executes)31
+b(the)g(command)f(\(see)h(Section)g(3.7)h([Executing)f(Commands],)f
+(page)h(44\).)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
+(47\).)p eop end
+%%Page: 6 12
+TeXDict begin 6 11 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(6)150 299
+y Fk(3.1.2)63 b(Quoting)150 446 y Fu(Quoting)32 b(is)h(used)e(to)i
+(remo)m(v)m(e)h(the)e(sp)s(ecial)h(meaning)f(of)h(certain)g(c)m
+(haracters)g(or)f(w)m(ords)g(to)h(the)f(shell.)150 555
+y(Quoting)c(can)f(b)s(e)g(used)f(to)j(disable)e(sp)s(ecial)h(treatmen)m
+(t)h(for)e(sp)s(ecial)h(c)m(haracters,)i(to)e(prev)m(en)m(t)g(reserv)m
+(ed)150 665 y(w)m(ords)i(from)g(b)s(eing)g(recognized)h(as)g(suc)m(h,)f
+(and)g(to)h(prev)m(en)m(t)g(parameter)g(expansion.)275
+810 y(Eac)m(h)22 b(of)g(the)g(shell)g(metac)m(haracters)i(\(see)f
+(Chapter)e(2)i([De\014nitions],)h(page)f(3\))g(has)e(sp)s(ecial)i
+(meaning)150 920 y(to)31 b(the)g(shell)f(and)g(m)m(ust)g(b)s(e)g
+(quoted)h(if)f(it)h(is)f(to)h(represen)m(t)g(itself.)275
+1065 y(When)d(the)i(command)e(history)h(expansion)g(facilities)j(are)d
+(b)s(eing)g(used)f(\(see)i(Section)g(9.3)g([History)150
+1175 y(In)m(teraction],)46 b(page)c(169\),)k(the)c Fr(history)f
+(expansion)g Fu(c)m(haracter,)46 b(usually)41 b(`)p Ft(!)p
+Fu(',)k(m)m(ust)c(b)s(e)g(quoted)g(to)150 1284 y(prev)m(en)m(t)f
+(history)g(expansion.)69 b(See)40 b(Section)h(9.1)g([Bash)f(History)g
+(F)-8 b(acilities],)46 b(page)41 b(166,)i(for)d(more)150
+1394 y(details)31 b(concerning)g(history)f(expansion.)275
+1539 y(There)f(are)i(four)f(quoting)g(mec)m(hanisms:)41
+b(the)31 b Fr(escap)s(e)f(c)m(haracter)p Fu(,)i(single)f(quotes,)g
+(double)f(quotes,)150 1649 y(and)g(dollar-single)i(quotes.)150
+1859 y Fk(3.1.2.1)63 b(Escap)s(e)41 b(Character)150 2006
+y Fu(A)36 b(non-quoted)f(bac)m(kslash)h(`)p Ft(\\)p Fu(')g(is)f(the)h
+(Bash)g(escap)s(e)f(c)m(haracter.)58 b(It)36 b(preserv)m(es)f(the)h
+(literal)h(v)-5 b(alue)36 b(of)150 2115 y(the)29 b(next)f(c)m(haracter)
+i(that)f(follo)m(ws,)i(remo)m(ving)e(an)m(y)g(sp)s(ecial)g(meaning)f
+(it)h(has,)g(with)f(the)h(exception)h(of)150 2225 y Ft(newline)p
+Fu(.)39 b(If)29 b(a)i Ft(\\newline)d Fu(pair)i(app)s(ears,)f(and)h(the)
+g(bac)m(kslash)h(itself)g(is)f(not)g(quoted,)h(the)f
+Ft(\\newline)150 2335 y Fu(is)c(treated)i(as)e(a)h(line)f(con)m(tin)m
+(uation)i(\(that)g(is,)f(it)g(is)f(remo)m(v)m(ed)h(from)f(the)h(input)e
+(stream)h(and)g(e\013ectiv)m(ely)150 2444 y(ignored\).)150
+2654 y Fk(3.1.2.2)63 b(Single)42 b(Quotes)150 2801 y
+Fu(Enclosing)24 b(c)m(haracters)h(in)e(single)h(quotes)g(\(`)p
+Ft(')p Fu('\))g(preserv)m(es)g(the)f(literal)i(v)-5 b(alue)24
+b(of)g(eac)m(h)g(c)m(haracter)h(within)150 2911 y(the)31
+b(quotes.)42 b(A)31 b(single)h(quote)f(ma)m(y)g(not)g(o)s(ccur)g(b)s
+(et)m(w)m(een)g(single)h(quotes,)f(ev)m(en)h(when)d(preceded)i(b)m(y)g
+(a)150 3020 y(bac)m(kslash.)150 3230 y Fk(3.1.2.3)63
+b(Double)42 b(Quotes)150 3377 y Fu(Enclosing)24 b(c)m(haracters)h(in)f
+(double)f(quotes)h(\(`)p Ft(")p Fu('\))g(preserv)m(es)g(the)g(literal)h
+(v)-5 b(alue)24 b(of)g(all)g(c)m(haracters)h(within)150
+3487 y(the)34 b(quotes,)h(with)f(the)g(exception)h(of)f(`)p
+Ft($)p Fu(',)h(`)p Ft(`)p Fu(',)g(`)p Ft(\\)p Fu(',)g(and,)f(when)f
+(history)g(expansion)h(is)g(enabled,)h(`)p Ft(!)p Fu('.)150
+3597 y(When)c(the)g(shell)g(is)g(in)f Fm(posix)h Fu(mo)s(de)f(\(see)i
+(Section)g(6.11)g([Bash)f(POSIX)f(Mo)s(de],)i(page)g(115\),)h(the)e(`)p
+Ft(!)p Fu(')150 3706 y(has)d(no)g(sp)s(ecial)h(meaning)g(within)f
+(double)g(quotes,)h(ev)m(en)g(when)f(history)g(expansion)g(is)g
+(enabled.)40 b(The)150 3816 y(c)m(haracters)22 b(`)p
+Ft($)p Fu(')f(and)g(`)p Ft(`)p Fu(')g(retain)g(their)g(sp)s(ecial)h
+(meaning)f(within)f(double)h(quotes)g(\(see)h(Section)g(3.5)g([Shell)
+150 3925 y(Expansions],)k(page)g(24\).)40 b(The)25 b(bac)m(kslash)h
+(retains)g(its)f(sp)s(ecial)h(meaning)g(only)f(when)g(follo)m(w)m(ed)h
+(b)m(y)g(one)150 4035 y(of)k(the)g(follo)m(wing)i(c)m(haracters:)42
+b(`)p Ft($)p Fu(',)30 b(`)p Ft(`)p Fu(',)h(`)p Ft(")p
+Fu(',)f(`)p Ft(\\)p Fu(',)h(or)f Ft(newline)p Fu(.)38
+b(Within)31 b(double)e(quotes,)i(bac)m(kslashes)150 4144
+y(that)e(are)h(follo)m(w)m(ed)g(b)m(y)f(one)g(of)g(these)g(c)m
+(haracters)i(are)e(remo)m(v)m(ed.)41 b(Bac)m(kslashes)31
+b(preceding)d(c)m(haracters)150 4254 y(without)i(a)h(sp)s(ecial)g
+(meaning)g(are)g(left)g(unmo)s(di\014ed.)275 4399 y(A)i(double)g(quote)
+h(ma)m(y)g(b)s(e)f(quoted)g(within)g(double)g(quotes)h(b)m(y)f
+(preceding)g(it)h(with)f(a)h(bac)m(kslash.)150 4509 y(If)c(enabled,)h
+(history)f(expansion)g(will)h(b)s(e)f(p)s(erformed)e(unless)i(an)g(`)p
+Ft(!)p Fu(')h(app)s(earing)f(in)g(double)g(quotes)h(is)150
+4619 y(escap)s(ed)f(using)g(a)h(bac)m(kslash.)41 b(The)30
+b(bac)m(kslash)h(preceding)g(the)f(`)p Ft(!)p Fu(')h(is)f(not)h(remo)m
+(v)m(ed.)275 4764 y(The)41 b(sp)s(ecial)h(parameters)f(`)p
+Ft(*)p Fu(')h(and)f(`)p Ft(@)p Fu(')h(ha)m(v)m(e)g(sp)s(ecial)g
+(meaning)g(when)f(in)g(double)g(quotes)h(\(see)150 4873
+y(Section)31 b(3.5.3)h([Shell)f(P)m(arameter)h(Expansion],)e(page)h
+(27\).)150 5083 y Fk(3.1.2.4)63 b(ANSI-C)40 b(Quoting)150
+5230 y Fu(Character)33 b(sequences)h(of)f(the)g(form)g
+Ft($')p Fj(string)p Ft(')d Fu(are)k(treated)g(as)f(a)g(sp)s(ecial)h
+(kind)e(of)h(single)h(quotes.)150 5340 y(The)k(sequence)i(expands)e(to)
+i Fr(string)p Fu(,)h(with)e(bac)m(kslash-escap)s(ed)h(c)m(haracters)g
+(in)f Fr(string)46 b Fu(replaced)40 b(as)p eop end
+%%Page: 7 13
+TeXDict begin 7 12 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(7)150 299
+y(sp)s(eci\014ed)32 b(b)m(y)h(the)g(ANSI)f(C)h(standard.)47
+b(Bac)m(kslash)34 b(escap)s(e)g(sequences,)g(if)e(presen)m(t,)i(are)f
+(deco)s(ded)g(as)150 408 y(follo)m(ws:)150 573 y Ft(\\a)384
+b Fu(alert)31 b(\(b)s(ell\))150 736 y Ft(\\b)384 b Fu(bac)m(kspace)150
+899 y Ft(\\e)150 1009 y(\\E)g Fu(An)30 b(escap)s(e)h(c)m(haracter)h
+(\(not)f(in)f(ANSI)g(C\).)150 1172 y Ft(\\f)384 b Fu(form)30
+b(feed)150 1335 y Ft(\\n)384 b Fu(newline)150 1498 y
+Ft(\\r)g Fu(carriage)32 b(return)150 1661 y Ft(\\t)384
+b Fu(horizon)m(tal)32 b(tab)150 1824 y Ft(\\v)384 b Fu(v)m(ertical)32
+b(tab)150 1987 y Ft(\\\\)384 b Fu(bac)m(kslash)150 2150
+y Ft(\\')g Fu(single)31 b(quote)150 2313 y Ft(\\")384
+b Fu(double)30 b(quote)150 2476 y Ft(\\?)384 b Fu(question)31
+b(mark)150 2639 y Ft(\\)p Fj(nnn)288 b Fu(The)33 b(eigh)m(t-bit)i(c)m
+(haracter)g(whose)e(v)-5 b(alue)33 b(is)h(the)f(o)s(ctal)i(v)-5
+b(alue)34 b Fr(nnn)d Fu(\(one)j(to)g(three)g(o)s(ctal)630
+2749 y(digits\).)150 2912 y Ft(\\x)p Fj(HH)288 b Fu(The)33
+b(eigh)m(t-bit)i(c)m(haracter)g(whose)e(v)-5 b(alue)34
+b(is)f(the)h(hexadecimal)g(v)-5 b(alue)34 b Fr(HH)43
+b Fu(\(one)34 b(or)g(t)m(w)m(o)630 3021 y(hex)c(digits\).)150
+3184 y Ft(\\u)p Fj(HHHH)192 b Fu(The)29 b(Unico)s(de)h(\(ISO/IEC)e
+(10646\))k(c)m(haracter)f(whose)f(v)-5 b(alue)30 b(is)f(the)h
+(hexadecimal)g(v)-5 b(alue)630 3294 y Fr(HHHH)41 b Fu(\(one)31
+b(to)g(four)f(hex)g(digits\).)150 3457 y Ft(\\U)p Fj(HHHHHHHH)630
+3566 y Fu(The)f(Unico)s(de)h(\(ISO/IEC)e(10646\))k(c)m(haracter)f
+(whose)f(v)-5 b(alue)30 b(is)f(the)h(hexadecimal)g(v)-5
+b(alue)630 3676 y Fr(HHHHHHHH)42 b Fu(\(one)31 b(to)g(eigh)m(t)g(hex)g
+(digits\).)150 3839 y Ft(\\c)p Fj(x)336 b Fu(A)30 b(con)m(trol-)p
+Fr(x)39 b Fu(c)m(haracter.)150 4004 y(The)30 b(expanded)f(result)i(is)f
+(single-quoted,)i(as)f(if)f(the)g(dollar)h(sign)g(had)e(not)i(b)s(een)f
+(presen)m(t.)150 4207 y Fk(3.1.2.5)63 b(Lo)s(cale-Sp)s(eci\014c)41
+b(T)-10 b(ranslation)150 4354 y Fu(Pre\014xing)29 b(a)i(double-quoted)f
+(string)g(with)g(a)g(dollar)g(sign)g(\(`)p Ft($)p Fu('\),)h(suc)m(h)f
+(as)g Ft($"hello,)46 b(world")p Fu(,)29 b(causes)150
+4463 y(the)e(string)f(to)h(b)s(e)f(translated)h(according)h(to)f(the)f
+(curren)m(t)h(lo)s(cale.)41 b(The)26 b Ft(gettext)e Fu(infrastructure)i
+(p)s(er-)150 4573 y(forms)c(the)h(lo)s(okup)f(and)g(translation,)k
+(using)c(the)h Ft(LC_MESSAGES)p Fu(,)e Ft(TEXTDOMAINDIR)p
+Fu(,)g(and)h Ft(TEXTDOMAIN)150 4682 y Fu(shell)j(v)-5
+b(ariables,)27 b(as)f(explained)f(b)s(elo)m(w.)39 b(See)25
+b(the)h(gettext)h(do)s(cumen)m(tation)f(for)f(additional)h(details)g
+(not)150 4792 y(co)m(v)m(ered)c(here.)38 b(If)20 b(the)h(curren)m(t)g
+(lo)s(cale)h(is)f Ft(C)f Fu(or)h Ft(POSIX)p Fu(,)h(if)e(there)h(are)h
+(no)e(translations)i(a)m(v)-5 b(ailable,)25 b(or)c(if)g(the)150
+4902 y(string)k(is)g(not)g(translated,)i(the)e(dollar)g(sign)g(is)g
+(ignored,)i(and)d(the)h(string)g(is)g(treated)h(as)f(double-quoted)150
+5011 y(as)g(describ)s(ed)f(ab)s(o)m(v)m(e.)40 b(Since)25
+b(this)f(is)h(a)g(form)g(of)g(double)f(quoting,)j(the)e(string)f
+(remains)h(double-quoted)150 5121 y(b)m(y)k(default,)g(whether)f(or)h
+(not)g(it)g(is)g(translated)g(and)f(replaced.)41 b(If)28
+b(the)h Ft(noexpand_translation)23 b Fu(op-)150 5230
+y(tion)39 b(is)g(enabled)g(using)f(the)h Ft(shopt)e Fu(builtin)h(\(see)
+i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)k(page)d(77\),)150
+5340 y(translated)31 b(strings)f(are)h(single-quoted)h(instead)e(of)h
+(double-quoted.)p eop end
+%%Page: 8 14
+TeXDict begin 8 13 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(8)275 299
+y(The)39 b(rest)i(of)g(this)f(section)h(is)g(a)g(brief)f(o)m(v)m
+(erview)i(of)e(ho)m(w)h(y)m(ou)f(use)g(gettext)j(to)e(create)h
+(transla-)150 408 y(tions)33 b(for)f(strings)g(in)g(a)h(shell)f(script)
+h(named)f Fr(scriptname)p Fu(.)46 b(There)32 b(are)h(more)g(details)g
+(in)f(the)h(gettext)150 518 y(do)s(cumen)m(tation.)275
+650 y(Once)d(y)m(ou'v)m(e)h(mark)m(ed)g(the)f(strings)g(in)g(y)m(our)g
+(script)g(that)h(y)m(ou)f(w)m(an)m(t)h(to)g(translate)h(using)d($)p
+Ft(")6 b Fu(.)22 b(.)h(.)11 b Ft(")p Fu(,)150 759 y(y)m(ou)31
+b(create)h(a)e(gettext)j Ft(")p Fu(template)p Ft(")e
+Fu(\014le)g(using)f(the)g(command)390 891 y Ft(bash)47
+b(--dump-po-strings)c Fj(scriptname)i Ft(>)i Fj(domain)p
+Ft(.pot)150 1022 y Fu(The)36 b Fr(domain)g Fu(is)g(y)m(our)h
+Fr(message)g(domain)p Fu(.)58 b(It's)37 b(just)e(an)i(arbitrary)f
+(string)g(that's)h(used)e(to)i(iden)m(tify)150 1132 y(the)32
+b(\014les)g(gettext)i(needs,)f(lik)m(e)g(a)f(pac)m(k)-5
+b(age)35 b(or)d(script)f(name.)46 b(It)32 b(needs)g(to)h(b)s(e)e
+(unique)g(among)i(all)g(the)150 1241 y(message)41 b(domains)f(on)f
+(systems)h(where)g(y)m(ou)g(install)h(the)f(translations,)j(so)d
+(gettext)i(kno)m(ws)e(whic)m(h)150 1351 y(translations)27
+b(corresp)s(ond)e(to)i(y)m(our)f(script.)39 b(Y)-8 b(ou'll)28
+b(use)d(the)i(template)g(\014le)g(to)f(create)i(translations)f(for)150
+1461 y(eac)m(h)32 b(target)f(language.)43 b(The)29 b(template)j(\014le)
+f(con)m(v)m(en)m(tionally)i(has)d(the)h(su\016x)e(`)p
+Ft(.pot)p Fu('.)275 1592 y(Y)-8 b(ou)23 b(cop)m(y)g(this)g(template)h
+(\014le)f(to)h(a)f(separate)h(\014le)f(for)g(eac)m(h)h(target)g
+(language)g(y)m(ou)f(w)m(an)m(t)h(to)g(supp)s(ort)150
+1702 y(\(called)39 b Ft(")p Fu(PO)p Ft(")e Fu(\014les,)i(whic)m(h)f
+(use)f(the)h(su\016x)e(`)p Ft(.po)p Fu('\).)63 b(PO)37
+b(\014les)g(use)h(v)-5 b(arious)37 b(naming)h(con)m(v)m(en)m(tions,)150
+1811 y(but)31 b(when)g(y)m(ou)i(are)f(w)m(orking)g(to)h(translate)g(a)f
+(template)i(\014le)e(in)m(to)h(a)f(particular)g(language,)i(y)m(ou)f
+(\014rst)150 1921 y(cop)m(y)k(the)g(template)h(\014le)e(to)h(a)g
+(\014le)f(whose)h(name)f(is)g(the)h(language)h(y)m(ou)f(w)m(an)m(t)g
+(to)g(target,)j(with)c(the)150 2030 y(`)p Ft(.po)p Fu(')29
+b(su\016x.)39 b(F)-8 b(or)30 b(instance,)g(the)f(Spanish)f
+(translations)i(of)f(y)m(our)g(strings)g(w)m(ould)g(b)s(e)f(in)h(a)g
+(\014le)g(named)150 2140 y(`)p Ft(es.po)p Fu(',)h(and)f(to)j(get)f
+(started)g(using)f(a)h(message)g(domain)f(named)g Ft(")p
+Fu(example,)p Ft(")h Fu(y)m(ou)g(w)m(ould)f(run)390 2271
+y Ft(cp)47 b(example.pot)e(es.po)150 2403 y Fu(Ultimately)-8
+b(,)42 b(PO)37 b(\014les)g(are)h(often)g(named)f Fr(domain)p
+Fu(.p)s(o)g(and)g(installed)h(in)f(directories)i(that)f(con)m(tain)150
+2513 y(m)m(ultiple)31 b(translation)g(\014les)g(for)f(a)h(particular)f
+(language.)275 2644 y(Whic)m(hev)m(er)k(naming)f(con)m(v)m(en)m(tion)i
+(y)m(ou)e(c)m(ho)s(ose,)i(y)m(ou)e(will)g(need)g(to)g(translate)h(the)f
+(strings)g(in)g(the)150 2754 y(PO)d(\014les)g(in)m(to)i(the)e
+(appropriate)h(languages.)42 b(This)29 b(has)h(to)h(b)s(e)f(done)g(man)
+m(ually)-8 b(.)275 2885 y(When)35 b(y)m(ou)h(ha)m(v)m(e)g(the)g
+(translations)g(and)f(PO)g(\014les)g(complete,)k(y)m(ou'll)d(use)g(the)
+f(gettext)j(to)s(ols)e(to)150 2995 y(pro)s(duce)26 b(what)g(are)i
+(called)g Ft(")p Fu(MO)p Ft(")e Fu(\014les,)i(whic)m(h)e(are)h
+(compiled)h(v)m(ersions)f(of)g(the)g(PO)f(\014les)h(the)g(gettext)150
+3104 y(to)s(ols)42 b(use)f(to)h(lo)s(ok)g(up)e(translations)j
+(e\016cien)m(tly)-8 b(.)75 b(MO)42 b(\014les)f(are)g(also)i(called)f
+Ft(")p Fu(message)g(catalog)p Ft(")150 3214 y Fu(\014les.)k(Y)-8
+b(ou)33 b(use)f(the)g Ft(msgfmt)f Fu(program)h(to)h(do)f(this.)46
+b(F)-8 b(or)33 b(instance,)g(if)f(y)m(ou)h(had)f(a)g(\014le)h(with)e
+(Spanish)150 3324 y(translations,)g(y)m(ou)g(could)g(run)390
+3455 y Ft(msgfmt)46 b(-o)h(es.mo)g(es.po)150 3587 y Fu(to)31
+b(pro)s(duce)e(the)i(corresp)s(onding)e(MO)i(\014le.)275
+3718 y(Once)21 b(y)m(ou)h(ha)m(v)m(e)i(the)e(MO)f(\014les,)j(y)m(ou)e
+(decide)g(where)g(to)g(install)h(them)f(and)f(use)h(the)g
+Ft(TEXTDOMAINDIR)150 3828 y Fu(shell)32 b(v)-5 b(ariable)33
+b(to)g(tell)h(the)e(gettext)i(to)s(ols)f(where)f(they)g(are.)47
+b(Mak)m(e)34 b(sure)d(to)i(use)f(the)g(same)h(message)150
+3937 y(domain)d(to)h(name)g(the)f(MO)h(\014les)f(as)h(y)m(ou)f(did)g
+(for)g(the)h(PO)e(\014les)i(when)e(y)m(ou)i(install)g(them.)275
+4069 y(Y)-8 b(our)21 b(users)f(will)h(use)g(the)g Ft(LANG)f
+Fu(or)h Ft(LC_MESSAGES)d Fu(shell)j(v)-5 b(ariables)21
+b(to)h(select)h(the)e(desired)f(language.)275 4200 y(Y)-8
+b(ou)29 b(set)g(the)g Ft(TEXTDOMAIN)d Fu(v)-5 b(ariable)30
+b(to)f(the)g(script's)g(message)h(domain.)40 b(As)29
+b(ab)s(o)m(v)m(e,)h(y)m(ou)f(use)g(the)150 4310 y(message)i(domain)g
+(to)g(name)f(y)m(our)h(translation)g(\014les.)275 4441
+y(Y)-8 b(ou,)31 b(or)g(p)s(ossibly)f(y)m(our)g(users,)h(set)g(the)g
+Ft(TEXTDOMAINDIR)c Fu(v)-5 b(ariable)31 b(to)h(the)f(name)f(of)h(a)g
+(directory)150 4551 y(where)d(the)h(message)h(catalog)i(\014les)d(are)g
+(stored.)40 b(If)28 b(y)m(ou)i(install)f(the)g(message)h(\014les)f(in)m
+(to)h(the)f(system's)150 4661 y(standard)h(message)h(catalog)i
+(directory)-8 b(,)32 b(y)m(ou)e(don't)h(need)f(to)h(w)m(orry)f(ab)s
+(out)g(this)g(v)-5 b(ariable.)275 4792 y(The)31 b(directory)h(where)g
+(the)g(message)h(catalog)h(\014les)e(are)g(stored)g(v)-5
+b(aries)32 b(b)s(et)m(w)m(een)h(systems.)45 b(Some)150
+4902 y(use)24 b(the)h(message)g(catalog)j(selected)e(b)m(y)e(the)h
+Ft(LC_MESSAGES)c Fu(shell)k(v)-5 b(ariable.)39 b(Others)24
+b(create)i(the)f(name)150 5011 y(of)i(the)h(message)g(catalog)i(from)d
+(the)g(v)-5 b(alue)27 b(of)h(the)f Ft(TEXTDOMAIN)e Fu(shell)i(v)-5
+b(ariable,)29 b(p)s(ossibly)d(adding)h(the)150 5121 y(`)p
+Ft(.mo)p Fu(')32 b(su\016x.)47 b(If)33 b(y)m(ou)g(use)f(the)h
+Ft(TEXTDOMAIN)d Fu(v)-5 b(ariable,)35 b(y)m(ou)e(ma)m(y)g(need)g(to)g
+(set)h(the)f Ft(TEXTDOMAINDIR)150 5230 y Fu(v)-5 b(ariable)26
+b(to)g(the)g(lo)s(cation)h(of)e(the)h(message)h(catalog)h(\014les,)e
+(as)g(ab)s(o)m(v)m(e.)40 b(It's)26 b(common)g(to)g(use)f(b)s(oth)f(v)-5
+b(ari-)150 5340 y(ables)31 b(in)f(this)g(fashion:)41
+b Ft($TEXTDOMAINDIR)p Fu(/)p Ft($LC_MESSAG)o(ES)p Fu(/LC)p
+2474 5340 28 4 v 34 w(MESSA)m(GES/)p Ft($TEXTDOMAIN)p
+Fu(.mo.)p eop end
+%%Page: 9 15
+TeXDict begin 9 14 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(9)275 299
+y(If)43 b(y)m(ou)h(used)f(that)h(last)g(con)m(v)m(en)m(tion,)50
+b(and)43 b(y)m(ou)h(w)m(an)m(ted)g(to)h(store)f(the)g(message)h
+(catalog)h(\014les)150 408 y(with)28 b(Spanish)f(\(es\))i(and)f(Esp)s
+(eran)m(to)h(\(eo\))g(translations)h(in)m(to)f(a)g(lo)s(cal)h
+(directory)f(y)m(ou)f(use)g(for)h(custom)150 518 y(translation)i
+(\014les,)g(y)m(ou)g(could)f(run)390 649 y Ft(TEXTDOMAIN=example)390
+758 y(TEXTDOMAINDIR=/usr/local)o(/sha)o(re/l)o(oca)o(le)390
+977 y(cp)47 b(es.mo)g(${TEXTDOMAINDIR}/es/LC_)o(MES)o(SAGE)o(S/${)o
+(TEX)o(TDOM)o(AIN})o(.mo)390 1087 y(cp)g(eo.mo)g
+(${TEXTDOMAINDIR}/eo/LC_)o(MES)o(SAGE)o(S/${)o(TEX)o(TDOM)o(AIN})o(.mo)
+275 1218 y Fu(When)30 b(all)i(of)f(this)f(is)h(done,)g(and)f(the)h
+(message)h(catalog)h(\014les)e(con)m(taining)h(the)f(compiled)g
+(transla-)150 1327 y(tions)c(are)g(installed)h(in)e(the)h(correct)h(lo)
+s(cation,)h(y)m(our)e(users)f(will)h(b)s(e)f(able)h(to)h(see)f
+(translated)h(strings)e(in)150 1437 y(an)m(y)k(of)f(the)h(supp)s(orted)
+d(languages)k(b)m(y)e(setting)h(the)g Ft(LANG)e Fu(or)h
+Ft(LC_MESSAGES)d Fu(en)m(vironmen)m(t)k(v)-5 b(ariables)150
+1546 y(b)s(efore)30 b(running)f(y)m(our)h(script.)150
+1738 y Fk(3.1.3)63 b(Commen)m(ts)150 1885 y Fu(In)21
+b(a)i(non-in)m(teractiv)m(e)h(shell,)g(or)e(an)g(in)m(teractiv)m(e)j
+(shell)d(in)g(whic)m(h)g(the)g Ft(interactive_comments)16
+b Fu(option)150 1995 y(to)40 b(the)f Ft(shopt)e Fu(builtin)h(is)h
+(enabled)g(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)k(page)e
+(77\),)i(a)d(w)m(ord)150 2104 y(b)s(eginning)33 b(with)g(`)p
+Ft(#)p Fu(')h(in)m(tro)s(duces)f(a)h(commen)m(t.)52 b(A)33
+b(w)m(ord)h(b)s(egins)f(at)h(the)g(b)s(eginning)f(of)g(a)h(line,)h
+(after)150 2214 y(unquoted)20 b(whitespace,)j(or)e(after)g(an)g(op)s
+(erator.)38 b(The)20 b(commen)m(t)i(causes)f(that)g(w)m(ord)f(and)g
+(all)i(remaining)150 2323 y(c)m(haracters)47 b(on)e(that)g(line)h(to)g
+(b)s(e)e(ignored.)86 b(An)44 b(in)m(teractiv)m(e)k(shell)e(without)f
+(the)g Ft(interactive_)150 2433 y(comments)27 b Fu(option)j(enabled)g
+(do)s(es)f(not)h(allo)m(w)h(commen)m(ts.)41 b(The)29
+b Ft(interactive_comments)24 b Fu(option)30 b(is)150
+2542 y(enabled)g(b)m(y)g(default)h(in)f(in)m(teractiv)m(e)j(shells.)41
+b(See)30 b(Section)i(6.3)f([In)m(teractiv)m(e)i(Shells],)e(page)g(103,)
+g(for)g(a)150 2652 y(description)f(of)h(what)f(mak)m(es)h(a)g(shell)g
+(in)m(teractiv)m(e.)150 2885 y Fs(3.2)68 b(Shell)45 b(Commands)150
+3045 y Fu(A)d(simple)g(shell)g(command)f(suc)m(h)h(as)g
+Ft(echo)29 b(a)h(b)g(c)41 b Fu(consists)i(of)f(the)f(command)h(itself)h
+(follo)m(w)m(ed)g(b)m(y)150 3154 y(argumen)m(ts,)31 b(separated)g(b)m
+(y)f(spaces.)275 3285 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
+3394 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 3504 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 3695 y Fk(3.2.1)63 b(Reserv)m(ed)40 b(W)-10
+b(ords)150 3842 y Fu(Reserv)m(ed)33 b(w)m(ords)g(are)g(w)m(ords)g(that)
+g(ha)m(v)m(e)h(sp)s(ecial)g(meaning)f(to)h(the)f(shell.)49
+b(They)32 b(are)h(used)g(to)g(b)s(egin)150 3952 y(and)d(end)f(the)i
+(shell's)g(comp)s(ound)e(commands.)275 4083 y(The)k(follo)m(wing)i(w)m
+(ords)e(are)h(recognized)i(as)e(reserv)m(ed)f(when)g(unquoted)g(and)g
+(the)h(\014rst)f(w)m(ord)h(of)g(a)150 4192 y(command)c(\(see)h(b)s(elo)
+m(w)g(for)f(exceptions\):)150 4323 y Ft(if)364 b(then)168
+b(elif)g(else)g(fi)336 b(time)150 4432 y(for)316 b(in)264
+b(until)120 b(while)g(do)336 b(done)150 4542 y(case)268
+b(esac)168 b(coproc)72 b(select)g(function)150 4652 y({)412
+b(})312 b([[)264 b(]])g(!)150 4782 y(in)33 b Fu(is)h(recognized)h(as)f
+(a)g(reserv)m(ed)f(w)m(ord)h(if)f(it)h(is)g(the)g(third)f(w)m(ord)g(of)
+h(a)g Ft(case)e Fu(or)i Ft(select)e Fu(command.)150 4892
+y Ft(in)e Fu(and)g Ft(do)f Fu(are)i(recognized)h(as)e(reserv)m(ed)h(w)m
+(ords)f(if)g(they)h(are)f(the)h(third)f(w)m(ord)g(in)g(a)g
+Ft(for)g Fu(command.)150 5083 y Fk(3.2.2)63 b(Simple)41
+b(Commands)150 5230 y Fu(A)20 b(simple)h(command)f(is)g(the)h(kind)e
+(of)i(command)f(that's)h(executed)g(most)g(often.)38
+b(It's)20 b(just)g(a)h(sequence)g(of)150 5340 y(w)m(ords)h(separated)i
+(b)m(y)e Ft(blank)p Fu(s,)i(terminated)f(b)m(y)g(one)g(of)g(the)g
+(shell's)g(con)m(trol)h(op)s(erators)f(\(see)h(Chapter)f(2)p
+eop end
+%%Page: 10 16
+TeXDict begin 10 15 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(10)150 299
+y([De\014nitions],)37 b(page)e(3\).)54 b(The)35 b(\014rst)e(w)m(ord)i
+(generally)g(sp)s(eci\014es)g(a)g(command)f(to)h(b)s(e)f(executed,)j
+(with)150 408 y(the)31 b(rest)f(of)h(the)f(w)m(ords)g(b)s(eing)g(that)h
+(command's)f(argumen)m(ts.)275 549 y(The)h(return)h(status)g(\(see)i
+(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(47\))g(of)g(a)g(simple)f
+(command)g(is)h(its)150 658 y(exit)38 b(status)f(as)g(pro)m(vided)f(b)m
+(y)h(the)g Fm(posix)f Fu(1003.1)j Ft(waitpid)c Fu(function,)j(or)f(128)
+p Ft(+)p Fr(n)g Fu(if)g(the)g(command)150 768 y(w)m(as)31
+b(terminated)g(b)m(y)f(signal)h Fr(n)p Fu(.)150 973 y
+Fk(3.2.3)63 b(Pip)s(elines)150 1120 y Fu(A)21 b Ft(pipeline)d
+Fu(is)j(a)g(sequence)g(of)g(one)g(or)g(more)g(commands)f(separated)h(b)
+m(y)g(one)g(of)g(the)g(con)m(trol)h(op)s(erators)150
+1229 y(`)p Ft(|)p Fu(')31 b(or)f(`)p Ft(|&)p Fu('.)275
+1369 y(The)f(format)i(for)f(a)h(pip)s(eline)f(is)390
+1510 y Ft([time)46 b([-p]])h([!])g Fj(command1)e Ft([)j(|)f(or)g(|&)g
+Fj(command2)f Ft(])h(...)150 1650 y Fu(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 1759 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 1869
+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 Fr(command1)p Fu(.)275 2009 y(If)h(`)p
+Ft(|&)p Fu(')h(is)g(the)g(pip)s(eline)f(op)s(erator,)i
+Fr(command1)7 b Fu('s)32 b(standard)f(error,)h(in)g(addition)g(to)h
+(its)f(standard)150 2119 y(output,)j(is)f(connected)i(to)f
+Fr(command2)7 b Fu('s)35 b(standard)e(input)g(through)h(the)g(pip)s(e;)
+i(it)f(is)f(shorthand)f(for)150 2228 y Ft(2>&1)c(|)p
+Fu(.)40 b(This)26 b(implicit)j(redirection)f(of)g(the)g(standard)f
+(error)g(to)h(the)g(standard)f(output)g(is)g(p)s(erformed)150
+2338 y(after)k(an)m(y)g(redirections)g(sp)s(eci\014ed)e(b)m(y)h
+Fr(command1)p Fu(,)h(consisten)m(t)h(with)e(that)h(shorthand.)275
+2478 y(If)38 b(the)i(reserv)m(ed)g(w)m(ord)f Ft(time)f
+Fu(precedes)h(the)h(pip)s(eline,)h(Bash)f(prin)m(ts)e(timing)i
+(statistics)i(for)d(the)150 2588 y(pip)s(eline)d(once)h(it)g
+(\014nishes.)58 b(The)36 b(statistics)i(curren)m(tly)f(consist)g(of)g
+(elapsed)f(\(w)m(all-clo)s(c)m(k\))k(time)e(and)150 2697
+y(user)33 b(and)f(system)i(time)g(consumed)e(b)m(y)i(the)f(command's)g
+(execution.)51 b(The)33 b Ft(-p)g Fu(option)g(c)m(hanges)i(the)150
+2807 y(output)24 b(format)h(to)g(that)g(sp)s(eci\014ed)f(b)m(y)g
+Fm(posix)p Fu(.)38 b(When)24 b(the)h(shell)f(is)h(in)f
+Fm(posix)g Fu(mo)s(de)g(\(see)h(Section)g(6.11)150 2916
+y([Bash)33 b(POSIX)f(Mo)s(de],)i(page)f(115\),)i(it)e(do)s(es)g(not)f
+(recognize)j Ft(time)c Fu(as)i(a)g(reserv)m(ed)g(w)m(ord)f(if)h(the)g
+(next)150 3026 y(tok)m(en)22 b(b)s(egins)e(with)h(a)g(`)p
+Ft(-)p Fu('.)38 b(The)20 b(v)-5 b(alue)22 b(of)f(the)g
+Ft(TIMEFORMAT)d Fu(v)-5 b(ariable)22 b(is)e(a)i(format)f(string)g(that)
+g(sp)s(eci\014es)150 3136 y(ho)m(w)29 b(the)f(timing)h(information)g
+(should)f(b)s(e)g(displa)m(y)m(ed.)40 b(See)29 b(Section)g(5.2)h([Bash)
+f(V)-8 b(ariables],)31 b(page)e(86,)150 3245 y(for)34
+b(a)g(description)g(of)g(the)g(a)m(v)-5 b(ailable)37
+b(formats.)51 b(Pro)m(viding)35 b Ft(time)d Fu(as)j(a)f(reserv)m(ed)g
+(w)m(ord)g(p)s(ermits)f(the)150 3355 y(timing)g(of)g(shell)f(builtins,)
+h(shell)f(functions,)h(and)f(pip)s(elines.)46 b(An)32
+b(external)i Ft(time)d Fu(command)h(cannot)150 3464 y(time)f(these)g
+(easily)-8 b(.)275 3604 y(When)30 b(the)g(shell)g(is)h(in)f
+Fm(posix)f Fu(mo)s(de)h(\(see)h(Section)g(6.11)h([Bash)e(POSIX)g(Mo)s
+(de],)g(page)h(115\),)i(y)m(ou)150 3714 y(can)f(use)g
+Ft(time)f Fu(b)m(y)i(itself)g(as)f(a)h(simple)f(command.)46
+b(In)31 b(this)h(case,)i(the)f(shell)f(displa)m(ys)g(the)h(total)h
+(user)150 3824 y(and)27 b(system)g(time)h(consumed)f(b)m(y)g(the)g
+(shell)h(and)f(its)g(c)m(hildren.)40 b(The)27 b Ft(TIMEFORMAT)d
+Fu(v)-5 b(ariable)28 b(sp)s(eci\014es)150 3933 y(the)j(format)f(of)h
+(the)f(time)h(information.)275 4073 y(If)c(a)h(pip)s(eline)f(is)h(not)f
+(executed)i(async)m(hronously)e(\(see)i(Section)f(3.2.4)i([Lists],)f
+(page)f(11\),)i(the)e(shell)150 4183 y(w)m(aits)j(for)f(all)i(commands)
+e(in)g(the)g(pip)s(eline)g(to)h(complete.)275 4323 y(Eac)m(h)d(command)
+g(in)f(a)i(m)m(ulti-command)f(pip)s(eline,)h(where)e(pip)s(es)g(are)h
+(created,)i(is)e(executed)h(in)f(its)150 4433 y(o)m(wn)h
+Fr(subshell)p Fu(,)f(whic)m(h)h(is)g(a)g(separate)h(pro)s(cess)e(\(see)
+i(Section)g(3.7.3)g([Command)f(Execution)g(En)m(viron-)150
+4542 y(men)m(t],)d(page)e(45\).)40 b(If)23 b(the)h Ft(lastpipe)d
+Fu(option)j(is)g(enabled)g(using)f(the)h Ft(shopt)e Fu(builtin)h(\(see)
+i(Section)f(4.3.2)150 4652 y([The)33 b(Shopt)f(Builtin],)i(page)g
+(77\),)h(and)d(job)h(con)m(trol)h(is)f(not)g(activ)m(e,)j(the)d(last)h
+(elemen)m(t)g(of)f(a)g(pip)s(eline)150 4761 y(ma)m(y)e(b)s(e)f(run)f(b)
+m(y)h(the)g(shell)h(pro)s(cess.)275 4902 y(The)24 b(exit)i(status)f(of)
+h(a)f(pip)s(eline)g(is)g(the)g(exit)h(status)f(of)h(the)f(last)h
+(command)f(in)f(the)i(pip)s(eline,)g(unless)150 5011
+y(the)31 b Ft(pipefail)d Fu(option)j(is)g(enabled)f(\(see)i(Section)f
+(4.3.1)i([The)d(Set)h(Builtin],)g(page)h(72\).)42 b(If)30
+b Ft(pipefail)150 5121 y Fu(is)f(enabled,)g(the)f(pip)s(eline's)g
+(return)g(status)h(is)f(the)h(v)-5 b(alue)29 b(of)f(the)h(last)g
+(\(righ)m(tmost\))i(command)d(to)h(exit)150 5230 y(with)34
+b(a)h(non-zero)g(status,)i(or)d(zero)i(if)e(all)i(commands)e(exit)h
+(successfully)-8 b(.)54 b(If)34 b(the)h(reserv)m(ed)g(w)m(ord)f(`)p
+Ft(!)p Fu(')150 5340 y(precedes)e(the)f(pip)s(eline,)h(the)f(exit)i
+(status)f(is)f(the)h(logical)i(negation)f(of)e(the)h(exit)g(status)g
+(as)g(describ)s(ed)p eop end
+%%Page: 11 17
+TeXDict begin 11 16 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(11)150 299
+y(ab)s(o)m(v)m(e.)42 b(If)30 b(a)h(pip)s(eline)f(is)h(not)g(executed)g
+(async)m(hronously)f(\(see)i(Section)f(3.2.4)h([Lists],)g(page)f(11\),)
+h(the)150 408 y(shell)39 b(w)m(aits)h(for)f(all)h(commands)e(in)h(the)g
+(pip)s(eline)g(to)g(terminate)h(b)s(efore)f(returning)f(a)h(v)-5
+b(alue.)67 b(The)150 518 y(return)29 b(status)i(of)g(an)f(async)m
+(hronous)g(pip)s(eline)g(is)g(0.)150 734 y Fk(3.2.4)63
+b(Lists)41 b(of)h(Commands)150 881 y Fu(A)37 b Ft(list)e
+Fu(is)i(a)g(sequence)g(of)g(one)g(or)f(more)h(pip)s(elines)f(separated)
+h(b)m(y)g(one)g(of)f(the)h(op)s(erators)g(`)p Ft(;)p
+Fu(',)i(`)p Ft(&)p Fu(',)150 991 y(`)p Ft(&&)p Fu(',)31
+b(or)f(`)p Ft(||)p Fu(',)g(and)g(optionally)i(terminated)f(b)m(y)f(one)
+h(of)f(`)p Ft(;)p Fu(',)h(`)p Ft(&)p Fu(',)g(or)f(a)h
+Ft(newline)p Fu(.)275 1143 y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p
+Ft(&&)p Fu(')d(and)g(`)p Ft(||)p Fu(')h(ha)m(v)m(e)h(equal)f
+(precedence,)i(follo)m(w)m(ed)f(b)m(y)f(`)p Ft(;)p Fu(')g(and)f(`)p
+Ft(&)p Fu(',)i(whic)m(h)150 1252 y(ha)m(v)m(e)32 b(equal)e(precedence.)
+275 1404 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 Ft(list)e Fu(to)j(delimit)f(commands,)g(equiv-)
+150 1513 y(alen)m(t)i(to)f(a)g(semicolon.)275 1665 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
+Ft(&)p Fu(',)h(the)e(shell)h(executes)h(the)f(command)150
+1775 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
+Fr(bac)m(kground)p Fu(,)150 1884 y(and)42 b(these)i(are)f(referred)g
+(to)g(as)h Fr(async)m(hronous)i Fu(commands.)78 b(The)43
+b(shell)g(do)s(es)g(not)g(w)m(ait)h(for)f(the)150 1994
+y(command)34 b(to)h(\014nish,)f(and)f(the)h(return)f(status)i(is)f(0)g
+(\(true\).)53 b(When)34 b(job)g(con)m(trol)h(is)f(not)h(activ)m(e)h
+(\(see)150 2103 y(Chapter)27 b(7)h([Job)f(Con)m(trol],)i(page)g(123\),)
+h(the)d(standard)g(input)f(for)i(async)m(hronous)f(commands,)h(in)f
+(the)150 2213 y(absence)k(of)f(an)m(y)h(explicit)h(redirections,)f(is)f
+(redirected)h(from)f Ft(/dev/null)p Fu(.)275 2365 y(Commands)19
+b(separated)j(b)m(y)f(a)g(`)p Ft(;)p Fu(')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
+2474 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
+2626 y Fm(and)g Fu(and)h Fm(or)g Fu(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 2735 y(ators)e(`)p Ft(&&)p Fu(')f(and)g(`)p
+Ft(||)p Fu(',)h(resp)s(ectiv)m(ely)-8 b(.)42 b Fm(and)30
+b Fu(and)f Fm(or)h Fu(lists)h(are)g(executed)g(with)f(left)h(asso)s
+(ciativit)m(y)-8 b(.)275 2887 y(An)30 b Fm(and)f Fu(list)i(has)f(the)h
+(form)390 3039 y Fj(command1)46 b Ft(&&)h Fj(command2)150
+3190 y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
+Fr(command1)38 b Fu(returns)29 b(an)h(exit)h(status)g(of)g(zero)g
+(\(success\).)275 3342 y(An)f Fm(or)f Fu(list)i(has)f(the)h(form)390
+3493 y Fj(command1)46 b Ft(||)h Fj(command2)150 3645
+y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
+Fr(command1)38 b Fu(returns)29 b(a)i(non-zero)g(exit)g(status.)275
+3797 y(The)h(return)g(status)i(of)f Fm(and)f Fu(and)h
+Fm(or)f Fu(lists)i(is)f(the)g(exit)h(status)g(of)f(the)g(last)h
+(command)f(executed)150 3906 y(in)d(the)h(list.)150 4123
+y Fk(3.2.5)63 b(Comp)s(ound)42 b(Commands)150 4270 y
+Fu(Comp)s(ound)29 b(commands)h(are)i(the)f(shell)g(programming)f
+(language)j(constructs.)42 b(Eac)m(h)32 b(construct)f(b)s(e-)150
+4379 y(gins)25 b(with)f(a)i(reserv)m(ed)f(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 4489 y(w)m(ord)i(or)g(op)s(erator.)40
+b(An)m(y)26 b(redirections)g(\(see)i(Section)f(3.6)g([Redirections],)h
+(page)f(40\))h(asso)s(ciated)f(with)150 4598 y(a)k(comp)s(ound)f
+(command)h(apply)f(to)i(all)g(commands)f(within)f(that)i(comp)s(ound)d
+(command)i(unless)f(ex-)150 4708 y(plicitly)i(o)m(v)m(erridden.)275
+4860 y(In)20 b(most)h(cases)g(a)g(list)h(of)f(commands)f(in)g(a)h(comp)
+s(ound)f(command's)g(description)h(ma)m(y)g(b)s(e)f(separated)150
+4969 y(from)30 b(the)h(rest)g(of)g(the)g(command)g(b)m(y)f(one)h(or)g
+(more)g(newlines,)g(and)f(ma)m(y)i(b)s(e)e(follo)m(w)m(ed)i(b)m(y)f(a)g
+(newline)150 5079 y(in)f(place)h(of)g(a)g(semicolon.)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
+5340 y(commands)30 b(and)g(execute)i(them)e(as)g(a)h(unit.)p
+eop end
+%%Page: 12 18
+TeXDict begin 12 17 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(12)150 299
+y Fk(3.2.5.1)63 b(Lo)s(oping)43 b(Constructs)150 446
+y Fu(Bash)31 b(supp)s(orts)d(the)j(follo)m(wing)g(lo)s(oping)g
+(constructs.)275 579 y(Note)k(that)f(wherev)m(er)g(a)g(`)p
+Ft(;)p Fu(')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 689 y(replaced)c(with)f(one)h
+(or)f(more)g(newlines.)150 845 y Ft(until)240 b Fu(The)30
+b(syn)m(tax)h(of)f(the)h Ft(until)e Fu(command)h(is:)870
+979 y Ft(until)46 b Fj(test-commands)p Ft(;)e(do)j Fj
+(consequent-commands)p Ft(;)c(done)630 1112 y Fu(Execute)f
+Fr(consequen)m(t-commands)k Fu(as)41 b(long)h(as)f Fr(test-commands)46
+b Fu(has)41 b(an)g(exit)h(status)630 1221 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 1331 y(executed)31 b(in)f Fr(consequen)m
+(t-commands)p Fu(,)i(or)e(zero)h(if)g(none)f(w)m(as)h(executed.)150
+1488 y Ft(while)240 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
+Ft(while)e Fu(command)h(is:)870 1621 y Ft(while)46 b
+Fj(test-commands)p Ft(;)e(do)j Fj(consequent-commands)p
+Ft(;)c(done)630 1754 y Fu(Execute)f Fr(consequen)m(t-commands)k
+Fu(as)41 b(long)h(as)f Fr(test-commands)46 b Fu(has)41
+b(an)g(exit)h(status)630 1864 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 1973 y Fr(consequen)m(t-commands)p
+Fu(,)c(or)g(zero)g(if)f(none)g(w)m(as)h(executed.)150
+2130 y Ft(for)336 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
+Ft(for)e Fu(command)i(is:)870 2263 y Ft(for)47 b Fj(name)g
+Ft([)g([in)g([)p Fj(words)f Ft(...)o(])i(])f(;)h(])f(do)g
+Fj(commands)p Ft(;)e(done)630 2397 y Fu(Expand)31 b Fr(w)m(ords)k
+Fu(\(see)e(Section)g(3.5)h([Shell)e(Expansions],)g(page)h(24\),)h(and)e
+(then)g(execute)630 2506 y Fr(commands)41 b Fu(once)d(for)g(eac)m(h)h
+(w)m(ord)e(in)g(the)h(resultan)m(t)g(list,)j(with)c Fr(name)43
+b Fu(b)s(ound)35 b(to)k(the)630 2616 y(curren)m(t)44
+b(w)m(ord.)81 b(If)44 b(`)p Ft(in)30 b Fj(words)p Fu(')42
+b(is)i(not)h(presen)m(t,)i(the)e Ft(for)e Fu(command)g(executes)j(the)
+630 2725 y Fr(commands)39 b Fu(once)e(for)f(eac)m(h)h(p)s(ositional)g
+(parameter)f(that)h(is)f(set,)i(as)e(if)g(`)p Ft(in)30
+b("$@")p Fu(')36 b(had)630 2835 y(b)s(een)30 b(sp)s(eci\014ed)f(\(see)j
+(Section)f(3.4.2)h([Sp)s(ecial)f(P)m(arameters],)h(page)f(23\).)630
+2968 y(The)c(return)f(status)h(is)g(the)h(exit)g(status)f(of)g(the)h
+(last)g(command)e(that)i(executes.)41 b(If)27 b(there)630
+3078 y(are)38 b(no)f(items)g(in)g(the)h(expansion)f(of)g
+Fr(w)m(ords)p Fu(,)i(no)e(commands)g(are)g(executed,)j(and)d(the)630
+3187 y(return)29 b(status)i(is)f(zero.)630 3320 y(An)g(alternate)i
+(form)e(of)h(the)f Ft(for)g Fu(command)g(is)g(also)h(supp)s(orted:)870
+3454 y Ft(for)47 b(\(\()g Fj(expr1)f Ft(;)i Fj(expr2)e
+Ft(;)i Fj(expr3)e Ft(\)\))h(;)h(do)f Fj(commands)e Ft(;)j(done)630
+3587 y Fu(First,)28 b(ev)-5 b(aluate)27 b(the)g(arithmetic)g
+(expression)f Fr(expr1)33 b Fu(according)27 b(to)g(the)f(rules)g
+(describ)s(ed)630 3696 y(b)s(elo)m(w)i(\(see)g(Section)g(6.5)g([Shell)g
+(Arithmetic],)h(page)f(106\).)41 b(Then,)28 b(rep)s(eatedly)f(ev)-5
+b(aluate)630 3806 y(the)41 b(arithmetic)g(expression)g
+Fr(expr2)47 b Fu(un)m(til)41 b(it)g(ev)-5 b(aluates)42
+b(to)g(zero.)71 b(Eac)m(h)42 b(time)f Fr(expr2)630 3916
+y Fu(ev)-5 b(aluates)35 b(to)g(a)f(non-zero)g(v)-5 b(alue,)35
+b(execute)g Fr(commands)i Fu(and)c(ev)-5 b(aluate)36
+b(the)e(arithmetic)630 4025 y(expression)g Fr(expr3)p
+Fu(.)50 b(If)34 b(an)m(y)g(expression)f(is)h(omitted,)i(it)e(b)s(eha)m
+(v)m(es)h(as)f(if)g(it)g(ev)-5 b(aluates)35 b(to)630
+4135 y(1.)49 b(The)32 b(return)g(v)-5 b(alue)33 b(is)g(the)g(exit)h
+(status)f(of)g(the)g(last)h(command)f(in)f Fr(commands)k
+Fu(that)630 4244 y(is)30 b(executed,)i(or)e(non-zero)h(if)g(an)m(y)f
+(of)h(the)f(expressions)g(is)h(in)m(v)-5 b(alid.)275
+4401 y(Use)31 b(the)h Ft(break)e Fu(and)h Ft(continue)e
+Fu(builtins)i(\(see)h(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)i
+(page)f(51\))150 4511 y(to)f(con)m(trol)h(lo)s(op)e(execution.)150
+4707 y Fk(3.2.5.2)63 b(Conditional)42 b(Constructs)150
+4878 y Ft(if)384 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
+Ft(if)f Fu(command)g(is:)870 5011 y Ft(if)47 b Fj(test-commands)p
+Ft(;)d(then)965 5121 y Fj(consequent-commands)p Ft(;)870
+5230 y([elif)i Fj(more-test-commands)p Ft(;)d(then)965
+5340 y Fj(more-consequents)p Ft(;])p eop end
+%%Page: 13 19
+TeXDict begin 13 18 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(13)870 299
+y Ft([else)46 b Fj(alternate-consequents)p Ft(;])870
+408 y(fi)630 555 y Fu(The)53 b Fr(test-commands)58 b
+Fu(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 664 y Fr(consequen)m(t-commands)44
+b Fu(list)d(is)f(executed.)70 b(If)40 b Fr(test-commands)k
+Fu(returns)39 b(a)h(non-zero)630 774 y(status,)45 b(eac)m(h)e
+Ft(elif)d Fu(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 883 y(corresp)s(onding)37
+b Fr(more-consequen)m(ts)42 b Fu(is)c(executed)g(and)f(the)h(command)g
+(completes.)63 b(If)630 993 y(`)p Ft(else)29 b Fj
+(alternate-consequents)p Fu(')c(is)30 b(presen)m(t,)h(and)f(the)g
+(\014nal)g(command)g(in)g(the)g(\014nal)630 1103 y Ft(if)44
+b Fu(or)g Ft(elif)f Fu(clause)i(has)f(a)h(non-zero)g(exit)g(status,)j
+(then)c Fr(alternate-consequen)m(ts)51 b Fu(is)630 1212
+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 1322 y(or)30 b(zero)i(if)e(no)g
+(condition)h(tested)g(true.)150 1504 y Ft(case)288 b
+Fu(The)30 b(syn)m(tax)h(of)f(the)h Ft(case)e Fu(command)h(is:)870
+1650 y Ft(case)47 b Fj(word)f Ft(in)1061 1760 y([)h([\(])g
+Fj(pattern)f Ft([|)h Fj(pattern)p Ft(]...)m(\))h Fj(command-list)c
+Ft(;;]...)870 1870 y(esac)630 2016 y(case)20 b Fu(will)i(selectiv)m
+(ely)j(execute)e(the)e Fr(command-list)k Fu(corresp)s(onding)20
+b(to)i(the)g(\014rst)f Fr(pattern)630 2125 y Fu(that)36
+b(matc)m(hes)h Fr(w)m(ord)p Fu(,)g(pro)s(ceeding)e(from)g(the)h
+(\014rst)f(pattern)h(to)g(the)g(last.)57 b(The)35 b(matc)m(h)630
+2235 y(is)30 b(p)s(erformed)f(according)i(to)h(the)e(rules)g(describ)s
+(ed)f(b)s(elo)m(w)i(in)f(Section)h(3.5.8.1)i([P)m(attern)630
+2345 y(Matc)m(hing],)44 b(page)d(38.)70 b(If)40 b(the)g
+Ft(nocasematch)c Fu(shell)41 b(option)f(\(see)h(the)f(description)g(of)
+630 2454 y Ft(shopt)34 b Fu(in)h(Section)h(4.3.2)h([The)e(Shopt)f
+(Builtin],)k(page)e(77\))g(is)g(enabled,)g(the)g(matc)m(h)g(is)630
+2564 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 Ft(|)p
+Fu(')h(is)g(used)630 2673 y(to)g(separate)h(m)m(ultiple)f(patterns)g
+(in)f(a)h(pattern)g(list,)h(and)e(the)g(`)p Ft(\))p Fu(')h(op)s(erator)
+g(terminates)630 2783 y(the)i(pattern)g(list.)49 b(A)33
+b(pattern)g(list)h(and)e(an)h(asso)s(ciated)h Fr(command-list)i
+Fu(is)d(kno)m(wn)f(as)i(a)630 2892 y Fr(clause)p Fu(.)630
+3039 y(Eac)m(h)e(clause)h(m)m(ust)e(b)s(e)g(terminated)h(with)g(`)p
+Ft(;;)p Fu(',)g(`)p Ft(;&)p Fu(',)g(or)g(`)p Ft(;;&)p
+Fu('.)44 b(The)31 b Fr(w)m(ord)k Fu(undergo)s(es)630
+3148 y(tilde)j(expansion,)i(parameter)e(expansion,)i(command)e
+(substitution,)h(pro)s(cess)e(substi-)630 3258 y(tution,)i(arithmetic)f
+(expansion,)h(and)e(quote)g(remo)m(v)-5 b(al)38 b(\(see)g(Section)g
+(3.5.3)h([Shell)e(P)m(a-)630 3367 y(rameter)d(Expansion],)g(page)g
+(27\))h(b)s(efore)e(the)h(shell)g(attempts)g(to)g(matc)m(h)h(the)f
+(pattern.)630 3477 y(Eac)m(h)g Fr(pattern)f Fu(undergo)s(es)g(tilde)h
+(expansion,)g(parameter)g(expansion,)g(command)f(sub-)630
+3587 y(stitution,)e(arithmetic)h(expansion,)f(pro)s(cess)e
+(substitution,)i(and)f(quote)h(remo)m(v)-5 b(al.)630
+3733 y(There)30 b(ma)m(y)g(b)s(e)f(an)h(arbitrary)g(n)m(um)m(b)s(er)f
+(of)h Ft(case)f Fu(clauses,)i(eac)m(h)g(terminated)g(b)m(y)e(a)i(`)p
+Ft(;;)p Fu(',)630 3842 y(`)p Ft(;&)p Fu(',)c(or)e(`)p
+Ft(;;&)p Fu('.)39 b(The)25 b(\014rst)g(pattern)h(that)g(matc)m(hes)h
+(determines)e(the)h(command-list)g(that)630 3952 y(is)35
+b(executed.)55 b(It's)35 b(a)g(common)g(idiom)g(to)g(use)g(`)p
+Ft(*)p Fu(')g(as)g(the)g(\014nal)f(pattern)h(to)h(de\014ne)e(the)630
+4061 y(default)d(case,)g(since)g(that)g(pattern)f(will)h(alw)m(a)m(ys)h
+(matc)m(h.)630 4208 y(Here)j(is)g(an)g(example)h(using)e
+Ft(case)g Fu(in)g(a)h(script)g(that)h(could)f(b)s(e)f(used)g(to)h
+(describ)s(e)g(one)630 4317 y(in)m(teresting)d(feature)f(of)f(an)g
+(animal:)870 4463 y Ft(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f
+(animal:)f(")870 4573 y(read)h(ANIMAL)870 4682 y(echo)g(-n)g("The)f
+($ANIMAL)g(has)h(")870 4792 y(case)g($ANIMAL)e(in)965
+4902 y(horse)i(|)g(dog)g(|)h(cat\))e(echo)h(-n)g("four";;)965
+5011 y(man)g(|)h(kangaroo)d(\))j(echo)e(-n)i("two";;)965
+5121 y(*\))g(echo)e(-n)h("an)g(unknown)f(number)g(of";;)870
+5230 y(esac)870 5340 y(echo)h(")g(legs.")p eop end
+%%Page: 14 20
+TeXDict begin 14 19 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(14)630 299
+y(If)35 b(the)h(`)p Ft(;;)p Fu(')g(op)s(erator)g(is)g(used,)h(the)f
+Ft(case)f Fu(command)h(completes)h(after)f(the)g(\014rst)f(pat-)630
+408 y(tern)g(matc)m(h.)56 b(Using)36 b(`)p Ft(;&)p Fu(')f(in)g(place)h
+(of)g(`)p Ft(;;)p Fu(')f(causes)h(execution)g(to)g(con)m(tin)m(ue)h
+(with)e(the)630 518 y Fr(command-list)25 b Fu(asso)s(ciated)g(with)d
+(the)h(next)g(clause,)i(if)e(an)m(y)-8 b(.)39 b(Using)23
+b(`)p Ft(;;&)p Fu(')f(in)g(place)i(of)f(`)p Ft(;;)p Fu(')630
+628 y(causes)30 b(the)h(shell)f(to)h(test)g(the)f(patterns)g(in)g(the)g
+(next)g(clause,)i(if)e(an)m(y)-8 b(,)31 b(and)e(execute)j(an)m(y)630
+737 y(asso)s(ciated)j Fr(command-list)h Fu(if)e(the)f(matc)m(h)i
+(succeeds,)f(con)m(tin)m(uing)h(the)f(case)g(statemen)m(t)630
+847 y(execution)e(as)e(if)h(the)f(pattern)h(list)g(had)e(not)i(matc)m
+(hed.)630 982 y(The)j(return)f(status)h(is)g(zero)h(if)g(no)f
+Fr(pattern)g Fu(matc)m(hes.)53 b(Otherwise,)35 b(the)g(return)e(status)
+630 1092 y(is)d(the)h(exit)g(status)g(of)f(the)h(last)g
+Fr(command-list)i Fu(executed.)150 1253 y Ft(select)630
+1388 y Fu(The)g Ft(select)f Fu(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
+1498 y(same)c(syn)m(tax)g(as)f(the)h Ft(for)e Fu(command:)870
+1633 y Ft(select)46 b Fj(name)h Ft([in)g Fj(words)f Ft(...)o(];)h(do)h
+Fj(commands)p Ft(;)d(done)630 1769 y Fu(First,)27 b(expand)e(the)g
+(list)h(of)g(w)m(ords)f(follo)m(wing)i Ft(in)p Fu(,)f(generating)h(a)f
+(list)g(of)f(items,)i(and)e(prin)m(t)630 1878 y(the)37
+b(set)g(of)g(expanded)g(w)m(ords)f(on)h(the)g(standard)f(error)g
+(stream,)j(eac)m(h)f(preceded)f(b)m(y)g(a)630 1988 y(n)m(um)m(b)s(er.)i
+(If)30 b(the)g(`)p Ft(in)g Fj(words)p Fu(')f(is)h(omitted,)h(prin)m(t)f
+(the)g(p)s(ositional)h(parameters,)f(as)g(if)g(`)p Ft(in)630
+2097 y("$@")p Fu(')36 b(had)h(b)s(een)g(sp)s(eci\014ed.)61
+b Ft(select)36 b Fu(then)h(displa)m(ys)g(the)h Ft(PS3)e
+Fu(prompt)h(and)f(reads)i(a)630 2207 y(line)30 b(from)f(the)h(standard)
+e(input.)40 b(If)29 b(the)h(line)g(consists)g(of)f(a)h(n)m(um)m(b)s(er)
+f(corresp)s(onding)f(to)630 2317 y(one)e(of)g(the)g(displa)m(y)m(ed)h
+(w)m(ords,)f(then)g Ft(select)e Fu(sets)j(the)f(v)-5
+b(alue)26 b(of)g Fr(name)31 b Fu(to)c(that)g(w)m(ord.)38
+b(If)630 2426 y(the)30 b(line)h(is)f(empt)m(y)-8 b(,)31
+b Ft(select)d Fu(displa)m(ys)i(the)g(w)m(ords)g(and)f(prompt)g(again.)
+42 b(If)30 b Ft(EOF)f Fu(is)h(read,)630 2536 y Ft(select)h
+Fu(completes)k(and)d(returns)g(1.)49 b(An)m(y)33 b(other)g(v)-5
+b(alue)34 b(read)f(causes)g Fr(name)38 b Fu(to)c(b)s(e)e(set)630
+2645 y(to)f(n)m(ull.)41 b(The)30 b(line)g(read)h(is)f(sa)m(v)m(ed)h(in)
+g(the)f(v)-5 b(ariable)31 b Ft(REPLY)p Fu(.)630 2781
+y(The)42 b Fr(commands)j Fu(are)d(executed)h(after)g(eac)m(h)g
+(selection)h(un)m(til)e(a)h Ft(break)d Fu(command)i(is)630
+2890 y(executed,)32 b(at)f(whic)m(h)f(p)s(oin)m(t)g(the)h
+Ft(select)d Fu(command)i(completes.)630 3026 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 3135 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 3271 y Ft(select)46 b(fname)g(in)i(*;)870
+3380 y(do)870 3490 y(echo)f(you)g(picked)f($fname)g(\\\($REPLY\\\))870
+3599 y(break;)870 3709 y(done)150 3870 y(\(\(...)o(\)\))870
+4006 y(\(\()h Fj(expression)e Ft(\)\))630 4141 y Fu(The)33
+b(arithmetic)i Fr(expression)f Fu(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
+4251 y(\(see)38 b(Section)g(6.5)h([Shell)e(Arithmetic],)j(page)f
+(106\).)63 b(The)36 b Fr(expression)h Fu(undergo)s(es)g(the)630
+4360 y(same)26 b(expansions)f(as)g(if)g(it)h(w)m(ere)g(within)e(double)
+h(quotes,)i(but)e(double)g(quote)g(c)m(haracters)630
+4470 y(in)40 b Fr(expression)f Fu(are)h(not)h(treated)f(sp)s(ecially)h
+(and)e(are)i(remo)m(v)m(ed.)70 b(If)39 b(the)h(v)-5 b(alue)41
+b(of)f(the)630 4579 y(expression)30 b(is)h(non-zero,)g(the)f(return)g
+(status)g(is)h(0;)g(otherwise)f(the)h(return)e(status)i(is)f(1.)150
+4740 y Ft([[...)o(]])870 4876 y([[)47 b Fj(expression)e
+Ft(]])630 5011 y Fu(Ev)-5 b(aluate)24 b(the)e(conditional)i(expression)
+e Fr(expression)g Fu(and)g(return)f(a)i(status)g(of)f(zero)h(\(true\))
+630 5121 y(or)28 b(non-zero)g(\(false\).)41 b(Expressions)27
+b(are)h(comp)s(osed)f(of)h(the)g(primaries)f(describ)s(ed)g(b)s(elo)m
+(w)630 5230 y(in)36 b(Section)h(6.4)h([Bash)f(Conditional)g
+(Expressions],)g(page)g(104.)60 b(The)36 b(w)m(ords)g(b)s(et)m(w)m(een)
+630 5340 y(the)27 b Ft([[)f Fu(and)h Ft(]])f Fu(do)h(not)g(undergo)f(w)
+m(ord)h(splitting)g(and)g(\014lename)g(expansion.)39
+b(The)27 b(shell)p eop end
+%%Page: 15 21
+TeXDict begin 15 20 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(15)630 299
+y(p)s(erforms)26 b(tilde)j(expansion,)f(parameter)g(and)g(v)-5
+b(ariable)28 b(expansion,)h(arithmetic)g(expan-)630 408
+y(sion,)j(command)g(substitution,)g(pro)s(cess)g(substitution,)g(and)f
+(quote)i(remo)m(v)-5 b(al)33 b(on)e(those)630 518 y(w)m(ords.)48
+b(Conditional)34 b(op)s(erators)f(suc)m(h)f(as)h(`)p
+Ft(-f)p Fu(')g(m)m(ust)g(b)s(e)f(unquoted)h(to)g(b)s(e)g(recognized)630
+628 y(as)e(primaries.)630 770 y(When)k(used)f(with)h
+Ft([[)p Fu(,)h(the)f(`)p Ft(<)p Fu(')g(and)g(`)p Ft(>)p
+Fu(')g(op)s(erators)g(sort)g(lexicographically)j(using)d(the)630
+880 y(curren)m(t)30 b(lo)s(cale.)630 1022 y(When)22 b(the)h(`)p
+Ft(==)p Fu(')f(and)g(`)p Ft(!=)p Fu(')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
+1132 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
+1241 y(Section)d(3.5.8.1)h([P)m(attern)f(Matc)m(hing],)h(page)f(38,)g
+(as)f(if)g(the)g Ft(extglob)d Fu(shell)j(option)g(w)m(ere)630
+1351 y(enabled.)46 b(The)31 b(`)p Ft(=)p Fu(')h(op)s(erator)h(is)f
+(iden)m(tical)h(to)g(`)p Ft(==)p Fu('.)46 b(If)31 b(the)h
+Ft(nocasematch)d Fu(shell)j(option)630 1461 y(\(see)42
+b(the)f(description)g(of)h Ft(shopt)d Fu(in)i(Section)h(4.3.2)h([The)e
+(Shopt)f(Builtin],)45 b(page)d(77\))630 1570 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 1680 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 Ft(==)p Fu('\))f(or)g(do)s(es)f(not)h(matc)m(h)630
+1789 y(\(`)p Ft(!=)p Fu('\))j(the)g(pattern,)f(and)g(1)h(otherwise.)630
+1932 y(If)20 b(y)m(ou)h(quote)g(an)m(y)f(part)h(of)f(the)h(pattern,)h
+(using)e(an)m(y)h(of)f(the)h(shell's)g(quoting)g(mec)m(hanisms,)630
+2041 y(the)43 b(quoted)g(p)s(ortion)g(is)g(matc)m(hed)h(literally)-8
+b(.)81 b(This)42 b(means)h(ev)m(ery)h(c)m(haracter)h(in)e(the)630
+2151 y(quoted)34 b(p)s(ortion)f(matc)m(hes)i(itself,)h(instead)e(of)f
+(ha)m(ving)i(an)m(y)f(sp)s(ecial)g(pattern)g(matc)m(hing)630
+2261 y(meaning.)630 2403 y(An)f(additional)i(binary)e(op)s(erator,)i(`)
+p Ft(=~)p Fu(',)g(is)f(a)m(v)-5 b(ailable,)37 b(with)c(the)h(same)g
+(precedence)h(as)630 2513 y(`)p Ft(==)p Fu(')40 b(and)g(`)p
+Ft(!=)p Fu('.)70 b(When)40 b(y)m(ou)g(use)g(`)p Ft(=~)p
+Fu(',)j(the)d(string)h(to)f(the)h(righ)m(t)g(of)f(the)g(op)s(erator)h
+(is)630 2622 y(considered)36 b(a)g Fm(posix)f Fu(extended)g(regular)h
+(expression)g(pattern)f(and)g(matc)m(hed)i(accord-)630
+2732 y(ingly)k(\(using)f(the)h Fm(posix)f Ft(regcomp)f
+Fu(and)h Ft(regexec)e Fu(in)m(terfaces)k(usually)f(describ)s(ed)e(in)
+630 2841 y Fl(r)-5 b(e)g(gex)11 b Fu(\(3\)\).)56 b(The)34
+b(return)g(v)-5 b(alue)35 b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h
+(the)f(pattern,)h(and)e(1)i(if)e(it)630 2951 y(do)s(es)39
+b(not.)66 b(If)38 b(the)h(regular)g(expression)g(is)g(syn)m(tactically)
+i(incorrect,)i(the)c(conditional)630 3061 y(expression)e(returns)e(2.)
+61 b(If)37 b(the)g Ft(nocasematch)d Fu(shell)j(option)h(\(see)g(the)f
+(description)g(of)630 3170 y Ft(shopt)d Fu(in)h(Section)h(4.3.2)h([The)
+e(Shopt)f(Builtin],)k(page)e(77\))g(is)g(enabled,)g(the)g(matc)m(h)g
+(is)630 3280 y(p)s(erformed)29 b(without)h(regard)h(to)g(the)f(case)i
+(of)e(alphab)s(etic)h(c)m(haracters.)630 3422 y(Y)-8
+b(ou)23 b(can)g(quote)g(an)m(y)g(part)g(of)g(the)g(pattern)f(to)i
+(force)f(the)g(quoted)g(p)s(ortion)f(to)h(b)s(e)f(matc)m(hed)630
+3532 y(literally)33 b(instead)f(of)g(as)f(a)h(regular)g(expression)f
+(\(see)h(ab)s(o)m(v)m(e\).)46 b(If)31 b(the)h(pattern)f(is)h(stored)630
+3641 y(in)h(a)i(shell)f(v)-5 b(ariable,)35 b(quoting)f(the)g(v)-5
+b(ariable)35 b(expansion)e(forces)i(the)f(en)m(tire)g(pattern)g(to)630
+3751 y(b)s(e)c(matc)m(hed)h(literally)-8 b(.)630 3893
+y(The)30 b(matc)m(h)h(succeeds)g(if)f(the)h(pattern)g(matc)m(hes)g(an)m
+(y)g(part)f(of)h(the)f(string.)41 b(If)30 b(y)m(ou)h(w)m(an)m(t)630
+4003 y(to)d(force)g(the)g(pattern)f(to)h(matc)m(h)g(the)g(en)m(tire)g
+(string,)h(anc)m(hor)e(the)h(pattern)f(using)g(the)h(`)p
+Ft(^)p Fu(')630 4113 y(and)i(`)p Ft($)p Fu(')g(regular)h(expression)f
+(op)s(erators.)630 4255 y(F)-8 b(or)31 b(example,)g(the)f(follo)m(wing)
+h(will)f(matc)m(h)h(a)g(line)f(\(stored)g(in)g(the)g(shell)g(v)-5
+b(ariable)31 b Ft(line)p Fu(\))630 4365 y(if)42 b(there)h(is)g(a)f
+(sequence)h(of)g(c)m(haracters)h(an)m(ywhere)e(in)g(the)h(v)-5
+b(alue)43 b(consisting)g(of)g(an)m(y)630 4474 y(n)m(um)m(b)s(er,)26
+b(including)g(zero,)i(of)f(c)m(haracters)g(in)f(the)h
+Ft(space)e Fu(c)m(haracter)j(class,)g(immediately)630
+4584 y(follo)m(w)m(ed)k(b)m(y)e(zero)h(or)g(one)f(instances)h(of)g(`)p
+Ft(a)p Fu(',)g(then)f(a)h(`)p Ft(b)p Fu(':)870 4726 y
+Ft([[)47 b($line)g(=~)g([[:space:]]*\(a\)?b)c(]])630
+4869 y Fu(That)f(means)g(v)-5 b(alues)42 b(for)g Ft(line)f
+Fu(lik)m(e)i(`)p Ft(aab)p Fu(',)i(`)31 b Ft(aaaaaab)p
+Fu(',)43 b(`)p Ft(xaby)p Fu(',)i(and)c(`)31 b Ft(ab)p
+Fu(')42 b(will)g(all)630 4978 y(matc)m(h,)32 b(as)e(will)h(a)g(line)f
+(con)m(taining)i(a)f(`)p Ft(b)p Fu(')g(an)m(ywhere)f(in)g(its)h(v)-5
+b(alue.)630 5121 y(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(a)e(c)
+m(haracter)j(that's)e(sp)s(ecial)g(to)g(the)g(regular)f(expression)g
+(gram-)630 5230 y(mar)g(\(`)p Ft(^$|[]\(\)\\.*+?)p Fu('\),)e(it)j(has)f
+(to)h(b)s(e)e(quoted)h(to)h(remo)m(v)m(e)g(its)g(sp)s(ecial)g(meaning.)
+40 b(This)630 5340 y(means)24 b(that)h(in)f(the)h(pattern)f(`)p
+Ft(xxx.txt)p Fu(',)g(the)h(`)p Ft(.)p Fu(')f(matc)m(hes)i(an)m(y)f(c)m
+(haracter)g(in)f(the)h(string)p eop end
+%%Page: 16 22
+TeXDict begin 16 21 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(16)630 299
+y(\(its)34 b(usual)f(regular)g(expression)g(meaning\),)i(but)e(in)g
+(the)g(pattern)h(`)p Ft("xxx.txt")p Fu(',)e(it)i(can)630
+408 y(only)c(matc)m(h)i(a)f(literal)g(`)p Ft(.)p Fu('.)630
+545 y(Lik)m(ewise,)i(if)f(y)m(ou)g(w)m(an)m(t)g(to)h(include)e(a)h(c)m
+(haracter)h(in)e(y)m(our)h(pattern)g(that)g(has)f(a)h(sp)s(ecial)630
+655 y(meaning)21 b(to)h(the)g(regular)f(expression)g(grammar,)i(y)m(ou)
+f(m)m(ust)f(mak)m(e)h(sure)e(it's)i(not)g(quoted.)630
+765 y(If)44 b(y)m(ou)g(w)m(an)m(t)h(to)g(anc)m(hor)f(a)h(pattern)f(at)h
+(the)f(b)s(eginning)f(or)h(end)g(of)g(the)g(string,)k(for)630
+874 y(instance,)e(y)m(ou)d(cannot)g(quote)g(the)f(`)p
+Ft(^)p Fu(')h(or)f(`)p Ft($)p Fu(')g(c)m(haracters)i(using)e(an)m(y)g
+(form)g(of)h(shell)630 984 y(quoting.)630 1121 y(If)28
+b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(`)p Ft(initial)e(string)p
+Fu(')f(at)i(the)g(start)g(of)g(a)g(line,)g(the)g(follo)m(wing)h(will)
+630 1230 y(w)m(ork:)870 1367 y Ft([[)47 b($line)g(=~)g(^"initial)e
+(string")h(]])630 1504 y Fu(but)30 b(this)g(will)h(not:)870
+1641 y Ft([[)47 b($line)g(=~)g("^initial)e(string")h(]])630
+1778 y Fu(b)s(ecause)c(in)h(the)f(second)h(example)g(the)g(`)p
+Ft(^)p Fu(')f(is)h(quoted)g(and)f(do)s(esn't)g(ha)m(v)m(e)i(its)e
+(usual)630 1888 y(sp)s(ecial)31 b(meaning.)630 2025 y(It)h(is)f
+(sometimes)h(di\016cult)g(to)g(sp)s(ecify)f(a)h(regular)g(expression)f
+(prop)s(erly)f(without)h(using)630 2134 y(quotes,)c(or)f(to)g(k)m(eep)h
+(trac)m(k)g(of)e(the)h(quoting)g(used)f(b)m(y)h(regular)f(expressions)h
+(while)f(pa)m(ying)630 2244 y(atten)m(tion)40 b(to)f(shell)f(quoting)h
+(and)e(the)h(shell's)h(quote)f(remo)m(v)-5 b(al.)65 b(Storing)38
+b(the)h(regular)630 2354 y(expression)45 b(in)g(a)g(shell)h(v)-5
+b(ariable)46 b(is)f(often)g(a)h(useful)e(w)m(a)m(y)i(to)g(a)m(v)m(oid)h
+(problems)d(with)630 2463 y(quoting)35 b(c)m(haracters)g(that)g(are)g
+(sp)s(ecial)g(to)g(the)f(shell.)53 b(F)-8 b(or)35 b(example,)h(the)e
+(follo)m(wing)i(is)630 2573 y(equiv)-5 b(alen)m(t)32
+b(to)f(the)f(pattern)h(used)f(ab)s(o)m(v)m(e:)870 2710
+y Ft(pattern='[[:space:]]*\(a\))o(?b')870 2819 y([[)47
+b($line)g(=~)g($pattern)e(]])630 2956 y Fu(Shell)29 b(programmers)f
+(should)f(tak)m(e)k(sp)s(ecial)e(care)g(with)g(bac)m(kslashes,)h(since)
+f(bac)m(kslashes)630 3066 y(are)22 b(used)f(b)m(y)h(b)s(oth)f(the)h
+(shell)g(and)f(regular)h(expressions)f(to)i(remo)m(v)m(e)g(the)f(sp)s
+(ecial)h(meaning)630 3176 y(from)j(the)g(follo)m(wing)i(c)m(haracter.)
+41 b(This)25 b(means)h(that)h(after)g(the)f(shell's)g(w)m(ord)g
+(expansions)630 3285 y(complete)i(\(see)f(Section)g(3.5)h([Shell)e
+(Expansions],)h(page)g(24\),)i(an)m(y)d(bac)m(kslashes)i(remain-)630
+3395 y(ing)44 b(in)f(parts)g(of)h(the)g(pattern)f(that)h(w)m(ere)g
+(originally)h(not)f(quoted)g(can)g(remo)m(v)m(e)h(the)630
+3504 y(sp)s(ecial)29 b(meaning)g(of)g(pattern)f(c)m(haracters.)42
+b(If)28 b(an)m(y)h(part)g(of)f(the)h(pattern)g(is)f(quoted,)i(the)630
+3614 y(shell)h(do)s(es)f(its)g(b)s(est)g(to)i(ensure)d(that)i(the)g
+(regular)f(expression)h(treats)g(those)g(remaining)630
+3724 y(bac)m(kslashes)g(as)g(literal,)h(if)e(they)h(app)s(eared)f(in)g
+(a)g(quoted)h(p)s(ortion.)630 3861 y(The)f(follo)m(wing)i(t)m(w)m(o)f
+(sets)g(of)g(commands)f(are)h Fl(not)39 b Fu(equiv)-5
+b(alen)m(t:)870 3998 y Ft(pattern='\\.')870 4217 y([[)47
+b(.)h(=~)f($pattern)e(]])870 4326 y([[)i(.)h(=~)f(\\.)g(]])870
+4545 y([[)g(.)h(=~)f("$pattern")e(]])870 4655 y([[)i(.)h(=~)f('\\.')f
+(]])630 4792 y Fu(The)28 b(\014rst)h(t)m(w)m(o)h(matc)m(hes)g(will)f
+(succeed,)h(but)f(the)g(second)g(t)m(w)m(o)h(will)f(not,)h(b)s(ecause)f
+(in)g(the)630 4902 y(second)e(t)m(w)m(o)i(the)e(bac)m(kslash)h(will)f
+(b)s(e)g(part)g(of)g(the)g(pattern)g(to)h(b)s(e)f(matc)m(hed.)40
+b(In)26 b(the)i(\014rst)630 5011 y(t)m(w)m(o)33 b(examples,)f(the)g
+(pattern)f(passed)g(to)h(the)g(regular)f(expression)h(parser)e(is)i(`)p
+Ft(\\.)p Fu('.)43 b(The)630 5121 y(bac)m(kslash)35 b(remo)m(v)m(es)g
+(the)g(sp)s(ecial)f(meaning)h(from)e(`)p Ft(.)p Fu(',)j(so)e(the)h
+(literal)g(`)p Ft(.)p Fu(')g(matc)m(hes.)53 b(In)630
+5230 y(the)35 b(second)h(t)m(w)m(o)g(examples,)h(the)f(pattern)f
+(passed)g(to)h(the)f(regular)h(expression)f(parser)630
+5340 y(has)26 b(the)g(bac)m(kslash)g(quoted)g(\(e.g.,)j(`)p
+Ft(\\\\\\.)p Fu('\),)e(whic)m(h)e(will)h(not)g(matc)m(h)h(the)f
+(string,)h(since)f(it)p eop end
+%%Page: 17 23
+TeXDict begin 17 22 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(17)630 299
+y(do)s(es)31 b(not)g(con)m(tain)h(a)g(bac)m(kslash.)43
+b(If)31 b(the)g(string)g(in)g(the)g(\014rst)f(examples)i(w)m(ere)g(an)m
+(ything)630 408 y(other)f(than)f(`)p Ft(.)p Fu(',)h(sa)m(y)g(`)p
+Ft(a)p Fu(',)g(the)f(pattern)h(w)m(ould)f(not)h(matc)m(h,)g(b)s(ecause)
+g(the)f(quoted)h(`)p Ft(.)p Fu(')f(in)630 518 y(the)h(pattern)f(loses)h
+(its)g(sp)s(ecial)g(meaning)g(of)f(matc)m(hing)i(an)m(y)e(single)h(c)m
+(haracter.)630 647 y(Brac)m(k)m(et)d(expressions)d(in)g(regular)h
+(expressions)f(can)h(b)s(e)e(sources)i(of)f(errors)g(as)h(w)m(ell,)i
+(since)630 756 y(c)m(haracters)43 b(that)f(are)g(normally)g(sp)s(ecial)
+g(in)f(regular)h(expressions)f(lose)i(their)e(sp)s(ecial)630
+866 y(meanings)24 b(b)s(et)m(w)m(een)g(brac)m(k)m(ets.)40
+b(Ho)m(w)m(ev)m(er,)27 b(y)m(ou)e(can)f(use)f(brac)m(k)m(et)i
+(expressions)f(to)g(matc)m(h)630 975 y(sp)s(ecial)31
+b(pattern)g(c)m(haracters)h(without)f(quoting)g(them,)f(so)h(they)g
+(are)g(sometimes)h(useful)630 1085 y(for)e(this)g(purp)s(ose.)630
+1214 y(Though)f(it)i(migh)m(t)g(seem)f(lik)m(e)i(a)e(strange)h(w)m(a)m
+(y)g(to)g(write)f(it,)h(the)g(follo)m(wing)g(pattern)g(will)630
+1323 y(matc)m(h)g(a)g(`)p Ft(.)p Fu(')g(in)f(the)g(string:)870
+1452 y Ft([[)47 b(.)h(=~)f([.])g(]])630 1580 y Fu(The)30
+b(shell)g(p)s(erforms)f(an)m(y)i(w)m(ord)f(expansions)g(b)s(efore)g
+(passing)g(the)g(pattern)h(to)g(the)f(reg-)630 1690 y(ular)44
+b(expression)g(functions,)k(so)d(y)m(ou)f(can)h(assume)f(that)h(the)g
+(shell's)g(quoting)f(tak)m(es)630 1800 y(precedence.)63
+b(As)37 b(noted)h(ab)s(o)m(v)m(e,)j(the)d(regular)f(expression)h
+(parser)f(will)h(in)m(terpret)g(an)m(y)630 1909 y(unquoted)30
+b(bac)m(kslashes)h(remaining)g(in)g(the)g(pattern)f(after)i(shell)e
+(expansion)h(according)630 2019 y(to)40 b(its)g(o)m(wn)f(rules.)68
+b(The)39 b(in)m(ten)m(tion)i(is)e(to)h(a)m(v)m(oid)h(making)f(shell)f
+(programmers)g(quote)630 2128 y(things)31 b(t)m(wice)h(as)f(m)m(uc)m(h)
+f(as)h(p)s(ossible,)g(so)g(shell)g(quoting)g(should)f(b)s(e)g
+(su\016cien)m(t)h(to)g(quote)630 2238 y(sp)s(ecial)g(pattern)f(c)m
+(haracters)i(where)e(that's)h(necessary)-8 b(.)630 2367
+y(The)39 b(arra)m(y)h(v)-5 b(ariable)40 b Ft(BASH_REMATCH)c
+Fu(records)j(whic)m(h)g(parts)g(of)g(the)h(string)f(matc)m(hed)630
+2476 y(the)34 b(pattern.)51 b(The)33 b(elemen)m(t)i(of)f
+Ft(BASH_REMATCH)d Fu(with)i(index)g(0)h(con)m(tains)h(the)f(p)s(ortion)
+630 2586 y(of)39 b(the)g(string)g(matc)m(hing)h(the)g(en)m(tire)f
+(regular)h(expression.)66 b(Substrings)37 b(matc)m(hed)j(b)m(y)630
+2695 y(paren)m(thesized)k(sub)s(expressions)e(within)i(the)g(regular)g
+(expression)g(are)g(sa)m(v)m(ed)h(in)f(the)630 2805 y(remaining)33
+b Ft(BASH_REMATCH)c Fu(indices.)49 b(The)32 b(elemen)m(t)i(of)f
+Ft(BASH_REMATCH)d Fu(with)i(index)g Fr(n)630 2914 y Fu(is)e(the)h(p)s
+(ortion)f(of)g(the)h(string)f(matc)m(hing)i(the)e Fr(n)p
+Fu(th)g(paren)m(thesized)h(sub)s(expression.)630 3043
+y(Bash)26 b(sets)h Ft(BASH_REMATCH)c Fu(in)j(the)g(global)i(scop)s(e;)f
+(declaring)g(it)g(as)g(a)f(lo)s(cal)i(v)-5 b(ariable)27
+b(will)630 3153 y(lead)k(to)g(unexp)s(ected)f(results.)630
+3281 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
+3391 y(order)30 b(of)g(precedence:)630 3538 y Ft(\()g
+Fj(expression)e Ft(\))1110 3648 y Fu(Returns)i(the)h(v)-5
+b(alue)31 b(of)g Fr(expression)p Fu(.)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 3758 y(normal)e(precedence)h(of)
+g(op)s(erators.)630 3905 y Ft(!)f Fj(expression)1110
+4015 y Fu(T)-8 b(rue)30 b(if)g Fr(expression)g Fu(is)h(false.)630
+4162 y Fj(expression1)c Ft(&&)j Fj(expression2)1110 4272
+y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expression1)38
+b Fu(and)29 b Fr(expression2)38 b Fu(are)31 b(true.)630
+4420 y Fj(expression1)c Ft(||)j Fj(expression2)1110 4529
+y Fu(T)-8 b(rue)30 b(if)g(either)h Fr(expression1)38
+b Fu(or)30 b Fr(expression2)38 b Fu(is)30 b(true.)630
+4677 y(The)24 b Ft(&&)h Fu(and)f Ft(||)g Fu(op)s(erators)h(do)g(not)g
+(ev)-5 b(aluate)27 b Fr(expression2)32 b Fu(if)25 b(the)g(v)-5
+b(alue)25 b(of)g Fr(expression1)630 4786 y Fu(is)30 b(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 4974 y Fk(3.2.5.3)63
+b(Grouping)43 b(Commands)150 5121 y Fu(Bash)30 b(pro)m(vides)g(t)m(w)m
+(o)h(w)m(a)m(ys)f(to)h(group)e(a)h(list)g(of)g(commands)f(to)i(b)s(e)e
+(executed)h(as)g(a)h(unit.)40 b(When)29 b(com-)150 5230
+y(mands)h(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 5340 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.)p
+eop end
+%%Page: 18 24
+TeXDict begin 18 23 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(18)150 299
+y Ft(\(\))870 432 y(\()47 b Fj(list)g Ft(\))630 565 y
+Fu(Placing)42 b(a)g(list)g(of)f(commands)g(b)s(et)m(w)m(een)h(paren)m
+(theses)f(forces)h(the)f(shell)h(to)g(create)h(a)630
+675 y(subshell)33 b(\(see)h(Section)g(3.7.3)i([Command)c(Execution)j
+(En)m(vironmen)m(t],)g(page)f(45\),)i(and)630 784 y(eac)m(h)g(of)f(the)
+h(commands)e(in)h Fr(list)i Fu(is)e(executed)h(in)f(that)h(subshell)e
+(en)m(vironmen)m(t.)55 b(Since)630 894 y(the)33 b Fr(list)j
+Fu(is)e(executed)g(in)f(a)g(subshell,)h(v)-5 b(ariable)34
+b(assignmen)m(ts)g(do)f(not)g(remain)g(in)g(e\013ect)630
+1003 y(after)e(the)f(subshell)g(completes.)150 1160 y
+Ft({})870 1293 y({)47 b Fj(list)p Ft(;)g(})630 1426 y
+Fu(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
+1536 y(in)38 b(the)h(curren)m(t)g(shell)f(en)m(vironmen)m(t.)66
+b(No)40 b(subshell)d(is)i(created.)67 b(The)38 b(semicolon)i(\(or)630
+1646 y(newline\))31 b(follo)m(wing)g Fr(list)i Fu(is)e(required.)275
+1802 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
+1912 y(t)m(w)m(o)f(constructs)f(due)g(to)g(historical)i(reasons.)78
+b(The)42 b(braces)i(are)f(reserv)m(ed)g(w)m(ords,)j(so)d(they)g(m)m
+(ust)150 2021 y(b)s(e)36 b(separated)h(from)f(the)g Fr(list)j
+Fu(b)m(y)e Ft(blank)p Fu(s)e(or)h(other)h(shell)f(metac)m(haracters.)62
+b(The)36 b(paren)m(theses)h(are)150 2131 y(op)s(erators,)29
+b(and)e(are)i(recognized)g(as)g(separate)g(tok)m(ens)g(b)m(y)f(the)g
+(shell)g(ev)m(en)h(if)f(they)h(are)f(not)g(separated)150
+2241 y(from)i(the)g Fr(list)j Fu(b)m(y)e(whitespace.)275
+2374 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 Fr(list)p Fu(.)150 2570
+y Fk(3.2.6)63 b(Copro)s(cesses)150 2717 y Fu(A)37 b Ft(coprocess)c
+Fu(is)k(a)g(shell)f(command)h(preceded)f(b)m(y)g(the)h
+Ft(coproc)d Fu(reserv)m(ed)j(w)m(ord.)59 b(A)36 b(copro)s(cess)h(is)150
+2827 y(executed)g(async)m(hronously)g(in)f(a)h(subshell,)g(as)g(if)g
+(the)f(command)h(had)f(b)s(een)f(terminated)i(with)g(the)150
+2936 y(`)p Ft(&)p Fu(')d(con)m(trol)h(op)s(erator,)g(with)f(a)g(t)m(w)m
+(o-w)m(a)m(y)i(pip)s(e)d(established)h(b)s(et)m(w)m(een)h(the)f
+(executing)h(shell)f(and)f(the)150 3046 y(copro)s(cess.)275
+3179 y(The)c(syn)m(tax)i(for)f(a)h(copro)s(cess)g(is:)390
+3312 y Ft(coproc)46 b([)p Fj(NAME)p Ft(])g Fj(command)g
+Ft([)p Fj(redirections)p Ft(])150 3445 y Fu(This)33 b(creates)i(a)f
+(copro)s(cess)g(named)f Fr(NAME)p Fu(.)51 b Fr(command)37
+b Fu(ma)m(y)d(b)s(e)f(either)h(a)g(simple)g(command)f(\(see)150
+3555 y(Section)44 b(3.2.2)i([Simple)d(Commands],)k(page)d(9\))g(or)g(a)
+g(comp)s(ound)e(command)h(\(see)i(Section)f(3.2.5)150
+3665 y([Comp)s(ound)e(Commands],)47 b(page)e(11\).)83
+b Fr(NAME)50 b Fu(is)44 b(a)g(shell)g(v)-5 b(ariable)45
+b(name.)82 b(If)44 b Fr(NAME)50 b Fu(is)44 b(not)150
+3774 y(supplied,)29 b(the)i(default)f(name)h(is)f Ft(COPROC)p
+Fu(.)275 3907 y(The)f(recommended)h(form)g(to)h(use)f(for)h(a)f(copro)s
+(cess)h(is)390 4040 y Ft(coproc)46 b Fj(NAME)h Ft({)g
+Fj(command)p Ft(;)f(})150 4173 y Fu(This)23 b(form)g(is)h(preferred)e
+(b)s(ecause)i(simple)f(commands)g(result)h(in)f(the)h(copro)s(cess)g
+(alw)m(a)m(ys)h(b)s(eing)e(named)150 4283 y Ft(COPROC)p
+Fu(,)29 b(and)h(it)h(is)f(simpler)g(to)h(use)f(and)g(more)g(complete)i
+(than)e(the)h(other)g(comp)s(ound)d(commands.)275 4416
+y(There)h(are)i(other)g(forms)f(of)g(copro)s(cesses:)390
+4549 y Ft(coproc)46 b Fj(NAME)h(compound-command)390
+4659 y Ft(coproc)f Fj(compound-command)390 4768 y Ft(coproc)g
+Fj(simple-command)150 4902 y Fu(If)41 b Fr(command)46
+b Fu(is)41 b(a)i(comp)s(ound)d(command,)45 b Fr(NAME)i
+Fu(is)42 b(optional.)77 b(The)41 b(w)m(ord)g(follo)m(wing)j
+Ft(coproc)150 5011 y Fu(determines)27 b(whether)f(that)i(w)m(ord)f(is)g
+(in)m(terpreted)g(as)g(a)h(v)-5 b(ariable)28 b(name:)39
+b(it)27 b(is)g(in)m(terpreted)h(as)f Fr(NAME)150 5121
+y Fu(if)i(it)h(is)g(not)f(a)h(reserv)m(ed)f(w)m(ord)g(that)h(in)m(tro)s
+(duces)f(a)h(comp)s(ound)e(command.)40 b(If)29 b Fr(command)k
+Fu(is)c(a)h(simple)150 5230 y(command,)36 b Fr(NAME)k
+Fu(is)35 b(not)f(allo)m(w)m(ed;)39 b(this)34 b(is)h(to)g(a)m(v)m(oid)h
+(confusion)f(b)s(et)m(w)m(een)g Fr(NAME)40 b Fu(and)34
+b(the)h(\014rst)150 5340 y(w)m(ord)30 b(of)h(the)f(simple)g(command.)p
+eop end
+%%Page: 19 25
+TeXDict begin 19 24 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(19)275 299
+y(When)42 b(the)i(copro)s(cess)f(is)g(executed,)48 b(the)43
+b(shell)g(creates)i(an)e(arra)m(y)g(v)-5 b(ariable)44
+b(\(see)g(Section)g(6.7)150 408 y([Arra)m(ys],)h(page)e(109\))g(named)e
+Fr(NAME)48 b Fu(in)41 b(the)h(con)m(text)h(of)f(the)g(executing)h
+(shell.)75 b(The)41 b(standard)150 518 y(output)32 b(of)h
+Fr(command)i Fu(is)e(connected)g(via)g(a)g(pip)s(e)f(to)h(a)g(\014le)f
+(descriptor)h(in)f(the)g(executing)i(shell,)g(and)150
+628 y(that)d(\014le)g(descriptor)g(is)g(assigned)f(to)i
+Fr(NAME)5 b Fu([0].)43 b(The)31 b(standard)f(input)f(of)i
+Fr(command)j Fu(is)d(connected)150 737 y(via)40 b(a)g(pip)s(e)f(to)h(a)
+g(\014le)g(descriptor)f(in)g(the)h(executing)h(shell,)h(and)d(that)h
+(\014le)g(descriptor)f(is)h(assigned)150 847 y(to)f Fr(NAME)5
+b Fu([1].)65 b(This)38 b(pip)s(e)f(is)h(established)g(b)s(efore)g(an)m
+(y)g(redirections)h(sp)s(eci\014ed)e(b)m(y)h(the)g(command)150
+956 y(\(see)33 b(Section)f(3.6)h([Redirections],)g(page)g(40\).)45
+b(The)31 b(\014le)h(descriptors)f(can)h(b)s(e)f(utilized)i(as)f
+(argumen)m(ts)150 1066 y(to)42 b(shell)g(commands)f(and)g(redirections)
+h(using)f(standard)g(w)m(ord)g(expansions.)74 b(Other)41
+b(than)g(those)150 1176 y(created)27 b(to)g(execute)g(command)f(and)f
+(pro)s(cess)h(substitutions,)h(the)f(\014le)g(descriptors)g(are)g(not)h
+(a)m(v)-5 b(ailable)150 1285 y(in)30 b(subshells.)275
+1421 y(The)d(pro)s(cess)h(ID)h(of)f(the)h(shell)f(spa)m(wned)g(to)h
+(execute)h(the)e(copro)s(cess)h(is)f(a)m(v)-5 b(ailable)31
+b(as)d(the)h(v)-5 b(alue)29 b(of)150 1531 y(the)23 b(v)-5
+b(ariable)24 b Fj(NAME)p Ft(_PID)p Fu(.)36 b(The)23 b
+Ft(wait)f Fu(builtin)g(ma)m(y)i(b)s(e)f(used)f(to)i(w)m(ait)g(for)f
+(the)g(copro)s(cess)h(to)g(terminate.)275 1667 y(Since)c(the)g(copro)s
+(cess)h(is)g(created)g(as)g(an)f(async)m(hronous)g(command,)i(the)f
+Ft(coproc)d Fu(command)i(alw)m(a)m(ys)150 1776 y(returns)29
+b(success.)41 b(The)30 b(return)f(status)i(of)f(a)h(copro)s(cess)g(is)f
+(the)h(exit)g(status)g(of)f Fr(command)p Fu(.)150 1977
+y Fk(3.2.7)63 b(GNU)41 b(P)m(arallel)150 2124 y Fu(There)30
+b(are)h(w)m(a)m(ys)g(to)g(run)f(commands)g(in)g(parallel)h(that)h(are)e
+(not)h(built)g(in)m(to)g(Bash.)41 b(GNU)31 b(P)m(arallel)i(is)150
+2233 y(a)e(to)s(ol)g(to)g(do)f(just)g(that.)275 2369
+y(GNU)e(P)m(arallel,)i(as)e(its)g(name)f(suggests,)j(can)d(b)s(e)g
+(used)g(to)h(build)f(and)g(run)f(commands)h(in)h(parallel.)150
+2479 y(Y)-8 b(ou)41 b(ma)m(y)g(run)e(the)h(same)h(command)f(with)g
+(di\013eren)m(t)h(argumen)m(ts,)j(whether)39 b(they)i(are)g
+(\014lenames,)150 2588 y(usernames,)27 b(hostnames,)h(or)e(lines)h
+(read)f(from)h(\014les.)39 b(GNU)27 b(P)m(arallel)i(pro)m(vides)d
+(shorthand)g(references)150 2698 y(to)38 b(man)m(y)g(of)g(the)g(most)g
+(common)g(op)s(erations)g(\(input)f(lines,)j(v)-5 b(arious)38
+b(p)s(ortions)f(of)h(the)g(input)e(line,)150 2807 y(di\013eren)m(t)f(w)
+m(a)m(ys)h(to)f(sp)s(ecify)f(the)h(input)f(source,)i(and)e(so)h(on\).)
+54 b(P)m(arallel)36 b(can)f(replace)h Ft(xargs)d Fu(or)i(feed)150
+2917 y(commands)30 b(from)g(its)h(input)e(sources)h(to)i(sev)m(eral)f
+(di\013eren)m(t)g(instances)g(of)g(Bash.)275 3053 y(F)-8
+b(or)28 b(a)h(complete)g(description,)g(refer)f(to)g(the)h(GNU)f(P)m
+(arallel)i(do)s(cumen)m(tation,)g(whic)m(h)e(is)g(a)m(v)-5
+b(ailable)150 3163 y(at)31 b Ft(https://www.gnu.org/softw)o(are)o(/par)
+o(alle)o(l/p)o(aral)o(lel_)o(tut)o(oria)o(l.ht)o(ml)p
+Fu(.)150 3405 y Fs(3.3)68 b(Shell)45 b(F)-11 b(unctions)150
+3565 y Fu(Shell)35 b(functions)h(are)g(a)g(w)m(a)m(y)g(to)h(group)e
+(commands)g(for)h(later)g(execution)h(using)e(a)h(single)g(name)g(for)
+150 3674 y(the)31 b(group.)43 b(They)31 b(are)g(executed)h(just)f(lik)m
+(e)h(a)g Ft(")p Fu(regular)p Ft(")f Fu(simple)g(command.)43
+b(When)31 b(the)g(name)g(of)h(a)150 3784 y(shell)g(function)g(is)g
+(used)g(as)g(a)h(simple)f(command)g(name,)h(the)f(shell)g(executes)i
+(the)e(list)h(of)f(commands)150 3894 y(asso)s(ciated)22
+b(with)f(that)g(function)g(name.)37 b(Shell)21 b(functions)g(are)g
+(executed)h(in)e(the)h(curren)m(t)g(shell)g(con)m(text;)150
+4003 y(there)31 b(is)f(no)g(new)g(pro)s(cess)g(created)h(to)h(in)m
+(terpret)e(them.)275 4139 y(F)-8 b(unctions)30 b(are)h(declared)g
+(using)f(this)g(syn)m(tax:)390 4275 y Fj(fname)46 b Ft(\(\))i
+Fj(compound-command)43 b Ft([)k Fj(redirections)e Ft(])275
+4411 y Fu(or)390 4547 y Ft(function)h Fj(fname)g Ft([\(\)])h
+Fj(compound-command)c Ft([)k Fj(redirections)e Ft(])275
+4682 y Fu(This)37 b(de\014nes)h(a)h(shell)f(function)g(named)g
+Fr(fname)p Fu(.)65 b(The)38 b(reserv)m(ed)h(w)m(ord)f
+Ft(function)e Fu(is)j(optional.)150 4792 y(If)33 b(the)g
+Ft(function)e Fu(reserv)m(ed)i(w)m(ord)g(is)g(supplied,)g(the)g(paren)m
+(theses)h(are)f(optional.)50 b(The)33 b Fr(b)s(o)s(dy)39
+b Fu(of)34 b(the)150 4902 y(function)41 b(is)h(the)g(comp)s(ound)e
+(command)h Fr(comp)s(ound-command)j Fu(\(see)e(Section)h(3.2.5)g([Comp)
+s(ound)150 5011 y(Commands],)30 b(page)h(11\).)42 b(That)30
+b(command)g(is)g(usually)h(a)f Fr(list)j Fu(enclosed)e(b)s(et)m(w)m
+(een)g Fi({)g Fu(and)f Fi(})p Fu(,)h(but)e(ma)m(y)150
+5121 y(b)s(e)k(an)m(y)h(comp)s(ound)f(command)g(listed)i(ab)s(o)m(v)m
+(e.)52 b(If)33 b(the)i Ft(function)c Fu(reserv)m(ed)j(w)m(ord)g(is)f
+(used,)i(but)e(the)150 5230 y(paren)m(theses)41 b(are)g(not)g
+(supplied,)h(the)e(braces)h(are)g(recommended.)71 b(When)40
+b(the)h(shell)g(is)f(in)h Fm(posix)150 5340 y Fu(mo)s(de)31
+b(\(see)h(Section)g(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(115\),)i
+Fr(fname)i Fu(m)m(ust)31 b(b)s(e)g(a)h(v)-5 b(alid)31
+b(shell)h(name)p eop end
+%%Page: 20 26
+TeXDict begin 20 25 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(20)150 299
+y(and)33 b(ma)m(y)h(not)f(b)s(e)g(the)h(same)f(as)h(one)g(of)f(the)h
+(sp)s(ecial)g(builtins)e(\(see)j(Section)f(4.4)g([Sp)s(ecial)g
+(Builtins],)150 408 y(page)d(83\).)41 b(When)30 b(not)g(in)g
+Fm(posix)f Fu(mo)s(de,)h(a)g(function)f(name)h(can)g(b)s(e)g(an)m(y)g
+(unquoted)f(shell)h(w)m(ord)f(that)150 518 y(do)s(es)h(not)h(con)m
+(tain)g(`)p Ft($)p Fu('.)275 664 y(An)m(y)d(redirections)g(\(see)h
+(Section)g(3.6)g([Redirections],)i(page)d(40\))i(asso)s(ciated)f(with)f
+(the)g(shell)h(func-)150 774 y(tion)37 b(are)f(p)s(erformed)f(when)g
+(the)h(function)g(is)g(executed.)59 b(F)-8 b(unction)37
+b(de\014nitions)f(are)h(deleted)f(using)150 883 y(the)31
+b Ft(-f)e Fu(option)i(to)g(the)g Ft(unset)e Fu(builtin)h(\(see)h
+(Section)g(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(51\).)275
+1029 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 1139 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
+1249 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 1395 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 1504 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 Ft(blank)p Fu(s)f(or)h(newlines.)62 b(This)150
+1614 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 1724 y(separated)j(from)g(the)g(command)f(list)i(b)m(y)f
+(whitespace)g(or)g(another)g(shell)g(metac)m(haracter.)78
+b(When)150 1833 y(using)30 b(the)g(braces,)h(the)g Fr(list)i
+Fu(m)m(ust)d(b)s(e)g(terminated)h(b)m(y)f(a)h(semicolon,)h(a)e(`)p
+Ft(&)p Fu(',)h(or)g(a)f(newline.)275 1979 y Fr(comp)s(ound-command)38
+b Fu(is)f(executed)g(whenev)m(er)f Fr(fname)42 b Fu(is)36
+b(sp)s(eci\014ed)g(as)g(the)h(name)g(of)f(a)h(simple)150
+2089 y(command.)h(F)-8 b(unctions)25 b(are)g(executed)g(in)g(the)f(con)
+m(text)i(of)f(the)f(calling)i(shell;)h(there)e(is)f(no)h(new)e(pro)s
+(cess)150 2198 y(created)31 b(to)h(in)m(terpret)e(them)h(\(con)m(trast)
+h(this)e(with)g(the)h(execution)g(of)g(a)g(shell)f(script\).)275
+2345 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
+2454 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(23\).)75
+b(The)150 2564 y(sp)s(ecial)37 b(parameter)f(`)p Ft(#)p
+Fu(')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 2673
+y(re\015ect)g(the)g(new)e(set)i(of)g(p)s(ositional)g(parameters.)53
+b(Sp)s(ecial)35 b(parameter)g Ft(0)f Fu(is)g(unc)m(hanged.)53
+b(The)34 b(\014rst)150 2783 y(elemen)m(t)j(of)e(the)h
+Ft(FUNCNAME)d Fu(v)-5 b(ariable)36 b(is)g(set)g(to)g(the)f(name)h(of)f
+(the)h(function)f(while)g(the)h(function)f(is)150 2892
+y(executing.)275 3039 y(All)25 b(other)g(asp)s(ects)g(of)g(the)g(shell)
+g(execution)h(en)m(vironmen)m(t)g(are)f(iden)m(tical)h(b)s(et)m(w)m
+(een)g(a)f(function)g(and)150 3148 y(its)35 b(caller)i(with)d(these)i
+(exceptions:)50 b(the)36 b Ft(DEBUG)d Fu(and)h Ft(RETURN)g
+Fu(traps)g(are)i(not)f(inherited)f(unless)h(the)150 3258
+y(function)26 b(has)g(b)s(een)f(giv)m(en)i(the)g Ft(trace)d
+Fu(attribute)j(using)f(the)g Ft(declare)e Fu(builtin)i(or)g(the)h
+Ft(-o)i(functrace)150 3367 y Fu(option)f(has)e(b)s(een)h(enabled)g
+(with)g(the)g Ft(set)f Fu(builtin,)i(\(in)f(whic)m(h)f(case)j(all)f
+(functions)e(inherit)h(the)g Ft(DEBUG)150 3477 y Fu(and)33
+b Ft(RETURN)f Fu(traps\),)j(and)e(the)h Ft(ERR)f Fu(trap)h(is)g(not)g
+(inherited)f(unless)g(the)h Ft(-o)c(errtrace)h Fu(shell)j(option)150
+3587 y(has)h(b)s(een)f(enabled.)55 b(See)35 b(Section)h(4.1)g([Bourne)f
+(Shell)g(Builtins],)i(page)f(51,)i(for)c(the)i(description)f(of)150
+3696 y(the)c Ft(trap)e Fu(builtin.)275 3842 y(The)38
+b Ft(FUNCNEST)f Fu(v)-5 b(ariable,)42 b(if)d(set)h(to)g(a)g(n)m(umeric)
+f(v)-5 b(alue)39 b(greater)h(than)f(0,)j(de\014nes)d(a)g(maxim)m(um)150
+3952 y(function)24 b(nesting)h(lev)m(el.)40 b(F)-8 b(unction)25
+b(in)m(v)m(o)s(cations)i(that)e(exceed)g(the)g(limit)g(cause)g(the)g
+(en)m(tire)g(command)150 4061 y(to)31 b(ab)s(ort.)275
+4208 y(If)37 b(the)g(builtin)g(command)h Ft(return)d
+Fu(is)j(executed)g(in)g(a)g(function,)h(the)e(function)h(completes)h
+(and)150 4317 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 4427 y(with)h(the)h Ft(RETURN)d Fu(trap)i(is)h(executed)g
+(b)s(efore)f(execution)i(resumes.)38 b(When)24 b(a)h(function)f
+(completes,)j(the)150 4536 y(v)-5 b(alues)29 b(of)g(the)g(p)s
+(ositional)h(parameters)f(and)g(the)g(sp)s(ecial)g(parameter)h(`)p
+Ft(#)p Fu(')f(are)g(restored)g(to)h(the)f(v)-5 b(alues)150
+4646 y(they)30 b(had)f(prior)g(to)h(the)g(function's)g(execution.)41
+b(If)29 b Ft(return)f Fu(is)i(supplied)e(a)i(n)m(umeric)g(argumen)m(t,)
+g(that)150 4756 y(is)35 b(the)g(function's)g(return)f(status;)k
+(otherwise)e(the)f(function's)g(return)f(status)h(is)g(the)g(exit)h
+(status)g(of)150 4865 y(the)31 b(last)g(command)f(executed)h(b)s(efore)
+f(the)h Ft(return)p Fu(.)275 5011 y(V)-8 b(ariables)43
+b(lo)s(cal)h(to)f(the)g(function)f(are)h(declared)g(with)f(the)h
+Ft(local)e Fu(builtin)h(\()p Fr(lo)s(cal)i(v)-5 b(ariables)t
+Fu(\).)150 5121 y(Ordinarily)d(,)35 b(v)-5 b(ariables)35
+b(and)f(their)g(v)-5 b(alues)35 b(are)g(shared)e(b)s(et)m(w)m(een)i(a)g
+(function)f(and)g(its)g(caller.)54 b(These)150 5230 y(v)-5
+b(ariables)30 b(are)f(visible)g(only)g(to)h(the)f(function)f(and)g(the)
+i(commands)e(it)h(in)m(v)m(ok)m(es.)42 b(This)28 b(is)h(particularly)
+150 5340 y(imp)s(ortan)m(t)i(when)e(a)i(shell)f(function)g(calls)i
+(other)e(functions.)p eop end
+%%Page: 21 27
+TeXDict begin 21 26 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)275 299
+y(In)33 b(the)h(follo)m(wing)i(description,)f(the)g Fr(curren)m(t)f
+(scop)s(e)39 b Fu(is)34 b(a)h(curren)m(tly-)g(executing)g(function.)52
+b(Pre-)150 408 y(vious)33 b(scop)s(es)g(consist)g(of)g(that)g
+(function's)g(caller)h(and)e(so)h(on,)h(bac)m(k)g(to)f(the)g
+Ft(")p Fu(global)p Ft(")h Fu(scop)s(e,)f(where)150 518
+y(the)g(shell)g(is)g(not)g(executing)i(an)m(y)e(shell)g(function.)48
+b(A)33 b(lo)s(cal)h(v)-5 b(ariable)34 b(at)g(the)f(curren)m(t)g(lo)s
+(cal)h(scop)s(e)f(is)150 628 y(a)k(v)-5 b(ariable)38
+b(declared)f(using)f(the)h Ft(local)f Fu(or)h Ft(declare)d
+Fu(builtins)j(in)f(the)h(function)g(that)g(is)g(curren)m(tly)150
+737 y(executing.)275 874 y(Lo)s(cal)26 b(v)-5 b(ariables)26
+b Ft(")p Fu(shado)m(w)p Ft(")e Fu(v)-5 b(ariables)26
+b(with)g(the)f(same)h(name)f(declared)h(at)g(previous)f(scop)s(es.)39
+b(F)-8 b(or)150 984 y(instance,)27 b(a)e(lo)s(cal)h(v)-5
+b(ariable)25 b(declared)g(in)f(a)h(function)f(hides)h(v)-5
+b(ariables)25 b(with)f(the)h(same)g(name)f(declared)150
+1093 y(at)30 b(previous)e(scop)s(es,)i(including)f(global)h(v)-5
+b(ariables:)41 b(references)29 b(and)g(assignmen)m(ts)h(refer)e(to)i
+(the)g(lo)s(cal)150 1203 y(v)-5 b(ariable,)35 b(lea)m(ving)h(the)e(v)-5
+b(ariables)34 b(at)g(previous)f(scop)s(es)h(unmo)s(di\014ed.)48
+b(When)34 b(the)g(function)f(returns,)150 1313 y(the)e(global)g(v)-5
+b(ariable)31 b(is)g(once)g(again)g(visible.)275 1450
+y(The)f(shell)h(uses)g Fr(dynamic)g(scoping)39 b Fu(to)32
+b(con)m(trol)g(a)f(v)-5 b(ariable's)32 b(visibilit)m(y)h(within)d
+(functions.)42 b(With)150 1559 y(dynamic)31 b(scoping,)i(visible)e(v)-5
+b(ariables)32 b(and)f(their)h(v)-5 b(alues)32 b(are)f(a)h(result)g(of)f
+(the)h(sequence)g(of)f(function)150 1669 y(calls)37 b(that)g(caused)g
+(execution)g(to)g(reac)m(h)g(the)g(curren)m(t)f(function.)58
+b(The)36 b(v)-5 b(alue)36 b(of)h(a)g(v)-5 b(ariable)37
+b(that)g(a)150 1778 y(function)30 b(sees)h(dep)s(ends)d(on)i(its)h(v)-5
+b(alue)30 b(within)g(its)h(caller,)h(if)e(an)m(y)-8 b(,)31
+b(whether)f(that)g(caller)i(is)e(the)h(global)150 1888
+y(scop)s(e)41 b(or)g(another)g(shell)g(function.)73 b(This)40
+b(is)h(also)h(the)f(v)-5 b(alue)41 b(that)h(a)f(lo)s(cal)i(v)-5
+b(ariable)41 b(declaration)150 1998 y(shado)m(ws,)30
+b(and)g(the)h(v)-5 b(alue)31 b(that)f(is)h(restored)f(when)g(the)g
+(function)g(returns.)275 2134 y(F)-8 b(or)38 b(example,)h(if)f(a)f(v)-5
+b(ariable)38 b Ft(var)f Fu(is)g(declared)h(as)f(lo)s(cal)i(in)e
+(function)g Ft(func1)p Fu(,)g(and)g Ft(func1)f Fu(calls)150
+2244 y(another)42 b(function)g Ft(func2)p Fu(,)i(references)e(to)h
+Ft(var)e Fu(made)h(from)f(within)h Ft(func2)e Fu(resolv)m(e)k(to)e(the)
+h(lo)s(cal)150 2354 y(v)-5 b(ariable)31 b Ft(var)f Fu(from)g
+Ft(func1)p Fu(,)f(shado)m(wing)h(an)m(y)h(global)h(v)-5
+b(ariable)31 b(named)f Ft(var)p Fu(.)275 2491 y(The)f(follo)m(wing)j
+(script)f(demonstrates)f(this)h(b)s(eha)m(vior.)40 b(When)31
+b(executed,)g(the)g(script)f(displa)m(ys)390 2628 y Ft(In)47
+b(func2,)f(var)h(=)h(func1)e(local)390 2765 y(func1\(\))390
+2874 y({)581 2984 y(local)g(var='func1)f(local')581 3093
+y(func2)390 3203 y(})390 3422 y(func2\(\))390 3532 y({)581
+3641 y(echo)i("In)f(func2,)h(var)f(=)i($var")390 3751
+y(})390 3970 y(var=global)390 4080 y(func1)275 4217 y
+Fu(The)32 b Ft(unset)g Fu(builtin)g(also)i(acts)g(using)e(the)i(same)f
+(dynamic)g(scop)s(e:)46 b(if)33 b(a)g(v)-5 b(ariable)34
+b(is)f(lo)s(cal)h(to)g(the)150 4326 y(curren)m(t)f(scop)s(e,)i
+Ft(unset)d Fu(unsets)i(it;)i(otherwise)e(the)g(unset)f(will)h(refer)f
+(to)i(the)e(v)-5 b(ariable)35 b(found)d(in)i(an)m(y)150
+4436 y(calling)28 b(scop)s(e)g(as)f(describ)s(ed)f(ab)s(o)m(v)m(e.)40
+b(If)27 b(a)g(v)-5 b(ariable)28 b(at)g(the)f(curren)m(t)g(lo)s(cal)h
+(scop)s(e)f(is)g(unset,)h(it)f(remains)150 4545 y(so)f(\(app)s(earing)g
+(as)h(unset\))f(un)m(til)g(it)h(is)f(reset)h(in)f(that)h(scop)s(e)f(or)
+g(un)m(til)g(the)h(function)f(returns.)38 b(Once)26 b(the)150
+4655 y(function)35 b(returns,)i(an)m(y)f(instance)g(of)g(the)g(v)-5
+b(ariable)37 b(at)f(a)h(previous)e(scop)s(e)h(b)s(ecomes)g(visible.)57
+b(If)36 b(the)150 4765 y(unset)27 b(acts)h(on)f(a)h(v)-5
+b(ariable)28 b(at)g(a)g(previous)e(scop)s(e,)j(an)m(y)e(instance)h(of)g
+(a)f(v)-5 b(ariable)28 b(with)f(that)h(name)f(that)150
+4874 y(had)36 b(b)s(een)g(shado)m(w)m(ed)h(will)g(b)s(ecome)g(visible)g
+(\(see)h(b)s(elo)m(w)f(ho)m(w)g(the)g Ft(localvar_unset)c
+Fu(shell)j(option)150 4984 y(c)m(hanges)31 b(this)g(b)s(eha)m(vior\).)
+275 5121 y(The)49 b Ft(-f)h Fu(option)g(to)h(the)g Ft(declare)d
+Fu(\()p Ft(typeset)p Fu(\))h(builtin)g(command)h(\(see)h(Section)g(4.2)
+h([Bash)150 5230 y(Builtins],)d(page)c(60\))g(lists)g(function)f(names)
+g(and)g(de\014nitions.)82 b(The)43 b Ft(-F)h Fu(option)h(to)g
+Ft(declare)d Fu(or)150 5340 y Ft(typeset)f Fu(lists)i(the)g(function)g
+(names)g(only)g(\(and)f(optionally)i(the)g(source)f(\014le)g(and)f
+(line)h(n)m(um)m(b)s(er,)p eop end
+%%Page: 22 28
+TeXDict begin 22 27 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(22)150 299
+y(if)39 b(the)h Ft(extdebug)c Fu(shell)k(option)f(is)h(enabled\).)67
+b(F)-8 b(unctions)40 b(ma)m(y)g(b)s(e)e(exp)s(orted)h(so)g(that)h(c)m
+(hild)g(shell)150 408 y(pro)s(cesses)g(\(those)i(created)f(when)f
+(executing)h(a)g(separate)h(shell)e(in)m(v)m(o)s(cation\))j
+(automatically)h(ha)m(v)m(e)150 518 y(them)i(de\014ned)f(with)h(the)h
+Ft(-f)f Fu(option)h(to)g(the)f Ft(export)f Fu(builtin)h(\(see)h
+(Section)g(4.1)h([Bourne)e(Shell)150 628 y(Builtins],)g(page)e(51\).)78
+b(The)42 b Ft(-f)g Fu(option)g(to)i(the)e Ft(unset)f
+Fu(builtin)h(\(see)i(Section)f(4.1)h([Bourne)e(Shell)150
+737 y(Builtins],)31 b(page)g(51\))h(deletes)f(a)g(function)f
+(de\014nition.)275 878 y(F)-8 b(unctions)33 b(ma)m(y)g(b)s(e)g
+(recursiv)m(e.)48 b(The)32 b Ft(FUNCNEST)f Fu(v)-5 b(ariable)34
+b(ma)m(y)f(b)s(e)f(used)g(to)i(limit)g(the)f(depth)f(of)150
+987 y(the)j(function)g(call)h(stac)m(k)g(and)f(restrict)g(the)g(n)m(um)
+m(b)s(er)f(of)h(function)g(in)m(v)m(o)s(cations.)56 b(By)35
+b(default,)i(Bash)150 1097 y(places)31 b(no)f(limit)i(on)e(the)g(n)m
+(um)m(b)s(er)g(of)g(recursiv)m(e)h(calls.)150 1347 y
+Fs(3.4)68 b(Shell)45 b(P)l(arameters)150 1506 y Fu(A)39
+b Fr(parameter)45 b Fu(is)39 b(an)g(en)m(tit)m(y)h(that)f(stores)g(v)-5
+b(alues.)66 b(It)39 b(can)g(b)s(e)f(a)h Ft(name)p Fu(,)h(a)f(n)m(um)m
+(b)s(er,)g(or)g(one)g(of)g(the)150 1616 y(sp)s(ecial)c(c)m(haracters)h
+(listed)g(b)s(elo)m(w.)53 b(A)35 b Fr(v)-5 b(ariable)41
+b Fu(is)34 b(a)h(parameter)h(denoted)e(b)m(y)h(a)g Ft(name)p
+Fu(.)52 b(A)35 b(v)-5 b(ariable)150 1726 y(has)41 b(a)h
+Ft(value)d Fu(and)i(zero)h(or)f(more)g Ft(attributes)p
+Fu(.)71 b(A)m(ttributes)42 b(are)f(assigned)h(using)f(the)g
+Ft(declare)150 1835 y Fu(builtin)29 b(command)g(\(see)h(the)g
+(description)f(of)g(the)h Ft(declare)d Fu(builtin)i(in)g(Section)h(4.2)
+g([Bash)g(Builtins],)150 1945 y(page)h(60\).)42 b(The)30
+b Ft(export)f Fu(and)g Ft(readonly)f Fu(builtins)i(assign)h(sp)s
+(eci\014c)f(attributes.)275 2085 y(A)e(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 2195 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 Ft(unset)f
+Fu(builtin)h(command.)275 2336 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 2476 y Fj(name)p Ft(=[)p Fj(value)p Ft(])150
+2617 y Fu(If)43 b Fr(v)-5 b(alue)49 b Fu(is)43 b(not)h(giv)m(en,)k(the)
+c(v)-5 b(ariable)44 b(is)f(assigned)h(the)f(n)m(ull)h(string.)80
+b(All)44 b Fr(v)-5 b(alue)5 b Fu(s)43 b(undergo)g(tilde)150
+2726 y(expansion,)25 b(parameter)f(and)f(v)-5 b(ariable)25
+b(expansion,)g(command)e(substitution,)i(arithmetic)g(expansion,)150
+2836 y(and)i(quote)i(remo)m(v)-5 b(al)29 b(\(see)g(Section)f(3.5.3)i
+([Shell)e(P)m(arameter)h(Expansion],)f(page)h(27\).)41
+b(If)27 b(the)h(v)-5 b(ariable)150 2946 y(has)35 b(its)h
+Ft(integer)e Fu(attribute)i(set,)i(then)d Fr(v)-5 b(alue)42
+b Fu(is)35 b(ev)-5 b(aluated)37 b(as)f(an)f(arithmetic)i(expression)f
+(ev)m(en)g(if)150 3055 y(the)i Ft($\(\(...)n(\)\))f Fu(expansion)g(is)g
+(not)h(used)e(\(see)j(Section)f(3.5.5)h([Arithmetic)f(Expansion],)h
+(page)f(36\).)150 3165 y(W)-8 b(ord)26 b(splitting)h(and)e(\014lename)h
+(expansion)g(are)g(not)h(p)s(erformed.)37 b(Assignmen)m(t)27
+b(statemen)m(ts)g(ma)m(y)g(also)150 3274 y(app)s(ear)22
+b(as)h(argumen)m(ts)g(to)h(the)f Ft(alias)p Fu(,)g Ft(declare)p
+Fu(,)f Ft(typeset)p Fu(,)h Ft(export)p Fu(,)g Ft(readonly)p
+Fu(,)f(and)g Ft(local)f Fu(builtin)150 3384 y(commands)31
+b(\()p Fr(declaration)i(commands)t Fu(\).)43 b(When)32
+b(in)f Fm(posix)f Fu(mo)s(de)h(\(see)h(Section)g(6.11)h([Bash)f(POSIX)
+150 3493 y(Mo)s(de],)h(page)f(115\),)i(these)e(builtins)f(ma)m(y)h(app)
+s(ear)f(in)g(a)h(command)f(after)h(one)g(or)g(more)g(instances)g(of)150
+3603 y(the)f Ft(command)d Fu(builtin)i(and)g(retain)h(these)f
+(assignmen)m(t)i(statemen)m(t)g(prop)s(erties.)40 b(F)-8
+b(or)31 b(example,)390 3744 y Ft(command)46 b(export)g(var=value)275
+3884 y Fu(In)29 b(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 3994 y(arra)m(y)36 b(index)g(\(see)h
+(Section)g(6.7)g([Arra)m(ys],)h(page)f(109\),)i(the)d(`)p
+Ft(+=)p Fu(')g(op)s(erator)g(app)s(ends)e(to)j(or)f(adds)f(to)150
+4103 y(the)j(v)-5 b(ariable's)38 b(previous)f(v)-5 b(alue.)63
+b(This)36 b(includes)h(argumen)m(ts)h(to)g(declaration)h(commands)f
+(suc)m(h)f(as)150 4213 y Ft(declare)31 b Fu(that)k(accept)f(assignmen)m
+(t)h(statemen)m(ts.)51 b(When)34 b(`)p Ft(+=)p Fu(')f(is)g(applied)h
+(to)g(a)g(v)-5 b(ariable)34 b(for)f(whic)m(h)150 4323
+y(the)23 b Ft(integer)d Fu(attribute)k(has)e(b)s(een)g(set,)j(the)d(v)
+-5 b(ariable's)24 b(curren)m(t)e(v)-5 b(alue)23 b(and)f
+Fr(v)-5 b(alue)28 b Fu(are)23 b(eac)m(h)h(ev)-5 b(aluated)150
+4432 y(as)25 b(arithmetic)i(expressions,)f(and)e(the)i(sum)e(of)h(the)h
+(results)f(is)g(assigned)g(as)h(the)f(v)-5 b(ariable's)26
+b(v)-5 b(alue.)39 b(The)150 4542 y(curren)m(t)24 b(v)-5
+b(alue)26 b(is)e(usually)h(an)f(in)m(teger)i(constan)m(t,)i(but)c(ma)m
+(y)h(b)s(e)f(an)h(expression.)38 b(When)25 b(`)p Ft(+=)p
+Fu(')f(is)h(applied)150 4651 y(to)35 b(an)f(arra)m(y)h(v)-5
+b(ariable)34 b(using)g(comp)s(ound)f(assignmen)m(t)i(\(see)g(Section)g
+(6.7)g([Arra)m(ys],)h(page)f(109\),)i(the)150 4761 y(v)-5
+b(ariable's)33 b(v)-5 b(alue)34 b(is)e(not)h(unset)f(\(as)h(it)g(is)g
+(when)f(using)g(`)p Ft(=)p Fu('\),)i(and)e(new)g(v)-5
+b(alues)33 b(are)g(app)s(ended)d(to)k(the)150 4871 y(arra)m(y)k(b)s
+(eginning)f(at)h(one)g(greater)h(than)f(the)g(arra)m(y's)g(maxim)m(um)f
+(index)h(\(for)f(indexed)g(arra)m(ys\),)k(or)150 4980
+y(added)24 b(as)i(additional)g(k)m(ey-v)-5 b(alue)26
+b(pairs)f(in)g(an)g(asso)s(ciativ)m(e)j(arra)m(y)-8 b(.)40
+b(When)24 b(applied)h(to)h(a)g(string-v)-5 b(alued)150
+5090 y(v)g(ariable,)31 b Fr(v)-5 b(alue)36 b Fu(is)31
+b(expanded)e(and)h(app)s(ended)f(to)i(the)f(v)-5 b(ariable's)32
+b(v)-5 b(alue.)275 5230 y(A)28 b(v)-5 b(ariable)28 b(can)h(b)s(e)e
+(assigned)h(the)h Ft(nameref)d Fu(attribute)i(using)g(the)g
+Ft(-n)f Fu(option)i(to)g(the)f Ft(declare)e Fu(or)150
+5340 y Ft(local)f Fu(builtin)h(commands)g(\(see)i(Section)f(4.2)h
+([Bash)f(Builtins],)h(page)f(60\))h(to)f(create)i(a)e
+Fr(nameref)p Fu(,)g(or)g(a)p eop end
+%%Page: 23 29
+TeXDict begin 23 28 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(23)150 299
+y(reference)26 b(to)g(another)f(v)-5 b(ariable.)40 b(This)24
+b(allo)m(ws)j(v)-5 b(ariables)26 b(to)g(b)s(e)e(manipulated)h
+(indirectly)-8 b(.)40 b(Whenev)m(er)150 408 y(the)31
+b(nameref)g(v)-5 b(ariable)32 b(is)f(referenced,)g(assigned)h(to,)g
+(unset,)f(or)g(has)f(its)i(attributes)f(mo)s(di\014ed)f(\(other)150
+518 y(than)c(using)g(or)h(c)m(hanging)g(the)g(nameref)f(attribute)i
+(itself)7 b(\),)29 b(the)d(op)s(eration)h(is)g(actually)h(p)s(erformed)
+d(on)150 628 y(the)31 b(v)-5 b(ariable)31 b(sp)s(eci\014ed)f(b)m(y)g
+(the)h(nameref)f(v)-5 b(ariable's)31 b(v)-5 b(alue.)42
+b(A)30 b(nameref)g(is)h(commonly)g(used)e(within)150
+737 y(shell)h(functions)g(to)h(refer)f(to)h(a)f(v)-5
+b(ariable)31 b(whose)f(name)h(is)f(passed)g(as)g(an)g(argumen)m(t)h(to)
+g(the)f(function.)150 847 y(F)-8 b(or)31 b(instance,)g(if)g(a)g(v)-5
+b(ariable)31 b(name)f(is)h(passed)e(to)j(a)e(shell)h(function)f(as)h
+(its)f(\014rst)g(argumen)m(t,)h(running)390 986 y Ft(declare)46
+b(-n)h(ref=$1)150 1125 y Fu(inside)35 b(the)h(function)f(creates)h(a)g
+(lo)s(cal)h(nameref)e(v)-5 b(ariable)36 b Ft(ref)f Fu(whose)g(v)-5
+b(alue)36 b(is)f(the)h(v)-5 b(ariable)36 b(name)150 1235
+y(passed)h(as)g(the)h(\014rst)e(argumen)m(t.)62 b(References)38
+b(and)e(assignmen)m(ts)i(to)g Ft(ref)p Fu(,)g(and)f(c)m(hanges)h(to)g
+(its)g(at-)150 1344 y(tributes,)30 b(are)f(treated)h(as)g(references,)g
+(assignmen)m(ts,)g(and)f(attribute)h(mo)s(di\014cations)g(to)g(the)f(v)
+-5 b(ariable)150 1454 y(whose)30 b(name)h(w)m(as)f(passed)g(as)h
+Ft($1)p Fu(.)275 1593 y(If)g(the)g(con)m(trol)i(v)-5
+b(ariable)32 b(in)g(a)f Ft(for)g Fu(lo)s(op)h(has)f(the)g(nameref)h
+(attribute,)g(the)g(list)g(of)g(w)m(ords)f(can)h(b)s(e)150
+1703 y(a)39 b(list)g(of)f(shell)h(v)-5 b(ariables,)41
+b(and)d(a)h(name)f(reference)h(is)g(established)f(for)h(eac)m(h)g(w)m
+(ord)f(in)g(the)h(list,)i(in)150 1812 y(turn,)d(when)d(the)i(lo)s(op)g
+(is)g(executed.)61 b(Arra)m(y)37 b(v)-5 b(ariables)37
+b(cannot)h(b)s(e)e(giv)m(en)h(the)g(nameref)g(attribute.)150
+1922 y(Ho)m(w)m(ev)m(er,)i(nameref)d(v)-5 b(ariables)36
+b(can)g(reference)g(arra)m(y)g(v)-5 b(ariables)37 b(and)e(subscripted)f
+(arra)m(y)i(v)-5 b(ariables.)150 2031 y(Namerefs)36 b(can)f(b)s(e)g
+(unset)g(using)g(the)h Ft(-n)e Fu(option)i(to)g(the)g
+Ft(unset)e Fu(builtin)h(\(see)h(Section)g(4.1)h([Bourne)150
+2141 y(Shell)43 b(Builtins],)j(page)e(51\).)79 b(Otherwise,)45
+b(if)e Ft(unset)e Fu(is)i(executed)h(with)e(the)h(name)g(of)g(a)g
+(nameref)150 2251 y(v)-5 b(ariable)31 b(as)g(an)f(argumen)m(t,)h(the)g
+(v)-5 b(ariable)31 b(referenced)f(b)m(y)g(the)h(nameref)f(v)-5
+b(ariable)31 b(is)g(unset.)150 2454 y Fk(3.4.1)63 b(P)m(ositional)41
+b(P)m(arameters)150 2601 y Fu(A)28 b Fr(p)s(ositional)h(parameter)35
+b Fu(is)28 b(a)g(parameter)g(denoted)g(b)m(y)g(one)g(or)g(more)g
+(digits,)h(other)g(than)e(the)h(single)150 2711 y(digit)34
+b Ft(0)p Fu(.)48 b(P)m(ositional)36 b(parameters)d(are)g(assigned)h
+(from)e(the)i(shell's)f(argumen)m(ts)g(when)f(it)i(is)f(in)m(v)m(ok)m
+(ed,)150 2821 y(and)38 b(ma)m(y)i(b)s(e)e(reassigned)i(using)e(the)h
+Ft(set)g Fu(builtin)f(command.)67 b(P)m(ositional)41
+b(parameter)e Ft(N)g Fu(ma)m(y)h(b)s(e)150 2930 y(referenced)34
+b(as)h Ft(${N})p Fu(,)g(or)f(as)h Ft($N)e Fu(when)h Ft(N)g
+Fu(consists)h(of)f(a)h(single)g(digit.)54 b(P)m(ositional)37
+b(parameters)d(ma)m(y)150 3040 y(not)j(b)s(e)f(assigned)h(to)g(with)f
+(assignmen)m(t)i(statemen)m(ts.)61 b(The)36 b Ft(set)g
+Fu(and)g Ft(shift)f Fu(builtins)h(are)h(used)f(to)150
+3149 y(set)k(and)f(unset)f(them)i(\(see)g(Chapter)f(4)g([Shell)h
+(Builtin)g(Commands],)h(page)f(51\).)68 b(The)39 b(p)s(ositional)150
+3259 y(parameters)44 b(are)g(temp)s(orarily)g(replaced)h(when)e(a)h
+(shell)g(function)g(is)g(executed)g(\(see)h(Section)g(3.3)150
+3369 y([Shell)30 b(F)-8 b(unctions],)32 b(page)f(19\).)275
+3508 y(When)c(a)i(p)s(ositional)g(parameter)g(consisting)f(of)h(more)f
+(than)g(a)g(single)h(digit)g(is)f(expanded,)g(it)h(m)m(ust)150
+3617 y(b)s(e)e(enclosed)h(in)g(braces.)40 b(Without)28
+b(braces,)h(a)f(digit)g(follo)m(wing)h(`)p Ft($)p Fu(')f(can)g(only)f
+(refer)h(to)g(one)g(of)g(the)g(\014rst)150 3727 y(nine)i(p)s(ositional)
+h(parameters)g(\($1)p Ft(\\)p Fu(-$9\))i(or)d(the)h(sp)s(ecial)g
+(parameter)f($0)i(\(see)f(b)s(elo)m(w\).)150 3931 y Fk(3.4.2)63
+b(Sp)s(ecial)41 b(P)m(arameters)150 4078 y Fu(The)d(shell)g(treats)h
+(sev)m(eral)g(parameters)f(sp)s(ecially)-8 b(.)65 b(These)38
+b(parameters)h(ma)m(y)f(only)g(b)s(e)g(referenced;)150
+4187 y(assignmen)m(t)31 b(to)f(them)g(is)g(not)g(allo)m(w)m(ed.)43
+b(Sp)s(ecial)30 b(parameters)g(are)g(denoted)g(b)m(y)g(one)g(of)g(the)g
+(follo)m(wing)150 4297 y(c)m(haracters.)150 4463 y Ft(*)432
+b Fu(\($*\))38 b(Expands)d(to)i(the)f(p)s(ositional)h(parameters,)h
+(starting)f(from)f(one.)59 b(When)36 b(the)g(ex-)630
+4573 y(pansion)h(is)h(not)g(within)f(double)g(quotes,)j(eac)m(h)f(p)s
+(ositional)f(parameter)g(expands)f(to)i(a)630 4682 y(separate)31
+b(w)m(ord.)41 b(In)30 b(con)m(texts)i(where)e(w)m(ord)g(expansions)g
+(are)h(p)s(erformed,)e(those)i(w)m(ords)630 4792 y(are)d(sub)5
+b(ject)27 b(to)i(further)d(w)m(ord)h(splitting)h(and)f(\014lename)h
+(expansion.)40 b(When)27 b(the)h(expan-)630 4902 y(sion)h(o)s(ccurs)g
+(within)g(double)g(quotes,)h(it)g(expands)f(to)h(a)f(single)h(w)m(ord)f
+(with)g(the)h(v)-5 b(alue)30 b(of)630 5011 y(eac)m(h)37
+b(parameter)g(separated)f(b)m(y)g(the)g(\014rst)g(c)m(haracter)h(of)g
+(the)f Ft(IFS)f Fu(v)-5 b(ariable.)59 b(That)36 b(is,)630
+5121 y Ft("$*")d Fu(is)h(equiv)-5 b(alen)m(t)35 b(to)g
+Ft("$1)p Fj(c)p Ft($2)p Fj(c)p Ft(...)m(")p Fu(,)g(where)e
+Fr(c)40 b Fu(is)34 b(the)g(\014rst)g(c)m(haracter)h(of)f(the)g(v)-5
+b(alue)630 5230 y(of)30 b(the)g Ft(IFS)g Fu(v)-5 b(ariable.)41
+b(If)30 b Ft(IFS)f Fu(is)h(unset,)g(the)g(parameters)g(are)h(separated)
+f(b)m(y)g(spaces.)41 b(If)630 5340 y Ft(IFS)29 b Fu(is)i(n)m(ull,)f
+(the)h(parameters)g(are)f(joined)h(without)f(in)m(terv)m(ening)i
+(separators.)p eop end
+%%Page: 24 30
+TeXDict begin 24 29 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(24)150 299
+y Ft(@)432 b Fu(\($@\))43 b(Expands)f(to)h(the)g(p)s(ositional)g
+(parameters,)k(starting)c(from)f(one.)78 b(In)42 b(con)m(texts)630
+408 y(where)35 b(w)m(ord)h(splitting)g(is)g(p)s(erformed,)g(this)g
+(expands)e(eac)m(h)j(p)s(ositional)g(parameter)f(to)630
+518 y(a)d(separate)h(w)m(ord;)g(if)f(not)g(within)g(double)f(quotes,)j
+(these)e(w)m(ords)g(are)g(sub)5 b(ject)33 b(to)g(w)m(ord)630
+628 y(splitting.)45 b(In)30 b(con)m(texts)j(where)e(w)m(ord)g
+(splitting)i(is)e(not)h(p)s(erformed,)e(suc)m(h)h(as)h(the)f(v)-5
+b(alue)630 737 y(p)s(ortion)36 b(of)h(an)g(assignmen)m(t)h(statemen)m
+(t,)i(this)d(expands)f(to)h(a)g(single)h(w)m(ord)e(with)h(eac)m(h)630
+847 y(p)s(ositional)31 b(parameter)g(separated)g(b)m(y)f(a)h(space.)41
+b(When)31 b(the)f(expansion)g(o)s(ccurs)g(within)630
+956 y(double)35 b(quotes,)i(and)e(w)m(ord)g(splitting)h(is)f(p)s
+(erformed,)g(eac)m(h)h(parameter)g(expands)f(to)h(a)630
+1066 y(separate)j(w)m(ord.)61 b(That)38 b(is,)h Ft("$@")e
+Fu(is)g(equiv)-5 b(alen)m(t)39 b(to)g Ft("$1")29 b("$2")g(...)o
+Fu(.)62 b(If)37 b(the)h(double-)630 1176 y(quoted)29
+b(expansion)g(o)s(ccurs)g(within)f(a)i(w)m(ord,)f(the)g(expansion)g(of)
+h(the)f(\014rst)f(parameter)i(is)630 1285 y(joined)k(with)g(the)g
+(expansion)g(of)g(the)g(b)s(eginning)f(part)h(of)g(the)g(original)i(w)m
+(ord,)e(and)g(the)630 1395 y(expansion)j(of)g(the)g(last)g(parameter)h
+(is)f(joined)f(with)h(the)g(expansion)f(of)h(the)g(last)h(part)630
+1504 y(of)f(the)g(original)g(w)m(ord.)59 b(When)37 b(there)g(are)f(no)h
+(p)s(ositional)g(parameters,)i Ft("$@")d Fu(and)g Ft($@)630
+1614 y Fu(expand)30 b(to)h(nothing)f(\(i.e.,)i(they)f(are)f(remo)m(v)m
+(ed\).)150 1781 y Ft(#)432 b Fu(\($#\))31 b(Expands)e(to)i(the)g(n)m
+(um)m(b)s(er)e(of)h(p)s(ositional)i(parameters)e(in)g(decimal.)150
+1947 y Ft(?)432 b Fu(\($?\))41 b(Expands)29 b(to)j(the)e(exit)h(status)
+g(of)g(the)f(most)h(recen)m(tly)h(executed)f(command.)150
+2114 y Ft(-)432 b Fu(\($-,)24 b(a)e(h)m(yphen.\))37 b(Expands)20
+b(to)i(the)f(curren)m(t)h(option)f(\015ags)h(as)f(sp)s(eci\014ed)g(up)s
+(on)f(in)m(v)m(o)s(cation,)630 2224 y(b)m(y)38 b(the)h
+Ft(set)f Fu(builtin)g(command,)j(or)d(those)i(set)f(b)m(y)f(the)h
+(shell)g(itself)g(\(suc)m(h)g(as)g(the)g Ft(-i)630 2333
+y Fu(option\).)150 2500 y Ft($)432 b Fu(\($$\))39 b(Expands)c(to)j(the)
+f(pro)s(cess)g Fm(id)g Fu(of)g(the)g(shell.)61 b(In)36
+b(a)h(subshell,)h(it)g(expands)e(to)i(the)630 2610 y(pro)s(cess)30
+b Fm(id)g Fu(of)h(the)g(in)m(v)m(oking)g(shell,)g(not)g(the)f
+(subshell.)150 2776 y Ft(!)432 b Fu(\($!\))51 b(Expands)32
+b(to)i(the)g(pro)s(cess)f Fm(id)h Fu(of)f(the)h(job)f(most)h(recen)m
+(tly)h(placed)f(in)m(to)g(the)g(bac)m(k-)630 2886 y(ground,)26
+b(whether)g(executed)g(as)h(an)f(async)m(hronous)f(command)h(or)g
+(using)g(the)g Ft(bg)f Fu(builtin)630 2996 y(\(see)31
+b(Section)h(7.2)f([Job)f(Con)m(trol)h(Builtins],)g(page)h(124\).)150
+3162 y Ft(0)432 b Fu(\($0\))46 b(Expands)d(to)i(the)g(name)g(of)f(the)h
+(shell)g(or)f(shell)h(script.)83 b(This)44 b(is)g(set)h(at)h(shell)630
+3272 y(initialization.)d(If)27 b(Bash)h(is)g(in)m(v)m(ok)m(ed)h(with)e
+(a)i(\014le)e(of)h(commands)g(\(see)g(Section)h(3.8)g([Shell)630
+3381 y(Scripts],)g(page)g(49\),)h Ft($0)e Fu(is)h(set)g(to)g(the)f
+(name)h(of)f(that)h(\014le.)41 b(If)28 b(Bash)g(is)h(started)g(with)f
+(the)630 3491 y Ft(-c)i Fu(option)h(\(see)h(Section)g(6.1)f([In)m(v)m
+(oking)h(Bash],)g(page)f(99\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)
+f(\014rst)630 3601 y(argumen)m(t)g(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 3710 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
+3962 y Fs(3.5)68 b(Shell)45 b(Expansions)150 4121 y Fu(Expansion)39
+b(is)i(p)s(erformed)d(on)i(the)g(command)g(line)h(after)f(it)h(has)f(b)
+s(een)f(split)h(in)m(to)h Ft(token)p Fu(s.)69 b(Bash)150
+4231 y(p)s(erforms)29 b(these)i(expansions:)225 4373
+y Fq(\017)60 b Fu(brace)31 b(expansion)225 4511 y Fq(\017)60
+b Fu(tilde)31 b(expansion)225 4649 y Fq(\017)60 b Fu(parameter)31
+b(and)f(v)-5 b(ariable)31 b(expansion)225 4787 y Fq(\017)60
+b Fu(command)30 b(substitution)225 4925 y Fq(\017)60
+b Fu(arithmetic)32 b(expansion)225 5064 y Fq(\017)60
+b Fu(w)m(ord)30 b(splitting)225 5202 y Fq(\017)60 b Fu(\014lename)31
+b(expansion)225 5340 y Fq(\017)60 b Fu(quote)31 b(remo)m(v)-5
+b(al)p eop end
+%%Page: 25 31
+TeXDict begin 25 30 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)275 299
+y(The)24 b(order)h(of)h(expansions)f(is:)39 b(brace)25
+b(expansion;)j(tilde)e(expansion,)g(parameter)g(and)f(v)-5
+b(ariable)26 b(ex-)150 408 y(pansion,)j(arithmetic)i(expansion,)f(and)f
+(command)g(substitution)g(\(done)g(in)h(a)f(left-to-righ)m(t)k
+(fashion\);)150 518 y(w)m(ord)d(splitting;)h(\014lename)g(expansion;)f
+(and)g(quote)h(remo)m(v)-5 b(al.)275 661 y(On)27 b(systems)h(that)h
+(can)g(supp)s(ort)e(it,)i(there)g(is)f(an)g(additional)i(expansion)e(a)
+m(v)-5 b(ailable:)42 b Fr(pro)s(cess)28 b(sub-)150 771
+y(stitution)p Fu(.)42 b(This)30 b(is)g(p)s(erformed)f(at)j(the)e(same)h
+(time)h(as)e(tilde,)i(parameter,)f(v)-5 b(ariable,)32
+b(and)e(arithmetic)150 880 y(expansion)g(and)g(command)g(substitution.)
+275 1024 y Fr(Quote)42 b(remo)m(v)-5 b(al)46 b Fu(is)c(alw)m(a)m(ys)h
+(p)s(erformed)d(last.)76 b(It)42 b(remo)m(v)m(es)h(quote)f(c)m
+(haracters)i(presen)m(t)d(in)h(the)150 1133 y(original)35
+b(w)m(ord,)g(not)f(ones)g(resulting)h(from)e(one)h(of)h(the)f(other)g
+(expansions,)h(unless)e(they)h(ha)m(v)m(e)i(b)s(een)150
+1243 y(quoted)31 b(themselv)m(es.)41 b(See)31 b(Section)g(3.5.9)h
+([Quote)f(Remo)m(v)-5 b(al],)33 b(page)e(40,)g(for)g(more)f(details.)
+275 1386 y(Only)h(brace)i(expansion,)h(w)m(ord)e(splitting,)i(and)e
+(\014lename)h(expansion)f(can)h(increase)g(the)g(n)m(um)m(b)s(er)150
+1496 y(of)24 b(w)m(ords)g(of)g(the)h(expansion;)h(other)e(expansions)g
+(expand)g(a)g(single)h(w)m(ord)f(to)h(a)f(single)h(w)m(ord.)38
+b(The)24 b(only)150 1605 y(exceptions)i(to)f(this)g(are)g(the)g
+(expansions)g(of)g Ft("$@")f Fu(and)g Ft($*)g Fu(\(see)i(Section)f
+(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)150 1715 y(page)31
+b(23\),)h(and)e Ft("${)p Fj(name)p Ft([@]}")d Fu(and)i
+Ft(${)p Fj(name)p Ft([*]})f Fu(\(see)j(Section)h(6.7)f([Arra)m(ys],)g
+(page)g(109\).)150 1923 y Fk(3.5.1)63 b(Brace)40 b(Expansion)150
+2070 y Fu(Brace)k(expansion)e(is)h(a)g(mec)m(hanism)g(to)g(generate)h
+(arbitrary)f(strings)f(sharing)g(a)h(common)g(pre\014x)150
+2179 y(and)31 b(su\016x,)f(either)i(of)f(whic)m(h)g(can)h(b)s(e)e(empt)
+m(y)-8 b(.)44 b(This)31 b(mec)m(hanism)g(is)g(similar)h(to)g
+Fr(\014lename)f(expansion)150 2289 y Fu(\(see)39 b(Section)h(3.5.8)g
+([Filename)g(Expansion],)g(page)f(37\),)j(but)c(the)h(\014lenames)f
+(generated)i(need)e(not)150 2399 y(exist.)57 b(P)m(atterns)37
+b(to)f(b)s(e)f(brace)h(expanded)f(are)h(formed)g(from)f(an)g(optional)i
+Fr(pream)m(ble)p Fu(,)h(follo)m(w)m(ed)f(b)m(y)150 2508
+y(either)24 b(a)h(series)f(of)g(comma-separated)h(strings)f(or)g(a)g
+(sequence)g(expression)g(b)s(et)m(w)m(een)h(a)f(pair)f(of)i(braces,)150
+2618 y(follo)m(w)m(ed)h(b)m(y)f(an)g(optional)g Fr(p)s(ostscript)p
+Fu(.)39 b(The)24 b(pream)m(ble)h(is)g(pre\014xed)e(to)j(eac)m(h)g
+(string)f(con)m(tained)g(within)150 2727 y(the)32 b(braces,)h(and)e
+(the)h(p)s(ostscript)g(is)g(then)g(app)s(ended)e(to)i(eac)m(h)h
+(resulting)g(string,)f(expanding)g(left)g(to)150 2837
+y(righ)m(t.)275 2980 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 3090 y(brace)31 b(expansion)f(preserv)m(es)g
+(left)h(to)h(righ)m(t)e(order.)41 b(F)-8 b(or)31 b(example,)390
+3233 y Ft(bash$)46 b(echo)h(a{d,c,b}e)390 3342 y(ade)g(ace)g(abe)275
+3486 y Fu(A)23 b(sequence)g(expression)g(tak)m(es)i(the)e(form)g
+Ft({)p Fj(x)p Ft(..)p Fj(y)p Ft([..)p Fj(incr)p Ft(]})p
+Fu(,)e(where)i Fr(x)29 b Fu(and)23 b Fr(y)30 b Fu(are)24
+b(either)g(in)m(tegers)150 3595 y(or)34 b(letters,)i(and)d
+Fr(incr)p Fu(,)h(an)g(optional)g(incremen)m(t,)i(is)d(an)h(in)m(teger.)
+52 b(When)33 b(in)m(tegers)i(are)f(supplied,)g(the)150
+3705 y(expression)40 b(expands)e(to)j(eac)m(h)g(n)m(um)m(b)s(er)d(b)s
+(et)m(w)m(een)j Fr(x)46 b Fu(and)39 b Fr(y)p Fu(,)j(inclusiv)m(e.)70
+b(If)39 b(either)h Fr(x)46 b Fu(or)40 b Fr(y)47 b Fu(b)s(egins)150
+3814 y(with)c(a)g(zero,)k(eac)m(h)d(generated)g(term)f(will)g(con)m
+(tain)h(the)f(same)g(n)m(um)m(b)s(er)f(of)h(digits,)k(zero-padding)150
+3924 y(where)e(necessary)-8 b(.)86 b(When)45 b(letters)i(are)f
+(supplied,)i(the)d(expression)g(expands)g(to)h(eac)m(h)g(c)m(haracter)
+150 4034 y(lexicographically)35 b(b)s(et)m(w)m(een)d
+Fr(x)38 b Fu(and)32 b Fr(y)p Fu(,)g(inclusiv)m(e,)i(using)d(the)h
+(default)g(C)g(lo)s(cale.)47 b(Note)33 b(that)g(b)s(oth)e
+Fr(x)150 4143 y Fu(and)i Fr(y)41 b Fu(m)m(ust)34 b(b)s(e)f(of)h(the)g
+(same)g(t)m(yp)s(e)g(\(in)m(teger)h(or)f(letter\).)52
+b(When)33 b(the)h(incremen)m(t)h(is)e(supplied,)h(it)g(is)150
+4253 y(used)c(as)g(the)h(di\013erence)g(b)s(et)m(w)m(een)g(eac)m(h)g
+(term.)41 b(The)30 b(default)g(incremen)m(t)h(is)g(1)f(or)h(-1)g(as)g
+(appropriate.)275 4396 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 4506 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 4615 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.)275
+4758 y(A)h(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
+4868 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 4978 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
+5121 y(A)25 b Fi({)h Fu(or)f(`)p Ft(,)p Fu(')g(ma)m(y)h(b)s(e)f(quoted)
+h(with)f(a)g(bac)m(kslash)h(to)g(prev)m(en)m(t)g(its)g(b)s(eing)f
+(considered)g(part)g(of)h(a)g(brace)150 5230 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 Ft(${)p Fu(')g(is)g(not)g(considered)
+150 5340 y(eligible)e(for)e(brace)h(expansion,)f(and)g(inhibits)g
+(brace)h(expansion)f(un)m(til)g(the)h(closing)h(`)p Ft(})p
+Fu('.)p eop end
+%%Page: 26 32
+TeXDict begin 26 31 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(26)275 299
+y(This)30 b(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
+408 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 550 y Ft(mkdir)46 b(/usr/local/src/bash/{old,n)o(ew,)
+o(dist)o(,bug)o(s})275 691 y Fu(or)390 833 y Ft(chown)g(root)h
+(/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150
+1039 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)150 1186 y
+Fu(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
+(haracter)h(\(`)p Ft(~)p Fu('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
+d(to)j(the)f(\014rst)150 1295 y(unquoted)24 b(slash)g(\(or)h(all)h(c)m
+(haracters,)h(if)e(there)g(is)f(no)h(unquoted)e(slash\))i(are)g
+(considered)g(a)g Fr(tilde-pre\014x)p Fu(.)150 1405 y(If)38
+b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f(are)h
+(quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
+1514 y(follo)m(wing)45 b(the)e(tilde)h(are)f(treated)h(as)f(a)h(p)s
+(ossible)e Fr(login)i(name)p Fu(.)79 b(If)43 b(this)g(login)h(name)f
+(is)g(the)g(n)m(ull)150 1624 y(string,)33 b(the)g(tilde)g(is)f
+(replaced)h(with)g(the)f(v)-5 b(alue)33 b(of)g(the)f
+Ft(HOME)g Fu(shell)g(v)-5 b(ariable.)48 b(If)32 b Ft(HOME)f
+Fu(is)i(unset,)g(the)150 1734 y(tilde)d(expands)f(to)i(the)e(home)h
+(directory)g(of)g(the)g(user)f(executing)i(the)e(shell)h(instead.)41
+b(Otherwise,)30 b(the)150 1843 y(tilde-pre\014x)g(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 1985 y(If)h(the)h(tilde-pre\014x)f(is)h(`)p
+Ft(~+)p Fu(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
+b(ariable)34 b Ft(PWD)d Fu(replaces)j(the)f(tilde-pre\014x.)47
+b(If)150 2094 y(the)36 b(tilde-pre\014x)f(is)h(`)p Ft(~-)p
+Fu(',)h(the)f(shell)f(substitutes)h(the)f(v)-5 b(alue)36
+b(of)g(the)g(shell)g(v)-5 b(ariable)36 b Ft(OLDPWD)p
+Fu(,)f(if)h(it)g(is)150 2204 y(set.)275 2345 y(If)29
+b(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
+Fr(N)p Fu(,)j(optionally)150 2455 y(pre\014xed)22 b(b)m(y)h(a)h(`)p
+Ft(+)p Fu(')f(or)h(a)f(`)p Ft(-)p Fu(',)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
+2564 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 Ft(dirs)g Fu(builtin)g(in)m(v)m(ok)m(ed)i(with)
+e(the)g(c)m(haracters)150 2674 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 2783 y(page)34 b(111\).)50
+b(If)32 b(the)h(tilde-pre\014x,)h(sans)e(the)h(tilde,)i(consists)e(of)g
+(a)h(n)m(um)m(b)s(er)d(without)i(a)g(leading)h(`)p Ft(+)p
+Fu(')f(or)150 2893 y(`)p Ft(-)p Fu(',)e(tilde)g(expansion)f(assumes)g
+(`)p Ft(+)p Fu('.)275 3034 y(The)h(results)h(of)h(tilde)g(expansion)f
+(are)h(treated)g(as)f(if)h(they)f(w)m(ere)h(quoted,)g(so)g(the)f
+(replacemen)m(t)i(is)150 3144 y(not)d(sub)5 b(ject)30
+b(to)h(w)m(ord)f(splitting)h(and)f(\014lename)g(expansion.)275
+3285 y(If)24 b(the)i(login)g(name)f(is)g(in)m(v)-5 b(alid,)27
+b(or)f(the)f(tilde)h(expansion)f(fails,)i(the)f(tilde-pre\014x)f(is)g
+(left)h(unc)m(hanged.)275 3427 y(Bash)k(c)m(hec)m(ks)j(eac)m(h)f(v)-5
+b(ariable)31 b(assignmen)m(t)h(for)e(unquoted)g(tilde-pre\014xes)h
+(immediately)h(follo)m(wing)150 3536 y(a)26 b(`)p Ft(:)p
+Fu(')f(or)h(the)f(\014rst)g(`)p Ft(=)p Fu(',)i(and)e(p)s(erforms)f
+(tilde)i(expansion)f(in)g(these)h(cases.)40 b(Consequen)m(tly)-8
+b(,)27 b(one)f(ma)m(y)g(use)150 3646 y(\014lenames)32
+b(with)f(tildes)h(in)f(assignmen)m(ts)i(to)f Ft(PATH)p
+Fu(,)f Ft(MAILPATH)p Fu(,)f(and)h Ft(CDPATH)p Fu(,)f(and)h(the)h(shell)
+g(assigns)150 3755 y(the)f(expanded)e(v)-5 b(alue.)275
+3897 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 4067 y Ft(~)432
+b Fu(The)30 b(v)-5 b(alue)31 b(of)f Ft($HOME)p Fu(.)150
+4233 y Ft(~/foo)240 b($HOME/foo)150 4399 y(~fred/foo)630
+4509 y Fu(The)30 b(directory)h(or)f(\014le)h Ft(foo)e
+Fu(in)h(the)h(home)f(directory)h(of)g(the)f(user)g Ft(fred)p
+Fu(.)150 4675 y Ft(~+/foo)192 b($PWD/foo)150 4841 y(~-/foo)g
+(${OLDPWD-'~-'}/foo)150 5007 y(~)p Fj(N)384 b Fu(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
+Ft(dirs)g(+)p Fj(N)p Fu('.)150 5174 y Ft(~+)p Fj(N)336
+b Fu(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 Ft(dirs)g(+)p Fj(N)p Fu('.)150 5340 y Ft(~-)p
+Fj(N)336 b Fu(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 Ft(dirs)g(-)p Fj(N)p Fu('.)p eop end
+%%Page: 27 33
+TeXDict begin 27 32 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(27)275 299
+y(Bash)40 b(also)h(p)s(erforms)e(tilde)h(expansion)g(on)h(w)m(ords)e
+(satisfying)i(the)f(conditions)h(of)f(v)-5 b(ariable)41
+b(as-)150 408 y(signmen)m(ts)f(\(see)h(Section)g(3.4)g([Shell)f(P)m
+(arameters],)k(page)d(22\))g(when)e(they)h(app)s(ear)f(as)i(argumen)m
+(ts)150 518 y(to)c(simple)f(commands.)57 b(Bash)36 b(do)s(es)f(not)h
+(do)g(this,)i(except)f(for)e(the)h(declaration)i(commands)d(listed)150
+628 y(ab)s(o)m(v)m(e,)d(when)d(in)h Fm(posix)g Fu(mo)s(de.)150
+827 y Fk(3.5.3)63 b(Shell)41 b(P)m(arameter)f(Expansion)150
+974 y Fu(The)g(`)p Ft($)p Fu(')h(c)m(haracter)i(in)m(tro)s(duces)d
+(parameter)h(expansion,)j(command)d(substitution,)i(or)e(arithmetic)150
+1084 y(expansion.)d(The)22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)
+g(b)s(e)e(expanded)h(ma)m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m
+(h)150 1193 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 1303 y(follo)m(wing)46 b(it)f(whic)m(h)f(could)h(b)s
+(e)e(in)m(terpreted)i(as)g(part)f(of)h(the)f(name.)83
+b(F)-8 b(or)46 b(example,)j(if)44 b(the)h(\014rst)150
+1413 y(p)s(ositional)40 b(parameter)g(has)e(the)i(v)-5
+b(alue)39 b(`)p Ft(a)p Fu(',)j(then)d Ft(${11})f Fu(expands)g(to)i(the)
+f(v)-5 b(alue)40 b(of)f(the)g(elev)m(en)m(th)150 1522
+y(p)s(ositional)31 b(parameter,)g(while)g Ft($11)e Fu(expands)h(to)h(`)
+p Ft(a1)p Fu('.)275 1657 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 Ft(})p
+Fu(')g(not)g(escap)s(ed)h(b)m(y)f(a)150 1767 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 1876 y(command)30
+b(substitution,)g(or)h(parameter)g(expansion.)275 2011
+y(The)f(basic)h(form)f(of)h(parameter)h(expansion)e(is)h($)p
+Fi({)p Fr(parameter)7 b Fi(})p Fu(,)32 b(whic)m(h)f(substitutes)g(the)f
+(v)-5 b(alue)32 b(of)150 2120 y Fr(parameter)p Fu(.)52
+b(The)34 b Fr(parameter)41 b Fu(is)34 b(a)h(shell)f(parameter)h(as)f
+(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.4)g([Shell)150
+2230 y(P)m(arameters],)28 b(page)f(22\))g(or)f(an)f(arra)m(y)h
+(reference)h(\(see)f(Section)h(6.7)g([Arra)m(ys],)g(page)g(109\).)41
+b(The)25 b(braces)150 2340 y(are)32 b(required)g(when)f
+Fr(parameter)39 b Fu(is)32 b(a)h(p)s(ositional)f(parameter)h(with)f
+(more)g(than)g(one)g(digit,)i(or)e(when)150 2449 y Fr(parameter)37
+b Fu(is)31 b(follo)m(w)m(ed)h(b)m(y)e(a)h(c)m(haracter)h(that)f(is)f
+(not)h(to)g(b)s(e)f(in)m(terpreted)g(as)h(part)f(of)h(its)f(name.)275
+2584 y(If)k(the)h(\014rst)f(c)m(haracter)i(of)f Fr(parameter)42
+b Fu(is)35 b(an)g(exclamation)i(p)s(oin)m(t)e(\(!\),)i(and)d
+Fr(parameter)42 b Fu(is)34 b(not)i(a)150 2694 y(nameref,)c(it)f(in)m
+(tro)s(duces)h(a)f(lev)m(el)i(of)f(indirection.)44 b(Bash)31
+b(uses)g(the)g(v)-5 b(alue)32 b(formed)f(b)m(y)g(expanding)g(the)150
+2803 y(rest)22 b(of)g Fr(parameter)29 b Fu(as)22 b(the)g(new)f
+Fr(parameter)7 b Fu(;)25 b(this)c(new)h(parameter)g(is)g(then)f
+(expanded)g(and)g(that)h(v)-5 b(alue)150 2913 y(is)35
+b(used)f(in)h(the)g(rest)g(of)g(the)h(expansion,)g(rather)f(than)g(the)
+g(expansion)g(of)g(the)g(original)h Fr(parameter)p Fu(.)150
+3022 y(This)29 b(is)h(kno)m(wn)f(as)i Ft(indirect)d(expansion)p
+Fu(.)38 b(The)29 b(v)-5 b(alue)31 b(is)e(sub)5 b(ject)30
+b(to)h(tilde)f(expansion,)g(parameter)150 3132 y(expansion,)40
+b(command)d(substitution,)j(and)d(arithmetic)i(expansion.)63
+b(If)37 b Fr(parameter)45 b Fu(is)38 b(a)g(nameref,)150
+3242 y(this)27 b(expands)f(to)h(the)h(name)e(of)i(the)f(v)-5
+b(ariable)27 b(referenced)g(b)m(y)g Fr(parameter)34 b
+Fu(instead)27 b(of)g(p)s(erforming)f(the)150 3351 y(complete)36
+b(indirect)f(expansion,)h(for)f(compatibilit)m(y)-8 b(.)57
+b(The)34 b(exceptions)i(to)f(this)g(are)g(the)g(expansions)150
+3461 y(of)29 b($)p Fi({)p Fu(!)p Fr(pre\014x)6 b Fu(*)p
+Fi(})29 b Fu(and)f($)p Fi({)p Fu(!)p Fr(name)5 b Fu([@])p
+Fi(})30 b Fu(describ)s(ed)d(b)s(elo)m(w.)41 b(The)27
+b(exclamation)k(p)s(oin)m(t)d(m)m(ust)h(immediately)150
+3570 y(follo)m(w)j(the)e(left)h(brace)g(in)f(order)g(to)h(in)m(tro)s
+(duce)f(indirection.)275 3705 y(In)39 b(eac)m(h)i(of)g(the)f(cases)h(b)
+s(elo)m(w,)i Fr(w)m(ord)h Fu(is)c(sub)5 b(ject)40 b(to)h(tilde)f
+(expansion,)j(parameter)e(expansion,)150 3815 y(command)30
+b(substitution,)g(and)g(arithmetic)i(expansion.)275 3950
+y(When)e(not)h(p)s(erforming)e(substring)g(expansion,)i(using)f(the)h
+(forms)f(describ)s(ed)f(b)s(elo)m(w)i(\(e.g.,)h(`)p Ft(:-)p
+Fu('\),)150 4059 y(Bash)h(tests)h(for)e(a)i(parameter)f(that)h(is)e
+(unset)h(or)g(n)m(ull.)48 b(Omitting)33 b(the)h(colon)f(results)g(in)g
+(a)g(test)h(only)150 4169 y(for)c(a)i(parameter)f(that)g(is)g(unset.)41
+b(Put)31 b(another)f(w)m(a)m(y)-8 b(,)33 b(if)e(the)f(colon)i(is)f
+(included,)f(the)h(op)s(erator)g(tests)150 4278 y(for)36
+b(b)s(oth)g Fr(parameter)7 b Fu('s)37 b(existence)h(and)e(that)i(its)f
+(v)-5 b(alue)37 b(is)g(not)f(n)m(ull;)k(if)d(the)g(colon)h(is)e
+(omitted,)k(the)150 4388 y(op)s(erator)31 b(tests)g(only)f(for)g
+(existence.)150 4548 y Ft(${)p Fj(parameter)p Ft(:)p
+Fq(\000)p Fj(word)p Ft(})630 4657 y Fu(If)g Fr(parameter)37
+b Fu(is)30 b(unset)g(or)h(n)m(ull,)f(the)h(expansion)f(of)g
+Fr(w)m(ord)k Fu(is)c(substituted.)40 b(Otherwise,)630
+4767 y(the)31 b(v)-5 b(alue)30 b(of)h Fr(parameter)37
+b Fu(is)31 b(substituted.)870 4902 y Ft($)47 b(v=123)870
+5011 y($)g(echo)g(${v-unset})870 5121 y(123)870 5230
+y($)g(echo)g(${v:-unset-or-null})870 5340 y(123)p eop
+end
+%%Page: 28 34
+TeXDict begin 28 33 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(28)870 299
+y Ft($)47 b(unset)g(v)870 408 y($)g(echo)g(${v-unset})870
+518 y(unset)870 628 y($)g(v=)870 737 y($)g(echo)g(${v-unset})870
+956 y($)g(echo)g(${v:-unset-or-null})870 1066 y(unset-or-null)150
+1215 y(${)p Fj(parameter)p Ft(:=)p Fj(word)p Ft(})630
+1325 y Fu(If)33 b Fr(parameter)40 b Fu(is)33 b(unset)f(or)h(n)m(ull,)h
+(the)f(expansion)g(of)g Fr(w)m(ord)j Fu(is)d(assigned)g(to)h
+Fr(parameter)p Fu(,)630 1435 y(and)44 b(the)h(result)f(of)h(the)g
+(expansion)f(is)h(the)g(\014nal)f(v)-5 b(alue)45 b(of)g
+Fr(parameter)p Fu(.)84 b(P)m(ositional)630 1544 y(parameters)31
+b(and)e(sp)s(ecial)i(parameters)g(ma)m(y)g(not)g(b)s(e)e(assigned)i(in)
+f(this)g(w)m(a)m(y)-8 b(.)870 1674 y Ft($)47 b(unset)g(var)870
+1783 y($)g(:)h(${var=DEFAULT})870 1893 y($)f(echo)g($var)870
+2002 y(DEFAULT)870 2112 y($)g(var=)870 2222 y($)g(:)h(${var:=DEFAULT})
+870 2331 y($)f(echo)g($var)870 2441 y(DEFAULT)150 2590
+y(${)p Fj(parameter)p Ft(:?)p Fj(word)p Ft(})630 2700
+y Fu(If)d Fr(parameter)52 b Fu(is)44 b(n)m(ull)h(or)f(unset,)k(the)d
+(shell)g(writes)f(the)h(expansion)f(of)h Fr(w)m(ord)j
+Fu(\(or)d(a)630 2809 y(message)31 b(to)g(that)g(e\013ect)h(if)e
+Fr(w)m(ord)k Fu(is)c(not)h(presen)m(t\))f(to)h(the)g(standard)e(error)h
+(and,)g(if)g(it)h(is)630 2919 y(not)d(in)m(teractiv)m(e,)j(exits)e
+(with)e(a)h(non-zero)h(status.)40 b(An)27 b(in)m(teractiv)m(e)k(shell)c
+(do)s(es)h(not)g(exit,)630 3029 y(but)j(do)s(es)g(not)g(execute)i(the)e
+(command)g(asso)s(ciated)i(with)e(the)h(expansion.)43
+b(Otherwise,)630 3138 y(the)31 b(v)-5 b(alue)30 b(of)h
+Fr(parameter)37 b Fu(is)31 b(substituted.)870 3268 y
+Ft($)47 b(var=)870 3377 y($)g(:)h(${var:?var)d(is)i(unset)f(or)i(null})
+870 3487 y(bash:)e(var:)h(var)g(is)g(unset)f(or)i(null)150
+3636 y(${)p Fj(parameter)p Ft(:+)p Fj(word)p Ft(})630
+3746 y Fu(If)35 b Fr(parameter)42 b Fu(is)36 b(n)m(ull)f(or)h(unset,)g
+(nothing)g(is)f(substituted,)i(otherwise)e(the)h(expansion)630
+3856 y(of)31 b Fr(w)m(ord)i Fu(is)e(substituted.)40 b(The)30
+b(v)-5 b(alue)30 b(of)h Fr(parameter)37 b Fu(is)31 b(not)f(used.)870
+3985 y Ft($)47 b(var=123)870 4095 y($)g(echo)g(${var:+var)e(is)i(set)g
+(and)g(not)g(null})870 4204 y(var)g(is)g(set)g(and)g(not)g(null)870
+4314 y($)g(var=)870 4423 y($)g(echo)g(${var:+var)e(is)i(set)g(and)g
+(not)g(null})870 4643 y($)150 4792 y(${)p Fj(parameter)p
+Ft(:)p Fj(offset)p Ft(})150 4902 y(${)p Fj(parameter)p
+Ft(:)p Fj(offset)p Ft(:)p Fj(lengt)o(h)p Ft(})630 5011
+y Fu(This)30 b(is)h(referred)f(to)h(as)g(Substring)f(Expansion.)41
+b(It)31 b(expands)f(to)h(up)f(to)h Fr(length)g Fu(c)m(harac-)630
+5121 y(ters)k(of)g(the)h(v)-5 b(alue)35 b(of)g Fr(parameter)42
+b Fu(starting)36 b(at)g(the)f(c)m(haracter)i(sp)s(eci\014ed)d(b)m(y)h
+Fr(o\013set)p Fu(.)55 b(If)630 5230 y Fr(parameter)41
+b Fu(is)35 b(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)g(an)g(indexed)f
+(arra)m(y)g(subscripted)g(b)m(y)g(`)p Ft(@)p Fu(')g(or)h(`)p
+Ft(*)p Fu(',)g(or)g(an)f(asso-)630 5340 y(ciativ)m(e)i(arra)m(y)e
+(name,)h(the)f(results)f(di\013er)g(as)h(describ)s(ed)e(b)s(elo)m(w.)51
+b(If)33 b Fr(length)h Fu(is)g(omitted,)p eop end
+%%Page: 29 35
+TeXDict begin 29 34 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(29)630 299
+y(it)31 b(expands)f(to)h(the)g(substring)e(of)h(the)h(v)-5
+b(alue)31 b(of)g Fr(parameter)37 b Fu(starting)31 b(at)h(the)e(c)m
+(haracter)630 408 y(sp)s(eci\014ed)g(b)m(y)g Fr(o\013set)k
+Fu(and)c(extending)h(to)g(the)g(end)f(of)g(the)h(v)-5
+b(alue.)42 b Fr(length)31 b Fu(and)f Fr(o\013set)k Fu(are)630
+518 y(arithmetic)e(expressions)e(\(see)h(Section)g(6.5)h([Shell)e
+(Arithmetic],)i(page)f(106\).)630 655 y(If)39 b Fr(o\013set)k
+Fu(ev)-5 b(aluates)41 b(to)f(a)g(n)m(um)m(b)s(er)f(less)h(than)f(zero,)
+k(the)d(v)-5 b(alue)40 b(is)g(used)e(as)i(an)g(o\013set)630
+765 y(in)33 b(c)m(haracters)i(from)f(the)f(end)g(of)h(the)g(v)-5
+b(alue)34 b(of)g Fr(parameter)p Fu(.)51 b(If)33 b Fr(length)h
+Fu(ev)-5 b(aluates)35 b(to)g(a)630 874 y(n)m(um)m(b)s(er)23
+b(less)h(than)g(zero,)j(it)d(is)h(in)m(terpreted)f(as)g(an)h(o\013set)g
+(in)f(c)m(haracters)h(from)f(the)g(end)g(of)630 984 y(the)31
+b(v)-5 b(alue)31 b(of)g Fr(parameter)38 b Fu(rather)30
+b(than)h(a)g(n)m(um)m(b)s(er)f(of)g(c)m(haracters,)j(and)d(the)h
+(expansion)630 1093 y(is)f(the)h(c)m(haracters)h(b)s(et)m(w)m(een)f
+Fr(o\013set)i Fu(and)d(that)h(result.)630 1230 y(Note)37
+b(that)f(a)g(negativ)m(e)i(o\013set)f(m)m(ust)f(b)s(e)f(separated)h
+(from)f(the)h(colon)h(b)m(y)e(at)i(least)g(one)630 1340
+y(space)31 b(to)g(a)m(v)m(oid)h(b)s(eing)e(confused)g(with)g(the)g(`)p
+Ft(:-)p Fu(')h(expansion.)630 1477 y(Here)43 b(are)g(some)f(examples)h
+(illustrating)g(substring)f(expansion)g(on)g(parameters)h(and)630
+1587 y(subscripted)29 b(arra)m(ys:)630 1724 y Ft($)47
+b(string=01234567890abcdefgh)630 1833 y($)g(echo)g(${string:7})630
+1943 y(7890abcdefgh)630 2052 y($)g(echo)g(${string:7:0})630
+2271 y($)g(echo)g(${string:7:2})630 2381 y(78)630 2491
+y($)g(echo)g(${string:7:-2})630 2600 y(7890abcdef)630
+2710 y($)g(echo)g(${string:)e(-7})630 2819 y(bcdefgh)630
+2929 y($)i(echo)g(${string:)e(-7:0})630 3148 y($)i(echo)g(${string:)e
+(-7:2})630 3258 y(bc)630 3367 y($)i(echo)g(${string:)e(-7:-2})630
+3477 y(bcdef)630 3587 y($)i(set)g(--)h(01234567890abcdefgh)630
+3696 y($)f(echo)g(${1:7})630 3806 y(7890abcdefgh)630
+3915 y($)g(echo)g(${1:7:0})630 4134 y($)g(echo)g(${1:7:2})630
+4244 y(78)630 4354 y($)g(echo)g(${1:7:-2})630 4463 y(7890abcdef)630
+4573 y($)g(echo)g(${1:)g(-7})630 4682 y(bcdefgh)630 4792
+y($)g(echo)g(${1:)g(-7:0})630 5011 y($)g(echo)g(${1:)g(-7:2})630
+5121 y(bc)630 5230 y($)g(echo)g(${1:)g(-7:-2})630 5340
+y(bcdef)p eop end
+%%Page: 30 36
+TeXDict begin 30 35 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(30)630 299
+y Ft($)47 b(array[0]=01234567890abcdef)o(gh)630 408 y($)g(echo)g
+(${array[0]:7})630 518 y(7890abcdefgh)630 628 y($)g(echo)g
+(${array[0]:7:0})630 847 y($)g(echo)g(${array[0]:7:2})630
+956 y(78)630 1066 y($)g(echo)g(${array[0]:7:-2})630 1176
+y(7890abcdef)630 1285 y($)g(echo)g(${array[0]:)e(-7})630
+1395 y(bcdefgh)630 1504 y($)i(echo)g(${array[0]:)e(-7:0})630
+1724 y($)i(echo)g(${array[0]:)e(-7:2})630 1833 y(bc)630
+1943 y($)i(echo)g(${array[0]:)e(-7:-2})630 2052 y(bcdef)630
+2189 y Fu(If)34 b Fr(parameter)41 b Fu(is)35 b(`)p Ft(@)p
+Fu(')f(or)h(`)p Ft(*)p Fu(',)h(the)e(result)g(is)h Fr(length)g
+Fu(p)s(ositional)g(parameters)g(b)s(eginning)630 2299
+y(at)j Fr(o\013set)p Fu(.)62 b(A)37 b(negativ)m(e)j Fr(o\013set)g
+Fu(is)d(tak)m(en)i(relativ)m(e)g(to)f(one)f(greater)i(than)e(the)g
+(greatest)630 2408 y(p)s(ositional)23 b(parameter,)h(so)e(an)g
+(o\013set)h(of)g(-1)f(ev)-5 b(aluates)24 b(to)f(the)f(last)h(p)s
+(ositional)f(parameter)630 2518 y(\(or)34 b(0)g(if)g(there)g(are)g(no)f
+(p)s(ositional)i(parameters\).)51 b(It)34 b(is)g(an)f(expansion)h
+(error)f(if)h Fr(length)630 2628 y Fu(ev)-5 b(aluates)32
+b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero.)630
+2765 y(The)i(follo)m(wing)i(examples)f(illustrate)h(substring)d
+(expansion)i(using)f(p)s(ositional)h(param-)630 2874
+y(eters:)630 3011 y Ft($)47 b(set)g(--)h(1)f(2)g(3)h(4)f(5)h(6)f(7)h(8)
+f(9)h(0)f(a)h(b)f(c)g(d)h(e)f(f)h(g)f(h)630 3121 y($)g(echo)g(${@:7})
+630 3230 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h(g)f(h)630
+3340 y($)g(echo)g(${@:7:0})630 3559 y($)g(echo)g(${@:7:2})630
+3669 y(7)g(8)630 3778 y($)g(echo)g(${@:7:-2})630 3888
+y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)630 3998
+y($)g(echo)g(${@:)g(-7:2})630 4107 y(b)g(c)630 4217 y($)g(echo)g
+(${@:0})630 4326 y(./bash)f(1)i(2)f(3)g(4)h(5)f(6)h(7)f(8)h(9)f(0)h(a)f
+(b)h(c)f(d)g(e)h(f)f(g)h(h)630 4436 y($)f(echo)g(${@:0:2})630
+4545 y(./bash)f(1)630 4655 y($)h(echo)g(${@:)g(-7:0})630
+4902 y Fu(If)36 b Fr(parameter)43 b Fu(is)36 b(an)g(indexed)g(arra)m(y)
+g(name)g(subscripted)f(b)m(y)h(`)p Ft(@)p Fu(')g(or)h(`)p
+Ft(*)p Fu(',)h(the)e(result)g(is)630 5011 y(the)j Fr(length)g
+Fu(mem)m(b)s(ers)f(of)h(the)f(arra)m(y)i(b)s(eginning)d(with)i
+Ft(${)p Fj(parameter)p Ft([)p Fj(offset)p Ft(]})p Fu(.)60
+b(A)630 5121 y(negativ)m(e)33 b Fr(o\013set)g Fu(is)e(tak)m(en)h
+(relativ)m(e)g(to)g(one)f(greater)g(than)g(the)f(maxim)m(um)h(index)f
+(of)h(the)630 5230 y(sp)s(eci\014ed)38 b(arra)m(y)-8
+b(.)65 b(It)38 b(is)g(an)h(expansion)f(error)f(if)i Fr(length)f
+Fu(ev)-5 b(aluates)40 b(to)f(a)g(n)m(um)m(b)s(er)e(less)630
+5340 y(than)30 b(zero.)p eop end
+%%Page: 31 37
+TeXDict begin 31 36 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(31)630 299
+y(These)23 b(examples)i(sho)m(w)e(ho)m(w)h(y)m(ou)g(can)g(use)f
+(substring)f(expansion)i(with)f(indexed)g(arra)m(ys:)630
+428 y Ft($)47 b(array=\(0)f(1)h(2)h(3)f(4)h(5)f(6)h(7)f(8)h(9)f(0)h(a)f
+(b)g(c)h(d)f(e)h(f)f(g)h(h\))630 538 y($)f(echo)g(${array[@]:7})630
+648 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h(g)f(h)630
+757 y($)g(echo)g(${array[@]:7:2})630 867 y(7)g(8)630
+976 y($)g(echo)g(${array[@]:)e(-7:2})630 1086 y(b)i(c)630
+1196 y($)g(echo)g(${array[@]:)e(-7:-2})630 1305 y(bash:)h(-2:)h
+(substring)f(expression)f(<)i(0)630 1415 y($)g(echo)g(${array[@]:0})630
+1524 y(0)g(1)h(2)f(3)h(4)f(5)h(6)f(7)h(8)f(9)h(0)f(a)g(b)h(c)f(d)h(e)f
+(f)h(g)f(h)630 1634 y($)g(echo)g(${array[@]:0:2})630
+1743 y(0)g(1)630 1853 y($)g(echo)g(${array[@]:)e(-7:0})630
+2092 y Fu(Substring)25 b(expansion)g(applied)h(to)h(an)f(asso)s(ciativ)
+m(e)j(arra)m(y)d(pro)s(duces)f(unde\014ned)f(results.)630
+2222 y(Substring)32 b(indexing)i(is)f(zero-based)i(unless)e(the)h(p)s
+(ositional)g(parameters)g(are)g(used,)g(in)630 2331 y(whic)m(h)29
+b(case)i(the)f(indexing)g(starts)g(at)g(1)g(b)m(y)g(default.)41
+b(If)29 b Fr(o\013set)k Fu(is)d(0,)g(and)f(the)h(p)s(ositional)630
+2441 y(parameters)h(are)f(used,)g Ft($0)g Fu(is)g(pre\014xed)g(to)h
+(the)f(list.)150 2590 y Ft(${!)p Fj(prefix)p Ft(*})150
+2700 y(${!)p Fj(prefix)p Ft(@})630 2809 y Fu(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 Fr(pre\014x)p Fu(,)i(separated)f(b)m(y)630
+2919 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Ft(IFS)f
+Fu(sp)s(ecial)i(v)-5 b(ariable.)41 b(When)29 b(`)p Ft(@)p
+Fu(')g(is)g(used)f(and)h(the)g(expan-)630 3029 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
+3138 y(w)m(ord.)150 3288 y Ft(${!)p Fj(name)p Ft([@]})150
+3397 y(${!)p Fj(name)p Ft([*]})630 3507 y Fu(If)26 b
+Fr(name)32 b Fu(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 3616 y(in)c Fr(name)p Fu(.)39 b(If)24 b
+Fr(name)30 b Fu(is)24 b(not)h(an)f(arra)m(y)-8 b(,)27
+b(expands)c(to)j(0)f(if)f Fr(name)30 b Fu(is)24 b(set)h(and)f(n)m(ull)g
+(otherwise.)630 3726 y(When)39 b(`)p Ft(@)p Fu(')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 3836 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150
+3985 y Ft(${#)p Fj(parameter)p Ft(})630 4095 y Fu(Substitutes)37
+b(the)i(length)f(in)g(c)m(haracters)i(of)e(the)g(v)-5
+b(alue)39 b(of)f Fr(parameter)p Fu(.)64 b(If)38 b Fr(parameter)630
+4204 y Fu(is)f(`)p Ft(*)p Fu(')g(or)g(`)p Ft(@)p Fu(',)i(the)f(v)-5
+b(alue)37 b(substituted)f(is)h(the)h(n)m(um)m(b)s(er)d(of)j(p)s
+(ositional)f(parameters.)61 b(If)630 4314 y Fr(parameter)41
+b Fu(is)35 b(an)f(arra)m(y)g(name)h(subscripted)e(b)m(y)h(`)p
+Ft(*)p Fu(')g(or)g(`)p Ft(@)p Fu(',)i(the)f(v)-5 b(alue)34
+b(substituted)g(is)630 4423 y(the)j(n)m(um)m(b)s(er)e(of)i(elemen)m(ts)
+h(in)e(the)h(arra)m(y)-8 b(.)60 b(If)36 b Fr(parameter)44
+b Fu(is)36 b(an)h(indexed)f(arra)m(y)h(name)630 4533
+y(subscripted)25 b(b)m(y)h(a)h(negativ)m(e)i(n)m(um)m(b)s(er,)d(that)h
+(n)m(um)m(b)s(er)e(is)h(in)m(terpreted)h(as)f(relativ)m(e)j(to)e(one)
+630 4643 y(greater)32 b(than)f(the)h(maxim)m(um)f(index)g(of)g
+Fr(parameter)p Fu(,)h(so)g(negativ)m(e)h(indices)e(coun)m(t)h(bac)m(k)
+630 4752 y(from)e(the)g(end)g(of)h(the)f(arra)m(y)-8
+b(,)32 b(and)e(an)g(index)g(of)g(-1)h(references)g(the)g(last)g(elemen)
+m(t.)150 4902 y Ft(${)p Fj(parameter)p Ft(#)p Fj(word)p
+Ft(})150 5011 y(${)p Fj(parameter)p Ft(##)p Fj(word)p
+Ft(})630 5121 y Fu(The)c Fr(w)m(ord)j Fu(is)d(expanded)f(to)i(pro)s
+(duce)e(a)i(pattern)f(and)f(matc)m(hed)i(against)g(the)g(expanded)630
+5230 y(v)-5 b(alue)33 b(of)g Fr(parameter)40 b Fu(according)34
+b(to)g(the)f(rules)f(describ)s(ed)g(b)s(elo)m(w)h(\(see)h(Section)f
+(3.5.8.1)630 5340 y([P)m(attern)45 b(Matc)m(hing],)k(page)c(38\).)82
+b(If)44 b(the)g(pattern)g(matc)m(hes)h(the)f(b)s(eginning)f(of)h(the)p
+eop end
+%%Page: 32 38
+TeXDict begin 32 37 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(32)630 299
+y(expanded)29 b(v)-5 b(alue)30 b(of)g Fr(parameter)p
+Fu(,)g(then)g(the)f(result)h(of)g(the)g(expansion)f(is)h(the)g
+(expanded)630 408 y(v)-5 b(alue)41 b(of)g Fr(parameter)48
+b Fu(with)41 b(the)g(shortest)g(matc)m(hing)h(pattern)f(\(the)h(`)p
+Ft(#)p Fu(')f(case\))h(or)f(the)630 518 y(longest)32
+b(matc)m(hing)f(pattern)g(\(the)g(`)p Ft(##)p Fu(')g(case\))h(deleted.)
+42 b(If)30 b Fr(parameter)38 b Fu(is)30 b(`)p Ft(@)p
+Fu(')h(or)g(`)p Ft(*)p Fu(',)g(the)630 628 y(pattern)f(remo)m(v)-5
+b(al)31 b(op)s(eration)f(is)g(applied)g(to)g(eac)m(h)h(p)s(ositional)g
+(parameter)f(in)f(turn,)h(and)630 737 y(the)c(expansion)f(is)g(the)h
+(resultan)m(t)g(list.)40 b(If)25 b Fr(parameter)32 b
+Fu(is)26 b(an)f(arra)m(y)h(v)-5 b(ariable)26 b(subscripted)630
+847 y(with)j(`)p Ft(@)p Fu(')h(or)g(`)p Ft(*)p Fu(',)g(the)g(pattern)g
+(remo)m(v)-5 b(al)30 b(op)s(eration)h(is)e(applied)h(to)g(eac)m(h)h
+(mem)m(b)s(er)e(of)h(the)630 956 y(arra)m(y)h(in)f(turn,)f(and)h(the)h
+(expansion)f(is)g(the)h(resultan)m(t)g(list.)150 1121
+y Ft(${)p Fj(parameter)p Ft(\045)p Fj(word)p Ft(})150
+1230 y(${)p Fj(parameter)p Ft(\045\045)p Fj(word)p Ft(})630
+1340 y Fu(The)c Fr(w)m(ord)j Fu(is)d(expanded)f(to)i(pro)s(duce)e(a)i
+(pattern)f(and)f(matc)m(hed)i(against)g(the)g(expanded)630
+1450 y(v)-5 b(alue)33 b(of)g Fr(parameter)40 b Fu(according)34
+b(to)g(the)f(rules)f(describ)s(ed)g(b)s(elo)m(w)h(\(see)h(Section)f
+(3.5.8.1)630 1559 y([P)m(attern)h(Matc)m(hing],)i(page)e(38\).)49
+b(If)33 b(the)g(pattern)g(matc)m(hes)h(a)f(trailing)h(p)s(ortion)f(of)g
+(the)630 1669 y(expanded)43 b(v)-5 b(alue)44 b(of)g Fr(parameter)p
+Fu(,)k(then)43 b(the)h(result)g(of)f(the)h(expansion)g(is)g(the)f(v)-5
+b(alue)630 1778 y(of)35 b Fr(parameter)42 b Fu(with)34
+b(the)h(shortest)g(matc)m(hing)h(pattern)f(\(the)g(`)p
+Ft(\045)p Fu(')g(case\))h(or)f(the)g(longest)630 1888
+y(matc)m(hing)c(pattern)e(\(the)h(`)p Ft(\045\045)p Fu(')f(case\))i
+(deleted.)41 b(If)29 b Fr(parameter)37 b Fu(is)29 b(`)p
+Ft(@)p Fu(')h(or)f(`)p Ft(*)p Fu(',)h(the)g(pattern)630
+1998 y(remo)m(v)-5 b(al)46 b(op)s(eration)f(is)g(applied)f(to)i(eac)m
+(h)f(p)s(ositional)h(parameter)f(in)f(turn,)k(and)c(the)630
+2107 y(expansion)38 b(is)g(the)g(resultan)m(t)h(list.)65
+b(If)37 b Fr(parameter)46 b Fu(is)38 b(an)g(arra)m(y)g(v)-5
+b(ariable)39 b(subscripted)630 2217 y(with)29 b(`)p Ft(@)p
+Fu(')h(or)g(`)p Ft(*)p Fu(',)g(the)g(pattern)g(remo)m(v)-5
+b(al)30 b(op)s(eration)h(is)e(applied)h(to)g(eac)m(h)h(mem)m(b)s(er)e
+(of)h(the)630 2326 y(arra)m(y)h(in)f(turn,)f(and)h(the)h(expansion)f
+(is)g(the)h(resultan)m(t)g(list.)150 2491 y Ft(${)p Fj(parameter)p
+Ft(/)p Fj(pattern)p Ft(/)p Fj(stri)o(ng)p Ft(})150 2600
+y(${)p Fj(parameter)p Ft(//)p Fj(pattern)p Ft(/)p Fj(str)o(ing)p
+Ft(})150 2710 y(${)p Fj(parameter)p Ft(/#)p Fj(pattern)p
+Ft(/)p Fj(str)o(ing)p Ft(})150 2819 y(${)p Fj(parameter)p
+Ft(/\045)p Fj(pattern)p Ft(/)p Fj(str)o(ing)p Ft(})630
+2929 y Fu(The)39 b Fr(pattern)g Fu(is)h(expanded)e(to)i(pro)s(duce)e(a)
+i(pattern)f(just)g(as)h(in)f(\014lename)g(expansion)630
+3039 y(and)c(matc)m(hed)h(against)h(the)e(expanded)g(v)-5
+b(alue)36 b(of)g Fr(parameter)42 b Fu(according)37 b(to)f(the)f(rules)
+630 3148 y(describ)s(ed)28 b(b)s(elo)m(w)i(\(see)g(Section)g(3.5.8.1)i
+([P)m(attern)f(Matc)m(hing],)g(page)f(38\).)42 b(The)29
+b(longest)630 3258 y(matc)m(h)34 b(of)f Fr(pattern)h
+Fu(in)e(the)i(expanded)e(v)-5 b(alue)34 b(is)f(replaced)g(with)g
+Fr(string)p Fu(.)49 b Fr(string)41 b Fu(under-)630 3367
+y(go)s(es)32 b(tilde)g(expansion,)g(parameter)g(and)e(v)-5
+b(ariable)32 b(expansion,)g(arithmetic)h(expansion,)630
+3477 y(command)d(and)g(pro)s(cess)g(substitution,)g(and)g(quote)h(remo)
+m(v)-5 b(al.)630 3614 y(In)45 b(the)g(\014rst)g(form)g(ab)s(o)m(v)m(e,)
+50 b(only)c(the)f(\014rst)g(matc)m(h)h(is)f(replaced.)86
+b(If)45 b(there)h(are)g(t)m(w)m(o)630 3724 y(slashes)28
+b(separating)g Fr(parameter)35 b Fu(and)27 b Fr(pattern)g
+Fu(\(the)i(second)e(form)g(ab)s(o)m(v)m(e\),)j(all)f(matc)m(hes)630
+3833 y(of)d Fr(pattern)g Fu(are)g(replaced)g(with)f Fr(string)p
+Fu(.)40 b(If)25 b Fr(pattern)h Fu(is)f(preceded)h(b)m(y)f(`)p
+Ft(#)p Fu(')h(\(the)h(third)d(form)630 3943 y(ab)s(o)m(v)m(e\),)32
+b(it)e(m)m(ust)f(matc)m(h)i(at)f(the)g(b)s(eginning)e(of)i(the)g
+(expanded)f(v)-5 b(alue)30 b(of)f Fr(parameter)p Fu(.)41
+b(If)630 4052 y Fr(pattern)28 b Fu(is)g(preceded)g(b)m(y)g(`)p
+Ft(\045)p Fu(')g(\(the)h(fourth)e(form)h(ab)s(o)m(v)m(e\),)i(it)f(m)m
+(ust)f(matc)m(h)h(at)g(the)f(end)g(of)630 4162 y(the)j(expanded)e(v)-5
+b(alue)31 b(of)g Fr(parameter)p Fu(.)630 4299 y(If)38
+b(the)g(expansion)g(of)g Fr(string)46 b Fu(is)38 b(n)m(ull,)i(matc)m
+(hes)f(of)g Fr(pattern)f Fu(are)g(deleted)h(and)f(the)g(`)p
+Ft(/)p Fu(')630 4408 y(follo)m(wing)32 b Fr(pattern)e
+Fu(ma)m(y)h(b)s(e)f(omitted.)630 4545 y(If)75 b(the)h
+Ft(patsub_replacement)71 b Fu(shell)76 b(option)h(is)e(enabled)h(using)
+g Ft(shopt)e Fu(\(see)630 4655 y(Section)38 b(4.3.2)h([The)f(Shopt)e
+(Builtin],)k(page)e(77\),)j(an)m(y)d(unquoted)e(instances)i(of)g(`)p
+Ft(&)p Fu(')f(in)630 4765 y Fr(string)42 b Fu(are)34
+b(replaced)g(with)g(the)g(matc)m(hing)h(p)s(ortion)e(of)h
+Fr(pattern)p Fu(.)52 b(This)33 b(is)g(in)m(tended)h(to)630
+4874 y(duplicate)d(a)g(common)f Ft(sed)g Fu(idiom.)630
+5011 y(Quoting)f(an)m(y)f(part)h(of)f Fr(string)36 b
+Fu(inhibits)28 b(replacemen)m(t)i(in)e(the)g(expansion)h(of)f(the)h
+(quoted)630 5121 y(p)s(ortion,)36 b(including)f(replacemen)m(t)h
+(strings)f(stored)g(in)g(shell)g(v)-5 b(ariables.)56
+b(Bac)m(kslash)36 b(es-)630 5230 y(cap)s(es)d(`)p Ft(&)p
+Fu(')g(in)g Fr(string)8 b Fu(;)34 b(the)f(bac)m(kslash)h(is)f(remo)m(v)
+m(ed)h(in)f(order)f(to)i(p)s(ermit)e(a)i(literal)g(`)p
+Ft(&)p Fu(')f(in)630 5340 y(the)40 b(replacemen)m(t)h(string.)69
+b(Users)40 b(should)f(tak)m(e)i(care)g(if)f Fr(string)47
+b Fu(is)40 b(double-quoted)g(to)p eop end
+%%Page: 33 39
+TeXDict begin 33 38 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)630 299
+y(a)m(v)m(oid)37 b(un)m(w)m(an)m(ted)f(in)m(teractions)i(b)s(et)m(w)m
+(een)e(the)g(bac)m(kslash)h(and)e(double-quoting,)j(since)630
+408 y(bac)m(kslash)31 b(has)f(sp)s(ecial)h(meaning)f(within)g(double)f
+(quotes.)42 b(P)m(attern)31 b(substitution)f(p)s(er-)630
+518 y(forms)e(the)h(c)m(hec)m(k)i(for)d(unquoted)g(`)p
+Ft(&)p Fu(')h(after)g(expanding)g Fr(string)p Fu(,)g(so)g(users)f
+(should)g(ensure)630 628 y(to)33 b(prop)s(erly)e(quote)i(an)m(y)f(o)s
+(ccurrences)g(of)h(`)p Ft(&)p Fu(')f(they)g(w)m(an)m(t)h(to)g(b)s(e)f
+(tak)m(en)h(literally)h(in)e(the)630 737 y(replacemen)m(t)k(and)e
+(ensure)g(an)m(y)h(instances)g(of)g(`)p Ft(&)p Fu(')f(they)h(w)m(an)m
+(t)g(to)h(b)s(e)e(replaced)h(are)g(un-)630 847 y(quoted.)630
+1016 y(F)-8 b(or)31 b(instance,)870 1186 y Ft(var=abcdef)870
+1295 y(rep='&)46 b(')870 1405 y(echo)h(${var/abc/&)d(})870
+1514 y(echo)j("${var/abc/&)d(}")870 1624 y(echo)j(${var/abc/$rep})870
+1733 y(echo)g("${var/abc/$rep}")630 1903 y Fu(will)31
+b(displa)m(y)f(four)g(lines)h(of)f Ft(")p Fu(ab)s(c)g(def)p
+Ft(")p Fu(,)g(while)870 2072 y Ft(var=abcdef)870 2182
+y(rep='&)46 b(')870 2291 y(echo)h(${var/abc/\\&)d(})870
+2401 y(echo)j("${var/abc/\\&)d(}")870 2511 y(echo)j(${var/abc/"&)d("})
+870 2620 y(echo)j(${var/abc/"$rep"})630 2790 y Fu(will)34
+b(displa)m(y)g(four)g(lines)g(of)g Ft(")p Fu(&)f(def)p
+Ft(")p Fu(.)51 b(Lik)m(e)35 b(the)f(pattern)g(remo)m(v)-5
+b(al)35 b(op)s(erators,)g(double)630 2899 y(quotes)23
+b(surrounding)c(the)k(replacemen)m(t)g(string)f(quote)h(the)f(expanded)
+f(c)m(haracters,)26 b(while)630 3009 y(double)43 b(quotes)i(enclosing)f
+(the)g(en)m(tire)h(parameter)f(substitution)f(do)h(not,)k(since)c(the)
+630 3118 y(expansion)e(is)h(p)s(erformed)e(in)h(a)h(con)m(text)h(that)f
+(do)s(esn't)f(tak)m(e)i(an)m(y)f(enclosing)g(double)630
+3228 y(quotes)31 b(in)m(to)g(accoun)m(t.)630 3397 y(Since)24
+b(bac)m(kslash)i(can)e(escap)s(e)h(`)p Ft(&)p Fu(',)h(it)f(can)g(also)h
+(escap)s(e)f(a)f(bac)m(kslash)i(in)e(the)g(replacemen)m(t)630
+3507 y(string.)39 b(This)26 b(means)g(that)h(`)p Ft(\\\\)p
+Fu(')g(will)f(insert)h(a)f(literal)i(bac)m(kslash)f(in)m(to)h(the)e
+(replacemen)m(t,)630 3616 y(so)31 b(these)f(t)m(w)m(o)i
+Ft(echo)d Fu(commands)870 3786 y Ft(var=abcdef)870 3895
+y(rep='\\\\&xyz')870 4005 y(echo)47 b(${var/abc/\\\\&xyz})870
+4115 y(echo)g(${var/abc/$rep})630 4284 y Fu(will)31 b(b)s(oth)e(output)
+h(`)p Ft(\\abcxyzdef)p Fu('.)630 4453 y(It)g(should)g(rarely)g(b)s(e)g
+(necessary)h(to)g(enclose)h(only)e Fr(string)38 b Fu(in)30
+b(double)g(quotes.)630 4623 y(If)j(the)h Ft(nocasematch)d
+Fu(shell)i(option)h(\(see)h(the)f(description)f(of)h
+Ft(shopt)e Fu(in)i(Section)g(4.3.2)630 4732 y([The)23
+b(Shopt)g(Builtin],)j(page)e(77\))h(is)e(enabled,)i(the)f(matc)m(h)g
+(is)g(p)s(erformed)e(without)h(regard)630 4842 y(to)31
+b(the)g(case)g(of)g(alphab)s(etic)g(c)m(haracters.)630
+5011 y(If)24 b Fr(parameter)31 b Fu(is)24 b(`)p Ft(@)p
+Fu(')h(or)f(`)p Ft(*)p Fu(',)i(the)e(substitution)g(op)s(eration)h(is)f
+(applied)g(to)h(eac)m(h)g(p)s(ositional)630 5121 y(parameter)35
+b(in)f(turn,)g(and)g(the)g(expansion)g(is)g(the)h(resultan)m(t)g(list.)
+53 b(If)34 b Fr(parameter)41 b Fu(is)34 b(an)630 5230
+y(arra)m(y)e(v)-5 b(ariable)32 b(subscripted)e(with)h(`)p
+Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)g(the)f(substitution)g(op)s
+(eration)h(is)f(applied)630 5340 y(to)g(eac)m(h)h(mem)m(b)s(er)d(of)i
+(the)f(arra)m(y)h(in)f(turn,)g(and)g(the)g(expansion)h(is)f(the)g
+(resultan)m(t)i(list.)p eop end
+%%Page: 34 40
+TeXDict begin 34 39 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(34)150 299
+y Ft(${)p Fj(parameter)p Ft(^)p Fj(pattern)p Ft(})150
+408 y(${)p Fj(parameter)p Ft(^^)p Fj(pattern)p Ft(})150
+518 y(${)p Fj(parameter)p Ft(,)p Fj(pattern)p Ft(})150
+628 y(${)p Fj(parameter)p Ft(,,)p Fj(pattern)p Ft(})630
+737 y Fu(This)36 b(expansion)g(mo)s(di\014es)g(the)g(case)i(of)f
+(alphab)s(etic)g(c)m(haracters)h(in)e Fr(parameter)p
+Fu(.)59 b(The)630 847 y Fr(pattern)33 b Fu(is)g(expanded)e(to)j(pro)s
+(duce)d(a)j(pattern)e(just)g(as)h(in)g(\014lename)g(expansion.)47
+b(Eac)m(h)630 956 y(c)m(haracter)32 b(in)e(the)g(expanded)f(v)-5
+b(alue)31 b(of)f Fr(parameter)37 b Fu(is)30 b(tested)h(against)h
+Fr(pattern)p Fu(,)e(and,)g(if)630 1066 y(it)j(matc)m(hes)h(the)g
+(pattern,)f(its)h(case)g(is)f(con)m(v)m(erted.)49 b(The)33
+b(pattern)g(should)f(not)h(attempt)630 1176 y(to)e(matc)m(h)g(more)g
+(than)f(one)h(c)m(haracter.)630 1313 y(The)f(`)p Ft(^)p
+Fu(')g(op)s(erator)g(con)m(v)m(erts)i(lo)m(w)m(ercase)g(letters)g(matc)
+m(hing)f Fr(pattern)f Fu(to)h(upp)s(ercase;)f(the)630
+1422 y(`)p Ft(,)p Fu(')25 b(op)s(erator)f(con)m(v)m(erts)i(matc)m(hing)
+g(upp)s(ercase)d(letters)j(to)f(lo)m(w)m(ercase.)41 b(The)24
+b(`)p Ft(^^)p Fu(')g(and)g(`)p Ft(,,)p Fu(')630 1532
+y(expansions)31 b(con)m(v)m(ert)i(eac)m(h)g(matc)m(hed)f(c)m(haracter)h
+(in)e(the)h(expanded)f(v)-5 b(alue;)32 b(the)g(`)p Ft(^)p
+Fu(')g(and)630 1641 y(`)p Ft(,)p Fu(')24 b(expansions)f(matc)m(h)i(and)
+e(con)m(v)m(ert)j(only)d(the)h(\014rst)f(c)m(haracter)j(in)d(the)h
+(expanded)f(v)-5 b(alue.)630 1751 y(If)30 b Fr(pattern)g
+Fu(is)h(omitted,)g(it)g(is)g(treated)g(lik)m(e)h(a)f(`)p
+Ft(?)p Fu(',)f(whic)m(h)g(matc)m(hes)i(ev)m(ery)f(c)m(haracter.)630
+1888 y(If)23 b Fr(parameter)31 b Fu(is)24 b(`)p Ft(@)p
+Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(case)h(mo)s(di\014cation)f(op)s
+(eration)g(is)g(applied)g(to)g(eac)m(h)h(p)s(osi-)630
+1998 y(tional)h(parameter)e(in)h(turn,)f(and)g(the)h(expansion)f(is)g
+(the)h(resultan)m(t)g(list.)40 b(If)23 b Fr(parameter)32
+b Fu(is)630 2107 y(an)e(arra)m(y)g(v)-5 b(ariable)31
+b(subscripted)d(with)i(`)p Ft(@)p Fu(')g(or)f(`)p Ft(*)p
+Fu(',)i(the)f(case)g(mo)s(di\014cation)h(op)s(eration)f(is)630
+2217 y(applied)d(to)g(eac)m(h)h(mem)m(b)s(er)e(of)h(the)g(arra)m(y)g
+(in)g(turn,)g(and)f(the)h(expansion)f(is)h(the)g(resultan)m(t)630
+2326 y(list.)150 2491 y Ft(${)p Fj(parameter)p Ft(@)p
+Fj(operator)p Ft(})630 2600 y Fu(The)h(expansion)h(is)f(either)h(a)g
+(transformation)g(of)g(the)g(v)-5 b(alue)29 b(of)g Fr(parameter)35
+b Fu(or)29 b(informa-)630 2710 y(tion)e(ab)s(out)f Fr(parameter)33
+b Fu(itself,)28 b(dep)s(ending)c(on)i(the)h(v)-5 b(alue)26
+b(of)h Fr(op)s(erator)p Fu(.)39 b(Eac)m(h)27 b Fr(op)s(erator)630
+2819 y Fu(is)j(a)h(single)g(letter:)630 2984 y Ft(U)432
+b Fu(The)31 b(expansion)g(is)g(a)g(string)h(that)f(is)h(the)f(v)-5
+b(alue)32 b(of)f Fr(parameter)38 b Fu(with)31 b(lo)m(w-)1110
+3093 y(ercase)g(alphab)s(etic)g(c)m(haracters)h(con)m(v)m(erted)g(to)f
+(upp)s(ercase.)630 3258 y Ft(u)432 b Fu(The)34 b(expansion)g(is)g(a)h
+(string)f(that)h(is)g(the)f(v)-5 b(alue)35 b(of)f Fr(parameter)42
+b Fu(with)34 b(the)1110 3367 y(\014rst)c(c)m(haracter)i(con)m(v)m
+(erted)f(to)h(upp)s(ercase,)d(if)i(it)g(is)f(alphab)s(etic.)630
+3532 y Ft(L)432 b Fu(The)33 b(expansion)h(is)g(a)g(string)g(that)h(is)f
+(the)g(v)-5 b(alue)34 b(of)g Fr(parameter)41 b Fu(with)34
+b(up-)1110 3641 y(p)s(ercase)c(alphab)s(etic)h(c)m(haracters)h(con)m(v)
+m(erted)g(to)f(lo)m(w)m(ercase.)630 3806 y Ft(Q)432 b
+Fu(The)30 b(expansion)h(is)g(a)g(string)f(that)i(is)f(the)g(v)-5
+b(alue)31 b(of)g Fr(parameter)37 b Fu(quoted)31 b(in)1110
+3915 y(a)g(format)f(that)h(can)g(b)s(e)f(reused)f(as)i(input.)630
+4080 y Ft(E)432 b Fu(The)27 b(expansion)g(is)g(a)g(string)h(that)f(is)h
+(the)f(v)-5 b(alue)28 b(of)f Fr(parameter)34 b Fu(with)27
+b(bac)m(k-)1110 4189 y(slash)e(escap)s(e)h(sequences)f(expanded)g(as)g
+(with)g(the)h Ft($'...)o(')e Fu(quoting)i(mec)m(h-)1110
+4299 y(anism.)630 4463 y Ft(P)432 b Fu(The)22 b(expansion)h(is)g(a)g
+(string)g(that)g(is)g(the)g(result)g(of)g(expanding)f(the)h(v)-5
+b(alue)24 b(of)1110 4573 y Fr(parameter)31 b Fu(as)24
+b(if)f(it)h(w)m(ere)g(a)g(prompt)f(string)h(\(see)g(Section)h(6.9)g
+([Con)m(trolling)1110 4682 y(the)31 b(Prompt],)f(page)h(112\).)630
+4847 y Ft(A)432 b Fu(The)33 b(expansion)h(is)g(a)g(string)g(in)f(the)h
+(form)g(of)g(an)f(assignmen)m(t)i(statemen)m(t)1110 4956
+y(or)d Ft(declare)e Fu(command)i(that,)i(if)e(ev)-5 b(aluated,)34
+b(recreates)f Fr(parameter)39 b Fu(with)1110 5066 y(its)31
+b(attributes)g(and)e(v)-5 b(alue.)630 5230 y Ft(K)432
+b Fu(Pro)s(duces)33 b(a)i(p)s(ossibly-quoted)e(v)m(ersion)i(of)f(the)h
+(v)-5 b(alue)34 b(of)h Fr(parameter)p Fu(,)g(ex-)1110
+5340 y(cept)46 b(that)h(it)f(prin)m(ts)f(the)h(v)-5 b(alues)47
+b(of)f(indexed)f(and)g(asso)s(ciativ)m(e)k(arra)m(ys)p
+eop end
+%%Page: 35 41
+TeXDict begin 35 40 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)1110 299
+y(as)37 b(a)g(sequence)f(of)h(quoted)g(k)m(ey-v)-5 b(alue)38
+b(pairs)e(\(see)h(Section)h(6.7)f([Arra)m(ys],)1110 408
+y(page)29 b(109\).)41 b(The)28 b(k)m(eys)g(and)f(v)-5
+b(alues)29 b(are)f(quoted)g(in)f(a)i(format)f(that)g(can)h(b)s(e)1110
+518 y(reused)h(as)g(input.)630 675 y Ft(a)432 b Fu(The)30
+b(expansion)g(is)g(a)h(string)f(consisting)h(of)g(\015ag)g(v)-5
+b(alues)30 b(represen)m(ting)h Fr(pa-)1110 784 y(rameter)7
+b Fu('s)31 b(attributes.)630 941 y Ft(k)432 b Fu(Lik)m(e)29
+b(the)g(`)p Ft(K)p Fu(')g(transformation,)g(but)f(expands)g(the)g(k)m
+(eys)i(and)d(v)-5 b(alues)29 b(of)g(in-)1110 1051 y(dexed)c(and)f(asso)
+s(ciativ)m(e)k(arra)m(ys)d(to)h(separate)f(w)m(ords)g(after)g(w)m(ord)g
+(splitting.)630 1207 y(If)k Fr(parameter)37 b Fu(is)30
+b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)g(the)g(op)s(eration)g(is)g
+(applied)f(to)i(eac)m(h)g(p)s(ositional)f(parameter)630
+1317 y(in)24 b(turn,)g(and)f(the)h(expansion)g(is)g(the)g(resultan)m(t)
+h(list.)39 b(If)23 b Fr(parameter)31 b Fu(is)24 b(an)g(arra)m(y)g(v)-5
+b(ariable)630 1426 y(subscripted)24 b(with)h(`)p Ft(@)p
+Fu(')h(or)g(`)p Ft(*)p Fu(',)h(the)e(op)s(eration)h(is)g(applied)f(to)h
+(eac)m(h)h(mem)m(b)s(er)e(of)h(the)f(arra)m(y)630 1536
+y(in)30 b(turn,)g(and)f(the)i(expansion)f(is)h(the)f(resultan)m(t)h
+(list.)630 1669 y(The)c(result)h(of)g(the)f(expansion)h(is)g(sub)5
+b(ject)27 b(to)h(w)m(ord)g(splitting)g(and)f(\014lename)h(expansion)630
+1779 y(as)j(describ)s(ed)e(b)s(elo)m(w.)150 1975 y Fk(3.5.4)63
+b(Command)41 b(Substitution)150 2122 y Fu(Command)24
+b(substitution)h(allo)m(ws)h(the)f(output)g(of)g(a)g(command)g(to)h
+(replace)g(the)f(command)g(itself.)39 b(The)150 2232
+y(standard)30 b(form)f(of)i(command)f(substitution)g(o)s(ccurs)g(when)g
+(a)g(command)h(is)f(enclosed)h(as)g(follo)m(ws:)390 2365
+y Ft($\()p Fj(command)p Ft(\))150 2498 y Fu(or)f(\(deprecated\))390
+2631 y Ft(`)p Fj(command)p Ft(`.)150 2764 y Fu(Bash)24
+b(p)s(erforms)e(command)i(substitution)f(b)m(y)h(executing)h
+Fr(command)i Fu(in)c(a)h(subshell)f(en)m(vironmen)m(t)i(and)150
+2874 y(replacing)35 b(the)f(command)g(substitution)g(with)f(the)i
+(standard)e(output)g(of)i(the)f(command,)h(with)f(an)m(y)150
+2983 y(trailing)j(newlines)f(deleted.)58 b(Em)m(b)s(edded)34
+b(newlines)i(are)g(not)g(deleted,)j(but)c(they)h(ma)m(y)h(b)s(e)e(remo)
+m(v)m(ed)150 3093 y(during)40 b(w)m(ord)i(splitting.)75
+b(The)41 b(command)g(substitution)g Ft($\(cat)29 b Fj(file)p
+Ft(\))40 b Fu(can)i(b)s(e)f(replaced)h(b)m(y)g(the)150
+3203 y(equiv)-5 b(alen)m(t)32 b(but)d(faster)i Ft($\(<)f
+Fj(file)p Ft(\))p Fu(.)275 3336 y(With)h(the)h(old-st)m(yle)h(bac)m
+(kquote)g(form)e(of)h(substitution,)f(bac)m(kslash)h(retains)g(its)g
+(literal)h(meaning)150 3445 y(except)k(when)d(follo)m(w)m(ed)k(b)m(y)d
+(`)p Ft($)p Fu(',)j(`)p Ft(`)p Fu(',)f(or)f(`)p Ft(\\)p
+Fu('.)57 b(The)35 b(\014rst)g(bac)m(kquote)i(not)f(preceded)g(b)m(y)f
+(a)h(bac)m(kslash)150 3555 y(terminates)k(the)e(command)h
+(substitution.)65 b(When)39 b(using)f(the)h Ft($\()p
+Fj(command)p Ft(\))c Fu(form,)41 b(all)e(c)m(haracters)150
+3665 y(b)s(et)m(w)m(een)31 b(the)g(paren)m(theses)f(mak)m(e)i(up)d(the)
+h(command;)h(none)f(are)h(treated)g(sp)s(ecially)-8 b(.)275
+3798 y(There)29 b(is)i(an)f(alternate)i(form)e(of)h(command)f
+(substitution:)390 3931 y Ft(${)p Fj(c)47 b(command)p
+Ft(;)e(})150 4064 y Fu(whic)m(h)38 b(executes)i Fr(command)i
+Fu(in)d(the)g(curren)m(t)f(execution)i(en)m(vironmen)m(t)f(and)f
+(captures)h(its)g(output,)150 4173 y(again)31 b(with)f(trailing)i
+(newlines)e(remo)m(v)m(ed.)275 4307 y(The)40 b(c)m(haracter)i
+Fr(c)47 b Fu(follo)m(wing)42 b(the)f(op)s(en)g(brace)g(m)m(ust)f(b)s(e)
+h(a)g(space,)j(tab,)g(newline,)g(or)d(`)p Ft(|)p Fu(',)j(and)150
+4416 y(the)39 b(close)i(brace)e(m)m(ust)g(b)s(e)g(in)g(a)g(p)s(osition)
+h(where)e(a)i(reserv)m(ed)f(w)m(ord)g(ma)m(y)h(app)s(ear)e(\(i.e.,)43
+b(preceded)150 4526 y(b)m(y)32 b(a)g(command)g(terminator)h(suc)m(h)e
+(as)h(semicolon\).)47 b(Bash)32 b(allo)m(ws)i(the)e(close)h(brace)f(to)
+h(b)s(e)e(joined)h(to)150 4635 y(the)f(remaining)g(c)m(haracters)h(in)e
+(the)h(w)m(ord)f(without)h(b)s(eing)f(follo)m(w)m(ed)i(b)m(y)f(a)g
+(shell)f(metac)m(haracter)k(as)d(a)150 4745 y(reserv)m(ed)g(w)m(ord)f
+(w)m(ould)g(usually)g(require.)275 4878 y(An)m(y)j(side)h(e\013ects)h
+(of)e Fr(command)k Fu(tak)m(e)e(e\013ect)h(immediately)e(in)g(the)f
+(curren)m(t)h(execution)h(en)m(viron-)150 4988 y(men)m(t)d(and)g(p)s
+(ersist)f(in)g(the)h(curren)m(t)g(en)m(vironmen)m(t)h(after)f(the)g
+(command)g(completes)h(\(e.g.,)h(the)e Ft(exit)150 5097
+y Fu(builtin)e(exits)h(the)g(shell\).)275 5230 y(This)g(t)m(yp)s(e)i
+(of)g(command)f(substitution)g(sup)s(er\014cially)g(resem)m(bles)h
+(executing)h(an)f(unnamed)e(shell)150 5340 y(function:)42
+b(lo)s(cal)33 b(v)-5 b(ariables)32 b(are)g(created)g(as)g(when)e(a)i
+(shell)g(function)f(is)g(executing,)i(and)e(the)h Ft(return)p
+eop end
+%%Page: 36 42
+TeXDict begin 36 41 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(36)150 299
+y(builtin)36 b(forces)i Fr(command)i Fu(to)e(complete;)j(ho)m(w)m(ev)m
+(er,)f(the)d(rest)g(of)g(the)h(execution)g(en)m(vironmen)m(t,)h(in-)150
+408 y(cluding)30 b(the)h(p)s(ositional)g(parameters,)g(is)f(shared)g
+(with)g(the)h(caller.)275 539 y(If)26 b(the)g(\014rst)g(c)m(haracter)i
+(follo)m(wing)g(the)f(op)s(en)f(brace)h(is)f(a)h(`)p
+Ft(|)p Fu(',)h(the)f(construct)g(expands)e(to)j(the)e(v)-5
+b(alue)150 648 y(of)24 b(the)g Ft(REPLY)e Fu(shell)i(v)-5
+b(ariable)24 b(after)g Fr(command)j Fu(executes,)g(without)d(remo)m
+(ving)g(an)m(y)g(trailing)h(newlines,)150 758 y(and)h(the)g(standard)f
+(output)h(of)g Fr(command)k Fu(remains)c(the)g(same)h(as)f(in)g(the)g
+(calling)i(shell.)39 b(Bash)27 b(creates)150 868 y Ft(REPLY)33
+b Fu(as)j(an)e(initially-unset)j(lo)s(cal)f(v)-5 b(ariable)35
+b(when)f Fr(command)39 b Fu(executes,)e(and)d(restores)i
+Ft(REPLY)d Fu(to)150 977 y(the)i(v)-5 b(alue)34 b(it)h(had)f(b)s(efore)
+g(the)h(command)f(substitution)g(after)h Fr(command)j
+Fu(completes,)f(as)d(with)h(an)m(y)150 1087 y(lo)s(cal)d(v)-5
+b(ariable.)275 1217 y(F)d(or)23 b(example,)i(this)e(construct)g
+(expands)f(to)i(`)p Ft(12345)p Fu(',)f(and)f(lea)m(v)m(es)j(the)e
+(shell)g(v)-5 b(ariable)24 b Ft(X)e Fu(unc)m(hanged)150
+1327 y(in)30 b(the)h(curren)m(t)f(execution)h(en)m(vironmen)m(t:)390
+1566 y Ft(${)47 b(local)g(X=12345)e(;)j(echo)e($X;)h(})150
+1697 y Fu(\(not)28 b(declaring)g Ft(X)f Fu(as)g(lo)s(cal)i(w)m(ould)e
+(mo)s(dify)f(its)i(v)-5 b(alue)27 b(in)g(the)h(curren)m(t)f(en)m
+(vironmen)m(t,)i(as)e(with)g(normal)150 1806 y(shell)38
+b(function)g(execution\),)43 b(while)38 b(this)g(construct)h(do)s(es)f
+(not)g(require)g(an)m(y)h(output)f(to)h(expand)e(to)150
+1916 y(`)p Ft(12345)p Fu(':)390 2046 y Ft(${|)47 b(REPLY=12345;)d(})150
+2177 y Fu(and)30 b(restores)h Ft(REPLY)e Fu(to)i(the)f(v)-5
+b(alue)31 b(it)g(had)f(b)s(efore)g(the)g(command)g(substitution.)275
+2307 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 2416 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m
+(kslashes.)275 2547 y(If)g(the)h(substitution)g(app)s(ears)f(within)h
+(double)f(quotes,)i(Bash)f(do)s(es)g(not)g(p)s(erform)f(w)m(ord)g
+(splitting)150 2656 y(and)g(\014lename)g(expansion)h(on)f(the)g
+(results.)150 2847 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)150
+2994 y Fu(Arithmetic)i(expansion)e(ev)-5 b(alutes)42
+b(an)f(arithmetic)h(expression)f(and)f(substitutes)g(the)h(result.)72
+b(The)150 3104 y(format)31 b(for)f(arithmetic)h(expansion)g(is:)390
+3234 y Ft($\(\()47 b Fj(expression)e Ft(\)\))275 3364
+y Fu(The)34 b Fr(expression)h Fu(undergo)s(es)f(the)h(same)h
+(expansions)e(as)i(if)f(it)g(w)m(ere)h(within)e(double)h(quotes,)i(but)
+150 3474 y(double)g(quote)g(c)m(haracters)i(in)d Fr(expression)h
+Fu(are)g(not)g(treated)h(sp)s(ecially)g(and)f(are)g(remo)m(v)m(ed.)61
+b(All)38 b(to-)150 3584 y(k)m(ens)c(in)f(the)h(expression)f(undergo)g
+(parameter)h(and)f(v)-5 b(ariable)34 b(expansion,)h(command)e
+(substitution,)150 3693 y(and)41 b(quote)i(remo)m(v)-5
+b(al.)76 b(The)41 b(result)h(is)g(treated)h(as)f(the)g(arithmetic)h
+(expression)f(to)g(b)s(e)f(ev)-5 b(aluated.)150 3803
+y(Arithmetic)31 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)275
+3933 y(The)k(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 4043 y(Arithmetic],)29 b(page)e(106\).)41 b(If)27
+b(the)f(expression)h(is)f(in)m(v)-5 b(alid,)29 b(Bash)d(prin)m(ts)g(a)i
+(message)f(indicating)h(failure)150 4152 y(to)23 b(the)g(standard)f
+(error,)j(do)s(es)d(not)h(p)s(erform)e(the)i(substitution,)h(and)f(do)s
+(es)f(not)h(execute)h(the)f(command)150 4262 y(asso)s(ciated)32
+b(with)e(the)g(expansion.)150 4453 y Fk(3.5.6)63 b(Pro)s(cess)42
+b(Substitution)150 4600 y Fu(Pro)s(cess)33 b(substitution)g(allo)m(ws)i
+(a)e(pro)s(cess's)g(input)f(or)h(output)g(to)h(b)s(e)f(referred)f(to)i
+(using)f(a)g(\014lename.)150 4709 y(It)d(tak)m(es)i(the)f(form)f(of)390
+4839 y Ft(<\()p Fj(list)p Ft(\))150 4970 y Fu(or)390
+5100 y Ft(>\()p Fj(list)p Ft(\))150 5230 y Fu(The)e(pro)s(cess)h
+Fr(list)j Fu(is)d(run)e(async)m(hronously)-8 b(,)30 b(and)e(its)i
+(input)e(or)h(output)f(app)s(ears)h(as)g(a)g(\014lename.)41
+b(This)150 5340 y(\014lename)31 b(is)f(passed)g(as)h(an)f(argumen)m(t)h
+(to)g(the)f(curren)m(t)g(command)h(as)f(the)h(result)f(of)h(the)f
+(expansion.)p eop end
+%%Page: 37 43
+TeXDict begin 37 42 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(37)275 299
+y(If)34 b(the)i Ft(>\()p Fj(list)p Ft(\))d Fu(form)h(is)i(used,)f
+(writing)h(to)f(the)h(\014le)f(pro)m(vides)g(input)f(for)h
+Fr(list)p Fu(.)56 b(If)35 b(the)g Ft(<\()p Fj(list)p
+Ft(\))150 408 y Fu(form)h(is)h(used,)h(reading)f(the)g(\014le)g
+(obtains)g(the)g(output)f(of)h Fr(list)p Fu(.)61 b(Note)38
+b(that)f(no)g(space)g(ma)m(y)h(app)s(ear)150 518 y(b)s(et)m(w)m(een)c
+(the)g Ft(<)f Fu(or)h Ft(>)f Fu(and)g(the)h(left)h(paren)m(thesis,)f
+(otherwise)g(the)g(construct)g(w)m(ould)g(b)s(e)f(in)m(terpreted)150
+628 y(as)e(a)f(redirection.)275 766 y(Pro)s(cess)j(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 Fm(fif)n(o)p Fu(s\))h(or)g(the)150 875 y Ft(/dev/fd)28
+b Fu(metho)s(d)i(of)h(naming)f(op)s(en)g(\014les.)275
+1014 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
+1123 y(v)-5 b(ariable)31 b(expansion,)g(command)f(substitution,)g(and)g
+(arithmetic)i(expansion.)150 1326 y Fk(3.5.7)63 b(W)-10
+b(ord)41 b(Splitting)150 1473 y Fu(The)30 b(shell)h(scans)g(the)g
+(results)f(of)h(parameter)g(expansion,)g(command)g(substitution,)g(and)
+f(arithmetic)150 1583 y(expansion)e(that)i(did)d(not)i(o)s(ccur)f
+(within)g(double)g(quotes)h(for)g(w)m(ord)f(splitting.)41
+b(W)-8 b(ords)29 b(that)g(w)m(ere)g(not)150 1692 y(expanded)h(are)g
+(not)h(split.)275 1831 y(The)d(shell)g(treats)i(eac)m(h)g(c)m(haracter)
+g(of)f Ft($IFS)e Fu(as)i(a)g(delimiter,)h(and)e(splits)g(the)h(results)
+f(of)h(the)g(other)150 1940 y(expansions)h(in)m(to)h(\014elds)f(using)g
+(these)h(c)m(haracters)h(as)e(\014eld)g(terminators.)275
+2078 y(An)25 b Fr(IFS)g(whitespace)31 b Fu(c)m(haracter)c(is)f
+(whitespace)g(as)g(de\014ned)e(ab)s(o)m(v)m(e)j(\(see)f(Chapter)f(2)h
+([De\014nitions],)150 2188 y(page)37 b(3\))g(that)g(app)s(ears)e(in)h
+(the)g(v)-5 b(alue)37 b(of)f Ft(IFS)p Fu(.)57 b(Space,)38
+b(tab,)g(and)e(newline)g(are)g(alw)m(a)m(ys)i(considered)150
+2298 y(IFS)30 b(whitespace,)h(ev)m(en)g(if)g(they)f(don't)h(app)s(ear)e
+(in)h(the)h(lo)s(cale's)h Ft(space)d Fu(category)-8 b(.)275
+2436 y(If)26 b Ft(IFS)g Fu(is)h(unset,)h(w)m(ord)e(splitting)i(b)s(eha)
+m(v)m(es)g(as)f(if)g(its)g(v)-5 b(alue)28 b(w)m(ere)f
+Ft(<space><tab><newline>)p Fu(,)c(and)150 2545 y(treats)41
+b(these)f(c)m(haracters)h(as)f(IFS)f(whitespace.)70 b(If)39
+b(the)h(v)-5 b(alue)40 b(of)g Ft(IFS)e Fu(is)i(n)m(ull,)i(no)e(w)m(ord)
+f(splitting)150 2655 y(o)s(ccurs,)30 b(but)g(implicit)h(n)m(ull)g
+(argumen)m(ts)f(\(see)i(b)s(elo)m(w\))f(are)f(still)i(remo)m(v)m(ed.)
+275 2793 y(W)-8 b(ord)43 b(splitting)i(b)s(egins)d(b)m(y)i(remo)m(ving)
+g(sequences)g(of)g(IFS)f(whitespace)h(c)m(haracters)h(from)e(the)150
+2903 y(b)s(eginning)h(and)f(end)h(of)g(the)h(results)f(of)g(the)h
+(previous)e(expansions,)48 b(then)c(splits)g(the)h(remaining)150
+3012 y(w)m(ords.)275 3151 y(If)37 b(the)i(v)-5 b(alue)39
+b(of)f Ft(IFS)g Fu(consists)h(solely)g(of)g(IFS)f(whitespace,)j(an)m(y)
+e(sequence)g(of)f(IFS)g(whitespace)150 3260 y(c)m(haracters)47
+b(delimits)f(a)g(\014eld,)j(so)d(a)f(\014eld)h(consists)g(of)f(c)m
+(haracters)i(that)f(are)g(not)g(unquoted)e(IFS)150 3370
+y(whitespace,)31 b(and)f(n)m(ull)g(\014elds)g(result)h(only)f(from)g
+(quoting.)275 3508 y(If)g Ft(IFS)f Fu(con)m(tains)j(a)f(non-whitespace)
+g(c)m(haracter,)i(then)d(an)m(y)h(c)m(haracter)h(in)e(the)h(v)-5
+b(alue)31 b(of)g Ft(IFS)e Fu(that)150 3618 y(is)h(not)h(IFS)f
+(whitespace,)i(along)f(with)f(an)m(y)h(adjacen)m(t)h(IFS)e(whitespace)h
+(c)m(haracters,)h(delimits)f(a)g(\014eld.)150 3727 y(This)i(means)h
+(that)g(adjacen)m(t)h(non-IFS-whitespace)g(delimiters)f(pro)s(duce)f(a)
+h(n)m(ull)g(\014eld.)51 b(A)34 b(sequence)150 3837 y(of)d(IFS)f
+(whitespace)h(c)m(haracters)g(also)h(delimits)f(a)f(\014eld.)275
+3975 y(Explicit)21 b(n)m(ull)g(argumen)m(ts)g(\()p Ft("")g
+Fu(or)g Ft('')p Fu(\))f(are)h(retained)h(and)e(passed)g(to)i(commands)e
+(as)i(empt)m(y)f(strings.)150 4085 y(Unquoted)26 b(implicit)i(n)m(ull)e
+(argumen)m(ts,)i(resulting)f(from)f(the)h(expansion)f(of)h(parameters)g
+(that)g(ha)m(v)m(e)h(no)150 4194 y(v)-5 b(alues,)31 b(are)h(remo)m(v)m
+(ed.)42 b(Expanding)30 b(a)h(parameter)g(with)g(no)f(v)-5
+b(alue)32 b(within)e(double)g(quotes)h(pro)s(duces)150
+4304 y(a)g(n)m(ull)f(\014eld,)g(whic)m(h)g(is)h(retained)g(and)e
+(passed)h(to)h(a)g(command)f(as)h(an)f(empt)m(y)h(string.)275
+4442 y(When)j(a)i(quoted)f(n)m(ull)g(argumen)m(t)g(app)s(ears)g(as)g
+(part)g(of)g(a)g(w)m(ord)g(whose)g(expansion)g(is)g(non-n)m(ull,)150
+4552 y(w)m(ord)29 b(splitting)h(remo)m(v)m(es)h(the)e(n)m(ull)g
+(argumen)m(t)h(p)s(ortion,)g(lea)m(ving)h(the)e(non-n)m(ull)g
+(expansion.)40 b(That)30 b(is,)150 4661 y(the)h(w)m(ord)f
+Ft(-d'')f Fu(b)s(ecomes)h Ft(-d)g Fu(after)h(w)m(ord)f(splitting)h(and)
+f(n)m(ull)g(argumen)m(t)h(remo)m(v)-5 b(al.)150 4864
+y Fk(3.5.8)63 b(Filename)41 b(Expansion)150 5011 y Fu(After)30
+b(w)m(ord)f(splitting,)i(unless)d(the)i Ft(-f)f Fu(option)h(has)f(b)s
+(een)g(set)h(\(see)g(Section)h(4.3.1)g([The)e(Set)h(Builtin],)150
+5121 y(page)d(72\),)i(Bash)d(scans)h(eac)m(h)h(w)m(ord)e(for)g(the)h(c)
+m(haracters)g(`)p Ft(*)p Fu(',)h(`)p Ft(?)p Fu(',)g(and)e(`)p
+Ft([)p Fu('.)39 b(If)26 b(one)h(of)g(these)f(c)m(haracters)150
+5230 y(app)s(ears,)44 b(and)d(is)h(not)g(quoted,)j(then)d(the)g(w)m
+(ord)f(is)h(regarded)g(as)g(a)g Fr(pattern)p Fu(,)j(and)c(replaced)h
+(with)150 5340 y(a)i(sorted)f(list)h(of)f(\014lenames)g(matc)m(hing)i
+(the)e(pattern)g(\(see)i(Section)f(3.5.8.1)h([P)m(attern)g(Matc)m
+(hing],)p eop end
+%%Page: 38 44
+TeXDict begin 38 43 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(38)150 299
+y(page)21 b(38\),)j(sub)5 b(ject)20 b(to)h(the)g(v)-5
+b(alue)21 b(of)g(the)f Ft(GLOBSORT)e Fu(shell)j(v)-5
+b(ariable)21 b(\(see)h(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)150
+408 y(page)31 b(86\).)275 557 y(If)d(no)g(matc)m(hing)i(\014lenames)f
+(are)g(found,)f(and)g(the)h(shell)g(option)g Ft(nullglob)e
+Fu(is)h(disabled,)h(the)g(w)m(ord)150 667 y(is)38 b(left)g(unc)m
+(hanged.)62 b(If)37 b(the)g Ft(nullglob)e Fu(option)j(is)g(set,)i(and)d
+(no)g(matc)m(hes)i(are)f(found,)g(the)g(w)m(ord)f(is)150
+776 y(remo)m(v)m(ed.)j(If)23 b(the)h Ft(failglob)d Fu(shell)j(option)h
+(is)e(set,)j(and)e(no)f(matc)m(hes)i(are)f(found,)g(Bash)g(prin)m(ts)g
+(an)f(error)150 886 y(message)28 b(and)e(do)s(es)h(not)g(execute)h(the)
+f(command.)39 b(If)27 b(the)g(shell)g(option)g Ft(nocaseglob)d
+Fu(is)j(enabled,)h(the)150 995 y(matc)m(h)j(is)g(p)s(erformed)e
+(without)h(regard)g(to)h(the)g(case)g(of)g(alphab)s(etic)g(c)m
+(haracters.)275 1144 y(When)23 b(a)h(pattern)f(is)h(used)f(for)g
+(\014lename)h(expansion,)h(the)e(c)m(haracter)i(`)p Ft(.)p
+Fu(')f(at)g(the)g(start)g(of)g(a)g(\014lename)150 1253
+y(or)f(immediately)i(follo)m(wing)g(a)f(slash)f(m)m(ust)h(b)s(e)f(matc)
+m(hed)h(explicitly)-8 b(,)27 b(unless)c(the)g(shell)h(option)g
+Ft(dotglob)150 1363 y Fu(is)41 b(set.)74 b(In)40 b(order)h(to)g(matc)m
+(h)h(the)g(\014lenames)f Ft(.)g Fu(and)f Ft(..)p Fu(,)k(the)d(pattern)g
+(m)m(ust)g(b)s(egin)g(with)g(`)p Ft(.)p Fu(')g(\(for)150
+1473 y(example,)h(`)p Ft(.?)p Fu('\),)f(ev)m(en)f(if)f
+Ft(dotglob)d Fu(is)j(set.)67 b(If)38 b(the)h Ft(globskipdots)d
+Fu(shell)j(option)g(is)g(enabled,)i(the)150 1582 y(\014lenames)30
+b Ft(.)f Fu(and)g Ft(..)h Fu(nev)m(er)g(matc)m(h,)h(ev)m(en)f(if)g(the)
+g(pattern)g(b)s(egins)f(with)g(a)i(`)p Ft(.)p Fu('.)40
+b(When)30 b(not)g(matc)m(hing)150 1692 y(\014lenames,)h(the)f(`)p
+Ft(.)p Fu(')h(c)m(haracter)h(is)e(not)h(treated)g(sp)s(ecially)-8
+b(.)275 1840 y(When)30 b(matc)m(hing)i(a)f(\014lename,)h(the)f(slash)f
+(c)m(haracter)j(m)m(ust)d(alw)m(a)m(ys)j(b)s(e)d(matc)m(hed)h
+(explicitly)i(b)m(y)e(a)150 1950 y(slash)d(in)f(the)h(pattern,)h(but)e
+(in)h(other)g(matc)m(hing)h(con)m(texts)h(it)e(can)g(b)s(e)g(matc)m
+(hed)g(b)m(y)g(a)g(sp)s(ecial)h(pattern)150 2059 y(c)m(haracter)j(as)f
+(describ)s(ed)e(b)s(elo)m(w)h(\(see)i(Section)f(3.5.8.1)i([P)m(attern)e
+(Matc)m(hing],)i(page)e(38\).)275 2208 y(See)d(the)g(description)g(of)g
+Ft(shopt)e Fu(in)i(Section)g(4.3.2)i([The)e(Shopt)f(Builtin],)i(page)g
+(77,)g(for)f(a)g(descrip-)150 2317 y(tion)j(of)f(the)h
+Ft(nocaseglob)p Fu(,)d Ft(nullglob)p Fu(,)g Ft(globskipdots)p
+Fu(,)f Ft(failglob)p Fu(,)i(and)h Ft(dotglob)e Fu(options.)275
+2466 y(The)36 b Ft(GLOBIGNORE)d Fu(shell)k(v)-5 b(ariable)37
+b(ma)m(y)g(b)s(e)f(used)g(to)h(restrict)g(the)g(set)g(of)g(\014le)f
+(names)h(matc)m(hing)150 2576 y(a)42 b(pattern.)74 b(If)41
+b Ft(GLOBIGNORE)e Fu(is)i(set,)k(eac)m(h)e(matc)m(hing)f(\014le)g(name)
+f(that)h(also)h(matc)m(hes)f(one)g(of)g(the)150 2685
+y(patterns)34 b(in)g Ft(GLOBIGNORE)d Fu(is)k(remo)m(v)m(ed)g(from)f
+(the)g(list)h(of)f(matc)m(hes.)54 b(If)33 b(the)i Ft(nocaseglob)c
+Fu(option)k(is)150 2795 y(set,)c(the)e(matc)m(hing)i(against)g(the)f
+(patterns)f(in)h Ft(GLOBIGNORE)c Fu(is)k(p)s(erformed)e(without)i
+(regard)f(to)i(case.)150 2904 y(The)d(\014lenames)h Ft(.)g
+Fu(and)f Ft(..)h Fu(are)g(alw)m(a)m(ys)h(ignored)f(when)f
+Ft(GLOBIGNORE)f Fu(is)i(set)g(and)f(not)h(n)m(ull.)41
+b(Ho)m(w)m(ev)m(er,)150 3014 y(setting)30 b Ft(GLOBIGNORE)d
+Fu(to)j(a)f(non-n)m(ull)g(v)-5 b(alue)30 b(has)f(the)g(e\013ect)i(of)f
+(enabling)f(the)h Ft(dotglob)d Fu(shell)i(option,)150
+3124 y(so)42 b(all)h(other)g(\014lenames)f(b)s(eginning)f(with)h(a)h(`)
+p Ft(.)p Fu(')f(matc)m(h.)77 b(T)-8 b(o)42 b(get)h(the)g(old)f(b)s(eha)
+m(vior)g(of)h(ignoring)150 3233 y(\014lenames)29 b(b)s(eginning)f(with)
+h(a)h(`)p Ft(.)p Fu(',)f(mak)m(e)h(`)p Ft(.*)p Fu(')f(one)h(of)f(the)g
+(patterns)g(in)g Ft(GLOBIGNORE)p Fu(.)37 b(The)29 b Ft(dotglob)150
+3343 y Fu(option)37 b(is)f(disabled)h(when)e Ft(GLOBIGNORE)f
+Fu(is)i(unset.)59 b(The)36 b Ft(GLOBIGNORE)d Fu(pattern)k(matc)m(hing)h
+(honors)150 3452 y(the)31 b(setting)g(of)g(the)f Ft(extglob)f
+Fu(shell)h(option.)275 3601 y(After)c(the)h(pattern)g(is)f(expanded)g
+(and)g(matc)m(hed)h(against)h(\014lenames,)f(the)g(v)-5
+b(alue)27 b(of)g(the)f Ft(GLOBSORT)150 3710 y Fu(shell)j(v)-5
+b(ariable)30 b(con)m(trols)h(ho)m(w)e(the)h(results)f(are)g(sorted,)h
+(as)f(describ)s(ed)g(b)s(elo)m(w)g(\(see)h(Section)g(5.2)h([Bash)150
+3820 y(V)-8 b(ariables],)32 b(page)f(86\).)150 4033 y
+Fk(3.5.8.1)63 b(P)m(attern)40 b(Matc)m(hing)150 4180
+y Fu(An)m(y)24 b(c)m(haracter)h(that)f(app)s(ears)f(in)g(a)h(pattern,)i
+(other)e(than)f(the)h(sp)s(ecial)g(pattern)g(c)m(haracters)h(describ)s
+(ed)150 4290 y(b)s(elo)m(w,)31 b(matc)m(hes)g(itself.)42
+b(The)29 b Fm(nul)h Fu(c)m(haracter)i(ma)m(y)e(not)h(o)s(ccur)f(in)g(a)
+h(pattern.)40 b(A)31 b(bac)m(kslash)g(escap)s(es)150
+4399 y(the)38 b(follo)m(wing)g(c)m(haracter;)43 b(the)37
+b(escaping)i(bac)m(kslash)e(is)h(discarded)f(when)f(matc)m(hing.)63
+b(The)36 b(sp)s(ecial)150 4509 y(pattern)30 b(c)m(haracters)i(m)m(ust)f
+(b)s(e)e(quoted)i(if)f(they)h(are)f(to)i(b)s(e)d(matc)m(hed)i
+(literally)-8 b(.)275 4657 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
+4838 y Ft(*)432 b Fu(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 Ft(globstar)e
+Fu(shell)i(option)630 4947 y(is)21 b(enabled,)j(and)d(`)p
+Ft(*)p Fu(')g(is)h(used)e(in)h(a)h(\014lename)f(expansion)h(con)m
+(text,)j(t)m(w)m(o)e(adjacen)m(t)f(`)p Ft(*)p Fu('s)g(used)630
+5057 y(as)f(a)g(single)g(pattern)g(matc)m(h)g(all)h(\014les)e(and)g
+(zero)h(or)g(more)g(directories)g(and)f(sub)s(directories.)630
+5167 y(If)26 b(follo)m(w)m(ed)i(b)m(y)f(a)g(`)p Ft(/)p
+Fu(',)h(t)m(w)m(o)g(adjacen)m(t)g(`)p Ft(*)p Fu('s)e(matc)m(h)i(only)f
+(directories)g(and)f(sub)s(directories.)150 5340 y Ft(?)432
+b Fu(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)p
+eop end
+%%Page: 39 45
+TeXDict begin 39 44 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(39)150 299
+y Ft([...)o(])241 b Fu(Matc)m(hes)25 b(an)m(y)e(one)g(of)g(the)g(c)m
+(haracters)h(enclosed)f(b)s(et)m(w)m(een)h(the)f(brac)m(k)m(ets.)40
+b(This)22 b(is)g(kno)m(wn)630 408 y(as)37 b(a)h Fr(brac)m(k)m(et)g
+(expression)f Fu(and)f(matc)m(hes)i(a)g(single)f(c)m(haracter.)63
+b(A)37 b(pair)f(of)h(c)m(haracters)630 518 y(separated)44
+b(b)m(y)f(a)h(h)m(yphen)e(denotes)i(a)f Fr(range)h(expression)p
+Fu(;)50 b(an)m(y)44 b(c)m(haracter)g(that)g(falls)630
+628 y(b)s(et)m(w)m(een)i(those)g(t)m(w)m(o)g(c)m(haracters,)51
+b(inclusiv)m(e,)f(using)45 b(the)g(curren)m(t)h(lo)s(cale's)h
+(collating)630 737 y(sequence)29 b(and)f(c)m(haracter)i(set,)g(matc)m
+(hes.)41 b(If)28 b(the)h(\014rst)e(c)m(haracter)k(follo)m(wing)f(the)e
+(`)p Ft([)p Fu(')h(is)g(a)630 847 y(`)p Ft(!)p Fu(')j(or)h(a)g(`)p
+Ft(^)p Fu(')f(then)g(an)m(y)h(c)m(haracter)h(not)e(within)g(the)g
+(range)h(matc)m(hes.)48 b(T)-8 b(o)33 b(matc)m(h)g(a)g(`)p
+Fq(\000)p Fu(',)630 956 y(include)e(it)h(as)f(the)g(\014rst)g(or)g
+(last)h(c)m(haracter)h(in)e(the)g(set.)44 b(T)-8 b(o)32
+b(matc)m(h)g(a)f(`)p Ft(])p Fu(',)h(include)f(it)h(as)630
+1066 y(the)f(\014rst)e(c)m(haracter)j(in)e(the)h(set.)630
+1204 y(The)21 b(sorting)h(order)e(of)i(c)m(haracters)h(in)e(range)h
+(expressions,)h(and)d(the)i(c)m(haracters)h(included)630
+1314 y(in)37 b(the)g(range,)j(are)d(determined)g(b)m(y)g(the)g(curren)m
+(t)g(lo)s(cale)i(and)d(the)i(v)-5 b(alues)37 b(of)g(the)h
+Ft(LC_)630 1423 y(COLLATE)28 b Fu(and)i Ft(LC_ALL)f Fu(shell)h(v)-5
+b(ariables,)32 b(if)e(set.)630 1562 y(F)-8 b(or)34 b(example,)g(in)f
+(the)g(default)g(C)f(lo)s(cale,)k(`)p Ft([a-dx-z])p Fu(')31
+b(is)i(equiv)-5 b(alen)m(t)34 b(to)g(`)p Ft([abcdxyz])p
+Fu('.)630 1671 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
+1781 y(`)p Ft([a-dx-z])p Fu(')36 b(is)i(t)m(ypically)i(not)e(equiv)-5
+b(alen)m(t)39 b(to)g(`)p Ft([abcdxyz])p Fu(';)g(it)g(migh)m(t)f(b)s(e)f
+(equiv)-5 b(alen)m(t)630 1891 y(to)34 b(`)p Ft([aBbCcDdxYyZz])p
+Fu(',)c(for)j(example.)49 b(T)-8 b(o)33 b(obtain)h(the)f(traditional)h
+(in)m(terpretation)h(of)630 2000 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 2110 y(the)c Ft(LC_COLLATE)e
+Fu(or)i Ft(LC_ALL)f Fu(en)m(vironmen)m(t)i(v)-5 b(ariable)30
+b(to)g(the)f(v)-5 b(alue)30 b(`)p Ft(C)p Fu(',)g(or)f(enable)h(the)630
+2219 y Ft(globasciiranges)c Fu(shell)31 b(option.)630
+2358 y(Within)j(a)h(brac)m(k)m(et)h(expression,)f Fr(c)m(haracter)h
+(classes)j Fu(can)34 b(b)s(e)g(sp)s(eci\014ed)f(using)h(the)g(syn-)630
+2467 y(tax)h Ft([:)p Fr(class)t Ft(:])p Fu(,)f(where)g
+Fr(class)k Fu(is)c(one)g(of)h(the)f(follo)m(wing)h(classes)g(de\014ned)
+e(in)h(the)g Fm(posix)630 2577 y Fu(standard:)870 2715
+y Ft(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g(digit)g(graph)g(lower)
+870 2825 y(print)g(punct)g(space)f(upper)h(word)190 b(xdigit)630
+2963 y Fu(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 Ft(word)630 3073 y Fu(c)m(haracter)32 b(class)f(matc)m(hes)h
+(letters,)f(digits,)h(and)d(the)i(c)m(haracter)h(`)p
+Ft(_)p Fu('.)630 3211 y(F)-8 b(or)35 b(instance,)i(the)e(follo)m(wing)h
+(pattern)f(will)g(matc)m(h)h(an)m(y)f(c)m(haracter)h(b)s(elonging)f(to)
+h(the)630 3320 y Ft(space)29 b Fu(c)m(haracter)i(class)g(in)f(the)h
+(curren)m(t)f(lo)s(cale,)i(then)d(an)m(y)i(upp)s(er)d(case)j(letter)h
+(or)e(`)p Ft(!)p Fu(',)h(a)630 3430 y(dot,)g(and)f(\014nally)g(an)m(y)h
+(lo)m(w)m(er)g(case)h(letter)f(or)g(a)f(h)m(yphen.)870
+3568 y Ft([[:space:]][[:upper:]!].)o([-[:)o(lowe)o(r:])o(])630
+3707 y Fu(Within)40 b(a)g(brac)m(k)m(et)h(expression,)h(an)e
+Fr(equiv)-5 b(alence)41 b(class)j Fu(can)c(b)s(e)f(sp)s(eci\014ed)h
+(using)f(the)630 3816 y(syn)m(tax)31 b Ft([=)p Fr(c)6
+b Ft(=])p Fu(,)30 b(whic)m(h)g(matc)m(hes)h(all)h(c)m(haracters)g(with)
+e(the)h(same)g(collation)h(w)m(eigh)m(t)g(\(as)630 3926
+y(de\014ned)d(b)m(y)h(the)h(curren)m(t)f(lo)s(cale\))j(as)d(the)h(c)m
+(haracter)h Fr(c)p Fu(.)630 4064 y(Within)23 b(a)h(brac)m(k)m(et)h
+(expression,)f(the)g(syn)m(tax)f Ft([.)p Fr(sym)m(b)s(ol)t
+Ft(.])f Fu(matc)m(hes)i(the)g(collating)h(sym-)630 4174
+y(b)s(ol)30 b Fr(sym)m(b)s(ol)p Fu(.)275 4345 y(If)23
+b(the)g Ft(extglob)f Fu(shell)h(option)h(is)g(enabled)f(using)g(the)h
+Ft(shopt)e Fu(builtin,)i(the)g(shell)f(recognizes)j(sev)m(eral)150
+4454 y(extended)i(pattern)f(matc)m(hing)i(op)s(erators.)40
+b(In)26 b(the)i(follo)m(wing)h(description,)g(a)e Fr(pattern-list)k
+Fu(is)d(a)g(list)g(of)150 4564 y(one)23 b(or)f(more)h(patterns)g
+(separated)g(b)m(y)f(a)h(`)p Ft(|)p Fu('.)38 b(When)22
+b(matc)m(hing)i(\014lenames,)g(the)f Ft(dotglob)e Fu(shell)h(option)150
+4673 y(determines)h(the)h(set)g(of)g(\014lenames)f(that)h(are)g
+(tested,)i(as)d(describ)s(ed)g(ab)s(o)m(v)m(e.)39 b(Comp)s(osite)24
+b(patterns)f(ma)m(y)150 4783 y(b)s(e)30 b(formed)g(using)f(one)i(or)f
+(more)h(of)g(the)f(follo)m(wing)i(sub-patterns:)150 4954
+y Ft(?\()p Fj(pattern-list)p Ft(\))630 5063 y Fu(Matc)m(hes)g(zero)f
+(or)g(one)f(o)s(ccurrence)h(of)f(the)h(giv)m(en)g(patterns.)150
+5230 y Ft(*\()p Fj(pattern-list)p Ft(\))630 5340 y Fu(Matc)m(hes)h
+(zero)f(or)g(more)f(o)s(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)p
+eop end
+%%Page: 40 46
+TeXDict begin 40 45 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(40)150 299
+y Ft(+\()p Fj(pattern-list)p Ft(\))630 408 y Fu(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 567 y Ft(@\()p Fj(pattern-list)p Ft(\))630 676 y
+Fu(Matc)m(hes)g(one)f(of)f(the)h(giv)m(en)g(patterns.)150
+834 y Ft(!\()p Fj(pattern-list)p Ft(\))630 944 y Fu(Matc)m(hes)h(an)m
+(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g(patterns.)275
+1102 y(The)h Ft(extglob)f Fu(option)j(c)m(hanges)g(the)f(b)s(eha)m
+(vior)g(of)h(the)f(parser,)g(since)h(the)f(paren)m(theses)h(are)f(nor-)
+150 1212 y(mally)44 b(treated)g(as)f(op)s(erators)g(with)g(syn)m
+(tactic)i(meaning.)79 b(T)-8 b(o)44 b(ensure)e(that)i(extended)f(matc)m
+(hing)150 1321 y(patterns)30 b(are)g(parsed)f(correctly)-8
+b(,)32 b(mak)m(e)e(sure)g(that)g Ft(extglob)e Fu(is)h(enabled)h(b)s
+(efore)f(parsing)h(constructs)150 1431 y(con)m(taining)i(the)e
+(patterns,)h(including)f(shell)h(functions)f(and)f(command)h
+(substitutions.)275 1565 y(When)c(matc)m(hing)i(\014lenames,)g(the)f
+Ft(dotglob)e Fu(shell)i(option)h(determines)f(the)g(set)g(of)g
+(\014lenames)g(that)150 1674 y(are)34 b(tested:)47 b(when)33
+b Ft(dotglob)e Fu(is)i(enabled,)i(the)e(set)h(of)g(\014lenames)f
+(includes)g(all)h(\014les)g(b)s(eginning)e(with)150 1784
+y(`)p Ft(.)p Fu(',)j(but)e(the)i(\014lenames)f Ft(.)f
+Fu(and)h Ft(..)f Fu(m)m(ust)h(b)s(e)f(matc)m(hed)i(b)m(y)e(a)i(pattern)
+f(or)g(sub-pattern)f(that)h(b)s(egins)150 1893 y(with)g(a)h(dot;)h
+(when)e(it)g(is)h(disabled,)g(the)f(set)h(do)s(es)f(not)g(include)g(an)
+m(y)h(\014lenames)f(b)s(eginning)g(with)g(`)p Ft(.)p
+Fu(')150 2003 y(unless)j(the)h(pattern)g(or)g(sub-pattern)f(b)s(egins)g
+(with)h(a)g(`)p Ft(.)p Fu('.)64 b(If)37 b(the)h Ft(globskipdots)d
+Fu(shell)j(option)g(is)150 2112 y(enabled,)e(the)e(\014lenames)h
+Ft(.)f Fu(and)f Ft(..)h Fu(nev)m(er)h(app)s(ear)e(in)i(the)f(set.)53
+b(As)35 b(ab)s(o)m(v)m(e,)h(`)p Ft(.)p Fu(')f(only)f(has)h(a)f(sp)s
+(ecial)150 2222 y(meaning)d(when)e(matc)m(hing)i(\014lenames.)275
+2356 y(Complicated)41 b(extended)f(pattern)g(matc)m(hing)h(against)h
+(long)f(strings)f(is)g(slo)m(w,)k(esp)s(ecially)d(when)150
+2466 y(the)29 b(patterns)g(con)m(tain)i(alternations)f(and)f(the)g
+(strings)g(con)m(tain)h(m)m(ultiple)g(matc)m(hes.)42
+b(Using)29 b(separate)150 2575 y(matc)m(hes)38 b(against)g(shorter)e
+(strings,)i(or)f(using)f(arra)m(ys)h(of)g(strings)f(instead)h(of)g(a)g
+(single)g(long)h(string,)150 2685 y(ma)m(y)31 b(b)s(e)f(faster.)150
+2883 y Fk(3.5.9)63 b(Quote)41 b(Remo)m(v)-7 b(al)150
+3030 y Fu(After)32 b(the)g(preceding)g(expansions,)h(all)f(unquoted)f
+(o)s(ccurrences)h(of)g(the)h(c)m(haracters)g(`)p Ft(\\)p
+Fu(',)g(`)p Ft(')p Fu(',)f(and)g(`)p Ft(")p Fu(')150
+3139 y(that)f(did)f(not)g(result)g(from)g(one)h(of)g(the)f(ab)s(o)m(v)m
+(e)i(expansions)e(are)h(remo)m(v)m(ed.)150 3379 y Fs(3.6)68
+b(Redirections)150 3538 y Fu(Before)32 b(a)f(command)f(is)h(executed,)h
+(its)f(input)e(and)h(output)h(ma)m(y)g(b)s(e)f Fr(redirected)k
+Fu(using)c(a)i(sp)s(ecial)f(no-)150 3648 y(tation)d(in)m(terpreted)f(b)
+m(y)f(the)h(shell.)40 b Fr(Redirection)27 b Fu(allo)m(ws)h(commands')f
+(\014le)f(handles)g(to)i(b)s(e)e(duplicated,)150 3757
+y(op)s(ened,)i(closed,)i(made)e(to)h(refer)f(to)h(di\013eren)m(t)f
+(\014les,)h(and)f(can)g(c)m(hange)h(the)g(\014les)f(the)g(command)g
+(reads)150 3867 y(from)34 b(and)g(writes)h(to.)54 b(When)35
+b(used)f(with)g(the)h Ft(exec)f Fu(builtin,)h(redirections)g(mo)s(dify)
+f(\014le)h(handles)f(in)150 3976 y(the)f(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 4086
+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 4196 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 4329 y(Eac)m(h)45 b(redirection)h
+(that)f(ma)m(y)h(b)s(e)e(preceded)g(b)m(y)h(a)h(\014le)f(descriptor)f
+(n)m(um)m(b)s(er)g(ma)m(y)h(instead)h(b)s(e)150 4439
+y(preceded)22 b(b)m(y)h(a)g(w)m(ord)g(of)f(the)h(form)g
+Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(.)39 b(In)22 b(this)g(case,)k
+(for)d(eac)m(h)g(redirection)h(op)s(erator)f(except)150
+4549 y Ft(>&-)36 b Fu(and)h Ft(<&-)p Fu(,)h(the)g(shell)f(allo)s(cates)
+j(a)e(\014le)f(descriptor)g(greater)i(than)e(or)g(equal)h(to)g(10)g
+(and)f(assigns)150 4658 y(it)d(to)h Fi({)p Fr(v)-5 b(arname)5
+b Fi(})p Fu(.)52 b(If)34 b Fi({)p Fr(v)-5 b(arname)5
+b Fi(})35 b Fu(precedes)f Ft(>&-)f Fu(or)h Ft(<&-)p Fu(,)g(the)g(v)-5
+b(alue)34 b(of)h Fr(v)-5 b(arname)39 b Fu(de\014nes)33
+b(the)h(\014le)150 4768 y(descriptor)g(to)g(close.)52
+b(If)34 b Fi({)p Fr(v)-5 b(arname)5 b Fi(})34 b Fu(is)g(supplied,)g
+(the)g(redirection)g(p)s(ersists)f(b)s(ey)m(ond)g(the)h(scop)s(e)g(of)
+150 4877 y(the)i(command,)h(whic)m(h)e(allo)m(ws)i(the)f(shell)g
+(programmer)f(to)h(manage)h(the)e(\014le)h(descriptor's)g(lifetime)150
+4987 y(man)m(ually)d(without)g(using)g(the)g Ft(exec)e
+Fu(builtin.)48 b(The)32 b Ft(varredir_close)d Fu(shell)k(option)g
+(manages)h(this)150 5097 y(b)s(eha)m(vior)c(\(see)i(Section)f(4.3.2)h
+([The)e(Shopt)g(Builtin],)h(page)g(77\).)275 5230 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
+5340 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g(is)g(`)p
+Ft(<)p Fu(',)i(the)e(redirection)g(refers)g(to)g(the)g(standard)f
+(input)f(\(\014le)p eop end
+%%Page: 41 47
+TeXDict begin 41 46 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(41)150 299
+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 Ft(>)p Fu(',)h(the)f
+(redirection)g(refers)150 408 y(to)e(the)g(standard)e(output)h
+(\(\014le)h(descriptor)f(1\).)275 551 y(The)h Fr(w)m(ord)k
+Fu(follo)m(wing)f(the)e(redirection)h(op)s(erator)f(in)g(the)g(follo)m
+(wing)h(descriptions,)g(unless)e(other-)150 661 y(wise)26
+b(noted,)i(is)e(sub)5 b(jected)26 b(to)h(brace)f(expansion,)i(tilde)e
+(expansion,)i(parameter)e(and)g(v)-5 b(ariable)27 b(expan-)150
+770 y(sion,)i(command)g(substitution,)g(arithmetic)h(expansion,)g
+(quote)f(remo)m(v)-5 b(al,)31 b(\014lename)e(expansion,)h(and)150
+880 y(w)m(ord)g(splitting.)41 b(If)30 b(it)h(expands)f(to)h(more)f
+(than)h(one)f(w)m(ord,)g(Bash)h(rep)s(orts)f(an)g(error.)275
+1022 y(The)f(order)h(of)h(redirections)g(is)f(signi\014can)m(t.)42
+b(F)-8 b(or)31 b(example,)g(the)g(command)390 1165 y
+Ft(ls)47 b(>)h Fj(dirlist)d Ft(2>&1)150 1307 y Fu(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
+1417 y(\014le)h Fr(dirlist)p Fu(,)h(while)f(the)h(command)390
+1559 y Ft(ls)47 b(2>&1)g(>)g Fj(dirlist)150 1702 y Fu(directs)28
+b(only)f(the)h(standard)e(output)i(to)g(\014le)f Fr(dirlist)p
+Fu(,)h(b)s(ecause)g(the)f(standard)g(error)g(w)m(as)h(made)f(a)h(cop)m
+(y)150 1811 y(of)j(the)f(standard)g(output)g(b)s(efore)g(the)g
+(standard)g(output)g(w)m(as)g(redirected)h(to)g Fr(dirlist)p
+Fu(.)275 1954 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 2063 y(in)g(the)g(follo)m(wing)i(table.)40
+b(If)26 b(the)g(op)s(erating)h(system)f(on)h(whic)m(h)e(Bash)i(is)f
+(running)f(pro)m(vides)h(these)g(sp)s(e-)150 2173 y(cial)g(\014les,)g
+(Bash)e(uses)h(them;)h(otherwise)f(it)g(em)m(ulates)h(them)f(in)m
+(ternally)g(with)g(the)f(b)s(eha)m(vior)h(describ)s(ed)150
+2283 y(b)s(elo)m(w.)150 2454 y Ft(/dev/fd/)p Fj(fd)630
+2564 y Fu(If)30 b Fr(fd)j Fu(is)d(a)h(v)-5 b(alid)31
+b(in)m(teger,)h(duplicate)f(\014le)f(descriptor)h Fr(fd)p
+Fu(.)150 2731 y Ft(/dev/stdin)630 2841 y Fu(File)h(descriptor)e(0)h(is)
+f(duplicated.)150 3008 y Ft(/dev/stdout)630 3118 y Fu(File)i
+(descriptor)e(1)h(is)f(duplicated.)150 3285 y Ft(/dev/stderr)630
+3395 y Fu(File)i(descriptor)e(2)h(is)f(duplicated.)150
+3562 y Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 3672
+y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41 b(hostname)h(or)f(In)
+m(ternet)h(address,)i(and)c Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s
+(ort)630 3781 y(n)m(um)m(b)s(er)23 b(or)i(service)h(name,)g(Bash)f
+(attempts)h(to)f(op)s(en)f(the)h(corresp)s(onding)f(TCP)g(so)s(c)m(k)m
+(et.)150 3949 y Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)630
+4058 y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41
+b(hostname)h(or)f(In)m(ternet)h(address,)i(and)c Fr(p)s(ort)j
+Fu(is)f(an)f(in)m(teger)i(p)s(ort)630 4168 y(n)m(um)m(b)s(er)23
+b(or)h(service)h(name,)h(Bash)e(attempts)h(to)g(op)s(en)f(the)g
+(corresp)s(onding)f(UDP)i(so)s(c)m(k)m(et.)275 4339 y(A)30
+b(failure)h(to)g(op)s(en)e(or)i(create)h(a)e(\014le)h(causes)g(the)f
+(redirection)h(to)g(fail.)275 4482 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 4591 y(con\015ict)i(with)f(\014le)h
+(descriptors)f(the)g(shell)h(uses)f(in)m(ternally)-8
+b(.)150 4798 y Fk(3.6.1)63 b(Redirecting)40 b(Input)150
+4945 y Fu(Redirecting)28 b(input)e(op)s(ens)h(the)g(\014le)g(whose)g
+(name)g(results)g(from)g(the)g(expansion)g(of)h Fr(w)m(ord)i
+Fu(for)d(reading)150 5055 y(on)j(\014le)h(descriptor)f
+Ft(n)p Fu(,)g(or)h(the)f(standard)g(input)f(\(\014le)i(descriptor)f
+(0\))h(if)g Ft(n)f Fu(is)g(not)h(sp)s(eci\014ed.)275
+5197 y(The)e(general)j(format)e(for)h(redirecting)g(input)e(is:)390
+5340 y Ft([)p Fj(n)p Ft(]<)p Fj(word)p eop end
+%%Page: 42 48
+TeXDict begin 42 47 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(42)150 299
+y Fk(3.6.2)63 b(Redirecting)40 b(Output)150 446 y Fu(Redirecting)25
+b(output)e(op)s(ens)g(the)i(\014le)f(whose)f(name)h(results)g(from)f
+(the)h(expansion)g(of)g Fr(w)m(ord)j Fu(for)d(writing)150
+555 y(on)j(\014le)h(descriptor)f Fr(n)p Fu(,)h(or)f(the)h(standard)e
+(output)i(\(\014le)f(descriptor)h(1\))g(if)f Fr(n)g Fu(is)h(not)f(sp)s
+(eci\014ed.)39 b(If)27 b(the)h(\014le)150 665 y(do)s(es)i(not)h(exist)g
+(it)g(is)f(created;)i(if)e(it)h(do)s(es)f(exist)h(it)g(is)g(truncated)f
+(to)h(zero)g(size.)275 812 y(The)e(general)j(format)e(for)h
+(redirecting)g(output)f(is:)390 959 y Ft([)p Fj(n)p Ft(]>[|])p
+Fj(word)275 1107 y Fu(If)g(the)h(redirection)g(op)s(erator)g(is)g(`)p
+Ft(>)p Fu(',)g(and)f(the)h Ft(noclobber)d Fu(option)j(to)g(the)g
+Ft(set)f Fu(builtin)g(has)h(b)s(een)150 1216 y(enabled,)26
+b(the)e(redirection)h(fails)f(if)g(the)h(\014le)f(whose)g(name)g
+(results)g(from)f(the)i(expansion)f(of)g Fr(w)m(ord)j
+Fu(exists)150 1326 y(and)g(is)g(a)g(regular)h(\014le.)39
+b(If)27 b(the)g(redirection)h(op)s(erator)f(is)h(`)p
+Ft(>|)p Fu(',)f(or)h(the)f(redirection)h(op)s(erator)f(is)g(`)p
+Ft(>)p Fu(')h(and)150 1435 y(the)34 b Ft(noclobber)d
+Fu(option)j(is)g(not)f(enabled,)i(Bash)f(attemps)g(the)g(redirection)g
+(ev)m(en)g(if)g(the)g(\014le)f(named)150 1545 y(b)m(y)d
+Fr(w)m(ord)k Fu(exists.)150 1757 y Fk(3.6.3)63 b(App)s(ending)42
+b(Redirected)e(Output)150 1904 y Fu(Redirecting)31 b(output)f(in)g
+(this)g(fashion)f(op)s(ens)h(the)g(\014le)g(whose)g(name)g(results)g
+(from)g(the)g(expansion)g(of)150 2013 y Fr(w)m(ord)g
+Fu(for)c(app)s(ending)f(on)i(\014le)f(descriptor)h Fr(n)p
+Fu(,)g(or)f(the)h(standard)f(output)g(\(\014le)h(descriptor)f(1\))i(if)
+e Fr(n)g Fu(is)h(not)150 2123 y(sp)s(eci\014ed.)40 b(If)30
+b(the)g(\014le)h(do)s(es)f(not)h(exist)g(it)g(is)f(created.)275
+2270 y(The)f(general)j(format)e(for)h(app)s(ending)e(output)h(is:)390
+2417 y Ft([)p Fj(n)p Ft(]>>)p Fj(word)150 2629 y Fk(3.6.4)63
+b(Redirecting)40 b(Standard)h(Output)g(and)g(Standard)g(Error)150
+2776 y Fu(This)26 b(construct)h(redirects)g(b)s(oth)e(the)i(standard)f
+(output)g(\(\014le)h(descriptor)g(1\))g(and)f(the)h(standard)e(error)
+150 2886 y(output)30 b(\(\014le)h(descriptor)f(2\))h(to)g(the)g(\014le)
+f(whose)g(name)h(is)f(the)h(expansion)f(of)h Fr(w)m(ord)p
+Fu(.)275 3033 y(There)e(are)i(t)m(w)m(o)h(formats)e(for)h(redirecting)g
+(standard)e(output)h(and)g(standard)f(error:)390 3180
+y Ft(&>)p Fj(word)150 3328 y Fu(and)390 3475 y Ft(>&)p
+Fj(word)150 3622 y Fu(Of)h(the)g(t)m(w)m(o)i(forms,)e(the)h(\014rst)e
+(is)i(preferred.)39 b(This)30 b(is)g(seman)m(tically)j(equiv)-5
+b(alen)m(t)32 b(to)390 3769 y Ft(>)p Fj(word)46 b Ft(2>&1)275
+3916 y Fu(When)41 b(using)g(the)h(second)f(form,)k Fr(w)m(ord)f
+Fu(ma)m(y)e(not)g(expand)f(to)h(a)g(n)m(um)m(b)s(er)f(or)g(`)p
+Ft(-)p Fu('.)75 b(If)41 b(it)h(do)s(es,)150 4026 y(other)27
+b(redirection)g(op)s(erators)f(apply)h(\(see)g(Duplicating)h(File)f
+(Descriptors)h(b)s(elo)m(w\))f(for)f(compatibilit)m(y)150
+4135 y(reasons.)150 4347 y Fk(3.6.5)63 b(App)s(ending)42
+b(Standard)f(Output)g(and)g(Standard)g(Error)150 4494
+y Fu(This)27 b(construct)h(app)s(ends)d(b)s(oth)i(the)h(standard)f
+(output)g(\(\014le)h(descriptor)g(1\))g(and)f(the)h(standard)e(error)
+150 4604 y(output)k(\(\014le)h(descriptor)f(2\))h(to)g(the)g(\014le)f
+(whose)g(name)h(is)f(the)h(expansion)f(of)h Fr(w)m(ord)p
+Fu(.)275 4751 y(The)e(format)i(for)f(app)s(ending)f(standard)h(output)g
+(and)f(standard)h(error)g(is:)390 4898 y Ft(&>>)p Fj(word)150
+5046 y Fu(This)g(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32
+b(to)390 5193 y Ft(>>)p Fj(word)46 b Ft(2>&1)275 5340
+y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g(b)s(elo)m(w\).)p
+eop end
+%%Page: 43 49
+TeXDict begin 43 48 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(43)150 299
+y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150 446 y Fu(This)36
+b(t)m(yp)s(e)h(of)f(redirection)h(instructs)g(the)f(shell)h(to)h(read)e
+(input)g(from)g(the)g(curren)m(t)h(source)g(un)m(til)f(it)150
+555 y(reads)h(a)h(line)g(con)m(taining)g(only)g Fr(delimiter)45
+b Fu(\(with)37 b(no)g(trailing)i(blanks\).)61 b(All)38
+b(of)g(the)f(lines)h(read)f(up)150 665 y(to)g(that)g(p)s(oin)m(t)f
+(then)g(b)s(ecome)h(the)g(standard)e(input)h(\(or)g(\014le)h
+(descriptor)f Fr(n)g Fu(if)g Fr(n)g Fu(is)g(sp)s(eci\014ed\))g(for)h(a)
+150 775 y(command.)275 914 y(The)29 b(format)i(of)g(here-do)s(cumen)m
+(ts)f(is:)390 1053 y Ft([)p Fj(n)p Ft(]<<[)p Fq(\000)p
+Ft(])p Fj(word)772 1163 y(here-document)390 1272 y(delimiter)275
+1412 y Fu(The)35 b(shell)h(do)s(es)f(not)h(p)s(erform)e(parameter)j
+(and)e(v)-5 b(ariable)36 b(expansion,)h(command)f(substitution,)150
+1521 y(arithmetic)c(expansion,)e(or)g(\014lename)h(expansion)f(on)h
+Fr(w)m(ord)p Fu(.)275 1661 y(If)f(an)m(y)g(part)h(of)g
+Fr(w)m(ord)i Fu(is)e(quoted,)g(the)g Fr(delimiter)37
+b Fu(is)31 b(the)g(result)f(of)h(quote)g(remo)m(v)-5
+b(al)32 b(on)e Fr(w)m(ord)p Fu(,)h(and)150 1770 y(the)36
+b(lines)f(in)h(the)f(here-do)s(cumen)m(t)h(are)g(not)g(expanded.)55
+b(If)35 b Fr(w)m(ord)k Fu(is)c(unquoted,)h Fr(delimiter)43
+b Fu(is)36 b Fr(w)m(ord)150 1880 y Fu(itself,)h(and)d(the)h(here-do)s
+(cumen)m(t)f(text)i(is)f(treated)g(similarly)h(to)f(a)g(double-quoted)g
+(string:)49 b(all)36 b(lines)150 1989 y(of)i(the)g(here-do)s(cumen)m(t)
+g(are)g(sub)5 b(jected)38 b(to)h(parameter)f(expansion,)i(command)e
+(substitution,)i(and)150 2099 y(arithmetic)h(expansion,)i(the)d(c)m
+(haracter)i(sequence)e Ft(\\newline)e Fu(is)i(treated)h(literally)-8
+b(,)45 b(and)40 b(`)p Ft(\\)p Fu(')g(m)m(ust)150 2209
+y(b)s(e)31 b(used)g(to)i(quote)g(the)f(c)m(haracters)h(`)p
+Ft(\\)p Fu(',)g(`)p Ft($)p Fu(',)f(and)g(`)p Ft(`)p Fu(';)h(ho)m(w)m
+(ev)m(er,)h(double)d(quote)i(c)m(haracters)g(ha)m(v)m(e)g(no)150
+2318 y(sp)s(ecial)e(meaning.)275 2457 y(If)j(the)i(redirection)g(op)s
+(erator)g(is)f(`)p Ft(<<-)p Fu(',)i(the)f(shell)f(strips)g(leading)h
+(tab)g(c)m(haracters)h(are)e(stripp)s(ed)150 2567 y(from)28
+b(input)f(lines)i(and)f(the)h(line)f(con)m(taining)i
+Fr(delimiter)p Fu(.)41 b(This)28 b(allo)m(ws)i(here-do)s(cumen)m(ts)e
+(within)g(shell)150 2677 y(scripts)i(to)h(b)s(e)f(inden)m(ted)g(in)g(a)
+h(natural)f(fashion.)275 2816 y(If)25 b(the)h(delimiter)h(is)f(not)g
+(quoted,)i(the)e Ft(\\<newline>)d Fu(sequence)k(is)f(treated)h(as)f(a)g
+(line)h(con)m(tin)m(uation:)150 2925 y(the)j(t)m(w)m(o)h(lines)f(are)g
+(joined)g(and)f(the)h(bac)m(kslash-newline)h(is)f(remo)m(v)m(ed.)41
+b(This)29 b(happ)s(ens)f(while)i(reading)150 3035 y(the)j(here-do)s
+(cumen)m(t,)g(b)s(efore)f(the)h(c)m(hec)m(k)h(for)f(the)f(ending)h
+(delimiter,)h(so)f(joined)f(lines)h(can)g(form)f(the)150
+3145 y(end)e(delimiter.)150 3349 y Fk(3.6.7)63 b(Here)41
+b(Strings)150 3496 y Fu(A)30 b(v)-5 b(arian)m(t)32 b(of)e(here)h(do)s
+(cumen)m(ts,)f(the)g(format)h(is:)390 3635 y Ft([)p Fj(n)p
+Ft(]<<<)46 b Fj(word)275 3774 y Fu(The)29 b Fr(w)m(ord)k
+Fu(undergo)s(es)c(tilde)i(expansion,)f(parameter)h(and)e(v)-5
+b(ariable)31 b(expansion,)f(command)g(sub-)150 3884 y(stitution,)f
+(arithmetic)f(expansion,)g(and)f(quote)h(remo)m(v)-5
+b(al.)41 b(Filename)29 b(expansion)e(and)f(w)m(ord)h(splitting)150
+3993 y(are)35 b(not)g(p)s(erformed.)51 b(The)34 b(result)h(is)g
+(supplied)e(as)i(a)f(single)i(string,)f(with)g(a)g(newline)f(app)s
+(ended,)g(to)150 4103 y(the)d(command)f(on)g(its)h(standard)e(input)h
+(\(or)g(\014le)h(descriptor)f Fr(n)g Fu(if)g Fr(n)g Fu(is)h(sp)s
+(eci\014ed\).)150 4307 y Fk(3.6.8)63 b(Duplicating)41
+b(File)g(Descriptors)150 4454 y Fu(The)30 b(redirection)h(op)s(erator)
+390 4593 y Ft([)p Fj(n)p Ft(]<&)p Fj(word)150 4733 y
+Fu(is)44 b(used)f(to)i(duplicate)f(input)f(\014le)h(descriptors.)81
+b(If)44 b Fr(w)m(ord)j Fu(expands)c(to)i(one)f(or)g(more)g(digits,)k
+(\014le)150 4842 y(descriptor)39 b Fr(n)g Fu(is)g(made)g(to)h(b)s(e)f
+(a)g(cop)m(y)h(of)g(that)f(\014le)h(descriptor.)67 b(It)39
+b(is)g(a)h(redirection)g(error)f(if)g(the)150 4952 y(digits)34
+b(in)e Fr(w)m(ord)37 b Fu(do)c(not)g(sp)s(ecify)g(a)g(\014le)g
+(descriptor)g(op)s(en)g(for)f(input.)48 b(If)33 b Fr(w)m(ord)j
+Fu(ev)-5 b(aluates)35 b(to)f(`)p Ft(-)p Fu(',)g(\014le)150
+5061 y(descriptor)c Fr(n)g Fu(is)g(closed.)42 b(If)30
+b Fr(n)g Fu(is)g(not)h(sp)s(eci\014ed,)f(this)g(uses)g(the)g(standard)g
+(input)f(\(\014le)i(descriptor)f(0\).)275 5201 y(The)f(op)s(erator)390
+5340 y Ft([)p Fj(n)p Ft(]>&)p Fj(word)p eop end
+%%Page: 44 50
+TeXDict begin 44 49 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(44)150 299
+y(is)40 b(used)g(similarly)h(to)f(duplicate)h(output)f(\014le)g
+(descriptors.)70 b(If)40 b Fr(n)g Fu(is)g(not)h(sp)s(eci\014ed,)h(this)
+e(uses)g(the)150 408 y(standard)e(output)g(\(\014le)h(descriptor)f
+(1\).)66 b(It)38 b(is)h(a)f(redirection)h(error)g(if)f(the)h(digits)g
+(in)f Fr(w)m(ord)j Fu(do)e(not)150 518 y(sp)s(ecify)28
+b(a)i(\014le)e(descriptor)h(op)s(en)f(for)h(output.)40
+b(If)28 b Fr(w)m(ord)k Fu(ev)-5 b(aluates)30 b(to)g(`)p
+Ft(-)p Fu(',)f(\014le)g(descriptor)g Fr(n)f Fu(is)h(closed.)150
+628 y(As)34 b(a)g(sp)s(ecial)h(case,)h(if)e Fr(n)f Fu(is)h(omitted,)i
+(and)e Fr(w)m(ord)j Fu(do)s(es)d(not)g(expand)f(to)i(one)f(or)g(more)g
+(digits)h(or)f(`)p Ft(-)p Fu(',)150 737 y(this)c(redirects)h(the)g
+(standard)e(output)h(and)g(standard)f(error)h(as)h(describ)s(ed)e
+(previously)-8 b(.)150 927 y Fk(3.6.9)63 b(Mo)m(ving)41
+b(File)h(Descriptors)150 1074 y Fu(The)30 b(redirection)h(op)s(erator)
+390 1204 y Ft([)p Fj(n)p Ft(]<&)p Fj(digit)p Ft(-)150
+1334 y Fu(mo)m(v)m(es)i(the)f(\014le)g(descriptor)f Fr(digit)k
+Fu(to)d(\014le)g(descriptor)g Fr(n)p Fu(,)f(or)h(the)g(standard)f
+(input)f(\(\014le)j(descriptor)e(0\))150 1443 y(if)f
+Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)40 b Fr(digit)33
+b Fu(is)e(closed)g(after)g(b)s(eing)f(duplicated)g(to)h
+Fr(n)p Fu(.)275 1573 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
+(erator)390 1703 y Ft([)p Fj(n)p Ft(]>&)p Fj(digit)p
+Ft(-)150 1833 y Fu(mo)m(v)m(es)e(the)g(\014le)f(descriptor)f
+Fr(digit)k Fu(to)e(\014le)f(descriptor)g Fr(n)p Fu(,)g(or)g(the)g
+(standard)f(output)h(\(\014le)g(descriptor)g(1\))150
+1942 y(if)i Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)150
+2132 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)150 2279 y Fu(The)30
+b(redirection)h(op)s(erator)390 2409 y Ft([)p Fj(n)p
+Ft(]<>)p Fj(word)150 2539 y Fu(op)s(ens)37 b(the)h(\014le)g(whose)f
+(name)h(is)g(the)g(expansion)g(of)g Fr(w)m(ord)j Fu(for)c(b)s(oth)g
+(reading)h(and)f(writing)h(on)g(\014le)150 2648 y(descriptor)i
+Fr(n)p Fu(,)i(or)f(on)f(\014le)g(descriptor)g(0)h(if)f
+Fr(n)f Fu(is)i(not)f(sp)s(eci\014ed.)70 b(If)39 b(the)i(\014le)f(do)s
+(es)g(not)g(exist,)k(it)d(is)150 2758 y(created.)150
+2989 y Fs(3.7)68 b(Executing)46 b(Commands)150 3209 y
+Fk(3.7.1)63 b(Simple)41 b(Command)h(Expansion)150 3356
+y Fu(When)34 b(the)g(shell)h(executes)g(a)g(simple)f(command,)h(it)g(p)
+s(erforms)d(the)j(follo)m(wing)g(expansions,)g(assign-)150
+3465 y(men)m(ts,)c(and)f(redirections,)h(from)f(left)h(to)g(righ)m(t,)g
+(in)f(the)h(follo)m(wing)h(order.)199 3595 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
+3705 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 3834 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
+3944 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g(24\).)61
+b(If)37 b(an)m(y)g(w)m(ords)f(remain)h(after)h(expansion,)h(the)e
+(\014rst)330 4054 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 4163 y(men)m(ts.)199 4293 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(40\).)199 4423
+y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Ft(=)p Fu(')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 4532 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 4642 y(b)s(eing)30 b(assigned)h(to)g(the)f(v)-5
+b(ariable.)275 4792 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 4902 y(men)m(t.)68 b(In)38 b(the)h(case)i(of)e(suc)m
+(h)g(a)g(command)g(\(one)h(that)g(consists)g(only)f(of)g(assignmen)m(t)
+h(statemen)m(ts)150 5011 y(and)27 b(redirections\),)i(assignmen)m(t)g
+(statemen)m(ts)g(are)f(p)s(erformed)e(b)s(efore)h(redirections.)41
+b(Otherwise,)28 b(the)150 5121 y(v)-5 b(ariables)27 b(are)g(added)e(to)
+i(the)g(en)m(vironmen)m(t)g(of)f(the)h(executed)g(command)f(and)g(do)g
+(not)h(a\013ect)h(the)e(cur-)150 5230 y(ren)m(t)32 b(shell)f(en)m
+(vironmen)m(t.)44 b(If)31 b(an)m(y)g(of)h(the)f(assignmen)m(ts)h
+(attempts)g(to)g(assign)g(a)f(v)-5 b(alue)32 b(to)g(a)g(readonly)150
+5340 y(v)-5 b(ariable,)31 b(an)g(error)f(o)s(ccurs,)g(and)g(the)g
+(command)g(exits)i(with)e(a)g(non-zero)h(status.)p eop
+end
+%%Page: 45 51
+TeXDict begin 45 50 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(45)275 299
+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
+408 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
+545 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 655 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 764 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 874 y(p)s(erformed.)i(If)27 b(there)h(w)m(ere)g(no)f(command)g
+(substitutions,)h(the)g(command)f(exits)h(with)f(a)h(zero)g(status.)150
+1075 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h(Execution)150
+1222 y Fu(After)i(a)h(command)f(has)g(b)s(een)f(split)h(in)m(to)h(w)m
+(ords,)j(if)c(it)g(results)g(in)g(a)h(simple)f(command)g(and)f(an)150
+1332 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g(shell)f(p)s
+(erforms)f(the)i(follo)m(wing)g(actions.)199 1469 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 1578 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 1688 y(F)-8 b(unctions],)31 b(page)h(19.)199
+1823 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 1933 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 2069 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
+2178 y(searc)m(hes)c(eac)m(h)g(elemen)m(t)g(of)g Ft($PATH)d
+Fu(for)i(a)g(directory)h(con)m(taining)g(an)f(executable)h(\014le)f(b)m
+(y)g(that)330 2288 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 2397 y(a)m(v)m(oid)e(m)m(ultiple)f Ft(PATH)f
+Fu(searc)m(hes)i(\(see)f(the)g(description)g(of)f Ft(hash)g
+Fu(in)g(Section)i(4.1)f([Bourne)g(Shell)330 2507 y(Builtins],)h(page)f
+(51\).)46 b(Bash)31 b(p)s(erforms)f(a)i(full)g(searc)m(h)g(of)g(the)f
+(directories)i(in)e Ft($PATH)f Fu(only)i(if)g(the)330
+2617 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 2726 y(for)e(a)h(de\014ned)e(shell)h(function)h(named)e
+Ft(command_not_found_handle)p Fu(.)32 b(If)23 b(that)h(function)f
+(exists,)330 2836 y(it)33 b(is)f(in)m(v)m(ok)m(ed)i(in)e(a)h(separate)h
+(execution)f(en)m(vironmen)m(t)g(with)f(the)h(original)h(command)e(and)
+g(the)330 2945 y(original)26 b(command's)e(argumen)m(ts)h(as)g(its)g
+(argumen)m(ts,)h(and)e(the)h(function's)f(exit)i(status)f(b)s(ecomes)
+330 3055 y(the)j(exit)g(status)g(of)f(that)h(subshell.)39
+b(If)27 b(that)h(function)f(is)h(not)g(de\014ned,)f(the)g(shell)h(prin)
+m(ts)f(an)g(error)330 3165 y(message)k(and)f(returns)f(an)i(exit)g
+(status)g(of)f(127.)199 3300 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 3410 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 3519 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 3629 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8
+b(.)199 3764 y(5.)61 b(If)31 b(this)f(execution)j(fails)e(b)s(ecause)g
+(the)g(\014le)g(is)g(not)h(in)e(executable)j(format,)f(and)e(the)h
+(\014le)g(is)g(not)h(a)330 3874 y(directory)-8 b(,)33
+b(it)g(is)e(assumed)g(to)i(b)s(e)e(a)h Fr(shell)g(script)p
+Fu(,)g(a)h(\014le)e(con)m(taining)j(shell)e(commands,)g(and)f(the)330
+3984 y(shell)g(executes)g(it)g(as)g(describ)s(ed)e(in)h(Section)h(3.8)h
+([Shell)e(Scripts],)g(page)i(49.)199 4119 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
+4229 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150
+4430 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150
+4577 y Fu(The)30 b(shell)g(has)h(an)f Fr(execution)h(en)m(vironmen)m(t)
+p Fu(,)h(whic)m(h)e(consists)h(of)f(the)h(follo)m(wing:)225
+4714 y Fq(\017)60 b Fu(Op)s(en)29 b(\014les)i(inherited)f(b)m(y)g(the)h
+(shell)g(at)g(in)m(v)m(o)s(cation,)i(as)e(mo)s(di\014ed)e(b)m(y)i
+(redirections)g(supplied)e(to)330 4824 y(the)i Ft(exec)e
+Fu(builtin.)225 4959 y Fq(\017)60 b Fu(The)33 b(curren)m(t)g(w)m
+(orking)h(directory)g(as)f(set)h(b)m(y)g Ft(cd)p Fu(,)g
+Ft(pushd)p Fu(,)f(or)g Ft(popd)p Fu(,)g(or)h(inherited)f(b)m(y)g(the)h
+(shell)330 5069 y(at)d(in)m(v)m(o)s(cation.)225 5204
+y Fq(\017)60 b Fu(The)30 b(\014le)g(creation)i(mo)s(de)e(mask)g(as)h
+(set)g(b)m(y)f Ft(umask)f Fu(or)h(inherited)h(from)e(the)i(shell's)g
+(paren)m(t.)225 5340 y Fq(\017)60 b Fu(Curren)m(t)29
+b(traps)h(set)h(b)m(y)g Ft(trap)p Fu(.)p eop end
+%%Page: 46 52
+TeXDict begin 46 51 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(46)225 299
+y Fq(\017)60 b Fu(Shell)28 b(parameters)h(that)g(are)g(set)g(b)m(y)f(v)
+-5 b(ariable)29 b(assignmen)m(t)g(or)g(with)f Ft(set)f
+Fu(or)i(inherited)f(from)g(the)330 408 y(shell's)j(paren)m(t)f(in)g
+(the)h(en)m(vironmen)m(t.)225 542 y Fq(\017)60 b Fu(Shell)42
+b(functions)g(de\014ned)f(during)h(execution)h(or)g(inherited)f(from)g
+(the)g(shell's)h(paren)m(t)g(in)f(the)330 651 y(en)m(vironmen)m(t.)225
+784 y Fq(\017)60 b Fu(Options)30 b(enabled)h(at)g(in)m(v)m(o)s(cation)i
+(\(either)f(b)m(y)e(default)h(or)g(with)f(command-line)i(argumen)m
+(ts\))f(or)330 894 y(b)m(y)f Ft(set)p Fu(.)225 1027 y
+Fq(\017)60 b Fu(Options)30 b(enabled)g(b)m(y)h Ft(shopt)d
+Fu(\(see)k(Section)f(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(77\).)
+225 1160 y Fq(\017)60 b Fu(Shell)30 b(aliases)i(de\014ned)d(with)h
+Ft(alias)f Fu(\(see)j(Section)f(6.6)g([Aliases],)h(page)g(108\).)225
+1293 y Fq(\017)60 b Fu(V)-8 b(arious)49 b(pro)s(cess)f
+Fm(id)p Fu(s,)53 b(including)47 b(those)i(of)f(bac)m(kground)g(jobs)g
+(\(see)h(Section)g(3.2.4)h([Lists],)330 1403 y(page)31
+b(11\),)h(the)f(v)-5 b(alue)30 b(of)h Ft($$)p Fu(,)f(and)g(the)g(v)-5
+b(alue)31 b(of)g Ft($PPID)p Fu(.)275 1560 y(When)j(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 1669 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
+1779 y(noted,)31 b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g
+(the)g(shell.)225 1912 y Fq(\017)60 b Fu(The)28 b(shell's)h(op)s(en)f
+(\014les,)h(plus)f(an)m(y)g(mo)s(di\014cations)h(and)f(additions)h(sp)s
+(eci\014ed)f(b)m(y)g(redirections)h(to)330 2021 y(the)i(command.)225
+2155 y Fq(\017)60 b Fu(The)30 b(curren)m(t)g(w)m(orking)h(directory)-8
+b(.)225 2288 y Fq(\017)60 b Fu(The)30 b(\014le)g(creation)i(mo)s(de)e
+(mask.)225 2421 y Fq(\017)60 b Fu(Shell)31 b(v)-5 b(ariables)31
+b(and)f(functions)h(mark)m(ed)f(for)h(exp)s(ort,)g(along)h(with)e(v)-5
+b(ariables)32 b(exp)s(orted)e(for)h(the)330 2530 y(command,)f(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(46\).)225 2664 y Fq(\017)60
+b Fu(T)-8 b(raps)29 b(caugh)m(t)i(b)m(y)e(the)h(shell)g(are)g(reset)g
+(to)g(the)g(v)-5 b(alues)30 b(inherited)f(from)h(the)f(shell's)h(paren)
+m(t,)h(and)330 2773 y(traps)f(ignored)h(b)m(y)f(the)g(shell)h(are)g
+(ignored.)275 2930 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 3039 y(en)m(vironmen)m(t.)275 3172 y(A)30
+b Fr(subshell)j Fu(is)d(a)h(cop)m(y)g(of)g(the)f(shell)h(pro)s(cess.)
+275 3306 y(Command)k(substitution,)j(commands)e(group)s(ed)f(with)i
+(paren)m(theses,)h(and)e(async)m(hronous)g(com-)150 3415
+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 3525 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 3634 y(its)43 b(paren)m(t)f(at)h(in)m(v)m(o)s
+(cation.)78 b(Builtin)43 b(commands)f(that)h(are)f(in)m(v)m(ok)m(ed)i
+(as)e(part)g(of)h(a)f(pip)s(eline,)j(ex-)150 3744 y(cept)32
+b(p)s(ossibly)e(in)h(the)h(last)g(elemen)m(t)h(dep)s(ending)c(on)j(the)
+f(v)-5 b(alue)32 b(of)f(the)h Ft(lastpipe)d Fu(shell)i(option)h(\(see)
+150 3854 y(Section)37 b(4.3.2)i([The)d(Shopt)g(Builtin],)j(page)e
+(77\),)j(are)d(also)h(executed)f(in)f(a)h(subshell)f(en)m(vironmen)m
+(t.)150 3963 y(Changes)27 b(made)g(to)h(the)g(subshell)e(en)m(vironmen)
+m(t)i(cannot)g(a\013ect)h(the)e(shell's)h(execution)g(en)m(vironmen)m
+(t.)275 4096 y(When)i(the)h(shell)g(is)g(in)f Fm(posix)h
+Fu(mo)s(de,)f(subshells)g(spa)m(wned)g(to)i(execute)g(command)e
+(substitutions)150 4206 y(inherit)35 b(the)g(v)-5 b(alue)35
+b(of)h(the)f Ft(-e)f Fu(option)h(from)g(the)g(paren)m(t)g(shell.)55
+b(When)35 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)150
+4315 y(clears)41 b(the)f Ft(-e)f Fu(option)h(in)g(suc)m(h)f(subshells)g
+(See)h(the)g(description)g(of)g(the)g Ft(inherit_errexit)c
+Fu(shell)150 4425 y(option)30 b(\(see)h(Section)g(4.2)g([Bash)f
+(Builtins],)h(page)g(60\))g(for)f(ho)m(w)g(to)g(con)m(trol)i(this)e(b)s
+(eha)m(vior)g(when)f(not)150 4535 y(in)h Fm(posix)g Fu(mo)s(de.)275
+4668 y(If)23 b(a)h(command)g(is)g(follo)m(w)m(ed)h(b)m(y)f(a)g(`)p
+Ft(&)p Fu(')g(and)f(job)h(con)m(trol)h(is)f(not)g(activ)m(e,)k(the)c
+(default)g(standard)f(input)150 4777 y(for)35 b(the)g(command)g(is)g
+(the)g(empt)m(y)h(\014le)f Ft(/dev/null)p Fu(.)52 b(Otherwise,)37
+b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 4887
+y(the)c(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
+(di\014ed)g(b)m(y)g(redirections.)150 5083 y Fk(3.7.4)63
+b(En)m(vironmen)m(t)150 5230 y Fu(When)29 b(a)g(program)f(is)h(in)m(v)m
+(ok)m(ed)h(it)g(is)f(giv)m(en)g(an)g(arra)m(y)g(of)g(strings)g(called)h
+(the)f Fr(en)m(vironmen)m(t)p Fu(.)41 b(This)28 b(is)h(a)150
+5340 y(list)i(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f(form)g
+Ft(name=value)p Fu(.)p eop end
+%%Page: 47 53
+TeXDict begin 47 52 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(47)275 299
+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 408 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 518 y(marking)23 b(it)h(for)f Ft(export)f
+Fu(to)i(c)m(hild)g(pro)s(cesses.)38 b(Executed)24 b(commands)f(inherit)
+g(the)g(en)m(vironmen)m(t.)39 b(The)150 628 y Ft(export)p
+Fu(,)21 b(`)p Ft(declare)29 b(-x)p Fu(',)22 b(and)e Ft(unset)g
+Fu(commands)g(mo)s(dify)g(the)h(en)m(vironmen)m(t)g(b)m(y)g(adding)f
+(and)g(deleting)150 737 y(parameters)43 b(and)f(functions.)78
+b(If)42 b(the)h(v)-5 b(alue)43 b(of)g(a)g(parameter)g(in)g(the)g(en)m
+(vironmen)m(t)g(is)g(mo)s(di\014ed,)150 847 y(the)h(new)f(v)-5
+b(alue)45 b(automatically)h(b)s(ecomes)f(part)e(of)h(the)g(en)m
+(vironmen)m(t,)k(replacing)d(the)f(old.)81 b(The)150
+956 y(en)m(vironmen)m(t)27 b(inherited)g(b)m(y)g(an)m(y)g(executed)g
+(command)g(consists)g(of)g(the)g(shell's)g(initial)h(en)m(vironmen)m
+(t,)150 1066 y(whose)c(v)-5 b(alues)25 b(ma)m(y)h(b)s(e)e(mo)s
+(di\014ed)f(in)i(the)f(shell,)j(less)e(an)m(y)g(pairs)f(remo)m(v)m(ed)i
+(b)m(y)e(the)h Ft(unset)e Fu(and)h(`)p Ft(export)150
+1176 y(-n)p Fu(')30 b(commands,)g(plus)g(an)m(y)g(additions)h(via)g
+(the)f Ft(export)f Fu(and)h(`)p Ft(declare)e(-x)p Fu(')i(commands.)275
+1306 y(If)f(an)m(y)h(parameter)h(assignmen)m(t)f(statemen)m(ts,)i(as)e
+(describ)s(ed)f(in)h(Section)g(3.4)h([Shell)f(P)m(arameters],)150
+1416 y(page)j(22,)h(app)s(ear)d(b)s(efore)h(a)g(simple)h(command,)f
+(the)h(v)-5 b(ariable)33 b(assignmen)m(ts)f(are)h(part)f(of)g(that)h
+(com-)150 1525 y(mand's)26 b(en)m(vironmen)m(t)h(for)g(as)g(long)h(as)f
+(it)g(executes.)41 b(These)26 b(assignmen)m(t)i(statemen)m(ts)g
+(a\013ect)h(only)e(the)150 1635 y(en)m(vironmen)m(t)h(seen)g(b)m(y)f
+(that)h(command.)40 b(If)27 b(these)h(assignmen)m(ts)g(precede)g(a)g
+(call)h(to)f(a)g(shell)g(function,)150 1744 y(the)j(v)-5
+b(ariables)31 b(are)f(lo)s(cal)i(to)f(the)g(function)f(and)g(exp)s
+(orted)g(to)h(that)g(function's)f(c)m(hildren.)275 1875
+y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g(Section)g(4.3.1)g
+([The)f(Set)g(Builtin],)h(page)g(72\),)h(then)e(all)g(parameter)150
+1985 y(assignmen)m(ts)f(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
+2094 y(command)g(name.)275 2225 y(When)h(Bash)h(in)m(v)m(ok)m(es)i(an)e
+(external)h(command,)f(the)g(v)-5 b(ariable)33 b(`)p
+Ft($_)p Fu(')f(is)g(set)h(to)f(the)g(full)g(pathname)150
+2334 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g(command)f(in)g
+(its)h(en)m(vironmen)m(t.)150 2526 y Fk(3.7.5)63 b(Exit)40
+b(Status)150 2673 y Fu(The)23 b(exit)i(status)f(of)h(an)e(executed)i
+(command)f(is)g(the)g(v)-5 b(alue)24 b(returned)f(b)m(y)h(the)g
+Ft(waitpid)e Fu(system)i(call)h(or)150 2782 y(equiv)-5
+b(alen)m(t)33 b(function.)45 b(Exit)32 b(statuses)g(fall)g(b)s(et)m(w)m
+(een)h(0)f(and)f(255,)i(though,)f(as)g(explained)g(b)s(elo)m(w,)h(the)
+150 2892 y(shell)i(ma)m(y)g(use)f(v)-5 b(alues)35 b(ab)s(o)m(v)m(e)g
+(125)h(sp)s(ecially)-8 b(.)54 b(Exit)35 b(statuses)g(from)f(shell)h
+(builtins)f(and)f(comp)s(ound)150 3001 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 3111 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
+3242 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 3351 y(So)38 b(while)f(an)h(exit)h(status)f(of)g(zero)g(indicates)h
+(success,)h(a)e(non-zero)g(exit)h(status)f(indicates)g(failure.)150
+3461 y(This)27 b(seemingly)i(coun)m(ter-in)m(tuitiv)m(e)i(sc)m(heme)e
+(is)f(used)f(so)h(there)h(is)f(one)g(w)m(ell-de\014ned)g(w)m(a)m(y)h
+(to)g(indicate)150 3570 y(success)i(and)e(a)i(v)-5 b(ariet)m(y)32
+b(of)e(w)m(a)m(ys)i(to)f(indicate)g(v)-5 b(arious)31
+b(failure)f(mo)s(des.)275 3701 y(When)g(a)h(command)g(terminates)g(on)g
+(a)g(fatal)h(signal)f(whose)g(n)m(um)m(b)s(er)e(is)i
+Fr(N)p Fu(,)g(Bash)g(uses)g(the)f(v)-5 b(alue)150 3811
+y(128)p Ft(+)p Fr(N)41 b Fu(as)31 b(the)g(exit)g(status.)275
+3941 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
+4051 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
+4181 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
+4291 y(is)c(greater)i(than)e(zero.)275 4421 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.5.2)h([Con-)150 4531
+y(ditional)i(Constructs],)h(page)f(12\))g(and)e(some)i(of)f(the)g(list)
+g(constructs)g(\(see)h(Section)f(3.2.4)i([Lists],)150
+4641 y(page)31 b(11\).)275 4771 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 4881 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 4990 y(return)e(an)i(exit)g
+(status)g(of)f(2)h(to)g(indicate)h(incorrect)f(usage,)h(generally)g(in)
+m(v)-5 b(alid)35 b(options)g(or)f(missing)150 5100 y(argumen)m(ts.)275
+5230 y(The)f(exit)i(status)f(of)h(the)f(last)h(command)f(is)g(a)m(v)-5
+b(ailable)36 b(in)e(the)g(sp)s(ecial)h(parameter)f($?)52
+b(\(see)35 b(Sec-)150 5340 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m
+(arameters],)h(page)f(23\).)p eop end
+%%Page: 48 54
+TeXDict begin 48 53 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(48)275 299
+y(Bash)32 b(itself)i(returns)e(the)h(exit)g(status)g(of)g(the)g(last)h
+(command)e(executed,)j(unless)d(a)h(syn)m(tax)g(error)150
+408 y(o)s(ccurs,)38 b(in)f(whic)m(h)f(case)i(it)f(exits)g(with)g(a)g
+(non-zero)g(v)-5 b(alue.)60 b(See)37 b(also)h(the)e Ft(exit)g
+Fu(builtin)g(command)150 518 y(\(see)31 b(Section)h(4.1)f([Bourne)f
+(Shell)h(Builtins],)g(page)g(51.)150 748 y Fk(3.7.6)63
+b(Signals)150 895 y Fu(When)29 b(Bash)h(is)f(in)m(teractiv)m(e,)k(in)c
+(the)h(absence)g(of)g(an)m(y)f(traps,)h(it)g(ignores)g
+Ft(SIGTERM)d Fu(\(so)j(that)h(`)p Ft(kill)e(0)p Fu(')150
+1005 y(do)s(es)d(not)g(kill)h(an)f(in)m(teractiv)m(e)j(shell\),)f(and)e
+(catc)m(hes)i(and)d(handles)h Ft(SIGINT)e Fu(\(so)j(that)g(the)f
+Ft(wait)f Fu(builtin)150 1114 y(is)35 b(in)m(terruptible\).)56
+b(When)36 b(Bash)f(receiv)m(es)i(a)f Ft(SIGINT)p Fu(,)f(it)h(breaks)f
+(out)h(of)g(an)m(y)f(executing)i(lo)s(ops.)56 b(In)150
+1224 y(all)39 b(cases,)i(Bash)e(ignores)g Ft(SIGQUIT)p
+Fu(.)62 b(If)38 b(job)g(con)m(trol)h(is)g(in)e(e\013ect)j(\(see)f
+(Chapter)f(7)h([Job)f(Con)m(trol],)150 1333 y(page)31
+b(123\),)h(Bash)f(ignores)g Ft(SIGTTIN)p Fu(,)d Ft(SIGTTOU)p
+Fu(,)h(and)h Ft(SIGTSTP)p Fu(.)275 1499 y(The)25 b Ft(trap)g
+Fu(builtin)h(mo)s(di\014es)g(the)g(shell's)h(signal)g(handling,)f(as)h
+(describ)s(ed)e(b)s(elo)m(w)i(\(see)g(Section)g(4.1)150
+1608 y([Bourne)j(Shell)h(Builtins],)g(page)g(51.)275
+1774 y(Non-builtin)38 b(commands)f(Bash)h(executes)i(ha)m(v)m(e)f
+(signal)f(handlers)f(set)i(to)g(the)f(v)-5 b(alues)38
+b(inherited)150 1883 y(b)m(y)c(the)h(shell)f(from)g(its)h(paren)m(t,)h
+(unless)d Ft(trap)g Fu(sets)i(them)f(to)h(b)s(e)f(ignored,)i(in)e(whic)
+m(h)g(case)h(the)g(c)m(hild)150 1993 y(pro)s(cess)26
+b(will)g(ignore)h(them)f(as)g(w)m(ell.)40 b(When)26 b(job)g(con)m(trol)
+i(is)e(not)g(in)g(e\013ect,)j(async)m(hronous)c(commands)150
+2102 y(ignore)36 b Ft(SIGINT)e Fu(and)h Ft(SIGQUIT)e
+Fu(in)j(addition)f(to)i(these)f(inherited)f(handlers.)55
+b(Commands)35 b(run)f(as)i(a)150 2212 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 Ft(SIGTTIN)p Fu(,)150 2322 y Ft(SIGTTOU)p
+Fu(,)h(and)g Ft(SIGTSTP)p Fu(.)275 2487 y(The)h(shell)i(exits)g(b)m(y)f
+(default)g(up)s(on)f(receipt)i(of)f(a)h Ft(SIGHUP)p Fu(.)42
+b(Before)32 b(exiting,)h(an)e(in)m(teractiv)m(e)j(shell)150
+2597 y(resends)i(the)h Ft(SIGHUP)e Fu(to)i(all)h(jobs,)g(running)d(or)i
+(stopp)s(ed.)59 b(The)36 b(shell)h(sends)f Ft(SIGCONT)e
+Fu(to)k(stopp)s(ed)150 2706 y(jobs)g(to)h(ensure)e(that)i(they)g
+(receiv)m(e)h(the)f Ft(SIGHUP)d Fu(\(See)j(Chapter)f(7)h([Job)f(Con)m
+(trol],)j(page)e(123,)j(for)150 2816 y(more)31 b(information)g(ab)s
+(out)g(running)e(and)h(stopp)s(ed)g(jobs\).)43 b(T)-8
+b(o)31 b(prev)m(en)m(t)h(the)f(shell)g(from)f(sending)h(the)150
+2925 y Ft(SIGHUP)36 b Fu(signal)i(to)g(a)f(particular)h(job,)h(remo)m
+(v)m(e)g(it)f(from)f(the)g(jobs)g(table)h(with)f(the)h
+Ft(disown)d Fu(builtin)150 3035 y(\(see)i(Section)g(7.2)f([Job)g(Con)m
+(trol)h(Builtins],)h(page)e(124\))i(or)e(mark)f(it)i(not)f(to)h(receiv)
+m(e)g Ft(SIGHUP)d Fu(using)150 3144 y Ft(disown)29 b(-h)p
+Fu(.)275 3310 y(If)36 b(the)h Ft(huponexit)d Fu(shell)j(option)g(has)g
+(b)s(een)f(set)h(using)g Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)g([The)f
+(Shopt)150 3419 y(Builtin],)31 b(page)g(77\),)h(Bash)f(sends)e(a)i
+Ft(SIGHUP)e Fu(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i(login)
+e(shell)g(exits.)275 3585 y(If)d(Bash)h(is)g(w)m(aiting)h(for)e(a)i
+(command)e(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)g(for)g(whic)
+m(h)f(a)i(trap)e(has)150 3694 y(b)s(een)k(set,)h(it)g(will)g(not)f
+(execute)i(the)f(trap)f(un)m(til)g(the)h(command)f(completes.)48
+b(If)32 b(Bash)g(is)h(w)m(aiting)g(for)150 3804 y(an)i(async)m(hronous)
+g(command)g(via)h(the)g Ft(wait)e Fu(builtin,)i(and)f(it)h(receiv)m(es)
+h(a)e(signal)h(for)f(whic)m(h)g(a)h(trap)150 3913 y(has)27
+b(b)s(een)g(set,)h(the)g Ft(wait)e Fu(builtin)h(will)g(return)f
+(immediately)j(with)e(an)g(exit)h(status)g(greater)g(than)f(128,)150
+4023 y(immediately)32 b(after)f(whic)m(h)f(the)g(shell)h(executes)g
+(the)g(trap.)275 4188 y(When)41 b(job)g(con)m(trol)h(is)g(not)f
+(enabled,)k(and)40 b(Bash)i(is)f(w)m(aiting)i(for)e(a)h(foreground)e
+(command)h(to)150 4298 y(complete,)35 b(the)e(shell)h(receiv)m(es)g(k)m
+(eyb)s(oard-generated)g(signals)g(suc)m(h)e(as)i Ft(SIGINT)d
+Fu(\(usually)i(generated)150 4408 y(b)m(y)e(`)p Ft(^C)p
+Fu('\))h(that)g(users)e(commonly)i(in)m(tend)g(to)g(send)e(to)j(that)f
+(command.)43 b(This)31 b(happ)s(ens)e(b)s(ecause)j(the)150
+4517 y(shell)23 b(and)g(the)h(command)f(are)g(in)g(the)h(same)f(pro)s
+(cess)g(group)g(as)h(the)f(terminal,)i(and)e(`)p Ft(^C)p
+Fu(')g(sends)g Ft(SIGINT)150 4627 y Fu(to)36 b(all)g(pro)s(cesses)f(in)
+g(that)h(pro)s(cess)e(group.)55 b(Since)35 b(Bash)g(do)s(es)g(not)h
+(enable)f(job)g(con)m(trol)i(b)m(y)e(default)150 4736
+y(when)29 b(the)i(shell)g(is)f(not)h(in)m(teractiv)m(e,)i(this)d
+(scenario)i(is)e(most)h(common)f(in)g(non-in)m(teractiv)m(e)j(shells.)
+275 4902 y(When)23 b(job)g(con)m(trol)j(is)d(enabled,)j(and)d(Bash)h
+(is)g(w)m(aiting)h(for)e(a)h(foreground)f(command)h(to)g(complete,)150
+5011 y(the)30 b(shell)f(do)s(es)g(not)h(receiv)m(e)h(k)m(eyb)s
+(oard-generated)f(signals,)h(b)s(ecause)e(it)h(is)f(not)h(in)f(the)h
+(same)f(pro)s(cess)150 5121 y(group)40 b(as)h(the)g(terminal.)73
+b(This)40 b(scenario)i(is)e(most)i(common)f(in)f(in)m(teractiv)m(e)k
+(shells,)f(where)e(Bash)150 5230 y(attempts)e(to)g(enable)f(job)g(con)m
+(trol)i(b)m(y)e(default.)64 b(See)38 b(Chapter)g(7)g([Job)g(Con)m
+(trol],)j(page)e(123,)j(for)c(a)150 5340 y(more)31 b(in-depth)e
+(discussion)h(of)g(pro)s(cess)g(groups.)p eop end
+%%Page: 49 55
+TeXDict begin 49 54 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(49)275 299
+y(When)21 b(job)h(con)m(trol)h(is)f(not)h(enabled,)h(and)d(Bash)h
+(receiv)m(es)i Ft(SIGINT)c Fu(while)i(w)m(aiting)i(for)d(a)i
+(foreground)150 408 y(command,)28 b(it)h(w)m(aits)g(un)m(til)f(that)h
+(foreground)e(command)g(terminates)i(and)f(then)f(decides)i(what)e(to)i
+(do)150 518 y(ab)s(out)h(the)h Ft(SIGINT)p Fu(:)199 651
+y(1.)61 b(If)37 b(the)i(command)e(terminates)i(due)e(to)i(the)f
+Ft(SIGINT)p Fu(,)g(Bash)g(concludes)g(that)h(the)f(user)f(mean)m(t)330
+761 y(to)i(send)e(the)h Ft(SIGINT)e Fu(to)i(the)g(shell)g(as)g(w)m
+(ell,)j(and)d(acts)g(on)g(the)g Ft(SIGINT)e Fu(\(e.g.,)42
+b(b)m(y)37 b(running)g(a)330 870 y Ft(SIGINT)26 b Fu(trap,)i(exiting)g
+(a)g(non-in)m(teractiv)m(e)i(shell,)e(or)f(returning)g(to)h(the)f(top)h
+(lev)m(el)h(to)f(read)f(a)g(new)330 980 y(command\).)199
+1113 y(2.)61 b(If)33 b(the)h(command)g(do)s(es)f(not)h(terminate)h(due)
+e(to)i Ft(SIGINT)p Fu(,)e(the)h(program)g(handled)f(the)h
+Ft(SIGINT)330 1223 y Fu(itself)h(and)e(did)h(not)g(treat)h(it)g(as)f(a)
+g(fatal)i(signal.)52 b(In)33 b(that)i(case,)h(Bash)e(do)s(es)g(not)g
+(treat)i Ft(SIGINT)330 1332 y Fu(as)41 b(a)g(fatal)g(signal,)j(either,)
+g(instead)d(assuming)f(that)h(the)g Ft(SIGINT)d Fu(w)m(as)j(used)f(as)h
+(part)f(of)h(the)330 1442 y(program's)32 b(normal)g(op)s(eration)h
+(\(e.g.,)h Ft(emacs)d Fu(uses)g(it)i(to)g(ab)s(ort)f(editing)h
+(commands\))f(or)g(delib-)330 1552 y(erately)41 b(discarded.)69
+b(Ho)m(w)m(ev)m(er,)45 b(Bash)40 b(will)h(run)d(an)m(y)j(trap)e(set)i
+(on)f Ft(SIGINT)p Fu(,)h(as)f(it)h(do)s(es)e(with)330
+1661 y(an)m(y)31 b(other)f(trapp)s(ed)f(signal)i(it)g(receiv)m(es)h
+(while)e(it)h(is)f(w)m(aiting)h(for)f(the)h(foreground)e(command)h(to)
+330 1771 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)275
+1928 y(When)31 b(job)h(con)m(trol)h(is)g(enabled,)f(Bash)g(do)s(es)g
+(not)g(receiv)m(e)i(k)m(eyb)s(oard-generated)f(signals)g(suc)m(h)f(as)
+150 2037 y Ft(SIGINT)j Fu(while)j(it)f(is)h(w)m(aiting)g(for)f(a)h
+(foreground)e(command.)61 b(An)37 b(in)m(teractiv)m(e)j(shell)d(do)s
+(es)g(not)h(pa)m(y)150 2147 y(atten)m(tion)44 b(to)f(the)f
+Ft(SIGINT)p Fu(,)h(ev)m(en)g(if)f(the)g(foreground)f(command)h
+(terminates)h(as)f(a)h(result,)i(other)150 2256 y(than)39
+b(noting)g(its)g(exit)h(status.)67 b(If)39 b(the)g(shell)g(is)g(not)g
+(in)m(teractiv)m(e,)44 b(and)39 b(the)g(foreground)f(command)150
+2366 y(terminates)23 b(due)f(to)h(the)g Ft(SIGINT)p Fu(,)g(Bash)f
+(pretends)g(it)h(receiv)m(ed)h(the)e Ft(SIGINT)f Fu(itself)j
+(\(scenario)f(1)g(ab)s(o)m(v)m(e\),)150 2476 y(for)30
+b(compatibilit)m(y)-8 b(.)150 2714 y Fs(3.8)68 b(Shell)45
+b(Scripts)150 2873 y Fu(A)30 b(shell)f(script)h(is)f(a)h(text)h(\014le)
+f(con)m(taining)h(shell)f(commands.)40 b(When)29 b(suc)m(h)g(a)h
+(\014le)g(is)f(used)g(as)h(the)g(\014rst)150 2983 y(non-option)c
+(argumen)m(t)h(when)e(in)m(v)m(oking)i(Bash,)g(and)f(neither)g(the)g
+Ft(-c)g Fu(nor)f Ft(-s)h Fu(option)g(is)g(supplied)f(\(see)150
+3092 y(Section)39 b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f(99\),)i
+(Bash)d(reads)g(and)f(executes)i(commands)f(from)f(the)i(\014le,)150
+3202 y(then)29 b(exits.)42 b(This)28 b(mo)s(de)i(of)f(op)s(eration)i
+(creates)g(a)f(non-in)m(teractiv)m(e)i(shell.)41 b(If)29
+b(the)h(\014lename)f(do)s(es)h(not)150 3312 y(con)m(tain)g(an)m(y)e
+(slashes,)h(the)g(shell)f(\014rst)g(searc)m(hes)h(for)f(the)h(\014le)f
+(in)g(the)h(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)150
+3421 y(the)i(directories)g(in)f Ft($PATH)f Fu(if)h(not)h(found)e
+(there.)275 3554 y(Bash)34 b(tries)g(to)g(determine)g(whether)g(the)g
+(\014le)f(is)h(a)h(text)f(\014le)g(or)g(a)g(binary)-8
+b(,)35 b(and)e(will)h(not)h(execute)150 3664 y(\014les)30
+b(it)h(determines)g(to)g(b)s(e)e(binaries.)275 3797 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 Ft(0)f Fu(to)h(the)g(name)g(of)g(the)g(\014le,)150
+3907 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
+4016 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 4126 y(parameters)31 b(are)f(unset.)275
+4259 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 Ft(chmod)e Fu(command)h(to)h(turn)e(on)i(the)150
+4369 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 Ft($PATH)f Fu(for)h(a)h
+(command,)h(it)150 4478 y(creates)32 b(a)f(new)e(instance)i(of)g
+(itself)g(to)g(execute)h(it.)41 b(In)30 b(other)h(w)m(ords,)f
+(executing)390 4612 y Ft(filename)46 b Fj(arguments)150
+4745 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390
+4878 y Ft(bash)47 b(filename)e Fj(arguments)150 5011
+y Fu(if)30 b Ft(filename)d Fu(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 5121 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 5230 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 Ft(hash)f Fu(in)h(Section)h(4.1)150
+5340 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(51\))h(are)e(retained)h
+(b)m(y)f(the)h(c)m(hild.)p eop end
+%%Page: 50 56
+TeXDict begin 50 55 bop 150 -116 a Fu(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(50)275 299
+y(The)25 b Fm(gnu)h Fu(op)s(erating)g(system,)h(and)f(most)g(v)m
+(ersions)g(of)g(Unix,)h(mak)m(e)g(this)f(a)g(part)g(of)g(the)g(op)s
+(erating)150 408 y(system's)36 b(command)g(execution)h(mec)m(hanism.)58
+b(If)35 b(the)h(\014rst)f(line)h(of)g(a)h(script)f(b)s(egins)f(with)g
+(the)i(t)m(w)m(o)150 518 y(c)m(haracters)46 b(`)p Ft(#!)p
+Fu(',)i(the)c(remainder)g(of)g(the)h(line)g(sp)s(eci\014es)f(an)g(in)m
+(terpreter)h(for)f(the)g(program)g(and,)150 628 y(dep)s(ending)34
+b(on)h(the)h(op)s(erating)f(system,)i(one)f(or)f(more)h(optional)h
+(argumen)m(ts)e(for)g(that)h(in)m(terpreter.)150 737
+y(Th)m(us,)c(y)m(ou)h(can)g(sp)s(ecify)f(Bash,)h Ft(awk)p
+Fu(,)g(P)m(erl,)g(or)g(some)g(other)f(in)m(terpreter)h(and)f(write)h
+(the)f(rest)h(of)g(the)150 847 y(script)d(\014le)h(in)f(that)h
+(language.)275 981 y(The)k(argumen)m(ts)h(to)h(the)f(in)m(terpreter)h
+(consist)f(of)h(one)f(or)g(more)g(optional)h(argumen)m(ts)f(follo)m
+(wing)150 1091 y(the)e(in)m(terpreter)g(name)g(on)g(the)g(\014rst)g
+(line)g(of)g(the)g(script)g(\014le,)h(follo)m(w)m(ed)h(b)m(y)e(the)g
+(name)g(of)g(the)g(script)150 1200 y(\014le,)k(follo)m(w)m(ed)g(b)m(y)e
+(the)g(rest)g(of)g(the)h(argumen)m(ts)f(supplied)f(to)i(the)f(script.)
+58 b(The)35 b(details)i(of)g(ho)m(w)f(the)150 1310 y(in)m(terpreter)26
+b(line)g(is)g(split)g(in)m(to)h(an)f(in)m(terpreter)g(name)g(and)f(a)h
+(set)h(of)e(argumen)m(ts)i(v)-5 b(ary)25 b(across)i(systems.)150
+1420 y(Bash)j(will)f(p)s(erform)g(this)g(action)i(on)e(op)s(erating)h
+(systems)g(that)g(do)f(not)h(handle)f(it)h(themselv)m(es.)42
+b(Note)150 1529 y(that)e(some)g(older)g(v)m(ersions)g(of)g(Unix)f
+(limit)i(the)f(in)m(terpreter)g(name)g(and)f(a)h(single)g(argumen)m(t)g
+(to)h(a)150 1639 y(maxim)m(um)21 b(of)g(32)h(c)m(haracters,)j(so)c
+(it's)h(not)g(p)s(ortable)f(to)h(assume)e(that)i(using)f(more)g(than)g
+(one)g(argumen)m(t)150 1748 y(will)31 b(w)m(ork.)275
+1883 y(Bash)h(scripts)g(often)g(b)s(egin)g(with)g Ft(#!)e(/bin/bash)g
+Fu(\(assuming)i(that)h(Bash)f(has)g(b)s(een)f(installed)i(in)150
+1993 y Ft(/bin)p Fu(\),)26 b(since)h(this)f(ensures)f(that)i(Bash)f
+(will)h(b)s(e)f(used)f(to)i(in)m(terpret)f(the)h(script,)g(ev)m(en)g
+(if)f(it)h(is)f(executed)150 2102 y(under)h(another)h(shell.)41
+b(It's)28 b(a)h(common)g(idiom)f(to)h(use)f Ft(env)g
+Fu(to)h(\014nd)e Ft(bash)g Fu(ev)m(en)i(if)f(it's)i(b)s(een)d
+(installed)150 2212 y(in)h(another)g(directory:)40 b
+Ft(#!/usr/bin/env)27 b(bash)f Fu(will)j(\014nd)d(the)j(\014rst)e(o)s
+(ccurrence)h(of)g Ft(bash)f Fu(in)h Ft($PATH)p Fu(.)p
+eop end
+%%Page: 51 57
+TeXDict begin 51 56 bop 3659 -116 a Fu(51)150 299 y Fp(4)80
+b(Shell)53 b(Builtin)f(Commands)150 545 y Fu(Builtin)34
+b(commands)f(are)h(con)m(tained)g(within)f(the)h(shell)g(itself.)50
+b(When)34 b(the)f(name)h(of)f(a)h(builtin)f(com-)150
+655 y(mand)26 b(is)i(used)e(as)i(the)g(\014rst)e(w)m(ord)h(of)h(a)f
+(simple)h(command)f(\(see)h(Section)g(3.2.2)h([Simple)f(Commands],)150
+764 y(page)21 b(9\),)j(the)d(shell)g(executes)h(the)f(command)f
+(directly)-8 b(,)24 b(without)d(in)m(v)m(oking)h(another)f(program.)37
+b(Builtin)150 874 y(commands)f(are)h(necessary)g(to)g(implemen)m(t)g
+(functionalit)m(y)h(imp)s(ossible)e(or)h(incon)m(v)m(enien)m(t)h(to)f
+(obtain)150 984 y(with)30 b(separate)h(utilities.)275
+1122 y(This)c(section)j(brie\015y)e(describ)s(es)g(the)h(builtins)f
+(whic)m(h)g(Bash)h(inherits)f(from)g(the)h(Bourne)g(Shell,)g(as)150
+1232 y(w)m(ell)i(as)g(the)g(builtin)e(commands)h(whic)m(h)h(are)f
+(unique)g(to)h(or)f(ha)m(v)m(e)i(b)s(een)d(extended)i(in)f(Bash.)275
+1370 y(Sev)m(eral)45 b(builtin)e(commands)h(are)h(describ)s(ed)e(in)h
+(other)g(c)m(hapters:)69 b(builtin)43 b(commands)h(whic)m(h)150
+1480 y(pro)m(vide)23 b(the)h(Bash)f(in)m(terface)i(to)f(the)g(job)f
+(con)m(trol)i(facilities)g(\(see)f(Section)h(7.2)f([Job)f(Con)m(trol)h
+(Builtins],)150 1590 y(page)33 b(124\),)i(the)e(directory)g(stac)m(k)h
+(\(see)f(Section)h(6.8.1)g([Directory)g(Stac)m(k)g(Builtins],)g(page)f
+(111\),)i(the)150 1699 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
+([Bash)f(History)g(Builtins],)h(page)g(167\),)h(and)d(the)h
+(programmable)150 1809 y(completion)32 b(facilities)g(\(see)g(Section)f
+(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(159\).)275
+1947 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 Fm(posix)g Fu(or)g(Bash.)275 2086 y(Unless)20
+b(otherwise)h(noted,)h(eac)m(h)g(builtin)e(command)g(do)s(cumen)m(ted)g
+(as)h(accepting)h(options)e(preceded)150 2195 y(b)m(y)42
+b(`)p Ft(-)p Fu(')g(accepts)h(`)p Ft(--)p Fu(')f(to)h(signify)f(the)g
+(end)f(of)h(the)g(options.)76 b(The)41 b Ft(:)p Fu(,)k
+Ft(true)p Fu(,)f Ft(false)p Fu(,)g(and)d Ft(test)p Fu(/)p
+Ft([)150 2305 y Fu(builtins)32 b(do)g(not)h(accept)h(options)f(and)f
+(do)g(not)h(treat)g(`)p Ft(--)p Fu(')g(sp)s(ecially)-8
+b(.)48 b(The)32 b Ft(exit)p Fu(,)g Ft(logout)p Fu(,)f
+Ft(return)p Fu(,)150 2415 y Ft(break)p Fu(,)38 b Ft(continue)p
+Fu(,)f Ft(let)p Fu(,)i(and)d Ft(shift)g Fu(builtins)h(accept)i(and)e
+(pro)s(cess)g(argumen)m(ts)h(b)s(eginning)e(with)150
+2524 y(`)p Ft(-)p Fu(')h(without)f(requiring)g(`)p Ft(--)p
+Fu('.)59 b(Other)36 b(builtins)g(that)h(accept)h(argumen)m(ts)f(but)f
+(are)h(not)g(sp)s(eci\014ed)f(as)150 2634 y(accepting)28
+b(options)f(in)m(terpret)g(argumen)m(ts)g(b)s(eginning)e(with)i(`)p
+Ft(-)p Fu(')f(as)h(in)m(v)-5 b(alid)27 b(options)g(and)f(require)g(`)p
+Ft(--)p Fu(')150 2743 y(to)31 b(prev)m(en)m(t)g(this)f(in)m
+(terpretation.)150 2990 y Fs(4.1)68 b(Bourne)45 b(Shell)g(Builtins)150
+3150 y Fu(The)22 b(follo)m(wing)j(shell)d(builtin)h(commands)f(are)h
+(inherited)g(from)f(the)h(Bourne)g(Shell.)38 b(These)22
+b(commands)150 3259 y(are)31 b(implemen)m(ted)g(as)f(sp)s(eci\014ed)g
+(b)m(y)g(the)h Fm(posix)e Fu(standard.)150 3425 y Ft(:)h
+Fu(\(a)h(colon\))870 3534 y Ft(:)47 b([)p Fj(arguments)p
+Ft(])630 3671 y Fu(Do)c(nothing)f(b)s(ey)m(ond)g(expanding)f
+Fr(argumen)m(ts)46 b Fu(and)c(p)s(erforming)f(redirections.)76
+b(The)630 3781 y(return)29 b(status)i(is)f(zero.)150
+3944 y Ft(.)g Fu(\(a)h(p)s(erio)s(d\))870 4054 y Ft(.)47
+b([-p)g Fj(path)p Ft(])g Fj(filename)e Ft([)p Fj(arguments)p
+Ft(])630 4190 y Fu(The)33 b Ft(.)g Fu(command)g(reads)g(and)g(execute)h
+(commands)f(from)g(the)h Fr(\014lename)k Fu(argumen)m(t)c(in)630
+4300 y(the)d(curren)m(t)f(shell)g(con)m(text.)630 4436
+y(If)d Fr(\014lename)33 b Fu(do)s(es)28 b(not)f(con)m(tain)i(a)f
+(slash,)h Ft(.)e Fu(searc)m(hes)i(for)e(it.)41 b(If)27
+b Ft(-p)g Fu(is)g(supplied,)h Ft(.)f Fu(treats)630 4546
+y Fr(path)d Fu(as)h(a)f(colon-separated)j(list)e(of)f(directories)h(in)
+f(whic)m(h)g(to)i(\014nd)c Fr(\014lename)5 b Fu(;)27
+b(otherwise,)630 4655 y Ft(.)36 b Fu(uses)f(the)i(directories)g(in)e
+Ft(PATH)g Fu(to)i(\014nd)e Fr(\014lename)p Fu(.)58 b
+Fr(\014lename)41 b Fu(do)s(es)36 b(not)g(need)g(to)h(b)s(e)630
+4765 y(executable.)42 b(When)28 b(Bash)h(is)g(not)f(in)h
+Fm(posix)f Fu(mo)s(de,)g(it)i(searc)m(hes)f(the)g(curren)m(t)f
+(directory)630 4875 y(if)33 b Fr(\014lename)39 b Fu(is)33
+b(not)h(found)e(in)h Ft($PATH)p Fu(,)g(but)g(do)s(es)g(not)g(searc)m(h)
+h(the)g(curren)m(t)f(directory)h(if)630 4984 y Ft(-p)25
+b Fu(is)i(supplied.)38 b(If)25 b(the)h Ft(sourcepath)e
+Fu(option)i(\(see)h(Section)g(4.3.2)h([The)e(Shopt)f(Builtin],)630
+5094 y(page)31 b(77\))h(is)e(turned)f(o\013,)i Ft(.)f
+Fu(do)s(es)g(not)h(searc)m(h)g Ft(PATH)p Fu(.)630 5230
+y(If)39 b(an)m(y)h Fr(argumen)m(ts)j Fu(are)d(supplied,)h(they)e(b)s
+(ecome)h(the)g(p)s(ositional)g(parameters)g(when)630
+5340 y Fr(\014lename)c Fu(is)30 b(executed.)42 b(Otherwise)30
+b(the)g(p)s(ositional)i(parameters)e(are)h(unc)m(hanged.)p
+eop end
+%%Page: 52 58
+TeXDict begin 52 57 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(52)630 299 y(If)27
+b(the)h Ft(-T)f Fu(option)h(is)g(enabled,)g Ft(.)f Fu(inherits)g(an)m
+(y)h(trap)g(on)f Ft(DEBUG)p Fu(;)h(if)f(it)h(is)g(not,)g(an)m(y)g
+Ft(DEBUG)630 408 y Fu(trap)k(string)g(is)g(sa)m(v)m(ed)h(and)f
+(restored)g(around)f(the)i(call)g(to)g Ft(.)p Fu(,)f(and)g
+Ft(.)g Fu(unsets)f(the)h Ft(DEBUG)630 518 y Fu(trap)f(while)h(it)g
+(executes.)46 b(If)31 b Ft(-T)g Fu(is)g(not)h(set,)h(and)d(the)i
+(sourced)f(\014le)h(c)m(hanges)h(the)e Ft(DEBUG)630 628
+y Fu(trap,)40 b(the)e(new)f(v)-5 b(alue)38 b(p)s(ersists)f(after)h
+Ft(.)g Fu(completes.)64 b(The)37 b(return)g(status)h(is)g(the)g(exit)
+630 737 y(status)h(of)f(the)h(last)g(command)f(executed)h(from)f
+Fr(\014lename)p Fu(,)i(or)f(zero)g(if)f(no)g(commands)630
+847 y(are)33 b(executed.)50 b(If)32 b Fr(\014lename)39
+b Fu(is)33 b(not)g(found,)g(or)g(cannot)g(b)s(e)g(read,)g(the)h(return)
+e(status)h(is)630 956 y(non-zero.)41 b(This)30 b(builtin)g(is)g(equiv)
+-5 b(alen)m(t)32 b(to)f Ft(source)p Fu(.)150 1107 y Ft(break)870
+1237 y(break)46 b([)p Fj(n)p Ft(])630 1367 y Fu(Exit)35
+b(from)g(a)g Ft(for)p Fu(,)g Ft(while)p Fu(,)g Ft(until)p
+Fu(,)g(or)g Ft(select)e Fu(lo)s(op.)55 b(If)34 b Fr(n)h
+Fu(is)g(supplied,)g Ft(break)e Fu(exits)630 1477 y(the)27
+b Fr(n)p Fu(th)e(enclosing)j(lo)s(op.)39 b Fr(n)26 b
+Fu(m)m(ust)g(b)s(e)g(greater)h(than)f(or)h(equal)g(to)g(1.)40
+b(The)25 b(return)h(status)630 1587 y(is)k(zero)i(unless)d
+Fr(n)h Fu(is)g(not)h(greater)h(than)e(or)g(equal)h(to)g(1.)150
+1737 y Ft(cd)870 1867 y(cd)47 b([-L])g([-@])f([)p Fj(directory)p
+Ft(])870 1977 y(cd)h(-P)g([-e])g([-@])g([)p Fj(directory)p
+Ft(])630 2107 y Fu(Change)27 b(the)g(curren)m(t)f(w)m(orking)h
+(directory)g(to)h Fr(directory)p Fu(.)40 b(If)26 b Fr(directory)35
+b Fu(is)27 b(not)g(supplied,)630 2217 y(the)37 b(v)-5
+b(alue)37 b(of)g(the)f Ft(HOME)g Fu(shell)h(v)-5 b(ariable)37
+b(is)g(used)f(as)g Fr(directory)p Fu(.)60 b(If)37 b(the)f(shell)h(v)-5
+b(ariable)630 2326 y Ft(CDPATH)27 b Fu(exists,)i(and)f
+Fr(directory)37 b Fu(do)s(es)28 b(not)g(b)s(egin)g(with)g(a)h(slash,)g
+Ft(cd)e Fu(uses)h(it)h(as)g(a)f(searc)m(h)630 2436 y(path:)38
+b Ft(cd)26 b Fu(searc)m(hes)h(eac)m(h)g(directory)f(name)g(in)g
+Ft(CDPATH)e Fu(for)i Fr(directory)p Fu(,)i(with)e(alternativ)m(e)630
+2545 y(directory)i(names)g(in)f Ft(CDPATH)f Fu(separated)i(b)m(y)f(a)h
+(colon)h(\(`)p Ft(:)p Fu('\).)40 b(A)28 b(n)m(ull)g(directory)g(name)f
+(in)630 2655 y Ft(CDPATH)i Fu(means)h(the)h(same)f(thing)h(as)f(the)h
+(curren)m(t)f(directory)-8 b(.)630 2785 y(The)31 b Ft(-P)h
+Fu(option)g(means)g(not)g(to)h(follo)m(w)g(sym)m(b)s(olic)g(links:)44
+b(sym)m(b)s(olic)32 b(links)g(are)g(resolv)m(ed)630 2895
+y(while)45 b Ft(cd)f Fu(is)h(tra)m(v)m(ersing)i Fr(directory)53
+b Fu(and)44 b(b)s(efore)h(pro)s(cessing)f(an)h(instance)h(of)f
+Ft(..)f Fu(in)630 3004 y Fr(directory)p Fu(.)630 3134
+y(By)34 b(default,)h(or)e(when)g(the)g Ft(-L)g Fu(option)h(is)g
+(supplied,)f(sym)m(b)s(olic)h(links)f(in)h Fr(directory)42
+b Fu(are)630 3244 y(resolv)m(ed)31 b(after)g Ft(cd)f
+Fu(pro)s(cesses)g(an)g(instance)h(of)g Ft(..)f Fu(in)g
+Fr(directory)p Fu(.)630 3374 y(If)c Ft(..)g Fu(app)s(ears)g(in)g
+Fr(directory)p Fu(,)j Ft(cd)d Fu(pro)s(cesses)g(it)h(b)m(y)g(remo)m
+(ving)g(the)g(immediately)h(preced-)630 3484 y(ing)37
+b(pathname)g(comp)s(onen)m(t,)j(bac)m(k)e(to)g(a)f(slash)g(or)h(the)f
+(b)s(eginning)g(of)g Fr(directory)p Fu(,)j(and)630 3593
+y(v)m(erifying)35 b(that)g(the)f(p)s(ortion)g(of)g Fr(directory)42
+b Fu(it)35 b(has)f(pro)s(cessed)g(to)g(that)h(p)s(oin)m(t)f(is)g(still)
+i(a)630 3703 y(v)-5 b(alid)38 b(directory)g(name)g(after)g(remo)m(ving)
+g(the)g(pathname)f(comp)s(onen)m(t.)63 b(If)37 b(it)h(is)g(not)g(a)630
+3813 y(v)-5 b(alid)31 b(directory)g(name,)f Ft(cd)g Fu(returns)f(a)i
+(non-zero)g(status.)630 3943 y(If)i(the)h Ft(-e)f Fu(option)h(is)g
+(supplied)e(with)i Ft(-P)f Fu(and)g Ft(cd)g Fu(cannot)h(successfully)g
+(determine)g(the)630 4052 y(curren)m(t)c(w)m(orking)h(directory)g
+(after)f(a)h(successful)f(directory)h(c)m(hange,)h(it)e(returns)g(a)g
+(non-)630 4162 y(zero)h(status.)630 4292 y(On)41 b(systems)h(that)h
+(supp)s(ort)d(it,)46 b(the)c Ft(-@)g Fu(option)g(presen)m(ts)g(the)g
+(extended)g(attributes)630 4402 y(asso)s(ciated)32 b(with)e(a)h(\014le)
+f(as)h(a)f(directory)-8 b(.)630 4532 y(If)35 b Fr(directory)44
+b Fu(is)36 b(`)p Ft(-)p Fu(',)h(it)f(is)g(con)m(v)m(erted)h(to)f
+Ft($OLDPWD)e Fu(b)s(efore)h(attempting)i(the)e(directory)630
+4641 y(c)m(hange.)630 4771 y(If)d Ft(cd)f Fu(uses)h(a)h(non-empt)m(y)f
+(directory)h(name)f(from)g Ft(CDPATH)p Fu(,)f(or)h(if)g(`)p
+Ft(-)p Fu(')h(is)f(the)g(\014rst)g(argu-)630 4881 y(men)m(t,)g(and)f
+(the)g(directory)h(c)m(hange)h(is)e(successful,)h Ft(cd)e
+Fu(writes)i(the)f(absolute)h(pathname)630 4991 y(of)f(the)f(new)g(w)m
+(orking)h(directory)g(to)g(the)f(standard)g(output.)630
+5121 y(If)i(the)i(directory)f(c)m(hange)h(is)f(successful,)h
+Ft(cd)e Fu(sets)h(the)h(v)-5 b(alue)33 b(of)g(the)g Ft(PWD)f
+Fu(en)m(vironmen)m(t)630 5230 y(v)-5 b(ariable)32 b(to)g(the)f(new)g
+(directory)g(name,)h(and)e(sets)i(the)f Ft(OLDPWD)e Fu(en)m(vironmen)m
+(t)j(v)-5 b(ariable)630 5340 y(to)31 b(the)g(v)-5 b(alue)31
+b(of)f(the)h(curren)m(t)f(w)m(orking)g(directory)h(b)s(efore)f(the)h(c)
+m(hange.)p eop end
+%%Page: 53 59
+TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)h(Shell)f
+(Builtin)h(Commands)2079 b(53)630 299 y(The)29 b(return)g(status)h(is)f
+(zero)i(if)e(the)h(directory)g(is)g(successfully)g(c)m(hanged,)g
+(non-zero)g(oth-)630 408 y(erwise.)150 566 y Ft(continue)870
+699 y(continue)46 b([)p Fj(n)p Ft(])630 833 y(continue)41
+b Fu(resumes)h(the)h(next)g(iteration)h(of)f(an)g(enclosing)g
+Ft(for)p Fu(,)j Ft(while)p Fu(,)e Ft(until)p Fu(,)h(or)630
+942 y Ft(select)29 b Fu(lo)s(op.)41 b(If)30 b Fr(n)g
+Fu(is)g(supplied,)f(Bash)i(resumes)f(the)g(execution)i(of)f(the)f
+Fr(n)p Fu(th)g(enclosing)630 1052 y(lo)s(op.)45 b Fr(n)31
+b Fu(m)m(ust)g(b)s(e)g(greater)i(than)e(or)h(equal)g(to)g(1.)45
+b(The)31 b(return)g(status)h(is)f(zero)i(unless)d Fr(n)630
+1161 y Fu(is)g(not)h(greater)h(than)e(or)g(equal)h(to)g(1.)150
+1319 y Ft(eval)870 1452 y(eval)47 b([)p Fj(arguments)p
+Ft(])630 1585 y Fu(The)27 b Fr(argumen)m(ts)k Fu(are)c(concatenated)i
+(together)g(in)m(to)f(a)f(single)h(command,)g(separated)f(b)m(y)630
+1695 y(spaces.)40 b(Bash)28 b(then)f(reads)h(and)f(executes)i(this)e
+(command)h(and)f(returns)f(its)i(exit)h(status)630 1805
+y(as)g(the)f(exit)h(status)g(of)g Ft(eval)p Fu(.)39 b(If)27
+b(there)i(are)g(no)f(argumen)m(ts)h(or)f(only)h(empt)m(y)f(argumen)m
+(ts,)630 1914 y(the)j(return)e(status)i(is)f(zero.)150
+2071 y Ft(exec)870 2205 y(exec)47 b([-cl])f([-a)h Fj(name)p
+Ft(])f([)p Fj(command)g Ft([)p Fj(arguments)p Ft(]])630
+2338 y Fu(If)36 b Fr(command)k Fu(is)c(supplied,)h(it)g(replaces)h(the)
+e(shell)h(without)f(creating)i(a)f(new)f(pro)s(cess.)630
+2448 y Fr(command)43 b Fu(cannot)d(b)s(e)e(a)i(shell)f(builtin)g(or)h
+(function.)67 b(The)39 b Fr(argumen)m(ts)k Fu(b)s(ecome)d(the)630
+2557 y(argumen)m(ts)g(to)h Fr(command)i Fu(If)d(the)g
+Ft(-l)f Fu(option)h(is)g(supplied,)h(the)g(shell)f(places)g(a)h(dash)
+630 2667 y(at)g(the)g(b)s(eginning)f(of)h(the)g(zeroth)h(argumen)m(t)f
+(passed)f(to)i Fr(command)p Fu(.)71 b(This)40 b(is)h(what)630
+2777 y(the)31 b Ft(login)f Fu(program)h(do)s(es.)42 b(The)31
+b Ft(-c)f Fu(option)i(causes)g Fr(command)i Fu(to)e(b)s(e)e(executed)i
+(with)630 2886 y(an)i(empt)m(y)h(en)m(vironmen)m(t.)54
+b(If)34 b Ft(-a)g Fu(is)h(supplied,)f(the)h(shell)g(passes)f
+Fr(name)40 b Fu(as)35 b(the)f(zeroth)630 2996 y(argumen)m(t)d(to)g
+Fr(command)p Fu(.)630 3129 y(If)h Fr(command)j Fu(cannot)e(b)s(e)f
+(executed)h(for)f(some)g(reason,)h(a)g(non-in)m(teractiv)m(e)i(shell)d
+(exits,)630 3239 y(unless)39 b(the)h Ft(execfail)e Fu(shell)i(option)h
+(is)f(enabled.)69 b(In)39 b(that)i(case,)j(it)c(returns)f(a)h(non-)630
+3348 y(zero)32 b(status.)44 b(An)31 b(in)m(teractiv)m(e)j(shell)e
+(returns)e(a)i(non-zero)g(status)f(if)h(the)f(\014le)h(cannot)g(b)s(e)
+630 3458 y(executed.)42 b(A)30 b(subshell)g(exits)h(unconditionally)g
+(if)f Ft(exec)f Fu(fails.)630 3591 y(If)42 b Fr(command)k
+Fu(is)c(not)h(sp)s(eci\014ed,)i(redirections)e(ma)m(y)g(b)s(e)f(used)g
+(to)h(a\013ect)h(the)f(curren)m(t)630 3701 y(shell)33
+b(en)m(vironmen)m(t.)48 b(If)32 b(there)h(are)g(no)f(redirection)h
+(errors,)g(the)g(return)e(status)i(is)g(zero;)630 3810
+y(otherwise)e(the)f(return)g(status)g(is)h(non-zero.)150
+3968 y Ft(exit)870 4101 y(exit)47 b([)p Fj(n)p Ft(])630
+4235 y Fu(Exit)30 b(the)g(shell,)h(returning)d(a)j(status)f(of)g
+Fr(n)f Fu(to)h(the)g(shell's)g(paren)m(t.)41 b(If)30
+b Fr(n)f Fu(is)h(omitted,)h(the)630 4344 y(exit)c(status)g(is)g(that)g
+(of)g(the)g(last)g(command)f(executed.)41 b(An)m(y)26
+b(trap)h(on)f Ft(EXIT)f Fu(is)i(executed)630 4454 y(b)s(efore)j(the)h
+(shell)f(terminates.)150 4611 y Ft(export)870 4744 y(export)46
+b([-fn])g([-p])h([)p Fj(name)p Ft([=)p Fj(value)p Ft(]])630
+4878 y Fu(Mark)34 b(eac)m(h)h Fr(name)k Fu(to)c(b)s(e)e(passed)g(to)i
+(subsequen)m(tly)e(executed)i(commands)e(in)h(the)g(en-)630
+4987 y(vironmen)m(t.)75 b(If)42 b(the)f Ft(-f)h Fu(option)g(is)g
+(supplied,)h(the)f Fr(name)5 b Fu(s)42 b(refer)g(to)g(shell)g
+(functions;)630 5097 y(otherwise)31 b(the)f(names)h(refer)f(to)h(shell)
+f(v)-5 b(ariables.)630 5230 y(The)31 b Ft(-n)f Fu(option)i(means)f(to)h
+(unexp)s(ort)e(eac)m(h)j(name:)42 b(no)32 b(longer)f(mark)g(it)h(for)f
+(exp)s(ort.)43 b(If)630 5340 y(no)37 b Fr(name)5 b Fu(s)36
+b(are)h(supplied,)h(or)e(if)h(the)g Ft(-p)f Fu(option)h(is)g(giv)m(en,)
+j Ft(export)35 b Fu(displa)m(ys)h(a)h(list)h(of)p eop
+end
+%%Page: 54 60
+TeXDict begin 54 59 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(54)630 299 y(names)26
+b(of)g(all)h(exp)s(orted)f(v)-5 b(ariables)26 b(on)g(the)g(standard)g
+(output.)38 b(The)26 b Ft(-p)f Fu(option)i(displa)m(ys)630
+408 y(output)j(in)g(a)h(form)f(that)h(ma)m(y)g(b)s(e)e(reused)h(as)h
+(input.)630 544 y Ft(export)e Fu(allo)m(ws)k(the)e(v)-5
+b(alue)31 b(of)h(a)f(v)-5 b(ariable)32 b(to)g(b)s(e)e(set)i(at)f(the)g
+(same)h(time)g(it)f(is)g(exp)s(orted)630 653 y(or)e(unexp)s(orted)f(b)m
+(y)g(follo)m(wing)j(the)e(v)-5 b(ariable)30 b(name)f(with)f(=)p
+Fr(v)-5 b(alue)p Fu(.)41 b(This)28 b(sets)h(the)g(v)-5
+b(alue)630 763 y(of)31 b(the)f(v)-5 b(ariable)31 b(is)g(to)g
+Fr(v)-5 b(alue)36 b Fu(while)30 b(mo)s(difying)g(the)g(exp)s(ort)h
+(attribute.)630 898 y(The)e(return)e(status)j(is)f(zero)h(unless)e(an)h
+(in)m(v)-5 b(alid)29 b(option)h(is)f(supplied,)f(one)i(of)f(the)g
+(names)630 1008 y(is)k(not)g(a)h(v)-5 b(alid)33 b(shell)h(v)-5
+b(ariable)33 b(name,)i(or)e Ft(-f)f Fu(is)h(supplied)f(with)h(a)g(name)
+g(that)h(is)f(not)h(a)630 1118 y(shell)d(function.)150
+1279 y Ft(false)870 1414 y(false)630 1549 y Fu(Do)s(es)g(nothing;)g
+(returns)e(a)h(non-zero)h(status.)150 1711 y Ft(getopts)870
+1846 y(getopts)46 b Fj(optstring)f(name)i Ft([)p Fj(arg)f
+Ft(...])630 1981 y(getopts)24 b Fu(is)i(used)f(b)m(y)h(shell)g(scripts)
+g(or)g(functions)f(to)i(parse)f(p)s(ositional)g(parameters)h(and)630
+2091 y(obtain)35 b(options)h(and)e(their)h(argumen)m(ts.)55
+b Fr(optstring)43 b Fu(con)m(tains)36 b(the)f(option)g(c)m(haracters)
+630 2201 y(to)h(b)s(e)f(recognized;)k(if)c(a)h(c)m(haracter)h(is)e
+(follo)m(w)m(ed)i(b)m(y)e(a)h(colon,)i(the)d(option)h(is)g(exp)s(ected)
+630 2310 y(to)g(ha)m(v)m(e)h(an)f(argumen)m(t,)h(whic)m(h)f(should)e(b)
+s(e)h(separated)h(from)g(it)g(b)m(y)f(whitespace.)57
+b(The)630 2420 y(colon)31 b(\(`)p Ft(:)p Fu('\))h(and)d(question)i
+(mark)f(\(`)p Ft(?)p Fu('\))h(ma)m(y)g(not)g(b)s(e)f(used)f(as)i
+(option)g(c)m(haracters.)630 2555 y(Eac)m(h)38 b(time)g(it)g(is)f(in)m
+(v)m(ok)m(ed,)k Ft(getopts)35 b Fu(places)j(the)f(next)h(option)f(in)g
+(the)h(shell)f(v)-5 b(ariable)630 2665 y Fr(name)p Fu(,)28
+b(initializing)h Fr(name)j Fu(if)27 b(it)h(do)s(es)f(not)g(exist,)i
+(and)d(the)h(index)g(of)g(the)g(next)g(argumen)m(t)630
+2774 y(to)34 b(b)s(e)f(pro)s(cessed)g(in)m(to)i(the)f(v)-5
+b(ariable)34 b Ft(OPTIND)p Fu(.)48 b Ft(OPTIND)32 b Fu(is)i
+(initialized)h(to)g(1)f(eac)m(h)g(time)630 2884 y(the)k(shell)f(or)h(a)
+g(shell)f(script)h(is)f(in)m(v)m(ok)m(ed.)63 b(When)38
+b(an)f(option)h(requires)f(an)g(argumen)m(t,)630 2993
+y Ft(getopts)28 b Fu(places)k(that)f(argumen)m(t)f(in)m(to)i(the)e(v)-5
+b(ariable)31 b Ft(OPTARG)p Fu(.)630 3129 y(The)j(shell)g(do)s(es)h(not)
+f(reset)h Ft(OPTIND)e Fu(automatically;)39 b(it)c(m)m(ust)g(b)s(e)e
+(man)m(ually)i(reset)g(b)s(e-)630 3238 y(t)m(w)m(een)e(m)m(ultiple)f
+(calls)g(to)g Ft(getopts)e Fu(within)h(the)g(same)h(shell)g(in)m(v)m(o)
+s(cation)h(to)g(use)e(a)g(new)630 3348 y(set)g(of)f(parameters.)630
+3483 y(When)i(it)g(reac)m(hes)h(the)e(end)h(of)f(options,)i
+Ft(getopts)d Fu(exits)i(with)g(a)g(return)f(v)-5 b(alue)32
+b(greater)630 3593 y(than)39 b(zero.)67 b Ft(OPTIND)38
+b Fu(is)h(set)g(to)h(the)f(index)g(of)g(the)g(\014rst)f(non-option)i
+(argumen)m(t,)i(and)630 3703 y Fr(name)36 b Fu(is)30
+b(set)h(to)g(`)p Ft(?)p Fu('.)630 3838 y Ft(getopts)c
+Fu(normally)j(parses)e(the)i(p)s(ositional)g(parameters,)g(but)e(if)i
+(more)f(argumen)m(ts)h(are)630 3948 y(supplied)f(as)i
+Fr(arg)38 b Fu(v)-5 b(alues,)31 b Ft(getopts)e Fu(parses)h(those)h
+(instead.)630 4083 y Ft(getopts)37 b Fu(can)i(rep)s(ort)f(errors)g(in)h
+(t)m(w)m(o)h(w)m(a)m(ys.)67 b(If)38 b(the)h(\014rst)g(c)m(haracter)h
+(of)f Fr(optstring)47 b Fu(is)630 4193 y(a)41 b(colon,)k
+Ft(getopts)39 b Fu(uses)h Fl(silent)50 b Fu(error)40
+b(rep)s(orting.)72 b(In)40 b(normal)h(op)s(eration,)j
+Ft(getopts)630 4302 y Fu(prin)m(ts)26 b(diagnostic)i(messages)g(when)e
+(it)h(encoun)m(ters)g(in)m(v)-5 b(alid)27 b(options)g(or)g(missing)f
+(option)630 4412 y(argumen)m(ts.)63 b(If)37 b(the)h(v)-5
+b(ariable)38 b Ft(OPTERR)e Fu(is)i(set)g(to)g(0,)i Ft(getopts)c
+Fu(do)s(es)h(not)h(displa)m(y)g(an)m(y)630 4521 y(error)30
+b(messages,)i(ev)m(en)f(if)f(the)h(\014rst)e(c)m(haracter)j(of)f
+Ft(optstring)d Fu(is)i(not)h(a)f(colon.)630 4657 y(If)i
+Ft(getopts)e Fu(detects)j(an)g(in)m(v)-5 b(alid)32 b(option,)i(it)f
+(places)g(`)p Ft(?)p Fu(')f(in)m(to)h Fr(name)38 b Fu(and,)32
+b(if)g(not)h(silen)m(t,)630 4766 y(prin)m(ts)e(an)h(error)f(message)i
+(and)e(unsets)g Ft(OPTARG)p Fu(.)42 b(If)31 b Ft(getopts)f
+Fu(is)i(silen)m(t,)h(it)f(assigns)g(the)630 4876 y(option)f(c)m
+(haracter)h(found)d(to)i Ft(OPTARG)e Fu(and)g(do)s(es)h(not)h(prin)m(t)
+f(a)h(diagnostic)h(message.)630 5011 y(If)21 b(a)h(required)f(argumen)m
+(t)h(is)g(not)g(found,)g(and)f Ft(getopts)f Fu(is)h(not)h(silen)m(t,)j
+(it)d(sets)g(the)g(v)-5 b(alue)22 b(of)630 5121 y Fr(name)32
+b Fu(to)27 b(a)g(question)g(mark)f(\(`)p Ft(?)p Fu('\),)j(unsets)d
+Ft(OPTARG)p Fu(,)g(and)g(prin)m(ts)g(a)h(diagnostic)h(message.)630
+5230 y(If)i Ft(getopts)f Fu(is)i(silen)m(t,)h(it)f(sets)h(the)f(v)-5
+b(alue)31 b(of)g Fr(name)36 b Fu(to)31 b(a)g(colon)h(\(`)p
+Ft(:)p Fu('\),)g(and)e(sets)i Ft(OPTARG)630 5340 y Fu(to)f(the)g
+(option)g(c)m(haracter)g(found.)p eop end
+%%Page: 55 61
+TeXDict begin 55 60 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(55)630 299 y Ft(getopts)28
+b Fu(returns)h(true)h(if)g(an)g(option,)h(sp)s(eci\014ed)e(or)h(unsp)s
+(eci\014ed,)f(is)h(found.)39 b(It)30 b(returns)630 408
+y(false)h(when)e(it)i(encoun)m(ters)g(the)g(end)e(of)i(options)g(or)f
+(if)g(an)h(error)f(o)s(ccurs.)150 573 y Ft(hash)870 710
+y(hash)47 b([-r])f([-p)h Fj(filename)p Ft(])e([-dt])i([)p
+Fj(name)p Ft(])630 847 y Fu(Eac)m(h)37 b(time)h Ft(hash)d
+Fu(is)i(in)m(v)m(ok)m(ed,)j(it)d(remem)m(b)s(ers)f(the)h(full)f
+(\014lenames)h(of)f(the)h(commands)630 956 y(sp)s(eci\014ed)c(as)i
+Fr(name)k Fu(argumen)m(ts,)c(so)g(they)f(need)g(not)g(b)s(e)f(searc)m
+(hed)i(for)f(on)g(subsequen)m(t)630 1066 y(in)m(v)m(o)s(cations.)79
+b(The)41 b(commands)h(are)h(found)e(b)m(y)h(searc)m(hing)i(through)d
+(the)i(directories)630 1176 y(listed)32 b(in)g Ft($PATH)p
+Fu(.)43 b(An)m(y)32 b(previously-remem)m(b)s(ered)f(\014lename)h(asso)s
+(ciated)h(with)e Fr(name)37 b Fu(is)630 1285 y(discarded.)51
+b(The)33 b Ft(-p)g Fu(option)i(inhibits)e(the)h(path)g(searc)m(h,)h
+(and)e Ft(hash)g Fu(uses)h Fr(\014lename)39 b Fu(as)630
+1395 y(the)31 b(lo)s(cation)h(of)e Fr(name)p Fu(.)630
+1532 y(The)35 b Ft(-r)g Fu(option)h(causes)g(the)g(shell)g(to)h(forget)
+f(all)h(remem)m(b)s(ered)e(lo)s(cations.)58 b(Assigning)630
+1641 y(to)31 b(the)f Ft(PATH)e Fu(v)-5 b(ariable)31 b(also)g(clears)g
+(all)g(hashed)e(\014lenames.)40 b(The)30 b Ft(-d)f Fu(option)h(causes)h
+(the)630 1751 y(shell)g(to)g(forget)g(the)g(remem)m(b)s(ered)e(lo)s
+(cation)j(of)f(eac)m(h)g Fr(name)p Fu(.)630 1888 y(If)38
+b(the)h Ft(-t)f Fu(option)h(is)g(supplied,)g Ft(hash)f
+Fu(prin)m(ts)g(the)h(full)f(pathname)h(corresp)s(onding)e(to)630
+1998 y(eac)m(h)29 b Fr(name)p Fu(.)40 b(If)28 b(m)m(ultiple)h
+Fr(name)k Fu(argumen)m(ts)c(are)f(supplied)f(with)h Ft(-t)p
+Fu(,)g Ft(hash)f Fu(prin)m(ts)h(eac)m(h)630 2107 y Fr(name)i
+Fu(b)s(efore)24 b(the)h(corresp)s(onding)f(hashed)f(full)i(path.)38
+b(The)24 b Ft(-l)g Fu(option)i(displa)m(ys)e(output)630
+2217 y(in)30 b(a)h(format)g(that)f(ma)m(y)h(b)s(e)f(reused)g(as)g
+(input.)630 2354 y(If)38 b(no)g(argumen)m(ts)g(are)h(giv)m(en,)i(or)d
+(if)h(only)f Ft(-l)g Fu(is)g(supplied,)h Ft(hash)e Fu(prin)m(ts)h
+(information)630 2463 y(ab)s(out)d(remem)m(b)s(ered)g(commands.)57
+b(The)35 b Ft(-t)p Fu(,)h Ft(-d)p Fu(,)h(and)e Ft(-p)g
+Fu(options)h(\(the)g(options)g(that)630 2573 y(act)28
+b(on)f(the)h Fr(name)k Fu(argumen)m(ts\))c(are)f(m)m(utually)h
+(exclusiv)m(e.)41 b(Only)26 b(one)i(will)f(b)s(e)g(activ)m(e.)41
+b(If)630 2682 y(more)25 b(than)h(one)f(is)h(supplied,)f
+Ft(-t)g Fu(has)g(higher)g(priorit)m(y)g(than)g Ft(-p)p
+Fu(,)h(and)f(b)s(oth)g(ha)m(v)m(e)h(higher)630 2792 y(priorit)m(y)31
+b(than)f Ft(-d)p Fu(.)630 2929 y(The)38 b(return)g(status)h(is)g(zero)h
+(unless)e(a)i Fr(name)k Fu(is)39 b(not)g(found)e(or)i(an)g(in)m(v)-5
+b(alid)40 b(option)f(is)630 3039 y(supplied.)150 3203
+y Ft(pwd)870 3340 y(pwd)47 b([-LP])630 3477 y Fu(Prin)m(t)29
+b(the)g(absolute)h(pathname)e(of)h(the)h(curren)m(t)e(w)m(orking)h
+(directory)-8 b(.)42 b(If)28 b(the)h Ft(-P)f Fu(option)630
+3587 y(is)41 b(supplied,)i(or)f(the)f Ft(-o)30 b(physical)39
+b Fu(option)j(to)g(the)f Ft(set)g Fu(builtin)g(\(see)h(Section)g(4.3.1)
+630 3696 y([The)35 b(Set)f(Builtin],)j(page)f(72\))g(is)f(enabled,)h
+(the)f(pathname)f(prin)m(ted)g(will)i(not)f(con)m(tain)630
+3806 y(sym)m(b)s(olic)29 b(links.)39 b(If)28 b(the)h
+Ft(-L)e Fu(option)i(is)g(supplied,)e(the)i(pathname)f(prin)m(ted)g(ma)m
+(y)h(con)m(tain)630 3915 y(sym)m(b)s(olic)34 b(links.)52
+b(The)33 b(return)g(status)i(is)f(zero)h(unless)e(an)h(error)f(is)h
+(encoun)m(tered)h(while)630 4025 y(determining)30 b(the)g(name)g(of)g
+(the)g(curren)m(t)f(directory)i(or)f(an)f(in)m(v)-5 b(alid)31
+b(option)f(is)g(supplied.)150 4189 y Ft(readonly)870
+4326 y(readonly)46 b([-aAf])g([-p])g([)p Fj(name)p Ft([=)p
+Fj(value)p Ft(]])e(...)630 4463 y Fu(Mark)24 b(eac)m(h)h
+Fr(name)k Fu(as)24 b(readonly)-8 b(.)39 b(The)24 b(v)-5
+b(alues)24 b(of)g(these)g(names)g(ma)m(y)g(not)g(b)s(e)g(c)m(hanged)g
+(b)m(y)630 4573 y(subsequen)m(t)29 b(assignmen)m(t)i(or)f(unset.)41
+b(If)29 b(the)i Ft(-f)e Fu(option)i(is)f(supplied,)f(eac)m(h)i
+Fr(name)k Fu(refers)630 4682 y(to)30 b(a)f(shell)g(function.)40
+b(The)29 b Ft(-a)f Fu(option)i(means)e(eac)m(h)j Fr(name)j
+Fu(refers)28 b(to)i(an)f(indexed)f(arra)m(y)630 4792
+y(v)-5 b(ariable;)28 b(the)f Ft(-A)e Fu(option)h(means)g(eac)m(h)h
+Fr(name)k Fu(refers)26 b(to)g(an)g(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5
+b(ariable.)630 4902 y(If)35 b(b)s(oth)g(options)h(are)h(supplied,)f
+Ft(-A)f Fu(tak)m(es)i(precedence.)58 b(If)35 b(no)h Fr(name)k
+Fu(argumen)m(ts)d(are)630 5011 y(supplied,)44 b(or)f(if)f(the)g
+Ft(-p)g Fu(option)h(is)f(supplied,)i(prin)m(t)e(a)h(list)g(of)f(all)h
+(readonly)g(names.)630 5121 y(The)32 b(other)g(options)g(ma)m(y)h(b)s
+(e)f(used)f(to)i(restrict)g(the)f(output)g(to)h(a)f(subset)g(of)g(the)g
+(set)h(of)630 5230 y(readonly)26 b(names.)40 b(The)25
+b Ft(-p)h Fu(option)g(displa)m(ys)h(output)f(in)f(a)i(format)g(that)f
+(ma)m(y)h(b)s(e)f(reused)630 5340 y(as)31 b(input.)p
+eop end
+%%Page: 56 62
+TeXDict begin 56 61 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y Ft(readonly)25
+b Fu(allo)m(ws)j(the)f(v)-5 b(alue)27 b(of)h(a)f(v)-5
+b(ariable)28 b(to)f(b)s(e)g(set)g(at)h(the)f(same)g(time)h(the)f
+(readonly)630 408 y(attribute)j(is)f(c)m(hanged)g(b)m(y)g(follo)m(wing)
+h(the)g(v)-5 b(ariable)29 b(name)g(with)g(=)p Fr(v)-5
+b(alue)p Fu(.)40 b(This)28 b(sets)i(the)630 518 y(v)-5
+b(alue)31 b(of)f(the)h(v)-5 b(ariable)31 b(is)g(to)g
+Fr(v)-5 b(alue)36 b Fu(while)30 b(mo)s(difying)g(the)g(readonly)h
+(attribute.)630 647 y(The)g(return)f(status)h(is)h(zero)g(unless)e(an)h
+(in)m(v)-5 b(alid)32 b(option)g(is)f(supplied,)f(one)i(of)f(the)h
+Fr(name)630 757 y Fu(argumen)m(ts)38 b(is)g(not)g(a)h(v)-5
+b(alid)38 b(shell)g(v)-5 b(ariable)39 b(or)f(function)f(name,)j(or)e
+(the)g Ft(-f)g Fu(option)g(is)630 866 y(supplied)29 b(with)h(a)h(name)f
+(that)h(is)g(not)f(a)h(shell)g(function.)150 1014 y Ft(return)870
+1143 y(return)46 b([)p Fj(n)p Ft(])630 1272 y Fu(Stop)22
+b(executing)h(a)f(shell)g(function)g(or)f(sourced)h(\014le)g(and)f
+(return)g(the)h(v)-5 b(alue)22 b Fr(n)g Fu(to)g(its)g(caller.)630
+1382 y(If)38 b Fr(n)h Fu(is)g(not)g(supplied,)h(the)f(return)e(v)-5
+b(alue)40 b(is)f(the)g(exit)g(status)g(of)g(the)g(last)h(command)630
+1491 y(executed.)51 b(If)33 b Ft(return)f Fu(is)i(executed)g(b)m(y)g(a)
+g(trap)f(handler,)h(the)g(last)g(command)f(used)g(to)630
+1601 y(determine)e(the)g(status)h(is)f(the)g(last)h(command)e(executed)
+i(b)s(efore)f(the)g(trap)g(handler.)41 b(If)630 1711
+y Ft(return)31 b Fu(is)h(executed)h(during)e(a)i Ft(DEBUG)e
+Fu(trap,)i(the)g(last)g(command)f(used)g(to)h(determine)630
+1820 y(the)26 b(status)g(is)g(the)g(last)h(command)f(executed)g(b)m(y)g
+(the)g(trap)g(handler)f(b)s(efore)g Ft(return)g Fu(w)m(as)630
+1930 y(in)m(v)m(ok)m(ed.)630 2059 y(When)f Ft(return)f
+Fu(is)h(used)f(to)i(terminate)g(execution)h(of)e(a)h(script)f(b)s(eing)
+g(executed)h(with)f(the)630 2168 y Ft(.)34 b Fu(\()p
+Ft(source)p Fu(\))g(builtin,)h(it)h(returns)d(either)i
+Fr(n)f Fu(or)h(the)g(exit)g(status)g(of)g(the)g(last)g(command)630
+2278 y(executed)d(within)f(the)g(script)g(as)g(the)g(exit)h(status)g
+(of)f(the)g(script.)43 b(If)31 b Fr(n)f Fu(is)h(supplied,)g(the)630
+2388 y(return)e(v)-5 b(alue)31 b(is)g(its)f(least)i(signi\014can)m(t)f
+(8)g(bits.)630 2516 y(An)m(y)39 b(command)f(asso)s(ciated)j(with)d(the)
+h Ft(RETURN)e Fu(trap)i(is)g(executed)g(b)s(efore)g(execution)630
+2626 y(resumes)30 b(after)h(the)f(function)g(or)h(script.)630
+2755 y(The)39 b(return)f(status)i(is)g(non-zero)g(if)f
+Ft(return)f Fu(is)h(supplied)g(a)g(non-n)m(umeric)g(argumen)m(t)630
+2865 y(or)34 b(is)g(used)f(outside)h(a)g(function)g(and)f(not)i(during)
+d(the)i(execution)h(of)f(a)h(script)f(b)m(y)f Ft(.)h
+Fu(or)630 2974 y Ft(source)p Fu(.)150 3122 y Ft(shift)870
+3251 y(shift)46 b([)p Fj(n)p Ft(])630 3380 y Fu(Shift)26
+b(the)h(p)s(ositional)g(parameters)g(to)h(the)f(left)g(b)m(y)g
+Fr(n)p Fu(:)38 b(the)27 b(p)s(ositional)g(parameters)g(from)630
+3490 y Fr(n)p Ft(+)p Fu(1)h(.)22 b(.)g(.)34 b Ft($#)22
+b Fu(are)h(renamed)g(to)g Ft($1)28 b Fu(.)22 b(.)g(.)34
+b Ft($#)p Fu(-)p Fr(n)p Fu(.)j(P)m(arameters)24 b(represen)m(ted)f(b)m
+(y)g(the)f(n)m(um)m(b)s(ers)630 3599 y Ft($#)35 b Fu(do)m(wn)g(to)h
+Ft($#)p Fu(-)p Fr(n)p Ft(+)p Fu(1)f(are)g(unset.)56 b
+Fr(n)35 b Fu(m)m(ust)g(b)s(e)g(a)h(non-negativ)m(e)h(n)m(um)m(b)s(er)d
+(less)i(than)f(or)630 3709 y(equal)f(to)f Ft($#)p Fu(.)48
+b(If)33 b Fr(n)f Fu(is)h(not)g(supplied,)g(it)h(is)f(assumed)f(to)i(b)s
+(e)e(1.)49 b(If)32 b Fr(n)h Fu(is)g(zero)h(or)f(greater)630
+3819 y(than)f Ft($#)p Fu(,)g(the)h(p)s(ositional)f(parameters)h(are)g
+(not)f(c)m(hanged.)47 b(The)31 b(return)g(status)i(is)f(zero)630
+3928 y(unless)e Fr(n)f Fu(is)i(greater)g(than)g Ft($#)e
+Fu(or)i(less)f(than)h(zero,)g(non-zero)g(otherwise.)150
+4076 y Ft(test)150 4186 y([)870 4315 y(test)47 b Fj(expr)630
+4444 y Fu(Ev)-5 b(aluate)43 b(a)f(conditional)h(expression)f
+Fr(expr)48 b Fu(and)41 b(return)g(a)h(status)g(of)g(0)g(\(true\))h(or)f
+(1)630 4554 y(\(false\).)g(Eac)m(h)31 b(op)s(erator)f(and)f(op)s(erand)
+g(m)m(ust)h(b)s(e)f(a)i(separate)g(argumen)m(t.)41 b(Expressions)630
+4663 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
+(elo)m(w)h(in)g(Section)h(6.4)h([Bash)e(Conditional)630
+4773 y(Expressions],)35 b(page)h(104.)55 b Ft(test)34
+b Fu(do)s(es)g(not)h(accept)h(an)m(y)f(options,)i(nor)d(do)s(es)g(it)h
+(accept)630 4882 y(and)28 b(ignore)g(an)h(argumen)m(t)f(of)h
+Ft(--)e Fu(as)i(signifying)f(the)h(end)e(of)i(options.)40
+b(When)28 b(using)g(the)630 4992 y Ft([)i Fu(form,)g(the)h(last)g
+(argumen)m(t)g(to)g(the)f(command)h(m)m(ust)f(b)s(e)g(a)g
+Ft(])p Fu(.)630 5121 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 5230 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5
+b(aluation)33 b(dep)s(ends)28 b(on)j(the)g(n)m(um)m(b)s(er)f(of)h
+(argumen)m(ts;)g(see)630 5340 y(b)s(elo)m(w.)41 b Ft(test)29
+b Fu(uses)h(op)s(erator)h(precedence)g(when)e(there)i(are)f(\014v)m(e)h
+(or)f(more)h(argumen)m(ts.)p eop end
+%%Page: 57 63
+TeXDict begin 57 62 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y Ft(!)30
+b Fj(expr)210 b Fu(T)-8 b(rue)30 b(if)g Fr(expr)37 b
+Fu(is)30 b(false.)630 454 y Ft(\()g Fj(expr)f Ft(\))133
+b Fu(Returns)36 b(the)i(v)-5 b(alue)37 b(of)g Fr(expr)p
+Fu(.)61 b(This)36 b(ma)m(y)i(b)s(e)f(used)f(to)i(o)m(v)m(erride)g
+(normal)1110 564 y(op)s(erator)31 b(precedence.)630 719
+y Fj(expr1)e Ft(-a)h Fj(expr2)1110 829 y Fu(T)-8 b(rue)30
+b(if)g(b)s(oth)g Fr(expr1)37 b Fu(and)30 b Fr(expr2)38
+b Fu(are)30 b(true.)630 984 y Fj(expr1)f Ft(-o)h Fj(expr2)1110
+1093 y Fu(T)-8 b(rue)30 b(if)g(either)h Fr(expr1)38 b
+Fu(or)30 b Fr(expr2)37 b Fu(is)31 b(true.)630 1249 y(The)37
+b Ft(test)f Fu(and)g Ft([)h Fu(builtins)g(ev)-5 b(aluate)39
+b(conditional)f(expressions)f(using)g(a)g(set)h(of)f(rules)630
+1358 y(based)30 b(on)g(the)h(n)m(um)m(b)s(er)e(of)h(argumen)m(ts.)630
+1513 y(0)h(argumen)m(ts)1110 1623 y(The)f(expression)g(is)g(false.)630
+1778 y(1)h(argumen)m(t)1110 1888 y(The)f(expression)g(is)g(true)h(if,)f
+(and)g(only)g(if,)h(the)g(argumen)m(t)f(is)h(not)f(n)m(ull.)630
+2043 y(2)h(argumen)m(ts)1110 2153 y(If)f(the)h(\014rst)f(argumen)m(t)h
+(is)g(`)p Ft(!)p Fu(',)g(the)g(expression)g(is)g(true)f(if)h(and)f
+(only)h(if)g(the)1110 2262 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50
+b(If)33 b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary)
+1110 2372 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f
+([Bash)g(Conditional)g(Expres-)1110 2482 y(sions],)30
+b(page)h(104\),)g(the)f(expression)g(is)f(true)h(if)f(the)h(unary)f
+(test)h(is)g(true.)40 b(If)1110 2591 y(the)33 b(\014rst)g(argumen)m(t)h
+(is)f(not)g(a)h(v)-5 b(alid)34 b(unary)e(op)s(erator,)i(the)g
+(expression)f(is)1110 2701 y(false.)630 2856 y(3)e(argumen)m(ts)1110
+2966 y(The)f(follo)m(wing)i(conditions)f(are)f(applied)h(in)f(the)g
+(order)g(listed.)1159 3098 y(1.)61 b(If)29 b(the)g(second)g(argumen)m
+(t)h(is)f(one)h(of)f(the)h(binary)e(conditional)j(op)s(era-)1290
+3208 y(tors)21 b(\(see)i(Section)f(6.4)g([Bash)g(Conditional)f
+(Expressions],)i(page)f(104\),)1290 3317 y(the)i(result)g(of)f(the)h
+(expression)g(is)g(the)f(result)h(of)g(the)g(binary)f(test)h(using)1290
+3427 y(the)35 b(\014rst)e(and)h(third)g(argumen)m(ts)h(as)f(op)s
+(erands.)52 b(The)34 b(`)p Ft(-a)p Fu(')g(and)g(`)p Ft(-o)p
+Fu(')1290 3536 y(op)s(erators)24 b(are)g(considered)g(binary)f(op)s
+(erators)h(when)f(there)h(are)h(three)1290 3646 y(argumen)m(ts.)1159
+3778 y(2.)61 b(If)41 b(the)h(\014rst)e(argumen)m(t)i(is)f(`)p
+Ft(!)p Fu(',)k(the)d(v)-5 b(alue)41 b(is)h(the)f(negation)i(of)f(the)
+1290 3888 y(t)m(w)m(o-argumen)m(t)33 b(test)e(using)f(the)g(second)h
+(and)e(third)h(argumen)m(ts.)1159 4020 y(3.)61 b(If)35
+b(the)h(\014rst)e(argumen)m(t)i(is)g(exactly)h(`)p Ft(\()p
+Fu(')f(and)f(the)g(third)g(argumen)m(t)h(is)1290 4130
+y(exactly)i(`)p Ft(\))p Fu(',)g(the)f(result)f(is)h(the)f(one-argumen)m
+(t)i(test)f(of)f(the)h(second)1290 4240 y(argumen)m(t.)1159
+4372 y(4.)61 b(Otherwise,)30 b(the)h(expression)f(is)g(false.)630
+4527 y(4)h(argumen)m(ts)1110 4637 y(The)f(follo)m(wing)i(conditions)f
+(are)f(applied)h(in)f(the)g(order)g(listed.)1159 4769
+y(1.)61 b(If)39 b(the)i(\014rst)e(argumen)m(t)h(is)g(`)p
+Ft(!)p Fu(',)j(the)d(result)f(is)h(the)g(negation)i(of)e(the)1290
+4879 y(three-argumen)m(t)k(expression)e(comp)s(osed)g(of)h(the)g
+(remaining)g(argu-)1290 4988 y(men)m(ts.)1159 5121 y(2.)61
+b(If)31 b(the)g(\014rst)f(argumen)m(t)i(is)f(exactly)i(`)p
+Ft(\()p Fu(')e(and)g(the)g(fourth)f(argumen)m(t)i(is)1290
+5230 y(exactly)38 b(`)p Ft(\))p Fu(',)f(the)f(result)g(is)g(the)g(t)m
+(w)m(o-argumen)m(t)i(test)f(of)f(the)g(second)1290 5340
+y(and)30 b(third)f(argumen)m(ts.)p eop end
+%%Page: 58 64
+TeXDict begin 58 63 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(58)1159 299 y(3.)61
+b(Otherwise,)26 b(the)f(expression)f(is)h(parsed)f(and)g(ev)-5
+b(aluated)26 b(according)g(to)1290 408 y(precedence)31
+b(using)f(the)g(rules)g(listed)h(ab)s(o)m(v)m(e.)630
+576 y(5)g(or)f(more)h(argumen)m(ts)1110 685 y(The)43
+b(expression)f(is)i(parsed)e(and)g(ev)-5 b(aluated)45
+b(according)f(to)f(precedence)1110 795 y(using)30 b(the)g(rules)g
+(listed)h(ab)s(o)m(v)m(e.)630 962 y(If)24 b(the)h(shell)g(is)f(in)h
+Fm(posix)e Fu(mo)s(de,)j(or)f(if)f(the)h(expression)f(is)h(part)f(of)h
+(the)g Ft([[)f Fu(command,)i(the)630 1072 y(`)p Ft(<)p
+Fu(')34 b(and)e(`)p Ft(>)p Fu(')i(op)s(erators)g(sort)f(using)g(the)h
+(curren)m(t)f(lo)s(cale.)52 b(If)33 b(the)h(shell)f(is)h(not)g(in)f
+Fm(posix)630 1181 y Fu(mo)s(de,)28 b(the)f Ft(test)f
+Fu(and)g(`)p Ft([)p Fu(')h(commands)g(sort)g(lexicographically)j(using)
+c(ASCI)s(I)g(ordering.)630 1320 y(The)k(historical)i(op)s
+(erator-precedence)f(parsing)f(with)g(4)h(or)f(more)h(argumen)m(ts)g
+(can)f(lead)630 1429 y(to)k(am)m(biguities)g(when)e(it)i(encoun)m(ters)
+f(strings)g(that)h(lo)s(ok)f(lik)m(e)i(primaries.)48
+b(The)33 b Fm(posix)630 1539 y Fu(standard)42 b(has)g(deprecated)i(the)
+f Ft(-a)f Fu(and)g Ft(-o)g Fu(primaries)g(and)h(enclosing)g
+(expressions)630 1649 y(within)28 b(paren)m(theses.)40
+b(Scripts)28 b(should)f(no)h(longer)h(use)f(them.)40
+b(It's)28 b(m)m(uc)m(h)g(more)h(reliable)630 1758 y(to)f(restrict)f
+(test)h(in)m(v)m(o)s(cations)h(to)e(a)g(single)h(primary)-8
+b(,)27 b(and)f(to)i(replace)g(uses)e(of)h Ft(-a)f Fu(and)h
+Ft(-o)630 1868 y Fu(with)j(the)h(shell's)f Ft(&&)g Fu(and)g
+Ft(||)g Fu(list)h(op)s(erators.)41 b(F)-8 b(or)31 b(example,)g(use)870
+2006 y Ft(test)47 b(-n)g(string1)f(&&)h(test)f(-n)i(string2)630
+2145 y Fu(instead)31 b(of)870 2283 y Ft(test)47 b(-n)g(string1)f(-a)h
+(-n)g(string2)150 2450 y(times)870 2589 y(times)630 2727
+y Fu(Prin)m(t)37 b(out)h(the)g(user)e(and)h(system)g(times)h(used)f(b)m
+(y)g(the)h(shell)f(and)g(its)h(c)m(hildren.)61 b(The)630
+2837 y(return)29 b(status)i(is)f(zero.)150 3004 y Ft(trap)870
+3142 y(trap)47 b([-lpP])f([)p Fj(action)p Ft(])f([)p
+Fj(sigspec)h Ft(...)o(])630 3281 y Fu(The)27 b Fr(action)i
+Fu(is)e(a)h(command)f(that)h(is)f(read)h(and)f(executed)h(when)e(the)i
+(shell)f(receiv)m(es)j(an)m(y)630 3390 y(of)d(the)g(signals)h
+Fr(sigsp)s(ec)p Fu(.)39 b(If)27 b Fr(action)h Fu(is)f(absen)m(t)g
+(\(and)g(there)g(is)g(a)g(single)h Fr(sigsp)s(ec)6 b
+Fu(\))27 b(or)f(equal)630 3500 y(to)j(`)p Ft(-)p Fu(',)g(eac)m(h)h(sp)s
+(eci\014ed)e Fr(sigsp)s(ec)6 b Fu('ss)28 b(disp)s(osition)g(is)h(reset)
+g(to)g(the)f(v)-5 b(alue)29 b(it)g(had)f(when)g(the)630
+3610 y(shell)k(w)m(as)h(started.)47 b(If)32 b Fr(action)h
+Fu(is)f(the)h(n)m(ull)f(string,)h(then)f(the)g(signal)h(sp)s(eci\014ed)
+f(b)m(y)g(eac)m(h)630 3719 y Fr(sigsp)s(ec)k Fu(is)30
+b(ignored)h(b)m(y)f(the)h(shell)f(and)g(commands)g(it)h(in)m(v)m(ok)m
+(es.)630 3858 y(If)44 b(no)h(argumen)m(ts)g(are)g(supplied,)j
+Ft(trap)c Fu(prin)m(ts)g(the)h(actions)h(asso)s(ciated)g(with)f(eac)m
+(h)630 3967 y(trapp)s(ed)29 b(signal)j(as)f(a)g(set)g(of)f
+Ft(trap)g Fu(commands)g(that)h(can)g(b)s(e)f(reused)g(as)h(shell)g
+(input)e(to)630 4077 y(restore)i(the)g(curren)m(t)f(signal)h(disp)s
+(ositions.)630 4215 y(If)g Fr(action)h Fu(is)g(not)f(presen)m(t)g(and)g
+Ft(-p)f Fu(has)h(b)s(een)g(supplied,)f Ft(trap)g Fu(displa)m(ys)i(the)f
+(trap)g(com-)630 4325 y(mands)44 b(asso)s(ciated)j(with)e(eac)m(h)h
+Fr(sigsp)s(ec)p Fu(,)k(or,)f(if)c(no)h Fr(sigsp)s(ec)6
+b Fu(s)44 b(are)i(supplied,)i(for)d(all)630 4434 y(trapp)s(ed)33
+b(signals,)j(as)e(a)h(set)f(of)h Ft(trap)e Fu(commands)g(that)i(can)f
+(b)s(e)g(reused)f(as)i(shell)f(input)630 4544 y(to)c(restore)g(the)g
+(curren)m(t)f(signal)h(disp)s(ositions.)40 b(The)28 b
+Ft(-P)h Fu(option)h(b)s(eha)m(v)m(es)g(similarly)-8 b(,)31
+b(but)630 4654 y(displa)m(ys)37 b(only)f(the)h(actions)h(asso)s(ciated)
+g(with)e(eac)m(h)i Fr(sigsp)s(ec)43 b Fu(argumen)m(t.)59
+b Ft(-P)36 b Fu(requires)630 4763 y(at)30 b(least)g(one)g
+Fr(sigsp)s(ec)35 b Fu(argumen)m(t.)40 b(The)29 b Ft(-P)g
+Fu(or)g Ft(-p)f Fu(options)i(ma)m(y)g(b)s(e)e(used)g(in)h(a)h(subshell)
+630 4873 y(en)m(vironmen)m(t)g(\(e.g.,)h(command)e(substitution\))g
+(and,)f(as)i(long)f(as)h(they)f(are)g(used)f(b)s(efore)630
+4982 y Ft(trap)g Fu(is)i(used)f(to)h(c)m(hange)g(a)g(signal's)h
+(handling,)e(will)h(displa)m(y)f(the)h(state)h(of)f(its)g(paren)m(t's)
+630 5092 y(traps.)630 5230 y(The)35 b Ft(-l)f Fu(option)h(prin)m(ts)g
+(a)g(list)h(of)f(signal)h(names)f(and)f(their)h(corresp)s(onding)f(n)m
+(um)m(b)s(ers.)630 5340 y(Eac)m(h)c Fr(sigsp)s(ec)k Fu(is)29
+b(either)g(a)h(signal)f(name)g(or)g(a)g(signal)h(n)m(um)m(b)s(er.)39
+b(Signal)29 b(names)g(are)g(case)p eop end
+%%Page: 59 65
+TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(59)630 299 y(insensitiv)m(e)42
+b(and)e(the)h Ft(SIG)f Fu(pre\014x)f(is)i(optional.)73
+b(If)40 b Ft(-l)g Fu(is)h(supplied)e(with)i(no)f Fr(sigsp)s(ec)630
+408 y Fu(argumen)m(ts,)31 b(it)g(prin)m(ts)f(a)g(list)h(of)g(v)-5
+b(alid)31 b(signal)g(names.)630 539 y(If)e(a)g Fr(sigsp)s(ec)35
+b Fu(is)30 b Ft(0)f Fu(or)g Ft(EXIT)p Fu(,)f Fr(action)j
+Fu(is)e(executed)h(when)f(the)g(shell)g(exits.)42 b(If)28
+b(a)i Fr(sigsp)s(ec)35 b Fu(is)630 648 y Ft(DEBUG)p Fu(,)g
+Fr(action)g Fu(is)g(executed)h(b)s(efore)e(ev)m(ery)h(simple)g
+(command,)h Ft(for)d Fu(command,)j Ft(case)630 758 y
+Fu(command,)29 b Ft(select)d Fu(command,)j(\(\()g(arithmetic)h
+(command,)e([[)h(conditional)h(command,)630 867 y(arithmetic)44
+b Ft(for)e Fu(command,)k(and)c(b)s(efore)g(the)h(\014rst)f(command)g
+(executes)i(in)f(a)g(shell)630 977 y(function.)38 b(Refer)22
+b(to)g(the)g(description)g(of)g(the)g Ft(extdebug)e Fu(shell)i(option)h
+(\(see)f(Section)h(4.3.2)630 1087 y([The)36 b(Shopt)f(Builtin],)k(page)
+e(77\))g(for)f(details)i(of)e(its)h(e\013ect)g(on)f(the)h
+Ft(DEBUG)e Fu(trap.)58 b(If)36 b(a)630 1196 y Fr(sigsp)s(ec)49
+b Fu(is)44 b Ft(RETURN)p Fu(,)h Fr(action)g Fu(is)e(executed)h(eac)m(h)
+h(time)f(a)g(shell)g(function)f(or)g(a)h(script)630 1306
+y(executed)31 b(with)f(the)h Ft(.)f Fu(or)g Ft(source)f
+Fu(builtins)h(\014nishes)f(executing.)630 1436 y(If)c(a)h
+Fr(sigsp)s(ec)31 b Fu(is)25 b Ft(ERR)p Fu(,)h Fr(action)g
+Fu(is)g(executed)g(whenev)m(er)f(a)h(pip)s(eline)f(\(whic)m(h)g(ma)m(y)
+h(consist)g(of)630 1545 y(a)31 b(single)h(simple)f(command\),)h(a)f
+(list,)h(or)f(a)h(comp)s(ound)d(command)i(returns)f(a)h(non-zero)630
+1655 y(exit)e(status,)g(sub)5 b(ject)27 b(to)i(the)f(follo)m(wing)h
+(conditions.)40 b(The)28 b Ft(ERR)f Fu(trap)g(is)h(not)g(executed)h(if)
+630 1765 y(the)24 b(failed)h(command)e(is)h(part)g(of)g(the)g(command)g
+(list)h(immediately)g(follo)m(wing)h(an)d Ft(until)630
+1874 y Fu(or)h Ft(while)f Fu(k)m(eyw)m(ord,)j(part)e(of)g(the)g(test)h
+(follo)m(wing)h(the)e Ft(if)g Fu(or)g Ft(elif)f Fu(reserv)m(ed)h(w)m
+(ords,)h(part)630 1984 y(of)37 b(a)g(command)f(executed)i(in)e(a)h
+Ft(&&)f Fu(or)h Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m
+(wing)h(the)630 2093 y(\014nal)29 b Ft(&&)g Fu(or)g Ft(||)p
+Fu(,)h(an)m(y)f(command)h(in)f(a)h(pip)s(eline)f(but)f(the)i(last,)h
+(\(sub)5 b(ject)29 b(to)h(the)g(state)h(of)630 2203 y(the)d
+Ft(pipefail)e Fu(shell)i(option\),)h(or)f(if)f(the)h(command's)g
+(return)f(status)h(is)g(b)s(eing)f(in)m(v)m(erted)630
+2313 y(using)j Ft(!)p Fu(.)40 b(These)30 b(are)h(the)g(same)g
+(conditions)f(ob)s(ey)m(ed)h(b)m(y)f(the)h Ft(errexit)d
+Fu(\()p Ft(-e)p Fu(\))j(option.)630 2443 y(When)22 b(the)g(shell)g(is)g
+(not)g(in)m(teractiv)m(e,)27 b(signals)22 b(ignored)g(up)s(on)e(en)m
+(try)i(to)h(a)f(non-in)m(teractiv)m(e)630 2552 y(shell)44
+b(cannot)g(b)s(e)f(trapp)s(ed)f(or)i(reset.)81 b(In)m(teractiv)m(e)46
+b(shells)d(p)s(ermit)g(trapping)g(signals)630 2662 y(ignored)31
+b(on)f(en)m(try)-8 b(.)41 b(T)-8 b(rapp)s(ed)29 b(signals)i(that)g(are)
+g(not)g(b)s(eing)f(ignored)g(are)h(reset)g(to)g(their)630
+2771 y(original)h(v)-5 b(alues)30 b(in)g(a)h(subshell)f(or)g(subshell)f
+(en)m(vironmen)m(t)i(when)f(one)g(is)h(created.)630 2902
+y(The)g(return)g(status)i(is)f(zero)g(unless)g(a)g Fr(sigsp)s(ec)38
+b Fu(do)s(es)31 b(not)h(sp)s(ecify)g(a)g(v)-5 b(alid)33
+b(signal;)g(non-)630 3011 y(zero)e(otherwise.)150 3162
+y Ft(true)870 3292 y(true)630 3422 y Fu(Do)s(es)g(nothing,)g(returns)e
+(a)h(0)h(status.)150 3573 y Ft(umask)870 3703 y(umask)46
+b([-p])h([-S])g([)p Fj(mode)p Ft(])630 3833 y Fu(Set)30
+b(the)f(shell)h(pro)s(cess's)f(\014le)h(creation)g(mask)g(to)g
+Fr(mo)s(de)p Fu(.)40 b(If)29 b Fr(mo)s(de)34 b Fu(b)s(egins)29
+b(with)g(a)h(digit,)630 3943 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 4052 y(mask)40 b(similar)h(to)g(that)
+f(accepted)i(b)m(y)e(the)g Ft(chmod)f Fu(command.)70
+b(If)40 b Fr(mo)s(de)k Fu(is)d(omitted,)630 4162 y Ft(umask)24
+b Fu(prin)m(ts)h(the)h(curren)m(t)g(v)-5 b(alue)26 b(of)g(the)f(mask.)
+40 b(If)25 b(the)h Ft(-S)f Fu(option)h(is)g(supplied)e(without)630
+4271 y(a)41 b Fr(mo)s(de)k Fu(argumen)m(t,)f Ft(umask)39
+b Fu(prin)m(ts)h(the)g(mask)h(in)f(a)h(sym)m(b)s(olic)g(format;)46
+b(the)41 b(default)630 4381 y(output)32 b(is)g(an)g(o)s(ctal)i(n)m(um)m
+(b)s(er.)45 b(If)31 b(the)i Ft(-p)e Fu(option)i(is)f(supplied,)g(and)g
+Fr(mo)s(de)k Fu(is)d(omitted,)630 4491 y(the)e(output)e(is)i(in)f(a)h
+(form)e(that)i(ma)m(y)g(b)s(e)f(reused)g(as)g(input.)40
+b(The)30 b(return)f(status)i(is)f(zero)630 4600 y(if)38
+b(the)h(mo)s(de)f(is)g(successfully)h(c)m(hanged)g(or)f(if)h(no)f
+Fr(mo)s(de)43 b Fu(argumen)m(t)c(is)f(supplied,)i(and)630
+4710 y(non-zero)31 b(otherwise.)630 4840 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 4950 y(the)f(umask)g(is)h
+(subtracted)f(from)f Ft(7)p Fu(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i
+Ft(022)e Fu(results)h(in)g(p)s(ermissions)630 5059 y(of)d
+Ft(755)p Fu(.)150 5210 y Ft(unset)870 5340 y(unset)46
+b([-fnv])g([)p Fj(name)p Ft(])p eop end
+%%Page: 60 66
+TeXDict begin 60 65 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(60)630 299 y(Remo)m(v)m(e)36
+b(eac)m(h)f(v)-5 b(ariable)35 b(or)f(function)f Fr(name)p
+Fu(.)52 b(If)33 b(the)i Ft(-v)e Fu(option)h(is)g(giv)m(en,)j(eac)m(h)e
+Fr(name)630 408 y Fu(refers)27 b(to)h(a)g(shell)f(v)-5
+b(ariable)28 b(and)f(that)h(v)-5 b(ariable)28 b(is)f(remo)m(v)m(ed.)41
+b(If)27 b(the)g Ft(-f)g Fu(option)g(is)h(giv)m(en,)630
+518 y(the)37 b Fr(name)5 b Fu(s)37 b(refer)f(to)i(shell)f(functions,)h
+(and)e(the)h(function)g(de\014nition)f(is)h(remo)m(v)m(ed.)61
+b(If)630 628 y(the)34 b Ft(-n)e Fu(option)i(is)f(supplied,)h(and)e
+Fr(name)39 b Fu(is)33 b(a)h(v)-5 b(ariable)34 b(with)f(the)h
+Ft(nameref)d Fu(attribute,)630 737 y Fr(name)42 b Fu(will)37
+b(b)s(e)f(unset)g(rather)g(than)h(the)g(v)-5 b(ariable)37
+b(it)g(references.)60 b Ft(-n)36 b Fu(has)g(no)h(e\013ect)h(if)630
+847 y(the)h Ft(-f)g Fu(option)g(is)h(supplied.)65 b(If)39
+b(no)g(options)h(are)f(supplied,)h(eac)m(h)h Fr(name)j
+Fu(refers)39 b(to)h(a)630 956 y(v)-5 b(ariable;)29 b(if)d(there)g(is)h
+(no)f(v)-5 b(ariable)27 b(b)m(y)f(that)h(name,)h(a)e(function)g(with)g
+(that)h(name,)h(if)e(an)m(y)-8 b(,)630 1066 y(is)32 b(unset.)47
+b(Readonly)32 b(v)-5 b(ariables)33 b(and)f(functions)g(ma)m(y)h(not)f
+(b)s(e)g(unset.)46 b(When)32 b(v)-5 b(ariables)630 1176
+y(or)33 b(functions)f(are)h(remo)m(v)m(ed,)h(they)f(are)g(also)h(remo)m
+(v)m(ed)f(from)f(the)h(en)m(vironmen)m(t)g(passed)630
+1285 y(to)h(subsequen)m(t)g(commands.)50 b(Some)34 b(shell)g(v)-5
+b(ariables)34 b(ma)m(y)g(not)g(b)s(e)g(unset.)50 b(Some)34
+b(shell)630 1395 y(v)-5 b(ariables)29 b(lose)h(their)e(sp)s(ecial)h(b)s
+(eha)m(vior)g(if)f(they)h(are)g(unset;)g(suc)m(h)f(b)s(eha)m(vior)h(is)
+g(noted)f(in)630 1504 y(the)35 b(description)h(of)f(the)g(individual)g
+(v)-5 b(ariables.)56 b(The)34 b(return)g(status)i(is)f(zero)h(unless)f
+(a)630 1614 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m(y)g(not)f(b)s
+(e)g(unset.)150 1862 y Fs(4.2)68 b(Bash)45 b(Builtin)g(Commands)150
+2022 y Fu(This)c(section)h(describ)s(es)f(builtin)f(commands)h(whic)m
+(h)g(are)h(unique)e(to)j(or)e(ha)m(v)m(e)h(b)s(een)f(extended)g(in)150
+2131 y(Bash.)g(Some)30 b(of)h(these)g(commands)f(are)g(sp)s(eci\014ed)g
+(in)g(the)h Fm(posix)e Fu(standard.)150 2298 y Ft(alias)870
+2435 y(alias)46 b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p
+Ft(])d(...)o(])630 2573 y Fu(Without)26 b(argumen)m(ts)f(or)g(with)f
+(the)h Ft(-p)g Fu(option,)h Ft(alias)e Fu(prin)m(ts)g(the)h(list)h(of)f
+(aliases)h(on)f(the)630 2682 y(standard)g(output)g(in)g(a)h(form)f
+(that)h(allo)m(ws)h(them)e(to)h(b)s(e)f(reused)g(as)g(input.)39
+b(If)25 b(argumen)m(ts)630 2792 y(are)37 b(supplied,)g(de\014ne)e(an)h
+(alias)i(for)e(eac)m(h)i Fr(name)j Fu(whose)36 b Fr(v)-5
+b(alue)42 b Fu(is)37 b(giv)m(en.)59 b(If)36 b(no)g Fr(v)-5
+b(alue)630 2901 y Fu(is)31 b(giv)m(en,)h(prin)m(t)f(the)g(name)g(and)f
+(v)-5 b(alue)32 b(of)f(the)g(alias)h Fr(name)p Fu(.)42
+b(A)31 b(trailing)h(space)g(in)e Fr(v)-5 b(alue)630 3011
+y Fu(causes)44 b(the)g(next)f(w)m(ord)h(to)g(b)s(e)f(c)m(hec)m(k)m(ed)i
+(for)f(alias)h(substitution)e(when)f(the)i(alias)h(is)630
+3120 y(expanded)29 b(during)f(command)h(parsing.)40 b
+Ft(alias)28 b Fu(returns)h(true)g(unless)g(a)h Fr(name)k
+Fu(is)c(giv)m(en)630 3230 y(\(without)h(a)g(corresp)s(onding)f(=)p
+Fr(v)-5 b(alue)5 b Fu(\))32 b(for)e(whic)m(h)h(no)f(alias)i(has)f(b)s
+(een)f(de\014ned.)41 b(Aliases)630 3340 y(are)31 b(describ)s(ed)e(in)h
+(Section)h(6.6)h([Aliases],)g(page)f(108.)150 3504 y
+Ft(bind)870 3641 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lsvSVX])870
+3751 y(bind)i([-m)g Fj(keymap)p Ft(])e([-q)i Fj(function)p
+Ft(])f([-u)g Fj(function)p Ft(])g([-r)h Fj(keyseq)p Ft(])870
+3860 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870
+3970 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq[:)d
+(]shell-command)870 4080 y Ft(bind)i([-m)g Fj(keymap)p
+Ft(])e Fj(keyseq:function-name)870 4189 y Ft(bind)i([-m)g
+Fj(keymap)p Ft(])e Fj(keyseq:readline-command)870 4299
+y Ft(bind)i([-m)g Fj(keymap)p Ft(])e(-p|-P)i([)p Fj(readline-command)p
+Ft(])870 4408 y(bind)g Fj(readline-command-line)630 4545
+y Fu(Displa)m(y)38 b(curren)m(t)e(Readline)h(\(see)g(Chapter)f(8)h
+([Command)f(Line)g(Editing],)j(page)e(128\))630 4655
+y(k)m(ey)26 b(and)f(function)g(bindings,)h(bind)e(a)i(k)m(ey)g
+(sequence)g(to)h(a)e(Readline)i(function)e(or)g(macro)630
+4765 y(or)g(to)i(a)f(shell)f(command,)i(or)e(set)h(a)g(Readline)g(v)-5
+b(ariable.)40 b(Eac)m(h)26 b(non-option)g(argumen)m(t)g(is)630
+4874 y(a)c(k)m(ey)g(binding)e(or)h(command)g(as)h(it)f(w)m(ould)g(app)s
+(ear)g(in)g(a)h(Readline)f(initialization)k(\014le)c(\(see)630
+4984 y(Section)30 b(8.3)h([Readline)f(Init)g(File],)h(page)g(131\),)g
+(but)e(eac)m(h)i(binding)d(or)i(command)f(m)m(ust)630
+5093 y(b)s(e)h(passed)g(as)g(a)h(separate)g(argumen)m(t;)g(e.g.,)h(`)p
+Ft("\\C-x\\C-r":re-read-init-fi)o(le)p Fu('.)630 5230
+y(In)27 b(the)g(follo)m(wing)i(descriptions,)g(options)e(that)h(displa)
+m(y)g(output)f(in)g(a)h(form)f(a)m(v)-5 b(ailable)30
+b(to)630 5340 y(b)s(e)i(re-read)h(format)f(their)h(output)f(as)h
+(commands)f(that)h(w)m(ould)f(app)s(ear)g(in)g(a)h(Readline)p
+eop end
+%%Page: 61 67
+TeXDict begin 61 66 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y(initialization)36
+b(\014le)c(or)h(that)g(w)m(ould)g(b)s(e)f(supplied)f(as)i(individual)g
+(argumen)m(ts)g(to)g(a)g Ft(bind)630 408 y Fu(command.)630
+542 y(Options,)d(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
+(meanings:)630 701 y Ft(-m)e Fj(keymap)66 b Fu(Use)54
+b Fr(k)m(eymap)j Fu(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 810 y(bindings.)46 b(Acceptable)34
+b Fr(k)m(eymap)i Fu(names)c(are)h Ft(emacs)p Fu(,)f Ft(emacs-standard)p
+Fu(,)1110 920 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p
+Fu(,)f Ft(vi)p Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p
+Fu(,)f(and)1110 1029 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44
+b Fu(is)h(equiv)-5 b(alen)m(t)46 b(to)g Ft(vi-command)c
+Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 1139 y(synon)m(ym\);)30
+b Ft(emacs)f Fu(is)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(emacs-standard)p
+Fu(.)630 1297 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
+(Readline)g(functions.)630 1456 y Ft(-p)384 b Fu(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 1565 y(they)h(can)g(b)s(e)f(used)f(as)i(an)g
+(argumen)m(t)g(to)g(a)g(subsequen)m(t)f Ft(bind)f Fu(command)1110
+1675 y(or)37 b(in)g(a)h(Readline)f(initialization)k(\014le.)61
+b(If)36 b(argumen)m(ts)i(remain)f(after)h(op-)1110 1784
+y(tion)29 b(pro)s(cessing,)g Ft(bind)e Fu(treats)j(them)e(as)h
+(readline)g(command)f(names)h(and)1110 1894 y(restricts)i(output)f(to)h
+(those)g(names.)630 2052 y Ft(-P)384 b Fu(List)36 b(curren)m(t)f
+(Readline)h(function)f(names)h(and)f(bindings.)55 b(If)35
+b(argumen)m(ts)1110 2162 y(remain)d(after)h(option)f(pro)s(cessing,)h
+Ft(bind)e Fu(treats)i(them)f(as)h(readline)f(com-)1110
+2271 y(mand)e(names)g(and)g(restricts)h(output)f(to)h(those)g(names.)
+630 2430 y Ft(-s)384 b Fu(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
+2539 y(they)e(output)f(in)g(suc)m(h)g(a)h(w)m(a)m(y)g(that)g(they)f
+(can)h(b)s(e)f(used)g(as)g(an)g(argumen)m(t)1110 2649
+y(to)d(a)g(subsequen)m(t)f Ft(bind)f Fu(command)h(or)g(in)g(a)h
+(Readline)g(initialization)i(\014le.)630 2807 y Ft(-S)384
+b Fu(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 2917 y(they)31 b(output.)630
+3075 y Ft(-v)384 b Fu(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 3185 y(can)33 b(b)s(e)e(used)h(as)g(an)g
+(argumen)m(t)h(to)g(a)f(subsequen)m(t)g Ft(bind)f Fu(command)h(or)g(in)
+1110 3294 y(a)f(Readline)g(initialization)i(\014le.)630
+3453 y Ft(-V)384 b Fu(List)31 b(curren)m(t)f(Readline)h(v)-5
+b(ariable)31 b(names)f(and)g(v)-5 b(alues.)630 3611 y
+Ft(-f)30 b Fj(filename)1110 3720 y Fu(Read)h(k)m(ey)g(bindings)e(from)h
+Fr(\014lename)p Fu(.)630 3879 y Ft(-q)g Fj(function)1110
+3988 y Fu(Displa)m(y)i(k)m(ey)f(sequences)f(that)h(in)m(v)m(ok)m(e)i
+(the)d(named)g(Readline)h Fr(function)p Fu(.)630 4147
+y Ft(-u)f Fj(function)1110 4256 y Fu(Un)m(bind)f(all)i(k)m(ey)h
+(sequences)e(b)s(ound)f(to)i(the)f(named)g(Readline)h
+Fr(function)p Fu(.)630 4415 y Ft(-r)f Fj(keyseq)66 b
+Fu(Remo)m(v)m(e)32 b(an)m(y)f(curren)m(t)f(binding)f(for)h
+Fr(k)m(eyseq)p Fu(.)630 4573 y Ft(-x)g Fj(keyseq:shell-command)1110
+4682 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
+(whenev)m(er)f Fr(k)m(eyseq)j Fu(is)d(en)m(tered.)1110
+4792 y(The)c(separator)i(b)s(et)m(w)m(een)g Fr(k)m(eyseq)i
+Fu(and)c Fr(shell-command)36 b Fu(is)c(either)h(white-)1110
+4902 y(space)26 b(or)g(a)g(colon)h(optionally)g(follo)m(w)m(ed)g(b)m(y)
+e(whitespace.)40 b(If)25 b(the)h(separator)1110 5011
+y(is)40 b(whitespace,)i Fr(shell-command)i Fu(m)m(ust)39
+b(b)s(e)g(enclosed)h(in)f(double)g(quotes)1110 5121 y(and)30
+b(Readline)g(expands)g(an)m(y)g(of)h(its)f(sp)s(ecial)h(bac)m
+(kslash-escap)s(es)h(in)d Fr(shell-)1110 5230 y(command)47
+b Fu(b)s(efore)c(sa)m(ving)i(it.)80 b(If)43 b(the)h(separator)g(is)g(a)
+g(colon,)k(an)m(y)c(en-)1110 5340 y(closing)35 b(double)e(quotes)g(are)
+h(optional,)i(and)d(Readline)h(do)s(es)f(not)h(expand)p
+eop end
+%%Page: 62 68
+TeXDict begin 62 67 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(62)1110 299 y(the)32
+b(command)g(string)h(b)s(efore)e(sa)m(ving)j(it.)46 b(Since)32
+b(the)h(en)m(tire)g(k)m(ey)g(binding)1110 408 y(expression)28
+b(m)m(ust)h(b)s(e)f(a)h(single)h(argumen)m(t,)f(it)h(should)d(b)s(e)h
+(enclosed)i(in)e(sin-)1110 518 y(gle)38 b(quotes.)62
+b(When)37 b Fr(shell-command)42 b Fu(is)37 b(executed,)j(the)e(shell)f
+(sets)h(thex)1110 628 y Ft(READLINE_LINE)25 b Fu(v)-5
+b(ariable)29 b(to)h(the)f(con)m(ten)m(ts)h(of)f(the)g(Readline)g(line)g
+(bu\013er)1110 737 y(and)e(the)h Ft(READLINE_POINT)c
+Fu(and)j Ft(READLINE_MARK)d Fu(v)-5 b(ariables)29 b(to)f(the)g(cur-)
+1110 847 y(ren)m(t)38 b(lo)s(cation)h(of)f(the)g(insertion)f(p)s(oin)m
+(t)h(and)f(the)h(sa)m(v)m(ed)g(insertion)g(p)s(oin)m(t)1110
+956 y(\(the)c Fr(mark)6 b Fu(\),)34 b(resp)s(ectiv)m(ely)-8
+b(.)51 b(The)33 b(shell)g(assigns)h(an)m(y)f(n)m(umeric)g(argumen)m(t)
+1110 1066 y(the)28 b(user)f(supplied)f(to)j(the)f Ft(READLINE_ARGUMENT)
+23 b Fu(v)-5 b(ariable.)40 b(If)28 b(there)g(w)m(as)1110
+1176 y(no)39 b(argumen)m(t,)j(that)d(v)-5 b(ariable)40
+b(is)f(not)g(set.)68 b(If)38 b(the)h(executed)h(command)1110
+1285 y(c)m(hanges)e(the)e(v)-5 b(alue)37 b(of)g(an)m(y)g(of)g
+Ft(READLINE_LINE)p Fu(,)d Ft(READLINE_POINT)p Fu(,)h(or)1110
+1395 y Ft(READLINE_MARK)p Fu(,)i(those)i(new)f(v)-5 b(alues)38
+b(will)h(b)s(e)f(re\015ected)h(in)f(the)g(editing)1110
+1504 y(state.)630 1663 y Ft(-X)384 b Fu(List)27 b(all)i(k)m(ey)f
+(sequences)f(b)s(ound)e(to)j(shell)g(commands)e(and)h(the)g(asso)s
+(ciated)1110 1772 y(commands)42 b(in)f(a)i(format)f(that)h(can)f(b)s(e)
+g(reused)f(as)h(an)g(argumen)m(t)h(to)g(a)1110 1882 y(subsequen)m(t)30
+b Ft(bind)f Fu(command.)630 2040 y(The)d(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 2198 y Ft(builtin)870 2332 y(builtin)46
+b([)p Fj(shell-builtin)e Ft([)p Fj(args)p Ft(]])630 2466
+y Fu(Execute)35 b(the)f(sp)s(eci\014ed)g(shell)g(builtin)g
+Fr(shell-builtin)p Fu(,)h(passing)f(it)h Fr(args)p Fu(,)h(and)d(return)
+h(its)630 2576 y(exit)h(status.)52 b(This)33 b(is)h(useful)f(when)g
+(de\014ning)g(a)h(shell)g(function)g(with)f(the)i(same)f(name)630
+2685 y(as)c(a)g(shell)f(builtin,)h(retaining)g(the)g(functionalit)m(y)h
+(of)f(the)f(builtin)g(within)g(the)h(function.)630 2795
+y(The)g(return)f(status)i(is)f(non-zero)h(if)g Fr(shell-builtin)f
+Fu(is)g(not)h(a)g(shell)f(builtin)g(command.)150 2953
+y Ft(caller)870 3087 y(caller)46 b([)p Fj(expr)p Ft(])630
+3221 y Fu(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
+3331 y(executed)c(with)f(the)h Ft(.)f Fu(or)g Ft(source)f
+Fu(builtins\).)630 3465 y(Without)45 b Fr(expr)p Fu(,)j
+Ft(caller)43 b Fu(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 3574 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 Fr(expr)p Fu(,)h Ft(caller)630
+3684 y Fu(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
+3794 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
+3903 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
+4037 y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g
+(is)g(not)g(executing)h(a)f(subroutine)e(call)j(or)f
+Fr(expr)630 4147 y Fu(do)s(es)h(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
+4305 y Ft(command)870 4439 y(command)46 b([-pVv])g Fj(command)g
+Ft([)p Fj(arguments)f Ft(...)o(])630 4573 y Fu(The)37
+b Ft(command)e Fu(builtin)i(runs)f Fr(command)k Fu(with)d
+Fr(argumen)m(ts)42 b Fu(ignoring)37 b(an)m(y)h(shell)g(func-)630
+4682 y(tion)h(named)g Fr(command)p Fu(.)66 b(Only)39
+b(shell)g(builtin)f(commands)h(or)g(commands)f(found)g(b)m(y)630
+4792 y(searc)m(hing)29 b(the)g Ft(PATH)e Fu(are)i(executed.)40
+b(If)28 b(there)h(is)f(a)h(shell)f(function)g(named)g
+Ft(ls)p Fu(,)h(running)630 4902 y(`)p Ft(command)g(ls)p
+Fu(')c(within)h(the)g(function)f(will)i(execute)g(the)f(external)h
+(command)e Ft(ls)h Fu(instead)630 5011 y(of)31 b(calling)h(the)f
+(function)g(recursiv)m(ely)-8 b(.)43 b(The)31 b Ft(-p)f
+Fu(option)h(means)g(to)h(use)e(a)h(default)g(v)-5 b(alue)630
+5121 y(for)40 b Ft(PATH)f Fu(that)i(is)f(guaran)m(teed)h(to)g(\014nd)d
+(all)j(of)f(the)h(standard)e(utilities.)71 b(The)40 b(return)630
+5230 y(status)26 b(in)g(this)g(case)h(is)f(127)h(if)f
+Fr(command)k Fu(cannot)c(b)s(e)g(found)e(or)j(an)e(error)h(o)s
+(ccurred,)h(and)630 5340 y(the)k(exit)g(status)g(of)f
+Fr(command)k Fu(otherwise.)p eop end
+%%Page: 63 69
+TeXDict begin 63 68 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 y(If)49
+b(either)h(the)g Ft(-V)f Fu(or)g Ft(-v)g Fu(option)h(is)g(supplied,)j
+Ft(command)47 b Fu(prin)m(ts)i(a)h(description)g(of)630
+408 y Fr(command)p Fu(.)64 b(The)37 b Ft(-v)h Fu(option)g(displa)m(ys)h
+(a)f(single)h(w)m(ord)f(indicating)h(the)f(command)g(or)630
+518 y(\014le)k(name)g(used)f(to)h(in)m(v)m(ok)m(e)i Fr(command)t
+Fu(;)j(the)42 b Ft(-V)f Fu(option)h(pro)s(duces)f(a)h(more)g(v)m(erb)s
+(ose)630 628 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
+(status)h(is)g(zero)h(if)f Fr(command)k Fu(is)c(found,)h(and)630
+737 y(non-zero)31 b(if)f(not.)150 897 y Ft(declare)870
+1031 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p
+Ft([=)p Fj(value)p Ft(])d(...)o(])630 1166 y Fu(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 Fr(name)5 b Fu(s)27 b(are)h(giv)m(en,)h(then)e(displa)m
+(y)630 1275 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
+b(or)f(shell)h(functions)f(instead.)630 1410 y(The)35
+b Ft(-p)f Fu(option)i(will)g(displa)m(y)f(the)h(attributes)g(and)e(v)-5
+b(alues)36 b(of)f(eac)m(h)i Fr(name)p Fu(.)55 b(When)36
+b Ft(-p)630 1519 y Fu(is)i(used)g(with)g Fr(name)43 b
+Fu(argumen)m(ts,)e(additional)e(options,)i(other)d(than)g
+Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 1629 y(ignored.)630
+1763 y(When)g Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k
+Fu(argumen)m(ts,)f Ft(declare)38 b Fu(will)j(displa)m(y)f(the)h(at-)630
+1873 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 1983 y(tional)k(options.)52 b(If)34
+b(no)g(other)g(options)g(are)g(supplied)f(with)h Ft(-p)p
+Fu(,)g Ft(declare)e Fu(will)j(displa)m(y)630 2092 y(the)43
+b(attributes)g(and)g(v)-5 b(alues)43 b(of)g(all)h(shell)f(v)-5
+b(ariables.)78 b(The)43 b Ft(-f)f Fu(option)h(restricts)h(the)630
+2202 y(displa)m(y)31 b(to)g(shell)f(functions.)630 2336
+y(The)41 b Ft(-F)f Fu(option)i(inhibits)e(the)i(displa)m(y)f(of)g
+(function)g(de\014nitions;)47 b(only)41 b(the)g(function)630
+2446 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
+b(If)30 b(the)g Ft(extdebug)e Fu(shell)i(option)g(is)g(enabled)g(using)
+630 2555 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
+(Builtin],)k(page)e(77\),)i(the)d(source)h(\014le)f(name)h(and)630
+2665 y(line)31 b(n)m(um)m(b)s(er)e(where)h(eac)m(h)h
+Fr(name)36 b Fu(is)30 b(de\014ned)f(are)i(displa)m(y)m(ed)g(as)g(w)m
+(ell.)41 b Ft(-F)30 b Fu(implies)h Ft(-f)p Fu(.)630 2800
+y(The)21 b Ft(-g)f Fu(option)i(forces)f(v)-5 b(ariables)22
+b(to)g(b)s(e)f(created)h(or)f(mo)s(di\014ed)f(at)i(the)f(global)i(scop)
+s(e,)g(ev)m(en)630 2909 y(when)28 b Ft(declare)g Fu(is)h(executed)i(in)
+e(a)h(shell)f(function.)40 b(It)30 b(is)f(ignored)h(in)f(when)f
+Ft(declare)g Fu(is)630 3019 y(not)j(executed)g(in)f(a)h(shell)f
+(function.)630 3153 y(The)50 b Ft(-I)h Fu(option)g(causes)h(lo)s(cal)g
+(v)-5 b(ariables)51 b(to)h(inherit)f(the)g(attributes)g(\(except)i(the)
+630 3263 y Ft(nameref)43 b Fu(attribute\))j(and)f(v)-5
+b(alue)46 b(of)f(an)m(y)h(existing)g(v)-5 b(ariable)46
+b(with)f(the)g(same)h Fr(name)630 3372 y Fu(at)40 b(a)f(surrounding)d
+(scop)s(e.)66 b(If)39 b(there)g(is)g(no)f(existing)i(v)-5
+b(ariable,)42 b(the)d(lo)s(cal)h(v)-5 b(ariable)40 b(is)630
+3482 y(initially)32 b(unset.)630 3616 y(The)27 b(follo)m(wing)h
+(options)g(can)f(b)s(e)g(used)f(to)i(restrict)g(output)e(to)i(v)-5
+b(ariables)28 b(with)f(the)g(sp)s(ec-)630 3726 y(i\014ed)j(attributes)h
+(or)f(to)h(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630
+3885 y Ft(-a)384 b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34
+b(an)h(indexed)g(arra)m(y)g(v)-5 b(ariable)36 b(\(see)f(Section)h(6.7)g
+([Arra)m(ys],)1110 3995 y(page)31 b(109\).)630 4154 y
+Ft(-A)384 b Fu(Eac)m(h)24 b Fr(name)k Fu(is)23 b(an)g(asso)s(ciativ)m
+(e)j(arra)m(y)e(v)-5 b(ariable)24 b(\(see)g(Section)g(6.7)g([Arra)m
+(ys],)1110 4264 y(page)31 b(109\).)630 4423 y Ft(-f)384
+b Fu(Eac)m(h)31 b Fr(name)36 b Fu(refers)29 b(to)j(a)e(shell)h
+(function.)630 4583 y Ft(-i)384 b Fu(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 4692 y(\(see)41
+b(Section)f(6.5)h([Shell)e(Arithmetic],)44 b(page)c(106\))h(is)f(p)s
+(erformed)e(when)1110 4802 y(the)31 b(v)-5 b(ariable)31
+b(is)f(assigned)h(a)f(v)-5 b(alue.)630 4961 y Ft(-l)384
+b Fu(When)26 b(the)g(v)-5 b(ariable)27 b(is)f(assigned)g(a)g(v)-5
+b(alue,)28 b(all)f(upp)s(er-case)e(c)m(haracters)j(are)1110
+5071 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)43 b(The)30
+b(upp)s(er-case)g(attribute)h(is)g(disabled.)630 5230
+y Ft(-n)384 b Fu(Giv)m(e)28 b(eac)m(h)g Fr(name)k Fu(the)27
+b Ft(nameref)d Fu(attribute,)29 b(making)e(it)g(a)g(name)f(reference)
+1110 5340 y(to)32 b(another)g(v)-5 b(ariable.)46 b(That)31
+b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g(v)-5
+b(alue)32 b(of)p eop end
+%%Page: 64 70
+TeXDict begin 64 69 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(64)1110 299 y
+Fr(name)p Fu(.)54 b(All)35 b(references,)h(assignmen)m(ts,)h(and)d
+(attribute)h(mo)s(di\014cations)g(to)1110 408 y Fr(name)p
+Fu(,)27 b(except)f(for)f(those)h(using)f(or)g(c)m(hanging)h(the)f
+Ft(-n)g Fu(attribute)h(itself,)i(are)1110 518 y(p)s(erformed)22
+b(on)h(the)g(v)-5 b(ariable)25 b(referenced)e(b)m(y)g
+Fr(name)5 b Fu('s)23 b(v)-5 b(alue.)39 b(The)23 b(nameref)1110
+628 y(attribute)31 b(cannot)g(b)s(e)f(applied)g(to)h(arra)m(y)g(v)-5
+b(ariables.)630 785 y Ft(-r)384 b Fu(Mak)m(e)25 b Fr(name)5
+b Fu(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 894 y(b)m(y)30 b(subsequen)m(t)g
+(assignmen)m(t)h(statemen)m(ts)h(or)f(unset.)630 1052
+y Ft(-t)384 b Fu(Giv)m(e)33 b(eac)m(h)h Fr(name)j Fu(the)32
+b Ft(trace)f Fu(attribute.)46 b(T)-8 b(raced)32 b(functions)g(inherit)g
+(the)1110 1161 y Ft(DEBUG)26 b Fu(and)h Ft(RETURN)f Fu(traps)h(from)g
+(the)h(calling)h(shell.)40 b(The)27 b(trace)i(attribute)1110
+1271 y(has)h(no)g(sp)s(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630
+1428 y Ft(-u)384 b Fu(When)28 b(the)h(v)-5 b(ariable)29
+b(is)f(assigned)h(a)f(v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m
+(haracters)f(are)1110 1538 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40
+b(The)30 b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630
+1695 y Ft(-x)384 b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29
+b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
+1805 y(ronmen)m(t.)630 1962 y(Using)e(`)p Ft(+)p Fu(')f(instead)h(of)g
+(`)p Ft(-)p Fu(')g(turns)e(o\013)i(the)f(sp)s(eci\014ed)g(attribute)h
+(instead,)h(with)e(the)h(excep-)630 2071 y(tions)f(that)g(`)p
+Ft(+a)p Fu(')f(and)g(`)p Ft(+A)p Fu(')h(ma)m(y)g(not)f(b)s(e)g(used)g
+(to)h(destro)m(y)g(arra)m(y)g(v)-5 b(ariables)27 b(and)f(`)p
+Ft(+r)p Fu(')h(will)630 2181 y(not)k(remo)m(v)m(e)g(the)g(readonly)g
+(attribute.)630 2314 y(When)i(used)g(in)g(a)h(function,)g
+Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)j Fu(lo)s(cal,)e(as)e
+(with)f(the)g Ft(local)630 2424 y Fu(command,)j(unless)f(the)g
+Ft(-g)g Fu(option)g(is)g(supplied.)54 b(If)35 b(a)g(v)-5
+b(ariable)36 b(name)f(is)g(follo)m(w)m(ed)i(b)m(y)630
+2534 y(=)p Fr(v)-5 b(alue)p Fu(,)31 b(the)f(v)-5 b(alue)31
+b(of)g(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g Fr(v)-5
+b(alue)p Fu(.)630 2667 y(When)41 b(using)g Ft(-a)g Fu(or)h
+Ft(-A)e Fu(and)h(the)h(comp)s(ound)e(assignmen)m(t)i(syn)m(tax)g(to)g
+(create)h(arra)m(y)630 2777 y(v)-5 b(ariables,)28 b(additional)f
+(attributes)g(do)f(not)h(tak)m(e)h(e\013ect)g(un)m(til)e(subsequen)m(t)
+g(assignmen)m(ts.)630 2910 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 3020 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g
+(using)f(`)p Ft(-f)f(foo=bar)p Fu(',)h(an)h(attempt)g(is)g(made)g(to)h
+(assign)630 3129 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 3239 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 3348 y([Arra)m(ys],)43 b(page)d(109\),)k
+(one)c(of)g(the)g Fr(name)5 b Fu(s)40 b(is)f(not)h(a)g(v)-5
+b(alid)40 b(shell)g(v)-5 b(ariable)41 b(name,)h(an)630
+3458 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
+3567 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
+3677 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g
+Ft(-f)p Fu(.)150 3834 y Ft(echo)870 3968 y(echo)47 b([-neE])f([)p
+Fj(arg)g Ft(...])630 4101 y Fu(Output)31 b(the)i Fr(arg)8
+b Fu(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 4211 y(status)f(is)f(0)h(unless)f(a)
+h(write)g(error)f(o)s(ccurs.)41 b(If)30 b Ft(-n)g Fu(is)h(sp)s
+(eci\014ed,)f(the)h(trailing)g(newline)g(is)630 4320
+y(not)g(prin)m(ted.)630 4454 y(If)e(the)h Ft(-e)g Fu(option)g(is)g(giv)
+m(en,)h Ft(echo)e Fu(in)m(terprets)h(the)g(follo)m(wing)h(bac)m
+(kslash-escap)s(ed)g(c)m(har-)630 4563 y(acters.)39 b(The)23
+b Ft(-E)f Fu(option)h(disables)g(in)m(terpretation)i(of)e(these)g
+(escap)s(e)g(c)m(haracters,)j(ev)m(en)e(on)630 4673 y(systems)32
+b(where)f(they)h(are)g(in)m(terpreted)g(b)m(y)g(default.)45
+b(The)31 b Ft(xpg_echo)f Fu(shell)i(option)g(de-)630
+4783 y(termines)d(whether)g(or)g(not)h Ft(echo)e Fu(in)m(terprets)h(an)
+m(y)h(options)g(and)e(expands)h(these)g(escap)s(e)630
+4892 y(c)m(haracters.)42 b Ft(echo)29 b Fu(do)s(es)h(not)h(in)m
+(terpret)g Ft(--)f Fu(to)h(mean)f(the)h(end)e(of)i(options.)630
+5026 y Ft(echo)e Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
+(sequences:)630 5183 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630
+5340 y Ft(\\b)384 b Fu(bac)m(kspace)p eop end
+%%Page: 65 71
+TeXDict begin 65 70 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(65)630 299 y Ft(\\c)384
+b Fu(suppress)28 b(further)h(output)630 465 y Ft(\\e)630
+575 y(\\E)384 b Fu(escap)s(e)630 741 y Ft(\\f)g Fu(form)30
+b(feed)630 907 y Ft(\\n)384 b Fu(new)30 b(line)630 1073
+y Ft(\\r)384 b Fu(carriage)32 b(return)630 1239 y Ft(\\t)384
+b Fu(horizon)m(tal)32 b(tab)630 1405 y Ft(\\v)384 b Fu(v)m(ertical)32
+b(tab)630 1572 y Ft(\\\\)384 b Fu(bac)m(kslash)630 1738
+y Ft(\\0)p Fj(nnn)240 b Fu(The)29 b(eigh)m(t-bit)i(c)m(haracter)g
+(whose)e(v)-5 b(alue)30 b(is)g(the)f(o)s(ctal)i(v)-5
+b(alue)30 b Fr(nnn)e Fu(\(zero)i(to)1110 1847 y(three)h(o)s(ctal)g
+(digits\).)630 2013 y Ft(\\x)p Fj(HH)288 b Fu(The)34
+b(eigh)m(t-bit)j(c)m(haracter)f(whose)f(v)-5 b(alue)35
+b(is)g(the)g(hexadecimal)h(v)-5 b(alue)36 b Fr(HH)1110
+2123 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\).)630
+2289 y Ft(\\u)p Fj(HHHH)192 b Fu(The)37 b(Unico)s(de)h(\(ISO/IEC)e
+(10646\))k(c)m(haracter)f(whose)f(v)-5 b(alue)38 b(is)f(the)h(hex-)1110
+2399 y(adecimal)32 b(v)-5 b(alue)31 b Fr(HHHH)41 b Fu(\(one)31
+b(to)g(four)e(hex)h(digits\).)630 2565 y Ft(\\U)p Fj(HHHHHHHH)1110
+2674 y Fu(The)37 b(Unico)s(de)h(\(ISO/IEC)e(10646\))k(c)m(haracter)f
+(whose)f(v)-5 b(alue)38 b(is)f(the)h(hex-)1110 2784 y(adecimal)32
+b(v)-5 b(alue)31 b Fr(HHHHHHHH)41 b Fu(\(one)31 b(to)g(eigh)m(t)h(hex)e
+(digits\).)630 2950 y Ft(echo)f Fu(writes)i(an)m(y)f(unrecognized)h
+(bac)m(kslash-escap)s(ed)g(c)m(haracters)h(unc)m(hanged.)150
+3116 y Ft(enable)870 3254 y(enable)46 b([-a])h([-dnps])f([-f)g
+Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 3392
+y Fu(Enable)32 b(and)f(disable)i(builtin)e(shell)h(commands.)46
+b(Disabling)33 b(a)f(builtin)g(allo)m(ws)h(an)f(exe-)630
+3502 y(cutable)f(\014le)g(whic)m(h)f(has)g(the)g(same)h(name)f(as)h(a)g
+(shell)f(builtin)g(to)h(b)s(e)f(executed)h(without)630
+3611 y(sp)s(ecifying)c(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)g
+(shell)g(normally)g(searc)m(hes)h(for)f(builtins)630
+3721 y(b)s(efore)j(\014les.)630 3859 y(If)35 b Ft(-n)f
+Fu(is)i(supplied,)f(the)h Fr(name)5 b Fu(s)35 b(are)h(disabled.)55
+b(Otherwise)35 b Fr(name)5 b Fu(s)35 b(are)h(enabled.)55
+b(F)-8 b(or)630 3968 y(example,)31 b(to)h(use)e(the)g
+Ft(test)g Fu(binary)f(found)h(using)g Ft($PATH)f Fu(instead)h(of)h(the)
+g(shell)f(builtin)630 4078 y(v)m(ersion,)h(t)m(yp)s(e)g(`)p
+Ft(enable)e(-n)g(test)p Fu('.)630 4216 y(If)h(the)g Ft(-p)g
+Fu(option)h(is)f(supplied,)f(or)h(no)h Fr(name)k Fu(argumen)m(ts)30
+b(are)h(supplied,)e(prin)m(t)h(a)h(list)g(of)630 4325
+y(shell)37 b(builtins.)61 b(With)38 b(no)f(other)g(argumen)m(ts,)j(the)
+d(list)h(consists)g(of)f(all)i(enabled)e(shell)630 4435
+y(builtins.)52 b(The)34 b Ft(-n)g Fu(option)g(means)h(to)g(prin)m(t)f
+(only)g(disabled)g(builtins.)52 b(The)34 b Ft(-a)f Fu(option)630
+4545 y(means)k(to)g(list)g(eac)m(h)h(builtin)e(with)h(an)f(indication)i
+(of)e(whether)g(or)h(not)g(it)g(is)g(enabled.)630 4654
+y(The)30 b Ft(-s)g Fu(option)g(means)h(to)g(restrict)g
+Ft(enable)e Fu(to)i(the)f Fm(posix)g Fu(sp)s(ecial)h(builtins.)630
+4792 y(The)44 b Ft(-f)f Fu(option)i(means)f(to)h(load)g(the)g(new)f
+(builtin)f(command)h Fr(name)50 b Fu(from)44 b(shared)630
+4902 y(ob)5 b(ject)27 b Fr(\014lename)p Fu(,)g(on)e(systems)h(that)g
+(supp)s(ort)e(dynamic)i(loading.)40 b(If)25 b Fr(\014lename)31
+b Fu(do)s(es)26 b(not)630 5011 y(con)m(tain)32 b(a)g(slash.)43
+b(Bash)31 b(will)h(use)f(the)g(v)-5 b(alue)32 b(of)f(the)g
+Ft(BASH_LOADABLES_PATH)26 b Fu(v)-5 b(ariable)630 5121
+y(as)41 b(a)g(colon-separated)i(list)e(of)g(directories)h(in)f(whic)m
+(h)f(to)i(searc)m(h)f(for)g Fr(\014lename)p Fu(.)72 b(The)630
+5230 y(default)39 b(for)g Ft(BASH_LOADABLES_PATH)34 b
+Fu(is)40 b(system-dep)s(enden)m(t,)h(and)d(ma)m(y)i(include)f
+Ft(")p Fu(.)p Ft(")630 5340 y Fu(to)d(force)g(a)f(searc)m(h)h(of)g(the)
+f(curren)m(t)g(directory)-8 b(.)57 b(The)34 b Ft(-d)h
+Fu(option)h(will)f(delete)i(a)e(builtin)p eop end
+%%Page: 66 72
+TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(66)630 299 y(loaded)28
+b(with)f Ft(-f)p Fu(.)39 b(If)27 b Ft(-s)g Fu(is)g(used)g(with)g
+Ft(-f)p Fu(,)h(the)f(new)g(builtin)g(b)s(ecomes)h(a)f(sp)s(ecial)h
+(builtin)630 408 y(\(see)j(Section)h(4.4)f([Sp)s(ecial)g(Builtins],)g
+(page)g(83\).)630 540 y(If)24 b(no)g(options)h(are)g(supplied)e(and)h
+(a)h Fr(name)k Fu(is)c(not)f(a)h(shell)g(builtin,)g Ft(enable)e
+Fu(will)i(attempt)630 650 y(to)c(load)g Fr(name)26 b
+Fu(from)20 b(a)g(shared)g(ob)5 b(ject)21 b(named)f Fr(name)p
+Fu(,)j(as)d(if)h(the)f(command)h(w)m(ere)f(`)p Ft(enable)630
+759 y(-f)30 b Fj(name)f(name)p Fu('.)630 891 y(The)d(return)f(status)h
+(is)g(zero)h(unless)e(a)i Fr(name)k Fu(is)26 b(not)g(a)h(shell)f
+(builtin)g(or)g(there)g(is)g(an)g(error)630 1000 y(loading)31
+b(a)g(new)f(builtin)g(from)g(a)g(shared)g(ob)5 b(ject.)150
+1154 y Ft(help)870 1285 y(help)47 b([-dms])f([)p Fj(pattern)p
+Ft(])630 1417 y Fu(Displa)m(y)40 b(helpful)e(information)h(ab)s(out)g
+(builtin)f(commands.)66 b(If)38 b Fr(pattern)h Fu(is)g(sp)s(eci\014ed,)
+630 1526 y Ft(help)34 b Fu(giv)m(es)i(detailed)g(help)e(on)h(all)h
+(commands)e(matc)m(hing)i Fr(pattern)p Fu(,)g(otherwise)g(it)f(dis-)630
+1636 y(pla)m(ys)c(a)g(list)g(of)f(all)h(builtins)f(and)g(shell)h(comp)s
+(ound)d(commands.)630 1767 y(Options,)i(if)h(supplied,)e(ha)m(v)m(e)i
+(the)g(follo)m(wing)h(meanings:)630 1921 y Ft(-d)384
+b Fu(Displa)m(y)32 b(a)e(short)g(description)h(of)f(eac)m(h)i
+Fr(pattern)630 2074 y Ft(-m)384 b Fu(Displa)m(y)32 b(the)e(description)
+g(of)h(eac)m(h)h Fr(pattern)e Fu(in)g(a)h(manpage-lik)m(e)h(format)630
+2228 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(a)h(short)f(usage)h
+(synopsis)e(for)i(eac)m(h)g Fr(pattern)630 2381 y Fu(The)f(return)f
+(status)i(is)f(zero)h(unless)f(no)g(command)h(matc)m(hes)g
+Fr(pattern)p Fu(.)150 2534 y Ft(let)870 2666 y(let)47
+b Fj(expression)e Ft([)p Fj(expression)g Ft(...)o(])630
+2798 y Fu(The)c Ft(let)g Fu(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 2907 y Fr(expression)27 b Fu(is)g(ev)-5
+b(aluated)29 b(as)e(an)h(arithmetic)g(expression)f(according)i(to)f
+(the)f(rules)g(giv)m(en)630 3017 y(b)s(elo)m(w)21 b(in)g(Section)h(6.5)
+h([Shell)e(Arithmetic],)j(page)e(106.)39 b(If)21 b(the)g(last)h
+Fr(expression)f Fu(ev)-5 b(aluates)630 3126 y(to)31 b(0,)g
+Ft(let)f Fu(returns)f(1;)i(otherwise)g Ft(let)e Fu(returns)g(0.)150
+3280 y Ft(local)870 3411 y(local)46 b([)p Fj(option)p
+Ft(])g Fj(name)p Ft([=)p Fj(value)p Ft(])e(...)630 3543
+y Fu(F)-8 b(or)39 b(eac)m(h)g(argumen)m(t,)h(create)g(a)e(lo)s(cal)h(v)
+-5 b(ariable)39 b(named)e Fr(name)p Fu(,)j(and)e(assign)g(it)g
+Fr(v)-5 b(alue)p Fu(.)630 3652 y(The)37 b Fr(option)h
+Fu(can)f(b)s(e)g(an)m(y)h(of)f(the)h(options)g(accepted)g(b)m(y)g
+Ft(declare)p Fu(.)59 b Ft(local)36 b Fu(can)i(only)630
+3762 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 Fr(name)48 b Fu(ha)m(v)m(e)43
+b(a)f(visible)h(scop)s(e)630 3871 y(restricted)36 b(to)g(that)h
+(function)e(and)g(its)h(c)m(hildren.)56 b(It)35 b(is)h(an)f(error)g(to)
+i(use)e Ft(local)f Fu(when)630 3981 y(not)d(within)e(a)i(function.)630
+4113 y(If)j Fr(name)40 b Fu(is)35 b(`)p Ft(-)p Fu(',)h(it)f(mak)m(es)h
+(the)e(set)i(of)e(shell)h(options)g(lo)s(cal)h(to)g(the)f(function)f
+(in)g(whic)m(h)630 4222 y Ft(local)j Fu(is)h(in)m(v)m(ok)m(ed:)57
+b(an)m(y)38 b(shell)h(options)f(c)m(hanged)h(using)e(the)h
+Ft(set)f Fu(builtin)h(inside)g(the)630 4332 y(function)c(after)h(the)g
+(call)h(to)f Ft(local)e Fu(are)i(restored)f(to)h(their)g(original)g(v)
+-5 b(alues)35 b(when)f(the)630 4441 y(function)29 b(returns.)39
+b(The)28 b(restore)h(is)g(p)s(erformed)f(as)h(if)g(a)g(series)g(of)g
+Ft(set)f Fu(commands)g(w)m(ere)630 4551 y(executed)j(to)g(restore)g
+(the)g(v)-5 b(alues)31 b(that)g(w)m(ere)f(in)h(place)g(b)s(efore)f(the)
+g(function.)630 4682 y(With)d(no)f(op)s(erands,)g Ft(local)e
+Fu(writes)j(a)f(list)h(of)f(lo)s(cal)i(v)-5 b(ariables)27
+b(to)f(the)h(standard)e(output.)630 4814 y(The)38 b(return)f(status)i
+(is)f(zero)i(unless)d Ft(local)g Fu(is)i(used)e(outside)i(a)g
+(function,)h(an)e(in)m(v)-5 b(alid)630 4924 y Fr(name)36
+b Fu(is)30 b(supplied,)f(or)i Fr(name)k Fu(is)c(a)f(readonly)h(v)-5
+b(ariable.)150 5077 y Ft(logout)870 5208 y(logout)46
+b([)p Fj(n)p Ft(])630 5340 y Fu(Exit)31 b(a)g(login)g(shell,)g
+(returning)e(a)i(status)g(of)f Fr(n)g Fu(to)h(the)g(shell's)f(paren)m
+(t.)p eop end
+%%Page: 67 73
+TeXDict begin 67 72 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(67)150 299 y Ft(mapfile)870
+439 y(mapfile)46 b([-d)h Fj(delim)p Ft(])f([-n)h Fj(count)p
+Ft(])f([-O)h Fj(origin)p Ft(])f([-s)g Fj(count)p Ft(])1061
+548 y([-t])h([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p
+Ft(])f([-c)g Fj(quantum)p Ft(])g([)p Fj(array)p Ft(])630
+688 y Fu(Read)33 b(lines)g(from)f(the)h(standard)e(input,)i(or)f(from)h
+(\014le)f(descriptor)h Fr(fd)i Fu(if)e(the)f Ft(-u)g
+Fu(option)630 798 y(is)f(supplied,)f(in)m(to)h(the)g(indexed)f(arra)m
+(y)i(v)-5 b(ariable)31 b Fr(arra)m(y)p Fu(.)42 b(The)31
+b(v)-5 b(ariable)31 b Ft(MAPFILE)e Fu(is)i(the)630 907
+y(default)g Fr(arra)m(y)p Fu(.)41 b(Options,)30 b(if)g(supplied,)g(ha)m
+(v)m(e)h(the)g(follo)m(wing)h(meanings:)630 1077 y Ft(-d)384
+b Fu(Use)27 b(the)g(\014rst)f(c)m(haracter)i(of)f Fr(delim)g
+Fu(to)h(terminate)f(eac)m(h)h(input)e(line,)i(rather)1110
+1187 y(than)i(newline.)40 b(If)30 b Fr(delim)g Fu(is)g(the)g(empt)m(y)g
+(string,)h Ft(mapfile)d Fu(will)i(terminate)1110 1297
+y(a)h(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.)630
+1467 y Ft(-n)384 b Fu(Cop)m(y)30 b(at)h(most)g Fr(coun)m(t)i
+Fu(lines.)41 b(If)30 b Fr(coun)m(t)j Fu(is)d(0,)h(cop)m(y)h(all)f
+(lines.)630 1637 y Ft(-O)384 b Fu(Begin)31 b(assigning)g(to)g
+Fr(arra)m(y)39 b Fu(at)31 b(index)f Fr(origin)p Fu(.)41
+b(The)30 b(default)h(index)f(is)g(0.)630 1807 y Ft(-s)384
+b Fu(Discard)31 b(the)f(\014rst)g Fr(coun)m(t)j Fu(lines)e(read.)630
+1977 y Ft(-t)384 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g
+Fr(delim)g Fu(\(default)g(newline\))f(from)g(eac)m(h)i(line)f(read.)630
+2147 y Ft(-u)384 b Fu(Read)31 b(lines)f(from)g(\014le)h(descriptor)f
+Fr(fd)j Fu(instead)e(of)f(the)h(standard)e(input.)630
+2317 y Ft(-C)384 b Fu(Ev)-5 b(aluate)26 b Fr(callbac)m(k)33
+b Fu(eac)m(h)26 b(time)g Fr(quan)m(tum)f Fu(lines)g(are)g(read.)39
+b(The)25 b Ft(-c)f Fu(option)1110 2426 y(sp)s(eci\014es)30
+b Fr(quan)m(tum)p Fu(.)630 2596 y Ft(-c)384 b Fu(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 Fr(callbac)m(k)p Fu(.)630 2767 y(If)36
+b Ft(-C)g Fu(is)g(sp)s(eci\014ed)g(without)g Ft(-c)p
+Fu(,)h(the)g(default)f(quan)m(tum)g(is)h(5000.)60 b(When)36
+b Fr(callbac)m(k)44 b Fu(is)630 2876 y(ev)-5 b(aluated,)30
+b(it)e(is)g(supplied)f(the)h(index)f(of)i(the)f(next)g(arra)m(y)g
+(elemen)m(t)h(to)g(b)s(e)e(assigned)i(and)630 2986 y(the)39
+b(line)g(to)h(b)s(e)e(assigned)h(to)h(that)f(elemen)m(t)i(as)e
+(additional)h(argumen)m(ts.)66 b Fr(callbac)m(k)47 b
+Fu(is)630 3095 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read)g
+(but)g(b)s(efore)g(the)h(arra)m(y)g(elemen)m(t)g(is)g(assigned.)630
+3235 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
+Ft(mapfile)c Fu(will)j(clear)g Fr(arra)m(y)34 b Fu(b)s(efore)24
+b(assigning)630 3345 y(to)31 b(it.)630 3485 y Ft(mapfile)g
+Fu(returns)h(zero)i(unless)f(an)g(in)m(v)-5 b(alid)34
+b(option)g(or)f(option)h(argumen)m(t)g(is)f(supplied,)630
+3594 y Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5 b(alid)31
+b(or)f(unassignable,)h(or)f(if)h Fr(arra)m(y)38 b Fu(is)31
+b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150 3764 y Ft(printf)870
+3904 y(printf)46 b([-v)h Fj(var)p Ft(])g Fj(format)f
+Ft([)p Fj(arguments)p Ft(])630 4044 y Fu(W)-8 b(rite)41
+b(the)f(formatted)h Fr(argumen)m(ts)i Fu(to)e(the)f(standard)f(output)g
+(under)g(the)h(con)m(trol)h(of)630 4153 y(the)34 b Fr(format)p
+Fu(.)52 b(The)33 b Ft(-v)h Fu(option)g(assigns)g(the)g(output)g(to)g
+(the)g(v)-5 b(ariable)35 b Fr(v)-5 b(ar)40 b Fu(rather)34
+b(than)630 4263 y(prin)m(ting)c(it)h(to)g(the)g(standard)e(output.)630
+4403 y(The)36 b Fr(format)i Fu(is)f(a)f(c)m(haracter)i(string)e(whic)m
+(h)g(con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53
+b(plain)630 4512 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
+(copied)i(to)g(standard)f(output,)i(c)m(haracter)g(escap)s(e)e(se-)630
+4622 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
+g(the)g(standard)f(output,)i(and)f(format)630 4732 y(sp)s
+(eci\014cations,)26 b(eac)m(h)g(of)e(whic)m(h)g(causes)g(prin)m(ting)g
+(of)h(the)f(next)g(successiv)m(e)i Fr(argumen)m(t)p Fu(.)39
+b(In)630 4841 y(addition)30 b(to)g(the)g(standard)e Ft(printf\(3\))f
+Fu(format)j(c)m(haracters)h Ft(cCsSndiouxXeEfFgGaA)p
+Fu(,)630 4951 y Ft(printf)e Fu(in)m(terprets)h(the)h(follo)m(wing)h
+(additional)f(format)g(sp)s(eci\014ers:)630 5121 y Ft(\045b)384
+b Fu(Causes)38 b Ft(printf)f Fu(to)j(expand)e(bac)m(kslash)h(escap)s(e)
+g(sequences)g(in)f(the)h(cor-)1110 5230 y(resp)s(onding)31
+b Fr(argumen)m(t)j Fu(in)e(the)h(same)f(w)m(a)m(y)h(as)g
+Ft(echo)c(-e)j Fu(\(see)h(Section)g(4.2)1110 5340 y([Bash)e(Builtins],)
+g(page)g(60\).)p eop end
+%%Page: 68 74
+TeXDict begin 68 73 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(68)630 299 y Ft(\045q)384
+b Fu(Causes)32 b Ft(printf)e Fu(to)i(output)g(the)g(corresp)s(onding)f
+Fr(argumen)m(t)j Fu(in)d(a)i(format)1110 408 y(that)42
+b(can)f(b)s(e)g(reused)g(as)g(shell)h(input.)72 b Ft(\045q)41
+b Fu(and)f Ft(\045Q)p Fu(P)h(use)g(the)g(ANSI-C)1110
+518 y(quoting)29 b(st)m(yle)h(\(see)g(Section)g(3.1.2.4)h([ANSI-C)e
+(Quoting],)h(page)f(6\))h(if)f(an)m(y)1110 628 y(c)m(haracters)g(in)e
+(the)h(argumen)m(t)g(string)f(require)h(it,)g(and)f(bac)m(kslash)h
+(quoting)1110 737 y(otherwise.)79 b(If)43 b(the)g(format)g(string)g
+(uses)g(the)g Ft(printf)e Fl(alternate)46 b(form)p Fu(,)1110
+847 y(these)31 b(t)m(w)m(o)h(formats)e(quote)h(the)g(argumen)m(t)f
+(string)h(using)f(single)h(quotes.)630 1003 y Ft(\045Q)384
+b Fu(lik)m(e)34 b Ft(\045q)p Fu(,)f(but)f(applies)g(an)m(y)h(supplied)e
+(precision)i(to)h(the)e Fr(argumen)m(t)j Fu(b)s(efore)1110
+1113 y(quoting)c(it.)630 1270 y Ft(\045\()p Fj(datefmt)p
+Ft(\)T)1110 1379 y Fu(Causes)e Ft(printf)e Fu(to)j(output)f(the)g
+(date-time)i(string)e(resulting)h(from)e(using)1110 1489
+y Fr(datefm)m(t)i Fu(as)d(a)h(format)f(string)h(for)e
+Ft(strftime)p Fu(\(3\).)39 b(The)27 b(corresp)s(onding)f
+Fr(ar-)1110 1598 y(gumen)m(t)34 b Fu(is)d(an)h(in)m(teger)g(represen)m
+(ting)g(the)g(n)m(um)m(b)s(er)e(of)i(seconds)f(since)h(the)1110
+1708 y(ep)s(o)s(c)m(h.)43 b(This)30 b(format)i(sp)s(eci\014er)e
+(recognizes)j(Tw)m(o)f(sp)s(ecial)f(argumen)m(t)h(v)-5
+b(al-)1110 1817 y(ues:)42 b(-1)31 b(represen)m(ts)g(the)g(curren)m(t)g
+(time,)h(and)e(-2)i(represen)m(ts)f(the)g(time)h(the)1110
+1927 y(shell)i(w)m(as)f(in)m(v)m(ok)m(ed.)51 b(If)33
+b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)h(con)m(v)m(ersion)g(b)s(eha)
+m(v)m(es)1110 2037 y(as)25 b(if)g(-1)g(had)f(b)s(een)g(supplied.)37
+b(This)24 b(is)h(an)f(exception)i(to)g(the)e(usual)h
+Ft(printf)1110 2146 y Fu(b)s(eha)m(vior.)630 2303 y(The)39
+b(\045b,)i(\045q,)g(and)e(\045T)f(format)i(sp)s(eci\014ers)e(all)i(use)
+f(the)h(\014eld)f(width)f(and)h(precision)630 2412 y(argumen)m(ts)e
+(from)f(the)h(format)g(sp)s(eci\014cation)g(and)f(write)h(that)h(man)m
+(y)e(b)m(ytes)h(from)g(\(or)630 2522 y(use)29 b(that)h(wide)f(a)g
+(\014eld)g(for\))g(the)h(expanded)e(argumen)m(t,)i(whic)m(h)f(usually)g
+(con)m(tains)i(more)630 2632 y(c)m(haracters)h(than)e(the)h(original.)
+630 2765 y(The)e(\045n)f(format)h(sp)s(eci\014er)g(accepts)h(a)g
+(corresp)s(onding)e(argumen)m(t)h(that)h(is)f(treated)h(as)g(a)630
+2874 y(shell)h(v)-5 b(ariable)31 b(name.)630 3007 y(The)26
+b(\045s)g(and)h(\045c)f(format)h(sp)s(eci\014ers)f(accept)i(an)f(l)g
+(\(long\))h(mo)s(di\014er,)e(whic)m(h)h(forces)g(them)630
+3117 y(to)21 b(con)m(v)m(ert)i(the)e(argumen)m(t)g(string)g(to)g(a)g
+(wide-c)m(haracter)i(string)e(and)f(apply)g(an)m(y)h(supplied)630
+3226 y(\014eld)36 b(width)g(and)f(precision)i(in)f(terms)g(of)h(c)m
+(haracters,)i(not)e(b)m(ytes.)59 b(The)36 b(\045S)g(and)g(\045C)630
+3336 y(format)31 b(sp)s(eci\014ers)e(are)i(equiv)-5 b(alen)m(t)32
+b(to)f(\045ls)f(and)g(\045lc,)h(resp)s(ectiv)m(ely)-8
+b(.)630 3469 y(Argumen)m(ts)28 b(to)h(non-string)e(format)i(sp)s
+(eci\014ers)e(are)h(treated)h(as)g(C)e(language)j(constan)m(ts,)630
+3579 y(except)e(that)g(a)f(leading)h(plus)f(or)g(min)m(us)f(sign)h(is)g
+(allo)m(w)m(ed,)j(and)d(if)g(the)g(leading)h(c)m(haracter)630
+3688 y(is)43 b(a)h(single)g(or)g(double)f(quote,)k(the)d(v)-5
+b(alue)44 b(is)f(the)h(n)m(umeric)f(v)-5 b(alue)44 b(of)g(the)f(follo)m
+(wing)630 3798 y(c)m(haracter,)32 b(using)e(the)h(curren)m(t)f(lo)s
+(cale.)630 3931 y(The)h Fr(format)i Fu(is)f(reused)e(as)i(necessary)f
+(to)i(consume)e(all)h(of)f(the)h Fr(argumen)m(ts)p Fu(.)44
+b(If)30 b(the)i Fr(for-)630 4041 y(mat)c Fu(requires)e(more)g
+Fr(argumen)m(ts)k Fu(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f
+(sp)s(eci\014cations)630 4150 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 4260 y(return)e(v)-5 b(alue)38
+b(is)g(zero)g(on)f(success,)j(non-zero)e(if)f(an)h(in)m(v)-5
+b(alid)38 b(option)g(is)f(supplied)f(or)i(a)630 4369
+y(write)31 b(or)f(assignmen)m(t)h(error)f(o)s(ccurs.)150
+4526 y Ft(read)870 4659 y(read)47 b([-Eers])e([-a)i Fj(aname)p
+Ft(])f([-d)h Fj(delim)p Ft(])f([-i)h Fj(text)p Ft(])g([-n)g
+Fj(nchars)p Ft(])1061 4769 y([-N)g Fj(nchars)p Ft(])f([-p)h
+Fj(prompt)p Ft(])e([-t)i Fj(timeout)p Ft(])f([-u)h Fj(fd)p
+Ft(])g([)p Fj(name)f Ft(...)o(])630 4902 y Fu(Read)33
+b(one)g(line)h(from)e(the)h(standard)f(input,)h(or)g(from)g(the)g
+(\014le)g(descriptor)f Fr(fd)k Fu(supplied)630 5011 y(as)44
+b(an)f(argumen)m(t)h(to)h(the)e Ft(-u)g Fu(option,)48
+b(split)c(it)g(in)m(to)g(w)m(ords)f(as)h(describ)s(ed)e(ab)s(o)m(v)m(e)
+j(in)630 5121 y(Section)38 b(3.5.7)h([W)-8 b(ord)37 b(Splitting],)j
+(page)d(37,)j(and)c(assign)i(the)f(\014rst)f(w)m(ord)h(to)h(the)f
+(\014rst)630 5230 y Fr(name)p Fu(,)29 b(the)f(second)g(w)m(ord)f(to)i
+(the)f(second)g Fr(name)p Fu(,)g(and)g(so)g(on.)40 b(If)27
+b(there)h(are)g(more)g(w)m(ords)630 5340 y(than)i(names,)g(the)g
+(remaining)g(w)m(ords)f(and)g(their)h(in)m(terv)m(ening)h(delimiters)f
+(are)h(assigned)p eop end
+%%Page: 69 75
+TeXDict begin 69 74 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(69)630 299 y(to)39
+b(the)g(last)h Fr(name)p Fu(.)65 b(If)38 b(there)h(are)g(few)m(er)g(w)m
+(ords)f(read)h(from)f(the)h(input)e(stream)i(than)630
+408 y(names,)31 b(the)h(remaining)f(names)g(are)h(assigned)f(empt)m(y)g
+(v)-5 b(alues.)44 b(The)30 b(c)m(haracters)j(in)e(the)630
+518 y(v)-5 b(alue)22 b(of)f(the)h Ft(IFS)e Fu(v)-5 b(ariable)22
+b(are)g(used)e(to)i(split)g(the)f(line)h(in)m(to)g(w)m(ords)f(using)f
+(the)i(same)f(rules)630 628 y(the)30 b(shell)h(uses)f(for)f(expansion)i
+(\(describ)s(ed)e(ab)s(o)m(v)m(e)i(in)f(Section)h(3.5.7)h([W)-8
+b(ord)31 b(Splitting],)630 737 y(page)c(37\).)40 b(The)26
+b(bac)m(kslash)g(c)m(haracter)i(`)p Ft(\\)p Fu(')e(remo)m(v)m(es)i(an)m
+(y)e(sp)s(ecial)h(meaning)f(for)g(the)g(next)630 847
+y(c)m(haracter)32 b(read)e(and)g(is)g(used)g(for)g(line)h(con)m(tin)m
+(uation.)630 977 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g
+(follo)m(wing)h(meanings:)630 1129 y Ft(-a)e Fj(aname)114
+b Fu(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 1238 y Fr(aname)p
+Fu(,)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 Fr(aname)34 b Fu(b)s(efore)1110 1348
+y(the)d(assignmen)m(t.)41 b(Other)30 b Fr(name)36 b Fu(argumen)m(ts)30
+b(are)h(ignored.)630 1499 y Ft(-d)f Fj(delim)114 b Fu(The)31
+b(\014rst)h(c)m(haracter)h(of)f Fr(delim)g Fu(terminates)h(the)f(input)
+f(line,)i(rather)f(than)1110 1609 y(newline.)64 b(If)38
+b Fr(delim)g Fu(is)h(the)f(empt)m(y)h(string,)h Ft(read)d
+Fu(will)i(terminate)g(a)g(line)1110 1718 y(when)29 b(it)i(reads)f(a)h
+(NUL)g(c)m(haracter.)630 1870 y Ft(-e)384 b Fu(If)33
+b(the)h(standard)f(input)g(is)h(coming)h(from)e(a)h(terminal,)h
+Ft(read)e Fu(uses)g(Read-)1110 1979 y(line)h(\(see)h(Chapter)e(8)i
+([Command)e(Line)g(Editing],)j(page)e(128\))i(to)e(obtain)1110
+2089 y(the)h(line.)53 b(Readline)36 b(uses)e(the)h(curren)m(t)f(\(or)h
+(default,)h(if)e(line)h(editing)h(w)m(as)1110 2198 y(not)c(previously)g
+(activ)m(e\))i(editing)e(settings,)i(but)d(uses)g(Readline's)i(default)
+1110 2308 y(\014lename)e(completion.)630 2459 y Ft(-E)384
+b Fu(If)23 b(the)h(standard)f(input)g(is)g(coming)i(from)e(a)h
+(terminal,)i Ft(read)c Fu(uses)h(Readline)1110 2569 y(\(see)36
+b(Chapter)f(8)h([Command)e(Line)i(Editing],)h(page)f(128\))h(to)f
+(obtain)g(the)1110 2679 y(line.)53 b(Readline)34 b(uses)g(the)g(curren)
+m(t)g(\(or)h(default,)h(if)e(line)g(editing)h(w)m(as)g(not)1110
+2788 y(previously)28 b(activ)m(e\))j(editing)e(settings,)h(but)d(uses)h
+(Bash's)g(default)h(comple-)1110 2898 y(tion,)i(including)f
+(programmable)h(completion.)630 3049 y Ft(-i)f Fj(text)162
+b Fu(If)28 b(Readline)h(is)f(b)s(eing)f(used)h(to)h(read)f(the)g(line,)
+h Ft(read)e Fu(places)i Fr(text)j Fu(in)m(to)d(the)1110
+3159 y(editing)i(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630
+3310 y Ft(-n)f Fj(nchars)66 b Ft(read)21 b Fu(returns)h(after)g
+(reading)h Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)e(than)g(w)m
+(aiting)i(for)1110 3420 y(a)36 b(complete)h(line)f(of)f(input,)h
+(unless)f(it)h(encoun)m(ters)g(EOF)g(or)f Ft(read)f Fu(times)1110
+3529 y(out,)29 b(but)f(honors)g(a)g(delimiter)h(if)g(it)g(reads)f(few)m
+(er)g(than)h Fr(nc)m(hars)i Fu(c)m(haracters)1110 3639
+y(b)s(efore)f(the)h(delimiter.)630 3790 y Ft(-N)f Fj(nchars)66
+b Ft(read)39 b Fu(returns)f(after)j(reading)e(exactly)j
+Fr(nc)m(hars)h Fu(c)m(haracters)f(rather)d(than)1110
+3900 y(w)m(aiting)e(for)f(a)g(complete)h(line)g(of)f(input,)g(unless)g
+(it)g(encoun)m(ters)g(EOF)g(or)1110 4009 y Ft(read)d
+Fu(times)h(out.)51 b(Delimiter)36 b(c)m(haracters)f(in)f(the)g(input)f
+(are)h(not)g(treated)1110 4119 y(sp)s(ecially)f(and)f(do)g(not)h(cause)
+f Ft(read)g Fu(to)h(return)e(un)m(til)h(it)h(has)f(read)g
+Fr(nc)m(hars)1110 4228 y Fu(c)m(haracters.)71 b(The)39
+b(result)h(is)g(not)g(split)h(on)e(the)i(c)m(haracters)g(in)f
+Ft(IFS)p Fu(;)k(the)1110 4338 y(in)m(ten)m(t)38 b(is)f(that)h(the)f(v)
+-5 b(ariable)38 b(is)f(assigned)g(exactly)h(the)g(c)m(haracters)g(read)
+1110 4448 y(\(with)30 b(the)h(exception)h(of)e(bac)m(kslash;)h(see)g
+(the)g Ft(-r)f Fu(option)h(b)s(elo)m(w\).)630 4599 y
+Ft(-p)f Fj(prompt)66 b Fu(Displa)m(y)38 b Fr(prompt)p
+Fu(,)g(without)e(a)h(trailing)h(newline,)h(b)s(efore)d(attempting)i(to)
+1110 4709 y(read)30 b(an)m(y)h(input,)f(but)f(only)i(if)f(input)g(is)g
+(coming)h(from)f(a)h(terminal.)630 4860 y Ft(-r)384 b
+Fu(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
+4969 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 5079
+y(bac)m(kslash-newline)26 b(pair)e(ma)m(y)h(not)g(then)g(b)s(e)f(used)g
+(as)h(a)g(line)g(con)m(tin)m(uation.)630 5230 y Ft(-s)384
+b Fu(Silen)m(t)28 b(mo)s(de.)40 b(If)27 b(input)f(is)i(coming)g(from)f
+(a)h(terminal,)h(c)m(haracters)g(are)f(not)1110 5340
+y(ec)m(ho)s(ed.)p eop end
+%%Page: 70 76
+TeXDict begin 70 75 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(70)630 299 y Ft(-t)30
+b Fj(timeout)1110 408 y Fu(Cause)25 b Ft(read)f Fu(to)h(time)h(out)f
+(and)g(return)e(failure)j(if)e(it)i(do)s(es)f(not)g(read)g(a)g(com-)
+1110 518 y(plete)f(line)f(of)g(input)f(\(or)h(a)h(sp)s(eci\014ed)e(n)m
+(um)m(b)s(er)g(of)h(c)m(haracters\))i(within)d Fr(time-)1110
+628 y(out)37 b Fu(seconds.)53 b Fr(timeout)38 b Fu(ma)m(y)d(b)s(e)f(a)h
+(decimal)h(n)m(um)m(b)s(er)d(with)h(a)h(fractional)1110
+737 y(p)s(ortion)29 b(follo)m(wing)h(the)f(decimal)h(p)s(oin)m(t.)40
+b(This)29 b(option)g(is)g(only)g(e\013ectiv)m(e)j(if)1110
+847 y Ft(read)27 b Fu(is)i(reading)g(input)e(from)h(a)h(terminal,)h
+(pip)s(e,)e(or)h(other)g(sp)s(ecial)g(\014le;)g(it)1110
+956 y(has)i(no)f(e\013ect)j(when)d(reading)h(from)f(regular)h(\014les.)
+42 b(If)31 b Ft(read)e Fu(times)j(out,)f(it)1110 1066
+y(sa)m(v)m(es)k(an)m(y)g(partial)f(input)f(read)h(in)m(to)h(the)f(sp)s
+(eci\014ed)g(v)-5 b(ariable)34 b Fr(name)p Fu(,)i(and)1110
+1176 y(returns)j(a)i(status)f(greater)h(than)f(128.)72
+b(If)39 b Fr(timeout)44 b Fu(is)c(0,)j Ft(read)c Fu(returns)1110
+1285 y(immediately)-8 b(,)29 b(without)c(trying)h(to)h(read)e(an)m(y)i
+(data.)39 b(In)25 b(this)h(case,)i(the)e(exit)1110 1395
+y(status)38 b(is)f(0)h(if)f(input)g(is)g(a)m(v)-5 b(ailable)40
+b(on)d(the)h(sp)s(eci\014ed)e(\014le)i(descriptor,)h(or)1110
+1504 y(the)31 b(read)f(will)h(return)e(EOF,)h(non-zero)h(otherwise.)630
+1666 y Ft(-u)f Fj(fd)258 b Fu(Read)31 b(input)e(from)h(\014le)g
+(descriptor)h Fr(fd)i Fu(instead)d(of)h(the)g(standard)e(input.)630
+1828 y(Other)36 b(than)g(the)h(case)h(where)e Fr(delim)g
+Fu(is)h(the)f(empt)m(y)h(string,)i Ft(read)c Fu(ignores)i(an)m(y)g(NUL)
+630 1937 y(c)m(haracters)32 b(in)e(the)g(input.)630 2073
+y(If)d(no)h Fr(name)5 b Fu(s)28 b(are)g(supplied,)f Ft(read)f
+Fu(assigns)i(the)g(line)g(read,)h(without)e(the)h(ending)g(delim-)630
+2183 y(iter)j(but)f(otherwise)g(unmo)s(di\014ed,)f(to)i(the)g(v)-5
+b(ariable)31 b Ft(REPLY)p Fu(.)630 2318 y(The)40 b(exit)h(status)g(is)f
+(zero,)k(unless)c(end-of-\014le)g(is)h(encoun)m(tered,)i
+Ft(read)c Fu(times)i(out)g(\(in)630 2428 y(whic)m(h)28
+b(case)h(the)g(status)f(is)h(greater)g(than)f(128\),)j(a)d(v)-5
+b(ariable)29 b(assignmen)m(t)h(error)d(\(suc)m(h)i(as)630
+2538 y(assigning)f(to)g(a)g(readonly)g(v)-5 b(ariable\))29
+b(o)s(ccurs,)f(or)f(an)h(in)m(v)-5 b(alid)28 b(\014le)f(descriptor)h
+(is)f(supplied)630 2647 y(as)k(the)f(argumen)m(t)h(to)g
+Ft(-u)p Fu(.)150 2809 y Ft(readarray)870 2919 y(readarray)45
+b([-d)i Fj(delim)p Ft(])f([-n)h Fj(count)p Ft(])f([-O)h
+Fj(origin)p Ft(])f([-s)h Fj(count)p Ft(])1061 3028 y([-t])g([-u)f
+Fj(fd)p Ft(])h([-C)g Fj(callback)p Ft(])f([-c)g Fj(quantum)p
+Ft(])g([)p Fj(array)p Ft(])630 3164 y Fu(Read)38 b(lines)f(from)g(the)h
+(standard)e(input)g(in)m(to)j(the)e(indexed)g(arra)m(y)h(v)-5
+b(ariable)38 b Fr(arra)m(y)p Fu(,)i(or)630 3273 y(from)30
+b(\014le)g(descriptor)h Fr(fd)i Fu(if)d(the)h Ft(-u)e
+Fu(option)i(is)g(supplied.)630 3409 y(A)f(synon)m(ym)g(for)g
+Ft(mapfile)p Fu(.)150 3571 y Ft(source)870 3707 y(source)46
+b([-p)h Fj(path)p Ft(])f Fj(filename)g Ft([)p Fj(arguments)p
+Ft(])630 3842 y Fu(A)30 b(synon)m(ym)g(for)g Ft(.)g Fu(\(see)i(Section)
+f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(51\).)150
+4004 y Ft(type)870 4140 y(type)47 b([-afptP])e([)p Fj(name)i
+Ft(...)o(])630 4275 y Fu(Indicate)31 b(ho)m(w)f(eac)m(h)i
+Fr(name)j Fu(w)m(ould)c(b)s(e)e(in)m(terpreted)i(if)f(used)g(as)h(a)f
+(command)g(name.)630 4411 y(If)41 b(the)g Ft(-t)g Fu(option)h(is)f
+(used,)j Ft(type)c Fu(prin)m(ts)h(a)h(single)g(w)m(ord)f(whic)m(h)g(is)
+g(one)h(of)g(`)p Ft(alias)p Fu(',)630 4521 y(`)p Ft(keyword)p
+Fu(',)32 b(`)p Ft(function)p Fu(',)g(`)p Ft(builtin)p
+Fu(',)g(or)h(`)p Ft(file)p Fu(',)g(if)g Fr(name)38 b
+Fu(is)33 b(an)g(alias,)i(shell)e(reserv)m(ed)630 4630
+y(w)m(ord,)h(shell)f(function,)g(shell)h(builtin,)f(or)g(executable)i
+(\014le,)f(resp)s(ectiv)m(ely)-8 b(.)50 b(If)33 b(the)g
+Fr(name)630 4740 y Fu(is)d(not)h(found,)e Ft(type)h Fu(prin)m(ts)f
+(nothing)i(and)f(returns)f(a)h(failure)h(status.)630
+4876 y(If)25 b(the)h Ft(-p)f Fu(option)g(is)h(used,)g
+Ft(type)e Fu(either)i(returns)e(the)i(name)f(of)h(the)g(executable)h
+(\014le)e(that)630 4985 y(w)m(ould)j(b)s(e)f(found)g(b)m(y)h(searc)m
+(hing)h Ft($PATH)e Fu(for)h Ft(name)p Fu(,)g(or)g(nothing)g(if)g
+Ft(-t)g Fu(w)m(ould)g(not)g(return)630 5095 y(`)p Ft(file)p
+Fu('.)630 5230 y(The)i Ft(-P)g Fu(option)h(forces)g(a)g(path)f(searc)m
+(h)h(for)g(eac)m(h)g Fr(name)p Fu(,)g(ev)m(en)g(if)g
+Ft(-t)f Fu(w)m(ould)g(not)h(return)630 5340 y(`)p Ft(file)p
+Fu('.)p eop end
+%%Page: 71 77
+TeXDict begin 71 76 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(71)630 299 y(If)29
+b(a)h Fr(name)k Fu(is)29 b(presen)m(t)h(in)f(the)g(table)h(of)g(hashed)
+e(commands,)i(options)f Ft(-p)g Fu(and)g Ft(-P)f Fu(prin)m(t)630
+408 y(the)j(hashed)e(v)-5 b(alue,)31 b(whic)m(h)f(is)h(not)f
+(necessarily)i(the)e(\014le)h(that)g(app)s(ears)e(\014rst)h(in)g
+Ft($PATH)p Fu(.)630 542 y(If)e(the)h Ft(-a)f Fu(option)h(is)f(used,)h
+Ft(type)e Fu(returns)g(all)j(of)e(the)h(places)g(that)g(con)m(tain)h(a)
+f(command)630 652 y(named)c Fr(name)p Fu(.)39 b(This)25
+b(includes)g(aliases,)j(reserv)m(ed)e(w)m(ords,)g(functions,)h(and)d
+(builtins,)j(but)630 761 y(the)34 b(path)f(searc)m(h)i(options)f(\()p
+Ft(-p)f Fu(and)h Ft(-P)p Fu(\))f(can)h(b)s(e)f(supplied)g(to)h
+(restrict)h(the)f(output)f(to)630 871 y(executable)k(\014les.)55
+b(If)34 b Ft(-a)h Fu(is)g(supplied)f(with)h Ft(-p)p Fu(,)h
+Ft(type)e Fu(do)s(es)g(not)i(lo)s(ok)g(in)e(the)i(table)g(of)630
+980 y(hashed)30 b(commands,)g(and)g(only)g(p)s(erforms)f(a)i
+Ft(PATH)e Fu(searc)m(h)i(for)f Fr(name)p Fu(.)630 1114
+y(If)g(the)g Ft(-f)g Fu(option)g(is)h(used,)e Ft(type)g
+Fu(do)s(es)h(not)h(attempt)g(to)g(\014nd)d(shell)j(functions,)f(as)g
+(with)630 1224 y(the)h Ft(command)d Fu(builtin.)630 1357
+y(The)j(return)e(status)j(is)f(zero)h(if)f(all)g(of)h(the)f
+Fr(name)5 b Fu(s)31 b(are)g(found,)f(non-zero)i(if)f(an)m(y)g(are)h
+(not)630 1467 y(found.)150 1625 y Ft(typeset)870 1758
+y(typeset)46 b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p
+Ft([=)p Fj(value)p Ft(])d(...)o(])630 1892 y Fu(The)31
+b Ft(typeset)e Fu(command)i(is)g(supplied)f(for)h(compatibilit)m(y)i
+(with)e(the)g(Korn)f(shell.)44 b(It)31 b(is)630 2002
+y(a)g(synon)m(ym)f(for)g(the)g Ft(declare)f Fu(builtin)h(command.)150
+2159 y Ft(ulimit)870 2293 y(ulimit)46 b([-HS])g(-a)870
+2402 y(ulimit)g([-HS])g([-bcdefiklmnpqrstuvxPRT])c([)p
+Fj(limit)p Ft(])630 2536 y(ulimit)37 b Fu(pro)m(vides)h(con)m(trol)i(o)
+m(v)m(er)g(the)f(resources)f(a)m(v)-5 b(ailable)41 b(to)f(the)e(shell)h
+(and)f(to)h(pro-)630 2646 y(cesses)34 b(it)f(starts,)h(on)f(systems)g
+(that)g(allo)m(w)h(suc)m(h)f(con)m(trol.)49 b(If)33 b(an)g(option)g(is)
+g(giv)m(en,)i(it)e(is)630 2755 y(in)m(terpreted)e(as)f(follo)m(ws:)630
+2913 y Ft(-S)384 b Fu(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 3071 y Ft(-H)384
+b Fu(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 3228 y Ft(-a)384 b Fu(Rep)s(ort)30
+b(all)h(curren)m(t)f(limits;)i(no)e(limits)h(are)g(set.)630
+3386 y Ft(-b)384 b Fu(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i(bu\013er)
+e(size.)630 3544 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g
+(core)g(\014les)f(created.)630 3701 y Ft(-d)384 b Fu(The)30
+b(maxim)m(um)g(size)h(of)g(a)g(pro)s(cess's)f(data)h(segmen)m(t.)630
+3859 y Ft(-e)384 b Fu(The)30 b(maxim)m(um)g(sc)m(heduling)h(priorit)m
+(y)f(\()p Ft(")p Fu(nice)p Ft(")p Fu(\).)630 4017 y Ft(-f)384
+b Fu(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 4175 y Ft(-i)384
+b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e
+(signals.)630 4332 y Ft(-k)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s
+(er)f(of)i(kqueues)f(that)h(ma)m(y)g(b)s(e)e(allo)s(cated.)630
+4490 y Ft(-l)384 b Fu(The)30 b(maxim)m(um)g(size)h(that)g(ma)m(y)g(b)s
+(e)f(lo)s(c)m(k)m(ed)i(in)m(to)f(memory)-8 b(.)630 4648
+y Ft(-m)384 b Fu(The)36 b(maxim)m(um)g(residen)m(t)h(set)g(size)g
+(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110 4757
+y(limit\).)630 4915 y Ft(-n)384 b Fu(The)38 b(maxim)m(um)h(n)m(um)m(b)s
+(er)e(of)i(op)s(en)f(\014le)h(descriptors)g(\(most)g(systems)g(do)1110
+5025 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).)
+630 5182 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630
+5340 y Ft(-q)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m
+(ytes)g(in)f Fm(posix)f Fu(message)j(queues.)p eop end
+%%Page: 72 78
+TeXDict begin 72 77 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(72)630 299 y Ft(-r)384
+b Fu(The)30 b(maxim)m(um)g(real-time)i(sc)m(heduling)f(priorit)m(y)-8
+b(.)630 453 y Ft(-s)384 b Fu(The)30 b(maxim)m(um)g(stac)m(k)i(size.)630
+607 y Ft(-t)384 b Fu(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time)
+h(in)f(seconds.)630 761 y Ft(-u)384 b Fu(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 915 y Ft(-v)384 b Fu(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h
+(virtual)f(memory)g(a)m(v)-5 b(ailable)44 b(to)e(the)g(shell,)1110
+1025 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
+1179 y Ft(-x)384 b Fu(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 1333 y Ft(-P)384 b Fu(The)30
+b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(pseudoterminals.)630
+1487 y Ft(-R)384 b Fu(The)27 b(maxim)m(um)h(time)h(a)f(real-time)i(pro)
+s(cess)d(can)i(run)d(b)s(efore)i(blo)s(c)m(king,)h(in)1110
+1597 y(microseconds.)630 1751 y Ft(-T)384 b Fu(The)30
+b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 1905
+y(If)e Fr(limit)k Fu(is)c(supplied,)g(and)g(the)h Ft(-a)f
+Fu(option)h(is)g(not)g(used,)f Fr(limit)j Fu(is)e(the)g(new)f(v)-5
+b(alue)30 b(of)g(the)630 2015 y(sp)s(eci\014ed)j(resource.)51
+b(The)34 b(sp)s(ecial)g Fr(limit)j Fu(v)-5 b(alues)34
+b Ft(hard)p Fu(,)g Ft(soft)p Fu(,)g(and)f Ft(unlimited)e
+Fu(stand)630 2125 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g
+(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)h(resp)s(ectiv)m(ely)-8
+b(.)48 b(A)630 2234 y(hard)24 b(limit)i(cannot)g(b)s(e)e(increased)h(b)
+m(y)g(a)h(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)j(a)d(soft)g
+(limit)h(ma)m(y)630 2344 y(b)s(e)35 b(increased)h(up)f(to)i(the)f(v)-5
+b(alue)36 b(of)g(the)g(hard)f(limit.)58 b(Otherwise,)37
+b Ft(ulimit)d Fu(prin)m(ts)i(the)630 2453 y(curren)m(t)29
+b(v)-5 b(alue)29 b(of)g(the)g(soft)h(limit)f(for)g(the)g(sp)s
+(eci\014ed)f(resource,)i(unless)e(the)h Ft(-H)g Fu(option)g(is)630
+2563 y(supplied.)47 b(When)33 b(more)g(than)g(one)g(resource)g(is)g(sp)
+s(eci\014ed,)g(the)g(limit)h(name)f(and)f(unit,)630 2672
+y(if)27 b(appropriate,)h(are)f(prin)m(ted)g(b)s(efore)g(the)g(v)-5
+b(alue.)40 b(When)27 b(setting)h(new)e(limits,)j(if)e(neither)630
+2782 y Ft(-H)32 b Fu(nor)h Ft(-S)f Fu(is)h(supplied,)f
+Ft(ulimit)f Fu(sets)j(b)s(oth)e(the)h(hard)f(and)g(soft)h(limits.)49
+b(If)33 b(no)f(option)630 2892 y(is)e(supplied,)g(then)g
+Ft(-f)g Fu(is)g(assumed.)630 3024 y(V)-8 b(alues)24 b(are)f(in)f
+(1024-b)m(yte)k(incremen)m(ts,)f(except)f(for)e Ft(-t)p
+Fu(,)i(whic)m(h)f(is)f(in)h(seconds;)i Ft(-R)p Fu(,)f(whic)m(h)630
+3133 y(is)33 b(in)f(microseconds;)i Ft(-p)p Fu(,)f(whic)m(h)f(is)g(in)g
+(units)g(of)h(512-b)m(yte)i(blo)s(c)m(ks;)f Ft(-P)p Fu(,)f
+Ft(-T)p Fu(,)f Ft(-b)p Fu(,)h Ft(-k)p Fu(,)g Ft(-n)630
+3243 y Fu(and)c Ft(-u)p Fu(,)h(whic)m(h)f(are)h(unscaled)f(v)-5
+b(alues;)31 b(and,)e(when)g(in)h Fm(posix)e Fu(Mo)s(de)i(\(see)h
+(Section)f(6.11)630 3352 y([Bash)h(POSIX)e(Mo)s(de],)i(page)g(115\),)i
+Ft(-c)c Fu(and)h Ft(-f)p Fu(,)g(whic)m(h)g(are)h(in)f(512-b)m(yte)j
+(incremen)m(ts.)630 3484 y(The)h(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 3594 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
+(limit.)150 3748 y Ft(unalias)870 3880 y(unalias)46 b([-a])g([)p
+Fj(name)h Ft(...)g(])630 4012 y Fu(Remo)m(v)m(e)30 b(eac)m(h)f
+Fr(name)34 b Fu(from)27 b(the)i(list)g(of)f(aliases.)41
+b(If)28 b Ft(-a)g Fu(is)g(supplied,)f(remo)m(v)m(e)j(all)f(aliases.)630
+4121 y(The)i(return)g(v)-5 b(alue)33 b(is)e(true)h(unless)f(a)i
+(supplied)d Fr(name)37 b Fu(is)32 b(not)g(a)h(de\014ned)d(alias.)47
+b(Aliases)630 4231 y(are)31 b(describ)s(ed)e(in)h(Section)h(6.6)h
+([Aliases],)g(page)f(108.)150 4466 y Fs(4.3)68 b(Mo)t(difying)45
+b(Shell)g(Beha)l(vior)150 4688 y Fk(4.3.1)63 b(The)41
+b(Set)g(Builtin)150 4835 y Fu(This)35 b(builtin)h(is)g(so)g
+(complicated)i(that)f(it)f(deserv)m(es)h(its)f(o)m(wn)g(section.)59
+b Ft(set)35 b Fu(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150
+4944 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
+(p)s(ositional)h(parameters,)h(or)e(to)h(displa)m(y)f(the)g(names)h
+(and)150 5054 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
+5208 y Ft(set)870 5340 y(set)47 b([-abefhkmnptuvxBCEHPT])42
+b([-o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e
+Ft(...)o(])p eop end
+%%Page: 73 79
+TeXDict begin 73 78 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(73)870 299 y Ft(set)47
+b([+abefhkmnptuvxBCEHPT])42 b([+o)47 b Fj(option-name)p
+Ft(])d([--])j([-])g([)p Fj(argument)e Ft(...)o(])870
+408 y(set)i(-o)870 518 y(set)g(+o)630 648 y Fu(If)22
+b(no)h(options)g(or)g(argumen)m(ts)g(are)g(supplied,)g
+Ft(set)f Fu(displa)m(ys)g(the)h(names)g(and)f(v)-5 b(alues)23
+b(of)g(all)630 757 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 867 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 976 y(Read-only)37 b(v)-5 b(ariables)37
+b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fm(posix)g Fu(mo)s(de,)i(only)f
+(shell)f(v)-5 b(ariables)38 b(are)630 1086 y(listed.)630
+1215 y(When)32 b(options)h(are)g(supplied,)f(they)h(set)g(or)g(unset)f
+(shell)h(attributes.)48 b(An)m(y)33 b(argumen)m(ts)630
+1325 y(remaining)d(after)h(option)g(pro)s(cessing)f(replace)i(the)e(p)s
+(ositional)h(parameters.)630 1455 y(Options,)f(if)h(sp)s(eci\014ed,)e
+(ha)m(v)m(e)j(the)f(follo)m(wing)g(meanings:)630 1604
+y Ft(-a)384 b Fu(Eac)m(h)37 b(v)-5 b(ariable)36 b(or)g(function)g(that)
+g(is)g(created)h(or)f(mo)s(di\014ed)f(is)h(giv)m(en)h(the)1110
+1714 y(exp)s(ort)28 b(attribute)h(and)f(mark)m(ed)g(for)g(exp)s(ort)g
+(to)h(the)g(en)m(vironmen)m(t)f(of)h(sub-)1110 1823 y(sequen)m(t)i
+(commands.)630 1973 y Ft(-b)384 b Fu(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
+2082 y(immediately)-8 b(,)32 b(rather)e(than)g(b)s(efore)g(prin)m(ting)
+g(the)h(next)f(primary)g(prompt)1110 2192 y(or,)j(under)e(some)h
+(circumstances,)i(when)d(a)i(foreground)e(command)h(exits.)1110
+2301 y(This)e(is)g(e\013ectiv)m(e)j(only)d(when)g(job)g(con)m(trol)i
+(is)e(enabled.)630 2451 y Ft(-e)384 b Fu(Exit)65 b(immediately)g(if)f
+(a)h(pip)s(eline)e(\(see)i(Section)g(3.2.3)h([Pip)s(elines],)1110
+2560 y(page)51 b(10\),)58 b(whic)m(h)50 b(ma)m(y)h(consist)h(of)e(a)i
+(single)f(simple)g(command)f(\(see)1110 2670 y(Section)30
+b(3.2.2)i([Simple)d(Commands],)g(page)h(9\),)h(a)f(list)g(\(see)h
+(Section)f(3.2.4)1110 2780 y([Lists],)60 b(page)55 b(11\),)60
+b(or)54 b(a)g(comp)s(ound)e(command)h(\(see)i(Section)f(3.2.5)1110
+2889 y([Comp)s(ound)60 b(Commands],)70 b(page)63 b(11\))g(returns)e(a)i
+(non-zero)f(status.)1110 2999 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h
+(if)f(the)h(command)f(that)h(fails)f(is)g(part)g(of)h(the)1110
+3108 y(command)g(list)h(immediately)g(follo)m(wing)g(a)g
+Ft(while)e Fu(or)h Ft(until)e Fu(k)m(eyw)m(ord,)1110
+3218 y(part)27 b(of)h(the)g(test)h(in)e(an)g Ft(if)g
+Fu(statemen)m(t,)k(part)c(of)h(an)m(y)g(command)f(executed)1110
+3328 y(in)41 b(a)g Ft(&&)f Fu(or)h Ft(||)g Fu(list)g(except)h(the)g
+(command)e(follo)m(wing)j(the)e(\014nal)g Ft(&&)f Fu(or)1110
+3437 y Ft(||)p Fu(,)d(an)m(y)g(command)f(in)g(a)h(pip)s(eline)f(but)g
+(the)g(last)h(\(sub)5 b(ject)37 b(to)g(the)g(state)1110
+3547 y(of)h(the)f Ft(pipefail)f Fu(shell)i(option\),)i(or)d(if)h(the)g
+(command's)f(return)g(status)1110 3656 y(is)i(b)s(eing)g(in)m(v)m
+(erted)h(with)f Ft(!)p Fu(.)66 b(If)39 b(a)h(comp)s(ound)d(command)i
+(other)h(than)f(a)1110 3766 y(subshell)28 b(returns)g(a)i(non-zero)g
+(status)f(b)s(ecause)g(a)h(command)f(failed)h(while)1110
+3875 y Ft(-e)38 b Fu(w)m(as)h(b)s(eing)f(ignored,)j(the)e(shell)f(do)s
+(es)h(not)f(exit.)67 b(A)38 b(trap)h(on)f Ft(ERR)p Fu(,)i(if)1110
+3985 y(set,)31 b(is)g(executed)g(b)s(efore)f(the)g(shell)h(exits.)1110
+4115 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)m(t)g
+(and)f(eac)m(h)h(subshell)f(en-)1110 4224 y(vironmen)m(t)j(separately)i
+(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
+4334 y(vironmen)m(t],)i(page)f(45\),)i(and)d(ma)m(y)h(cause)f
+(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 4443 y(cuting)d(all)g
+(the)g(commands)f(in)g(the)g(subshell.)1110 4573 y(If)41
+b(a)g(comp)s(ound)e(command)i(or)g(shell)g(function)g(executes)h(in)f
+(a)g(con)m(text)1110 4682 y(where)31 b Ft(-e)g Fu(is)g(b)s(eing)g
+(ignored,)h(none)f(of)h(the)f(commands)g(executed)h(within)1110
+4792 y(the)j(comp)s(ound)f(command)h(or)g(function)f(b)s(o)s(dy)g(will)
+h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110 4902 y Ft(-e)25
+b Fu(setting,)j(ev)m(en)e(if)g Ft(-e)f Fu(is)h(set)g(and)f(a)h(command)
+g(returns)e(a)i(failure)g(status.)1110 5011 y(If)32 b(a)i(comp)s(ound)d
+(command)i(or)g(shell)g(function)f(sets)i Ft(-e)e Fu(while)h(executing)
+1110 5121 y(in)40 b(a)h(con)m(text)i(where)d Ft(-e)g
+Fu(is)h(ignored,)j(that)d(setting)h(will)f(not)g(ha)m(v)m(e)h(an)m(y)
+1110 5230 y(e\013ect)g(un)m(til)e(the)h(comp)s(ound)e(command)h(or)g
+(the)g(command)g(con)m(taining)1110 5340 y(the)31 b(function)f(call)h
+(completes.)p eop end
+%%Page: 74 80
+TeXDict begin 74 79 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(74)630 299 y Ft(-f)384
+b Fu(Disable)31 b(\014lename)g(expansion)f(\(globbing\).)630
+460 y Ft(-h)384 b Fu(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
+570 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
+(default.)630 731 y Ft(-k)384 b Fu(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
+840 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 950 y(command)30 b(name.)630
+1111 y Ft(-m)384 b Fu(Job)28 b(con)m(trol)h(is)f(enabled)g(\(see)h
+(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(123\).)41
+b(All)1110 1221 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
+(cess)f(group.)40 b(When)27 b(a)h(bac)m(kground)f(job)1110
+1330 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
+(taining)i(its)f(exit)g(status.)630 1491 y Ft(-n)384
+b Fu(Read)38 b(commands)f(but)f(do)i(not)f(execute)i(them.)62
+b(This)37 b(ma)m(y)h(b)s(e)f(used)f(to)1110 1601 y(c)m(hec)m(k)d(a)e
+(script)g(for)g(syn)m(tax)h(errors.)42 b(This)30 b(option)i(is)f
+(ignored)g(b)m(y)g(in)m(terac-)1110 1711 y(tiv)m(e)h(shells.)630
+1872 y Ft(-o)e Fj(option-name)1110 1981 y Fu(Set)44 b(the)h(option)f
+(corresp)s(onding)f(to)i Fr(option-name)p Fu(.)83 b(If)44
+b Ft(-o)f Fu(is)h(supplied)1110 2091 y(with)29 b(no)h
+Fr(option-name)p Fu(,)h Ft(set)e Fu(prin)m(ts)g(the)g(curren)m(t)h
+(shell)g(options)g(settings.)1110 2201 y(If)37 b Ft(+o)g
+Fu(is)h(supplied)e(with)h(no)h Fr(option-name)p Fu(,)i
+Ft(set)d Fu(prin)m(ts)g(a)h(series)g(of)g Ft(set)1110
+2310 y Fu(commands)31 b(to)i(recreate)g(the)f(curren)m(t)g(option)g
+(settings)h(on)f(the)g(standard)1110 2420 y(output.)40
+b(V)-8 b(alid)32 b(option)f(names)f(are:)1110 2581 y
+Ft(allexport)1590 2690 y Fu(Same)g(as)h Ft(-a)p Fu(.)1110
+2852 y Ft(braceexpand)1590 2961 y Fu(Same)f(as)h Ft(-B)p
+Fu(.)1110 3122 y Ft(emacs)240 b Fu(Use)25 b(an)f Ft(emacs)p
+Fu(-st)m(yle)h(line)f(editing)h(in)m(terface)h(\(see)g(Chapter)e(8)1590
+3232 y([Command)33 b(Line)g(Editing],)h(page)h(128\).)51
+b(This)32 b(also)i(a\013ects)1590 3342 y(the)d(editing)g(in)m(terface)h
+(used)d(for)h Ft(read)f(-e)p Fu(.)1110 3503 y Ft(errexit)144
+b Fu(Same)30 b(as)h Ft(-e)p Fu(.)1110 3664 y Ft(errtrace)96
+b Fu(Same)30 b(as)h Ft(-E)p Fu(.)1110 3825 y Ft(functrace)1590
+3935 y Fu(Same)f(as)h Ft(-T)p Fu(.)1110 4096 y Ft(hashall)144
+b Fu(Same)30 b(as)h Ft(-h)p Fu(.)1110 4257 y Ft(histexpand)1590
+4367 y Fu(Same)f(as)h Ft(-H)p Fu(.)1110 4528 y Ft(history)144
+b Fu(Enable)39 b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h
+(Section)h(9.1)1590 4637 y([Bash)d(History)g(F)-8 b(acilities],)41
+b(page)c(166.)60 b(This)36 b(option)h(is)f(on)1590 4747
+y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110
+4908 y Ft(ignoreeof)1590 5018 y Fu(An)d(in)m(teractiv)m(e)j(shell)e
+(will)g(not)f(exit)h(up)s(on)e(reading)i(EOF.)1110 5179
+y Ft(keyword)144 b Fu(Same)30 b(as)h Ft(-k)p Fu(.)1110
+5340 y Ft(monitor)144 b Fu(Same)30 b(as)h Ft(-m)p Fu(.)p
+eop end
+%%Page: 75 81
+TeXDict begin 75 80 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(75)1110 299 y
+Ft(noclobber)1590 408 y Fu(Same)30 b(as)h Ft(-C)p Fu(.)1110
+580 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p Fu(.)1110
+751 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p Fu(.)1110
+922 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110
+1093 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110
+1265 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110
+1436 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110
+1607 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110
+1778 y Ft(pipefail)96 b Fu(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 1888 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
+(exit)g(with)f(a)g(non-zero)1590 1998 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
+2107 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
+(default.)1110 2278 y Ft(posix)240 b Fu(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
+2388 y(tion)25 b(di\013ers)f(from)g(the)h Fm(posix)f
+Fu(standard)f(to)i(matc)m(h)h(the)f(stan-)1590 2498 y(dard)h(\(see)j
+(Section)f(6.11)h([Bash)f(POSIX)e(Mo)s(de],)j(page)f(115\).)1590
+2607 y(This)37 b(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 2717 y(p)s(erset)30 b(of)h(that)f
+(standard.)1110 2888 y Ft(privileged)1590 2998 y Fu(Same)g(as)h
+Ft(-p)p Fu(.)1110 3169 y Ft(verbose)144 b Fu(Same)30
+b(as)h Ft(-v)p Fu(.)1110 3340 y Ft(vi)384 b Fu(Use)36
+b(a)g Ft(vi)p Fu(-st)m(yle)g(line)g(editing)g(in)m(terface.)58
+b(This)35 b(also)h(a\013ects)1590 3450 y(the)31 b(editing)g(in)m
+(terface)h(used)d(for)h Ft(read)f(-e)p Fu(.)1110 3621
+y Ft(xtrace)192 b Fu(Same)30 b(as)h Ft(-x)p Fu(.)630
+3792 y Ft(-p)384 b Fu(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 Ft($BASH_ENV)e Fu(and)h
+Ft($ENV)1110 3902 y Fu(\014les)23 b(are)h(not)f(pro)s(cessed,)h(shell)g
+(functions)e(are)i(not)f(inherited)g(from)f(the)i(en-)1110
+4011 y(vironmen)m(t,)h(and)e(the)g Ft(SHELLOPTS)p Fu(,)f
+Ft(BASHOPTS)p Fu(,)h Ft(CDPATH)e Fu(and)i Ft(GLOBIGNORE)1110
+4121 y Fu(v)-5 b(ariables,)23 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m
+(vironmen)m(t,)i(are)e(ignored.)38 b(If)20 b(the)h(shell)1110
+4230 y(is)37 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d
+(\(group\))g(id)g(not)g(equal)h(to)g(the)f(real)1110
+4340 y(user)h(\(group\))h(id,)i(and)d(the)h Ft(-p)f Fu(option)i(is)e
+(not)i(supplied,)f(these)h(actions)1110 4450 y(are)32
+b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)h(to)f
+(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 4559 y
+Ft(-p)i Fu(option)h(is)g(supplied)f(at)h(startup,)h(the)f(e\013ectiv)m
+(e)i(user)d(id)g(is)h(not)g(reset.)1110 4669 y(T)-8 b(urning)35
+b(this)i(option)g(o\013)g(causes)g(the)g(e\013ectiv)m(e)i(user)d(and)g
+(group)g(ids)g(to)1110 4778 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f
+(and)g(group)g(ids.)630 4950 y Ft(-r)384 b Fu(Enable)51
+b(restricted)h(shell)g(mo)s(de)f(\(see)h(Section)g(6.10)h([The)e
+(Restricted)1110 5059 y(Shell],)42 b(page)e(114\).)69
+b(This)39 b(option)g(cannot)h(b)s(e)f(unset)g(once)h(it)g(has)f(b)s
+(een)1110 5169 y(set.)630 5340 y Ft(-t)384 b Fu(Exit)31
+b(after)g(reading)f(and)g(executing)h(one)g(command.)p
+eop end
+%%Page: 76 82
+TeXDict begin 76 81 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(76)630 299 y Ft(-u)384
+b Fu(T)-8 b(reat)25 b(unset)e(v)-5 b(ariables)25 b(and)e(parameters)h
+(other)h(than)e(the)h(sp)s(ecial)h(param-)1110 408 y(eters)32
+b(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)g(or)f(arra)m(y)h(v)-5
+b(ariables)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p
+Ft(*)p Fu(',)f(as)h(an)1110 518 y(error)24 b(when)g(p)s(erforming)g
+(parameter)h(expansion.)39 b(An)24 b(error)h(message)h(will)1110
+628 y(b)s(e)37 b(written)h(to)h(the)f(standard)f(error,)i(and)f(a)g
+(non-in)m(teractiv)m(e)j(shell)d(will)1110 737 y(exit.)630
+891 y Ft(-v)384 b Fu(Prin)m(t)30 b(shell)h(input)e(lines)i(to)g
+(standard)f(error)g(as)g(they)h(are)g(read.)630 1044
+y Ft(-x)384 b Fu(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f(commands,)i
+Ft(for)e Fu(commands,)i Ft(case)d Fu(commands,)1110 1154
+y Ft(select)41 b Fu(commands,)46 b(and)c(arithmetic)i
+Ft(for)e Fu(commands)h(and)f(their)h(ar-)1110 1263 y(gumen)m(ts)37
+b(or)f(asso)s(ciated)i(w)m(ord)f(lists)g(to)g(the)g(standard)e(error)i
+(after)g(they)1110 1373 y(are)h(expanded)e(and)h(b)s(efore)g(they)g
+(are)h(executed.)62 b(The)37 b(shell)g(prin)m(ts)g(the)1110
+1482 y(expanded)j(v)-5 b(alue)42 b(of)f(the)g Ft(PS4)f
+Fu(v)-5 b(ariable)42 b(b)s(efore)f(the)g(command)g(and)g(its)1110
+1592 y(expanded)30 b(argumen)m(ts.)630 1745 y Ft(-B)384
+b Fu(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 1855 y(Expansion],)30
+b(page)h(25\).)42 b(This)30 b(option)h(is)f(on)g(b)m(y)h(default.)630
+2008 y Ft(-C)384 b Fu(Prev)m(en)m(t)25 b(output)e(redirection)h(using)f
+(`)p Ft(>)p Fu(',)i(`)p Ft(>&)p Fu(',)g(and)e(`)p Ft(<>)p
+Fu(')g(from)h(o)m(v)m(erwriting)1110 2118 y(existing)30
+b(\014les.)40 b(Using)30 b(the)f(redirection)h(op)s(erator)f(`)p
+Ft(>|)p Fu(')h(instead)f(of)g(`)p Ft(>)p Fu(')h(will)1110
+2228 y(o)m(v)m(erride)h(this)g(and)f(force)g(the)h(creation)h(of)e(an)h
+(output)f(\014le.)630 2381 y Ft(-E)384 b Fu(If)39 b(set,)j(an)m(y)e
+(trap)f(on)g Ft(ERR)g Fu(is)g(inherited)g(b)m(y)g(shell)h(functions,)h
+(command)1110 2491 y(substitutions,)35 b(and)e(commands)g(executed)i
+(in)f(a)g(subshell)f(en)m(vironmen)m(t.)1110 2600 y(The)d
+Ft(ERR)f Fu(trap)i(is)f(normally)h(not)f(inherited)g(in)g(suc)m(h)g
+(cases.)630 2754 y Ft(-H)384 b Fu(Enable)38 b(`)p Ft(!)p
+Fu(')h(st)m(yle)h(history)e(substitution)g(\(see)h(Section)h(9.3)f
+([History)g(In-)1110 2863 y(teraction],)g(page)d(169\).)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 2973 y(shells.)630 3126 y Ft(-P)384 b Fu(If)36
+b(set,)j(Bash)d(do)s(es)g(not)h(resolv)m(e)h(sym)m(b)s(olic)f(links)f
+(when)f(executing)j(com-)1110 3236 y(mands)46 b(suc)m(h)h(as)g
+Ft(cd)g Fu(whic)m(h)f(c)m(hange)i(the)g(curren)m(t)f(directory)-8
+b(.)91 b(It)47 b(uses)1110 3345 y(the)35 b(ph)m(ysical)f(directory)h
+(structure)f(instead.)53 b(By)35 b(default,)g(Bash)g(follo)m(ws)1110
+3455 y(the)g(logical)i(c)m(hain)e(of)g(directories)h(when)d(p)s
+(erforming)h(commands)g(whic)m(h)1110 3565 y(c)m(hange)e(the)e(curren)m
+(t)g(directory)-8 b(.)1110 3696 y(F)g(or)42 b(example,)i(if)d
+Ft(/usr/sys)e Fu(is)i(a)g(sym)m(b)s(olic)g(link)g(to)h
+Ft(/usr/local/sys)1110 3806 y Fu(then:)1350 3937 y Ft($)47
+b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4047 y(/usr/sys)1350
+4156 y($)g(cd)h(..;)f(pwd)1350 4266 y(/usr)1110 4398
+y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 4529
+y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4639 y(/usr/local/sys)
+1350 4748 y($)g(cd)h(..;)f(pwd)1350 4858 y(/usr/local)630
+5011 y(-T)384 b Fu(If)31 b(set,)j(an)m(y)e(traps)g(on)f
+Ft(DEBUG)g Fu(and)g Ft(RETURN)g Fu(are)h(inherited)g(b)m(y)f(shell)i
+(func-)1110 5121 y(tions,)40 b(command)d(substitutions,)h(and)f
+(commands)g(executed)h(in)f(a)h(sub-)1110 5230 y(shell)33
+b(en)m(vironmen)m(t.)49 b(The)32 b Ft(DEBUG)g Fu(and)g
+Ft(RETURN)f Fu(traps)h(are)i(normally)f(not)1110 5340
+y(inherited)d(in)g(suc)m(h)g(cases.)p eop end
+%%Page: 77 83
+TeXDict begin 77 82 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(77)630 299 y Ft(--)384
+b Fu(If)24 b(no)h(argumen)m(ts)g(follo)m(w)h(this)e(option,)j(unset)d
+(the)h(p)s(ositional)g(parameters.)1110 408 y(Otherwise,)f(the)f(p)s
+(ositional)h(parameters)f(are)g(set)g(to)h(the)e Fr(argumen)m(ts)p
+Fu(,)j(ev)m(en)1110 518 y(if)30 b(some)h(of)g(them)f(b)s(egin)g(with)g
+(a)h(`)p Ft(-)p Fu('.)630 681 y Ft(-)432 b Fu(Signal)37
+b(the)h(end)e(of)h(options,)i(and)e(assign)g(all)h(remaining)f
+Fr(argumen)m(ts)k Fu(to)1110 790 y(the)35 b(p)s(ositional)h
+(parameters.)56 b(The)35 b Ft(-x)f Fu(and)h Ft(-v)f Fu(options)i(are)f
+(turned)f(o\013.)1110 900 y(If)40 b(there)g(are)h(no)f(argumen)m(ts,)j
+(the)e(p)s(ositional)g(parameters)g(remain)f(un-)1110
+1009 y(c)m(hanged.)630 1172 y(Using)27 b(`)p Ft(+)p Fu(')h(rather)f
+(than)g(`)p Ft(-)p Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e
+(turned)g(o\013.)40 b(The)27 b(options)h(can)630 1281
+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 1391 y(found)29 b(in)h Ft($-)p Fu(.)630 1527 y(The)43
+b(remaining)h(N)f Fr(argumen)m(ts)48 b Fu(are)c(p)s(ositional)g
+(parameters)g(and)f(are)h(assigned,)j(in)630 1637 y(order,)30
+b(to)h Ft($1)p Fu(,)f Ft($2)p Fu(,)36 b(.)22 b(.)g(.)42
+b Ft($N)p Fu(.)e(The)30 b(sp)s(ecial)h(parameter)g Ft(#)f
+Fu(is)g(set)h(to)g(N.)630 1773 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 1975 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
+2122 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
+(additional)f(optional)g(shell)g(b)s(eha)m(vior.)150
+2286 y Ft(shopt)870 2422 y(shopt)46 b([-pqsu])g([-o])h([)p
+Fj(optname)e Ft(...])630 2558 y Fu(T)-8 b(oggle)37 b(the)e(v)-5
+b(alues)35 b(of)g(settings)h(con)m(trolling)g(optional)g(shell)f(b)s
+(eha)m(vior.)55 b(The)34 b(settings)630 2668 y(can)24
+b(b)s(e)g(either)h(those)f(listed)h(b)s(elo)m(w,)h(or,)f(if)g(the)f
+Ft(-o)f Fu(option)i(is)f(used,)h(those)g(a)m(v)-5 b(ailable)26
+b(with)630 2778 y(the)k Ft(-o)f Fu(option)i(to)f(the)g
+Ft(set)f Fu(builtin)h(command)f(\(see)i(Section)g(4.3.1)g([The)f(Set)g
+(Builtin],)630 2887 y(page)h(72\).)630 3023 y(With)37
+b(no)f(options,)j(or)d(with)g(the)h Ft(-p)f Fu(option,)i(displa)m(y)f
+(a)g(list)g(of)f(all)h(settable)h(options,)630 3133 y(with)30
+b(an)g(indication)h(of)g(whether)e(or)i(not)f(eac)m(h)h(is)g(set;)g(if)
+f(an)m(y)h Fr(optname)5 b Fu(s)30 b(are)h(supplied,)630
+3242 y(the)36 b(output)f(is)g(restricted)h(to)h(those)f(options.)56
+b(The)35 b Ft(-p)g Fu(option)h(displa)m(ys)f(output)g(in)h(a)630
+3352 y(form)30 b(that)h(ma)m(y)g(b)s(e)f(reused)f(as)i(input.)630
+3488 y(Other)f(options)h(ha)m(v)m(e)g(the)g(follo)m(wing)h(meanings:)
+630 3651 y Ft(-s)384 b Fu(Enable)30 b(\(set\))i(eac)m(h)f
+Fr(optname)p Fu(.)630 3813 y Ft(-u)384 b Fu(Disable)31
+b(\(unset\))g(eac)m(h)h Fr(optname)p Fu(.)630 3976 y
+Ft(-q)384 b Fu(Suppresses)28 b(normal)h(output;)h(the)g(return)e
+(status)i(indicates)h(whether)e(the)1110 4085 y Fr(optname)40
+b Fu(is)35 b(set)g(or)f(unset.)53 b(If)35 b(m)m(ultiple)g
+Fr(optname)40 b Fu(argumen)m(ts)35 b(are)g(sup-)1110
+4195 y(plied)28 b(with)f Ft(-q)p Fu(,)h(the)g(return)e(status)i(is)g
+(zero)g(if)g(all)h Fr(optname)5 b Fu(s)28 b(are)g(enabled;)1110
+4304 y(non-zero)j(otherwise.)630 4467 y Ft(-o)384 b Fu(Restricts)22
+b(the)f(v)-5 b(alues)22 b(of)f Fr(optname)27 b Fu(to)22
+b(b)s(e)e(those)i(de\014ned)e(for)h(the)g Ft(-o)f Fu(option)1110
+4577 y(to)31 b(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)h(4.3.1)g
+([The)e(Set)g(Builtin],)i(page)f(72\).)630 4739 y(If)e(either)i
+Ft(-s)e Fu(or)h Ft(-u)f Fu(is)h(used)f(with)g(no)h Fr(optname)35
+b Fu(argumen)m(ts,)c Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630
+4849 y(options)h(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m
+(ely)-8 b(.)630 4985 y(Unless)30 b(otherwise)h(noted,)g(the)g
+Ft(shopt)d Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32
+b(b)m(y)e(default.)630 5121 y(The)d(return)f(status)i(when)e(listing)j
+(options)e(is)h(zero)g(if)f(all)i Fr(optname)5 b Fu(s)27
+b(are)h(enabled,)g(non-)630 5230 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 5340 y(unless)30 b(an)g Fr(optname)36
+b Fu(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)p
+eop end
+%%Page: 78 84
+TeXDict begin 78 83 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(78)630 299 y(The)30
+b(list)h(of)f Ft(shopt)f Fu(options)i(is:)630 463 y Ft
+(array_expand_once)1110 573 y Fu(If)39 b(set,)j(the)d(shell)g
+(suppresses)e(m)m(ultiple)j(ev)-5 b(aluation)41 b(of)e(asso)s(ciativ)m
+(e)j(and)1110 682 y(indexed)37 b(arra)m(y)h(subscripts)e(during)g
+(arithmetic)j(expression)e(ev)-5 b(aluation,)1110 792
+y(while)23 b(executing)h(builtins)f(that)g(can)h(p)s(erform)d(v)-5
+b(ariable)24 b(assignmen)m(ts,)i(and)1110 902 y(while)k(executing)i
+(builtins)e(that)h(p)s(erform)e(arra)m(y)i(dereferencing.)630
+1066 y Ft(assoc_expand_once)1110 1176 y Fu(Deprecated;)h(a)f(synon)m
+(ym)f(for)g Ft(array_expand_once)p Fu(.)630 1340 y Ft(autocd)192
+b Fu(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 1450 y(as)j(if)f(it)h(w)m(ere)f
+(the)h(argumen)m(t)g(to)g(the)f Ft(cd)g Fu(command.)40
+b(This)29 b(option)g(is)h(only)1110 1559 y(used)g(b)m(y)g(in)m
+(teractiv)m(e)j(shells.)630 1724 y Ft(bash_source_fullpath)1110
+1833 y Fu(If)d(set,)h(\014lenames)f(added)g(to)h(the)f
+Ft(BASH_SOURCE)e Fu(arra)m(y)j(v)-5 b(ariable)31 b(are)f(con-)1110
+1943 y(v)m(erted)23 b(to)h(full)e(pathnames)g(\(see)i(Section)f(5.2)h
+([Bash)f(V)-8 b(ariables],)26 b(page)d(86\).)630 2107
+y Ft(cdable_vars)1110 2217 y Fu(If)34 b(this)h(is)g(set,)i(an)e
+(argumen)m(t)g(to)h(the)f Ft(cd)f Fu(builtin)h(command)f(that)i(is)f
+(not)1110 2326 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 2436 y(the)g(directory)f(to)i(c)m(hange)f(to.)630
+2600 y Ft(cdspell)144 b Fu(If)42 b(set,)k(the)c Ft(cd)f
+Fu(command)h(attempts)h(to)g(correct)h(minor)d(errors)h(in)g(the)1110
+2710 y(sp)s(elling)27 b(of)f(a)h(directory)g(comp)s(onen)m(t.)40
+b(Minor)27 b(errors)f(include)g(transp)s(osed)1110 2819
+y(c)m(haracters,)50 b(a)45 b(missing)f(c)m(haracter,)50
+b(and)44 b(one)h(extra)g(c)m(haracter.)85 b(If)44 b Ft(cd)1110
+2929 y Fu(corrects)37 b(the)g(directory)g(name,)h(it)f(prin)m(ts)e(the)
+i(corrected)g(\014lename,)i(and)1110 3039 y(the)j(command)g(pro)s
+(ceeds.)76 b(This)41 b(option)i(is)f(only)h(used)e(b)m(y)h(in)m
+(teractiv)m(e)1110 3148 y(shells.)630 3313 y Ft(checkhash)1110
+3422 y Fu(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 3532
+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 3641
+y(exists,)f(Bash)g(p)s(erforms)e(a)h(normal)h(path)f(searc)m(h.)630
+3806 y Ft(checkjobs)1110 3915 y Fu(If)e(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 4025 y(exiting)39 b(an)g(in)m(teractiv)m(e)i(shell.)65
+b(If)38 b(an)m(y)g(jobs)g(are)h(running,)g(Bash)f(defers)1110
+4134 y(the)j(exit)h(un)m(til)f(a)g(second)f(exit)i(is)f(attempted)h
+(without)e(an)h(in)m(terv)m(ening)1110 4244 y(command)22
+b(\(see)i(Chapter)e(7)h([Job)g(Con)m(trol],)i(page)f(123\).)39
+b(The)23 b(shell)f(alw)m(a)m(ys)1110 4354 y(p)s(ostp)s(ones)29
+b(exiting)j(if)e(an)m(y)h(jobs)f(are)g(stopp)s(ed.)630
+4518 y Ft(checkwinsize)1110 4628 y Fu(If)23 b(set,)j(Bash)e(c)m(hec)m
+(ks)h(the)f(windo)m(w)f(size)h(after)h(eac)m(h)f(external)h
+(\(non-builtin\))1110 4737 y(command)55 b(and,)60 b(if)55
+b(necessary)-8 b(,)62 b(up)s(dates)54 b(the)h(v)-5 b(alues)55
+b(of)g Ft(LINES)f Fu(and)1110 4847 y Ft(COLUMNS)p Fu(,)36
+b(using)g(the)h(\014le)g(descriptor)f(asso)s(ciated)i(with)f(stderr)e
+(if)i(it)g(is)g(a)1110 4956 y(terminal.)k(This)30 b(option)h(is)f
+(enabled)g(b)m(y)h(default.)630 5121 y Ft(cmdhist)144
+b Fu(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 5230 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 5340 y(commands.)79
+b(This)43 b(option)g(is)h(enabled)f(b)m(y)g(default,)k(but)c(only)g
+(has)g(an)p eop end
+%%Page: 79 85
+TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(79)1110 299 y(e\013ect)30
+b(if)e(command)g(history)g(is)h(enabled)f(\(see)h(Section)g(9.1)h
+([Bash)e(History)1110 408 y(F)-8 b(acilities],)34 b(page)d(166\).)630
+559 y Ft(compat31)630 669 y(compat32)630 778 y(compat40)630
+888 y(compat41)630 998 y(compat42)630 1107 y(compat43)630
+1217 y(compat44)96 b Fu(These)39 b(con)m(trol)i(asp)s(ects)f(of)f(the)h
+(shell's)g(compatibilit)m(y)h(mo)s(de)e(\(see)h(Sec-)1110
+1326 y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g
+(120\).)630 1477 y Ft(complete_fullquote)1110 1587 y
+Fu(If)g(set,)g(Bash)h(quotes)f(all)h(shell)f(metac)m(haracters)i(in)e
+(\014lenames)g(and)g(direc-)1110 1696 y(tory)g(names)f(when)g(p)s
+(erforming)f(completion.)43 b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m
+(es)1110 1806 y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g
+(sign)g(from)f(the)h(set)g(of)f(c)m(haracters)1110 1915
+y(that)f(will)g(b)s(e)f(quoted)g(in)g(completed)i(\014lenames)e(when)f
+(these)i(metac)m(har-)1110 2025 y(acters)29 b(app)s(ear)e(in)g(shell)h
+(v)-5 b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e
+(completed.)1110 2134 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)
+-5 b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
+2244 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
+g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 2354
+y(\014lenames)i(will)g(not)g(b)s(e)g(quoted,)g(either.)41
+b(This)27 b(is)h(activ)m(e)i(only)e(when)f(Bash)1110
+2463 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
+(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 2573
+y(is)41 b(set)g(b)m(y)g(default,)j(whic)m(h)c(is)h(the)g(default)g
+(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 2682 y(through)30
+b(4.2.)630 2833 y Ft(direxpand)1110 2943 y Fu(If)k(set,)i(Bash)f
+(replaces)g(directory)g(names)g(with)f(the)g(results)h(of)f(w)m(ord)g
+(ex-)1110 3052 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
+(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 3162
+y(con)m(ten)m(ts)c(of)e(the)h(Readline)f(editing)h(bu\013er.)52
+b(If)33 b(not)i(set,)h(Bash)e(attempts)1110 3271 y(to)d(preserv)m(e)g
+(what)f(the)g(user)g(t)m(yp)s(ed.)630 3422 y Ft(dirspell)96
+b Fu(If)26 b(set,)i(Bash)f(attempts)g(sp)s(elling)g(correction)g(on)g
+(directory)g(names)f(during)1110 3532 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
+3641 y(exist.)630 3792 y Ft(dotglob)144 b Fu(If)35 b(set,)k(Bash)d
+(includes)f(\014lenames)h(b)s(eginning)f(with)h(a)g(`)p
+Ft(.)p Fu(')g(in)g(the)g(results)1110 3902 y(of)43 b(\014lename)g
+(expansion.)78 b(The)42 b(\014lenames)h Ft(.)f Fu(and)g
+Ft(..)h Fu(m)m(ust)f(alw)m(a)m(ys)j(b)s(e)1110 4011 y(matc)m(hed)31
+b(explicitly)-8 b(,)33 b(ev)m(en)e(if)f Ft(dotglob)f
+Fu(is)h(set.)630 4162 y Ft(execfail)96 b Fu(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 4271 y(the)f(\014le)g(sp)s(eci\014ed)f(as)h(an)g
+(argumen)m(t)g(to)h(the)f Ft(exec)e Fu(builtin.)39 b(An)24
+b(in)m(teractiv)m(e)1110 4381 y(shell)31 b(do)s(es)f(not)g(exit)i(if)e
+Ft(exec)f Fu(fails.)630 4532 y Ft(expand_aliases)1110
+4641 y Fu(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 4751 y(tion)i(6.6)h
+([Aliases],)h(page)e(108.)55 b(This)33 b(option)i(is)g(enabled)f(b)m(y)
+h(default)f(for)1110 4861 y(in)m(teractiv)m(e)f(shells.)630
+5011 y Ft(extdebug)96 b Fu(If)35 b(set)i(at)f(shell)g(in)m(v)m(o)s
+(cation,)k(or)c(in)f(a)h(shell)h(startup)e(\014le,)i(arrange)g(to)f
+(ex-)1110 5121 y(ecute)h(the)f(debugger)g(pro\014le)g(b)s(efore)g(the)g
+(shell)h(starts,)h(iden)m(tical)g(to)f(the)1110 5230
+y Ft(--debugger)32 b Fu(option.)56 b(If)35 b(set)h(after)g(in)m(v)m(o)s
+(cation,)j(b)s(eha)m(vior)c(in)m(tended)g(for)1110 5340
+y(use)30 b(b)m(y)g(debuggers)g(is)h(enabled:)p eop end
+%%Page: 80 86
+TeXDict begin 80 85 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(80)1159 299 y(1.)61
+b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g Ft(declare)d
+Fu(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290 408 y(Builtins],)29
+b(page)g(60\))g(displa)m(ys)f(the)g(source)h(\014le)f(name)g(and)f
+(line)h(n)m(um-)1290 518 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 628
+y(men)m(t.)1159 769 y(2.)61 b(If)20 b(the)h(command)g(run)e(b)m(y)i
+(the)f Ft(DEBUG)g Fu(trap)g(returns)g(a)h(non-zero)g(v)-5
+b(alue,)1290 879 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
+(not)i(executed.)1159 1021 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
+(y)i(the)f Ft(DEBUG)f Fu(trap)h(returns)f(a)i(v)-5 b(alue)38
+b(of)f(2,)1290 1130 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 1240 y(a)h(shell)g
+(script)f(executed)h(b)m(y)g(the)f Ft(.)h Fu(or)f Ft(source)f
+Fu(builtins\),)i(the)g(shell)1290 1350 y(sim)m(ulates)d(a)g(call)h(to)f
+Ft(return)p Fu(.)1159 1491 y(4.)61 b Ft(BASH_ARGC)34
+b Fu(and)i Ft(BASH_ARGV)e Fu(are)j(up)s(dated)e(as)h(describ)s(ed)g(in)
+g(their)1290 1601 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
+(V)-8 b(ariables],)32 b(page)f(86\).)1159 1743 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 1852 y(functions,)32
+b(and)e(subshells)h(in)m(v)m(ok)m(ed)i(with)e Ft(\()f
+Fj(command)e Ft(\))j Fu(inherit)h(the)1290 1962 y Ft(DEBUG)d
+Fu(and)h Ft(RETURN)e Fu(traps.)1159 2104 y(6.)61 b(Error)41
+b(tracing)i(is)f(enabled:)63 b(command)42 b(substitution,)i(shell)f
+(func-)1290 2213 y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i
+(with)e Ft(\()g Fj(command)f Ft(\))h Fu(inherit)h(the)g
+Ft(ERR)1290 2323 y Fu(trap.)630 2497 y Ft(extglob)144
+b Fu(If)45 b(set,)50 b(enable)45 b(the)h(extended)f(pattern)g(matc)m
+(hing)i(features)e(describ)s(ed)1110 2607 y(ab)s(o)m(v)m(e)32
+b(\(see)f(Section)g(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f
+(38\).)630 2781 y Ft(extquote)96 b Fu(If)51 b(set,)58
+b Ft($')p Fj(string)p Ft(')49 b Fu(and)i Ft($")p Fj(string)p
+Ft(")e Fu(quoting)k(is)e(p)s(erformed)f(within)1110 2890
+y Ft(${)p Fj(parameter)p Ft(})31 b Fu(expansions)k(enclosed)g(in)g
+(double)f(quotes.)55 b(This)33 b(option)1110 3000 y(is)d(enabled)h(b)m
+(y)f(default.)630 3174 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d
+(whic)m(h)g(fail)h(to)h(matc)m(h)f(\014lenames)f(during)g(\014lename)g
+(ex-)1110 3284 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630
+3458 y Ft(force_fignore)1110 3567 y Fu(If)43 b(set,)k(the)d(su\016xes)f
+(sp)s(eci\014ed)f(b)m(y)i(the)f Ft(FIGNORE)f Fu(shell)h(v)-5
+b(ariable)44 b(cause)1110 3677 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
+3786 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 3896 y([Bash)24
+b(V)-8 b(ariables],)27 b(page)e(86,)h(for)d(a)h(description)g(of)g
+Ft(FIGNORE)p Fu(.)37 b(This)22 b(option)1110 4006 y(is)30
+b(enabled)h(b)m(y)f(default.)630 4180 y Ft(globasciiranges)1110
+4289 y Fu(If)j(set,)h(range)f(expressions)g(used)f(in)h(pattern)g(matc)
+m(hing)h(brac)m(k)m(et)h(expres-)1110 4399 y(sions)i(\(see)h(Section)g
+(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)j(page)d(38\))h(b)s(eha)m(v)m(e)
+f(as)1110 4508 y(if)c(in)g(the)g(traditional)i(C)e(lo)s(cale)i(when)d
+(p)s(erforming)g(comparisons.)52 b(That)1110 4618 y(is,)29
+b(pattern)f(matc)m(hing)h(do)s(es)e(not)h(tak)m(e)i(the)e(curren)m(t)g
+(lo)s(cale's)h(collating)h(se-)1110 4728 y(quence)e(in)m(to)i(accoun)m
+(t,)g(so)f(`)p Ft(b)p Fu(')f(will)h(not)f(collate)j(b)s(et)m(w)m(een)e
+(`)p Ft(A)p Fu(')g(and)e(`)p Ft(B)p Fu(',)j(and)1110
+4837 y(upp)s(er-case)g(and)g(lo)m(w)m(er-case)j(ASCI)s(I)28
+b(c)m(haracters)k(will)f(collate)i(together.)630 5011
+y Ft(globskipdots)1110 5121 y Fu(If)c(set,)h(\014lename)f(expansion)g
+(will)g(nev)m(er)g(matc)m(h)h(the)f(\014lenames)g Ft(.)g
+Fu(and)f Ft(..)p Fu(,)1110 5230 y(ev)m(en)40 b(if)g(the)g(pattern)g(b)s
+(egins)f(with)g(a)i(`)p Ft(.)p Fu('.)68 b(This)39 b(option)i(is)e
+(enabled)h(b)m(y)1110 5340 y(default.)p eop end
+%%Page: 81 87
+TeXDict begin 81 86 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(81)630 299 y Ft(globstar)96
+b Fu(If)38 b(set,)j(the)e(pattern)f(`)p Ft(**)p Fu(')h(used)e(in)i(a)f
+(\014lename)h(expansion)f(con)m(text)j(will)1110 408
+y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)f(more)g(directories)h
+(and)e(sub)s(directories.)54 b(If)1110 518 y(the)30 b(pattern)g(is)g
+(follo)m(w)m(ed)i(b)m(y)d(a)i(`)p Ft(/)p Fu(',)f(only)g(directories)h
+(and)f(sub)s(directories)1110 628 y(matc)m(h.)630 803
+y Ft(gnu_errfmt)1110 913 y Fu(If)35 b(set,)j(shell)e(error)g(messages)g
+(are)h(written)e(in)h(the)g(standard)f Fm(gnu)g Fu(error)1110
+1022 y(message)c(format.)630 1198 y Ft(histappend)1110
+1307 y Fu(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 1417 y(the)d Ft(HISTFILE)d Fu(v)-5 b(ariable)26
+b(when)e(the)h(shell)h(exits,)h(rather)e(than)h(o)m(v)m(erwriting)1110
+1526 y(the)31 b(\014le.)630 1702 y Ft(histreedit)1110
+1811 y Fu(If)26 b(set,)i(and)e(Readline)h(is)f(b)s(eing)g(used,)h(the)f
+(user)g(is)h(giv)m(en)g(the)g(opp)s(ortunit)m(y)1110
+1921 y(to)k(re-edit)g(a)g(failed)g(history)f(substitution.)630
+2096 y Ft(histverify)1110 2206 y Fu(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
+2315 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 2425 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 2534 y(further)29 b(mo)s(di\014cation.)630 2710
+y Ft(hostcomplete)1110 2819 y Fu(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
+2929 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
+(`)p Ft(@)p Fu(')g(is)g(b)s(eing)f(com-)1110 3039 y(pleted)g(\(see)h
+(Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g
+(151\).)1110 3148 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
+630 3324 y Ft(huponexit)1110 3433 y Fu(If)i(set,)i(Bash)f(will)h(send)d
+Ft(SIGHUP)h Fu(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login)
+1110 3543 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
+(page)f(48\).)630 3718 y Ft(inherit_errexit)1110 3828
+y Fu(If)e(set,)h(command)g(substitution)f(inherits)g(the)g(v)-5
+b(alue)30 b(of)g(the)f Ft(errexit)f Fu(op-)1110 3937
+y(tion,)33 b(instead)g(of)f(unsetting)g(it)h(in)f(the)g(subshell)f(en)m
+(vironmen)m(t.)46 b(This)32 b(op-)1110 4047 y(tion)f(is)f(enabled)h
+(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)630 4222
+y Ft(interactive_comments)1110 4332 y Fu(In)f(an)h(in)m(teractiv)m(e)j
+(shell,)e(a)f(w)m(ord)g(b)s(eginning)f(with)h(`)p Ft(#)p
+Fu(')g(causes)h(that)f(w)m(ord)1110 4441 y(and)41 b(all)i(remaining)e
+(c)m(haracters)i(on)f(that)g(line)g(to)h(b)s(e)e(ignored,)j(as)e(in)g
+(a)1110 4551 y(non-in)m(teractiv)m(e)33 b(shell.)41 b(This)29
+b(option)i(is)g(enabled)f(b)m(y)g(default.)630 4726 y
+Ft(lastpipe)96 b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f(not)f
+(activ)m(e,)k(the)d(shell)f(runs)f(the)i(last)g(command)1110
+4836 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
+(kground)g(in)g(the)g(curren)m(t)g(shell)1110 4945 y(en)m(vironmen)m
+(t.)630 5121 y Ft(lithist)144 b Fu(If)22 b(enabled,)i(and)d(the)h
+Ft(cmdhist)e Fu(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110
+5230 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s
+(edded)g(newlines)h(rather)g(than)f(using)1110 5340 y(semicolon)32
+b(separators)f(where)e(p)s(ossible.)p eop end
+%%Page: 82 88
+TeXDict begin 82 87 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(82)630 299 y Ft
+(localvar_inherit)1110 408 y Fu(If)32 b(set,)h(lo)s(cal)g(v)-5
+b(ariables)33 b(inherit)f(the)g(v)-5 b(alue)32 b(and)g(attributes)h(of)
+f(a)g(v)-5 b(ariable)1110 518 y(of)36 b(the)g(same)g(name)g(that)h
+(exists)f(at)h(a)f(previous)g(scop)s(e)g(b)s(efore)f(an)m(y)h(new)1110
+628 y(v)-5 b(alue)31 b(is)f(assigned.)41 b(The)30 b Ft(nameref)e
+Fu(attribute)k(is)e(not)h(inherited.)630 781 y Ft(localvar_unset)1110
+891 y Fu(If)i(set,)i(calling)g Ft(unset)d Fu(on)i(lo)s(cal)g(v)-5
+b(ariables)35 b(in)e(previous)g(function)g(scop)s(es)1110
+1000 y(marks)26 b(them)g(so)g(subsequen)m(t)g(lo)s(okups)f(\014nd)g
+(them)h(unset)f(un)m(til)i(that)g(func-)1110 1110 y(tion)40
+b(returns.)68 b(This)39 b(is)g(iden)m(tical)j(to)e(the)g(b)s(eha)m
+(vior)g(of)g(unsetting)g(lo)s(cal)1110 1219 y(v)-5 b(ariables)31
+b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 1373
+y Ft(login_shell)1110 1482 y Fu(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
+1592 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(99\).)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
+1745 y Ft(mailwarn)96 b Fu(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 1855 y(since)c(the)f(last)i(time)f(it)g(w)m(as)f(c)m(hec)m(k)m
+(ed,)j(Bash)e(displa)m(ys)f(the)h(message)g Ft("The)1110
+1965 y(mail)f(in)h Fj(mailfile)e Ft(has)i(been)f(read")p
+Fu(.)630 2118 y Ft(no_empty_cmd_completion)1110 2228
+y Fu(If)k(set,)j(and)d(Readline)i(is)f(b)s(eing)f(used,)i(Bash)f(do)s
+(es)f(not)h(searc)m(h)h(the)f Ft(PATH)1110 2337 y Fu(for)22
+b(p)s(ossible)g(completions)h(when)e(completion)i(is)f(attempted)i(on)e
+(an)g(empt)m(y)1110 2447 y(line.)630 2600 y Ft(nocaseglob)1110
+2710 y Fu(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 2819 y(p)s(erforming)29
+b(\014lename)i(expansion.)630 2973 y Ft(nocasematch)1110
+3082 y Fu(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 3192 y(p)s(erforming)31
+b(matc)m(hing)i(while)f(executing)i Ft(case)d Fu(or)h
+Ft([[)g Fu(conditional)h(com-)1110 3302 y(mands)25 b(\(see)i(Section)f
+(3.2.5.2)j([Conditional)e(Constructs],)f(page)h(12,)h(when)1110
+3411 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h
+(or)f(when)g(\014ltering)1110 3521 y(p)s(ossible)j(completions)h(as)g
+(part)f(of)h(programmable)f(completion.)630 3674 y Ft
+(noexpand_translation)1110 3784 y Fu(If)25 b(set,)i(Bash)e(encloses)i
+(the)e(translated)h(results)f(of)h($)p Ft(")6 b Fu(.)22
+b(.)g(.)11 b Ft(")25 b Fu(quoting)h(in)f(sin-)1110 3893
+y(gle)31 b(quotes)g(instead)f(of)h(double)e(quotes.)41
+b(If)30 b(the)g(string)g(is)h(not)f(translated,)1110
+4003 y(this)g(has)g(no)h(e\013ect.)630 4156 y Ft(nullglob)96
+b Fu(If)35 b(set,)j(\014lename)e(expansion)f(patterns)h(whic)m(h)f
+(matc)m(h)i(no)e(\014les)h(\(see)g(Sec-)1110 4266 y(tion)g(3.5.8)i
+([Filename)f(Expansion],)f(page)h(37\))g(expand)e(to)h(nothing)g(and)
+1110 4376 y(are)31 b(remo)m(v)m(ed,)g(rather)g(than)f(expanding)g(to)h
+(themselv)m(es.)630 4529 y Ft(patsub_replacement)1110
+4639 y Fu(If)38 b(set,)k(Bash)d(expands)e(o)s(ccurrences)i(of)g(`)p
+Ft(&)p Fu(')g(in)f(the)h(replacemen)m(t)h(string)1110
+4748 y(of)47 b(pattern)g(substitution)g(to)h(the)f(text)h(matc)m(hed)g
+(b)m(y)f(the)g(pattern,)52 b(as)1110 4858 y(describ)s(ed)45
+b(ab)s(o)m(v)m(e)i(\(see)f(Section)h(3.5.3)g([Shell)f(P)m(arameter)h
+(Expansion],)1110 4967 y(page)31 b(27\).)42 b(This)30
+b(option)g(is)h(enabled)f(b)m(y)g(default.)630 5121 y
+Ft(progcomp)96 b Fu(If)81 b(set,)94 b(enable)82 b(the)f(programmable)g
+(completion)i(facilities)g(\(see)1110 5230 y(Section)31
+b(8.6)f([Programmable)h(Completion],)g(page)f(156\).)43
+b(This)29 b(option)h(is)1110 5340 y(enabled)g(b)m(y)h(default.)p
+eop end
+%%Page: 83 89
+TeXDict begin 83 88 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(83)630 299 y Ft(progcomp_alias)
+1110 408 y Fu(If)23 b(set,)j(and)d(programmable)h(completion)h(is)f
+(enabled,)h(Bash)f(treats)h(a)f(com-)1110 518 y(mand)34
+b(name)h(that)g(do)s(esn't)f(ha)m(v)m(e)i(an)m(y)g(completions)f(as)g
+(a)g(p)s(ossible)g(alias)1110 628 y(and)40 b(attempts)i(alias)h
+(expansion.)72 b(If)41 b(it)g(has)g(an)g(alias,)k(Bash)c(attempts)1110
+737 y(programmable)28 b(completion)h(using)e(the)h(command)f(w)m(ord)h
+(resulting)f(from)1110 847 y(the)k(expanded)e(alias.)630
+1029 y Ft(promptvars)1110 1138 y Fu(If)50 b(set,)56 b(prompt)49
+b(strings)h(undergo)g(parameter)h(expansion,)k(command)1110
+1248 y(substitution,)35 b(arithmetic)g(expansion,)g(and)e(quote)i(remo)
+m(v)-5 b(al)35 b(after)f(b)s(eing)1110 1357 y(expanded)53
+b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)f(6.9)h([Con)m
+(trolling)g(the)1110 1467 y(Prompt],)30 b(page)h(112\).)43
+b(This)29 b(option)i(is)g(enabled)f(b)m(y)g(default.)630
+1649 y Ft(restricted_shell)1110 1758 y Fu(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 1868 y(Section)32 b(6.10)h([The)d(Restricted)j(Shell],)e(page)h
+(114\).)45 b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110
+1977 y(b)s(e)g(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 2087
+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 2197
+y(stricted.)630 2378 y Ft(shift_verbose)1110 2488 y Fu(If)g(this)g(is)g
+(set,)j(the)d Ft(shift)f Fu(builtin)h(prin)m(ts)f(an)h(error)g(message)
+i(when)d(the)1110 2598 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 2779 y
+Ft(sourcepath)1110 2889 y Fu(If)40 b(set,)45 b(the)c
+Ft(.)f Fu(\()p Ft(source)p Fu(\))g(builtin)g(uses)h(the)g(v)-5
+b(alue)41 b(of)g Ft(PATH)f Fu(to)h(\014nd)f(the)1110
+2999 y(directory)32 b(con)m(taining)i(the)e(\014le)g(supplied)e(as)j
+(an)e(argumen)m(t)i(when)d(the)j Ft(-p)1110 3108 y Fu(option)e(is)f
+(not)h(supplied.)39 b(This)30 b(option)h(is)f(enabled)g(b)m(y)h
+(default.)630 3290 y Ft(varredir_close)1110 3400 y Fu(If)h(set,)h(the)f
+(shell)h(automatically)i(closes)e(\014le)f(descriptors)g(assigned)g
+(using)1110 3509 y(the)40 b Ft({varname})c Fu(redirection)k(syn)m(tax)g
+(\(see)h(Section)f(3.6)g([Redirections],)1110 3619 y(page)h(40\))f
+(instead)h(of)e(lea)m(ving)j(them)e(op)s(en)f(when)g(the)h(command)f
+(com-)1110 3728 y(pletes.)630 3910 y Ft(xpg_echo)96 b
+Fu(If)31 b(set,)h(the)g Ft(echo)e Fu(builtin)h(expands)f(bac)m
+(kslash-escap)s(e)j(sequences)f(b)m(y)f(de-)1110 4020
+y(fault.)40 b(If)27 b(the)h Ft(posix)e Fu(shell)h(option)h(\(see)h
+(Section)f(4.3.1)h([The)e(Set)h(Builtin],)1110 4129 y(page)j(72\))h(is)
+e(also)h(enabled,)g Ft(echo)e Fu(do)s(es)h(not)h(in)m(terpret)g(an)m(y)
+f(options.)150 4404 y Fs(4.4)68 b(Sp)t(ecial)45 b(Builtins)150
+4563 y Fu(F)-8 b(or)35 b(historical)h(reasons,)g(the)e
+Fm(posix)g Fu(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e
+(commands)g(as)h Fl(sp)-5 b(e-)150 4673 y(cial)p Fu(.)47
+b(When)33 b(Bash)f(is)h(executing)g(in)f Fm(posix)g Fu(mo)s(de,)h(the)g
+(sp)s(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150
+4782 y(commands)e(in)g(three)h(resp)s(ects:)199 4939
+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 5085 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 5230
+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
+5340 y(after)i(the)f(command)h(completes.)p eop end
+%%Page: 84 90
+TeXDict begin 84 89 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(84)275 299 y(When)36
+b(Bash)g(is)h(not)f(executing)i(in)e Fm(posix)f Fu(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
+408 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
+b(The)30 b(Bash)g Fm(posix)g Fu(mo)s(de)g(is)g(describ)s(ed)f(in)h
+(Section)h(6.11)150 518 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(115.)275
+653 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h(builtins:)390
+787 y Ft(break)46 b(:)i(.)f(source)f(continue)g(eval)h(exec)f(exit)h
+(export)f(readonly)f(return)i(set)390 897 y(shift)f(times)h(trap)f
+(unset)p eop end
+%%Page: 85 91
+TeXDict begin 85 90 bop 3659 -116 a Fu(85)150 299 y Fp(5)80
+b(Shell)53 b(V)-13 b(ariables)150 632 y Fu(This)21 b(c)m(hapter)i
+(describ)s(es)e(the)i(shell)f(v)-5 b(ariables)23 b(that)f(Bash)h(uses.)
+37 b(Bash)23 b(automatically)h(assigns)f(default)150
+741 y(v)-5 b(alues)31 b(to)g(a)g(n)m(um)m(b)s(er)e(of)h(v)-5
+b(ariables.)150 1031 y Fs(5.1)68 b(Bourne)45 b(Shell)g(V)-11
+b(ariables)150 1191 y Fu(Bash)30 b(uses)g(certain)h(shell)g(v)-5
+b(ariables)31 b(in)f(the)g(same)h(w)m(a)m(y)g(as)g(the)f(Bourne)g
+(shell.)41 b(In)30 b(some)g(cases,)i(Bash)150 1300 y(assigns)f(a)f
+(default)h(v)-5 b(alue)31 b(to)g(the)f(v)-5 b(ariable.)150
+1509 y Ft(CDPATH)192 b Fu(A)39 b(colon-separated)i(list)e(of)g
+(directories)h(used)f(as)g(a)g(searc)m(h)h(path)e(for)h(the)g
+Ft(cd)f Fu(builtin)630 1619 y(command.)150 1811 y Ft(HOME)288
+b Fu(The)23 b(curren)m(t)h(user's)f(home)g(directory;)k(the)d(default)g
+(for)f(the)h Ft(cd)f Fu(builtin)g(command.)38 b(The)630
+1921 y(v)-5 b(alue)37 b(of)f(this)g(v)-5 b(ariable)37
+b(is)g(also)g(used)e(b)m(y)h(tilde)h(expansion)f(\(see)i(Section)f
+(3.5.2)h([Tilde)630 2030 y(Expansion],)30 b(page)h(26\).)150
+2223 y Ft(IFS)336 b Fu(A)25 b(list)i(of)e(c)m(haracters)i(that)f
+(separate)g(\014elds;)h(used)e(when)f(the)i(shell)f(splits)h(w)m(ords)e
+(as)i(part)630 2332 y(of)h(expansion)g(and)f(b)m(y)g(the)h
+Ft(read)f Fu(builtin)g(to)i(split)f(lines)g(in)m(to)h(w)m(ords.)39
+b(See)27 b(Section)g(3.5.7)630 2442 y([W)-8 b(ord)31
+b(Splitting],)g(page)g(37,)h(for)e(a)h(description)f(of)h(w)m(ord)f
+(splitting.)150 2634 y Ft(MAIL)288 b Fu(If)34 b(the)h(v)-5
+b(alue)36 b(is)e(set)i(to)f(a)g(\014lename)g(or)g(directory)h(name)e
+(and)h(the)g Ft(MAILPATH)d Fu(v)-5 b(ariable)630 2744
+y(is)36 b(not)g(set,)i(Bash)e(informs)f(the)h(user)f(of)h(the)g(arriv)
+-5 b(al)37 b(of)f(mail)g(in)g(the)g(sp)s(eci\014ed)f(\014le)h(or)630
+2853 y(Maildir-format)c(directory)-8 b(.)150 3046 y Ft(MAILPATH)96
+b Fu(A)33 b(colon-separated)i(list)f(of)f(\014lenames)h(whic)m(h)f(the)
+g(shell)g(p)s(erio)s(dically)h(c)m(hec)m(ks)g(for)f(new)630
+3155 y(mail.)60 b(Eac)m(h)37 b(list)g(en)m(try)g(can)g(sp)s(ecify)f
+(the)h(message)h(that)f(is)g(prin)m(ted)f(when)f(new)h(mail)630
+3265 y(arriv)m(es)31 b(in)g(the)g(mail)g(\014le)g(b)m(y)g(separating)h
+(the)f(\014lename)g(from)f(the)h(message)h(with)e(a)i(`)p
+Ft(?)p Fu('.)630 3374 y(When)g(used)f(in)h(the)g(text)i(of)e(the)g
+(message,)i Ft($_)e Fu(expands)f(to)i(the)f(name)g(of)h(the)f(curren)m
+(t)630 3484 y(mail)f(\014le.)150 3676 y Ft(OPTARG)192
+b Fu(The)30 b(v)-5 b(alue)31 b(of)f(the)h(last)g(option)g(argumen)m(t)g
+(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f Fu(builtin.)150
+3869 y Ft(OPTIND)192 b Fu(The)30 b(index)g(of)g(the)h(next)f(argumen)m
+(t)h(to)g(b)s(e)f(pro)s(cessed)g(b)m(y)g(the)h Ft(getopts)d
+Fu(builtin.)150 4061 y Ft(PATH)288 b Fu(A)42 b(colon-separated)j(list)d
+(of)h(directories)g(in)f(whic)m(h)g(the)h(shell)f(lo)s(oks)h(for)f
+(commands.)630 4171 y(A)62 b(zero-length)h(\(n)m(ull\))f(directory)h
+(name)e(in)h(the)g(v)-5 b(alue)62 b(of)g Ft(PATH)e Fu(indicates)j(the)
+630 4280 y(curren)m(t)35 b(directory)-8 b(.)58 b(A)36
+b(n)m(ull)g(directory)g(name)f(ma)m(y)i(app)s(ear)e(as)h(t)m(w)m(o)h
+(adjacen)m(t)g(colons,)630 4390 y(or)51 b(as)h(an)f(initial)i(or)f
+(trailing)g(colon.)105 b(The)51 b(default)g(path)h(is)f(system-dep)s
+(enden)m(t,)630 4499 y(and)j(is)h(set)g(b)m(y)f(the)h(administrator)g
+(who)f(installs)i Ft(bash)p Fu(.)112 b(A)55 b(common)g(v)-5
+b(alue)55 b(is)630 4609 y Ft(")p Fu(/usr/lo)s(cal/bin:/usr/lo)s
+(cal/sbin:/usr/bin:/usr/sbin:/bin:/sbin)p Ft(")p Fu(.)150
+4801 y Ft(PS1)336 b Fu(The)35 b(primary)f(prompt)h(string.)55
+b(The)35 b(default)h(v)-5 b(alue)35 b(is)h(`)p Ft(\\s-\\v\\$)28
+b Fu('.)56 b(See)36 b(Section)g(6.9)630 4911 y([Con)m(trolling)i(the)e
+(Prompt],)i(page)f(112,)i(for)d(the)h(complete)h(list)e(of)h(escap)s(e)
+g(sequences)630 5020 y(that)31 b(are)g(expanded)e(b)s(efore)h
+Ft(PS1)g Fu(is)g(displa)m(y)m(ed.)150 5213 y Ft(PS2)336
+b Fu(The)28 b(secondary)g(prompt)g(string.)40 b(The)28
+b(default)g(v)-5 b(alue)29 b(is)g(`)p Ft(>)h Fu('.)40
+b Ft(PS2)28 b Fu(is)g(expanded)g(in)g(the)630 5322 y(same)j(w)m(a)m(y)g
+(as)g Ft(PS1)e Fu(b)s(efore)h(b)s(eing)g(displa)m(y)m(ed.)p
+eop end
+%%Page: 86 92
+TeXDict begin 86 91 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(86)150 299 y Fs(5.2)68
+b(Bash)45 b(V)-11 b(ariables)150 458 y Fu(These)45 b(v)-5
+b(ariables)46 b(are)g(set)g(or)f(used)f(b)m(y)h(Bash,)50
+b(but)44 b(other)i(shells)f(do)h(not)f(normally)h(treat)g(them)150
+568 y(sp)s(ecially)-8 b(.)275 696 y(A)24 b(few)g(v)-5
+b(ariables)24 b(used)g(b)m(y)f(Bash)i(are)f(describ)s(ed)f(in)h
+(di\013eren)m(t)g(c)m(hapters:)38 b(v)-5 b(ariables)25
+b(for)f(con)m(trolling)150 806 y(the)31 b(job)f(con)m(trol)h
+(facilities)i(\(see)e(Section)g(7.3)h([Job)e(Con)m(trol)h(V)-8
+b(ariables],)32 b(page)g(127\).)150 952 y Ft(_)432 b
+Fu(\($)p 716 952 28 4 v 41 w(,)30 b(an)f(underscore.\))40
+b(This)28 b(has)h(a)h(n)m(um)m(b)s(er)e(of)h(meanings)h(dep)s(ending)e
+(on)h(con)m(text.)42 b(A)m(t)630 1062 y(shell)d(startup,)h($)p
+1251 1062 V 78 w(set)f(to)g(the)g(pathname)f(used)g(to)h(in)m(v)m(ok)m
+(e)h(the)f(shell)f(or)g(shell)h(script)630 1172 y(b)s(eing)c(executed)i
+(as)f(passed)g(in)f(the)h(en)m(vironmen)m(t)h(or)f(argumen)m(t)g(list.)
+58 b(Subsequen)m(tly)-8 b(,)630 1281 y(it)35 b(expands)f(to)h(the)g
+(last)h(argumen)m(t)f(to)g(the)g(previous)g(simple)f(command)h
+(executed)g(in)630 1391 y(the)41 b(foreground,)h(after)f(expansion.)71
+b(It)41 b(is)f(also)i(set)f(to)g(the)g(full)f(pathname)g(used)g(to)630
+1500 y(in)m(v)m(ok)m(e)46 b(eac)m(h)g(command)e(executed)h(and)f
+(placed)h(in)f(the)g(en)m(vironmen)m(t)h(exp)s(orted)f(to)630
+1610 y(that)31 b(command.)40 b(When)31 b(c)m(hec)m(king)h(mail,)f($)p
+2186 1610 V 71 w(expands)e(to)i(the)g(name)f(of)h(the)g(mail)g(\014le.)
+150 1757 y Ft(BASH)288 b Fu(The)30 b(full)g(pathname)g(used)g(to)h
+(execute)h(the)e(curren)m(t)g(instance)h(of)g(Bash.)150
+1904 y Ft(BASHOPTS)96 b Fu(A)31 b(colon-separated)h(list)f(of)g
+(enabled)f(shell)h(options.)41 b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h
+(list)g(is)g(a)g(v)-5 b(alid)630 2013 y(argumen)m(t)37
+b(for)g(the)g Ft(-s)f Fu(option)i(to)f(the)g Ft(shopt)f
+Fu(builtin)g(command)h(\(see)g(Section)h(4.3.2)630 2123
+y([The)e(Shopt)g(Builtin],)i(page)f(77\).)60 b(The)36
+b(options)h(app)s(earing)f(in)g Ft(BASHOPTS)e Fu(are)i(those)630
+2232 y(rep)s(orted)e(as)h(`)p Ft(on)p Fu(')f(b)m(y)h(`)p
+Ft(shopt)p Fu('.)53 b(If)34 b(this)g(v)-5 b(ariable)36
+b(is)f(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)630
+2342 y(starts)i(up,)g(the)g(shell)f(enables)h(eac)m(h)h(option)f(in)f
+(the)h(list)g(b)s(efore)f(reading)h(an)m(y)f(startup)630
+2451 y(\014les.)41 b(This)29 b(v)-5 b(ariable)31 b(is)g(readonly)-8
+b(.)150 2598 y Ft(BASHPID)144 b Fu(Expands)36 b(to)i(the)f(pro)s(cess)g
+Fm(id)h Fu(of)f(the)h(curren)m(t)f(Bash)g(pro)s(cess.)61
+b(This)37 b(di\013ers)g(from)g Ft($$)630 2708 y Fu(under)31
+b(certain)j(circumstances,)h(suc)m(h)e(as)g(subshells)f(that)i(do)f
+(not)g(require)g(Bash)g(to)h(b)s(e)630 2817 y(re-initialized.)57
+b(Assignmen)m(ts)35 b(to)h Ft(BASHPID)d Fu(ha)m(v)m(e)j(no)f(e\013ect.)
+56 b(If)34 b Ft(BASHPID)f Fu(is)i(unset,)h(it)630 2927
+y(loses)31 b(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h
+(is)g(subsequen)m(tly)f(reset.)150 3074 y Ft(BASH_ALIASES)630
+3183 y Fu(An)40 b(asso)s(ciativ)m(e)j(arra)m(y)d(v)-5
+b(ariable)41 b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m
+(ternal)h(list)630 3293 y(of)c(aliases)h(as)f(main)m(tained)g(b)m(y)g
+(the)g Ft(alias)e Fu(builtin.)59 b(\(see)37 b(Section)h(4.1)f([Bourne)g
+(Shell)630 3403 y(Builtins],)31 b(page)g(51\).)42 b(Elemen)m(ts)31
+b(added)e(to)i(this)f(arra)m(y)h(app)s(ear)f(in)g(the)g(alias)h(list;)h
+(ho)m(w-)630 3512 y(ev)m(er,)k(unsetting)f(arra)m(y)g(elemen)m(ts)g
+(curren)m(tly)g(do)s(es)f(not)g(cause)h(aliases)h(to)f(b)s(e)f(remo)m
+(v)m(ed)630 3622 y(from)25 b(the)h(alias)h(list.)40 b(If)25
+b Ft(BASH_ALIASES)d Fu(is)k(unset,)g(it)g(loses)h(its)f(sp)s(ecial)g
+(prop)s(erties,)g(ev)m(en)630 3731 y(if)k(it)h(is)g(subsequen)m(tly)f
+(reset.)150 3878 y Ft(BASH_ARGC)630 3988 y Fu(An)39 b(arra)m(y)g(v)-5
+b(ariable)40 b(whose)f(v)-5 b(alues)39 b(are)h(the)f(n)m(um)m(b)s(er)f
+(of)h(parameters)g(in)g(eac)m(h)h(frame)630 4097 y(of)h(the)g(curren)m
+(t)g(Bash)g(execution)h(call)g(stac)m(k.)73 b(The)41
+b(n)m(um)m(b)s(er)e(of)i(parameters)g(to)h(the)630 4207
+y(curren)m(t)c(subroutine)f(\(shell)i(function)e(or)i(script)f
+(executed)h(with)e Ft(.)h Fu(or)g Ft(source)p Fu(\))f(is)h(at)630
+4316 y(the)27 b(top)g(of)g(the)g(stac)m(k.)41 b(When)27
+b(a)g(subroutine)f(is)h(executed,)i(the)e(n)m(um)m(b)s(er)f(of)h
+(parameters)630 4426 y(passed)44 b(is)h(pushed)e(on)m(to)j
+Ft(BASH_ARGC)p Fu(.)81 b(The)44 b(shell)h(sets)g Ft(BASH_ARGC)e
+Fu(only)i(when)e(in)630 4536 y(extended)34 b(debugging)f(mo)s(de)g
+(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)g(77,)g(for)
+630 4645 y(a)e(description)g(of)f(the)h Ft(extdebug)d
+Fu(option)j(to)h(the)e Ft(shopt)g Fu(builtin\).)47 b(Setting)33
+b Ft(extdebug)630 4755 y Fu(after)g(the)f(shell)g(has)g(started)g(to)h
+(execute)g(a)g(subroutine,)e(or)h(referencing)g(this)g(v)-5
+b(ariable)630 4864 y(when)36 b Ft(extdebug)e Fu(is)i(not)h(set,)i(ma)m
+(y)e(result)g(in)f(inconsisten)m(t)i(v)-5 b(alues.)59
+b(Assignmen)m(ts)37 b(to)630 4974 y Ft(BASH_ARGC)28 b
+Fu(ha)m(v)m(e)j(no)g(e\013ect,)h(and)e(it)h(ma)m(y)g(not)f(b)s(e)g
+(unset.)150 5121 y Ft(BASH_ARGV)630 5230 y Fu(An)23 b(arra)m(y)g(v)-5
+b(ariable)24 b(con)m(taining)g(all)g(of)f(the)h(parameters)f(in)g(the)g
+(curren)m(t)g(Bash)g(execution)630 5340 y(call)35 b(stac)m(k.)53
+b(The)34 b(\014nal)g(parameter)g(of)g(the)g(last)h(subroutine)e(call)i
+(is)f(at)h(the)f(top)h(of)f(the)p eop end
+%%Page: 87 93
+TeXDict begin 87 92 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(87)630 299 y(stac)m(k;)28
+b(the)c(\014rst)f(parameter)i(of)f(the)g(initial)i(call)f(is)f(at)h
+(the)f(b)s(ottom.)39 b(When)24 b(a)g(subroutine)630 408
+y(is)e(executed,)j(the)e(shell)g(pushes)e(the)h(supplied)f(parameters)i
+(on)m(to)g Ft(BASH_ARGV)p Fu(.)36 b(The)22 b(shell)630
+518 y(sets)28 b Ft(BASH_ARGV)e Fu(only)i(when)f(in)h(extended)g
+(debugging)g(mo)s(de)g(\(see)h(Section)f(4.3.2)i([The)630
+628 y(Shopt)g(Builtin],)h(page)g(77,)g(for)g(a)f(description)h(of)f
+(the)h Ft(extdebug)d Fu(option)j(to)g(the)f Ft(shopt)630
+737 y Fu(builtin\).)64 b(Setting)38 b Ft(extdebug)e Fu(after)j(the)f
+(shell)g(has)g(started)g(to)h(execute)g(a)g(script,)h(or)630
+847 y(referencing)35 b(this)f(v)-5 b(ariable)35 b(when)e
+Ft(extdebug)f Fu(is)j(not)f(set,)j(ma)m(y)e(result)f(in)g(inconsisten)m
+(t)630 956 y(v)-5 b(alues.)41 b(Assignmen)m(ts)31 b(to)g
+Ft(BASH_ARGV)d Fu(ha)m(v)m(e)j(no)g(e\013ect,)h(and)e(it)g(ma)m(y)h
+(not)g(b)s(e)f(unset.)150 1121 y Ft(BASH_ARGV0)630 1230
+y Fu(When)h(referenced,)g(this)g(v)-5 b(ariable)32 b(expands)e(to)h
+(the)h(name)f(of)g(the)g(shell)g(or)g(shell)g(script)630
+1340 y(\(iden)m(tical)42 b(to)e Ft($0)p Fu(;)j(See)d(Section)g(3.4.2)i
+([Sp)s(ecial)e(P)m(arameters],)j(page)d(23,)j(for)c(the)h(de-)630
+1450 y(scription)33 b(of)h(sp)s(ecial)f(parameter)h(0\).)50
+b(Assigning)33 b(a)g(v)-5 b(alue)34 b(to)g Ft(BASH_ARGV0)c
+Fu(sets)k Ft($0)e Fu(to)630 1559 y(the)d(same)g(v)-5
+b(alue.)40 b(If)28 b Ft(BASH_ARGV0)e Fu(is)j(unset,)g(it)g(loses)g(its)
+g(sp)s(ecial)g(prop)s(erties,)g(ev)m(en)g(if)f(it)630
+1669 y(is)i(subsequen)m(tly)g(reset.)150 1833 y Ft(BASH_CMDS)630
+1943 y Fu(An)k(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5 b(ariable)35
+b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m(ternal)h
+(hash)630 2052 y(table)c(of)g(commands)f(as)g(main)m(tained)h(b)m(y)g
+(the)f Ft(hash)f Fu(builtin)h(\(see)h(Section)g(4.1)h([Bourne)630
+2162 y(Shell)e(Builtins],)h(page)g(51\).)42 b(Adding)30
+b(elemen)m(ts)i(to)f(this)f(arra)m(y)h(mak)m(es)g(them)g(app)s(ear)e
+(in)630 2271 y(the)38 b(hash)f(table;)42 b(ho)m(w)m(ev)m(er,)f
+(unsetting)d(arra)m(y)g(elemen)m(ts)h(curren)m(tly)f(do)s(es)g(not)f
+(remo)m(v)m(e)630 2381 y(command)28 b(names)g(from)g(the)g(hash)g
+(table.)41 b(If)28 b Ft(BASH_CMDS)d Fu(is)j(unset,)h(it)g(loses)g(its)f
+(sp)s(ecial)630 2491 y(prop)s(erties,)i(ev)m(en)h(if)f(it)h(is)g
+(subsequen)m(tly)f(reset.)150 2655 y Ft(BASH_COMMAND)630
+2765 y Fu(Expands)36 b(to)i(the)g(command)f(curren)m(tly)g(b)s(eing)g
+(executed)h(or)g(ab)s(out)f(to)h(b)s(e)f(executed,)630
+2874 y(unless)c(the)h(shell)f(is)h(executing)g(a)g(command)g(as)f(the)h
+(result)g(of)f(a)h(trap,)g(in)g(whic)m(h)f(case)630 2984
+y(it)c(is)f(the)g(command)g(executing)h(at)g(the)f(time)h(of)f(the)h
+(trap.)40 b(If)27 b Ft(BASH_COMMAND)e Fu(is)j(unset,)630
+3093 y(it)j(loses)g(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f
+(it)h(is)g(subsequen)m(tly)e(reset.)150 3258 y Ft(BASH_COMPAT)630
+3367 y Fu(The)j(v)-5 b(alue)33 b(is)g(used)f(to)h(set)g(the)g(shell's)g
+(compatibilit)m(y)i(lev)m(el.)49 b(See)33 b(Section)h(6.12)g([Shell)630
+3477 y(Compatibilit)m(y)j(Mo)s(de],)h(page)e(120,)i(for)e(a)g
+(description)g(of)f(the)h(v)-5 b(arious)36 b(compatibilit)m(y)630
+3587 y(lev)m(els)g(and)f(their)g(e\013ects.)55 b(The)34
+b(v)-5 b(alue)36 b(ma)m(y)f(b)s(e)f(a)i(decimal)f(n)m(um)m(b)s(er)f
+(\(e.g.,)k(4.2\))e(or)f(an)630 3696 y(in)m(teger)44 b(\(e.g.,)j(42\))d
+(corresp)s(onding)d(to)i(the)g(desired)e(compatibilit)m(y)k(lev)m(el.)
+78 b(If)42 b Ft(BASH_)630 3806 y(COMPAT)28 b Fu(is)j(unset)e(or)h(set)h
+(to)g(the)f(empt)m(y)h(string,)f(the)h(compatibilit)m(y)h(lev)m(el)g
+(is)e(set)h(to)g(the)630 3915 y(default)e(for)f(the)g(curren)m(t)g(v)m
+(ersion.)41 b(If)28 b Ft(BASH_COMPAT)d Fu(is)j(set)h(to)g(a)g(v)-5
+b(alue)29 b(that)g(is)f(not)h(one)630 4025 y(of)i(the)h(v)-5
+b(alid)31 b(compatibilit)m(y)j(lev)m(els,)f(the)f(shell)f(prin)m(ts)g
+(an)g(error)g(message)h(and)f(sets)h(the)630 4134 y(compatibilit)m(y)h
+(lev)m(el)f(to)f(the)g(default)f(for)h(the)f(curren)m(t)g(v)m(ersion.)
+42 b(A)30 b(subset)g(of)h(the)g(v)-5 b(alid)630 4244
+y(v)g(alues)31 b(corresp)s(ond)d(to)j(the)g(compatibilit)m(y)h(lev)m
+(els)g(describ)s(ed)d(b)s(elo)m(w)h(\(see)h(Section)g(6.12)630
+4354 y([Shell)25 b(Compatibilit)m(y)h(Mo)s(de],)h(page)e(120\).)41
+b(F)-8 b(or)25 b(example,)i(4.2)f(and)e(42)h(are)h(v)-5
+b(alid)25 b(v)-5 b(alues)630 4463 y(that)33 b(corresp)s(ond)e(to)i(the)
+f Ft(compat42)e(shopt)h Fu(option)i(and)f(set)g(the)h(compatibilit)m(y)
+h(lev)m(el)630 4573 y(to)d(42.)42 b(The)30 b(curren)m(t)g(v)m(ersion)h
+(is)f(also)h(a)g(v)-5 b(alid)31 b(v)-5 b(alue.)150 4737
+y Ft(BASH_ENV)96 b Fu(If)34 b(this)g(v)-5 b(ariable)35
+b(is)g(set)g(when)e(Bash)i(is)f(in)m(v)m(ok)m(ed)i(to)f(execute)h(a)f
+(shell)f(script,)i(its)e(v)-5 b(alue)630 4847 y(is)39
+b(expanded)f(and)g(used)h(as)g(the)g(name)g(of)g(a)g(startup)g(\014le)g
+(to)g(read)g(b)s(efore)g(executing)630 4956 y(the)e(script.)61
+b(Bash)37 b(do)s(es)g(not)g(use)g Ft(PATH)f Fu(to)h(searc)m(h)h(for)f
+(the)g(resultan)m(t)h(\014lename.)61 b(See)630 5066 y(Section)31
+b(6.2)h([Bash)e(Startup)g(Files],)i(page)f(101.)150 5230
+y Ft(BASH_EXECUTION_STRING)630 5340 y Fu(The)f(command)g(argumen)m(t)h
+(to)g(the)g Ft(-c)e Fu(in)m(v)m(o)s(cation)k(option.)p
+eop end
+%%Page: 88 94
+TeXDict begin 88 93 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(88)150 299 y Ft(BASH_LINENO)630
+408 y Fu(An)38 b(arra)m(y)g(v)-5 b(ariable)39 b(whose)f(mem)m(b)s(ers)f
+(are)i(the)f(line)h(n)m(um)m(b)s(ers)d(in)i(source)g(\014les)g(where)
+630 518 y(eac)m(h)h(corresp)s(onding)e(mem)m(b)s(er)g(of)h
+Ft(FUNCNAME)d Fu(w)m(as)k(in)m(v)m(ok)m(ed.)64 b Ft(${BASH_LINENO[$i]})
+630 628 y Fu(is)74 b(the)g(line)h(n)m(um)m(b)s(er)e(in)g(the)i(source)f
+(\014le)g(\()p Ft(${BASH_SOURCE[$i+1]})p Fu(\))69 b(where)630
+737 y Ft(${FUNCNAME[$i]})32 b Fu(w)m(as)37 b(called)g(\(or)g
+Ft(${BASH_LINENO[$i-1]})31 b Fu(if)36 b(referenced)g(within)630
+847 y(another)55 b(shell)h(function\).)114 b(Use)56 b
+Ft(LINENO)d Fu(to)j(obtain)f(the)h(curren)m(t)f(line)g(n)m(um)m(b)s
+(er.)630 956 y(Assignmen)m(ts)31 b(to)g Ft(BASH_LINENO)c
+Fu(ha)m(v)m(e)32 b(no)e(e\013ect,)i(and)e(it)h(ma)m(y)g(not)f(b)s(e)g
+(unset.)150 1115 y Ft(BASH_LOADABLES_PATH)630 1224 y
+Fu(A)38 b(colon-separated)i(list)e(of)g(directories)h(in)f(whic)m(h)g
+(the)g Ft(enable)e Fu(command)i(lo)s(oks)g(for)630 1334
+y(dynamically)31 b(loadable)h(builtins.)150 1492 y Ft(BASH_MONOSECONDS)
+630 1602 y Fu(Eac)m(h)j(time)g(this)f(v)-5 b(ariable)35
+b(is)g(referenced,)g(it)g(expands)f(to)h(the)f(v)-5 b(alue)35
+b(returned)e(b)m(y)i(the)630 1711 y(system's)i(monotonic)i(clo)s(c)m
+(k,)h(if)d(one)h(is)f(a)m(v)-5 b(ailable.)64 b(If)36
+b(there)i(is)f(no)g(monotonic)h(clo)s(c)m(k,)630 1821
+y(this)32 b(is)g(equiv)-5 b(alen)m(t)34 b(to)f Ft(EPOCHSECONDS)p
+Fu(.)43 b(If)32 b Ft(BASH_MONOSECONDS)c Fu(is)k(unset,)h(it)g(loses)g
+(its)630 1931 y(sp)s(ecial)e(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g
+(subsequen)m(tly)f(reset.)150 2089 y Ft(BASH_REMATCH)630
+2198 y Fu(An)43 b(arra)m(y)i(v)-5 b(ariable)44 b(whose)g(mem)m(b)s(ers)
+f(are)h(assigned)g(b)m(y)f(the)h(`)p Ft(=~)p Fu(')g(binary)f(op)s
+(erator)630 2308 y(to)37 b(the)f Ft([[)g Fu(conditional)i(command)e
+(\(see)h(Section)g(3.2.5.2)i([Conditional)e(Constructs],)630
+2418 y(page)e(12\).)52 b(The)33 b(elemen)m(t)j(with)d(index)g(0)i(is)f
+(the)g(p)s(ortion)f(of)h(the)g(string)g(matc)m(hing)h(the)630
+2527 y(en)m(tire)29 b(regular)f(expression.)40 b(The)27
+b(elemen)m(t)j(with)d(index)h Fr(n)f Fu(is)h(the)g(p)s(ortion)g(of)g
+(the)g(string)630 2637 y(matc)m(hing)j(the)g Fr(n)p Fu(th)f(paren)m
+(thesized)h(sub)s(expression.)150 2795 y Ft(BASH_SOURCE)630
+2905 y Fu(An)40 b(arra)m(y)h(v)-5 b(ariable)41 b(whose)f(mem)m(b)s(ers)
+g(are)h(the)g(source)f(\014lenames)h(where)f(the)g(corre-)630
+3014 y(sp)s(onding)27 b(shell)i(function)f(names)g(in)g(the)h
+Ft(FUNCNAME)d Fu(arra)m(y)j(v)-5 b(ariable)30 b(are)f(de\014ned.)38
+b(The)630 3124 y(shell)26 b(function)g Ft(${FUNCNAME[$i]})c
+Fu(is)k(de\014ned)f(in)g(the)h(\014le)h Ft(${BASH_SOURCE[$i]})21
+b Fu(and)630 3233 y(called)36 b(from)e Ft(${BASH_SOURCE[$i+1]})c
+Fu(Assignmen)m(ts)35 b(to)g Ft(BASH_SOURCE)d Fu(ha)m(v)m(e)k(no)f(ef-)
+630 3343 y(fect,)c(and)f(it)h(ma)m(y)g(not)g(b)s(e)e(unset.)150
+3501 y Ft(BASH_SUBSHELL)630 3611 y Fu(Incremen)m(ted)24
+b(b)m(y)f(one)h(within)f(eac)m(h)i(subshell)d(or)i(subshell)e(en)m
+(vironmen)m(t)i(when)f(the)h(shell)630 3720 y(b)s(egins)j(executing)i
+(in)e(that)h(en)m(vironmen)m(t.)41 b(The)27 b(initial)i(v)-5
+b(alue)28 b(is)f(0.)40 b(If)28 b Ft(BASH_SUBSHELL)630
+3830 y Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)
+f(ev)m(en)h(if)g(it)g(is)f(subsequen)m(tly)g(reset.)150
+3988 y Ft(BASH_TRAPSIG)630 4098 y Fu(Set)g(to)h(the)f(signal)h(n)m(um)m
+(b)s(er)e(corresp)s(onding)g(to)i(the)f(trap)g(action)h(b)s(eing)f
+(executed)h(dur-)630 4208 y(ing)38 b(its)h(execution.)66
+b(See)38 b(the)g(description)h(of)f Ft(trap)f Fu(\(see)i(Section)g(4.1)
+h([Bourne)e(Shell)630 4317 y(Builtins],)31 b(page)g(51\))h(for)e
+(information)h(ab)s(out)f(signal)h(n)m(um)m(b)s(ers)e(and)h(trap)g
+(execution.)150 4475 y Ft(BASH_VERSINFO)630 4585 y Fu(A)i(readonly)g
+(arra)m(y)g(v)-5 b(ariable)32 b(\(see)h(Section)g(6.7)f([Arra)m(ys],)h
+(page)g(109\))g(whose)f(mem)m(b)s(ers)630 4695 y(hold)g(v)m(ersion)h
+(information)f(for)g(this)g(instance)h(of)g(Bash.)46
+b(The)32 b(v)-5 b(alues)32 b(assigned)h(to)g(the)630
+4804 y(arra)m(y)e(mem)m(b)s(ers)e(are)i(as)g(follo)m(ws:)630
+4963 y Ft(BASH_VERSINFO[0])1110 5072 y Fu(The)f(ma)5
+b(jor)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i Fr(release)5
+b Fu(\).)630 5230 y Ft(BASH_VERSINFO[1])1110 5340 y Fu(The)30
+b(minor)g(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i Fr(v)m(ersion)p
+Fu(\).)p eop end
+%%Page: 89 95
+TeXDict begin 89 94 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(89)630 299 y Ft(BASH_VERSINFO[2])
+1110 408 y Fu(The)30 b(patc)m(h)h(lev)m(el.)630 573 y
+Ft(BASH_VERSINFO[3])1110 682 y Fu(The)f(build)f(v)m(ersion.)630
+847 y Ft(BASH_VERSINFO[4])1110 956 y Fu(The)h(release)i(status)e
+(\(e.g.,)j Ft(beta)p Fu(\).)630 1121 y Ft(BASH_VERSINFO[5])1110
+1230 y Fu(The)d(v)-5 b(alue)31 b(of)f Ft(MACHTYPE)p Fu(.)150
+1395 y Ft(BASH_VERSION)630 1504 y Fu(Expands)49 b(to)j(a)f(string)g
+(describing)f(the)h(v)m(ersion)g(of)g(this)g(instance)g(of)g(Bash)g
+(\(e.g.,)630 1614 y(5.2.37\(3\)-release\).)150 1778 y
+Ft(BASH_XTRACEFD)630 1888 y Fu(If)24 b(set)g(to)h(an)f(in)m(teger)h
+(corresp)s(onding)e(to)i(a)f(v)-5 b(alid)25 b(\014le)f(descriptor,)h
+(Bash)f(writes)h(the)f(trace)630 1998 y(output)i(generated)g(when)f(`)p
+Ft(set)30 b(-x)p Fu(')c(is)g(enabled)f(to)i(that)g(\014le)f
+(descriptor,)h(instead)f(of)g(the)630 2107 y(standard)41
+b(error.)75 b(This)41 b(allo)m(ws)i(tracing)g(output)f(to)g(b)s(e)g
+(separated)g(from)g(diagnostic)630 2217 y(and)29 b(error)g(messages.)41
+b(The)29 b(\014le)g(descriptor)g(is)h(closed)g(when)e
+Ft(BASH_XTRACEFD)e Fu(is)j(unset)630 2326 y(or)34 b(assigned)h(a)g(new)
+f(v)-5 b(alue.)53 b(Unsetting)35 b Ft(BASH_XTRACEFD)c
+Fu(or)j(assigning)h(it)g(the)g(empt)m(y)630 2436 y(string)22
+b(causes)g(the)g(trace)h(output)e(to)i(b)s(e)e(sen)m(t)h(to)h(the)f
+(standard)f(error.)37 b(Note)23 b(that)g(setting)630
+2545 y Ft(BASH_XTRACEFD)30 b Fu(to)35 b(2)f(\(the)g(standard)f(error)g
+(\014le)h(descriptor\))g(and)f(then)h(unsetting)f(it)630
+2655 y(will)e(result)f(in)g(the)h(standard)e(error)h(b)s(eing)g
+(closed.)150 2819 y Ft(CHILD_MAX)630 2929 y Fu(Set)35
+b(the)h(n)m(um)m(b)s(er)e(of)h(exited)h(c)m(hild)g(status)f(v)-5
+b(alues)36 b(for)f(the)g(shell)g(to)h(remem)m(b)s(er.)55
+b(Bash)630 3039 y(will)37 b(not)g(allo)m(w)i(this)e(v)-5
+b(alue)37 b(to)h(b)s(e)e(decreased)i(b)s(elo)m(w)f(a)g
+Fm(posix)p Fu(-mandated)f(minim)m(um,)630 3148 y(and)30
+b(there)g(is)g(a)h(maxim)m(um)f(v)-5 b(alue)30 b(\(curren)m(tly)h
+(8192\))h(that)f(this)f(ma)m(y)g(not)h(exceed.)41 b(The)630
+3258 y(minim)m(um)30 b(v)-5 b(alue)30 b(is)h(system-dep)s(enden)m(t.)
+150 3422 y Ft(COLUMNS)144 b Fu(Used)32 b(b)m(y)f(the)h
+Ft(select)e Fu(command)h(to)i(determine)f(the)f(terminal)i(width)d
+(when)h(prin)m(ting)630 3532 y(selection)39 b(lists.)63
+b(Automatically)41 b(set)d(if)f(the)h Ft(checkwinsize)d
+Fu(option)j(is)f(enabled)h(\(see)630 3641 y(Section)44
+b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d(77\),)k(or)43
+b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630 3751
+y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 3915 y
+Ft(COMP_CWORD)630 4025 y Fu(An)38 b(index)g(in)m(to)h
+Ft(${COMP_WORDS})c Fu(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e
+(curren)m(t)g(cursor)g(p)s(o-)630 4134 y(sition.)72 b(This)40
+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
+4244 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g
+([Programmable)g(Completion],)630 4354 y(page)31 b(156\).)150
+4518 y Ft(COMP_KEY)96 b Fu(The)38 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i
+(of)f(a)h(k)m(ey)f(sequence\))h(used)e(to)i(in)m(v)m(ok)m(e)h(the)e
+(curren)m(t)g(comple-)630 4628 y(tion)h(function.)70
+b(This)39 b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 b(ailable)42
+b(only)e(in)g(shell)g(functions)g(and)f(external)630
+4737 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
+4847 y([Programmable)e(Completion],)h(page)f(156\).)150
+5011 y Ft(COMP_LINE)630 5121 y Fu(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 5230
+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 5340
+y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(156\).)p
+eop end
+%%Page: 90 96
+TeXDict begin 90 95 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(90)150 299 y Ft(COMP_POINT)630
+408 y Fu(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
+518 y(command.)40 b(If)27 b(the)h(curren)m(t)g(cursor)g(p)s(osition)g
+(is)g(at)g(the)g(end)g(of)g(the)g(curren)m(t)g(command,)630
+628 y(the)i(v)-5 b(alue)30 b(of)g(this)g(v)-5 b(ariable)31
+b(is)f(equal)g(to)h Ft(${#COMP_LINE})p Fu(.)37 b(This)29
+b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630 737
+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 847 y(completion)c
+(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g(Completion],)h
+(page)f(156\).)150 998 y Ft(COMP_TYPE)630 1107 y Fu(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(attempted)h(completion)g(that)630 1217 y(caused)j(a)g(completion)
+h(function)e(to)h(b)s(e)f(called:)43 b Ft(TAB)p Fu(,)30
+b(for)g(normal)h(completion,)h(`)p Ft(?)p Fu(',)f(for)630
+1326 y(listing)k(completions)h(after)f(successiv)m(e)g(tabs,)h(`)p
+Ft(!)p Fu(',)g(for)e(listing)h(alternativ)m(es)i(on)d(partial)630
+1436 y(w)m(ord)22 b(completion,)k(`)p Ft(@)p Fu(',)f(to)e(list)g
+(completions)h(if)f(the)g(w)m(ord)f(is)h(not)g(unmo)s(di\014ed,)f(or)h
+(`)p Ft(\045)p Fu(',)h(for)630 1545 y(men)m(u)i(completion.)41
+b(This)25 b(v)-5 b(ariable)27 b(is)g(a)m(v)-5 b(ailable)28
+b(only)f(in)f(shell)g(functions)g(and)g(external)630
+1655 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
+1765 y([Programmable)e(Completion],)h(page)f(156\).)150
+1915 y Ft(COMP_WORDBREAKS)630 2025 y Fu(The)e(set)i(of)e(c)m(haracters)
+j(that)e(the)g(Readline)g(library)g(treats)g(as)g(w)m(ord)g(separators)
+g(when)630 2134 y(p)s(erforming)i(w)m(ord)h(completion.)51
+b(If)33 b Ft(COMP_WORDBREAKS)c Fu(is)34 b(unset,)g(it)f(loses)i(its)e
+(sp)s(ecial)630 2244 y(prop)s(erties,)d(ev)m(en)h(if)f(it)h(is)g
+(subsequen)m(tly)f(reset.)150 2395 y Ft(COMP_WORDS)630
+2504 y Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(consisting)g(of)f(the)
+g(individual)f(w)m(ords)h(in)f(the)h(curren)m(t)g(command)630
+2614 y(line.)94 b(The)47 b(line)i(is)f(split)g(in)m(to)h(w)m(ords)e(as)
+h(Readline)h(w)m(ould)f(split)g(it,)53 b(using)47 b Ft(COMP_)630
+2724 y(WORDBREAKS)34 b Fu(as)i(describ)s(ed)g(ab)s(o)m(v)m(e.)60
+b(This)36 b(v)-5 b(ariable)37 b(is)f(a)m(v)-5 b(ailable)39
+b(only)e(in)f(shell)h(func-)630 2833 y(tions)32 b(in)m(v)m(ok)m(ed)i(b)
+m(y)d(the)i(programmable)f(completion)h(facilities)h(\(see)f(Section)g
+(8.6)g([Pro-)630 2943 y(grammable)e(Completion],)g(page)g(156\).)150
+3093 y Ft(COMPREPLY)630 3203 y Fu(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 3313 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 3422 y(tion)g(8.6)g([Programmable)g(Completion],)
+h(page)f(156\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
+630 3532 y(one)c(p)s(ossible)f(completion.)150 3682 y
+Ft(COPROC)192 b Fu(An)27 b(arra)m(y)g(v)-5 b(ariable)28
+b(created)g(to)f(hold)g(the)g(\014le)g(descriptors)g(for)g(output)f
+(from)h(and)f(input)630 3792 y(to)31 b(an)f(unnamed)f(copro)s(cess)i
+(\(see)g(Section)h(3.2.6)g([Copro)s(cesses],)f(page)g(18\).)150
+3943 y Ft(DIRSTACK)96 b Fu(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 4052 y(tories)33
+b(app)s(ear)f(in)g(the)h(stac)m(k)h(in)e(the)h(order)f(they)h(are)g
+(displa)m(y)m(ed)g(b)m(y)f(the)h Ft(dirs)e Fu(builtin.)630
+4162 y(Assigning)f(to)h(mem)m(b)s(ers)f(of)g(this)g(arra)m(y)g(v)-5
+b(ariable)31 b(ma)m(y)g(b)s(e)e(used)h(to)h(mo)s(dify)e(directories)630
+4271 y(already)41 b(in)f(the)h(stac)m(k,)k(but)40 b(the)h
+Ft(pushd)e Fu(and)h Ft(popd)f Fu(builtins)h(m)m(ust)h(b)s(e)e(used)h
+(to)i(add)630 4381 y(and)e(remo)m(v)m(e)i(directories.)73
+b(Assigning)41 b(to)g(this)g(v)-5 b(ariable)41 b(do)s(es)g(not)g(c)m
+(hange)g(the)g(cur-)630 4491 y(ren)m(t)33 b(directory)-8
+b(.)47 b(If)32 b Ft(DIRSTACK)e Fu(is)i(unset,)g(it)h(loses)g(its)g(sp)s
+(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)630
+4600 y(subsequen)m(tly)d(reset.)150 4751 y Ft(EMACS)240
+b Fu(If)40 b(Bash)g(\014nds)e(this)i(v)-5 b(ariable)40
+b(in)g(the)g(en)m(vironmen)m(t)h(when)e(the)h(shell)g(starts,)j(and)d
+(its)630 4861 y(v)-5 b(alue)27 b(is)f(`)p Ft(t)p Fu(',)h(Bash)f
+(assumes)g(that)g(the)h(shell)f(is)g(running)e(in)i(an)g(Emacs)g(shell)
+h(bu\013er)e(and)630 4970 y(disables)30 b(line)h(editing.)150
+5121 y Ft(ENV)336 b Fu(Expanded)33 b(and)h(executed)i(similarly)f(to)g
+Ft(BASH_ENV)d Fu(\(see)k(Section)f(6.2)h([Bash)f(Startup)630
+5230 y(Files],)g(page)e(101\))i(when)d(an)g(in)m(teractiv)m(e)k(shell)d
+(is)g(in)m(v)m(ok)m(ed)h(in)f Fm(posix)f Fu(Mo)s(de)h(\(see)g(Sec-)630
+5340 y(tion)e(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(115\).)p
+eop end
+%%Page: 91 97
+TeXDict begin 91 96 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(91)150 299 y Ft(EPOCHREALTIME)630
+408 y Fu(Eac)m(h)38 b(time)f(this)g(parameter)h(is)f(referenced,)i(it)f
+(expands)e(to)i(the)f(n)m(um)m(b)s(er)f(of)h(seconds)630
+518 y(since)g(the)f(Unix)g(Ep)s(o)s(c)m(h)f(as)i(a)f(\015oating-p)s
+(oin)m(t)i(v)-5 b(alue)37 b(with)f(micro-second)h(gran)m(ularit)m(y)630
+628 y(\(see)k(the)g(do)s(cumen)m(tation)h(for)e(the)h(C)f(library)g
+(function)g Ft(time)g Fu(for)g(the)h(de\014nition)f(of)630
+737 y(Ep)s(o)s(c)m(h\).)82 b(Assignmen)m(ts)44 b(to)h
+Ft(EPOCHREALTIME)c Fu(are)j(ignored.)83 b(If)43 b Ft(EPOCHREALTIME)e
+Fu(is)630 847 y(unset,)30 b(it)h(loses)g(its)g(sp)s(ecial)g(prop)s
+(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
+995 y Ft(EPOCHSECONDS)630 1105 y Fu(Eac)m(h)38 b(time)f(this)g
+(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)f(n)m(um)m(b)s
+(er)f(of)h(seconds)630 1214 y(since)d(the)g(Unix)g(Ep)s(o)s(c)m(h)f
+(\(see)i(the)f(do)s(cumen)m(tation)h(for)e(the)i(C)e(library)h
+(function)f Ft(time)630 1324 y Fu(for)41 b(the)g(de\014nition)g(of)h
+(Ep)s(o)s(c)m(h\).)73 b(Assignmen)m(ts)41 b(to)h Ft(EPOCHSECONDS)c
+Fu(are)k(ignored.)73 b(If)630 1433 y Ft(EPOCHSECONDS)27
+b Fu(is)j(unset,)g(it)g(loses)h(its)g(sp)s(ecial)f(prop)s(erties,)g(ev)
+m(en)h(if)f(it)g(is)g(subsequen)m(tly)630 1543 y(reset.)150
+1691 y Ft(EUID)288 b Fu(The)30 b(n)m(umeric)g(e\013ectiv)m(e)j(user)d
+(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5
+b(ariable)31 b(is)f(readonly)-8 b(.)150 1840 y Ft(EXECIGNORE)630
+1949 y Fu(A)29 b(colon-separated)h(list)f(of)g(shell)g(patterns)f
+(\(see)i(Section)f(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)630
+2059 y(page)j(38\))h(de\014ning)e(the)h(set)g(of)g(\014lenames)f(to)i
+(b)s(e)e(ignored)g(b)m(y)h(command)f(searc)m(h)h(using)630
+2168 y Ft(PATH)p Fu(.)j(Files)22 b(whose)f(full)g(pathnames)g(matc)m(h)
+h(one)f(of)g(these)h(patterns)e(are)i(not)f(considered)630
+2278 y(executable)j(\014les)e(for)g(the)h(purp)s(oses)d(of)j
+(completion)h(and)d(command)i(execution)g(via)g Ft(PATH)630
+2388 y Fu(lo)s(okup.)56 b(This)35 b(do)s(es)g(not)h(a\013ect)i(the)d(b)
+s(eha)m(vior)h(of)g(the)g Ft([)p Fu(,)h Ft(test)p Fu(,)f(and)f
+Ft([[)g Fu(commands.)630 2497 y(F)-8 b(ull)42 b(pathnames)e(in)h(the)g
+(command)g(hash)f(table)i(are)g(not)f(sub)5 b(ject)41
+b(to)g Ft(EXECIGNORE)p Fu(.)630 2607 y(Use)30 b(this)f(v)-5
+b(ariable)30 b(to)g(ignore)g(shared)f(library)g(\014les)g(that)h(ha)m
+(v)m(e)h(the)f(executable)h(bit)e(set,)630 2716 y(but)36
+b(are)h(not)g(executable)i(\014les.)60 b(The)36 b(pattern)h(matc)m
+(hing)h(honors)e(the)h(setting)h(of)f(the)630 2826 y
+Ft(extglob)28 b Fu(shell)j(option.)150 2974 y Ft(FCEDIT)192
+b Fu(The)30 b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f
+Ft(fc)g Fu(builtin)g(command.)150 3122 y Ft(FIGNORE)144
+b Fu(A)35 b(colon-separated)i(list)f(of)g(su\016xes)e(to)i(ignore)g
+(when)e(p)s(erforming)g(\014lename)i(comple-)630 3232
+y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i(one)f(of)g
+(the)g(en)m(tries)g(in)g Ft(FIGNORE)d Fu(is)j(excluded)630
+3342 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41
+b(A)30 b(sample)h(v)-5 b(alue)31 b(is)f(`)p Ft(.o:~)p
+Fu(')150 3490 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5
+b(ariable)36 b(con)m(taining)h(the)f(names)g(of)g(all)g(shell)g
+(functions)g(curren)m(tly)f(in)h(the)630 3599 y(execution)g(call)h
+(stac)m(k.)57 b(The)34 b(elemen)m(t)j(with)e(index)g(0)h(is)f(the)g
+(name)h(of)f(an)m(y)h(curren)m(tly-)630 3709 y(executing)f(shell)f
+(function.)51 b(The)34 b(b)s(ottom-most)h(elemen)m(t)g(\(the)g(one)f
+(with)g(the)g(highest)630 3819 y(index\))e(is)h Ft("main")p
+Fu(.)44 b(This)32 b(v)-5 b(ariable)33 b(exists)g(only)g(when)e(a)i
+(shell)f(function)g(is)g(executing.)630 3928 y(Assignmen)m(ts)23
+b(to)f Ft(FUNCNAME)e Fu(ha)m(v)m(e)k(no)e(e\013ect.)39
+b(If)22 b Ft(FUNCNAME)e Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)
+630 4038 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m
+(tly)f(reset.)630 4167 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used)
+g(with)g Ft(BASH_LINENO)d Fu(and)j Ft(BASH_SOURCE)p Fu(.)40
+b(Eac)m(h)32 b(elemen)m(t)630 4276 y(of)g Ft(FUNCNAME)d
+Fu(has)j(corresp)s(onding)e(elemen)m(ts)j(in)f Ft(BASH_LINENO)c
+Fu(and)k Ft(BASH_SOURCE)c Fu(to)630 4386 y(describ)s(e)39
+b(the)h(call)h(stac)m(k.)70 b(F)-8 b(or)41 b(instance,)i
+Ft(${FUNCNAME[$i]})35 b Fu(w)m(as)41 b(called)f(from)g(the)630
+4495 y(\014le)27 b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27
+b(line)h(n)m(um)m(b)s(er)d Ft(${BASH_LINENO[$i]})p Fu(.)34
+b(The)27 b Ft(caller)630 4605 y Fu(builtin)j(displa)m(ys)g(the)h
+(curren)m(t)f(call)i(stac)m(k)g(using)d(this)i(information.)150
+4753 y Ft(FUNCNEST)96 b Fu(A)23 b(n)m(umeric)f(v)-5 b(alue)23
+b(greater)g(than)f(0)h(de\014nes)f(a)h(maxim)m(um)f(function)g(nesting)
+h(lev)m(el.)40 b(F)-8 b(unc-)630 4863 y(tion)36 b(in)m(v)m(o)s(cations)
+i(that)f(exceed)g(this)f(nesting)g(lev)m(el)i(cause)e(the)h(curren)m(t)
+e(command)h(to)630 4973 y(ab)s(ort.)150 5121 y Ft(GLOBIGNORE)630
+5230 y Fu(A)f(colon-separated)i(list)f(of)f(patterns)g(de\014ning)f
+(the)i(set)f(of)g(\014le)h(names)f(to)g(b)s(e)g(ignored)630
+5340 y(b)m(y)28 b(\014lename)h(expansion.)40 b(If)28
+b(a)h(\014le)g(name)g(matc)m(hed)g(b)m(y)g(a)g(\014lename)f(expansion)h
+(pattern)p eop end
+%%Page: 92 98
+TeXDict begin 92 97 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(92)630 299 y(also)33
+b(matc)m(hes)g(one)f(of)g(the)g(patterns)g(in)f Ft(GLOBIGNORE)p
+Fu(,)f(it)i(is)g(remo)m(v)m(ed)h(from)e(the)h(list)h(of)630
+408 y(matc)m(hes.)41 b(The)27 b(pattern)g(matc)m(hing)h(honors)f(the)g
+(setting)i(of)e(the)h Ft(extglob)d Fu(shell)i(option.)150
+565 y Ft(GLOBSORT)96 b Fu(Con)m(trols)38 b(ho)m(w)g(the)f(results)h(of)
+g(\014lename)f(expansion)h(are)g(sorted.)62 b(The)37
+b(v)-5 b(alue)38 b(of)g(this)630 675 y(v)-5 b(ariable)45
+b(sp)s(eci\014es)e(the)h(sort)g(criteria)h(and)e(sort)h(order)f(for)g
+(the)h(results)g(of)g(\014lename)630 784 y(expansion.)c(If)29
+b(this)g(v)-5 b(ariable)30 b(is)f(unset)f(or)h(set)h(to)g(the)f(n)m
+(ull)g(string,)h(\014lename)f(expansion)630 894 y(uses)23
+b(the)h(historical)h(b)s(eha)m(vior)e(of)h(sorting)g(b)m(y)g(name,)h
+(in)e(ascending)h(lexicographic)h(order)630 1003 y(as)31
+b(determined)f(b)m(y)g(the)g Ft(LC_COLLATE)e Fu(shell)j(v)-5
+b(ariable.)630 1136 y(If)31 b(set,)h(a)g(v)-5 b(alid)32
+b(v)-5 b(alue)31 b(b)s(egins)g(with)g(an)g(optional)i(`)p
+Ft(+)p Fu(',)f(whic)m(h)f(is)g(ignored,)h(or)f(`)p Ft(-)p
+Fu(',)h(whic)m(h)630 1246 y(rev)m(erses)22 b(the)g(sort)f(order)g(from)
+g(ascending)h(to)g(descending,)h(follo)m(w)m(ed)g(b)m(y)f(a)g(sort)f
+(sp)s(eci\014er.)630 1356 y(The)k(v)-5 b(alid)25 b(sort)h(sp)s
+(eci\014ers)e(are)i(`)p Ft(name)p Fu(',)g(`)p Ft(numeric)p
+Fu(',)f(`)p Ft(size)p Fu(',)g(`)p Ft(mtime)p Fu(',)h(`)p
+Ft(atime)p Fu(',)g(`)p Ft(ctime)p Fu(',)630 1465 y(and)45
+b(`)p Ft(blocks)p Fu(',)j(whic)m(h)e(sort)f(the)h(\014les)g(on)f(name,)
+50 b(names)45 b(in)g(n)m(umeric)h(rather)f(than)630 1575
+y(lexicographic)28 b(order,)f(\014le)f(size,)i(mo)s(di\014cation)f
+(time,)h(access)f(time,)h(ino)s(de)e(c)m(hange)h(time,)630
+1684 y(and)37 b(n)m(um)m(b)s(er)e(of)j(blo)s(c)m(ks,)h(resp)s(ectiv)m
+(ely)-8 b(.)63 b(If)37 b(an)m(y)g(of)h(the)f(non-name)g(k)m(eys)h
+(compare)g(as)630 1794 y(equal)29 b(\(e.g.,)i(if)d(t)m(w)m(o)i(\014les)
+e(are)h(the)f(same)h(size\),)i(sorting)d(uses)g(the)h(name)f(as)h(a)g
+(secondary)630 1904 y(sort)i(k)m(ey)-8 b(.)630 2037 y(F)g(or)33
+b(example,)g(a)f(v)-5 b(alue)33 b(of)f Ft(-mtime)e Fu(sorts)i(the)g
+(results)g(in)f(descending)h(order)f(b)m(y)h(mo)s(di-)630
+2146 y(\014cation)f(time)g(\(new)m(est)h(\014rst\).)630
+2279 y(The)c(`)p Ft(numeric)p Fu(')g(sp)s(eci\014er)g(treats)i(names)e
+(consisting)i(solely)g(of)f(digits)g(as)g(n)m(um)m(b)s(ers)f(and)630
+2389 y(sorts)36 b(them)f(using)h(their)f(n)m(umeric)h(v)-5
+b(alue)36 b(\(so)g(\\2")h(sorts)f(b)s(efore)f(\\10",)k(for)d
+(example\).)630 2498 y(When)e(using)h(`)p Ft(numeric)p
+Fu(',)f(names)g(con)m(taining)j(non-digits)e(sort)f(after)i(all)f(the)g
+(all-digit)630 2608 y(names)30 b(and)g(are)h(sorted)f(b)m(y)h(name)f
+(using)g(the)g(traditional)i(b)s(eha)m(vior.)630 2741
+y(A)24 b(sort)h(sp)s(eci\014er)f(of)g(`)p Ft(nosort)p
+Fu(')f(disables)h(sorting)h(completely;)j(Bash)d(returns)e(the)h
+(results)630 2851 y(in)30 b(the)h(order)f(they)g(are)h(read)f(from)g
+(the)h(\014le)f(system,)h(ignoring)g(an)m(y)f(leading)h(`)p
+Ft(-)p Fu('.)630 2984 y(If)26 b(the)h(sort)f(sp)s(eci\014er)g(is)h
+(missing,)g(it)g(defaults)g(to)g Fr(name)p Fu(,)g(so)g(a)g(v)-5
+b(alue)27 b(of)f(`)p Ft(+)p Fu(')h(is)f(equiv)-5 b(alen)m(t)630
+3093 y(to)31 b(the)g(n)m(ull)f(string,)h(and)e(a)i(v)-5
+b(alue)31 b(of)f(`)p Ft(-)p Fu(')h(sorts)f(b)m(y)h(name)f(in)g
+(descending)g(order.)630 3226 y(An)m(y)g(in)m(v)-5 b(alid)31
+b(v)-5 b(alue)31 b(restores)g(the)g(historical)g(sorting)g(b)s(eha)m
+(vior.)150 3383 y Ft(GROUPS)192 b Fu(An)36 b(arra)m(y)g(v)-5
+b(ariable)37 b(con)m(taining)g(the)f(list)h(of)f(groups)g(of)g(whic)m
+(h)f(the)i(curren)m(t)e(user)h(is)g(a)630 3493 y(mem)m(b)s(er.)41
+b(Assignmen)m(ts)30 b(to)i Ft(GROUPS)d Fu(ha)m(v)m(e)i(no)g(e\013ect.)
+42 b(If)30 b Ft(GROUPS)f Fu(is)i(unset,)f(it)h(loses)h(its)630
+3602 y(sp)s(ecial)f(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g
+(subsequen)m(tly)f(reset.)150 3759 y Ft(histchars)630
+3868 y Fu(The)37 b(t)m(w)m(o)i(or)f(three)g(c)m(haracters)h(whic)m(h)f
+(con)m(trol)h(history)f(expansion,)h(quic)m(k)g(substitu-)630
+3978 y(tion,)i(and)d(tok)m(enization)j(\(see)e(Section)g(9.3)g
+([History)g(In)m(teraction],)j(page)d(169\).)66 b(The)630
+4088 y(\014rst)29 b(c)m(haracter)j(is)e(the)g Fr(history)g(expansion)g
+Fu(c)m(haracter,)i(the)f(c)m(haracter)g(whic)m(h)f(b)s(egins)g(a)630
+4197 y(history)35 b(expansion,)i(normally)e(`)p Ft(!)p
+Fu('.)56 b(The)35 b(second)g(c)m(haracter)i(is)f(the)f(\\quic)m(k)i
+(substitu-)630 4307 y(tion")25 b(c)m(haracter,)i(normally)e(`)p
+Ft(^)p Fu('.)39 b(When)24 b(it)g(app)s(ears)g(as)g(the)h(\014rst)e(c)m
+(haracter)j(on)e(the)g(line,)630 4416 y(history)35 b(substitution)g
+(rep)s(eats)g(the)g(previous)f(command,)i(replacing)g(one)f(string)g
+(with)630 4526 y(another.)40 b(The)28 b(optional)i(third)d(c)m
+(haracter)j(is)e(the)h(c)m(haracter)h(whic)m(h)e(indicates)h(that)g
+(the)630 4635 y(remainder)e(of)g(the)h(line)g(is)f(a)h(commen)m(t)g
+(when)f(found)f(as)h(the)h(\014rst)f(c)m(haracter)i(of)e(a)h(w)m(ord,)
+630 4745 y(usually)c(`)p Ft(#)p Fu('.)39 b(The)24 b(history)h(commen)m
+(t)h(c)m(haracter)g(disables)e(history)h(substitution)f(for)h(the)630
+4855 y(remaining)35 b(w)m(ords)f(on)h(the)f(line.)54
+b(It)35 b(do)s(es)g(not)g(necessarily)g(cause)g(the)g(shell)g(parser)f
+(to)630 4964 y(treat)d(the)g(rest)g(of)f(the)h(line)f(as)h(a)g(commen)m
+(t.)150 5121 y Ft(HISTCMD)144 b Fu(The)44 b(history)h(n)m(um)m(b)s(er,)
+j(or)d(index)g(in)f(the)h(history)g(list,)50 b(of)45
+b(the)g(curren)m(t)g(command.)630 5230 y(Assignmen)m(ts)30
+b(to)h Ft(HISTCMD)d Fu(ha)m(v)m(e)j(no)f(e\013ect.)42
+b(If)30 b Ft(HISTCMD)e Fu(is)i(unset,)g(it)g(loses)h(its)f(sp)s(ecial)
+630 5340 y(prop)s(erties,)g(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f
+(reset.)p eop end
+%%Page: 93 99
+TeXDict begin 93 98 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(93)150 299 y Ft(HISTCONTROL)630
+408 y Fu(A)40 b(colon-separated)i(list)f(of)f(v)-5 b(alues)40
+b(con)m(trolling)i(ho)m(w)e(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)630
+518 y(history)29 b(list.)41 b(If)28 b(the)h(list)h(of)f(v)-5
+b(alues)29 b(includes)f(`)p Ft(ignorespace)p Fu(',)f(lines)i(whic)m(h)g
+(b)s(egin)f(with)630 628 y(a)39 b(space)g(c)m(haracter)i(are)e(not)g
+(sa)m(v)m(ed)g(in)g(the)g(history)f(list.)66 b(A)39 b(v)-5
+b(alue)39 b(of)g(`)p Ft(ignoredups)p Fu(')630 737 y(causes)34
+b(lines)h(whic)m(h)f(matc)m(h)h(the)f(previous)f(history)h(en)m(try)h
+(not)f(to)h(b)s(e)e(sa)m(v)m(ed.)53 b(A)34 b(v)-5 b(alue)630
+847 y(of)32 b(`)p Ft(ignoreboth)p Fu(')d(is)j(shorthand)e(for)i(`)p
+Ft(ignorespace)p Fu(')d(and)i(`)p Ft(ignoredups)p Fu('.)42
+b(A)32 b(v)-5 b(alue)32 b(of)630 956 y(`)p Ft(erasedups)p
+Fu(')f(causes)i(all)h(previous)f(lines)g(matc)m(hing)h(the)f(curren)m
+(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630 1066 y(from)g(the)i(history)
+e(list)i(b)s(efore)f(that)g(line)g(is)g(sa)m(v)m(ed.)50
+b(An)m(y)33 b(v)-5 b(alue)33 b(not)g(in)g(the)g(ab)s(o)m(v)m(e)h(list)
+630 1176 y(is)k(ignored.)64 b(If)38 b Ft(HISTCONTROL)d
+Fu(is)k(unset,)g(or)g(do)s(es)e(not)i(include)f(a)g(v)-5
+b(alid)39 b(v)-5 b(alue,)41 b(Bash)630 1285 y(sa)m(v)m(es)34
+b(all)g(lines)e(read)h(b)m(y)f(the)h(shell)g(parser)f(on)g(the)h
+(history)g(list,)h(sub)5 b(ject)32 b(to)i(the)e(v)-5
+b(alue)630 1395 y(of)31 b Ft(HISTIGNORE)p Fu(.)39 b(If)30
+b(the)h(\014rst)f(line)h(of)g(a)g(m)m(ulti-line)h(comp)s(ound)d
+(command)i(w)m(as)g(sa)m(v)m(ed,)630 1504 y(the)36 b(second)g(and)f
+(subsequen)m(t)h(lines)g(are)g(not)g(tested,)i(and)e(are)g(added)f(to)i
+(the)f(history)630 1614 y(regardless)42 b(of)g(the)f(v)-5
+b(alue)42 b(of)g Ft(HISTCONTROL)p Fu(.)71 b(If)41 b(the)h(\014rst)f
+(line)g(w)m(as)h(not)g(sa)m(v)m(ed,)k(the)630 1724 y(second)30
+b(and)g(subsequen)m(t)g(lines)g(of)h(the)g(command)f(are)g(not)h(sa)m
+(v)m(ed)h(either.)150 1882 y Ft(HISTFILE)96 b Fu(The)35
+b(name)h(of)g(the)g(\014le)g(to)h(whic)m(h)e(the)h(command)g(history)g
+(is)f(sa)m(v)m(ed.)59 b(Bash)36 b(assigns)g(a)630 1991
+y(default)31 b(v)-5 b(alue)31 b(of)f Ft(~/.bash_history)p
+Fu(.)37 b(If)31 b Ft(HISTFILE)d Fu(is)i(unset)h(or)f(n)m(ull,)h(the)g
+(shell)f(do)s(es)630 2101 y(not)h(sa)m(v)m(e)h(the)e(command)g(history)
+h(when)e(it)i(exits.)150 2259 y Ft(HISTFILESIZE)630 2369
+y Fu(The)26 b(maxim)m(um)f(n)m(um)m(b)s(er)g(of)h(lines)h(con)m(tained)
+g(in)f(the)g(history)g(\014le.)39 b(When)26 b(this)g(v)-5
+b(ariable)630 2478 y(is)25 b(assigned)h(a)g(v)-5 b(alue,)27
+b(the)f(history)f(\014le)h(is)f(truncated,)i(if)e(necessary)-8
+b(,)28 b(to)e(con)m(tain)g(no)g(more)630 2588 y(than)37
+b(that)h(n)m(um)m(b)s(er)d(of)j(lines)f(b)m(y)g(remo)m(ving)h(the)f
+(oldest)h(en)m(tries.)62 b(The)37 b(history)g(\014le)g(is)630
+2698 y(also)30 b(truncated)f(to)h(this)f(size)g(after)h(writing)f(it)h
+(when)d(a)j(shell)f(exits)h(or)f(b)m(y)g(the)g Ft(history)630
+2807 y Fu(builtin.)40 b(If)28 b(the)h(v)-5 b(alue)29
+b(is)g(0,)h(the)f(history)g(\014le)g(is)g(truncated)f(to)i(zero)g
+(size.)41 b(Non-n)m(umeric)630 2917 y(v)-5 b(alues)32
+b(and)e(n)m(umeric)h(v)-5 b(alues)32 b(less)f(than)g(zero)h(inhibit)f
+(truncation.)44 b(The)31 b(shell)g(sets)h(the)630 3026
+y(default)f(v)-5 b(alue)30 b(to)i(the)e(v)-5 b(alue)31
+b(of)f Ft(HISTSIZE)f Fu(after)h(reading)h(an)m(y)g(startup)f(\014les.)
+150 3185 y Ft(HISTIGNORE)630 3294 y Fu(A)j(colon-separated)h(list)f(of)
+g(patterns)f(used)g(to)h(decide)g(whic)m(h)f(command)g(lines)h(should)
+630 3404 y(b)s(e)d(sa)m(v)m(ed)i(on)f(the)g(history)g(list.)43
+b(If)30 b(a)h(command)g(line)g(matc)m(hes)h(one)f(of)g(the)g(patterns)g
+(in)630 3513 y(the)38 b(v)-5 b(alue)38 b(of)f Ft(HISTIGNORE)p
+Fu(,)g(it)h(is)g(not)f(sa)m(v)m(ed)i(on)e(the)h(history)f(list.)63
+b(Eac)m(h)38 b(pattern)g(is)630 3623 y(anc)m(hored)30
+b(at)h(the)f(b)s(eginning)g(of)g(the)g(line)h(and)e(m)m(ust)h(matc)m(h)
+h(the)f(complete)i(line)e(\(Bash)630 3733 y(do)s(es)h(not)h(implicitly)
+g(app)s(end)e(a)i(`)p Ft(*)p Fu('\).)44 b(Eac)m(h)32
+b(pattern)g(is)f(tested)h(against)h(the)f(line)f(after)630
+3842 y(the)39 b(c)m(hec)m(ks)h(sp)s(eci\014ed)f(b)m(y)g
+Ft(HISTCONTROL)c Fu(are)40 b(applied.)66 b(In)38 b(addition)h(to)h(the)
+f(normal)630 3952 y(shell)k(pattern)g(matc)m(hing)h(c)m(haracters,)k(`)
+p Ft(&)p Fu(')43 b(matc)m(hes)h(the)g(previous)e(history)h(line.)79
+b(A)630 4061 y(bac)m(kslash)29 b(escap)s(es)g(the)g(`)p
+Ft(&)p Fu(';)g(the)g(bac)m(kslash)g(is)g(remo)m(v)m(ed)g(b)s(efore)f
+(attempting)i(a)f(matc)m(h.)630 4171 y(If)j(the)g(\014rst)g(line)g(of)h
+(a)f(m)m(ulti-line)i(comp)s(ound)c(command)i(w)m(as)h(sa)m(v)m(ed,)h
+(the)e(second)h(and)630 4281 y(subsequen)m(t)e(lines)h(are)g(not)g
+(tested,)i(and)d(are)h(added)f(to)i(the)f(history)g(regardless)g(of)g
+(the)630 4390 y(v)-5 b(alue)28 b(of)f Ft(HISTIGNORE)p
+Fu(.)37 b(If)27 b(the)g(\014rst)g(line)h(w)m(as)f(not)h(sa)m(v)m(ed,)h
+(the)f(second)f(and)g(subsequen)m(t)630 4500 y(lines)35
+b(of)g(the)f(command)h(are)g(not)g(sa)m(v)m(ed)g(either.)54
+b(The)34 b(pattern)h(matc)m(hing)h(honors)e(the)630 4609
+y(setting)d(of)g(the)g Ft(extglob)d Fu(shell)j(option.)630
+4743 y Ft(HISTIGNORE)g Fu(subsumes)h(some)i(of)g(the)g(function)g(of)g
+Ft(HISTCONTROL)p Fu(.)48 b(A)34 b(pattern)g(of)g(`)p
+Ft(&)p Fu(')630 4853 y(is)28 b(iden)m(tical)h(to)f Ft(ignoredups)p
+Fu(,)d(and)i(a)h(pattern)g(of)f(`)p Ft([)k(]*)p Fu(')c(is)g(iden)m
+(tical)j(to)e Ft(ignorespace)p Fu(.)630 4963 y(Com)m(bining)c(these)h
+(t)m(w)m(o)g(patterns,)h(separating)f(them)f(with)g(a)h(colon,)i(pro)m
+(vides)d(the)h(func-)630 5072 y(tionalit)m(y)33 b(of)d
+Ft(ignoreboth)p Fu(.)150 5230 y Ft(HISTSIZE)96 b Fu(The)37
+b(maxim)m(um)g(n)m(um)m(b)s(er)e(of)j(commands)f(to)g(remem)m(b)s(er)g
+(on)g(the)g(history)g(list.)62 b(If)37 b(the)630 5340
+y(v)-5 b(alue)26 b(is)g(0,)i(commands)d(are)h(not)h(sa)m(v)m(ed)g(in)e
+(the)h(history)g(list.)40 b(Numeric)26 b(v)-5 b(alues)26
+b(less)g(than)p eop end
+%%Page: 94 100
+TeXDict begin 94 99 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(94)630 299 y(zero)28
+b(result)e(in)h(ev)m(ery)g(command)g(b)s(eing)f(sa)m(v)m(ed)i(on)f(the)
+g(history)f(list)i(\(there)f(is)g(no)g(limit\).)630 408
+y(The)j(shell)g(sets)h(the)g(default)f(v)-5 b(alue)31
+b(to)g(500)h(after)f(reading)f(an)m(y)h(startup)f(\014les.)150
+584 y Ft(HISTTIMEFORMAT)630 693 y Fu(If)44 b(this)g(v)-5
+b(ariable)45 b(is)f(set)g(and)g(not)g(n)m(ull,)k(its)d(v)-5
+b(alue)44 b(is)g(used)g(as)g(a)h(format)f(string)g(for)630
+803 y Ft(strftime)p Fu(\(3\))37 b(to)i(prin)m(t)g(the)f(time)h(stamp)f
+(asso)s(ciated)i(with)e(eac)m(h)i(history)e(en)m(try)h(dis-)630
+913 y(pla)m(y)m(ed)k(b)m(y)f(the)h Ft(history)d Fu(builtin.)76
+b(If)42 b(this)g(v)-5 b(ariable)43 b(is)g(set,)j(the)c(shell)h(writes)f
+(time)630 1022 y(stamps)32 b(to)g(the)h(history)e(\014le)i(so)f(they)g
+(ma)m(y)g(b)s(e)g(preserv)m(ed)f(across)i(shell)f(sessions.)46
+b(This)630 1132 y(uses)32 b(the)h(history)g(commen)m(t)h(c)m(haracter)g
+(to)g(distinguish)e(timestamps)h(from)f(other)h(his-)630
+1241 y(tory)e(lines.)150 1417 y Ft(HOSTFILE)96 b Fu(Con)m(tains)33
+b(the)g(name)f(of)h(a)g(\014le)f(in)g(the)h(same)g(format)g(as)f
+Ft(/etc/hosts)e Fu(that)j(should)f(b)s(e)630 1526 y(read)21
+b(when)g(the)g(shell)h(needs)f(to)h(complete)h(a)e(hostname.)38
+b(The)21 b(list)h(of)g(p)s(ossible)f(hostname)630 1636
+y(completions)27 b(ma)m(y)f(b)s(e)f(c)m(hanged)h(while)f(the)h(shell)g
+(is)f(running;)h(the)g(next)f(time)i(hostname)630 1745
+y(completion)33 b(is)g(attempted)g(after)g(the)f(v)-5
+b(alue)33 b(is)f(c)m(hanged,)i(Bash)e(adds)f(the)i(con)m(ten)m(ts)h(of)
+630 1855 y(the)h(new)f(\014le)g(to)h(the)g(existing)h(list.)53
+b(If)34 b Ft(HOSTFILE)e Fu(is)j(set,)h(but)e(has)g(no)h(v)-5
+b(alue,)36 b(or)e(do)s(es)630 1965 y(not)d(name)f(a)h(readable)g
+(\014le,)g(Bash)f(attempts)i(to)f(read)f Ft(/etc/hosts)e
+Fu(to)j(obtain)g(the)f(list)630 2074 y(of)38 b(p)s(ossible)f(hostname)g
+(completions.)63 b(When)37 b Ft(HOSTFILE)e Fu(is)j(unset,)h(Bash)e
+(clears)i(the)630 2184 y(hostname)31 b(list.)150 2359
+y Ft(HOSTNAME)96 b Fu(The)30 b(name)g(of)h(the)f(curren)m(t)h(host.)150
+2534 y Ft(HOSTTYPE)96 b Fu(A)30 b(string)h(describing)f(the)g(mac)m
+(hine)h(Bash)g(is)f(running)f(on.)150 2710 y Ft(IGNOREEOF)630
+2819 y Fu(Con)m(trols)e(the)h(action)g(of)f(the)g(shell)g(on)g(receipt)
+h(of)f(an)g Ft(EOF)f Fu(c)m(haracter)i(as)g(the)f(sole)h(input.)630
+2929 y(If)33 b(set,)i(the)e(v)-5 b(alue)34 b(is)f(the)h(n)m(um)m(b)s
+(er)e(of)h(consecutiv)m(e)j Ft(EOF)c Fu(c)m(haracters)j(that)f(can)f(b)
+s(e)g(read)630 3039 y(as)h(the)g(\014rst)f(c)m(haracter)j(on)d(an)h
+(input)f(line)h(b)s(efore)g(Bash)g(exits.)51 b(If)34
+b(the)g(v)-5 b(ariable)35 b(is)e(set)630 3148 y(but)e(do)s(es)g(not)h
+(ha)m(v)m(e)h(a)f(n)m(umeric)f(v)-5 b(alue,)33 b(or)e(the)h(v)-5
+b(alue)32 b(is)f(n)m(ull,)i(then)e(the)h(default)f(is)h(10.)630
+3258 y(If)e(the)g(v)-5 b(ariable)31 b(is)g(unset,)f(then)g
+Ft(EOF)f Fu(signi\014es)h(the)h(end)e(of)i(input)e(to)i(the)g(shell.)40
+b(This)30 b(is)630 3367 y(only)g(in)h(e\013ect)g(for)g(in)m(teractiv)m
+(e)i(shells.)150 3543 y Ft(INPUTRC)144 b Fu(The)68 b(name)h(of)f(the)h
+(Readline)g(initialization)j(\014le,)78 b(o)m(v)m(erriding)69
+b(the)g(default)g(of)630 3652 y Ft(~/.inputrc)p Fu(.)150
+3828 y Ft(INSIDE_EMACS)630 3937 y Fu(If)29 b(Bash)h(\014nds)e(this)h(v)
+-5 b(ariable)31 b(in)e(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)g
+(starts,)g(it)g(assumes)630 4047 y(that)i(the)g(shell)g(is)f(running)f
+(in)i(an)f(Emacs)h(shell)g(bu\013er)e(and)h(ma)m(y)i(disable)e(line)h
+(editing)630 4156 y(dep)s(ending)d(on)h(the)h(v)-5 b(alue)31
+b(of)f Ft(TERM)p Fu(.)150 4332 y Ft(LANG)288 b Fu(Used)28
+b(to)h(determine)f(the)g(lo)s(cale)h(category)h(for)e(an)m(y)h
+(category)h(not)e(sp)s(eci\014cally)g(selected)630 4441
+y(with)i(a)h(v)-5 b(ariable)31 b(starting)g(with)f Ft(LC_)p
+Fu(.)150 4617 y Ft(LC_ALL)192 b Fu(This)28 b(v)-5 b(ariable)29
+b(o)m(v)m(errides)h(the)f(v)-5 b(alue)29 b(of)g Ft(LANG)f
+Fu(and)g(an)m(y)h(other)g Ft(LC_)f Fu(v)-5 b(ariable)29
+b(sp)s(ecifying)630 4726 y(a)i(lo)s(cale)h(category)-8
+b(.)150 4902 y Ft(LC_COLLATE)630 5011 y Fu(This)37 b(v)-5
+b(ariable)38 b(determines)g(the)g(collation)i(order)d(used)g(when)f
+(sorting)i(the)g(results)g(of)630 5121 y(\014lename)e(expansion,)i(and)
+e(determines)g(the)h(b)s(eha)m(vior)f(of)g(range)h(expressions,)h
+(equiv-)630 5230 y(alence)e(classes,)h(and)e(collating)i(sequences)e
+(within)f(\014lename)h(expansion)g(and)f(pattern)630
+5340 y(matc)m(hing)d(\(see)h(Section)f(3.5.8)h([Filename)g(Expansion],)
+e(page)h(37\).)p eop end
+%%Page: 95 101
+TeXDict begin 95 100 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(95)150 299 y Ft(LC_CTYPE)96
+b Fu(This)36 b(v)-5 b(ariable)37 b(determines)f(the)h(in)m
+(terpretation)h(of)f(c)m(haracters)h(and)e(the)g(b)s(eha)m(vior)h(of)
+630 408 y(c)m(haracter)46 b(classes)g(within)e(\014lename)h(expansion)g
+(and)f(pattern)h(matc)m(hing)h(\(see)f(Sec-)630 518 y(tion)31
+b(3.5.8)h([Filename)g(Expansion],)e(page)h(37\).)150
+670 y Ft(LC_MESSAGES)630 779 y Fu(This)25 b(v)-5 b(ariable)27
+b(determines)f(the)g(lo)s(cale)i(used)d(to)i(translate)g(double-quoted)
+f(strings)g(pre-)630 889 y(ceded)31 b(b)m(y)f(a)h(`)p
+Ft($)p Fu(')f(\(see)h(Section)h(3.1.2.5)g([Lo)s(cale)g(T)-8
+b(ranslation],)32 b(page)f(7\).)150 1041 y Ft(LC_NUMERIC)630
+1150 y Fu(This)f(v)-5 b(ariable)31 b(determines)f(the)h(lo)s(cale)h
+(category)g(used)e(for)g(n)m(um)m(b)s(er)f(formatting.)150
+1302 y Ft(LC_TIME)144 b Fu(This)25 b(v)-5 b(ariable)26
+b(determines)g(the)g(lo)s(cale)h(category)h(used)d(for)g(data)h(and)f
+(time)i(formatting.)150 1454 y Ft(LINENO)192 b Fu(The)30
+b(line)h(n)m(um)m(b)s(er)e(in)h(the)g(script)h(or)f(shell)h(function)f
+(curren)m(tly)g(executing.)42 b(Line)30 b(n)m(um-)630
+1563 y(b)s(ers)c(start)h(with)g(1.)40 b(When)27 b(not)g(in)g(a)g
+(script)g(or)g(function,)h(the)f(v)-5 b(alue)28 b(is)f(not)g(guaran)m
+(teed)630 1673 y(to)k(b)s(e)e(meaningful.)40 b(If)30
+b Ft(LINENO)e Fu(is)i(unset,)g(it)g(loses)h(its)f(sp)s(ecial)g(prop)s
+(erties,)g(ev)m(en)h(if)e(it)i(is)630 1783 y(subsequen)m(tly)f(reset.)
+150 1934 y Ft(LINES)240 b Fu(Used)43 b(b)m(y)g(the)g
+Ft(select)e Fu(command)i(to)g(determine)g(the)g(column)g(length)g(for)g
+(prin)m(ting)630 2044 y(selection)c(lists.)63 b(Automatically)41
+b(set)d(if)f(the)h Ft(checkwinsize)d Fu(option)j(is)f(enabled)h(\(see)
+630 2153 y(Section)44 b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d
+(77\),)k(or)43 b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630
+2263 y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 2415
+y Ft(MACHTYPE)96 b Fu(A)26 b(string)g(that)h(fully)f(describ)s(es)f
+(the)h(system)g(t)m(yp)s(e)h(on)f(whic)m(h)f(Bash)i(is)f(executing,)i
+(in)e(the)630 2524 y(standard)k Fm(gnu)g Fr(cpu-compan)m(y-system)h
+Fu(format.)150 2676 y Ft(MAILCHECK)630 2786 y Fu(Ho)m(w)d(often)g(\(in)
+g(seconds\))g(that)g(the)f(shell)h(should)f(c)m(hec)m(k)i(for)e(mail)h
+(in)f(the)h(\014les)g(sp)s(eci\014ed)630 2895 y(in)i(the)h
+Ft(MAILPATH)e Fu(or)i Ft(MAIL)e Fu(v)-5 b(ariables.)43
+b(The)30 b(default)h(is)f(60)i(seconds.)42 b(When)30
+b(it)h(is)g(time)630 3005 y(to)37 b(c)m(hec)m(k)h(for)e(mail,)j(the)e
+(shell)f(do)s(es)g(so)h(b)s(efore)f(displa)m(ying)h(the)f(primary)g
+(prompt.)57 b(If)630 3114 y(this)37 b(v)-5 b(ariable)38
+b(is)f(unset,)h(or)f(set)h(to)g(a)f(v)-5 b(alue)38 b(that)f(is)g(not)h
+(a)f(n)m(um)m(b)s(er)f(greater)i(than)f(or)630 3224 y(equal)31
+b(to)g(zero,)g(the)g(shell)g(disables)f(mail)h(c)m(hec)m(king.)150
+3376 y Ft(MAPFILE)144 b Fu(An)35 b(arra)m(y)h(v)-5 b(ariable)36
+b(created)g(to)h(hold)e(the)g(text)i(read)e(b)m(y)g(the)h
+Ft(mapfile)d Fu(builtin)i(when)630 3485 y(no)30 b(v)-5
+b(ariable)31 b(name)g(is)f(supplied.)150 3637 y Ft(OLDPWD)192
+b Fu(The)30 b(previous)g(w)m(orking)g(directory)h(as)g(set)g(b)m(y)f
+(the)h Ft(cd)e Fu(builtin.)150 3789 y Ft(OPTERR)192 b
+Fu(If)35 b(set)i(to)f(the)h(v)-5 b(alue)36 b(1,)i(Bash)e(displa)m(ys)g
+(error)f(messages)i(generated)g(b)m(y)f(the)g Ft(getopts)630
+3898 y Fu(builtin)30 b(command.)40 b Ft(OPTERR)29 b Fu(is)i
+(initialized)h(to)f(1)g(eac)m(h)g(time)g(the)g(shell)f(is)h(in)m(v)m
+(ok)m(ed.)150 4050 y Ft(OSTYPE)192 b Fu(A)30 b(string)h(describing)f
+(the)g(op)s(erating)h(system)g(Bash)f(is)h(running)d(on.)150
+4202 y Ft(PIPESTATUS)630 4312 y Fu(An)33 b(arra)m(y)g(v)-5
+b(ariable)34 b(\(see)g(Section)g(6.7)g([Arra)m(ys],)h(page)f(109\))h
+(con)m(taining)f(a)g(list)g(of)f(exit)630 4421 y(status)47
+b(v)-5 b(alues)46 b(from)g(the)g(commands)g(in)g(the)g(most-recen)m
+(tly-executed)k(foreground)630 4531 y(pip)s(eline,)36
+b(whic)m(h)f(ma)m(y)g(consist)h(of)f(only)h(a)f(simple)g(command)g
+(\(see)h(Section)g(3.2)g([Shell)630 4640 y(Commands],)49
+b(page)d(9\).)88 b(Bash)46 b(sets)g Ft(PIPESTATUS)c Fu(after)47
+b(executing)g(m)m(ulti-elemen)m(t)630 4750 y(pip)s(elines,)g(timed)c
+(and)h(negated)g(pip)s(elines,)j(simple)c(commands,)k(subshells)c
+(created)630 4859 y(with)f(the)h(`)p Ft(\()p Fu(')f(op)s(erator,)k(the)
+c Ft([[)g Fu(and)g Ft(\(\()g Fu(comp)s(ound)f(commands,)k(and)c(after)i
+(error)630 4969 y(conditions)31 b(that)g(result)f(in)g(the)h(shell)f
+(ab)s(orting)h(command)f(execution.)150 5121 y Ft(POSIXLY_CORRECT)630
+5230 y Fu(If)i(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m
+(vironmen)m(t)g(when)e(Bash)i(starts,)g(the)g(shell)g(en)m(ters)g
+Fm(posix)630 5340 y Fu(mo)s(de)46 b(\(see)h(Section)g(6.11)g([Bash)g
+(POSIX)e(Mo)s(de],)50 b(page)d(115\))h(b)s(efore)e(reading)g(the)p
+eop end
+%%Page: 96 102
+TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(96)630 299 y(startup)38
+b(\014les,)j(as)e(if)g(the)g Ft(--posix)d Fu(in)m(v)m(o)s(cation)41
+b(option)e(had)f(b)s(een)g(supplied.)64 b(If)39 b(it)g(is)630
+408 y(set)31 b(while)f(the)h(shell)f(is)h(running,)e(Bash)h(enables)h
+Fm(posix)f Fu(mo)s(de,)g(as)g(if)h(the)f(command)870
+550 y Ft(set)47 b(-o)g(posix)630 692 y Fu(had)33 b(b)s(een)g(executed.)
+51 b(When)33 b(the)h(shell)f(en)m(ters)h Fm(posix)f Fu(mo)s(de,)h(it)g
+(sets)g(this)g(v)-5 b(ariable)34 b(if)630 801 y(it)d(w)m(as)g(not)f
+(already)h(set.)150 975 y Ft(PPID)288 b Fu(The)30 b(pro)s(cess)g
+Fm(id)g Fu(of)h(the)f(shell's)h(paren)m(t)g(pro)s(cess.)40
+b(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150
+1148 y Ft(PROMPT_COMMAND)630 1258 y Fu(If)23 b(this)h(v)-5
+b(ariable)24 b(is)g(set,)i(and)d(is)h(an)f(arra)m(y)-8
+b(,)27 b(the)d(v)-5 b(alue)24 b(of)g(eac)m(h)g(set)h(elemen)m(t)g(is)f
+(in)m(terpreted)630 1367 y(as)29 b(a)g(command)f(to)i(execute)g(b)s
+(efore)e(prin)m(ting)h(the)g(primary)f(prompt)f(\()p
+Ft($PS1)p Fu(\).)40 b(If)28 b(this)h(is)630 1477 y(set)c(but)f(not)g
+(an)h(arra)m(y)g(v)-5 b(ariable,)26 b(its)f(v)-5 b(alue)25
+b(is)f(used)g(as)h(a)f(command)g(to)i(execute)f(instead.)150
+1650 y Ft(PROMPT_DIRTRIM)630 1760 y Fu(If)i(set)g(to)h(a)g(n)m(um)m(b)s
+(er)e(greater)i(than)f(zero,)i(the)e(v)-5 b(alue)28 b(is)f(used)g(as)g
+(the)h(n)m(um)m(b)s(er)e(of)h(trailing)630 1870 y(directory)c(comp)s
+(onen)m(ts)h(to)f(retain)h(when)e(expanding)g(the)h Ft(\\w)g
+Fu(and)f Ft(\\W)g Fu(prompt)h(string)f(es-)630 1979 y(cap)s(es)i(\(see)
+h(Section)g(6.9)g([Con)m(trolling)g(the)f(Prompt],)i(page)e(112\).)41
+b(Characters)24 b(remo)m(v)m(ed)630 2089 y(are)31 b(replaced)g(with)f
+(an)g(ellipsis.)150 2262 y Ft(PS0)336 b Fu(The)32 b(v)-5
+b(alue)33 b(of)g(this)g(parameter)g(is)g(expanded)e(lik)m(e)j
+Ft(PS1)e Fu(and)g(displa)m(y)m(ed)i(b)m(y)e(in)m(teractiv)m(e)630
+2372 y(shells)e(after)h(reading)g(a)g(command)f(and)f(b)s(efore)h(the)h
+(command)f(is)h(executed.)150 2545 y Ft(PS3)336 b Fu(The)34
+b(v)-5 b(alue)35 b(of)f(this)g(v)-5 b(ariable)35 b(is)g(used)e(as)i
+(the)f(prompt)g(for)g(the)g Ft(select)f Fu(command.)52
+b(If)630 2655 y(this)30 b(v)-5 b(ariable)31 b(is)g(not)f(set,)i(the)e
+Ft(select)f Fu(command)h(prompts)f(with)h(`)p Ft(#?)g
+Fu(')150 2829 y Ft(PS4)336 b Fu(The)38 b(v)-5 b(alue)39
+b(of)g(this)g(parameter)g(is)g(expanded)f(lik)m(e)i Ft(PS1)e
+Fu(and)g(the)h(expanded)f(v)-5 b(alue)39 b(is)630 2938
+y(the)c(prompt)f(prin)m(ted)g(b)s(efore)g(the)h(command)f(line)h(is)g
+(ec)m(ho)s(ed)g(when)f(the)h Ft(-x)f Fu(option)h(is)630
+3048 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e
+(72\).)67 b(The)38 b(\014rst)g(c)m(haracter)j(of)e(the)630
+3157 y(expanded)33 b(v)-5 b(alue)33 b(is)h(replicated)g(m)m(ultiple)g
+(times,)h(as)f(necessary)-8 b(,)35 b(to)f(indicate)g(m)m(ultiple)630
+3267 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p
+Ft(+)h Fu('.)150 3440 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m
+(orking)h(directory)g(as)f(set)h(b)m(y)f(the)h Ft(cd)f
+Fu(builtin.)150 3614 y Ft(RANDOM)192 b Fu(Eac)m(h)26
+b(time)g(this)f(parameter)h(is)g(referenced,)g(it)g(expands)f(to)h(a)g
+(random)e(in)m(teger)j(b)s(et)m(w)m(een)630 3724 y(0)39
+b(and)e(32767.)66 b(Assigning)39 b(a)f(v)-5 b(alue)39
+b(to)f Ft(RANDOM)f Fu(initializes)j(\(seeds\))f(the)f(sequence)h(of)630
+3833 y(random)c(n)m(um)m(b)s(ers.)56 b(Seeding)36 b(the)g(random)f(n)m
+(um)m(b)s(er)g(generator)i(with)f(the)g(same)g(con-)630
+3943 y(stan)m(t)f(v)-5 b(alue)35 b(pro)s(duces)e(the)i(same)g(sequence)
+f(of)h(v)-5 b(alues.)53 b(If)34 b Ft(RANDOM)f Fu(is)h(unset,)h(it)g
+(loses)630 4052 y(its)c(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f
+(it)h(is)f(subsequen)m(tly)g(reset.)150 4226 y Ft(READLINE_ARGUMENT)630
+4335 y Fu(An)m(y)37 b(n)m(umeric)f(argumen)m(t)h(giv)m(en)g(to)g(a)g
+(Readline)g(command)f(that)h(w)m(as)g(de\014ned)e(using)630
+4445 y(`)p Ft(bind)29 b(-x)p Fu(')h(\(see)i(Section)f(4.2)g([Bash)g
+(Builtins],)g(page)h(60,)f(when)e(it)i(w)m(as)g(in)m(v)m(ok)m(ed.)150
+4619 y Ft(READLINE_LINE)630 4728 y Fu(The)c(con)m(ten)m(ts)i(of)f(the)g
+(Readline)g(line)g(bu\013er,)f(for)h(use)f(with)g(`)p
+Ft(bind)j(-x)p Fu(')d(\(see)h(Section)h(4.2)630 4838
+y([Bash)i(Builtins],)g(page)g(60\).)150 5011 y Ft(READLINE_MARK)630
+5121 y Fu(The)26 b(p)s(osition)h(of)g(the)g Fr(mark)32
+b Fu(\(sa)m(v)m(ed)c(insertion)f(p)s(oin)m(t\))g(in)g(the)g(Readline)g
+(line)g(bu\013er,)g(for)630 5230 y(use)36 b(with)f(`)p
+Ft(bind)30 b(-x)p Fu(')35 b(\(see)i(Section)g(4.2)g([Bash)f(Builtins],)
+i(page)f(60\).)58 b(The)35 b(c)m(haracters)630 5340 y(b)s(et)m(w)m(een)
+c(the)g(insertion)f(p)s(oin)m(t)g(and)g(the)h(mark)f(are)h(often)f
+(called)i(the)f Fr(region)p Fu(.)p eop end
+%%Page: 97 103
+TeXDict begin 97 102 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(97)150 299 y Ft(READLINE_POINT)630
+408 y Fu(The)23 b(p)s(osition)g(of)g(the)h(insertion)f(p)s(oin)m(t)g
+(in)g(the)g(Readline)h(line)f(bu\013er,)h(for)f(use)g(with)g(`)p
+Ft(bind)630 518 y(-x)p Fu(')30 b(\(see)h(Section)h(4.2)f([Bash)g
+(Builtins],)g(page)g(60\).)150 670 y Ft(REPLY)240 b Fu(The)29
+b(default)h(v)-5 b(ariable)30 b(for)f(the)h Ft(read)e
+Fu(builtin;)i(set)g(to)g(the)f(line)h(read)f(when)g Ft(read)f
+Fu(is)i(not)630 779 y(supplied)f(a)i(v)-5 b(ariable)31
+b(name)f(argumen)m(t.)150 931 y Ft(SECONDS)144 b Fu(This)40
+b(v)-5 b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s(er)e(of)i
+(seconds)g(since)g(the)f(shell)h(w)m(as)g(started.)630
+1041 y(Assignmen)m(t)i(to)g(this)g(v)-5 b(ariable)43
+b(resets)g(the)g(coun)m(t)g(to)g(the)g(v)-5 b(alue)43
+b(assigned,)j(and)c(the)630 1150 y(expanded)35 b(v)-5
+b(alue)36 b(b)s(ecomes)h(the)f(v)-5 b(alue)36 b(assigned)g(plus)f(the)h
+(n)m(um)m(b)s(er)f(of)h(seconds)g(since)630 1260 y(the)24
+b(assignmen)m(t.)39 b(The)23 b(n)m(um)m(b)s(er)g(of)h(seconds)f(at)i
+(shell)f(in)m(v)m(o)s(cation)i(and)d(the)h(curren)m(t)f(time)630
+1369 y(are)h(alw)m(a)m(ys)h(determined)e(b)m(y)g(querying)g(the)g
+(system)h(clo)s(c)m(k)g(at)g(one-second)g(resolution.)39
+b(If)630 1479 y Ft(SECONDS)28 b Fu(is)h(unset,)h(it)g(loses)h(its)f(sp)
+s(ecial)g(prop)s(erties,)g(ev)m(en)g(if)g(it)g(is)g(subsequen)m(tly)f
+(reset.)150 1631 y Ft(SHELL)240 b Fu(This)24 b(en)m(vironmen)m(t)i(v)-5
+b(ariable)26 b(expands)e(to)i(the)g(full)f(pathname)g(to)h(the)f
+(shell.)39 b(If)25 b(it)g(is)h(not)630 1740 y(set)36
+b(when)f(the)h(shell)g(starts,)i(Bash)e(assigns)h(to)f(it)h(the)f(full)
+f(pathname)h(of)g(the)g(curren)m(t)630 1850 y(user's)30
+b(login)h(shell.)150 2002 y Ft(SHELLOPTS)630 2111 y Fu(A)g
+(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)41
+b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
+b(alid)630 2221 y(argumen)m(t)28 b(for)f(the)h Ft(-o)e
+Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)h(command)g(\(see)i(Section)
+f(4.3.1)h([The)630 2330 y(Set)g(Builtin],)h(page)f(72\).)42
+b(The)28 b(options)h(app)s(earing)f(in)g Ft(SHELLOPTS)e
+Fu(are)j(those)h(rep)s(orted)630 2440 y(as)g(`)p Ft(on)p
+Fu(')f(b)m(y)h(`)p Ft(set)g(-o)p Fu('.)40 b(If)29 b(this)h(v)-5
+b(ariable)30 b(is)g(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)h
+(starts)g(up,)630 2550 y(the)k(shell)g(enables)g(eac)m(h)i(option)e(in)
+f(the)i(list)f(b)s(efore)g(reading)g(an)m(y)g(startup)f(\014les.)52
+b(This)630 2659 y(v)-5 b(ariable)31 b(is)g(readonly)-8
+b(.)150 2811 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)
+m(h)h(time)f(a)h(new)e(instance)h(of)g(Bash)g(is)g(started.)38
+b(This)20 b(is)h(in)m(tended)630 2921 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
+(of)f(ho)m(w)h(deeply)f(y)m(our)g(Bash)h(shells)f(are)h(nested.)150
+3072 y Ft(SRANDOM)144 b Fu(This)36 b(v)-5 b(ariable)37
+b(expands)f(to)h(a)g(32-bit)h(pseudo-random)d(n)m(um)m(b)s(er)g(eac)m
+(h)j(time)f(it)g(is)g(ref-)630 3182 y(erenced.)47 b(The)32
+b(random)g(n)m(um)m(b)s(er)f(generator)j(is)e(not)h(linear)g(on)f
+(systems)h(that)g(supp)s(ort)630 3292 y Ft(/dev/urandom)26
+b Fu(or)k Ft(arc4random)p Fu(,)d(so)j(eac)m(h)g(returned)f(n)m(um)m(b)s
+(er)f(has)h(no)g(relationship)h(to)630 3401 y(the)39
+b(n)m(um)m(b)s(ers)e(preceding)i(it.)66 b(The)38 b(random)g(n)m(um)m(b)
+s(er)f(generator)j(cannot)g(b)s(e)e(seeded,)630 3511
+y(so)c(assignmen)m(ts)g(to)g(this)f(v)-5 b(ariable)34
+b(ha)m(v)m(e)h(no)e(e\013ect.)51 b(If)33 b Ft(SRANDOM)e
+Fu(is)j(unset,)g(it)f(loses)i(its)630 3620 y(sp)s(ecial)c(prop)s
+(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
+3772 y Ft(TIMEFORMAT)630 3882 y Fu(The)g(v)-5 b(alue)32
+b(of)f(this)g(parameter)g(is)g(used)f(as)h(a)g(format)h(string)f(sp)s
+(ecifying)f(ho)m(w)h(the)g(tim-)630 3991 y(ing)37 b(information)f(for)h
+(pip)s(elines)f(pre\014xed)f(with)h(the)h Ft(time)e Fu(reserv)m(ed)i(w)
+m(ord)f(should)g(b)s(e)630 4101 y(displa)m(y)m(ed.)k(The)27
+b(`)p Ft(\045)p Fu(')h(c)m(haracter)h(in)m(tro)s(duces)e(an)h(escap)s
+(e)g(sequence)g(that)g(is)f(expanded)g(to)630 4210 y(a)37
+b(time)g(v)-5 b(alue)36 b(or)h(other)f(information.)59
+b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i(meanings)630
+4320 y(are)31 b(as)f(follo)m(ws;)i(the)f(brac)m(k)m(ets)h(denote)e
+(optional)i(p)s(ortions.)630 4472 y Ft(\045\045)384 b
+Fu(A)30 b(literal)i(`)p Ft(\045)p Fu('.)630 4623 y Ft(\045[)p
+Fj(p)p Ft(][l]R)96 b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630
+4775 y Ft(\045[)p Fj(p)p Ft(][l]U)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
+(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
+4927 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
+(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(system)g(mo)s(de.)630
+5079 y Ft(\045P)384 b Fu(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
+(as)h(\(\045U)f Ft(+)g Fu(\045S\))g(/)h(\045R.)630 5230
+y(The)23 b(optional)j Fr(p)g Fu(is)e(a)g(digit)h(sp)s(ecifying)e(the)h
+(precision,)i(the)e(n)m(um)m(b)s(er)f(of)h(fractional)h(digits)630
+5340 y(after)36 b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35
+b(v)-5 b(alue)36 b(of)f(0)h(causes)g(no)f(decimal)h(p)s(oin)m(t)f(or)h
+(fraction)g(to)g(b)s(e)p eop end
+%%Page: 98 104
+TeXDict begin 98 103 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(98)630 299 y(output.)77
+b Ft(time)41 b Fu(prin)m(ts)h(at)h(most)g(six)g(digits)g(after)g(the)g
+(decimal)g(p)s(oin)m(t;)49 b(v)-5 b(alues)43 b(of)g Fr(p)630
+408 y Fu(greater)34 b(than)f(6)h(are)f(c)m(hanged)h(to)g(6.)49
+b(If)32 b Fr(p)k Fu(is)d(not)g(sp)s(eci\014ed,)h Ft(time)d
+Fu(prin)m(ts)i(three)g(digits)630 518 y(after)e(the)f(decimal)i(p)s
+(oin)m(t.)630 653 y(The)54 b(optional)h Ft(l)f Fu(sp)s(eci\014es)g(a)h
+(longer)f(format,)61 b(including)54 b(min)m(utes,)61
+b(of)54 b(the)g(form)630 762 y Fr(MM)10 b Fu(m)p Fr(SS)p
+Fu(.)p Fr(FF)d Fu(s.)103 b(The)50 b(v)-5 b(alue)52 b(of)f
+Fr(p)j Fu(determines)d(whether)f(or)h(not)h(the)f(fraction)h(is)630
+872 y(included.)630 1006 y(If)30 b(this)g(v)-5 b(ariable)31
+b(is)g(not)f(set,)i(Bash)e(acts)h(as)g(if)f(it)h(had)f(the)h(v)-5
+b(alue)870 1141 y Ft($'\\nreal\\t\0453lR\\nuser\\t\0453)o(lU\\n)o
+(sys\\)o(t\0453)o(lS')630 1275 y Fu(If)34 b(the)h(v)-5
+b(alue)35 b(is)g(n)m(ull,)h(Bash)f(do)s(es)f(not)h(displa)m(y)g(an)m(y)
+g(timing)g(information.)54 b(A)35 b(trailing)630 1385
+y(newline)30 b(is)h(added)e(when)h(the)g(format)h(string)f(is)h(displa)
+m(y)m(ed.)150 1544 y Ft(TMOUT)240 b Fu(If)27 b(set)i(to)f(a)g(v)-5
+b(alue)28 b(greater)h(than)f(zero,)h(the)f Ft(read)f
+Fu(builtin)g(uses)g(the)h(v)-5 b(alue)29 b(as)f(its)g(default)630
+1654 y(timeout)33 b(\(see)f(Section)h(4.2)f([Bash)g(Builtins],)h(page)f
+(60\).)46 b(The)31 b Ft(select)f Fu(command)h(\(see)630
+1763 y(Section)g(3.2.5.2)i([Conditional)f(Constructs],)e(page)h(12\))h
+(terminates)f(if)g(input)f(do)s(es)g(not)630 1873 y(arriv)m(e)h(after)g
+Ft(TMOUT)e Fu(seconds)h(when)g(input)f(is)h(coming)i(from)d(a)i
+(terminal.)630 2007 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
+(v)-5 b(alue)41 b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f
+(of)h(seconds)f(to)630 2117 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
+e(after)i(issuing)f(the)h(primary)e(prompt.)39 b(Bash)26
+b(terminates)h(after)630 2227 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
+(b)s(er)e(of)h(seconds)h(if)f(a)h(complete)h(line)e(of)h(input)e(do)s
+(es)h(not)h(arriv)m(e.)150 2386 y Ft(TMPDIR)192 b Fu(If)39
+b(set,)j(Bash)e(uses)f(its)h(v)-5 b(alue)40 b(as)f(the)h(name)f(of)h(a)
+g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 2496
+y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150
+2655 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
+(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
+b(is)f(readonly)-8 b(.)p eop end
+%%Page: 99 105
+TeXDict begin 99 104 bop 3659 -116 a Fu(99)150 299 y
+Fp(6)80 b(Bash)54 b(F)-13 b(eatures)150 502 y Fu(This)30
+b(c)m(hapter)h(describ)s(es)e(features)i(unique)e(to)i(Bash.)150
+731 y Fs(6.1)68 b(In)l(v)l(oking)46 b(Bash)390 890 y
+Ft(bash)h([long-opt])e([-ir])h([-abefhkmnptuvxdBCDHP])c([-o)47
+b Fj(option)p Ft(])581 1000 y([-O)g Fj(shopt_option)p
+Ft(])d([)p Fj(argument)h Ft(...)o(])390 1110 y(bash)i([long-opt])e
+([-abefhkmnptuvxdBCDHP])c([-o)47 b Fj(option)p Ft(])581
+1219 y([-O)g Fj(shopt_option)p Ft(])d(-c)j Fj(string)f
+Ft([)p Fj(argument)g Ft(...)o(])390 1329 y(bash)h([long-opt])e(-s)i
+([-abefhkmnptuvxdBCDHP])42 b([-o)k Fj(option)p Ft(])581
+1438 y([-O)h Fj(shopt_option)p Ft(])d([)p Fj(argument)h
+Ft(...)o(])275 1567 y Fu(All)31 b(of)g(the)f(single-c)m(haracter)k
+(options)d(used)f(with)g(the)h Ft(set)f Fu(builtin)g(\(see)h(Section)h
+(4.3.1)g([The)f(Set)150 1676 y(Builtin],)45 b(page)c(72\))i(can)e(b)s
+(e)f(used)h(as)g(options)g(when)f(the)i(shell)f(is)g(in)m(v)m(ok)m(ed.)
+74 b(In)41 b(addition,)j(there)150 1786 y(are)38 b(sev)m(eral)h(m)m
+(ulti-c)m(haracter)h(options)d(that)h(y)m(ou)g(can)g(use.)61
+b(These)38 b(options)f(m)m(ust)h(app)s(ear)e(on)i(the)150
+1896 y(command)30 b(line)h(b)s(efore)f(the)g(single-c)m(haracter)j
+(options)e(to)g(b)s(e)f(recognized.)150 2043 y Ft(--debugger)630
+2152 y Fu(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 2262 y(on)35 b(extended)g(debugging)f(mo)s(de)h(\(see)g
+(Section)h(4.3.2)h([The)d(Shopt)g(Builtin],)j(page)f(77,)630
+2371 y(for)30 b(a)h(description)f(of)h(the)f Ft(extdebug)f
+Fu(option)h(to)h(the)g Ft(shopt)e Fu(builtin\).)150 2519
+y Ft(--dump-po-strings)630 2628 y Fu(Prin)m(t)f(a)h(list)g(of)g(all)g
+(double-quoted)g(strings)f(preceded)g(b)m(y)g(`)p Ft($)p
+Fu(')h(on)f(the)h(standard)e(output)630 2738 y(in)j(the)h
+Fm(gnu)f Ft(gettext)e Fu(PO)i(\(p)s(ortable)h(ob)5 b(ject\))31
+b(\014le)g(format.)41 b(Equiv)-5 b(alen)m(t)31 b(to)g
+Ft(-D)f Fu(except)630 2847 y(for)g(the)h(output)f(format.)150
+2995 y Ft(--dump-strings)630 3104 y Fu(Equiv)-5 b(alen)m(t)31
+b(to)g Ft(-D)p Fu(.)150 3251 y Ft(--help)192 b Fu(Displa)m(y)32
+b(a)e(usage)h(message)h(on)e(standard)g(output)g(and)f(exit)j
+(successfully)-8 b(.)150 3399 y Ft(--init-file)27 b Fj(filename)150
+3508 y Ft(--rcfile)h Fj(filename)630 3618 y Fu(Execute)23
+b(commands)e(from)g Fr(\014lename)28 b Fu(\(instead)22
+b(of)g Ft(~/.bashrc)p Fu(\))e(in)h(an)h(in)m(teractiv)m(e)i(shell.)150
+3765 y Ft(--login)144 b Fu(Equiv)-5 b(alen)m(t)31 b(to)g
+Ft(-l)p Fu(.)150 3912 y Ft(--noediting)630 4022 y Fu(Do)h(not)e(use)h
+(the)g Fm(gnu)f Fu(Readline)i(library)e(\(see)h(Chapter)g(8)g([Command)
+f(Line)g(Editing],)630 4131 y(page)h(128\))h(to)f(read)g(command)f
+(lines)g(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)150
+4278 y Ft(--noprofile)630 4388 y Fu(Don't)22 b(load)g(the)g
+(system-wide)f(startup)g(\014le)h Ft(/etc/profile)c Fu(or)j(an)m(y)h
+(of)f(the)h(p)s(ersonal)f(ini-)630 4498 y(tialization)34
+b(\014les)e Ft(~/.bash_profile)p Fu(,)c Ft(~/.bash_login)p
+Fu(,)g(or)k Ft(~/.profile)c Fu(when)j(Bash)630 4607 y(is)f(in)m(v)m(ok)
+m(ed)i(as)f(a)g(login)g(shell.)150 4754 y Ft(--norc)192
+b Fu(Don't)35 b(read)f(the)g Ft(~/.bashrc)e Fu(initialization)k(\014le)
+f(in)e(an)h(in)m(teractiv)m(e)j(shell.)52 b(This)33 b(is)h(on)630
+4864 y(b)m(y)c(default)h(if)f(the)h(shell)f(is)h(in)m(v)m(ok)m(ed)h(as)
+e Ft(sh)p Fu(.)150 5011 y Ft(--posix)144 b Fu(Change)24
+b(the)h(b)s(eha)m(vior)f(of)g(Bash)h(where)e(the)i(default)f(op)s
+(eration)h(di\013ers)f(from)f(the)i Fm(posix)630 5121
+y Fu(standard)35 b(to)h(matc)m(h)g(the)g(standard.)55
+b(This)35 b(is)h(in)m(tended)f(to)h(mak)m(e)h(Bash)f(b)s(eha)m(v)m(e)g
+(as)g(a)630 5230 y(strict)22 b(sup)s(erset)e(of)h(that)g(standard.)37
+b(See)21 b(Section)h(6.11)g([Bash)f(POSIX)f(Mo)s(de],)k(page)d(115,)630
+5340 y(for)30 b(a)h(description)f(of)h(the)f(Bash)h Fm(posix)f
+Fu(mo)s(de.)p eop end
+%%Page: 100 106
+TeXDict begin 100 105 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(100)150 299 y Ft(--restricted)630
+408 y Fu(Equiv)-5 b(alen)m(t)35 b(to)g Ft(-r)p Fu(.)51
+b(Mak)m(e)35 b(the)g(shell)f(a)g(restricted)h(shell)f(\(see)h(Section)g
+(6.10)h([The)d(Re-)630 518 y(stricted)e(Shell],)g(page)g(114\).)150
+667 y Ft(--verbose)630 777 y Fu(Equiv)-5 b(alen)m(t)31
+b(to)g Ft(-v)p Fu(.)41 b(Prin)m(t)30 b(shell)g(input)g(lines)g(as)h
+(they're)g(read.)150 927 y Ft(--version)630 1036 y Fu(Sho)m(w)d(v)m
+(ersion)g(information)g(for)g(this)g(instance)h(of)f(Bash)g(on)g(the)g
+(standard)f(output)h(and)630 1146 y(exit)j(successfully)-8
+b(.)275 1295 y(There)28 b(are)i(sev)m(eral)g(single-c)m(haracter)i
+(options)d(that)h(ma)m(y)g(b)s(e)e(supplied)g(at)i(in)m(v)m(o)s(cation)
+h(whic)m(h)e(are)150 1405 y(not)i(a)m(v)-5 b(ailable)32
+b(with)e(the)h Ft(set)e Fu(builtin.)150 1554 y Ft(-c)384
+b Fu(Read)66 b(and)f(execute)i(commands)e(from)g(the)h(\014rst)e
+(non-option)i(argumen)m(t)g Fr(com-)630 1664 y(mand)p
+859 1664 28 4 v 39 w(string)p Fu(,)34 b(then)e(exit.)49
+b(If)32 b(there)h(are)g(argumen)m(ts)g(after)g(the)g
+Fr(command)p 3303 1664 V 40 w(string)p Fu(,)h(the)630
+1773 y(\014rst)e(argumen)m(t)h(is)g(assigned)g(to)h Ft($0)e
+Fu(and)h(an)m(y)g(remaining)g(argumen)m(ts)g(are)g(assigned)g(to)630
+1883 y(the)38 b(p)s(ositional)h(parameters.)65 b(The)37
+b(assignmen)m(t)i(to)g Ft($0)f Fu(sets)g(the)h(name)f(of)g(the)g
+(shell,)630 1993 y(whic)m(h)30 b(is)h(used)e(in)h(w)m(arning)g(and)g
+(error)g(messages.)150 2142 y Ft(-i)384 b Fu(F)-8 b(orce)22
+b(the)g(shell)f(to)g(run)f(in)m(teractiv)m(ely)-8 b(.)41
+b(In)m(teractiv)m(e)23 b(shells)e(are)h(describ)s(ed)d(in)i(Section)h
+(6.3)630 2252 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(103.)150
+2401 y Ft(-l)384 b Fu(Mak)m(e)46 b(this)e(shell)h(act)g(as)g(if)f(it)h
+(had)f(b)s(een)g(directly)h(in)m(v)m(ok)m(ed)h(b)m(y)e(login.)84
+b(When)44 b(the)630 2511 y(shell)e(is)g(in)m(teractiv)m(e,)48
+b(this)42 b(is)h(equiv)-5 b(alen)m(t)43 b(to)g(starting)g(a)f(login)h
+(shell)f(with)g(`)p Ft(exec)30 b(-l)630 2620 y(bash)p
+Fu('.)39 b(When)27 b(the)g(shell)h(is)f(not)h(in)m(teractiv)m(e,)j(it)d
+(will)f(read)h(and)e(execute)j(the)f(login)g(shell)630
+2730 y(startup)37 b(\014les.)63 b(`)p Ft(exec)29 b(bash)h(-l)p
+Fu(')37 b(or)h(`)p Ft(exec)29 b(bash)g(--login)p Fu(')36
+b(will)j(replace)f(the)g(curren)m(t)630 2839 y(shell)e(with)g(a)g(Bash)
+g(login)h(shell.)58 b(See)36 b(Section)h(6.2)g([Bash)g(Startup)e
+(Files],)k(page)d(101,)630 2949 y(for)30 b(a)h(description)f(of)h(the)f
+(sp)s(ecial)h(b)s(eha)m(vior)g(of)f(a)h(login)g(shell.)150
+3098 y Ft(-r)384 b Fu(Mak)m(e)54 b(the)e(shell)g(a)h(restricted)g
+(shell)f(\(see)h(Section)g(6.10)h([The)d(Restricted)j(Shell],)630
+3208 y(page)31 b(114\).)150 3357 y Ft(-s)384 b Fu(If)41
+b(this)h(option)g(is)g(presen)m(t,)i(or)e(if)g(no)f(argumen)m(ts)h
+(remain)g(after)g(option)g(pro)s(cessing,)630 3467 y(then)36
+b(Bash)h(reads)g(commands)f(from)g(the)h(standard)f(input.)59
+b(This)36 b(option)h(allo)m(ws)h(the)630 3577 y(p)s(ositional)45
+b(parameters)g(to)g(b)s(e)f(set)h(when)e(in)m(v)m(oking)j(an)f(in)m
+(teractiv)m(e)i(shell)d(or)h(when)630 3686 y(reading)30
+b(input)g(through)g(a)g(pip)s(e.)150 3836 y Ft(-D)384
+b Fu(Prin)m(t)26 b(a)h(list)g(of)g(all)g(double-quoted)g(strings)f
+(preceded)g(b)m(y)h(`)p Ft($)p Fu(')f(on)h(the)f(standard)g(output.)630
+3945 y(These)h(are)g(the)g(strings)g(that)h(are)f(sub)5
+b(ject)27 b(to)h(language)g(translation)g(when)e(the)h(curren)m(t)630
+4055 y(lo)s(cale)k(is)e(not)g Ft(C)g Fu(or)g Ft(POSIX)e
+Fu(\(see)j(Section)g(3.1.2.5)i([Lo)s(cale)e(T)-8 b(ranslation],)31
+b(page)f(7\).)41 b(This)630 4164 y(implies)31 b(the)f
+Ft(-n)g Fu(option;)h(no)f(commands)g(will)h(b)s(e)f(executed.)150
+4314 y Ft([-+]O)f([)p Fj(shopt_option)p Ft(])630 4423
+y Fr(shopt)p 854 4423 V 40 w(option)44 b Fu(is)g(one)h(of)f(the)g
+(shell)h(options)f(accepted)h(b)m(y)f(the)h Ft(shopt)d
+Fu(builtin)i(\(see)630 4533 y(Section)32 b(4.3.2)h([The)e(Shopt)f
+(Builtin],)i(page)g(77\).)44 b(If)31 b Fr(shopt)p 2724
+4533 V 40 w(option)g Fu(is)g(presen)m(t,)h Ft(-O)f Fu(sets)630
+4643 y(the)38 b(v)-5 b(alue)39 b(of)g(that)f(option;)43
+b Ft(+O)38 b Fu(unsets)g(it.)65 b(If)37 b Fr(shopt)p
+2566 4643 V 40 w(option)i Fu(is)f(not)h(supplied,)g(Bash)630
+4752 y(prin)m(ts)k(the)g(names)h(and)e(v)-5 b(alues)44
+b(of)g(the)f(shell)h(options)g(accepted)g(b)m(y)g Ft(shopt)d
+Fu(on)j(the)630 4862 y(standard)36 b(output.)60 b(If)37
+b(the)g(in)m(v)m(o)s(cation)i(option)e(is)g Ft(+O)p Fu(,)i(the)e
+(output)f(is)h(displa)m(y)m(ed)h(in)f(a)630 4971 y(format)31
+b(that)g(ma)m(y)g(b)s(e)e(reused)h(as)h(input.)150 5121
+y Ft(--)384 b Fu(A)38 b Ft(--)g Fu(signals)g(the)h(end)e(of)i(options)f
+(and)g(disables)g(further)f(option)h(pro)s(cessing.)64
+b(An)m(y)630 5230 y(argumen)m(ts)38 b(after)g(the)f Ft(--)g
+Fu(are)h(treated)g(as)g(a)g(shell)f(script)h(\014lename)f(\(see)i
+(Section)f(3.8)630 5340 y([Shell)30 b(Scripts],)h(page)g(49\))g(and)f
+(argumen)m(ts)h(passed)f(to)h(that)g(script.)p eop end
+%%Page: 101 107
+TeXDict begin 101 106 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(101)150 299 y Ft(-)432
+b Fu(Equiv)-5 b(alen)m(t)31 b(to)g Ft(--)p Fu(.)275 481
+y(A)c Fl(lo)-5 b(gin)35 b Fu(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)
+m(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Ft(-)p
+Fu(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
+591 y Ft(--login)h Fu(option.)275 741 y(An)g Fl(inter)-5
+b(active)37 b Fu(shell)30 b(is)f(one)g(started)h(without)f(non-option)h
+(argumen)m(ts,)g(unless)e Ft(-s)h Fu(is)g(sp)s(eci\014ed,)150
+850 y(without)34 b(sp)s(ecifying)g(the)g Ft(-c)g Fu(option,)i(and)d
+(whose)h(input)f(and)h(output)f(\(using)h(the)h(standard)e(error\))150
+960 y(are)d(b)s(oth)e(connected)i(to)g(terminals)g(\(as)f(determined)g
+(b)m(y)g Ft(isatty\(3\))p Fu(\),)f(or)h(one)h(started)f(with)g(the)h
+Ft(-i)150 1070 y Fu(option.)41 b(See)31 b(Section)g(6.3)g([In)m
+(teractiv)m(e)i(Shells],)e(page)g(103,)h(for)e(more)h(information.)275
+1219 y(If)i(argumen)m(ts)h(remain)g(after)h(option)f(pro)s(cessing,)h
+(and)e(neither)h(the)g Ft(-c)g Fu(nor)f(the)h Ft(-s)g
+Fu(option)g(has)150 1329 y(b)s(een)44 b(supplied,)j(the)d(\014rst)g
+(argumen)m(t)h(is)g(assumed)e(to)j(b)s(e)d(the)i(name)g(of)f(a)h
+(\014le)g(con)m(taining)h(shell)150 1439 y(commands)30
+b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)h(49\).)41
+b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i(in)d(this)h(fashion,)150
+1548 y Ft($0)37 b Fu(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 1658 y(argumen)m(ts.)h(Bash)26 b(reads)f(and)g(executes)
+h(commands)f(from)g(this)g(\014le,)i(then)e(exits.)40
+b(Bash's)25 b(exit)i(status)150 1767 y(is)f(the)h(exit)h(status)e(of)h
+(the)g(last)g(command)f(executed)h(in)g(the)f(script.)40
+b(If)26 b(no)g(commands)g(are)h(executed,)150 1877 y(the)k(exit)g
+(status)g(is)f(0.)150 2141 y Fs(6.2)68 b(Bash)45 b(Startup)g(Files)150
+2300 y Fu(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
+(its)g(startup)f(\014les.)38 b(If)24 b(an)m(y)h(of)f(the)h(\014les)f
+(exist)h(but)e(cannot)150 2410 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
+(an)h(error.)40 b(Tildes)30 b(are)g(expanded)f(in)h(\014lenames)g(as)g
+(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2519 y(Tilde)f(Expansion)g
+(\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(26\).)275
+2669 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
+(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(103.)150
+2884 y Fk(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
+(shell,)g(or)g(with)e Fh(--login)150 3031 y Fu(When)c(Bash)f(is)h(in)m
+(v)m(ok)m(ed)h(as)f(an)g(in)m(teractiv)m(e)j(login)d(shell,)i(or)e(as)g
+(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g(the)150 3141
+y Ft(--login)30 b Fu(option,)k(it)f(\014rst)e(reads)h(and)g(executes)i
+(commands)e(from)f(the)i(\014le)f Ft(/etc/profile)p Fu(,)e(if)i(that)
+150 3250 y(\014le)44 b(exists.)80 b(After)44 b(reading)g(that)g
+(\014le,)j(it)d(lo)s(oks)g(for)f Ft(~/.bash_profile)p
+Fu(,)g Ft(~/.bash_login)p Fu(,)h(and)150 3360 y Ft(~/.profile)p
+Fu(,)25 b(in)i(that)g(order,)h(and)e(reads)h(and)f(executes)j(commands)
+d(from)h(the)g(\014rst)f(one)i(that)f(exists)150 3469
+y(and)j(is)g(readable.)41 b(The)30 b Ft(--noprofile)e
+Fu(option)i(inhibits)g(this)g(b)s(eha)m(vior.)275 3619
+y(When)h(an)g(in)m(teractiv)m(e)k(login)d(shell)g(exits,)h(or)f(a)g
+(non-in)m(teractiv)m(e)i(login)f(shell)e(executes)i(the)f
+Ft(exit)150 3729 y Fu(builtin)g(command,)i(Bash)e(reads)h(and)f
+(executes)i(commands)e(from)g(the)h(\014le)g Ft(~/.bash_logout)p
+Fu(,)d(if)i(it)150 3838 y(exists.)150 4053 y Fk(In)m(v)m(ok)m(ed)40
+b(as)h(an)f(in)m(teractiv)m(e)f(non-login)k(shell)150
+4200 y Fu(When)f(Bash)h(runs)d(as)j(an)f(in)m(teractiv)m(e)k(shell)c
+(that)h(is)f(not)h(a)g(login)g(shell,)j(it)d(reads)f(and)g(executes)150
+4310 y(commands)35 b(from)h Ft(~/.bashrc)p Fu(,)f(if)h(that)g(\014le)g
+(exists.)58 b(The)35 b Ft(--norc)f Fu(option)j(inhibits)e(this)h(b)s
+(eha)m(vior.)150 4419 y(The)30 b Ft(--rcfile)e Fj(file)h
+Fu(option)i(causes)g(Bash)f(to)h(use)g Fr(\014le)k Fu(instead)c(of)f
+Ft(~/.bashrc)p Fu(.)275 4569 y(So,)g(t)m(ypically)-8
+b(,)33 b(y)m(our)d Ft(~/.bash_profile)c Fu(con)m(tains)32
+b(the)f(line)390 4719 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g
+(~/.bashrc;)e(fi)150 4869 y Fu(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h
+(login-sp)s(eci\014c)g(initializations.)150 5083 y Fk(In)m(v)m(ok)m(ed)
+40 b(non-in)m(teractiv)m(ely)150 5230 y Fu(When)33 b(Bash)g(is)g
+(started)h(non-in)m(teractiv)m(ely)-8 b(,)37 b(to)d(run)e(a)h(shell)h
+(script,)g(for)f(example,)i(it)e(lo)s(oks)h(for)f(the)150
+5340 y(v)-5 b(ariable)35 b Ft(BASH_ENV)d Fu(in)i(the)h(en)m(vironmen)m
+(t,)h(expands)e(its)g(v)-5 b(alue)35 b(if)g(it)g(app)s(ears)e(there,)j
+(and)e(uses)g(the)p eop end
+%%Page: 102 108
+TeXDict begin 102 107 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(102)150 299 y(expanded)30
+b(v)-5 b(alue)30 b(as)h(the)g(name)f(of)h(a)f(\014le)h(to)g(read)f(and)
+g(execute.)42 b(Bash)31 b(b)s(eha)m(v)m(es)g(as)g(if)f(the)g(follo)m
+(wing)150 408 y(command)g(w)m(ere)h(executed:)390 551
+y Ft(if)47 b([)h(-n)f("$BASH_ENV")e(];)i(then)f(.)i("$BASH_ENV";)c(fi)
+150 693 y Fu(but)30 b(do)s(es)g(not)g(the)h(v)-5 b(alue)31
+b(of)f(the)h Ft(PATH)e Fu(v)-5 b(ariable)31 b(to)g(searc)m(h)g(for)f
+(the)h(\014lename.)275 835 y(As)42 b(noted)g(ab)s(o)m(v)m(e,)47
+b(if)42 b(a)h(non-in)m(teractiv)m(e)i(shell)d(is)g(in)m(v)m(ok)m(ed)i
+(with)e(the)h Ft(--login)d Fu(option,)46 b(Bash)150 945
+y(attempts)31 b(to)g(read)g(and)e(execute)j(commands)e(from)g(the)h
+(login)g(shell)g(startup)e(\014les.)150 1152 y Fk(In)m(v)m(ok)m(ed)40
+b(with)g(name)h Fh(sh)150 1299 y Fu(If)c(Bash)g(is)g(in)m(v)m(ok)m(ed)i
+(with)e(the)g(name)g Ft(sh)p Fu(,)i(it)f(tries)f(to)h(mimic)g(the)f
+(startup)g(b)s(eha)m(vior)g(of)h(historical)150 1408
+y(v)m(ersions)31 b(of)f Ft(sh)g Fu(as)h(closely)h(as)e(p)s(ossible,)g
+(while)h(conforming)f(to)h(the)g Fm(posix)e Fu(standard)h(as)h(w)m
+(ell.)275 1550 y(When)50 b(in)m(v)m(ok)m(ed)j(as)f(an)f(in)m(teractiv)m
+(e)j(login)e(shell,)57 b(or)51 b(as)g(a)h(non-in)m(teractiv)m(e)h
+(shell)f(with)f(the)150 1660 y Ft(--login)31 b Fu(option,)k(it)e
+(\014rst)g(attempts)h(to)g(read)f(and)g(execute)h(commands)f(from)g
+Ft(/etc/profile)d Fu(and)150 1770 y Ft(~/.profile)p Fu(,)e(in)i(that)h
+(order.)40 b(The)30 b Ft(--noprofile)d Fu(option)k(inhibits)f(this)g(b)
+s(eha)m(vior.)275 1912 y(When)d(in)m(v)m(ok)m(ed)j(as)e(an)g(in)m
+(teractiv)m(e)j(shell)d(with)g(the)g(name)g Ft(sh)p Fu(,)g(Bash)g(lo)s
+(oks)h(for)f(the)g(v)-5 b(ariable)29 b Ft(ENV)p Fu(,)150
+2021 y(expands)g(its)i(v)-5 b(alue)30 b(if)h(it)f(is)g(de\014ned,)g
+(and)f(uses)h(the)g(expanded)g(v)-5 b(alue)30 b(as)h(the)f(name)g(of)g
+(a)h(\014le)f(to)h(read)150 2131 y(and)g(execute.)46
+b(Since)32 b(a)g(shell)g(in)m(v)m(ok)m(ed)h(as)f Ft(sh)f
+Fu(do)s(es)g(not)h(attempt)h(to)g(read)e(and)g(execute)i(commands)150
+2240 y(from)d(an)m(y)h(other)f(startup)g(\014les,)h(the)f
+Ft(--rcfile)e Fu(option)j(has)f(no)h(e\013ect.)275 2383
+y(A)k(non-in)m(teractiv)m(e)k(shell)d(in)m(v)m(ok)m(ed)h(with)e(the)h
+(name)g Ft(sh)f Fu(do)s(es)h(not)g(attempt)g(to)h(read)f(an)m(y)g
+(other)150 2492 y(startup)30 b(\014les.)275 2634 y(When)g(in)m(v)m(ok)m
+(ed)h(as)g Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e
+Fu(mo)s(de)h(after)h(reading)g(the)f(startup)g(\014les.)150
+2841 y Fk(In)m(v)m(ok)m(ed)40 b(in)h Fg(posix)g Fk(mo)s(de)150
+2988 y Fu(When)28 b(Bash)h(is)g(started)g(in)g Fm(posix)f
+Fu(mo)s(de,)g(as)h(with)g(the)g Ft(--posix)d Fu(command)j(line)g
+(option,)h(it)f(follo)m(ws)150 3098 y(the)24 b Fm(posix)f
+Fu(standard)h(for)f(startup)h(\014les.)38 b(In)24 b(this)g(mo)s(de,)h
+(in)m(teractiv)m(e)i(shells)d(expand)f(the)h Ft(ENV)f
+Fu(v)-5 b(ariable)150 3208 y(and)27 b(read)h(and)f(execute)i(commands)f
+(from)f(the)h(\014le)g(whose)g(name)g(is)g(the)g(expanded)f(v)-5
+b(alue.)40 b(No)29 b(other)150 3317 y(startup)h(\014les)g(are)h(read.)
+150 3524 y Fk(In)m(v)m(ok)m(ed)40 b(b)m(y)g(remote)h(shell)h(daemon)150
+3671 y Fu(Bash)g(attempts)h(to)f(determine)g(when)f(it)i(is)f(b)s(eing)
+f(run)g(with)g(its)h(standard)g(input)e(connected)j(to)150
+3781 y(a)i(net)m(w)m(ork)h(connection,)51 b(as)45 b(when)f(executed)i
+(b)m(y)f(the)g(historical)i(and)d(rarely-seen)i(remote)g(shell)150
+3890 y(daemon,)30 b(usually)g Ft(rshd)p Fu(,)f(or)h(the)g(secure)g
+(shell)g(daemon)g Ft(sshd)p Fu(.)39 b(If)30 b(Bash)g(determines)g(it)g
+(is)g(b)s(eing)f(run)150 4000 y(non-in)m(teractiv)m(ely)34
+b(in)e(this)f(fashion,)h(it)g(reads)g(and)f(executes)i(commands)e(from)
+g Ft(~/.bashrc)p Fu(,)f(if)h(that)150 4109 y(\014le)e(exists)g(and)f
+(is)h(readable.)40 b(Bash)29 b(do)s(es)g(not)f(read)h(this)g(\014le)f
+(if)h(in)m(v)m(ok)m(ed)h(as)f Ft(sh)p Fu(.)39 b(The)29
+b Ft(--norc)d Fu(option)150 4219 y(inhibits)33 b(this)g(b)s(eha)m
+(vior,)i(and)e(the)g Ft(--rcfile)f Fu(option)i(mak)m(es)g(Bash)f(use)h
+(a)g(di\013eren)m(t)f(\014le)h(instead)g(of)150 4329
+y Ft(~/.bashrc)p Fu(,)24 b(but)g(neither)h Ft(rshd)f
+Fu(nor)g Ft(sshd)g Fu(generally)i(in)m(v)m(ok)m(e)h(the)e(shell)g(with)
+g(those)g(options)h(or)e(allo)m(w)150 4438 y(them)30
+b(to)h(b)s(e)f(sp)s(eci\014ed.)150 4645 y Fk(In)m(v)m(ok)m(ed)40
+b(with)g(unequal)h(e\013ectiv)m(e)e(and)i(real)g Fg(uid/gid)p
+Fk(s)150 4792 y Fu(If)34 b(Bash)h(is)g(started)g(with)f(the)h
+(e\013ectiv)m(e)i(user)d(\(group\))h(id)f(not)h(equal)g(to)g(the)g
+(real)g(user)f(\(group\))h(id,)150 4902 y(and)26 b(the)i
+Ft(-p)e Fu(option)h(is)g(not)h(supplied,)e(no)h(startup)g(\014les)g
+(are)g(read,)h(shell)f(functions)g(are)g(not)g(inherited)150
+5011 y(from)41 b(the)g(en)m(vironmen)m(t,)j(the)d Ft(SHELLOPTS)p
+Fu(,)h Ft(BASHOPTS)p Fu(,)g Ft(CDPATH)p Fu(,)g(and)e
+Ft(GLOBIGNORE)e Fu(v)-5 b(ariables,)45 b(if)150 5121
+y(they)28 b(app)s(ear)f(in)h(the)g(en)m(vironmen)m(t,)i(are)e(ignored,)
+h(and)e(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)g(to)h(the)f(real)h
+(user)150 5230 y(id.)62 b(If)38 b(the)f Ft(-p)h Fu(option)g(is)f
+(supplied)g(at)h(in)m(v)m(o)s(cation,)k(the)c(startup)f(b)s(eha)m(vior)
+h(is)g(the)g(same,)i(but)d(the)150 5340 y(e\013ectiv)m(e)c(user)d(id)g
+(is)g(not)h(reset.)p eop end
+%%Page: 103 109
+TeXDict begin 103 108 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(103)150 299 y Fs(6.3)68
+b(In)l(teractiv)l(e)47 b(Shells)150 515 y Fk(6.3.1)63
+b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150
+662 y Fu(An)f(in)m(teractiv)m(e)j(shell)e(is)f(one)h(started)g(without)
+f(non-option)g(argumen)m(ts)h(\(unless)f Ft(-s)g Fu(is)g(sp)s
+(eci\014ed\))150 771 y(and)29 b(without)h(sp)s(ecifying)g(the)g
+Ft(-c)f Fu(option,)i(whose)e(input)g(and)g(error)h(output)f(are)h(b)s
+(oth)f(connected)i(to)150 881 y(terminals)g(\(as)g(determined)f(b)m(y)g
+Ft(isatty\(3\))p Fu(\),)e(or)j(one)f(started)h(with)f(the)h
+Ft(-i)f Fu(option.)275 1007 y(An)g(in)m(teractiv)m(e)j(shell)d
+(generally)i(reads)e(from)g(and)g(writes)g(to)h(a)g(user's)f(terminal.)
+275 1133 y(The)i Ft(-s)g Fu(in)m(v)m(o)s(cation)j(option)f(ma)m(y)f(b)s
+(e)g(used)f(to)i(set)f(the)g(p)s(ositional)h(parameters)f(when)f(an)h
+(in)m(ter-)150 1243 y(activ)m(e)g(shell)d(starts.)150
+1426 y Fk(6.3.2)63 b(Is)41 b(this)g(Shell)g(In)m(teractiv)m(e?)150
+1573 y Fu(T)-8 b(o)30 b(determine)g(within)f(a)h(startup)g(script)f
+(whether)g(or)h(not)g(Bash)g(is)g(running)e(in)m(teractiv)m(ely)-8
+b(,)33 b(test)e(the)150 1682 y(v)-5 b(alue)30 b(of)g(the)f(`)p
+Ft(-)p Fu(')h(sp)s(ecial)g(parameter.)41 b(It)29 b(con)m(tains)i
+Ft(i)e Fu(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)44
+b(F)-8 b(or)30 b(example:)390 1809 y Ft(case)47 b("$-")f(in)390
+1918 y(*i*\))h(echo)f(This)h(shell)f(is)h(interactive)e(;;)390
+2028 y(*\))i(echo)g(This)f(shell)h(is)g(not)g(interactive)e(;;)390
+2137 y(esac)275 2264 y Fu(Alternativ)m(ely)-8 b(,)28
+b(startup)23 b(scripts)h(ma)m(y)g(examine)g(the)g(v)-5
+b(ariable)25 b Ft(PS1)p Fu(;)g(it)g(is)e(unset)h(in)f(non-in)m
+(teractiv)m(e)150 2373 y(shells,)31 b(and)e(set)i(in)f(in)m(teractiv)m
+(e)k(shells.)40 b(Th)m(us:)390 2499 y Ft(if)47 b([)h(-z)f("$PS1")f(];)h
+(then)772 2609 y(echo)f(This)h(shell)f(is)i(not)f(interactive)390
+2719 y(else)772 2828 y(echo)f(This)h(shell)f(is)i(interactive)390
+2938 y(fi)150 3120 y Fk(6.3.3)63 b(In)m(teractiv)m(e)38
+b(Shell)k(Beha)m(vior)150 3267 y Fu(When)30 b(the)h(shell)f(is)h
+(running)d(in)m(teractiv)m(ely)-8 b(,)34 b(it)d(c)m(hanges)h(its)f(b)s
+(eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 3394
+y(1.)61 b(Bash)31 b(reads)g(and)g(executes)h(startup)e(\014les)i(as)f
+(describ)s(ed)f(in)h(Section)g(6.2)i([Bash)e(Startup)f(Files],)330
+3503 y(page)h(101.)199 3630 y(2.)61 b(Job)32 b(Con)m(trol)h(\(see)g
+(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(123\))h(is)e(enabled)g(b)m
+(y)g(default.)46 b(When)32 b(job)330 3739 y(con)m(trol)j(is)f(in)f
+(e\013ect,)k(Bash)d(ignores)g(the)g(k)m(eyb)s(oard-generated)h(job)e
+(con)m(trol)i(signals)g Ft(SIGTTIN)p Fu(,)330 3849 y
+Ft(SIGTTOU)p Fu(,)29 b(and)g Ft(SIGTSTP)p Fu(.)199 3975
+y(3.)61 b(Bash)31 b(executes)i(the)e(v)-5 b(alues)32
+b(of)g(the)f(set)h(elemen)m(ts)g(of)g(the)f Ft(PROMPT_COMMAND)d
+Fu(arra)m(y)k(v)-5 b(ariable)32 b(as)330 4085 y(commands)27
+b(b)s(efore)f(prin)m(ting)h(the)g(primary)g(prompt,)g
+Ft($PS1)f Fu(\(see)i(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)330
+4194 y(page)31 b(86\).)199 4320 y(4.)61 b(Bash)25 b(expands)e(and)h
+(displa)m(ys)h Ft(PS1)e Fu(b)s(efore)h(reading)h(the)f(\014rst)g(line)h
+(of)f(a)h(command,)h(and)e(expands)330 4430 y(and)33
+b(displa)m(ys)h Ft(PS2)f Fu(b)s(efore)h(reading)g(the)g(second)g(and)f
+(subsequen)m(t)g(lines)i(of)f(a)g(m)m(ulti-line)h(com-)330
+4540 y(mand.)42 b(Bash)31 b(expands)f(and)h(displa)m(ys)g
+Ft(PS0)f Fu(after)h(it)h(reads)f(a)g(command)g(but)f(b)s(efore)h
+(executing)330 4649 y(it.)54 b(See)35 b(Section)h(6.9)f([Con)m
+(trolling)i(the)d(Prompt],)i(page)g(112,)h(for)d(a)h(complete)i(list)e
+(of)g(prompt)330 4759 y(string)30 b(escap)s(e)h(sequences.)199
+4885 y(5.)61 b(Bash)34 b(uses)g(Readline)h(\(see)g(Chapter)f(8)h
+([Command)e(Line)h(Editing],)i(page)f(128\))h(to)f(read)f(com-)330
+4995 y(mands)29 b(from)h(the)h(user's)f(terminal.)199
+5121 y(6.)61 b(Bash)36 b(insp)s(ects)g(the)h(v)-5 b(alue)37
+b(of)f(the)g Ft(ignoreeof)e Fu(option)j(to)g Ft(set)29
+b(-o)36 b Fu(instead)h(of)f(exiting)i(imme-)330 5230
+y(diately)f(when)e(it)i(receiv)m(es)h(an)e Ft(EOF)f Fu(on)h(its)g
+(standard)f(input)g(when)h(reading)g(a)g(command)g(\(see)330
+5340 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(72\).)p
+eop end
+%%Page: 104 110
+TeXDict begin 104 109 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(104)199 299 y(7.)61
+b(Bash)23 b(enables)h(Command)e(history)h(\(see)h(Section)g(9.1)g
+([Bash)g(History)g(F)-8 b(acilities],)28 b(page)c(166\))h(and)330
+408 y(history)k(expansion)g(\(see)i(Section)f(9.3)g([History)g(In)m
+(teraction],)i(page)e(169\))h(b)m(y)e(default.)40 b(When)30
+b(a)330 518 y(shell)g(with)f(history)g(enabled)h(exits,)g(Bash)g(sa)m
+(v)m(es)h(the)f(command)f(history)g(to)i(the)e(\014le)h(named)f(b)m(y)
+330 628 y Ft($HISTFILE)p Fu(.)199 760 y(8.)61 b(Alias)31
+b(expansion)g(\(see)g(Section)g(6.6)g([Aliases],)i(page)e(108\))h(is)e
+(p)s(erformed)f(b)m(y)h(default.)199 893 y(9.)61 b(In)24
+b(the)g(absence)h(of)f(an)m(y)h(traps,)g(Bash)g(ignores)f
+Ft(SIGTERM)f Fu(\(see)i(Section)g(3.7.6)h([Signals],)g(page)f(48\).)154
+1026 y(10.)61 b(In)29 b(the)g(absence)h(of)g(an)m(y)g(traps,)f
+Ft(SIGINT)f Fu(is)h(caugh)m(t)i(and)e(handled)f(\(see)j(Section)f
+(3.7.6)h([Signals],)330 1135 y(page)g(48\).)42 b Ft(SIGINT)29
+b Fu(will)h(in)m(terrupt)g(some)h(shell)g(builtins.)154
+1268 y(11.)61 b(An)40 b(in)m(teractiv)m(e)j(login)e(shell)g(sends)e(a)i
+Ft(SIGHUP)d Fu(to)j(all)g(jobs)f(on)g(exit)h(if)g(the)f
+Ft(huponexit)e Fu(shell)330 1378 y(option)31 b(has)f(b)s(een)g(enabled)
+g(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(48\).)154
+1511 y(12.)61 b(The)36 b Ft(-n)g Fu(option)i(has)e(no)h(e\013ect,)j
+(whether)c(at)i(in)m(v)m(o)s(cation)h(or)d(when)g(using)g(`)p
+Ft(set)30 b(-n)p Fu(')37 b(\(see)g(Sec-)330 1620 y(tion)31
+b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(72\).)154 1753
+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 Ft(MAIL)p Fu(,)e Ft(MAILPATH)p Fu(,)330
+1862 y(and)f Ft(MAILCHECK)e Fu(shell)i(v)-5 b(ariables)31
+b(\(see)h(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)32
+b(page)f(86\).)154 1995 y(14.)61 b(The)27 b(shell)h(will)g(not)g(exit)g
+(on)g(expansion)f(errors)g(due)g(to)h(references)g(to)h(un)m(b)s(ound)
+24 b(shell)k(v)-5 b(ariables)330 2105 y(after)31 b(`)p
+Ft(set)f(-u)p Fu(')g(has)g(b)s(een)f(enabled)i(\(see)g(Section)g(4.3.1)
+h([The)f(Set)f(Builtin],)h(page)h(72\).)154 2238 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 Fr(v)-5 b(ar)54 b Fu(b)s(eing)48 b(unset)g(or)h(n)m
+(ull)f(in)330 2347 y Ft(${)p Fj(var)p Ft(:?)p Fj(word)p
+Ft(})27 b Fu(expansions)j(\(see)h(Section)h(3.5.3)g([Shell)e(P)m
+(arameter)i(Expansion],)e(page)h(27\).)154 2480 y(16.)61
+b(Redirection)31 b(errors)f(encoun)m(tered)h(b)m(y)f(shell)h(builtins)f
+(will)g(not)h(cause)g(the)f(shell)h(to)g(exit.)154 2613
+y(17.)61 b(When)26 b(running)f(in)i Fm(posix)e Fu(mo)s(de,)j(a)f(sp)s
+(ecial)g(builtin)f(returning)g(an)g(error)h(status)g(will)g(not)f
+(cause)330 2722 y(the)31 b(shell)f(to)h(exit)h(\(see)f(Section)g(6.11)h
+([Bash)f(POSIX)e(Mo)s(de],)i(page)g(115\).)154 2855 y(18.)61
+b(A)34 b(failed)g Ft(exec)f Fu(will)h(not)g(cause)g(the)g(shell)g(to)g
+(exit)h(\(see)f(Section)h(4.1)g([Bourne)f(Shell)f(Builtins],)330
+2965 y(page)e(51\).)154 3097 y(19.)61 b(P)m(arser)31
+b(syn)m(tax)f(errors)g(will)h(not)g(cause)g(the)f(shell)h(to)g(exit.)
+154 3230 y(20.)61 b(If)28 b(the)g Ft(cdspell)f Fu(shell)h(option)h(is)g
+(enabled,)g(the)f(shell)h(will)f(attempt)i(simple)e(sp)s(elling)h
+(correction)330 3340 y(for)f(directory)h(argumen)m(ts)g(to)g(the)g
+Ft(cd)e Fu(builtin)h(\(see)i(the)e(description)h(of)f(the)h
+Ft(cdspell)d Fu(option)j(to)330 3449 y(the)j Ft(shopt)e
+Fu(builtin)h(in)h(Section)g(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)g
+(77\).)46 b(The)31 b Ft(cdspell)e Fu(option)330 3559
+y(is)h(only)h(e\013ectiv)m(e)i(in)d(in)m(teractiv)m(e)j(shells.)154
+3692 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 Ft(TMOUT)e Fu(v)-5 b(ariable)44
+b(and)e(exit)h(if)g(a)g(command)f(is)h(not)330 3801 y(read)30
+b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)g(of)i(seconds)f
+(after)g(prin)m(ting)g Ft($PS1)f Fu(\(see)i(Section)g(5.2)h([Bash)330
+3911 y(V)-8 b(ariables],)32 b(page)f(86\).)150 4148 y
+Fs(6.4)68 b(Bash)45 b(Conditional)h(Expressions)150 4307
+y Fu(Conditional)25 b(expressions)f(are)g(used)g(b)m(y)g(the)g
+Ft([[)g Fu(comp)s(ound)e(command)i(\(see)h(Section)g(3.2.5.2)i([Condi-)
+150 4417 y(tional)h(Constructs],)g(page)f(12\))h(and)e(the)h
+Ft(test)f Fu(and)g Ft([)h Fu(builtin)f(commands)h(\(see)g(Section)h
+(4.1)g([Bourne)150 4527 y(Shell)37 b(Builtins],)j(page)e(51\).)63
+b(The)36 b Ft(test)g Fu(and)h Ft([)g Fu(commands)g(determine)g(their)h
+(b)s(eha)m(vior)f(based)g(on)150 4636 y(the)29 b(n)m(um)m(b)s(er)f(of)h
+(argumen)m(ts;)h(see)f(the)h(descriptions)e(of)i(those)f(commands)g
+(for)f(an)m(y)i(other)f(command-)150 4746 y(sp)s(eci\014c)h(actions.)
+275 4878 y(Expressions)35 b(ma)m(y)i(b)s(e)f(unary)g(or)h(binary)-8
+b(,)38 b(and)e(are)h(formed)f(from)g(the)h(primaries)f(listed)h(b)s
+(elo)m(w.)150 4988 y(Unary)e(expressions)f(are)h(often)g(used)g(to)g
+(examine)h(the)f(status)g(of)g(a)g(\014le)g(or)g(shell)g(v)-5
+b(ariable.)55 b(Binary)150 5098 y(op)s(erators)31 b(are)f(used)g(for)g
+(string,)h(n)m(umeric,)f(and)g(\014le)g(attribute)h(comparisons.)275
+5230 y(Bash)23 b(handles)f(sev)m(eral)i(\014lenames)f(sp)s(ecially)h
+(when)e(they)h(are)g(used)f(in)h(expressions.)38 b(If)22
+b(the)h(op)s(erat-)150 5340 y(ing)k(system)h(on)f(whic)m(h)g(Bash)g(is)
+g(running)f(pro)m(vides)h(these)g(sp)s(ecial)h(\014les,)g(Bash)f(uses)g
+(them;)i(otherwise)p eop end
+%%Page: 105 111
+TeXDict begin 105 110 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(105)150 299 y(it)24
+b(em)m(ulates)h(them)f(in)m(ternally)g(with)f(this)h(b)s(eha)m(vior:)37
+b(If)23 b(the)h Fr(\014le)29 b Fu(argumen)m(t)24 b(to)g(one)g(of)g(the)
+g(primaries)f(is)150 408 y(of)i(the)g(form)f Ft(/dev/fd/)p
+Fj(N)p Fu(,)f(then)h(Bash)h(c)m(hec)m(ks)h(\014le)f(descriptor)f
+Fr(N)p Fu(.)39 b(If)24 b(the)h Fr(\014le)30 b Fu(argumen)m(t)25
+b(to)g(one)g(of)g(the)150 518 y(primaries)j(is)h(one)h(of)f
+Ft(/dev/stdin)p Fu(,)d Ft(/dev/stdout)p Fu(,)h(or)h Ft(/dev/stderr)p
+Fu(,)f(Bash)i(c)m(hec)m(ks)h(\014le)f(descriptor)150
+628 y(0,)i(1,)g(or)f(2,)h(resp)s(ectiv)m(ely)-8 b(.)275
+761 y(When)37 b(used)g(with)g Ft([[)p Fu(,)i(the)f(`)p
+Ft(<)p Fu(')g(and)f(`)p Ft(>)p Fu(')h(op)s(erators)g(sort)g
+(lexicographically)i(using)d(the)h(curren)m(t)150 871
+y(lo)s(cale.)k(The)30 b Ft(test)f Fu(command)i(uses)f(ASCI)s(I)e
+(ordering.)275 1005 y(Unless)44 b(otherwise)h(sp)s(eci\014ed,)j
+(primaries)c(that)h(op)s(erate)g(on)g(\014les)f(follo)m(w)i(sym)m(b)s
+(olic)f(links)g(and)150 1114 y(op)s(erate)31 b(on)f(the)h(target)h(of)e
+(the)h(link,)f(rather)h(than)f(the)g(link)h(itself.)150
+1272 y Ft(-a)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists.)150 1430 y Ft(-b)30 b Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(is)g(a)h(blo)s(c)m(k)g(sp)s(ecial)g(\014le.)150
+1588 y Ft(-c)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(c)m(haracter)h(sp)s(ecial)
+f(\014le.)150 1745 y Ft(-d)f Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(directory)-8
+b(.)150 1903 y Ft(-e)30 b Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists.)150 2061 y Ft(-f)30
+b Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
+b Fu(exists)31 b(and)f(is)g(a)h(regular)f(\014le.)150
+2219 y Ft(-g)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(its)g(set-group-id)h(bit)g(is)f
+(set.)150 2377 y Ft(-h)g Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g
+(link.)150 2534 y Ft(-k)f Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(its)g Ft(")p
+Fu(stic)m(ky)p Ft(")h Fu(bit)g(is)f(set.)150 2692 y Ft(-p)g
+Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
+Fu(exists)31 b(and)f(is)g(a)h(named)f(pip)s(e)f(\(FIF)m(O\).)150
+2850 y Ft(-r)h Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(readable.)150
+3008 y Ft(-s)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(has)g(a)g(size)i(greater)f(than)f
+(zero.)150 3166 y Ft(-t)g Fj(fd)258 b Fu(T)-8 b(rue)30
+b(if)g(\014le)h(descriptor)f Fr(fd)j Fu(is)e(op)s(en)e(and)h(refers)g
+(to)h(a)g(terminal.)150 3324 y Ft(-u)f Fj(file)162 b
+Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(its)g
+(set-user-id)h(bit)f(is)h(set.)150 3481 y Ft(-w)f Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(is)g(writable.)150 3639 y Ft(-x)g Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(is)g(executable.)150 3797 y Ft(-G)g Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f(e\013ectiv)m(e)j(group)d(id.)150
+3955 y Ft(-L)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150
+4113 y Ft(-N)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(has)g(b)s(een)f(mo)s(di\014ed)h
+(since)g(it)h(w)m(as)g(last)g(accessed.)150 4270 y Ft(-O)f
+Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
+Fu(exists)31 b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f(e\013ectiv)m(e)j
+(user)d(id.)150 4428 y Ft(-S)g Fj(file)162 b Fu(T)-8
+b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(so)s(c)m
+(k)m(et.)150 4586 y Fj(file1)e Ft(-ef)g Fj(file2)630
+4696 y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38 b Fu(and)30
+b Fr(\014le2)38 b Fu(refer)30 b(to)i(the)e(same)h(device)g(and)f(ino)s
+(de)g(n)m(um)m(b)s(ers.)150 4853 y Fj(file1)f Ft(-nt)g
+Fj(file2)630 4963 y Fu(T)-8 b(rue)23 b(if)h Fr(\014le1)32
+b Fu(is)24 b(new)m(er)g(\(according)h(to)g(mo)s(di\014cation)f(date\))h
+(than)f Fr(\014le2)p Fu(,)i(or)e(if)g Fr(\014le1)31 b
+Fu(exists)630 5073 y(and)f Fr(\014le2)38 b Fu(do)s(es)30
+b(not.)150 5230 y Fj(file1)f Ft(-ot)g Fj(file2)630 5340
+y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38 b Fu(is)31 b(older)f(than)g
+Fr(\014le2)p Fu(,)i(or)e(if)g Fr(\014le2)38 b Fu(exists)31
+b(and)f Fr(\014le1)38 b Fu(do)s(es)30 b(not.)p eop end
+%%Page: 106 112
+TeXDict begin 106 111 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(106)150 299 y Ft(-o)30
+b Fj(optname)630 408 y Fu(T)-8 b(rue)41 b(if)g(the)g(shell)h(option)f
+Fr(optname)47 b Fu(is)41 b(enabled.)73 b(The)41 b(list)h(of)f(options)h
+(app)s(ears)e(in)630 518 y(the)33 b(description)h(of)f(the)g
+Ft(-o)g Fu(option)g(to)h(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)g
+(4.3.1)h([The)e(Set)630 628 y(Builtin],)e(page)g(72\).)150
+785 y Ft(-v)f Fj(varname)630 895 y Fu(T)-8 b(rue)24 b(if)h(the)g(shell)
+g(v)-5 b(ariable)26 b Fr(v)-5 b(arname)30 b Fu(is)25
+b(set)g(\(has)g(b)s(een)f(assigned)h(a)h(v)-5 b(alue\).)39
+b(If)25 b Fr(v)-5 b(arname)630 1004 y Fu(is)37 b(an)g(indexed)g(arra)m
+(y)h(v)-5 b(ariable)38 b(name)f(subscripted)f(b)m(y)h(`)p
+Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)h(this)e(returns)f(true)630
+1114 y(if)g(the)f(arra)m(y)h(has)g(an)m(y)f(set)i(elemen)m(ts.)57
+b(If)35 b Fr(v)-5 b(arname)41 b Fu(is)35 b(an)h(asso)s(ciativ)m(e)i
+(arra)m(y)e(v)-5 b(ariable)630 1223 y(name)32 b(subscripted)e(b)m(y)h
+(`)p Ft(@)p Fu(')h(or)g(`)p Ft(*)p Fu(',)g(this)f(returns)g(true)g(if)h
+(an)f(elemen)m(t)i(with)e(that)i(k)m(ey)f(is)630 1333
+y(set.)150 1490 y Ft(-R)e Fj(varname)630 1600 y Fu(T)-8
+b(rue)30 b(if)g(the)h(shell)f(v)-5 b(ariable)32 b Fr(v)-5
+b(arname)35 b Fu(is)30 b(set)h(and)f(is)h(a)f(name)h(reference.)150
+1758 y Ft(-z)f Fj(string)66 b Fu(T)-8 b(rue)30 b(if)g(the)h(length)g
+(of)f Fr(string)38 b Fu(is)31 b(zero.)150 1915 y Ft(-n)f
+Fj(string)150 2025 y(string)192 b Fu(T)-8 b(rue)30 b(if)g(the)h(length)
+g(of)f Fr(string)38 b Fu(is)31 b(non-zero.)150 2182 y
+Fj(string1)d Ft(==)i Fj(string2)150 2292 y(string1)e
+Ft(=)i Fj(string2)630 2401 y Fu(T)-8 b(rue)43 b(if)h(the)g(strings)g
+(are)g(equal.)82 b(When)44 b(used)f(with)g(the)h Ft([[)g
+Fu(command,)j(this)d(p)s(er-)630 2511 y(forms)d(pattern)g(matc)m(hing)i
+(as)f(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.2.5.2)i
+([Conditional)630 2620 y(Constructs],)30 b(page)h(12\).)630
+2754 y(`)p Ft(=)p Fu(')g(should)e(b)s(e)h(used)f(with)h(the)h
+Ft(test)e Fu(command)h(for)g Fm(posix)g Fu(conformance.)150
+2911 y Fj(string1)e Ft(!=)i Fj(string2)630 3021 y Fu(T)-8
+b(rue)30 b(if)g(the)h(strings)f(are)h(not)f(equal.)150
+3178 y Fj(string1)e Ft(<)i Fj(string2)630 3288 y Fu(T)-8
+b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31 b(b)s(efore)f
+Fr(string2)38 b Fu(lexicographically)-8 b(.)150 3445
+y Fj(string1)28 b Ft(>)i Fj(string2)630 3555 y Fu(T)-8
+b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31 b(after)g
+Fr(string2)38 b Fu(lexicographically)-8 b(.)150 3712
+y Fj(arg1)29 b Ft(OP)h Fj(arg2)630 3822 y Ft(OP)j Fu(is)h(one)g(of)h(`)
+p Ft(-eq)p Fu(',)f(`)p Ft(-ne)p Fu(',)h(`)p Ft(-lt)p
+Fu(',)g(`)p Ft(-le)p Fu(',)f(`)p Ft(-gt)p Fu(',)h(or)f(`)p
+Ft(-ge)p Fu('.)51 b(These)34 b(arithmetic)h(binary)630
+3932 y(op)s(erators)h(return)e(true)i(if)f Fr(arg1)44
+b Fu(is)36 b(equal)g(to,)i(not)e(equal)g(to,)i(less)e(than,)h(less)f
+(than)f(or)630 4041 y(equal)29 b(to,)g(greater)h(than,)e(or)g(greater)i
+(than)d(or)i(equal)f(to)h Fr(arg2)p Fu(,)h(resp)s(ectiv)m(ely)-8
+b(.)42 b Fr(Arg1)36 b Fu(and)630 4151 y Fr(arg2)41 b
+Fu(ma)m(y)34 b(b)s(e)f(p)s(ositiv)m(e)h(or)f(negativ)m(e)j(in)m
+(tegers.)50 b(When)33 b(used)g(with)g(the)g Ft([[)g Fu(command,)630
+4260 y Fr(arg1)45 b Fu(and)37 b Fr(arg2)46 b Fu(are)37
+b(ev)-5 b(aluated)39 b(as)e(arithmetic)i(expressions)e(\(see)h(Section)
+g(6.5)h([Shell)630 4370 y(Arithmetic],)32 b(page)f(106\).)150
+4609 y Fs(6.5)68 b(Shell)45 b(Arithmetic)150 4768 y Fu(The)35
+b(shell)g(allo)m(ws)i(arithmetic)f(expressions)f(to)h(b)s(e)f(ev)-5
+b(aluated,)38 b(as)d(one)h(of)f(the)h(shell)f(expansions)g(or)150
+4878 y(b)m(y)j(using)g(the)h Ft(\(\()e Fu(comp)s(ound)g(command,)k(the)
+d Ft(let)g Fu(and)f Ft(declare)g Fu(builtins,)j(the)e(arithmetic)i
+Ft(for)150 4987 y Fu(command,)30 b(the)h Ft([[)f Fu(conditional)h
+(command,)g(or)f(the)h Ft(-i)e Fu(option)i(to)g(the)g
+Ft(declare)d Fu(builtin.)275 5121 y(Ev)-5 b(aluation)21
+b(is)f(done)h(in)f(the)h(largest)g(\014xed-width)f(in)m(tegers)h(a)m(v)
+-5 b(ailable,)25 b(with)c(no)f(c)m(hec)m(k)i(for)e(o)m(v)m(er\015o)m
+(w,)150 5230 y(though)j(division)h(b)m(y)f(0)h(is)g(trapp)s(ed)e(and)h
+(\015agged)h(as)g(an)f(error.)38 b(The)23 b(op)s(erators)h(and)f(their)
+g(precedence,)150 5340 y(asso)s(ciativit)m(y)-8 b(,)29
+b(and)23 b(v)-5 b(alues)24 b(are)h(the)f(same)g(as)h(in)e(the)h(C)g
+(language.)40 b(The)24 b(follo)m(wing)h(list)g(of)f(op)s(erators)g(is)p
+eop end
+%%Page: 107 113
+TeXDict begin 107 112 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(107)150 299 y(group)s(ed)21
+b(in)m(to)i(lev)m(els)h(of)e(equal-precedence)i(op)s(erators.)38
+b(The)21 b(lev)m(els)j(are)f(listed)f(in)g(order)g(of)g(decreasing)150
+408 y(precedence.)150 567 y Fj(id)p Ft(++)29 b Fj(id)p
+Ft(--)67 b Fu(v)-5 b(ariable)31 b(p)s(ost-incremen)m(t)g(and)f(p)s
+(ost-decremen)m(t)150 726 y Ft(++)p Fj(id)f Ft(--)p Fj(id)67
+b Fu(v)-5 b(ariable)31 b(pre-incremen)m(t)g(and)f(pre-decremen)m(t)150
+885 y Ft(-)g(+)354 b Fu(unary)29 b(min)m(us)h(and)g(plus)150
+1044 y Ft(!)g(~)354 b Fu(logical)33 b(and)d(bit)m(wise)h(negation)150
+1203 y Ft(**)384 b Fu(exp)s(onen)m(tiation)150 1362 y
+Ft(*)30 b(/)g(\045)276 b Fu(m)m(ultiplication,)33 b(division,)d
+(remainder)150 1521 y Ft(+)g(-)354 b Fu(addition,)31
+b(subtraction)150 1680 y Ft(<<)f(>>)258 b Fu(left)31
+b(and)f(righ)m(t)h(bit)m(wise)g(shifts)150 1839 y Ft(<=)f(>=)g(<)g(>)
+102 b Fu(comparison)150 1998 y Ft(==)30 b(!=)258 b Fu(equalit)m(y)32
+b(and)e(inequalit)m(y)150 2156 y Ft(&)432 b Fu(bit)m(wise)31
+b(AND)150 2315 y Ft(^)432 b Fu(bit)m(wise)31 b(exclusiv)m(e)h(OR)150
+2474 y Ft(|)432 b Fu(bit)m(wise)31 b(OR)150 2633 y Ft(&&)384
+b Fu(logical)33 b(AND)150 2792 y Ft(||)384 b Fu(logical)33
+b(OR)150 2951 y Ft(expr)c(?)h(if-true-expr)d(:)j(if-false-expr)630
+3061 y Fu(conditional)i(op)s(erator)150 3219 y Ft(=)e(*=)g(/=)g(\045=)f
+(+=)h(-=)g(<<=)f(>>=)h(&=)g(^=)f(|=)630 3329 y Fu(assignmen)m(t)150
+3488 y Ft(expr1)g(,)h(expr2)630 3598 y Fu(comma)275 3756
+y(Shell)38 b(v)-5 b(ariables)39 b(are)g(allo)m(w)m(ed)i(as)e(op)s
+(erands;)i(parameter)e(expansion)g(is)f(p)s(erformed)g(b)s(efore)g(the)
+150 3866 y(expression)g(is)g(ev)-5 b(aluated.)66 b(Within)38
+b(an)h(expression,)h(shell)e(v)-5 b(ariables)39 b(ma)m(y)g(also)g(b)s
+(e)f(referenced)g(b)m(y)150 3976 y(name)33 b(without)g(using)f(the)h
+(parameter)g(expansion)g(syn)m(tax.)48 b(This)32 b(means)h(y)m(ou)g
+(can)g(use)g Fr(x)p Fu(,)g(where)g Fr(x)150 4085 y Fu(is)28
+b(a)h(shell)g(v)-5 b(ariable)29 b(name,)g(in)f(an)h(arithmetic)g
+(expression,)g(and)f(the)h(shell)f(will)h(ev)-5 b(aluate)30
+b(its)f(v)-5 b(alue)29 b(as)150 4195 y(an)h(expression)h(and)e(use)i
+(the)f(result.)41 b(A)31 b(shell)f(v)-5 b(ariable)32
+b(that)f(is)f(n)m(ull)g(or)h(unset)f(ev)-5 b(aluates)32
+b(to)f(0)g(when)150 4304 y(referenced)f(b)m(y)h(name)f(in)g(an)g
+(expression.)275 4439 y(The)d(v)-5 b(alue)28 b(of)g(a)g(v)-5
+b(ariable)29 b(is)e(ev)-5 b(aluated)29 b(as)f(an)g(arithmetic)h
+(expression)f(when)e(it)j(is)e(referenced,)i(or)150 4548
+y(when)e(a)h(v)-5 b(ariable)29 b(whic)m(h)e(has)h(b)s(een)f(giv)m(en)i
+(the)f Ft(integer)e Fu(attribute)i(using)g(`)p Ft(declare)g(-i)p
+Fu(')g(is)g(assigned)150 4658 y(a)33 b(v)-5 b(alue.)49
+b(A)33 b(n)m(ull)g(v)-5 b(alue)34 b(ev)-5 b(aluates)34
+b(to)g(0.)49 b(A)33 b(shell)g(v)-5 b(ariable)34 b(need)e(not)i(ha)m(v)m
+(e)g(its)f Ft(integer)e Fu(attribute)150 4767 y(turned)e(on)h(to)i(b)s
+(e)d(used)h(in)g(an)g(expression.)275 4902 y(In)m(teger)41
+b(constan)m(ts)g(follo)m(w)h(the)e(C)g(language)i(de\014nition,)g
+(without)f(su\016xes)e(or)h(c)m(haracter)i(con-)150 5011
+y(stan)m(ts.)f(Constan)m(ts)31 b(with)f(a)g(leading)h(0)f(are)h(in)m
+(terpreted)f(as)g(o)s(ctal)i(n)m(um)m(b)s(ers.)39 b(A)30
+b(leading)h(`)p Ft(0x)p Fu(')f(or)g(`)p Ft(0X)p Fu(')150
+5121 y(denotes)g(hexadecimal.)42 b(Otherwise,)30 b(n)m(um)m(b)s(ers)f
+(tak)m(e)i(the)f(form)g([)p Fr(base)5 b Ft(#)p Fu(])p
+Fr(n)p Fu(,)30 b(where)f(the)i(optional)g Fr(base)150
+5230 y Fu(is)e(a)h(decimal)g(n)m(um)m(b)s(er)e(b)s(et)m(w)m(een)h(2)h
+(and)e(64)i(represen)m(ting)g(the)f(arithmetic)i(base,)e(and)g
+Fr(n)g Fu(is)g(a)g(n)m(um)m(b)s(er)150 5340 y(in)g(that)i(base.)40
+b(If)30 b Fr(base)5 b Ft(#)30 b Fu(is)f(omitted,)i(then)f(base)g(10)g
+(is)g(used.)40 b(When)30 b(sp)s(ecifying)f Fr(n)p Fu(,)h(if)f(a)i
+(non-digit)f(is)p eop end
+%%Page: 108 114
+TeXDict begin 108 113 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(108)150 299 y(required,)34
+b(the)g(digits)h(greater)g(than)e(9)i(are)f(represen)m(ted)g(b)m(y)f
+(the)h(lo)m(w)m(ercase)j(letters,)f(the)e(upp)s(ercase)150
+408 y(letters,)26 b(`)p Ft(@)p Fu(',)g(and)d(`)p Ft(_)p
+Fu(',)i(in)e(that)i(order.)38 b(If)23 b Fr(base)29 b
+Fu(is)23 b(less)h(than)g(or)f(equal)h(to)h(36,)h(lo)m(w)m(ercase)g(and)
+d(upp)s(ercase)150 518 y(letters)32 b(ma)m(y)f(b)s(e)e(used)h(in)m
+(terc)m(hangeably)i(to)f(represen)m(t)g(n)m(um)m(b)s(ers)e(b)s(et)m(w)m
+(een)i(10)g(and)f(35.)275 656 y(Op)s(erators)g(are)i(ev)-5
+b(aluated)33 b(in)e(precedence)h(order.)44 b(Sub-expressions)29
+b(in)j(paren)m(theses)f(are)h(ev)-5 b(alu-)150 765 y(ated)31
+b(\014rst)f(and)f(ma)m(y)i(o)m(v)m(erride)h(the)e(precedence)h(rules)f
+(ab)s(o)m(v)m(e.)150 1011 y Fs(6.6)68 b(Aliases)150 1170
+y Fr(Aliases)31 b Fu(allo)m(w)d(a)f(string)f(to)i(b)s(e)d(substituted)h
+(for)g(a)h(w)m(ord)f(that)h(is)g(in)f(a)h(p)s(osition)f(in)g(the)h
+(input)e(where)h(it)150 1280 y(can)33 b(b)s(e)e(the)i(\014rst)f(w)m
+(ord)g(of)g(a)h(simple)f(command.)47 b(Aliases)34 b(ha)m(v)m(e)f(names)
+f(and)g(corresp)s(onding)g(v)-5 b(alues)150 1389 y(that)25
+b(are)g(set)g(and)f(unset)g(using)g(the)h Ft(alias)e
+Fu(and)h Ft(unalias)f Fu(builtin)h(commands)g(\(see)i(Chapter)e(4)h
+([Shell)150 1499 y(Builtin)31 b(Commands],)f(page)h(51\).)275
+1637 y(If)g(the)g(shell)h(reads)f(an)g(unquoted)g(w)m(ord)g(in)g(the)h
+(righ)m(t)g(p)s(osition,)g(it)g(c)m(hec)m(ks)h(the)f(w)m(ord)f(to)h
+(see)g(if)f(it)150 1746 y(matc)m(hes)h(an)f(alias)h(name.)43
+b(If)30 b(it)i(matc)m(hes,)g(the)f(shell)g(replaces)h(the)f(w)m(ord)g
+(with)f(the)i(alias)g(v)-5 b(alue,)32 b(and)150 1856
+y(reads)h(that)h(v)-5 b(alue)33 b(as)h(if)f(it)h(had)e(b)s(een)h(read)g
+(instead)g(of)h(the)f(w)m(ord.)49 b(The)33 b(shell)g(do)s(esn't)g(lo)s
+(ok)h(at)g(an)m(y)150 1965 y(c)m(haracters)e(follo)m(wing)g(the)e(w)m
+(ord)g(b)s(efore)g(attempting)i(alias)f(substitution.)275
+2103 y(The)d(c)m(haracters)i(`)p Ft(/)p Fu(',)f(`)p Ft($)p
+Fu(',)g(`)p Ft(`)p Fu(',)g(`)p Ft(=)p Fu(')g(and)f(an)m(y)h(of)g(the)f
+(shell)h(metac)m(haracters)i(or)e(quoting)f(c)m(haracters)150
+2213 y(listed)g(ab)s(o)m(v)m(e)h(ma)m(y)f(not)g(app)s(ear)f(in)g(an)g
+(alias)i(name.)40 b(The)27 b(replacemen)m(t)i(text)g(ma)m(y)f(con)m
+(tain)h(an)m(y)f(v)-5 b(alid)150 2322 y(shell)28 b(input,)g(including)g
+(shell)g(metac)m(haracters.)42 b(The)28 b(\014rst)f(w)m(ord)h(of)g(the)
+g(replacemen)m(t)i(text)f(is)f(tested)150 2432 y(for)e(aliases,)j(but)d
+(a)h(w)m(ord)f(that)h(is)g(iden)m(tical)h(to)f(an)g(alias)g(b)s(eing)f
+(expanded)g(is)h(not)f(expanded)g(a)h(second)150 2541
+y(time.)41 b(This)28 b(means)h(that)g(one)g(ma)m(y)h(alias)g
+Ft(ls)e Fu(to)i Ft("ls)f(-F")p Fu(,)g(for)f(instance,)j(and)d(Bash)h
+(do)s(es)f(not)h(try)g(to)150 2651 y(recursiv)m(ely)i(expand)f(the)g
+(replacemen)m(t)i(text.)275 2789 y(If)23 b(the)i(last)g(c)m(haracter)h
+(of)e(the)h(alias)g(v)-5 b(alue)25 b(is)f(a)h Ft(blank)p
+Fu(,)f(then)g(the)h(shell)f(c)m(hec)m(ks)i(the)f(next)f(command)150
+2898 y(w)m(ord)30 b(follo)m(wing)i(the)e(alias)i(for)e(alias)i
+(expansion.)275 3036 y(Aliases)d(are)f(created)i(and)d(listed)i(with)f
+(the)g Ft(alias)f Fu(command,)h(and)g(remo)m(v)m(ed)h(with)f(the)g
+Ft(unalias)150 3146 y Fu(command.)275 3283 y(There)44
+b(is)h(no)g(mec)m(hanism)g(for)f(using)h(argumen)m(ts)g(in)f(the)h
+(replacemen)m(t)i(text,)i(as)d(in)e Ft(csh)p Fu(.)83
+b(If)150 3393 y(argumen)m(ts)44 b(are)g(needed,)j(use)d(a)g(shell)g
+(function)g(\(see)g(Section)h(3.3)g([Shell)f(F)-8 b(unctions],)48
+b(page)d(19\))150 3502 y(instead.)275 3640 y(Aliases)33
+b(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 Ft(expand_aliases)150 3750 y Fu(shell)e(option)f
+(is)h(set)g(using)f Ft(shopt)f Fu(\(see)i(Section)g(4.3.2)h([The)e
+(Shopt)g(Builtin],)h(page)g(77\).)275 3887 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 3997 y(alw)m(a)m(ys)37
+b(reads)f(at)h(least)g(one)f(complete)i(line)e(of)g(input,)h(and)e(all)
+i(lines)f(that)g(mak)m(e)h(up)e(a)h(comp)s(ound)150 4106
+y(command,)29 b(b)s(efore)g(executing)i(an)m(y)e(of)h(the)f(commands)g
+(on)g(that)h(line)f(or)h(the)f(comp)s(ound)f(command.)150
+4216 y(Aliases)g(are)g(expanded)e(when)g(a)i(command)f(is)g(read,)h
+(not)f(when)f(it)i(is)f(executed.)41 b(Therefore,)28
+b(an)f(alias)150 4326 y(de\014nition)22 b(app)s(earing)g(on)g(the)h
+(same)g(line)f(as)h(another)g(command)f(do)s(es)g(not)h(tak)m(e)h
+(e\013ect)f(un)m(til)g(the)g(shell)150 4435 y(reads)28
+b(the)h(next)g(line)g(of)g(input,)f(and)g(an)g(alias)i(de\014nition)e
+(in)h(a)g(comp)s(ound)e(command)h(do)s(es)g(not)h(tak)m(e)150
+4545 y(e\013ect)36 b(un)m(til)f(the)g(shell)g(parses)f(and)g(executes)i
+(the)e(en)m(tire)i(comp)s(ound)d(command.)53 b(The)34
+b(commands)150 4654 y(follo)m(wing)44 b(the)f(alias)i(de\014nition)d
+(on)h(that)g(line,)k(or)c(in)g(the)g(rest)g(of)g(a)g(comp)s(ound)e
+(command,)47 b(are)150 4764 y(not)33 b(a\013ected)h(b)m(y)f(the)g(new)f
+(alias.)49 b(This)32 b(b)s(eha)m(vior)h(is)g(also)g(an)g(issue)g(when)e
+(functions)i(are)g(executed.)150 4874 y(Aliases)c(are)g(expanded)e
+(when)g(a)i(function)e(de\014nition)h(is)g(read,)h(not)f(when)g(the)g
+(function)g(is)g(executed,)150 4983 y(b)s(ecause)36 b(a)h(function)f
+(de\014nition)f(is)i(itself)g(a)f(command.)58 b(As)36
+b(a)h(consequence,)h(aliases)g(de\014ned)d(in)h(a)150
+5093 y(function)28 b(are)h(not)g(a)m(v)-5 b(ailable)31
+b(un)m(til)e(after)g(that)g(function)f(is)g(executed.)41
+b(T)-8 b(o)29 b(b)s(e)f(safe,)i(alw)m(a)m(ys)g(put)e(alias)150
+5202 y(de\014nitions)i(on)g(a)h(separate)g(line,)g(and)f(do)g(not)h
+(use)f Ft(alias)f Fu(in)h(comp)s(ound)f(commands.)275
+5340 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i
+(functions)f(are)g(preferable)h(to)g(aliases.)p eop end
+%%Page: 109 115
+TeXDict begin 109 114 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(109)150 299 y Fs(6.7)68
+b(Arra)l(ys)150 458 y Fu(Bash)33 b(pro)m(vides)g(one-dimensional)g
+(indexed)f(and)h(asso)s(ciativ)m(e)i(arra)m(y)e(v)-5
+b(ariables.)49 b(An)m(y)33 b(v)-5 b(ariable)33 b(ma)m(y)150
+568 y(b)s(e)40 b(used)f(as)i(an)f(indexed)g(arra)m(y;)46
+b(the)40 b Ft(declare)f Fu(builtin)g(explicitly)j(declares)f(an)g(arra)
+m(y)-8 b(.)71 b(There)40 b(is)150 677 y(no)33 b(maxim)m(um)g(limit)h
+(on)f(the)g(size)h(of)g(an)f(arra)m(y)-8 b(,)35 b(nor)d(an)m(y)i
+(requiremen)m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150
+787 y(or)j(assigned)g(con)m(tiguously)-8 b(.)57 b(Indexed)34
+b(arra)m(ys)h(are)h(referenced)f(using)f(arithmetic)j(expressions)d
+(that)150 897 y(m)m(ust)23 b(expand)f(to)h(an)g(in)m(teger)h(\(see)g
+(Section)g(6.5)f([Shell)g(Arithmetic],)j(page)e(106\)\))g(and)f(are)g
+(zero-based;)150 1006 y(asso)s(ciativ)m(e)29 b(arra)m(ys)f(use)e
+(arbitrary)h(strings.)39 b(Unless)27 b(otherwise)g(noted,)h(indexed)e
+(arra)m(y)h(indices)g(m)m(ust)150 1116 y(b)s(e)j(non-negativ)m(e)i(in)m
+(tegers.)275 1253 y(An)26 b(indexed)h(arra)m(y)h(is)f(created)h
+(automatically)j(if)c(an)m(y)g(v)-5 b(ariable)28 b(is)g(assigned)f(to)h
+(using)f(the)g(syn)m(tax)390 1390 y Fj(name)p Ft([)p
+Fj(subscript)p Ft(]=)p Fj(value)150 1528 y Fu(The)e Fr(subscript)g
+Fu(is)h(treated)g(as)f(an)g(arithmetic)h(expression)f(that)h(m)m(ust)f
+(ev)-5 b(aluate)27 b(to)e(a)h(n)m(um)m(b)s(er)e(greater)150
+1637 y(than)30 b(or)g(equal)h(to)g(zero.)42 b(T)-8 b(o)31
+b(explicitly)h(declare)f(an)f(arra)m(y)-8 b(,)32 b(use)390
+1774 y Ft(declare)46 b(-a)h Fj(name)150 1912 y Fu(\(see)31
+b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(60\).)42
+b(The)30 b(syn)m(tax)390 2049 y Ft(declare)46 b(-a)h
+Fj(name)p Ft([)p Fj(subscript)p Ft(])150 2186 y Fu(is)30
+b(also)i(accepted;)g(the)e Fr(subscript)h Fu(is)g(ignored.)150
+2324 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h(created)h(using)390
+2461 y Ft(declare)46 b(-A)h Fj(name)275 2598 y Fu(A)m(ttributes)f(ma)m
+(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g(arra)m(y)g(v)-5
+b(ariable)47 b(using)e(the)h Ft(declare)e Fu(and)h Ft(readonly)150
+2708 y Fu(builtins.)40 b(Eac)m(h)31 b(attribute)g(applies)g(to)g(all)g
+(mem)m(b)s(ers)f(of)g(an)h(arra)m(y)-8 b(.)275 2845 y(Arra)m(ys)30
+b(are)h(assigned)f(using)g(comp)s(ound)f(assignmen)m(ts)i(of)g(the)f
+(form)390 2982 y Fj(name)p Ft(=\()p Fj(value1)44 b(value2)j
+Ft(...)f(\))150 3119 y Fu(where)33 b(eac)m(h)i Fr(v)-5
+b(alue)40 b Fu(ma)m(y)34 b(b)s(e)g(of)g(the)g(form)f
+Ft([)p Fj(subscript)p Ft(]=)p Fr(string)p Fu(.)48 b(Indexed)33
+b(arra)m(y)h(assignmen)m(ts)h(do)150 3229 y(not)c(require)f(an)m
+(ything)g(but)g Fr(string)p Fu(.)275 3366 y(Eac)m(h)36
+b Fr(v)-5 b(alue)41 b Fu(in)35 b(the)h(list)h(undergo)s(es)d(the)i
+(shell)g(expansions)f(describ)s(ed)g(ab)s(o)m(v)m(e)i(\(see)f(Section)h
+(3.5)150 3476 y([Shell)e(Expansions],)g(page)g(24\),)i(but)d
+Fr(v)-5 b(alue)5 b Fu(s)35 b(that)g(are)g(v)-5 b(alid)35
+b(v)-5 b(ariable)35 b(assignmen)m(ts)h(including)e(the)150
+3585 y(brac)m(k)m(ets)22 b(and)e(subscript)f(do)h(not)h(undergo)f
+(brace)h(expansion)f(and)g(w)m(ord)g(splitting,)k(as)c(with)h
+(individual)150 3695 y(v)-5 b(ariable)31 b(assignmen)m(ts.)275
+3832 y(When)38 b(assigning)h(to)h(indexed)e(arra)m(ys,)j(if)e(the)g
+(optional)g(subscript)f(is)h(supplied,)g(that)h(index)e(is)150
+3942 y(assigned)28 b(to;)h(otherwise)f(the)g(index)f(of)g(the)h(elemen)
+m(t)h(assigned)e(is)h(the)f(last)i(index)e(assigned)g(to)h(b)m(y)g(the)
+150 4051 y(statemen)m(t)k(plus)e(one.)41 b(Indexing)29
+b(starts)i(at)g(zero.)275 4189 y(When)k(assigning)i(to)g(an)f(asso)s
+(ciativ)m(e)i(arra)m(y)-8 b(,)39 b(the)d(w)m(ords)f(in)h(a)h(comp)s
+(ound)d(assignmen)m(t)j(ma)m(y)g(b)s(e)150 4298 y(either)31
+b(assignmen)m(t)h(statemen)m(ts,)h(for)e(whic)m(h)g(the)g(subscript)f
+(is)h(required,)g(or)g(a)g(list)h(of)f(w)m(ords)f(that)i(is)150
+4408 y(in)m(terpreted)g(as)g(a)g(sequence)f(of)h(alternating)h(k)m(eys)
+f(and)f(v)-5 b(alues:)44 b Fr(name)5 b Fu(=\()p Fr(k)m(ey1)40
+b(v)-5 b(alue1)40 b(k)m(ey2)g(v)-5 b(alue2)156 4518 y
+Fu(.)22 b(.)g(.)47 b(\).)57 b(These)35 b(are)i(treated)f(iden)m
+(tically)i(to)e Fr(name)5 b Fu(=\()36 b([)p Fr(k)m(ey1)7
+b Fu(]=)p Fr(v)-5 b(alue1)46 b Fu([)p Fr(k)m(ey2)7 b
+Fu(]=)p Fr(v)-5 b(alue2)51 b Fu(.)22 b(.)h(.)46 b(\).)57
+b(The)150 4627 y(\014rst)25 b(w)m(ord)f(in)h(the)h(list)g(determines)f
+(ho)m(w)g(the)h(remaining)f(w)m(ords)g(are)h(in)m(terpreted;)h(all)f
+(assignmen)m(ts)g(in)150 4737 y(a)31 b(list)f(m)m(ust)h(b)s(e)e(of)h
+(the)h(same)f(t)m(yp)s(e.)41 b(When)30 b(using)g(k)m(ey/v)-5
+b(alue)32 b(pairs,)e(the)g(k)m(eys)h(ma)m(y)g(not)f(b)s(e)g(missing)150
+4846 y(or)g(empt)m(y;)h(a)g(\014nal)f(missing)g(v)-5
+b(alue)31 b(is)g(treated)g(lik)m(e)h(the)e(empt)m(y)h(string.)275
+4984 y(This)f(syn)m(tax)j(is)e(also)i(accepted)g(b)m(y)f(the)f
+Ft(declare)f Fu(builtin.)44 b(Individual)31 b(arra)m(y)h(elemen)m(ts)h
+(ma)m(y)g(b)s(e)150 5093 y(assigned)e(to)g(using)f(the)g
+Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p Fj(value)25 b
+Fu(syn)m(tax)31 b(in)m(tro)s(duced)e(ab)s(o)m(v)m(e.)275
+5230 y(When)h(assigning)h(to)h(an)e(indexed)g(arra)m(y)-8
+b(,)32 b(if)f Fr(name)36 b Fu(is)31 b(subscripted)e(b)m(y)i(a)g
+(negativ)m(e)i(n)m(um)m(b)s(er,)c(that)150 5340 y(n)m(um)m(b)s(er)43
+b(is)h(in)m(terpreted)h(as)f(relativ)m(e)j(to)e(one)f(greater)i(than)e
+(the)g(maxim)m(um)g(index)g(of)h Fr(name)p Fu(,)j(so)p
+eop end
+%%Page: 110 116
+TeXDict begin 110 115 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(110)150 299 y(negativ)m(e)30
+b(indices)d(coun)m(t)h(bac)m(k)g(from)f(the)g(end)g(of)g(the)h(arra)m
+(y)-8 b(,)29 b(and)e(an)g(index)g(of)g(-1)h(references)g(the)f(last)150
+408 y(elemen)m(t.)275 540 y(The)41 b(`)p Ft(+=)p Fu(')h(op)s(erator)g
+(app)s(ends)e(to)j(an)f(arra)m(y)g(v)-5 b(ariable)43
+b(when)e(assigning)i(using)e(the)h(comp)s(ound)150 650
+y(assignmen)m(t)31 b(syn)m(tax;)g(see)g(Section)g(3.4)h([Shell)e(P)m
+(arameters],)i(page)g(22,)f(ab)s(o)m(v)m(e.)275 781 y(An)f(arra)m(y)i
+(elemen)m(t)h(is)e(referenced)h(using)e Ft(${)p Fj(name)p
+Ft([)p Fj(subscript)p Ft(]})p Fu(.)39 b(The)31 b(braces)g(are)h
+(required)e(to)150 891 y(a)m(v)m(oid)25 b(con\015icts)f(with)g(the)f
+(shell's)h(\014lename)g(expansion)g(op)s(erators.)38
+b(If)23 b(the)h Fr(subscript)g Fu(is)g(`)p Ft(@)p Fu(')g(or)f(`)p
+Ft(*)p Fu(',)j(the)150 1000 y(w)m(ord)31 b(expands)f(to)i(all)g(mem)m
+(b)s(ers)f(of)g(the)h(arra)m(y)f Fr(name)p Fu(,)h(unless)f(otherwise)g
+(noted)h(in)e(the)i(description)150 1110 y(of)f(a)g(builtin)f(or)g(w)m
+(ord)g(expansion.)41 b(These)30 b(subscripts)g(di\013er)g(only)g(when)g
+(the)h(w)m(ord)f(app)s(ears)f(within)150 1219 y(double)37
+b(quotes.)61 b(If)37 b(the)g(w)m(ord)g(is)g(double-quoted,)i
+Ft(${)p Fj(name)p Ft([*]})34 b Fu(expands)i(to)i(a)g(single)g(w)m(ord)e
+(with)150 1329 y(the)g(v)-5 b(alue)37 b(of)g(eac)m(h)g(arra)m(y)g(mem)m
+(b)s(er)f(separated)g(b)m(y)h(the)f(\014rst)g(c)m(haracter)h(of)g(the)f
+Ft(IFS)g Fu(v)-5 b(ariable,)39 b(and)150 1439 y Ft(${)p
+Fj(name)p Ft([@]})31 b Fu(expands)j(eac)m(h)h(elemen)m(t)g(of)g
+Fr(name)k Fu(to)c(a)f(separate)h(w)m(ord.)52 b(When)34
+b(there)g(are)g(no)g(arra)m(y)150 1548 y(mem)m(b)s(ers,)28
+b Ft(${)p Fj(name)p Ft([@]})e Fu(expands)h(to)i(nothing.)40
+b(If)28 b(the)g(double-quoted)h(expansion)f(o)s(ccurs)g(within)g(a)150
+1658 y(w)m(ord,)d(the)e(expansion)h(of)f(the)h(\014rst)e(parameter)i
+(is)g(joined)f(with)g(the)h(b)s(eginning)f(part)g(of)g(the)h(expansion)
+150 1767 y(of)35 b(the)g(original)h(w)m(ord,)g(and)f(the)g(expansion)f
+(of)i(the)f(last)g(parameter)h(is)f(joined)g(with)f(the)h(last)h(part)
+150 1877 y(of)i(the)h(expansion)f(of)g(the)h(original)g(w)m(ord.)64
+b(This)38 b(is)g(analogous)i(to)f(the)f(expansion)g(of)h(the)f(sp)s
+(ecial)150 1987 y(parameters)31 b(`)p Ft(@)p Fu(')f(and)g(`)p
+Ft(*)p Fu('.)275 2118 y Ft(${#)p Fj(name)p Ft([)p Fj(subscript)p
+Ft(]})h Fu(expands)36 b(to)h(the)g(length)g(of)g Ft(${)p
+Fj(name)p Ft([)p Fj(subscript)p Ft(]})p Fu(.)54 b(If)36
+b Fr(subscript)i Fu(is)150 2228 y(`)p Ft(@)p Fu(')31
+b(or)f(`)p Ft(*)p Fu(',)h(the)f(expansion)g(is)h(the)f(n)m(um)m(b)s(er)
+g(of)g(elemen)m(ts)i(in)e(the)g(arra)m(y)-8 b(.)275 2359
+y(If)29 b(the)h Fr(subscript)g Fu(used)f(to)i(reference)f(an)f(elemen)m
+(t)j(of)d(an)h(indexed)f(arra)m(y)h(ev)-5 b(aluates)32
+b(to)e(a)g(n)m(um)m(b)s(er)150 2469 y(less)35 b(than)f(zero,)i(it)f(is)
+f(in)m(terpreted)h(as)f(relativ)m(e)j(to)e(one)f(greater)i(than)e(the)g
+(maxim)m(um)g(index)g(of)h(the)150 2578 y(arra)m(y)-8
+b(,)30 b(so)f(negativ)m(e)i(indices)e(coun)m(t)g(bac)m(k)h(from)e(the)h
+(end)f(of)h(the)g(arra)m(y)-8 b(,)30 b(and)e(an)g(index)h(of)g(-1)g
+(refers)f(to)150 2688 y(the)j(last)g(elemen)m(t.)275
+2819 y(Referencing)41 b(an)f(arra)m(y)h(v)-5 b(ariable)42
+b(without)e(a)h(subscript)e(is)i(equiv)-5 b(alen)m(t)42
+b(to)f(referencing)g(with)g(a)150 2929 y(subscript)29
+b(of)i(0.)42 b(An)m(y)31 b(reference)g(to)g(a)g(v)-5
+b(ariable)32 b(using)e(a)h(v)-5 b(alid)31 b(subscript)e(is)i(v)-5
+b(alid;)31 b(Bash)g(creates)h(an)150 3039 y(arra)m(y)f(if)f(necessary)
+-8 b(.)275 3170 y(An)35 b(arra)m(y)i(v)-5 b(ariable)37
+b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s(een)g
+(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
+3280 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
+3411 y(It)29 b(is)h(p)s(ossible)f(to)h(obtain)g(the)f(k)m(eys)i
+(\(indices\))f(of)f(an)h(arra)m(y)g(as)f(w)m(ell)i(as)f(the)f(v)-5
+b(alues.)41 b($)p Fi({)p Fu(!)p Fr(name)5 b Fu([@])p
+Fi(})150 3521 y Fu(and)39 b($)p Fi({)p Fu(!)p Fr(name)5
+b Fu([*])p Fi(})43 b Fu(expand)c(to)i(the)f(indices)h(assigned)f(in)g
+(arra)m(y)g(v)-5 b(ariable)41 b Fr(name)p Fu(.)70 b(The)39
+b(treatmen)m(t)150 3630 y(when)i(in)g(double)g(quotes)h(is)f(similar)h
+(to)h(the)e(expansion)h(of)f(the)h(sp)s(ecial)g(parameters)g(`)p
+Ft(@)p Fu(')g(and)f(`)p Ft(*)p Fu(')150 3740 y(within)30
+b(double)g(quotes.)275 3871 y(The)i Ft(unset)f Fu(builtin)h(is)h(used)f
+(to)h(destro)m(y)h(arra)m(ys.)48 b Ft(unset)29 b Fj(name)p
+Ft([)p Fj(subscript)p Ft(])f Fu(unsets)33 b(the)f(arra)m(y)150
+3981 y(elemen)m(t)40 b(at)e(index)g Fr(subscript)p Fu(.)62
+b(Negativ)m(e)41 b(subscripts)c(to)i(indexed)e(arra)m(ys)i(are)f(in)m
+(terpreted)h(as)f(de-)150 4091 y(scrib)s(ed)30 b(ab)s(o)m(v)m(e.)42
+b(Unsetting)31 b(the)g(last)g(elemen)m(t)h(of)f(an)g(arra)m(y)g(v)-5
+b(ariable)31 b(do)s(es)f(not)h(unset)f(the)h(v)-5 b(ariable.)150
+4200 y Ft(unset)29 b Fj(name)p Fu(,)39 b(where)e Fr(name)43
+b Fu(is)37 b(an)h(arra)m(y)-8 b(,)41 b(remo)m(v)m(es)e(the)f(en)m(tire)
+g(arra)m(y)-8 b(.)64 b Ft(unset)29 b Fj(name)p Ft([)p
+Fj(subscript)p Ft(])150 4310 y Fu(b)s(eha)m(v)m(es)g(di\013eren)m(tly)g
+(dep)s(ending)d(on)i(the)h(arra)m(y)f(t)m(yp)s(e)h(when)e
+Fr(subscript)i Fu(is)f(`)p Ft(*)p Fu(')g(or)g(`)p Ft(@)p
+Fu('.)41 b(When)28 b Fr(name)33 b Fu(is)150 4419 y(an)27
+b(asso)s(ciativ)m(e)i(arra)m(y)-8 b(,)29 b(it)e(remo)m(v)m(es)h(the)g
+(elemen)m(t)g(with)e(k)m(ey)i(`)p Ft(*)p Fu(')f(or)g(`)p
+Ft(@)p Fu('.)39 b(If)27 b Fr(name)32 b Fu(is)27 b(an)f(indexed)h(arra)m
+(y)-8 b(,)150 4529 y Ft(unset)29 b Fu(remo)m(v)m(es)j(all)f(of)f(the)h
+(elemen)m(ts,)h(but)e(do)s(es)g(not)g(remo)m(v)m(e)i(the)f(arra)m(y)g
+(itself.)275 4661 y(When)k(using)g(a)i(v)-5 b(ariable)36
+b(name)g(with)g(a)g(subscript)e(as)i(an)g(argumen)m(t)g(to)h(a)f
+(command,)h(suc)m(h)f(as)150 4770 y(with)i Ft(unset)p
+Fu(,)g(without)h(using)e(the)h(w)m(ord)g(expansion)g(syn)m(tax)g
+(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(e.g.,)h(unset)d(a[4]\),)150
+4880 y(the)28 b(argumen)m(t)f(is)h(sub)5 b(ject)27 b(to)h(the)g
+(shell's)f(\014lename)h(expansion.)40 b(Quote)27 b(the)h(argumen)m(t)g
+(if)f(pathname)150 4989 y(expansion)j(is)h(not)f(desired)g(\(e.g.,)i
+(unset)e('a[4]'\).)275 5121 y(The)20 b Ft(declare)p Fu(,)h
+Ft(local)p Fu(,)h(and)e Ft(readonly)f Fu(builtins)h(eac)m(h)i(accept)g
+(a)g Ft(-a)e Fu(option)h(to)h(sp)s(ecify)f(an)f(indexed)150
+5230 y(arra)m(y)28 b(and)f(a)h Ft(-A)e Fu(option)i(to)g(sp)s(ecify)f
+(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8 b(.)40 b(If)27
+b(b)s(oth)g(options)h(are)g(supplied,)f Ft(-A)f Fu(tak)m(es)150
+5340 y(precedence.)55 b(The)35 b Ft(read)f Fu(builtin)h(accepts)h(a)g
+Ft(-a)e Fu(option)i(to)g(assign)f(a)g(list)h(of)f(w)m(ords)g(read)g
+(from)g(the)p eop end
+%%Page: 111 117
+TeXDict begin 111 116 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(111)150 299 y(standard)36
+b(input)g(to)i(an)f(arra)m(y)-8 b(,)40 b(and)c(can)h(read)g(v)-5
+b(alues)38 b(from)e(the)h(standard)g(input)f(in)m(to)i(individual)150
+408 y(arra)m(y)22 b(elemen)m(ts.)39 b(The)21 b Ft(set)f
+Fu(and)h Ft(declare)f Fu(builtins)h(displa)m(y)g(arra)m(y)h(v)-5
+b(alues)22 b(in)f(a)h(w)m(a)m(y)g(that)g(allo)m(ws)h(them)150
+518 y(to)29 b(b)s(e)f(reused)g(as)h(input.)39 b(Other)28
+b(builtins)g(accept)i(arra)m(y)f(name)g(argumen)m(ts)g(as)g(w)m(ell)g
+(\(e.g.,)i Ft(mapfile)p Fu(\);)150 628 y(see)c(the)g(descriptions)f(of)
+g(individual)g(builtins)g(for)g(details.)40 b(The)26
+b(shell)h(pro)m(vides)f(a)h(n)m(um)m(b)s(er)e(of)h(builtin)150
+737 y(arra)m(y)31 b(v)-5 b(ariables.)150 992 y Fs(6.8)68
+b(The)45 b(Directory)g(Stac)l(k)150 1151 y Fu(The)21
+b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m(tly-visited)j
+(directories.)39 b(The)20 b Ft(pushd)g Fu(builtin)h(adds)g(directories)
+150 1261 y(to)42 b(the)f(stac)m(k)i(as)e(it)h(c)m(hanges)g(the)f
+(curren)m(t)g(directory)-8 b(,)45 b(and)40 b(the)i Ft(popd)e
+Fu(builtin)g(remo)m(v)m(es)j(sp)s(eci\014ed)150 1371
+y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j(the)e
+(curren)m(t)g(directory)h(to)g(the)g(directory)f(remo)m(v)m(ed.)41
+b(The)150 1480 y Ft(dirs)34 b Fu(builtin)g(displa)m(ys)h(the)g(con)m
+(ten)m(ts)i(of)e(the)g(directory)h(stac)m(k.)56 b(The)34
+b(curren)m(t)h(directory)g(is)g(alw)m(a)m(ys)150 1590
+y(the)c Ft(")p Fu(top)p Ft(")f Fu(of)g(the)h(directory)g(stac)m(k.)275
+1734 y(The)k(con)m(ten)m(ts)i(of)f(the)h(directory)f(stac)m(k)h(are)f
+(also)h(visible)g(as)f(the)g(v)-5 b(alue)36 b(of)g(the)g
+Ft(DIRSTACK)e Fu(shell)150 1843 y(v)-5 b(ariable.)150
+2052 y Fk(6.8.1)63 b(Directory)40 b(Stac)m(k)g(Builtins)150
+2228 y Ft(dirs)870 2367 y(dirs)47 b([-clpv])e([+)p Fj(N)i
+Ft(|)h(-)p Fj(N)p Ft(])630 2506 y Fu(Without)29 b(options,)h(displa)m
+(y)f(the)g(list)g(of)g(curren)m(tly)g(remem)m(b)s(ered)f(directories.)
+41 b(Directo-)630 2616 y(ries)25 b(are)h(added)e(to)i(the)f(list)h
+(with)f(the)g Ft(pushd)f Fu(command;)j(the)e Ft(popd)f
+Fu(command)h(remo)m(v)m(es)630 2726 y(directories)34
+b(from)f(the)h(list.)50 b(The)33 b(curren)m(t)g(directory)h(is)f(alw)m
+(a)m(ys)i(the)f(\014rst)e(directory)i(in)630 2835 y(the)d(stac)m(k.)630
+2974 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
+(meanings:)630 3143 y Ft(-c)384 b Fu(Clears)31 b(the)f(directory)h
+(stac)m(k)h(b)m(y)e(deleting)h(all)h(of)e(the)h(elemen)m(ts.)630
+3312 y Ft(-l)384 b Fu(Pro)s(duces)31 b(a)h(listing)h(using)e(full)h
+(pathnames;)h(the)f(default)g(listing)h(format)1110 3421
+y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h(directory)-8
+b(.)630 3590 y Ft(-p)384 b Fu(Causes)30 b Ft(dirs)f Fu(to)i(prin)m(t)f
+(the)h(directory)g(stac)m(k)h(with)e(one)g(en)m(try)h(p)s(er)e(line.)
+630 3759 y Ft(-v)384 b Fu(Causes)36 b Ft(dirs)f Fu(to)i(prin)m(t)f(the)
+g(directory)h(stac)m(k)h(with)e(one)h(en)m(try)f(p)s(er)f(line,)1110
+3868 y(pre\014xing)30 b(eac)m(h)h(en)m(try)g(with)f(its)h(index)e(in)i
+(the)f(stac)m(k.)630 4037 y Ft(+)p Fj(N)384 b Fu(Displa)m(ys)23
+b(the)f Fr(N)10 b Fu(th)21 b(directory)h(\(coun)m(ting)h(from)e(the)h
+(left)g(of)g(the)g(list)g(prin)m(ted)1110 4147 y(b)m(y)30
+b Ft(dirs)f Fu(when)h(in)m(v)m(ok)m(ed)i(without)e(options\),)h
+(starting)g(with)g(zero.)630 4315 y Ft(-)p Fj(N)384 b
+Fu(Displa)m(ys)47 b(the)g Fr(N)10 b Fu(th)46 b(directory)h(\(coun)m
+(ting)g(from)f(the)g(righ)m(t)h(of)g(the)f(list)1110
+4425 y(prin)m(ted)25 b(b)m(y)g Ft(dirs)g Fu(when)f(in)m(v)m(ok)m(ed)j
+(without)f(options\),)h(starting)g(with)e(zero.)150 4594
+y Ft(popd)870 4733 y(popd)47 b([-n])f([+)p Fj(N)h Ft(|)h(-)p
+Fj(N)p Ft(])630 4872 y Fu(Remo)m(v)m(e)31 b(elemen)m(ts)f(from)f(the)g
+(directory)h(stac)m(k.)42 b(The)28 b(elemen)m(ts)j(are)e(n)m(um)m(b)s
+(ered)f(from)h(0)630 4982 y(starting)f(at)h(the)f(\014rst)e(directory)j
+(listed)f(b)m(y)f Ft(dirs)p Fu(;)h(that)g(is,)h Ft(popd)d
+Fu(is)i(equiv)-5 b(alen)m(t)29 b(to)f Ft(popd)630 5091
+y(+0)p Fu(.)630 5230 y(When)k(no)g(argumen)m(ts)h(are)g(giv)m(en,)h
+Ft(popd)d Fu(remo)m(v)m(es)j(the)f(top)f(directory)h(from)f(the)g(stac)
+m(k)630 5340 y(and)e(c)m(hanges)h(to)g(the)g(new)f(top)g(directory)-8
+b(.)p eop end
+%%Page: 112 118
+TeXDict begin 112 117 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(112)630 299 y(Argumen)m(ts,)31
+b(if)f(supplied,)f(ha)m(v)m(e)j(the)e(follo)m(wing)i(meanings:)630
+457 y Ft(-n)384 b Fu(Suppress)23 b(the)j(normal)g(c)m(hange)h(of)f
+(directory)g(when)e(remo)m(ving)j(directories)1110 566
+y(from)j(the)g(stac)m(k,)j(only)d(manipulate)h(the)f(stac)m(k.)630
+724 y Ft(+)p Fj(N)384 b Fu(Remo)m(v)m(e)25 b(the)f Fr(N)10
+b Fu(th)24 b(directory)g(\(coun)m(ting)g(from)g(the)f(left)i(of)e(the)h
+(list)g(prin)m(ted)1110 833 y(b)m(y)30 b Ft(dirs)p Fu(\),)g(starting)h
+(with)f(zero,)i(from)e(the)g(stac)m(k.)630 991 y Ft(-)p
+Fj(N)384 b Fu(Remo)m(v)m(e)50 b(the)f Fr(N)10 b Fu(th)48
+b(directory)h(\(coun)m(ting)h(from)e(the)g(righ)m(t)h(of)g(the)f(list)
+1110 1101 y(prin)m(ted)30 b(b)m(y)g Ft(dirs)p Fu(\),)g(starting)h(with)
+f(zero,)i(from)e(the)g(stac)m(k.)630 1258 y(If)d(the)h(top)g(elemen)m
+(t)h(of)f(the)g(directory)g(stac)m(k)h(is)e(mo)s(di\014ed,)h(and)f(the)
+h Ft(-n)f Fu(option)h(w)m(as)g(not)630 1368 y(supplied,)j
+Ft(popd)g Fu(uses)g(the)h Ft(cd)f Fu(builtin)g(to)i(c)m(hange)g(to)f
+(the)g(directory)g(at)h(the)f(top)g(of)g(the)630 1478
+y(stac)m(k.)42 b(If)30 b(the)h Ft(cd)e Fu(fails,)j Ft(popd)d
+Fu(returns)g(a)i(non-zero)g(v)-5 b(alue.)630 1611 y(Otherwise,)29
+b Ft(popd)e Fu(returns)h(an)h(unsuccessful)e(status)i(if)g(an)f(in)m(v)
+-5 b(alid)29 b(option)h(is)e(sp)s(eci\014ed,)630 1721
+y(the)e(directory)h(stac)m(k)g(is)f(empt)m(y)-8 b(,)28
+b(or)e Fr(N)36 b Fu(sp)s(eci\014es)26 b(a)h(non-existen)m(t)g
+(directory)f(stac)m(k)i(en)m(try)-8 b(.)630 1854 y(If)32
+b(the)h Ft(popd)f Fu(command)h(is)g(successful,)g(Bash)g(runs)f
+Ft(dirs)f Fu(to)j(sho)m(w)f(the)g(\014nal)f(con)m(ten)m(ts)630
+1964 y(of)f(the)f(directory)h(stac)m(k,)h(and)e(the)g(return)g(status)g
+(is)h(0.)150 2122 y Ft(pushd)870 2255 y(pushd)46 b([-n])h([+)p
+Fj(N)g Ft(|)g Fj(-N)h Ft(|)f Fj(dir)p Ft(])630 2389 y
+Fu(Add)32 b(a)i(directory)f(to)h(the)f(top)h(of)f(the)g(directory)h
+(stac)m(k,)h(or)e(rotate)i(the)e(stac)m(k,)j(making)630
+2499 y(the)h(new)g(top)g(of)g(the)g(stac)m(k)i(the)e(curren)m(t)f(w)m
+(orking)i(directory)-8 b(.)61 b(With)38 b(no)e(argumen)m(ts,)630
+2608 y Ft(pushd)29 b Fu(exc)m(hanges)j(the)e(top)h(t)m(w)m(o)h(elemen)m
+(ts)f(of)g(the)f(directory)h(stac)m(k.)630 2742 y(Argumen)m(ts,)g(if)f
+(supplied,)f(ha)m(v)m(e)j(the)e(follo)m(wing)i(meanings:)630
+2900 y Ft(-n)384 b Fu(Suppress)32 b(the)j(normal)g(c)m(hange)h(of)f
+(directory)g(when)f(rotating)i(or)e(adding)1110 3009
+y(directories)d(to)h(the)e(stac)m(k,)i(only)f(manipulate)f(the)h(stac)m
+(k.)630 3167 y Ft(+)p Fj(N)384 b Fu(Rotate)32 b(the)f(stac)m(k)g(so)g
+(that)f(the)h Fr(N)10 b Fu(th)30 b(directory)h(\(coun)m(ting)g(from)f
+(the)g(left)1110 3276 y(of)h(the)f(list)h(prin)m(ted)f(b)m(y)g
+Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))h(is)g(at)g(the)g(top.)630
+3434 y Ft(-)p Fj(N)384 b Fu(Rotate)27 b(the)d(stac)m(k)j(so)e(that)g
+(the)g Fr(N)10 b Fu(th)24 b(directory)h(\(coun)m(ting)h(from)e(the)h
+(righ)m(t)1110 3544 y(of)31 b(the)f(list)h(prin)m(ted)f(b)m(y)g
+Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))h(is)g(at)g(the)g(top.)630
+3701 y Fj(dir)336 b Fu(Mak)m(e)32 b Fr(dir)k Fu(b)s(e)30
+b(the)g(top)h(of)g(the)f(stac)m(k.)630 3859 y(After)39
+b(the)g(stac)m(k)h(has)e(b)s(een)g(mo)s(di\014ed,)i(if)f(the)g
+Ft(-n)f Fu(option)h(w)m(as)g(not)g(supplied,)g Ft(pushd)630
+3969 y Fu(uses)29 b(the)h Ft(cd)f Fu(builtin)g(to)h(c)m(hange)g(to)h
+(the)e(directory)h(at)g(the)g(top)g(of)f(the)h(stac)m(k.)42
+b(If)29 b(the)h Ft(cd)630 4078 y Fu(fails,)h Ft(pushd)e
+Fu(returns)g(a)i(non-zero)g(v)-5 b(alue.)630 4212 y(Otherwise,)24
+b(if)f(no)g(argumen)m(ts)g(are)g(supplied,)g Ft(pushd)e
+Fu(returns)h(zero)h(unless)f(the)h(directory)630 4321
+y(stac)m(k)g(is)f(empt)m(y)-8 b(.)39 b(When)21 b(rotating)j(the)e
+(directory)g(stac)m(k,)j Ft(pushd)20 b Fu(returns)h(zero)i(unless)e
+(the)630 4431 y(directory)31 b(stac)m(k)h(is)e(empt)m(y)h(or)f
+Fr(N)41 b Fu(sp)s(eci\014es)30 b(a)g(non-existen)m(t)i(directory)f
+(stac)m(k)h(elemen)m(t.)630 4565 y(If)d(the)g Ft(pushd)f
+Fu(command)h(is)g(successful,)h(Bash)f(runs)f Ft(dirs)g
+Fu(to)i(sho)m(w)f(the)g(\014nal)g(con)m(ten)m(ts)630
+4674 y(of)i(the)f(directory)h(stac)m(k.)150 4913 y Fs(6.9)68
+b(Con)l(trolling)47 b(the)e(Prompt)150 5073 y Fu(In)37
+b(addition,)k(the)d(follo)m(wing)i(table)f(describ)s(es)e(the)h(sp)s
+(ecial)h(c)m(haracters)g(whic)m(h)f(can)h(app)s(ear)e(in)h(the)150
+5182 y(prompt)29 b(v)-5 b(ariables)32 b Ft(PS0)p Fu(,)d
+Ft(PS1)p Fu(,)h Ft(PS2)p Fu(,)g(and)f Ft(PS4)p Fu(:)150
+5340 y Ft(\\a)384 b Fu(A)30 b(b)s(ell)h(c)m(haracter.)p
+eop end
+%%Page: 113 119
+TeXDict begin 113 118 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(113)150 299 y Ft(\\d)384
+b Fu(The)30 b(date,)h(in)f Ft(")p Fu(W)-8 b(eekda)m(y)32
+b(Mon)m(th)f(Date)p Ft(")h Fu(format)f(\(e.g.,)h Ft(")p
+Fu(T)-8 b(ue)30 b(Ma)m(y)h(26)p Ft(")p Fu(\).)150 459
+y Ft(\\D{)p Fj(format)p Ft(})630 569 y Fu(The)c Fr(format)i
+Fu(is)f(passed)e(to)i Ft(strftime)p Fu(\(3\))f(and)f(the)i(result)f(is)
+g(inserted)g(in)m(to)h(the)g(prompt)630 678 y(string;)42
+b(an)d(empt)m(y)f Fr(format)j Fu(results)d(in)g(a)h(lo)s(cale-sp)s
+(eci\014c)h(time)f(represen)m(tation.)65 b(The)630 788
+y(braces)31 b(are)f(required.)150 948 y Ft(\\e)384 b
+Fu(An)30 b(escap)s(e)h(c)m(haracter.)150 1108 y Ft(\\h)384
+b Fu(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e(`)p
+Ft(.)p Fu('.)150 1268 y Ft(\\H)384 b Fu(The)30 b(hostname.)150
+1428 y Ft(\\j)384 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h(jobs)g(curren)m
+(tly)h(managed)g(b)m(y)f(the)g(shell.)150 1589 y Ft(\\l)384
+b Fu(The)30 b(basename)h(of)f(the)h(shell's)f(terminal)h(device)g(name)
+g(\(e.g.,)h Ft(")p Fu(tt)m(ys0)p Ft(")p Fu(\).)150 1749
+y Ft(\\n)384 b Fu(A)30 b(newline.)150 1909 y Ft(\\r)384
+b Fu(A)30 b(carriage)i(return.)150 2069 y Ft(\\s)384
+b Fu(The)41 b(name)h(of)h(the)f(shell:)64 b(the)42 b(basename)g(of)g
+Ft($0)g Fu(\(the)g(p)s(ortion)g(follo)m(wing)h(the)f(\014nal)630
+2179 y(slash\).)150 2339 y Ft(\\t)384 b Fu(The)30 b(time,)h(in)f
+(24-hour)h(HH:MM:SS)g(format.)150 2499 y Ft(\\T)384 b
+Fu(The)30 b(time,)h(in)f(12-hour)h(HH:MM:SS)g(format.)150
+2659 y Ft(\\@)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(am/pm)f(format.)
+150 2819 y Ft(\\A)384 b Fu(The)30 b(time,)h(in)f(24-hour)h(HH:MM)g
+(format.)150 2979 y Ft(\\u)384 b Fu(The)30 b(username)g(of)g(the)h
+(curren)m(t)f(user.)150 3140 y Ft(\\v)384 b Fu(The)30
+b(Bash)g(v)m(ersion)h(\(e.g.,)h(2.00\).)150 3300 y Ft(\\V)384
+b Fu(The)30 b(Bash)g(release,)i(v)m(ersion)f Ft(+)f Fu(patc)m(hlev)m
+(el)j(\(e.g.,)f(2.00.0\).)150 3460 y Ft(\\w)384 b Fu(The)27
+b(v)-5 b(alue)28 b(of)g(the)g Ft(PWD)f Fu(shell)h(v)-5
+b(ariable)28 b(\()p Ft($PWD)p Fu(\),)g(with)g Ft($HOME)e
+Fu(abbreviated)i(with)f(a)h(tilde)630 3569 y(\(uses)i(the)h
+Ft($PROMPT_DIRTRIM)26 b Fu(v)-5 b(ariable\).)150 3730
+y Ft(\\W)384 b Fu(The)30 b(basename)h(of)f Ft($PWD)p
+Fu(,)g(with)g Ft($HOME)f Fu(abbreviated)h(with)g(a)h(tilde.)150
+3890 y Ft(\\!)384 b Fu(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i(this)f
+(command.)150 4050 y Ft(\\#)384 b Fu(The)30 b(command)g(n)m(um)m(b)s
+(er)f(of)i(this)f(command.)150 4210 y Ft(\\$)384 b Fu(If)30
+b(the)g(e\013ectiv)m(e)j(uid)d(is)g(0,)h Ft(#)p Fu(,)g(otherwise)g
+Ft($)p Fu(.)150 4370 y Ft(\\)p Fj(nnn)288 b Fu(The)30
+b(c)m(haracter)i(whose)e(ASCI)s(I)f(co)s(de)h(is)h(the)f(o)s(ctal)i(v)
+-5 b(alue)31 b Fr(nnn)p Fu(.)150 4530 y Ft(\\\\)384 b
+Fu(A)30 b(bac)m(kslash.)150 4691 y Ft(\\[)384 b Fu(Begin)35
+b(a)g(sequence)g(of)f(non-prin)m(ting)g(c)m(haracters.)54
+b(Thiss)33 b(could)i(b)s(e)e(used)h(to)h(em)m(b)s(ed)f(a)630
+4800 y(terminal)d(con)m(trol)h(sequence)e(in)m(to)i(the)e(prompt.)150
+4960 y Ft(\\])384 b Fu(End)29 b(a)i(sequence)g(of)f(non-prin)m(ting)g
+(c)m(haracters.)275 5121 y(The)25 b(command)h(n)m(um)m(b)s(er)f(and)h
+(the)g(history)g(n)m(um)m(b)s(er)f(are)i(usually)f(di\013eren)m(t:)39
+b(the)26 b(history)g(n)m(um)m(b)s(er)150 5230 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 5340 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(166\),)j(while)d(the)f(command)p
+eop end
+%%Page: 114 120
+TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(114)150 299 y(n)m(um)m(b)s(er)42
+b(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 408
+y(session.)275 541 y(After)28 b(the)g(string)g(is)g(deco)s(ded,)g(it)g
+(is)g(expanded)f(via)i(parameter)f(expansion,)h(command)f(substitu-)150
+651 y(tion,)g(arithmetic)f(expansion,)g(and)e(quote)i(remo)m(v)-5
+b(al,)29 b(sub)5 b(ject)25 b(to)i(the)f(v)-5 b(alue)27
+b(of)f(the)g Ft(promptvars)e Fu(shell)150 760 y(option)i(\(see)h
+(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)j(page)e(77\).)41
+b(This)25 b(can)h(ha)m(v)m(e)h(un)m(w)m(an)m(ted)f(side)g(e\013ects)150
+870 y(if)i(escap)s(ed)f(p)s(ortions)g(of)h(the)g(string)f(app)s(ear)g
+(within)g(command)h(substitution)f(or)h(con)m(tain)g(c)m(haracters)150
+979 y(sp)s(ecial)j(to)g(w)m(ord)f(expansion.)150 1216
+y Fs(6.10)68 b(The)45 b(Restricted)h(Shell)150 1375 y
+Fu(If)34 b(Bash)g(is)g(started)g(with)g(the)g(name)h
+Ft(rbash)p Fu(,)e(or)h(the)h Ft(--restricted)30 b Fu(or)k
+Ft(-r)g Fu(option)g(is)g(supplied)f(at)150 1485 y(in)m(v)m(o)s(cation,)
+d(the)d(shell)g(b)s(ecomes)h Fr(restricted)p Fu(.)40
+b(A)27 b(restricted)h(shell)f(is)g(used)f(to)i(set)f(up)f(an)h(en)m
+(vironmen)m(t)150 1595 y(more)g(con)m(trolled)i(than)e(the)g(standard)g
+(shell.)40 b(A)27 b(restricted)h(shell)f(b)s(eha)m(v)m(es)h(iden)m
+(tically)h(to)f Ft(bash)e Fu(with)150 1704 y(the)31 b(exception)g(that)
+g(the)g(follo)m(wing)h(are)e(disallo)m(w)m(ed)i(or)e(not)h(p)s
+(erformed:)225 1837 y Fq(\017)60 b Fu(Changing)30 b(directories)h(with)
+g(the)f Ft(cd)g Fu(builtin.)225 1969 y Fq(\017)60 b Fu(Setting)33
+b(or)g(unsetting)f(the)h(v)-5 b(alues)33 b(of)f(the)h
+Ft(SHELL)p Fu(,)f Ft(PATH)p Fu(,)g Ft(HISTFILE)p Fu(,)f
+Ft(ENV)p Fu(,)h(or)g Ft(BASH_ENV)e Fu(v)-5 b(ari-)330
+2079 y(ables.)225 2211 y Fq(\017)60 b Fu(Sp)s(ecifying)30
+b(command)g(names)g(con)m(taining)i(slashes.)225 2344
+y Fq(\017)60 b Fu(Sp)s(ecifying)30 b(a)h(\014lename)f(con)m(taining)i
+(a)f(slash)f(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(.)h
+Fu(builtin)e(command.)225 2476 y Fq(\017)60 b Fu(Using)31
+b(the)f Ft(-p)g Fu(option)h(to)g(the)f Ft(.)g Fu(builtin)g(command)g
+(to)i(sp)s(ecify)e(a)g(searc)m(h)h(path.)225 2609 y Fq(\017)60
+b Fu(Sp)s(ecifying)33 b(a)i(\014lename)f(con)m(taining)h(a)g(slash)e
+(as)i(an)e(argumen)m(t)i(to)g(the)f Ft(history)e Fu(builtin)h(com-)330
+2718 y(mand.)225 2851 y Fq(\017)60 b Fu(Sp)s(ecifying)32
+b(a)g(\014lename)h(con)m(taining)h(a)e(slash)g(as)h(an)f(argumen)m(t)h
+(to)g(the)f Ft(-p)g Fu(option)h(to)g(the)f Ft(hash)330
+2960 y Fu(builtin)e(command.)225 3093 y Fq(\017)60 b
+Fu(Imp)s(orting)30 b(function)g(de\014nitions)g(from)f(the)i(shell)g
+(en)m(vironmen)m(t)g(at)g(startup.)225 3225 y Fq(\017)60
+b Fu(P)m(arsing)31 b(the)f(v)-5 b(alue)31 b(of)g Ft(SHELLOPTS)d
+Fu(from)h(the)i(shell)g(en)m(vironmen)m(t)g(at)g(startup.)225
+3358 y Fq(\017)60 b Fu(Redirecting)31 b(output)f(using)g(the)h(`)p
+Ft(>)p Fu(',)g(`)p Ft(>|)p Fu(',)f(`)p Ft(<>)p Fu(',)h(`)p
+Ft(>&)p Fu(',)f(`)p Ft(&>)p Fu(',)h(and)e(`)p Ft(>>)p
+Fu(')i(redirection)g(op)s(erators.)225 3490 y Fq(\017)60
+b Fu(Using)31 b(the)f Ft(exec)f Fu(builtin)h(to)h(replace)h(the)e
+(shell)h(with)f(another)h(command.)225 3623 y Fq(\017)60
+b Fu(Adding)24 b(or)g(deleting)i(builtin)e(commands)g(with)h(the)f
+Ft(-f)g Fu(and)g Ft(-d)g Fu(options)h(to)h(the)e Ft(enable)f
+Fu(builtin.)225 3755 y Fq(\017)60 b Fu(Using)31 b(the)f
+Ft(enable)f Fu(builtin)h(command)g(to)h(enable)g(disabled)f(shell)g
+(builtins.)225 3888 y Fq(\017)60 b Fu(Sp)s(ecifying)30
+b(the)g Ft(-p)g Fu(option)h(to)g(the)g Ft(command)d Fu(builtin.)225
+4020 y Fq(\017)60 b Fu(T)-8 b(urning)29 b(o\013)i(restricted)g(mo)s(de)
+f(with)g(`)p Ft(set)g(+r)p Fu(')g(or)g(`)p Ft(shopt)f(-u)h
+(restricted_shell)p Fu('.)275 4175 y(These)g(restrictions)h(are)g
+(enforced)f(after)h(an)m(y)g(startup)f(\014les)g(are)h(read.)275
+4308 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
+4417 y(Scripts],)25 b(page)e(49\),)j Ft(rbash)c Fu(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.)275 4550 y(The)32 b(restricted)h(shell)g(mo)s(de)g(is)g(only)
+g(one)g(comp)s(onen)m(t)g(of)g(a)g(useful)f(restricted)i(en)m(vironmen)
+m(t.)49 b(It)150 4660 y(should)22 b(b)s(e)f(accompanied)j(b)m(y)e
+(setting)i Ft(PATH)d Fu(to)j(a)f(v)-5 b(alue)23 b(that)g(allo)m(ws)h
+(execution)f(of)g(only)g(a)g(few)f(v)m(eri\014ed)150
+4769 y(commands)35 b(\(commands)g(that)h(allo)m(w)g(shell)f(escap)s(es)
+h(are)f(particularly)h(vulnerable\),)h(c)m(hanging)f(the)150
+4879 y(curren)m(t)28 b(directory)g(to)h(a)f(non-writable)g(directory)g
+(other)g(than)g Ft($HOME)e Fu(after)j(login,)g(not)f(allo)m(wing)i(the)
+150 4988 y(restricted)25 b(shell)g(to)h(execute)g(shell)f(scripts,)h
+(and)e(cleaning)i(the)f(en)m(vironmen)m(t)h(of)f(v)-5
+b(ariables)25 b(that)g(cause)150 5098 y(some)31 b(commands)f(to)h(mo)s
+(dify)e(their)i(b)s(eha)m(vior)f(\(e.g.,)j Ft(VISUAL)28
+b Fu(or)j Ft(PAGER)p Fu(\).)275 5230 y(Mo)s(dern)e(systems)g(pro)m
+(vide)h(more)g(secure)g(w)m(a)m(ys)g(to)h(implemen)m(t)f(a)g
+(restricted)h(en)m(vironmen)m(t,)f(suc)m(h)150 5340 y(as)h
+Ft(jails)p Fu(,)e Ft(zones)p Fu(,)g(or)h Ft(containers)p
+Fu(.)p eop end
+%%Page: 115 121
+TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(115)150 299 y Fs(6.11)68
+b(Bash)45 b(and)g(POSIX)150 523 y Fk(6.11.1)63 b(What)40
+b(is)i(POSIX?)150 670 y Fm(posix)22 b Fu(is)g(the)g(name)h(for)f(a)g
+(family)h(of)g(standards)e(based)h(on)g(Unix.)38 b(A)22
+b(n)m(um)m(b)s(er)f(of)i(Unix)f(services,)j(to)s(ols,)150
+779 y(and)33 b(functions)g(are)h(part)f(of)h(the)f(standard,)h(ranging)
+g(from)f(the)g(basic)h(system)g(calls)g(and)f(C)g(library)150
+889 y(functions)d(to)h(common)g(applications)g(and)f(to)s(ols)h(to)g
+(system)g(administration)g(and)e(managemen)m(t.)275 1023
+y(The)22 b Fm(posix)g Fu(Shell)g(and)g(Utilities)j(standard)c(w)m(as)i
+(originally)h(dev)m(elop)s(ed)f(b)m(y)g(IEEE)f(W)-8 b(orking)24
+b(Group)150 1133 y(1003.2)46 b(\(POSIX.2\).)80 b(The)43
+b(\014rst)f(edition)i(of)g(the)f(1003.2)j(standard)c(w)m(as)i
+(published)e(in)h(1992.)81 b(It)150 1242 y(w)m(as)31
+b(merged)g(with)g(the)g(original)h(IEEE)e(1003.1)k(W)-8
+b(orking)32 b(Group)e(and)g(is)h(curren)m(tly)g(main)m(tained)h(b)m(y)
+150 1352 y(the)41 b(Austin)g(Group)g(\(a)h(join)m(t)g(w)m(orking)g
+(group)e(of)i(the)f(IEEE,)g(The)g(Op)s(en)f(Group)g(and)h(ISO/IEC)150
+1461 y(SC22/W)m(G15\).)i(T)-8 b(o)s(da)m(y)28 b(the)g(Shell)g(and)f
+(Utilities)j(are)e(a)g(v)m(olume)h(within)e(the)h(set)h(of)f(do)s
+(cumen)m(ts)f(that)150 1571 y(mak)m(e)34 b(up)e(IEEE)g(Std)g
+(1003.1-2024,)38 b(and)32 b(th)m(us)h(the)g(former)f(POSIX.2)h(\(from)f
+(1992\))j(is)e(no)m(w)g(part)g(of)150 1680 y(the)e(curren)m(t)f
+(uni\014ed)f Fm(posix)g Fu(standard.)275 1815 y(The)k(Shell)h(and)g
+(Utilities)i(v)m(olume)f(concen)m(trates)h(on)e(the)g(command)g(in)m
+(terpreter)h(in)m(terface)h(and)150 1924 y(utilit)m(y)i(programs)f
+(commonly)g(executed)g(from)g(the)g(command)f(line)h(or)g(b)m(y)g
+(other)g(programs.)59 b(The)150 2034 y(standard)37 b(is)g(freely)h(a)m
+(v)-5 b(ailable)40 b(on)d(the)h(w)m(eb)g(at)g Ft(https:)6
+b(/)g(/)g(pubs)g(.)g(opengrou)o(p)g(.)g(o)o(rg)g(/)f(onl)o(inep)o(ubs)g
+(/)150 2143 y(9799919799/utilities/con)o(tent)o(s.ht)o(ml)p
+Fu(.)275 2278 y(Bash)25 b(is)g(concerned)h(with)f(the)g(asp)s(ects)h
+(of)f(the)h(shell's)g(b)s(eha)m(vior)f(de\014ned)f(b)m(y)h(the)h
+Fm(posix)e Fu(Shell)i(and)150 2387 y(Utilities)35 b(v)m(olume.)49
+b(The)33 b(shell)g(command)f(language)j(has)d(of)i(course)f(b)s(een)f
+(standardized,)h(including)150 2497 y(the)42 b(basic)g(\015o)m(w)g(con)
+m(trol)i(and)d(program)g(execution)i(constructs,)j(I/O)41
+b(redirection)i(and)e(pip)s(elines,)150 2606 y(argumen)m(t)31
+b(handling,)f(v)-5 b(ariable)31 b(expansion,)f(and)g(quoting.)275
+2740 y(The)40 b Fl(sp)-5 b(e)g(cial)52 b Fu(builtins,)44
+b(whic)m(h)d(m)m(ust)g(b)s(e)g(implemen)m(ted)h(as)f(part)g(of)h(the)f
+(shell)g(to)h(pro)m(vide)g(the)150 2850 y(desired)25
+b(functionalit)m(y)-8 b(,)28 b(are)e(sp)s(eci\014ed)f(as)g(b)s(eing)g
+(part)h(of)f(the)h(shell;)h(examples)f(of)g(these)g(are)f
+Ft(eval)g Fu(and)150 2960 y Ft(export)p Fu(.)39 b(Other)28
+b(utilities)i(app)s(ear)f(in)f(the)h(sections)h(of)f(POSIX)f(not)h(dev)
+m(oted)h(to)g(the)f(shell)g(whic)m(h)g(are)150 3069 y(commonly)24
+b(\(and)f(in)g(some)h(cases)g(m)m(ust)f(b)s(e\))g(implemen)m(ted)h(as)f
+(builtin)g(commands,)i(suc)m(h)e(as)g Ft(read)g Fu(and)150
+3179 y Ft(test)p Fu(.)39 b(POSIX)28 b(also)h(sp)s(eci\014es)g(asp)s
+(ects)g(of)g(the)g(shell's)g(in)m(teractiv)m(e)i(b)s(eha)m(vior,)f
+(including)e(job)g(con)m(trol)150 3288 y(and)36 b(command)g(line)h
+(editing.)59 b(Only)36 b(vi-st)m(yle)i(line)f(editing)g(commands)f(ha)m
+(v)m(e)h(b)s(een)f(standardized;)150 3398 y(emacs)31
+b(editing)g(commands)f(w)m(ere)h(left)g(out)g(due)e(to)j(ob)5
+b(jections.)150 3597 y Fk(6.11.2)63 b(Bash)41 b(POSIX)g(Mo)s(de)150
+3743 y Fu(Although)29 b(Bash)g(is)g(an)g(implemen)m(tation)h(of)f(the)g
+Fm(posix)f Fu(shell)h(sp)s(eci\014cation,)i(there)e(are)g(areas)g
+(where)150 3853 y(the)g(Bash)g(default)g(b)s(eha)m(vior)g(di\013ers)f
+(from)g(the)h(sp)s(eci\014cation.)41 b(The)28 b(Bash)h
+Fr(p)s(osix)g(mo)s(de)k Fu(c)m(hanges)d(the)150 3963
+y(Bash)h(b)s(eha)m(vior)f(in)g(these)h(areas)g(so)g(that)g(it)f
+(conforms)h(more)f(closely)i(to)f(the)g(standard.)275
+4097 y(Starting)26 b(Bash)g(with)f(the)h Ft(--posix)e
+Fu(command-line)j(option)f(or)g(executing)h(`)p Ft(set)j(-o)f(posix)p
+Fu(')c(while)150 4206 y(Bash)h(is)g(running)e(will)j(cause)f(Bash)g(to)
+h(conform)f(more)g(closely)h(to)g(the)f Fm(posix)f Fu(standard)g(b)m(y)
+h(c)m(hanging)150 4316 y(the)31 b(b)s(eha)m(vior)f(to)h(matc)m(h)g
+(that)g(sp)s(eci\014ed)f(b)m(y)g Fm(posix)g Fu(in)g(areas)h(where)f
+(the)h(Bash)f(default)h(di\013ers.)275 4450 y(When)f(in)m(v)m(ok)m(ed)h
+(as)g Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e Fu(mo)s(de)h(after)h
+(reading)g(the)f(startup)g(\014les.)275 4584 y(The)f(follo)m(wing)j
+(list)f(is)g(what's)f(c)m(hanged)h(when)e(`)p Fm(posix)h
+Fu(mo)s(de')h(is)f(in)g(e\013ect:)199 4718 y(1.)61 b(Bash)31
+b(ensures)e(that)i(the)f Ft(POSIXLY_CORRECT)d Fu(v)-5
+b(ariable)31 b(is)f(set.)199 4853 y(2.)61 b(Bash)35 b(reads)f(and)h
+(executes)h(the)f Fm(posix)f Fu(startup)g(\014les)h(\()p
+Ft($ENV)p Fu(\))f(rather)h(than)f(the)h(normal)g(Bash)330
+4962 y(\014les)30 b(\(see)i(Section)f(6.2)g([Bash)g(Startup)f(Files],)i
+(page)f(101.)199 5096 y(3.)61 b(Alias)31 b(expansion)g(is)f(alw)m(a)m
+(ys)i(enabled,)e(ev)m(en)i(in)e(non-in)m(teractiv)m(e)j(shells.)199
+5230 y(4.)61 b(Reserv)m(ed)40 b(w)m(ords)g(app)s(earing)f(in)h(a)g(con)
+m(text)i(where)d(reserv)m(ed)h(w)m(ords)f(are)i(recognized)g(do)f(not)
+330 5340 y(undergo)30 b(alias)h(expansion.)p eop end
+%%Page: 116 122
+TeXDict begin 116 121 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(116)199 299 y(5.)61
+b(Alias)45 b(expansion)e(is)h(p)s(erformed)f(when)f(initially)k
+(parsing)d(a)h(command)g(substitution.)80 b(The)330 408
+y(default)37 b(\(non-p)s(osix\))f(mo)s(de)h(generally)h(defers)e(it,)j
+(when)c(enabled,)k(un)m(til)e(the)f(command)h(sub-)330
+518 y(stitution)d(is)g(executed.)51 b(This)33 b(means)h(that)g(command)
+f(substitution)h(will)g(not)g(expand)e(aliases)330 628
+y(that)k(are)f(de\014ned)f(after)h(the)g(command)g(substitution)g(is)g
+(initially)h(parsed)e(\(e.g.,)k(as)e(part)e(of)i(a)330
+737 y(function)30 b(de\014nition\).)199 866 y(6.)61 b(The)35
+b Ft(time)g Fu(reserv)m(ed)g(w)m(ord)h(ma)m(y)g(b)s(e)f(used)g(b)m(y)g
+(itself)h(as)g(a)g(simple)g(command.)56 b(When)35 b(used)g(in)330
+976 y(this)41 b(w)m(a)m(y)-8 b(,)45 b(it)c(displa)m(ys)g(timing)g
+(statistics)i(for)d(the)h(shell)g(and)f(its)h(completed)h(c)m(hildren.)
+71 b(The)330 1085 y Ft(TIMEFORMAT)28 b Fu(v)-5 b(ariable)31
+b(con)m(trols)g(the)g(format)g(of)f(the)h(timing)g(information.)199
+1214 y(7.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
+Ft(time)d Fu(as)i(a)g(reserv)m(ed)f(w)m(ord)g(if)h(the)f(next)h(tok)m
+(en)h(b)s(egins)d(with)i(a)330 1324 y(`)p Ft(-)p Fu('.)199
+1453 y(8.)61 b(When)33 b(parsing)g(and)f(expanding)h(a)h($)p
+Fi({)6 b Fu(.)22 b(.)h(.)11 b Fi(})33 b Fu(expansion)g(that)h(app)s
+(ears)f(within)f(double)h(quotes,)330 1562 y(single)42
+b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f(cannot)i(b)s(e)e
+(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)330 1672
+y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s(erator)f
+(is)g(one)h(of)f(those)h(de\014ned)e(to)i(p)s(erform)e(pattern)330
+1782 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)e(do)g(not)h
+(ha)m(v)m(e)h(to)f(app)s(ear)e(as)i(matc)m(hed)g(pairs.)199
+1910 y(9.)61 b(Redirection)32 b(op)s(erators)f(do)f(not)h(p)s(erform)e
+(\014lename)i(expansion)g(on)g(the)f(w)m(ord)h(in)f(a)h(redirection)330
+2020 y(unless)f(the)g(shell)h(is)f(in)m(teractiv)m(e.)154
+2149 y(10.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s(erform)e
+(w)m(ord)h(splitting)h(on)f(the)h(w)m(ord)f(in)g(a)g(redirection.)154
+2278 y(11.)61 b(F)-8 b(unction)31 b(names)f(ma)m(y)h(not)g(b)s(e)f(the)
+g(same)h(as)g(one)f(of)h(the)f Fm(posix)g Fu(sp)s(ecial)h(builtins.)154
+2407 y(12.)61 b(Tilde)30 b(expansion)g(is)f(only)h(p)s(erformed)f(on)h
+(assignmen)m(ts)g(preceding)g(a)g(command)g(name,)g(rather)330
+2516 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)e(the)h
+(line.)154 2645 y(13.)61 b(While)32 b(v)-5 b(ariable)32
+b(indirection)f(is)g(a)m(v)-5 b(ailable,)34 b(it)d(ma)m(y)h(not)f(b)s
+(e)g(applied)g(to)g(the)h(`)p Ft(#)p Fu(')f(and)f(`)p
+Ft(?)p Fu(')h(sp)s(ecial)330 2755 y(parameters.)154 2884
+y(14.)61 b(Expanding)21 b(the)h(`)p Ft(*)p Fu(')g(sp)s(ecial)h
+(parameter)f(in)g(a)g(pattern)h(con)m(text)g(where)f(the)g(expansion)g
+(is)g(double-)330 2993 y(quoted)31 b(do)s(es)f(not)g(treat)i(the)e
+Ft($*)g Fu(as)h(if)f(it)h(w)m(ere)g(double-quoted.)154
+3122 y(15.)61 b(A)39 b(double)f(quote)i(c)m(haracter)g(\(`)p
+Ft(")p Fu('\))g(is)f(treated)g(sp)s(ecially)h(when)e(it)h(app)s(ears)f
+(in)h(a)g(bac)m(kquoted)330 3232 y(command)24 b(substitution)f(in)h
+(the)g(b)s(o)s(dy)e(of)i(a)g(here-do)s(cumen)m(t)g(that)h(undergo)s(es)
+e(expansion.)38 b(That)330 3342 y(means,)29 b(for)f(example,)i(that)f
+(a)g(bac)m(kslash)g(preceding)f(a)h(double)f(quote)h(c)m(haracter)h
+(will)f(escap)s(e)f(it)330 3451 y(and)i(the)g(bac)m(kslash)h(will)g(b)s
+(e)f(remo)m(v)m(ed.)154 3580 y(16.)61 b(Command)25 b(substitutions)g
+(don't)g(set)h(the)g(`)p Ft(?)p Fu(')g(sp)s(ecial)g(parameter.)40
+b(The)25 b(exit)h(status)g(of)g(a)g(simple)330 3690 y(command)i
+(without)g(a)h(command)f(w)m(ord)f(is)i(still)g(the)f(exit)h(status)g
+(of)f(the)g(last)h(command)f(substi-)330 3799 y(tution)f(that)h(o)s
+(ccurred)e(while)h(ev)-5 b(aluating)28 b(the)g(v)-5 b(ariable)27
+b(assignmen)m(ts)h(and)e(redirections)i(in)e(that)330
+3909 y(command,)h(but)f(that)g(do)s(es)g(not)h(happ)s(en)d(un)m(til)j
+(after)g(all)g(of)f(the)h(assignmen)m(ts)g(and)e(redirections.)154
+4038 y(17.)61 b(Literal)28 b(tildes)g(that)f(app)s(ear)f(as)i(the)f
+(\014rst)f(c)m(haracter)j(in)d(elemen)m(ts)j(of)e(the)g
+Ft(PATH)f Fu(v)-5 b(ariable)27 b(are)h(not)330 4147 y(expanded)i(as)g
+(describ)s(ed)f(ab)s(o)m(v)m(e)j(under)d(Section)i(3.5.2)h([Tilde)f
+(Expansion],)f(page)h(26.)154 4276 y(18.)61 b(Command)31
+b(lo)s(okup)h(\014nds)e Fm(posix)h Fu(sp)s(ecial)i(builtins)f(b)s
+(efore)f(shell)h(functions,)h(including)e(output)330
+4386 y(prin)m(ted)f(b)m(y)g(the)h Ft(type)e Fu(and)h
+Ft(command)e Fu(builtins.)154 4515 y(19.)61 b(Ev)m(en)27
+b(if)h(a)f(shell)h(function)f(whose)g(name)g(con)m(tains)i(a)f(slash)f
+(w)m(as)g(de\014ned)g(b)s(efore)f(en)m(tering)j Fm(posix)330
+4624 y Fu(mo)s(de,)h(the)h(shell)f(will)h(not)g(execute)g(a)g(function)
+f(whose)g(name)h(con)m(tains)g(one)g(or)f(more)h(slashes.)154
+4753 y(20.)61 b(When)28 b(a)i(command)e(in)g(the)h(hash)f(table)i(no)e
+(longer)h(exists,)h(Bash)f(will)g(re-searc)m(h)h Ft($PATH)d
+Fu(to)i(\014nd)330 4863 y(the)i(new)e(lo)s(cation.)43
+b(This)29 b(is)i(also)g(a)m(v)-5 b(ailable)33 b(with)d(`)p
+Ft(shopt)f(-s)h(checkhash)p Fu('.)154 4992 y(21.)61 b(Bash)36
+b(will)g(not)g(insert)g(a)g(command)f(without)h(the)g(execute)h(bit)f
+(set)g(in)m(to)h(the)f(command)g(hash)330 5101 y(table,)c(ev)m(en)f(if)
+f(it)h(returns)e(it)i(as)g(a)f(\(last-ditc)m(h\))j(result)d(from)g(a)h
+Ft($PATH)e Fu(searc)m(h.)154 5230 y(22.)61 b(The)42 b(message)h(prin)m
+(ted)e(b)m(y)h(the)g(job)g(con)m(trol)i(co)s(de)e(and)f(builtins)h
+(when)f(a)h(job)g(exits)h(with)f(a)330 5340 y(non-zero)31
+b(status)g(is)f(`Done\(status\)'.)p eop end
+%%Page: 117 123
+TeXDict begin 117 122 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(117)154 299 y(23.)61
+b(The)40 b(message)h(prin)m(ted)f(b)m(y)g(the)h(job)f(con)m(trol)h(co)s
+(de)g(and)f(builtins)f(when)h(a)g(job)g(is)h(stopp)s(ed)e(is)330
+408 y(`Stopp)s(ed\()p Fr(signame)5 b Fu(\)',)31 b(where)f
+Fr(signame)36 b Fu(is,)31 b(for)f(example,)h Ft(SIGTSTP)p
+Fu(.)154 539 y(24.)61 b(If)35 b(the)h(shell)g(is)g(in)m(teractiv)m(e,)
+41 b(Bash)36 b(do)s(es)f(not)h(p)s(erform)f(job)g(noti\014cations)i(b)s
+(et)m(w)m(een)g(executing)330 648 y(commands)44 b(in)h(lists)g
+(separated)h(b)m(y)e(`)p Ft(;)p Fu(')h(or)g(newline.)84
+b(Non-in)m(teractiv)m(e)48 b(shells)d(prin)m(t)g(status)330
+758 y(messages)31 b(after)g(a)g(foreground)f(job)g(in)g(a)g(list)h
+(completes.)154 888 y(25.)61 b(If)32 b(the)g(shell)g(is)h(in)m
+(teractiv)m(e,)i(Bash)e(w)m(aits)g(un)m(til)f(the)h(next)f(prompt)f(b)s
+(efore)h(prin)m(ting)g(the)h(status)330 998 y(of)f(a)g(bac)m(kground)f
+(job)h(that)g(c)m(hanges)h(status)f(or)g(a)g(foreground)f(job)g(that)h
+(terminates)h(due)e(to)i(a)330 1107 y(signal.)41 b(Non-in)m(teractiv)m
+(e)34 b(shells)d(prin)m(t)f(status)g(messages)i(after)e(a)h(foreground)
+f(job)g(completes.)154 1237 y(26.)61 b(Bash)38 b(p)s(ermanen)m(tly)g
+(remo)m(v)m(es)i(jobs)d(from)h(the)h(jobs)e(table)i(after)g(notifying)g
+(the)f(user)g(of)g(their)330 1347 y(termination)c(via)g(the)f
+Ft(wait)f Fu(or)h Ft(jobs)f Fu(builtins.)49 b(It)33 b(remo)m(v)m(es)i
+(the)e(job)g(from)g(the)g(jobs)g(list)g(after)330 1456
+y(notifying)g(the)f(user)g(of)g(its)g(termination,)i(but)e(the)g
+(status)h(is)f(still)h(a)m(v)-5 b(ailable)34 b(via)f
+Ft(wait)p Fu(,)f(as)g(long)330 1566 y(as)f Ft(wait)e
+Fu(is)h(supplied)f(a)i Fm(pid)f Fu(argumen)m(t.)154 1696
+y(27.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m(ok)m
+(e)i(the)e Ft(vi)g Fu(editor)h(directly)f(when)f(the)i(`)p
+Ft(v)p Fu(')f(command)g(is)g(run,)330 1806 y(instead)e(of)f(c)m(hec)m
+(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 1936
+y(28.)61 b(Prompt)43 b(expansion)g(enables)g(the)h Fm(posix)e
+Ft(PS1)g Fu(and)h Ft(PS2)f Fu(expansions)h(of)g(`)p Ft(!)p
+Fu(')h(to)g(the)f(history)330 2045 y(n)m(um)m(b)s(er)31
+b(and)h(`)p Ft(!!)p Fu(')h(to)g(`)p Ft(!)p Fu(',)g(and)f(Bash)h(p)s
+(erforms)e(parameter)i(expansion)f(on)h(the)f(v)-5 b(alues)33
+b(of)g Ft(PS1)330 2155 y Fu(and)d Ft(PS2)f Fu(regardless)i(of)f(the)h
+(setting)h(of)e(the)h Ft(promptvars)c Fu(option.)154
+2285 y(29.)61 b(The)29 b(default)g(history)g(\014le)g(is)g
+Ft(~/.sh_history)d Fu(\(this)j(is)g(the)g(default)h(v)-5
+b(alue)29 b(the)h(shell)f(assigns)g(to)330 2395 y Ft($HISTFILE)p
+Fu(\).)154 2525 y(30.)61 b(The)30 b(`)p Ft(!)p Fu(')h(c)m(haracter)h
+(do)s(es)e(not)h(in)m(tro)s(duce)g(history)f(expansion)h(within)f(a)h
+(double-quoted)g(string,)330 2634 y(ev)m(en)g(if)f(the)h
+Ft(histexpand)d Fu(option)i(is)h(enabled.)154 2765 y(31.)61
+b(When)48 b(prin)m(ting)g(shell)h(function)f(de\014nitions)g(\(e.g.,)55
+b(b)m(y)48 b Ft(type)p Fu(\),)k(Bash)d(do)s(es)f(not)h(prin)m(t)f(the)
+330 2874 y Ft(function)28 b Fu(k)m(eyw)m(ord)j(unless)f(necessary)-8
+b(.)154 3004 y(32.)61 b(Non-in)m(teractiv)m(e)41 b(shells)d(exit)h(if)f
+(a)g(syn)m(tax)g(error)g(in)f(an)h(arithmetic)h(expansion)f(results)f
+(in)h(an)330 3114 y(in)m(v)-5 b(alid)31 b(expression.)154
+3244 y(33.)61 b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g(a)f
+(parameter)h(expansion)g(error)f(o)s(ccurs.)154 3374
+y(34.)61 b(If)24 b(a)g Fm(posix)g Fu(sp)s(ecial)h(builtin)f(returns)f
+(an)h(error)g(status,)i(a)e(non-in)m(teractiv)m(e)j(shell)e(exits.)39
+b(The)24 b(fatal)330 3484 y(errors)30 b(are)h(those)f(listed)h(in)f
+(the)h Fm(posix)e Fu(standard,)h(and)g(include)g(things)g(lik)m(e)i
+(passing)e(incorrect)330 3593 y(options,)43 b(redirection)d(errors,)i
+(v)-5 b(ariable)41 b(assignmen)m(t)g(errors)e(for)g(assignmen)m(ts)i
+(preceding)f(the)330 3703 y(command)30 b(name,)h(and)f(so)g(on.)154
+3833 y(35.)61 b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e
+(an)h(error)g(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g
+(error)e(o)s(ccurs)330 3943 y(when)38 b(no)h(command)g(name)g(follo)m
+(ws)i(the)e(assignmen)m(t)h(statemen)m(ts.)69 b(A)39
+b(v)-5 b(ariable)40 b(assignmen)m(t)330 4052 y(error)30
+b(o)s(ccurs,)g(for)g(example,)i(when)d(trying)i(to)g(assign)f(a)h(v)-5
+b(alue)31 b(to)g(a)g(readonly)f(v)-5 b(ariable.)154 4182
+y(36.)61 b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e(an)h
+(error)g(status)g(if)g(a)g(v)-5 b(ariable)32 b(assignmen)m(t)g(error)e
+(o)s(ccurs)330 4292 y(in)g(an)g(assignmen)m(t)i(statemen)m(t)g
+(preceding)e(a)h(sp)s(ecial)g(builtin,)f(but)g(not)g(with)h(an)m(y)f
+(other)h(simple)330 4402 y(command.)38 b(F)-8 b(or)23
+b(an)m(y)g(other)g(simple)g(command,)h(the)f(shell)g(ab)s(orts)f
+(execution)i(of)f(that)g(command,)330 4511 y(and)44 b(execution)i(con)m
+(tin)m(ues)g(at)g(the)f(top)g(lev)m(el)h(\()p Ft(")p
+Fu(the)f(shell)h(shall)f(not)g(p)s(erform)e(an)m(y)i(further)330
+4621 y(pro)s(cessing)30 b(of)h(the)f(command)g(in)g(whic)m(h)h(the)f
+(error)g(o)s(ccurred)p Ft(")p Fu(\).)154 4751 y(37.)61
+b(A)43 b(non-in)m(teractiv)m(e)i(shell)e(exits)h(with)f(an)f(error)h
+(status)g(if)g(the)g(iteration)h(v)-5 b(ariable)44 b(in)f(a)g
+Ft(for)330 4861 y Fu(statemen)m(t)30 b(or)f(the)g(selection)h(v)-5
+b(ariable)30 b(in)e(a)h Ft(select)e Fu(statemen)m(t)k(is)d(a)h
+(readonly)g(v)-5 b(ariable)30 b(or)e(has)330 4970 y(an)i(in)m(v)-5
+b(alid)31 b(name.)154 5100 y(38.)61 b(Non-in)m(teractiv)m(e)34
+b(shells)c(exit)h(if)g Fr(\014lename)k Fu(in)30 b Ft(.)g
+Fr(\014lename)36 b Fu(is)31 b(not)f(found.)154 5230 y(39.)61
+b(Non-in)m(teractiv)m(e)27 b(shells)c(exit)i(if)e(there)h(is)f(a)h(syn)
+m(tax)g(error)f(in)g(a)h(script)f(read)g(with)h(the)f
+Ft(.)g Fu(or)h Ft(source)330 5340 y Fu(builtins,)30 b(or)g(in)g(a)h
+(string)g(pro)s(cessed)e(b)m(y)i(the)f Ft(eval)f Fu(builtin.)p
+eop end
+%%Page: 118 124
+TeXDict begin 118 123 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(118)154 299 y(40.)61
+b(Non-in)m(teractiv)m(e)33 b(shells)d(exit)g(if)g(the)f
+Ft(export)p Fu(,)g Ft(readonly)e Fu(or)j Ft(unset)e Fu(builtin)h
+(commands)g(get)i(an)330 408 y(argumen)m(t)j(that)f(is)g(not)h(a)f(v)-5
+b(alid)34 b(iden)m(ti\014er,)g(and)e(they)i(are)f(not)g(op)s(erating)h
+(on)f(shell)g(functions.)330 518 y(These)d(errors)g(force)h(an)f(exit)h
+(b)s(ecause)g(these)g(are)f(sp)s(ecial)h(builtins.)154
+653 y(41.)61 b(Assignmen)m(t)23 b(statemen)m(ts)h(preceding)e
+Fm(posix)f Fu(sp)s(ecial)i(builtins)f(p)s(ersist)g(in)f(the)i(shell)f
+(en)m(vironmen)m(t)330 763 y(after)31 b(the)f(builtin)g(completes.)154
+898 y(42.)61 b(The)31 b Ft(command)e Fu(builtin)i(do)s(es)g(not)h(prev)
+m(en)m(t)f(builtins)g(that)h(tak)m(e)h(assignmen)m(t)f(statemen)m(ts)h
+(as)f(ar-)330 1008 y(gumen)m(ts)40 b(from)e(expanding)h(them)g(as)h
+(assignmen)m(t)g(statemen)m(ts;)46 b(when)38 b(not)i(in)f
+Fm(posix)f Fu(mo)s(de,)330 1118 y(declaration)29 b(commands)d(lose)i
+(their)g(assignmen)m(t)g(statemen)m(t)h(expansion)e(prop)s(erties)f
+(when)g(pre-)330 1227 y(ceded)31 b(b)m(y)f Ft(command)p
+Fu(.)154 1363 y(43.)61 b(Enabling)21 b Fm(posix)g Fu(mo)s(de)g(has)g
+(the)g(e\013ect)i(of)e(setting)i(the)e Ft(inherit_errexit)d
+Fu(option,)23 b(so)f(subshells)330 1472 y(spa)m(wned)27
+b(to)i(execute)g(command)e(substitutions)h(inherit)f(the)h(v)-5
+b(alue)28 b(of)g(the)g Ft(-e)f Fu(option)h(from)g(the)330
+1582 y(paren)m(t)37 b(shell.)62 b(When)37 b(the)g Ft(inherit_errexit)c
+Fu(option)38 b(is)f(not)h(enabled,)h(Bash)e(clears)h(the)g
+Ft(-e)330 1691 y Fu(option)31 b(in)f(suc)m(h)g(subshells.)154
+1827 y(44.)61 b(Enabling)32 b Fm(posix)f Fu(mo)s(de)h(has)g(the)h
+(e\013ect)g(of)g(setting)g(the)g Ft(shift_verbose)28
+b Fu(option,)34 b(so)e(n)m(umeric)330 1936 y(argumen)m(ts)f(to)g
+Ft(shift)f Fu(that)h(exceed)h(the)e(n)m(um)m(b)s(er)g(of)h(p)s
+(ositional)g(parameters)g(will)g(result)g(in)f(an)330
+2046 y(error)g(message.)154 2181 y(45.)61 b(Enabling)29
+b Fm(posix)g Fu(mo)s(de)g(has)g(the)h(e\013ect)h(of)e(setting)i(the)e
+Ft(interactive_comments)24 b Fu(option)30 b(\(see)330
+2291 y(Section)h(3.1.3)h([Commen)m(ts],)g(page)f(9\).)154
+2426 y(46.)61 b(The)21 b Ft(.)h Fu(and)f Ft(source)f
+Fu(builtins)h(do)g(not)h(searc)m(h)h(the)f(curren)m(t)f(directory)h
+(for)g(the)g(\014lename)f(argumen)m(t)330 2536 y(if)30
+b(it)h(is)g(not)f(found)f(b)m(y)i(searc)m(hing)g Ft(PATH)p
+Fu(.)154 2671 y(47.)61 b(When)43 b(the)g Ft(alias)f Fu(builtin)g
+(displa)m(ys)i(alias)g(de\014nitions,)i(it)d(do)s(es)g(not)g(displa)m
+(y)h(them)f(with)g(a)330 2781 y(leading)31 b(`)p Ft(alias)e
+Fu(')i(unless)f(the)g Ft(-p)g Fu(option)h(is)f(supplied.)154
+2916 y(48.)61 b(The)27 b Ft(bg)g Fu(builtin)g(uses)g(the)h(required)f
+(format)h(to)g(describ)s(e)f(eac)m(h)i(job)e(placed)h(in)f(the)h(bac)m
+(kground,)330 3026 y(whic)m(h)h(do)s(es)g(not)g(include)g(an)g
+(indication)h(of)f(whether)f(the)h(job)g(is)g(the)h(curren)m(t)e(or)h
+(previous)g(job.)154 3161 y(49.)61 b(When)35 b(the)h
+Ft(cd)e Fu(builtin)h(is)h(in)m(v)m(ok)m(ed)g(in)f(logical)j(mo)s(de,)e
+(and)f(the)h(pathname)f(constructed)g(from)330 3271 y
+Ft($PWD)i Fu(and)h(the)h(directory)f(name)h(supplied)e(as)i(an)f
+(argumen)m(t)h(do)s(es)f(not)g(refer)h(to)g(an)f(existing)330
+3380 y(directory)-8 b(,)32 b Ft(cd)d Fu(will)i(fail)g(instead)g(of)f
+(falling)h(bac)m(k)h(to)f(ph)m(ysical)g(mo)s(de.)154
+3516 y(50.)61 b(When)37 b(the)h Ft(cd)f Fu(builtin)g(cannot)h(c)m
+(hange)h(a)f(directory)g(b)s(ecause)g(the)g(length)g(of)f(the)h
+(pathname)330 3625 y(constructed)27 b(from)g Ft($PWD)f
+Fu(and)h(the)g(directory)h(name)f(supplied)f(as)i(an)f(argumen)m(t)g
+(exceeds)h Ft(PATH_)330 3735 y(MAX)h Fu(when)h(canonicalized,)j
+Ft(cd)c Fu(will)i(attempt)h(to)f(use)f(the)g(supplied)f(directory)i
+(name.)154 3870 y(51.)61 b(When)41 b(the)g Ft(xpg_echo)e
+Fu(option)i(is)g(enabled,)j(Bash)d(do)s(es)g(not)g(attempt)h(to)g(in)m
+(terpret)f(an)m(y)h(ar-)330 3980 y(gumen)m(ts)i(to)g
+Ft(echo)e Fu(as)i(options.)81 b Ft(echo)42 b Fu(displa)m(ys)h(eac)m(h)i
+(argumen)m(t)f(after)g(con)m(v)m(erting)h(escap)s(e)330
+4089 y(sequences.)154 4225 y(52.)61 b(The)38 b Ft(export)f
+Fu(and)g Ft(readonly)f Fu(builtin)i(commands)g(displa)m(y)h(their)f
+(output)g(in)g(the)h(format)g(re-)330 4334 y(quired)30
+b(b)m(y)g Fm(posix)p Fu(.)154 4470 y(53.)61 b(When)35
+b(listing)g(the)g(history)-8 b(,)36 b(the)f Ft(fc)g Fu(builtin)f(do)s
+(es)g(not)h(include)g(an)f(indication)i(of)f(whether)f(or)330
+4579 y(not)d(a)f(history)h(en)m(try)f(has)g(b)s(een)g(mo)s(di\014ed.)
+154 4715 y(54.)61 b(The)30 b(default)g(editor)h(used)f(b)m(y)g
+Ft(fc)g Fu(is)g Ft(ed)p Fu(.)154 4850 y(55.)61 b Ft(fc)30
+b Fu(treats)h(extra)g(argumen)m(ts)g(as)f(an)h(error)f(instead)g(of)h
+(ignoring)g(them.)154 4985 y(56.)61 b(If)38 b(there)h(are)g(to)s(o)g
+(man)m(y)g(argumen)m(ts)g(supplied)e(to)i Ft(fc)30 b(-s)p
+Fu(,)40 b Ft(fc)e Fu(prin)m(ts)g(an)h(error)f(message)i(and)330
+5095 y(returns)29 b(failure.)154 5230 y(57.)61 b(The)23
+b(output)f(of)i(`)p Ft(kill)29 b(-l)p Fu(')23 b(prin)m(ts)f(all)i(the)g
+(signal)f(names)g(on)g(a)h(single)g(line,)h(separated)e(b)m(y)g
+(spaces,)330 5340 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)p
+eop end
+%%Page: 119 125
+TeXDict begin 119 124 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(119)154 299 y(58.)61
+b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h(accept)h(signal)f
+(names)f(with)g(a)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
+436 y(59.)61 b(The)33 b Ft(printf)f Fu(builtin)i(uses)f
+Ft(double)f Fu(\(via)j Ft(strtod)p Fu(\))d(to)j(con)m(v)m(ert)g
+(argumen)m(ts)f(corresp)s(onding)f(to)330 545 y(\015oating)40
+b(p)s(oin)m(t)f(con)m(v)m(ersion)h(sp)s(eci\014ers,)h(instead)e(of)g
+Ft(long)29 b(double)38 b Fu(if)h(it's)g(a)m(v)-5 b(ailable.)69
+b(The)39 b(`)p Ft(L)p Fu(')330 655 y(length)31 b(mo)s(di\014er)e
+(forces)i Ft(printf)e Fu(to)i(use)f Ft(long)f(double)g
+Fu(if)h(it's)h(a)m(v)-5 b(ailable.)154 792 y(60.)61 b(The)36
+b Ft(pwd)f Fu(builtin)h(v)m(eri\014es)h(that)g(the)f(v)-5
+b(alue)37 b(it)g(prin)m(ts)e(is)i(the)f(same)h(as)f(the)h(curren)m(t)f
+(directory)-8 b(,)330 902 y(ev)m(en)31 b(if)f(it)h(is)g(not)f(ask)m(ed)
+h(to)g(c)m(hec)m(k)h(the)f(\014le)f(system)h(with)f(the)h
+Ft(-P)e Fu(option.)154 1039 y(61.)61 b(The)27 b Ft(read)f
+Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m(terrupted)h(b)m(y)g(a)h(signal)f
+(for)g(whic)m(h)g(a)h(trap)f(has)g(b)s(een)f(set.)40
+b(If)27 b(Bash)330 1148 y(receiv)m(es)41 b(a)f(trapp)s(ed)e(signal)i
+(while)f(executing)h Ft(read)p Fu(,)h(the)e(trap)h(handler)e(executes)i
+(and)f Ft(read)330 1258 y Fu(returns)29 b(an)h(exit)i(status)e(greater)
+i(than)e(128.)154 1395 y(62.)61 b(When)40 b(the)g Ft(set)f
+Fu(builtin)h(is)g(in)m(v)m(ok)m(ed)h(without)f(options,)j(it)e(do)s(es)
+f(not)g(displa)m(y)g(shell)g(function)330 1504 y(names)30
+b(and)g(de\014nitions.)154 1641 y(63.)61 b(When)36 b(the)g
+Ft(set)g Fu(builtin)g(is)g(in)m(v)m(ok)m(ed)i(without)e(options,)i(it)f
+(displa)m(ys)f(v)-5 b(ariable)37 b(v)-5 b(alues)37 b(without)330
+1751 y(quotes,)26 b(unless)d(they)i(con)m(tain)g(shell)f(metac)m
+(haracters,)k(ev)m(en)d(if)f(the)g(result)g(con)m(tains)i(nonprin)m
+(ting)330 1861 y(c)m(haracters.)154 1998 y(64.)61 b(The)26
+b Ft(test)g Fu(builtin)g(compares)h(strings)g(using)f(the)h(curren)m(t)
+g(lo)s(cale)h(when)e(ev)-5 b(aluating)29 b(the)e(`)p
+Ft(<)p Fu(')g(and)330 2107 y(`)p Ft(>)p Fu(')k(binary)e(op)s(erators.)
+154 2244 y(65.)61 b(The)27 b Ft(test)f Fu(builtin's)g
+Ft(-t)h Fu(unary)f(primary)g(requires)h(an)g(argumen)m(t.)40
+b(Historical)29 b(v)m(ersions)f(of)f Ft(test)330 2354
+y Fu(made)c(the)h(argumen)m(t)g(optional)h(in)e(certain)h(cases,)i(and)
+d(Bash)h(attempts)g(to)g(accommo)s(date)h(those)330 2463
+y(for)30 b(bac)m(kw)m(ards)h(compatibilit)m(y)-8 b(.)154
+2600 y(66.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g(signal)i
+(names)e(without)g(the)h(leading)g Ft(SIG)p Fu(.)154
+2737 y(67.)61 b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g(c)m(hec)m
+(k)h(the)g(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e(signal)i(sp)
+s(eci\014cation)330 2847 y(and)30 b(rev)m(ert)i(the)e(signal)i
+(handling)e(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g(is,)g
+(unless)f(that)h(argumen)m(t)330 2956 y(consists)e(solely)g(of)g
+(digits)g(and)f(is)g(a)h(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38
+b(If)28 b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
+3066 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
+(osition,)f(they)g(should)f(use)h(`)p Ft(-)p Fu(')g(as)g(the)g(\014rst)
+f(argumen)m(t.)154 3203 y(68.)61 b Ft(trap)29 b(-p)24
+b Fu(without)g(argumen)m(ts)g(displa)m(ys)g(signals)g(whose)g(disp)s
+(ositions)g(are)g(set)h(to)f(SIG)p 3360 3203 28 4 v 40
+w(DFL)h(and)330 3313 y(those)31 b(that)g(w)m(ere)g(ignored)f(when)g
+(the)g(shell)h(started,)g(not)f(just)g(trapp)s(ed)f(signals.)154
+3450 y(69.)61 b(The)37 b Ft(type)g Fu(and)g Ft(command)f
+Fu(builtins)i(will)g(not)g(rep)s(ort)f(a)i(non-executable)g(\014le)f
+(as)g(ha)m(ving)h(b)s(een)330 3559 y(found,)26 b(though)h(the)g(shell)g
+(will)g(attempt)h(to)g(execute)g(suc)m(h)f(a)g(\014le)g(if)g(it)g(is)g
+(the)g(only)g(so-named)g(\014le)330 3669 y(found)i(in)h
+Ft($PATH)p Fu(.)154 3806 y(70.)61 b(The)30 b Ft(ulimit)f
+Fu(builtin)g(uses)h(a)h(blo)s(c)m(k)g(size)g(of)g(512)g(b)m(ytes)g(for)
+f(the)h Ft(-c)f Fu(and)g Ft(-f)f Fu(options.)154 3943
+y(71.)61 b(The)35 b Ft(unset)e Fu(builtin)i(with)g(the)g
+Ft(-v)f Fu(option)i(sp)s(eci\014ed)e(returns)g(a)i(fatal)g(error)f(if)g
+(it)g(attempts)h(to)330 4052 y(unset)29 b(a)g Ft(readonly)e
+Fu(or)i Ft(non-unsettable)c Fu(v)-5 b(ariable,)30 b(whic)m(h)f(causes)h
+(a)f(non-in)m(teractiv)m(e)j(shell)d(to)330 4162 y(exit.)154
+4299 y(72.)61 b(When)39 b(ask)m(ed)g(to)g(unset)g(a)g(v)-5
+b(ariable)39 b(that)h(app)s(ears)e(in)g(an)h(assignmen)m(t)g(statemen)m
+(t)i(preceding)330 4408 y(the)30 b(command,)f(the)h Ft(unset)e
+Fu(builtin)h(attempts)i(to)f(unset)f(a)h(v)-5 b(ariable)31
+b(of)e(the)h(same)g(name)g(in)f(the)330 4518 y(curren)m(t)24
+b(or)g(previous)g(scop)s(e)g(as)g(w)m(ell.)40 b(This)23
+b(implemen)m(ts)i(the)f(required)f Ft(")p Fu(if)h(an)g(assigned)g(v)-5
+b(ariable)330 4628 y(is)34 b(further)e(mo)s(di\014ed)g(b)m(y)i(the)g
+(utilit)m(y)-8 b(,)36 b(the)e(mo)s(di\014cations)g(made)g(b)m(y)f(the)h
+(utilit)m(y)h(shall)f(p)s(ersist)p Ft(")330 4737 y Fu(b)s(eha)m(vior.)
+154 4874 y(73.)61 b(The)39 b(arriv)-5 b(al)41 b(of)f
+Ft(SIGCHLD)e Fu(when)h(a)h(trap)g(is)g(set)h(on)f Ft(SIGCHLD)e
+Fu(do)s(es)h(not)h(in)m(terrupt)g(the)g Ft(wait)330 4984
+y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f(immediately)-8
+b(.)62 b(The)37 b(trap)f(command)h(is)g(run)e(once)j(for)f(eac)m(h)330
+5093 y(c)m(hild)31 b(that)g(exits.)154 5230 y(74.)61
+b(Bash)27 b(remo)m(v)m(es)h(an)e(exited)i(bac)m(kground)e(pro)s(cess's)
+h(status)g(from)f(the)h(list)g(of)g(suc)m(h)f(statuses)h(after)330
+5340 y(the)k Ft(wait)e Fu(builtin)h(returns)f(it.)p eop
+end
+%%Page: 120 126
+TeXDict begin 120 125 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(120)275 299 y(There)34
+b(is)g(other)h Fm(posix)f Fu(b)s(eha)m(vior)h(that)g(Bash)g(do)s(es)f
+(not)h(implemen)m(t)g(b)m(y)g(default)f(ev)m(en)i(when)d(in)150
+408 y Fm(posix)d Fu(mo)s(de.)40 b(Sp)s(eci\014cally:)199
+540 y(1.)61 b(The)30 b Ft(fc)f Fu(builtin)h(c)m(hec)m(ks)i
+Ft($EDITOR)c Fu(as)j(a)f(program)g(to)h(edit)g(history)f(en)m(tries)h
+(if)f Ft(FCEDIT)f Fu(is)h(unset,)330 650 y(rather)g(than)g(defaulting)h
+(directly)g(to)g Ft(ed)p Fu(.)40 b Ft(fc)30 b Fu(uses)g
+Ft(ed)g Fu(if)g Ft(EDITOR)f Fu(is)h(unset.)199 781 y(2.)61
+b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i(Bash)e(requires)g(the)g
+Ft(xpg_echo)e Fu(option)j(to)g(b)s(e)e(enabled)h(for)g(the)g
+Ft(echo)f Fu(builtin)330 891 y(to)j(b)s(e)f(fully)g(conforman)m(t.)275
+1044 y(Bash)c(can)g(b)s(e)f(con\014gured)h(to)g(b)s(e)g
+Fm(posix)p Fu(-conforman)m(t)g(b)m(y)g(default,)h(b)m(y)f(sp)s
+(ecifying)g(the)g Ft(--enable-)150 1154 y(strict-posix-default)c
+Fu(to)27 b Ft(configure)e Fu(when)h(building)h(\(see)h(Section)g(10.8)g
+([Optional)g(F)-8 b(eatures],)150 1263 y(page)31 b(176\).)150
+1498 y Fs(6.12)68 b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150
+1658 y Fu(Bash-4.0)33 b(in)m(tro)s(duced)f(the)f(concept)i(of)f(a)g
+Fr(shell)g(compatibilit)m(y)i(lev)m(el)p Fu(,)g(sp)s(eci\014ed)d(as)h
+(a)g(set)h(of)f(options)150 1767 y(to)f(the)f(shopt)g(builtin)g(\()p
+Ft(compat31)p Fu(,)e Ft(compat32)p Fu(,)h Ft(compat40)p
+Fu(,)f Ft(compat41)p Fu(,)g(and)i(so)g(on\).)41 b(There)30
+b(is)g(only)150 1877 y(one)f(curren)m(t)f(compatibilit)m(y)j(lev)m(el)f
+({)f(eac)m(h)h(option)f(is)g(m)m(utually)g(exclusiv)m(e.)41
+b(The)28 b(compatibilit)m(y)j(lev)m(el)150 1986 y(is)39
+b(in)m(tended)g(to)h(allo)m(w)g(users)e(to)i(select)h(b)s(eha)m(vior)e
+(from)f(previous)h(v)m(ersions)g(that)h(is)f(incompatible)150
+2096 y(with)d(new)m(er)g(v)m(ersions)g(while)g(they)g(migrate)h
+(scripts)f(to)h(use)f(curren)m(t)f(features)i(and)e(b)s(eha)m(vior.)58
+b(It's)150 2206 y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f
+(solution.)275 2337 y(This)k(section)j(do)s(es)e(not)h(men)m(tion)g(b)s
+(eha)m(vior)g(that)g(is)f(standard)g(for)g(a)h(particular)g(v)m(ersion)
+g(\(e.g.,)150 2447 y(setting)d Ft(compat32)c Fu(means)i(that)h(quoting)
+g(the)g(righ)m(t)g(hand)e(side)h(of)h(the)f(regexp)h(matc)m(hing)h(op)s
+(erator)150 2556 y(quotes)42 b(sp)s(ecial)f(regexp)h(c)m(haracters)g
+(in)f(the)g(w)m(ord,)j(whic)m(h)c(is)i(default)f(b)s(eha)m(vior)g(in)g
+(bash-3.2)h(and)150 2666 y(subsequen)m(t)30 b(v)m(ersions\).)275
+2797 y(If)f(a)h(user)f(enables,)h(sa)m(y)-8 b(,)31 b
+Ft(compat32)p Fu(,)d(it)i(ma)m(y)g(a\013ect)h(the)f(b)s(eha)m(vior)g
+(of)g(other)g(compatibilit)m(y)h(lev)m(els)150 2907 y(up)23
+b(to)h(and)f(including)h(the)g(curren)m(t)f(compatibilit)m(y)j(lev)m
+(el.)41 b(The)23 b(idea)h(is)g(that)g(eac)m(h)h(compatibilit)m(y)h(lev)
+m(el)150 3017 y(con)m(trols)35 b(b)s(eha)m(vior)f(that)g(c)m(hanged)g
+(in)f(that)h(v)m(ersion)g(of)g(Bash,)h(but)e(that)h(b)s(eha)m(vior)g
+(ma)m(y)g(ha)m(v)m(e)h(b)s(een)150 3126 y(presen)m(t)f(in)g(earlier)g
+(v)m(ersions.)52 b(F)-8 b(or)35 b(instance,)g(the)f(c)m(hange)h(to)g
+(use)f(lo)s(cale-based)h(comparisons)f(with)150 3236
+y(the)e Ft([[)f Fu(command)g(came)h(in)g(bash-4.1,)h(and)d(earlier)j(v)
+m(ersions)f(used)f(ASCI)s(I-based)f(comparisons,)i(so)150
+3345 y(enabling)27 b Ft(compat32)e Fu(will)i(enable)g(ASCI)s(I-based)e
+(comparisons)i(as)g(w)m(ell.)41 b(That)26 b(gran)m(ularit)m(y)i(ma)m(y)
+g(not)150 3455 y(b)s(e)i(su\016cien)m(t)i(for)f(all)g(uses,)g(and)g(as)
+g(a)g(result)g(users)f(should)g(emplo)m(y)i(compatibilit)m(y)h(lev)m
+(els)g(carefully)-8 b(.)150 3564 y(Read)31 b(the)f(do)s(cumen)m(tation)
+h(for)g(a)f(particular)h(feature)g(to)g(\014nd)e(out)h(the)h(curren)m
+(t)f(b)s(eha)m(vior.)275 3696 y(Bash-4.3)44 b(in)m(tro)s(duced)e(a)h
+(new)f(shell)h(v)-5 b(ariable:)65 b Ft(BASH_COMPAT)p
+Fu(.)75 b(The)42 b(v)-5 b(alue)43 b(assigned)g(to)g(this)150
+3806 y(v)-5 b(ariable)32 b(\(a)g(decimal)h(v)m(ersion)e(n)m(um)m(b)s
+(er)f(lik)m(e)j(4.2,)g(or)e(an)h(in)m(teger)g(corresp)s(onding)f(to)h
+(the)f Ft(compat)p Fr(NN)150 3915 y Fu(option,)g(lik)m(e)h(42\))f
+(determines)g(the)f(compatibilit)m(y)j(lev)m(el.)275
+4047 y(Starting)h(with)g(bash-4.4,)i(Bash)f(b)s(egan)f(deprecating)h
+(older)f(compatibilit)m(y)j(lev)m(els.)54 b(Ev)m(en)m(tually)-8
+b(,)150 4156 y(the)31 b(options)f(will)h(b)s(e)f(remo)m(v)m(ed)h(in)f
+(fa)m(v)m(or)i(of)e Ft(BASH_COMPAT)p Fu(.)275 4288 y(Bash-5.0)39
+b(w)m(as)f(the)g(\014nal)g(v)m(ersion)g(for)g(whic)m(h)f(there)h(w)m
+(as)g(an)g(individual)f(shopt)h(option)g(for)g(the)150
+4397 y(previous)31 b(v)m(ersion.)43 b Ft(BASH_COMPAT)29
+b Fu(is)i(the)g(only)g(mec)m(hanism)h(to)g(con)m(trol)h(the)e
+(compatibilit)m(y)i(lev)m(el)g(in)150 4507 y(v)m(ersions)e(new)m(er)f
+(than)g(bash-5.0.)275 4639 y(The)24 b(follo)m(wing)i(table)g(describ)s
+(es)e(the)i(b)s(eha)m(vior)f(c)m(hanges)h(con)m(trolled)g(b)m(y)f(eac)m
+(h)h(compatibilit)m(y)h(lev)m(el)150 4748 y(setting.)43
+b(The)30 b Ft(compat)p Fr(NN)39 b Fu(tag)32 b(is)f(used)f(as)h
+(shorthand)e(for)h(setting)i(the)f(compatibilit)m(y)i(lev)m(el)f(to)g
+Fr(NN)150 4858 y Fu(using)37 b(one)h(of)g(the)g(follo)m(wing)h(mec)m
+(hanisms.)63 b(F)-8 b(or)39 b(v)m(ersions)f(prior)f(to)h(bash-5.0,)j
+(the)d(compatibilit)m(y)150 4967 y(lev)m(el)d(ma)m(y)f(b)s(e)e(set)i
+(using)e(the)i(corresp)s(onding)e Ft(compat)p Fr(NN)41
+b Fu(shopt)33 b(option.)50 b(F)-8 b(or)34 b(bash-4.3)f(and)g(later)150
+5077 y(v)m(ersions,)40 b(the)e Ft(BASH_COMPAT)d Fu(v)-5
+b(ariable)39 b(is)e(preferred,)i(and)e(it)i(is)f(required)f(for)g
+(bash-5.1)i(and)e(later)150 5187 y(v)m(ersions.)150 5340
+y Ft(compat31)p eop end
+%%Page: 121 127
+TeXDict begin 121 126 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(121)705 299 y Fq(\017)60
+b Fu(Quoting)32 b(the)f(rhs)g(of)g(the)h Ft([[)e Fu(command's)i(regexp)
+f(matc)m(hing)i(op)s(erator)f(\(=)p Ft(~)p Fu(\))f(has)810
+408 y(no)f(sp)s(ecial)h(e\013ect)150 558 y Ft(compat40)705
+687 y Fq(\017)60 b Fu(The)32 b(`)p Ft(<)p Fu(')g(and)g(`)p
+Ft(>)p Fu(')g(op)s(erators)h(to)g(the)f Ft([[)g Fu(command)g(do)g(not)g
+(consider)h(the)f(curren)m(t)810 797 y(lo)s(cale)41 b(when)d(comparing)
+i(strings;)k(they)c(use)f(ASCI)s(I)f(ordering.)67 b(Bash)40
+b(v)m(ersions)810 907 y(prior)f(to)i(bash-4.1)f(use)g(ASCI)s(I)e
+(collation)k(and)d(strcmp\(3\);)45 b(bash-4.1)c(and)e(later)810
+1016 y(use)30 b(the)h(curren)m(t)f(lo)s(cale's)i(collation)h(sequence)d
+(and)g(strcoll\(3\).)150 1166 y Ft(compat41)705 1295
+y Fq(\017)60 b Fu(In)28 b(p)s(osix)g(mo)s(de,)h Ft(time)e
+Fu(ma)m(y)i(b)s(e)f(follo)m(w)m(ed)i(b)m(y)f(options)g(and)e(still)j(b)
+s(e)e(recognized)i(as)810 1405 y(a)h(reserv)m(ed)f(w)m(ord)g(\(this)h
+(is)f Fm(posix)g Fu(in)m(terpretation)i(267\).)705 1534
+y Fq(\017)60 b Fu(In)36 b(p)s(osix)f(mo)s(de,)j(the)e(parser)g
+(requires)g(that)h(an)f(ev)m(en)h(n)m(um)m(b)s(er)e(of)h(single)h
+(quotes)810 1644 y(o)s(ccur)28 b(in)g(the)h Fr(w)m(ord)i
+Fu(p)s(ortion)d(of)h(a)g(double-quoted)f($)p Fi({)6 b
+Fu(.)23 b(.)f(.)11 b Fi(})29 b Fu(parameter)g(expansion)810
+1753 y(and)34 b(treats)h(them)f(sp)s(ecially)-8 b(,)37
+b(so)e(that)g(c)m(haracters)g(within)f(the)h(single)g(quotes)g(are)810
+1863 y(considered)30 b(quoted)h(\(this)f(is)h Fm(posix)e
+Fu(in)m(terpretation)j(221\).)150 2012 y Ft(compat42)705
+2142 y Fq(\017)60 b Fu(The)45 b(replacemen)m(t)i(string)f(in)f
+(double-quoted)h(pattern)f(substitution)g(do)s(es)h(not)810
+2252 y(undergo)30 b(quote)h(remo)m(v)-5 b(al,)32 b(as)e(it)h(do)s(es)f
+(in)g(v)m(ersions)h(after)g(bash-4.2.)705 2381 y Fq(\017)60
+b Fu(In)38 b(p)s(osix)g(mo)s(de,)j(single)e(quotes)h(are)f(considered)f
+(sp)s(ecial)i(when)d(expanding)i(the)810 2491 y Fr(w)m(ord)d
+Fu(p)s(ortion)c(of)g(a)h(double-quoted)g($)p Fi({)6 b
+Fu(.)22 b(.)h(.)11 b Fi(})33 b Fu(parameter)g(expansion)f(and)g(can)h
+(b)s(e)810 2600 y(used)40 b(to)i(quote)g(a)f(closing)h(brace)f(or)g
+(other)h(sp)s(ecial)f(c)m(haracter)i(\(this)e(is)g(part)g(of)810
+2710 y Fm(posix)36 b Fu(in)m(terpretation)h(221\);)42
+b(in)36 b(later)h(v)m(ersions,)h(single)f(quotes)g(are)g(not)f(sp)s
+(ecial)810 2819 y(within)30 b(double-quoted)g(w)m(ord)g(expansions.)150
+2969 y Ft(compat43)705 3098 y Fq(\017)60 b Fu(W)-8 b(ord)32
+b(expansion)g(errors)g(are)g(considered)g(non-fatal)h(errors)e(that)i
+(cause)f(the)g(cur-)810 3208 y(ren)m(t)c(command)g(to)h(fail,)h(ev)m
+(en)f(in)e(p)s(osix)h(mo)s(de)g(\(the)g(default)h(b)s(eha)m(vior)f(is)g
+(to)h(mak)m(e)810 3318 y(them)h(fatal)i(errors)e(that)h(cause)g(the)f
+(shell)h(to)g(exit\).)705 3447 y Fq(\017)60 b Fu(When)36
+b(executing)h(a)f(shell)g(function,)h(the)f(lo)s(op)g(state)h
+(\(while/un)m(til/etc.\))61 b(is)36 b(not)810 3557 y(reset,)e(so)g
+Ft(break)d Fu(or)i Ft(continue)e Fu(in)h(that)i(function)f(will)g
+(break)g(or)g(con)m(tin)m(ue)h(lo)s(ops)810 3666 y(in)h(the)g(calling)h
+(con)m(text.)57 b(Bash-4.4)37 b(and)d(later)i(reset)g(the)f(lo)s(op)g
+(state)i(to)e(prev)m(en)m(t)810 3776 y(this.)150 3925
+y Ft(compat44)705 4055 y Fq(\017)60 b Fu(The)38 b(shell)g(sets)g(up)g
+(the)g(v)-5 b(alues)38 b(used)g(b)m(y)g Ft(BASH_ARGV)d
+Fu(and)j Ft(BASH_ARGC)d Fu(so)k(they)810 4164 y(can)26
+b(expand)f(to)h(the)g(shell's)g(p)s(ositional)g(parameters)g(ev)m(en)h
+(if)e(extended)h(debugging)810 4274 y(mo)s(de)k(is)g(not)h(enabled.)705
+4403 y Fq(\017)60 b Fu(A)38 b(subshell)f(inherits)g(lo)s(ops)h(from)f
+(its)h(paren)m(t)g(con)m(text,)k(so)c Ft(break)e Fu(or)i
+Ft(continue)810 4513 y Fu(will)d(cause)g(the)f(subshell)f(to)i(exit.)54
+b(Bash-5.0)36 b(and)d(later)j(reset)f(the)f(lo)s(op)h(state)g(to)810
+4623 y(prev)m(en)m(t)c(the)g(exit.)705 4752 y Fq(\017)60
+b Fu(V)-8 b(ariable)27 b(assignmen)m(ts)g(preceding)e(builtins)g(lik)m
+(e)i Ft(export)d Fu(and)i Ft(readonly)d Fu(that)j(set)810
+4862 y(attributes)37 b(con)m(tin)m(ue)h(to)g(a\013ect)g(v)-5
+b(ariables)37 b(with)g(the)f(same)h(name)g(in)g(the)f(calling)810
+4971 y(en)m(vironmen)m(t)31 b(ev)m(en)g(if)f(the)h(shell)g(is)f(not)h
+(in)f(p)s(osix)f(mo)s(de.)150 5121 y Ft(compat50)f(\(set)h(using)g
+(BASH_COMPAT\))705 5230 y Fq(\017)60 b Fu(Bash-5.1)29
+b(c)m(hanged)g(the)f(w)m(a)m(y)g Ft($RANDOM)e Fu(is)i(generated)h(to)f
+(in)m(tro)s(duce)g(sligh)m(tly)h(more)810 5340 y(randomness.)39
+b(If)30 b(the)f(shell)h(compatibilit)m(y)i(lev)m(el)f(is)f(set)g(to)h
+(50)f(or)g(lo)m(w)m(er,)h(it)f(rev)m(erts)p eop end
+%%Page: 122 128
+TeXDict begin 122 127 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2439 b(122)810 299 y(to)28
+b(the)g(metho)s(d)f(from)g(bash-5.0)h(and)f(previous)g(v)m(ersions,)i
+(so)e(seeding)h(the)g(random)810 408 y(n)m(um)m(b)s(er)36
+b(generator)j(b)m(y)e(assigning)h(a)g(v)-5 b(alue)38
+b(to)g Ft(RANDOM)e Fu(will)i(pro)s(duce)e(the)i(same)810
+518 y(sequence)31 b(as)f(in)g(bash-5.0.)705 653 y Fq(\017)60
+b Fu(If)22 b(the)g(command)g(hash)f(table)i(is)f(empt)m(y)-8
+b(,)25 b(Bash)d(v)m(ersions)g(prior)g(to)h(bash-5.1)f(prin)m(ted)810
+762 y(an)29 b(informational)i(message)g(to)f(that)g(e\013ect,)h(ev)m
+(en)g(when)d(pro)s(ducing)g(output)h(that)810 872 y(can)40
+b(b)s(e)g(reused)f(as)h(input.)69 b(Bash-5.1)42 b(suppresses)c(that)j
+(message)g(when)e(the)i Ft(-l)810 981 y Fu(option)31
+b(is)f(supplied.)150 1141 y Ft(compat51)e(\(set)h(using)g
+(BASH_COMPAT\))705 1250 y Fq(\017)60 b Fu(The)38 b Ft(unset)g
+Fu(builtin)g(will)h(unset)f(the)h(arra)m(y)g Ft(a)g Fu(giv)m(en)g(an)g
+(argumen)m(t)g(lik)m(e)h(`)p Ft(a[@])p Fu('.)810 1360
+y(Bash-5.2)32 b(will)f(unset)f(an)g(elemen)m(t)i(with)e(k)m(ey)i(`)p
+Ft(@)p Fu(')e(\(asso)s(ciativ)m(e)k(arra)m(ys\))d(or)f(remo)m(v)m(e)810
+1469 y(all)h(the)g(elemen)m(ts)h(without)e(unsetting)g(the)h(arra)m(y)g
+(\(indexed)f(arra)m(ys\).)705 1604 y Fq(\017)60 b Fu(Arithmetic)31
+b(commands)f(\()h(\(\()6 b(.)23 b(.)f(.)11 b(\)\))31
+b(\))g(and)f(the)g(expressions)g(in)g(an)h(arithmetic)g(for)810
+1714 y(statemen)m(t)h(can)f(b)s(e)f(expanded)f(more)i(than)f(once.)705
+1848 y Fq(\017)60 b Fu(Expressions)20 b(used)f(as)i(argumen)m(ts)g(to)g
+(arithmetic)h(op)s(erators)f(in)f(the)h Ft([[)f Fu(conditional)810
+1958 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once.)705
+2092 y Fq(\017)60 b Fu(The)31 b(expressions)g(in)h(substring)e
+(parameter)i(brace)g(expansion)g(can)g(b)s(e)f(expanded)810
+2202 y(more)g(than)f(once.)705 2336 y Fq(\017)60 b Fu(The)35
+b(expressions)g(in)g(the)h($\(\()42 b(.)22 b(.)g(.)47
+b(\)\))36 b(w)m(ord)f(expansion)h(can)f(b)s(e)g(expanded)g(more)810
+2446 y(than)30 b(once.)705 2580 y Fq(\017)60 b Fu(Arithmetic)33
+b(expressions)f(used)g(as)h(indexed)e(arra)m(y)i(subscripts)e(can)i(b)s
+(e)f(expanded)810 2690 y(more)f(than)f(once.)705 2824
+y Fq(\017)60 b Ft(test)29 b(-v)p Fu(,)35 b(when)f(giv)m(en)h(an)g
+(argumen)m(t)g(of)f(`)p Ft(A[@])p Fu(',)h(where)f Fr(A)h
+Fu(is)f(an)h(existing)g(asso-)810 2934 y(ciativ)m(e)h(arra)m(y)-8
+b(,)37 b(will)d(return)f(true)g(if)h(the)h(arra)m(y)f(has)g(an)m(y)g
+(set)g(elemen)m(ts.)53 b(Bash-5.2)810 3044 y(will)31
+b(lo)s(ok)g(for)f(and)g(rep)s(ort)f(on)i(a)f(k)m(ey)i(named)d(`)p
+Ft(@)p Fu('.)705 3178 y Fq(\017)60 b Fu(the)40 b($)p
+Fi({)p Fr(parameter)7 b Fu([:]=)p Fr(v)-5 b(alue)5 b
+Fi(})42 b Fu(w)m(ord)e(expansion)f(will)i(return)d Fr(v)-5
+b(alue)p Fu(,)43 b(b)s(efore)d(an)m(y)810 3288 y(v)-5
+b(ariable-sp)s(eci\014c)34 b(transformations)f(ha)m(v)m(e)h(b)s(een)e
+(p)s(erformed)f(\(e.g.,)36 b(con)m(v)m(erting)e(to)810
+3397 y(lo)m(w)m(ercase\).)43 b(Bash-5.2)32 b(will)f(return)e(the)i
+(\014nal)f(v)-5 b(alue)31 b(assigned)f(to)i(the)e(v)-5
+b(ariable.)705 3532 y Fq(\017)60 b Fu(P)m(arsing)40 b(command)f
+(substitutions)f(will)i(b)s(eha)m(v)m(e)g(as)f(if)g(extended)g
+(globbing)h(\(see)810 3641 y(Section)e(4.3.2)g([The)f(Shopt)f
+(Builtin],)j(page)f(77\))g(is)f(enabled,)i(so)e(that)g(parsing)g(a)810
+3751 y(command)24 b(substitution)g(con)m(taining)h(an)f(extglob)i
+(pattern)e(\(sa)m(y)-8 b(,)27 b(as)d(part)g(of)g(a)h(shell)810
+3861 y(function\))30 b(will)h(not)g(fail.)41 b(This)30
+b(assumes)g(the)h(in)m(ten)m(t)g(is)g(to)g(enable)g(extglob)g(b)s
+(efore)810 3970 y(the)i(command)f(is)g(executed)h(and)f(w)m(ord)g
+(expansions)g(are)h(p)s(erformed.)45 b(It)33 b(will)f(fail)810
+4080 y(at)42 b(w)m(ord)f(expansion)h(time)g(if)f(extglob)i(hasn't)e(b)s
+(een)g(enabled)h(b)m(y)f(the)h(time)g(the)810 4189 y(command)30
+b(is)h(executed.)150 4349 y Ft(compat52)d(\(set)h(using)g
+(BASH_COMPAT\))705 4458 y Fq(\017)60 b Fu(The)23 b Ft(test)g
+Fu(builtin)g(uses)h(its)g(historical)h(algorithm)g(to)f(parse)g(paren)m
+(thesized)g(sub)s(ex-)810 4568 y(pressions)30 b(when)f(giv)m(en)i
+(\014v)m(e)g(or)f(more)h(argumen)m(ts.)705 4702 y Fq(\017)60
+b Fu(If)25 b(the)h Ft(-p)f Fu(or)h Ft(-P)f Fu(option)h(is)g(supplied)e
+(to)j(the)f Ft(bind)e Fu(builtin,)i Ft(bind)f Fu(treats)i(an)m(y)f
+(argu-)810 4812 y(men)m(ts)h(remaining)g(after)h(option)f(pro)s
+(cessing)g(as)g(bindable)f(command)h(names,)h(and)810
+4922 y(displa)m(ys)k(an)m(y)f(k)m(ey)i(sequences)f(b)s(ound)d(to)j
+(those)g(commands,)g(instead)g(of)g(treating)810 5031
+y(the)f(argumen)m(ts)f(as)h(k)m(ey)g(sequences)g(to)g(bind.)705
+5166 y Fq(\017)60 b Fu(In)m(teractiv)m(e)41 b(shells)d(will)h(notify)g
+(the)f(user)g(of)h(completed)g(jobs)f(while)g(sourcing)h(a)810
+5275 y(script.)i(New)m(er)31 b(v)m(ersions)f(defer)g(noti\014cation)i
+(un)m(til)f(script)f(execution)i(completes.)p eop end
+%%Page: 123 129
+TeXDict begin 123 128 bop 3614 -116 a Fu(123)150 299
+y Fp(7)80 b(Job)54 b(Con)l(trol)150 551 y Fu(This)25
+b(c)m(hapter)i(discusses)f(what)g(job)f(con)m(trol)j(is,)f(ho)m(w)f(it)
+h(w)m(orks,)g(and)f(ho)m(w)g(Bash)g(allo)m(ws)h(y)m(ou)g(to)g(access)
+150 660 y(its)k(facilities.)150 910 y Fs(7.1)68 b(Job)45
+b(Con)l(trol)h(Basics)150 1069 y Fu(Job)27 b(con)m(trol)i(refers)e(to)h
+(the)g(abilit)m(y)h(to)f(selectiv)m(ely)j(stop)c(\(susp)s(end\))f(the)i
+(execution)h(of)e(pro)s(cesses)h(and)150 1179 y(con)m(tin)m(ue)38
+b(\(resume\))g(their)f(execution)h(at)g(a)g(later)g(p)s(oin)m(t.)61
+b(A)37 b(user)g(t)m(ypically)i(emplo)m(ys)f(this)f(facilit)m(y)150
+1289 y(via)27 b(an)e(in)m(teractiv)m(e)k(in)m(terface)f(supplied)d
+(join)m(tly)h(b)m(y)g(the)h(op)s(erating)f(system)g(k)m(ernel's)h
+(terminal)f(driv)m(er)150 1398 y(and)k(Bash.)275 1539
+y(The)23 b(shell)i(asso)s(ciates)h(a)f Fr(job)h Fu(with)e(eac)m(h)i
+(pip)s(eline.)38 b(It)25 b(k)m(eeps)f(a)h(table)h(of)e(curren)m(tly)h
+(executing)g(jobs,)150 1648 y(whic)m(h)37 b(the)h Ft(jobs)e
+Fu(command)i(will)f(displa)m(y)-8 b(.)63 b(Eac)m(h)38
+b(job)g(has)f(a)h Fr(job)f(n)m(um)m(b)s(er)p Fu(,)h(whic)m(h)f
+Ft(jobs)g Fu(displa)m(ys)150 1758 y(b)s(et)m(w)m(een)25
+b(brac)m(k)m(ets.)40 b(Job)25 b(n)m(um)m(b)s(ers)e(start)i(at)g(1.)39
+b(When)24 b(Bash)h(starts)g(a)g(job)f(async)m(hronously)-8
+b(,)26 b(it)f(prin)m(ts)150 1867 y(a)31 b(line)f(that)h(lo)s(oks)g(lik)
+m(e:)390 2008 y Ft([1])47 b(25647)150 2148 y Fu(indicating)34
+b(that)g(this)f(job)g(is)g(job)g(n)m(um)m(b)s(er)f(1)i(and)f(that)g
+(the)h(pro)s(cess)f Fm(id)g Fu(of)g(the)h(last)g(pro)s(cess)f(in)g(the)
+150 2258 y(pip)s(eline)42 b(asso)s(ciated)i(with)e(this)g(job)g(is)h
+(25647.)78 b(All)43 b(of)g(the)g(pro)s(cesses)f(in)g(a)h(single)g(pip)s
+(eline)f(are)150 2367 y(mem)m(b)s(ers)30 b(of)g(the)h(same)f(job.)41
+b(Bash)30 b(uses)g(the)h Fr(job)h Fu(abstraction)f(as)g(the)g(basis)f
+(for)g(job)g(con)m(trol.)275 2508 y(T)-8 b(o)37 b(facilitate)j(the)d
+(implemen)m(tation)i(of)e(the)g(user)g(in)m(terface)h(to)g(job)f(con)m
+(trol,)j(eac)m(h)f(pro)s(cess)d(has)150 2617 y(a)h Fr(pro)s(cess)e
+(group)h Fm(id)p Fu(,)i(and)d(the)i(op)s(erating)f(system)h(main)m
+(tains)g(the)f(notion)h(of)f(a)g(curren)m(t)g(terminal)150
+2727 y(pro)s(cess)28 b(group)g Fm(id)p Fu(.)41 b(Pro)s(cesses)28
+b(that)i(ha)m(v)m(e)f(the)g(same)g(pro)s(cess)g(group)f(ID)g(are)h
+(said)g(to)g(b)s(e)f(part)h(of)g(the)150 2837 y(same)38
+b Fr(pro)s(cess)f(group)p Fu(.)62 b(Mem)m(b)s(ers)38
+b(of)f(the)h(foreground)f(pro)s(cess)g(group)g(\(pro)s(cesses)h(whose)f
+(pro)s(cess)150 2946 y(group)28 b Fm(id)h Fu(is)g(equal)h(to)f(the)g
+(curren)m(t)g(terminal)g(pro)s(cess)g(group)f Fm(id)p
+Fu(\))h(receiv)m(e)i(k)m(eyb)s(oard-generated)f(sig-)150
+3056 y(nals)j(suc)m(h)g(as)g Ft(SIGINT)p Fu(.)47 b(Pro)s(cesses)33
+b(in)g(the)h(foreground)e(pro)s(cess)g(group)h(are)g(said)g(to)h(b)s(e)
+f(foreground)150 3165 y(pro)s(cesses.)50 b(Bac)m(kground)34
+b(pro)s(cesses)f(are)h(those)f(whose)h(pro)s(cess)f(group)f
+Fm(id)i Fu(di\013ers)f(from)g(the)g(termi-)150 3275 y(nal's;)c(suc)m(h)
+e(pro)s(cesses)g(are)g(imm)m(une)g(to)h(k)m(eyb)s(oard-generated)h
+(signals.)40 b(Only)27 b(foreground)f(pro)s(cesses)150
+3384 y(are)h(allo)m(w)m(ed)h(to)f(read)f(from)f(or,)j(if)e(the)g(user)g
+(so)g(sp)s(eci\014es)g(with)g Ft(stty)j(tostop)p Fu(,)c(write)i(to)g
+(the)f(terminal.)150 3494 y(Bac)m(kground)33 b(pro)s(cesses)g(whic)m(h)
+g(attempt)g(to)h(read)f(from)f(\(write)h(to)h(when)e
+Ft(tostop)f Fu(is)i(in)f(e\013ect\))j(the)150 3604 y(terminal)29
+b(are)f(sen)m(t)h(a)g Ft(SIGTTIN)d Fu(\()p Ft(SIGTTOU)p
+Fu(\))h(signal)i(b)m(y)f(the)h(k)m(ernel's)g(terminal)f(driv)m(er,)h
+(whic)m(h,)g(unless)150 3713 y(caugh)m(t,)j(susp)s(ends)c(the)i(pro)s
+(cess.)275 3854 y(If)k(the)i(op)s(erating)g(system)f(on)h(whic)m(h)f
+(Bash)g(is)h(running)d(supp)s(orts)h(job)h(con)m(trol,)j(Bash)e(con)m
+(tains)150 3963 y(facilities)30 b(to)f(use)f(it.)40 b(T)m(yping)28
+b(the)g Fr(susp)s(end)h Fu(c)m(haracter)h(\(t)m(ypically)g(`)p
+Ft(^Z)p Fu(',)f(Con)m(trol-Z\))g(while)f(a)g(pro)s(cess)150
+4073 y(is)40 b(running)e(stops)i(that)g(pro)s(cess)f(and)g(returns)g
+(con)m(trol)i(to)g(Bash.)69 b(T)m(yping)39 b(the)h Fr(dela)m(y)m(ed)h
+(susp)s(end)150 4182 y Fu(c)m(haracter)d(\(t)m(ypically)g(`)p
+Ft(^Y)p Fu(',)f(Con)m(trol-Y\))h(causes)e(the)g(pro)s(cess)f(to)i(stop)
+f(when)f(it)h(attempts)h(to)g(read)150 4292 y(input)28
+b(from)g(the)i(terminal,)g(and)e(returns)g(con)m(trol)i(to)g(Bash.)40
+b(The)28 b(user)h(then)f(manipulates)h(the)h(state)150
+4402 y(of)36 b(this)f(job,)i(using)e(the)g Ft(bg)g Fu(command)h(to)g
+(con)m(tin)m(ue)h(it)f(in)f(the)h(bac)m(kground,)g(the)g
+Ft(fg)f Fu(command)g(to)150 4511 y(con)m(tin)m(ue)30
+b(it)f(in)f(the)g(foreground,)g(or)h(the)f Ft(kill)g
+Fu(command)g(to)h(kill)g(it.)41 b(The)28 b(susp)s(end)d(c)m(haracter)30
+b(tak)m(es)150 4621 y(e\013ect)g(immediately)-8 b(,)31
+b(and)d(has)g(the)h(additional)h(side)e(e\013ect)i(of)f(discarding)f
+(an)m(y)h(p)s(ending)e(output)i(and)150 4730 y(t)m(yp)s(eahead.)42
+b(If)30 b(y)m(ou)h(w)m(an)m(t)g(to)h(force)f(a)g(bac)m(kground)f(pro)s
+(cess)h(to)g(stop,)g(or)g(stop)f(a)h(pro)s(cess)f(that's)i(not)150
+4840 y(asso)s(ciated)g(with)e(y)m(our)g(terminal)h(session,)g(send)e
+(it)i(the)g Ft(SIGSTOP)d Fu(signal)j(using)f Ft(kill)p
+Fu(.)275 4980 y(There)i(are)g(a)h(n)m(um)m(b)s(er)e(of)i(w)m(a)m(ys)g
+(to)h(refer)e(to)h(a)g(job)f(in)g(the)h(shell.)47 b(The)32
+b(`)p Ft(\045)p Fu(')h(c)m(haracter)h(in)m(tro)s(duces)150
+5090 y(a)d Fr(job)f(sp)s(eci\014cation)h Fu(\(jobsp)s(ec\).)275
+5230 y(Job)i(n)m(um)m(b)s(er)f Ft(n)h Fu(ma)m(y)h(b)s(e)e(referred)h
+(to)h(as)g(`)p Ft(\045n)p Fu('.)49 b(A)34 b(job)f(ma)m(y)h(also)g(b)s
+(e)f(referred)f(to)i(using)f(a)h(pre\014x)150 5340 y(of)i(the)g(name)g
+(used)f(to)h(start)h(it,)g(or)f(using)g(a)g(substring)e(that)j(app)s
+(ears)e(in)g(its)h(command)g(line.)57 b(F)-8 b(or)p eop
+end
+%%Page: 124 130
+TeXDict begin 124 129 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2526 b(124)150 299 y(example,)30
+b(`)p Ft(\045ce)p Fu(')f(refers)f(to)i(a)f(job)f(whose)h(command)f
+(name)h(b)s(egins)g(with)f(`)p Ft(ce)p Fu('.)40 b(Using)29
+b(`)p Ft(\045?ce)p Fu(',)g(on)g(the)150 408 y(other)34
+b(hand,)g(refers)g(to)h(an)m(y)f(job)g(con)m(taining)i(the)e(string)g
+(`)p Ft(ce)p Fu(')g(in)g(its)g(command)g(line.)52 b(If)34
+b(the)g(pre\014x)150 518 y(or)c(substring)g(matc)m(hes)h(more)g(than)f
+(one)g(job,)h(Bash)f(rep)s(orts)g(an)g(error.)275 668
+y(The)25 b(sym)m(b)s(ols)g(`)p Ft(\045\045)p Fu(')h(and)f(`)p
+Ft(\045+)p Fu(')h(refer)f(to)i(the)f(shell's)g(notion)g(of)g(the)g
+Fr(curren)m(t)g(job)p Fu(.)39 b(A)25 b(single)i(`)p Ft(\045)p
+Fu(')f(\(with)150 778 y(no)h(accompan)m(ying)h(job)e(sp)s
+(eci\014cation\))i(also)g(refers)f(to)g(the)g(curren)m(t)g(job.)39
+b(`)p Ft(\045-)p Fu(')27 b(refers)f(to)h(the)g Fr(previous)150
+888 y(job)p Fu(.)46 b(When)31 b(a)i(job)f(starts)g(in)g(the)g(bac)m
+(kground,)h(a)f(job)g(stops)g(while)g(in)g(the)h(foreground,)f(or)g(a)g
+(job)g(is)150 997 y(resumed)g(in)g(the)h(bac)m(kground,)g(it)g(b)s
+(ecomes)g(the)g(curren)m(t)f(job.)47 b(The)33 b(job)f(that)h(w)m(as)g
+(the)g(curren)m(t)f(job)150 1107 y(b)s(ecomes)f(the)g(previous)f(job.)
+41 b(When)30 b(the)h(curren)m(t)f(job)g(terminates,)i(the)f(previous)f
+(job)g(b)s(ecomes)h(the)150 1216 y(curren)m(t)36 b(job.)59
+b(If)36 b(there)h(is)g(only)f(a)h(single)g(job,)h(`)p
+Ft(\045+)p Fu(')f(and)f(`)p Ft(\045-)p Fu(')g(can)h(b)s(oth)f(b)s(e)g
+(used)g(to)h(refer)f(to)h(that)150 1326 y(job.)45 b(In)31
+b(output)h(p)s(ertaining)f(to)i(jobs)e(\(e.g.,)j(the)f(output)e(of)h
+(the)g Ft(jobs)f Fu(command\),)i(the)f(curren)m(t)f(job)150
+1436 y(is)f(alw)m(a)m(ys)i(mark)m(ed)f(with)f(a)h(`)p
+Ft(+)p Fu(',)f(and)g(the)h(previous)f(job)g(with)g(a)g(`)p
+Ft(-)p Fu('.)275 1586 y(Simply)g(naming)h(a)g(job)g(can)g(b)s(e)f(used)
+h(to)g(bring)f(it)i(in)m(to)g(the)f(foreground:)41 b(`)p
+Ft(\0451)p Fu(')31 b(is)g(a)h(synon)m(ym)e(for)150 1695
+y(`)p Ft(fg)g(\0451)p Fu(',)i(bringing)f(job)g(1)g(from)g(the)h(bac)m
+(kground)f(in)m(to)i(the)e(foreground.)44 b(Similarly)-8
+b(,)32 b(`)p Ft(\0451)e(&)p Fu(')i(resumes)150 1805 y(job)e(1)h(in)f
+(the)g(bac)m(kground,)h(equiv)-5 b(alen)m(t)32 b(to)f(`)p
+Ft(bg)f(\0451)p Fu('.)275 1955 y(The)g(shell)i(learns)f(immediately)i
+(whenev)m(er)e(a)h(job)f(c)m(hanges)h(state.)45 b(Normally)-8
+b(,)33 b(Bash)e(w)m(aits)i(un)m(til)150 2065 y(it)c(is)f(ab)s(out)g(to)
+h(prin)m(t)f(a)g(prompt)g(b)s(efore)f(notifying)i(the)g(user)e(ab)s
+(out)h(c)m(hanges)h(in)f(a)h(job's)f(status)g(so)h(as)150
+2175 y(to)j(not)f(in)m(terrupt)f(an)m(y)h(other)g(output,)g(though)g
+(it)g(will)g(notify)h(of)f(c)m(hanges)h(in)e(a)h(job's)g(status)g
+(after)h(a)150 2284 y(foreground)c(command)h(in)g(a)h(list)f
+(completes,)i(b)s(efore)e(executing)i(the)e(next)g(command)g(in)g(the)g
+(list.)41 b(If)150 2394 y(the)33 b Ft(-b)g Fu(option)g(to)h(the)f
+Ft(set)f Fu(builtin)h(is)g(enabled,)h(Bash)f(rep)s(orts)f(status)i(c)m
+(hanges)g(immediately)g(\(see)150 2503 y(Section)28 b(4.3.1)h([The)e
+(Set)g(Builtin],)i(page)f(72\).)40 b(Bash)28 b(executes)g(an)m(y)f
+(trap)g(on)g Ft(SIGCHLD)e Fu(for)i(eac)m(h)i(c)m(hild)150
+2613 y(pro)s(cess)h(that)h(terminates.)275 2763 y(When)g(a)h(job)f
+(terminates)i(and)e(Bash)h(noti\014es)g(the)f(user)g(ab)s(out)h(it,)g
+(Bash)g(remo)m(v)m(es)h(the)f(job)f(from)150 2873 y(the)k(jobs)g
+(table.)55 b(It)36 b(will)f(not)g(app)s(ear)g(in)f Ft(jobs)g
+Fu(output,)i(but)f Ft(wait)f Fu(will)h(rep)s(ort)f(its)i(exit)g
+(status,)h(as)150 2983 y(long)26 b(as)g(it's)g(supplied)e(the)i(pro)s
+(cess)f(ID)h(asso)s(ciated)g(with)g(the)f(job)g(as)h(an)g(argumen)m(t.)
+39 b(When)25 b(the)h(table)150 3092 y(is)k(empt)m(y)-8
+b(,)32 b(job)e(n)m(um)m(b)s(ers)f(start)i(o)m(v)m(er)g(at)h(1.)275
+3242 y(If)j(a)i(user)e(attempts)i(to)g(exit)g(Bash)f(while)h(jobs)e
+(are)i(stopp)s(ed,)g(\(or)f(running,)g(if)g(the)g Ft(checkjobs)150
+3352 y Fu(option)24 b(is)f(enabled)h({)g(see)g(Section)g(4.3.2)h([The)e
+(Shopt)g(Builtin],)j(page)e(77\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m
+(arning)150 3462 y(message,)k(and)c(if)i(the)f Ft(checkjobs)e
+Fu(option)j(is)f(enabled,)i(lists)e(the)h(jobs)f(and)f(their)i
+(statuses.)39 b(The)25 b Ft(jobs)150 3571 y Fu(command)35
+b(ma)m(y)i(then)e(b)s(e)g(used)g(to)h(insp)s(ect)f(their)h(status.)57
+b(If)35 b(the)h(user)f(immediately)i(attempts)f(to)150
+3681 y(exit)k(again,)i(without)d(an)f(in)m(terv)m(ening)i(command,)h
+(Bash)e(do)s(es)f(not)h(prin)m(t)g(another)g(w)m(arning,)i(and)150
+3790 y(terminates)31 b(an)m(y)g(stopp)s(ed)e(jobs.)275
+3941 y(When)h(the)h(shell)g(is)f(w)m(aiting)i(for)f(a)g(job)f(or)h(pro)
+s(cess)f(using)g(the)h Ft(wait)f Fu(builtin,)g(and)g(job)h(con)m(trol)h
+(is)150 4050 y(enabled,)i Ft(wait)f Fu(will)g(return)g(when)f(the)i
+(job)f(c)m(hanges)h(state.)51 b(The)33 b Ft(-f)g Fu(option)h(causes)f
+Ft(wait)g Fu(to)h(w)m(ait)150 4160 y(un)m(til)d(the)f(job)g(or)h(pro)s
+(cess)f(terminates)h(b)s(efore)f(returning.)150 4425
+y Fs(7.2)68 b(Job)45 b(Con)l(trol)h(Builtins)150 4617
+y Ft(bg)870 4759 y(bg)h([)p Fj(jobspec)f Ft(...)o(])630
+4902 y Fu(Resume)24 b(eac)m(h)h(susp)s(ended)d(job)i
+Fr(jobsp)s(ec)29 b Fu(in)24 b(the)g(bac)m(kground,)h(as)g(if)f(it)h
+(had)e(b)s(een)g(started)630 5011 y(with)30 b(`)p Ft(&)p
+Fu('.)41 b(If)30 b Fr(jobsp)s(ec)35 b Fu(is)30 b(not)h(supplied,)e(the)
+i(shell)f(uses)g(its)h(notion)g(of)f(the)h(curren)m(t)f(job.)630
+5121 y Ft(bg)j Fu(returns)f(zero)j(unless)e(it)h(is)g(run)e(when)g(job)
+i(con)m(trol)h(is)f(not)f(enabled,)i(or,)g(when)d(run)630
+5230 y(with)c(job)f(con)m(trol)j(enabled,)f(an)m(y)f
+Fr(jobsp)s(ec)33 b Fu(w)m(as)28 b(not)g(found)f(or)h(sp)s(eci\014es)g
+(a)g(job)g(that)h(w)m(as)630 5340 y(started)i(without)f(job)g(con)m
+(trol.)p eop end
+%%Page: 125 131
+TeXDict begin 125 130 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2526 b(125)150 299 y Ft(fg)870
+439 y(fg)47 b([)p Fj(jobspec)p Ft(])630 579 y Fu(Resume)c(the)g(job)g
+Fr(jobsp)s(ec)48 b Fu(in)43 b(the)g(foreground)g(and)f(mak)m(e)j(it)e
+(the)h(curren)m(t)f(job.)78 b(If)630 689 y Fr(jobsp)s(ec)37
+b Fu(is)32 b(not)h(supplied,)f Ft(fg)f Fu(resumes)h(the)g(curren)m(t)g
+(job.)47 b(The)31 b(return)g(status)i(is)f(that)630 799
+y(of)26 b(the)g(command)g(placed)g(in)m(to)h(the)f(foreground,)g(or)g
+(non-zero)g(if)g(run)e(when)h(job)g(con)m(trol)630 908
+y(is)35 b(disabled)g(or,)i(when)d(run)g(with)h(job)g(con)m(trol)h
+(enabled,)h Fr(jobsp)s(ec)j Fu(do)s(es)35 b(not)h(sp)s(ecify)f(a)630
+1018 y(v)-5 b(alid)31 b(job)f(or)g Fr(jobsp)s(ec)35 b
+Fu(sp)s(eci\014es)30 b(a)h(job)f(that)h(w)m(as)g(started)g(without)f
+(job)g(con)m(trol.)150 1189 y Ft(jobs)870 1329 y(jobs)47
+b([-lnprs])e([)p Fj(jobspec)p Ft(])870 1439 y(jobs)i(-x)g
+Fj(command)f Ft([)p Fj(arguments)p Ft(])630 1579 y Fu(The)30
+b(\014rst)f(form)h(lists)h(the)g(activ)m(e)h(jobs.)41
+b(The)30 b(options)g(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
+1750 y Ft(-l)384 b Fu(List)31 b(pro)s(cess)f Fm(id)p
+Fu(s)g(in)g(addition)h(to)g(the)f(normal)h(information.)630
+1921 y Ft(-n)384 b Fu(Displa)m(y)26 b(information)f(only)h(ab)s(out)e
+(jobs)h(that)g(ha)m(v)m(e)i(c)m(hanged)e(status)h(since)1110
+2030 y(the)31 b(user)e(w)m(as)i(last)g(noti\014ed)f(of)h(their)f
+(status.)630 2201 y Ft(-p)384 b Fu(List)31 b(only)f(the)h(pro)s(cess)f
+Fm(id)g Fu(of)h(the)f(job's)g(pro)s(cess)g(group)g(leader.)630
+2372 y Ft(-r)384 b Fu(Displa)m(y)32 b(only)e(running)f(jobs.)630
+2543 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(stopp)s(ed)f(jobs.)630
+2714 y(If)k Fr(jobsp)s(ec)38 b Fu(is)c(supplied,)f Ft(jobs)f
+Fu(restricts)i(output)g(to)g(information)f(ab)s(out)h(that)g(job.)49
+b(If)630 2824 y Fr(jobsp)s(ec)40 b Fu(is)34 b(not)h(supplied,)g
+Ft(jobs)e Fu(lists)i(the)g(status)g(of)g(all)g(jobs.)53
+b(The)34 b(return)g(status)h(is)630 2933 y(zero)c(unless)f(an)g(in)m(v)
+-5 b(alid)31 b(option)g(is)f(encoun)m(tered)h(or)f(an)h(in)m(v)-5
+b(alid)31 b Fr(jobsp)s(ec)k Fu(is)30 b(supplied.)630
+3074 y(If)35 b(the)g Ft(-x)f Fu(option)i(is)f(supplied,)g
+Ft(jobs)f Fu(replaces)i(an)m(y)f Fr(jobsp)s(ec)40 b Fu(found)34
+b(in)h Fr(command)j Fu(or)630 3183 y Fr(argumen)m(ts)j
+Fu(with)c(the)h(corresp)s(onding)e(pro)s(cess)h(group)f
+Fm(id)p Fu(,)k(and)c(executes)j Fr(command)p Fu(,)630
+3293 y(passing)30 b(it)h Fr(argumen)m(t)r Fu(s,)g(returning)f(its)g
+(exit)i(status.)150 3464 y Ft(kill)870 3604 y(kill)47
+b([-s)g Fj(sigspec)p Ft(])e([-n)i Fj(signum)p Ft(])f([-)p
+Fj(sigspec)p Ft(])f Fj(id)i Ft([...)o(])870 3714 y(kill)g(-l|-L)f([)p
+Fj(exit_status)p Ft(])630 3854 y Fu(Send)26 b(a)h(signal)h(sp)s
+(eci\014ed)e(b)m(y)g Fr(sigsp)s(ec)33 b Fu(or)27 b Fr(sign)m(um)f
+Fu(to)i(the)f(pro)s(cesses)g(named)f(b)m(y)h(eac)m(h)h
+Fr(id)p Fu(.)630 3964 y(Eac)m(h)k Fr(id)j Fu(ma)m(y)d(b)s(e)g(a)g(job)f
+(sp)s(eci\014cation)h Fr(jobsp)s(ec)37 b Fu(or)32 b(pro)s(cess)f
+Fm(id)h Fr(pid)p Fu(.)43 b Fr(sigsp)s(ec)38 b Fu(is)31
+b(either)630 4073 y(a)f(case-insensitiv)m(e)j(signal)d(name)g(suc)m(h)g
+(as)g Ft(SIGINT)f Fu(\(with)h(or)f(without)h(the)h Ft(SIG)e
+Fu(pre\014x\))630 4183 y(or)k(a)g(signal)h(n)m(um)m(b)s(er;)f
+Fr(sign)m(um)g Fu(is)f(a)i(signal)f(n)m(um)m(b)s(er.)47
+b(If)33 b Fr(sigsp)s(ec)38 b Fu(and)33 b Fr(sign)m(um)f
+Fu(are)i(not)630 4292 y(presen)m(t,)d Ft(kill)e Fu(sends)g
+Ft(SIGTERM)p Fu(.)630 4433 y(The)e Ft(-l)h Fu(option)g(lists)h(the)f
+(signal)h(names.)39 b(If)28 b(an)m(y)g(argumen)m(ts)h(are)f(supplied)f
+(when)g Ft(-l)g Fu(is)630 4542 y(supplied,)35 b Ft(kill)e
+Fu(lists)i(the)g(names)g(of)g(the)f(signals)i(corresp)s(onding)d(to)j
+(the)e(argumen)m(ts,)630 4652 y(and)22 b(the)h(return)e(status)i(is)g
+(zero.)39 b Fr(exit)p 1942 4652 28 4 v 41 w(status)27
+b Fu(is)22 b(a)h(n)m(um)m(b)s(er)e(sp)s(ecifying)i(a)g(signal)g(n)m(um)
+m(b)s(er)630 4761 y(or)e(the)g(exit)h(status)g(of)f(a)g(pro)s(cess)g
+(terminated)g(b)m(y)g(a)h(signal;)j(if)c(it)h(is)f(supplied,)h
+Ft(kill)d Fu(prin)m(ts)630 4871 y(the)26 b(name)f(of)h(the)g(signal)g
+(that)g(caused)g(the)f(pro)s(cess)g(to)i(terminate.)40
+b Ft(kill)24 b Fu(assumes)h(that)630 4981 y(pro)s(cess)35
+b(exit)h(statuses)f(are)h(greater)g(than)f(128;)k(an)m(ything)d(less)f
+(than)g(that)h(is)f(a)g(signal)630 5090 y(n)m(um)m(b)s(er.)k(The)30
+b Ft(-L)g Fu(option)h(is)f(equiv)-5 b(alen)m(t)32 b(to)f
+Ft(-l)p Fu(.)630 5230 y(The)26 b(return)f(status)i(is)f(zero)h(if)g(at)
+g(least)g(one)g(signal)g(w)m(as)g(successfully)f(sen)m(t,)i(or)e
+(non-zero)630 5340 y(if)k(an)h(error)f(o)s(ccurs)g(or)g(an)g(in)m(v)-5
+b(alid)31 b(option)g(is)f(encoun)m(tered.)p eop end
+%%Page: 126 132
+TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2526 b(126)150 299 y Ft(wait)870
+427 y(wait)47 b([-fn])f([-p)h Fj(varname)p Ft(])e([)p
+Fj(id)i Ft(...])630 555 y Fu(W)-8 b(ait)28 b(un)m(til)e(the)g(c)m(hild)
+h(pro)s(cess)e(sp)s(eci\014ed)g(b)m(y)h(eac)m(h)h Fr(id)j
+Fu(exits)c(and)g(return)f(the)h(exit)h(status)630 664
+y(of)33 b(the)f(last)i Fr(id)p Fu(.)47 b(Eac)m(h)33 b
+Fr(id)j Fu(ma)m(y)d(b)s(e)f(a)h(pro)s(cess)f Fm(id)g
+Fr(pid)k Fu(or)c(a)h(job)f(sp)s(eci\014cation)i Fr(jobsp)s(ec)6
+b Fu(;)630 774 y(if)30 b(a)h(jobsp)s(ec)f(is)g(supplied,)g
+Ft(wait)f Fu(w)m(aits)i(for)f(all)i(pro)s(cesses)e(in)g(the)g(job.)630
+902 y(If)36 b(no)g(options)h(or)g Fr(id)t Fu(s)e(are)i(supplied,)g
+Ft(wait)e Fu(w)m(aits)j(for)e(all)h(running)e(bac)m(kground)h(jobs)630
+1011 y(and)f(the)h(last-executed)i(pro)s(cess)e(substitution,)h(if)f
+(its)g(pro)s(cess)g(id)f(is)h(the)h(same)f(as)g Fr($!)p
+Fu(,)630 1121 y(and)30 b(the)g(return)g(status)g(is)h(zero.)630
+1249 y(If)41 b(the)g Ft(-n)f Fu(option)i(is)f(supplied,)i
+Ft(wait)d Fu(w)m(aits)i(for)e(an)m(y)i(one)f(of)g(the)h
+Fr(id)t Fu(s)e(or,)k(if)d(no)g Fr(id)t Fu(s)630 1358
+y(are)34 b(supplied,)f(an)m(y)g(job)g(or)h(pro)s(cess)f(substitution,)h
+(to)g(complete)g(and)f(returns)f(its)i(exit)630 1468
+y(status.)41 b(If)28 b(none)h(of)g(the)g(supplied)f Fr(id)t
+Fu(s)g(is)h(a)h(c)m(hild)f(of)g(the)h(shell,)f(or)g(if)g(no)g(argumen)m
+(ts)h(are)630 1577 y(supplied)f(and)h(the)g(shell)h(has)f(no)g(un)m(w)m
+(aited-for)h(c)m(hildren,)g(the)f(exit)i(status)e(is)h(127.)630
+1705 y(If)38 b(the)g Ft(-p)g Fu(option)h(is)f(supplied,)h
+Ft(wait)e Fu(assigns)i(the)f(pro)s(cess)g(or)g(job)g(iden)m(ti\014er)g
+(of)h(the)630 1815 y(job)h(for)h(whic)m(h)f(the)h(exit)g(status)g(is)f
+(returned)g(to)h(the)g(v)-5 b(ariable)41 b Fr(v)-5 b(arname)46
+b Fu(named)40 b(b)m(y)630 1924 y(the)e(option)h(argumen)m(t.)65
+b(The)38 b(v)-5 b(ariable,)41 b(whic)m(h)d(cannot)h(b)s(e)e(readonly)-8
+b(,)41 b(will)e(b)s(e)e(unset)630 2034 y(initially)-8
+b(,)46 b(b)s(efore)41 b(an)m(y)h(assignmen)m(t.)74 b(This)40
+b(is)i(useful)e(only)h(when)g(used)f(with)h(the)h Ft(-n)630
+2144 y Fu(option.)630 2271 y(Supplying)33 b(the)i Ft(-f)f
+Fu(option,)j(when)d(job)g(con)m(trol)i(is)f(enabled,)h(forces)f
+Ft(wait)f Fu(to)h(w)m(ait)h(for)630 2381 y(eac)m(h)h
+Fr(id)j Fu(to)d(terminate)g(b)s(efore)f(returning)g(its)g(status,)j
+(instead)d(of)h(returning)e(when)g(it)630 2491 y(c)m(hanges)c(status.)
+630 2619 y(If)d(none)h(of)g(the)g Fr(id)t Fu(s)f(sp)s(ecify)h(one)g(of)
+g(the)g(shell's)g(an)g(activ)m(e)i(c)m(hild)f(pro)s(cesses,)f(the)g
+(return)630 2728 y(status)44 b(is)g(127.)82 b(If)43 b
+Ft(wait)g Fu(is)g(in)m(terrupted)g(b)m(y)h(a)g(signal,)k(an)m(y)c
+Fr(v)-5 b(arname)49 b Fu(will)44 b(remain)630 2838 y(unset,)34
+b(and)f(the)g(return)f(status)i(will)g(b)s(e)e(greater)j(than)e(128,)j
+(as)d(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)630 2947
+y(Section)29 b(3.7.6)g([Signals],)g(page)g(48\).)41 b(Otherwise,)28
+b(the)g(return)f(status)h(is)g(the)g(exit)h(status)630
+3057 y(of)i(the)f(last)h Fr(id)p Fu(.)150 3203 y Ft(disown)870
+3331 y(disown)46 b([-ar])g([-h])h([)p Fj(id)g Ft(...)o(])630
+3459 y Fu(Without)29 b(options,)g(remo)m(v)m(e)g(eac)m(h)g
+Fr(id)j Fu(from)27 b(the)h(table)h(of)f(activ)m(e)j(jobs.)39
+b(Eac)m(h)29 b Fr(id)i Fu(ma)m(y)e(b)s(e)630 3568 y(a)34
+b(job)g(sp)s(eci\014cation)h Fr(jobsp)s(ec)k Fu(or)34
+b(a)g(pro)s(cess)g Fm(id)g Fr(pid)t Fu(;)h(if)f Fr(id)j
+Fu(is)d(a)g Fr(pid)p Fu(,)h Ft(disown)d Fu(uses)i(the)630
+3678 y(job)c(con)m(taining)i Fr(pid)h Fu(as)e Fr(jobsp)s(ec)p
+Fu(.)630 3806 y(If)e(the)g Ft(-h)f Fu(option)i(is)f(supplied,)f
+Ft(disown)f Fu(do)s(es)i(not)g(remo)m(v)m(e)i(the)e(jobs)f(corresp)s
+(onding)g(to)630 3915 y(eac)m(h)k Ft(id)f Fu(from)g(the)g(jobs)g
+(table,)h(but)f(rather)g(marks)g(them)g(so)h(the)f(shell)g(do)s(es)g
+(not)h(send)630 4025 y Ft(SIGHUP)d Fu(to)i(the)f(job)g(if)h(the)f
+(shell)h(receiv)m(es)h(a)f Ft(SIGHUP)p Fu(.)630 4153
+y(If)37 b(no)g Fr(id)j Fu(is)d(supplied,)h(the)f Ft(-a)f
+Fu(option)i(means)f(to)h(remo)m(v)m(e)g(or)f(mark)g(all)h(jobs;)i(the)e
+Ft(-r)630 4262 y Fu(option)43 b(without)f(an)g Fr(id)j
+Fu(argumen)m(t)d(remo)m(v)m(es)i(or)e(marks)f(running)g(jobs.)75
+b(If)42 b(no)g Fr(id)j Fu(is)630 4372 y(supplied,)31
+b(and)h(neither)g(the)g Ft(-a)f Fu(nor)g(the)h Ft(-r)g
+Fu(option)g(is)g(supplied,)f Ft(disown)g Fu(remo)m(v)m(es)i(or)630
+4482 y(marks)d(the)h(curren)m(t)f(job.)630 4609 y(The)g(return)f(v)-5
+b(alue)31 b(is)f(0)h(unless)f(an)g Fr(id)k Fu(do)s(es)c(not)g(sp)s
+(ecify)g(a)h(v)-5 b(alid)31 b(job.)150 4756 y Ft(suspend)870
+4883 y(suspend)46 b([-f])630 5011 y Fu(Susp)s(end)31
+b(the)i(execution)h(of)g(this)f(shell)g(un)m(til)h(it)g(receiv)m(es)h
+(a)e Ft(SIGCONT)f Fu(signal.)50 b(A)33 b(login)630 5121
+y(shell,)25 b(or)f(a)g(shell)f(without)h(job)f(con)m(trol)i(enabled,)g
+(cannot)f(b)s(e)f(susp)s(ended;)h(the)g Ft(-f)e Fu(option)630
+5230 y(will)36 b(o)m(v)m(erride)i(this)e(and)f(force)i(the)f(susp)s
+(ension.)56 b(The)36 b(return)f(status)i(is)f(0)g(unless)g(the)630
+5340 y(shell)31 b(is)f(a)h(login)g(shell)g(or)f(job)g(con)m(trol)i(is)e
+(not)h(enabled)f(and)g Ft(-f)g Fu(is)g(not)h(supplied.)p
+eop end
+%%Page: 127 133
+TeXDict begin 127 132 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2526 b(127)275 299 y(When)30 b(job)f(con)m(trol)j
+(is)e(not)h(activ)m(e,)i(the)d Ft(kill)f Fu(and)h Ft(wait)f
+Fu(builtins)g(do)h(not)h(accept)h Fr(jobsp)s(ec)j Fu(argu-)150
+408 y(men)m(ts.)41 b(They)30 b(m)m(ust)g(b)s(e)g(supplied)f(pro)s(cess)
+h Fm(id)p Fu(s.)150 649 y Fs(7.3)68 b(Job)45 b(Con)l(trol)h(V)-11
+b(ariables)150 834 y Ft(auto_resume)630 943 y Fu(This)39
+b(v)-5 b(ariable)41 b(con)m(trols)g(ho)m(w)g(the)f(shell)g(in)m
+(teracts)i(with)d(the)i(user)e(and)h(job)f(con)m(trol.)630
+1053 y(If)34 b(this)g(v)-5 b(ariable)35 b(exists)g(then)f(simple)g
+(commands)g(consisting)h(of)g(only)f(a)h(single)g(w)m(ord,)630
+1162 y(without)k(redirections,)j(are)d(treated)h(as)f(candidates)h(for)
+f(resumption)f(of)h(an)g(existing)630 1272 y(job.)64
+b(There)37 b(is)i(no)f(am)m(biguit)m(y)h(allo)m(w)m(ed;)44
+b(if)39 b(there)f(is)g(more)g(than)g(one)h(job)f(b)s(eginning)630
+1381 y(with)c(or)h(con)m(taining)h(the)f(w)m(ord,)h(then)e(this)h
+(selects)h(the)f(most)g(recen)m(tly)h(accessed)g(job.)630
+1491 y(The)24 b(name)g(of)g(a)h(stopp)s(ed)e(job,)i(in)f(this)g(con)m
+(text,)j(is)e(the)f(command)g(line)g(used)g(to)g(start)h(it,)630
+1601 y(as)j(displa)m(y)m(ed)g(b)m(y)g Ft(jobs)p Fu(.)38
+b(If)28 b(this)f(v)-5 b(ariable)29 b(is)f(set)g(to)g(the)g(v)-5
+b(alue)28 b(`)p Ft(exact)p Fu(',)g(the)g(w)m(ord)f(m)m(ust)630
+1710 y(matc)m(h)h(the)g(name)g(of)f(a)h(stopp)s(ed)f(job)g(exactly;)j
+(if)e(set)g(to)g(`)p Ft(substring)p Fu(',)e(the)i(w)m(ord)f(needs)630
+1820 y(to)41 b(matc)m(h)g(a)g(substring)e(of)h(the)h(name)f(of)g(a)h
+(stopp)s(ed)e(job.)70 b(The)40 b(`)p Ft(substring)p Fu(')e(v)-5
+b(alue)630 1929 y(pro)m(vides)30 b(functionalit)m(y)h(analogous)g(to)g
+(the)f(`)p Ft(\045?string)p Fu(')e(job)i Fm(id)g Fu(\(see)g(Section)h
+(7.1)g([Job)630 2039 y(Con)m(trol)h(Basics],)i(page)e(123\).)45
+b(If)31 b(set)h(to)g(an)m(y)g(other)g(v)-5 b(alue)32
+b(\(e.g.,)i(`)p Ft(prefix)p Fu('\),)d(the)g(w)m(ord)630
+2149 y(m)m(ust)d(b)s(e)g(a)h(pre\014x)e(of)i(a)g(stopp)s(ed)e(job's)i
+(name;)g(this)f(pro)m(vides)h(functionalit)m(y)h(analogous)630
+2258 y(to)h(the)g(`)p Ft(\045string)p Fu(')e(job)h Fm(id)p
+Fu(.)p eop end
+%%Page: 128 134
+TeXDict begin 128 133 bop 3614 -116 a Fu(128)150 299
+y Fp(8)80 b(Command)54 b(Line)f(Editing)150 525 y Fu(This)28
+b(c)m(hapter)i(describ)s(es)e(the)h(basic)g(features)h(of)f(the)g
+Fm(gnu)f Fu(command)h(line)g(editing)h(in)m(terface.)42
+b(Com-)150 634 y(mand)c(line)i(editing)f(is)g(pro)m(vided)g(b)m(y)g
+(the)g(Readline)h(library)-8 b(,)41 b(whic)m(h)e(is)g(used)f(b)m(y)h
+(sev)m(eral)h(di\013eren)m(t)150 744 y(programs,)34 b(including)e
+(Bash.)49 b(Command)32 b(line)i(editing)f(is)g(enabled)g(b)m(y)g
+(default)g(when)f(using)h(an)g(in-)150 853 y(teractiv)m(e)h(shell,)d
+(unless)g(the)g Ft(--noediting)d Fu(option)k(is)f(supplied)e(at)j
+(shell)f(in)m(v)m(o)s(cation.)45 b(Line)31 b(editing)150
+963 y(is)g(also)h(used)f(when)f(using)h(the)g Ft(-e)g
+Fu(option)h(to)g(the)f Ft(read)f Fu(builtin)h(command)g(\(see)h
+(Section)g(4.2)h([Bash)150 1073 y(Builtins],)j(page)f(60\).)52
+b(By)35 b(default,)g(the)f(line)h(editing)f(commands)g(are)h(similar)f
+(to)h(those)f(of)g(Emacs;)150 1182 y(a)i(vi-st)m(yle)i(line)e(editing)g
+(in)m(terface)i(is)d(also)i(a)m(v)-5 b(ailable.)60 b(Line)35
+b(editing)i(can)f(b)s(e)f(enabled)h(at)g(an)m(y)g(time)150
+1292 y(using)g(the)g Ft(-o)30 b(emacs)35 b Fu(or)h Ft(-o)30
+b(vi)35 b Fu(options)i(to)g(the)f Ft(set)f Fu(builtin)h(command)g
+(\(see)h(Section)g(4.3.1)h([The)150 1401 y(Set)31 b(Builtin],)g(page)g
+(72\),)h(or)e(disabled)g(using)g(the)h Ft(+o)e(emacs)g
+Fu(or)i Ft(+o)e(vi)h Fu(options)h(to)g Ft(set)p Fu(.)150
+1639 y Fs(8.1)68 b(In)l(tro)t(duction)45 b(to)g(Line)h(Editing)150
+1798 y Fu(The)j(follo)m(wing)j(paragraphs)d(use)h(Emacs)g(st)m(yle)h
+(to)g(describ)s(e)f(the)g(notation)h(used)e(to)i(represen)m(t)150
+1908 y(k)m(eystrok)m(es.)275 2041 y(The)35 b(text)i Fj(C-k)f
+Fu(is)g(read)g(as)h(`Con)m(trol-K')g(and)f(describ)s(es)f(the)h(c)m
+(haracter)i(pro)s(duced)d(when)g(the)h Ft(k)150 2150
+y Fu(k)m(ey)31 b(is)g(pressed)e(while)h(the)h(Con)m(trol)g(k)m(ey)g(is)
+g(depressed.)275 2283 y(The)g(text)i Fj(M-k)e Fu(is)h(read)f(as)i
+(`Meta-K')g(and)f(describ)s(es)f(the)h(c)m(haracter)h(pro)s(duced)e
+(when)f(the)i(Meta)150 2393 y(k)m(ey)h(\(if)f(y)m(ou)g(ha)m(v)m(e)h
+(one\))g(is)f(depressed,)f(and)g(the)i Ft(k)e Fu(k)m(ey)i(is)f(pressed)
+f(\(a)h Fr(meta)h(c)m(haracter)7 b Fu(\),)34 b(then)e(b)s(oth)150
+2502 y(are)k(released.)56 b(The)35 b(Meta)i(k)m(ey)f(is)f(lab)s(eled)h
+Ft(ALT)e Fu(or)h Ft(Option)f Fu(on)h(man)m(y)h(k)m(eyb)s(oards.)55
+b(On)34 b(k)m(eyb)s(oards)150 2612 y(with)c(t)m(w)m(o)h(k)m(eys)f(lab)s
+(eled)g Ft(ALT)f Fu(\(usually)h(to)g(either)h(side)e(of)h(the)g(space)h
+(bar\),)f(the)g Ft(ALT)f Fu(on)g(the)h(left)h(side)150
+2721 y(is)d(generally)h(set)g(to)f(w)m(ork)g(as)g(a)h(Meta)g(k)m(ey)-8
+b(.)41 b(One)28 b(of)g(the)g Ft(ALT)f Fu(k)m(eys)h(ma)m(y)h(also)g(b)s
+(e)e(con\014gured)g(as)i(some)150 2831 y(other)i(mo)s(di\014er,)e(suc)m
+(h)h(as)h(a)g(Comp)s(ose)f(k)m(ey)h(for)f(t)m(yping)h(accen)m(ted)h(c)m
+(haracters.)275 2964 y(On)42 b(some)j(k)m(eyb)s(oards,)i(the)d(Meta)h
+(k)m(ey)f(mo)s(di\014er)f(pro)s(duces)g(c)m(haracters)i(with)e(the)h
+(eigh)m(th)h(bit)150 3073 y(\(0200\))38 b(set.)56 b(Y)-8
+b(ou)36 b(can)g(use)f(the)h Ft(enable-meta-key)31 b Fu(v)-5
+b(ariable)36 b(to)g(con)m(trol)h(whether)e(or)h(not)f(it)h(do)s(es)150
+3183 y(this,)28 b(if)g(the)g(k)m(eyb)s(oard)f(allo)m(ws)i(it.)41
+b(On)26 b(man)m(y)i(others,)h(the)f(terminal)g(or)f(terminal)i(em)m
+(ulator)f(con)m(v)m(erts)150 3293 y(the)h(meta\014ed)g(k)m(ey)g(to)h(a)
+f(k)m(ey)g(sequence)g(b)s(eginning)f(with)h Ft(ESC)f
+Fu(as)g(describ)s(ed)g(in)g(the)h(next)g(paragraph.)275
+3425 y(If)k(y)m(ou)i(do)f(not)g(ha)m(v)m(e)h(a)g(Meta)h(or)e
+Ft(ALT)f Fu(k)m(ey)-8 b(,)36 b(or)e(another)h(k)m(ey)g(w)m(orking)f(as)
+h(a)f(Meta)i(k)m(ey)-8 b(,)36 b(y)m(ou)f(can)150 3535
+y(generally)28 b(ac)m(hiev)m(e)h(the)f(latter)g(e\013ect)g(b)m(y)f(t)m
+(yping)h Ft(ESC)e Fl(\014rst)p Fu(,)i(and)f(then)f(t)m(yping)i
+Ft(k)p Fu(.)39 b(The)26 b Ft(ESC)g Fu(c)m(haracter)150
+3645 y(is)k(kno)m(wn)g(as)h(the)f Fr(meta)i(pre\014x)6
+b Fu(\).)275 3778 y(Either)30 b(pro)s(cess)g(is)g(kno)m(wn)g(as)h
+Fr(metafying)39 b Fu(the)30 b Ft(k)g Fu(k)m(ey)-8 b(.)275
+3910 y(If)24 b(y)m(our)i(Meta)g(k)m(ey)h(pro)s(duces)d(a)h(k)m(ey)h
+(sequence)g(with)f(the)h Ft(ESC)e Fu(meta)i(pre\014x,)g(y)m(ou)f(can)h
+(mak)m(e)g Fj(M-key)150 4020 y Fu(k)m(ey)40 b(bindings)e(y)m(ou)i(sp)s
+(ecify)f(\(see)i Ft(Key)29 b(Bindings)37 b Fu(in)i(Section)i(8.3.1)g
+([Readline)f(Init)g(File)g(Syn)m(tax],)150 4130 y(page)31
+b(131\))h(do)e(the)h(same)g(thing)f(b)m(y)g(setting)i(the)e
+Ft(force-meta-prefix)c Fu(v)-5 b(ariable.)275 4262 y(The)39
+b(text)j Fj(M-C-k)d Fu(is)h(read)g(as)h(`Meta-Con)m(trol-k')j(and)39
+b(describ)s(es)h(the)g(c)m(haracter)i(pro)s(duced)d(b)m(y)150
+4372 y(metafying)31 b Fj(C-k)p Fu(.)275 4505 y(In)k(addition,)j(sev)m
+(eral)f(k)m(eys)g(ha)m(v)m(e)g(their)f(o)m(wn)g(names.)58
+b(Sp)s(eci\014cally)-8 b(,)38 b Ft(DEL)p Fu(,)f Ft(ESC)p
+Fu(,)g Ft(LFD)p Fu(,)g Ft(SPC)p Fu(,)g Ft(RET)p Fu(,)150
+4614 y(and)d Ft(TAB)f Fu(all)j(stand)e(for)g(themselv)m(es)i(when)d
+(seen)i(in)f(this)g(text,)j(or)d(in)h(an)f(init)h(\014le)f(\(see)i
+(Section)f(8.3)150 4724 y([Readline)28 b(Init)e(File],)k(page)d(131\).)
+41 b(If)27 b(y)m(our)f(k)m(eyb)s(oard)h(lac)m(ks)h(a)f
+Ft(LFD)f Fu(k)m(ey)-8 b(,)29 b(t)m(yping)e Ft(C-j)f Fu(will)h(output)g
+(the)150 4834 y(appropriate)j(c)m(haracter.)43 b(The)30
+b Ft(RET)f Fu(k)m(ey)i(ma)m(y)g(b)s(e)f(lab)s(eled)h
+Ft(Return)d Fu(or)j Ft(Enter)d Fu(on)j(some)g(k)m(eyb)s(oards.)150
+5071 y Fs(8.2)68 b(Readline)47 b(In)l(teraction)150 5230
+y Fu(Often)32 b(during)g(an)g(in)m(teractiv)m(e)j(session)e(y)m(ou)g(t)
+m(yp)s(e)g(in)f(a)h(long)g(line)g(of)f(text,)j(only)d(to)i(notice)g
+(that)f(the)150 5340 y(\014rst)f(w)m(ord)g(on)g(the)g(line)h(is)g
+(missp)s(elled.)46 b(The)32 b(Readline)h(library)f(giv)m(es)h(y)m(ou)g
+(a)g(set)g(of)f(commands)g(for)p eop end
+%%Page: 129 135
+TeXDict begin 129 134 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(129)150 299 y(manipulating)30
+b(the)g(text)h(as)f(y)m(ou)g(t)m(yp)s(e)g(it)g(in,)g(allo)m(wing)h(y)m
+(ou)f(to)h(just)e(\014x)g(y)m(our)h(t)m(yp)s(o,)g(and)g(not)g(forcing)
+150 408 y(y)m(ou)e(to)h(ret)m(yp)s(e)g(the)f(ma)5 b(jorit)m(y)29
+b(of)f(the)h(line.)40 b(Using)28 b(these)h(editing)g(commands,)f(y)m
+(ou)h(mo)m(v)m(e)g(the)g(cursor)150 518 y(to)35 b(the)f(place)i(that)e
+(needs)g(correction,)j(and)d(delete)h(or)f(insert)h(the)f(text)h(of)g
+(the)f(corrections.)54 b(Then,)150 628 y(when)24 b(y)m(ou)h(are)g
+(satis\014ed)g(with)g(the)g(line,)i(y)m(ou)e(simply)f(press)g
+Ft(RET)p Fu(.)39 b(Y)-8 b(ou)25 b(do)g(not)g(ha)m(v)m(e)h(to)g(b)s(e)e
+(at)h(the)h(end)150 737 y(of)33 b(the)h(line)g(to)g(press)e
+Ft(RET)p Fu(;)i(the)g(en)m(tire)g(line)f(is)h(accepted)g(regardless)g
+(of)f(the)h(lo)s(cation)h(of)e(the)h(cursor)150 847 y(within)c(the)g
+(line.)150 1048 y Fk(8.2.1)63 b(Readline)40 b(Bare)h(Essen)m(tials)150
+1195 y Fu(In)31 b(order)h(to)h(en)m(ter)g(c)m(haracters)g(in)m(to)g
+(the)g(line,)g(simply)e(t)m(yp)s(e)i(them.)46 b(The)31
+b(t)m(yp)s(ed)h(c)m(haracter)i(app)s(ears)150 1304 y(where)e(the)h
+(cursor)e(w)m(as,)j(and)e(then)g(the)h(cursor)e(mo)m(v)m(es)j(one)f
+(space)g(to)g(the)g(righ)m(t.)47 b(If)32 b(y)m(ou)h(mist)m(yp)s(e)g(a)
+150 1414 y(c)m(haracter,)f(y)m(ou)f(can)g(use)f(y)m(our)g(erase)h(c)m
+(haracter)h(to)f(bac)m(k)g(up)f(and)f(delete)j(the)f(mist)m(yp)s(ed)e
+(c)m(haracter.)275 1550 y(Sometimes)i(y)m(ou)g(ma)m(y)h(mist)m(yp)s(e)e
+(a)i(c)m(haracter,)g(and)e(not)i(notice)g(the)f(error)f(un)m(til)h(y)m
+(ou)g(ha)m(v)m(e)h(t)m(yp)s(ed)150 1659 y(sev)m(eral)e(other)f(c)m
+(haracters.)42 b(In)28 b(that)i(case,)g(y)m(ou)f(can)g(t)m(yp)s(e)h
+Fj(C-b)d Fu(to)j(mo)m(v)m(e)g(the)f(cursor)g(to)g(the)g(left,)i(and)150
+1769 y(then)f(correct)i(y)m(our)e(mistak)m(e.)42 b(Afterw)m(ards,)31
+b(y)m(ou)f(can)h(mo)m(v)m(e)h(the)e(cursor)g(to)h(the)g(righ)m(t)g
+(with)f Fj(C-f)p Fu(.)275 1905 y(When)i(y)m(ou)h(add)f(text)h(in)f(the)
+h(middle)f(of)h(a)g(line,)h(y)m(ou)e(will)h(notice)h(that)f(c)m
+(haracters)h(to)g(the)e(righ)m(t)150 2014 y(of)d(the)g(cursor)f(are)h
+(`pushed)e(o)m(v)m(er')j(to)g(mak)m(e)f(ro)s(om)g(for)f(the)h(text)h
+(that)f(y)m(ou)g(ha)m(v)m(e)h(inserted.)40 b(Lik)m(ewise,)150
+2124 y(when)d(y)m(ou)g(delete)i(text)g(b)s(ehind)c(the)j(cursor,)h(c)m
+(haracters)g(to)f(the)g(righ)m(t)g(of)g(the)g(cursor)e(are)i(`pulled)
+150 2234 y(bac)m(k')k(to)f(\014ll)g(in)f(the)h(blank)f(space)i(created)
+g(b)m(y)e(the)h(remo)m(v)-5 b(al)42 b(of)f(the)g(text.)73
+b(These)40 b(are)h(the)g(bare)150 2343 y(essen)m(tials)32
+b(for)e(editing)h(the)g(text)g(of)g(an)f(input)f(line:)150
+2505 y Fj(C-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(k)g(one)e(c)m(haracter.)
+150 2666 y Fj(C-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(one)h(c)m
+(haracter.)150 2827 y Ft(DEL)e Fu(or)i Ft(Backspace)630
+2936 y Fu(Delete)i(the)d(c)m(haracter)i(to)f(the)g(left)g(of)f(the)h
+(cursor.)150 3097 y Fj(C-d)336 b Fu(Delete)33 b(the)d(c)m(haracter)i
+(underneath)d(the)i(cursor.)150 3258 y(Prin)m(ting)g(c)m(haracters)630
+3368 y(Insert)f(the)g(c)m(haracter)i(in)m(to)g(the)e(line)h(at)g(the)g
+(cursor.)150 3529 y Fj(C-_)e Fu(or)i Fj(C-x)e(C-u)630
+3638 y Fu(Undo)k(the)h(last)g(editing)g(command.)50 b(Y)-8
+b(ou)34 b(can)f(undo)g(all)h(the)f(w)m(a)m(y)i(bac)m(k)f(to)g(an)g
+(empt)m(y)630 3748 y(line.)150 3910 y(Dep)s(ending)e(on)h(y)m(our)f
+(con\014guration,)i(the)f Ft(Backspace)e Fu(k)m(ey)i(migh)m(t)h(b)s(e)e
+(set)h(to)g(delete)h(the)f(c)m(haracter)150 4019 y(to)e(the)f(left)h
+(of)f(the)g(cursor)f(and)h(the)g Ft(DEL)f Fu(k)m(ey)i(set)g(to)f
+(delete)i(the)e(c)m(haracter)h(underneath)e(the)h(cursor,)150
+4129 y(lik)m(e)i Fj(C-d)p Fu(,)d(rather)i(than)f(the)g(c)m(haracter)i
+(to)f(the)g(left)g(of)g(the)f(cursor.)150 4329 y Fk(8.2.2)63
+b(Readline)40 b(Mo)m(v)m(emen)m(t)h(Commands)150 4476
+y Fu(The)34 b(ab)s(o)m(v)m(e)i(table)f(describ)s(es)f(the)g(most)h
+(basic)g(k)m(eystrok)m(es)h(that)f(y)m(ou)g(need)f(in)g(order)g(to)h
+(do)f(editing)150 4586 y(of)c(the)g(input)f(line.)40
+b(F)-8 b(or)31 b(y)m(our)e(con)m(v)m(enience,)k(man)m(y)c(other)h
+(commands)g(are)g(a)m(v)-5 b(ailable)32 b(in)d(addition)h(to)150
+4696 y Fj(C-b)p Fu(,)e Fj(C-f)p Fu(,)g Fj(C-d)p Fu(,)g(and)g
+Ft(DEL)p Fu(.)39 b(Here)29 b(are)g(some)g(commands)e(for)i(mo)m(ving)g
+(more)f(rapidly)g(within)g(the)g(line.)150 4857 y Fj(C-a)336
+b Fu(Mo)m(v)m(e)32 b(to)g(the)e(start)h(of)g(the)f(line.)150
+5018 y Fj(C-e)336 b Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h
+(line.)150 5179 y Fj(M-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(a)h(w)m
+(ord,)f(where)g(a)h(w)m(ord)f(is)g(comp)s(osed)g(of)h(letters)h(and)d
+(digits.)150 5340 y Fj(M-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(kw)m(ard)f(a)
+g(w)m(ord.)p eop end
+%%Page: 130 136
+TeXDict begin 130 135 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(130)150 299 y Fj(C-l)336
+b Fu(Clear)31 b(the)f(screen,)h(reprin)m(ting)f(the)h(curren)m(t)f
+(line)h(at)g(the)f(top.)275 460 y(Notice)c(ho)m(w)f Fj(C-f)e
+Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(c)m(haracter,)j(while)d
+Fj(M-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(w)m(ord.)39
+b(It)24 b(is)h(a)g(lo)s(ose)150 569 y(con)m(v)m(en)m(tion)32
+b(that)f(con)m(trol)g(k)m(eystrok)m(es)h(op)s(erate)e(on)g(c)m
+(haracters)h(while)f(meta)h(k)m(eystrok)m(es)h(op)s(erate)e(on)150
+679 y(w)m(ords.)150 879 y Fk(8.2.3)63 b(Readline)40 b(Killing)i
+(Commands)150 1026 y Fr(Killing)35 b Fu(text)28 b(means)e(to)h(delete)h
+(the)f(text)g(from)g(the)f(line,)i(but)e(to)h(sa)m(v)m(e)h(it)g(a)m(w)m
+(a)m(y)g(for)e(later)i(use,)f(usually)150 1136 y(b)m(y)g
+Fr(y)m(anking)35 b Fu(\(re-inserting\))28 b(it)g(bac)m(k)f(in)m(to)h
+(the)f(line.)40 b(\(`Cut')27 b(and)g(`paste')h(are)f(more)g(recen)m(t)h
+(jargon)f(for)150 1245 y(`kill')32 b(and)d(`y)m(ank'.\))275
+1381 y(If)g(the)i(description)f(for)g(a)h(command)f(sa)m(ys)g(that)h
+(it)g(`kills')g(text,)h(then)e(y)m(ou)g(can)h(b)s(e)e(sure)h(that)h(y)m
+(ou)150 1490 y(can)g(get)g(the)g(text)g(bac)m(k)g(in)f(a)h(di\013eren)m
+(t)g(\(or)g(the)f(same\))h(place)h(later.)275 1626 y(When)23
+b(y)m(ou)g(use)g(a)h(kill)g(command,)g(the)g(text)g(is)f(sa)m(v)m(ed)i
+(in)e(a)g Fr(kill-ring)p Fu(.)39 b(An)m(y)24 b(n)m(um)m(b)s(er)e(of)h
+(consecutiv)m(e)150 1735 y(kills)31 b(sa)m(v)m(e)i(all)f(of)f(the)g
+(killed)h(text)g(together,)g(so)g(that)f(when)f(y)m(ou)h(y)m(ank)h(it)f
+(bac)m(k,)h(y)m(ou)g(get)g(it)f(all.)43 b(The)150 1845
+y(kill)33 b(ring)f(is)g(not)h(line)g(sp)s(eci\014c;)g(the)g(text)g
+(that)g(y)m(ou)g(killed)f(on)h(a)f(previously)g(t)m(yp)s(ed)h(line)f
+(is)h(a)m(v)-5 b(ailable)150 1954 y(to)31 b(b)s(e)f(y)m(ank)m(ed)h(bac)
+m(k)g(later,)h(when)d(y)m(ou)i(are)g(t)m(yping)f(another)h(line.)275
+2090 y(Here)f(is)h(the)f(list)h(of)g(commands)f(for)g(killing)h(text.)
+150 2251 y Fj(C-k)336 b Fu(Kill)31 b(the)f(text)i(from)e(the)g(curren)m
+(t)g(cursor)g(p)s(osition)h(to)g(the)f(end)g(of)g(the)h(line.)150
+2411 y Fj(M-d)336 b Fu(Kill)27 b(from)f(the)g(cursor)g(to)h(the)f(end)g
+(of)h(the)f(curren)m(t)g(w)m(ord,)h(or,)h(if)e(b)s(et)m(w)m(een)h(w)m
+(ords,)g(to)g(the)630 2521 y(end)j(of)g(the)h(next)f(w)m(ord.)41
+b(W)-8 b(ord)30 b(b)s(oundaries)f(are)i(the)g(same)f(as)h(those)g(used)
+f(b)m(y)g Fj(M-f)p Fu(.)150 2681 y Fj(M-DEL)240 b Fu(Kill)34
+b(from)f(the)g(cursor)g(to)h(the)g(start)g(of)g(the)f(curren)m(t)g(w)m
+(ord,)h(or,)h(if)e(b)s(et)m(w)m(een)h(w)m(ords,)g(to)630
+2790 y(the)28 b(start)g(of)g(the)g(previous)f(w)m(ord.)39
+b(W)-8 b(ord)28 b(b)s(oundaries)e(are)i(the)g(same)g(as)g(those)g(used)
+f(b)m(y)630 2900 y Fj(M-b)p Fu(.)150 3060 y Fj(C-w)336
+b Fu(Kill)35 b(from)g(the)g(cursor)f(to)i(the)f(previous)g(whitespace.)
+55 b(This)34 b(is)h(di\013eren)m(t)h(than)e Fj(M-DEL)630
+3170 y Fu(b)s(ecause)c(the)h(w)m(ord)f(b)s(oundaries)f(di\013er.)275
+3331 y(Here)42 b(is)f(ho)m(w)h(to)g Fr(y)m(ank)47 b Fu(the)42
+b(text)g(bac)m(k)h(in)m(to)f(the)g(line.)74 b(Y)-8 b(anking)43
+b(means)e(to)h(cop)m(y)h(the)e(most-)150 3440 y(recen)m(tly-killed)33
+b(text)e(from)f(the)g(kill)i(bu\013er)d(in)m(to)i(the)g(line)g(at)g
+(the)f(curren)m(t)g(cursor)g(p)s(osition.)150 3601 y
+Fj(C-y)336 b Fu(Y)-8 b(ank)31 b(the)f(most)h(recen)m(tly)h(killed)f
+(text)g(bac)m(k)g(in)m(to)h(the)e(bu\013er)g(at)h(the)f(cursor.)150
+3762 y Fj(M-y)336 b Fu(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 3871 y(command)30 b(is)h Fj(C-y)e Fu(or)h
+Fj(M-y)p Fu(.)150 4071 y Fk(8.2.4)63 b(Readline)40 b(Argumen)m(ts)150
+4218 y Fu(Y)-8 b(ou)40 b(can)f(pass)g(n)m(umeric)f(argumen)m(ts)i(to)f
+(Readline)h(commands.)67 b(Sometimes)39 b(the)g(argumen)m(t)h(acts)150
+4328 y(as)g(a)h(rep)s(eat)f(coun)m(t,)j(other)e(times)f(it)h(is)f(the)g
+Fl(sign)47 b Fu(of)41 b(the)f(argumen)m(t)g(that)h(is)f(signi\014can)m
+(t.)71 b(If)40 b(y)m(ou)150 4437 y(pass)33 b(a)h(negativ)m(e)i(argumen)
+m(t)e(to)g(a)g(command)f(whic)m(h)g(normally)h(acts)g(in)f(a)h(forw)m
+(ard)f(direction,)i(that)150 4547 y(command)g(will)h(act)g(in)f(a)h
+(bac)m(kw)m(ard)f(direction.)57 b(F)-8 b(or)36 b(example,)h(to)f(kill)g
+(text)g(bac)m(k)g(to)g(the)g(start)g(of)150 4657 y(the)31
+b(line,)g(y)m(ou)f(migh)m(t)h(t)m(yp)s(e)g(`)p Ft(M--)f(C-k)p
+Fu('.)275 4792 y(The)d(general)i(w)m(a)m(y)h(to)e(pass)g(n)m(umeric)g
+(argumen)m(ts)h(to)g(a)f(command)g(is)g(to)h(t)m(yp)s(e)f(meta)i
+(digits)e(b)s(efore)150 4902 y(the)j(command.)42 b(If)30
+b(the)h(\014rst)f(`digit')i(t)m(yp)s(ed)f(is)g(a)g(min)m(us)f(sign)h
+(\(`)p Ft(-)p Fu('\),)h(then)f(the)g(sign)f(of)h(the)g(argumen)m(t)150
+5011 y(will)39 b(b)s(e)e(negativ)m(e.)66 b(Once)38 b(y)m(ou)h(ha)m(v)m
+(e)g(t)m(yp)s(ed)f(one)h(meta)g(digit)g(to)f(get)i(the)e(argumen)m(t)h
+(started,)i(y)m(ou)150 5121 y(can)29 b(t)m(yp)s(e)g(the)g(remainder)f
+(of)h(the)g(digits,)h(and)f(then)f(the)h(command.)40
+b(F)-8 b(or)30 b(example,)g(to)f(giv)m(e)i(the)e Fj(C-d)150
+5230 y Fu(command)37 b(an)g(argumen)m(t)h(of)g(10,)i(y)m(ou)e(could)f
+(t)m(yp)s(e)h(`)p Ft(M-1)29 b(0)h(C-d)p Fu(',)39 b(whic)m(h)e(will)h
+(delete)h(the)e(next)h(ten)150 5340 y(c)m(haracters)32
+b(on)e(the)h(input)e(line.)p eop end
+%%Page: 131 137
+TeXDict begin 131 136 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(131)150 299 y Fk(8.2.5)63
+b(Searc)m(hing)40 b(for)i(Commands)g(in)f(the)g(History)150
+446 y Fu(Readline)35 b(pro)m(vides)f(commands)g(for)g(searc)m(hing)h
+(through)e(the)i(command)f(history)g(\(see)h(Section)g(9.1)150
+555 y([Bash)i(History)h(F)-8 b(acilities],)42 b(page)37
+b(166\))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 665 y(searc)m(h)31 b(mo)s(des:)40
+b Fr(incremen)m(tal)35 b Fu(and)30 b Fr(non-incremen)m(tal)p
+Fu(.)275 794 y(Incremen)m(tal)c(searc)m(hes)h(b)s(egin)e(b)s(efore)g
+(the)h(user)f(has)h(\014nished)e(t)m(yping)i(the)g(searc)m(h)g(string.)
+39 b(As)26 b(eac)m(h)150 903 y(c)m(haracter)37 b(of)e(the)h(searc)m(h)g
+(string)f(is)h(t)m(yp)s(ed,)g(Readline)g(displa)m(ys)g(the)f(next)h(en)
+m(try)g(from)e(the)i(history)150 1013 y(matc)m(hing)d(the)g(string)f(t)
+m(yp)s(ed)g(so)g(far.)46 b(An)32 b(incremen)m(tal)h(searc)m(h)g
+(requires)f(only)g(as)g(man)m(y)g(c)m(haracters)150 1123
+y(as)i(needed)f(to)h(\014nd)e(the)h(desired)g(history)g(en)m(try)-8
+b(.)51 b(When)33 b(using)g(emacs)h(editing)g(mo)s(de,)g(t)m(yp)s(e)g
+Fj(C-r)e Fu(to)150 1232 y(searc)m(h)26 b(bac)m(kw)m(ard)f(in)g(the)g
+(history)g(for)g(a)g(particular)g(string.)39 b(T)m(yping)25
+b Fj(C-s)f Fu(searc)m(hes)i(forw)m(ard)f(through)150
+1342 y(the)32 b(history)-8 b(.)44 b(The)31 b(c)m(haracters)i(presen)m
+(t)f(in)f(the)h(v)-5 b(alue)32 b(of)f(the)h Ft(isearch-terminators)26
+b Fu(v)-5 b(ariable)33 b(are)150 1451 y(used)26 b(to)h(terminate)h(an)e
+(incremen)m(tal)i(searc)m(h.)41 b(If)26 b(that)h(v)-5
+b(ariable)27 b(has)g(not)g(b)s(een)f(assigned)h(a)g(v)-5
+b(alue,)28 b(the)150 1561 y Ft(ESC)g Fu(and)g Fj(C-j)f
+Fu(c)m(haracters)j(terminate)g(an)e(incremen)m(tal)i(searc)m(h.)41
+b Fj(C-g)28 b Fu(ab)s(orts)g(an)g(incremen)m(tal)i(searc)m(h)150
+1671 y(and)g(restores)h(the)g(original)h(line.)42 b(When)30
+b(the)h(searc)m(h)h(is)e(terminated,)i(the)f(history)f(en)m(try)h(con)m
+(taining)150 1780 y(the)g(searc)m(h)g(string)f(b)s(ecomes)h(the)f
+(curren)m(t)g(line.)275 1909 y(T)-8 b(o)31 b(\014nd)e(other)j(matc)m
+(hing)g(en)m(tries)g(in)e(the)h(history)g(list,)h(t)m(yp)s(e)g
+Fj(C-r)e Fu(or)h Fj(C-s)f Fu(as)h(appropriate.)43 b(This)150
+2019 y(searc)m(hes)34 b(bac)m(kw)m(ard)f(or)f(forw)m(ard)g(in)h(the)g
+(history)f(for)h(the)f(next)h(en)m(try)g(matc)m(hing)h(the)f(searc)m(h)
+g(string)150 2128 y(t)m(yp)s(ed)28 b(so)h(far.)40 b(An)m(y)29
+b(other)g(k)m(ey)g(sequence)g(b)s(ound)e(to)i(a)g(Readline)h(command)e
+(terminates)h(the)g(searc)m(h)150 2238 y(and)38 b(executes)h(that)g
+(command.)64 b(F)-8 b(or)39 b(instance,)i(a)d Ft(RET)f
+Fu(terminates)j(the)e(searc)m(h)h(and)e(accepts)j(the)150
+2347 y(line,)k(thereb)m(y)c(executing)i(the)e(command)h(from)f(the)g
+(history)h(list.)71 b(A)41 b(mo)m(v)m(emen)m(t)h(command)f(will)150
+2457 y(terminate)31 b(the)g(searc)m(h,)g(mak)m(e)h(the)e(last)h(line)g
+(found)e(the)i(curren)m(t)f(line,)h(and)f(b)s(egin)g(editing.)275
+2586 y(Readline)35 b(remem)m(b)s(ers)f(the)h(last)h(incremen)m(tal)g
+(searc)m(h)f(string.)54 b(If)34 b(t)m(w)m(o)j Fj(C-r)p
+Fu(s)c(are)i(t)m(yp)s(ed)g(without)150 2695 y(an)m(y)42
+b(in)m(terv)m(ening)i(c)m(haracters)f(de\014ning)f(a)g(new)g(searc)m(h)
+g(string,)k(Readline)c(uses)g(an)m(y)h(remem)m(b)s(ered)150
+2805 y(searc)m(h)31 b(string.)275 2934 y(Non-incremen)m(tal)48
+b(searc)m(hes)g(read)e(the)h(en)m(tire)h(searc)m(h)f(string)g(b)s
+(efore)f(starting)h(to)h(searc)m(h)f(for)150 3043 y(matc)m(hing)39
+b(history)f(en)m(tries.)64 b(The)38 b(searc)m(h)g(string)g(ma)m(y)h(b)s
+(e)e(t)m(yp)s(ed)g(b)m(y)h(the)g(user)g(or)g(b)s(e)f(part)h(of)g(the)
+150 3153 y(con)m(ten)m(ts)32 b(of)f(the)f(curren)m(t)g(line.)150
+3382 y Fs(8.3)68 b(Readline)47 b(Init)e(File)150 3542
+y Fu(Although)f(the)g(Readline)g(library)f(comes)i(with)e(a)h(set)h(of)
+f(Emacs-lik)m(e)h(k)m(eybindings)f(installed)g(b)m(y)150
+3651 y(default,)26 b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)
+m(t)f(set)g(of)g(k)m(eybindings.)38 b(An)m(y)25 b(user)f(can)h
+(customize)h(programs)150 3761 y(that)39 b(use)g(Readline)g(b)m(y)f
+(putting)h(commands)f(in)g(an)h Fr(inputrc)k Fu(\014le,)e(con)m(v)m(en)
+m(tionally)h(in)c(their)h(home)150 3871 y(directory)-8
+b(.)59 b(The)35 b(name)i(of)f(this)g(\014le)g(is)g(tak)m(en)h(from)f
+(the)g(v)-5 b(alue)37 b(of)f(the)g(shell)h(v)-5 b(ariable)36
+b Ft(INPUTRC)p Fu(.)56 b(If)150 3980 y(that)36 b(v)-5
+b(ariable)36 b(is)f(unset,)h(the)f(default)h(is)f Ft(~/.inputrc)p
+Fu(.)52 b(If)35 b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h
+(b)s(e)150 4090 y(read,)29 b(Readline)f(lo)s(oks)h(for)f
+Ft(/etc/inputrc)p Fu(.)36 b(The)28 b Ft(bind)e Fu(builtin)i(command)g
+(can)g(also)h(b)s(e)e(used)h(to)g(set)150 4199 y(Readline)j(k)m
+(eybindings)f(and)g(v)-5 b(ariables.)41 b(See)31 b(Section)g(4.2)g
+([Bash)g(Builtins],)g(page)g(60.)275 4328 y(When)36 b(a)h(program)g
+(that)g(uses)f(the)h(Readline)g(library)g(starts)g(up,)g(Readline)h
+(reads)e(the)h(init)g(\014le)150 4438 y(and)30 b(sets)h(an)m(y)f(v)-5
+b(ariables)31 b(and)f(k)m(ey)h(bindings)e(it)i(con)m(tains.)275
+4567 y(In)26 b(addition,)i(the)f Ft(C-x)i(C-r)d Fu(command)h(re-reads)g
+(this)f(init)h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m
+(hanges)150 4676 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g
+(it.)150 4864 y Fk(8.3.1)63 b(Readline)40 b(Init)h(File)g(Syn)m(tax)150
+5011 y Fu(There)f(are)i(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)
+m(ed)h(in)d(the)h(Readline)h(init)f(\014le.)73 b(Blank)41
+b(lines)h(are)150 5121 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
+(a)g(`)p Ft(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)41
+b(b)s(eginning)f(with)g(a)i(`)p Ft($)p Fu(')f(indicate)150
+5230 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g
+([Conditional)g(Init)e(Constructs],)j(page)e(141\).)64
+b(Other)150 5340 y(lines)31 b(denote)g(v)-5 b(ariable)31
+b(settings)g(and)f(k)m(ey)h(bindings.)p eop end
+%%Page: 132 138
+TeXDict begin 132 137 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(132)150 299 y(V)-8
+b(ariable)32 b(Settings)630 408 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 518 y(v)-5 b(ariables)34 b(in)f(Readline)i
+(using)e(the)g Ft(set)g Fu(command)g(within)g(the)h(init)g(\014le.)50
+b(The)33 b(syn)m(tax)630 628 y(is)d(simple:)870 763 y
+Ft(set)47 b Fj(variable)e(value)630 897 y Fu(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 1007 y(use)k
+Ft(vi)g Fu(line)h(editing)g(commands:)870 1142 y Ft(set)47
+b(editing-mode)d(vi)630 1277 y Fu(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 1386 y(to)c(case.)42 b(Unrecognized)31 b(v)-5
+b(ariable)31 b(names)g(are)f(ignored.)630 1521 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 1631 y(n)m(ull)e(or)g(empt)m(y)-8
+b(,)27 b Fr(on)d Fu(\(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 1740 y(b)s(eing)30 b(set)h(to)g(o\013.)630
+1875 y(The)37 b Ft(bind)30 b(-V)37 b Fu(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 1985 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)
+g(60.)630 2120 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 2280 y Ft(active-region-start-colo)o(r)1110
+2390 y Fu(A)27 b(string)f(v)-5 b(ariable)27 b(that)g(con)m(trols)h(the)
+f(text)g(color)h(and)e(bac)m(kground)g(when)1110 2499
+y(displa)m(ying)50 b(the)f(text)h(in)f(the)h(activ)m(e)h(region)f
+(\(see)g(the)g(description)f(of)1110 2609 y Ft(enable-active-region)25
+b Fu(b)s(elo)m(w\).)43 b(This)30 b(string)h(m)m(ust)f(not)h(tak)m(e)i
+(up)d(an)m(y)1110 2718 y(ph)m(ysical)25 b(c)m(haracter)h(p)s(ositions)f
+(on)g(the)f(displa)m(y)-8 b(,)27 b(so)e(it)g(should)f(consist)h(only)
+1110 2828 y(of)37 b(terminal)g(escap)s(e)g(sequences.)61
+b(It)36 b(is)h(output)g(to)g(the)g(terminal)g(b)s(efore)1110
+2937 y(displa)m(ying)h(the)f(text)i(in)e(the)h(activ)m(e)h(region.)63
+b(This)37 b(v)-5 b(ariable)38 b(is)f(reset)h(to)1110
+3047 y(the)29 b(default)g(v)-5 b(alue)29 b(whenev)m(er)f(the)h
+(terminal)g(t)m(yp)s(e)g(c)m(hanges.)41 b(The)28 b(default)1110
+3157 y(v)-5 b(alue)30 b(is)f(the)g(string)g(that)h(puts)e(the)i
+(terminal)f(in)g(standout)g(mo)s(de,)g(as)h(ob-)1110
+3266 y(tained)40 b(from)f(the)h(terminal's)g(terminfo)g(description.)68
+b(A)40 b(sample)f(v)-5 b(alue)1110 3376 y(migh)m(t)31
+b(b)s(e)f(`)p Ft(\\e[01;33m)p Fu('.)630 3536 y Ft
+(active-region-end-color)1110 3646 y Fu(A)48 b(string)g(v)-5
+b(ariable)48 b(that)h Ft(")p Fu(undo)s(es)p Ft(")d Fu(the)i(e\013ects)h
+(of)f Ft(active-region-)1110 3755 y(start-color)36 b
+Fu(and)i(restores)h Ft(")p Fu(normal)p Ft(")f Fu(terminal)h(displa)m(y)
+g(app)s(earance)1110 3865 y(after)26 b(displa)m(ying)h(text)f(in)g(the)
+g(activ)m(e)i(region.)40 b(This)25 b(string)h(m)m(ust)f(not)h(tak)m(e)
+1110 3974 y(up)e(an)m(y)h(ph)m(ysical)h(c)m(haracter)h(p)s(ositions)d
+(on)h(the)h(displa)m(y)-8 b(,)27 b(so)e(it)g(should)f(con-)1110
+4084 y(sist)29 b(only)h(of)f(terminal)h(escap)s(e)f(sequences.)41
+b(It)29 b(is)g(output)g(to)h(the)f(terminal)1110 4194
+y(after)36 b(displa)m(ying)g(the)g(text)h(in)e(the)h(activ)m(e)i
+(region.)58 b(This)34 b(v)-5 b(ariable)37 b(is)f(re-)1110
+4303 y(set)e(to)g(the)g(default)g(v)-5 b(alue)34 b(whenev)m(er)f(the)h
+(terminal)g(t)m(yp)s(e)f(c)m(hanges.)51 b(The)1110 4413
+y(default)38 b(v)-5 b(alue)39 b(is)f(the)h(string)f(that)h(restores)f
+(the)h(terminal)f(from)g(stand-)1110 4522 y(out)30 b(mo)s(de,)f(as)g
+(obtained)h(from)f(the)g(terminal's)h(terminfo)f(description.)41
+b(A)1110 4632 y(sample)31 b(v)-5 b(alue)30 b(migh)m(t)h(b)s(e)f(`)p
+Ft(\\e[0m)p Fu('.)630 4792 y Ft(bell-style)1110 4902
+y Fu(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 5011 y(nal)37 b(b)s(ell.)61
+b(If)37 b(set)h(to)g(`)p Ft(none)p Fu(',)g(Readline)g(nev)m(er)g(rings)
+e(the)i(b)s(ell.)61 b(If)36 b(set)i(to)1110 5121 y(`)p
+Ft(visible)p Fu(',)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
+5230 y(`)p Ft(audible)p Fu(')j(\(the)i(default\),)i(Readline)e
+(attempts)g(to)h(ring)e(the)g(terminal's)1110 5340 y(b)s(ell.)p
+eop end
+%%Page: 133 139
+TeXDict begin 133 138 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(133)630 299 y Ft
+(bind-tty-special-chars)1110 408 y Fu(If)35 b(set)g(to)h(`)p
+Ft(on)p Fu(')f(\(the)g(default\),)i(Readline)f(attempts)g(to)g(bind)d
+(the)i(con)m(trol)1110 518 y(c)m(haracters)28 b(that)g(are)f(treated)g
+(sp)s(ecially)h(b)m(y)f(the)g(k)m(ernel's)g(terminal)g(driv)m(er)1110
+628 y(to)33 b(their)f(Readline)h(equiv)-5 b(alen)m(ts.)47
+b(These)32 b(o)m(v)m(erride)h(the)f(default)g(Readline)1110
+737 y(bindings)h(describ)s(ed)g(here.)51 b(T)m(yp)s(e)34
+b(`)p Ft(stty)29 b(-a)p Fu(')34 b(at)h(a)f(Bash)g(prompt)g(to)g(see)
+1110 847 y(y)m(our)h(curren)m(t)g(terminal)h(settings,)i(including)d
+(the)h(sp)s(ecial)f(con)m(trol)i(c)m(har-)1110 956 y(acters)31
+b(\(usually)g Ft(cchars)p Fu(\).)630 1121 y Ft(blink-matching-paren)
+1110 1230 y Fu(If)36 b(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)f
+(attempts)g(to)g(brie\015y)e(mo)m(v)m(e)j(the)f(cursor)e(to)i(an)1110
+1340 y(op)s(ening)k(paren)m(thesis)h(when)f(a)h(closing)h(paren)m
+(thesis)e(is)h(inserted.)74 b(The)1110 1450 y(default)31
+b(is)f(`)p Ft(off)p Fu('.)630 1614 y Ft(colored-completion-prefi)o(x)
+1110 1724 y Fu(If)f(set)h(to)g(`)p Ft(on)p Fu(',)g(when)e(listing)i
+(completions,)h(Readline)f(displa)m(ys)g(the)f(com-)1110
+1833 y(mon)c(pre\014x)f(of)i(the)f(set)h(of)g(p)s(ossible)f
+(completions)h(using)f(a)h(di\013eren)m(t)g(color.)1110
+1943 y(The)f(color)h(de\014nitions)f(are)h(tak)m(en)g(from)f(the)g(v)-5
+b(alue)26 b(of)g(the)f Ft(LS_COLORS)e Fu(en-)1110 2052
+y(vironmen)m(t)34 b(v)-5 b(ariable.)50 b(If)33 b(there)h(is)g(a)f
+(color)i(de\014nition)e(in)g Ft(LS_COLORS)e Fu(for)1110
+2162 y(the)22 b(custom)g(su\016x)f(`)p Ft(readline-colored-complet)o
+(ion)o(-pre)o(fix)p Fu(',)c(Read-)1110 2271 y(line)24
+b(uses)e(this)i(color)g(for)f(the)h(common)f(pre\014x)f(instead)i(of)f
+(its)h(default.)38 b(The)1110 2381 y(default)31 b(is)f(`)p
+Ft(off)p Fu('.)630 2545 y Ft(colored-stats)1110 2655
+y Fu(If)c(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(displa)m(ys)g(p)s
+(ossible)f(completions)h(using)f(di\013eren)m(t)1110
+2765 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
+2874 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Ft(LS_COLORS)d
+Fu(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
+2984 y(is)30 b(`)p Ft(off)p Fu('.)630 3148 y Ft(comment-begin)1110
+3258 y Fu(The)72 b(string)g(to)h(insert)f(at)i(the)e(b)s(eginning)g(of)
+g(the)h(line)g(b)m(y)f(the)1110 3367 y Ft(insert-comment)26
+b Fu(command.)41 b(The)30 b(default)g(v)-5 b(alue)31
+b(is)g Ft("#")p Fu(.)630 3532 y Ft(completion-display-width)1110
+3641 y Fu(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)g(to)
+h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 3751 y(when)28
+b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5 b(alue)29
+b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110 3861
+y(0)37 b(or)f(greater)i(than)e(the)g(terminal)h(screen)g(width.)58
+b(A)36 b(v)-5 b(alue)37 b(of)g(0)g(causes)1110 3970 y(matc)m(hes)32
+b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e(line.)41
+b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630 4134
+y Ft(completion-ignore-case)1110 4244 y Fu(If)d(set)h(to)g(`)p
+Ft(on)p Fu(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
+(and)e(completion)1110 4354 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 Ft(off)p
+Fu('.)630 4518 y Ft(completion-map-case)1110 4628 y Fu(If)22
+b(set)g(to)h(`)p Ft(on)p Fu(',)h(and)e Fr(completion-ignore-case)31
+b Fu(is)22 b(enabled,)i(Readline)f(treats)1110 4737 y(h)m(yphens)29
+b(\(`)p Ft(-)p Fu('\))j(and)e(underscores)g(\(`)p Ft(_)p
+Fu('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
+4847 y(case-insensitiv)m(e)47 b(\014lename)e(matc)m(hing)g(and)f
+(completion.)85 b(The)44 b(default)1110 4956 y(v)-5 b(alue)31
+b(is)f(`)p Ft(off)p Fu('.)630 5121 y Ft(completion-prefix-displa)o
+(y-le)o(ngth)1110 5230 y Fu(The)24 b(maxim)m(um)g(length)h(in)f(c)m
+(haracters)i(of)f(the)f(common)h(pre\014x)e(of)i(a)g(list)g(of)1110
+5340 y(p)s(ossible)i(completions)h(that)g(is)g(displa)m(y)m(ed)g
+(without)f(mo)s(di\014cation.)40 b(When)p eop end
+%%Page: 134 140
+TeXDict begin 134 139 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(134)1110 299 y(set)26
+b(to)h(a)f(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(Readline)e
+(replaces)h(common)f(pre\014xes)1110 408 y(longer)46
+b(than)f(this)h(v)-5 b(alue)46 b(with)f(an)h(ellipsis)g(when)e(displa)m
+(ying)i(p)s(ossible)1110 518 y(completions.)41 b(If)29
+b(a)g(completion)i(b)s(egins)d(with)h(a)g(p)s(erio)s(d,)g(and)f
+(Readline)i(is)1110 628 y(completing)22 b(\014lenames,)h(it)e(uses)g
+(three)g(underscores)e(instead)j(of)e(an)h(ellipsis.)630
+774 y Ft(completion-query-items)1110 883 y Fu(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 993 y(is)43 b(ask)m(ed)g(whether)f(the)g(list)
+h(of)g(p)s(ossibilities)g(should)f(b)s(e)g(displa)m(y)m(ed.)77
+b(If)1110 1103 y(the)47 b(n)m(um)m(b)s(er)e(of)i(p)s(ossible)f
+(completions)i(is)e(greater)i(than)e(or)h(equal)g(to)1110
+1212 y(this)38 b(v)-5 b(alue,)41 b(Readline)e(asks)f(whether)f(or)h
+(not)h(the)f(user)f(wishes)h(to)h(view)1110 1322 y(them;)33
+b(otherwise,)g(Readline)g(simply)f(lists)h(the)f(completions.)47
+b(This)31 b(v)-5 b(ari-)1110 1431 y(able)32 b(m)m(ust)f(b)s(e)g(set)h
+(to)g(an)g(in)m(teger)g(v)-5 b(alue)32 b(greater)h(than)e(or)h(equal)g
+(to)g(zero.)1110 1541 y(A)e(zero)h(v)-5 b(alue)30 b(means)g(Readline)g
+(should)f(nev)m(er)h(ask;)g(negativ)m(e)i(v)-5 b(alues)31
+b(are)1110 1650 y(treated)g(as)g(zero.)42 b(The)29 b(default)i(limit)g
+(is)g Ft(100)p Fu(.)630 1797 y Ft(convert-meta)1110 1906
+y Fu(If)36 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(con)m(v)m(erts)h
+(c)m(haracters)g(it)f(reads)f(that)h(ha)m(v)m(e)h(the)1110
+2016 y(eigh)m(th)e(bit)f(set)h(to)g(an)f Fm(asci)r(i)g
+Fu(k)m(ey)h(sequence)f(b)m(y)g(clearing)i(the)e(eigh)m(th)h(bit)1110
+2125 y(and)25 b(pre\014xing)g(an)h Ft(ESC)f Fu(c)m(haracter,)k(con)m(v)
+m(erting)e(them)f(to)h(a)f(meta-pre\014xed)1110 2235
+y(k)m(ey)f(sequence.)39 b(The)23 b(default)h(v)-5 b(alue)25
+b(is)f(`)p Ft(on)p Fu(',)h(but)e(Readline)i(sets)f(it)h(to)f(`)p
+Ft(off)p Fu(')1110 2345 y(if)h(the)g(lo)s(cale)i(con)m(tains)f(c)m
+(haracters)h(whose)e(enco)s(dings)g(ma)m(y)h(include)e(b)m(ytes)1110
+2454 y(with)g(the)h(eigh)m(th)g(bit)f(set.)40 b(This)23
+b(v)-5 b(ariable)25 b(is)g(dep)s(enden)m(t)e(on)i(the)f
+Ft(LC_CTYPE)1110 2564 y Fu(lo)s(cale)i(category)-8 b(,)28
+b(and)23 b(ma)m(y)i(c)m(hange)g(if)f(the)g(lo)s(cale)h(c)m(hanges.)40
+b(This)23 b(v)-5 b(ariable)1110 2673 y(also)23 b(a\013ects)h(k)m(ey)g
+(bindings;)g(see)f(the)f(description)h(of)g Ft(force-meta-prefix)1110
+2783 y Fu(b)s(elo)m(w.)630 2929 y Ft(disable-completion)1110
+3039 y Fu(If)k(set)h(to)g(`)p Ft(On)p Fu(',)g(Readline)g(inhibits)f(w)m
+(ord)g(completion.)41 b(Completion)28 b(c)m(har-)1110
+3148 y(acters)44 b(are)f(inserted)g(in)m(to)h(the)f(line)g(as)g(if)g
+(they)g(had)g(b)s(een)f(mapp)s(ed)f(to)1110 3258 y Ft(self-insert)p
+Fu(.)d(The)30 b(default)g(is)g(`)p Ft(off)p Fu('.)630
+3404 y Ft(echo-control-characters)1110 3513 y Fu(When)g(set)h(to)g(`)p
+Ft(on)p Fu(',)f(on)g(op)s(erating)h(systems)f(that)h(indicate)g(they)g
+(supp)s(ort)1110 3623 y(it,)e(Readline)g(ec)m(ho)s(es)g(a)f(c)m
+(haracter)i(corresp)s(onding)d(to)i(a)f(signal)h(generated)1110
+3733 y(from)h(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
+Ft(on)p Fu('.)630 3879 y Ft(editing-mode)1110 3988 y
+Fu(The)23 b Ft(editing-mode)d Fu(v)-5 b(ariable)24 b(con)m(trols)g(the)
+g(default)f(set)h(of)g(k)m(ey)g(bindings.)1110 4098 y(By)37
+b(default,)i(Readline)f(starts)g(up)d(in)i(emacs)h(editing)g(mo)s(de,)g
+(where)f(the)1110 4208 y(k)m(eystrok)m(es)d(are)g(most)f(similar)g(to)g
+(Emacs.)48 b(This)32 b(v)-5 b(ariable)34 b(can)f(b)s(e)f(set)h(to)1110
+4317 y(either)e(`)p Ft(emacs)p Fu(')e(or)i(`)p Ft(vi)p
+Fu('.)630 4463 y Ft(emacs-mode-string)1110 4573 y Fu(If)i(the)h
+Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i
+(this)f(string)f(is)h(dis-)1110 4682 y(pla)m(y)m(ed)24
+b(immediately)g(b)s(efore)f(the)g(last)h(line)f(of)h(the)f(primary)f
+(prompt)g(when)1110 4792 y(emacs)g(editing)h(mo)s(de)e(is)h(activ)m(e.)
+40 b(The)21 b(v)-5 b(alue)22 b(is)g(expanded)f(lik)m(e)h(a)h(k)m(ey)f
+(bind-)1110 4902 y(ing,)j(so)d(the)h(standard)f(set)h(of)g(meta-)h(and)
+e(con)m(trol-)i(pre\014xes)e(and)g(bac)m(kslash)1110
+5011 y(escap)s(e)32 b(sequences)f(is)h(a)m(v)-5 b(ailable.)46
+b(The)31 b(`)p Ft(\\1)p Fu(')g(and)g(`)p Ft(\\2)p Fu(')g(escap)s(es)h
+(b)s(egin)f(and)1110 5121 y(end)25 b(sequences)h(of)g(non-prin)m(ting)g
+(c)m(haracters,)i(whic)m(h)e(can)g(b)s(e)f(used)g(to)i(em-)1110
+5230 y(b)s(ed)i(a)i(terminal)g(con)m(trol)h(sequence)f(in)m(to)h(the)e
+(mo)s(de)h(string.)41 b(The)30 b(default)1110 5340 y(is)g(`)p
+Ft(@)p Fu('.)p eop end
+%%Page: 135 141
+TeXDict begin 135 140 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(135)630 299 y Ft
+(enable-active-region)1110 408 y Fr(p)s(oin)m(t)27 b
+Fu(is)e(the)h(curren)m(t)f(cursor)f(p)s(osition,)j(and)d
+Fr(mark)31 b Fu(refers)24 b(to)i(a)g(sa)m(v)m(ed)g(cur-)1110
+518 y(sor)i(p)s(osition)g(\(see)h(Section)g(8.4.1)h([Commands)d(F)-8
+b(or)29 b(Mo)m(ving],)h(page)f(145\).)1110 628 y(The)46
+b(text)h(b)s(et)m(w)m(een)h(the)e(p)s(oin)m(t)h(and)f(mark)g(is)g
+(referred)g(to)h(as)g(the)g Fr(re-)1110 737 y(gion)p
+Fu(.)80 b(When)44 b(this)f(v)-5 b(ariable)44 b(is)f(set)h(to)g(`)p
+Ft(On)p Fu(',)j(Readline)d(allo)m(ws)h(certain)1110 847
+y(commands)37 b(to)h(designate)h(the)e(region)h(as)g
+Fr(activ)m(e)p Fu(.)64 b(When)37 b(the)h(region)g(is)1110
+956 y(activ)m(e,)43 b(Readline)38 b(highligh)m(ts)h(the)g(text)g(in)e
+(the)i(region)g(using)e(the)h(v)-5 b(alue)1110 1066 y(of)35
+b(the)g Ft(active-region-start-color)p Fu(,)30 b(whic)m(h)35
+b(defaults)g(to)h(the)f(string)1110 1176 y(that)23 b(enables)f(the)g
+(terminal's)h(standout)e(mo)s(de.)38 b(The)21 b(activ)m(e)k(region)d
+(sho)m(ws)1110 1285 y(the)32 b(text)h(inserted)f(b)m(y)g(brac)m(k)m
+(eted-paste)i(and)e(an)m(y)g(matc)m(hing)h(text)g(found)1110
+1395 y(b)m(y)f(incremen)m(tal)i(and)e(non-incremen)m(tal)i(history)e
+(searc)m(hes.)48 b(The)32 b(default)1110 1504 y(is)e(`)p
+Ft(On)p Fu('.)630 1658 y Ft(enable-bracketed-paste)1110
+1767 y Fu(When)36 b(set)h(to)g(`)p Ft(On)p Fu(',)h(Readline)f
+(con\014gures)f(the)h(terminal)f(to)i(insert)e(eac)m(h)1110
+1877 y(paste)27 b(in)m(to)g(the)f(editing)h(bu\013er)e(as)h(a)h(single)
+g(string)f(of)g(c)m(haracters,)j(instead)1110 1987 y(of)d(treating)i
+(eac)m(h)g(c)m(haracter)f(as)g(if)f(it)h(had)f(b)s(een)f(read)i(from)e
+(the)i(k)m(eyb)s(oard.)1110 2096 y(This)36 b(is)h(called)h(putting)f
+(the)h(terminal)f(in)m(to)h Fr(brac)m(k)m(eted)h(paste)e(mo)s(de)5
+b Fu(;)40 b(it)1110 2206 y(prev)m(en)m(ts)30 b(Readline)h(from)e
+(executing)i(an)m(y)f(editing)h(commands)e(b)s(ound)f(to)1110
+2315 y(k)m(ey)j(sequences)g(app)s(earing)f(in)g(the)g(pasted)h(text.)42
+b(The)29 b(default)i(is)f(`)p Ft(On)p Fu('.)630 2469
+y Ft(enable-keypad)1110 2578 y Fu(When)k(set)h(to)g(`)p
+Ft(on)p Fu(',)h(Readline)f(tries)g(to)g(enable)g(the)g(application)h(k)
+m(eypad)1110 2688 y(when)26 b(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
+2798 y(The)j(default)g(is)h(`)p Ft(off)p Fu('.)630 2951
+y Ft(enable-meta-key)1110 3061 y Fu(When)22 b(set)h(to)f(`)p
+Ft(on)p Fu(',)i(Readline)f(tries)g(to)g(enable)f(an)m(y)h(meta)g(mo)s
+(di\014er)e(k)m(ey)i(the)1110 3170 y(terminal)35 b(claims)f(to)h(supp)s
+(ort)d(when)i(it)g(is)g(called.)53 b(On)33 b(man)m(y)h(terminals,)1110
+3280 y(the)45 b(Meta)i(k)m(ey)f(is)f(used)f(to)i(send)e(eigh)m(t-bit)j
+(c)m(haracters;)54 b(this)45 b(v)-5 b(ariable)1110 3389
+y(c)m(hec)m(ks)37 b(for)e(the)h(terminal)g(capabilit)m(y)i(that)e
+(indicates)h(the)e(terminal)i(can)1110 3499 y(enable)f(and)f(disable)h
+(a)g(mo)s(de)f(that)h(sets)g(the)g(eigh)m(th)g(bit)g(of)f(a)h(c)m
+(haracter)1110 3608 y(\(0200\))31 b(if)d(the)g(Meta)i(k)m(ey)f(is)f
+(held)g(do)m(wn)g(when)f(the)h(c)m(haracter)i(is)e(t)m(yp)s(ed)g(\(a)
+1110 3718 y(meta)j(c)m(haracter\).)43 b(The)30 b(default)g(is)h(`)p
+Ft(on)p Fu('.)630 3871 y Ft(expand-tilde)1110 3981 y
+Fu(If)h(set)h(to)h(`)p Ft(on)p Fu(',)f(Readline)h(attempts)f(tilde)h
+(expansion)e(when)g(it)h(attempts)1110 4091 y(w)m(ord)d(completion.)42
+b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 4244
+y Ft(force-meta-prefix)1110 4354 y Fu(If)h(set)i(to)g(`)p
+Ft(on)p Fu(',)f(Readline)h(mo)s(di\014es)e(its)h(b)s(eha)m(vior)g(when)
+f(binding)g(k)m(ey)h(se-)1110 4463 y(quences)22 b(con)m(taining)i
+Fj(\\M-)e Fu(or)h Ft(Meta-)e Fu(\(see)i Ft(Key)29 b(Bindings)21
+b Fu(in)h(Section)h(8.3.1)1110 4573 y([Readline)k(Init)f(File)i(Syn)m
+(tax],)g(page)f(131\))h(b)m(y)e(con)m(v)m(erting)i(a)e(k)m(ey)i
+(sequence)1110 4682 y(of)41 b(the)h(form)e Fj(\\M-)p
+Fr(C)48 b Fu(or)41 b Ft(Meta-)p Fr(C)48 b Fu(to)41 b(the)h(t)m(w)m(o-c)
+m(haracter)i(sequence)e Fj(ESC)1110 4792 y Fr(C)e Fu(\(adding)32
+b(the)g(meta)h(pre\014x\).)46 b(If)32 b Ft(force-meta-prefix)27
+b Fu(is)33 b(set)f(to)h(`)p Ft(off)p Fu(')1110 4902 y(\(the)25
+b(default\),)i(Readline)e(uses)f(the)h(v)-5 b(alue)25
+b(of)f(the)h Ft(convert-meta)c Fu(v)-5 b(ariable)1110
+5011 y(to)30 b(determine)f(whether)f(to)i(p)s(erform)d(this)i(con)m(v)m
+(ersion:)41 b(if)29 b Ft(convert-meta)1110 5121 y Fu(is)37
+b(`)p Ft(on)p Fu(',)i(Readline)f(p)s(erforms)d(the)j(con)m(v)m(ersion)g
+(describ)s(ed)e(ab)s(o)m(v)m(e;)42 b(if)37 b(it)h(is)1110
+5230 y(`)p Ft(off)p Fu(',)24 b(Readline)g(con)m(v)m(erts)g
+Fr(C)30 b Fu(to)23 b(a)h(meta)f(c)m(haracter)i(b)m(y)d(setting)i(the)f
+(eigh)m(th)1110 5340 y(bit)30 b(\(0200\).)44 b(The)29
+b(default)i(is)f(`)p Ft(off)p Fu('.)p eop end
+%%Page: 136 142
+TeXDict begin 136 141 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(136)630 299 y Ft
+(history-preserve-point)1110 408 y Fu(If)41 b(set)h(to)h(`)p
+Ft(on)p Fu(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
+(p)s(oin)m(t)f(\(the)1110 518 y(curren)m(t)35 b(cursor)g(p)s(osition\))
+g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g(line)1110
+628 y(retriev)m(ed)h(with)f Ft(previous-history)c Fu(or)37
+b Ft(next-history)p Fu(.)55 b(The)36 b(default)1110 737
+y(is)30 b(`)p Ft(off)p Fu('.)630 902 y Ft(history-size)1110
+1011 y Fu(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 1121
+y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 1230 y(new)e(en)m(tries)i
+(are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
+b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
+1340 y(of)44 b(history)g(en)m(tries)h(is)f(not)h(limited.)82
+b(By)45 b(default,)j(Bash)c(sets)g(the)h(the)1110 1450
+y(maxim)m(um)34 b(n)m(um)m(b)s(er)f(of)i(history)f(en)m(tries)h(to)g
+(the)f(v)-5 b(alue)35 b(of)g(the)f Ft(HISTSIZE)1110 1559
+y Fu(shell)27 b(v)-5 b(ariable.)41 b(If)27 b(y)m(ou)g(try)g(to)h(set)g
+Fr(history-size)34 b Fu(to)28 b(a)f(non-n)m(umeric)g(v)-5
+b(alue,)1110 1669 y(the)31 b(maxim)m(um)f(n)m(um)m(b)s(er)f(of)h
+(history)h(en)m(tries)g(will)g(b)s(e)e(set)i(to)g(500.)630
+1833 y Ft(horizontal-scroll-mode)1110 1943 y Fu(Setting)i(this)e(v)-5
+b(ariable)33 b(to)g(`)p Ft(on)p Fu(')e(means)h(that)g(the)g(text)h(of)f
+(the)g(lines)g(b)s(eing)1110 2052 y(edited)d(will)h(scroll)g(horizon)m
+(tally)h(on)e(a)g(single)h(screen)f(line)g(when)f(the)i(lines)1110
+2162 y(are)k(longer)h(than)e(the)h(width)g(of)g(the)g(screen,)h
+(instead)f(of)g(wrapping)f(on)m(to)1110 2271 y(a)42 b(new)f(screen)h
+(line.)74 b(This)41 b(v)-5 b(ariable)42 b(is)g(automatically)i(set)e
+(to)h(`)p Ft(on)p Fu(')e(for)1110 2381 y(terminals)31
+b(of)f(heigh)m(t)i(1.)41 b(By)30 b(default,)h(this)f(v)-5
+b(ariable)32 b(is)e(set)h(to)g(`)p Ft(off)p Fu('.)630
+2545 y Ft(input-meta)1110 2655 y Fu(If)g(set)h(to)h(`)p
+Ft(on)p Fu(',)f(Readline)g(enables)g(eigh)m(t-bit)i(input)c(\(that)j
+(is,)f(it)g(do)s(es)g(not)1110 2765 y(clear)j(the)g(eigh)m(th)g(bit)f
+(in)g(the)g(c)m(haracters)i(it)f(reads\),)g(regardless)g(of)f(what)1110
+2874 y(the)45 b(terminal)g(claims)h(it)g(can)f(supp)s(ort.)82
+b(The)45 b(default)g(v)-5 b(alue)45 b(is)g(`)p Ft(off)p
+Fu(',)1110 2984 y(but)31 b(Readline)i(sets)g(it)g(to)g(`)p
+Ft(on)p Fu(')f(if)g(the)g(lo)s(cale)i(con)m(tains)f(c)m(haracters)h
+(whose)1110 3093 y(enco)s(dings)c(ma)m(y)h(include)f(b)m(ytes)h(with)f
+(the)g(eigh)m(th)h(bit)f(set.)42 b(This)29 b(v)-5 b(ariable)1110
+3203 y(is)37 b(dep)s(enden)m(t)f(on)i(the)f Ft(LC_CTYPE)e
+Fu(lo)s(cale)k(category)-8 b(,)41 b(and)c(its)h(v)-5
+b(alue)37 b(ma)m(y)1110 3313 y(c)m(hange)g(if)f(the)g(lo)s(cale)h(c)m
+(hanges.)58 b(The)35 b(name)h Ft(meta-flag)d Fu(is)j(a)g(synon)m(ym)
+1110 3422 y(for)30 b Ft(input-meta)p Fu(.)630 3587 y
+Ft(isearch-terminators)1110 3696 y Fu(The)51 b(string)h(of)g(c)m
+(haracters)h(that)f(should)e(terminate)j(an)f(incremen)m(tal)1110
+3806 y(searc)m(h)84 b(without)f(subsequen)m(tly)g(executing)h(the)f(c)m
+(haracter)i(as)f(a)1110 3915 y(command)29 b(\(see)i(Section)f(8.2.5)h
+([Searc)m(hing],)g(page)f(131\).)42 b(If)29 b(this)g(v)-5
+b(ariable)1110 4025 y(has)33 b(not)g(b)s(een)g(giv)m(en)h(a)f(v)-5
+b(alue,)35 b(the)e(c)m(haracters)i Ft(ESC)d Fu(and)h
+Fj(C-j)f Fu(terminate)1110 4134 y(an)e(incremen)m(tal)i(searc)m(h.)630
+4299 y Ft(keymap)192 b Fu(Sets)64 b(Readline's)i(idea)f(of)f(the)h
+(curren)m(t)f(k)m(eymap)h(for)f(k)m(ey)h(binding)1110
+4408 y(commands.)71 b(Built-in)41 b Ft(keymap)e Fu(names)h(are)h
+Ft(emacs)p Fu(,)h Ft(emacs-standard)p Fu(,)1110 4518
+y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p Fu(,)f Ft(vi)p
+Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p Fu(,)f(and)1110
+4628 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44 b Fu(is)h(equiv)-5
+b(alen)m(t)46 b(to)g Ft(vi-command)c Fu(\()p Ft(vi-move)h
+Fu(is)i(also)h(a)1110 4737 y(synon)m(ym\);)41 b Ft(emacs)c
+Fu(is)h(equiv)-5 b(alen)m(t)39 b(to)f Ft(emacs-standard)p
+Fu(.)59 b(Applications)1110 4847 y(ma)m(y)35 b(add)f(additional)h
+(names.)52 b(The)34 b(default)h(v)-5 b(alue)34 b(is)h
+Ft(emacs)p Fu(;)g(the)f(v)-5 b(alue)1110 4956 y(of)31
+b(the)f Ft(editing-mode)d Fu(v)-5 b(ariable)31 b(also)h(a\013ects)f
+(the)g(default)g(k)m(eymap.)630 5121 y Ft(keyseq-timeout)1110
+5230 y Fu(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
+(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 5340
+y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
+(form)g(a)g(complete)h(k)m(ey)p eop end
+%%Page: 137 143
+TeXDict begin 137 142 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(137)1110 299 y(sequence)34
+b(using)e(the)i(input)e(read)h(so)g(far,)h(or)g(can)f(tak)m(e)i
+(additional)f(input)1110 408 y(to)27 b(complete)h(a)f(longer)g(k)m(ey)g
+(sequence\).)40 b(If)26 b(Readline)h(do)s(esn't)f(receiv)m(e)j(an)m(y)
+1110 518 y(input)j(within)f(the)i(timeout,)h(it)f(uses)g(the)f(shorter)
+g(but)g(complete)i(k)m(ey)f(se-)1110 628 y(quence.)39
+b(Readline)26 b(uses)f(this)h(v)-5 b(alue)26 b(to)g(determine)g
+(whether)f(or)g(not)h(input)1110 737 y(is)31 b(a)m(v)-5
+b(ailable)33 b(on)d(the)h(curren)m(t)f(input)g(source)h(\()p
+Ft(rl_instream)d Fu(b)m(y)i(default\).)1110 847 y(The)25
+b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h(milliseconds,)j(so)d(a)h
+(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)1110 956 y(Readline)32
+b(will)f(w)m(ait)h(one)g(second)f(for)g(additional)h(input.)42
+b(If)30 b(this)h(v)-5 b(ariable)1110 1066 y(is)40 b(set)g(to)h(a)f(v)-5
+b(alue)40 b(less)g(than)g(or)g(equal)g(to)h(zero,)i(or)d(to)g(a)g
+(non-n)m(umeric)1110 1176 y(v)-5 b(alue,)34 b(Readline)g(w)m(aits)g(un)
+m(til)g(another)f(k)m(ey)h(is)f(pressed)f(to)i(decide)f(whic)m(h)1110
+1285 y(k)m(ey)e(sequence)g(to)g(complete.)42 b(The)30
+b(default)h(v)-5 b(alue)30 b(is)h Ft(500)p Fu(.)630 1450
+y Ft(mark-directories)1110 1559 y Fu(If)38 b(set)g(to)h(`)p
+Ft(on)p Fu(',)i(completed)e(directory)f(names)g(ha)m(v)m(e)i(a)e(slash)
+g(app)s(ended.)1110 1669 y(The)30 b(default)g(is)h(`)p
+Ft(on)p Fu('.)630 1833 y Ft(mark-modified-lines)1110
+1943 y Fu(When)c(this)g(v)-5 b(ariable)28 b(is)f(set)g(to)h(`)p
+Ft(on)p Fu(',)g(Readline)f(displa)m(ys)g(an)g(asterisk)h(\(`)p
+Ft(*)p Fu('\))1110 2052 y(at)c(the)g(start)g(of)f(history)g(lines)h
+(whic)m(h)f(ha)m(v)m(e)i(b)s(een)d(mo)s(di\014ed.)38
+b(This)22 b(v)-5 b(ariable)1110 2162 y(is)30 b(`)p Ft(off)p
+Fu(')g(b)m(y)h(default.)630 2326 y Ft(mark-symlinked-directori)o(es)
+1110 2436 y Fu(If)59 b(set)h(to)g(`)p Ft(on)p Fu(',)67
+b(completed)60 b(names)f(whic)m(h)g(are)h(sym)m(b)s(olic)g(links)f(to)
+1110 2545 y(directories)71 b(ha)m(v)m(e)f(a)g(slash)g(app)s(ended,)77
+b(sub)5 b(ject)70 b(to)g(the)g(v)-5 b(alue)70 b(of)1110
+2655 y Ft(mark-directories)p Fu(.)36 b(The)30 b(default)h(is)f(`)p
+Ft(off)p Fu('.)630 2819 y Ft(match-hidden-files)1110
+2929 y Fu(This)24 b(v)-5 b(ariable,)26 b(when)e(set)h(to)g(`)p
+Ft(on)p Fu(',)g(forces)g(Readline)g(to)g(matc)m(h)h(\014les)e(whose)
+1110 3039 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Ft(.)p
+Fu(')g(\(hidden)f(\014les\))i(when)e(p)s(erforming)g(\014lename)1110
+3148 y(completion.)f(If)28 b(set)i(to)g(`)p Ft(off)p
+Fu(',)f(the)g(user)f(m)m(ust)h(include)g(the)g(leading)h(`)p
+Ft(.)p Fu(')f(in)1110 3258 y(the)i(\014lename)f(to)h(b)s(e)f
+(completed.)42 b(This)29 b(v)-5 b(ariable)31 b(is)g(`)p
+Ft(on)p Fu(')f(b)m(y)g(default.)630 3422 y Ft(menu-complete-display-pr)
+o(efix)1110 3532 y Fu(If)j(set)h(to)g(`)p Ft(on)p Fu(',)h(men)m(u)e
+(completion)i(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
+3641 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)
+s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 3751 y(through)30
+b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Ft(off)p
+Fu('.)630 3915 y Ft(output-meta)1110 4025 y Fu(If)23
+b(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)e(displa)m(ys)h(c)m
+(haracters)g(with)f(the)g(eigh)m(th)h(bit)f(set)h(di-)1110
+4134 y(rectly)29 b(rather)e(than)h(as)g(a)g(meta-pre\014xed)g(escap)s
+(e)g(sequence.)40 b(The)28 b(default)1110 4244 y(is)e(`)p
+Ft(off)p Fu(',)h(but)e(Readline)h(sets)h(it)f(to)h(`)p
+Ft(on)p Fu(')f(if)g(the)g(lo)s(cale)h(con)m(tains)g(c)m(haracters)1110
+4354 y(whose)36 b(enco)s(dings)g(ma)m(y)h(include)f(b)m(ytes)h(with)f
+(the)h(eigh)m(th)g(bit)g(set.)59 b(This)1110 4463 y(v)-5
+b(ariable)24 b(is)e(dep)s(enden)m(t)g(on)h(the)g Ft(LC_CTYPE)e
+Fu(lo)s(cale)j(category)-8 b(,)27 b(and)22 b(its)h(v)-5
+b(alue)1110 4573 y(ma)m(y)31 b(c)m(hange)g(if)g(the)f(lo)s(cale)i(c)m
+(hanges.)630 4737 y Ft(page-completions)1110 4847 y Fu(If)24
+b(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)f(uses)f(an)g(in)m(ternal)h
+(pager)f(resem)m(bling)h Fl(mor)-5 b(e)7 b Fu(\(1\))26
+b(to)1110 4956 y(displa)m(y)j(a)g(screenful)g(of)f(p)s(ossible)h
+(completions)h(at)f(a)g(time.)41 b(This)28 b(v)-5 b(ariable)1110
+5066 y(is)30 b(`)p Ft(on)p Fu(')h(b)m(y)f(default.)630
+5230 y Ft(prefer-visible-bell)1110 5340 y Fu(See)h Ft(bell-style)p
+Fu(.)p eop end
+%%Page: 138 144
+TeXDict begin 138 143 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(138)630 299 y Ft
+(print-completions-horizo)o(ntal)o(ly)1110 408 y Fu(If)38
+b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(displa)m(ys)f(completions)h
+(with)f(matc)m(hes)i(sorted)1110 518 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 628 y(The)30 b(default)g(is)h(`)p Ft(off)p
+Fu('.)630 784 y Ft(revert-all-at-newline)1110 894 y Fu(If)e(set)h(to)g
+(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f(all)h(c)m(hanges)h(to)f
+(history)g(lines)f(b)s(efore)1110 1003 y(returning)35
+b(when)f(executing)j Ft(accept-line)p Fu(.)54 b(By)36
+b(default,)h(history)f(lines)1110 1113 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 1223 y Ft(readline\(\))p Fu(.)38 b(The)30 b(default)g(is)h(`)p
+Ft(off)p Fu('.)630 1379 y Ft(search-ignore-case)1110
+1489 y Fu(If)j(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)e(p)s(erforms)f
+(incremen)m(tal)i(and)f(non-incremen)m(tal)1110 1598
+y(history)27 b(list)g(searc)m(hes)h(in)f(a)g(case-insensitiv)m(e)j
+(fashion.)39 b(The)26 b(default)h(v)-5 b(alue)1110 1708
+y(is)30 b(`)p Ft(off)p Fu('.)630 1864 y Ft(show-all-if-ambiguous)1110
+1974 y Fu(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 2084 y(to)f(`)p
+Ft(on)p Fu(',)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 2193 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 2303 y(The)30 b(default)g(v)-5
+b(alue)31 b(is)g(`)p Ft(off)p Fu('.)630 2459 y Ft
+(show-all-if-unmodified)1110 2569 y Fu(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 2679 y(fashion)25 b(similar)h(to)g Fr(sho)m(w-all-if-am)m(biguous)
+p Fu(.)41 b(If)25 b(set)h(to)h(`)p Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)
+1110 2788 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
+2898 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
+(don't)f(share)g(a)h(common)1110 3007 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 3117 y(ing)g(the)f(b)s(ell.)41
+b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Ft(off)p
+Fu('.)630 3273 y Ft(show-mode-in-prompt)1110 3383 y Fu(If)24
+b(set)h(to)g(`)p Ft(on)p Fu(',)g(add)f(a)h(string)f(to)h(the)f(b)s
+(eginning)g(of)g(the)h(prompt)e(indicating)1110 3493
+y(the)33 b(editing)h(mo)s(de:)46 b(emacs,)35 b(vi)e(command,)h(or)f(vi)
+h(insertion.)49 b(The)32 b(mo)s(de)1110 3602 y(strings)45
+b(are)h(user-settable)g(\(e.g.,)51 b Fr(emacs-mo)s(de-string)8
+b Fu(\).)87 b(The)45 b(default)1110 3712 y(v)-5 b(alue)31
+b(is)f(`)p Ft(off)p Fu('.)630 3868 y Ft(skip-completed-text)1110
+3978 y Fu(If)i(set)i(to)f(`)p Ft(on)p Fu(',)h(this)f(alters)g(the)g
+(default)g(completion)h(b)s(eha)m(vior)f(when)f(in-)1110
+4088 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
+b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)1110
+4197 y(ing)k(completion)i(in)e(the)g(middle)g(of)g(a)h(w)m(ord.)46
+b(If)32 b(enabled,)g(Readline)h(do)s(es)1110 4307 y(not)41
+b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
+(c)m(haracters)1110 4416 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f
+(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
+4526 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
+b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
+4635 y(abled,)h(attempting)h(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(\014rst)f(`)p Ft(e)p Fu(')1110 4745 y(in)23
+b(`)p Ft(Makefile)p Fu(')f(will)h(result)h(in)f(`)p Ft(Makefile)p
+Fu(')e(rather)i(than)h(`)p Ft(Makefilefile)p Fu(',)1110
+4855 y(assuming)35 b(there)g(is)h(a)f(single)h(p)s(ossible)f
+(completion.)56 b(The)35 b(default)g(v)-5 b(alue)1110
+4964 y(is)30 b(`)p Ft(off)p Fu('.)630 5121 y Ft(vi-cmd-mode-string)1110
+5230 y Fu(If)j(the)h Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5
+b(ariable)35 b(is)e(enabled,)i(this)f(string)f(is)h(dis-)1110
+5340 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the)g(last)h(line)f
+(of)h(the)f(primary)f(prompt)g(when)p eop end
+%%Page: 139 145
+TeXDict begin 139 144 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(139)1110 299 y(vi)32
+b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command)g(mo)s(de.)46
+b(The)31 b(v)-5 b(alue)33 b(is)f(ex-)1110 408 y(panded)23
+b(lik)m(e)j(a)e(k)m(ey)h(binding,)g(so)g(the)f(standard)g(set)h(of)f
+(meta-)h(and)f(con)m(trol-)1110 518 y(pre\014xes)31 b(and)h(bac)m
+(kslash)g(escap)s(e)h(sequences)f(is)g(a)m(v)-5 b(ailable.)48
+b(The)32 b(`)p Ft(\\1)p Fu(')g(and)1110 628 y(`)p Ft(\\2)p
+Fu(')40 b(escap)s(es)h(b)s(egin)g(and)f(end)f(sequences)i(of)g
+(non-prin)m(ting)f(c)m(haracters,)1110 737 y(whic)m(h)35
+b(can)g(b)s(e)f(used)g(to)i(em)m(b)s(ed)e(a)i(terminal)f(con)m(trol)i
+(sequence)e(in)m(to)h(the)1110 847 y(mo)s(de)30 b(string.)41
+b(The)30 b(default)g(is)g(`)p Ft(\(cmd\))p Fu('.)630
+990 y Ft(vi-ins-mode-string)1110 1100 y Fu(If)j(the)h
+Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5 b(ariable)35 b(is)e(enabled,)i
+(this)f(string)f(is)h(dis-)1110 1209 y(pla)m(y)m(ed)24
+b(immediately)g(b)s(efore)f(the)g(last)h(line)f(of)h(the)f(primary)f
+(prompt)g(when)1110 1319 y(vi)35 b(editing)h(mo)s(de)e(is)i(activ)m(e)h
+(and)d(in)h(insertion)g(mo)s(de.)54 b(The)35 b(v)-5 b(alue)35
+b(is)g(ex-)1110 1428 y(panded)23 b(lik)m(e)j(a)e(k)m(ey)h(binding,)g
+(so)g(the)f(standard)g(set)h(of)f(meta-)h(and)f(con)m(trol-)1110
+1538 y(pre\014xes)31 b(and)h(bac)m(kslash)g(escap)s(e)h(sequences)f(is)
+g(a)m(v)-5 b(ailable.)48 b(The)32 b(`)p Ft(\\1)p Fu(')g(and)1110
+1648 y(`)p Ft(\\2)p Fu(')40 b(escap)s(es)h(b)s(egin)g(and)f(end)f
+(sequences)i(of)g(non-prin)m(ting)f(c)m(haracters,)1110
+1757 y(whic)m(h)35 b(can)g(b)s(e)f(used)g(to)i(em)m(b)s(ed)e(a)i
+(terminal)f(con)m(trol)i(sequence)e(in)m(to)h(the)1110
+1867 y(mo)s(de)30 b(string.)41 b(The)30 b(default)g(is)g(`)p
+Ft(\(ins\))p Fu('.)630 2010 y Ft(visible-stats)1110 2120
+y Fu(If)h(set)i(to)f(`)p Ft(on)p Fu(',)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
+2229 y(\014lename)e(when)e(listing)i(p)s(ossible)f(completions.)42
+b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)150 2373
+y(Key)f(Bindings)630 2482 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 2592 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 2701 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 2811 y(and)30 b(a)h(short)f(description)g(of)h(what)f
+(the)g(command)h(do)s(es.)630 2937 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 3047 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 3157 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 3266 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 3376 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 3485 y(comfortable.)630
+3612 y(In)g(addition)h(to)g(command)g(names,)g(Readline)g(allo)m(ws)h
+(k)m(eys)g(to)f(b)s(e)f(b)s(ound)f(to)i(a)g(string)630
+3721 y(that)i(is)f(inserted)f(when)g(the)i(k)m(ey)f(is)g(pressed)f(\(a)
+i Fr(macro)5 b Fu(\).)55 b(The)35 b(di\013erence)g(b)s(et)m(w)m(een)h
+(a)630 3831 y(macro)31 b(and)f(a)h(command)f(is)g(that)h(a)g(macro)g
+(is)f(enclosed)h(in)f(single)h(or)g(double)f(quotes.)630
+3957 y(The)42 b Ft(bind)30 b(-p)42 b Fu(command)h(displa)m(ys)g
+(Readline)g(function)g(names)g(and)f(bindings)g(in)h(a)630
+4067 y(format)28 b(that)h(can)f(b)s(e)f(put)g(directly)i(in)m(to)f(an)g
+(initialization)j(\014le.)40 b(See)28 b(Section)h(4.2)g([Bash)630
+4177 y(Builtins],)i(page)g(60.)630 4320 y Fr(k)m(eyname)5
+b Fu(:)42 b Fr(function-name)35 b Fu(or)c Fr(macro)1110
+4430 y(k)m(eyname)k Fu(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
+4556 y Ft(Control-u:)45 b(universal-argument)1350 4666
+y(Meta-Rubout:)f(backward-kill-word)1350 4775 y(Control-o:)h(">)i
+(output")1110 4902 y Fu(In)94 b(the)g(example)h(ab)s(o)m(v)m(e,)112
+b Fj(C-u)94 b Fu(is)g(b)s(ound)f(to)i(the)f(function)1110
+5011 y Ft(universal-argument)p Fu(,)124 b Fj(M-DEL)107
+b Fu(is)i(b)s(ound)e(to)j(the)f(function)1110 5121 y
+Ft(backward-kill-word)p Fu(,)75 b(and)69 b Fj(C-o)g Fu(is)h(b)s(ound)e
+(to)j(run)d(the)i(macro)1110 5230 y(expressed)45 b(on)h(the)g(righ)m(t)
+g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
+Ft(>)1110 5340 y(output)p Fu(')29 b(in)m(to)i(the)g(line\).)p
+eop end
+%%Page: 140 146
+TeXDict begin 140 145 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(140)1110 299 y(This)26
+b(k)m(ey)h(binding)e(syn)m(tax)i(recognizes)i(a)e(n)m(um)m(b)s(er)e(of)
+h(sym)m(b)s(olic)h(c)m(haracter)1110 408 y(names:)43
+b Fr(DEL)p Fu(,)32 b Fr(ESC)p Fu(,)f Fr(ESCAPE)p Fu(,)g
+Fr(LFD)p Fu(,)h Fr(NEWLINE)p Fu(,)h Fr(RET)p Fu(,)e Fr(RETURN)p
+Fu(,)1110 518 y Fr(R)m(UBOUT)37 b Fu(\(a)31 b(destructiv)m(e)h(bac)m
+(kspace\),)g Fr(SP)-8 b(A)m(CE)p Fu(,)31 b Fr(SPC)p Fu(,)e(and)h
+Fr(T)-8 b(AB)p Fu(.)630 674 y Ft(")p Fr(k)m(eyseq)r Ft(")p
+Fu(:)41 b Fr(function-name)36 b Fu(or)30 b Fr(macro)1110
+783 y(k)m(eyseq)24 b Fu(di\013ers)c(from)g Fr(k)m(eyname)27
+b Fu(ab)s(o)m(v)m(e)22 b(in)e(that)h(strings)g(denoting)f(an)h(en)m
+(tire)1110 893 y(k)m(ey)i(sequence)f(can)h(b)s(e)e(sp)s(eci\014ed,)j(b)
+m(y)e(placing)h(the)f(k)m(ey)h(sequence)g(in)e(double)1110
+1003 y(quotes.)46 b(Some)32 b Fm(gnu)f Fu(Emacs)h(st)m(yle)h(k)m(ey)g
+(escap)s(es)f(can)g(b)s(e)f(used,)h(as)g(in)g(the)1110
+1112 y(follo)m(wing)47 b(example,)j(but)44 b(none)i(of)f(the)g(sp)s
+(ecial)h(c)m(haracter)h(names)f(are)1110 1222 y(recognized.)1350
+1354 y Ft("\\C-u":)g(universal-argument)1350 1464 y("\\C-x\\C-r":)f
+(re-read-init-file)1350 1574 y("\\e[11~":)g("Function)h(Key)g(1")1110
+1706 y Fu(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
+b Fj(C-u)64 b Fu(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
+1816 y Ft(universal-argument)39 b Fu(\(just)k(as)h(it)g(w)m(as)g(in)g
+(the)f(\014rst)g(example\),)49 b(`)p Fj(C-x)1110 1925
+y(C-r)p Fu(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
+Ft(re-read-init-file)p Fu(,)c(and)j(`)p Ft(ESC)h([)g(1)g(1)1110
+2035 y(~)p Fu(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Ft(Function)e(Key)g(1)p Fu('.)630 2191 y(The)g(follo)m(wing)i
+Fm(gnu)f Fu(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 2300 y(k)m(ey)i(sequences:)630
+2456 y Fj(\\C-)336 b Fu(A)30 b(con)m(trol)i(pre\014x.)630
+2612 y Fj(\\M-)336 b Fu(Adding)33 b(the)h(meta)g(pre\014x)f(or)h(con)m
+(v)m(erting)h(the)f(follo)m(wing)h(c)m(haracter)g(to)g(a)1110
+2721 y(meta)27 b(c)m(haracter,)h(as)e(describ)s(ed)e(ab)s(o)m(v)m(e)j
+(under)d Ft(force-meta-prefix)d Fu(\(see)1110 2831 y
+Ft(Variable)28 b(Settings)42 b Fu(in)h(Section)i(8.3.1)g([Readline)g
+(Init)e(File)i(Syn)m(tax],)1110 2941 y(page)31 b(131\).)630
+3096 y Fj(\\e)384 b Fu(An)30 b(escap)s(e)h(c)m(haracter.)630
+3252 y Fj(\\\\)384 b Fu(Bac)m(kslash.)630 3408 y Fj(\\)p
+Ft(")g(")p Fu(,)30 b(a)h(double)f(quotation)i(mark.)630
+3563 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe.)630 3719 y(In)d(addition)h(to)g(the)g Fm(gnu)f
+Fu(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
+(bac)m(kslash)630 3829 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+3985 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 4140
+y Ft(\\b)384 b Fu(bac)m(kspace)630 4296 y Ft(\\d)g Fu(delete)630
+4452 y Ft(\\f)g Fu(form)30 b(feed)630 4607 y Ft(\\n)384
+b Fu(newline)630 4763 y Ft(\\r)g Fu(carriage)32 b(return)630
+4919 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)630 5075
+y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)630 5230 y Ft(\\)p
+Fj(nnn)288 b Fu(The)31 b(eigh)m(t-bit)j(c)m(haracter)f(whose)f(v)-5
+b(alue)32 b(is)f(the)h(o)s(ctal)h(v)-5 b(alue)33 b Fr(nnn)d
+Fu(\(one)i(to)1110 5340 y(three)f(digits\).)p eop end
+%%Page: 141 147
+TeXDict begin 141 146 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(141)630 299 y Ft(\\x)p
+Fj(HH)288 b Fu(The)34 b(eigh)m(t-bit)j(c)m(haracter)f(whose)f(v)-5
+b(alue)35 b(is)g(the)g(hexadecimal)h(v)-5 b(alue)36 b
+Fr(HH)1110 408 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\).)630
+599 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
+708 y(indicate)d(a)f(macro)g(de\014nition.)45 b(Unquoted)32
+b(text)g(is)g(assumed)f(to)i(b)s(e)e(a)h(function)g(name.)630
+818 y(Tthe)24 b(bac)m(kslash)g(escap)s(es)h(describ)s(ed)e(ab)s(o)m(v)m
+(e)i(are)f(expanded)f(in)h(the)g(macro)h(b)s(o)s(dy)-8
+b(.)37 b(Bac)m(k-)630 928 y(slash)g(will)h(quote)h(an)m(y)f(other)f(c)m
+(haracter)j(in)d(the)h(macro)g(text,)j(including)c(`)p
+Ft(")p Fu(')h(and)f(`)p Ft(')p Fu('.)630 1037 y(F)-8
+b(or)29 b(example,)h(the)e(follo)m(wing)i(binding)e(will)g(mak)m(e)i(`)
+p Fj(C-x)f Ft(\\)p Fu(')g(insert)f(a)h(single)g(`)p Ft(\\)p
+Fu(')f(in)m(to)i(the)630 1147 y(line:)870 1297 y Ft("\\C-x\\\\":)45
+b("\\\\")150 1527 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
+150 1674 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
+(in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
+1783 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
+(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
+(erformed)f(as)i(the)150 1893 y(result)f(of)h(tests.)41
+b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(a)m(v)-5
+b(ailable.)150 2099 y Ft($if)336 b Fu(The)31 b Ft($if)f
+Fu(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 2208 y(terminal)37
+b(b)s(eing)f(used,)h(or)f(the)h(application)g(using)f(Readline.)59
+b(The)36 b(text)h(of)f(the)h(test,)630 2318 y(after)30
+b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f(to)h(the)g(end)f(of)h
+(the)f(line;)i(unless)e(otherwise)630 2427 y(noted,)i(no)f(c)m
+(haracters)i(are)f(required)e(to)i(isolate)i(it.)630
+2618 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e Fu(form)i(of)g(the)h
+Ft($if)e Fu(directiv)m(e)j(is)e(used)f(to)i(test)g(whether)e(Read-)1110
+2727 y(line)44 b(is)f(in)g Ft(emacs)f Fu(or)h Ft(vi)g
+Fu(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g(conjunction)
+1110 2837 y(with)c(the)h(`)p Ft(set)29 b(keymap)p Fu(')38
+b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
+2946 y(the)32 b Ft(emacs-standard)c Fu(and)j Ft(emacs-ctlx)d
+Fu(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 3056 y(starting)f(out)g
+(in)f Ft(emacs)f Fu(mo)s(de.)630 3246 y Ft(term)288 b
+Fu(The)26 b Ft(term=)g Fu(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 3356 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 3466 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
+Ft(=)p Fu(')g(is)g(tested)h(against)1110 3575 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 3685 y(name)j(b)s(efore)f(the)h(\014rst)f(`)p
+Ft(-)p Fu('.)47 b(This)32 b(allo)m(ws)i Ft(xterm)e Fu(to)h(matc)m(h)g
+(b)s(oth)f Ft(xterm)1110 3794 y Fu(and)e Ft(xterm-256color)p
+Fu(,)d(for)j(instance.)630 3985 y Ft(version)144 b Fu(The)44
+b Ft(version)f Fu(test)i(ma)m(y)h(b)s(e)e(used)f(to)j(p)s(erform)d
+(comparisons)i(against)1110 4094 y(sp)s(eci\014c)c(Readline)i(v)m
+(ersions.)74 b(The)42 b Ft(version)d Fu(expands)i(to)h(the)g(curren)m
+(t)1110 4204 y(Readline)25 b(v)m(ersion.)39 b(The)23
+b(set)h(of)g(comparison)h(op)s(erators)f(includes)f(`)p
+Ft(=)p Fu(')h(\(and)1110 4313 y(`)p Ft(==)p Fu('\),)33
+b(`)p Ft(!=)p Fu(',)f(`)p Ft(<=)p Fu(',)h(`)p Ft(>=)p
+Fu(',)f(`)p Ft(<)p Fu(',)h(and)e(`)p Ft(>)p Fu('.)46
+b(The)31 b(v)m(ersion)i(n)m(um)m(b)s(er)d(supplied)h(on)1110
+4423 y(the)23 b(righ)m(t)h(side)f(of)g(the)g(op)s(erator)h(consists)f
+(of)h(a)f(ma)5 b(jor)23 b(v)m(ersion)h(n)m(um)m(b)s(er,)f(an)1110
+4533 y(optional)29 b(decimal)g(p)s(oin)m(t,)g(and)f(an)g(optional)h
+(minor)f(v)m(ersion)g(\(e.g.,)j(`)p Ft(7.1)p Fu('\).)1110
+4642 y(If)24 b(the)h(minor)g(v)m(ersion)g(is)g(omitted,)i(it)e
+(defaults)g(to)h(`)p Ft(0)p Fu('.)39 b(The)24 b(op)s(erator)h(ma)m(y)
+1110 4752 y(b)s(e)g(separated)h(from)g(the)g(string)g
+Ft(version)d Fu(and)j(from)f(the)h(v)m(ersion)g(n)m(um)m(b)s(er)1110
+4861 y(argumen)m(t)34 b(b)m(y)g(whitespace.)51 b(The)34
+b(follo)m(wing)h(example)f(sets)g(a)g(v)-5 b(ariable)35
+b(if)1110 4971 y(the)c(Readline)g(v)m(ersion)f(b)s(eing)g(used)g(is)g
+(7.0)i(or)e(new)m(er:)1350 5121 y Ft($if)47 b(version)f(>=)h(7.0)1350
+5230 y(set)g(show-mode-in-prompt)42 b(on)1350 5340 y($endif)p
+eop end
+%%Page: 142 148
+TeXDict begin 142 147 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(142)630 299 y Ft(application)1110
+408 y Fu(The)21 b Fr(application)j Fu(construct)e(is)g(used)f(to)i
+(include)f(application-sp)s(eci\014c)h(set-)1110 518
+y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h(Readline)g(library)g
+(sets)g(the)g Fr(application)1110 628 y(name)p Fu(,)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 737 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 847 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 956 y(the)e(curren)m(t)f(or)g(previous)g(w)m(ord)g(in)g
+(Bash:)1350 1091 y Ft($if)47 b(Bash)1350 1200 y(#)g(Quote)g(the)g
+(current)f(or)h(previous)e(word)1350 1310 y("\\C-xq":)h
+("\\eb\\"\\ef\\"")1350 1420 y($endif)630 1579 y(variable)96
+b Fu(The)33 b Fr(v)-5 b(ariable)39 b Fu(construct)33
+b(pro)m(vides)g(simple)g(equalit)m(y)i(tests)e(for)g(Readline)1110
+1689 y(v)-5 b(ariables)32 b(and)f(v)-5 b(alues.)45 b(The)32
+b(p)s(ermitted)f(comparison)h(op)s(erators)f(are)i(`)p
+Ft(=)p Fu(',)1110 1798 y(`)p Ft(==)p Fu(',)49 b(and)44
+b(`)p Ft(!=)p Fu('.)85 b(The)44 b(v)-5 b(ariable)46 b(name)f(m)m(ust)g
+(b)s(e)g(separated)g(from)g(the)1110 1908 y(comparison)25
+b(op)s(erator)g(b)m(y)g(whitespace;)j(the)d(op)s(erator)g(ma)m(y)g(b)s
+(e)f(separated)1110 2017 y(from)36 b(the)h(v)-5 b(alue)37
+b(on)f(the)h(righ)m(t)g(hand)f(side)g(b)m(y)g(whitespace.)60
+b(String)37 b(and)1110 2127 y(b)s(o)s(olean)29 b(v)-5
+b(ariables)29 b(ma)m(y)h(b)s(e)e(tested.)41 b(Bo)s(olean)30
+b(v)-5 b(ariables)29 b(m)m(ust)g(b)s(e)f(tested)1110
+2237 y(against)33 b(the)e(v)-5 b(alues)32 b Fr(on)f Fu(and)g
+Fr(o\013)p Fu(.)44 b(The)31 b(follo)m(wing)i(example)f(is)f(equiv)-5
+b(alen)m(t)1110 2346 y(to)31 b(the)g Ft(mode=emacs)c
+Fu(test)32 b(describ)s(ed)d(ab)s(o)m(v)m(e:)1350 2481
+y Ft($if)47 b(editing-mode)d(==)k(emacs)1350 2590 y(set)f
+(show-mode-in-prompt)42 b(on)1350 2700 y($endif)150 2859
+y($else)240 b Fu(Commands)29 b(in)h(this)h(branc)m(h)e(of)i(the)f
+Ft($if)g Fu(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g(fails.)
+150 3019 y Ft($endif)192 b Fu(This)29 b(command,)i(as)f(seen)h(in)f
+(the)g(previous)g(example,)h(terminates)g(an)g Ft($if)e
+Fu(command.)150 3178 y Ft($include)96 b Fu(This)27 b(directiv)m(e)i
+(tak)m(es)g(a)f(single)g(\014lename)g(as)g(an)g(argumen)m(t)g(and)f
+(reads)g(commands)h(and)630 3288 y(k)m(ey)40 b(bindings)f(from)g(that)h
+(\014le.)68 b(F)-8 b(or)40 b(example,)j(the)d(follo)m(wing)h(directiv)m
+(e)g(reads)e(from)630 3397 y Ft(/etc/inputrc)p Fu(:)870
+3532 y Ft($include)46 b(/etc/inputrc)150 3731 y Fk(8.3.3)63
+b(Sample)41 b(Init)g(File)150 3878 y Fu(Here)27 b(is)f(an)h(example)g
+(of)f(an)h Fr(inputrc)k Fu(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)
+h(binding,)e(v)-5 b(ariable)27 b(assignmen)m(t,)i(and)150
+3988 y(conditional)j(syn)m(tax.)p eop end
+%%Page: 143 149
+TeXDict begin 143 148 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(143)390 408 y Ft(#)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(system-wide)e
+(bindings)h(and)g(variable)390 1285 y(#)h(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
+2929 y(#"\\M-OD":)379 b(backward-char)390 3039 y(#"\\M-OC":)g
+(forward-char)390 3148 y(#"\\M-OA":)g(previous-history)390
+3258 y(#"\\M-OB":)g(next-history)390 3367 y(#)390 3477
+y(#)47 b(Arrow)g(keys)f(in)i(ANSI)e(mode)390 3587 y(#)390
+3696 y("\\M-[D":)380 b(backward-char)390 3806 y("\\M-[C":)g
+(forward-char)390 3915 y("\\M-[A":)g(previous-history)390
+4025 y("\\M-[B":)g(next-history)390 4134 y(#)390 4244
+y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(keypad)f(mode)390
+4354 y(#)390 4463 y(#"\\M-\\C-OD":)331 b(backward-char)390
+4573 y(#"\\M-\\C-OC":)g(forward-char)390 4682 y(#"\\M-\\C-OA":)g
+(previous-history)390 4792 y(#"\\M-\\C-OB":)g(next-history)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: 144 150
+TeXDict begin 144 149 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(144)390 299 y Ft(#"\\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
+(are)h(convenient)e(for)i(shell)f(interaction)390 1504
+y($if)h(Bash)390 1614 y(#)g(edit)g(the)g(path)390 1724
+y("\\C-xp":)f("PATH=${PATH}\\e\\C-e\\C-a)o(\\ef)o(\\C-f)o(")390
+1833 y(#)h(prepare)f(to)h(type)g(a)h(quoted)e(word)g(--)390
+1943 y(#)h(insert)g(open)f(and)h(close)f(double)h(quotes)390
+2052 y(#)g(and)g(move)g(to)g(just)g(after)f(the)h(open)g(quote)390
+2162 y("\\C-x\\"":)e("\\"\\"\\C-b")390 2271 y(#)i(insert)g(a)g
+(backslash)e(\(testing)h(backslash)f(escapes)390 2381
+y(#)i(in)h(sequences)d(and)i(macros\))390 2491 y("\\C-x\\\\":)e("\\\\")
+390 2600 y(#)i(Quote)g(the)g(current)f(or)h(previous)e(word)390
+2710 y("\\C-xq":)h("\\eb\\"\\ef\\"")390 2819 y(#)h(Add)g(a)h(binding)e
+(to)h(refresh)f(the)h(line,)f(which)g(is)h(unbound)390
+2929 y("\\C-xr":)f(redraw-current-line)390 3039 y(#)h(Edit)g(variable)f
+(on)h(current)f(line.)390 3148 y("\\M-\\C-v":)f
+("\\C-a\\C-k$\\C-y\\M-\\C-e\\C-)o(a\\C-)o(y=")390 3258
+y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h
+(available)390 3587 y(set)f(bell-style)e(visible)390
+3806 y(#)i(don't)g(strip)f(characters)f(to)i(7)h(bits)e(when)h(reading)
+390 3915 y(set)g(input-meta)e(on)390 4134 y(#)i(allow)g(iso-latin1)e
+(characters)g(to)i(be)g(inserted)f(rather)390 4244 y(#)h(than)g
+(converted)e(to)j(prefix-meta)c(sequences)390 4354 y(set)j
+(convert-meta)d(off)390 4573 y(#)j(display)f(characters)f(with)i(the)g
+(eighth)f(bit)h(set)g(directly)390 4682 y(#)g(rather)g(than)f(as)h
+(meta-prefixed)e(characters)390 4792 y(set)i(output-meta)e(on)390
+5011 y(#)i(if)h(there)e(are)h(150)g(or)g(more)g(possible)e(completions)
+g(for)i(a)g(word,)390 5121 y(#)g(ask)g(whether)f(or)h(not)g(the)g(user)
+g(wants)f(to)h(see)g(all)g(of)g(them)390 5230 y(set)g
+(completion-query-items)42 b(150)p eop end
+%%Page: 145 151
+TeXDict begin 145 150 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(145)390 299 y Ft(#)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 1072 y Fs(8.4)68 b(Bindable)45 b(Readline)i(Commands)
+150 1231 y Fu(This)32 b(section)h(describ)s(es)f(Readline)h(commands)f
+(that)h(ma)m(y)h(b)s(e)d(b)s(ound)g(to)i(k)m(ey)g(sequences.)48
+b(Y)-8 b(ou)33 b(can)150 1341 y(list)40 b(y)m(our)f(k)m(ey)i(bindings)d
+(b)m(y)h(executing)i Ft(bind)29 b(-P)39 b Fu(or,)j(for)d(a)h(more)g
+(terse)g(format,)i(suitable)e(for)f(an)150 1450 y Fr(inputrc)34
+b Fu(\014le,)29 b Ft(bind)g(-p)p Fu(.)40 b(\(See)30 b(Section)f(4.2)h
+([Bash)g(Builtins],)g(page)g(60.\))41 b(Command)28 b(names)h(without)
+150 1560 y(an)h(accompan)m(ying)i(k)m(ey)f(sequence)g(are)g(un)m(b)s
+(ound)d(b)m(y)i(default.)275 1686 y(In)25 b(the)h(follo)m(wing)i
+(descriptions,)f Fr(p)s(oin)m(t)h Fu(refers)e(to)h(the)f(curren)m(t)g
+(cursor)g(p)s(osition,)h(and)f Fr(mark)31 b Fu(refers)150
+1796 y(to)24 b(a)g(cursor)f(p)s(osition)g(sa)m(v)m(ed)i(b)m(y)e(the)h
+Ft(set-mark)d Fu(command.)38 b(The)23 b(text)h(b)s(et)m(w)m(een)g(the)g
+(p)s(oin)m(t)f(and)g(mark)150 1906 y(is)31 b(referred)g(to)h(as)f(the)h
+Fr(region)p Fu(.)44 b(Readline)32 b(has)f(the)h(concept)g(of)f(an)h
+Fl(active)h(r)-5 b(e)g(gion)7 b Fu(:)44 b(when)30 b(the)h(region)150
+2015 y(is)k(activ)m(e,)k(Readline)c(redispla)m(y)h(highligh)m(ts)f(the)
+h(region)f(using)g(the)g(v)-5 b(alue)35 b(of)h(the)f
+Ft(active-region-)150 2125 y(start-color)26 b Fu(v)-5
+b(ariable.)41 b(The)29 b Ft(enable-active-region)24 b
+Fu(v)-5 b(ariable)30 b(turns)d(this)j(on)f(and)f(o\013.)41
+b(Sev)m(eral)150 2234 y(commands)30 b(set)h(the)f(region)h(to)h(activ)m
+(e;)g(those)f(are)g(noted)g(b)s(elo)m(w.)150 2418 y Fk(8.4.1)63
+b(Commands)42 b(F)-10 b(or)41 b(Mo)m(ving)150 2582 y
+Ft(beginning-of-line)26 b(\(C-a\))630 2691 y Fu(Mo)m(v)m(e)k(to)e(the)g
+(start)g(of)f(the)h(curren)m(t)f(line.)40 b(This)27 b(ma)m(y)h(also)h
+(b)s(e)e(b)s(ound)e(to)j(the)g(Home)g(k)m(ey)630 2801
+y(on)i(some)h(k)m(eyb)s(oards.)150 2944 y Ft(end-of-line)c(\(C-e\))630
+3054 y Fu(Mo)m(v)m(e)34 b(to)f(the)f(end)f(of)i(the)f(line.)46
+b(This)31 b(ma)m(y)i(also)g(b)s(e)e(b)s(ound)f(to)j(the)f(End)f(k)m(ey)
+i(on)f(some)630 3164 y(k)m(eyb)s(oards.)150 3307 y Ft(forward-char)27
+b(\(C-f\))630 3417 y Fu(Mo)m(v)m(e)35 b(forw)m(ard)d(a)i(c)m(haracter.)
+50 b(This)32 b(ma)m(y)i(also)g(b)s(e)e(b)s(ound)f(to)i(the)h(righ)m(t)f
+(arro)m(w)g(k)m(ey)h(on)630 3526 y(some)d(k)m(eyb)s(oards.)150
+3670 y Ft(backward-char)c(\(C-b\))630 3779 y Fu(Mo)m(v)m(e)32
+b(bac)m(k)f(a)g(c)m(haracter.)42 b(This)29 b(ma)m(y)i(also)g(b)s(e)e(b)
+s(ound)f(to)j(the)g(left)f(arro)m(w)h(k)m(ey)g(on)f(some)630
+3889 y(k)m(eyb)s(oards.)150 4033 y Ft(forward-word)d(\(M-f\))630
+4142 y Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(to)h(the)f(end)g(of)g(the)h
+(next)f(w)m(ord.)41 b(W)-8 b(ords)30 b(are)h(comp)s(osed)f(of)g
+(letters)i(and)630 4252 y(digits.)150 4395 y Ft(backward-word)27
+b(\(M-b\))630 4505 y Fu(Mo)m(v)m(e)36 b(bac)m(k)e(to)g(the)g(start)g
+(of)g(the)g(curren)m(t)f(or)g(previous)g(w)m(ord.)50
+b(W)-8 b(ords)34 b(are)g(comp)s(osed)630 4615 y(of)d(letters)g(and)f
+(digits.)150 4758 y Ft(shell-forward-word)25 b(\(M-C-f\))630
+4868 y Fu(Mo)m(v)m(e)30 b(forw)m(ard)e(to)h(the)f(end)f(of)h(the)h
+(next)f(w)m(ord.)40 b(W)-8 b(ords)28 b(are)g(delimited)h(b)m(y)f
+(non-quoted)630 4977 y(shell)j(metac)m(haracters.)150
+5121 y Ft(shell-backward-word)25 b(\(M-C-b\))630 5230
+y Fu(Mo)m(v)m(e)37 b(bac)m(k)e(to)h(the)f(start)g(of)g(the)g(curren)m
+(t)g(or)f(previous)h(w)m(ord.)53 b(W)-8 b(ords)35 b(are)g(delimited)630
+5340 y(b)m(y)30 b(non-quoted)h(shell)f(metac)m(haracters.)p
+eop end
+%%Page: 146 152
+TeXDict begin 146 151 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(146)150 299 y Ft
+(previous-screen-line)25 b(\(\))630 408 y Fu(A)m(ttempt)41
+b(to)g(mo)m(v)m(e)h(p)s(oin)m(t)e(to)h(the)f(same)h(ph)m(ysical)g
+(screen)f(column)g(on)g(the)g(previous)630 518 y(ph)m(ysical)26
+b(screen)f(line.)39 b(This)24 b(will)i(not)f(ha)m(v)m(e)h(the)f
+(desired)g(e\013ect)h(if)f(the)h(curren)m(t)e(Readline)630
+628 y(line)k(do)s(es)f(not)g(tak)m(e)i(up)d(more)i(than)f(one)g(ph)m
+(ysical)h(line)g(or)f(if)g(p)s(oin)m(t)h(is)f(not)h(greater)g(than)630
+737 y(the)j(length)f(of)h(the)f(prompt)g(plus)f(the)i(screen)f(width.)
+150 888 y Ft(next-screen-line)c(\(\))630 997 y Fu(A)m(ttempt)g(to)f(mo)
+m(v)m(e)i(p)s(oin)m(t)d(to)i(the)e(same)i(ph)m(ysical)f(screen)g
+(column)f(on)h(the)f(next)h(ph)m(ysical)630 1107 y(screen)e(line.)39
+b(This)23 b(will)g(not)h(ha)m(v)m(e)h(the)e(desired)g(e\013ect)i(if)e
+(the)g(curren)m(t)h(Readline)g(line)f(do)s(es)630 1217
+y(not)k(tak)m(e)i(up)e(more)g(than)g(one)g(ph)m(ysical)h(line)g(or)f
+(if)g(the)h(length)f(of)h(the)f(curren)m(t)g(Readline)630
+1326 y(line)k(is)f(not)h(greater)g(than)f(the)h(length)g(of)f(the)h
+(prompt)e(plus)h(the)g(screen)h(width.)150 1477 y Ft(clear-display)c
+(\(M-C-l\))630 1586 y Fu(Clear)33 b(the)g(screen)g(and,)h(if)e(p)s
+(ossible,)i(the)f(terminal's)g(scrollbac)m(k)i(bu\013er,)e(then)f
+(redra)m(w)630 1696 y(the)f(curren)m(t)f(line,)h(lea)m(ving)h(the)e
+(curren)m(t)h(line)f(at)h(the)g(top)g(of)f(the)h(screen.)150
+1846 y Ft(clear-screen)c(\(C-l\))630 1956 y Fu(Clear)35
+b(the)f(screen,)i(then)e(redra)m(w)g(the)h(curren)m(t)f(line,)i(lea)m
+(ving)g(the)f(curren)m(t)f(line)h(at)g(the)630 2066 y(top)c(of)f(the)h
+(screen.)150 2216 y Ft(redraw-current-line)25 b(\(\))630
+2326 y Fu(Refresh)30 b(the)g(curren)m(t)h(line.)41 b(By)30
+b(default,)h(this)f(is)h(un)m(b)s(ound.)150 2516 y Fk(8.4.2)63
+b(Commands)42 b(F)-10 b(or)41 b(Manipulating)h(The)f(History)150
+2683 y Ft(accept-line)27 b(\(Newline)h(or)i(Return\))630
+2793 y Fu(Accept)25 b(the)e(line)h(regardless)g(of)f(where)g(the)h
+(cursor)e(is.)39 b(If)23 b(this)g(line)h(is)f(non-empt)m(y)-8
+b(,)26 b(add)c(it)630 2903 y(to)27 b(the)f(history)g(list)h(according)g
+(to)g(the)f(setting)i(of)e(the)g Ft(HISTCONTROL)d Fu(and)j
+Ft(HISTIGNORE)630 3012 y Fu(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 3122 y(its)g(original)g
+(state.)150 3272 y Ft(previous-history)26 b(\(C-p\))630
+3382 y Fu(Mo)m(v)m(e)h(`bac)m(k')f(through)f(the)g(history)g(list,)i
+(fetc)m(hing)f(the)f(previous)f(command.)39 b(This)24
+b(ma)m(y)630 3491 y(also)31 b(b)s(e)f(b)s(ound)e(to)j(the)g(up)e(arro)m
+(w)i(k)m(ey)g(on)f(some)h(k)m(eyb)s(oards.)150 3642 y
+Ft(next-history)c(\(C-n\))630 3752 y Fu(Mo)m(v)m(e)k(`forw)m(ard')d
+(through)g(the)h(history)f(list,)i(fetc)m(hing)f(the)g(next)g(command.)
+40 b(This)27 b(ma)m(y)630 3861 y(also)k(b)s(e)f(b)s(ound)e(to)j(the)g
+(do)m(wn)f(arro)m(w)g(k)m(ey)i(on)e(some)h(k)m(eyb)s(oards.)150
+4012 y Ft(beginning-of-history)25 b(\(M-<\))630 4121
+y Fu(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
+b(.)150 4272 y Ft(end-of-history)26 b(\(M->\))630 4381
+y Fu(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
+4532 y Ft(reverse-search-history)24 b(\(C-r\))630 4642
+y Fu(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
+4751 y(tory)26 b(as)h(necessary)-8 b(.)40 b(This)25 b(is)i(an)f
+(incremen)m(tal)h(searc)m(h.)40 b(This)25 b(command)h(sets)h(the)f
+(region)630 4861 y(to)31 b(the)g(matc)m(hed)g(text)g(and)f(activ)-5
+b(ates)33 b(the)d(region.)150 5011 y Ft(forward-search-history)24
+b(\(C-s\))630 5121 y Fu(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h
+(the)e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)
+630 5230 y(history)38 b(as)g(necessary)-8 b(.)65 b(This)38
+b(is)g(an)g(incremen)m(tal)h(searc)m(h.)65 b(This)37
+b(command)h(sets)h(the)630 5340 y(region)31 b(to)g(the)g(matc)m(hed)g
+(text)g(and)f(activ)-5 b(ates)33 b(the)d(region.)p eop
+end
+%%Page: 147 153
+TeXDict begin 147 152 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(147)150 299 y Ft
+(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
+b(\(M-p\))630 408 y Fu(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 518 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
+(tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
+628 y(user.)k(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)m
+(ywhere)g(in)f(a)h(history)f(line.)150 784 y Ft
+(non-incremental-forward-)o(sear)o(ch-h)o(ist)o(ory)24
+b(\(M-n\))630 894 y Fu(Searc)m(h)44 b(forw)m(ard)f(starting)h(at)h(the)
+e(curren)m(t)h(line)g(and)f(mo)m(ving)h(`do)m(wn')g(through)f(the)630
+1003 y(history)27 b(as)f(necessary)i(using)e(a)h(non-incremen)m(tal)g
+(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i(the)630
+1113 y(user.)40 b(The)30 b(searc)m(h)h(string)f(ma)m(y)h(matc)m(h)g(an)
+m(ywhere)g(in)f(a)h(history)f(line.)150 1270 y Ft
+(history-search-backward)24 b(\(\))630 1379 y Fu(Searc)m(h)35
+b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g(the)f(string)h(of)g
+(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630 1489 y(start)g(of)h(the)f
+(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)58 b(The)35
+b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
+1598 y(b)s(eginning)44 b(of)g(a)h(history)g(line.)83
+b(This)44 b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)84
+b(By)44 b(default,)630 1708 y(this)32 b(command)h(is)f(un)m(b)s(ound,)f
+(but)h(ma)m(y)h(b)s(e)f(b)s(ound)e(to)j(the)g(P)m(age)h(Do)m(wn)f(k)m
+(ey)g(on)g(some)630 1817 y(k)m(eyb)s(oards.)150 1974
+y Ft(history-search-forward)24 b(\(\))630 2084 y Fu(Searc)m(h)f(forw)m
+(ard)e(through)h(the)h(history)f(for)g(the)g(string)h(of)f(c)m
+(haracters)i(b)s(et)m(w)m(een)f(the)f(start)630 2193
+y(of)g(the)h(curren)m(t)f(line)g(and)g(the)g(p)s(oin)m(t.)38
+b(The)22 b(searc)m(h)g(string)g(m)m(ust)g(matc)m(h)h(at)g(the)g(b)s
+(eginning)630 2303 y(of)33 b(a)g(history)f(line.)48 b(This)32
+b(is)h(a)g(non-incremen)m(tal)h(searc)m(h.)48 b(By)33
+b(default,)h(this)e(command)630 2412 y(is)e(un)m(b)s(ound,)e(but)i(ma)m
+(y)h(b)s(e)f(b)s(ound)e(to)j(the)g(P)m(age)h(Up)e(k)m(ey)h(on)f(some)h
+(k)m(eyb)s(oards.)150 2569 y Ft(history-substring-search)o(-bac)o(kwar)
+o(d)24 b(\(\))630 2679 y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f
+(the)h(history)g(for)g(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m
+(een)g(the)630 2788 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f
+(the)h(p)s(oin)m(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m
+(h)h(an)m(ywhere)630 2898 y(in)i(a)h(history)g(line.)47
+b(This)32 b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)47
+b(By)33 b(default,)h(this)e(command)630 3007 y(is)e(un)m(b)s(ound.)150
+3164 y Ft(history-substring-search)o(-for)o(ward)24 b(\(\))630
+3273 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
+3383 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
+(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
+630 3493 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
+(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
+(command)630 3602 y(is)e(un)m(b)s(ound.)150 3759 y Ft(yank-nth-arg)d
+(\(M-C-y\))630 3868 y Fu(Insert)e(the)i(\014rst)e(argumen)m(t)h(to)h
+(the)f(previous)g(command)f(\(usually)h(the)g(second)g(w)m(ord)g(on)630
+3978 y(the)k(previous)g(line\))g(at)h(p)s(oin)m(t.)40
+b(With)31 b(an)f(argumen)m(t)g Fr(n)p Fu(,)g(insert)f(the)i
+Fr(n)p Fu(th)e(w)m(ord)g(from)h(the)630 4088 y(previous)c(command)h
+(\(the)h(w)m(ords)e(in)h(the)g(previous)f(command)h(b)s(egin)f(with)h
+(w)m(ord)g(0\).)40 b(A)630 4197 y(negativ)m(e)28 b(argumen)m(t)e
+(inserts)f(the)h Fr(n)p Fu(th)f(w)m(ord)g(from)g(the)h(end)f(of)h(the)g
+(previous)f(command.)630 4307 y(Once)32 b(the)f(argumen)m(t)h
+Fr(n)f Fu(is)h(computed,)g(this)f(uses)h(the)f(history)h(expansion)f
+(facilities)j(to)630 4416 y(extract)e(the)e Fr(n)p Fu(th)g(w)m(ord,)g
+(as)h(if)f(the)h(`)p Ft(!)p Fj(n)p Fu(')f(history)g(expansion)h(had)e
+(b)s(een)h(sp)s(eci\014ed.)150 4573 y Ft(yank-last-arg)d(\(M-.)i(or)h
+(M-_\))630 4682 y Fu(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
+f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
+4792 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Ft(yank-nth-arg)p
+Fu(.)630 4902 y(Successiv)m(e)26 b(calls)g(to)f Ft(yank-last-arg)c
+Fu(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
+(inserting)630 5011 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
+(of)f(eac)m(h)h(line)630 5121 y(in)36 b(turn.)58 b(An)m(y)36
+b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
+(calls)h(determines)630 5230 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
+(switc)m(hes)h(the)630 5340 y(direction)23 b(through)e(the)i(history)f
+(\(bac)m(k)h(or)g(forw)m(ard\).)37 b(This)22 b(uses)g(the)g(history)g
+(expansion)p eop end
+%%Page: 148 154
+TeXDict begin 148 153 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(148)630 299 y(facilities)44
+b(to)e(extract)g(the)g(last)g(w)m(ord,)i(as)e(if)f(the)g(`)p
+Ft(!$)p Fu(')h(history)f(expansion)g(had)g(b)s(een)630
+408 y(sp)s(eci\014ed.)150 576 y Ft(operate-and-get-next)25
+b(\(C-o\))630 686 y Fu(Accept)30 b(the)g(curren)m(t)e(line)i(for)f
+(return)f(to)h(the)h(calling)g(application)h(as)e(if)g(a)h(newline)f
+(had)630 795 y(b)s(een)22 b(en)m(tered,)k(and)d(fetc)m(h)h(the)f(next)g
+(line)h(relativ)m(e)h(to)f(the)f(curren)m(t)g(line)h(from)f(the)g
+(history)630 905 y(for)31 b(editing.)43 b(A)31 b(n)m(umeric)f(argumen)m
+(t,)i(if)f(supplied,)f(sp)s(eci\014es)h(the)g(history)f(en)m(try)i(to)f
+(use)630 1014 y(instead)g(of)f(the)h(curren)m(t)f(line.)150
+1182 y Ft(fetch-history)d(\(\))630 1292 y Fu(With)e(a)f(n)m(umeric)g
+(argumen)m(t,)i(fetc)m(h)f(that)g(en)m(try)f(from)g(the)g(history)g
+(list)h(and)e(mak)m(e)i(it)g(the)630 1401 y(curren)m(t)30
+b(line.)41 b(Without)30 b(an)g(argumen)m(t,)h(mo)m(v)m(e)g(bac)m(k)g
+(to)f(the)g(\014rst)f(en)m(try)h(in)g(the)g(history)630
+1511 y(list.)150 1718 y Fk(8.4.3)63 b(Commands)42 b(F)-10
+b(or)41 b(Changing)g(T)-10 b(ext)150 1894 y Fj(end-of-file)27
+b Ft(\(usually)h(C-d\))630 2004 y Fu(The)e(c)m(haracter)h(indicating)h
+(end-of-\014le)e(as)h(set,)g(for)f(example,)i(b)m(y)e
+Ft(stty)p Fu(.)39 b(If)25 b(this)h(c)m(harac-)630 2113
+y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m(haracters)j(on)d(the)
+h(line,)i(and)d(p)s(oin)m(t)h(is)g(at)h(the)f(b)s(eginning)630
+2223 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g(it)g(as)f(the)h
+(end)f(of)g(input)f(and)h(returns)f Fm(eof)p Fu(.)150
+2391 y Ft(delete-char)e(\(C-d\))630 2500 y Fu(Delete)35
+b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
+(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2610
+y(as)i(the)f(tt)m(y)i Fm(eof)e Fu(c)m(haracter,)j(as)e
+Fj(C-d)e Fu(commonly)j(is,)f(see)g(ab)s(o)m(v)m(e)h(for)e(the)h
+(e\013ects.)55 b(This)630 2719 y(ma)m(y)31 b(also)g(b)s(e)f(b)s(ound)e
+(to)j(the)g(Delete)i(k)m(ey)e(on)f(some)h(k)m(eyb)s(oards.)150
+2887 y Ft(backward-delete-char)25 b(\(Rubout\))630 2997
+y Fu(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
+b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
+3106 y(c)m(haracters,)h(sa)m(ving)f(them)g(on)f(the)h(kill)g(ring,)f
+(instead)h(of)f(deleting)i(them.)150 3274 y Ft
+(forward-backward-delete-)o(char)24 b(\(\))630 3383 y
+Fu(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h(unless)d
+(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630 3493
+y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s(ehind)d
+(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
+3603 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+3770 y Ft(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 3880
+y Fu(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
+(v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
+3989 y(sequences)d(lik)m(e)g Fj(C-q)p Fu(,)f(for)g(example.)150
+4157 y Ft(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o(\))630
+4267 y Fu(Insert)g(the)g(c)m(haracter)i(t)m(yp)s(ed.)150
+4434 y Ft(bracketed-paste-begin)25 b(\(\))630 4544 y
+Fu(This)f(function)h(is)f(in)m(tended)h(to)h(b)s(e)e(b)s(ound)f(to)i
+(the)g Ft(")p Fu(brac)m(k)m(eted)h(paste)p Ft(")f Fu(escap)s(e)h
+(sequence)630 4653 y(sen)m(t)38 b(b)m(y)f(some)h(terminals,)i(and)d
+(suc)m(h)g(a)h(binding)e(is)i(assigned)f(b)m(y)h(default.)62
+b(It)38 b(allo)m(ws)630 4763 y(Readline)33 b(to)g(insert)g(the)f
+(pasted)h(text)g(as)g(a)g(single)g(unit)f(without)h(treating)h(eac)m(h)
+f(c)m(har-)630 4873 y(acter)40 b(as)f(if)g(it)g(had)f(b)s(een)g(read)h
+(from)f(the)h(k)m(eyb)s(oard.)66 b(The)39 b(c)m(haracters)h(are)f
+(inserted)630 4982 y(as)44 b(if)g(eac)m(h)i(one)e(w)m(as)g(b)s(ound)e
+(to)j Ft(self-insert)c Fu(instead)j(of)h(executing)g(an)m(y)f(editing)
+630 5092 y(commands.)630 5230 y(Brac)m(k)m(eted)38 b(paste)f(sets)f
+(the)h(region)f(\(the)h(c)m(haracters)g(b)s(et)m(w)m(een)g(p)s(oin)m(t)
+f(and)g(the)g(mark\))630 5340 y(to)31 b(the)g(inserted)f(text.)42
+b(It)30 b(sets)h(the)f Fl(active)j(r)-5 b(e)g(gion)p
+Fu(.)p eop end
+%%Page: 149 155
+TeXDict begin 149 154 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(149)150 299 y Ft(transpose-chars)
+26 b(\(C-t\))630 408 y Fu(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f
+(the)g(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e
+(the)g(cursor,)630 518 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g
+(w)m(ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e
+(end)g(of)h(the)630 628 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)
+h(last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
+b(Negativ)m(e)25 b(argumen)m(ts)630 737 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)150 892 y Ft(transpose-words)c(\(M-t\))630
+1001 y Fu(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
+(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)
+g(that)630 1111 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
+b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i(the)f
+(line,)i(this)e(transp)s(oses)g(the)630 1220 y(last)j(t)m(w)m(o)h(w)m
+(ords)e(on)g(the)h(line.)150 1375 y Ft(shell-transpose-words)25
+b(\(M-C-t\))630 1484 y Fu(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s
+(oin)m(t)g(past)g(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)
+s(oin)m(t)f(past)g(that)630 1594 y(w)m(ord)c(as)h(w)m(ell.)41
+b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
+(the)f(line,)i(this)e(transp)s(oses)g(the)630 1704 y(last)j(t)m(w)m(o)h
+(w)m(ords)d(on)i(the)f(line.)41 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h
+(the)h(same)f(as)h Ft(shell-forward-)630 1813 y(word)e
+Fu(and)h Ft(shell-backward-word)p Fu(.)150 1968 y Ft(upcase-word)d
+(\(M-u\))630 2077 y Fu(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g
+(follo)m(wing\))i(w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m
+(t,)e(upp)s(er-)630 2187 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)
+g(not)h(mo)m(v)m(e)h(the)e(cursor.)150 2341 y Ft(downcase-word)d
+(\(M-l\))630 2451 y Fu(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h
+(follo)m(wing\))i(w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m
+(t,)g(lo)m(w)m(ercase)630 2560 y(the)31 b(previous)e(w)m(ord,)i(but)e
+(do)i(not)f(mo)m(v)m(e)i(the)f(cursor.)150 2715 y Ft(capitalize-word)26
+b(\(M-c\))630 2824 y Fu(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
+(capitalize)630 2934 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
+(mo)m(v)m(e)i(the)f(cursor.)150 3088 y Ft(overwrite-mode)26
+b(\(\))630 3198 y Fu(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+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 3308 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)630 3417 y(insert)30 b(mo)s(de.)41
+b(This)30 b(command)h(a\013ects)h(only)e Ft(emacs)f Fu(mo)s(de;)i
+Ft(vi)f Fu(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 3527
+y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
+Ft(readline\(\))c Fu(starts)k(in)f(insert)g(mo)s(de.)630
+3659 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
+(ound)c(to)j Ft(self-insert)c Fu(replace)k(the)g(text)g(at)630
+3768 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
+(the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
+3878 y Ft(backward-delete-char)25 b Fu(replace)31 b(the)g(c)m(haracter)
+h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 4010
+y(By)g(default,)g(this)g(command)f(is)h(un)m(b)s(ound,)d(but)i(ma)m(y)h
+(b)s(e)f(b)s(ound)e(to)k(the)f(Insert)f(k)m(ey)h(on)630
+4120 y(some)g(k)m(eyb)s(oards.)150 4314 y Fk(8.4.4)63
+b(Killing)42 b(And)e(Y)-10 b(anking)150 4483 y Ft(kill-line)28
+b(\(C-k\))630 4593 y Fu(Kill)e(the)h(text)g(from)e(p)s(oin)m(t)h(to)h
+(the)f(end)f(of)h(the)h(curren)m(t)e(line.)40 b(With)27
+b(a)f(negativ)m(e)i(n)m(umeric)630 4702 y(argumen)m(t,)j(kill)g(bac)m
+(kw)m(ard)g(from)f(the)g(cursor)g(to)h(the)g(b)s(eginning)e(of)i(the)g
+(line.)150 4857 y Ft(backward-kill-line)25 b(\(C-x)30
+b(Rubout\))630 4966 y Fu(Kill)40 b(bac)m(kw)m(ard)h(from)e(the)h
+(cursor)g(to)g(the)g(b)s(eginning)g(of)g(the)g(curren)m(t)f(line.)70
+b(With)41 b(a)630 5076 y(negativ)m(e)31 b(n)m(umeric)e(argumen)m(t,)h
+(kill)g(forw)m(ard)f(from)f(the)i(cursor)e(to)i(the)f(end)g(of)g(the)g
+(line.)150 5230 y Ft(unix-line-discard)d(\(C-u\))630
+5340 y Fu(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f
+(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)p eop end
+%%Page: 150 156
+TeXDict begin 150 155 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(150)150 299 y Ft(kill-whole-line)
+26 b(\(\))630 408 y Fu(Kill)37 b(all)g(c)m(haracters)h(on)f(the)f
+(curren)m(t)h(line,)h(no)f(matter)g(where)f(p)s(oin)m(t)h(is.)59
+b(By)36 b(default,)630 518 y(this)30 b(is)h(un)m(b)s(ound.)150
+702 y Ft(kill-word)d(\(M-d\))630 812 y Fu(Kill)i(from)f(p)s(oin)m(t)g
+(to)h(the)g(end)e(of)i(the)f(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m
+(w)m(een)g(w)m(ords,)f(to)h(the)g(end)630 921 y(of)h(the)f(next)h(w)m
+(ord.)40 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f
+Ft(forward-word)p Fu(.)150 1105 y Ft(backward-kill-word)25
+b(\(M-DEL\))630 1215 y Fu(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m
+(t.)40 b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
+Ft(backward-word)p Fu(.)150 1399 y Ft(shell-kill-word)d(\(M-C-d\))630
+1508 y Fu(Kill)k(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
+(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
+(the)g(end)630 1618 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
+b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Ft
+(shell-forward-word)p Fu(.)150 1802 y Ft(shell-backward-kill-word)24
+b(\(\))630 1911 y Fu(Kill)e(the)h(w)m(ord)e(b)s(ehind)g(p)s(oin)m(t.)38
+b(W)-8 b(ord)22 b(b)s(oundaries)f(are)h(the)g(same)h(as)f
+Ft(shell-backward-)630 2021 y(word)p Fu(.)150 2205 y
+Ft(unix-word-rubout)k(\(C-w\))630 2314 y Fu(Kill)33 b(the)f(w)m(ord)g
+(b)s(ehind)f(p)s(oin)m(t,)i(using)f(white)g(space)h(as)f(a)h(w)m(ord)f
+(b)s(oundary)-8 b(,)32 b(sa)m(ving)h(the)630 2424 y(killed)e(text)g(on)
+g(the)f(kill-ring.)150 2608 y Ft(unix-filename-rubout)25
+b(\(\))630 2717 y Fu(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m
+(t,)j(using)e(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f
+(the)630 2827 y(w)m(ord)30 b(b)s(oundaries,)f(sa)m(ving)i(the)g(killed)
+g(text)g(on)g(the)f(kill-ring.)150 3011 y Ft(delete-horizontal-space)24
+b(\(\))630 3120 y Fu(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e
+(p)s(oin)m(t.)41 b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150
+3304 y Ft(kill-region)d(\(\))630 3414 y Fu(Kill)k(the)f(text)i(in)e
+(the)g(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f
+(is)g(un)m(b)s(ound.)150 3598 y Ft(copy-region-as-kill)25
+b(\(\))630 3707 y Fu(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h
+(the)f(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m
+(t)f(a)m(w)m(a)m(y)-8 b(.)630 3817 y(By)31 b(default,)f(this)h(command)
+f(is)g(un)m(b)s(ound.)150 4001 y Ft(copy-backward-word)25
+b(\(\))630 4111 y Fu(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
+(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
+f(are)i(the)630 4220 y(same)31 b(as)f Ft(backward-word)p
+Fu(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
+4404 y Ft(copy-forward-word)26 b(\(\))630 4514 y Fu(Cop)m(y)31
+b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
+(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
+4623 y(same)f(as)f Ft(forward-word)p Fu(.)38 b(By)30
+b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
+4807 y Ft(yank)f(\(C-y\))630 4917 y Fu(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 5101 y Ft(yank-pop)d(\(M-y\))630 5210
+y Fu(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
+5320 y(command)30 b(is)h Ft(yank)e Fu(or)h Ft(yank-pop)p
+Fu(.)p eop end
+%%Page: 151 157
+TeXDict begin 151 156 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(151)150 299 y Fk(8.4.5)63
+b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m(ts)150 500 y
+Ft(digit-argument)26 b(\()p Fj(M-0)p Ft(,)j Fj(M-1)p
+Ft(,)h(...)f Fj(M--)p Ft(\))630 610 y Fu(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 719 y Fj(M--)j Fu(starts)i(a)g(negativ)m(e)i(argumen)
+m(t.)150 938 y Ft(universal-argument)25 b(\(\))630 1047
+y Fu(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(y)f(one)630
+1157 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h(leading)h(min)m
+(us)e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630
+1267 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+m(y)f(digits,)i(executing)f Ft(universal-argument)630
+1376 y Fu(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+(otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
+1486 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+d(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
+1595 y(nor)41 b(min)m(us)f(sign,)k(the)e(argumen)m(t)f(coun)m(t)h(for)f
+(the)h(next)f(command)g(is)g(m)m(ultiplied)h(b)m(y)630
+1705 y(four.)54 b(The)35 b(argumen)m(t)g(coun)m(t)h(is)f(initially)h
+(one,)h(so)e(executing)i(this)e(function)f(the)i(\014rst)630
+1814 y(time)29 b(mak)m(es)h(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)h
+(second)g(time)g(mak)m(es)h(the)e(argumen)m(t)h(coun)m(t)630
+1924 y(sixteen,)i(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g
+(not)h(b)s(ound)d(to)k(a)e(k)m(ey)-8 b(.)150 2182 y Fk(8.4.6)63
+b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
+b(Y)-10 b(ou)150 2384 y Ft(complete)28 b(\(TAB\))630
+2493 y Fu(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
+(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
+2603 y(p)s(erformed)34 b(is)h(application-sp)s(eci\014c.)56
+b(Bash)35 b(attempts)h(completion)h(b)m(y)e(\014rst)f(c)m(hec)m(king)
+630 2712 y(for)23 b(an)m(y)i(programmable)e(completions)i(for)f(the)g
+(command)f(w)m(ord)h(\(see)g(Section)h(8.6)g([Pro-)630
+2822 y(grammable)i(Completion],)h(page)g(156\),)h(otherwise)e(treating)
+h(the)e(text)i(as)e(a)h(v)-5 b(ariable)28 b(\(if)630
+2932 y(the)23 b(text)h(b)s(egins)e(with)g(`)p Ft($)p
+Fu('\),)j(username)d(\(if)h(the)g(text)h(b)s(egins)e(with)h(`)p
+Ft(~)p Fu('\),)i(hostname)e(\(if)g(the)630 3041 y(text)k(b)s(egins)f
+(with)g(`)p Ft(@)p Fu('\),)h(or)f(command)g(\(including)g(aliases,)j
+(functions,)e(and)e(builtins\))h(in)630 3151 y(turn.)40
+b(If)30 b(none)g(of)g(these)h(pro)s(duces)e(a)i(matc)m(h,)g(it)g(falls)
+g(bac)m(k)g(to)g(\014lename)g(completion.)150 3369 y
+Ft(possible-completions)25 b(\(M-?\))630 3479 y Fu(List)35
+b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
+(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 3588
+y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
+(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
+b(of)630 3698 y Ft(completion-display-width)o Fu(,)g(the)j(v)-5
+b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
+b Ft(COLUMNS)p Fu(,)630 3807 y(or)30 b(the)h(screen)f(width,)g(in)g
+(that)h(order.)150 4026 y Ft(insert-completions)25 b(\(M-*\))630
+4135 y Fu(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
+(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
+4245 y(b)m(y)g Ft(possible-completions)p Fu(,)25 b(separated)31
+b(b)m(y)f(a)h(space.)150 4463 y Ft(menu-complete)c(\(\))630
+4573 y Fu(Similar)d(to)g Ft(complete)p Fu(,)f(but)h(replaces)g(the)g(w)
+m(ord)g(to)g(b)s(e)f(completed)i(with)e(a)i(single)f(matc)m(h)630
+4682 y(from)41 b(the)h(list)g(of)g(p)s(ossible)f(completions.)76
+b(Rep)s(eatedly)42 b(executing)h Ft(menu-complete)630
+4792 y Fu(steps)28 b(through)e(the)i(list)h(of)e(p)s(ossible)g
+(completions,)j(inserting)e(eac)m(h)g(matc)m(h)h(in)e(turn.)39
+b(A)m(t)630 4902 y(the)h(end)f(of)h(the)f(list)i(of)f(completions,)j
+Ft(menu-complete)36 b Fu(rings)j(the)h(b)s(ell)f(\(sub)5
+b(ject)40 b(to)630 5011 y(the)d(setting)h(of)e Ft(bell-style)p
+Fu(\))e(and)i(restores)h(the)g(original)h(text.)60 b(An)37
+b(argumen)m(t)g(of)f Fr(n)630 5121 y Fu(mo)m(v)m(es)i
+Fr(n)e Fu(p)s(ositions)g(forw)m(ard)g(in)g(the)h(list)g(of)f(matc)m
+(hes;)41 b(a)c(negativ)m(e)i(argumen)m(t)e(mo)m(v)m(es)630
+5230 y(bac)m(kw)m(ard)29 b(through)f(the)h(list.)41 b(This)28
+b(command)g(is)h(in)m(tended)g(to)g(b)s(e)f(b)s(ound)f(to)i
+Ft(TAB)p Fu(,)g(but)630 5340 y(is)h(un)m(b)s(ound)e(b)m(y)i(default.)p
+eop end
+%%Page: 152 158
+TeXDict begin 152 157 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(152)150 299 y Ft
+(menu-complete-backward)24 b(\(\))630 408 y Fu(Iden)m(tical)36
+b(to)g Ft(menu-complete)p Fu(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e
+(through)f(the)i(list)f(of)g(p)s(ossible)630 518 y(completions,)j(as)e
+(if)g Ft(menu-complete)c Fu(had)j(b)s(een)h(giv)m(en)g(a)g(negativ)m(e)
+i(argumen)m(t.)58 b(This)630 628 y(command)30 b(is)h(un)m(b)s(ound)c(b)
+m(y)k(default.)150 790 y Ft(export-completions)25 b(\(\))630
+899 y Fu(P)m(erform)43 b(completion)h(on)e(the)h(w)m(ord)g(b)s(efore)f
+(p)s(oin)m(t)h(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(and)e(write)630
+1009 y(the)28 b(list)h(of)f(p)s(ossible)f(completions)j(to)e
+(Readline's)h(output)f(stream)g(using)f(the)h(follo)m(wing)630
+1119 y(format,)j(writing)f(information)h(on)f(separate)i(lines:)705
+1254 y Fq(\017)60 b Fu(the)31 b(n)m(um)m(b)s(er)e(of)h(matc)m(hes)i
+Fr(N)10 b Fu(;)705 1390 y Fq(\017)60 b Fu(the)31 b(w)m(ord)f(b)s(eing)g
+(completed;)705 1526 y Fq(\017)60 b Fr(S)5 b Fu(:)p Fr(E)p
+Fu(,)25 b(where)d(S)h(and)f(E)h(are)h(the)f(start)h(and)e(end)h
+(o\013sets)h(of)f(the)g(w)m(ord)g(in)g(the)g(Readline)810
+1636 y(line)31 b(bu\013er;)e(then)705 1772 y Fq(\017)60
+b Fu(eac)m(h)32 b(matc)m(h,)f(one)g(p)s(er)e(line)630
+1934 y(If)j(there)h(are)g(no)f(matc)m(hes,)j(the)e(\014rst)e(line)i
+(will)g(b)s(e)f(\\0",)j(and)d(this)g(command)g(do)s(es)h(not)630
+2044 y(prin)m(t)42 b(an)m(y)h(output)e(after)i(the)g
+Fr(S)5 b Fu(:)p Fr(E)p Fu(.)76 b(If)42 b(there)g(is)h(only)f(a)h
+(single)g(matc)m(h,)j(this)c(prin)m(ts)630 2153 y(a)f(single)g(line)g
+(con)m(taining)h(it.)72 b(If)40 b(there)h(is)f(more)h(than)f(one)h
+(matc)m(h,)j(this)d(prin)m(ts)f(the)630 2263 y(common)31
+b(pre\014x)f(of)g(the)h(matc)m(hes,)h(whic)m(h)f(ma)m(y)g(b)s(e)f(empt)
+m(y)-8 b(,)32 b(on)f(the)g(\014rst)e(line)j(after)f(the)630
+2372 y Fr(S)5 b Fu(:)p Fr(E)p Fu(,)28 b(then)e(the)i(matc)m(hes)g(on)f
+(subsequen)m(t)f(lines.)40 b(In)26 b(this)h(case,)i Fr(N)37
+b Fu(will)27 b(include)g(the)g(\014rst)630 2482 y(line)k(with)f(the)g
+(common)h(pre\014x.)630 2618 y(The)41 b(user)g(or)g(application)i
+(should)d(b)s(e)h(able)h(to)g(accommo)s(date)h(the)f(p)s(ossibilit)m(y)
+g(of)g(a)630 2727 y(blank)25 b(line.)39 b(The)25 b(in)m(ten)m(t)i(is)e
+(that)h(the)g(user)e(or)i(application)g(reads)f Fr(N)36
+b Fu(lines)25 b(after)h(the)g(line)630 2837 y(con)m(taining)j
+Fr(S)5 b Fu(:)p Fr(E)33 b Fu(to)28 b(obtain)g(the)g(matc)m(h)g(list.)41
+b(This)26 b(command)i(is)f(un)m(b)s(ound)e(b)m(y)i(default.)150
+2999 y Ft(delete-char-or-list)e(\(\))630 3109 y Fu(Deletes)41
+b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
+(eginning)e(or)h(end)f(of)h(the)630 3218 y(line)49 b(\(lik)m(e)g
+Ft(delete-char)p Fu(\).)92 b(A)m(t)49 b(the)f(end)g(of)g(the)g(line,)54
+b(it)48 b(b)s(eha)m(v)m(es)h(iden)m(tically)h(to)630
+3328 y Ft(possible-completions)p Fu(.)35 b(This)30 b(command)g(is)g(un)
+m(b)s(ound)e(b)m(y)i(default.)150 3490 y Ft(complete-filename)c
+(\(M-/\))630 3600 y Fu(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 3762 y Ft
+(possible-filename-comple)o(tion)o(s)24 b(\(C-x)30 b(/\))630
+3871 y Fu(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
+4034 y Ft(complete-username)e(\(M-~\))630 4143 y Fu(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 4305 y Ft(possible-username-comple)o(tion)
+o(s)24 b(\(C-x)30 b(~\))630 4415 y Fu(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 4577 y Ft(complete-variable)h(\(M-$\))630
+4687 y Fu(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
+4849 y Ft(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30
+b($\))630 4959 y Fu(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 5068 y(v)-5 b(ariable.)150 5230 y Ft(complete-hostname)26
+b(\(M-@\))630 5340 y Fu(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.)p
+eop end
+%%Page: 153 159
+TeXDict begin 153 158 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(153)150 299 y Ft
+(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30 b(@\))630
+408 y Fu(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
+587 y Ft(complete-command)h(\(M-!\))630 697 y Fu(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 807 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 916 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 1026 y(order.)150 1205 y Ft(possible-command-complet)o(ions)24
+b(\(C-x)29 b(!\))630 1314 y Fu(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 1424 y(name.)150 1603 y Ft(dynamic-complete-history)e
+(\(M-TAB\))630 1712 y Fu(A)m(ttempt)e(completion)h(on)d(the)i(text)g(b)
+s(efore)e(p)s(oin)m(t,)j(comparing)f(the)f(text)h(against)g(history)630
+1822 y(list)31 b(en)m(tries)g(for)f(p)s(ossible)g(completion)i(matc)m
+(hes.)150 2001 y Ft(dabbrev-expand)26 b(\(\))630 2110
+y Fu(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
+2220 y(lines)j(from)e(the)i(history)f(list)h(for)g(p)s(ossible)e
+(completion)j(matc)m(hes.)150 2399 y Ft(complete-into-braces)25
+b(\(M-{\))630 2509 y Fu(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
+2618 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 2728 y(pansion],)30 b(page)h(25\).)150 2946
+y Fk(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 3128 y Ft(start-kbd-macro)
+26 b(\(C-x)j(\(\))630 3238 y Fu(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 3417 y Ft(end-kbd-macro)d(\(C-x)i(\)\))630
+3526 y Fu(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 3636 y(de\014nition.)150 3815 y Ft(call-last-kbd-macro)c
+(\(C-x)k(e\))630 3924 y Fu(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 4034 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 4213 y Ft(print-last-kbd-macro)25 b(\(\))630
+4322 y Fu(Prin)m(t)30 b(the)g(last)h(k)m(eyb)s(oard)f(macro)h
+(de\014ned)e(in)h(a)g(format)h(suitable)g(for)f(the)g
+Fr(inputrc)35 b Fu(\014le.)150 4541 y Fk(8.4.8)63 b(Some)41
+b(Miscellaneous)i(Commands)150 4723 y Ft(re-read-init-file)26
+b(\(C-x)j(C-r\))630 4832 y Fu(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)
+f(the)g Fr(inputrc)27 b Fu(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h
+(bindings)d(or)i(v)-5 b(ariable)630 4942 y(assignmen)m(ts)31
+b(found)e(there.)150 5121 y Ft(abort)g(\(C-g\))630 5230
+y Fu(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
+5340 y(setting)j(of)g Ft(bell-style)p Fu(\).)p eop end
+%%Page: 154 160
+TeXDict begin 154 159 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(154)150 299 y Ft
+(do-lowercase-version)25 b(\(M-A,)k(M-B,)g(M-)p Fj(x)p
+Ft(,)g(...)o(\))630 408 y Fu(If)35 b(the)g(meta\014ed)g(c)m(haracter)i
+Fr(x)k Fu(is)35 b(upp)s(er)e(case,)k(run)d(the)h(command)g(that)g(is)g
+(b)s(ound)e(to)630 518 y(the)g(corresp)s(onding)f(meta\014ed)h(lo)m(w)m
+(er)i(case)f(c)m(haracter.)50 b(The)32 b(b)s(eha)m(vior)h(is)g
+(unde\014ned)e(if)630 628 y Fr(x)37 b Fu(is)30 b(already)h(lo)m(w)m(er)
+h(case.)150 792 y Ft(prefix-meta)27 b(\(ESC\))630 902
+y Fu(Metafy)32 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)40
+b(T)m(yping)30 b(`)p Ft(ESC)g(f)p Fu(')g(is)h(equiv)-5
+b(alen)m(t)31 b(to)h(t)m(yping)e Fj(M-f)p Fu(.)150 1066
+y Ft(undo)f(\(C-_)g(or)h(C-x)g(C-u\))630 1176 y Fu(Incremen)m(tal)h
+(undo,)f(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
+1340 y Ft(revert-line)27 b(\(M-r\))630 1450 y Fu(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 Ft(undo)f Fu(command)630
+1559 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(initial)i
+(state.)150 1724 y Ft(tilde-expand)27 b(\(M-&\))630 1833
+y Fu(P)m(erform)j(tilde)h(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)
+150 1998 y Ft(set-mark)d(\(C-@\))630 2107 y Fu(Set)k(the)g(mark)f(to)h
+(the)g(p)s(oin)m(t.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
+(supplied,)f(set)h(the)g(mark)f(to)630 2217 y(that)g(p)s(osition.)150
+2381 y Ft(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
+2491 y Fu(Sw)m(ap)38 b(the)g(p)s(oin)m(t)h(with)f(the)g(mark.)65
+b(Set)38 b(the)h(curren)m(t)f(cursor)g(p)s(osition)g(to)h(the)g(sa)m(v)
+m(ed)630 2600 y(p)s(osition,)31 b(then)f(set)h(the)f(mark)g(to)h(the)g
+(old)g(cursor)e(p)s(osition.)150 2765 y Ft(character-search)d(\(C-]\))
+630 2874 y Fu(Read)33 b(a)h(c)m(haracter)g(and)e(mo)m(v)m(e)j(p)s(oin)m
+(t)e(to)h(the)f(next)g(o)s(ccurrence)g(of)g(that)h(c)m(haracter.)50
+b(A)630 2984 y(negativ)m(e)33 b(argumen)m(t)d(searc)m(hes)i(for)e
+(previous)g(o)s(ccurrences.)150 3148 y Ft(character-search-backwar)o(d)
+24 b(\(M-C-]\))630 3258 y Fu(Read)30 b(a)g(c)m(haracter)h(and)e(mo)m(v)
+m(e)i(p)s(oin)m(t)e(to)i(the)e(previous)g(o)s(ccurrence)h(of)g(that)g
+(c)m(haracter.)630 3367 y(A)g(negativ)m(e)j(argumen)m(t)e(searc)m(hes)g
+(for)f(subsequen)m(t)g(o)s(ccurrences.)150 3532 y Ft(skip-csi-sequence)
+c(\(\))630 3641 y Fu(Read)i(enough)f(c)m(haracters)h(to)g(consume)f(a)h
+(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f(as)g(those)h(de\014ned)630
+3751 y(for)i(k)m(eys)g(lik)m(e)h(Home)g(and)e(End.)39
+b(CSI)29 b(sequences)h(b)s(egin)f(with)h(a)g(Con)m(trol)h(Sequence)e
+(In-)630 3861 y(dicator)e(\(CSI\),)f(usually)f Fj(ESC)30
+b([)p Fu(.)38 b(If)26 b(this)g(sequence)g(is)g(b)s(ound)d(to)k
+Ft("\\)p Fu(e[)p Ft(")p Fu(,)g(k)m(eys)f(pro)s(ducing)630
+3970 y(CSI)33 b(sequences)h(ha)m(v)m(e)h(no)f(e\013ect)h(unless)e
+(explicitly)j(b)s(ound)c(to)i(a)g(Readline)h(command,)630
+4080 y(instead)27 b(of)f(inserting)h(stra)m(y)f(c)m(haracters)i(in)m
+(to)g(the)e(editing)h(bu\013er.)38 b(This)26 b(is)g(un)m(b)s(ound)e(b)m
+(y)630 4189 y(default,)31 b(but)e(usually)i(b)s(ound)d(to)j
+Fj(ESC)e([)p Fu(.)150 4354 y Ft(insert-comment)d(\(M-#\))630
+4463 y Fu(Without)34 b(a)g(n)m(umeric)g(argumen)m(t,)h(insert)f(the)f
+(v)-5 b(alue)35 b(of)e(the)h Ft(comment-begin)c Fu(v)-5
+b(ariable)630 4573 y(at)38 b(the)g(b)s(eginning)f(of)h(the)f(curren)m
+(t)h(line.)63 b(If)37 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g(supplied,)g
+(this)630 4682 y(command)29 b(acts)h(as)f(a)h(toggle:)42
+b(if)29 b(the)h(c)m(haracters)g(at)g(the)f(b)s(eginning)g(of)g(the)g
+(line)h(do)f(not)630 4792 y(matc)m(h)g(the)g(v)-5 b(alue)29
+b(of)g Ft(comment-begin)p Fu(,)c(insert)j(the)h(v)-5
+b(alue;)30 b(otherwise)f(delete)h(the)e(c)m(har-)630
+4902 y(acters)g(in)e Ft(comment-begin)e Fu(from)i(the)h(b)s(eginning)f
+(of)h(the)g(line.)40 b(In)26 b(either)i(case,)h(the)e(line)630
+5011 y(is)d(accepted)i(as)e(if)g(a)h(newline)f(had)f(b)s(een)g(t)m(yp)s
+(ed.)39 b(The)23 b(default)i(v)-5 b(alue)24 b(of)h Ft(comment-begin)630
+5121 y Fu(causes)g(this)f(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h
+(line)g(a)g(shell)f(commen)m(t.)40 b(If)24 b(a)h(n)m(umeric)g(ar-)630
+5230 y(gumen)m(t)k(causes)g(the)g(commen)m(t)h(c)m(haracter)g(to)f(b)s
+(e)f(remo)m(v)m(ed,)i(the)f(line)g(will)g(b)s(e)f(executed)630
+5340 y(b)m(y)i(the)h(shell.)p eop end
+%%Page: 155 161
+TeXDict begin 155 160 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(155)150 299 y Ft(dump-functions)26
+b(\(\))630 408 y Fu(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
+518 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
+628 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fr(inputrc)k
+Fu(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
+(default.)150 798 y Ft(dump-variables)26 b(\(\))630 908
+y Fu(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 1017 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 1127 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
+Fr(inputrc)k Fu(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
+(b)m(y)k(default.)150 1297 y Ft(dump-macros)c(\(\))630
+1407 y Fu(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
+1517 y(output)e(to)h(the)f(Readline)h(output)f(stream.)46
+b(If)32 b(a)g(n)m(umeric)g(argumen)m(t)h(is)f(supplied,)g(the)630
+1626 y(output)g(is)f(formatted)i(in)f(suc)m(h)f(a)h(w)m(a)m(y)h(that)g
+(it)f(can)g(b)s(e)g(made)g(part)f(of)h(an)g Fr(inputrc)37
+b Fu(\014le.)630 1736 y(This)30 b(command)g(is)g(un)m(b)s(ound)e(b)m(y)
+i(default.)150 1906 y Ft(execute-named-command)25 b(\(M-x\))630
+2016 y Fu(Read)g(a)h(bindable)f(Readline)g(command)g(name)h(from)e(the)
+i(input)e(and)h(execute)h(the)g(func-)630 2125 y(tion)g(to)h(whic)m(h)f
+(it's)g(b)s(ound,)f(as)h(if)g(the)g(k)m(ey)h(sequence)f(to)h(whic)m(h)e
+(it)i(w)m(as)f(b)s(ound)e(app)s(eared)630 2235 y(in)37
+b(the)h(input.)61 b(If)37 b(this)h(function)f(is)g(supplied)g(with)g(a)
+h(n)m(umeric)f(argumen)m(t,)j(it)e(passes)630 2345 y(that)31
+b(argumen)m(t)g(to)g(the)f(function)h(it)f(executes.)150
+2515 y Ft(spell-correct-word)25 b(\(C-x)30 b(s\))630
+2625 y Fu(P)m(erform)36 b(sp)s(elling)h(correction)h(on)e(the)h(curren)
+m(t)f(w)m(ord,)i(treating)f(it)g(as)g(a)g(directory)g(or)630
+2734 y(\014lename,)g(in)e(the)h(same)f(w)m(a)m(y)i(as)e(the)h
+Ft(cdspell)d Fu(shell)j(option.)56 b(W)-8 b(ord)36 b(b)s(oundaries)e
+(are)630 2844 y(the)d(same)f(as)h(those)g(used)e(b)m(y)i
+Ft(shell-forward-word)p Fu(.)150 3014 y Ft(glob-complete-word)25
+b(\(M-g\))630 3124 y Fu(T)-8 b(reat)44 b(the)g(w)m(ord)e(b)s(efore)h(p)
+s(oin)m(t)h(as)f(a)h(pattern)f(for)g(pathname)g(expansion,)k(with)c(an)
+630 3233 y(asterisk)25 b(implicitly)g(app)s(ended,)f(then)g(use)g(the)h
+(pattern)f(to)h(generate)h(a)f(list)f(of)h(matc)m(hing)630
+3343 y(\014le)30 b(names)h(for)f(p)s(ossible)g(completions.)150
+3513 y Ft(glob-expand-word)c(\(C-x)j(*\))630 3623 y Fu(T)-8
+b(reat)36 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(as)h(a)g(pattern)
+f(for)g(pathname)g(expansion,)i(and)e(insert)630 3733
+y(the)g(list)h(of)g(matc)m(hing)g(\014le)f(names,)i(replacing)f(the)g
+(w)m(ord.)55 b(If)34 b(a)i(n)m(umeric)f(argumen)m(t)h(is)630
+3842 y(supplied,)29 b(app)s(end)g(a)i(`)p Ft(*)p Fu(')f(b)s(efore)g
+(pathname)h(expansion.)150 4013 y Ft(glob-list-expansions)25
+b(\(C-x)k(g\))630 4122 y Fu(Displa)m(y)24 b(the)g(list)g(of)f
+(expansions)h(that)f(w)m(ould)h(ha)m(v)m(e)g(b)s(een)f(generated)h(b)m
+(y)f Ft(glob-expand-)630 4232 y(word)p Fu(,)34 b(and)g(redispla)m(y)g
+(the)g(line.)53 b(If)33 b(a)i(n)m(umeric)f(argumen)m(t)h(is)f
+(supplied,)g(app)s(end)e(a)j(`)p Ft(*)p Fu(')630 4341
+y(b)s(efore)30 b(pathname)g(expansion.)150 4512 y Ft(shell-expand-line)
+c(\(M-C-e\))630 4622 y Fu(Expand)j(the)h(line)g(b)m(y)g(p)s(erforming)f
+(shell)h(w)m(ord)g(expansions.)40 b(This)29 b(p)s(erforms)f(alias)k
+(and)630 4731 y(history)40 b(expansion,)j($')p Fr(string)8
+b Fu(')41 b(and)f($)p Ft(")p Fr(string)8 b Ft(")39 b
+Fu(quoting,)44 b(tilde)d(expansion,)i(parame-)630 4841
+y(ter)d(and)f(v)-5 b(ariable)40 b(expansion,)i(arithmetic)f(expansion,)
+g(command)f(and)f(pro)s(ces)g(sub-)630 4950 y(stitution,)34
+b(w)m(ord)f(splitting,)h(and)e(quote)i(remo)m(v)-5 b(al.)49
+b(An)32 b(explicit)i(argumen)m(t)g(suppresses)630 5060
+y(command)c(and)g(pro)s(cess)g(substitution.)150 5230
+y Ft(history-expand-line)25 b(\(M-^\))630 5340 y Fu(P)m(erform)30
+b(history)h(expansion)f(on)g(the)h(curren)m(t)f(line.)p
+eop end
+%%Page: 156 162
+TeXDict begin 156 161 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(156)150 299 y Ft(magic-space)27
+b(\(\))630 408 y Fu(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(169\).)150
+682 y Ft(alias-expand-line)26 b(\(\))630 792 y Fu(P)m(erform)e(alias)i
+(expansion)e(on)h(the)g(curren)m(t)f(line)h(\(see)g(Section)h(6.6)f
+([Aliases],)j(page)d(108\).)150 956 y Ft(history-and-alias-expand)o
+(-lin)o(e)f(\(\))630 1065 y Fu(P)m(erform)30 b(history)h(and)e(alias)j
+(expansion)e(on)g(the)h(curren)m(t)f(line.)150 1230 y
+Ft(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630 1339
+y Fu(A)g(synon)m(ym)g(for)g Ft(yank-last-arg)p Fu(.)150
+1503 y Ft(edit-and-execute-command)24 b(\(C-x)29 b(C-e\))630
+1613 y Fu(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
+1722 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)m(ok)m(e)h
+Ft($VISUAL)p Fu(,)f Ft($EDITOR)p Fu(,)h(and)d Ft(emacs)g
+Fu(as)h(the)630 1832 y(editor,)31 b(in)f(that)h(order.)150
+1996 y Ft(display-shell-version)25 b(\(C-x)k(C-v\))630
+2106 y Fu(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 2354 y Fs(8.5)68
+b(Readline)47 b(vi)e(Mo)t(de)150 2513 y Fu(While)32 b(the)g(Readline)g
+(library)f(do)s(es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g
+Ft(vi)f Fu(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
+2623 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+b(The)34 b(Readline)g Ft(vi)g Fu(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f(sp)s
+(eci\014ed)f(in)150 2732 y(the)e Ft(sh)e Fu(description)i(in)f(the)g
+Fm(posix)g Fu(standard.)275 2871 y(Y)-8 b(ou)33 b(can)g(use)g(the)g(`)p
+Ft(set)d(-o)g(emacs)p Fu(')h(and)i(`)p Ft(set)d(-o)f(vi)p
+Fu(')k(commands)g(\(see)g(Section)h(4.3.1)h([The)e(Set)150
+2981 y(Builtin],)25 b(page)e(72\))g(to)h(switc)m(h)e(in)m(teractiv)m
+(ely)k(b)s(et)m(w)m(een)d Ft(emacs)d Fu(and)i Ft(vi)g
+Fu(editing)h(mo)s(des,)g(The)f(Readline)150 3090 y(default)31
+b(is)f Ft(emacs)f Fu(mo)s(de.)275 3230 y(When)g(y)m(ou)i(en)m(ter)f(a)h
+(line)f(in)g Ft(vi)f Fu(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 3339
+y(had)f(t)m(yp)s(ed)g(an)g(`)p Ft(i)p Fu('.)41 b(Pressing)29
+b Ft(ESC)f Fu(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h
+(where)e(y)m(ou)i(can)g(edit)g(the)150 3449 y(text)35
+b(of)f(the)g(line)g(with)f(the)h(standard)f Ft(vi)g Fu(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
+3558 y(`)p Ft(k)p Fu(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
+Ft(j)p Fu(',)g(and)g(so)h(forth.)150 3806 y Fs(8.6)68
+b(Programmable)47 b(Completion)150 3966 y Fu(When)35
+b(the)g(user)g(attempts)h(w)m(ord)f(completion)h(for)f(a)h(command)f
+(or)g(an)g(argumen)m(t)h(to)g(a)f(command)150 4075 y(for)k(whic)m(h)h
+(a)g(completion)h(sp)s(eci\014cation)f(\(a)h Fr(compsp)s(ec)6
+b Fu(\))39 b(has)h(b)s(een)f(de\014ned)f(using)h(the)h
+Ft(complete)150 4185 y Fu(builtin)34 b(\(see)h(Section)f(8.7)i
+([Programmable)e(Completion)h(Builtins],)h(page)f(159\),)h(Readline)f
+(in)m(v)m(ok)m(es)150 4294 y(the)c(programmable)f(completion)i
+(facilities.)275 4434 y(First,)47 b(Bash)c(iden)m(ti\014es)h(the)f
+(command)g(name.)80 b(If)43 b(a)h(compsp)s(ec)f(has)g(b)s(een)f
+(de\014ned)g(for)h(that)150 4543 y(command,)35 b(the)e(compsp)s(ec)h
+(is)g(used)f(to)h(generate)h(the)f(list)h(of)f(p)s(ossible)f
+(completions)i(for)e(the)h(w)m(ord.)150 4653 y(If)j(the)i(command)e(w)m
+(ord)h(is)g(the)g(empt)m(y)g(string)g(\(completion)i(attempted)f(at)g
+(the)f(b)s(eginning)f(of)h(an)150 4762 y(empt)m(y)j(line\),)i(Bash)e
+(uses)e(an)m(y)i(compsp)s(ec)f(de\014ned)f(with)h(the)g
+Ft(-E)g Fu(option)h(to)g Ft(complete)p Fu(.)68 b(The)40
+b Ft(-I)150 4872 y Fu(option)32 b(to)h Ft(complete)d
+Fu(indicates)j(that)f(the)g(command)g(w)m(ord)g(is)g(the)g(\014rst)f
+(non-assignmen)m(t)h(w)m(ord)g(on)150 4982 y(the)h(line,)h(or)f(after)h
+(a)f(command)g(delimiter)g(suc)m(h)g(as)g(`)p Ft(;)p
+Fu(')g(or)g(`)p Ft(|)p Fu('.)49 b(This)32 b(usually)g(indicates)i
+(command)150 5091 y(name)c(completion.)275 5230 y(If)41
+b(the)i(command)f(w)m(ord)g(is)g(a)h(full)f(pathname,)k(Bash)c(searc)m
+(hes)i(for)e(a)g(compsp)s(ec)h(for)f(the)g(full)150 5340
+y(pathname)d(\014rst.)65 b(If)38 b(there)h(is)g(no)g(compsp)s(ec)g(for)
+f(the)h(full)g(pathname,)i(Bash)e(attempts)h(to)f(\014nd)f(a)p
+eop end
+%%Page: 157 163
+TeXDict begin 157 162 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(157)150 299 y(compsp)s(ec)42
+b(for)f(the)h(p)s(ortion)g(follo)m(wing)h(the)g(\014nal)e(slash.)75
+b(If)42 b(those)g(searc)m(hes)h(do)f(not)g(result)g(in)g(a)150
+408 y(compsp)s(ec,)j(or)e(if)f(there)g(is)h(no)f(compsp)s(ec)g(for)g
+(the)g(command)g(w)m(ord,)j(Bash)e(uses)f(an)m(y)g(compsp)s(ec)150
+518 y(de\014ned)37 b(with)g(the)h Ft(-D)g Fu(option)g(to)h
+Ft(complete)d Fu(as)i(the)g(default.)63 b(If)38 b(there)g(is)g(no)g
+(default)g(compsp)s(ec,)150 628 y(Bash)27 b(p)s(erforms)e(alias)j
+(expansion)e(on)h(the)g(command)f(w)m(ord)g(as)h(a)g(\014nal)g(resort,)
+g(and)f(attempts)i(to)f(\014nd)150 737 y(a)k(compsp)s(ec)f(for)g(the)h
+(command)f(w)m(ord)g(resulting)g(from)g(an)m(y)h(successful)f
+(expansion.)275 894 y(If)j(a)h(compsp)s(ec)g(is)g(not)h(found,)e(Bash)i
+(p)s(erforms)d(its)i(default)h(completion)g(describ)s(ed)e(ab)s(o)m(v)m
+(e)i(\(see)150 1003 y(Section)41 b(8.4.6)g([Commands)f(F)-8
+b(or)40 b(Completion],)k(page)c(151\).)71 b(Otherwise,)43
+b(once)d(a)h(compsp)s(ec)e(has)150 1113 y(b)s(een)30
+b(found,)f(Bash)h(uses)g(it)h(to)g(generate)h(the)f(list)g(of)f(matc)m
+(hing)i(w)m(ords.)275 1270 y(First,)g(Bash)f(p)s(erforms)f(the)i
+Fr(actions)k Fu(sp)s(eci\014ed)30 b(b)m(y)i(the)f(compsp)s(ec.)44
+b(This)30 b(only)i(returns)e(matc)m(hes)150 1379 y(whic)m(h)40
+b(are)h(pre\014xes)f(of)g(the)h(w)m(ord)f(b)s(eing)g(completed.)72
+b(When)40 b(the)h Ft(-f)f Fu(or)g Ft(-d)g Fu(option)h(is)f(used)g(for)
+150 1489 y(\014lename)c(or)f(directory)h(name)f(completion,)k(Bash)c
+(uses)g(shell)h(the)f(v)-5 b(ariable)37 b Ft(FIGNORE)c
+Fu(to)j(\014lter)g(the)150 1598 y(matc)m(hes.)42 b(See)30
+b(Section)i(5.2)f([Bash)g(V)-8 b(ariables],)32 b(page)f(86,)h(for)e(a)h
+(description)f(of)h Ft(FIGNORE)p Fu(.)275 1755 y(Next,)j(programmable)g
+(completion)g(generates)h(matc)m(hes)f(sp)s(eci\014ed)e(b)m(y)i(a)f
+(pathname)g(expansion)150 1864 y(pattern)38 b(supplied)f(as)h(an)g
+(argumen)m(t)h(to)g(the)f Ft(-G)f Fu(option.)64 b(The)38
+b(w)m(ords)g(generated)h(b)m(y)f(the)g(pattern)150 1974
+y(need)g(not)g(matc)m(h)g(the)g(w)m(ord)g(b)s(eing)f(completed.)64
+b(Bash)38 b(uses)f(the)h Ft(FIGNORE)e Fu(v)-5 b(ariable)38
+b(to)h(\014lter)f(the)150 2084 y(matc)m(hes,)32 b(but)d(do)s(es)h(not)h
+(use)f(the)h Ft(GLOBIGNORE)c Fu(shell)k(v)-5 b(ariable.)275
+2240 y(Next,)35 b(completion)g(considers)e(the)h(string)f(sp)s
+(eci\014ed)g(as)h(the)g(argumen)m(t)g(to)g(the)g Ft(-W)f
+Fu(option.)50 b(The)150 2350 y(string)25 b(is)g(\014rst)f(split)h
+(using)f(the)i(c)m(haracters)g(in)f(the)g Ft(IFS)f Fu(sp)s(ecial)h(v)-5
+b(ariable)26 b(as)f(delimiters.)40 b(This)24 b(honors)150
+2459 y(shell)d(quoting)h(within)e(the)h(string,)i(in)e(order)f(to)i
+(pro)m(vide)f(a)g(mec)m(hanism)g(for)g(the)g(w)m(ords)g(to)g(con)m
+(tain)i(shell)150 2569 y(metac)m(haracters)33 b(or)e(c)m(haracters)i
+(in)e(the)g(v)-5 b(alue)31 b(of)g Ft(IFS)p Fu(.)42 b(Eac)m(h)32
+b(w)m(ord)e(is)h(then)g(expanded)f(using)h(brace)150
+2679 y(expansion,)g(tilde)h(expansion,)f(parameter)g(and)g(v)-5
+b(ariable)32 b(expansion,)f(command)f(substitution,)i(and)150
+2788 y(arithmetic)c(expansion,)f(as)g(describ)s(ed)e(ab)s(o)m(v)m(e)i
+(\(see)h(Section)f(3.5)g([Shell)g(Expansions],)g(page)g(24\).)40
+b(The)150 2898 y(results)23 b(are)h(split)g(using)f(the)h(rules)f
+(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)g(Section)f(3.5.7)h([W)-8
+b(ord)24 b(Splitting],)i(page)e(37\).)150 3007 y(The)j(results)h(of)f
+(the)h(expansion)g(are)g(pre\014x-matc)m(hed)g(against)h(the)f(w)m(ord)
+f(b)s(eing)g(completed,)j(and)d(the)150 3117 y(matc)m(hing)k(w)m(ords)f
+(b)s(ecome)h(p)s(ossible)f(completions.)275 3273 y(After)e(these)g
+(matc)m(hes)h(ha)m(v)m(e)g(b)s(een)e(generated,)j(Bash)e(executes)h(an)
+m(y)g(shell)f(function)f(or)h(command)150 3383 y(sp)s(eci\014ed)38
+b(with)h(the)g Ft(-F)g Fu(and)f Ft(-C)g Fu(options.)67
+b(When)39 b(the)g(command)g(or)g(function)g(is)g(in)m(v)m(ok)m(ed,)k
+(Bash)150 3493 y(assigns)35 b(v)-5 b(alues)36 b(to)f(the)h
+Ft(COMP_LINE)p Fu(,)e Ft(COMP_POINT)p Fu(,)f Ft(COMP_KEY)p
+Fu(,)i(and)f Ft(COMP_TYPE)f Fu(v)-5 b(ariables)35 b(as)h(de-)150
+3602 y(scrib)s(ed)22 b(ab)s(o)m(v)m(e)h(\(see)h(Section)f(5.2)h([Bash)f
+(V)-8 b(ariables],)26 b(page)e(86\).)39 b(If)22 b(a)h(shell)g(function)
+f(is)h(b)s(eing)f(in)m(v)m(ok)m(ed,)150 3712 y(Bash)29
+b(also)g(sets)g(the)g Ft(COMP_WORDS)d Fu(and)i Ft(COMP_CWORD)d
+Fu(v)-5 b(ariables.)41 b(When)29 b(the)f(function)h(or)f(command)150
+3821 y(is)g(in)m(v)m(ok)m(ed,)j(the)d(\014rst)f(argumen)m(t)i(\($1\))h
+(is)e(the)g(name)h(of)f(the)g(command)g(whose)g(argumen)m(ts)h(are)f(b)
+s(eing)150 3931 y(completed,)i(the)f(second)f(argumen)m(t)h(\($2\))h
+(is)f(the)g(w)m(ord)f(b)s(eing)g(completed,)i(and)e(the)h(third)e
+(argumen)m(t)150 4041 y(\($3\))f(is)f(the)g(w)m(ord)g(preceding)g(the)g
+(w)m(ord)f(b)s(eing)h(completed)g(on)g(the)g(curren)m(t)g(command)f
+(line.)40 b(There)24 b(is)150 4150 y(no)k(\014ltering)g(of)g(the)f
+(generated)i(completions)g(against)g(the)f(w)m(ord)f(b)s(eing)h
+(completed;)i(the)e(function)f(or)150 4260 y(command)j(has)g(complete)i
+(freedom)e(in)f(generating)j(the)e(matc)m(hes)i(and)d(they)i(do)f(not)g
+(need)g(to)h(matc)m(h)150 4369 y(a)g(pre\014x)e(of)i(the)f(w)m(ord.)275
+4526 y(An)m(y)k(function)h(sp)s(eci\014ed)f(with)g Ft(-F)g
+Fu(is)h(in)m(v)m(ok)m(ed)h(\014rst.)53 b(The)35 b(function)f(ma)m(y)h
+(use)g(an)m(y)g(of)g(the)g(shell)150 4635 y(facilities,)50
+b(including)44 b(the)h Ft(compgen)d Fu(and)i Ft(compopt)e
+Fu(builtins)i(describ)s(ed)f(b)s(elo)m(w)h(\(see)i(Section)f(8.7)150
+4745 y([Programmable)31 b(Completion)h(Builtins],)f(page)h(159\),)g(to)
+g(generate)g(the)f(matc)m(hes.)42 b(It)31 b(m)m(ust)g(put)f(the)150
+4855 y(p)s(ossible)g(completions)h(in)f(the)h Ft(COMPREPLY)d
+Fu(arra)m(y)j(v)-5 b(ariable,)31 b(one)g(p)s(er)e(arra)m(y)i(elemen)m
+(t.)275 5011 y(Next,)26 b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g
+(the)h Ft(-C)f Fu(option)h(is)f(in)m(v)m(ok)m(ed)i(in)e(an)g(en)m
+(vironmen)m(t)h(equiv)-5 b(alen)m(t)150 5121 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
+5230 y(output.)39 b(Bac)m(kslash)27 b(will)g(escap)s(e)f(a)g(newline,)h
+(if)f(necessary)-8 b(.)40 b(These)26 b(are)g(added)f(to)i(the)f(set)g
+(of)g(p)s(ossible)150 5340 y(completions.)p eop end
+%%Page: 158 164
+TeXDict begin 158 163 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(158)275 299 y(After)36
+b(generating)i(all)g(of)f(the)f(p)s(ossible)h(completions,)i(Bash)e
+(applies)g(an)m(y)g(\014lter)f(sp)s(eci\014ed)g(with)150
+408 y(the)e Ft(-X)g Fu(option)g(to)h(the)f(completions)h(in)f(the)g
+(list.)53 b(The)33 b(\014lter)h(is)g(a)h(pattern)f(as)g(used)f(for)h
+(pathname)150 518 y(expansion;)k(a)e(`)p Ft(&)p Fu(')f(in)g(the)g
+(pattern)h(is)f(replaced)h(with)f(the)g(text)i(of)e(the)h(w)m(ord)f(b)s
+(eing)f(completed.)57 b(A)150 628 y(literal)40 b(`)p
+Ft(&)p Fu(')f(ma)m(y)g(b)s(e)f(escap)s(ed)h(with)f(a)h(bac)m(kslash;)44
+b(the)39 b(bac)m(kslash)g(is)g(remo)m(v)m(ed)g(b)s(efore)g(attempting)
+150 737 y(a)f(matc)m(h.)64 b(An)m(y)38 b(completion)h(that)f(matc)m
+(hes)h(the)f(pattern)g(is)g(remo)m(v)m(ed)g(from)g(the)g(list.)63
+b(A)38 b(leading)150 847 y(`)p Ft(!)p Fu(')j(negates)h(the)f(pattern;)
+46 b(in)40 b(this)g(case)i(Bash)f(remo)m(v)m(es)h(an)m(y)f(completion)h
+(that)f(do)s(es)f(not)h(matc)m(h)150 956 y(the)d(pattern.)62
+b(If)37 b(the)h Ft(nocasematch)c Fu(shell)k(option)g(is)f(enabled)h
+(\(see)g(the)g(description)g(of)f Ft(shopt)f Fu(in)150
+1066 y(Section)27 b(4.3.2)h([The)e(Shopt)f(Builtin],)j(page)f(77\),)h
+(Bash)e(p)s(erforms)f(the)h(matc)m(h)h(without)f(regard)g(to)h(the)150
+1176 y(case)k(of)g(alphab)s(etic)g(c)m(haracters.)275
+1348 y(Finally)-8 b(,)34 b(programmable)e(completion)i(adds)d(an)m(y)i
+(pre\014x)e(and)h(su\016x)f(sp)s(eci\014ed)h(with)f(the)i
+Ft(-P)f Fu(and)150 1457 y Ft(-S)g Fu(options,)i(resp)s(ectiv)m(ely)-8
+b(,)35 b(to)f(eac)m(h)g(completion,)g(and)f(returns)e(the)i(result)g
+(to)g(Readline)g(as)g(the)g(list)150 1567 y(of)e(p)s(ossible)e
+(completions.)275 1739 y(If)41 b(the)g(previously-applied)h(actions)g
+(do)g(not)f(generate)i(an)m(y)f(matc)m(hes,)k(and)41
+b(the)g Ft(-o)30 b(dirnames)150 1849 y Fu(option)f(w)m(as)f(supplied)f
+(to)i Ft(complete)d Fu(when)h(the)h(compsp)s(ec)g(w)m(as)g(de\014ned,)g
+(Bash)g(attempts)h(directory)150 1958 y(name)h(completion.)275
+2131 y(If)35 b(the)g Ft(-o)30 b(plusdirs)j Fu(option)j(w)m(as)g
+(supplied)e(to)i Ft(complete)e Fu(when)g(the)i(compsp)s(ec)f(w)m(as)h
+(de\014ned,)150 2240 y(Bash)43 b(attempts)g(directory)g(name)g
+(completion)h(and)d(adds)h(an)m(y)h(matc)m(hes)h(to)f(the)g(set)g(of)f
+(p)s(ossible)150 2350 y(completions.)275 2522 y(By)31
+b(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
+2632 y(co)s(de)26 b(as)h(the)f(full)g(set)g(of)g(p)s(ossible)g
+(completions.)40 b(The)26 b(default)g(Bash)g(completions)i(and)d(the)h
+(Readline)150 2741 y(default)39 b(of)g(\014lename)g(completion)i(are)e
+(disabled.)66 b(If)39 b(the)g Ft(-o)30 b(bashdefault)35
+b Fu(option)40 b(w)m(as)f(supplied)150 2851 y(to)k Ft(complete)c
+Fu(when)i(the)h(compsp)s(ec)f(w)m(as)h(de\014ned,)i(and)d(the)h(compsp)
+s(ec)g(generates)h(no)f(matc)m(hes,)150 2960 y(Bash)27
+b(attempts)g(its)g(default)f(completions.)41 b(If)26
+b(the)h(compsp)s(ec)f(and,)h(if)f(attempted,)j(the)d(default)h(Bash)150
+3070 y(completions)40 b(generate)h(no)e(matc)m(hes,)k(and)c(the)g
+Ft(-o)30 b(default)37 b Fu(option)j(w)m(as)f(supplied)f(to)i
+Ft(complete)150 3180 y Fu(when)j(the)h(compsp)s(ec)f(w)m(as)h
+(de\014ned,)i(programmable)e(completion)h(p)s(erforms)d(Readline's)j
+(default)150 3289 y(completion.)275 3461 y(The)40 b(options)h(supplied)
+e(to)j Ft(complete)c Fu(and)j Ft(compopt)d Fu(can)k(con)m(trol)g(ho)m
+(w)f(Readline)g(treats)h(the)150 3571 y(completions.)62
+b(F)-8 b(or)38 b(instance,)i(the)d Ft(-o)30 b(fullquote)35
+b Fu(option)j(tells)g(Readline)g(to)g(quote)f(the)h(matc)m(hes)150
+3680 y(as)31 b(if)g(they)g(w)m(ere)g(\014lenames.)42
+b(See)31 b(the)g(description)g(of)g Ft(complete)e Fu(\(see)j(Section)f
+(8.7)h([Programmable)150 3790 y(Completion)f(Builtins],)g(page)g(159\))
+h(for)e(details.)275 3962 y(When)25 b(a)h(compsp)s(ec)g(indicates)g
+(that)h(it)f(w)m(an)m(ts)h(directory)f(name)g(completion,)i(the)e
+(programmable)150 4072 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 4181 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 Fr(mark-directories)
+45 b Fu(Readline)c(v)-5 b(ariable,)150 4291 y(regardless)31
+b(of)f(the)h(setting)g(of)g(the)f Fr(mark-symlink)m(ed-directories)36
+b Fu(Readline)31 b(v)-5 b(ariable.)275 4463 y(There)25
+b(is)i(some)g(supp)s(ort)e(for)h(dynamically)h(mo)s(difying)f
+(completions.)40 b(This)26 b(is)g(most)h(useful)f(when)150
+4573 y(used)40 b(in)h(com)m(bination)i(with)e(a)g(default)h(completion)
+g(sp)s(eci\014ed)f(with)g Ft(-D)p Fu(.)72 b(It's)42 b(p)s(ossible)f
+(for)g(shell)150 4682 y(functions)25 b(executed)i(as)f(completion)h
+(functions)f(to)g(indicate)h(that)g(completion)g(should)e(b)s(e)g
+(retried)h(b)m(y)150 4792 y(returning)31 b(an)i(exit)g(status)f(of)h
+(124.)48 b(If)31 b(a)i(shell)f(function)g(returns)f(124,)k(and)c(c)m
+(hanges)j(the)e(compsp)s(ec)150 4902 y(asso)s(ciated)43
+b(with)e(the)g(command)g(on)g(whic)m(h)g(completion)i(is)e(b)s(eing)g
+(attempted)h(\(supplied)e(as)i(the)150 5011 y(\014rst)29
+b(argumen)m(t)h(when)e(the)i(function)f(is)g(executed\),)j
+(programmable)d(completion)i(restarts)f(from)f(the)150
+5121 y(b)s(eginning,)k(with)g(an)g(attempt)h(to)g(\014nd)e(a)h(new)g
+(compsp)s(ec)g(for)g(that)h(command.)48 b(This)33 b(can)g(b)s(e)g(used)
+150 5230 y(to)g(build)d(a)j(set)f(of)g(completions)h(dynamically)f(as)g
+(completion)i(is)d(attempted,)j(rather)e(than)f(loading)150
+5340 y(them)f(all)i(at)f(once.)p eop end
+%%Page: 159 165
+TeXDict begin 159 164 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(159)275 299 y(F)-8
+b(or)38 b(instance,)h(assuming)e(that)h(there)f(is)h(a)f(library)g(of)g
+(compsp)s(ecs,)i(eac)m(h)g(k)m(ept)e(in)g(a)h(\014le)f(corre-)150
+408 y(sp)s(onding)g(to)j(the)f(name)f(of)h(the)g(command,)i(the)e
+(follo)m(wing)h(default)f(completion)h(function)e(w)m(ould)150
+518 y(load)31 b(completions)g(dynamically:)390 652 y
+Ft(_completion_loader\(\))390 762 y({)581 871 y(.)47
+b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g
+(return)f(124)390 981 y(})390 1091 y(complete)g(-D)h(-F)g
+(_completion_loader)c(-o)k(bashdefault)e(-o)i(default)150
+1331 y Fs(8.7)68 b(Programmable)47 b(Completion)f(Builtins)150
+1490 y Fu(Three)21 b(builtin)g(commands)f(are)i(a)m(v)-5
+b(ailable)24 b(to)e(manipulate)f(the)h(programmable)f(completion)h
+(facilities:)150 1599 y(one)34 b(to)g(sp)s(ecify)f(ho)m(w)h(the)f
+(argumen)m(ts)h(to)g(a)g(particular)g(command)f(are)h(to)g(b)s(e)f
+(completed,)j(and)d(t)m(w)m(o)150 1709 y(to)e(mo)s(dify)f(the)g
+(completion)i(as)e(it)h(is)g(happ)s(ening.)150 1868 y
+Ft(compgen)870 2002 y(compgen)46 b([-V)h Fj(varname)p
+Ft(])e([)p Fj(option)p Ft(])h([)p Fj(word)p Ft(])630
+2136 y Fu(Generate)27 b(p)s(ossible)e(completion)i(matc)m(hes)g(for)e
+Fr(w)m(ord)k Fu(according)e(to)f(the)g Fr(option)p Fu(s,)h(whic)m(h)630
+2246 y(ma)m(y)g(b)s(e)f(an)m(y)i(option)f(accepted)h(b)m(y)e(the)h
+Ft(complete)e Fu(builtin)h(with)h(the)g(exceptions)g(of)g
+Ft(-p)p Fu(,)630 2355 y Ft(-r)p Fu(,)j Ft(-D)p Fu(,)g
+Ft(-E)p Fu(,)g(and)g Ft(-I)p Fu(,)g(and)g(write)g(the)h(matc)m(hes)g
+(to)g(the)g(standard)e(output.)630 2489 y(If)f(the)i
+Ft(-V)e Fu(option)h(is)g(supplied,)f Ft(compgen)f Fu(stores)j(the)f
+(generated)h(completions)g(in)m(to)g(the)630 2599 y(indexed)24
+b(arra)m(y)g(v)-5 b(ariable)25 b Fr(v)-5 b(arname)29
+b Fu(instead)24 b(of)h(writing)f(them)g(to)h(the)f(standard)f(output.)
+630 2733 y(When)38 b(using)g(the)h Ft(-F)e Fu(or)i Ft(-C)f
+Fu(options,)j(the)d(v)-5 b(arious)39 b(shell)f(v)-5 b(ariables)39
+b(set)g(b)m(y)g(the)f(pro-)630 2842 y(grammable)31 b(completion)h
+(facilities,)g(while)f(a)m(v)-5 b(ailable,)33 b(will)d(not)h(ha)m(v)m
+(e)h(useful)d(v)-5 b(alues.)630 2977 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 3086 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 3196 y(the)e(same)h(\015ags.)40 b(If)29 b Fr(w)m(ord)j
+Fu(is)d(sp)s(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g
+Fr(w)m(ord)j Fu(will)630 3305 y(b)s(e)d(displa)m(y)m(ed)h(or)f(stored.)
+630 3439 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 3549 y(generated.)150 3708 y Ft(complete)870
+3842 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p
+Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])870 3951 y([-G)g
+Fj(globpat)p Ft(])e([-W)i Fj(wordlist)p Ft(])f([-F)h
+Fj(function)p Ft(])e([-C)i Fj(command)p Ft(])870 4061
+y([-X)g Fj(filterpat)p Ft(])e([-P)i Fj(prefix)p Ft(])f([-S)h
+Fj(suffix)p Ft(])e Fj(name)i Ft([)p Fj(name)f Ft(...])870
+4171 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f Ft(...)o(])630
+4305 y Fu(Sp)s(ecify)30 b(ho)m(w)g(argumen)m(ts)h(to)g(eac)m(h)g
+Fr(name)36 b Fu(should)29 b(b)s(e)h(completed.)630 4439
+y(If)22 b(the)h Ft(-p)f Fu(option)h(is)g(supplied,)g(or)f(if)h(no)f
+(options)h(or)g Fr(name)5 b Fu(s)23 b(are)g(supplied,)g(prin)m(t)f
+(existing)630 4548 y(completion)29 b(sp)s(eci\014cations)g(in)f(a)g(w)m
+(a)m(y)h(that)g(allo)m(ws)g(them)f(to)h(b)s(e)e(reused)g(as)h(input.)39
+b(The)630 4658 y Ft(-r)25 b Fu(option)i(remo)m(v)m(es)g(a)f(completion)
+h(sp)s(eci\014cation)g(for)f(eac)m(h)h Fr(name)p Fu(,)g(or,)g(if)f(no)g
+Fr(name)5 b Fu(s)26 b(are)630 4768 y(supplied,)j(all)j(completion)f(sp)
+s(eci\014cations.)630 4902 y(The)42 b Ft(-D)g Fu(option)h(indicates)g
+(that)g(other)g(supplied)e(options)i(and)f(actions)h(should)f(ap-)630
+5011 y(ply)31 b(to)h(the)f(\\default")h(command)f(completion;)i(that)f
+(is,)f(completion)h(attempted)h(on)e(a)630 5121 y(command)e(for)g(whic)
+m(h)h(no)f(completion)i(has)e(previously)g(b)s(een)g(de\014ned.)39
+b(The)29 b Ft(-E)f Fu(option)630 5230 y(indicates)d(that)g(other)g
+(supplied)e(options)h(and)g(actions)h(should)f(apply)f(to)i(\\empt)m
+(y")h(com-)630 5340 y(mand)e(completion;)j(that)f(is,)f(completion)h
+(attempted)g(on)e(a)h(blank)f(line.)39 b(The)24 b Ft(-I)f
+Fu(option)p eop end
+%%Page: 160 166
+TeXDict begin 160 165 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(160)630 299 y(indicates)25
+b(that)g(other)g(supplied)e(options)h(and)g(actions)h(should)f(apply)f
+(to)i(completion)h(on)630 408 y(the)j(initial)g(non-assignmen)m(t)g(w)m
+(ord)f(on)g(the)h(line,)g(or)f(after)h(a)g(command)f(delimiter)h(suc)m
+(h)630 518 y(as)35 b(`)p Ft(;)p Fu(')g(or)f(`)p Ft(|)p
+Fu(',)i(whic)m(h)f(is)f(usually)h(command)f(name)h(completion.)54
+b(If)34 b(m)m(ultiple)i(options)630 628 y(are)28 b(supplied,)e(the)i
+Ft(-D)e Fu(option)i(tak)m(es)g(precedence)g(o)m(v)m(er)g
+Ft(-E)p Fu(,)g(and)e(b)s(oth)h(tak)m(e)h(precedence)630
+737 y(o)m(v)m(er)37 b Ft(-I)p Fu(.)58 b(If)35 b(an)m(y)i(of)f
+Ft(-D)p Fu(,)h Ft(-E)p Fu(,)g(or)g Ft(-I)e Fu(are)i(supplied,)f(an)m(y)
+h(other)f Fr(name)41 b Fu(argumen)m(ts)c(are)630 847
+y(ignored;)31 b(these)g(completions)g(only)g(apply)f(to)h(the)f(case)i
+(sp)s(eci\014ed)d(b)m(y)i(the)f(option.)630 981 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 1091 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 1200 y(page)31 b(156\).)630 1335 y(Other)d(options,)i(if)f(sp)s
+(eci\014ed,)g(ha)m(v)m(e)h(the)f(follo)m(wing)i(meanings.)40
+b(The)29 b(argumen)m(ts)g(to)h(the)630 1445 y Ft(-G)p
+Fu(,)41 b Ft(-W)p Fu(,)h(and)c Ft(-X)h Fu(options)h(\(and,)h(if)f
+(necessary)-8 b(,)42 b(the)e Ft(-P)f Fu(and)f Ft(-S)h
+Fu(options\))h(should)f(b)s(e)630 1554 y(quoted)28 b(to)h(protect)g
+(them)f(from)f(expansion)h(b)s(efore)g(the)g Ft(complete)e
+Fu(builtin)h(is)h(in)m(v)m(ok)m(ed.)630 1714 y Ft(-o)i
+Fj(comp-option)1110 1823 y Fu(The)c Fr(comp-option)i
+Fu(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 1933 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h
+(generation)h(of)e(completions.)41 b Fr(comp-option)27
+b Fu(ma)m(y)1110 2042 y(b)s(e)j(one)g(of:)1110 2202 y
+Ft(bashdefault)1590 2311 y Fu(P)m(erform)d(the)h(rest)f(of)h(the)g
+(default)f(Bash)h(completions)g(if)g(the)1590 2421 y(compsp)s(ec)i
+(generates)i(no)e(matc)m(hes.)1110 2580 y Ft(default)144
+b Fu(Use)22 b(Readline's)g(default)g(\014lename)g(completion)g(if)g
+(the)g(comp-)1590 2690 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
+2849 y Ft(dirnames)96 b Fu(P)m(erform)46 b(directory)g(name)h
+(completion)g(if)f(the)g(compsp)s(ec)1590 2959 y(generates)32
+b(no)e(matc)m(hes.)1110 3118 y Ft(filenames)1590 3228
+y Fu(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f(generates)j
+(\014lenames,)1590 3337 y(so)24 b(it)g(can)g(p)s(erform)e(an)m(y)i
+(\014lename-sp)s(eci\014c)g(pro)s(cessing)f(\(suc)m(h)1590
+3447 y(as)37 b(adding)g(a)g(slash)f(to)i(directory)f(names,)i(quoting)e
+(sp)s(ecial)1590 3557 y(c)m(haracters,)28 b(or)e(suppressing)e
+(trailing)j(spaces\).)40 b(This)24 b(option)1590 3666
+y(is)44 b(in)m(tended)h(to)g(b)s(e)e(used)h(with)g(shell)h(functions)f
+(sp)s(eci\014ed)1590 3776 y(with)30 b Ft(-F)p Fu(.)1110
+3935 y Ft(fullquote)1590 4045 y Fu(T)-8 b(ell)32 b(Readline)g(to)g
+(quote)f(all)h(the)g(completed)g(w)m(ords)e(ev)m(en)i(if)1590
+4154 y(they)f(are)f(not)h(\014lenames.)1110 4314 y Ft(noquote)144
+b Fu(T)-8 b(ell)28 b(Readline)g(not)g(to)g(quote)g(the)g(completed)g(w)
+m(ords)f(if)h(they)1590 4423 y(are)j(\014lenames)f(\(quoting)h
+(\014lenames)g(is)f(the)h(default\).)1110 4583 y Ft(nosort)192
+b Fu(T)-8 b(ell)23 b(Readline)g(not)f(to)h(sort)g(the)f(list)h(of)f(p)s
+(ossible)g(completions)1590 4692 y(alphab)s(etically)-8
+b(.)1110 4852 y Ft(nospace)144 b Fu(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
+4961 y(w)m(ords)30 b(completed)h(at)g(the)g(end)f(of)g(the)h(line.)1110
+5121 y Ft(plusdirs)96 b Fu(After)47 b(generating)h(an)m(y)g(matc)m(hes)
+g(de\014ned)e(b)m(y)g(the)i(comp-)1590 5230 y(sp)s(ec,)30
+b(attempt)h(directory)g(name)f(completion)h(and)e(add)h(an)m(y)1590
+5340 y(matc)m(hes)i(to)f(the)f(results)g(of)h(the)f(other)h(actions.)p
+eop end
+%%Page: 161 167
+TeXDict begin 161 166 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(161)630 299 y Ft(-A)30
+b Fj(action)66 b Fu(The)25 b Fr(action)h Fu(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
+408 y(completions:)1110 566 y Ft(alias)240 b Fu(Alias)31
+b(names.)41 b(Ma)m(y)31 b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i
+Ft(-a)p Fu(.)1110 723 y Ft(arrayvar)96 b Fu(Arra)m(y)31
+b(v)-5 b(ariable)31 b(names.)1110 880 y Ft(binding)144
+b Fu(Readline)30 b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h
+([Bindable)1590 990 y(Readline)h(Commands],)f(page)h(145\).)1110
+1147 y Ft(builtin)144 b Fu(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 1257
+y(as)31 b Ft(-b)p Fu(.)1110 1414 y Ft(command)144 b Fu(Command)29
+b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i
+Ft(-c)p Fu(.)1110 1571 y Ft(directory)1590 1681 y Fu(Directory)h
+(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)g
+Ft(-d)p Fu(.)1110 1838 y Ft(disabled)96 b Fu(Names)31
+b(of)g(disabled)f(shell)g(builtins.)1110 1995 y Ft(enabled)144
+b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.)1110
+2152 y Ft(export)192 b Fu(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
+2262 y(\014ed)d(as)g Ft(-e)p Fu(.)1110 2419 y Ft(file)288
+b Fu(File)22 b(and)f(directory)h(names,)h(similar)f(to)g(Readline's)g
+(\014lename)1590 2529 y(completion.)42 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)
+s(eci\014ed)f(as)i Ft(-f)p Fu(.)1110 2686 y Ft(function)96
+b Fu(Names)31 b(of)g(shell)f(functions.)1110 2843 y Ft(group)240
+b Fu(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g
+(as)g Ft(-g)p Fu(.)1110 3000 y Ft(helptopic)1590 3110
+y Fu(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
+Ft(help)f Fu(builtin)g(\(see)h(Sec-)1590 3220 y(tion)31
+b(4.2)g([Bash)g(Builtins],)g(page)g(60\).)1110 3377 y
+Ft(hostname)96 b Fu(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 3486 y(the)55 b
+Ft(HOSTFILE)e Fu(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
+([Bash)1590 3596 y(V)-8 b(ariables],)32 b(page)f(86\).)1110
+3753 y Ft(job)336 b Fu(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
+3863 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 4020 y Ft(keyword)144
+b Fu(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 Ft(-k)p Fu(.)1110
+4177 y Ft(running)144 b Fu(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f
+(con)m(trol)h(is)g(activ)m(e.)1110 4335 y Ft(service)144
+b Fu(Service)31 b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s
+(eci\014ed)g(as)g Ft(-s)p Fu(.)1110 4492 y Ft(setopt)192
+b Fu(V)-8 b(alid)39 b(argumen)m(ts)g(for)f(the)h Ft(-o)e
+Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)1590 4601
+y(\(see)31 b(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(72\).)
+1110 4759 y Ft(shopt)240 b Fu(Shell)40 b(option)g(names)g(as)g
+(accepted)i(b)m(y)e(the)g Ft(shopt)e Fu(builtin)1590
+4868 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(60\).)
+1110 5026 y Ft(signal)192 b Fu(Signal)31 b(names.)1110
+5183 y Ft(stopped)144 b Fu(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 5340 y Ft(user)288
+b Fu(User)30 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
+(as)i Ft(-u)p Fu(.)p eop end
+%%Page: 162 168
+TeXDict begin 162 167 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(162)1110 299 y Ft(variable)96
+b Fu(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
+408 y Ft(-v)p Fu(.)630 576 y Ft(-C)30 b Fj(command)1110
+685 y Fr(command)35 b Fu(is)e(executed)g(in)e(a)i(subshell)e(en)m
+(vironmen)m(t,)i(and)f(its)g(output)g(is)1110 795 y(used)38
+b(as)h(the)g(p)s(ossible)f(completions.)67 b(Argumen)m(ts)39
+b(are)g(passed)f(as)h(with)1110 905 y(the)31 b Ft(-F)e
+Fu(option.)630 1072 y Ft(-F)h Fj(function)1110 1181 y
+Fu(The)39 b(shell)g(function)g Fr(function)g Fu(is)g(executed)h(in)f
+(the)g(curren)m(t)g(shell)g(en)m(vi-)1110 1291 y(ronmen)m(t.)h(When)30
+b(it)g(is)f(executed,)i(the)f(\014rst)f(argumen)m(t)h(\($1\))h(is)e
+(the)h(name)1110 1401 y(of)41 b(the)g(command)f(whose)h(argumen)m(ts)f
+(are)i(b)s(eing)e(completed,)k(the)d(sec-)1110 1510 y(ond)k(argumen)m
+(t)h(\($2\))h(is)f(the)g(w)m(ord)f(b)s(eing)g(completed,)51
+b(and)45 b(the)h(third)1110 1620 y(argumen)m(t)c(\($3\))i(is)e(the)g(w)
+m(ord)f(preceding)h(the)g(w)m(ord)f(b)s(eing)h(completed,)1110
+1729 y(as)f(describ)s(ed)f(ab)s(o)m(v)m(e)i(\(see)g(Section)f(8.6)h
+([Programmable)g(Completion],)1110 1839 y(page)31 b(156\).)42
+b(When)29 b Ft(function)f Fu(\014nishes,)h(programmable)h(completion)h
+(re-)1110 1948 y(triev)m(es)38 b(the)f(p)s(ossible)f(completions)i
+(from)e(the)h(v)-5 b(alue)37 b(of)g(the)f Ft(COMPREPLY)1110
+2058 y Fu(arra)m(y)31 b(v)-5 b(ariable.)630 2225 y Ft(-G)30
+b Fj(globpat)1110 2335 y Fu(Expand)43 b(the)h(\014lename)h(expansion)f
+(pattern)g Fr(globpat)j Fu(to)e(generate)h(the)1110 2445
+y(p)s(ossible)30 b(completions.)630 2612 y Ft(-P)g Fj(prefix)66
+b Fu(Add)36 b Fr(pre\014x)43 b Fu(to)38 b(the)f(b)s(eginning)g(of)g
+(eac)m(h)i(p)s(ossible)e(completion)h(after)g(all)1110
+2721 y(other)31 b(options)f(ha)m(v)m(e)i(b)s(een)e(applied.)630
+2889 y Ft(-S)g Fj(suffix)66 b Fu(App)s(end)35 b Fr(su\016x)43
+b Fu(to)37 b(eac)m(h)i(p)s(ossible)d(completion)j(after)e(all)h(other)g
+(options)1110 2998 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
+3165 y Ft(-W)h Fj(wordlist)1110 3275 y Fu(Split)35 b(the)g
+Fr(w)m(ordlist)j Fu(using)c(the)i(c)m(haracters)g(in)f(the)g
+Ft(IFS)f Fu(sp)s(ecial)i(v)-5 b(ariable)1110 3385 y(as)43
+b(delimiters,)j(and)c(expand)g(eac)m(h)i(resulting)f(w)m(ord.)76
+b(Shell)43 b(quoting)g(is)1110 3494 y(honored)37 b(within)g
+Fr(w)m(ordlist)j Fu(in)d(order)g(to)i(pro)m(vide)e(a)h(mec)m(hanism)g
+(for)g(the)1110 3604 y(w)m(ords)29 b(to)i(con)m(tain)g(shell)f(metac)m
+(haracters)j(or)c(c)m(haracters)j(in)d(the)h(v)-5 b(alue)31
+b(of)1110 3713 y Ft(IFS)p Fu(.)66 b(The)39 b(p)s(ossible)g(completions)
+h(are)g(the)f(mem)m(b)s(ers)f(of)i(the)f(resultan)m(t)1110
+3823 y(list)31 b(whic)m(h)f(matc)m(h)h(a)g(pre\014x)e(of)i(the)g(w)m
+(ord)f(b)s(eing)f(completed.)630 3990 y Ft(-X)h Fj(filterpat)1110
+4100 y Fr(\014lterpat)d Fu(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
+4209 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 4319 y(and)d(argumen)m(ts,)i(and)e
+(eac)m(h)i(completion)g(matc)m(hing)g Fr(\014lterpat)h
+Fu(is)e(remo)m(v)m(ed)1110 4429 y(from)i(the)h(list.)42
+b(A)30 b(leading)i(`)p Ft(!)p Fu(')e(in)g Fr(\014lterpat)j
+Fu(negates)f(the)f(pattern;)g(in)f(this)1110 4538 y(case,)i(an)m(y)e
+(completion)i(not)f(matc)m(hing)g Fr(\014lterpat)i Fu(is)d(remo)m(v)m
+(ed.)630 4706 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 4815 y(than)29 b Ft(-p)p Fu(,)g Ft(-r)p Fu(,)h
+Ft(-D)p Fu(,)f Ft(-E)p Fu(,)g(or)h Ft(-I)e Fu(is)i(supplied)e(without)h
+(a)h Fr(name)35 b Fu(argumen)m(t,)30 b(an)f(attempt)i(is)630
+4925 y(made)24 b(to)g(remo)m(v)m(e)i(a)e(completion)h(sp)s
+(eci\014cation)g(for)e(a)h Fr(name)29 b Fu(for)24 b(whic)m(h)f(no)h(sp)
+s(eci\014cation)630 5034 y(exists,)31 b(or)g(an)f(error)g(o)s(ccurs)g
+(adding)g(a)h(completion)g(sp)s(eci\014cation.)150 5202
+y Ft(compopt)870 5340 y(compopt)46 b([-o)h Fj(option)p
+Ft(])f([-DEI])g([+o)h Fj(option)p Ft(])e([)p Fj(name)p
+Ft(])p eop end
+%%Page: 163 169
+TeXDict begin 163 168 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(163)630 299 y(Mo)s(dify)33
+b(completion)h(options)g(for)f(eac)m(h)h Fr(name)39 b
+Fu(according)34 b(to)g(the)f Fr(option)p Fu(s,)i(or)e(for)g(the)630
+408 y(curren)m(tly-executing)46 b(completion)f(if)f(no)f
+Fr(name)5 b Fu(s)44 b(are)h(supplied.)80 b(If)43 b(no)h
+Fr(option)p Fu(s)h(are)630 518 y(giv)m(en,)30 b(displa)m(y)e(the)g
+(completion)h(options)g(for)e(eac)m(h)i Fr(name)34 b
+Fu(or)27 b(the)i(curren)m(t)e(completion.)630 628 y(The)f(p)s(ossible)g
+(v)-5 b(alues)27 b(of)f Fr(option)h Fu(are)g(those)g(v)-5
+b(alid)26 b(for)g(the)h Ft(complete)d Fu(builtin)i(describ)s(ed)630
+737 y(ab)s(o)m(v)m(e.)630 869 y(The)35 b Ft(-D)g Fu(option)g(indicates)
+i(that)f(other)f(supplied)g(options)g(should)g(apply)g(to)h(the)f
+(\\de-)630 978 y(fault")24 b(command)f(completion;)k(the)c
+Ft(-E)f Fu(option)i(indicates)g(that)g(other)f(supplied)f(options)630
+1088 y(should)f(apply)g(to)i(\\empt)m(y")g(command)f(completion;)k(and)
+c(the)g Ft(-I)f Fu(option)h(indicates)h(that)630 1198
+y(other)36 b(supplied)f(options)h(should)f(apply)h(to)h(completion)g
+(on)f(the)g(initial)h(w)m(ord)f(on)g(the)630 1307 y(line.)41
+b(These)30 b(are)h(determined)f(in)g(the)h(same)f(w)m(a)m(y)i(as)e(the)
+h Ft(complete)d Fu(builtin.)630 1439 y(If)35 b(m)m(ultiple)i(options)f
+(are)g(supplied,)g(the)g Ft(-D)g Fu(option)g(tak)m(es)h(precedence)g(o)
+m(v)m(er)g Ft(-E)p Fu(,)g(and)630 1548 y(b)s(oth)30 b(tak)m(e)i
+(precedence)e(o)m(v)m(er)i Ft(-I)630 1680 y Fu(The)23
+b(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
+1789 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h
+Fr(name)k Fu(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f
+(exists,)630 1899 y(or)e(an)h(output)f(error)g(o)s(ccurs.)150
+2134 y Fs(8.8)68 b(A)44 b(Programmable)j(Completion)f(Example)150
+2293 y Fu(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h
+(additional)g(completion)g(functionalit)m(y)h(b)s(ey)m(ond)d(the)i
+(default)150 2403 y(actions)29 b Ft(complete)d Fu(and)i
+Ft(compgen)e Fu(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g
+(and)g(bind)e(it)j(to)g(a)g(particular)150 2512 y(command)h(using)g
+Ft(complete)e(-F)p Fu(.)275 2644 y(The)j(follo)m(wing)j(function)e(pro)
+m(vides)g(completions)i(for)e(the)g Ft(cd)g Fu(builtin.)46
+b(It)32 b(is)h(a)f(reasonably)h(go)s(o)s(d)150 2754 y(example)41
+b(of)g(what)f(shell)h(functions)f(m)m(ust)g(do)h(when)e(used)h(for)g
+(completion.)73 b(This)39 b(function)h(uses)150 2863
+y(the)32 b(w)m(ord)f(passed)g(as)h Ft($2)f Fu(to)h(determine)g(the)f
+(directory)h(name)g(to)g(complete.)46 b(Y)-8 b(ou)32
+b(can)g(also)g(use)g(the)150 2973 y Ft(COMP_WORDS)c Fu(arra)m(y)i(v)-5
+b(ariable;)32 b(the)e(curren)m(t)h(w)m(ord)f(is)g(indexed)g(b)m(y)g
+(the)h Ft(COMP_CWORD)c Fu(v)-5 b(ariable.)275 3104 y(The)42
+b(function)h(relies)h(on)e(the)i Ft(complete)c Fu(and)j
+Ft(compgen)e Fu(builtins)h(to)i(do)f(m)m(uc)m(h)g(of)g(the)h(w)m(ork,)
+150 3214 y(adding)25 b(only)h(the)g(things)g(that)g(the)g(Bash)g
+Ft(cd)f Fu(do)s(es)g(b)s(ey)m(ond)g(accepting)j(basic)e(directory)g
+(names:)38 b(tilde)150 3323 y(expansion)22 b(\(see)h(Section)g(3.5.2)g
+([Tilde)g(Expansion],)g(page)g(26\),)i(searc)m(hing)e(directories)g(in)
+e Fr($CDP)-8 b(A)g(TH)p Fu(,)150 3433 y(whic)m(h)21 b(is)h(describ)s
+(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f
+(Builtins],)j(page)e(51\),)j(and)c(basic)h(supp)s(ort)150
+3543 y(for)31 b(the)h Ft(cdable_vars)d Fu(shell)i(option)h(\(see)h
+(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)i(page)f(77\).)46
+b Ft(_comp_)150 3652 y(cd)30 b Fu(mo)s(di\014es)g(the)h(v)-5
+b(alue)31 b(of)g Fr(IFS)36 b Fu(so)31 b(that)g(it)g(con)m(tains)h(only)
+f(a)g(newline)g(to)h(accommo)s(date)g(\014le)f(names)150
+3762 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Ft(compgen)e
+Fu(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
+(p)s(er)150 3871 y(line.)275 4003 y(P)m(ossible)24 b(completions)h(go)g
+(in)m(to)g(the)f Fr(COMPREPL)-8 b(Y)36 b Fu(arra)m(y)24
+b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c(arra)m(y)150
+4113 y(elemen)m(t.)42 b(The)30 b(programmable)g(completion)i(system)e
+(retriev)m(es)h(the)g(completions)g(from)f(there)g(when)150
+4222 y(the)h(function)f(returns.)390 4354 y Ft(#)47 b(A)h(completion)d
+(function)g(for)i(the)g(cd)g(builtin)390 4463 y(#)g(based)g(on)g(the)g
+(cd)g(completion)e(function)h(from)g(the)h(bash_completion)d(package)
+390 4573 y(_comp_cd\(\))390 4682 y({)581 4792 y(local)i(IFS=$')g
+(\\t\\n')190 b(#)47 b(normalize)f(IFS)581 4902 y(local)g(cur)h
+(_skipdot)f(_cdpath)581 5011 y(local)g(i)i(j)f(k)581
+5230 y(#)g(Tilde)g(expansion,)e(which)h(also)h(expands)f(tilde)g(to)h
+(full)g(pathname)581 5340 y(case)g("$2")f(in)p eop end
+%%Page: 164 170
+TeXDict begin 164 169 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(164)581 299 y Ft(\\~*\))190
+b(eval)46 b(cur="$2")g(;;)581 408 y(*\))286 b(cur=$2)46
+b(;;)581 518 y(esac)581 737 y(#)h(no)h(cdpath)e(or)h(absolute)e
+(pathname)h(--)h(straight)f(directory)f(completion)581
+847 y(if)i([[)g(-z)g("${CDPATH:-}")e(]])i(||)g([[)g("$cur")f(==)h
+(@\(./*|../*|/*\))d(]];)j(then)772 956 y(#)g(compgen)f(prints)g(paths)h
+(one)f(per)h(line;)g(could)f(also)h(use)g(while)f(loop)772
+1066 y(IFS=$'\\n')772 1176 y(COMPREPLY=\()f($\(compgen)g(-d)i(--)g
+("$cur"\))f(\))772 1285 y(IFS=$')g(\\t\\n')581 1395 y(#)h
+(CDPATH+directories)c(in)k(the)g(current)f(directory)f(if)j(not)e(in)i
+(CDPATH)581 1504 y(else)772 1614 y(IFS=$'\\n')772 1724
+y(_skipdot=false)772 1833 y(#)f(preprocess)e(CDPATH)h(to)i(convert)d
+(null)i(directory)e(names)i(to)g(.)772 1943 y(_cdpath=${CDPATH/#:/.:})
+772 2052 y(_cdpath=${_cdpath//::/:.)o(:})772 2162 y
+(_cdpath=${_cdpath/\045:/:.})772 2271 y(for)g(i)g(in)g
+(${_cdpath//:/$'\\n'};)c(do)963 2381 y(if)k([[)g($i)g(-ef)g(.)h(]];)f
+(then)f(_skipdot=true;)e(fi)963 2491 y(k="${#COMPREPLY[@]}")963
+2600 y(for)j(j)g(in)g($\()g(compgen)f(-d)h(--)h("$i/$cur")d(\);)i(do)
+1154 2710 y(COMPREPLY[k++]=${j#$i/})375 b(#)48 b(cut)f(off)f(directory)
+963 2819 y(done)772 2929 y(done)772 3039 y($_skipdot)f(||)i
+(COMPREPLY+=\()e($\(compgen)g(-d)i(--)g("$cur"\))f(\))772
+3148 y(IFS=$')g(\\t\\n')581 3258 y(fi)581 3477 y(#)h(variable)f(names)g
+(if)h(appropriate)e(shell)i(option)f(set)h(and)f(no)i(completions)581
+3587 y(if)f(shopt)f(-q)i(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c
+(-eq)k(0)g(]];)g(then)772 3696 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g
+("$cur"\))f(\))581 3806 y(fi)581 4025 y(return)g(0)390
+4134 y(})275 4281 y Fu(W)-8 b(e)31 b(install)g(the)g(completion)h
+(function)e(using)f(the)i Ft(-F)f Fu(option)h(to)g Ft(complete)p
+Fu(:)390 4427 y Ft(#)47 b(Tell)g(readline)f(to)h(quote)f(appropriate)f
+(and)i(append)f(slashes)g(to)h(directories;)390 4536
+y(#)g(use)g(the)g(bash)g(default)f(completion)f(for)i(other)f
+(arguments)390 4646 y(complete)g(-o)h(filenames)e(-o)i(nospace)f(-o)h
+(bashdefault)e(-F)i(_comp_cd)f(cd)150 4792 y Fu(Since)33
+b(w)m(e'd)g(lik)m(e)i(Bash)e(and)f(Readline)i(to)g(tak)m(e)g(care)g(of)
+f(some)h(of)f(the)g(other)h(details)g(for)e(us,)i(w)m(e)f(use)150
+4902 y(sev)m(eral)43 b(other)g(options)f(to)h(tell)g(Bash)f(and)f
+(Readline)i(what)f(to)g(do.)76 b(The)41 b Ft(-o)30 b(filenames)39
+b Fu(option)150 5011 y(tells)j(Readline)g(that)g(the)f(p)s(ossible)g
+(completions)h(should)f(b)s(e)f(treated)i(as)g(\014lenames,)i(and)d
+(quoted)150 5121 y(appropriately)-8 b(.)53 b(That)34
+b(option)h(will)g(also)g(cause)g(Readline)g(to)g(app)s(end)e(a)h(slash)
+g(to)h(\014lenames)g(it)g(can)150 5230 y(determine)i(are)g(directories)
+h(\(whic)m(h)g(is)f(wh)m(y)f(w)m(e)i(migh)m(t)f(w)m(an)m(t)h(to)g
+(extend)f Ft(_comp_cd)e Fu(to)i(app)s(end)f(a)150 5340
+y(slash)22 b(if)g(w)m(e're)h(using)f(directories)h(found)e(via)i
+Fr(CDP)-8 b(A)g(TH)10 b Fu(:)37 b(Readline)23 b(can't)g(tell)g(those)g
+(completions)h(are)p eop end
+%%Page: 165 171
+TeXDict begin 165 170 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(165)150 299 y(directories\).)45
+b(The)31 b Ft(-o)f(nospace)f Fu(option)j(tells)g(Readline)g(to)h(not)e
+(app)s(end)f(a)i(space)g(c)m(haracter)h(to)f(the)150
+408 y(directory)c(name,)h(in)f(case)h(w)m(e)f(w)m(an)m(t)h(to)f(app)s
+(end)f(to)h(it.)41 b(The)27 b Ft(-o)j(bashdefault)25
+b Fu(option)j(brings)f(in)h(the)150 518 y(rest)e(of)h(the)f(\\Bash)h
+(default")g(completions)g({)g(p)s(ossible)e(completions)j(that)f(Bash)f
+(adds)f(to)i(the)g(default)150 628 y(Readline)h(set.)40
+b(These)28 b(include)f(things)g(lik)m(e)i(command)e(name)h(completion,)
+h(v)-5 b(ariable)28 b(completion)h(for)150 737 y(w)m(ords)e(b)s
+(eginning)h(with)f(`)p Ft($)p Fu(')h(or)g(`)p Ft(${)p
+Fu(',)h(completions)g(con)m(taining)g(pathname)f(expansion)g(patterns)g
+(\(see)150 847 y(Section)j(3.5.8)h([Filename)g(Expansion],)e(page)i
+(37\),)f(and)f(so)h(on.)275 981 y(Once)39 b(installed)i(using)e
+Ft(complete)p Fu(,)h Ft(_comp_cd)d Fu(will)j(b)s(e)g(called)g(ev)m(ery)
+h(time)f(w)m(e)g(attempt)h(w)m(ord)150 1091 y(completion)32
+b(for)e(a)h Ft(cd)e Fu(command.)275 1225 y(Man)m(y)34
+b(more)g(examples)g({)g(an)g(extensiv)m(e)h(collection)i(of)c
+(completions)i(for)f(most)g(of)g(the)g(common)150 1335
+y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g(a)m(v)-5
+b(ailable)36 b(as)e(part)f(of)h(the)f(bash)p 2943 1335
+28 4 v 39 w(completion)i(pro)5 b(ject.)150 1445 y(This)33
+b(is)h(installed)h(b)m(y)f(default)g(on)g(man)m(y)h(GNU/Lin)m(ux)f
+(distributions.)51 b(Originally)35 b(written)f(b)m(y)g(Ian)150
+1554 y(Macdonald,)48 b(the)c(pro)5 b(ject)44 b(no)m(w)g(liv)m(es)h(at)f
+Ft(https:)11 b(/)g(/)g(github)g(.)g(com)g(/)g(sc)o(op)g(/)f(bash)o(-co)
+o(mple)o(tion)g(/)h Fu(.)150 1664 y(There)30 b(are)h(p)s(orts)e(for)h
+(other)h(systems)f(suc)m(h)g(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275
+1798 y(An)54 b(older)h(v)m(ersion)h(of)f(the)g(bash)p
+1532 1798 V 40 w(completion)h(pac)m(k)-5 b(age)57 b(is)e(distributed)f
+(with)h(bash)f(in)h(the)150 1908 y Ft(examples/complete)26
+b Fu(sub)s(directory)-8 b(.)p eop end
+%%Page: 166 172
+TeXDict begin 166 171 bop 3614 -116 a Fu(166)150 299
+y Fp(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
+527 y Fu(This)42 b(c)m(hapter)h(describ)s(es)f(ho)m(w)g(to)h(use)g(the)
+f Fm(gnu)h Fu(History)g(Library)e(in)m(teractiv)m(ely)-8
+b(,)50 b(from)42 b(a)h(user's)150 636 y(standp)s(oin)m(t.)76
+b(It)42 b(should)f(b)s(e)h(considered)g(a)g(user's)g(guide.)76
+b(F)-8 b(or)43 b(information)f(on)g(using)g(the)g Fm(gnu)150
+746 y Fu(History)31 b(Library)f(in)g(other)g(programs,)g(see)h(the)g
+Fm(gnu)f Fu(Readline)h(Library)f(Man)m(ual.)150 984 y
+Fs(9.1)68 b(Bash)45 b(History)h(F)-11 b(acilities)150
+1143 y Fu(When)44 b(the)g Ft(-o)30 b(history)42 b Fu(option)i(to)h(the)
+f Ft(set)f Fu(builtin)h(is)g(enabled)g(\(see)g(Section)h(4.3.1)h([The)e
+(Set)150 1253 y(Builtin],)32 b(page)g(72\),)h(the)e(shell)h(pro)m
+(vides)f(access)h(to)g(the)f Fr(command)g(history)p Fu(,)h(the)f(list)h
+(of)f(commands)150 1363 y(previously)h(t)m(yp)s(ed.)47
+b(The)33 b(v)-5 b(alue)33 b(of)f(the)h Ft(HISTSIZE)e
+Fu(shell)h(v)-5 b(ariable)34 b(is)f(used)e(as)i(the)g(n)m(um)m(b)s(er)e
+(of)i(com-)150 1472 y(mands)h(to)i(sa)m(v)m(e)g(in)f(a)g(history)g
+(list:)50 b(the)35 b(shell)h(sa)m(v)m(es)g(the)f(text)h(of)f(the)g
+(last)h Ft($HISTSIZE)c Fu(commands)150 1582 y(\(default)38
+b(500\).)64 b(The)37 b(shell)g(stores)h(eac)m(h)h(command)e(in)g(the)h
+(history)f(list)i(prior)d(to)j(parameter)f(and)150 1691
+y(v)-5 b(ariable)38 b(expansion)f(but)g(after)g(history)g(expansion)h
+(is)f(p)s(erformed,)g(sub)5 b(ject)37 b(to)h(the)g(v)-5
+b(alues)37 b(of)h(the)150 1801 y(shell)31 b(v)-5 b(ariables)31
+b Ft(HISTIGNORE)c Fu(and)j Ft(HISTCONTROL)p Fu(.)275
+1934 y(When)d(the)g(shell)h(starts)f(up,)h(Bash)f(initializes)j(the)d
+(history)g(list)h(b)m(y)g(reading)f(history)g(en)m(tries)h(from)150
+2044 y(the)37 b(\014le)g(named)g(b)m(y)g(the)g Ft(HISTFILE)e
+Fu(v)-5 b(ariable)38 b(\(default)g Ft(~/.bash_history)p
+Fu(\).)57 b(This)36 b(is)h(referred)f(to)150 2153 y(as)42
+b(the)g Fr(history)g(\014le)p Fu(.)75 b(The)42 b(history)g(\014le)g(is)
+g(truncated,)j(if)d(necessary)-8 b(,)45 b(to)e(con)m(tain)g(no)f(more)g
+(than)150 2263 y(the)k(n)m(um)m(b)s(er)e(of)i(history)f(en)m(tries)h
+(sp)s(eci\014ed)f(b)m(y)g(the)h(v)-5 b(alue)46 b(of)g(the)f
+Ft(HISTFILESIZE)e Fu(v)-5 b(ariable.)86 b(If)150 2373
+y Ft(HISTFILESIZE)33 b Fu(is)j(unset,)i(or)e(set)h(to)f(n)m(ull,)i(a)f
+(non-n)m(umeric)f(v)-5 b(alue,)38 b(or)e(a)h(n)m(umeric)f(v)-5
+b(alue)37 b(less)f(than)150 2482 y(zero,)31 b(the)g(history)f(\014le)h
+(is)f(not)h(truncated.)275 2615 y(When)20 b(the)h(history)g(\014le)g
+(is)g(read,)i(lines)e(b)s(eginning)f(with)h(the)g(history)g(commen)m(t)
+h(c)m(haracter)g(follo)m(w)m(ed)150 2725 y(immediately)29
+b(b)m(y)f(a)g(digit)g(are)g(in)m(terpreted)g(as)g(timestamps)g(for)g
+(the)g(follo)m(wing)h(history)f(en)m(try)-8 b(.)40 b(These)150
+2834 y(timestamps)23 b(are)g(optionally)h(displa)m(y)m(ed)f(dep)s
+(ending)e(on)i(the)g(v)-5 b(alue)23 b(of)g(the)f Ft(HISTTIMEFORMAT)d
+Fu(v)-5 b(ariable)150 2944 y(\(see)44 b(Section)g(5.2)h([Bash)f(V)-8
+b(ariables],)48 b(page)c(86\).)81 b(When)43 b(presen)m(t,)k(history)c
+(timestamps)h(delimit)150 3054 y(history)30 b(en)m(tries,)i(making)e(m)
+m(ulti-line)i(en)m(tries)f(p)s(ossible.)275 3187 y(When)36
+b(a)h(shell)f(with)g(history)h(enabled)f(exits,)j(Bash)e(copies)g(the)g
+(last)g Ft($HISTSIZE)d Fu(en)m(tries)j(from)150 3296
+y(the)32 b(history)g(list)g(to)h(the)f(\014le)g(named)f(b)m(y)h
+Ft($HISTFILE)p Fu(.)42 b(If)32 b(the)g Ft(histappend)d
+Fu(shell)j(option)g(is)g(set)g(\(see)150 3406 y(Section)27
+b(4.2)h([Bash)e(Builtins],)i(page)f(60\),)i(Bash)d(app)s(ends)f(the)h
+(en)m(tries)h(to)g(the)g(history)f(\014le,)i(otherwise)150
+3516 y(it)f(o)m(v)m(erwrites)h(the)e(history)h(\014le.)39
+b(If)26 b Ft(HISTFILE)e Fu(is)j(unset)f(or)g(n)m(ull,)h(or)g(if)f(the)h
+(history)f(\014le)g(is)h(un)m(writable,)150 3625 y(the)h(history)h(is)f
+(not)g(sa)m(v)m(ed.)41 b(After)29 b(sa)m(ving)g(the)f(history)-8
+b(,)30 b(Bash)e(truncates)h(the)f(history)g(\014le)h(to)g(con)m(tain)
+150 3735 y(no)h(more)h(than)f Ft($HISTFILESIZE)d Fu(lines)j(as)h
+(describ)s(ed)e(ab)s(o)m(v)m(e.)275 3868 y(If)24 b(the)h
+Ft(HISTTIMEFORMAT)c Fu(v)-5 b(ariable)26 b(is)f(set,)i(the)e(shell)h
+(writes)f(the)g(timestamp)h(information)f(asso)s(ci-)150
+3978 y(ated)g(with)f(eac)m(h)i(history)f(en)m(try)g(to)g(the)g(history)
+f(\014le,)i(mark)m(ed)f(with)f(the)h(history)f(commen)m(t)i(c)m
+(haracter,)150 4087 y(so)h(timestamps)g(are)g(preserv)m(ed)g(across)g
+(shell)g(sessions.)40 b(When)26 b(the)h(history)g(\014le)g(is)f(read,)i
+(lines)f(b)s(egin-)150 4197 y(ning)36 b(with)f(the)i(history)f(commen)m
+(t)h(c)m(haracter)g(follo)m(w)m(ed)h(immediately)f(b)m(y)f(a)g(digit)h
+(are)g(in)m(terpreted)150 4306 y(as)31 b(timestamps)h(for)e(the)i
+(follo)m(wing)g(history)f(en)m(try)-8 b(.)43 b(As)31
+b(ab)s(o)m(v)m(e,)i(when)d(using)g Ft(HISTTIMEFORMAT)p
+Fu(,)e(the)150 4416 y(timestamps)j(delimit)g(m)m(ulti-line)h(history)e
+(en)m(tries.)275 4549 y(The)37 b Ft(fc)h Fu(builtin)g(command)g(will)h
+(list)g(or)f(edit)h(and)f(re-execute)i(a)f(p)s(ortion)f(of)g(the)h
+(history)f(list.)150 4659 y(The)29 b Ft(history)f Fu(builtin)i(can)g
+(displa)m(y)g(or)g(mo)s(dify)f(the)h(history)g(list)g(and)f(manipulate)
+i(the)f(history)g(\014le.)150 4768 y(When)22 b(using)g(command-line)h
+(editing,)i(searc)m(h)e(commands)f(are)h(a)m(v)-5 b(ailable)25
+b(in)d(eac)m(h)h(editing)g(mo)s(de)f(that)150 4878 y(pro)m(vide)30
+b(access)i(to)f(the)g(history)f(list)h(\(see)h(Section)f(8.4.2)h
+([Commands)d(F)-8 b(or)31 b(History],)h(page)f(146\).)275
+5011 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 5121 y Ft(HISTCONTROL)34 b Fu(and)i Ft(HISTIGNORE)e
+Fu(v)-5 b(ariables)38 b(are)f(used)f(to)h(sa)m(v)m(e)i(only)e(a)g
+(subset)f(of)h(the)g(commands)150 5230 y(en)m(tered.)74
+b(If)41 b(the)g Ft(cmdhist)e Fu(shell)j(option)f(is)h(enabled,)i(the)d
+(shell)h(attempts)g(to)g(sa)m(v)m(e)h(eac)m(h)f(line)g(of)150
+5340 y(a)h(m)m(ulti-line)h(command)f(in)f(the)h(same)g(history)g(en)m
+(try)-8 b(,)47 b(adding)42 b(semicolons)i(where)e(necessary)h(to)p
+eop end
+%%Page: 167 173
+TeXDict begin 167 172 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(167)150
+299 y(preserv)m(e)36 b(syn)m(tactic)h(correctness.)57
+b(The)35 b Ft(lithist)e Fu(shell)j(option)g(mo)s(di\014es)f
+Ft(cmdhist)e Fu(b)m(y)i(sa)m(ving)i(the)150 408 y(command)31
+b(with)g(em)m(b)s(edded)f(newlines)h(instead)g(of)h(semicolons.)44
+b(The)30 b Ft(shopt)g Fu(builtin)h(is)g(used)f(to)i(set)150
+518 y(these)f(options.)41 b(See)30 b(Section)i(4.3.2)g([The)e(Shopt)g
+(Builtin],)h(page)g(77,)g(for)g(a)f(description)h(of)f
+Ft(shopt)p Fu(.)150 747 y Fs(9.2)68 b(Bash)45 b(History)h(Builtins)150
+907 y Fu(Bash)31 b(pro)m(vides)f(t)m(w)m(o)i(builtin)e(commands)g(whic)
+m(h)g(manipulate)g(the)h(history)f(list)h(and)f(history)g(\014le.)150
+1055 y Ft(fc)870 1184 y(fc)47 b([-e)g Fj(ename)p Ft(])f([-lnr])g([)p
+Fj(first)p Ft(])g([)p Fj(last)p Ft(])870 1293 y(fc)h(-s)g([)p
+Fj(pat)p Ft(=)p Fj(rep)p Ft(])f([)p Fj(command)p Ft(])630
+1422 y Fu(The)32 b(\014rst)g(form)g(selects)j(a)e(range)g(of)f
+(commands)h(from)f Fr(\014rst)i Fu(to)f Fr(last)j Fu(from)c(the)h
+(history)630 1532 y(list)41 b(and)f(displa)m(ys)g(or)g(edits)h(and)e
+(re-executes)j(them.)71 b(Both)40 b Fr(\014rst)i Fu(and)e
+Fr(last)j Fu(ma)m(y)e(b)s(e)630 1641 y(sp)s(eci\014ed)33
+b(as)h(a)g(string)g(\(to)h(lo)s(cate)h(the)e(most)g(recen)m(t)h
+(command)f(b)s(eginning)f(with)g(that)630 1751 y(string\))28
+b(or)g(as)h(a)f(n)m(um)m(b)s(er)f(\(an)h(index)g(in)m(to)h(the)f
+(history)g(list,)h(where)f(a)g(negativ)m(e)i(n)m(um)m(b)s(er)630
+1860 y(is)g(used)g(as)h(an)f(o\013set)h(from)f(the)h(curren)m(t)f
+(command)g(n)m(um)m(b)s(er\).)630 1989 y(When)j(listing,)h(a)f
+Fr(\014rst)h Fu(or)f Fr(last)j Fu(of)d(0)g(is)g(equiv)-5
+b(alen)m(t)34 b(to)g(-1)f(and)g(-0)g(is)g(equiv)-5 b(alen)m(t)34
+b(to)g(the)630 2099 y(curren)m(t)k(command)h(\(usually)g(the)g
+Ft(fc)f Fu(command\);)43 b(otherwise)c(0)g(is)g(equiv)-5
+b(alen)m(t)40 b(to)f(-1)630 2208 y(and)30 b(-0)h(is)f(in)m(v)-5
+b(alid.)630 2337 y(If)32 b Fr(last)j Fu(is)d(not)g(sp)s(eci\014ed,)g
+(it)h(is)f(set)h(to)f(the)h(curren)m(t)f(command)g(for)f(listing)i(and)
+f(to)h Fr(\014rst)630 2447 y Fu(otherwise.)41 b(If)27
+b Fr(\014rst)j Fu(is)f(not)f(sp)s(eci\014ed,)h(it)g(is)f(set)h(to)g
+(the)g(previous)f(command)g(for)g(editing)630 2556 y(and)i
+Fq(\000)p Fu(16)h(for)f(listing.)630 2685 y(If)e(the)h
+Ft(-l)f Fu(\015ag)h(is)f(supplied,)g(the)h(commands)f(are)h(listed)g
+(on)g(standard)f(output.)39 b(The)29 b Ft(-n)630 2795
+y Fu(\015ag)36 b(suppresses)f(the)h(command)f(n)m(um)m(b)s(ers)g(when)g
+(listing.)58 b(The)36 b Ft(-r)f Fu(\015ag)h(rev)m(erses)h(the)630
+2904 y(order)30 b(of)g(the)h(listing.)630 3033 y(Otherwise,)40
+b Ft(fc)e Fu(in)m(v)m(ok)m(es)i(the)f(editor)g(named)f(b)m(y)g
+Fr(ename)44 b Fu(on)38 b(a)h(\014le)f(con)m(taining)i(those)630
+3143 y(commands.)f(If)26 b Fr(ename)32 b Fu(is)27 b(not)g(supplied,)f
+Ft(fc)g Fu(uses)g(the)h(v)-5 b(alue)27 b(of)f(the)h(follo)m(wing)h(v)-5
+b(ariable)630 3252 y(expansion:)67 b Ft(${FCEDIT:-${EDITOR:-vi}})p
+Fu(.)75 b(This)43 b(sa)m(ys)h(to)h(use)e(the)h(v)-5 b(alue)45
+b(of)f(the)630 3362 y Ft(FCEDIT)26 b Fu(v)-5 b(ariable)29
+b(if)f(set,)i(or)e(the)g(v)-5 b(alue)29 b(of)f(the)g
+Ft(EDITOR)e Fu(v)-5 b(ariable)29 b(if)f(that)h(is)f(set,)h(or)g
+Ft(vi)e Fu(if)630 3471 y(neither)k(is)g(set.)44 b(When)31
+b(editing)g(is)h(complete,)h Ft(fc)d Fu(reads)h(the)g(\014le)h(of)f
+(edited)g(commands)630 3581 y(and)f(ec)m(ho)s(es)h(and)f(executes)h
+(them.)630 3710 y(In)36 b(the)g(second)h(form,)h Ft(fc)e
+Fu(re-executes)i Fr(command)i Fu(after)d(replacing)g(eac)m(h)h
+(instance)f(of)630 3819 y Fr(pat)j Fu(in)d(the)g(selected)i(command)f
+(with)f Fr(rep)p Fu(.)61 b Fr(command)41 b Fu(is)c(in)m(terpreted)h
+(the)g(same)g(as)630 3929 y Fr(\014rst)32 b Fu(ab)s(o)m(v)m(e.)630
+4058 y(A)f(useful)f(alias)i(to)g(use)e(with)h(the)g Ft(fc)f
+Fu(command)h(is)g Ft(r='fc)e(-s')p Fu(,)h(so)h(that)h(t)m(yping)f(`)p
+Ft(r)f(cc)p Fu(')630 4167 y(runs)35 b(the)h(last)h(command)f(b)s
+(eginning)g(with)g Ft(cc)f Fu(and)h(t)m(yping)g(`)p Ft(r)p
+Fu(')h(re-executes)h(the)e(last)630 4277 y(command)30
+b(\(see)h(Section)h(6.6)f([Aliases],)h(page)g(108\).)630
+4406 y(If)40 b(the)i(\014rst)e(form)g(is)h(used,)i(the)e(return)f(v)-5
+b(alue)41 b(is)g(zero)h(unless)e(an)h(in)m(v)-5 b(alid)42
+b(option)f(is)630 4515 y(encoun)m(tered)f(or)f Fr(\014rst)i
+Fu(or)e Fr(last)j Fu(sp)s(ecify)d(history)g(lines)g(out)h(of)f(range.)
+68 b(When)39 b(editing)630 4625 y(and)c(re-executing)i(a)f(\014le)g(of)
+g(commands,)g(the)g(return)f(v)-5 b(alue)36 b(is)g(the)f(v)-5
+b(alue)36 b(of)g(the)g(last)630 4734 y(command)31 b(executed)i(or)e
+(failure)h(if)f(an)h(error)f(o)s(ccurs)g(with)g(the)h(temp)s(orary)f
+(\014le.)44 b(If)31 b(the)630 4844 y(second)42 b(form)g(is)g(used,)i
+(the)f(return)e(status)h(is)g(that)h(of)f(the)h(re-executed)g(command,)
+630 4954 y(unless)25 b Fr(command)k Fu(do)s(es)d(not)g(sp)s(ecify)f(a)h
+(v)-5 b(alid)26 b(history)g(en)m(try)-8 b(,)27 b(in)f(whic)m(h)f(case)i
+Ft(fc)e Fu(returns)630 5063 y(a)31 b(non-zero)g(status.)150
+5211 y Ft(history)870 5340 y(history)46 b([)p Fj(n)p
+Ft(])p eop end
+%%Page: 168 174
+TeXDict begin 168 173 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(168)870
+299 y Ft(history)46 b(-c)870 408 y(history)g(-d)h Fj(offset)870
+518 y Ft(history)f(-d)h Fj(start)p Ft(-)p Fj(end)870
+628 y Ft(history)f([-anrw])g([)p Fj(filename)p Ft(])870
+737 y(history)g(-ps)h Fj(arg)630 871 y Fu(With)34 b(no)g(options,)h
+(displa)m(y)g(the)f(history)f(list)i(with)f(n)m(um)m(b)s(ers.)49
+b(En)m(tries)35 b(pre\014xed)d(with)630 980 y(a)39 b(`)p
+Ft(*)p Fu(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)65
+b(An)39 b(argumen)m(t)g(of)g Fr(n)f Fu(lists)i(only)f(the)g(last)g
+Fr(n)g Fu(en)m(tries.)66 b(If)630 1090 y(the)37 b(shell)h(v)-5
+b(ariable)38 b Ft(HISTTIMEFORMAT)33 b Fu(is)k(set)h(and)f(not)g(n)m
+(ull,)i(it)f(is)f(used)g(as)g(a)h(format)630 1199 y(string)24
+b(for)f Ft(strftime)p Fu(\(3\))g(to)h(displa)m(y)g(the)g(time)g(stamp)g
+(asso)s(ciated)h(with)e(eac)m(h)i(displa)m(y)m(ed)630
+1309 y(history)e(en)m(try)-8 b(.)39 b(If)22 b Ft(history)f
+Fu(uses)i Ft(HISTTIMEFORMAT)p Fu(,)e(it)i(do)s(es)g(not)g(prin)m(t)g
+(an)g(in)m(terv)m(ening)630 1419 y(space)31 b(b)s(et)m(w)m(een)g(the)g
+(formatted)f(time)i(stamp)e(and)g(the)g(history)g(en)m(try)-8
+b(.)630 1552 y(Options,)30 b(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)
+m(wing)h(meanings:)630 1709 y Ft(-c)384 b Fu(Clear)23
+b(the)g(history)g(list.)39 b(This)22 b(ma)m(y)i(b)s(e)e(com)m(bined)h
+(with)f(the)h(other)h(options)1110 1819 y(to)31 b(replace)g(the)g
+(history)f(list.)630 1976 y Ft(-d)g Fj(offset)66 b Fu(Delete)38
+b(the)f(history)f(en)m(try)h(at)f(p)s(osition)h Fr(o\013set)p
+Fu(.)59 b(If)36 b Fr(o\013set)j Fu(is)d(p)s(ositiv)m(e,)j(it)1110
+2086 y(should)32 b(b)s(e)h(sp)s(eci\014ed)f(as)i(it)g(app)s(ears)e
+(when)g(the)i(history)f(is)g(displa)m(y)m(ed.)50 b(If)1110
+2195 y Fr(o\013set)26 b Fu(is)d(negativ)m(e,)k(it)c(is)g(in)m
+(terpreted)h(as)f(relativ)m(e)i(to)f(one)f(greater)h(than)f(the)1110
+2305 y(last)36 b(history)f(p)s(osition,)h(so)f(negativ)m(e)i(indices)e
+(coun)m(t)h(bac)m(k)f(from)g(the)g(end)1110 2414 y(of)h(the)g(history)
+-8 b(,)37 b(and)e(an)h(index)f(of)h(`)p Ft(-1)p Fu(')f(refers)g(to)i
+(the)f(curren)m(t)f Ft(history)1110 2524 y(-d)30 b Fu(command.)630
+2681 y Ft(-d)g Fj(start)p Ft(-)p Fj(end)1110 2791 y Fu(Delete)e(the)e
+(range)h(of)f(history)g(en)m(tries)h(b)s(et)m(w)m(een)f(p)s(ositions)g
+Fr(start)j Fu(and)c Fr(end)p Fu(,)1110 2900 y(inclusiv)m(e.)44
+b(P)m(ositiv)m(e)33 b(and)e(negativ)m(e)i(v)-5 b(alues)31
+b(for)g Fr(start)j Fu(and)d Fr(end)j Fu(are)d(in)m(ter-)1110
+3010 y(preted)f(as)h(describ)s(ed)e(ab)s(o)m(v)m(e.)630
+3167 y Ft(-a)384 b Fu(App)s(end)18 b(the)j Ft(")p Fu(new)p
+Ft(")e Fu(history)i(lines)f(to)i(the)e(history)h(\014le.)37
+b(These)20 b(are)h(history)1110 3277 y(lines)36 b(en)m(tered)g(since)f
+(the)h(b)s(eginning)f(of)g(the)h(curren)m(t)f(Bash)h(session,)h(but)
+1110 3386 y(not)31 b(already)g(app)s(ended)d(to)j(the)g(history)f
+(\014le.)630 3544 y Ft(-n)384 b Fu(Read)38 b(the)g(history)f(lines)h
+(not)g(already)g(read)g(from)f(the)h(history)g(\014le)g(and)1110
+3653 y(add)33 b(them)g(to)h(the)g(curren)m(t)f(history)g(list.)50
+b(These)33 b(are)h(lines)g(app)s(ended)d(to)1110 3763
+y(the)g(history)f(\014le)g(since)h(the)g(b)s(eginning)e(of)i(the)f
+(curren)m(t)h(Bash)f(session.)630 3920 y Ft(-r)384 b
+Fu(Read)31 b(the)f(history)g(\014le)h(and)f(app)s(end)e(its)j(con)m
+(ten)m(ts)h(to)f(the)g(history)f(list.)630 4077 y Ft(-w)384
+b Fu(W)-8 b(rite)42 b(the)f(curren)m(t)g(history)f(list)i(to)f(the)g
+(history)g(\014le,)j(o)m(v)m(erwriting)e(the)1110 4187
+y(history)30 b(\014le.)630 4344 y Ft(-p)384 b Fu(P)m(erform)31
+b(history)f(substitution)h(on)f(the)h Fr(arg)8 b Fu(s)31
+b(and)f(displa)m(y)h(the)f(result)h(on)1110 4454 y(the)d(standard)f
+(output,)i(without)f(storing)g(the)g(results)g(in)g(the)g(history)g
+(list.)630 4611 y Ft(-s)384 b Fu(Add)33 b(the)i Fr(arg)8
+b Fu(s)34 b(to)h(the)g(end)f(of)g(the)h(history)f(list)h(as)f(a)h
+(single)g(en)m(try)-8 b(.)53 b(The)1110 4721 y(last)27
+b(command)g(in)f(the)g(history)h(list)g(is)f(remo)m(v)m(ed)i(b)s(efore)
+e(adding)g(the)h Fr(arg)8 b Fu(s.)630 4878 y(If)36 b(a)g
+Fr(\014lename)41 b Fu(argumen)m(t)c(is)f(supplied)f(with)h(an)m(y)g(of)
+g(the)g Ft(-w)p Fu(,)i Ft(-r)p Fu(,)f Ft(-a)p Fu(,)g(or)f
+Ft(-n)f Fu(options,)630 4987 y(Bash)29 b(uses)g Fr(\014lename)35
+b Fu(as)30 b(the)f(history)h(\014le.)40 b(If)29 b(not,)h(it)g(uses)f
+(the)g(v)-5 b(alue)30 b(of)g(the)f Ft(HISTFILE)630 5097
+y Fu(v)-5 b(ariable.)42 b(If)29 b Ft(HISTFILE)g Fu(is)h(unset)g(or)g(n)
+m(ull,)h(these)g(options)f(ha)m(v)m(e)i(no)e(e\013ect.)630
+5230 y(If)38 b(the)g Ft(HISTTIMEFORMAT)d Fu(v)-5 b(ariable)39
+b(is)f(set,)k Ft(history)36 b Fu(writes)i(the)h(time)g(stamp)f(infor-)
+630 5340 y(mation)33 b(asso)s(ciated)g(with)f(eac)m(h)h(history)f(en)m
+(try)h(to)g(the)f(history)g(\014le,)h(mark)m(ed)f(with)g(the)p
+eop end
+%%Page: 169 175
+TeXDict begin 169 174 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(169)630
+299 y(history)35 b(commen)m(t)g(c)m(haracter)h(as)f(describ)s(ed)f(ab)s
+(o)m(v)m(e.)55 b(When)34 b(the)h(history)f(\014le)h(is)g(read,)630
+408 y(lines)30 b(b)s(eginning)g(with)f(the)i(history)f(commen)m(t)h(c)m
+(haracter)g(follo)m(w)m(ed)h(immediately)g(b)m(y)e(a)630
+518 y(digit)h(are)g(in)m(terpreted)g(as)f(timestamps)h(for)f(the)h
+(follo)m(wing)h(history)e(en)m(try)-8 b(.)630 660 y(The)34
+b(return)g(v)-5 b(alue)35 b(is)g(0)g(unless)f(an)h(in)m(v)-5
+b(alid)35 b(option)g(is)g(encoun)m(tered,)h(an)f(error)f(o)s(ccurs)630
+769 y(while)h(reading)g(or)g(writing)f(the)h(history)g(\014le,)h(an)f
+(in)m(v)-5 b(alid)36 b Fr(o\013set)h Fu(or)e(range)g(is)g(supplied)630
+879 y(as)c(an)g(argumen)m(t)g(to)h Ft(-d)p Fu(,)e(or)h(the)g(history)g
+(expansion)f(supplied)g(as)h(an)g(argumen)m(t)g(to)h
+Ft(-p)630 988 y Fu(fails.)150 1251 y Fs(9.3)68 b(History)46
+b(Expansion)150 1410 y Fu(The)e(shell)h(pro)m(vides)f(a)h(history)f
+(expansion)h(feature)f(that)i(is)e(similar)h(to)g(the)g(history)f
+(expansion)150 1520 y(pro)m(vided)32 b(b)m(y)h Ft(csh)f
+Fu(\(also)i(referred)d(to)j(as)f(history)f(substitution)h(where)f
+(appropriate\).)48 b(This)32 b(section)150 1629 y(describ)s(es)e(the)g
+(syn)m(tax)h(used)f(to)h(manipulate)g(the)f(history)g(information.)275
+1778 y(History)g(expansion)f(is)h(enabled)f(b)m(y)g(default)h(for)f(in)
+m(teractiv)m(e)k(shells,)d(and)f(can)g(b)s(e)g(disabled)g(using)150
+1888 y(the)36 b Ft(+H)f Fu(option)h(to)g(the)g Ft(set)f
+Fu(builtin)g(command)g(\(see)i(Section)f(4.3.1)h([The)f(Set)f
+(Builtin],)j(page)e(72\).)150 1997 y(Non-in)m(teractiv)m(e)h(shells)d
+(do)g(not)g(p)s(erform)e(history)i(expansion)g(b)m(y)g(default,)h(but)e
+(it)i(can)f(b)s(e)f(enabled)150 2107 y(with)d Ft(set)g(-H)p
+Fu(.)275 2256 y(History)h(expansions)f(in)m(tro)s(duce)g(w)m(ords)g
+(from)g(the)h(history)f(list)h(in)m(to)g(the)g(input)f(stream,)h
+(making)150 2365 y(it)g(easy)g(to)g(rep)s(eat)g(commands,)f(insert)g
+(the)h(argumen)m(ts)f(to)h(a)g(previous)f(command)g(in)m(to)i(the)e
+(curren)m(t)150 2475 y(input)f(line,)i(or)g(\014x)f(errors)f(in)h
+(previous)g(commands)g(quic)m(kly)-8 b(.)275 2623 y(History)24
+b(expansion)f(is)h(p)s(erformed)e(immediately)j(after)f(a)g(complete)h
+(line)f(is)g(read,)h(b)s(efore)e(the)h(shell)150 2733
+y(breaks)32 b(it)i(in)m(to)f(w)m(ords,)g(and)f(is)h(p)s(erformed)e(on)h
+(eac)m(h)i(line)f(individually)-8 b(.)48 b(Bash)33 b(attempts)g(to)h
+(inform)150 2843 y(the)d(history)f(expansion)g(functions)g(ab)s(out)g
+(quoting)h(still)g(in)f(e\013ect)i(from)e(previous)g(lines.)275
+2991 y(History)j(expansion)f(tak)m(es)i(place)f(in)g(t)m(w)m(o)g
+(parts.)47 b(The)32 b(\014rst)g(is)h(to)g(determine)f(whic)m(h)h(en)m
+(try)f(from)150 3101 y(the)d(history)g(list)g(should)f(b)s(e)g(used)g
+(during)g(substitution.)40 b(The)28 b(second)h(is)g(to)h(select)g(p)s
+(ortions)e(of)h(that)150 3211 y(en)m(try)i(to)g(include)f(in)m(to)h
+(the)g(curren)m(t)f(one.)275 3359 y(The)k(en)m(try)h(selected)h(from)e
+(the)h(history)g(is)f(called)i(the)f Fr(ev)m(en)m(t)p
+Fu(,)j(and)c(the)g(p)s(ortions)h(of)f(that)i(en)m(try)150
+3469 y(that)d(are)g(acted)g(up)s(on)e(are)i Fr(w)m(ords)p
+Fu(.)46 b(V)-8 b(arious)33 b Fr(mo)s(di\014ers)i Fu(are)d(a)m(v)-5
+b(ailable)35 b(to)e(manipulate)g(the)f(selected)150 3579
+y(w)m(ords.)38 b(The)24 b(en)m(try)h(is)g(split)g(in)m(to)g(w)m(ords)f
+(in)h(the)g(same)g(fashion)f(that)h(Bash)g(do)s(es)f(when)g(reading)h
+(input,)150 3688 y(so)k(that)h(sev)m(eral)g(w)m(ords)f(surrounded)d(b)m
+(y)j(quotes)h(are)f(considered)g(one)g(w)m(ord.)40 b(The)29
+b Fr(ev)m(en)m(t)h(designator)150 3798 y Fu(selects)37
+b(the)f(ev)m(en)m(t,)j(the)d(optional)h Fr(w)m(ord)f(designator)43
+b Fu(selects)37 b(w)m(ords)e(from)h(the)g(ev)m(en)m(t,)j(and)c(v)-5
+b(arious)150 3907 y(optional)32 b Fr(mo)s(di\014ers)g
+Fu(are)f(a)m(v)-5 b(ailable)33 b(to)e(manipulate)g(the)f(selected)i(w)m
+(ords.)275 4056 y(History)26 b(expansions)f(are)h(in)m(tro)s(duced)f(b)
+m(y)g(the)g(app)s(earance)h(of)g(the)f(history)h(expansion)f(c)m
+(haracter,)150 4166 y(whic)m(h)31 b(is)g(`)p Ft(!)p Fu(')h(b)m(y)f
+(default.)43 b(History)32 b(expansions)f(ma)m(y)g(app)s(ear)g(an)m
+(ywhere)g(in)g(the)g(input,)g(but)g(do)g(not)150 4275
+y(nest.)275 4424 y(History)26 b(expansion)g(implemen)m(ts)h(shell-lik)m
+(e)h(quoting)f(con)m(v)m(en)m(tions:)40 b(a)27 b(bac)m(kslash)g(can)f
+(b)s(e)g(used)f(to)150 4534 y(remo)m(v)m(e)h(the)e(sp)s(ecial)g
+(handling)g(for)g(the)g(next)g(c)m(haracter;)k(single)d(quotes)g
+(enclose)g(v)m(erbatim)g(sequences)150 4643 y(of)k(c)m(haracters,)i
+(and)e(can)g(b)s(e)g(used)f(to)i(inhibit)f(history)g(expansion;)g(and)g
+(c)m(haracters)i(enclosed)e(within)150 4753 y(double)h(quotes)i(ma)m(y)
+f(b)s(e)f(sub)5 b(ject)31 b(to)h(history)f(expansion,)g(since)g(bac)m
+(kslash)g(can)h(escap)s(e)f(the)g(history)150 4862 y(expansion)e(c)m
+(haracter,)j(but)d(single)h(quotes)g(ma)m(y)h(not,)f(since)g(they)g
+(are)g(not)f(treated)i(sp)s(ecially)f(within)150 4972
+y(double)g(quotes.)275 5121 y(When)41 b(using)g(the)h(shell,)i(only)e
+(`)p Ft(\\)p Fu(')g(and)e(`)p Ft(')p Fu(')i(ma)m(y)g(b)s(e)f(used)g(to)
+h(escap)s(e)g(the)g(history)f(expansion)150 5230 y(c)m(haracter,)e(but)
+34 b(the)i(history)g(expansion)f(c)m(haracter)i(is)f(also)g(treated)h
+(as)e(quoted)h(if)g(it)g(immediately)150 5340 y(precedes)30
+b(the)h(closing)g(double)f(quote)h(in)f(a)h(double-quoted)g(string.)p
+eop end
+%%Page: 170 176
+TeXDict begin 170 175 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(170)275
+299 y(Sev)m(eral)34 b(c)m(haracters)i(inhibit)d(history)h(expansion)g
+(if)g(found)e(immediately)k(follo)m(wing)f(the)f(history)150
+408 y(expansion)i(c)m(haracter,)j(ev)m(en)e(if)f(it)h(is)f(unquoted:)52
+b(space,)38 b(tab,)g(newline,)g(carriage)g(return,)f(`)p
+Ft(=)p Fu(',)h(and)150 518 y(the)31 b(other)f(shell)h(metac)m
+(haracters.)275 664 y(There)25 b(is)h(a)h(sp)s(ecial)f(abbreviation)h
+(for)f(substitution,)g(activ)m(e)j(when)c(the)h Fr(quic)m(k)h
+(substitution)e Fu(c)m(har-)150 774 y(acter)37 b(\(describ)s(ed)f(ab)s
+(o)m(v)m(e)h(under)e Ft(histchars)p Fu(\))f(is)i(the)h(\014rst)e(c)m
+(haracter)j(on)e(the)g(line.)59 b(It)36 b(selects)i(the)150
+883 y(previous)31 b(history)g(list)h(en)m(try)-8 b(,)32
+b(using)f(an)g(ev)m(en)m(t)i(designator)f(equiv)-5 b(alen)m(t)33
+b(to)f Ft(!!)p Fu(,)f(and)g(substitutes)g(one)150 993
+y(string)25 b(for)g(another)h(in)f(that)g(en)m(try)-8
+b(.)40 b(It)25 b(is)h(describ)s(ed)e(b)s(elo)m(w)h(\(see)h(Section)g
+(9.3.1)h([Ev)m(en)m(t)g(Designators],)150 1102 y(page)d(170\).)40
+b(This)22 b(is)h(the)h(only)f(history)g(expansion)g(that)h(do)s(es)f
+(not)g(b)s(egin)g(with)g(the)g(history)g(expansion)150
+1212 y(c)m(haracter.)275 1358 y(Sev)m(eral)48 b(shell)g(options)h
+(settable)g(with)e(the)h Ft(shopt)f Fu(builtin)g(\(see)i(Section)f
+(4.3.2)i([The)e(Shopt)150 1468 y(Builtin],)g(page)c(77\))h(mo)s(dify)e
+(history)g(expansion)h(b)s(eha)m(vior)f(If)g(the)h Ft(histverify)d
+Fu(shell)j(option)g(is)150 1577 y(enabled,)38 b(and)d(Readline)i(is)f
+(b)s(eing)g(used,)h(history)f(substitutions)f(are)i(not)f(immediately)i
+(passed)d(to)150 1687 y(the)c(shell)f(parser.)41 b(Instead,)30
+b(the)h(expanded)f(line)h(is)f(reloaded)h(in)m(to)h(the)e(Readline)i
+(editing)f(bu\013er)e(for)150 1796 y(further)c(mo)s(di\014cation.)40
+b(If)25 b(Readline)i(is)g(b)s(eing)e(used,)i(and)e(the)i
+Ft(histreedit)c Fu(shell)k(option)f(is)h(enabled,)150
+1906 y(a)k(failed)g(history)f(expansion)g(is)h(reloaded)g(in)m(to)g
+(the)f(Readline)h(editing)g(bu\013er)f(for)g(correction.)275
+2052 y(The)e Ft(-p)g Fu(option)i(to)g(the)f Ft(history)e
+Fu(builtin)h(command)h(sho)m(ws)g(what)g(a)g(history)g(expansion)g
+(will)g(do)150 2161 y(b)s(efore)35 b(using)g(it.)58 b(The)35
+b Ft(-s)g Fu(option)h(to)g(the)g Ft(history)e Fu(builtin)h(ma)m(y)h(b)s
+(e)g(used)e(to)j(add)e(commands)g(to)150 2271 y(the)f(end)g(of)g(the)g
+(history)g(list)h(without)f(actually)i(executing)f(them,)h(so)e(that)h
+(they)f(are)h(a)m(v)-5 b(ailable)36 b(for)150 2381 y(subsequen)m(t)30
+b(recall.)42 b(This)29 b(is)i(most)f(useful)g(in)g(conjunction)g(with)h
+(Readline.)275 2527 y(The)i(shell)h(allo)m(ws)h(con)m(trol)h(of)e(the)g
+(v)-5 b(arious)34 b(c)m(haracters)h(used)f(b)m(y)f(the)h(history)g
+(expansion)g(mec)m(h-)150 2636 y(anism)h(with)g(the)g
+Ft(histchars)d Fu(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)
+i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150
+2746 y(page)32 b(86\).)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 2855 y(writing)e(the)h(history)f(\014le.)150 3066
+y Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150 3213
+y Fu(An)g(ev)m(en)m(t)i(designator)f(is)g(a)g(reference)f(to)i(an)e(en)
+m(try)h(in)f(the)g(history)h(list.)68 b(The)39 b(ev)m(en)m(t)i
+(designator)150 3323 y(consists)f(of)g(the)f(p)s(ortion)h(of)f(the)h(w)
+m(ord)f(b)s(eginning)g(with)g(the)h(history)f(expansion)h(c)m
+(haracter,)k(and)150 3432 y(ending)e(with)g(the)h(w)m(ord)f(designator)
+i(if)e(one)h(is)g(presen)m(t,)j(or)c(the)h(end)f(of)h(the)f(w)m(ord.)77
+b(Unless)43 b(the)150 3542 y(reference)31 b(is)f(absolute,)i(ev)m(en)m
+(ts)f(are)g(relativ)m(e)i(to)e(the)f(curren)m(t)g(p)s(osition)h(in)f
+(the)h(history)f(list.)150 3718 y Ft(!)432 b Fu(Start)34
+b(a)f(history)h(substitution,)g(except)g(when)f(follo)m(w)m(ed)i(b)m(y)
+e(a)h(space,)h(tab,)f(the)g(end)f(of)630 3828 y(the)24
+b(line,)j(`)p Ft(=)p Fu(',)f(or)e(the)g(rest)h(of)f(the)h(shell)f
+(metac)m(haracters)j(de\014ned)c(ab)s(o)m(v)m(e)j(\(see)f(Chapter)f(2)
+630 3938 y([De\014nitions],)32 b(page)f(3\).)150 4109
+y Ft(!)p Fj(n)384 b Fu(Refer)30 b(to)i(history)e(list)h(en)m(try)f
+Fr(n)p Fu(.)150 4279 y Ft(!-)p Fj(n)336 b Fu(Refer)30
+b(to)i(the)e(history)g(en)m(try)h(min)m(us)f Fr(n)p Fu(.)150
+4450 y Ft(!!)384 b Fu(Refer)30 b(to)i(the)e(previous)g(en)m(try)-8
+b(.)41 b(This)30 b(is)g(a)h(synon)m(ym)f(for)g(`)p Ft(!-1)p
+Fu('.)150 4621 y Ft(!)p Fj(string)144 b Fu(Refer)25 b(to)h(the)f(most)h
+(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)g(p)s(osition)g(in)
+g(the)g(history)630 4731 y(list)31 b(starting)g(with)f
+Fr(string)p Fu(.)150 4902 y Ft(!?)p Fj(string)p Ft([?])630
+5011 y Fu(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)
+g(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
+5121 y(list)32 b(con)m(taining)i Fr(string)p Fu(.)45
+b(The)31 b(trailing)i(`)p Ft(?)p Fu(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f
+(the)g Fr(string)39 b Fu(is)32 b(follo)m(w)m(ed)630 5230
+y(immediately)39 b(b)m(y)f(a)g(newline.)63 b(If)37 b
+Fr(string)45 b Fu(is)38 b(missing,)i(this)e(uses)f(the)h(string)f(from)
+h(the)630 5340 y(most)31 b(recen)m(t)g(searc)m(h;)g(it)g(is)g(an)f
+(error)g(if)g(there)h(is)f(no)h(previous)e(searc)m(h)i(string.)p
+eop end
+%%Page: 171 177
+TeXDict begin 171 176 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(171)150
+299 y Ft(^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)630
+408 y Fu(Quic)m(k)32 b(Substitution.)44 b(Rep)s(eat)32
+b(the)g(last)h(command,)f(replacing)g Fr(string1)40 b
+Fu(with)31 b Fr(string2)p Fu(.)630 518 y(Equiv)-5 b(alen)m(t)31
+b(to)g Ft(!!:s^)p Fj(string1)p Ft(^)p Fj(string2)p Ft(^)p
+Fu(.)150 682 y Ft(!#)384 b Fu(The)30 b(en)m(tire)h(command)f(line)h(t)m
+(yp)s(ed)f(so)h(far.)150 886 y Fk(9.3.2)63 b(W)-10 b(ord)41
+b(Designators)150 1033 y Fu(W)-8 b(ord)28 b(designators)h(are)f(used)f
+(to)i(select)h(desired)d(w)m(ords)h(from)f(the)h(ev)m(en)m(t.)42
+b(They)27 b(are)i(optional;)h(if)e(the)150 1142 y(w)m(ord)h(designator)
+i(isn't)e(supplied,)g(the)h(history)g(expansion)f(uses)g(the)h(en)m
+(tire)h(ev)m(en)m(t.)42 b(A)29 b(`)p Ft(:)p Fu(')h(separates)150
+1252 y(the)f(ev)m(en)m(t)i(sp)s(eci\014cation)e(from)g(the)g(w)m(ord)g
+(designator.)41 b(It)29 b(ma)m(y)g(b)s(e)g(omitted)h(if)e(the)i(w)m
+(ord)e(designator)150 1362 y(b)s(egins)33 b(with)h(a)h(`)p
+Ft(^)p Fu(',)g(`)p Ft($)p Fu(',)g(`)p Ft(*)p Fu(',)h(`)p
+Ft(-)p Fu(',)f(or)f(`)p Ft(\045)p Fu('.)52 b(W)-8 b(ords)35
+b(are)f(n)m(um)m(b)s(ered)f(from)g(the)i(b)s(eginning)e(of)h(the)g
+(line,)150 1471 y(with)39 b(the)h(\014rst)f(w)m(ord)g(b)s(eing)g
+(denoted)h(b)m(y)g(0)g(\(zero\).)70 b(W)-8 b(ords)39
+b(are)h(inserted)g(in)m(to)g(the)g(curren)m(t)g(line)150
+1581 y(separated)31 b(b)m(y)f(single)h(spaces.)275 1720
+y(F)-8 b(or)31 b(example,)150 1886 y Ft(!!)384 b Fu(designates)37
+b(the)f(preceding)g(command.)57 b(When)35 b(y)m(ou)i(t)m(yp)s(e)f
+(this,)h(the)f(preceding)g(com-)630 1996 y(mand)30 b(is)g(rep)s(eated)g
+(in)g(toto.)150 2160 y Ft(!!:$)288 b Fu(designates)23
+b(the)g(last)g(argumen)m(t)g(of)f(the)h(preceding)f(command.)38
+b(This)22 b(ma)m(y)h(b)s(e)e(shortened)630 2269 y(to)31
+b Ft(!$)p Fu(.)150 2433 y Ft(!fi:2)240 b Fu(designates)30
+b(the)g(second)f(argumen)m(t)h(of)f(the)h(most)f(recen)m(t)i(command)e
+(starting)h(with)f(the)630 2543 y(letters)j Ft(fi)p Fu(.)275
+2709 y(Here)e(are)h(the)g(w)m(ord)f(designators:)150
+2875 y Ft(0)g(\(zero\))114 b Fu(The)24 b Ft(0)p Fu(th)g(w)m(ord.)38
+b(F)-8 b(or)25 b(the)g(shell,)h(and)d(man)m(y)i(other,)h(applications,)
+h(this)d(is)h(the)f(command)630 2985 y(w)m(ord.)150 3149
+y Fj(n)432 b Fu(The)30 b Fr(n)p Fu(th)g(w)m(ord.)150
+3313 y Ft(^)432 b Fu(The)30 b(\014rst)f(argumen)m(t:)42
+b(w)m(ord)30 b(1.)150 3477 y Ft($)432 b Fu(The)36 b(last)i(w)m(ord.)59
+b(This)36 b(is)h(usually)f(the)h(last)g(argumen)m(t,)i(but)d(expands)g
+(to)h(the)g(zeroth)630 3587 y(w)m(ord)30 b(if)g(there)h(is)f(only)h
+(one)f(w)m(ord)g(in)h(the)f(line.)150 3751 y Ft(\045)432
+b Fu(The)40 b(\014rst)h(w)m(ord)f(matc)m(hed)i(b)m(y)f(the)g(most)g
+(recen)m(t)h(`)p Ft(?)p Fj(string)p Ft(?)p Fu(')d(searc)m(h,)44
+b(if)d(the)g(searc)m(h)630 3860 y(string)25 b(b)s(egins)g(with)g(a)h(c)
+m(haracter)h(that)f(is)g(part)f(of)h(a)g(w)m(ord.)38
+b(By)26 b(default,)h(searc)m(hes)f(b)s(egin)630 3970
+y(at)j(the)e(end)h(of)g(eac)m(h)h(line)f(and)f(pro)s(ceed)g(to)i(the)f
+(b)s(eginning,)g(so)g(the)g(\014rst)f(w)m(ord)g(matc)m(hed)630
+4079 y(is)j(the)h(one)g(closest)h(to)f(the)f(end)g(of)g(the)h(line.)150
+4243 y Fj(x)p Ft(-)p Fj(y)336 b Fu(A)30 b(range)h(of)g(w)m(ords;)f(`)p
+Ft(-)p Fj(y)p Fu(')g(abbreviates)h(`)p Ft(0-)p Fj(y)p
+Fu('.)150 4407 y Ft(*)432 b Fu(All)28 b(of)g(the)g(w)m(ords,)g(except)h
+(the)e Ft(0)p Fu(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
+Ft(1-$)p Fu('.)39 b(It)28 b(is)g(not)g(an)f(error)630
+4517 y(to)k(use)f(`)p Ft(*)p Fu(')h(if)f(there)h(is)f(just)g(one)h(w)m
+(ord)f(in)g(the)h(ev)m(en)m(t;)h(it)f(expands)e(to)j(the)e(empt)m(y)h
+(string)630 4627 y(in)f(that)h(case.)150 4791 y Fj(x)p
+Ft(*)384 b Fu(Abbreviates)31 b(`)p Fj(x)p Ft(-$)p Fu('.)150
+4955 y Fj(x)p Ft(-)384 b Fu(Abbreviates)27 b(`)p Fj(x)p
+Ft(-$)p Fu(')g(lik)m(e)h(`)p Fj(x)p Ft(*)p Fu(',)g(but)e(omits)i(the)f
+(last)h(w)m(ord.)39 b(If)27 b(`)p Ft(x)p Fu(')g(is)g(missing,)g(it)h
+(defaults)630 5064 y(to)j(0.)275 5230 y(If)i(a)h(w)m(ord)g(designator)g
+(is)g(supplied)f(without)h(an)g(ev)m(en)m(t)h(sp)s(eci\014cation,)h
+(the)e(previous)f(command)150 5340 y(is)d(used)g(as)h(the)f(ev)m(en)m
+(t,)i(equiv)-5 b(alen)m(t)32 b(to)f Ft(!!)p Fu(.)p eop
+end
+%%Page: 172 178
+TeXDict begin 172 177 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(172)150
+299 y Fk(9.3.3)63 b(Mo)s(di\014ers)150 446 y Fu(After)29
+b(the)g(optional)g(w)m(ord)g(designator,)g(y)m(ou)g(can)g(add)f(a)h
+(sequence)g(of)g(one)g(or)f(more)h(of)g(the)f(follo)m(wing)150
+555 y(mo)s(di\014ers,)33 b(eac)m(h)h(preceded)f(b)m(y)g(a)h(`)p
+Ft(:)p Fu('.)50 b(These)33 b(mo)s(dify)-8 b(,)33 b(or)h(edit,)g(the)g
+(w)m(ord)f(or)g(w)m(ords)g(selected)h(from)150 665 y(the)d(history)f
+(ev)m(en)m(t.)150 824 y Ft(h)432 b Fu(Remo)m(v)m(e)32
+b(a)f(trailing)g(\014lename)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e
+(the)h(head.)150 984 y Ft(t)432 b Fu(Remo)m(v)m(e)32
+b(all)f(leading)h(\014lename)e(comp)s(onen)m(ts,)h(lea)m(ving)h(the)f
+(tail.)150 1143 y Ft(r)432 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g
+(su\016x)f(of)g(the)h(form)f(`)p Ft(.)p Fj(suffix)p Fu(',)f(lea)m(ving)
+j(the)f(basename.)150 1303 y Ft(e)432 b Fu(Remo)m(v)m(e)32
+b(all)f(but)f(the)h(trailing)g(su\016x.)150 1462 y Ft(p)432
+b Fu(Prin)m(t)30 b(the)h(new)f(command)g(but)g(do)g(not)g(execute)i
+(it.)150 1621 y Ft(q)432 b Fu(Quote)31 b(the)f(substituted)g(w)m(ords,)
+g(escaping)h(further)e(substitutions.)150 1781 y Ft(x)432
+b Fu(Quote)32 b(the)f(substituted)g(w)m(ords)f(as)i(with)f(`)p
+Ft(q)p Fu(',)h(but)e(break)h(in)m(to)i(w)m(ords)d(at)i(spaces,)h(tabs,)
+630 1890 y(and)d(newlines.)41 b(The)30 b(`)p Ft(q)p Fu(')h(and)f(`)p
+Ft(x)p Fu(')h(mo)s(di\014ers)e(are)i(m)m(utually)g(exclusiv)m(e;)i
+(expansion)d(uses)630 2000 y(the)h(last)g(one)f(supplied.)150
+2159 y Ft(s/)p Fj(old)p Ft(/)p Fj(new)p Ft(/)630 2269
+y Fu(Substitute)h Fr(new)39 b Fu(for)32 b(the)g(\014rst)f(o)s
+(ccurrence)h(of)f Fr(old)36 b Fu(in)31 b(the)h(ev)m(en)m(t)h(line.)46
+b(An)m(y)31 b(c)m(haracter)630 2379 y(ma)m(y)k(b)s(e)e(used)h(as)g(the)
+h(delimiter)g(in)f(place)h(of)f(`)p Ft(/)p Fu('.)53 b(The)33
+b(delimiter)i(ma)m(y)g(b)s(e)f(quoted)g(in)630 2488 y
+Fr(old)i Fu(and)31 b Fr(new)39 b Fu(with)31 b(a)i(single)f(bac)m
+(kslash.)46 b(If)31 b(`)p Ft(&)p Fu(')h(app)s(ears)f(in)h
+Fr(new)p Fu(,)g(it)g(is)g(replaced)g(with)630 2598 y
+Fr(old)p Fu(.)41 b(A)30 b(single)h(bac)m(kslash)g(quotes)g(the)f(`)p
+Ft(&)p Fu(')h(in)f Fr(old)k Fu(and)29 b Fr(new)p Fu(.)41
+b(If)29 b Fr(old)34 b Fu(is)d(n)m(ull,)f(it)h(is)f(set)h(to)630
+2707 y(the)f(last)g Fr(old)j Fu(substituted,)c(or,)h(if)f(no)g
+(previous)g(history)g(substitutions)g(to)s(ok)h(place,)h(the)630
+2817 y(last)e Fr(string)36 b Fu(in)28 b(a)h(!?)p Fr(string)8
+b Ft([?])28 b Fu(searc)m(h.)40 b(If)28 b Fr(new)36 b
+Fu(is)28 b(n)m(ull,)h(eac)m(h)h(matc)m(hing)f Fr(old)j
+Fu(is)d(deleted.)630 2927 y(The)h(\014nal)g(delimiter)h(is)f(optional)i
+(if)e(it)h(is)g(the)f(last)h(c)m(haracter)h(on)f(the)f(input)g(line.)
+150 3086 y Ft(&)432 b Fu(Rep)s(eat)31 b(the)f(previous)g(substitution.)
+150 3245 y Ft(g)150 3355 y(a)432 b Fu(Cause)27 b(c)m(hanges)i(to)f(b)s
+(e)f(applied)g(o)m(v)m(er)h(the)g(en)m(tire)g(ev)m(en)m(t)h(line.)40
+b(This)27 b(is)g(used)g(in)g(conjunc-)630 3465 y(tion)k(with)f(`)p
+Ft(s)p Fu(',)h(as)f(in)g Ft(gs/)p Fj(old)p Ft(/)p Fj(new)p
+Ft(/)p Fu(,)e(or)i(with)g(`)p Ft(&)p Fu('.)150 3624 y
+Ft(G)432 b Fu(Apply)30 b(the)g(follo)m(wing)i(`)p Ft(s)p
+Fu(')f(or)f(`)p Ft(&)p Fu(')h(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: 173 179
+TeXDict begin 173 178 bop 3614 -116 a Fu(173)150 299
+y Fp(10)80 b(Installing)52 b(Bash)150 539 y Fu(This)31
+b(c)m(hapter)h(pro)m(vides)g(basic)g(instructions)f(for)g(installing)i
+(Bash)f(on)f(the)h(v)-5 b(arious)31 b(supp)s(orted)f(plat-)150
+648 y(forms.)40 b(The)28 b(distribution)h(supp)s(orts)e(the)j
+Fm(gnu)f Fu(op)s(erating)h(systems,)f(nearly)h(ev)m(ery)g(v)m(ersion)f
+(of)h(Unix,)150 758 y(and)d(sev)m(eral)j(non-Unix)d(systems)h(suc)m(h)g
+(as)g(BeOS)g(and)f(In)m(terix.)40 b(Other)28 b(indep)s(enden)m(t)e(p)s
+(orts)h(exist)i(for)150 867 y(Windo)m(ws)h(platforms.)150
+1111 y Fs(10.1)68 b(Basic)45 b(Installation)150 1270
+y Fu(These)30 b(are)h(installation)h(instructions)e(for)h(Bash.)275
+1407 y(The)e(simplest)i(w)m(a)m(y)g(to)g(compile)h(Bash)e(is:)199
+1543 y(1.)61 b Ft(cd)38 b Fu(to)h(the)f(directory)h(con)m(taining)h
+(the)f(source)f(co)s(de)h(and)f(t)m(yp)s(e)g(`)p Ft(./configure)p
+Fu(')e(to)j(con\014gure)330 1653 y(Bash)c(for)f(y)m(our)h(system.)54
+b(If)34 b(y)m(ou're)h(using)f Ft(csh)g Fu(on)g(an)h(old)g(v)m(ersion)g
+(of)g(System)f(V,)h(y)m(ou)g(migh)m(t)330 1762 y(need)21
+b(to)g(t)m(yp)s(e)g(`)p Ft(sh)30 b(./configure)p Fu(')18
+b(instead)j(to)g(prev)m(en)m(t)h Ft(csh)e Fu(from)g(trying)h(to)g
+(execute)h Ft(configure)330 1872 y Fu(itself.)330 2007
+y(Running)30 b Ft(configure)f Fu(tak)m(es)k(some)e(time.)45
+b(While)32 b(running,)e(it)i(prin)m(ts)f(messages)h(telling)h(whic)m(h)
+330 2117 y(features)e(it)g(is)f(c)m(hec)m(king)i(for.)199
+2252 y(2.)61 b(T)m(yp)s(e)30 b(`)p Ft(make)p Fu(')g(to)h(compile)g
+(Bash)g(and)e(build)h(the)g Ft(bashbug)f Fu(bug)g(rep)s(orting)h
+(script.)199 2388 y(3.)61 b(Optionally)-8 b(,)32 b(t)m(yp)s(e)e(`)p
+Ft(make)g(tests)p Fu(')f(to)i(run)e(the)h(Bash)h(test)g(suite.)199
+2523 y(4.)61 b(T)m(yp)s(e)42 b(`)p Ft(make)30 b(install)p
+Fu(')41 b(to)i(install)h Ft(bash)d Fu(and)i Ft(bashbug)p
+Fu(.)76 b(This)42 b(will)h(also)g(install)h(the)f(man-)330
+2633 y(ual)30 b(pages)g(and)g(Info)f(\014le,)h(message)h(translation)g
+(\014les,)f(some)g(supplemen)m(tal)h(do)s(cumen)m(tation,)g(a)330
+2742 y(n)m(um)m(b)s(er)c(of)h(example)h(loadable)g(builtin)f(commands,)
+g(and)g(a)g(set)h(of)f(header)g(\014les)g(for)g(dev)m(eloping)330
+2852 y(loadable)36 b(builtins.)55 b(Y)-8 b(ou)36 b(ma)m(y)f(need)g
+(additional)h(privileges)g(to)g(install)g Ft(bash)e Fu(to)i(y)m(our)f
+(desired)330 2962 y(destination,)29 b(whic)m(h)d(ma)m(y)i(require)e(`)p
+Ft(sudo)k(make)f(install)p Fu('.)38 b(More)27 b(information)h(ab)s(out)
+e(con)m(trol-)330 3071 y(ling)38 b(the)f(lo)s(cations)i(where)e
+Ft(bash)f Fu(and)h(other)g(\014les)g(are)h(installed)g(is)g(b)s(elo)m
+(w)f(\(see)h(Section)g(10.4)330 3181 y([Installation)32
+b(Names],)g(page)f(175\).)275 3343 y(The)20 b Ft(configure)f
+Fu(shell)i(script)g(attempts)h(to)g(guess)f(correct)i(v)-5
+b(alues)21 b(for)g(v)-5 b(arious)21 b(system-dep)s(enden)m(t)150
+3453 y(v)-5 b(ariables)38 b(used)f(during)f(compilation.)64
+b(It)37 b(uses)g(those)h(v)-5 b(alues)38 b(to)g(create)h(a)f
+Ft(Makefile)d Fu(in)i(eac)m(h)i(di-)150 3562 y(rectory)32
+b(of)f(the)h(pac)m(k)-5 b(age)33 b(\(the)f(top)f(directory)-8
+b(,)33 b(the)e Ft(builtins)p Fu(,)f Ft(doc)p Fu(,)h Ft(po)p
+Fu(,)g(and)f Ft(support)g Fu(directories,)150 3672 y(eac)m(h)38
+b(directory)g(under)d Ft(lib)p Fu(,)j(and)f(sev)m(eral)h(others\).)61
+b(It)38 b(also)g(creates)g(a)f Ft(config.h)e Fu(\014le)i(con)m(taining)
+150 3781 y(system-dep)s(enden)m(t)31 b(de\014nitions.)44
+b(Finally)-8 b(,)34 b(it)e(creates)h(a)f(shell)g(script)f(named)g
+Ft(config.status)d Fu(that)150 3891 y(y)m(ou)35 b(can)h(run)d(in)i(the)
+g(future)f(to)i(recreate)g(the)g(curren)m(t)e(con\014guration,)j(a)f
+(\014le)f Ft(config.cache)c Fu(that)150 4001 y(sa)m(v)m(es)39
+b(the)e(results)g(of)g(its)h(tests)g(to)g(sp)s(eed)e(up)h
+(recon\014guring,)h(and)f(a)h(\014le)f Ft(config.log)d
+Fu(con)m(taining)150 4110 y(compiler)c(output)g(\(useful)f(mainly)h
+(for)f(debugging)h Ft(configure)p Fu(\).)38 b(If)29 b(at)i(some)f(p)s
+(oin)m(t)f Ft(config.cache)150 4220 y Fu(con)m(tains)j(results)e(y)m
+(ou)g(don't)h(w)m(an)m(t)g(to)g(k)m(eep,)g(y)m(ou)g(ma)m(y)g(remo)m(v)m
+(e)h(or)e(edit)h(it.)275 4356 y(T)-8 b(o)37 b(\014nd)f(out)i(more)f(ab)
+s(out)h(the)f(options)h(and)f(argumen)m(ts)g(that)h(the)g
+Ft(configure)d Fu(script)i(under-)150 4466 y(stands,)30
+b(t)m(yp)s(e)390 4602 y Ft(bash-4.2$)45 b(./configure)g(--help)150
+4738 y Fu(at)31 b(the)g(Bash)f(prompt)g(in)g(y)m(our)g(Bash)h(source)f
+(directory)-8 b(.)275 4875 y(If)34 b(y)m(ou)h(w)m(an)m(t)g(to)g(build)f
+(Bash)g(in)h(a)g(directory)g(separate)g(from)f(the)h(source)g
+(directory)g({)g(to)g(build)150 4984 y(for)30 b(m)m(ultiple)i(arc)m
+(hitectures,)g(for)e(example)h({)g(just)f(use)h(the)f(full)h(path)f(to)
+h(the)g(con\014gure)f(script.)41 b(The)150 5094 y(follo)m(wing)23
+b(commands)e(will)h(build)f(Bash)h(in)f(a)h(directory)g(under)f
+Ft(/usr/local/build)c Fu(from)k(the)h(source)150 5204
+y(co)s(de)31 b(in)f Ft(/usr/local/src/bash-4.4)o Fu(:)390
+5340 y Ft(mkdir)46 b(/usr/local/build/bash-4.4)p eop
+end
+%%Page: 174 180
+TeXDict begin 174 179 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(174)390 299 y Ft(cd)47
+b(/usr/local/build/bash-4.4)390 408 y(bash)g(/usr/local/src/bash-4.4)o
+(/con)o(fig)o(ure)390 518 y(make)275 652 y Fu(See)27
+b(Section)h(10.3)g([Compiling)g(F)-8 b(or)27 b(Multiple)h(Arc)m
+(hitectures],)i(page)d(174,)j(for)c(more)i(information)150
+762 y(ab)s(out)i(building)g(in)g(a)g(directory)h(separate)h(from)e(the)
+g(source.)275 896 y(If)53 b(y)m(ou)h(need)f(to)i(do)e(un)m(usual)g
+(things)g(to)i(compile)g(Bash,)k(please)c(try)e(to)i(\014gure)e(out)h
+(ho)m(w)150 1006 y Ft(configure)47 b Fu(could)j(c)m(hec)m(k)h(whether)e
+(or)g(not)h(to)h(do)e(them,)55 b(and)49 b(mail)h(di\013s)f(or)h
+(instructions)f(to)150 1115 y Ft(bash-maintainers@gnu.org)24
+b Fu(so)30 b(they)h(can)g(b)s(e)e(considered)i(for)f(the)g(next)h
+(release.)275 1250 y(The)e(\014le)g Ft(configure.ac)d
+Fu(is)k(used)e(to)j(create)g Ft(configure)c Fu(b)m(y)i(a)h(program)f
+(called)i(Auto)s(conf.)40 b(Y)-8 b(ou)150 1359 y(only)34
+b(need)g Ft(configure.ac)d Fu(if)i(y)m(ou)i(w)m(an)m(t)g(to)f(c)m
+(hange)i(it)e(or)g(regenerate)i Ft(configure)31 b Fu(using)j(a)g(new)m
+(er)150 1469 y(v)m(ersion)25 b(of)f(Auto)s(conf.)39 b(If)24
+b(y)m(ou)h(do)f(this,)i(mak)m(e)f(sure)f(y)m(ou)h(are)f(using)g(Auto)s
+(conf)h(v)m(ersion)f(2.69)i(or)f(new)m(er.)275 1603 y(Y)-8
+b(ou)29 b(can)f(remo)m(v)m(e)i(the)f(program)g(binaries)f(and)g(ob)5
+b(ject)29 b(\014les)g(from)f(the)h(source)f(co)s(de)h(directory)g(b)m
+(y)150 1713 y(t)m(yping)j(`)p Ft(make)d(clean)p Fu('.)42
+b(T)-8 b(o)32 b(also)g(remo)m(v)m(e)g(the)g(\014les)f(that)g
+Ft(configure)e Fu(created)j(\(so)g(y)m(ou)g(can)f(compile)150
+1822 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 Ft(make)e(distclean)p Fu('.)150 2063 y
+Fs(10.2)68 b(Compilers)46 b(and)f(Options)150 2222 y
+Fu(Some)28 b(systems)h(require)f(un)m(usual)f(options)i(for)f
+(compilation)i(or)f(linking)f(that)h(the)g Ft(configure)d
+Fu(script)150 2332 y(do)s(es)32 b(not)g(kno)m(w)g(ab)s(out.)44
+b(Y)-8 b(ou)33 b(can)f(giv)m(e)h Ft(configure)d Fu(initial)j(v)-5
+b(alues)32 b(for)g(v)-5 b(ariables)32 b(b)m(y)g(setting)h(them)150
+2441 y(in)k(the)g(en)m(vironmen)m(t.)62 b(Using)38 b(a)f
+(Bourne-compatible)i(shell,)g(y)m(ou)f(can)g(do)f(that)h(on)f(the)g
+(command)150 2551 y(line)31 b(lik)m(e)g(this:)390 2685
+y Ft(CC=c89)46 b(CFLAGS=-O2)f(LIBS=-lposix)g(./configure)275
+2819 y Fu(On)29 b(systems)h(that)h(ha)m(v)m(e)h(the)f
+Ft(env)e Fu(program,)h(y)m(ou)h(can)g(do)f(it)h(lik)m(e)h(this:)390
+2954 y Ft(env)47 b(CPPFLAGS=-I/usr/local/in)o(clud)o(e)42
+b(LDFLAGS=-s)j(./configure)275 3088 y Fu(The)29 b(con\014guration)i
+(pro)s(cess)f(uses)g(GCC)g(to)h(build)e(Bash)i(if)f(it)h(is)g(a)m(v)-5
+b(ailable.)150 3328 y Fs(10.3)68 b(Compiling)46 b(F)-11
+b(or)45 b(Multiple)g(Arc)l(hitectures)150 3488 y Fu(Y)-8
+b(ou)27 b(can)g(compile)g(Bash)g(for)f(more)h(than)f(one)h(kind)f(of)g
+(computer)h(at)g(the)g(same)g(time,)h(b)m(y)e(placing)i(the)150
+3597 y(ob)5 b(ject)31 b(\014les)f(for)g(eac)m(h)i(arc)m(hitecture)f(in)
+f(their)g(o)m(wn)h(directory)-8 b(.)41 b(T)-8 b(o)31
+b(do)f(this,)g(y)m(ou)h(m)m(ust)f(use)g(a)g(v)m(ersion)150
+3707 y(of)36 b Ft(make)e Fu(that)i(supp)s(orts)e(the)i
+Ft(VPATH)e Fu(v)-5 b(ariable,)38 b(suc)m(h)d(as)h(GNU)g
+Ft(make)p Fu(.)55 b Ft(cd)35 b Fu(to)i(the)e(directory)h(where)150
+3817 y(y)m(ou)k(w)m(an)m(t)h(the)g(ob)5 b(ject)41 b(\014les)f(and)f
+(executables)j(to)e(go)h(and)f(run)e(the)j Ft(configure)c
+Fu(script)j(from)g(the)150 3926 y(source)32 b(directory)h(\(see)g
+(Section)f(10.1)i([Basic)f(Installation],)i(page)e(173\).)47
+b(Y)-8 b(ou)32 b(ma)m(y)h(need)f(to)g(supply)150 4036
+y(the)43 b Ft(--srcdir=PATH)c Fu(argumen)m(t)k(to)h(tell)g
+Ft(configure)c Fu(where)i(the)h(source)g(\014les)g(are.)78
+b Ft(configure)150 4145 y Fu(automatically)33 b(c)m(hec)m(ks)f(for)e
+(the)h(source)f(co)s(de)h(in)f(the)h(directory)f(that)h
+Ft(configure)d Fu(is)j(in)f(and)f(in)h Ft(..)p Fu(.)275
+4280 y(If)22 b(y)m(ou)i(ha)m(v)m(e)g(to)g(use)f(a)g Ft(make)f
+Fu(that)i(do)s(es)f(not)g(supp)s(ort)e(the)j Ft(VPATH)d
+Fu(v)-5 b(ariable,)26 b(y)m(ou)d(can)h(compile)g(Bash)150
+4389 y(for)33 b(one)h(arc)m(hitecture)h(at)f(a)g(time)g(in)f(the)h
+(source)g(co)s(de)f(directory)-8 b(.)51 b(After)34 b(y)m(ou)g(ha)m(v)m
+(e)h(installed)f(Bash)150 4499 y(for)c(one)h(arc)m(hitecture,)h(use)e
+(`)p Ft(make)g(distclean)p Fu(')e(b)s(efore)i(recon\014guring)g(for)g
+(another)g(arc)m(hitecture.)275 4633 y(Alternativ)m(ely)-8
+b(,)30 b(if)c(y)m(our)g(system)h(supp)s(orts)d(sym)m(b)s(olic)j(links,)
+g(y)m(ou)g(can)g(use)f(the)g Ft(support/mkclone)150 4743
+y Fu(script)d(to)h(create)g(a)f(build)f(tree)i(whic)m(h)f(has)f(sym)m
+(b)s(olic)i(links)e(bac)m(k)i(to)g(eac)m(h)g(\014le)f(in)g(the)g
+(source)g(directory)-8 b(.)150 4852 y(Here's)41 b(an)f(example)i(that)f
+(creates)h(a)e(build)g(directory)h(in)f(the)h(curren)m(t)f(directory)h
+(from)f(a)h(source)150 4962 y(directory)31 b Ft(/usr/gnu/src/bash-2.0)p
+Fu(:)390 5096 y Ft(bash)47 b(/usr/gnu/src/bash-2.0/s)o(uppo)o(rt/)o
+(mkcl)o(one)41 b(-s)47 b(/usr/gnu/src/bash-2.0)42 b(.)150
+5230 y Fu(The)c Ft(mkclone)e Fu(script)i(requires)g(Bash,)i(so)f(y)m
+(ou)f(m)m(ust)h(ha)m(v)m(e)g(already)g(built)f(Bash)g(for)g(at)h(least)
+h(one)150 5340 y(arc)m(hitecture)32 b(b)s(efore)e(y)m(ou)h(can)f
+(create)i(build)e(directories)h(for)f(other)h(arc)m(hitectures.)p
+eop end
+%%Page: 175 181
+TeXDict begin 175 180 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(175)150 299 y Fs(10.4)68
+b(Installation)47 b(Names)150 458 y Fu(By)36 b(default,)g(`)p
+Ft(make)30 b(install)p Fu(')j(will)j(install)g(in)m(to)g
+Ft(/usr/local/bin)p Fu(,)d Ft(/usr/local/man)p Fu(,)g(etc.;)39
+b(that)150 568 y(is,)i(the)d Fr(installation)i(pre\014x)k
+Fu(defaults)38 b(to)h Ft(/usr/local)p Fu(.)62 b(Y)-8
+b(ou)39 b(can)g(sp)s(ecify)f(an)g(installation)i(pre\014x)150
+677 y(other)34 b(than)g Ft(/usr/local)d Fu(b)m(y)j(giving)h
+Ft(configure)d Fu(the)i(option)g Ft(--prefix=)p Fj(PATH)p
+Fu(,)e(or)i(b)m(y)g(sp)s(ecifying)150 787 y(a)h(v)-5
+b(alue)34 b(for)h(the)f Ft(prefix)f Fu(`)p Ft(make)p
+Fu(')g(v)-5 b(ariable)35 b(when)f(running)e(`)p Ft(make)e(install)p
+Fu(')i(\(e.g.,)37 b(`)p Ft(make)30 b(install)150 897
+y(prefix=)p Fj(PATH)p Fu('\).)35 b(The)21 b Ft(prefix)f
+Fu(v)-5 b(ariable)22 b(pro)m(vides)g(a)f(default)h(for)f
+Ft(exec_prefix)e Fu(and)i(other)g(v)-5 b(ariables)150
+1006 y(used)30 b(when)f(installing)i(Bash.)275 1159 y(Y)-8
+b(ou)71 b(can)h(sp)s(ecify)f(separate)h(installation)h(pre\014xes)d
+(for)h(arc)m(hitecture-sp)s(eci\014c)i(\014les)f(and)150
+1268 y(arc)m(hitecture-indep)s(enden)m(t)44 b(\014les.)80
+b(If)43 b(y)m(ou)h(giv)m(e)h Ft(configure)c Fu(the)j(option)g
+Ft(--exec-prefix=)p Fj(PATH)p Fu(,)150 1378 y(`)p Ft(make)29
+b(install)p Fu(')63 b(will)h(use)f Fr(P)-8 b(A)g(TH)75
+b Fu(as)64 b(the)g(pre\014x)e(for)i(installing)h(programs)e(and)h
+(libraries.)150 1488 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.)275
+1640 y(If)35 b(y)m(ou)i(w)m(ould)e(lik)m(e)j(to)e(c)m(hange)i(the)e
+(installation)i(lo)s(cations)f(for)f(a)h(single)f(run,)h(y)m(ou)f(can)g
+(sp)s(ecify)150 1750 y(these)28 b(v)-5 b(ariables)27
+b(as)h(argumen)m(ts)f(to)h Ft(make)p Fu(:)38 b(`)p Ft(make)29
+b(install)g(exec_prefix=/)p Fu(')23 b(will)28 b(install)g
+Ft(bash)e Fu(and)150 1859 y Ft(bashbug)i Fu(in)m(to)k
+Ft(/bin)d Fu(instead)i(of)f(the)h(default)f Ft(/usr/local/bin)p
+Fu(.)275 2012 y(If)42 b(y)m(ou)i(w)m(an)m(t)g(to)g(see)g(the)f(\014les)
+h(Bash)f(will)h(install)g(and)e(where)h(it)h(will)g(install)g(them)f
+(without)150 2122 y(c)m(hanging)35 b(an)m(ything)f(on)f(y)m(our)h
+(system,)h(sp)s(ecify)e(the)h(v)-5 b(ariable)35 b Ft(DESTDIR)d
+Fu(as)i(an)f(argumen)m(t)h(to)h Ft(make)p Fu(.)150 2231
+y(Its)29 b(v)-5 b(alue)29 b(should)f(b)s(e)g(the)h(absolute)h
+(directory)f(path)g(y)m(ou'd)g(lik)m(e)h(to)g(use)e(as)i(the)f(ro)s(ot)
+g(of)g(y)m(our)g(sample)150 2341 y(installation)j(tree.)42
+b(F)-8 b(or)31 b(example,)390 2493 y Ft(mkdir)46 b(/fs1/bash-install)
+390 2603 y(make)h(install)e(DESTDIR=/fs1/bash-install)150
+2756 y Fu(will)37 b(install)g Ft(bash)e Fu(in)m(to)j
+Ft(/fs1/bash-install/usr/l)o(ocal)o(/bin)o(/ba)o(sh)p
+Fu(,)32 b(the)37 b(do)s(cumen)m(tation)g(in)m(to)150
+2865 y(directories)44 b(within)e Ft(/fs1/bash-install/usr/l)o(ocal)o
+(/sha)o(re)p Fu(,)e(the)i(example)i(loadable)g(builtins)150
+2975 y(in)m(to)35 b Ft(/fs1/bash-install/usr/loc)o(al/l)o(ib/b)o(ash)o
+Fu(,)30 b(and)k(so)g(on.)53 b(Y)-8 b(ou)34 b(can)h(use)f(the)h(usual)e
+Ft(exec_)150 3084 y(prefix)c Fu(and)g Ft(prefix)g Fu(v)-5
+b(ariables)31 b(to)g(alter)h(the)e(directory)h(paths)f(b)s(eneath)g
+(the)h(v)-5 b(alue)30 b(of)h Ft(DESTDIR)p Fu(.)275 3237
+y(The)24 b(GNU)i(Mak)m(e\014le)h(standards)d(pro)m(vide)i(a)f(more)h
+(complete)g(description)g(of)f(these)h(v)-5 b(ariables)26
+b(and)150 3346 y(their)k(e\013ects.)150 3614 y Fs(10.5)68
+b(Sp)t(ecifying)45 b(the)g(System)h(T)l(yp)t(e)150 3774
+y Fu(There)c(ma)m(y)h(b)s(e)e(some)i(features)g Ft(configure)c
+Fu(can)k(not)g(\014gure)e(out)i(automatically)-8 b(,)49
+b(but)41 b(needs)h(to)150 3883 y(determine)26 b(b)m(y)g(the)g(t)m(yp)s
+(e)g(of)g(host)g(Bash)g(will)g(run)f(on.)39 b(Usually)26
+b Ft(configure)d Fu(can)k(\014gure)e(that)h(out,)i(but)150
+3993 y(if)g(it)g(prin)m(ts)f(a)h(message)g(sa)m(ying)h(it)f(can)g(not)f
+(guess)h(the)g(host)f(t)m(yp)s(e,)i(giv)m(e)g(it)f(the)g
+Ft(--host=TYPE)c Fu(option.)150 4103 y(`)p Ft(TYPE)p
+Fu(')29 b(can)h(either)g(b)s(e)g(a)g(short)f(name)h(for)f(the)h(system)
+g(t)m(yp)s(e,)h(suc)m(h)e(as)h(`)p Ft(sun4)p Fu(',)g(or)f(a)h
+(canonical)i(name)150 4212 y(with)e(three)h(\014elds:)40
+b(`)p Ft(CPU-COMPANY-SYSTEM)p Fu(')26 b(\(e.g.,)32 b(`)p
+Ft(i386-unknown-freebsd4.2)p Fu('\).)275 4365 y(See)e(the)h(\014le)f
+Ft(support/config.sub)c Fu(for)k(the)g(p)s(ossible)g(v)-5
+b(alues)31 b(of)f(eac)m(h)i(\014eld.)150 4633 y Fs(10.6)68
+b(Sharing)45 b(Defaults)150 4792 y Fu(If)d(y)m(ou)i(w)m(an)m(t)g(to)f
+(set)h(default)f(v)-5 b(alues)43 b(for)g Ft(configure)d
+Fu(scripts)j(to)h(share,)i(y)m(ou)d(can)g(create)i(a)e(site)150
+4902 y(shell)48 b(script)f(called)i Ft(config.site)44
+b Fu(that)k(giv)m(es)h(default)f(v)-5 b(alues)48 b(for)f(v)-5
+b(ariables)48 b(lik)m(e)h Ft(CC)p Fu(,)j Ft(cache_)150
+5011 y(file)p Fu(,)c(and)d Ft(prefix)p Fu(.)85 b Ft(configure)43
+b Fu(lo)s(oks)j(for)f Ft(PREFIX/share/config.site)39
+b Fu(if)46 b(it)g(exists,)k(then)150 5121 y Ft(PREFIX/etc/config.site)
+24 b Fu(if)31 b(it)g(exists.)42 b(Or,)30 b(y)m(ou)h(can)g(set)g(the)g
+Ft(CONFIG_SITE)c Fu(en)m(vironmen)m(t)k(v)-5 b(ari-)150
+5230 y(able)40 b(to)g(the)g(lo)s(cation)h(of)e(the)h(site)g(script.)67
+b(A)40 b(w)m(arning:)58 b(the)40 b(Bash)g Ft(configure)c
+Fu(lo)s(oks)k(for)f(a)h(site)150 5340 y(script,)31 b(but)e(not)i(all)g
+Ft(configure)d Fu(scripts)i(do.)p eop end
+%%Page: 176 182
+TeXDict begin 176 181 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(176)150 299 y Fs(10.7)68
+b(Op)t(eration)46 b(Con)l(trols)150 458 y Ft(configure)28
+b Fu(recognizes)k(the)e(follo)m(wing)i(options)f(to)g(con)m(trol)h(ho)m
+(w)e(it)h(op)s(erates.)150 619 y Ft(--cache-file=)p Fj(file)630
+729 y Fu(Use)d(and)g(sa)m(v)m(e)h(the)f(results)g(of)g(the)h(tests)f
+(in)g Fr(\014le)33 b Fu(instead)28 b(of)h Ft(./config.cache)p
+Fu(.)36 b(Set)28 b Fr(\014le)630 838 y Fu(to)j Ft(/dev/null)d
+Fu(to)j(disable)g(cac)m(hing,)h(for)e(debugging)g Ft(configure)p
+Fu(.)150 999 y Ft(--help)192 b Fu(Prin)m(t)30 b(a)h(summary)e(of)i(the)
+f(options)h(to)g Ft(configure)p Fu(,)d(and)i(exit.)150
+1159 y Ft(--quiet)150 1269 y(--silent)150 1378 y(-q)384
+b Fu(Do)31 b(not)g(prin)m(t)f(messages)h(sa)m(ying)g(whic)m(h)g(c)m
+(hec)m(ks)g(are)g(b)s(eing)f(made.)150 1539 y Ft(--srcdir=)p
+Fj(dir)630 1648 y Fu(Lo)s(ok)i(for)g(the)g(Bash)g(source)h(co)s(de)f
+(in)g(directory)g Fr(dir)p Fu(.)45 b(Usually)33 b Ft(configure)c
+Fu(can)j(deter-)630 1758 y(mine)e(that)h(directory)g(automatically)-8
+b(.)150 1918 y Ft(--version)630 2028 y Fu(Prin)m(t)29
+b(the)h(v)m(ersion)g(of)g(Auto)s(conf)f(used)g(to)h(generate)h(the)f
+Ft(configure)d Fu(script,)j(and)f(exit.)275 2188 y Ft(configure)34
+b Fu(also)k(accepts)g(some)g(other,)h(not)e(widely)g(used,)h(b)s
+(oilerplate)g(options.)61 b(`)p Ft(configure)150 2298
+y(--help)p Fu(')29 b(prin)m(ts)h(the)g(complete)i(list.)150
+2540 y Fs(10.8)68 b(Optional)46 b(F)-11 b(eatures)150
+2700 y Fu(The)29 b(Bash)h Ft(configure)d Fu(has)j(a)g(n)m(um)m(b)s(er)f
+(of)h Ft(--enable-)p Fj(feature)25 b Fu(options,)30 b(where)g
+Fr(feature)35 b Fu(indicates)150 2809 y(an)e(optional)i(part)e(of)h
+(Bash.)50 b(There)33 b(are)g(also)i(sev)m(eral)g Ft(--with-)p
+Fj(package)29 b Fu(options,)35 b(where)e Fr(pac)m(k)-5
+b(age)150 2919 y Fu(is)41 b(something)g(lik)m(e)h(`)p
+Ft(bash-malloc)p Fu(')c(or)i(`)p Ft(afs)p Fu('.)71 b(T)-8
+b(o)42 b(turn)d(o\013)i(the)g(default)g(use)f(of)h(a)g(pac)m(k)-5
+b(age,)45 b(use)150 3028 y Ft(--without-)p Fj(package)p
+Fu(.)h(T)-8 b(o)34 b(con\014gure)g(Bash)g(without)f(a)i(feature)f(that)
+g(is)g(enabled)g(b)m(y)f(default,)i(use)150 3138 y Ft(--disable-)p
+Fj(feature)p Fu(.)275 3273 y(Here)28 b(is)g(a)h(complete)g(list)g(of)f
+(the)h Ft(--enable-)c Fu(and)j Ft(--with-)e Fu(options)i(that)h(the)f
+(Bash)g Ft(configure)150 3383 y Fu(recognizes.)150 3544
+y Ft(--with-afs)630 3653 y Fu(De\014ne)j(if)f(y)m(ou)h(are)f(using)g
+(the)h(Andrew)e(File)j(System)e(from)g(T)-8 b(ransarc.)150
+3814 y Ft(--with-bash-malloc)630 3923 y Fu(Use)34 b(the)g(Bash)h(v)m
+(ersion)f(of)g Ft(malloc)e Fu(in)i(the)g(directory)h
+Ft(lib/malloc)p Fu(.)48 b(This)34 b(is)g(not)g(the)630
+4033 y(same)29 b Ft(malloc)e Fu(that)j(app)s(ears)e(in)g
+Fm(gnu)h Fu(lib)s(c,)g(but)f(a)h(custom)g(v)m(ersion)h(originally)g
+(deriv)m(ed)630 4143 y(from)i(the)h(4.2)g Fm(bsd)f Ft(malloc)p
+Fu(.)45 b(This)31 b Ft(malloc)g Fu(is)i(v)m(ery)f(fast,)i(but)e(w)m
+(astes)h(some)g(space)g(on)630 4252 y(eac)m(h)g(allo)s(cation,)i
+(though)c(it)h(uses)g(sev)m(eral)h(tec)m(hniques)f(to)h(minimize)f(the)
+g(w)m(aste.)46 b(This)630 4362 y(option)27 b(is)g(enabled)f(b)m(y)g
+(default.)40 b(The)26 b Ft(NOTES)f Fu(\014le)i(con)m(tains)h(a)e(list)i
+(of)e(systems)h(for)f(whic)m(h)630 4471 y(this)h(should)f(b)s(e)h
+(turned)f(o\013,)i(and)f Ft(configure)d Fu(disables)j(this)h(option)f
+(automatically)j(for)630 4581 y(a)h(n)m(um)m(b)s(er)e(of)h(systems.)150
+4741 y Ft(--with-curses)630 4851 y Fu(Use)22 b(the)f(curses)g(library)g
+(instead)h(of)g(the)f(termcap)h(library)-8 b(.)38 b Ft(configure)19
+b Fu(usually)i(c)m(ho)s(oses)630 4960 y(this)42 b(automatically)-8
+b(,)49 b(since)42 b(most)h(systems)f(include)g(the)g(termcap)h
+(functions)f(in)g(the)630 5070 y(curses)30 b(library)-8
+b(.)150 5230 y Ft(--with-gnu-malloc)630 5340 y Fu(A)30
+b(synon)m(ym)g(for)g Ft(--with-bash-malloc)p Fu(.)p eop
+end
+%%Page: 177 183
+TeXDict begin 177 182 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(177)150 299 y Ft
+(--with-installed-readlin)o(e[=)p Fj(P)o(REFI)o(X)p Ft(])630
+408 y Fu(De\014ne)26 b(this)f(to)h(mak)m(e)h(Bash)f(link)f(with)g(a)h
+(lo)s(cally-installed)i(v)m(ersion)e(of)g(Readline)g(rather)630
+518 y(than)f(the)h(v)m(ersion)g(in)f Ft(lib/readline)p
+Fu(.)36 b(This)25 b(w)m(orks)g(only)h(with)f(Readline)h(5.0)h(and)e
+(later)630 628 y(v)m(ersions.)46 b(If)32 b Fr(PREFIX)41
+b Fu(is)32 b Ft(yes)f Fu(or)i(not)f(supplied,)f Ft(configure)f
+Fu(uses)i(the)g(v)-5 b(alues)32 b(of)h(the)630 737 y(mak)m(e)28
+b(v)-5 b(ariables)29 b Ft(includedir)24 b Fu(and)j Ft(libdir)p
+Fu(,)g(whic)m(h)g(are)h(sub)s(directories)f(of)g Ft(prefix)f
+Fu(b)m(y)630 847 y(default,)44 b(to)d(\014nd)f(the)h(installed)g(v)m
+(ersion)h(of)f(Readline)g(if)g(it)g(is)g(not)g(in)g(the)g(standard)630
+956 y(system)35 b(include)f(and)g(library)g(directories.)54
+b(If)34 b Fr(PREFIX)43 b Fu(is)35 b Ft(no)p Fu(,)g(Bash)f(links)h(with)
+f(the)630 1066 y(v)m(ersion)42 b(in)e Ft(lib/readline)p
+Fu(.)70 b(If)40 b Fr(PREFIX)51 b Fu(is)41 b(set)g(to)h(an)m(y)g(other)f
+(v)-5 b(alue,)44 b Ft(configure)630 1176 y Fu(treats)27
+b(it)g(as)f(a)h(directory)g(pathname)f(and)f(lo)s(oks)i(for)f(the)g
+(installed)h(v)m(ersion)g(of)f(Readline)630 1285 y(in)34
+b(sub)s(directories)f(of)h(that)h(directory)g(\(include)f(\014les)g(in)
+g Fr(PREFIX)9 b Fu(/)p Ft(include)32 b Fu(and)i(the)630
+1395 y(library)26 b(in)h Fr(PREFIX)9 b Fu(/)p Ft(lib)p
+Fu(\).)39 b(The)26 b(Bash)h(default)g(is)f(to)i(link)e(with)h(a)g
+(static)h(library)e(built)630 1504 y(in)k(the)h Ft(lib/readline)c
+Fu(sub)s(directory)i(of)h(the)h(build)e(directory)-8
+b(.)150 1680 y Ft(--with-libintl-prefix[=)p Fj(P)o(REFI)o(X)p
+Ft(])630 1789 y Fu(De\014ne)45 b(this)f(to)h(mak)m(e)g(Bash)g(link)f
+(with)g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g(the)f(libin)m(tl)
+630 1899 y(library)30 b(instead)h(of)f(the)h(v)m(ersion)g(in)f
+Ft(lib/intl)p Fu(.)150 2074 y Ft(--with-libiconv-prefix[=)o
+Fj(PREF)o(IX)p Ft(])630 2184 y Fu(De\014ne)g(this)g(to)g(mak)m(e)h
+(Bash)f(lo)s(ok)g(for)g(libicon)m(v)h(in)e Fr(PREFIX)39
+b Fu(instead)30 b(of)g(the)g(standard)630 2294 y(system)h(lo)s
+(cations.)42 b(The)30 b(Bash)g(distribution)g(do)s(es)g(not)g(include)h
+(this)f(library)-8 b(.)150 2469 y Ft(--enable-minimal-config)630
+2579 y Fu(This)40 b(pro)s(duces)f(a)j(shell)f(with)f(minimal)h
+(features,)j(closer)e(to)f(the)g(historical)h(Bourne)630
+2688 y(shell.)275 2872 y(There)35 b(are)i(sev)m(eral)h
+Ft(--enable-)c Fu(options)j(that)g(alter)g(ho)m(w)g(Bash)f(is)h
+(compiled,)i(link)m(ed,)f(and)e(in-)150 2981 y(stalled,)c(rather)e
+(than)g(c)m(hanging)h(run-time)f(features.)150 3165 y
+Ft(--enable-largefile)630 3274 y Fu(Enable)36 b(supp)s(ort)f(for)g
+(large)j(\014les)e(\()p Ft(http:)5 b(/)g(/)g(www)g(.)g(unix)g(.)g(org)t
+(/)g(v)o(ersi)o(on2)t(/)g(w)o(hats)o(new)t(/)630 3384
+y(lfs20mar)h(.)g(html)p Fu(\))35 b(if)j(the)g(op)s(erating)g(system)g
+(requires)f(sp)s(ecial)i(compiler)f(options)g(to)630
+3493 y(build)33 b(programs)g(whic)m(h)h(can)g(access)h(large)g
+(\014les.)51 b(This)33 b(is)h(enabled)g(b)m(y)g(default,)h(if)f(the)630
+3603 y(op)s(erating)d(system)f(pro)m(vides)h(large)g(\014le)g(supp)s
+(ort.)150 3778 y Ft(--enable-profiling)630 3888 y Fu(This)g(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 3998 y(b)m(y)g Ft(gprof)f Fu(eac)m(h)j(time)f
+(it)g(is)f(executed.)150 4173 y Ft(--enable-separate-helpfi)o(les)630
+4283 y Fu(Use)i(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 Ft(help)f Fu(builtin)h(instead)630
+4392 y(of)f(storing)f(the)h(text)g(in)m(ternally)-8 b(.)150
+4568 y Ft(--enable-static-link)630 4677 y Fu(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 Ft(gcc)g Fu(is)g(b)s(eing)g(used.)61
+b(This)37 b(could)h(b)s(e)630 4787 y(used)30 b(to)h(build)e(a)i(v)m
+(ersion)g(to)g(use)f(as)g(ro)s(ot's)h(shell.)275 4970
+y(The)f(`)p Ft(minimal-config)p Fu(')d(option)k(can)g(b)s(e)f(used)f
+(to)j(disable)e(all)i(of)f(the)f(follo)m(wing)i(options,)g(but)d(it)150
+5080 y(is)h(pro)s(cessed)g(\014rst,)g(so)h(individual)f(options)g(ma)m
+(y)h(b)s(e)f(enabled)g(using)g(`)p Ft(enable-)p Fj(feature)p
+Fu('.)275 5230 y(All)133 b(of)g(the)g(follo)m(wing)i(options)e(except)h
+(for)f(`)p Ft(alt-array-implementation)o Fu(',)150 5340
+y(`)p Ft(disabled-builtins)p Fu(',)212 b(`)p Ft(direxpand-default)p
+Fu(',)h(`)p Ft(strict-posix-default)p Fu(',)f(and)p eop
+end
+%%Page: 178 184
+TeXDict begin 178 183 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(178)150 299 y(`)p Ft(xpg-echo-default)p
+Fu(')28 b(are)33 b(enabled)f(b)m(y)g(default,)h(unless)e(the)i(op)s
+(erating)f(system)h(do)s(es)e(not)i(pro)m(vide)150 408
+y(the)e(necessary)f(supp)s(ort.)150 555 y Ft(--enable-alias)630
+664 y Fu(Allo)m(w)41 b(alias)g(expansion)f(and)f(include)g(the)h
+Ft(alias)f Fu(and)g Ft(unalias)e Fu(builtins)j(\(see)g(Sec-)630
+774 y(tion)31 b(6.6)g([Aliases],)i(page)e(108\).)150
+920 y Ft(--enable-alt-array-imple)o(ment)o(atio)o(n)630
+1029 y Fu(This)h(builds)g(Bash)h(using)f(an)g(alternate)j(implemen)m
+(tation)f(of)f(arra)m(ys)h(\(see)f(Section)h(6.7)630
+1139 y([Arra)m(ys],)43 b(page)d(109\))h(that)f(pro)m(vides)g(faster)g
+(access)h(at)f(the)g(exp)s(ense)f(of)h(using)f(more)630
+1249 y(memory)30 b(\(sometimes)i(man)m(y)e(times)h(more,)g(dep)s
+(ending)e(on)h(ho)m(w)h(sparse)f(an)g(arra)m(y)h(is\).)150
+1395 y Ft(--enable-arith-for-comma)o(nd)630 1504 y Fu(Include)21
+b(supp)s(ort)g(for)g(the)i(alternate)g(form)f(of)g(the)g
+Ft(for)f Fu(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630
+1614 y(C)30 b(language)i Ft(for)d Fu(statemen)m(t)j(\(see)g(Section)f
+(3.2.5.1)i([Lo)s(oping)d(Constructs],)h(page)g(12\).)150
+1760 y Ft(--enable-array-variables)630 1870 y Fu(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 1979 y(ra)m(ys],)c(page)g(109\).)150
+2125 y Ft(--enable-bang-history)630 2235 y Fu(Include)36
+b(supp)s(ort)f(for)h Ft(csh)p Fu(-lik)m(e)h(history)g(substitution)f
+(\(see)h(Section)g(9.3)h([History)f(In-)630 2345 y(teraction],)c(page)e
+(169\).)150 2491 y Ft(--enable-bash-source-ful)o(lpat)o(h-de)o(fau)o
+(lt)630 2600 y Fu(Set)21 b(the)f(default)h(v)-5 b(alue)21
+b(of)g(the)g Ft(bash_source_fullpath)15 b Fu(shell)20
+b(option)h(describ)s(ed)f(ab)s(o)m(v)m(e)630 2710 y(under)30
+b(Section)i(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(77,)h(to)f(b)s(e)
+f(enabled.)43 b(This)31 b(con)m(trols)630 2819 y(ho)m(w)f(\014lenames)h
+(are)g(assigned)f(to)h(the)g Ft(BASH_SOURCE)c Fu(arra)m(y)k(v)-5
+b(ariable.)150 2966 y Ft(--enable-brace-expansion)630
+3075 y Fu(Include)40 b Ft(csh)p Fu(-lik)m(e)h(brace)f(expansion)g(\()h
+Ft(b{a,b}c)d Fq(7!)i Ft(bac)30 b(bbc)39 b Fu(\).)71 b(See)40
+b(Section)h(3.5.1)630 3185 y([Brace)32 b(Expansion],)e(page)h(25,)h
+(for)e(a)g(complete)i(description.)150 3331 y Ft
+(--enable-casemod-attribu)o(tes)630 3440 y Fu(Include)37
+b(supp)s(ort)g(for)g(case-mo)s(difying)i(attributes)g(in)e(the)h
+Ft(declare)e Fu(builtin)i(and)f(as-)630 3550 y(signmen)m(t)43
+b(statemen)m(ts.)78 b(V)-8 b(ariables)44 b(with)e(the)g
+Ft(uppercase)e Fu(attribute,)46 b(for)c(example,)630
+3660 y(will)31 b(ha)m(v)m(e)g(their)g(v)-5 b(alues)30
+b(con)m(v)m(erted)i(to)f(upp)s(ercase)f(up)s(on)f(assignmen)m(t.)150
+3806 y Ft(--enable-casemod-expansi)o(on)630 3915 y Fu(Include)h(supp)s
+(ort)e(for)i(case-mo)s(difying)i(w)m(ord)e(expansions.)150
+4061 y Ft(--enable-command-timing)630 4171 y Fu(Include)43
+b(supp)s(ort)f(for)h(recognizing)i Ft(time)e Fu(as)g(a)h(reserv)m(ed)g
+(w)m(ord)f(and)g(for)h(displa)m(ying)630 4281 y(timing)37
+b(statistics)h(for)e(the)g(pip)s(eline)g(follo)m(wing)i
+Ft(time)d Fu(\(see)i(Section)g(3.2.3)h([Pip)s(elines],)630
+4390 y(page)52 b(10\).)107 b(This)50 b(allo)m(ws)k(timing)e(pip)s
+(elines,)57 b(shell)51 b(comp)s(ound)g(commands,)57 b(shell)630
+4500 y(builtins,)30 b(and)g(shell)g(functions,)h(whic)m(h)f(an)g
+(external)h(command)f(cannot)h(do)g(easily)-8 b(.)150
+4646 y Ft(--enable-cond-command)630 4756 y Fu(Include)33
+b(supp)s(ort)f(for)i(the)g Ft([[)f Fu(conditional)i(command.)51
+b(\(see)34 b(Section)h(3.2.5.2)h([Condi-)630 4865 y(tional)c
+(Constructs],)e(page)h(12\).)150 5011 y Ft(--enable-cond-regexp)630
+5121 y Fu(Include)k(supp)s(ort)f(for)i(matc)m(hing)h
+Fm(posix)e Fu(regular)h(expressions)g(using)f(the)h(`)p
+Ft(=~)p Fu(')g(binary)630 5230 y(op)s(erator)25 b(in)f(the)h
+Ft([[)f Fu(conditional)h(command.)39 b(\(see)25 b(Section)h(3.2.5.2)h
+([Conditional)e(Con-)630 5340 y(structs],)31 b(page)g(12\).)p
+eop end
+%%Page: 179 185
+TeXDict begin 179 184 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(179)150 299 y Ft(--enable-coprocesses)630
+408 y Fu(Include)23 b(supp)s(ort)f(for)i(copro)s(cesses)g(and)f(the)h
+Ft(coproc)e Fu(reserv)m(ed)i(w)m(ord)g(\(see)h(Section)f(3.2.3)630
+518 y([Pip)s(elines],)31 b(page)g(10\).)150 664 y Ft(--enable-debugger)
+630 774 y Fu(Include)f(supp)s(ort)e(for)i(the)h(Bash)g(debugger)f
+(\(distributed)f(separately\).)150 920 y Ft(--enable-dev-fd-stat-bro)o
+(ken)630 1029 y Fu(If)d(calling)j Ft(stat)d Fu(on)g(/dev/fd/)p
+Fr(N)38 b Fu(returns)25 b(di\013eren)m(t)j(results)f(than)f(calling)j
+Ft(fstat)c Fu(on)i(\014le)630 1139 y(descriptor)g Fr(N)p
+Fu(,)i(supply)c(this)j(option)g(to)g(enable)f(a)h(w)m(ork)-5
+b(around.)39 b(This)27 b(has)g(implications)630 1249
+y(for)j(conditional)i(commands)e(that)h(test)g(\014le)g(attributes.)150
+1395 y Ft(--enable-direxpand-defau)o(lt)630 1504 y Fu(Cause)53
+b(the)g Ft(direxpand)d Fu(shell)j(option)h(\(see)g(Section)f(4.3.2)i
+([The)e(Shopt)f(Builtin],)630 1614 y(page)29 b(77\))g(to)f(b)s(e)f
+(enabled)h(b)m(y)g(default)g(when)e(the)i(shell)g(starts.)41
+b(It)27 b(is)h(normally)g(disabled)630 1724 y(b)m(y)i(default.)150
+1870 y Ft(--enable-directory-stack)630 1979 y Fu(Include)j(supp)s(ort)g
+(for)h(a)g Ft(csh)p Fu(-lik)m(e)h(directory)f(stac)m(k)i(and)d(the)i
+Ft(pushd)p Fu(,)f Ft(popd)p Fu(,)g(and)f Ft(dirs)630
+2089 y Fu(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m
+(k],)g(page)f(111\).)150 2235 y Ft(--enable-disabled-builti)o(ns)630
+2345 y Fu(Allo)m(w)40 b(builtin)e(commands)g(to)h(b)s(e)f(in)m(v)m(ok)m
+(ed)i(via)f(`)p Ft(builtin)29 b(xxx)p Fu(')37 b(ev)m(en)j(after)f
+Ft(xxx)e Fu(has)630 2454 y(b)s(een)31 b(disabled)g(using)g(`)p
+Ft(enable)d(-n)i(xxx)p Fu('.)43 b(See)32 b(Section)g(4.2)h([Bash)e
+(Builtins],)i(page)f(60,)630 2564 y(for)e(details)i(of)e(the)h
+Ft(builtin)d Fu(and)i Ft(enable)e Fu(builtin)i(commands.)150
+2710 y Ft(--enable-dparen-arithmet)o(ic)630 2819 y Fu(Include)42
+b(supp)s(ort)f(for)h(the)h Ft(\(\(...)o(\)\))f Fu(command)g(\(see)i
+(Section)f(3.2.5.2)i([Conditional)630 2929 y(Constructs],)30
+b(page)h(12\).)150 3075 y Ft(--enable-extended-glob)630
+3185 y Fu(Include)40 b(supp)s(ort)e(for)i(the)h(extended)f(pattern)h
+(matc)m(hing)g(features)g(describ)s(ed)e(ab)s(o)m(v)m(e)630
+3294 y(under)29 b(Section)i(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i
+(page)e(38.)150 3440 y Ft(--enable-extended-glob-d)o(efau)o(lt)630
+3550 y Fu(Set)37 b(the)f(default)h(v)-5 b(alue)37 b(of)f(the)h
+Ft(extglob)d Fu(shell)j(option)g(describ)s(ed)e(ab)s(o)m(v)m(e)j(under)
+c(Sec-)630 3660 y(tion)d(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(77,)
+h(to)f(b)s(e)f(enabled.)150 3806 y Ft(--enable-function-import)630
+3915 y Fu(Include)23 b(supp)s(ort)g(for)g(imp)s(orting)h(function)g
+(de\014nitions)f(exp)s(orted)h(b)m(y)g(another)g(instance)630
+4025 y(of)31 b(the)f(shell)h(from)f(the)g(en)m(vironmen)m(t.)41
+b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)150
+4171 y Ft(--enable-glob-asciirange)o(s-de)o(faul)o(t)630
+4281 y Fu(Set)f(the)f(default)h(v)-5 b(alue)29 b(of)f(the)h
+Ft(globasciiranges)24 b Fu(shell)29 b(option)g(describ)s(ed)e(ab)s(o)m
+(v)m(e)j(un-)630 4390 y(der)c(Section)i(4.3.2)h([The)d(Shopt)g
+(Builtin],)j(page)f(77,)g(to)g(b)s(e)e(enabled.)40 b(This)26
+b(con)m(trols)i(the)630 4500 y(b)s(eha)m(vior)40 b(of)f(c)m(haracter)i
+(ranges)f(when)f(used)f(in)i(pattern)f(matc)m(hing)i(brac)m(k)m(et)g
+(expres-)630 4609 y(sions.)150 4756 y Ft(--enable-help-builtin)630
+4865 y Fu(Include)24 b(the)h Ft(help)f Fu(builtin,)h(whic)m(h)g(displa)
+m(ys)f(help)h(on)f(shell)h(builtins)f(and)h(v)-5 b(ariables)25
+b(\(see)630 4975 y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f
+(60\).)150 5121 y Ft(--enable-history)630 5230 y Fu(Include)e(command)g
+(history)h(and)f(the)h Ft(fc)f Fu(and)g Ft(history)e
+Fu(builtin)j(commands)f(\(see)h(Sec-)630 5340 y(tion)h(9.1)g([Bash)g
+(History)g(F)-8 b(acilities],)34 b(page)d(166\).)p eop
+end
+%%Page: 180 186
+TeXDict begin 180 185 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(180)150 299 y Ft(--enable-job-control)630
+408 y Fu(This)32 b(enables)i(the)f(job)g(con)m(trol)i(features)e(\(see)
+i(Chapter)d(7)i([Job)f(Con)m(trol],)i(page)f(123\),)630
+518 y(if)c(the)h(op)s(erating)g(system)f(supp)s(orts)f(them.)150
+673 y Ft(--enable-multibyte)630 783 y Fu(This)g(enables)i(supp)s(ort)d
+(for)i(m)m(ultib)m(yte)h(c)m(haracters)g(if)f(the)g(op)s(erating)h
+(system)f(pro)m(vides)630 892 y(the)h(necessary)f(supp)s(ort.)150
+1048 y Ft(--enable-net-redirection)o(s)630 1157 y Fu(This)23
+b(enables)h(the)g(sp)s(ecial)h(handling)e(of)h(\014lenames)g(of)g(the)g
+(form)g Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 1267
+y Fu(and)31 b Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)26
+b Fu(when)31 b(used)g(in)g(redirections)h(\(see)g(Section)g(3.6)h
+([Redirec-)630 1377 y(tions],)e(page)g(40\).)150 1532
+y Ft(--enable-process-substit)o(utio)o(n)630 1641 y Fu(This)49
+b(enables)i(pro)s(cess)f(substitution)g(\(see)h(Section)g(3.5.6)h([Pro)
+s(cess)e(Substitution],)630 1751 y(page)31 b(36\))h(if)e(the)h(op)s
+(erating)f(system)h(pro)m(vides)f(the)h(necessary)g(supp)s(ort.)150
+1906 y Ft(--enable-progcomp)630 2016 y Fu(Enable)d(the)g(programmable)g
+(completion)i(facilities)g(\(see)f(Section)g(8.6)g([Programmable)630
+2125 y(Completion],)i(page)h(156\).)42 b(If)30 b(Readline)h(is)f(not)h
+(enabled,)f(this)h(option)g(has)f(no)g(e\013ect.)150
+2281 y Ft(--enable-prompt-string-d)o(ecod)o(ing)630 2390
+y Fu(T)-8 b(urn)30 b(on)i(the)f(in)m(terpretation)i(of)f(a)g(n)m(um)m
+(b)s(er)e(of)i(bac)m(kslash-escap)s(ed)g(c)m(haracters)i(in)d(the)630
+2500 y Ft($PS0)p Fu(,)36 b Ft($PS1)p Fu(,)g Ft($PS2)p
+Fu(,)h(and)e Ft($PS4)f Fu(prompt)h(strings.)57 b(See)36
+b(Section)h(6.9)g([Con)m(trolling)g(the)630 2609 y(Prompt],)30
+b(page)h(112,)h(for)f(a)f(complete)i(list)f(of)g(prompt)e(string)i
+(escap)s(e)f(sequences.)150 2765 y Ft(--enable-readline)630
+2874 y Fu(Include)e(supp)s(ort)f(for)h(command-line)h(editing)g(and)f
+(history)g(with)g(the)h(Bash)g(v)m(ersion)g(of)630 2984
+y(the)i(Readline)g(library)f(\(see)h(Chapter)f(8)g([Command)g(Line)g
+(Editing],)h(page)g(128\).)150 3139 y Ft(--enable-restricted)630
+3249 y Fu(Include)25 b(supp)s(ort)e(for)i(a)h Fr(restricted)g(shell)p
+Fu(.)39 b(If)25 b(this)g(is)h(enabled,)g(Bash)g(en)m(ters)g(a)f
+(restricted)630 3358 y(mo)s(de)30 b(when)f(called)i(as)g
+Ft(rbash)p Fu(.)39 b(See)30 b(Section)h(6.10)h([The)e(Restricted)h
+(Shell],)f(page)h(114,)630 3468 y(for)f(a)h(description)f(of)h
+(restricted)g(mo)s(de.)150 3623 y Ft(--enable-select)630
+3733 y Fu(Include)42 b(the)h Ft(select)d Fu(comp)s(ound)i(command,)j
+(whic)m(h)d(allo)m(ws)i(generation)g(of)f(simple)630
+3842 y(men)m(us)30 b(\(see)h(Section)g(3.2.5.2)i([Conditional)e
+(Constructs],)g(page)g(12\).)150 3998 y Ft(--enable-single-help-str)o
+(ings)630 4107 y Fu(Store)40 b(the)g(text)h(displa)m(y)m(ed)g(b)m(y)e
+(the)i Ft(help)d Fu(builtin)i(as)g(a)g(single)h(string)f(for)f(eac)m(h)
+i(help)630 4217 y(topic.)54 b(This)33 b(aids)i(in)f(translating)h(the)g
+(text)g(to)g(di\013eren)m(t)g(languages.)54 b(Y)-8 b(ou)35
+b(ma)m(y)g(need)630 4326 y(to)c(disable)g(this)f(if)g(y)m(our)h
+(compiler)g(cannot)f(handle)g(v)m(ery)h(long)g(string)f(literals.)150
+4482 y Ft(--enable-strict-posix-de)o(faul)o(t)630 4591
+y Fu(Mak)m(e)c(Bash)f Fm(posix)p Fu(-conforman)m(t)g(b)m(y)f(default)h
+(\(see)g(Section)h(6.11)g([Bash)f(POSIX)e(Mo)s(de],)630
+4701 y(page)31 b(115\).)150 4856 y Ft(--enable-translatable-st)o(ring)o
+(s)630 4966 y Fu(Enable)h(supp)s(ort)e(for)i Ft($")p
+Fj(string)p Ft(")e Fu(translatable)j(strings)f(\(see)h(Section)g
+(3.1.2.5)h([Lo)s(cale)630 5075 y(T)-8 b(ranslation],)32
+b(page)f(7\).)150 5230 y Ft(--enable-usg-echo-defaul)o(t)630
+5340 y Fu(A)f(synon)m(ym)g(for)g Ft(--enable-xpg-echo-default)p
+Fu(.)p eop end
+%%Page: 181 187
+TeXDict begin 181 186 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(181)150 299 y Ft
+(--enable-xpg-echo-defaul)o(t)630 408 y Fu(Mak)m(e)26
+b(the)f Ft(echo)e Fu(builtin)i(expand)f(bac)m(kslash-escap)s(ed)h(c)m
+(haracters)h(b)m(y)f(default,)h(without)630 518 y(requiring)d(the)h
+Ft(-e)f Fu(option.)39 b(This)23 b(sets)h(the)g(default)g(v)-5
+b(alue)24 b(of)g(the)g Ft(xpg_echo)e Fu(shell)h(option)630
+628 y(to)28 b Ft(on)p Fu(,)g(whic)m(h)f(mak)m(es)h(the)g(Bash)f
+Ft(echo)f Fu(b)s(eha)m(v)m(e)i(more)g(lik)m(e)h(the)e(v)m(ersion)h(sp)s
+(eci\014ed)f(in)g(the)630 737 y(Single)35 b(Unix)f(Sp)s(eci\014cation,)
+i(v)m(ersion)e(3.)53 b(See)35 b(Section)g(4.2)g([Bash)g(Builtins],)h
+(page)f(60,)630 847 y(for)30 b(a)h(description)f(of)h(the)f(escap)s(e)h
+(sequences)g(that)g Ft(echo)e Fu(recognizes.)275 1006
+y(The)f(\014le)i Ft(config-top.h)c Fu(con)m(tains)31
+b(C)d(Prepro)s(cessor)h(`)p Ft(#define)p Fu(')f(statemen)m(ts)j(for)f
+(options)f(whic)m(h)150 1116 y(are)35 b(not)g(settable)i(from)d
+Ft(configure)p Fu(.)51 b(Some)35 b(of)g(these)g(are)h(not)f(mean)m(t)g
+(to)h(b)s(e)e(c)m(hanged;)k(b)s(ew)m(are)d(of)150 1225
+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 1335 y(information)c(ab)s(out)f(its)h(e\013ect.)p
+eop end
+%%Page: 182 188
+TeXDict begin 182 187 bop 3614 -116 a Fu(182)150 299
+y Fp(App)t(endix)52 b(A)81 b(Rep)t(orting)53 b(Bugs)150
+533 y Fu(Please)33 b(rep)s(ort)e(all)h(bugs)f(y)m(ou)h(\014nd)e(in)i
+(Bash.)44 b(But)32 b(\014rst,)g(y)m(ou)g(should)e(mak)m(e)j(sure)e
+(that)h(it)g(really)h(is)f(a)150 643 y(bug,)g(and)f(that)h(it)g(app)s
+(ears)f(in)h(the)g(latest)h(v)m(ersion)f(of)g(Bash.)45
+b(The)31 b(latest)i(released)g(v)m(ersion)f(of)g(Bash)150
+752 y(is)g(alw)m(a)m(ys)i(a)m(v)-5 b(ailable)34 b(for)e(FTP)f(from)h
+Ft(ftp:)q(/)q(/)q(ftp)q(.)q(gnu)q(.)q(org)q(/)q(pub)q(/)q(gnu)q(/)q
+(bash)q(/)d Fu(and)j(from)f Ft(http:)q(/)q(/)150 862
+y(git.savannah.gnu.org/cgi)o(t/ba)o(sh.g)o(it/)o(snap)o(shot)o(/ba)o
+(sh-m)o(aste)o(r.t)o(ar.g)o(z)p Fu(.)275 996 y(Once)41
+b(y)m(ou)g(ha)m(v)m(e)h(determined)f(that)h(a)f(bug)g(actually)h
+(exists,)j(use)c(the)g Ft(bashbug)e Fu(command)i(to)150
+1106 y(submit)21 b(a)g(bug)g(rep)s(ort)g(or)g(use)g(the)h(form)e(at)j
+(the)e(Bash)h(pro)5 b(ject)21 b(page)h(\()p Ft
+(https://savannah.gnu.org/)150 1215 y(projects/bash/)p
+Fu(\).)35 b(If)24 b(y)m(ou)h(ha)m(v)m(e)h(a)f(\014x,)g(y)m(ou)g(are)g
+(encouraged)g(to)g(submit)f(that)h(as)g(w)m(ell!)39 b(Suggestions)150
+1325 y(and)33 b(`philosophical')i(bug)e(rep)s(orts)g(ma)m(y)h(b)s(e)f
+(mailed)h(to)g Ft(bug-bash@gnu)s(.)s(org)29 b Fu(or)k
+Ft(help-bash@gnu)s(.)150 1435 y(org)p Fu(.)275 1569 y(All)e(bug)e(rep)s
+(orts)h(should)f(include:)225 1704 y Fq(\017)60 b Fu(The)30
+b(v)m(ersion)h(n)m(um)m(b)s(er)e(of)h(Bash.)225 1838
+y Fq(\017)60 b Fu(The)30 b(hardw)m(are)g(and)g(op)s(erating)g(system.)
+225 1973 y Fq(\017)60 b Fu(The)30 b(compiler)h(used)e(to)i(compile)h
+(Bash.)225 2107 y Fq(\017)60 b Fu(A)30 b(description)h(of)f(the)h(bug)f
+(b)s(eha)m(viour.)225 2242 y Fq(\017)60 b Fu(A)30 b(short)h(script)f
+(or)g(`recip)s(e')h(whic)m(h)f(exercises)i(the)e(bug)g(and)g(ma)m(y)h
+(b)s(e)f(used)f(to)i(repro)s(duce)e(it.)150 2401 y Ft(bashbug)d
+Fu(inserts)i(the)h(\014rst)f(three)g(items)h(automatically)i(in)m(to)f
+(the)e(template)i(it)f(pro)m(vides)f(for)g(\014ling)h(a)150
+2511 y(bug)h(rep)s(ort.)275 2645 y(Please)h(send)f(all)h(rep)s(orts)f
+(concerning)g(this)h(man)m(ual)f(to)h Ft(bug-bash@gnu.org)p
+Fu(.)p eop end
+%%Page: 183 189
+TeXDict begin 183 188 bop 3614 -116 a Fu(183)150 141
+y Fp(App)t(endix)58 b(B)81 b(Ma)9 b(jor)54 b(Di\013erences)d(F)-13
+b(rom)54 b(The)g(Bourne)1088 299 y(Shell)150 518 y Fu(Bash)26
+b(implemen)m(ts)h(essen)m(tially)g(the)g(same)f(grammar,)h(parameter)f
+(and)g(v)-5 b(ariable)27 b(expansion,)g(redirec-)150
+628 y(tion,)36 b(and)d(quoting)i(as)g(the)f(Bourne)g(Shell.)52
+b(Bash)34 b(uses)g(the)g Fm(posix)g Fu(standard)f(as)i(the)f(sp)s
+(eci\014cation)150 737 y(of)c(ho)m(w)h(these)f(features)h(are)g(to)g(b)
+s(e)e(implemen)m(ted)i(and)f(ho)m(w)g(they)g(should)g(b)s(eha)m(v)m(e.)
+41 b(There)30 b(are)h(some)150 847 y(di\013erences)j(b)s(et)m(w)m(een)g
+(the)f(traditional)i(Bourne)e(shell)h(and)f(Bash;)i(this)f(section)g
+(quic)m(kly)g(details)h(the)150 956 y(di\013erences)d(of)g
+(signi\014cance.)47 b(A)32 b(n)m(um)m(b)s(er)e(of)i(these)h
+(di\013erences)f(are)g(explained)g(in)g(greater)h(depth)e(in)150
+1066 y(previous)g(sections.)46 b(This)31 b(section)h(uses)f(the)h(v)m
+(ersion)g(of)g Ft(sh)f Fu(included)g(in)g(SVR4.2)i(\(the)f(last)g(v)m
+(ersion)150 1176 y(of)f(the)f(historical)i(Bourne)e(shell\))h(as)g(the)
+f(baseline)h(reference.)225 1307 y Fq(\017)60 b Fu(Bash)32
+b(is)h Fm(posix)p Fu(-conforman)m(t,)g(ev)m(en)g(where)f(the)g
+Fm(posix)g Fu(sp)s(eci\014cation)h(di\013ers)f(from)g(traditional)330
+1417 y Ft(sh)e Fu(b)s(eha)m(vior)g(\(see)i(Section)f(6.11)h([Bash)e
+(POSIX)g(Mo)s(de],)h(page)g(115\).)225 1548 y Fq(\017)60
+b Fu(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
+(options)f(\(see)f(Section)h(6.1)g([In)m(v)m(oking)g(Bash],)h(page)e
+(99\).)225 1680 y Fq(\017)60 b Fu(The)46 b(Bash)h(restricted)g(mo)s(de)
+f(is)h(more)f(useful)g(\(see)h(Section)h(6.10)g([The)e(Restricted)i
+(Shell],)330 1789 y(page)31 b(114\);)h(the)f(SVR4.2)g(shell)g
+(restricted)g(mo)s(de)f(is)g(to)s(o)h(limited.)225 1921
+y Fq(\017)60 b Fu(Bash)40 b(has)f(command-line)h(editing)g(\(see)h
+(Chapter)e(8)h([Command)f(Line)g(Editing],)k(page)d(128\))330
+2030 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225 2162
+y Fq(\017)60 b Fu(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
+2271 y(grammable)39 b(Completion],)i(page)e(156\),)i(and)d(builtin)g
+(commands)f Ft(complete)p Fu(,)h Ft(compgen)p Fu(,)h(and)330
+2381 y Ft(compopt)p Fu(,)29 b(to)i(manipulate)g(it.)225
+2513 y Fq(\017)60 b Fu(Bash)35 b(deco)s(des)g(a)h(n)m(um)m(b)s(er)e(of)
+h(bac)m(kslash-escap)s(e)i(sequences)e(in)g(the)g(prompt)f(string)h(v)
+-5 b(ariables)330 2622 y(\()p Ft(PS0)p Fu(,)30 b Ft(PS1)p
+Fu(,)g Ft(PS2)p Fu(,)g(and)f Ft(PS4)p Fu(\))h(\(see)h(Section)h(6.9)f
+([Con)m(trolling)h(the)e(Prompt],)h(page)g(112\).)225
+2754 y Fq(\017)60 b Fu(Bash)31 b(expands)e(and)h(displa)m(ys)g(the)h
+Ft(PS0)e Fu(prompt)h(string)g(v)-5 b(ariable.)225 2885
+y Fq(\017)60 b Fu(Bash)45 b(runs)e(commands)i(from)f(the)i
+Ft(PROMPT_COMMAND)41 b Fu(arra)m(y)k(v)-5 b(ariable)46
+b(b)s(efore)e(issuing)h(eac)m(h)330 2995 y(primary)29
+b(prompt.)225 3126 y Fq(\017)60 b Fu(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(166\))i(and)d(the)330 3236 y Ft(history)k Fu(and)h
+Ft(fc)g Fu(builtins)g(to)h(manipulate)g(it.)42 b(The)30
+b(Bash)h(history)g(list)g(main)m(tains)g(timestamp)330
+3345 y(information)g(and)e(uses)h(the)h(v)-5 b(alue)31
+b(of)f(the)h Ft(HISTTIMEFORMAT)26 b Fu(v)-5 b(ariable)32
+b(to)f(displa)m(y)f(it.)225 3477 y Fq(\017)60 b Fu(Bash)48
+b(implemen)m(ts)h Ft(csh)p Fu(-lik)m(e)g(history)f(expansion)g(\(see)h
+(Section)g(9.3)h([History)f(In)m(teraction],)330 3587
+y(page)31 b(169\).)225 3718 y Fq(\017)60 b Fu(Bash)34
+b(supp)s(orts)e(the)i Ft($'...)o(')f Fu(quoting)h(syn)m(tax,)i(whic)m
+(h)d(expands)g(ANSI-C)h(bac)m(kslash-escap)s(ed)330 3828
+y(c)m(haracters)28 b(in)e(the)h(text)h(b)s(et)m(w)m(een)f(the)g(single)
+g(quotes)h(\(see)f(Section)h(3.1.2.4)h([ANSI-C)d(Quoting],)330
+3937 y(page)31 b(6\).)225 4069 y Fq(\017)60 b Fu(Bash)37
+b(supp)s(orts)e(the)i Ft($"...)o(")f Fu(quoting)h(syn)m(tax)h(and)e(p)s
+(erforms)f(lo)s(cale-sp)s(eci\014c)k(translation)f(of)330
+4178 y(the)j(c)m(haracters)i(b)s(et)m(w)m(een)f(the)g(double)e(quotes.)
+74 b(The)41 b Ft(-D)p Fu(,)j Ft(--dump-strings)p Fu(,)c(and)h
+Ft(--dump-)330 4288 y(po-strings)29 b Fu(in)m(v)m(o)s(cation)34
+b(options)e(list)g(the)g(translatable)h(strings)f(found)e(in)i(a)g
+(script)g(\(see)g(Sec-)330 4398 y(tion)f(3.1.2.5)i([Lo)s(cale)f(T)-8
+b(ranslation],)31 b(page)g(7\).)225 4529 y Fq(\017)60
+b Fu(Bash)27 b(includes)g(brace)h(expansion)f(\(see)h(Section)g(3.5.1)i
+([Brace)e(Expansion],)g(page)g(25\))h(and)d(tilde)330
+4639 y(expansion)k(\(see)i(Section)f(3.5.2)h([Tilde)f(Expansion],)f
+(page)h(26\).)225 4770 y Fq(\017)60 b Fu(Bash)24 b(implemen)m(ts)h
+(command)e(aliases)j(and)d(the)i Ft(alias)d Fu(and)i
+Ft(unalias)e Fu(builtins)h(\(see)i(Section)g(6.6)330
+4880 y([Aliases],)32 b(page)f(108\).)225 5011 y Fq(\017)60
+b Fu(Bash)44 b(implemen)m(ts)g(the)f Ft(!)h Fu(k)m(eyw)m(ord)g(to)g
+(negate)h(the)f(return)e(v)-5 b(alue)44 b(of)g(a)g(pip)s(eline)f(\(see)
+h(Sec-)330 5121 y(tion)31 b(3.2.3)h([Pip)s(elines],)e(page)h(10\).)42
+b(This)29 b(is)i(v)m(ery)f(useful)f(when)h(an)g Ft(if)f
+Fu(statemen)m(t)j(needs)e(to)h(act)330 5230 y(only)24
+b(if)g(a)g(test)h(fails.)39 b(The)23 b(Bash)h(`)p Ft(-o)30
+b(pipefail)p Fu(')22 b(option)i(to)h Ft(set)d Fu(will)j(cause)f(a)g
+(pip)s(eline)f(to)i(return)330 5340 y(a)31 b(failure)f(status)h(if)f
+(an)m(y)h(command)f(fails)h(\(see)g(Section)h(4.3.1)g([The)e(Set)g
+(Builtin],)i(page)f(72\).)p eop end
+%%Page: 184 190
+TeXDict begin 184 189 bop 150 -116 a Fu(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(184)225 299 y Fq(\017)60
+b Fu(Bash)34 b(has)g(the)g Ft(time)f Fu(reserv)m(ed)h(w)m(ord)g(and)f
+(command)h(timing)h(\(see)g(Section)g(3.2.3)g([Pip)s(elines],)330
+408 y(page)d(10\).)43 b(The)31 b(displa)m(y)g(of)g(the)g(timing)h
+(statistics)h(ma)m(y)e(b)s(e)f(con)m(trolled)j(with)e(the)g
+Ft(TIMEFORMAT)330 518 y Fu(v)-5 b(ariable.)225 664 y
+Fq(\017)60 b Fu(Bash)40 b(pro)m(vides)h(copro)s(cesses)g(and)f(the)g
+Ft(coproc)f Fu(reserv)m(ed)h(w)m(ord)g(\(see)h(Section)h(3.2.6)g
+([Copro-)330 774 y(cesses],)32 b(page)f(18\).)225 920
+y Fq(\017)60 b Fu(Bash)28 b(implemen)m(ts)g(the)f Ft(for)j(\(\()g
+Fj(expr1)f Ft(;)h Fj(expr2)f Ft(;)h Fj(expr3)f Ft(\)\))e
+Fu(arithmetic)h(for)g(command,)g(sim-)330 1029 y(ilar)j(to)g(the)g(C)f
+(language)h(\(see)h(Section)f(3.2.5.1)i([Lo)s(oping)d(Constructs],)h
+(page)g(12\).)225 1176 y Fq(\017)60 b Fu(Bash)31 b(includes)f(the)g
+Ft(select)f Fu(comp)s(ound)g(command,)i(whic)m(h)f(allo)m(ws)i(the)f
+(generation)g(of)g(simple)330 1285 y(men)m(us)f(\(see)h(Section)g
+(3.2.5.2)i([Conditional)e(Constructs],)g(page)g(12\).)225
+1431 y Fq(\017)60 b Fu(Bash)40 b(includes)g(the)g Ft([[)g
+Fu(comp)s(ound)e(command,)43 b(whic)m(h)c(mak)m(es)i(conditional)h
+(testing)f(part)f(of)330 1541 y(the)f(shell)g(grammar)g(\(see)h
+(Section)f(3.2.5.2)j([Conditional)d(Constructs],)i(page)f(12\),)i
+(including)330 1650 y(optional)32 b(regular)e(expression)g(matc)m
+(hing.)225 1797 y Fq(\017)60 b Fu(Bash)35 b(pro)m(vides)f(optional)h
+(case-insensitiv)m(e)i(matc)m(hing)f(for)e(the)h Ft(case)e
+Fu(and)h Ft([[)f Fu(constructs)i(\(see)330 1906 y(Section)c(3.2.5.2)i
+([Conditional)e(Constructs],)g(page)g(12\).)225 2052
+y Fq(\017)60 b Fu(Bash)37 b(pro)m(vides)g(additional)h
+Ft(case)e Fu(statemen)m(t)j(action)g(list)f(terminators:)55
+b(`)p Ft(;&)p Fu(')37 b(and)f(`)p Ft(;;&)p Fu(')h(\(see)330
+2162 y(Section)31 b(3.2.5.2)i([Conditional)e(Constructs],)g(page)g
+(12\).)225 2308 y Fq(\017)60 b Fu(Bash)25 b(pro)m(vides)g(shell)g
+(arithmetic,)j(the)d Ft(\(\()f Fu(comp)s(ound)g(command)h(\(see)h
+(Section)g(3.2.5.2)h([Condi-)330 2418 y(tional)h(Constructs],)f(page)g
+(12\),)h(the)f Ft(let)e Fu(builtin,)i(and)f(arithmetic)h(expansion)f
+(\(see)i(Section)f(6.5)330 2527 y([Shell)j(Arithmetic],)i(page)f
+(106\).)225 2673 y Fq(\017)60 b Fu(Bash)29 b(has)h(one-dimensional)g
+(arra)m(y)f(v)-5 b(ariables)30 b(\(see)h(Section)f(6.7)g([Arra)m(ys],)h
+(page)f(109\),)h(and)e(the)330 2783 y(appropriate)39
+b(v)-5 b(ariable)40 b(expansions)f(and)g(assignmen)m(t)h(syn)m(tax)g
+(to)g(use)f(them.)67 b(Sev)m(eral)40 b(of)g(the)330 2892
+y(Bash)32 b(builtins)f(tak)m(e)j(options)e(to)h(act)g(on)e(arra)m(ys.)
+46 b(Bash)32 b(pro)m(vides)g(a)g(n)m(um)m(b)s(er)f(of)h(built-in)f
+(arra)m(y)330 3002 y(v)-5 b(ariables.)225 3148 y Fq(\017)60
+b Fu(V)-8 b(ariables)31 b(presen)m(t)e(in)g(the)g(shell's)h(initial)g
+(en)m(vironmen)m(t)g(are)g(automatically)i(exp)s(orted)d(to)h(c)m(hild)
+330 3258 y(pro)s(cesses)24 b(\(see)h(Section)g(3.7.3)h([Command)e
+(Execution)h(En)m(vironmen)m(t],)h(page)f(45\).)39 b(The)24
+b(Bourne)330 3367 y(shell)40 b(do)s(es)g(not)g(normally)g(do)g(this)g
+(unless)f(the)i(v)-5 b(ariables)40 b(are)h(explicitly)g(mark)m(ed)f
+(using)g(the)330 3477 y Ft(export)29 b Fu(command.)225
+3623 y Fq(\017)60 b Fu(Bash)43 b(can)h(expand)e(p)s(ositional)i
+(parameters)f(b)s(ey)m(ond)g Ft($9)f Fu(using)h Ft(${)p
+Fj(num)p Ft(})e Fu(\(see)j(Section)g(3.5.3)330 3733 y([Shell)30
+b(P)m(arameter)i(Expansion],)e(page)h(27\).)225 3879
+y Fq(\017)60 b Fu(Bash)26 b(supp)s(orts)d(the)j(`)p Ft(+=)p
+Fu(')f(assignmen)m(t)i(op)s(erator,)g(whic)m(h)e(app)s(ends)f(to)i(the)
+g(v)-5 b(alue)26 b(of)f(the)h(v)-5 b(ariable)330 3988
+y(named)30 b(on)g(the)h(left)g(hand)e(side)h(\(see)i(Section)f(3.4)g
+([Shell)g(P)m(arameters],)h(page)f(22\).)225 4134 y Fq(\017)60
+b Fu(Bash)36 b(includes)g(the)g Fm(posix)f Fu(pattern)h(remo)m(v)-5
+b(al)37 b(`)p Ft(\045)p Fu(',)h(`)p Ft(#)p Fu(',)g(`)p
+Ft(\045\045)p Fu(')e(and)f(`)p Ft(##)p Fu(')h(expansions)g(to)g(remo)m
+(v)m(e)330 4244 y(leading)f(or)f(trailing)h(substrings)e(from)g(v)-5
+b(ariable)35 b(v)-5 b(alues)35 b(\(see)g(Section)g(3.5.3)g([Shell)g(P)m
+(arameter)330 4354 y(Expansion],)30 b(page)h(27\).)225
+4500 y Fq(\017)60 b Fu(The)46 b(expansion)g Ft(${#xx})p
+Fu(,)j(whic)m(h)d(returns)f(the)i(length)f(of)h Ft(${xx})p
+Fu(,)i(is)e(supp)s(orted)d(\(see)j(Sec-)330 4609 y(tion)31
+b(3.5.3)h([Shell)f(P)m(arameter)g(Expansion],)f(page)i(27\).)225
+4756 y Fq(\017)60 b Fu(The)30 b(expansion)g Ft(${var:)p
+Fr(o\013set)r Ft([:)p Fr(length)p Ft(]})p Fu(,)g(whic)m(h)g(expands)g
+(to)h(the)g(substring)e(of)i Ft(var)p Fu('s)e(v)-5 b(alue)330
+4865 y(of)43 b(length)g Fr(length)p Fu(,)k(b)s(eginning)42
+b(at)i Fr(o\013set)p Fu(,)j(is)c(presen)m(t)g(\(see)g(Section)h(3.5.3)h
+([Shell)e(P)m(arameter)330 4975 y(Expansion],)30 b(page)h(27\).)225
+5121 y Fq(\017)60 b Fu(The)21 b(expansion)f Ft(${)p Fj(var)p
+Ft(/[/])p Fr(pattern)p Ft([/)p Fr(replacemen)m(t)r Ft(]})p
+Fu(,)i(whic)m(h)e(matc)m(hes)j Fr(pattern)e Fu(and)f(replaces)330
+5230 y(it)30 b(with)f Fr(replacemen)m(t)k Fu(in)c(the)h(v)-5
+b(alue)30 b(of)g Fr(v)-5 b(ar)p Fu(,)30 b(is)f(a)m(v)-5
+b(ailable)32 b(\(see)e(Section)h(3.5.3)g([Shell)f(P)m(arameter)330
+5340 y(Expansion],)g(page)h(27\),)h(with)e(a)h(mec)m(hanism)g(to)g(use)
+f(the)g(matc)m(hed)i(text)f(in)f Fr(replacemen)m(t)p
+Fu(.)p eop end
+%%Page: 185 191
+TeXDict begin 185 190 bop 150 -116 a Fu(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(185)225 299 y Fq(\017)60
+b Fu(The)33 b(expansion)g Ft(${!)p Fj(prefix)p Ft(*})d
+Fu(expansion,)k(whic)m(h)e(expands)h(to)h(the)f(names)g(of)g(all)h
+(shell)f(v)-5 b(ari-)330 408 y(ables)36 b(whose)g(names)g(b)s(egin)g
+(with)g Fr(pre\014x)p Fu(,)g(is)g(a)m(v)-5 b(ailable)39
+b(\(see)e(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
+518 y(Expansion],)30 b(page)h(27\).)225 657 y Fq(\017)60
+b Fu(Bash)22 b(has)g(indirect)g(v)-5 b(ariable)22 b(expansion)g(using)f
+Ft(${!word})f Fu(\(see)i(Section)h(3.5.3)h([Shell)e(P)m(arameter)330
+766 y(Expansion],)44 b(page)e(27\))h(and)e(implemen)m(ts)g(the)h
+Ft(nameref)d Fu(v)-5 b(ariable)43 b(attribute)f(for)f(automatic)330
+876 y(indirect)31 b(v)-5 b(ariable)31 b(expansion.)225
+1015 y Fq(\017)60 b Fu(Bash)22 b(includes)g(a)h(set)g(of)g(parameter)f
+(transformation)h(w)m(ord)f(expansions)g(of)h(the)f(form)g
+Ft(${var@X})p Fu(,)330 1124 y(where)33 b(`)p Ft(X)p Fu(')g(sp)s
+(eci\014es)g(the)g(transformation)g(\(see)i(Section)f(3.5.3)g([Shell)g
+(P)m(arameter)g(Expansion],)330 1234 y(page)d(27\).)225
+1373 y Fq(\017)60 b Fu(The)27 b Fm(posix)g Ft($\(\))g
+Fu(form)g(of)h(command)g(substitution)f(is)h(implemen)m(ted)g(\(see)h
+(Section)f(3.5.4)i([Com-)330 1482 y(mand)38 b(Substitution],)k(page)e
+(35\),)j(and)38 b(preferred)g(to)i(the)g(Bourne)f(shell's)h
+Ft(``)e Fu(\(whic)m(h)i(is)f(also)330 1592 y(implemen)m(ted)31
+b(for)f(bac)m(kw)m(ards)h(compatibilit)m(y\).)225 1731
+y Fq(\017)60 b Fu(Bash)31 b(implemen)m(ts)g(a)g(v)-5
+b(arian)m(t)32 b(of)f(command)f(substitution)g(that)i(runs)d(the)i
+(enclosed)g(command)330 1840 y(in)h(the)h(curren)m(t)g(shell)f
+(execution)i(en)m(vironmen)m(t:)46 b Ft(${)30 b Fj(command)p
+Ft(;})g Fu(or)j Ft(${|)p Fj(command)p Ft(;})c Fu(\(see)k(Sec-)330
+1950 y(tion)e(3.5.4)h([Command)e(Substitution],)g(page)h(35\).)225
+2089 y Fq(\017)60 b Fu(Bash)31 b(has)f(pro)s(cess)g(substitution)g
+(\(see)h(Section)g(3.5.6)h([Pro)s(cess)f(Substitution],)f(page)h(36\).)
+225 2228 y Fq(\017)60 b Fu(Bash)55 b(automatically)j(assigns)e(v)-5
+b(ariables)55 b(that)h(pro)m(vide)f(information)h(ab)s(out)f(the)g
+(curren)m(t)330 2337 y(user)40 b(\()p Ft(UID)p Fu(,)i
+Ft(EUID)p Fu(,)g(and)e Ft(GROUPS)p Fu(\),)h(the)g(curren)m(t)f(host)g
+(\()p Ft(HOSTTYPE)p Fu(,)h Ft(OSTYPE)p Fu(,)h Ft(MACHTYPE)p
+Fu(,)f(and)330 2447 y Ft(HOSTNAME)p Fu(\),)55 b(and)c(the)g(instance)h
+(of)g(Bash)f(that)h(is)f(running)f(\()p Ft(BASH)p Fu(,)56
+b Ft(BASH_VERSION)p Fu(,)e(and)330 2556 y Ft(BASH_VERSINFO)p
+Fu(\).)37 b(See)31 b(Section)g(5.2)h([Bash)e(V)-8 b(ariables],)33
+b(page)e(86,)g(for)f(details.)225 2695 y Fq(\017)60 b
+Fu(Bash)37 b(uses)f(man)m(y)g(v)-5 b(ariables)37 b(to)g(pro)m(vide)g
+(functionalit)m(y)h(and)d(customize)j(shell)f(b)s(eha)m(vior)f(that)330
+2805 y(the)55 b(Bourne)g(shell)g(do)s(es)f(not.)114 b(Examples)55
+b(include)f Ft(RANDOM)p Fu(,)60 b Ft(SRANDOM)p Fu(,)f
+Ft(EPOCHSECONDS)p Fu(,)330 2914 y Ft(EPOCHREALTIME)p
+Fu(,)49 b Ft(TIMEFORMAT)p Fu(,)h Ft(BASHPID)p Fu(,)h
+Ft(BASH_XTRACEFD)p Fu(,)e Ft(GLOBIGNORE)p Fu(,)g Ft(HISTIGNORE)p
+Fu(,)330 3024 y(and)30 b Ft(BASH_VERSION)p Fu(.)37 b(See)31
+b(Section)g(5.2)g([Bash)g(V)-8 b(ariables],)32 b(page)g(86,)f(for)f(a)h
+(complete)h(list.)225 3163 y Fq(\017)60 b Fu(Bash)38
+b(uses)g(the)g Ft(GLOBSORT)d Fu(shell)j(v)-5 b(ariable)39
+b(to)g(con)m(trol)g(ho)m(w)f(to)h(sort)f(the)g(results)g(of)g
+(\014lename)330 3272 y(expansion)30 b(\(see)i(Section)f(3.5.8)h
+([Filename)g(Expansion],)e(page)h(37\).)225 3411 y Fq(\017)60
+b Fu(Bash)38 b(uses)g(the)g Ft(IFS)g Fu(v)-5 b(ariable)39
+b(to)f(split)h(only)f(the)g(results)g(of)h(expansion,)h(not)e(all)h(w)m
+(ords)f(\(see)330 3521 y(Section)29 b(3.5.7)h([W)-8 b(ord)29
+b(Splitting],)h(page)f(37\).)41 b(This)28 b(closes)h(a)g(longstanding)g
+(shell)f(securit)m(y)h(hole.)225 3660 y Fq(\017)60 b
+Fu(The)36 b(\014lename)h(expansion)f(brac)m(k)m(et)i(expression)f(co)s
+(de)f(uses)g(`)p Ft(!)p Fu(')h(and)f(`)p Ft(^)p Fu(')h(to)g(negate)h
+(the)f(set)g(of)330 3769 y(c)m(haracters)25 b(b)s(et)m(w)m(een)f(the)g
+(brac)m(k)m(ets)i(\(see)e(Section)h(3.5.8)g([Filename)g(Expansion],)g
+(page)g(37\).)39 b(The)330 3879 y(Bourne)30 b(shell)h(uses)f(only)g(`)p
+Ft(!)p Fu('.)225 4018 y Fq(\017)60 b Fu(Bash)38 b(implemen)m(ts)g(the)g
+(full)g(set)g(of)g Fm(posix)f Fu(\014lename)h(expansion)g(op)s
+(erators,)i(including)d(c)m(har-)330 4127 y(acter)j(classes,)i(equiv)-5
+b(alence)39 b(classes,)j(and)c(collating)j(sym)m(b)s(ols)d(\(see)i
+(Section)f(3.5.8)h([Filename)330 4237 y(Expansion],)30
+b(page)h(37\).)225 4376 y Fq(\017)60 b Fu(Bash)35 b(implemen)m(ts)g
+(extended)g(pattern)g(matc)m(hing)h(features)f(when)f(the)h
+Ft(extglob)d Fu(shell)j(option)330 4485 y(is)30 b(enabled)h(\(see)g
+(Section)g(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(38\).)225
+4624 y Fq(\017)60 b Fu(The)45 b Ft(globstar)e Fu(shell)i(option)h
+(extends)f(\014lename)g(expansion)g(to)h(recursiv)m(ely)g(scan)g
+(directo-)330 4734 y(ries)30 b(and)f(sub)s(directories)h(for)f(matc)m
+(hing)i(\014lenames)f(\(see)h(Section)g(3.5.8.1)i([P)m(attern)e(Matc)m
+(hing],)330 4843 y(page)g(38\).)225 4982 y Fq(\017)60
+b Fu(It)22 b(is)g(p)s(ossible)g(to)h(ha)m(v)m(e)g(a)f(v)-5
+b(ariable)23 b(and)f(a)g(function)g(with)g(the)g(same)g(name;)j
+Ft(sh)d Fu(do)s(es)g(not)g(separate)330 5092 y(the)31
+b(t)m(w)m(o)g(name)g(spaces.)225 5230 y Fq(\017)60 b
+Fu(Bash)30 b(functions)e(are)i(p)s(ermitted)f(to)h(ha)m(v)m(e)h(lo)s
+(cal)g(v)-5 b(ariables)30 b(using)f(the)g Ft(local)f
+Fu(builtin,)i(and)e(th)m(us)330 5340 y(users)i(can)g(write)h(useful)e
+(recursiv)m(e)i(functions)f(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)
+g(page)g(60\).)p eop end
+%%Page: 186 192
+TeXDict begin 186 191 bop 150 -116 a Fu(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(186)225 299 y Fq(\017)60
+b Fu(Bash)44 b(p)s(erforms)e(\014lename)i(expansion)f(on)h(\014lenames)
+g(sp)s(eci\014ed)f(as)h(op)s(erands)e(to)j(input)e(and)330
+408 y(output)30 b(redirection)h(op)s(erators)g(\(see)g(Section)g(3.6)h
+([Redirections],)g(page)f(40\).)225 545 y Fq(\017)60
+b Fu(Bash)29 b(con)m(tains)h(the)f(`)p Ft(<>)p Fu(')f(redirection)i(op)
+s(erator,)f(allo)m(wing)i(a)e(\014le)g(to)g(b)s(e)f(op)s(ened)g(for)h
+(b)s(oth)f(read-)330 655 y(ing)35 b(and)f(writing,)i(and)e(the)h(`)p
+Ft(&>)p Fu(')g(redirection)g(op)s(erator,)h(for)f(directing)g(standard)
+f(output)h(and)330 765 y(standard)30 b(error)g(to)h(the)f(same)h
+(\014le)f(\(see)i(Section)f(3.6)g([Redirections],)h(page)g(40\).)225
+902 y Fq(\017)60 b Fu(Bash)21 b(includes)f(the)h(`)p
+Ft(<<<)p Fu(')g(redirection)g(op)s(erator,)i(allo)m(wing)g(a)e(string)f
+(to)i(b)s(e)e(used)g(as)h(the)g(standard)330 1011 y(input)29
+b(to)j(a)e(command)g(\(see)i(Section)f(3.6)g([Redirections],)h(page)g
+(40\).)225 1148 y Fq(\017)60 b Fu(Bash)32 b(implemen)m(ts)f(the)h(`)p
+Ft([n]<&)p Fj(word)p Fu(')d(and)i(`)p Ft([n]>&)p Fj(word)p
+Fu(')e(redirection)j(op)s(erators,)g(whic)m(h)f(mo)m(v)m(e)330
+1258 y(one)g(\014le)f(descriptor)g(to)h(another.)225
+1395 y Fq(\017)60 b Fu(Bash)25 b(treats)h(a)f(n)m(um)m(b)s(er)e(of)i
+(\014lenames)g(sp)s(ecially)g(when)f(they)h(are)g(used)f(in)g
+(redirection)i(op)s(erators)330 1504 y(\(see)31 b(Section)h(3.6)f
+([Redirections],)h(page)f(40\).)225 1641 y Fq(\017)60
+b Fu(Bash)32 b(pro)m(vides)h(the)f Fi({)p Fr(v)-5 b(ar)7
+b Fi(})p Ft(<)p Fr(w)m(ord)36 b Fu(capabilit)m(y)e(to)f(ha)m(v)m(e)h
+(the)e(shell)h(allo)s(cate)i(\014le)d(descriptors)g(for)330
+1751 y(redirections)42 b(and)e(assign)i(them)f(to)h Fr(v)-5
+b(ar)47 b Fu(\(see)42 b(Section)g(3.6)g([Redirections],)k(page)c(40\).)
+74 b(This)330 1861 y(w)m(orks)30 b(with)g(m)m(ultiple)h(redirection)h
+(op)s(erators.)225 1998 y Fq(\017)60 b Fu(Bash)33 b(can)f(op)s(en)g
+(net)m(w)m(ork)i(connections)f(to)h(arbitrary)e(mac)m(hines)h(and)f
+(services)h(with)f(the)h(redi-)330 2107 y(rection)e(op)s(erators)g
+(\(see)g(Section)g(3.6)h([Redirections],)g(page)f(40\).)225
+2244 y Fq(\017)60 b Fu(The)29 b Ft(noclobber)e Fu(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 2354 y(rection)39
+b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(72\).)66
+b(The)38 b(`)p Ft(>|)p Fu(')h(redirection)g(op)s(erator)330
+2463 y(ma)m(y)31 b(b)s(e)f(used)f(to)i(o)m(v)m(erride)h
+Ft(noclobber)p Fu(.)225 2600 y Fq(\017)60 b Fu(V)-8 b(ariable)25
+b(assignmen)m(ts)g(preceding)e(commands)h(a\013ect)h(only)f(that)g
+(command,)h(ev)m(en)f(builtins)g(and)330 2710 y(functions)36
+b(\(see)h(Section)g(3.7.4)h([En)m(vironmen)m(t],)h(page)e(46\).)60
+b(In)35 b Ft(sh)p Fu(,)j(all)f(v)-5 b(ariable)37 b(assignmen)m(ts)330
+2819 y(preceding)30 b(commands)g(are)h(global)h(unless)d(the)i(command)
+f(is)h(executed)g(from)f(the)g(\014le)h(system.)225 2956
+y Fq(\017)60 b Fu(Bash)37 b(includes)g(a)h(n)m(um)m(b)s(er)e(of)h
+(features)h(to)g(supp)s(ort)d(a)j(separate)g(debugger)f(for)g(shell)h
+(scripts:)330 3066 y(v)-5 b(ariables)41 b(\()p Ft(BASH_ARGC)p
+Fu(,)f Ft(BASH_ARGV)p Fu(,)g Ft(BASH_LINENO)p Fu(,)f
+Ft(BASH_SOURCE)p Fu(\),)h(the)g Ft(DEBUG)p Fu(,)h Ft(RETURN)p
+Fu(,)330 3176 y(and)30 b Ft(ERR)f Fu(traps,)i(`)p Ft(declare)d(-F)p
+Fu(',)i(and)g(the)h Ft(caller)d Fu(builtin.)225 3313
+y Fq(\017)60 b Fu(Bash)34 b(implemen)m(ts)h(a)g Ft(csh)p
+Fu(-lik)m(e)g(directory)f(stac)m(k,)j(and)d(pro)m(vides)g(the)g
+Ft(pushd)p Fu(,)g Ft(popd)p Fu(,)g(and)g Ft(dirs)330
+3422 y Fu(builtins)d(to)i(manipulate)f(it)h(\(see)g(Section)f(6.8)h
+([The)f(Directory)h(Stac)m(k],)h(page)f(111\).)47 b(Bash)32
+b(also)330 3532 y(mak)m(es)f(the)g(directory)g(stac)m(k)g(visible)g(as)
+g(the)f(v)-5 b(alue)31 b(of)g(the)f Ft(DIRSTACK)f Fu(shell)h(v)-5
+b(ariable.)225 3669 y Fq(\017)60 b Fu(Bash)25 b(allo)m(ws)h(a)g
+(function)e(to)i(o)m(v)m(erride)g(a)g(builtin)e(with)h(the)g(same)g
+(name,)i(and)d(pro)m(vides)h(access)h(to)330 3778 y(that)34
+b(builtin's)f(functionalit)m(y)h(within)f(the)g(function)g(via)h(the)f
+Ft(builtin)f Fu(and)g Ft(command)g Fu(builtins)330 3888
+y(\(see)f(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(60\).)225
+4025 y Fq(\017)60 b Fu(Bash)44 b(includes)f(the)g Ft(caller)f
+Fu(builtin)h(\(see)h(Section)g(4.2)h([Bash)f(Builtins],)j(page)d(60\),)
+k(whic)m(h)330 4134 y(displa)m(ys)29 b(the)g(con)m(text)i(of)e(an)m(y)g
+(activ)m(e)i(subroutine)d(call)j(\(a)e(shell)g(function)g(or)g(a)g
+(script)g(executed)330 4244 y(with)h(the)h Ft(.)f Fu(or)g
+Ft(source)f Fu(builtins\).)40 b(This)30 b(supp)s(orts)e(the)j(Bash)f
+(debugger.)225 4381 y Fq(\017)60 b Fu(The)34 b(Bash)g
+Ft(cd)g Fu(and)f Ft(pwd)g Fu(builtins)h(\(see)h(Section)g(4.1)g
+([Bourne)g(Shell)f(Builtins],)h(page)g(51\))h(eac)m(h)330
+4491 y(tak)m(e)c Ft(-L)e Fu(and)f Ft(-P)h Fu(options)h(to)g(switc)m(h)g
+(b)s(et)m(w)m(een)g(logical)i(and)c(ph)m(ysical)i(mo)s(des.)225
+4628 y Fq(\017)60 b Fu(The)32 b Ft(command)e Fu(builtin)h(allo)m(ws)j
+(selectiv)m(ely)h(skipping)c(shell)h(functions)g(when)f(p)s(erforming)g
+(com-)330 4737 y(mand)f(lo)s(okup)g(\(see)h(Section)g(4.2)g([Bash)g
+(Builtins],)g(page)h(60\).)225 4874 y Fq(\017)60 b Fu(Bash)25
+b(uses)f(the)h Ft(declare)e Fu(builtin)h(to)h(mo)s(dify)f(the)h(full)f
+(set)h(of)g(v)-5 b(ariable)26 b(and)e(function)g(attributes,)330
+4984 y(and)30 b(to)h(assign)g(v)-5 b(alues)30 b(to)h(v)-5
+b(ariables.)225 5121 y Fq(\017)60 b Fu(The)30 b Ft(disown)f
+Fu(builtin)h(can)h(remo)m(v)m(e)h(a)f(job)f(from)g(the)h(in)m(ternal)g
+(shell)g(job)f(table)i(\(see)f(Section)h(7.2)330 5230
+y([Job)i(Con)m(trol)g(Builtins],)i(page)e(124\))i(or)d(suppress)f
+(sending)i Ft(SIGHUP)e Fu(to)i(a)g(job)g(when)f(the)h(shell)330
+5340 y(exits)d(as)g(the)f(result)h(of)f(a)h Ft(SIGHUP)p
+Fu(.)p eop end
+%%Page: 187 193
+TeXDict begin 187 192 bop 150 -116 a Fu(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(187)225 299 y Fq(\017)60
+b Fu(The)40 b Ft(enable)e Fu(builtin)i(\(see)h(Section)g(4.2)g([Bash)f
+(Builtins],)k(page)c(60\))i(can)e(enable)h(or)f(disable)330
+408 y(individual)28 b(builtins)h(and)f(implemen)m(ts)i(supp)s(ort)d
+(for)i(dynamically)h(loading)g(builtin)e(commands)330
+518 y(from)i(shared)g(ob)5 b(jects.)225 661 y Fq(\017)60
+b Fu(The)26 b(Bash)h Ft(exec)e Fu(builtin)h(tak)m(es)i(additional)f
+(options)g(that)g(allo)m(w)h(users)d(to)j(con)m(trol)g(the)e(con)m(ten)
+m(ts)330 771 y(of)35 b(the)f(en)m(vironmen)m(t)h(passed)f(to)h(the)g
+(executed)g(command,)h(and)d(what)i(the)f(zeroth)h(argumen)m(t)330
+881 y(to)c(the)g(command)f(is)g(to)h(b)s(e)f(\(see)h(Section)h(4.1)f
+([Bourne)f(Shell)h(Builtins],)g(page)g(51\).)225 1024
+y Fq(\017)60 b Fu(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
+Ft(export)f(-f)h Fu(\(see)330 1133 y(Section)i(3.3)h([Shell)e(F)-8
+b(unctions],)32 b(page)f(19\).)225 1277 y Fq(\017)60
+b Fu(The)48 b(Bash)g Ft(export)f Fu(and)h Ft(readonly)e
+Fu(builtins)i(\(see)h(Section)g(4.1)h([Bourne)e(Shell)g(Builtins],)330
+1386 y(page)28 b(51,)h(can)f(tak)m(e)h(a)e Ft(-f)g Fu(option)h(to)g
+(act)g(on)f(shell)h(functions,)g(a)f Ft(-p)g Fu(option)h(to)g(displa)m
+(y)f(v)-5 b(ariables)330 1496 y(with)23 b(v)-5 b(arious)24
+b(attributes)g(set)g(in)f(a)h(format)g(that)g(can)g(b)s(e)f(used)g(as)h
+(shell)f(input,)i(a)e Ft(-n)g Fu(option)h(to)h(re-)330
+1606 y(mo)m(v)m(e)f(v)-5 b(arious)23 b(v)-5 b(ariable)24
+b(attributes,)h(and)d(`)p Ft(name=value)p Fu(')f(argumen)m(ts)i(to)g
+(set)h(v)-5 b(ariable)23 b(attributes)330 1715 y(and)30
+b(v)-5 b(alues)30 b(sim)m(ultaneously)-8 b(.)225 1858
+y Fq(\017)60 b Fu(The)42 b(Bash)h Ft(hash)f Fu(builtin)g(allo)m(ws)j(a)
+e(name)g(to)g(b)s(e)f(asso)s(ciated)j(with)d(an)h(arbitrary)f
+(\014lename,)330 1968 y(ev)m(en)30 b(when)e(that)h(\014lename)g(cannot)
+h(b)s(e)e(found)g(b)m(y)h(searc)m(hing)g(the)g Ft($PATH)p
+Fu(,)g(using)f(`)p Ft(hash)h(-p)p Fu(')g(\(see)330 2078
+y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(51\).)225
+2221 y Fq(\017)60 b Fu(Bash)27 b(includes)f(a)i Ft(help)d
+Fu(builtin)i(for)f(quic)m(k)h(reference)h(to)f(shell)g(facilities)i
+(\(see)f(Section)g(4.2)g([Bash)330 2330 y(Builtins],)j(page)g(60\).)225
+2474 y Fq(\017)60 b Fu(Bash)27 b(includes)f(the)h Ft(mapfile)e
+Fu(builtin)i(to)g(quic)m(kly)h(read)e(the)h(con)m(ten)m(ts)i(of)e(a)g
+(\014le)g(in)m(to)h(an)e(indexed)330 2583 y(arra)m(y)31
+b(v)-5 b(ariable)31 b(\(see)g(Section)h(4.2)f([Bash)g(Builtins],)g
+(page)g(60\).)225 2727 y Fq(\017)60 b Fu(The)42 b Ft(printf)g
+Fu(builtin)g(is)h(a)m(v)-5 b(ailable)45 b(to)f(displa)m(y)f(formatted)g
+(output)g(\(see)h(Section)g(4.2)g([Bash)330 2836 y(Builtins],)27
+b(page)f(60\),)h(and)e(has)f(additional)i(custom)g(format)f(sp)s
+(eci\014ers)f(and)h(an)f(option)i(to)g(assign)330 2946
+y(the)31 b(formatted)g(output)f(directly)h(to)g(a)f(shell)h(v)-5
+b(ariable.)225 3089 y Fq(\017)60 b Fu(The)26 b(Bash)h
+Ft(read)f Fu(builtin)g(\(see)i(Section)g(4.2)g([Bash)f(Builtins],)h
+(page)g(60\))g(will)f(read)g(a)g(line)g(ending)330 3199
+y(in)i(`)p Ft(\\)p Fu(')h(with)f(the)g Ft(-r)g Fu(option,)i(and)d(will)
+i(use)f(the)h Ft(REPLY)e Fu(v)-5 b(ariable)30 b(as)g(a)f(default)h(if)f
+(no)h(non-option)330 3308 y(argumen)m(ts)h(are)f(supplied.)225
+3452 y Fq(\017)60 b Fu(The)38 b Ft(read)g Fu(builtin)g(\(see)i(Section)
+g(4.2)g([Bash)f(Builtins],)j(page)e(60\))g(accepts)g(a)f(prompt)f
+(string)330 3561 y(with)d(the)g Ft(-p)g Fu(option)g(and)g(will)g(use)g
+(Readline)h(to)g(obtain)f(the)h(line)f(when)f(giv)m(en)j(the)e
+Ft(-e)f Fu(or)i Ft(-E)330 3671 y Fu(options,)42 b(with)c(the)h(abilit)m
+(y)i(to)e(insert)g(text)h(in)m(to)g(the)f(line)g(using)g(the)g
+Ft(-i)f Fu(option.)67 b(The)38 b Ft(read)330 3780 y Fu(builtin)28
+b(also)i(has)e(additional)i(options)f(to)g(con)m(trol)h(input:)39
+b(the)29 b Ft(-s)f Fu(option)h(will)g(turn)e(o\013)j(ec)m(hoing)330
+3890 y(of)f(input)f(c)m(haracters)j(as)e(they)g(are)h(read,)f(the)g
+Ft(-t)g Fu(option)g(will)h(allo)m(w)g Ft(read)e Fu(to)i(time)g(out)f
+(if)g(input)330 4000 y(do)s(es)i(not)h(arriv)m(e)g(within)f(a)h(sp)s
+(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(seconds,)g(the)f
+Ft(-n)g Fu(option)h(will)g(allo)m(w)h(reading)330 4109
+y(only)38 b(a)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(c)m(haracters)h
+(rather)e(than)g(a)h(full)g(line,)i(and)d(the)h Ft(-d)f
+Fu(option)h(will)330 4219 y(read)30 b(un)m(til)h(a)g(particular)f(c)m
+(haracter)i(rather)f(than)f(newline.)225 4362 y Fq(\017)60
+b Fu(The)33 b Ft(return)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)f(to)i(ab)
+s(ort)f(execution)h(of)f(scripts)g(executed)h(with)f(the)g
+Ft(.)g Fu(or)330 4472 y Ft(source)c Fu(builtins)g(\(see)j(Section)f
+(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(51\).)225
+4615 y Fq(\017)60 b Fu(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 Ft(set)g
+Fu(builtin)g(\(see)h(Sec-)330 4725 y(tion)31 b(4.3.1)h([The)e(Set)h
+(Builtin],)g(page)g(72\).)225 4868 y Fq(\017)60 b Fu(The)36
+b Ft(-x)f Fu(\()p Ft(xtrace)p Fu(\))g(option)i(displa)m(ys)f(commands)g
+(other)g(than)g(simple)g(commands)g(when)f(p)s(er-)330
+4977 y(forming)30 b(an)g(execution)i(trace)f(\(see)h(Section)f(4.3.1)h
+([The)e(Set)h(Builtin],)g(page)g(72\).)225 5121 y Fq(\017)60
+b Fu(Bash)43 b(includes)g(the)g Ft(shopt)f Fu(builtin,)k(for)d(\014ner)
+f(con)m(trol)j(of)e(shell)h(optional)g(capabilities)h(\(see)330
+5230 y(Section)c(4.3.2)g([The)f(Shopt)f(Builtin],)k(page)d(77\),)k(and)
+39 b(allo)m(ws)i(these)f(options)h(to)f(b)s(e)f(set)i(and)330
+5340 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(99\).)p eop
+end
+%%Page: 188 194
+TeXDict begin 188 193 bop 150 -116 a Fu(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(188)225 299 y Fq(\017)60
+b Fu(The)28 b Ft(test)g Fu(builtin)h(\(see)h(Section)f(4.1)h([Bourne)f
+(Shell)g(Builtins],)h(page)g(51\))g(is)f(sligh)m(tly)h(di\013eren)m(t,)
+330 408 y(as)23 b(it)g(implemen)m(ts)f(the)h Fm(posix)f
+Fu(algorithm,)j(whic)m(h)d(sp)s(eci\014es)g(the)h(b)s(eha)m(vior)f
+(based)g(on)h(the)f(n)m(um)m(b)s(er)330 518 y(of)31 b(argumen)m(ts.)225
+646 y Fq(\017)60 b Fu(The)42 b Ft(trap)f Fu(builtin)h(\(see)i(Section)f
+(4.1)h([Bourne)e(Shell)g(Builtins],)47 b(page)c(51\))h(allo)m(ws)g(a)e
+Ft(DEBUG)330 755 y Fu(pseudo-signal)c(sp)s(eci\014cation,)i(similar)e
+(to)g Ft(EXIT)p Fu(.)62 b(Commands)36 b(sp)s(eci\014ed)h(with)g(a)h
+Ft(DEBUG)e Fu(trap)330 865 y(are)k(executed)g(b)s(efore)f(ev)m(ery)h
+(simple)f(command,)j Ft(for)c Fu(command,)k Ft(case)c
+Fu(command,)k Ft(select)330 974 y Fu(command,)35 b(ev)m(ery)g
+(arithmetic)g Ft(for)e Fu(command,)i(and)f(b)s(efore)g(the)g(\014rst)f
+(command)h(executes)h(in)330 1084 y(a)29 b(shell)g(function.)40
+b(The)28 b Ft(DEBUG)g Fu(trap)g(is)h(not)g(inherited)f(b)m(y)h(shell)g
+(functions)f(unless)g(the)h(function)330 1194 y(has)35
+b(b)s(een)g(giv)m(en)i(the)f Ft(trace)e Fu(attribute)i(or)g(the)g
+Ft(functrace)d Fu(option)j(has)f(b)s(een)g(enabled)g(using)330
+1303 y(the)28 b Ft(shopt)e Fu(builtin.)39 b(The)27 b
+Ft(extdebug)f Fu(shell)i(option)g(has)f(additional)h(e\013ects)h(on)f
+(the)g Ft(DEBUG)e Fu(trap.)330 1431 y(The)21 b Ft(trap)e
+Fu(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j
+(page)e(51\))g(allo)m(ws)g(an)f Ft(ERR)f Fu(pseudo-)330
+1540 y(signal)30 b(sp)s(eci\014cation,)h(similar)f(to)g
+Ft(EXIT)f Fu(and)g Ft(DEBUG)p Fu(.)39 b(Commands)28 b(sp)s(eci\014ed)h
+(with)g(an)g Ft(ERR)g Fu(trap)330 1650 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 Ft(ERR)g Fu(trap)g(is)330 1760 y(not)g(inherited)f(b)m(y)h
+(shell)g(functions)f(unless)g(the)h Ft(-o)29 b(errtrace)37
+b Fu(option)i(to)g(the)g Ft(set)f Fu(builtin)g(is)330
+1869 y(enabled.)330 1997 y(The)g Ft(trap)g Fu(builtin)h(\(see)g
+(Section)h(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(51\))g(allo)m
+(ws)g(a)g Ft(RETURN)330 2107 y Fu(pseudo-signal)f(sp)s(eci\014cation,)k
+(similar)d(to)g Ft(EXIT)e Fu(and)g Ft(DEBUG)p Fu(.)66
+b(Commands)38 b(sp)s(eci\014ed)h(with)g(a)330 2216 y
+Ft(RETURN)g Fu(trap)i(are)g(executed)h(b)s(efore)e(execution)i(resumes)
+e(after)h(a)g(shell)g(function)g(or)g(a)g(shell)330 2326
+y(script)36 b(executed)g(with)g Ft(.)f Fu(or)h Ft(source)e
+Fu(returns.)56 b(The)35 b Ft(RETURN)f Fu(trap)i(is)g(not)g(inherited)f
+(b)m(y)h(shell)330 2435 y(functions)k(unless)h(the)g(function)f(has)h
+(b)s(een)f(giv)m(en)i(the)f Ft(trace)e Fu(attribute)j(or)e(the)h
+Ft(functrace)330 2545 y Fu(option)31 b(has)f(b)s(een)g(enabled)g(using)
+g(the)g Ft(shopt)f Fu(builtin.)225 2673 y Fq(\017)60
+b Fu(The)30 b(Bash)g Ft(type)f Fu(builtin)h(is)g(more)g(extensiv)m(e)i
+(and)d(giv)m(es)j(more)e(information)h(ab)s(out)f(the)g(names)330
+2782 y(it)h(\014nds)e(\(see)i(Section)g(4.2)h([Bash)e(Builtins],)i
+(page)f(60\).)225 2910 y Fq(\017)60 b Fu(The)37 b Ft(ulimit)f
+Fu(builtin)h(pro)m(vides)g(con)m(trol)i(o)m(v)m(er)g(man)m(y)e(more)h
+(p)s(er-pro)s(cess)e(resources)i(\(see)g(Sec-)330 3019
+y(tion)31 b(4.2)g([Bash)g(Builtins],)g(page)g(60\).)225
+3147 y Fq(\017)60 b Fu(The)41 b(Bash)i Ft(umask)d Fu(builtin)i(uses)f
+(the)h Ft(-p)g Fu(option)g(to)h(displa)m(y)f(the)g(output)g(in)g(the)g
+(form)f(of)i(a)330 3257 y Ft(umask)29 b Fu(command)i(that)h(ma)m(y)f(b)
+s(e)f(reused)h(as)g(input)f(\(see)i(Section)f(4.1)h([Bourne)f(Shell)g
+(Builtins],)330 3366 y(page)g(51\).)225 3494 y Fq(\017)60
+b Fu(The)41 b(Bash)h Ft(wait)e Fu(builtin)h(has)g(a)h
+Ft(-n)f Fu(option)h(to)g(w)m(ait)h(for)e(the)h(next)f(c)m(hild)h(to)g
+(exit,)k(p)s(ossibly)330 3603 y(selecting)36 b(from)d(a)i(list)g(of)f
+(supplied)f(jobs,)h(and)g(the)g Ft(-p)f Fu(option)i(to)g(store)f
+(information)h(ab)s(out)f(a)330 3713 y(terminated)d(c)m(hild)g(pro)s
+(cess)f(in)g(a)g(shell)h(v)-5 b(ariable.)225 3841 y Fq(\017)60
+b Fu(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 Ft(jsh)g Fu(\(it)h(turns)e(on)h(job)g
+(con)m(trol\).)225 3968 y Fq(\017)60 b Fu(The)28 b(SVR4.2)h(shell)f
+(has)g(t)m(w)m(o)i(privilege-related)g(builtins)e(\()p
+Ft(mldmode)e Fu(and)i Ft(priv)p Fu(\))f(not)i(presen)m(t)f(in)330
+4078 y(Bash.)225 4206 y Fq(\017)60 b Fu(Bash)31 b(do)s(es)f(not)g(ha)m
+(v)m(e)i(the)e Ft(stop)g Fu(or)g Ft(newgrp)f Fu(builtins.)225
+4333 y Fq(\017)60 b Fu(Bash)31 b(do)s(es)f(not)g(use)g(the)h
+Ft(SHACCT)d Fu(v)-5 b(ariable)32 b(or)e(p)s(erform)f(shell)i(accoun)m
+(ting.)225 4461 y Fq(\017)60 b Fu(The)30 b(SVR4.2)h Ft(sh)f
+Fu(uses)g(a)g Ft(TIMEOUT)f Fu(v)-5 b(ariable)31 b(lik)m(e)h(Bash)e
+(uses)g Ft(TMOUT)p Fu(.)150 4607 y(More)h(features)g(unique)e(to)i
+(Bash)g(ma)m(y)g(b)s(e)f(found)f(in)h(Chapter)f(6)i([Bash)g(F)-8
+b(eatures],)32 b(page)f(99.)150 4834 y Fs(B.1)67 b(Implemen)l(tation)48
+b(Di\013erences)e(F)-11 b(rom)44 b(The)h(SVR4.2)g(Shell)150
+4993 y Fu(Since)33 b(Bash)h(is)f(a)g(completely)i(new)e(implemen)m
+(tation,)j(it)e(do)s(es)e(not)i(su\013er)e(from)h(man)m(y)g(of)h(the)f
+(limi-)150 5103 y(tations)f(of)e(the)h(SVR4.2)g(shell.)41
+b(F)-8 b(or)31 b(instance:)225 5230 y Fq(\017)60 b Fu(Bash)32
+b(do)s(es)f(not)h(fork)f(a)h(subshell)e(when)h(redirecting)h(in)m(to)h
+(or)e(out)h(of)g(a)g(shell)f(con)m(trol)i(structure)330
+5340 y(suc)m(h)d(as)h(an)f Ft(if)g Fu(or)g Ft(while)f
+Fu(statemen)m(t.)p eop end
+%%Page: 189 195
+TeXDict begin 189 194 bop 150 -116 a Fu(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(189)225 299 y Fq(\017)60
+b Fu(Bash)29 b(do)s(es)f(not)h(allo)m(w)h(un)m(balanced)f(quotes.)41
+b(The)28 b(SVR4.2)h(shell)g(will)g(silen)m(tly)i(insert)d(a)h(needed)
+330 408 y(closing)g(quote)g(at)f Ft(EOF)f Fu(under)g(certain)h
+(circumstances.)41 b(This)27 b(can)h(b)s(e)g(the)g(cause)g(of)g(some)h
+(hard-)330 518 y(to-\014nd)h(errors.)225 653 y Fq(\017)60
+b Fu(The)45 b(SVR4.2)h(shell)f(uses)g(a)g(baro)s(que)g(memory)g
+(managemen)m(t)i(sc)m(heme)e(based)g(on)g(trapping)330
+762 y Ft(SIGSEGV)p Fu(.)57 b(If)35 b(the)i(shell)f(is)h(started)g(from)
+e(a)i(pro)s(cess)f(with)g Ft(SIGSEGV)e Fu(blo)s(c)m(k)m(ed)k(\(e.g.,)h
+(b)m(y)d(using)330 872 y(the)31 b Ft(system\(\))d Fu(C)i(library)g
+(function)g(call\),)i(it)f(misb)s(eha)m(v)m(es)g(badly)-8
+b(.)225 1006 y Fq(\017)60 b Fu(In)30 b(a)i(questionable)g(attempt)g(at)
+g(securit)m(y)-8 b(,)33 b(the)e(SVR4.2)h(shell,)g(when)e(in)m(v)m(ok)m
+(ed)j(without)e(the)h Ft(-p)330 1116 y Fu(option,)39
+b(will)d(alter)i(its)e(real)h(and)f(e\013ectiv)m(e)j
+Fm(uid)d Fu(and)g Fm(gid)h Fu(if)f(they)h(are)f(less)h(than)f(some)h
+(magic)330 1225 y(threshold)30 b(v)-5 b(alue,)31 b(commonly)g(100.)42
+b(This)29 b(can)i(lead)g(to)g(unexp)s(ected)f(results.)225
+1360 y Fq(\017)60 b Fu(The)30 b(SVR4.2)h(shell)g(do)s(es)f(not)g(allo)m
+(w)i(users)e(to)h(trap)f Ft(SIGSEGV)p Fu(,)f Ft(SIGALRM)p
+Fu(,)f(or)j Ft(SIGCHLD)p Fu(.)225 1494 y Fq(\017)60 b
+Fu(The)34 b(SVR4.2)h(shell)g(do)s(es)g(not)f(allo)m(w)j(the)d
+Ft(IFS)p Fu(,)h Ft(MAILCHECK)p Fu(,)f Ft(PATH)p Fu(,)h
+Ft(PS1)p Fu(,)g(or)f Ft(PS2)g Fu(v)-5 b(ariables)35 b(to)330
+1604 y(b)s(e)30 b(unset.)225 1738 y Fq(\017)60 b Fu(The)30
+b(SVR4.2)h(shell)g(treats)g(`)p Ft(^)p Fu(')f(as)h(the)g(undo)s(cumen)m
+(ted)e(equiv)-5 b(alen)m(t)31 b(of)g(`)p Ft(|)p Fu('.)225
+1873 y Fq(\017)60 b Fu(Bash)37 b(allo)m(ws)h(m)m(ultiple)f(option)g
+(argumen)m(ts)g(when)e(it)i(is)g(in)m(v)m(ok)m(ed)h(\()p
+Ft(-x)30 b(-v)p Fu(\);)40 b(the)c(SVR4.2)i(shell)330
+1983 y(allo)m(ws)c(only)f(one)g(option)g(argumen)m(t)g(\()p
+Ft(-xv)p Fu(\).)47 b(In)32 b(fact,)i(some)f(v)m(ersions)g(of)g(the)g
+(shell)f(dump)f(core)330 2092 y(if)f(the)h(second)f(argumen)m(t)h(b)s
+(egins)f(with)g(a)h(`)p Ft(-)p Fu('.)225 2227 y Fq(\017)60
+b Fu(The)26 b(SVR4.2)i(shell)f(exits)g(a)g(script)g(if)g(an)m(y)g
+(builtin)f(fails;)j(Bash)e(exits)g(a)g(script)g(only)g(if)g(one)g(of)g
+(the)330 2336 y Fm(posix)34 b Fu(sp)s(ecial)h(builtins)f(fails,)i(and)e
+(only)h(for)f(certain)h(failures,)h(as)f(en)m(umerated)g(in)f(the)h
+Fm(posix)330 2446 y Fu(standard.)225 2580 y Fq(\017)60
+b Fu(If)38 b(the)g Ft(lastpipe)e Fu(option)j(is)f(enabled,)j(and)c(job)
+h(con)m(trol)i(is)e(not)h(activ)m(e,)k(Bash)38 b(runs)f(the)h(last)330
+2690 y(elemen)m(t)32 b(of)e(a)h(pip)s(eline)f(in)g(the)h(curren)m(t)f
+(shell)g(execution)i(en)m(vironmen)m(t.)p eop end
+%%Page: 190 196
+TeXDict begin 190 195 bop 3614 -116 a Fu(190)150 299
+y Fp(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13 b(ree)53
+b(Do)t(cumen)l(tation)e(License)1359 502 y Fu(V)-8 b(ersion)31
+b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390 635 y(Cop)m(yrigh)m(t)842
+632 y(c)817 635 y Fq(\015)e Fu(2000,)j(2001,)f(2002,)g(2007,)h(2008)f
+(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31
+b(Inc.)390 745 y Ft(http://fsf.org/)390 964 y Fu(Ev)m(ery)m(one)g(is)g
+(p)s(ermitted)f(to)h(cop)m(y)g(and)f(distribute)g(v)m(erbatim)h(copies)
+390 1074 y(of)g(this)f(license)h(do)s(cumen)m(t,)g(but)e(c)m(hanging)j
+(it)f(is)f(not)h(allo)m(w)m(ed.)199 1207 y(0.)61 b(PREAMBLE)330
+1340 y(The)37 b(purp)s(ose)e(of)i(this)g(License)h(is)f(to)h(mak)m(e)g
+(a)g(man)m(ual,)h(textb)s(o)s(ok,)h(or)d(other)g(functional)h(and)330
+1450 y(useful)29 b(do)s(cumen)m(t)h Fr(free)36 b Fu(in)29
+b(the)i(sense)f(of)g(freedom:)41 b(to)31 b(assure)e(ev)m(ery)m(one)j
+(the)e(e\013ectiv)m(e)j(freedom)330 1559 y(to)f(cop)m(y)g(and)f
+(redistribute)g(it,)h(with)g(or)f(without)g(mo)s(difying)g(it,)i
+(either)f(commercially)h(or)e(non-)330 1669 y(commercially)-8
+b(.)56 b(Secondarily)-8 b(,)36 b(this)f(License)g(preserv)m(es)g(for)f
+(the)h(author)f(and)g(publisher)f(a)i(w)m(a)m(y)330 1778
+y(to)i(get)g(credit)g(for)f(their)g(w)m(ork,)i(while)e(not)g(b)s(eing)g
+(considered)g(resp)s(onsible)f(for)h(mo)s(di\014cations)330
+1888 y(made)30 b(b)m(y)h(others.)330 2021 y(This)22 b(License)i(is)f(a)
+h(kind)e(of)i(\\cop)m(yleft",)j(whic)m(h)c(means)g(that)h(deriv)-5
+b(ativ)m(e)24 b(w)m(orks)f(of)h(the)f(do)s(cumen)m(t)330
+2131 y(m)m(ust)34 b(themselv)m(es)h(b)s(e)e(free)h(in)g(the)g(same)g
+(sense.)51 b(It)34 b(complemen)m(ts)h(the)f(GNU)g(General)h(Public)330
+2240 y(License,)c(whic)m(h)f(is)h(a)f(cop)m(yleft)i(license)g(designed)
+e(for)g(free)h(soft)m(w)m(are.)330 2373 y(W)-8 b(e)31
+b(ha)m(v)m(e)f(designed)g(this)f(License)h(in)f(order)g(to)i(use)e(it)h
+(for)f(man)m(uals)h(for)f(free)h(soft)m(w)m(are,)h(b)s(ecause)330
+2483 y(free)42 b(soft)m(w)m(are)i(needs)e(free)g(do)s(cumen)m(tation:)
+65 b(a)42 b(free)h(program)f(should)f(come)i(with)f(man)m(uals)330
+2592 y(pro)m(viding)29 b(the)g(same)g(freedoms)f(that)i(the)f(soft)m(w)
+m(are)h(do)s(es.)40 b(But)29 b(this)f(License)i(is)f(not)g(limited)g
+(to)330 2702 y(soft)m(w)m(are)j(man)m(uals;)f(it)g(can)g(b)s(e)f(used)g
+(for)g(an)m(y)h(textual)h(w)m(ork,)f(regardless)g(of)g(sub)5
+b(ject)30 b(matter)i(or)330 2812 y(whether)f(it)h(is)f(published)f(as)i
+(a)f(prin)m(ted)g(b)s(o)s(ok.)44 b(W)-8 b(e)32 b(recommend)f(this)h
+(License)g(principally)f(for)330 2921 y(w)m(orks)f(whose)h(purp)s(ose)d
+(is)j(instruction)f(or)g(reference.)199 3054 y(1.)61
+b(APPLICABILITY)29 b(AND)j(DEFINITIONS)330 3187 y(This)39
+b(License)i(applies)f(to)g(an)m(y)h(man)m(ual)f(or)g(other)g(w)m(ork,)i
+(in)e(an)m(y)g(medium,)i(that)e(con)m(tains)i(a)330 3297
+y(notice)h(placed)f(b)m(y)f(the)h(cop)m(yrigh)m(t)h(holder)e(sa)m(ying)
+h(it)g(can)g(b)s(e)f(distributed)f(under)g(the)i(terms)330
+3407 y(of)c(this)f(License.)62 b(Suc)m(h)37 b(a)h(notice)h(gran)m(ts)f
+(a)g(w)m(orld-wide,)h(ro)m(y)m(alt)m(y-free)i(license,)f(unlimited)d
+(in)330 3516 y(duration,)49 b(to)d(use)f(that)g(w)m(ork)h(under)d(the)j
+(conditions)f(stated)h(herein.)85 b(The)45 b(\\Do)s(cumen)m(t",)330
+3626 y(b)s(elo)m(w,)29 b(refers)f(to)h(an)m(y)g(suc)m(h)f(man)m(ual)h
+(or)f(w)m(ork.)40 b(An)m(y)29 b(mem)m(b)s(er)e(of)i(the)f(public)g(is)g
+(a)h(licensee,)i(and)330 3735 y(is)25 b(addressed)f(as)h(\\y)m(ou".)40
+b(Y)-8 b(ou)26 b(accept)g(the)f(license)h(if)f(y)m(ou)h(cop)m(y)-8
+b(,)27 b(mo)s(dify)d(or)h(distribute)g(the)g(w)m(ork)330
+3845 y(in)30 b(a)h(w)m(a)m(y)g(requiring)f(p)s(ermission)f(under)g(cop)
+m(yrigh)m(t)j(la)m(w.)330 3978 y(A)i(\\Mo)s(di\014ed)f(V)-8
+b(ersion")35 b(of)f(the)g(Do)s(cumen)m(t)g(means)g(an)m(y)g(w)m(ork)f
+(con)m(taining)j(the)e(Do)s(cumen)m(t)g(or)330 4088 y(a)k(p)s(ortion)f
+(of)h(it,)i(either)e(copied)g(v)m(erbatim,)i(or)d(with)h(mo)s
+(di\014cations)f(and/or)h(translated)g(in)m(to)330 4197
+y(another)31 b(language.)330 4330 y(A)26 b(\\Secondary)g(Section")h(is)
+f(a)h(named)e(app)s(endix)f(or)i(a)h(fron)m(t-matter)g(section)g(of)f
+(the)g(Do)s(cumen)m(t)330 4440 y(that)c(deals)g(exclusiv)m(ely)h(with)e
+(the)g(relationship)h(of)f(the)h(publishers)d(or)i(authors)g(of)h(the)f
+(Do)s(cumen)m(t)330 4549 y(to)38 b(the)f(Do)s(cumen)m(t's)i(o)m(v)m
+(erall)g(sub)5 b(ject)37 b(\(or)h(to)g(related)g(matters\))g(and)f(con)
+m(tains)h(nothing)f(that)330 4659 y(could)j(fall)h(directly)g(within)f
+(that)h(o)m(v)m(erall)i(sub)5 b(ject.)70 b(\(Th)m(us,)42
+b(if)e(the)h(Do)s(cumen)m(t)g(is)f(in)g(part)h(a)330
+4769 y(textb)s(o)s(ok)24 b(of)g(mathematics,)j(a)d(Secondary)f(Section)
+h(ma)m(y)g(not)g(explain)g(an)m(y)g(mathematics.\))40
+b(The)330 4878 y(relationship)28 b(could)f(b)s(e)g(a)g(matter)i(of)e
+(historical)i(connection)f(with)f(the)h(sub)5 b(ject)27
+b(or)g(with)g(related)330 4988 y(matters,)38 b(or)d(of)h(legal,)i
+(commercial,)h(philosophical,)f(ethical)f(or)e(p)s(olitical)i(p)s
+(osition)f(regarding)330 5097 y(them.)330 5230 y(The)25
+b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g
+(Sections)g(whose)f(titles)i(are)f(designated,)i(as)330
+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: 191 197
+TeXDict begin 191 196 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(191)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
+y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
+b(arian)m(t.)46 b(The)31 b(Do)s(cumen)m(t)i(ma)m(y)f(con)m(tain)i(zero)
+e(In)m(v)-5 b(arian)m(t)330 518 y(Sections.)39 b(If)25
+b(the)f(Do)s(cumen)m(t)i(do)s(es)e(not)h(iden)m(tify)g(an)m(y)g(In)m(v)
+-5 b(arian)m(t)25 b(Sections)h(then)e(there)h(are)g(none.)330
+669 y(The)36 b(\\Co)m(v)m(er)i(T)-8 b(exts")38 b(are)f(certain)g(short)
+g(passages)g(of)g(text)g(that)h(are)f(listed,)i(as)d(F)-8
+b(ron)m(t-Co)m(v)m(er)330 778 y(T)g(exts)26 b(or)f(Bac)m(k-Co)m(v)m(er)
+j(T)-8 b(exts,)27 b(in)d(the)h(notice)i(that)e(sa)m(ys)h(that)g(the)f
+(Do)s(cumen)m(t)h(is)f(released)g(under)330 888 y(this)h(License.)40
+b(A)25 b(F)-8 b(ron)m(t-Co)m(v)m(er)29 b(T)-8 b(ext)26
+b(ma)m(y)h(b)s(e)e(at)i(most)f(5)g(w)m(ords,)g(and)g(a)g(Bac)m(k-Co)m
+(v)m(er)j(T)-8 b(ext)26 b(ma)m(y)330 998 y(b)s(e)k(at)h(most)g(25)g(w)m
+(ords.)330 1148 y(A)36 b(\\T)-8 b(ransparen)m(t")36 b(cop)m(y)g(of)g
+(the)f(Do)s(cumen)m(t)h(means)g(a)g(mac)m(hine-readable)h(cop)m(y)-8
+b(,)38 b(represen)m(ted)330 1258 y(in)d(a)h(format)g(whose)g(sp)s
+(eci\014cation)g(is)g(a)m(v)-5 b(ailable)38 b(to)f(the)f(general)g
+(public,)h(that)f(is)g(suitable)g(for)330 1367 y(revising)c(the)g(do)s
+(cumen)m(t)f(straigh)m(tforw)m(ardly)i(with)e(generic)i(text)g(editors)
+f(or)f(\(for)h(images)h(com-)330 1477 y(p)s(osed)23 b(of)h(pixels\))g
+(generic)h(pain)m(t)f(programs)g(or)f(\(for)h(dra)m(wings\))g(some)g
+(widely)g(a)m(v)-5 b(ailable)26 b(dra)m(wing)330 1587
+y(editor,)k(and)f(that)g(is)g(suitable)h(for)f(input)f(to)i(text)g
+(formatters)f(or)g(for)g(automatic)i(translation)f(to)330
+1696 y(a)d(v)-5 b(ariet)m(y)28 b(of)f(formats)g(suitable)h(for)e(input)
+g(to)i(text)g(formatters.)40 b(A)27 b(cop)m(y)g(made)g(in)g(an)g
+(otherwise)330 1806 y(T)-8 b(ransparen)m(t)37 b(\014le)h(format)g
+(whose)f(markup,)i(or)e(absence)h(of)g(markup,)g(has)g(b)s(een)f
+(arranged)g(to)330 1915 y(th)m(w)m(art)27 b(or)g(discourage)g
+(subsequen)m(t)f(mo)s(di\014cation)h(b)m(y)g(readers)f(is)g(not)h(T)-8
+b(ransparen)m(t.)39 b(An)27 b(image)330 2025 y(format)35
+b(is)f(not)h(T)-8 b(ransparen)m(t)34 b(if)g(used)g(for)g(an)m(y)g
+(substan)m(tial)h(amoun)m(t)g(of)g(text.)53 b(A)35 b(cop)m(y)g(that)g
+(is)330 2134 y(not)c(\\T)-8 b(ransparen)m(t")31 b(is)f(called)i
+(\\Opaque".)330 2285 y(Examples)53 b(of)g(suitable)h(formats)f(for)g(T)
+-8 b(ransparen)m(t)53 b(copies)h(include)f(plain)g Fm(asci)r(i)g
+Fu(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
+(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
+Ff(SGML)f Fu(or)f Ff(XML)g Fu(using)g(a)g(publicly)330
+2504 y(a)m(v)-5 b(ailable)42 b Ff(DTD)p Fu(,)h(and)c
+(standard-conforming)g(simple)h Ff(HTML)p Fu(,)i(P)m(ostScript)e(or)f
+Ff(PDF)h Fu(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
+b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
+Ff(PNG)p Fu(,)i Ff(X)n(CF)330 2724 y Fu(and)e Ff(JPG)p
+Fu(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
+h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
+b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
+Ff(SGML)54 b Fu(or)f Ff(XML)h Fu(for)g(whic)m(h)f(the)h
+Ff(DTD)g Fu(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
+(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
+(hine-generated)j Ff(HTML)p Fu(,)330 3052 y(P)m(ostScript)31
+b(or)f Ff(PDF)h Fu(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
+(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
+3203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
+s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
+(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
+b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
+(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
+b(w)m(orks)e(in)g(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e
+(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
+3532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
+(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
+3641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
+3792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
+m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
+3902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
+(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
+(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
+(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
+(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
+b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
+(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
+(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
+(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
+y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
+(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
+4600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
+(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
+-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
+(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
+(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
+b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
+(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
+(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
+(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
+b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
+5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
+5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
+%%Page: 192 198
+TeXDict begin 192 197 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(192)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+(the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
+(or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
+b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
+(and)42 b(the)h(license)330 518 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)330 628 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
+737 y(tec)m(hnical)35 b(measures)d(to)i(obstruct)f(or)g(con)m(trol)h
+(the)f(reading)g(or)g(further)e(cop)m(ying)j(of)f(the)g(copies)330
+847 y(y)m(ou)25 b(mak)m(e)g(or)g(distribute.)38 b(Ho)m(w)m(ev)m(er,)28
+b(y)m(ou)d(ma)m(y)g(accept)h(comp)s(ensation)f(in)f(exc)m(hange)j(for)d
+(copies.)330 956 y(If)32 b(y)m(ou)g(distribute)g(a)h(large)g(enough)f
+(n)m(um)m(b)s(er)f(of)h(copies)h(y)m(ou)f(m)m(ust)h(also)g(follo)m(w)g
+(the)f(conditions)330 1066 y(in)e(section)i(3.)330 1200
+y(Y)-8 b(ou)21 b(ma)m(y)h(also)f(lend)g(copies,)i(under)d(the)h(same)g
+(conditions)g(stated)h(ab)s(o)m(v)m(e,)i(and)c(y)m(ou)h(ma)m(y)g
+(publicly)330 1310 y(displa)m(y)31 b(copies.)199 1443
+y(3.)61 b(COPYING)30 b(IN)g(QUANTITY)330 1577 y(If)25
+b(y)m(ou)g(publish)f(prin)m(ted)g(copies)i(\(or)g(copies)g(in)f(media)g
+(that)h(commonly)g(ha)m(v)m(e)g(prin)m(ted)f(co)m(v)m(ers\))i(of)330
+1687 y(the)32 b(Do)s(cumen)m(t,)h(n)m(um)m(b)s(ering)e(more)h(than)f
+(100,)j(and)d(the)h(Do)s(cumen)m(t's)h(license)f(notice)h(requires)330
+1797 y(Co)m(v)m(er)i(T)-8 b(exts,)36 b(y)m(ou)f(m)m(ust)f(enclose)i
+(the)e(copies)h(in)f(co)m(v)m(ers)i(that)f(carry)-8 b(,)36
+b(clearly)f(and)f(legibly)-8 b(,)37 b(all)330 1906 y(these)j(Co)m(v)m
+(er)g(T)-8 b(exts:)59 b(F)-8 b(ron)m(t-Co)m(v)m(er)41
+b(T)-8 b(exts)40 b(on)f(the)g(fron)m(t)g(co)m(v)m(er,)44
+b(and)38 b(Bac)m(k-Co)m(v)m(er)k(T)-8 b(exts)40 b(on)330
+2016 y(the)29 b(bac)m(k)h(co)m(v)m(er.)42 b(Both)30 b(co)m(v)m(ers)h(m)
+m(ust)e(also)h(clearly)g(and)f(legibly)h(iden)m(tify)f(y)m(ou)h(as)f
+(the)h(publisher)330 2125 y(of)k(these)h(copies.)53 b(The)34
+b(fron)m(t)h(co)m(v)m(er)h(m)m(ust)e(presen)m(t)g(the)h(full)f(title)i
+(with)d(all)j(w)m(ords)d(of)i(the)f(title)330 2235 y(equally)e
+(prominen)m(t)e(and)g(visible.)43 b(Y)-8 b(ou)31 b(ma)m(y)g(add)g
+(other)g(material)h(on)f(the)g(co)m(v)m(ers)h(in)e(addition.)330
+2345 y(Cop)m(ying)36 b(with)g(c)m(hanges)h(limited)g(to)g(the)g(co)m(v)
+m(ers,)i(as)d(long)h(as)g(they)f(preserv)m(e)g(the)h(title)g(of)g(the)
+330 2454 y(Do)s(cumen)m(t)h(and)e(satisfy)i(these)f(conditions,)j(can)d
+(b)s(e)g(treated)h(as)f(v)m(erbatim)h(cop)m(ying)g(in)f(other)330
+2564 y(resp)s(ects.)330 2698 y(If)32 b(the)h(required)f(texts)i(for)e
+(either)h(co)m(v)m(er)i(are)e(to)s(o)g(v)m(oluminous)g(to)g(\014t)g
+(legibly)-8 b(,)35 b(y)m(ou)e(should)f(put)330 2807 y(the)h(\014rst)f
+(ones)h(listed)g(\(as)h(man)m(y)f(as)g(\014t)g(reasonably\))g(on)g(the)
+g(actual)h(co)m(v)m(er,)h(and)e(con)m(tin)m(ue)h(the)330
+2917 y(rest)d(on)m(to)g(adjacen)m(t)h(pages.)330 3051
+y(If)27 b(y)m(ou)g(publish)e(or)i(distribute)g(Opaque)f(copies)i(of)f
+(the)h(Do)s(cumen)m(t)f(n)m(um)m(b)s(ering)f(more)i(than)e(100,)330
+3160 y(y)m(ou)i(m)m(ust)g(either)h(include)e(a)i(mac)m(hine-readable)g
+(T)-8 b(ransparen)m(t)28 b(cop)m(y)h(along)g(with)e(eac)m(h)i(Opaque)
+330 3270 y(cop)m(y)-8 b(,)38 b(or)d(state)h(in)f(or)g(with)g(eac)m(h)h
+(Opaque)e(cop)m(y)i(a)g(computer-net)m(w)m(ork)g(lo)s(cation)h(from)d
+(whic)m(h)330 3380 y(the)24 b(general)i(net)m(w)m(ork-using)f(public)e
+(has)h(access)i(to)f(do)m(wnload)f(using)g(public-standard)f(net)m(w)m
+(ork)330 3489 y(proto)s(cols)40 b(a)f(complete)h(T)-8
+b(ransparen)m(t)39 b(cop)m(y)g(of)g(the)h(Do)s(cumen)m(t,)i(free)d(of)g
+(added)f(material.)67 b(If)330 3599 y(y)m(ou)39 b(use)g(the)g(latter)h
+(option,)h(y)m(ou)f(m)m(ust)e(tak)m(e)j(reasonably)e(pruden)m(t)e
+(steps,)k(when)d(y)m(ou)h(b)s(egin)330 3708 y(distribution)f(of)g
+(Opaque)g(copies)h(in)e(quan)m(tit)m(y)-8 b(,)43 b(to)38
+b(ensure)g(that)h(this)f(T)-8 b(ransparen)m(t)38 b(cop)m(y)h(will)330
+3818 y(remain)30 b(th)m(us)g(accessible)i(at)f(the)f(stated)h(lo)s
+(cation)h(un)m(til)e(at)h(least)h(one)e(y)m(ear)h(after)g(the)f(last)h
+(time)330 3927 y(y)m(ou)37 b(distribute)f(an)h(Opaque)f(cop)m(y)i
+(\(directly)g(or)e(through)g(y)m(our)h(agen)m(ts)h(or)f(retailers\))h
+(of)f(that)330 4037 y(edition)31 b(to)g(the)g(public.)330
+4171 y(It)k(is)f(requested,)i(but)e(not)h(required,)g(that)g(y)m(ou)g
+(con)m(tact)h(the)f(authors)f(of)h(the)g(Do)s(cumen)m(t)g(w)m(ell)330
+4281 y(b)s(efore)28 b(redistributing)g(an)m(y)h(large)h(n)m(um)m(b)s
+(er)d(of)i(copies,)h(to)f(giv)m(e)h(them)f(a)g(c)m(hance)h(to)f(pro)m
+(vide)g(y)m(ou)330 4390 y(with)h(an)g(up)s(dated)f(v)m(ersion)i(of)g
+(the)f(Do)s(cumen)m(t.)199 4524 y(4.)61 b(MODIFICA)-8
+b(TIONS)330 4658 y(Y)g(ou)26 b(ma)m(y)g(cop)m(y)g(and)f(distribute)g(a)
+h(Mo)s(di\014ed)f(V)-8 b(ersion)26 b(of)g(the)g(Do)s(cumen)m(t)g(under)
+e(the)h(conditions)330 4768 y(of)c(sections)h(2)g(and)e(3)h(ab)s(o)m(v)
+m(e,)k(pro)m(vided)20 b(that)i(y)m(ou)f(release)i(the)e(Mo)s(di\014ed)f
+(V)-8 b(ersion)22 b(under)d(precisely)330 4877 y(this)29
+b(License,)h(with)f(the)g(Mo)s(di\014ed)f(V)-8 b(ersion)30
+b(\014lling)f(the)g(role)h(of)f(the)g(Do)s(cumen)m(t,)h(th)m(us)f
+(licensing)330 4987 y(distribution)k(and)h(mo)s(di\014cation)g(of)h
+(the)f(Mo)s(di\014ed)f(V)-8 b(ersion)35 b(to)g(who)s(ev)m(er)f(p)s
+(ossesses)f(a)i(cop)m(y)g(of)330 5096 y(it.)41 b(In)30
+b(addition,)h(y)m(ou)f(m)m(ust)h(do)f(these)h(things)f(in)g(the)h(Mo)s
+(di\014ed)e(V)-8 b(ersion:)357 5230 y(A.)60 b(Use)33
+b(in)f(the)h(Title)h(P)m(age)g(\(and)f(on)f(the)h(co)m(v)m(ers,)i(if)e
+(an)m(y\))g(a)g(title)h(distinct)f(from)g(that)g(of)g(the)510
+5340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
+(ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
+b(,)p eop end
+%%Page: 193 199
+TeXDict begin 193 198 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(193)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
+h(title)h(as)510 408 y(a)e(previous)f(v)m(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.)360
+545 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 655 y(authorship)c(of)h(the)h(mo)s(di\014cations)f(in)g(the)g
+(Mo)s(di\014ed)f(V)-8 b(ersion,)28 b(together)g(with)d(at)i(least)h
+(\014v)m(e)510 765 y(of)c(the)g(principal)g(authors)f(of)i(the)f(Do)s
+(cumen)m(t)g(\(all)h(of)g(its)f(principal)g(authors,)h(if)f(it)g(has)g
+(few)m(er)510 874 y(than)30 b(\014v)m(e\),)h(unless)f(they)h(release)g
+(y)m(ou)g(from)f(this)g(requiremen)m(t.)359 1011 y(C.)60
+b(State)32 b(on)e(the)h(Title)h(page)f(the)g(name)g(of)g(the)g
+(publisher)e(of)i(the)g(Mo)s(di\014ed)f(V)-8 b(ersion,)32
+b(as)f(the)510 1121 y(publisher.)355 1258 y(D.)61 b(Preserv)m(e)31
+b(all)g(the)g(cop)m(yrigh)m(t)h(notices)f(of)g(the)f(Do)s(cumen)m(t.)
+363 1395 y(E.)60 b(Add)30 b(an)i(appropriate)f(cop)m(yrigh)m(t)i
+(notice)f(for)g(y)m(our)f(mo)s(di\014cations)g(adjacen)m(t)i(to)f(the)g
+(other)510 1504 y(cop)m(yrigh)m(t)g(notices.)365 1641
+y(F.)61 b(Include,)28 b(immediately)h(after)f(the)h(cop)m(yrigh)m(t)g
+(notices,)h(a)e(license)h(notice)g(giving)g(the)f(public)510
+1751 y(p)s(ermission)23 b(to)j(use)e(the)g(Mo)s(di\014ed)g(V)-8
+b(ersion)25 b(under)e(the)i(terms)f(of)h(this)f(License,)j(in)d(the)g
+(form)510 1861 y(sho)m(wn)30 b(in)g(the)g(Addendum)f(b)s(elo)m(w.)353
+1998 y(G.)61 b(Preserv)m(e)23 b(in)g(that)g(license)h(notice)g(the)f
+(full)g(lists)g(of)g(In)m(v)-5 b(arian)m(t)23 b(Sections)h(and)e
+(required)g(Co)m(v)m(er)510 2107 y(T)-8 b(exts)31 b(giv)m(en)g(in)f
+(the)h(Do)s(cumen)m(t's)g(license)h(notice.)357 2244
+y(H.)60 b(Include)30 b(an)g(unaltered)g(cop)m(y)h(of)g(this)f(License.)
+392 2381 y(I.)60 b(Preserv)m(e)33 b(the)f(section)h(En)m(titled)g
+(\\History",)h(Preserv)m(e)f(its)f(Title,)i(and)d(add)h(to)h(it)f(an)g
+(item)510 2491 y(stating)d(at)g(least)g(the)g(title,)h(y)m(ear,)g(new)d
+(authors,)i(and)e(publisher)f(of)j(the)f(Mo)s(di\014ed)f(V)-8
+b(ersion)510 2600 y(as)32 b(giv)m(en)g(on)f(the)h(Title)g(P)m(age.)45
+b(If)31 b(there)h(is)f(no)g(section)i(En)m(titled)f(\\History")h(in)e
+(the)g(Do)s(cu-)510 2710 y(men)m(t,)37 b(create)f(one)f(stating)h(the)f
+(title,)i(y)m(ear,)g(authors,)f(and)e(publisher)f(of)i(the)g(Do)s
+(cumen)m(t)510 2819 y(as)h(giv)m(en)h(on)f(its)h(Title)g(P)m(age,)i
+(then)d(add)g(an)g(item)g(describing)g(the)g(Mo)s(di\014ed)g(V)-8
+b(ersion)37 b(as)510 2929 y(stated)31 b(in)f(the)h(previous)f(sen)m
+(tence.)378 3066 y(J.)60 b(Preserv)m(e)33 b(the)g(net)m(w)m(ork)g(lo)s
+(cation,)i(if)d(an)m(y)-8 b(,)34 b(giv)m(en)f(in)g(the)f(Do)s(cumen)m
+(t)h(for)g(public)e(access)j(to)510 3176 y(a)e(T)-8 b(ransparen)m(t)30
+b(cop)m(y)i(of)g(the)f(Do)s(cumen)m(t,)h(and)f(lik)m(ewise)h(the)g(net)
+m(w)m(ork)g(lo)s(cations)g(giv)m(en)g(in)510 3285 y(the)g(Do)s(cumen)m
+(t)g(for)g(previous)f(v)m(ersions)h(it)g(w)m(as)g(based)f(on.)45
+b(These)31 b(ma)m(y)h(b)s(e)f(placed)h(in)g(the)510 3395
+y(\\History")27 b(section.)40 b(Y)-8 b(ou)25 b(ma)m(y)h(omit)g(a)f(net)
+m(w)m(ork)h(lo)s(cation)g(for)f(a)h(w)m(ork)f(that)g(w)m(as)h
+(published)510 3504 y(at)36 b(least)h(four)e(y)m(ears)i(b)s(efore)e
+(the)h(Do)s(cumen)m(t)h(itself,)h(or)d(if)h(the)g(original)h(publisher)
+d(of)i(the)510 3614 y(v)m(ersion)31 b(it)g(refers)f(to)h(giv)m(es)h(p)s
+(ermission.)354 3751 y(K.)60 b(F)-8 b(or)24 b(an)m(y)h(section)f(En)m
+(titled)h(\\Ac)m(kno)m(wledgemen)m(ts")i(or)d(\\Dedications",)k
+(Preserv)m(e)c(the)g(Title)510 3861 y(of)j(the)f(section,)j(and)d
+(preserv)m(e)h(in)f(the)h(section)g(all)h(the)e(substance)h(and)f(tone)
+h(of)f(eac)m(h)i(of)f(the)510 3970 y(con)m(tributor)k(ac)m(kno)m
+(wledgemen)m(ts)i(and/or)d(dedications)h(giv)m(en)h(therein.)368
+4107 y(L.)60 b(Preserv)m(e)36 b(all)g(the)g(In)m(v)-5
+b(arian)m(t)36 b(Sections)g(of)f(the)h(Do)s(cumen)m(t,)h(unaltered)f
+(in)f(their)g(text)i(and)510 4217 y(in)f(their)g(titles.)58
+b(Section)37 b(n)m(um)m(b)s(ers)d(or)i(the)g(equiv)-5
+b(alen)m(t)38 b(are)e(not)g(considered)g(part)g(of)g(the)510
+4326 y(section)c(titles.)341 4463 y(M.)61 b(Delete)33
+b(an)m(y)e(section)h(En)m(titled)f(\\Endorsemen)m(ts".)42
+b(Suc)m(h)30 b(a)i(section)f(ma)m(y)h(not)f(b)s(e)f(included)510
+4573 y(in)g(the)h(Mo)s(di\014ed)e(V)-8 b(ersion.)357
+4710 y(N.)60 b(Do)29 b(not)g(retitle)h(an)m(y)e(existing)i(section)f
+(to)g(b)s(e)f(En)m(titled)h(\\Endorsemen)m(ts")g(or)f(to)h(con\015ict)g
+(in)510 4819 y(title)j(with)e(an)m(y)h(In)m(v)-5 b(arian)m(t)31
+b(Section.)354 4956 y(O.)60 b(Preserv)m(e)31 b(an)m(y)g(W)-8
+b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g
+(V)-8 b(ersion)34 b(includes)f(new)g(fron)m(t-matter)i(sections)f(or)f
+(app)s(endices)g(that)h(qualify)330 5230 y(as)28 b(Secondary)g
+(Sections)g(and)f(con)m(tain)j(no)d(material)j(copied)e(from)f(the)h
+(Do)s(cumen)m(t,)i(y)m(ou)e(ma)m(y)g(at)330 5340 y(y)m(our)k(option)h
+(designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
+b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
+eop end
+%%Page: 194 200
+TeXDict begin 194 199 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(194)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
+b(ersion's)36 b(license)g(notice.)57 b(These)330 408
+y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
+(section)g(titles.)330 551 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 661 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
+b(parties|for)g(example,)g(statemen)m(ts)i(of)330 770
+y(p)s(eer)27 b(review)g(or)g(that)h(the)f(text)i(has)d(b)s(een)h(appro)
+m(v)m(ed)g(b)m(y)g(an)h(organization)h(as)e(the)h(authoritativ)m(e)330
+880 y(de\014nition)i(of)h(a)f(standard.)330 1022 y(Y)-8
+b(ou)29 b(ma)m(y)g(add)e(a)i(passage)g(of)g(up)e(to)i(\014v)m(e)g(w)m
+(ords)e(as)i(a)g(F)-8 b(ron)m(t-Co)m(v)m(er)30 b(T)-8
+b(ext,)30 b(and)e(a)g(passage)i(of)e(up)330 1132 y(to)g(25)g(w)m(ords)e
+(as)i(a)f(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext,)29 b(to)f(the)f(end)f(of)i
+(the)f(list)h(of)f(Co)m(v)m(er)h(T)-8 b(exts)27 b(in)g(the)h(Mo)s
+(di\014ed)330 1241 y(V)-8 b(ersion.)58 b(Only)35 b(one)h(passage)h(of)f
+(F)-8 b(ron)m(t-Co)m(v)m(er)38 b(T)-8 b(ext)36 b(and)g(one)g(of)g(Bac)m
+(k-Co)m(v)m(er)j(T)-8 b(ext)36 b(ma)m(y)h(b)s(e)330 1351
+y(added)27 b(b)m(y)g(\(or)h(through)f(arrangemen)m(ts)h(made)g(b)m(y\))
+g(an)m(y)g(one)f(en)m(tit)m(y)-8 b(.)42 b(If)27 b(the)h(Do)s(cumen)m(t)
+g(already)330 1461 y(includes)34 b(a)g(co)m(v)m(er)h(text)g(for)f(the)g
+(same)h(co)m(v)m(er,)h(previously)e(added)f(b)m(y)h(y)m(ou)g(or)g(b)m
+(y)g(arrangemen)m(t)330 1570 y(made)h(b)m(y)g(the)h(same)f(en)m(tit)m
+(y)i(y)m(ou)f(are)f(acting)i(on)e(b)s(ehalf)f(of,)j(y)m(ou)f(ma)m(y)g
+(not)f(add)g(another;)j(but)330 1680 y(y)m(ou)c(ma)m(y)h(replace)g(the)
+f(old)g(one,)i(on)e(explicit)h(p)s(ermission)e(from)g(the)i(previous)e
+(publisher)f(that)330 1789 y(added)e(the)g(old)h(one.)330
+1932 y(The)25 b(author\(s\))h(and)f(publisher\(s\))f(of)i(the)f(Do)s
+(cumen)m(t)h(do)g(not)f(b)m(y)h(this)f(License)h(giv)m(e)h(p)s
+(ermission)330 2041 y(to)k(use)f(their)g(names)h(for)f(publicit)m(y)g
+(for)h(or)f(to)h(assert)g(or)f(imply)g(endorsemen)m(t)g(of)h(an)m(y)g
+(Mo)s(di\014ed)330 2151 y(V)-8 b(ersion.)199 2293 y(5.)61
+b(COMBINING)31 b(DOCUMENTS)330 2436 y(Y)-8 b(ou)39 b(ma)m(y)g(com)m
+(bine)h(the)f(Do)s(cumen)m(t)g(with)g(other)f(do)s(cumen)m(ts)h
+(released)g(under)f(this)g(License,)330 2545 y(under)f(the)h(terms)g
+(de\014ned)f(in)h(section)h(4)g(ab)s(o)m(v)m(e)g(for)f(mo)s(di\014ed)f
+(v)m(ersions,)k(pro)m(vided)d(that)h(y)m(ou)330 2655
+y(include)25 b(in)g(the)g(com)m(bination)i(all)f(of)g(the)f(In)m(v)-5
+b(arian)m(t)26 b(Sections)g(of)g(all)g(of)f(the)h(original)g(do)s
+(cumen)m(ts,)330 2765 y(unmo)s(di\014ed,)g(and)g(list)h(them)g(all)g
+(as)g(In)m(v)-5 b(arian)m(t)28 b(Sections)f(of)g(y)m(our)g(com)m(bined)
+g(w)m(ork)f(in)h(its)g(license)330 2874 y(notice,)32
+b(and)e(that)h(y)m(ou)f(preserv)m(e)h(all)g(their)g(W)-8
+b(arran)m(t)m(y)32 b(Disclaimers.)330 3017 y(The)e(com)m(bined)g(w)m
+(ork)h(need)e(only)i(con)m(tain)g(one)g(cop)m(y)g(of)f(this)g(License,)
+i(and)d(m)m(ultiple)i(iden)m(tical)330 3126 y(In)m(v)-5
+b(arian)m(t)33 b(Sections)g(ma)m(y)g(b)s(e)f(replaced)h(with)f(a)h
+(single)g(cop)m(y)-8 b(.)48 b(If)32 b(there)h(are)g(m)m(ultiple)g(In)m
+(v)-5 b(arian)m(t)330 3236 y(Sections)27 b(with)g(the)g(same)g(name)g
+(but)f(di\013eren)m(t)h(con)m(ten)m(ts,)i(mak)m(e)f(the)f(title)h(of)f
+(eac)m(h)h(suc)m(h)f(section)330 3345 y(unique)33 b(b)m(y)h(adding)f
+(at)i(the)f(end)g(of)g(it,)h(in)f(paren)m(theses,)i(the)e(name)g(of)g
+(the)g(original)h(author)f(or)330 3455 y(publisher)23
+b(of)i(that)h(section)g(if)f(kno)m(wn,)h(or)f(else)h(a)f(unique)f(n)m
+(um)m(b)s(er.)38 b(Mak)m(e)26 b(the)g(same)f(adjustmen)m(t)330
+3565 y(to)g(the)g(section)g(titles)h(in)e(the)h(list)g(of)f(In)m(v)-5
+b(arian)m(t)26 b(Sections)f(in)f(the)g(license)i(notice)g(of)e(the)h
+(com)m(bined)330 3674 y(w)m(ork.)330 3817 y(In)41 b(the)g(com)m
+(bination,)46 b(y)m(ou)41 b(m)m(ust)g(com)m(bine)h(an)m(y)g(sections)g
+(En)m(titled)g(\\History")h(in)e(the)g(v)-5 b(ari-)330
+3926 y(ous)32 b(original)h(do)s(cumen)m(ts,)g(forming)f(one)g(section)h
+(En)m(titled)g(\\History";)i(lik)m(ewise)f(com)m(bine)f(an)m(y)330
+4036 y(sections)g(En)m(titled)f(\\Ac)m(kno)m(wledgemen)m(ts",)k(and)31
+b(an)m(y)h(sections)h(En)m(titled)g(\\Dedications".)47
+b(Y)-8 b(ou)330 4145 y(m)m(ust)30 b(delete)i(all)f(sections)h(En)m
+(titled)f(\\Endorsemen)m(ts.")199 4288 y(6.)61 b(COLLECTIONS)28
+b(OF)i(DOCUMENTS)330 4430 y(Y)-8 b(ou)32 b(ma)m(y)h(mak)m(e)g(a)f
+(collection)i(consisting)f(of)f(the)g(Do)s(cumen)m(t)g(and)g(other)g
+(do)s(cumen)m(ts)f(released)330 4540 y(under)41 b(this)h(License,)k
+(and)c(replace)h(the)g(individual)f(copies)h(of)f(this)g(License)h(in)f
+(the)h(v)-5 b(arious)330 4650 y(do)s(cumen)m(ts)42 b(with)g(a)h(single)
+g(cop)m(y)h(that)f(is)f(included)g(in)g(the)h(collection,)48
+b(pro)m(vided)42 b(that)i(y)m(ou)330 4759 y(follo)m(w)38
+b(the)g(rules)e(of)h(this)g(License)h(for)f(v)m(erbatim)h(cop)m(ying)g
+(of)f(eac)m(h)h(of)f(the)h(do)s(cumen)m(ts)e(in)h(all)330
+4869 y(other)31 b(resp)s(ects.)330 5011 y(Y)-8 b(ou)32
+b(ma)m(y)g(extract)h(a)f(single)g(do)s(cumen)m(t)f(from)g(suc)m(h)g(a)h
+(collection,)i(and)d(distribute)g(it)h(individu-)330
+5121 y(ally)k(under)d(this)i(License,)i(pro)m(vided)e(y)m(ou)g(insert)g
+(a)g(cop)m(y)h(of)f(this)g(License)g(in)m(to)h(the)g(extracted)330
+5230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
+(other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
+5340 y(that)d(do)s(cumen)m(t.)p eop end
+%%Page: 195 201
+TeXDict begin 195 200 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(195)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+(W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
+(its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
+s(enden)m(t)330 551 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)330 661 y(an)c(\\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 770 y(legal)d(righ)m(ts)f(of)g(the)g(compilation's)h(users)e
+(b)s(ey)m(ond)g(what)g(the)h(individual)f(w)m(orks)g(p)s(ermit.)39
+b(When)330 880 y(the)g(Do)s(cumen)m(t)g(is)f(included)g(in)g(an)g
+(aggregate,)44 b(this)38 b(License)h(do)s(es)f(not)h(apply)f(to)h(the)g
+(other)330 989 y(w)m(orks)30 b(in)g(the)h(aggregate)i(whic)m(h)d(are)h
+(not)g(themselv)m(es)g(deriv)-5 b(ativ)m(e)32 b(w)m(orks)f(of)f(the)h
+(Do)s(cumen)m(t.)330 1132 y(If)22 b(the)h(Co)m(v)m(er)h(T)-8
+b(ext)23 b(requiremen)m(t)g(of)g(section)h(3)f(is)g(applicable)h(to)f
+(these)h(copies)f(of)g(the)g(Do)s(cumen)m(t,)330 1241
+y(then)f(if)g(the)h(Do)s(cumen)m(t)g(is)g(less)f(than)g(one)h(half)f
+(of)h(the)g(en)m(tire)g(aggregate,)k(the)c(Do)s(cumen)m(t's)g(Co)m(v)m
+(er)330 1351 y(T)-8 b(exts)27 b(ma)m(y)g(b)s(e)f(placed)h(on)g(co)m(v)m
+(ers)h(that)f(brac)m(k)m(et)h(the)f(Do)s(cumen)m(t)g(within)f(the)h
+(aggregate,)j(or)d(the)330 1461 y(electronic)37 b(equiv)-5
+b(alen)m(t)36 b(of)g(co)m(v)m(ers)g(if)f(the)g(Do)s(cumen)m(t)h(is)f
+(in)g(electronic)i(form.)54 b(Otherwise)35 b(they)330
+1570 y(m)m(ust)30 b(app)s(ear)g(on)g(prin)m(ted)g(co)m(v)m(ers)i(that)f
+(brac)m(k)m(et)h(the)f(whole)f(aggregate.)199 1713 y(8.)61
+b(TRANSLA)-8 b(TION)330 1855 y(T)g(ranslation)41 b(is)f(considered)f(a)
+i(kind)e(of)h(mo)s(di\014cation,)j(so)d(y)m(ou)g(ma)m(y)h(distribute)e
+(translations)330 1965 y(of)45 b(the)f(Do)s(cumen)m(t)h(under)e(the)h
+(terms)h(of)f(section)i(4.)83 b(Replacing)45 b(In)m(v)-5
+b(arian)m(t)45 b(Sections)g(with)330 2074 y(translations)h(requires)f
+(sp)s(ecial)h(p)s(ermission)f(from)g(their)g(cop)m(yrigh)m(t)i
+(holders,)i(but)c(y)m(ou)g(ma)m(y)330 2184 y(include)24
+b(translations)i(of)e(some)h(or)g(all)g(In)m(v)-5 b(arian)m(t)25
+b(Sections)g(in)f(addition)h(to)g(the)g(original)h(v)m(ersions)330
+2293 y(of)32 b(these)f(In)m(v)-5 b(arian)m(t)33 b(Sections.)44
+b(Y)-8 b(ou)32 b(ma)m(y)g(include)f(a)h(translation)g(of)g(this)f
+(License,)i(and)d(all)j(the)330 2403 y(license)42 b(notices)g(in)f(the)
+h(Do)s(cumen)m(t,)j(and)40 b(an)m(y)i(W)-8 b(arran)m(t)m(y)42
+b(Disclaimers,)k(pro)m(vided)41 b(that)h(y)m(ou)330 2513
+y(also)f(include)f(the)g(original)h(English)f(v)m(ersion)g(of)g(this)g
+(License)h(and)e(the)h(original)h(v)m(ersions)g(of)330
+2622 y(those)35 b(notices)g(and)e(disclaimers.)53 b(In)33
+b(case)i(of)g(a)f(disagreemen)m(t)h(b)s(et)m(w)m(een)g(the)f
+(translation)i(and)330 2732 y(the)f(original)i(v)m(ersion)e(of)h(this)f
+(License)h(or)f(a)g(notice)i(or)e(disclaimer,)i(the)f(original)g(v)m
+(ersion)g(will)330 2841 y(prev)-5 b(ail.)330 2984 y(If)28
+b(a)h(section)h(in)e(the)h(Do)s(cumen)m(t)h(is)e(En)m(titled)i(\\Ac)m
+(kno)m(wledgemen)m(ts",)i(\\Dedications",)g(or)d(\\His-)330
+3093 y(tory",)f(the)f(requiremen)m(t)f(\(section)i(4\))f(to)g(Preserv)m
+(e)g(its)f(Title)i(\(section)f(1\))g(will)g(t)m(ypically)h(require)330
+3203 y(c)m(hanging)j(the)g(actual)h(title.)199 3345 y(9.)61
+b(TERMINA)-8 b(TION)330 3488 y(Y)g(ou)30 b(ma)m(y)h(not)f(cop)m(y)-8
+b(,)31 b(mo)s(dify)-8 b(,)30 b(sublicense,)g(or)g(distribute)f(the)h
+(Do)s(cumen)m(t)g(except)h(as)f(expressly)330 3598 y(pro)m(vided)38
+b(under)f(this)i(License.)65 b(An)m(y)39 b(attempt)h(otherwise)f(to)g
+(cop)m(y)-8 b(,)42 b(mo)s(dify)-8 b(,)40 b(sublicense,)h(or)330
+3707 y(distribute)30 b(it)h(is)f(v)m(oid,)h(and)f(will)h(automatically)
+i(terminate)f(y)m(our)e(righ)m(ts)h(under)e(this)h(License.)330
+3850 y(Ho)m(w)m(ev)m(er,)35 b(if)e(y)m(ou)f(cease)i(all)f(violation)i
+(of)d(this)g(License,)i(then)e(y)m(our)h(license)g(from)f(a)h
+(particular)330 3959 y(cop)m(yrigh)m(t)k(holder)e(is)h(reinstated)h
+(\(a\))f(pro)m(visionally)-8 b(,)39 b(unless)c(and)g(un)m(til)h(the)g
+(cop)m(yrigh)m(t)h(holder)330 4069 y(explicitly)42 b(and)e(\014nally)h
+(terminates)g(y)m(our)g(license,)j(and)c(\(b\))h(p)s(ermanen)m(tly)-8
+b(,)43 b(if)e(the)g(cop)m(yrigh)m(t)330 4178 y(holder)34
+b(fails)h(to)g(notify)g(y)m(ou)g(of)f(the)h(violation)h(b)m(y)e(some)h
+(reasonable)g(means)g(prior)e(to)i(60)h(da)m(ys)330 4288
+y(after)31 b(the)f(cessation.)330 4430 y(Moreo)m(v)m(er,)k(y)m(our)d
+(license)i(from)e(a)h(particular)f(cop)m(yrigh)m(t)i(holder)e(is)h
+(reinstated)g(p)s(ermanen)m(tly)f(if)330 4540 y(the)d(cop)m(yrigh)m(t)h
+(holder)f(noti\014es)g(y)m(ou)g(of)g(the)g(violation)h(b)m(y)f(some)g
+(reasonable)h(means,)f(this)g(is)g(the)330 4650 y(\014rst)f(time)i(y)m
+(ou)f(ha)m(v)m(e)h(receiv)m(ed)g(notice)g(of)f(violation)i(of)e(this)f
+(License)i(\(for)f(an)m(y)g(w)m(ork\))g(from)f(that)330
+4759 y(cop)m(yrigh)m(t)33 b(holder,)g(and)e(y)m(ou)h(cure)g(the)g
+(violation)i(prior)d(to)i(30)f(da)m(ys)h(after)f(y)m(our)g(receipt)h
+(of)f(the)330 4869 y(notice.)330 5011 y(T)-8 b(ermination)28
+b(of)g(y)m(our)f(righ)m(ts)h(under)e(this)i(section)g(do)s(es)f(not)h
+(terminate)h(the)e(licenses)i(of)f(parties)330 5121 y(who)38
+b(ha)m(v)m(e)h(receiv)m(ed)h(copies)e(or)h(righ)m(ts)f(from)g(y)m(ou)g
+(under)f(this)h(License.)64 b(If)38 b(y)m(our)g(righ)m(ts)h(ha)m(v)m(e)
+330 5230 y(b)s(een)25 b(terminated)i(and)e(not)h(p)s(ermanen)m(tly)g
+(reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
+(the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
+(an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
+%%Page: 196 202
+TeXDict begin 196 201 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(196)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
+330 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
+b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
+(the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
+b(License)e(from)g(time)h(to)g(time.)46 b(Suc)m(h)31
+b(new)h(v)m(ersions)g(will)h(b)s(e)e(similar)h(in)g(spirit)330
+653 y(to)j(the)g(presen)m(t)f(v)m(ersion,)i(but)e(ma)m(y)h(di\013er)f
+(in)g(detail)h(to)g(address)f(new)g(problems)f(or)i(concerns.)330
+762 y(See)c Ft(http://www.gnu.org/copy)o(left)o(/)p Fu(.)330
+897 y(Eac)m(h)f(v)m(ersion)g(of)g(the)f(License)h(is)g(giv)m(en)g(a)g
+(distinguishing)f(v)m(ersion)h(n)m(um)m(b)s(er.)39 b(If)29
+b(the)g(Do)s(cumen)m(t)330 1006 y(sp)s(eci\014es)45 b(that)h(a)g
+(particular)f(n)m(um)m(b)s(ered)f(v)m(ersion)i(of)f(this)g(License)h
+(\\or)g(an)m(y)g(later)g(v)m(ersion")330 1116 y(applies)33
+b(to)g(it,)h(y)m(ou)e(ha)m(v)m(e)i(the)f(option)g(of)f(follo)m(wing)i
+(the)f(terms)f(and)g(conditions)h(either)g(of)f(that)330
+1225 y(sp)s(eci\014ed)37 b(v)m(ersion)i(or)e(of)h(an)m(y)h(later)g(v)m
+(ersion)f(that)g(has)g(b)s(een)f(published)f(\(not)j(as)f(a)g(draft\))g
+(b)m(y)330 1335 y(the)33 b(F)-8 b(ree)34 b(Soft)m(w)m(are)f(F)-8
+b(oundation.)49 b(If)32 b(the)h(Do)s(cumen)m(t)g(do)s(es)g(not)g(sp)s
+(ecify)f(a)h(v)m(ersion)g(n)m(um)m(b)s(er)f(of)330 1445
+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 1554 y(Soft)m(w)m(are)33 b(F)-8 b(oundation.)46
+b(If)32 b(the)g(Do)s(cumen)m(t)g(sp)s(eci\014es)g(that)g(a)h(pro)m(xy)f
+(can)g(decide)g(whic)m(h)g(future)330 1664 y(v)m(ersions)h(of)g(this)f
+(License)h(can)g(b)s(e)f(used,)g(that)i(pro)m(xy's)e(public)g(statemen)
+m(t)i(of)f(acceptance)i(of)e(a)330 1773 y(v)m(ersion)e(p)s(ermanen)m
+(tly)f(authorizes)h(y)m(ou)g(to)g(c)m(ho)s(ose)g(that)g(v)m(ersion)g
+(for)f(the)h(Do)s(cumen)m(t.)154 1908 y(11.)61 b(RELICENSING)330
+2042 y(\\Massiv)m(e)39 b(Multiauthor)f(Collab)s(oration)g(Site")h(\(or)
+e(\\MMC)h(Site"\))h(means)e(an)m(y)h(W)-8 b(orld)37 b(Wide)330
+2152 y(W)-8 b(eb)36 b(serv)m(er)g(that)h(publishes)d(cop)m(yrigh)m
+(table)k(w)m(orks)e(and)f(also)i(pro)m(vides)e(prominen)m(t)h
+(facilities)330 2262 y(for)27 b(an)m(yb)s(o)s(dy)g(to)h(edit)g(those)g
+(w)m(orks.)39 b(A)28 b(public)f(wiki)h(that)g(an)m(yb)s(o)s(dy)e(can)i
+(edit)g(is)f(an)h(example)g(of)330 2371 y(suc)m(h)33
+b(a)h(serv)m(er.)51 b(A)34 b(\\Massiv)m(e)i(Multiauthor)e(Collab)s
+(oration")h(\(or)f(\\MMC"\))h(con)m(tained)g(in)f(the)330
+2481 y(site)d(means)f(an)m(y)h(set)g(of)g(cop)m(yrigh)m(table)h(w)m
+(orks)e(th)m(us)g(published)f(on)h(the)h(MMC)f(site.)330
+2615 y(\\CC-BY-SA")36 b(means)f(the)g(Creativ)m(e)i(Commons)e(A)m
+(ttribution-Share)g(Alik)m(e)i(3.0)f(license)g(pub-)330
+2725 y(lished)27 b(b)m(y)f(Creativ)m(e)j(Commons)d(Corp)s(oration,)h(a)
+g(not-for-pro\014t)g(corp)s(oration)h(with)e(a)h(principal)330
+2834 y(place)g(of)f(business)e(in)i(San)f(F)-8 b(rancisco,)29
+b(California,)f(as)e(w)m(ell)h(as)f(future)f(cop)m(yleft)i(v)m(ersions)
+f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g
+(organization.)330 3078 y(\\Incorp)s(orate")h(means)e(to)h(publish)e
+(or)i(republish)e(a)i(Do)s(cumen)m(t,)g(in)g(whole)g(or)f(in)g(part,)h
+(as)g(part)330 3188 y(of)g(another)f(Do)s(cumen)m(t.)330
+3323 y(An)c(MMC)g(is)h(\\eligible)h(for)e(relicensing")h(if)g(it)f(is)h
+(licensed)f(under)f(this)h(License,)i(and)e(if)g(all)h(w)m(orks)330
+3432 y(that)43 b(w)m(ere)f(\014rst)f(published)f(under)h(this)h
+(License)g(somewhere)g(other)g(than)g(this)g(MMC,)h(and)330
+3542 y(subsequen)m(tly)34 b(incorp)s(orated)h(in)f(whole)h(or)g(in)f
+(part)h(in)m(to)h(the)f(MMC,)g(\(1\))h(had)e(no)h(co)m(v)m(er)h(texts)
+330 3651 y(or)30 b(in)m(v)-5 b(arian)m(t)32 b(sections,)g(and)d(\(2\))j
+(w)m(ere)f(th)m(us)f(incorp)s(orated)g(prior)g(to)h(No)m(v)m(em)m(b)s
+(er)g(1,)g(2008.)330 3786 y(The)40 b(op)s(erator)h(of)g(an)f(MMC)h
+(Site)g(ma)m(y)g(republish)e(an)h(MMC)h(con)m(tained)h(in)e(the)h(site)
+g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
+(time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
+330 4005 y(eligible)h(for)e(relicensing.)p eop end
+%%Page: 197 203
+TeXDict begin 197 202 bop 150 -116 a Fu(App)s(endix)29
+b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
+b(197)150 299 y Fs(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+(for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fu(T)-8 b(o)35
+b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
+i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
+568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
+m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
+680 y Fe(Copyright)42 b(\(C\))79 b Fd(year)g(your)40
+b(name)p Fe(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
+(distribute)g(and/or)g(modify)f(this)g(document)468 854
+y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
+(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
+(published)h(by)d(the)h(Free)g(Software)h(Foundation;)468
+1029 y(with)g(no)e(Invariant)j(Sections,)f(no)f(Front-Cover)h(Texts,)g
+(and)f(no)f(Back-Cover)468 1116 y(Texts.)80 b(A)40 b(copy)g(of)g(the)f
+(license)i(is)f(included)h(in)f(the)g(section)g(entitled)h(``GNU)468
+1203 y(Free)g(Documentation)h(License''.)275 1337 y Fu(If)d(y)m(ou)h
+(ha)m(v)m(e)h(In)m(v)-5 b(arian)m(t)41 b(Sections,)i(F)-8
+b(ron)m(t-Co)m(v)m(er)42 b(T)-8 b(exts)41 b(and)e(Bac)m(k-Co)m(v)m(er)k
+(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
+b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
+1559 y Fe(with)40 b(the)g(Invariant)h(Sections)g(being)g
+Fd(list)f(their)g(titles)p Fe(,)h(with)547 1646 y(the)f(Front-Cover)i
+(Texts)e(being)g Fd(list)p Fe(,)h(and)f(with)g(the)g(Back-Cover)h
+(Texts)547 1733 y(being)f Fd(list)p Fe(.)275 1868 y Fu(If)34
+b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
+(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
+(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
+(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
+y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
+(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
+2222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
+(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
+b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
+(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
+eop end
+%%Page: 198 204
+TeXDict begin 198 203 bop 3614 -116 a Fu(198)150 299
+y Fp(App)t(endix)52 b(D)81 b(Indexes)150 639 y Fs(D.1)68
+b(Index)45 b(of)g(Shell)g(Builtin)g(Commands)146 806
+y(.)150 922 y Fe(.)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)33 b Fb(51)146 1157 y Fs(:)150 1273 y Fe(:)19 b Fc(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(51)146
+1510 y Fs([)150 1626 y Fe([)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)33 b Fb(56)146 1862 y Fs(A)150 1978 y Fe(alias)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(60)146 2213 y
+Fs(B)150 2329 y Fe(bg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29
+b Fb(124)150 2416 y Fe(bind)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(60)150 2503 y Fe(break)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
+b Fb(52)150 2590 y Fe(builtin)f Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
+b Fb(62)146 2825 y Fs(C)150 2941 y Fe(caller)6 b Fc(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)20 b Fb(62)150 3029 y Fe(cd)c Fc(:)e(:)f(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)31 b Fb(52)150 3116 y Fe(command)22
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)35 b Fb(62)150 3203 y Fe(compgen)18
+b Fc(:)d(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)33 b Fb(159)150 3290 y Fe(complete)16
+b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)31 b Fb(159)150 3378 y Fe(compopt)18 b Fc(:)d(:)e(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33
+b Fb(162)150 3465 y Fe(continue)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
+Fb(53)146 3699 y Fs(D)150 3816 y Fe(declare)22 b Fc(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)35 b Fb(63)150 3903 y Fe(dirs)9 b Fc(:)14
+b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)24 b Fb(111)150 3990 y Fe(disown)e
+Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)36 b Fb(126)146 4225 y Fs(E)150 4341
+y Fe(echo)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b
+Fb(64)150 4428 y Fe(enable)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
+b Fb(65)150 4515 y Fe(eval)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(53)150 4603 y Fe(exec)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(53)150 4690 y Fe(exit)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(53)150 4777 y Fe(export)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
+b Fb(53)146 5023 y Fs(F)150 5139 y Fe(false)9 b Fc(:)14
+b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(54)150 5227 y Fe(fc)14
+b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29 b Fb(167)150
+5314 y Fe(fg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)29
+b Fb(125)2021 871 y Fs(G)2025 988 y Fe(getopts)22 b Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)35 b Fb(54)2021 1250 y Fs(H)2025 1369 y Fe(hash)11
+b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(55)2025 1457
+y Fe(help)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b
+Fb(66)2025 1544 y Fe(history)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(167)2021
+1806 y Fs(J)2025 1924 y Fe(jobs)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
+b Fb(125)2021 2186 y Fs(K)2025 2303 y Fe(kill)9 b Fc(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(125)2021 2554 y Fs(L)2025
+2672 y Fe(let)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
+b Fb(66)2025 2760 y Fe(local)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
+b Fb(66)2025 2848 y Fe(logout)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
+b Fb(66)2021 3110 y Fs(M)2025 3227 y Fe(mapfile)h Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)35 b Fb(67)2021 3489 y Fs(P)2025 3608 y Fe(popd)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(111)2025 3696
+y Fe(printf)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(67)2025
+3784 y Fe(pushd)6 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)21 b
+Fb(112)2025 3871 y Fe(pwd)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
+b Fb(55)2021 4133 y Fs(R)2025 4251 y Fe(read)11 b Fc(:)j(:)f(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)26 b Fb(68)2025 4339 y Fe(readarray)15 b
+Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)30 b Fb(70)2025 4427 y Fe(readonly)18 b Fc(:)d(:)e(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
+b Fb(55)2025 4515 y Fe(return)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
+b Fb(56)2021 4765 y Fs(S)2025 4884 y Fe(set)14 b Fc(:)f(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)28 b Fb(72)2025 4972 y Fe(shift)9 b Fc(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(56)2025 5060 y Fe(shopt)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(77)2025 5148
+y Fe(source)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(70)2025
+5235 y Fe(suspend)d Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(126)p eop end
+%%Page: 199 205
+TeXDict begin 199 204 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(199)146 294 y Fs(T)150 410 y Fe(test)11
+b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(56)150 497
+y Fe(times)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(58)150
+584 y Fe(trap)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(58)150 671 y Fe(true)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(59)150 758 y Fe(type)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(70)150 846 y Fe(typeset)d Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
+b Fb(71)146 1090 y Fs(U)150 1206 y Fe(ulimit)6 b Fc(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)20 b Fb(71)150 1293 y Fe(umask)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(59)150 1380 y
+Fe(unalias)f Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(72)150 1467 y
+Fe(unset)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(59)2021
+294 y Fs(W)2025 434 y Fe(wait)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
+b Fb(126)150 2167 y Fs(D.2)68 b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h
+(W)-11 b(ords)146 2704 y(!)150 2820 y Fe(!)19 b Fc(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(10)146
+3056 y Fs([)150 3172 y Fe([[)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)31 b Fb(14)146 3414 y Fs(])150 3530 y Fe(]])16 b
+Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(14)146
+3770 y Fa({)150 3886 y Fe({)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)33 b Fb(18)146 4125 y Fa(})150 4241 y Fe(})19
+b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b
+Fb(18)146 4475 y Fs(C)150 4591 y Fe(case)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)25 b Fb(13)146 4825 y Fs(D)150 4941 y Fe(do)16
+b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(12)150
+5028 y Fe(done)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(12)146 5261 y Fs(E)150 5377 y Fe(elif)11 b Fc(:)j(:)f(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)25 b Fb(12)150 5465 y Fe(else)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)25 b Fb(12)150 5552 y Fe(esac)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)25 b Fb(13)2021 2703 y Fs(F)2025 2836 y Fe(fi)16
+b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)31 b Fb(12)2025
+2928 y Fe(for)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
+b Fb(12)2025 3015 y Fe(function)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
+Fb(19)2021 3359 y Fs(I)2025 3491 y Fe(if)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)31 b Fb(12)2025 3578 y Fe(in)16 b Fc(:)e(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)31 b Fb(13)2021 3921 y Fs(S)2025
+4048 y Fe(select)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b
+Fb(14)2021 4392 y Fs(T)2025 4524 y Fe(then)11 b Fc(:)j(:)f(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)26 b Fb(12)2025 4611 y Fe(time)11 b Fc(:)j(:)f(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)26 b Fb(10)2021 4954 y Fs(U)2025 5081 y Fe(until)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(12)2021 5425
+y Fs(W)2025 5552 y Fe(while)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
+b Fb(12)p eop end
+%%Page: 200 206
+TeXDict begin 200 205 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(200)150 299 y Fs(D.3)68 b(P)l(arameter)47
+b(and)d(V)-11 b(ariable)46 b(Index)146 955 y(!)150 1072
+y Fe(!)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
+b Fb(24)146 1314 y Fs(#)150 1431 y Fe(#)19 b Fc(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(24)146
+1676 y Fs($)150 1794 y Fe($)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)33 b Fb(24)150 1881 y Fe($!)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)31 b Fb(24)150 1969 y Fe($#)16 b Fc(:)e(:)f(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)31 b Fb(24)150 2057 y Fe($$)16 b Fc(:)e(:)f(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(24)150 2144 y Fe($*)16
+b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31 b Fb(23)150
+2232 y Fe($-)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)31
+b Fb(24)150 2320 y Fe($?)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+31 b Fb(24)150 2407 y Fe($@)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)31 b Fb(24)150 2495 y Fe($_)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)31 b Fb(86)150 2582 y Fe($0)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)31 b Fb(24)146 2834 y Fs(*)150 2950 y Fe(*)19
+b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b
+Fb(23)146 3193 y Fs({)150 3310 y Fe(-)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)33 b Fb(24)146 3553 y Fs(?)150 3670
+y Fe(?)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
+b Fb(24)146 3912 y Fs(@)150 4029 y Fe(@)19 b Fc(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(24)p
+156 4272 41 6 v 150 4389 a Fe(_)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)33 b Fb(86)146 4631 y Fs(0)150 4748 y
+Fe(0)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
+b Fb(24)146 4991 y Fs(A)150 5108 y Fe(active-region-end-color)12
+b Fc(:)18 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)26 b Fb(132)150 5196 y Fe(active-region-start-color)
+7 b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)21 b Fb(132)150 5283 y Fe(auto_resume)8 b
+Fc(:)16 b(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+23 b Fb(127)2021 954 y Fs(B)2025 1071 y Fe(BASH)11 b
+Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(86)2025 1159
+y Fe(BASH_ALIASES)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)22 b Fb(86)2025 1246 y Fe(BASH_ARGC)15
+b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)30 b Fb(86)2025 1334 y Fe(BASH_ARGV)15 b Fc(:)g(:)f(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
+b Fb(86)2025 1421 y Fe(BASH_ARGV0)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(87)2025
+1509 y Fe(BASH_CMDS)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(87)2025 1597
+y Fe(BASH_COMMAND)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)22 b Fb(87)2025 1684 y Fe(BASH_COMPAT)10
+b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)25 b Fb(87)2025 1772 y Fe(BASH_ENV)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
+b Fb(87)2025 1859 y Fe(BASH_EXECUTION_STRING)24 b Fc(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)34 b Fb(87)2025 1947 y Fe(BASH_LINENO)10
+b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)25 b Fb(88)2025 2035 y Fe(BASH_LOADABLES_PATH)7 b
+Fc(:)17 b(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(88)2025
+2122 y Fe(BASH_MONOSECONDS)15 b Fc(:)h(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)29 b Fb(88)2025 2210 y Fe(BASH_REMATCH)8 b Fc(:)15
+b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22
+b Fb(88)2025 2297 y Fe(BASH_SOURCE)10 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(88)2025
+2385 y Fe(BASH_SUBSHELL)g Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)37 b Fb(88)2025 2473 y Fe(BASH_TRAPSIG)8
+b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+22 b Fb(88)2025 2560 y Fe(BASH_VERSINFO)j Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(88)2025 2648
+y Fe(BASH_VERSION)8 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)22 b Fb(89)2025 2735 y Fe(BASH_XTRACEFD)j
+Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(89)2025 2823 y Fe(BASHOPTS)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
+Fb(86)2025 2911 y Fe(BASHPID)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(86)2025 2998 y Fe(bell-style)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(132)2025
+3086 y Fe(bind-tty-special-chars)14 b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)29
+b Fb(133)2025 3173 y Fe(blink-matching-paren)24 b Fc(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)34 b Fb(133)2021 3426 y Fs(C)2025
+3543 y Fe(CDPATH)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b
+Fb(85)2025 3631 y Fe(CHILD_MAX)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(89)2025
+3719 y Fe(colored-completion-prefix)7 b Fc(:)18 b(:)13
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
+b Fb(133)2025 3806 y Fe(colored-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(133)2025 3894 y Fe(COLUMNS)22
+b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)35 b Fb(89)2025 3981 y Fe(comment-begin)23
+b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(133)2025 4069 y Fe(COMP_CWORD)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(89)2025
+4157 y Fe(COMP_KEY)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(89)2025 4244
+y Fe(COMP_LINE)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(89)2025 4332 y Fe(COMP_POINT)13
+b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)27 b Fb(90)2025 4419 y Fe(COMP_TYPE)15 b Fc(:)g(:)f(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
+b Fb(90)2025 4507 y Fe(COMP_WORDBREAKS)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(90)2025 4595 y Fe(COMP_WORDS)13
+b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)27 b Fb(90)2025 4682 y Fe(completion-display-width)9
+b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)24 b Fb(133)2025 4770 y Fe(completion-ignore-case)14
+b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)29 b Fb(133)2025 4857 y Fe(completion-map-case)d
+Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(133)2025 4945
+y Fe(completion-prefix-display-leng)q(th)29 b Fc(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(133)2025 5033
+y Fe(completion-query-items)14 b Fc(:)k(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)29
+b Fb(134)2025 5120 y Fe(COMPREPLY)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b
+Fb(90)2025 5208 y Fe(convert-meta)25 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(134)2025 5295
+y Fe(COPROC)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(90)p
+eop end
+%%Page: 201 207
+TeXDict begin 201 206 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(201)146 294 y Fs(D)150 411 y Fe(DIRSTACK)18
+b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)32 b Fb(90)150 499 y Fe(disable-completion)7
+b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(134)146
+754 y Fs(E)150 872 y Fe(echo-control-characters)12 b
+Fc(:)18 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)26 b Fb(134)150 959 y Fe(editing-mode)f
+Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37
+b Fb(134)150 1047 y Fe(emacs-mode-string)10 b Fc(:)17
+b(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25 b Fb(134)150 1135
+y Fe(EMACS)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(90)150
+1222 y Fe(enable-active-region)30 b(The)16 b Fc(:)e(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)31
+b Fb(135)150 1310 y Fe(enable-bracketed-paste)14 b Fc(:)k(:)c(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29
+b Fb(135)150 1398 y Fe(enable-keypad)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(135)150 1486 y Fe(enable-meta-key)
+15 b Fc(:)i(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30
+b Fb(135)150 1573 y Fe(ENV)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
+b Fb(90)150 1661 y Fe(EPOCHREALTIME)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(91)150 1749 y Fe(EPOCHSECONDS)8
+b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+22 b Fb(91)150 1836 y Fe(EUID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(91)150 1924 y Fe(EXECIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(91)150
+2011 y Fe(expand-tilde)e Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)37 b Fb(135)146 2267 y Fs(F)150 2384
+y Fe(FCEDIT)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(91)150
+2472 y Fe(FIGNORE)i Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(91)150
+2560 y Fe(force-meta-prefix)10 b Fc(:)17 b(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)25 b Fb(135)150 2647 y Fe(FUNCNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32
+b Fb(91)150 2735 y Fe(FUNCNEST)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
+Fb(91)146 2979 y Fs(G)150 3096 y Fe(GLOBIGNORE)13 b Fc(:)i(:)e(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27
+b Fb(91)150 3184 y Fe(GLOBSORT)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
+Fb(92)150 3271 y Fe(GROUPS)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20
+b Fb(92)146 3515 y Fs(H)150 3633 y Fe(histchars)15 b
+Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)30 b Fb(92)150 3721 y Fe(HISTCMD)22 b Fc(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)35 b Fb(92)150 3808 y Fe(HISTCONTROL)10 b
+Fc(:)16 b(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)25 b Fb(93)150 3896 y Fe(HISTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32
+b Fb(93)150 3984 y Fe(HISTFILESIZE)8 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(93)150
+4071 y Fe(HISTIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(93)150 4159 y
+Fe(history-preserve-point)14 b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(136)150
+4247 y Fe(history-size)c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)37 b Fb(136)150 4334 y Fe(HISTSIZE)18
+b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)32 b Fb(93)150 4422 y Fe(HISTTIMEFORMAT)23
+b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
+b Fb(94)150 4510 y Fe(HOME)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(85)150 4598 y Fe(horizontal-scroll-mode)14 b Fc(:)k(:)c(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29
+b Fb(136)150 4685 y Fe(HOSTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b
+Fb(94)150 4773 y Fe(HOSTNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(94)150
+4860 y Fe(HOSTTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(94)2021 294
+y Fs(I)2025 420 y Fe(IFS)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28
+b Fb(85)2025 510 y Fe(IGNOREEOF)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(94)2025
+600 y Fe(input-meta)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(136)2025 691 y Fe(INPUTRC)c
+Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)35 b Fb(94)2025 781 y Fe(INSIDE_EMACS)8
+b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+22 b Fb(94)2025 868 y Fe(isearch-terminators)k Fc(:)13
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(136)2021 1167 y Fs(K)2025
+1290 y Fe(keymap)22 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(136)2021
+1601 y Fs(L)2025 1727 y Fe(LANG)20 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35
+b Fb(8,)26 b(94)2025 1817 y Fe(LC_ALL)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
+b Fb(94)2025 1907 y Fe(LC_COLLATE)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(94)2025
+1998 y Fe(LC_CTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(95)2025 2088
+y Fe(LC_MESSAGES)21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)34 b Fb(8,)26 b(95)2025 2178 y Fe(LC_NUMERIC)13
+b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)27 b Fb(95)2025 2269 y Fe(LC_TIME)22 b Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)35 b Fb(95)2025 2359 y Fe(LINENO)6 b Fc(:)14
+b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)21 b Fb(95)2025 2446 y Fe(LINES)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(95)2021 2746
+y Fs(M)2025 2872 y Fe(MACHTYPE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b
+Fb(95)2025 2962 y Fe(MAIL)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26
+b Fb(85)2025 3052 y Fe(MAILCHECK)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(95)2025
+3143 y Fe(MAILPATH)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(85)2025 3233
+y Fe(MAPFILE)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(95)2025 3323
+y Fe(mark-modified-lines)26 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(137)2025 3414 y Fe(mark-symlinked-directories)27
+b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+36 b Fb(137)2025 3504 y Fe(match-hidden-files)7 b Fc(:)17
+b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(137)2025 3594
+y Fe(menu-complete-display-prefix)17 b Fc(:)h(:)13 b(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)31 b Fb(137)2025 3681 y Fe(meta-flag)13
+b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)28 b Fb(136)2021 3992 y Fs(O)2025 4118 y Fe(OLDPWD)6
+b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(95)2025 4208 y Fe(OPTARG)6
+b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(85)2025 4299 y Fe(OPTERR)6
+b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(95)2025 4389 y Fe(OPTIND)6
+b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(85)2025 4480 y Fe(OSTYPE)6
+b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(95)2025 4567 y Fe(output-meta)8
+b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+23 b Fb(137)p eop end
+%%Page: 202 208
+TeXDict begin 202 207 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(202)146 294 y Fs(P)150 410 y Fe(page-completions)
+13 b Fc(:)j(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)27 b Fb(137)150
+497 y Fe(PATH)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25
+b Fb(85)150 584 y Fe(PIPESTATUS)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(95)150
+671 y Fe(POSIXLY_CORRECT)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)32 b Fb(95)150 758 y Fe(PPID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)25 b Fb(96)150 846 y Fe(PROMPT_COMMAND)e Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
+b Fb(96)150 933 y Fe(PROMPT_DIRTRIM)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(96)150 1020 y Fe(PS0)14
+b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(96)150
+1107 y Fe(PS1)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
+b Fb(85)150 1194 y Fe(PS2)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
+b Fb(85)150 1281 y Fe(PS3)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
+b Fb(96)150 1369 y Fe(PS4)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
+b Fb(96)150 1456 y Fe(PWD)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28
+b Fb(96)146 1689 y Fs(R)150 1804 y Fe(RANDOM)6 b Fc(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)20 b Fb(96)150 1892 y Fe(READLINE_ARGUMENT)12
+b Fc(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(96)150
+1979 y Fe(READLINE_LINE)f Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)37 b Fb(96)150 2066 y Fe(READLINE_MARK)25
+b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Fb(96)150 2153 y Fe(READLINE_POINT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(97)150 2240 y Fe(REPLY)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(97)150 2327 y
+Fe(revert-all-at-newline)17 b Fc(:)h(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32
+b Fb(138)146 2560 y Fs(S)150 2676 y Fe(search-ignore-case)7
+b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(138)150
+2763 y Fe(SECONDS)g Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(97)150
+2851 y Fe(SHELL)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
+b Fb(97)150 2938 y Fe(SHELLOPTS)15 b Fc(:)h(:)d(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30 b Fb(97)150
+3025 y Fe(SHLVL)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
+b Fb(97)150 3112 y Fe(show-all-if-ambiguous)17 b Fc(:)h(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)32 b Fb(138)150 3199 y Fe(show-all-if-unmodified)14
+b Fc(:)k(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)29 b Fb(138)2025 260 y Fe(show-mode-in-prompt)d
+Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(138)2025 351 y
+Fe(skip-completed-text)26 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(138)2025 438 y Fe(SRANDOM)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(97)2021 758 y Fs(T)2025 887 y Fe(TEXTDOMAIN)15 b
+Fc(:)g(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)30 b Fb(8)2025 978 y Fe(TEXTDOMAINDIR)7 b Fc(:)16
+b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)23
+b Fb(8)2025 1069 y Fe(TIMEFORMAT)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(97)2025
+1161 y Fe(TMOUT)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
+b Fb(98)2025 1248 y Fe(TMPDIR)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21
+b Fb(98)2021 1567 y Fs(U)2025 1692 y Fe(UID)14 b Fc(:)f(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)28 b Fb(98)2021 2012 y Fs(V)2025 2140
+y Fe(vi-cmd-mode-string)7 b Fc(:)17 b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22
+b Fb(138)2025 2232 y Fe(vi-ins-mode-string)7 b Fc(:)17
+b(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(139)2025 2319
+y Fe(visible-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)35 b Fb(139)150 3838 y Fs(D.4)68 b(F)-11 b(unction)44
+b(Index)146 4324 y(A)150 4441 y Fe(abort)27 b(\(C-g\))15
+b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)30
+b Fb(153)150 4529 y Fe(accept-line)e(\(Newline)g(or)e(Return\))12
+b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)27
+b Fb(146)150 4616 y Fe(alias-expand-line)i(\(\))9 b Fc(:)14
+b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(156)146 4872 y Fs(B)150
+4989 y Fe(backward-char)29 b(\(C-b\))12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)26 b Fb(145)150 5077 y Fe(backward-delete-char)k(\(Rubout\))22
+b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
+b Fb(148)150 5165 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e
+Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
+Fb(149)150 5252 y Fe(backward-kill-word)30 b(\(M-DEL\))11
+b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+26 b Fb(150)150 5340 y Fe(backward-word)j(\(M-b\))12
+b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(145)2025 4294
+y Fe(beginning-of-history)k(\(M-<\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(146)2025
+4383 y Fe(beginning-of-line)j(\(C-a\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
+b Fb(145)2025 4471 y Fe(bracketed-paste-begin)c(\(\))16
+b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)31 b Fb(148)2021 4768 y Fs(C)2025 4891 y Fe
+(call-last-kbd-macro)f(\(C-x)c(e\))15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(153)2025 4981
+y Fe(capitalize-word)f(\(M-c\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
+b Fb(149)2025 5071 y Fe(character-search)29 b(\(C-]\))22
+b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)36 b Fb(154)2025 5161 y Fe
+(character-search-backward)31 b(\(M-C-]\))10 b Fc(:)15
+b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(154)2025 5250
+y Fe(clear-display)j(\(M-C-l\))7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
+b Fb(146)2025 5340 y Fe(clear-screen)28 b(\(C-l\))14
+b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(146)p eop
+end
+%%Page: 203 209
+TeXDict begin 203 208 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(203)150 264 y Fe(complete)27 b(\(TAB\))7
+b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
+b Fb(151)150 351 y Fe(complete-command)29 b(\(M-!\))23
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)36 b Fb(153)150 438 y Fe(complete-filename)29
+b(\(M-/\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(152)150 526 y Fe(complete-hostname)
+c(\(M-@\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(152)150 613 y Fe
+(complete-into-braces)d(\(M-{\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(153)150 700
+y Fe(complete-username)j(\(M-~\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33
+b Fb(152)150 788 y Fe(complete-variable)c(\(M-$\))20
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)33 b Fb(152)150 875 y Fe(copy-backward-word)d(\(\))7
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(150)150 962 y Fe(copy-forward-word)
+29 b(\(\))9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(150)150
+1050 y Fe(copy-region-as-kill)30 b(\(\))22 b Fc(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)36 b Fb(150)146 1297 y Fs(D)150 1414 y Fe(dabbrev-expand)29
+b(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
+b Fb(153)150 1501 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)32 b Fb(148)150 1589 y Fe(delete-char-or-list)e
+(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(152)150 1676 y Fe
+(delete-horizontal-space)31 b(\(\))11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(150)150
+1763 y Fe(digit-argument)j(\()p Fd(M-0)p Fe(,)e Fd(M-1)p
+Fe(,)f(...)g Fd(M--)p Fe(\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
+26 b Fb(151)150 1851 y Fe(display-shell-version)k(\(C-x)d(C-v\))c
+Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b
+Fb(156)150 1929 y Fe(do-lowercase-version)30 b(\(M-A,)227
+2016 y(M-B,)c(M-)p Fd(x)p Fe(,)h(...\))10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)25 b Fb(154)150 2104 y Fe(downcase-word)k(\(M-l\))
+12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(149)150 2191
+y Fe(dump-functions)j(\(\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+32 b Fb(155)150 2278 y Fe(dump-macros)c(\(\))7 b Fc(:)14
+b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
+b Fb(155)150 2366 y Fe(dump-variables)29 b(\(\))17 b
+Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(155)150
+2453 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(153)146 2701 y Fs(E)150
+2817 y Fe(edit-and-execute-command)k(\(C-x)c(C-e\))14
+b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(156)150 2904
+y Fe(end-kbd-macro)g(\(C-x)d(\)\))13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)28
+b Fb(153)150 2992 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)35 b Fb(148)150 3079 y Fe(end-of-history)29 b(\(M->\))9
+b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(146)150 3166 y
+Fe(end-of-line)k(\(C-e\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
+b Fb(145)150 3254 y Fe(exchange-point-and-mark)f(\(C-x)26
+b(C-x\))17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)32
+b Fb(154)150 3341 y Fe(execute-named-command)e(\(M-x\))8
+b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+23 b Fb(155)150 3428 y Fe(export-completions)30 b(\(\))7
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(152)146 3676 y Fs(F)150
+3793 y Fe(fetch-history)29 b(\(\))19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)34 b Fb(148)150 3880 y Fe(forward-backward-delete-char)e
+(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
+b Fb(148)150 3967 y Fe(forward-char)e(\(C-f\))14 b Fc(:)h(:)e(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)29 b Fb(145)150 4055 y Fe(forward-search-history)i
+(\(C-s\))24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)38 b Fb(146)150 4142 y Fe(forward-word)28 b(\(M-f\))14
+b Fc(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(145)146 4379
+y Fs(G)150 4496 y Fe(glob-complete-word)h(\(M-g\))16
+b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)31 b Fb(155)150 4583 y Fe(glob-expand-word)e(\(C-x)e(*\))c
+Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)38 b Fb(155)150 4670 y Fe(glob-list-expansions)30
+b(\(C-x)d(g\))13 b Fc(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)27 b Fb(155)2021 294 y Fs(H)2025 422 y Fe
+(history-and-alias-expand-line)32 b(\(\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)28 b Fb(156)2025 513 y Fe(history-expand-line)i
+(\(M-^\))13 b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)28 b Fb(155)2025 604 y Fe(history-search-backward)j
+(\(\))11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)26 b Fb(147)2025 695 y Fe(history-search-forward)k(\(\))13
+b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)28 b Fb(147)2025 786 y Fe(history-substring-search-backw)q(ard)k
+(\(\))20 b Fc(:)13 b(:)g(:)g(:)g(:)35 b Fb(147)2025 874
+y Fe(history-substring-search-forwa)q(rd)d(\(\))22 b
+Fc(:)13 b(:)h(:)f(:)g(:)g(:)37 b Fb(147)2021 1200 y Fs(I)2025
+1329 y Fe(insert-comment)29 b(\(M-#\))9 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+24 b Fb(154)2025 1420 y Fe(insert-completions)29 b(\(M-*\))16
+b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)31 b Fb(151)2025 1507 y Fe(insert-last-argument)f(\(M-.)c(or)g
+(M-_\))7 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
+b Fb(156)2021 1834 y Fs(K)2025 1962 y Fe(kill-line)27
+b(\(C-k\))c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(149)2025 2053 y Fe(kill-region)28 b(\(\))7 b Fc(:)14
+b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
+b Fb(150)2025 2144 y Fe(kill-whole-line)29 b(\(\))14
+b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(150)2025
+2231 y Fe(kill-word)e(\(M-d\))c Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)37 b Fb(150)2021 2548 y Fs(M)2025 2676 y
+Fe(magic-space)28 b(\(\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)22 b Fb(156)2025 2767 y Fe(menu-complete)28
+b(\(\))20 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34
+b Fb(151)2025 2854 y Fe(menu-complete-backward)c(\(\))13
+b Fc(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)28 b Fb(152)2021 3181 y Fs(N)2025 3309 y Fe(next-history)g(\(C-n\))
+14 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(146)2025
+3401 y Fe(next-screen-line)g(\(\))12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+27 b Fb(146)2025 3472 y Fe(non-incremental-forward-)2102
+3560 y(search-history)h(\(M-n\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(147)2025 3647 y Fe(non-incremental-reverse-)2102
+3734 y(search-history)28 b(\(M-p\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
+b Fb(147)2021 4070 y Fs(O)2025 4198 y Fe(operate-and-get-next)30
+b(\(C-o\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)26 b Fb(148)2025 4285 y Fe(overwrite-mode)j(\(\))17
+b Fc(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(149)p
+eop end
+%%Page: 204 210
+TeXDict begin 204 209 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(204)146 294 y Fs(P)150 411 y Fe
+(possible-command-completions)32 b(\(C-x)26 b(!\))9 b
+Fc(:)14 b(:)g(:)f(:)g(:)g(:)24 b Fb(153)150 499 y Fe
+(possible-completions)30 b(\(M-?\))11 b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(151)150
+586 y Fe(possible-filename-completions)32 b(\(C-x)27
+b(/\))7 b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(152)150 674
+y Fe(possible-hostname-completions)32 b(\(C-x)27 b(@\))7
+b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(153)150 762 y Fe
+(possible-username-completions)32 b(\(C-x)27 b(~\))7
+b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(152)150 849 y Fe
+(possible-variable-completions)32 b(\(C-x)27 b($\))7
+b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(152)150 937 y Fe(prefix-meta)28
+b(\(ESC\))17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
+b Fb(154)150 1025 y Fe(previous-history)d(\(C-p\))23
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)36 b Fb(146)150 1112 y Fe(previous-screen-line)30
+b(\(\))19 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(146)150 1200 y Fe
+(print-last-kbd-macro)d(\(\))19 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(153)146
+1454 y Fs(Q)150 1571 y Fe(quoted-insert)c(\(C-q)d(or)g(C-v\))8
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)22 b Fb(148)146 1825 y Fs(R)150 1943 y Fe(re-read-init-file)29
+b(\(C-x)e(C-r\))15 b Fc(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)30 b Fb(153)150 2030 y Fe(redraw-current-line)g(\(\))22
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)36 b Fb(146)150 2118 y Fe(reverse-search-history)31
+b(\(C-r\))24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)38 b Fb(146)150 2205 y Fe(revert-line)28 b(\(M-r\))17
+b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(154)146
+2449 y Fs(S)150 2567 y Fe(self-insert)c(\(a,)e(b,)g(A,)g(1,)h(!,)f
+(...\))13 b Fc(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27
+b Fb(148)150 2654 y Fe(set-mark)g(\(C-@\))7 b Fc(:)15
+b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22
+b Fb(154)150 2742 y Fe(shell-backward-kill-word)31 b(\(\))8
+b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+23 b Fb(150)150 2830 y Fe(shell-backward-word)30 b(\(M-C-b\))8
+b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+23 b Fb(145)150 2917 y Fe(shell-expand-line)29 b(\(M-C-e\))13
+b Fc(:)j(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)28 b Fb(155)150 3005 y Fe(shell-forward-word)i(\(M-C-f\))11
+b Fc(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+26 b Fb(145)150 3093 y Fe(shell-kill-word)j(\(M-C-d\))20
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)33 b Fb(150)150 3180 y Fe(shell-transpose-words)d
+(\(M-C-t\))22 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)35 b Fb(149)2025 264 y Fe(skip-csi-sequence)29 b(\(\))9
+b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(154)2025 361 y
+Fe(spell-correct-word)29 b(\(C-x)e(s\))18 b Fc(:)13 b(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fb(155)2025
+448 y Fe(start-kbd-macro)c(\(C-x)d(\(\))8 b Fc(:)14 b(:)f(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)23
+b Fb(153)2021 891 y Fs(T)2025 1038 y Fe(tilde-expand)28
+b(\(M-&\))14 b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
+b Fb(154)2025 1135 y Fe(transpose-chars)g(\(C-t\))7 b
+Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(149)2025 1222 y Fe(transpose-words)
+29 b(\(M-t\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(149)2021
+1676 y Fs(U)2025 1823 y Fe(undo)k(\(C-_)h(or)f(C-x)g(C-u\))10
+b Fc(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(154)2025 1920 y Fe
+(universal-argument)k(\(\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22
+b Fb(151)2025 2017 y Fe(unix-filename-rubout)30 b(\(\))19
+b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)34 b Fb(150)2025 2114 y Fe(unix-line-discard)29
+b(\(C-u\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(149)2025 2211 y Fe
+(unix-word-rubout)29 b(\(C-w\))22 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
+b Fb(150)2025 2298 y Fe(upcase-word)28 b(\(M-u\))17 b
+Fc(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(149)2021
+2752 y Fs(Y)2025 2899 y Fe(yank)26 b(\(C-y\))18 b Fc(:)c(:)f(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33
+b Fb(150)2025 2996 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))8
+b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)22 b Fb(147)2025 3093 y Fe(yank-nth-arg)28 b(\(M-C-y\))9
+b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(147)2025 3180
+y Fe(yank-pop)j(\(M-y\))7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)22 b Fb(150)150 3929 y Fs(D.5)68 b(Concept)45
+b(Index)146 4523 y(A)150 4645 y Fb(alias)27 b(expansion)22
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37
+b Fb(108)150 4735 y(arithmetic)26 b(ev)l(aluation)21
+b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(106)150 4824
+y(arithmetic)26 b(expansion)11 b Fc(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+26 b Fb(36)150 4914 y(arithmetic)g(op)r(erators)18 b
+Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(107)150 5003
+y(arithmetic,)27 b(shell)21 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)36 b Fb(106)150 5090 y(arra)n(ys)19 b Fc(:)13
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)34 b Fb(109)2021 4523 y Fs(B)2025 4641
+y Fb(bac)n(kground)13 b Fc(:)f(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)28 b Fb(123)2025 4729 y(Bash)e(con\014guration)
+11 b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(173)2025
+4817 y(Bash)g(installation)9 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)24 b Fb(173)2025 4905 y(binary)h(arithmetic)h(op)r
+(erators)16 b Fc(:)f(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)31 b Fb(107)2025 4993 y(bit)n(wise)26
+b(arithmetic)h(op)r(erators)8 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)23 b Fb(107)2025
+5081 y(Bourne)j(shell)20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b Fb(5)2025 5169
+y(brace)26 b(expansion)9 b Fc(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)24 b Fb(25)2025 5256 y(builtin)15 b Fc(:)e(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)30 b Fb(3)p eop end
+%%Page: 205 211
+TeXDict begin 205 210 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(205)146 294 y Fs(C)150 412 y Fb(command)26
+b(editing)19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)34
+b Fb(129)150 500 y(command)26 b(execution)12 b Fc(:)h(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)26 b Fb(45)150 587 y(command)g(expansion)c
+Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fb(44)150
+675 y(command)26 b(history)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)33 b Fb(166)150 763 y(command)26 b(searc)n(h)16
+b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30
+b Fb(45)150 851 y(command)c(substitution)21 b Fc(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(35)150 939 y(command)26
+b(timing)11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25
+b Fb(10)150 1027 y(commands,)h(comp)r(ound)c Fc(:)13
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1114 y(commands,)26
+b(conditional)10 b Fc(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25
+b Fb(12)150 1202 y(commands,)h(grouping)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)29 b Fb(17)150 1290 y(commands,)d(lists)10
+b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)24
+b Fb(11)150 1378 y(commands,)i(lo)r(oping)e Fc(:)13 b(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)37 b Fb(12)150 1466 y(commands,)26
+b(pip)r(elines)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)30
+b Fb(10)150 1554 y(commands,)c(shell)c Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(9)150 1642 y(commands,)26
+b(simple)e Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
+b Fb(9)150 1729 y(commen)n(ts,)26 b(shell)13 b Fc(:)i(:)e(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)28 b Fb(9)150
+1817 y(Compatibilit)n(y)f(Lev)n(el)10 b Fc(:)j(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)25 b Fb(120)150 1905 y(Compatibilit)n(y)i(Mo)r(de)22
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(120)150
+1993 y(completion)27 b(builtins)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)36 b Fb(159)150 2081 y(conditional)27 b(arithmetic)f(op)r
+(erator)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)37 b Fb(107)150 2169 y(con\014guration)22 b Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
+b Fb(173)150 2256 y(con)n(trol)26 b(op)r(erator)8 b Fc(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23
+b Fb(3)150 2344 y(copro)r(cess)18 b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)32 b
+Fb(18)146 2600 y Fs(D)150 2718 y Fb(directory)26 b(stac)n(k)9
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
+b Fb(111)150 2805 y(dollar-single)k(quote)d(quoting)18
+b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)34 b Fb(6)146 3061 y Fs(E)150 3179
+y Fb(editing)26 b(command)g(lines)17 b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32
+b Fb(129)150 3267 y(en)n(vironmen)n(t)18 b Fc(:)12 b(:)h(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(46)150
+3355 y(ev)l(aluation,)26 b(arithmetic)9 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)24 b Fb(106)150 3443 y(ev)n(en)n(t)h(designators)c
+Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34
+b Fb(170)150 3531 y(execution)26 b(en)n(vironmen)n(t)17
+b Fc(:)12 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)31 b Fb(45)150 3618
+y(exit)25 b(status)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(3,)k(47)150 3706 y(expansion)9
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)24 b Fb(24)150 3794 y(expansion,)i(arithmetic)18
+b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(36)150 3882
+y(expansion,)26 b(brace)16 b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)30 b Fb(25)150 3970 y(expansion,)c(\014lename)18
+b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(37)150
+4058 y(expansion,)26 b(parameter)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)34 b Fb(27)150 4145 y(expansion,)26 b(pathname)7
+b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(37)150
+4233 y(expansion,)k(tilde)14 b Fc(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)28 b Fb(26)150 4321 y(expressions,)f(arithmetic)11
+b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(106)150 4408 y(expressions,)h
+(conditional)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)30 b Fb(104)2021
+294 y Fs(F)2025 414 y Fb(\014eld)21 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)36 b Fb(3)2025 503 y(\014lename)21 b Fc(:)14 b(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36
+b Fb(3)2025 591 y(\014lename)26 b(expansion)11 b Fc(:)i(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)26 b Fb(37)2025 680 y(foreground)9
+b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)24 b Fb(123)2025 767 y(functions,)i(shell)9 b
+Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)24
+b Fb(19)2021 1038 y Fs(H)2025 1158 y Fb(history)h(builtins)20
+b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35
+b Fb(167)2025 1247 y(history)25 b(ev)n(en)n(ts)8 b Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
+b Fb(170)2025 1335 y(history)i(expansion)14 b Fc(:)g(:)f(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)29 b Fb(169)2025 1424 y(history)c(list)9
+b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)24 b Fb(166)2025 1511 y(History)-6 b(,)25 b(ho)n(w)h(to)g(use)
+19 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(165)2021
+1782 y Fs(I)2025 1903 y Fb(iden)n(ti\014er)12 b Fc(:)g(:)h(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)27
+b Fb(3)2025 1991 y(initialization)h(\014le,)e(readline)17
+b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)32 b Fb(131)2025 2080 y(installation)21
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)34 b Fb(173)2025 2168 y(in)n(teraction,)26 b(readline)7
+b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(128)2025
+2257 y(in)n(teractiv)n(e)k(shell)16 b Fc(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)31 b Fb(101,)c(103)2025 2346 y(in)n(ternationalization)22
+b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
+b Fb(7)2025 2433 y(in)n(ternationalized)27 b(scripts)13
+b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)28 b Fb(8)2021 2704 y
+Fs(J)2025 2824 y Fb(job)23 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)38 b Fb(3)2025 2911 y(job)26 b(con)n(trol)17 b Fc(:)d(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 b Fb(3,)c(123)2021
+3183 y Fs(K)2025 3303 y Fb(kill)f(ring)7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)22
+b Fb(130)2025 3390 y(killing)k(text)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b
+Fb(130)2021 3661 y Fs(L)2025 3782 y Fb(lo)r(calization)i
+Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)35 b Fb(7)2025 3869 y(login)26 b(shell)c
+Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)36 b Fb(101)2021 4140 y Fs(M)2025 4260 y Fb(matc)n(hing,)26
+b(pattern)9 b Fc(:)k(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)24
+b Fb(38)2025 4347 y(metac)n(haracter)7 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(3)p
+eop end
+%%Page: 206 212
+TeXDict begin 206 211 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(206)146 294 y Fs(N)150 410 y Fb(name)19
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(3)150 497
+y(nativ)n(e)25 b(languages)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)34 b Fb(7)150 584 y(notation,)27
+b(readline)13 b Fc(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)27
+b Fb(129)146 827 y Fs(O)150 943 y Fb(op)r(erator,)g(shell)c
+Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+37 b Fb(3)146 1186 y Fs(P)150 1302 y Fb(parameter)26
+b(expansion)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28
+b Fb(27)150 1389 y(parameters)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fb(22)150
+1476 y(parameters,)27 b(p)r(ositional)7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)21 b Fb(23)150 1563 y(parameters,)27 b(sp)r(ecial)7
+b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)21
+b Fb(23)150 1650 y(pathname)k(expansion)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)32 b Fb(37)150 1738 y(pattern)25 b(matc)n(hing)c
+Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
+b Fb(38)150 1825 y(pip)r(eline)10 b Fc(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24
+b Fb(10)150 1912 y(POSIX)e Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
+b Fb(3)150 1999 y(POSIX)25 b(description)10 b Fc(:)j(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)25 b Fb(115)150 2086 y(POSIX)g(Mo)r(de)14
+b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29
+b Fb(115)150 2174 y(pro)r(cess)e(group)15 b Fc(:)e(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)30 b Fb(3)150
+2261 y(pro)r(cess)d(group)e(ID)11 b Fc(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(3)150 2348 y(pro)r(cess)h(substitution)
+11 b Fc(:)h(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)25 b Fb(36)150
+2435 y(programmable)i(completion)8 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)23
+b Fb(156)150 2522 y(prompting)15 b Fc(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)30 b Fb(112)146
+2765 y Fs(Q)150 2881 y Fb(quoting)16 b Fc(:)d(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)31
+b Fb(6)150 2968 y(quoting,)26 b(ANSI)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(6)146
+3211 y Fs(R)150 3327 y Fb(Readline,)26 b(ho)n(w)g(to)g(use)11
+b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(127)150 3414
+y(redirection)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fb(40)150 3501 y(reserv)n(ed)f(w)n
+(ord)13 b Fc(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)28 b Fb(4)150 3589 y(reserv)n(ed)e(w)n(ords)15
+b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30
+b Fb(9)150 3676 y(restricted)c(shell)12 b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fb(114)150 3763 y(return)e(status)
+10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)25 b Fb(4)2021 294 y Fs(S)2025 418 y Fb(shell)h(arithmetic)15
+b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)30
+b Fb(106)2025 508 y(shell)c(function)18 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(19)2025
+597 y(shell)26 b(script)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(49)2025 687
+y(shell)h(v)l(ariable)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(22)2025 777 y(shell,)k(in)n
+(teractiv)n(e)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+33 b Fb(103)2025 867 y(signal)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28
+b Fb(4)2025 956 y(signal)f(handling)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)21 b Fb(48)2025 1046
+y(sp)r(ecial)27 b(builtin)16 b Fc(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)31 b Fb(4,)26 b(83)2025 1136 y(startup)f(\014les)8
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)23 b Fb(101)2025 1226 y(string)j(translations)8 b
+Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23
+b Fb(8)2025 1313 y(susp)r(ending)i(jobs)10 b Fc(:)k(:)f(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(123)2021 1610 y Fs(T)2025
+1734 y Fb(tilde)h(expansion)7 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)22 b Fb(26)2025 1823 y(tok)n(en)17
+b Fc(:)12 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(4)2025 1911
+y(translation,)27 b(nativ)n(e)e(languages)c Fc(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34
+b Fb(7)2021 2207 y Fs(U)2025 2329 y Fb(unary)25 b(arithmetic)h(op)r
+(erators)10 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)25 b Fb(107)2021 2626 y Fs(V)2025
+2750 y Fb(v)l(ariable,)h(shell)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(22)2025 2837
+y(v)l(ariables,)f(readline)7 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)22 b Fb(132)2021 3134 y Fs(W)2025 3258 y Fb(w)n(ord)10
+b Fc(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(4)2025
+3345 y(w)n(ord)h(splitting)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(37)2021 3642 y
+Fs(Y)2025 3763 y Fb(y)n(anking)h(text)13 b Fc(:)f(:)h(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28 b Fb(130)p
+eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF