From d052bd6fd99f76408f307cedd86d5a3de0184938 Mon Sep 17 00:00:00 2001 From: Chet Ramey Date: Thu, 20 Apr 2023 11:27:36 -0400 Subject: [PATCH] readline and completion fixes --- CWRU/CWRU.chlog | 43 + POSIX | 7 + bashline.c | 4 + doc/bash.html | 18 +- doc/bashref.dvi | Bin 824140 -> 836976 bytes doc/bashref.html | 9 +- doc/bashref.log | 68 +- doc/bashref.ps | 9652 ++++++++++++++++--------------- doc/builtins.ps | 4435 +++++++------- doc/rbash.ps | 2 +- execute_cmd.c | 2 + lib/readline/display.c | 35 +- lib/readline/doc/rltech.texi | 6 +- lib/readline/examples/fileman.c | 6 +- lib/readline/histexpand.c | 2 +- lib/readline/rlprivate.h | 1 + lib/readline/text.c | 5 +- lib/readline/vi_mode.c | 5 +- lib/sh/strlcpy.c | 2 +- 19 files changed, 7318 insertions(+), 6984 deletions(-) diff --git a/CWRU/CWRU.chlog b/CWRU/CWRU.chlog index e48518033..4fb61ceb5 100644 --- a/CWRU/CWRU.chlog +++ b/CWRU/CWRU.chlog @@ -6044,3 +6044,46 @@ builtins/complete.def doc/bash.1,lib/readline/doc/rluser.texi - compgen: document new -V option + + 4/18 + ---- +lib/readline/vi_mode.c + - rl_domove_read_callback: call _rl_arg_init before reading digit + argument so prompt gets saved, both callback and non-callback modes + From a report by Grisha Levit + - rl_vi_arg_dispatch: if we return 0 to end the digit argument and + turn off NUMERICARG, call rl_restore_prompt + +lib/readline/histexpand.c + - history_expand_internal: make sure subst_lhs is not null before we + call postproc_subst_rhs. + From a report by Grisha Levit + +lib/readline/display.c + - rl_redisplay: remove redundant code that ends up incrementing lpos + too much for meta characters displayed as octal escape sequences. + From a report by Grisha Levit + + 4/19 + ---- +bashline.c + - attempt_shell_completion: handle case where s > e after calls to + find_cmd_start and find_cmd_end, respectively. + From a report by Grisha Levit + +lib/readline/display.c + - update_line: fix setting of `wsatend' when computing ols and nls in + the multibyte case; this caused redisplay to print more characters + than it needed + - update_line: fix calculation of visible_wrap_offset when moving up + to line 0, trying to figure whether or not the visible prompt has + any invisible characters. Fixes C locale issue reported by + Grisha Levit + + 4/20 + ---- +lib/readline/text.c + - _rl_rubout_char: update erase-at-end-of-line hack to deal with the + unlikely event that a character in a non-multibyte locale is + displayed using an octal representation. + From a report by Grisha Levit diff --git a/POSIX b/POSIX index 68a9c00d2..b5b21d88a 100644 --- a/POSIX +++ b/POSIX @@ -313,6 +313,13 @@ The following list is what's changed when 'POSIX mode' is in effect: that a backslash preceding a double quote character will escape it and the backslash will be removed. + 66. Command substitutions don't set the '?' special parameter. The + exit status of a simple command without a command word is still the + exit status of the last command substitution that occurred while + evaluating the variable assignments and redirections in that + command, but that does not happen until after all of the + assignments and redirections. + There is other POSIX behavior that Bash does not implement by default even when in POSIX mode. Specifically: diff --git a/bashline.c b/bashline.c index 37cc48a91..a17f7a15f 100644 --- a/bashline.c +++ b/bashline.c @@ -1672,6 +1672,10 @@ attempt_shell_completion (const char *text, int start, int end) s1 = s = e1; break; } + else if (s > e) + { + s = s1 = start; e = e1 = end; /* reset */ + } /* Skip over assignment statements preceding a command name. If we don't find a command name at all, we can perform command name completion. If we find a partial command name, we should perform diff --git a/doc/bash.html b/doc/bash.html index a019bd958..b3738b574 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -10550,7 +10550,19 @@ case, any completion not matching filterpat is removed.

The return value is true unless an invalid option is supplied, an option -other than -p or -r is supplied without a name +other than +-p, + +-r, + +-D, + +-E, + +or +-I + +is supplied without a name argument, an attempt is made to remove a completion specification for a name for which no specification exists, or an error occurs adding a completion specification. @@ -15038,7 +15050,7 @@ There may be only one active coprocess at a time.

BUGS

-This document was created by man2html from /usr/local/src/bash/bash-20230416/doc/bash.1.
-Time: 17 April 2023 14:27:09 EDT +This document was created by man2html from bash.1.
+Time: 18 April 2023 10:26:09 EDT diff --git a/doc/bashref.dvi b/doc/bashref.dvi index 56964f10a8381de5abc726b1871629a6f58eec0e..71f7d44bd1902cce5a587c4ae0ce4e6333c13dcd 100644 GIT binary patch delta 38535 zc-nM*cVHC7_c%K{yLUh!9Rkvkrb!@$gwQ*LmHwA|+828;S)R>hHaoy-V=>`Tdi<-Dz*$ym@^l$7_>+yf@|k zE|DpT15y){1`SRckes%$MT-`aw)4}Q{WGse_zJ!qRpPcg{BmtU@_^)&`XVV;@+GBf z{Huna`XyG@MWm!`@<&BZ$SJaWs%Y4CyGI*mwR`O@r#3J#Io?luKjN@>yjp3={Zr3d zEnb^dyP*%PvC~yhO~d~Fd2q=y117a-^>a##Rse~bU+i%t4Y-t3WYZ>0o8_lr4WpAS zo+53At-$8CIrD9SsTSw`&vh@gI2w321ul2xP7Y1uXsFl_Uj?vhcgguuO8qyomq?_3 zk-BT3G_alyy-K9C`fJ1EWT{hq_~c6y(m86XNTMO3XV{hSe_^{f?NYG&S;@9v|;MgKbsr7#p*Gka*VOOFA&EGA_#z!~z zBz!FKOqQhddfmGlo9C9Dlcc2j;ma=Iqs#IQ5&&AeVm$Wp{mP}-%c470K?CiaZ-8`M zYr8r%%;L0a*;z9)=iI++etl%UO-lN6S3}Z(^vcRzZD1)j`3FQ!NJ~sgN=)*%`g!2& zB8wN10IR|qjqpn^{#)M=Gek=Dn=>YehC7?JO2$@*JZ#0AXj5IdayGw|_!6|dRch@w z?fDm44uY2T&##$EOZNtVJwyBP?(a$Rfcgvf%#!e#ws8Z0 zzJA|0cqY}Wm680}VRKJ-Cf5(Ye-S>l8vm#Gx?;;V#7esdM&RSN2NNWcl3c&OY6ZSZ zfgw2Fu&q5oD7)H&m?tr*m{7|lhYkGWp3_O$S8+UYsXL9{NHC}A#+1VDcy!Md? zu!Huy_#zcO#+$B%^^;Pxb&tP~RIuBJ>u|cR3?I{;^yADfK2;(CO-z5rh4l|S`y|e@ zc<%t|o%$Vn$4VqEss4-Ss`zu|^LBV9*MIdwYySM@#dSD-#Y>a%@#elQ_?Yv`JqS(X ztDE7Wx%Xcn=>zI#zMdzM^dwDxW4AO=%RS(Rfj>CV0m1nGV0V0kA0CNdXTLcVf!cKB zQG_Px?Z>3n8A+9umG|-e%nlSwz2p|p52$Z>?9~WzyqftRm!j)G{qzZmoSR#J*JpXH z$%Q!a@$av$5%SH-`d`0^Y6+`q{v{U))Bfuk9Om0=pGd6-!k!l$t47D)Z@{+c^@)Fc zNPtr1>xTidx34=DDP2z|(q5JPbq}whcW)`Bv?8rninmSC($A43_Of`}*Gq~~q=EX$ zTcn?0^RWZT(q+;&1`CJiU#3VOVRx@)NE2a-x-vwnfEnw)p;B8jNgF0=9UCi+lch90 zVxqLS6`9aoeEnyJG*yK*Q|3xxCNgW5`1)Y3G^34_$EI&2L-d|b={~Ho$17FC6!aF6owN{EM3=8fy9qp>`cZlS_?SNGXX#55`Q`;tJO3}~^KkO_E8=Z! zYtjjkRTD0@RkKPiarG2x;@FsC~Kvsfv(NnDZ9$BI(p$e9XO- z{M8bg%pXWjQIhbI_*yiWEN@MQzQNyEm+|BT;PAWgWVK2rmWe96r;>XlaypEqWRc}D zblFFjT&+DeZ$qNrH0#z;e!8rN9mpclt>_CMHP}7y{xLh7MY=A=U)~~%Q}Y7vFLc{L zYEU}$=q%J~Gh_I9an!NyPxNRVnQY~(q=5%Rn={7kotY4yE z4Ii87)$E=C+n7x{M;lEWnhn90eL_32li4Ifs%4GY#6fGqPq)^yrjso)e7TfE=CPHt zNCL@jA#itT7U{&M&LaIO@^E%_Dv4ulZzCr5@N|;KE>0t=o^ukk2IjT0U9Q#%S41w9G#(S|+-oW#Lk?P_!KG zCU$8jd(ut5Nv&&FvWrh_y#L>JHkTW<0K3!UwSd@-udHcT^4KPS(Xq{qWfu1^OJ2U! zR!|8oy`&%e$wP8smbZDyh<5+~dK;x$eQ+sxRf6ZAWyB;=tjowUazFp2Ys*M$nSHYo z(B!oUaA&R}QS9PSg|e@Pkv0(vFPB)nu-4hgHmpXS z&|PjMzcT@`q@7qWs*~r-@g}Lt`(>rmAyrsqZ`h*fop$$=( zG$09;rkLJm*k|{U)wCw2_i47^UI43>J+zS&OFQ*8_mQqJe8kfV8?cGoDaZZ%7<+LO zX&kgGviF%y{=`2XYP`Ac<$PChF{lEK{VMAsd!ObyPlM2YutILAJQvV?tdf-S71l>? zh9PJTbfiCXKj51GWPLQUjSq8JBmaofLl2N&gLCXD=6Ih?%(2H-ScQ>H1^!<}3Iyf! zWu%Lg!6q;gkn7?+tdWr;DZ3(S3k5hs`(Ad~JzfBIX9&`oh}r^CI=rb=pRtuB%P{%c zLbm=Pau~2ObvyYERuMi7-a%ITxH9A1_FQ+^#N`2(+v?FuJ$7dy?pKdZ%MTO*H^>L7 z@Mso~7G`r;HFznuJ1t(9+ml#XyUE`@azbW772Un1F?0M(4fu{$>I7~PUroR6>~d>% zuSW~+WgF~s&9)3WbW~`KLp>#ITn&lw1&}QPDO*Y%-gta*Y93pHF}bCssG54JXKn=e&^S~>s*+G<~61T0)?ke>d!`haWSezbUilBvWPC%w*FLb)xHY;exM;GFN zEb3u$D~ri8NBT6FCvncN&t{BVUStP`j2Nn-upGav}4sj4wT{)0{P0D+;{r;l=K71i>Gjrm&ed%!N52O0ot z-T(+c`NIaM%WHgW>J#YY;u;G=7bv%Tivob+ih$2zT?}P_ZC*dPt(v3r^u_#b&CnU| zS8fijDy$vf8Hs+gdlE?D)BfQ4Ag%p(Qc!-O`L==`VevUUt{^(ObhhHYM554)F>LNc zV~dOJM)cE&))2{56aC}RV9=!#a8~MYfC&F;lhYL_2MV=fBTtFL?)BnAq7{;#UkaPp zPiIxm$!uyI5c?OK8jGqmHRHrk1jHJ!1-FXD!?{QSY;`T)g%+gO0_0?6dnPOG*{B-Q zUIs>?hd)Ys$OaF*S@6KEZ*d-2^(3(Q)nAd8Y(y<#g0-HmC2z>IE^_o37V#u!9%v70hG!8z{DT`EJ11LJJDsK$yek z1U&~#^AaGi~`n(>^c{%|v4;*8Pmq!JL62 zvO{=;{$V|dASgIrAk*ZSqwnY$FOm$2U40d#dEE&iM{a)&l#gXPDH9^(2c2{Up}YSy zi+YJ97= zBsqrG>AxH#y$Jl;%{skFECjms!BceG@FvM+7vBW^YVr{>##rIrVufFgHFS;R0Nn#e zNVI@%_YpE$jvBg7|NaPh67+;{{jC1b+r*2LjCqHAj9SNW;)2J=$4OVxa=QN8aZqYV z%j_3Vk`AEt>7CyrcYtII*FV#1J|u%=cI+%kloG{gDW8E%J$D*axbTmzvcYFaXBgw7 zpV*u;s68SCZ=NCjp!=WB5I?QM59>Z53*bZJC!_>`nE5GjB8?$CM-ADQZwKvImS+Lk zAj$On30F%iw>umlFl|UL#Y6mZ#$L|4%kA(9**zB9inrljgk8;RX~3zFMlBAIfyjcI zcr0!!JIHb|u9ZzVOFFjS6}4=S@WJ%A+RFMDSo>ctuvXTxWoOBZ=$*|0T4H?Ad08-u#mOmy2AWN%X&50u&6@x}GCtfSjsx zqzF*;?>Vr9LLasB;^TQT6|w#k%f0|=V=a5_0+}ecAGea3FOqHW{^&*Gj=2%DVK!?b z=vCJn$*niroh7Ac4h*iWfu$1~&AiLb#sxz!mjfrNtZ6@P6)SBZ4?$N^jXIetK5ylMs;@{2`D`h(w3UajlCMYvdpKI6EbDXP6s%_d=U~avy7u*{`q)b_ z7toi&PGEOk*{5HUxHxz{-n`G@0+L$h`-;@V!1KNZ3t|3cGG4}Zk6i|!cCt=ild@J# zEt%yz(w^=4nz+RV==lvPVVi4JwH5Gt4`>;{AzAG=cGx_OH$xt z>~}!T*dKF$2YbJkJqr&XUAM&xe64~b5~U4DZo6ABm1??9Lr&)|&G!l+>?yJVJ%XkO zV_G$V=>oT_m~%T21#TPH1c6_bxEL!q}W3%hy+o0+3tTpfZ92z=ecEF)<&`{#QSJuq;|36iWp;}1`u z8KL#l3P4%21XT;6)+bi(!lfH_h4cqhms}xnU26E8=U@8{?bZZf^`*r&r`Pb+^b^eO ztMiSRgT|(ew$0J^Y>(UVx zMmd}SHL9U$lM)O9kChZivA#g_A>$1`1o)|?UC(1fir~Efo+h=A@&PSfSh){F0%8_~r8%4WMe-90kCA zm!AagStYx^;?VeI*JVSg{|`U`Z#9&05nP(*Z&CfqV%QosYryMb-BL-+t-LFP28;or zqQ`6Zmf{Wq6Xrz|pT6&Tw)bl(*6gP*nsFTV?vEt)R;_VzxKvmbwgpEWG{XELVa&gQ&s=up4%`V)fB>||v>6EE!e zD?gJ`cvyb{b_Xo`7jnCdouvLsl3Cq#(l73YE_xgM5{6{Ee&sDYUn5K5vH2Rg10HRE zBdekXn5Zt-7T`8QKD_fc5(nGhwcp5ks5bt0vK$@_7#1aEH4I)BWm&#42fe+c@I+RCV$bq<%KQ8`PEkUbKC^14X*Rf%-z$_k_9ZTLZsk%#b-k+JeI{K3N7 z%Rk_Az)f;2i;9y+Nl7dxPJY?Y(c*>6S#CR5EJsRbIflh`kn;pkD>}$J0QGGOOY10a z0iphFDub?L+4+ug7pb=DCK5k@&p6& zE-g6Z(m>{qmZI6&e!*3nc#AxRfIzRhMIKL3Zl2W7#mh_3opm5lMgcvjzdVcp(=YEY z9|9PL50Hx_QStF4`F6lGQ&Qw7WYh|tOOZkSPGg4#$^%7}KL*Ml;bOd>E_WbOI{Pj| z4l2Hh255;#4Wy2cBU$ob*(v~Ig8{_4$W>44rXjL~9-~!H=`DxJZ%8J?%3u>l$d;(I z_yCZSpLW=1(Tahsz`lHKgq#dx{yc)Wi#SuF|2j&3gUDTecu{|8tUM9D(b9PN2bp)u zu4c-&!YsN?l6x4S^*2Bp(Nlodm<5YDX_9Q{LHj1jgFp|8fS*52mhX}QNmsMvRX}_0 zY(!nH-Y^}8mImve&y;_YVcKVB!`4Y#(>T73kvy*>dbs9*k>M*Vf;$%+YJ_XVX4?ge)GlO0IWcR+qSe66hE*xy#WVklpxccwt&%a z{{N?C4jQ=$*+G{(dh1(DjR_^yv^6m%%DwxIpum*`8jATGgsH-HE}yLbOayU$bKjsy6&*Jhsr{u!Cth)Tm{@Q3F;GS34J`M zqn79$>t!o3HcPs(S)N%f$nYHc`@ww*>B4Q z@Yw&hTmg?kM`dTrT8^WcwtV*R%$8julYsk%`pL69tt|VP+?oA#R1RYoj>=tFuVZpN z{_4bvkI8MIm%Yc}H#;VG5Wkbf<7Q@lM~;Nw9p90A0RUs(k>|Eb9?&naM6*?(Ir9$i z(OM=Qmob2mcN};{Eqnbq^pe6pIWCV!=5#_H2B_M)l`T9WkE6SyS^(!iA={v+%}IF< zJT{h^CZo1fYMO^S%e(S;iomlu@5PJ9Q}Q1CaLTBm4}VX-S!&HE3bSua zn91&cPoB??z7Nyv^nsiponY_XY7*>-t@}W37hQl_(B%TVP|ms8!@hrC?jKecea|4H zm!(YlP;SSb|3Dr^YohN-XMcPE%&%6@`A~k0%J|{>8F`r;v2Y+O|3r?5A8C5+Cmtj6?I3Ba!9?SfKewzNn86Ngr=UlCFIxoI%fFWg%NhLwY`|huEIaoIJ5>UTLyioi-@;A&UCa`cctS*L&GZh-HR|HvI_UG$K@*t~z_zVKn) zKXOkb#>Y&zQY0Cc@tCPMe8_#wG+EF57xo80KIE?lSJFqJc29{OBI!)OEYXdGq*v*s zl=^~PW|-hI6mY?T`r8Dk`%|Th1yD8<9RO1|O=n?dib1%QW_rXt2>pT)rffE;CH)S@ z9oz~e{#mC$0_dV8qV%g)v>TMRZcVRXAKAe@cGk(pgwavZ+udRGQP?bJT`ay0y$xL{ zZRkK5huhzVUY9c1D{bkLNT^`+?QrE=9Dw2UaGJua6^GNiee&{`E(OKn@_h{;c?I_l z@NA+ABj6GU3KUCzzO4kUusmKGB-e&SKYe$a7(&BN0$f(|o(wLJ{J)AUUyM@H?yM%u zmsqrdQlFEH(jk6w-fs5>iY-g-$KZ?B-Do!T2l;Bgm_nN|_t3(gExn|(_f0j6qspQ9nK)b8*? z_jaepZnfPoaKM7jcK!**a|BQ^z@dE(5jZkbE3~e$lHF|#;d0vx?U-92HztLA>>ika z4d|tDK=UD>4{xa(6feKxAC^-T>XU~JTXWkTl!bu3K(hcA-F6;=n9m0(sFIf-71LOL ztiez~U=*YU=)ktjmR~AN|K>VilhfaW;WlrmK421*hI|`?m2cPCnG=K%miL_m0U1JC zEjwqi%TcsbMj)i1xJtc) zZDQ#XWFE2fkQ}puvC-}5ukfRa4Q@{lpzE|f{T3w3sVQ!T7=nmQf8sycum-!{2g`n}dS@$%}rpChwjb-Nrbt zIo;?vlGcw+?m_#Ln_3H`z0iZUV`ID1IdM&i1j4s??Ey3w=r#6CciL`}uogf=K3Uk< zYiXc?$4GlkZ^-u3Yr|oQx$A4xw3(R+V*o(j4Z5;mQ&q|3CJ%SWI&9S-H`&tdO0+Lk zn1k4OXwlGzKlLA17$eD}(*r5NoWGr;V`lNU&d?Hqubx12Au3QlLE> zsz2zn(B~o!ZJs4Ru*BoQ2*uJ;A0IH-b0|KM=xDMT{6^P4frQhd9w=hw` zLk;W)E?FErZs8S``RW)rw0U5F3i2ZdIsOmi(L_BQs*sobf5)`PAlzS@vsM)mJ{<$=|4eQK|z z_?U(W=#}HAdhP$956#jPuz@Py^NfaayVYC7BikizsE5wj;EokwqmAgPqJ?jvx4fDb z9`QAytf~8aOGqk|yX`#O1I5L{S*zs*DqxO&Xv|&ieO>M*sa7SgZ4~SW7)Q0d_Hz+X z#u57QZPXOZ6ae`!>5$*MmM()79lmH@6qLbLn=qYU#%pr)my#8Dw~ z2Rx2fCU@0^_k*s1%#dKmeM92sT6#;Fp4bGg~x zQnibUh9GEzmHp`BTw&IS-$HK*#^^^Hs%hW51^e_TgKFwbpf;hJewaWHf`piT1l7t3 zWaS+FVj^viezU*&(?37~UOAWjI)F|g$phG!B>E*3Je*9OAZ?;jDEhG`rqGsB7}hgP zt7$Adg|^d6QbGIW?e(*RXzw66qYQ8cbrs+&97Q8UZkTx}H4G&CQ2INqi~4a1%Ns^B zK(qbPp+7W?)}r|k`7RfOZ0|@q4qz!BMQ@JB3PQ4pkQb6;(Xq|qg?r#b#$YXbV-%ec z4K0?47T$^yl)90pSl7|?R$*^skEVI-mR{y?c6cwP<~9cP z0{EciHX14yzPQ}g@=yDq0*s39_5wp`rJLWtgiiUVmtkSK=^rnmc>&mfHg_3nEkO!2 z;wcOI$xfHQ7(g?zGxHOSCYDjXg1wcD&Uz zEiIF)@WucJNMnitB%~%J-2zvs(;Ba_TgTE-Nn%rjY?0gk$t6faNzicyJfT`{`v)pY zuwxU(a5QRc`&b(1Gx9E)!GbVwRuY^V27^k)1`}>5J}zz?&<8DUP;rqFHQt;(DraH? z;uH53{|0-aF~O@fln1Z_zTJchrv=fCNh+-CI9d`~H}O5lq;Nj#$65@{p7xlG8Xx9) z7*SIpqBQ|HOr;3KFL1t~DhkuxcqyohbBu7k0)2`oU<2NeMxJ65UM$``wDIG$5O>4; z9)RCz!>te24VX!+^LW~CA(CSV*5W=qDW~J*;al;Msuuh;KL!&|-V4B_33Px#v4dtv2igXp?71B)%(16EoqgM&et1HGB?I zBCm9ct1E&KJ@J9OQg1WEgoa0!SiD8mG(3v0E>7MTvS<1Rk%&IbhJIR;-5F%bL5DBe za>4{H^$I_5(8n60v?`jBjHw-oezj_3WRf*Kk~^*!b(6;(c8ES9Zth0(#KngP&BGItYKWsX!g%U z+6}!>diPAaKsc+`Orp~%y1v*4lPKm}luV|WXfbyRSQ)hj)3!0o6dK14PN6RYPhT~a zDpGWlddg`9no_6mr`AM-bz^yR=`9%M>CWz-OC3^e)$MeK37w{$_MT;PZ>Oo` z%=c{b?G*iwx6Y%Of>JY&_6;}s5_pEzAJ3!c!R$Yu&Xuv>jq_tQ zg404mK3@P5^3-;!uw#qp3?U&q=hAt!CUWaGy&{(~O6$T43iTKp9fX4WPyx*bGq8Oj zO(Jv`RAN)?G!0hmE;}`H+ArDZFl=AVdM>7iX&qL&ycp)0#zrlnd!dtSOXz!|#@i0M zo=q}@`C8V+$&vV4DU7p|HI(wTolr*6E55so z&ISrAM>=E0<#Yx--YDn3xc18^I?TPx_}e?nXbw8eD=20I&90yeI~k-*Kk> zUL>LSD(G-fq9%RJ?pjV4V(#E_YKO;+6?7&%YFE&?ZH*3W%j~>K#7a60`kua$E<)m4 zNweD-HHw9ZgK>_30gQ-sTtz$jye_|d{PU23Z*#jbu_ovv5}_R1vV_XoV9GukFjeIK zOPu8g!#maF{x6zU7hW0=ENd3z1T&TbC?B~AW~c|es{z(v&t=tyh^&&w{v~t>zdZJO zWA@Bct)VPnxc{^&hte*d=YfyCjuw zG2X}5?{ObT=U+ZL7CptQ`I2p44Qx4`y|$VT31W~>#1lO0HNoI$tA7dO8BH6;GOQL&(dAtr(3ai@8{rwury4DEq+?V&+f3@TWH_T*n!~D7zE83YkFzvR{EZ|24+vprx7qdS>e|;N$ zki_DF6GLhNzXZi1B?;EJaXbCmoQw|jnEmnk2RrC?GGXo+3>;R=b3fr$8P_R-$x5=l zkIjxg6rj<=bA|Hb;n7^KgmYmYK;Nb|TGw~dXp9J+e3TvyPGFKTfyZ7K6ZoeNCa~IO zQd!Mov`|dIR7)yduW>KV^c7aEvP?V;l(DTDpI zm(F1~y$EZ+H^2cS=>xf#jVT0PYVqXT?QZlQd&JS8{O4#p!a>wmJr5%QEL&a#+h@}X zlc{Ym*&1zbT`u4_^&zbxup~=Aq87yO#~)K!GNofmBa~h|O?R@7FVQ{`7rSh#`Kd*V zO`EnzFTMIsLps~p$<$6id4|q!DGk(bZKN*{po4}l=&w??L8D)M&ep^$Y3!w6X{0{> zOZuKUjb6ToCjwr+yIJ-GPlXn|8*L089RRt2E{-LMe)FzzY~l~Jv&j#wKqF@sVvf;Q z{XpvoIe36Yc2{DD`N_e9pt%Lm%;2shZi{eE4ke)ziJqX5B?b?8v2?Uv@e{pBSUOeu zke>z#kipRIsK5U!y<3%%^?BFn5*eOv{YzVsHmN|DaVZ0Zvc@deTE*%=OUhUx%@EU8 zq{E_*K)52D?D~^nwkxm?m$y=0r)*|t7%1WqQR%tPN{s$gxY7+znVyJIqVWu9L#%=c zL;6qcl{fMEQb(nlusQM2?xtPXZW24vS@{!64s=m^V2dxhD(Q-p$~yH@?gE;4w3qUN zD$Ozg>bGBv_3lsr= zb4Z$>oPa*;9wzzaXkV2w>gy)otEXBS^$ibyL1Qf+T~Q#I(V-^3fPH9lqwBc&=`3^! z7*K>vHUk#mzo&MgoqNYV9I{%z>8K_bQi?EAG+hn=DFX&5k2`f?#1;}@}}2SP00~3=Z$Y5!8?4$ z(;2ygA49iVMHN)Eh^1@hU{CZbKmC=%18Y8GvVs5B@r0b~u)E7<_o`OThYsLIthM*hYFKI6z}-OSSxQmu3eA(W}Lg6llQ7dYWw>pnu?&O{-|^FcEb(CYuoST8l~ZzyNfn z^>x~KB-G>8!rUG&&o}7NGvr!IsOMWE;ko}VEe~VcJs8%BPxH&;KDK*v9nW@ z1TyH5;Myan8e*g^c9LIYaSJ7iElgLQ2VNgNNXd{@vTCBTknO{f z9TSxea>P^R`n8EljwHwQdRd=331k9jZ@pe&KTTG?1{Ec1sKWFfD7wxN%wIg%0@Zbmb}`(B0)61q_ED3SrK3zYufIDNa}*h#?8Ujt2c4QSc&3b5G;P+@aWgW<1d|fkg=Nsy`8i5B z8#+%(2R*5Lp5lVXSM!u|0C~}Tm?&b59iFc&V)sNTS6TaoN*S|8C{e6tq0%cDyq-EL zbIO>B{@_{U6L#O3VhoaPe>z%d#kK zh0?gtqM+ILoJDbWG5|H4n9bZV==K_!r{ow(_Kn$@+2dyBjLMlc6CijzPnp~~sh`$N z>+vgZ&bMgj1>!zK7M`zI*=;RJBwLrSq#A2I*U$-y)(K2MQKrPk@QY=p%w04lYsQRm zV{!y}eUPtUv}Lqa85@`04|aq|r^Mqm#sO~_V~3SjYGYI8bg2pdIYrzq03xeOdHsn5 zmsaBP*q2p8Nh%mA96dkUl%7C|^(m}ch@DVfv8Ey~WyoMxc)`=!dGX6%=HdLDEu zX!xIVDaDlaZ{#bW#_=k>nF;TL3qxwWrgxO%;$K8Vj#&6v!!2= zSpDP%<-Ca`573|4tPH@6?+aU$k6JP$t#;h zQQ>H2t#;mJeWiHmC|)_pcJcE(}!^edRC8k5ZhyAi?V{ zwIzUh>edEp@LFJTcx(x}=bBP)mTY1S6&PPrAMZq{5h8KF{~onq|lb105p0zPyNMPI;To3+7|S z(-(X4eAs`r{Kc~<$x)#Q1bYU90hCBP>Nmki8K{tfeWOGiNegD`ah2MGongSoNIXD5 zgj{b*<7$3pko^1+o)aWL_xccX?yx1d2%4_A2#7pt5k`9O8MUJ?fakKcF-4XVjQXc) z^Jb#w&ggZt;PJT4#uzU51@Ris;z`A%%(}?EXM@M|>7vZ-1fqvZ9cT8n_(DKrBfa}S05;{VNQ>5Zob`$$J21>09t(Kr|%6Y(f@*~DdOv; zC<}6~twbTs7BeBdIBRmyT zD`4|D`*<~n3z)rT@fwL!tj!h@=i@etR?d?+U~&1a2Z4~QIe?b~6qj)2jn5&_{A5D# zE|VM{G+l5*!i--oo}b&;AI%bZ*_*kIHw%*_S3HJ+){69F@o|L`R9URgv){P;y4dEm zG-Z;29pc7vBV{bmti(W{hyzv2S<5U4yG!f3@<;ATN zEbPnY7ED(2;Ur-2Bb{@MeeQ?$f_e}si~0!bBnT89&xCIP6*3pRlgbtxy#P(0#8XY- zgO5hMi;YWPT2J zDU|-n2|pvvZ79UF!DU56o~@ZCw`+;PH$EM9h^kM}n#jGMGN+=hj#b9pgbY*} z*U@RSS^0_Lr`}?@kC|ge3qEPwUlB-2OffiRfE%vC5dQ++f-}gZjNo-e#%9+?t7^Hz zt|Uk*JJ?#iP3}7Ex_(obIuZSl*0yRq+tFQ3Ady|0i8azgjbT-7Rkt`3(=uG`N_U0- zxt;Y3hi^6Ee?G(>3Rf{{|Fv)x!^`Or>Hu1Y-#?8|J9aRR*yR-Q+oL=cBDG-|=!nsg zYCaklk?H}dhGj&lweWT^O5JOOE}~UDWlCdIJY`xDqs|&B&_B+?IYkxC?0PB0>HPG| zJ`IMe5_fYo&FoeR^yV%!k_Gq~;@DWVpA*_4CjC$&co|4a;y?pa0;N^7&yaDU>xdS_ zSJMegIZBgL`|*?s?NTTN=5Mjx)Zp>cK0`UdVo(izO?E4ODhoWgMs7C;e>QDpBd-TW z%X9N1XG=7j*HcAGw{zDVaL9bOy~GP-%Xf}34Gk;X{G@b8)A@BaN+q%Fq<)JE;@zsI(IY;KxpUWLIa^%^XQUemy!gBfnEgYNU+El`nTzO9Wxe?ZO+J z>B8w_Qdbr2%KENq2|RA@#y?hdQXH~-6+u9_X#*{-!hviNosOb zO!}wBsUSQ09m4gqEHg>%X$qRxUnHq`Tx?phYJta|WOX4KdMArWQKy5|HFPb@OHmhK zYCww0$k4U={8V+mBue%TRF6^K;f6H6<(^Dazs4I`K4lN4tJ|fWRU_0fbXOE~w`!2O zOEl_{0UK*4JD!1j20rNJgVpYm=;omz>X(>oFjRfau*~d+YCHC?W{dFTBsI2GNvWsE zT3Ht%ZDT`+skahoE3*$%?P5(n7^Y&n`-tJ{G^rM#7)MUEKo~l(+!5*sD0y@Qmatz( zsHXsmQxZEeQvDDNuN|Y*DR=@(+NNI_t)}8(Sm?O-SoL1=&`JHdvFc!gU0oTk-a<}E zddCSc4$Kff-8E6Y6*_)lqPl}kz71Av`jgE-e)cw1X!Pv%Om%3tUG4T{h(($2^e0ZQ zX&8n3!njHR1JCuDYEN3%ZqHzLI+N4M%ac@0A^2sIiXrGllhq&Kku?RFQH_3hiaH+S zN3Ex+-wL+)+cb5V9OryZcV}VIK(;Si)xgBulc8r%SFcHIhYcWHaH=_DEl{HvSWlEq zp9ytEuE$JH+SVL(CFU*Us54-l&iPpCEOi+B?shet-8oAw6GQ$vOPvmt_TR=a506eP zbGCY08(@-sUVl<}L-_a3?A_Vw>`vnQ|8$z{WTWS(xwuMm)I8kxbNSAkd^@z=IakG- z1U{XsmIw&u-mYef0lTt;x2t|RYQsD1wt29OJ6Y{K70;u$ozFSK-SbtvHsP=NDqd$$ zwm`)soJ$K-Oy8NikPC|s7OFF$W}ihWrX+1$r1tl9$_Z@ZOZDvnywBHf?y!~L=BpHp z4BZ@DSy|KZi77_4LgTVvleI6uESP>jHFQ}pRE(?_+x08%Sg9gU$6yk?M{%O z?oe($Ce(xQ3$gT_L9M-t=qUoNS_7Axy!I@w-2s*q$lOq-is3K{CcZl=G%LnQ9OCqs z)lc+PbRTDq8#m79Cof)`EnM+SaQYM6uF?`?UP%K6q$DO+DFf&99Me=NdQ_O+uh>GZ;WADa`{l0n%O{-+RtQZ6`+6#Jl&_oLa=f)@DmvuKEI4SUdrXtR;d5nN6#sh)siY<0w8~`$) z|2(at$)v};Odq}W`KVG4o)hDp`02IAz7}nZMM+t4IrybC6yVEAcvxO}-$-(~h~J+52h7MNJ4mBSK6)AMTZ5lugi#^3ucRL z#C2pPZj7%Rcas(1HH}T?d@1i0t)42nzYg(b(QtYXwOHPZe3_B>8xz+4GDZ|d- z*WueZcAxT?kTCH=MjxQ9GiqUI{GIR)9lZ+9US0DJ%fFYa&5C?hQ+BO@szJtL!k zsev+|r$1oIYjc81TI4NuG>9uoICByAx3_u__X%Rt?ZoZYs;bE&VuZl>b)s6x^6%pb zMvAwIAQ3Q{FsDuAt8*i*RaJ0_eW8UkU<|EgmHcbZ5G5!2m1D8oMe*y+!XskfIp6>W zU5Zu#UM30>Am0VXq;atvrUe=#WM9s&Trz(UvH-+*K2C*-`Gnx>ZFs2Hub7W>M}gbr zz%p^1g|A)nd=FRfmNBsQECreUv!LD5W;c1cuK1NE!hW@Y_~Z4YI{pVD2d#!WNySLFy5XKDAs^a2^Ua+dl~s* zA2j?u0o;Us`s+&~>D_SFcwGUQp$0~ajo(XaKx(ylU^ZaHhm{7!nZ?)?#$_M3j^Ou9 zg-$F1>kRXv4Wa=G!YZ+i0a zEZj!uiwcsjr&?ZiIOG-5LcC50UW~4ChUAx*?L+?&2t1@HFVB$=gkTDUk_+(u0AJG` zX}HI$$nij5ToF8aeSE9Oh0KLJX^T1cGcx7+h475BKpg!Fo+@rS3qgMG>nY6-6#1bi z^rLVuVDs4mv-0uDo`^9Z_xxjVcwAMow{;Ve@%|JZMfY$AlQ%3hl|C2|LV0F$^W;2q zpm|%vVie(lZx@~yyQ6bx4`8p0U3tO74nXbzhcBciEvmSIn{l}gBS)6#hquU8S_o{ed=vLl0W((R@=6Ps z_4ntrjPY^84ap-;EdM$9h$mXV<=4FPOHVC$v7v|wG#7K;BH;uRNdeWe*M4IhU9;L- zW1?3`j)=wfg@!?rNI?~X_j9QvfFQxz+VLcy%}*m;4WavCJk7it!GFT>pW%d;#uJ3s z<1*Ze{NRgmnHPMUXDGy6fy8r_TE4^O38ig>M8!<6#Vt+(cl_44A=Ho&jR^@Q0@RM* z1ka}@aAIKta@D>>?#OP>RnLRrG1Q{wircofTU1OS|JkBq9^u$L)gkR-d-GJx=Z?r% zF?PKyU%j2*lf^#B=iY{KRu!*(@>y=Nk8u6{_WwCzdWK0)-TF=ohOFu$0eT(EnPjhGWuMTZj6- zheC>b3!2P>G6MTI+H2gFsZl?`e(jfL} zvAU>b@HK;tbE*M6qHw_p%a)|?cd7lP)_@UFAvsz9sYHE3l2X`qx4J<}WxYIVU9frb zK>bsX>XUqFiIq4BuFa*-5|;vLL19)+({q{;P+900SF;N(1EKRcN|ye37nUF+4TG;h;?$FX2+a9i_x4$w;<@baU&JV`511kwXD?ARTz$Tuml$!yEm zTUBbZbR|TGlqE7Xl0}rOs+7)dFICIfrgF6<`?yp+5{BexAaf9wt<=FbdQb{sID@5E zsAupdp%rQ>o3LC>X08=#C-&fSwX9Wel~R(~(iLh))_;XM3RVh!zX>aqzEXW4*iXtp zc6z1yx|GJ)D)mveZME83A9sgZ5E>|D5Yv6?=WN>=wKaQewYr&gUaPie)7GeC!)ik0 zkebA**QobO$*lKUH9OcgHAP>$R{cbRG3T#S&xAe?WFyyyykIWF3l_+3h8Xj1HCn-{ zY3#~+)kq4Mcb9rC3~$OYx=ClpH*kl{kh|550L*I1C>X@vzgvAOG+YL|_a1dC88|@i zb+1Z*h=UaeCh5r=)l`W+Ua7XxJ@)}S3N{*;!am%jzSFGNfvIeFrMfFrVIZ5cSsfOn zaJ;$nkzcud;2Msw_Cv?xL)RKK9k}CHj}_#jb11=sXYLw1z-#chB&RV!>&18svM^+_ zz+lFnz@||JU_q3+ZJ~`kFr8IxR)20b$wBOa`_&hv3^v)X{uKm2Z2+6GMa^$EzqBN_ ze~bEas6w*-nx;kt6Z=byRoeYgvsEg3L99|*3OnN4&od{8|TRu_Kyh|y0fi?32^ zh6lSHDDXAPPoK!Jx=LZ^RnsR{@R)HGePU(vz@*kUx3NbcK0eRd_BoO9_d~|Uu2A2(a#$`XCIDlei4G~D1L9s@NzeJhP8iq!mNoxs4+l`hcdwW~x$@1&_t<&fzDO?0DaW#arrWp6Ku&{L6W} zkjH~gS1so~W(gT|q4WR`^nvhtgI%(}CrdYt6EGzhy$RT=-1~qP6I;a@ zSXh@5(8!&d5D|7qHI$1}VNFT>fg58$?X~|7jTaNFoWq7Q6;sakGW8bV;}@9vVKlB$ zoRp9p+9X8_nEz!Zx=S@Jy5BhMUbMN{p#ctgujHA%` zrMk!#Em+)c6%*`M?^Zj-)Wif+DUCYGm9={PZq*`T(TV0osRN*>?-Q!`e-tHE*0McM zs;|Q6EhN30cHRJ<(poo7JRGx(m{;Cn|8HJ?=~J2g~^X=8MkQdt)CEMOa4%1T>Y4&hNL7d>5q2$qleVENVe`@wGa7rJpR*x z_H5WM>P?`f;A-l(e57W#mCB6auRqnS#vp#IO8@3_H9A5n7d1?+mo%%9!4B+@qjkqG z>V#IHc0B)&dWzNEYU&et)0G=RNyh8!+v)HBt1iV;CS!?dm03#B54JL`pzOt=raq)k zDO=++4PxzwnRq&wNq-^Sv@whoOoGDnL{a$Gq+sDoolFbbN&{KDTTPm@!hmgTlBhOd zwn>z_?B{oI<(@j;<`HWp^<6K9*ghS}@Md8TuOrEP?wJKhlO*hW*V zzTRfCgt3pe!uL%r#P{@VCUGN(KHqIRga7nUPxG33v}SkhGWC^Ci%MVZ5|zyCJ)fya z#*@%PSDV^P{K&GNv&M8#7C+msH|0q_Jb+)6AkJANptmD<=}`mfGaWz03&&{3Pe4=2 zZR8hv_-XpJ8K6^h%dYvMe!DZ@9gJF79GuxAXSwlnuy>JeUQsnt9?Fk}13w=Ux(vW( z2z3Mp+IwtH%oXEySD*l-n-IJ&S6~JZyI5)Jt1rFFG|!mfi4CSNgO?AkH5TmgOvFt( zdwQ>_9eep+lQ@RTA~%}4cCCwQA&HZ9o+b8@1l-UL8z>P8n1fQeQ$M`XG!}2gZb9_0 z&8CA2@agv-Fuf(dYgpK{)h>0FrW6Q=@|Y;2Bd;oeyO7||8>Uv55|c3mmD-jvC;p?ah-NWT`_K@ znQ!G0TB{9bU0D}(We(o^H~=~t@tDa9qwadl)DDBdSLW#ZYfU{!mxv=GiMq%9F$v4& z&+jo9FOum2KPqe5ztUU(XSZpwB<<84Pnf(INxw2zZ+OzQK^8yl&ze>SIqP}@yc3fJ zc>la@GS0gGu*YQFTKU>u(;Vom!*ix#t=QW4VK;p898QgQoVXbhk0YH`l}v|9)qR(xJQ~@{?QNG0iqf_ZU^Kt`k+Z|6yvU z|Ng$|dMnmXG4~;V6^ZZnDCTzh;`63~ZKaK(iCO(r6fKD`N3oG^qU!CxH}wva?la0` z*RwTw=0Pm1t2tJ$|HD+)TH0h3_2?;zcJ_m!8pZ5rB~=q3qoZ!nlO|4322cCo|4dT4e}R1|-7hi!wwCRb_-bYKVg64Jl0%wj z=)XSke`z58tAx=7YRyg880v41HHS+e{5~3I-XJCE3&xv=Vutg!spiBWHERY=mmC#1 zeRT~i-#gRH#!aVBW|>QYkZ;a5Zy<8S?|b!UW|-ro4ynog{`-G1@GR2rd-Mx4&G%qV z_nMNH?e*2O%pMf~@cozD%-a+gd-HtrKJ00aK6#P3H~yPbcdq$MNqRsWmN75G!!mJf zbw6`=w&OmtA=*ylnIDRf9yDOx_=bSBEi;R3YW9kmvEbQxy<55FH_?JZQfW6BFFxpEfrpjBSXAqHzu45f*yXEr{-9a{-wg7d(;($4yMiI zlZONwXVzV?O-}8QseWpWIjbeG~atDBT0u9ZmAz+xVV51v%WA*yIp;>4zo+soAPh`LzJpGBc-By#czj*&&VNV`c zRq=iI@*cdoXF#8Vs3>Z#Bnj`ay{CRvG?#K$(yXrid%vPDye+Wx%c7H=kxo0-#_Qha?YG>&dj`-J2xp?Jyk*RL_g;| z4i|^ZFypcN{Bxhd{ceK$g59Zq({-YcUi+la4gI73qZfxU#-;?j7k4t@V@sZ=c=jM_ zao0n)9>R>5UZxjW?rX}2ZY>>(cbA6Ck`0z}3u?3Y3(FfGN}gV!uBGJE)3fr32!qVR z?Un{!Si5MCWfgsGx$l0D#$12nz%gkXnrs)^R& zj%Rte+PfUjW@2oJPhh3WDucj+lZGS?!zFf)XBl*kaNvK~Q6$lPB6|&!GCh$g^zC`^ zP7-^F9*#rtIn`imathn4inB}2Ek$e^vn#6&y6^AOWDIp;#v1zf1iLvqR;u0sfOG=KbIedaBR6Qkx_z5{r zr<)39&?i01d%E4zy;F>Fu)I?bJ{3n>zgg3Au^={iELGEYV3K3w^uNfn)$$$&|HjTG zZMx>-mkm%J)$cK%y@Fopn$LE4iJ0B!=&R#I(^q+b*tn6Q@9f5& zxO0f7x7fLgnPpWbD{P@qV~7?_*RXn`<2v>cK9{Ux%g}4F(tSl- z`UPq4|LQSq?5$-k)fBEwd>>&0!S-6im6*VGAlpnwzm$`+RMdf}r4g>n|AK7{AG@Xmtuc~5~ z^$)Qt9%5e=(!HMdgyH+7pR@Bt!y*e>iM%?tUBx>^ME-(&JNL@w~EOhA?C35?xHZE zO!4%U&S-517Xyp2X#5>_kvm+@?5FMWRKC*6P;5&En}?P@pDff?b>L*+ zBQ2VSdG8`kf3rRPQ*DD835I;8J=;|9P0-3i`(e9YUA(>tK)iWb<#KzmR>z9$9X_p1 zAvt8dtgQ5~VO{dLR`dv9xX8%T(zanBPk^U70dg@HtJ)nakLizz0(@byx#pz*& zQdC}uC!~=$E4<)E8j8v+@GWM4&LEJ+k)s+6rM?oxjdU+>=t}8DJ}`jb=~{>;ItKuk zHY-F?Rze+}lH6Pu{0SEO>L_A^KhzUn`&+z)tsZ=e(M8X=QIFcA=j%0DpVx;8HP7J< zbapBm5KT0B0JJ1aj%x(*ig$R1{?pg6+YNuO$aP!aAwmNo(B$$--Y*9QLLbG1wOyjH z3EcCI#HXeklb2*$Km6_5@a`E{X`fiz6b^V{$!cxoHJRQFnkkej(pFv-MbE+mY_zaB z@`al7X$ilZuxy2>YzaS^qB1fHT9`bHp1lm2bpC_N37 z`Vr7csf$Gg#zCX~HP;Hs*g*IfArFm&G5PQkr%I7+vBszjf?hHSn_&vIi*ij^QVl*lpv%c;MjR}@?Bk`T0Z+AFh)M(wq zsFB)}h?5FPA$xlnxxOz!COKwNZzEma2Sq~|+K)UkO1|44!svgE?E~N@_UW|)(IXK0 z4TecnJTC^uQu_MKC=^2bP;yv@oc#&}5nMNnywV}dUL|r4+3Vj%{q@5kiD2MJQocjZ zd>vAWjfzjd3gdgoGHJ#kkDLc$C;I_97Xq#!k zwX+P^dbR-z=fE2TedmFNVB`5{UxZ!XHDKHVXr!plP&s!YjHd@tz6j1B|A!ZYzi~70 zQ-9HmZ<@dvlapNRx5Y3>M-9s`P^BxAf)zfLX1R&QEY*qGbKry(kup&DymKpXiA+lmbgRFs~SrG{I z=`V|*oO+upaMv}l=~Ie6qF@!&6<2?R+Tz#>m|@7BHAoCz2^ng5s8PJe(}MV`V7WP5 z=c8y9+_prL;#{-t3fF4bPTj0XJ9tp!uLeIcWet3dq{BXg!+uE6)%<|DMyPHW6G}S@ z|Fy8i;O^i7ad<8KPHknahX8S89qhzlh|hENI42ryfIpCTbt62a&n^z*HV;@HOCB64 zCv1W?iW+Vg?|%-bA?$H{648N{x*~HkY@yQbTi_Uu6!o{l4g@E*>Z#S+bnuphOKP}H zjQIj?5FGp^oI)r=zXD$xX1ae3CPg&g0d>S{+hH$}Yq0~iQ`HMQU@5`0Z(u2gEw&S0 zpg7)d7gV4)virA)iJ|eO-O!Zaggts%O!^KMVZ-;ogC(e>h2P_N875MGfFIB$+wX-x zv0Df2qpFdj-F}#Zp?&jy2%z43_(yEWDMl5;0})${hDkmE@1s&I2X#|=9)eRy|H2_C zMzH=cY(OyL2;^f~^%2;IV8Bn{E0!MvPjTTW6k$A>e+=^-lpl}aT)O5b4*dkf@j3Ws zBpM-}I}XL-+#xWDd&h}kIsXKTL-MWu1)3`)|Dj*u0c9L40YAkOuJ@6qe~7GiH9uK> zlGGR}eNO}EmTGoJSE9Un1~|ppJ7+PjMTuL#K{Ymd>l^}1oyWO^L+-qQYVaX~kH+Jj z;^;+arJh+s4iJoUnO46;2I_C?@351H+n?|N+6548yiL-w|9D*K~bg*6rvfgD< za<~X6g%WJDq7?lhQtZ0|$1!vHRrncIopKHK(CM)2dKK#pSc%s8@&{|{E#KtnnBb{JkD^l~g1>X_TTj+U_V%}{yN`=Gz0vExmzo3E^BNh5wZiQ;9W4*Y#>G1bhg=|6TaURPvz z@`^St?R)DI_u2h~)cA>GQxitx@-!xCQdaa{`sX((IVD?JWfQR@wNqZ%UI{*Holc4P zK@`b9v+&W1zfF%7A1^#v69&3s80a=jw$ykB_k1XKjf?|sQ7n-Z2DRMPati1Eij9&5 z?$A6cAu%?2+A?hXF)KMw^D*ZWadaE3h@6Q`Jc*c^^^KFhf%E?$XH5$x+#*lU_KZZx z^5(rLs+aiiLRHyi{5i;LCmNn-7e}qUsXBU`ylv$^ip8!gu<*8Ibvakm!oQ@yFSpWF zG(q)vOL|+gzdx@)a^35rx-mJn0k0H;0=Tb8YRE6rS0n?thoa}m@r}4I?Rcg)=9!)* zJB7hIEqFCO6-d9999NGh-HIjd)B1@u-$(ktrORp&Kn7amm2Lk0E=gCv6@N~lf7D)R z%`?^7O)Zh`S=$R}nl8!mVh|e8s)y9a^V!kkMB}#nx@xyc2R-GkSrX>evw zK2XJObpAzTfaDA8P4=*d%HTe{mSPSM&UHq}E`9lFqTYBAPtcDIygQh8*B=hY@J+M| zoHdlEsmix*t9SWDw|a}P$KQRg?&`BqpEr$YGRCchQ^1gdgwjY5ULXCO{;LLUQNN!e4MTEHEb>4-X@5fk9_j+nGPs;3=<#lX(TZ~dcd90u-;1<~{5UG6Pa^MT%;z8TJrMau@jgl7d8!rjhr06zQT`XA zPcpAI<`2mKpcMWh8TIUB-cW8!l1~;h>?%w{Y-RnAG_T> d@ZEieFRUk`v$2QmmBX_6HHGaNss5(_{tH*DoQQiIq$xt@%z5dAMU)noO|xMXTSHo++7%TvLtd@1K-H7 zh{&+;$aWEN;Sq~odF2(seKxOILGshu8GA2wv!+-lF5BLC+_HXGtd0V)BrP&LGO}!p zFjmNmbidr{#-^5G`K3NlQA-N^e0vVgusI89%_N(%h}Im?J=Ny2*|Xd+VUcYLXp7#N z7N^UdlMO>tEiP-S=YPR@5FGaGV^4G6Zmbb}Yui=trcN7Bl71*)7joY0qrU;Q`--#|F zC}q9n4KYG=*&pri5h14RYNuck+8!s~lt@%US$WTNgAh^Hd%z}Pj&3Lm zab;&xy9q*kSzy{+EQ->%W6|H%Re%A@$M3}=DRa3XM3r5eSR%mih4wH3hJT)&goT%* z4;Dk5uM0wK*?QMz9NuU0WkCopYccg_ER56U34qM9={>OcVa6nc()+EMf>%s_e*WS` zFJ8QO2K&`qd?m5M{ZC%ByUjZ_#aE8Rl_mBbBA9!imy>-#=BqFYC?cyNng&$4EqQ)l$xU%A{*+^rbZFcNGYx{?|&Ne&3h4QjdJGu!ZCcf;0orPN2 zUbR7)P*(DpqLpQz&%ycQzjz&sIeV64QET4<#Af~erBJvd4*pDHHOAufkuHd~_tzZ|slLZPKy2@pha&dK8_n*fpC) z#JHC~4G0qM`V#+^Dm=X|3DN43P~k6-1vV>2xJ{Z5!CrAJDMg^_##rGzf}7q!=mos2 z9_}dQ!a~(forRi467^QKt_yk!-9;fv{ictw&5Lv!SFLI95TTz8qm_|@*+2#rYE3FM zy-|aV4XxJkTDGtVJKCoRMFgf%rU@@7nYgD~m!5gTN^dfwQMIbtONFqSWYJ$7?5s7y zX){?ps#=FdTZCy|LbxjL6n0axDYaVDv(E*$BE+(SuY}KG@asnenUY=Kb5IM93tRoj z(RBXgxGelC3o+`b>%t@n%5Q!VKzc3?;H|aq2)!wwobsnI8g@=SbXV9+pqy}DSOH3C z*F)i^f!un?J2!kT-1H_-p7N(oHAzEYB6YMkc^i08E%za-3@~(hFae&7QI$Gm03k|U z-rHS|tnv{eS!gKPMQUgB%6ehsxe12UjVEU)Y4w=bHtR@cDx{sj*L$%SIRmu)us4|{ zlkO_-lA1&o3nVRr{WXwG3lp2h-moi9tE)V$fNpP+SRghH%(A9iT(-%pw>P%Bd1HY% zHn!a6bh9;sNW%=bE5nin|5@GX4l5{rFal@;?4hWrU$1EA)U1RhvrtUAl5KHVCR$xq zN1Fn1QmE7JwqzBFDL-pa-Cz|$Biz=>1us&&Su%4Fl*eV)Afstv5%a|0nqfNB-Y(Ss z?A@WHt>|{ySr@x0fSpMuKD5|7EuEDolT4vR9XOaQ7kSO~p=5+m!af^D+Oy8XNGR!- z$jP#C7-`5R4<|mxxS3qBs7~ey#cV(meix* zMUd65*<@Rm(`5m>ry0A9<4Y?hTO1uN<5E(sX&Q#?=wz~h;z%}d3h5m5|L@h3eKUoO zqovSQjhssM2uO`I_0L>l5P%#{rjcbpr~K(e5gQfzt}4=OYelo^x2v|QVl@1A!H+EF zn@)m207;ObQ>8Jd%A})wc`x1~fo$w7GM+E*#4O^0>F!6V>9a`-f}LGNu{*Yy1h50A43rh;lMKFR#-$*7wA9CZinU%w z-Vtk+MYC@L;<7uOpe&XK^iK0s^zM=DLCuhp1p?isfc!GR z?r_^&PEVy!TXpXZ{m8LvSmOJnQC<;U+8Tu%*w&Jh>1u;BXSto$Njd2HIYBQJ7!6`Y z2WPe=#oDPHJjkW3Dmu6<xlRdBo&||6AOxr}8%RR+|L=Mv-^-e34qUs{y z+~pY-r`zJLB9+??P#pzQRJ|$nxtSB09@owD-3&Mkp`c05hYa_4&fW3>W+ zXv?bHS{PnP9(a`lAzW_YuPnREtye15zyfN)Z(9&C_Y|8e16uREELmW=a^05H@z5d5 zEO%*Y(17tuyiiX zIHtNmf-IH1V09qOQN20u{jZGJ)3g9bgO6*5b>w7bwt>ZS9&$UgGi@%H#%;iQDJeN1 ziJH_eDQN85v-?zNR?A9Au*e0!+ZM7O^wTd}$N`a^CTb&`_ zvoD~0EYJpe(V=r@s@0j|u#H;@O>FE{;!~^GZ_{g>h;37? zliQ}Hw!NJOdYR3;N(M3ePe3f)2A}^4JcJ~Jk$P(#ovu_6a*b}kT_vq*l?DvUt_BC1 z?Kv)h1C6y=*K*<;Q1WuK)#1>aYek}BNX-GJPeDNo)6F$2SZQj&c2#I(YgIuq8dL|7 zlbYT3c7`47W!u}?b_dS&X$6@KT|=&cBoqhSsmYdIBmHQp@33rEeofn({?|z_v3B#0 zY}IwL8lIzX5Jv!~j1yg7Yl_XRA;6a0BCQ+Sva)kfYqhI%8%EsDsu-0Nu zf&=#J7PkF&jU;XUfOw>Y?f-*h`*R|KPIH2Z1g%p?oyt1@Np?Ux0C<(vxl6jikcn|Z zF#GKeF|&8?k`NBmg}U8JxA`cJ-E#OZrFmxuoBG zM1qA<_Tmxg+NjuX-u#yssY8LZe~Ye}{N~MLBmW^TZr9HKgV7D^`ItDM*!`HiDb^W0 zgw=WiHok;C7sTel8~z8{s~pgJw(tqb(V!ImOD4f+$G_w)DDM4BW(HNp0~q##)k+QH z6VHB1f++%ItDlm&9EC>D$TS#M^bB;}de-2%24u~1G6pai%w9Yv;W{RD|8GoEZRs{w zMJOQSd_ksgO?T%789{Njl|98i298KM^A-Yf>>;^l8zarBd-rh#*@_;z)E%TC`(}WbrMS)yp8x1X?UI zh{d9R{jO@LQ5+9ZpIW4ddj+x9uik7#4e=c7T2u6^sWGn0G6BLMG*M@2im2QBc#8!9 z=x1+nKa6|dM|@6nHfqh;=-EBaMtf_D0c`AinX(dpQTNe&0z`lC(Y%lRt2PT1odP-X zR9zJ$?h!~x0UH`DuEvV{!D4%@CA^M!9DlHx*GR zG)FzPff&pZnuuc>Al7`3F!-HpbJ(*$PqziFv=E0%1ImR|8BEI}jyi@{JCS7CVyi{VX$D{1W!J{D2xBBW7SS;k{V#P4t4x53omZ z;ubOZlf~+Wc+rOlQEX>BF$TK)(M~+Cb=j{T?jY7Cu<9$F#IAtc>ds;sdsy4#&HTEE zqd8z#7g0bAb6*n=2&{2upi&=>*u2hSpoorBmu{jZFsh9Q)O`W1{kg?G5!4TN*2=nx zkua5VR=wGc!@1K#JV3;H+d8VB^cH(z7V}Xb@lVV={Muh^4Rb2zSkM5mi9t`Iuw4U0 zJ1DG{Nn$)M&^l0jSJWxhmQ$*ePN}s6#Ml>3hUbQo4{MQn3dZ=h{Be!O8K)e(^Ekdy#ZV%o5nlm9zmHyOvVc zFMt}^oiD}CqTlswHS{outH0lMJ9mGz6iq(vi(2xvxB^URy=@)Xwo~FN^l(p$1NF^_ z=bNFXX|t10rX#nW6Z^T?EBF~6f zY~xJ9n{7QK2K$DClJ{Q_#}OH414DLJY^Y>rJ0~Y4zcFkSXw$xD#k#EiS>Q_TcMB-4 zoE7V_g0o_6{<|6b=B!wg|Bito;GEc;YUs2(Cl2?Dh->MY;I`%htTpFAcGk0h&WU58 z82+s|vM$dd_poJJM}ZfS^(fntZY`ueE=EL#voqg{J)mE$@5GMmchS^S1Weib??fw9 z8qSNuSl$}L4(9*8*dC(X1@Uaq_hJz(#x?)(z4$sXe8(TePq~5l;|Bz##$OPd2^yF& zKZ@DGeDaFWG&Fg)(`?+`0u46yqS%&w^CRr_(J;Q(u@}W!{*!pWoGi@|<^s6oqS#Bz zoU(@(#i2ZL+W(Tck&2iKefYCDRrJ0O!RS@7jfh#-byvkyL2ENqh_8aGz8|GVREUcS zwz31)#T{DXlpA6nFU;6#D3-I1H#M5AzbWov2X6pk-!|ZgwYUjPm~u-T%$e}BTjCHw z^nS8N_4!5ICj|N(lKJMQT2nH?-sBg1KY5Q``&GO~wO>c?Xj=5+-^62rR-;b&LtKba zi*#4~p4a?zR~(Er(SO0RN&zCf{FgXI!hCND8+l)x0Vdr_kpD-GWJyiy|EbMSDtDuoRJolHXr&iXInfprip|V?t;X_JYzNV?cPgwi9fO zBGd&G!z0-KQ-(SKV5me}z{+Pyw5iM)ij6cwtaVVLwOI4hhHij+eVM+Ab51wV4;J^80cX1t5jZAnS7W~0MC&Xen|WKjrV45>5t z92^P;gZgQc2Cz`_o`xQ3k>ouc<3b2FEFKigJOtamKsrpp(VJ+Q0LtC!td`Pq*ev5R zA=p7NFOWWZyF9~!UWZ$QXz@(8Ic?bPOtEY6l|CngKQ4z21B*f_B-~{$l0qW1P_j}J zU@luruCsqS3pMggW7|UjrcZJ>4r8gY6`|!JZ3?7$cUj67CP&5=oBdwU*tje ziI!9dq_nWfl366an5Cb-RZR#ho|0kHVik8Kr7$o-Cn|5U+YSmhwOxU<%v+nI0HEp< z=+p5iCo3J6B<`E19WxY(`{v^u6?g(zJ}$?W>9S=3M5is)`qJcD8XjqaF%X2+NMD=7 zZFhiU4^}ikk55sRM0FO@#Jy86xQ32JG;vSWDjZfRJADmGI6f?C}g-3E0 z2qn`X@OD}qHrPr`^P;unQ)D$7S*F)ihi%Avw`*L1Nf1~dN-g4K_e&)=^apEj~dc-;N9S$q9znWo%&7b z8NXua$x+C5*s@#@#IqMoDVPE^x*0u2I*><)EvfqTB%O)zKsD9kNOkK&T12#Tmt!Ww z;=<%r|JO9|N_^FGV~zhS1B#812jvkbTyIj)_>mWce#|%R+H$ z3oD&I+)`iz+zDhRO&)lf3ayuaYdTA(R%cGFfMias-&@dHzAbL!1*)`(u8Nj}`GNFD zFo5K7!UI;o5Jh6b!RF%t@d4ADPr_n`mJdic(0p)#m{6kU%_eKA$Zg5Y^Z+U-GTQN- zXNoP=m7$%5WkWxklgn2+CQHyWt&~^Hs1=IM8>0k?&4os6YZwj6!!tMc6o<`)04=ET zQ2uj0$KG~J|`HT92Z+ExSu zyCR;Bhk_)~L)^+?Kh?J#t%b+iVDMVDr;mYmU+qBql889w>OgO@`te}>n+)LlJ|`Zm z?AVT!2h{9%M;fX5JnFNK)P(VoS7$n(LRr|AzKT;u^`z)uujxtu!PDJdGyxjF??p@S znElBb6tPd)pKeiRhkDQu64{#1)3hh`5t+~Gw+>cs(O10n`_5%lD&hp)UbOPoUp=xYJ zr8WY?R7lD1V=Hu>kA{kp-=G6bR~}Lz-p#Z-ip0AU##T(Q=3nx-@u~(GkO`LF+_lh=I{IfhKb_R)PP6A^rD`c4_OL%q)NNGnv_jE% zT(f$i+3s>~Ba1}i30-%CIJX#}5!X|0wc*K4rOndj!l^3HuPc|qlgwJOH77GwpPhRx zFu7H?P3+778q`4Vq#dGixb8}-<8F~8n*HByRaRFazWOUmk+}M>ZUfP1W>|o7i1eCZ zZ9S+~DngUo<)~1#EWDPJ)q4GR5kTu-L?_D%!WWuf;>~vsJg3ZDje5-n(w3d7 zkRbcH&k$;2|W_4-2`KtLui5s0<3Nw z0x<>tV%|gPKs<3BO7T2N7)Bke^I%XjUH;+XUox2bu~~nMl90;o4yW~)XBce^KKYu3 zZ1*sF(Nr0lPGDn4(faI*QPjk~98Q1m*JN5Vb6UQ>C8GZEo1jQbm^gw)V?;B8=2ne& zAoN=7yAgCyRh^61^%zMn!l-7WXcUYZHi}~6vhQe`8dSn3m}pCJ*qv5T^4cv4_2g)} zUlL;3;#As0^u9fYolm7}b?e!cThG_8^W}9I4a>vRMRQJ;o}ch8s>|NB(pI4Ri|Vl* zR;s7k8mG}g2Fyd${pJjtmPVsV`Y-I$G+Kn%q*FYHJ9~rrvv1RBpm(vKDC%kwHlTz( zN~go1LsAAEF5(0qWzdP3dbClz(X+s&S%bfA)aK0>j~8yyYiSHY`({ct<830qWj=B4w1~64g&8(RhKCPk_B1 zc8L?CS0YzBF7b#yP-&Wku6zJ?XV_TwjA}^j)-YCDZ6CKC;Vn zI-UR8Go3CGB3YjqbiKZP-TC&V_2(F0$_4(oKZDk%8~lBJneR;6EU47q*H51;%bt>H zA2-hG$S-CupsUoi9N92+CT$99n9qxkX43vp{0n2DX!Mp=+3hW=A0Zrni=L&W2>rc0 zdKtKC+ANyut8*TDfRjPtrCZs$>9m$HyBzaWzJBbz*#NDC9h^;vu)Wi0XEx+*S`R85 zZ)>}G;cbdpl7x5YP$&xCp?FCA{2e+7ih*hsCB9hliU8FBbv{r9bwj!r&-E;ItKcEIiDuw>HWa-!Xr_@;Cc*R zMZ6wuaXPh#(5Bs9;TKPkpFtC*X*YeYM}x-8)lL=ubK*cBR)sbBRSvQhl=wKDLUOe+KOWQ~d{+Uv+T9lU3PHUM!EzPEN@&&HULx3NiwOo42}LfV28?9@U!zRrIXb>iI{ zlv2Eafnx_Q(ima;B8~p?V%iOu=Y_b&x> zy%^Z+in?SuZ7a~?z-E`(UN?kRzHN+b=L-5Y-Qe5C#NJv-M~k)ZZDBvJq;tfe`eiJw zkaj^I&d5F~)V)wOn9;46KkBrKrsDO4RkT1vfbCY(a9WD9WUU54~;wg!+Y#(CGS(Zs~CmKN)R--`?WT!pi8+f_7xeVQXmY{y#Kpiyc4vS@BJkoi)^ z@GTo-&r0FP59*(5sVIr{%c9f=AJDH6#pn`Eu<}dj0MJ`kNh^py%x9Fld*(D#I?#A#iIMh;i!YA5(wA!-7*==`o~PjqRGX$lFd=!Bf35 zS}cUCd&=mCf|mapzY~m547;+EM(afD!-=-$O}>oh+h7?1yXb&g8@O>UvJ~iyjIZo` zG)0}V3qon&p^qlBgwN<&Azr=k8Qmz5=3lV9-BcybcdPMVP&;%9fS;T9&>n&i&;Hy? zhjC+Ycpvovmb|c!1`*!puLA%^N9T2pPU$L+&Q|Em_H8nlSkWOmEOtdew z82yD~_|tLvgNU7WouGk)B_9K!*j1k+^u;j(!N|mulxx1t<)dr`t(N-WJ5Gwf4qE|9W0|kY}pUgSM(Rw zvEi5KW+6r;KT!{?9czj%>x)+Nuh4v`tao}Mb6=$)tnMSD7dw2F;sInrIV~o2#;X_0 zsf7#%{*s~5e^+i$6}z=dXk5Re z`99B)7R=uk zkeicU%A|sC=;7CP($Tvwf_6Q{`yVKeeix+LWuS5D?dS9=5t8@@-8hE}ie*KAfun?8 zquPN;OJtD3<3?$M2xY8U@*=Rii8UoFVP6YU2zf9B2PLTueWha(bonJn+D}=D4>Zvz z4o~uxeAVE3Qd0?rc4#d53s5FCk?^oqwKS8y!ZIX8Dk5xiT^Q#b!_L-~`mmT*(i3P2 zZ!I;!5y@?&IEh5HWQkqG+H7Nllqtljev#5n2r zdrLcj5wiM733!#@!+uhIfgOyOLP?v!eCAgZBu+S=UcHkCcOB4w@Sp*GxrY9!zqEr= zP2g7~ONA)DL~T7-QYAKei72xXZ%QNZ8p)f|3ekJjYIWcUX)uH^&}s8XKn;X3X|(hU zi|7s0b;#t?750YdI*gGr*seF>*Y+_|87&P+OIOpzNIR!M3171bnjnc#vO1a4x2$3~%-r`f z^L1kq>eDb#||kQo*Fo%Rv5lGC3HX5IVDFu9!pl{)vHAm z=sAbEq{06Bj7hzdx+f1#96Tf$rd;WgUKheyxl5`GV4u09R4B&fNZslp!uo&#$-Rg5 z9X_V(fI)-0cO8tL(_|?N`h752>J}W^(ml?@liGL_4h2=a*u`G(PFYi=VRbk7%;L!= z466#I{aZrq?rgi$HWhHYK1EyL;HgqmPTA>GC3~$(WCsoCmoylr?$Z?ibEVnP z``ug((>uA+1on0YY~Y)V*tQJmb$@+8x88#W59-~Iv*^TWKrQgdJkzDF{3!M3>C$0- zl)7Ptv<5k7JV{t<}@OWl=2WZRsMkCA}lLYU%tpsC#0! zzPh4971&=Ko=1YCJ!olJ?8)&BQWs$)2Rm;jvy@5E zY*JmY)H61M6vU{HH%hH2sGVk8G}X)6ek2`+>c2mdy2-*QKF(d2k4xVOingRoYD8eb z(Vfx;9GJOVnr2|}Ww568Z1yo4%sO|MYqNqfDNr4JNDB65HxGjL-1=KBQNZ#UuXSx;b98M1s=Fo2WnaJO@-*+#j{ z$R0>?2>DxP<&$OL*$_hzW4?0JJbHF{IT%bkn8PVWbhNLfkdF4jV@8xuJ9lwCRaX@u z?Be%N^-G){&6(ww*|akz3r|Rz9ZpwOA27t0{Hps^PTR!nOlzTd{t4;tty}IwsO&sXcG~eJlYE}9<#$ejo(1GV zu*0gI2l8WSJaU0LmvySEGS|zY70~w&qYw4cYbKtt6>Tx0E(R|hThRM0j~-9Nb#iIJ^qv#iP85+n$H95Byad{9cX)8+$RaP#$+KE+3vP;? zA7~cg)yFQuNH62b5dTVQ>|nAOjTAz7H$!{nEY< zbRY6RR6H&>Vo?Nbcr)4RtP%;%n{5i{slc`7oU?sAvC zlKq=xYFBAPdo(Erei+d;4Np;eswJ@TqX~s#uW8yHX)Ax9%H_!A7wW-d4s`Mu z76Mp~n3lq4X9H#b2%zJ>{NC01NA#@HzWwmhC1!hCk?2{i4ZBcFZrG`4q)R`HcV_`j zE5)ly2GZ=Hmq3_xPvIp}fh+d4yQ+{a@Ah8_K;1==eL0drWW#$p2aYR zzs$vjvQP|3zfqOwDi9Cb%k?k^g|SEs$;bgFa-{3qilG;34z{+1+_E!_MXD4)uS&v1 zg~jN%$wwq>$7FzU_o_D^N40U|#W;6lw3hFG(o&uVh~>1>sB*iNjK}fmt>t1U3~l7; zP`uMdo`ZpOsEoPK5uvgZ-vuG(}VPT(wWw(yag_p?QAQf zkJv0+9*#CVT!Zo;T$?>RLYwx_2-#6}mGs9*8QtH0QCic^8(}Q7yPVC2-ZA>g_$th{r|eO8Inpo49HHNWvq3~v?7KLEweKM} zWtK=elr&z)XZ$Ks_7(B^mbHhR#%Dd*L$<)e!+Of2$>Y^5zo(3cI@fy2qxiML#9lHZ zk5{P|d&wiwvuoE!J`Q{xl+KK=%Z=y;pP)3>@^$$aXbS2pui;IzljW{-gCD^Ax39dx zsGrKTW&``n{%mhQc`>Zy@haA*Kgij7^`HK7V}TE>pCsSJUuldElsEe7Y9>3!nUR{W zb!an4ZcU(h_#oK^#62=do&ZH;vfN*%aR#SxL>6E1sP3{adk4@Vhw~7b+N?ZT?yMin z43_%?B8O+O?7{LG0Ml)V{GC>z)_z0oi%0nXUQ}&EJ1(M3#C#1?wYOJFD!5jq5L|XRY!>SX=!T?OD4Fc{Oyt zkfHJQP@9Zl;&(PpwpxvsJHmi2@3D;Wn#|oDFArp=N6Dc=pDMSv0XW?4kDKbTJrm@b zZ1eLiGv#3zh(c5Kz>y6&X9{K~GGTfM zH7CmBpqM>To(5RJ$fpzKA#B(=lQ$cir8PlCeRefVZU?_LuyJ;Ih3G#lo1M1HeF2ZY z239v)*1v=>D_fonOx9OskFsTa!DRd-8Q=A|F-gWG>0pP9CvsmqG!^`sQ%(k`g-#g* z8ly{Y+r57Cj!U#{xHBp?EFz-7SbLRb)uKtyI&z4&dx|$`-mao7n0lD(8r5l=vhj;#{5HnLMY6a4HHcpq%jX34-cotE8K04o^V|{f z?DJS;Bez+X81+ecME97~YcV8iwR)Y{3tu9+B=V>{W z)$$D1Yn6P2ZJ!K?ST*I>o#jpNl1OAMHcw`qSIH)|aJ9Trs8#CIq=^nAE-W7jm{=f% z7?^Mn2sr3HdAGUPr%6-2M?CXhE4N{ZYvf20nSc*<*wQufWYVN5tFcCoX6@I?ZJBG0 zT$jyVD}M;+Mik2{szCq(o-UU6L+F;jPW}L*&B*m&G^%%qWgosTUlZck(huZS)f?hj z#0GhgsYHKFU`sd13x#l2XQP}{tzUG6>f9**h@|SbNxo3MC5nY@mN!;Hh>m9cOJzJi z+*c|;WWUXm!-Tbb-;?IcKAd3DG3>w=S-(No=0karxzsl~S_crzzWh-B$Xx839HrO9 zv8f-)t4MUb>i@A!1QA+T_D6Dn+U66v1zuwwvK8!2wGlB9Z2zb7iAtPeB3a=!c|-LM zQLO8B;NocJTPELE{;Q8+-aF)7pmmPykpHbdAdVg1DW_CHjAseE?g2; zJHZ^C{7l9JqnOW;R8@UqBUtU-axv@g0iq-$QKCsiIBOh6{8^2Cvi{=1)O~U*&@L5C z*$4aN@04Png{ijCaQQu-iPn3 zL?4%(>}`|i$MzhTKh@e;_6hkUh)tK1a%Zu2K*DOS^{bAMxUAYyR*78567el|P{H+C zY$>eB^Nq|eg0m;z$n|QK`bR~-G(Iw4d!eP(8Q6)+cbs`sbU1G+J`0BAf0`n+CKmFo zya$#X6|LU-RxS`kf4rxCUj7p6qSVgcgK!5F|IdukQTWQ#1sSg&Ji8$8ATYY@M{tJW z2YYr&u1rK_bLF#XlSXg0u5=&w;u@H$aV-Fmh8K$DUl5gQ533H|3+09X%$8`0X@QC6dazMwCZH zL}>>To;z}|FROJy4k2F-#215VvAa*@y1;|T0BXZ$a#BsU@&+`2r&eo@(Qf>!KPv`* zAHl_U=NfA~8w{k@9?K6iEcFaMy+DJNzG^rl{^1Md*2v2=hMFxW8P4D+lRYxsluL#pw;tj*Aq|Z3s{5%<&_iZv5)sA_FU%c>8 zVxi$O5oYjiZ=B%W6stkIGep&COAHpXFq1c172f=X!{Dp-U2V9GAC6O7zh`Kou)}Ww z7LzJ?hh}+(+U&?CLxvdWj8-Ey8)_kY^er_U5)C{(UBQY~B~T6h*w9l@Q??qC1$Jh; z!K{Auso@g73l+4(Fp@2qZfL}wFE)gdyuloB>JmdxuycYfI}}+u(+a_PD2D4iJ-TCu zp__=eFR!UjRl^|(4__2J!^{`$Do#VKDyouu`2c>EbZK@T?k-x!z`08r!hWMQ}__GTVZOnR{HgsbhWolHH zpEjTu;6Hqoy73!B6VjkZI#0->d28z+Tk70Ch#M_IQZ3c^~PDlcY66T$%?R$gL<66L3K751Jwm# z#!N3^k){ufQghz&YoJj-W1Ns+Y*mwmG%pm8WDzrs0Z@~r z_L^y2Ac*m8+-zy65UBq0meGltXY4HFYDtJ!|D9|6oM;`@`NmiAUCt{Dj5h_AItoZV zAdXLWcodL2cCoS8M_A4g8K-NX&`hK6@~5)eca3p?(7g8jnE$M6x-~1m)Xy2M36frc z$6M^1wZ=fv&l$yTtu;=~!%Oo;;?XJmZ6)#OWc+x7hu<329`)Ch@M673%d;JwTv4g& zJXPnGvPeo{UYmD`RD&Hfpq}VcTE}PY<-Gx?XtT)cpUiSOII9vNP+JX;^!$RC6LiNwx_0;a2 zr)S#7fu~Y2O0OLeI#i?L^AC)z8baq`ZoHcAvN~Swl%#d)xxtu@q*k|WFg}pQsFq@?OF*x^O6@w12OR%@}*R~1!b93J|$|J?WmaLl96 zjk8g~pNLdQ(L=k1FKs+F&L;F0M zGbcMc(`HT8_Rfy^GByO7qVfPVYFCCjt&6s_&=uujyo?1kd{EiFaj`>oiR zjmA2SJX%J&@?L!BaD1!9Q+2aC%g$asZET@_chu;Sg+k86g{2%{pN}{bUpsAl>cy7t zf~9PDg}W9p5o+Q^<2@s+H|m;klE}zGV~F2Y=gU4(Or++V{dLn=+WV6+j8kh2H$5Q3i=_VBa`BriIR#Sx z?Nji!yUXLU7s7+ns=ok~X?1GYYTtqKXa@tR%CofdJxA3SqN-Z7&qJxhMw&XCg!LSQ z){8g>vwh`Ss*+|Jt+2Qru#WbvdHsqWCSUc3Nu~j2CA{jZwIA@YJ)ZGCL*Fp@Aow&jwy=_XDVZnLxO=ASc ztT1izVGit@RO~#JSIU9BjQ@J#;Z&L z?8Pe6FJg>tads7%j^V-Y@inH4s6~!%keab$>r9bC37>R)Uq0!Qw_wsPtBFC)UT=C= z5H@M?hiUTCmzgn^#~`BEbu13PoZh3W?|6K$?SlJzGC8o`p6k|`K2LV&GwN#Aggr6MxY)kJnH)r=EG4@mj z%!1l6_N2vao(k*i*C1DW*+qMI)S8uI&v5{R$~D5;_>mfTF;leDuFS>=Q_U?g{YBVk zD@-ANQy2cv9>l8~N=?4h7>n5hpC(ON;uo;*XFoPsNkmKLtD0)D0iT%q;~n_oPfWXk z&EDKQz;?g zE!o!nrrM0|HC>hBwOb_i)22GAxX;wUM51}C+To~a4&GQe__gU7d-y&`#?oO3Eg2>O zVAt`MQ=^lnp2&?*2C6epo9=^#XOn&~ZHJ=S1yf;V)0qpVTY~T*N2=J)!9*ZV4b|jJ zCYQ*E1+gnvOw-|a#1&H@v;S=B4Rd_{vnfx~=@FzR-7pO>uuY!>I-h1BoD}W*F>2f2 zO&2Pms15F!PJ_g%zyD=Q(8=We!%BAcYm+}q{M(cU{Wkw?DhH8U_`r052oY+^KOk$u z#~i^!Ng9Hz-EmWW^~O_EUx}#~O(EWApS`qyEaDQ7y~_tCqxufodU_vji zJ|r%N4V*9gtFiuGmwkm#dE@OddSfhaENbp`$(KbCFR&+v^`7h`$npi+LKL%o9jlf;u+{D)7giT1qec!IJ7I0cxGv zO0-rDPp@JA(_L5TE3g4|6kqjjJ*BC@zNiI1n>A2cV{1}FB}rh-+9*Ek(?-hoP&2Qw z(jHpamrax>%)bHjJ>3+CX+KGG7{&%PgrA*WRRZx#IDFMhP2a$sgv6C`W+qk^Ye~MEi8jNYxQh+7v*bnWIib1CCgvA zUw-!(TbFBqkTOx(1+7mKmEWMa^_nsp3R_n|Fj7tI2B27Wd&R64c30{kV{Gf8WC%5) zsxiXnoDoj+tG2B%YlCgJQs}*sE+m^Pix6i$2K&Tv;^s^PUJq zg?=Nml=@gsv*QZm*&o@;_q@l~ldwmu8t6pevAE_5E?)InjlzSGAe0L_x{M&QSgY@JTaa*HQn!rDS7st67Q_%Vo1+UCeueBCD6)R`73Qs3CKd zmRJs)i)OY6)^~oO&%EIXhmB zUWS|>#}*d=Z^p3PE{~6fIUL8)2H$D*ywaO+X{BwWFk|pb&7sse))++wEw(G@Q zVn?ipT>_wM-dBRK-0=bKLY&%SBkT&xwJVC6RDwg|)znSMo$>0=n|b->7G9qJke5jx z^YX+eyzKF*GD)-e+ZBIyVw>^+>fm>?$~yINnc`dZ&|s%x5=eZ!+H#jNUSJ0nDwHu* zx#SBADXwSyTW7^&V1k*SD}%JIXLnb2RXgtiB9iz7_1(QthaWB9uhe43{mM~bfiwG+ z@4aF*y`g<}RXw0o;B!9Eq^MB|TX#^oO(Nseg@=^kLQs4H%os9o4CvBze3hpuTDDxT!)kHJ__=UKSGYd9tDQK3}6TVsC7$Se_WYb**3be z?F|h$3p=SiG)Bfjn_^nbTAorKB0h~z!zREF*5w-|GN92W*u>&@-)yImA`!&4)~o8f z-vBCx2vAL43rDa6XA~wxvtehId#H_y8+0vWN#{@nvHssG>ogf+5586MNmLx0`<=2! zii*Rk9_N+&M%0K)ir@Z>C4R5$;gWtdlhGfPGcf%856U-zxD`!%_*UZH6_m|)IqdTb z$_^TVO3n47avdSRc~Q9t#sP}DEa{Rm9`P&oIy!;vyQJIz{5JfgJcpv-fmej6IQCX? zZC$m-6{UriDU17A`3cNez*XfeKHj>joP)>R<;q?trdDWAuV2%O2G^CF=BW6p?LEeX zSff8{dP6xwqT<Ap{cw3oALlwrQZ4-2S%#D{h>6%vc_HQnfcvQ76BS-?x|L#3|3gvTHkztk}Xu~mDgR@h~8pw{xP!K~S+T}HE_ZQhqA^HC_(#a?DJW>Qxv<|k0B zFq>Zh7AtB%0Z%o}CqW-uyv-D$usXdI;D&9+|8y9e)=TkXXMN0bfuKWu&HE8{u%8(M zZ#Ih;w|SA|kA?b~Kfr<=+Z$m15oTb4=5s)l@j>SEP}!xH`8(K=z+f{tWbDUa^N&h& zHA1hKfY9e_!(7qoh&pBi!bz!X-iG$49;}?%C9}-_u5S)tp6`^JY;1kA#w>rWHYlj&hlDw^KC$^ z^{eJvNX>u{pczyLwJ`sR3nnei=McvCS{cW-v@-vQ{5-ccC!D&djk&+JF_%KkUjcpB zhndmf6|~hhE}oTzn>&f#bpqAD!_5r^11cb|%N49nr1^y*9;N(pxmrKUED35@j5!1~ z_ZzY16ronQrVrLEyjUskuYtV(xKKS4XKpWWXXluY>X%?P3dWdt)Ii6))h6xCweas7 zsdqb=dtpjDp_BQ2!mMkR5OVEgwY}ZF7WTGXqPZ4X)=o`MG}jc25gInz#;dm1fN#h) zn>wYd*_VK*E$D7;j=A@(J%ElS>c*b15cYR}*ozCj%-7g&{ovO(z0KD^Cztgxivru; z#~h#@f889wyQzQmHP4V~I7)^i+57^3m8dy`%>->>`!~$3G@R3inwJuv#&OqlW77>5 zJo>CEziDnM_-cMuX^Zzt;EL{RXhfv1qHbqXk8kCkiZ@`t&qMyL$Ne(pJh8{@TEHZPvD>kxTxwmdPLw=jJ={IbWqLk z(h#H#FE|J{JDhPM{bfS+lF~mC%XBfDnvy=LXO_~Gx%filterpat is removed.

The return value is true unless an invalid option is supplied, an option -other than -p or -r is supplied without a name +other than +-p, +-r, +-D, +-E, +or +-I +is supplied without a name argument, an attempt is made to remove a completion specification for a name for which no specification exists, or an error occurs adding a completion specification. diff --git a/doc/bashref.log b/doc/bashref.log index 6245efff7..d22ffebc7 100644 --- a/doc/bashref.log +++ b/doc/bashref.log @@ -1,11 +1,11 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2021/MacPorts 2021.58693_0) (preloaded format=pdfetex 2021.8.30) 17 APR 2023 15:24 +This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022/MacPorts 2022.62882_0) (preloaded format=etex 2022.5.4) 18 APR 2023 10:26 entering extended mode restricted \write18 enabled. file:line:error style messages enabled. %&-line parsing enabled. -**\input /usr/local/src/bash/bash-20230416/doc/bashref.texi -(/usr/local/src/bash/bash-20230416/doc/bashref.texi -(/usr/local/src/bash/bash-20230416/doc/texinfo.tex +**\nonstopmode \input /usr/local/src/chet/src/bash/src/doc/bashref.texi +(/usr/local/src/chet/src/bash/src/doc/bashref.texi +(/usr/local/src/chet/src/bash/src/doc/texinfo.tex Loading texinfo [version 2015-11-22.14]: \outerhsize=\dimen16 \outervsize=\dimen17 @@ -161,23 +161,20 @@ This is `epsf.tex' v2.7.4 <14 February 2011> texinfo.tex: doing @include of version.texi -(/usr/local/src/bash/bash-20230416/doc/version.texi) [1{/opt/local/var/db/texmf -/fonts/map/pdftex/updmap/pdftex.map}] [2] -(/usr/local/build/bash/bash-20230416/doc/bashref.toc [-1] [-2] [-3]) [-4] -(/usr/local/build/bash/bash-20230416/doc/bashref.toc) -(/usr/local/build/bash/bash-20230416/doc/bashref.toc) Chapter 1 +(/usr/local/src/chet/src/bash/src/doc/version.texi) [1] [2] +(/usr/local/src/chet/src/bash/src/doc/bashref.toc [-1] [-2] [-3]) [-4] +Chapter 1 \openout0 = `bashref.toc'. - -(/usr/local/build/bash/bash-20230416/doc/bashref.aux) + (/usr/local/src/chet/src/bash/src/doc/bashref.aux) \openout1 = `bashref.aux'. - Chapter 2 [1] [2] + Chapter 2 [1] +[2] @cpindfile=@write2 \openout2 = `bashref.cp'. - -[3] Chapter 3 [4] [5] [6] [7] + [3] Chapter 3 [4] [5] [6] [7] @vrindfile=@write3 \openout3 = `bashref.vr'. @@ -260,9 +257,8 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5280--5280 [118] texinfo.tex: doing @include of rluser.texi - (/usr/local/src/bash/bash-20230416/lib/readline/doc/rluser.texi -Chapter 8 [119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] -[130] + (/usr/local/src/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 +[119] [120] [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] Underfull \hbox (badness 7540) in paragraph at lines 874--880 []@textrm In the ex-am-ple above, @textttsl C-u[] @textrm is bound to the func -tion @@ -310,7 +306,7 @@ gnored[] texinfo.tex: doing @include of hsuser.texi -(/usr/local/src/bash/bash-20230416/lib/readline/doc/hsuser.texi Chapter 9 +(/usr/local/src/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 [154] [155] [156] [157] [158] [159]) Chapter 10 [160] [161] [162] [163] [164] Underfull \hbox (badness 10000) in paragraph at lines 9566--9575 @@ -342,38 +338,16 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and [174] [175] Appendix C [176] texinfo.tex: doing @include of fdl.texi - (/usr/local/src/bash/bash-20230416/doc/fdl.texi + (/usr/local/src/chet/src/bash/src/doc/fdl.texi [177] [178] [179] [180] [181] [182] [183]) Appendix D [184] [185] [186] [187] [188] [189] [190] [191] [192] [193] ) Here is how much of TeX's memory you used: - 4100 strings out of 497086 - 47602 string characters out of 6206517 - 142025 words of memory out of 5000000 - 4869 multiletter control sequences out of 15000+600000 + 3530 strings out of 497084 + 40207 string characters out of 6206695 + 87715 words of memory out of 5000000 + 4703 multiletter control sequences out of 15000+600000 34315 words of font info for 116 fonts, out of 8000000 for 9000 51 hyphenation exceptions out of 8191 - 16i,6n,16p,331b,983s stack positions out of 5000i,500n,10000p,200000b,80000s -{/opt/local/share/texmf-texlive/font -s/enc/dvips/cm-super/cm-super-t1.enc}< -/opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb> -Output written on bashref.pdf (199 pages, 805186 bytes). -PDF statistics: - 2794 PDF objects out of 2984 (max. 8388607) - 2548 compressed objects within 26 object streams - 327 named destinations out of 1000 (max. 500000) - 1157 words of extra memory for PDF output out of 10000 (max. 10000000) + 16i,6n,16p,343b,942s stack positions out of 10000i,1000n,20000p,200000b,200000s +Output written on bashref.dvi (199 pages, 836976 bytes). diff --git a/doc/bashref.ps b/doc/bashref.ps index 4712a131b..ea3a255c8 100644 --- a/doc/bashref.ps +++ b/doc/bashref.ps @@ -1,8 +1,8 @@ %!PS-Adobe-2.0 -%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software +%%Creator: dvips(k) 2022.1 (TeX Live 2022) Copyright 2022 Radical Eye Software %%Title: bashref.dvi -%%CreationDate: Fri Dec 2 22:01:18 2022 -%%Pages: 196 +%%CreationDate: Tue Apr 18 14:26:04 2023 +%%Pages: 199 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMMI12 CMMI10 CMCSC10 @@ -12,7 +12,7 @@ %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi %DVIPSParameters: dpi=600 -%DVIPSSource: TeX output 2022.12.02:1701 +%DVIPSSource: TeX output 2023.04.18:1026 %%BeginProcSet: tex.pro 0 0 %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -7561,9 +7561,9 @@ TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi) 1[48 48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 48 48 48 2[48 5[48 39[{}49 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 1[127 1[94 85 68 92 92 84 92 96 -116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61 61 -61 61 61 61 61 61 61 1[34 41 34 31[68 72 11[{}62 109.091 +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 42 1[28 1[42 1[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 68 47 2[27 @@ -7614,24 +7614,23 @@ ifelse 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.2,)g(for)f -Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.2.)3145 1697 y(Decem)m(b)s(er)g(2022) -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 +Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.2.)3333 1697 y(April)f(2023)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.2,)c(2)e(Decem)m(b)s -(er)i(2022\).)150 4523 y(This)h(is)h(Edition)g(5.2,)i(last)e(up)s -(dated)f(2)h(Decem)m(b)s(er)g(2022,)j(of)d Fr(The)f(GNU)h(Bash)g -(Reference)h(Man)m(ual)p Fu(,)150 4633 y(for)30 b Ft(Bash)p -Fu(,)g(V)-8 b(ersion)31 b(5.2.)150 4767 y(Cop)m(yrigh)m(t)602 -4764 y(c)577 4767 y Fq(\015)f Fu(1988{2022)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 +(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.2,)c(17)f(April)f +(2023\).)150 4523 y(This)j(is)h(Edition)f(5.2,)j(last)f(up)s(dated)d +(17)j(April)e(2023,)k(of)d Fr(The)f(GNU)h(Bash)g(Reference)g(Man)m(ual) +p Fu(,)i(for)150 4633 y Ft(Bash)p Fu(,)29 b(V)-8 b(ersion)31 +b(5.2.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767 +y Fq(\015)f Fu(1988{2023)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 @@ -7767,14 +7766,14 @@ g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)40 b Fu(34)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(34)399 4959 y(3.5.7)93 b(W)-8 +(:)f(:)g(:)h(:)28 b Fu(35)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(35)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(35)524 5178 y(3.5.8.1)93 b(P)m(attern)31 +f(:)h(:)f(:)g(:)35 b Fu(36)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(36)399 5288 y(3.5.9)93 @@ -7796,7 +7795,7 @@ h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)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(39)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(39)399 +(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(40)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(40)399 631 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)h @@ -7816,7 +7815,7 @@ 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(41)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(41)275 1289 y(3.7)92 b(Executing)31 b(Commands)24 +(:)41 b Fu(42)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(42)399 1398 y(3.7.1)93 @@ -7835,7 +7834,7 @@ h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h 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(44)399 1946 y(3.7.6)93 b(Signals)23 b Fn(:)15 b(:)h(:)f(:)h(:)f(:) +b Fu(45)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(45)275 @@ -7852,7 +7851,7 @@ h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)29 b Fu(48)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(55)275 2663 y(4.3)92 b(Mo)s(difying)30 +(:)f(:)g(:)h(:)f(:)26 b Fu(56)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(67)399 @@ -7866,259 +7865,266 @@ h(:)f(:)h(:)f(:)g(:)h(:)34 b Fu(71)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(77)150 3242 y Fs(5)135 b(Shell)45 +f(:)g(:)h(:)f(:)22 b Fu(78)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(78)275 3379 y Fu(5.1)92 +f(:)h(:)f(:)g(:)h(:)f(:)24 b Fs(79)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(78)275 3489 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)26 +23 b Fu(79)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(78)150 3739 y Fs(6)135 b(Bash)44 b(F)-11 b(eatures)32 +b Fu(79)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(91)275 3876 y Fu(6.1)92 b(In)m(v)m(oking)31 b(Bash)16 +44 b Fs(92)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(91)275 3986 y(6.2)92 b(Bash)30 b(Startup)g(Files)f +b Fu(92)275 3986 y(6.2)92 b(Bash)30 b(Startup)g(Files)f 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(:)f(:)h(:)f(:)41 b Fu(93)275 +g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Fu(94)275 4095 y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)19 b Fn(:)d(:)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(:)32 b Fu(94)399 4205 y(6.3.1)93 +(:)h(:)f(:)g(:)h(:)f(:)h(:)32 b Fu(95)399 4205 y(6.3.1)93 b(What)31 b(is)f(an)h(In)m(teractiv)m(e)h(Shell?)25 b Fn(:)16 b(:)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(:)38 -b Fu(95)399 4315 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m +b Fu(96)399 4315 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m (e?)22 b Fn(:)d(:)c(:)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(:)35 b Fu(95)399 4424 y(6.3.3)93 b(In)m(teractiv)m(e)33 +h(:)35 b Fu(96)399 4424 y(6.3.3)93 b(In)m(teractiv)m(e)33 b(Shell)d(Beha)m(vior)11 b Fn(:)17 b(:)e(:)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(:)24 b Fu(95)275 4534 y(6.4)92 b(Bash)30 +(:)h(:)f(:)g(:)h(:)f(:)24 b Fu(96)275 4534 y(6.4)92 b(Bash)30 b(Conditional)h(Expressions)10 b Fn(:)k(:)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(:)23 b Fu(96)275 4643 y(6.5)92 +h(:)f(:)h(:)f(:)g(:)h(:)f(:)23 b Fu(97)275 4643 y(6.5)92 b(Shell)30 b(Arithmetic)13 b Fn(:)k(:)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(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g -(:)h(:)26 b Fu(98)275 4753 y(6.6)92 b(Aliases)18 b Fn(:)e(:)g(:)f(:)g +(:)h(:)26 b Fu(99)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(100)275 4863 y(6.7)92 b(Arra)m(ys)23 b Fn(:)15 b(:)h(:)f(:)g(:)h +b Fu(101)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(100)275 4972 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)14 +b Fu(101)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(102)399 5082 y(6.8.1)93 +(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)27 b Fu(103)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(102)275 5191 +(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)33 b Fu(104)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(104)275 5301 y(6.10)92 b(The)30 b(Restricted)h +h(:)f(:)h(:)23 b Fu(105)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(105)p +(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)22 b Fu(107)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(POSIX)e(Mo)s(de)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(:) -h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)28 -b Fu(106)275 193 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(110)150 443 y Fs(7)135 b(Job)45 b(Con)l(trol)35 +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(107)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(107)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(108)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(112)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(113)275 580 y Fu(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)23 +g(:)48 b Fs(116)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(113)275 690 +g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)36 b Fu(116)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(114)275 800 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8 +(:)f(:)24 b Fu(117)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(116)150 -1050 y Fs(8)135 b(Command)45 b(Line)g(Editing)11 b Fo(:)20 +f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38 b Fu(119)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(117)275 1187 y Fu(8.1)92 b(In)m(tro)s(duction) +(:)g(:)h(:)f(:)h(:)k Fs(120)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(117)275 1297 y(8.2)92 +(:)h(:)f(:)g(:)h(:)f(:)h(:)25 b Fu(120)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(117)399 1406 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)13 +b Fu(120)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(118)399 1516 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i +b Fu(121)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(118)399 1626 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)24 +b Fu(121)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(119)399 1735 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)17 +b Fu(122)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(119)399 1845 y(8.2.5)93 b(Searc)m(hing)31 +(:)f(:)h(:)30 b Fu(122)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(119)275 -1954 y(8.3)92 b(Readline)31 b(Init)f(File)8 b Fn(:)17 +(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)28 b Fu(122)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(120)399 2064 +f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)22 b Fu(123)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(120)399 2174 y(8.3.2)93 b(Conditional)31 b(Init)f(Constructs)14 +b Fu(123)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(129)399 2283 y(8.3.3)93 b(Sample)30 b(Init)g(File)20 +b Fu(132)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(130)275 2393 y(8.4)92 +(:)h(:)f(:)g(:)h(:)f(:)h(:)33 b Fu(133)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(133)399 2502 y(8.4.1)93 +h(:)f(:)h(:)f(:)g(:)h(:)f(:)33 b Fu(136)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(133)399 -2612 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f +(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)29 b Fu(136)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(134)399 2721 y(8.4.3)93 b(Commands)29 b(F)-8 +f(:)39 b Fu(137)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(136)399 2831 y(8.4.4)93 b(Killing)31 +h(:)f(:)23 b Fu(139)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(137)399 -2941 y(8.4.5)93 b(Sp)s(ecifying)30 b(Numeric)g(Argumen)m(ts)25 +(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)24 b Fu(140)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(138)399 -3050 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)-8 +(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)39 b Fu(141)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(139)399 3160 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)9 +b Fu(142)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(140)399 3269 y(8.4.8)93 +h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(143)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(141)275 3379 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)e +(:)f(:)27 b Fu(144)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(143)275 -3489 y(8.6)92 b(Programmable)30 b(Completion)25 b Fn(:)15 +f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)41 b Fu(146)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(143)275 3598 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)14 +b Fu(146)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(146)275 -3708 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)8 +h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)28 b Fu(149)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(150)150 3958 y +(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)22 b Fu(153)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(152)275 4095 y Fu(9.1)92 b(Bash)30 b(History)h(F)-8 +(:)h(:)41 b Fs(155)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(152)275 -4205 y(9.2)92 b(Bash)30 b(History)h(Builtins)d Fn(:)16 +f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)22 b Fu(155)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(152)275 4315 y(9.3)92 b(History)31 +h(:)f(:)h(:)f(:)41 b Fu(155)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(154)399 4424 y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)19 +b Fu(157)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(155)399 4534 y(9.3.2)93 b(W)-8 +(:)h(:)f(:)g(:)h(:)32 b Fu(158)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(156)399 -4643 y(9.3.3)93 b(Mo)s(di\014ers)15 b Fn(:)g(:)g(:)h(:)f(:)g(:)h(:)f(:) +f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fu(159)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(156)p eop end +h(:)f(:)h(:)f(:)g(:)29 b Fu(159)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(158)275 220 y Fu(10.1)92 b(Basic)32 +f(:)h(:)f(:)29 b Fs(161)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(158)275 330 y(10.2)92 b(Compilers)30 b(and)g(Options)17 +b Fu(161)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(159)275 439 y(10.3)92 b(Compiling)30 +(:)f(:)h(:)f(:)30 b Fu(162)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(159)275 549 y(10.4)92 +(:)g(:)h(:)f(:)h(:)f(:)23 b Fu(162)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(160)275 658 y(10.5)92 b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s +b Fu(163)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(160)275 768 y(10.6)92 b(Sharing)30 b(Defaults)24 +h(:)34 b Fu(163)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(160)275 +f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)37 b Fu(163)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(161)275 987 y(10.8)92 b(Optional)31 +(:)h(:)f(:)25 b Fu(164)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(161)150 1238 y Fs(App)t(endix)44 b(A)119 b(Rep)t(orting)46 +b Fu(164)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(167)150 1498 y(App)t(endix)44 +(:)f(:)g(:)h(:)f(:)35 b Fs(170)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(168)275 1776 y Fu(B.1)92 +f(:)g(:)h(:)f(:)h(:)47 b Fs(171)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(172)150 2027 y Fs(App)t(endix)44 b(C)124 b(GNU)36 +(:)35 b Fu(175)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(174)150 2305 y(App)t(endix)44 b(D)118 +Fo(:)20 b(:)29 b Fs(177)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(182)275 2442 y Fu(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h +b Fs(185)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(182)275 2552 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8 +b Fu(185)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(183)275 2661 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8 +b Fu(186)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(184)275 2771 y(D.4)92 b(F)-8 b(unction)31 +h(:)f(:)g(:)42 b Fu(187)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(186)275 2880 y(D.5)92 b(Concept)30 b(Index)15 b +b Fu(189)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(188)p eop end +Fu(191)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 @@ -8342,14 +8348,14 @@ y Fu(The)c(follo)m(wing)h(is)f(a)h(brief)e(description)i(of)f(the)g (\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(46\),)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(91\),)h(or)e(from)g +(6.1)g([In)m(v)m(oking)g(Bash],)330 3675 y(page)f(92\),)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)27 b(3.1.2)i([Quoting],)f(page)f(6.)40 b(These)26 b(tok)m(ens)i(are)f (separated)g(b)m(y)f Ft(metacharacters)p Fu(.)36 b(Alias)330 4040 y(expansion)30 b(is)h(p)s(erformed)d(b)m(y)j(this)f(step)g(\(see)i -(Section)f(6.6)g([Aliases],)i(page)e(100\).)199 4186 +(Section)f(6.6)g([Aliases],)i(page)e(101\).)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 @@ -8357,7 +8363,7 @@ 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(35\))h(and)e(commands)g(and)g(argumen)m(ts.)199 +b(page)h(36\))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(38\))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 @@ -8366,7 +8372,7 @@ y(6.)61 b(Executes)31 b(the)g(command)f(\(see)h(Section)g(3.7)h ([Executing)f(Commands],)f(page)h(42\).)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(44\).)p +y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(45\).)p eop end %%Page: 6 12 TeXDict begin 6 11 bop 150 -116 a Fu(Chapter)30 b(3:)41 @@ -8384,11 +8390,11 @@ y(Quoting)c(can)f(b)s(e)g(used)f(to)j(disable)e(sp)s(ecial)h(treatmen)m (quoted)g(if)h(it)g(is)f(to)h(represen)m(t)g(itself.)68 b(When)39 b(the)h(command)f(history)150 1018 y(expansion)i(facilities)j (are)e(b)s(eing)f(used)g(\(see)h(Section)h(9.3)f([History)h(In)m -(teraction],)j(page)c(154\),)47 b(the)150 1127 y Fr(history)30 +(teraction],)j(page)c(157\),)47 b(the)150 1127 y Fr(history)30 b(expansion)h Fu(c)m(haracter,)h(usually)f(`)p Ft(!)p Fu(',)g(m)m(ust)f(b)s(e)g(quoted)h(to)g(prev)m(en)m(t)g(history)g (expansion.)41 b(See)150 1237 y(Section)22 b(9.1)g([Bash)f(History)h(F) --8 b(acilities],)26 b(page)c(152,)j(for)20 b(more)h(details)h +-8 b(acilities],)26 b(page)c(155,)j(for)20 b(more)h(details)h (concerning)g(history)f(expansion.)275 1370 y(There)37 b(are)h(three)f(quoting)h(mec)m(hanisms:)56 b(the)38 b Fr(escap)s(e)g(c)m(haracter)p Fu(,)j(single)d(quotes,)i(and)d(double) @@ -8417,7 +8423,7 @@ 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 3280 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(106\),)h(the)e(`)p +(Section)g(6.11)g([Bash)f(POSIX)f(Mo)s(de],)i(page)g(107\),)h(the)e(`)p Ft(!)p Fu(')150 3390 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 3499 y(c)m(haracters)h(`)p Ft($)p @@ -8639,7 +8645,7 @@ Ft(interactive_comments)38 b Fu(option)44 b(enabled)f(do)s(es)g(not)g (allo)m(w)150 1973 y(commen)m(ts.)56 b(The)34 b Ft (interactive_comments)c Fu(option)35 b(is)g(on)g(b)m(y)g(default)g(in)g (in)m(teractiv)m(e)j(shells.)55 b(See)150 2083 y(Section)30 -b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(94,)g(for)e(a)i +b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(95,)g(for)e(a)i (description)e(of)h(what)g(mak)m(es)h(a)f(shell)g(in)m(teractiv)m(e.) 150 2316 y Fs(3.2)68 b(Shell)45 b(Commands)150 2476 y Fu(A)d(simple)g(shell)g(command)f(suc)m(h)h(as)g Ft(echo)29 @@ -8677,7 +8683,7 @@ 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 4990 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 5121 y(The)h(return)h(status)g(\(see)i -(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(44\))g(of)g(a)g(simple)f +(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(45\))g(of)g(a)g(simple)f (command)g(is)h(its)150 5230 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 5340 y(w)m(as)31 @@ -8716,21 +8722,21 @@ b(The)31 b Ft(-p)f Fu(option)i(c)m(hanges)g(the)f(output)g(format)g(to) 150 2130 y(that)j(sp)s(eci\014ed)e(b)m(y)h Fm(posix)p Fu(.)49 b(When)33 b(the)g(shell)g(is)h(in)e Fm(posix)h Fu(mo)s(de)g(\(see)h(Section)g(6.11)g([Bash)g(POSIX)150 -2239 y(Mo)s(de],)j(page)e(106\),)j(it)e(do)s(es)e(not)i(recognize)g +2239 y(Mo)s(de],)j(page)e(107\),)j(it)e(do)s(es)e(not)i(recognize)g Ft(time)e Fu(as)h(a)h(reserv)m(ed)f(w)m(ord)f(if)h(the)g(next)g(tok)m (en)h(b)s(egins)150 2349 y(with)d(a)g(`)p Ft(-)p Fu('.)49 b(The)33 b Ft(TIMEFORMAT)d Fu(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(set) g(to)h(a)g(format)f(string)g(that)h(sp)s(eci\014es)f(ho)m(w)g(the)150 2458 y(timing)38 b(information)g(should)e(b)s(e)h(displa)m(y)m(ed.)62 b(See)38 b(Section)g(5.2)g([Bash)g(V)-8 b(ariables],)41 -b(page)d(78,)i(for)e(a)150 2568 y(description)27 b(of)g(the)h(a)m(v)-5 +b(page)d(79,)i(for)e(a)150 2568 y(description)27 b(of)g(the)h(a)m(v)-5 b(ailable)29 b(formats.)40 b(The)26 b(use)h(of)g Ft(time)f Fu(as)i(a)f(reserv)m(ed)g(w)m(ord)g(p)s(ermits)f(the)h(timing)150 2677 y(of)38 b(shell)g(builtins,)i(shell)e(functions,)i(and)d(pip)s (elines.)63 b(An)38 b(external)h Ft(time)e Fu(command)h(cannot)g(time) 150 2787 y(these)31 b(easily)-8 b(.)275 2927 y(When)26 b(the)h(shell)g(is)g(in)g Fm(posix)f Fu(mo)s(de)g(\(see)i(Section)f -(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(106\),)h Ft(time)150 +(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(107\),)h Ft(time)150 3036 y Fu(ma)m(y)d(b)s(e)f(follo)m(w)m(ed)j(b)m(y)d(a)h(newline.)39 b(In)25 b(this)h(case,)i(the)d(shell)h(displa)m(ys)g(the)g(total)h (user)e(and)g(system)h(time)150 3146 y(consumed)33 b(b)m(y)h(the)h @@ -8791,7 +8797,7 @@ 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 1102 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 1211 y(Chapter)27 b(7)h([Job)f(Con)m(trol],)i(page)g(113\),) +(\(see)150 1211 y(Chapter)27 b(7)h([Job)f(Con)m(trol],)i(page)g(116\),) h(the)d(standard)g(input)f(for)i(async)m(hronous)f(commands,)h(in)f (the)150 1321 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 1448 y(Commands)19 @@ -8884,7 +8890,7 @@ Ft(;)i Fj(expr3)e Ft(\)\))h(;)h(do)f Fj(commands)e Ft(;)j(done)630 2437 y Fu(First,)38 b(the)f(arithmetic)h(expression)e Fr(expr1)43 b Fu(is)36 b(ev)-5 b(aluated)38 b(according)f(to)g(the)g (rules)f(de-)630 2547 y(scrib)s(ed)41 b(b)s(elo)m(w)h(\(see)h(Section)g -(6.5)g([Shell)g(Arithmetic],)j(page)d(98\).)77 b(The)42 +(6.5)g([Shell)g(Arithmetic],)j(page)d(99\).)77 b(The)42 b(arithmetic)630 2656 y(expression)33 b Fr(expr2)41 b Fu(is)34 b(then)f(ev)-5 b(aluated)35 b(rep)s(eatedly)f(un)m(til)g(it)g (ev)-5 b(aluates)35 b(to)g(zero.)51 b(Eac)m(h)630 2766 @@ -9032,7 +9038,7 @@ b(,)32 b(and)d(displa)m(ys)i(the)f(name)h(and)f(index)f(of)i(the)g 2642 y(\(\()h Fj(expression)e Ft(\)\))630 2777 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 -2887 y(\(see)22 b(Section)f(6.5)h([Shell)f(Arithmetic],)j(page)d(98\).) +2887 y(\(see)22 b(Section)f(6.5)h([Shell)f(Arithmetic],)j(page)d(99\).) 39 b(The)20 b Fr(expression)h Fu(undergo)s(es)f(the)h(same)630 2996 y(expansions)35 b(as)h(if)f(it)h(w)m(ere)g(within)f(double)f (quotes,)k(but)d(double)f(quote)i(c)m(haracters)h(in)630 @@ -9046,7 +9052,7 @@ Ft(]])630 3646 y Fu(Return)25 b(a)h(status)f(of)h(0)g(or)g(1)g(dep)s (expres-)630 3755 y(sion)j Fr(expression)p Fu(.)41 b(Expressions)29 b(are)i(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s(elo)m (w)h(in)630 3865 y(Section)37 b(6.4)g([Bash)f(Conditional)h -(Expressions],)g(page)g(96.)58 b(The)36 b(w)m(ords)f(b)s(et)m(w)m(een)i +(Expressions],)g(page)g(97.)58 b(The)36 b(w)m(ords)f(b)s(et)m(w)m(een)i (the)630 3974 y Ft([[)h Fu(and)g Ft(]])g Fu(do)g(not)h(undergo)f(w)m (ord)g(splitting)h(and)f(\014lename)h(expansion.)65 b(The)38 b(shell)630 4084 y(p)s(erforms)26 b(tilde)j(expansion,)f(parameter)g @@ -9359,7 +9365,7 @@ 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 b(the)h(\014rst)150 3879 y(w)m(ord)30 b(of)h(the)f(simple)g(command.) 275 4007 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 4117 y([Arra)m(ys],)h(page)e(100\))g(named) +b(\(see)g(Section)g(6.7)150 4117 y([Arra)m(ys],)h(page)e(101\))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 4226 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 @@ -9448,10 +9454,10 @@ b Fu(is)d(executed)150 3972 y(whenev)m(er)29 b Fr(fname)35 b Fu(is)29 b(sp)s(eci\014ed)g(as)g(the)h(name)f(of)h(a)f(simple)h (command.)40 b(When)29 b(the)h(shell)f(is)h(in)f Fm(posix)150 4082 y Fu(mo)s(de)i(\(see)h(Section)g(6.11)h([Bash)f(POSIX)e(Mo)s(de],) -i(page)g(106\),)i Fr(fname)i Fu(m)m(ust)31 b(b)s(e)g(a)h(v)-5 +i(page)g(107\),)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)150 4192 y(and)h(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 4301 y(page)d(77\).)43 +(4.4)g([Sp)s(ecial)g(Builtins],)150 4301 y(page)d(78\).)43 b(In)29 b(default)i(mo)s(de,)g(a)f(function)h(name)f(can)h(b)s(e)f(an)m (y)h(unquoted)e(shell)i(w)m(ord)f(that)h(do)s(es)g(not)150 4411 y(con)m(tain)k(`)p Ft($)p Fu('.)52 b(An)m(y)34 b(redirections)g @@ -9612,7 +9618,7 @@ b(ariable)32 b(at)g(a)g(previous)f(scop)s(e,)h(an)m(y)f(instance)i(of)e 3258 y(F)-8 b(unction)51 b(names)f(and)g(de\014nitions)g(ma)m(y)i(b)s (e)e(listed)h(with)f(the)h Ft(-f)f Fu(option)h(to)g(the)g Ft(declare)150 3368 y Fu(\()p Ft(typeset)p Fu(\))43 b(builtin)h -(command)g(\(see)h(Section)g(4.2)g([Bash)g(Builtins],)j(page)d(55\).)83 +(command)g(\(see)h(Section)g(4.2)g([Bash)g(Builtins],)j(page)d(56\).)83 b(The)44 b Ft(-F)f Fu(option)150 3477 y(to)e Ft(declare)e Fu(or)i Ft(typeset)e Fu(will)i(list)g(the)g(function)f(names)h(only)g (\(and)f(optionally)i(the)f(source)g(\014le)150 3587 @@ -9641,7 +9647,7 @@ m(y)h(a)g Ft(name)p Fu(.)52 b(A)35 b(v)-5 b(ariable)150 Ft(attributes)p Fu(.)71 b(A)m(ttributes)42 b(are)f(assigned)h(using)f (the)g Ft(declare)150 4989 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 5099 y(page)h(55\).)275 5230 +g([Bash)g(Builtins],)150 5099 y(page)h(56\).)275 5230 y(A)d(parameter)h(is)g(set)g(if)f(it)h(has)f(b)s(een)g(assigned)h(a)g (v)-5 b(alue.)40 b(The)28 b(n)m(ull)h(string)f(is)h(a)g(v)-5 b(alid)28 b(v)-5 b(alue.)41 b(Once)150 5340 y(a)31 b(v)-5 @@ -9674,14 +9680,14 @@ 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 1410 y(commands)31 b(\()p Fr(declaration)j Fu(commands\).)44 b(When)32 b(in)f Fm(posix)g Fu(mo)s(de)g(\(see)h(Section)h(6.11)g([Bash)f(POSIX)150 -1520 y(Mo)s(de],)h(page)f(106\),)i(these)e(builtins)f(ma)m(y)h(app)s +1520 y(Mo)s(de],)h(page)f(107\),)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 1630 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.)275 1802 y(In)d(the)h(con)m(text)i(where)d(an)h(assignmen)m(t)h(statemen)m(t)h (is)e(assigning)g(a)h(v)-5 b(alue)30 b(to)h(a)f(shell)g(v)-5 b(ariable)31 b(or)150 1911 y(arra)m(y)k(index)f(\(see)h(Section)g(6.7)g -([Arra)m(ys],)h(page)f(100\),)i(the)e(`)p Ft(+=)p Fu(')f(op)s(erator)g +([Arra)m(ys],)h(page)f(101\),)i(the)e(`)p Ft(+=)p Fu(')f(op)s(erator)g (can)h(b)s(e)e(used)h(to)h(app)s(end)150 2021 y(to)h(or)g(add)e(to)j (the)e(v)-5 b(ariable's)36 b(previous)f(v)-5 b(alue.)57 b(This)34 b(includes)h(argumen)m(ts)h(to)g(builtin)f(commands)150 @@ -9695,7 +9701,7 @@ b(aluated)38 b(as)150 2350 y(an)28 b(arithmetic)h(expression)f(and)f b(alue,)30 b(whic)m(h)d(is)i(also)f(ev)-5 b(aluated.)150 2459 y(When)43 b(`)p Ft(+=)p Fu(')g(is)h(applied)f(to)h(an)f(arra)m(y)h (v)-5 b(ariable)44 b(using)f(comp)s(ound)e(assignmen)m(t)j(\(see)h -(Section)f(6.7)150 2569 y([Arra)m(ys],)g(page)d(100\),)k(the)c(v)-5 +(Section)f(6.7)150 2569 y([Arra)m(ys],)g(page)d(101\),)k(the)c(v)-5 b(ariable's)42 b(v)-5 b(alue)41 b(is)g(not)f(unset)h(\(as)g(it)g(is)g (when)e(using)h(`)p Ft(=)p Fu('\),)k(and)c(new)150 2679 y(v)-5 b(alues)27 b(are)g(app)s(ended)f(to)h(the)g(arra)m(y)h(b)s @@ -9709,7 +9715,7 @@ b Fr(v)-5 b(alue)32 b Fu(is)c(expanded)e(and)h(app)s(ended)e(to)j(the)f 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 3180 y Ft(local)f Fu(builtin)h(commands)g(\(see) -i(Section)f(4.2)h([Bash)f(Builtins],)h(page)f(55\))h(to)f(create)i(a)e +i(Section)f(4.2)h([Bash)f(Builtins],)h(page)f(56\))h(to)f(create)i(a)e Fr(nameref)p Fu(,)g(or)g(a)150 3289 y(reference)f(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 @@ -9843,7 +9849,7 @@ 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 408 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 518 y(\(see)31 b(Section)h(7.2)f([Job)f(Con)m(trol)h -(Builtins],)g(page)h(114\).)150 675 y Ft(0)432 b Fu(\($0\))46 +(Builtins],)g(page)h(117\).)150 675 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 785 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 @@ -9851,7 +9857,7 @@ b(Bash)h(is)g(in)m(v)m(ok)m(ed)h(with)e(a)i(\014le)e(of)h(commands)g 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 1004 y Ft(-c)i Fu(option)h(\(see)h(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)g -(page)f(91\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)f(\014rst)630 +(page)f(92\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)f(\014rst)630 1113 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 1223 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f @@ -9891,7 +9897,7 @@ b(The)24 b(only)150 3986 y(exceptions)i(to)f(this)g(are)g(the)g (3.4.2)i([Sp)s(ecial)e(P)m(arameters],)150 4096 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(100\).)275 4229 y(After)41 b(all)i(expansions,)h +(page)g(101\).)275 4229 y(After)41 b(all)i(expansions,)h Ft(quote)29 b(removal)40 b Fu(\(see)i(Section)h(3.5.9)g([Quote)f(Remo)m (v)-5 b(al],)47 b(page)42 b(38\))h(is)150 4339 y(p)s(erformed.)150 4535 y Fk(3.5.1)63 b(Brace)40 b(Expansion)150 4682 y @@ -9899,7 +9905,7 @@ Fu(Brace)32 b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h (arbitrary)f(strings)h(ma)m(y)g(b)s(e)f(generated.)43 b(This)30 b(mec)m(h-)150 4792 y(anism)35 b(is)h(similar)f(to)h Fr(\014lename)g(expansion)f Fu(\(see)i(Section)f(3.5.8)h([Filename)g -(Expansion],)f(page)g(35\),)150 4902 y(but)26 b(the)h(\014lenames)g +(Expansion],)f(page)g(36\),)150 4902 y(but)26 b(the)h(\014lenames)g (generated)h(need)f(not)g(exist.)40 b(P)m(atterns)28 b(to)f(b)s(e)g(brace)g(expanded)f(tak)m(e)i(the)f(form)g(of)150 5011 y(an)j(optional)h Fr(pream)m(ble)p Fu(,)g(follo)m(w)m(ed)g(b)m(y)f @@ -10001,7 +10007,7 @@ 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 5121 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 5230 y(page)34 b(102\).)50 b(If)32 b(the)h(tilde-pre\014x,)h +(k],)150 5230 y(page)34 b(103\).)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 5340 y(`)p Ft(-)p Fu(',)e(`)p Ft(+)p Fu(')f(is)h(assumed.)p eop end @@ -10060,7 +10066,7 @@ b(alue)42 b(of)g Fr(parameter)48 b Fu(is)150 4105 y(substituted.)43 b(The)31 b Fr(parameter)39 b Fu(is)31 b(a)h(shell)f(parameter)h(as)g (describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.4)h([Shell)150 4215 y(P)m(arameters],)28 b(page)f(21\))g(or)f(an)f(arra)m(y)h -(reference)h(\(see)f(Section)h(6.7)g([Arra)m(ys],)g(page)g(100\).)41 +(reference)h(\(see)f(Section)h(6.7)g([Arra)m(ys],)g(page)g(101\).)41 b(The)25 b(braces)150 4325 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 4434 y Fr(parameter)37 @@ -10159,7 +10165,7 @@ b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(28)630 299 y(sp)s(eci\014ed)30 b(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 408 y(arithmetic)e(expressions)e -(\(see)h(Section)g(6.5)h([Shell)e(Arithmetic],)i(page)f(98\).)630 +(\(see)h(Section)g(6.5)h([Shell)e(Arithmetic],)i(page)f(99\).)630 555 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 664 y(in)33 b(c)m(haracters)i @@ -10204,1410 +10210,1426 @@ y Ft($)47 b(echo)g(${array[0]:7})630 408 y(7890abcdefgh)630 1285 y(bcdefgh)630 1395 y($)i(echo)g(${array[0]:)e(-7:0})630 1614 y($)i(echo)g(${array[0]:)e(-7:2})630 1724 y(bc)630 1833 y($)i(echo)g(${array[0]:)e(-7:-2})630 1943 y(bcdef)630 -2071 y Fu(If)34 b Fr(parameter)41 b Fu(is)35 b(`)p Ft(@)p +2074 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 2180 -y(at)27 b Fr(o\013set)p Fu(.)40 b(A)26 b(negativ)m(e)j -Fr(o\013set)g Fu(is)d(tak)m(en)h(relativ)m(e)h(to)f(one)g(greater)g -(than)f(the)g(greatest)i(p)s(o-)630 2290 y(sitional)i(parameter,)f(so)f -(an)g(o\013set)i(of)e(-1)h(ev)-5 b(aluates)30 b(to)f(the)f(last)h(p)s -(ositional)g(parameter.)630 2399 y(It)h(is)h(an)f(expansion)g(error)g -(if)h Fr(length)f Fu(ev)-5 b(aluates)32 b(to)g(a)e(n)m(um)m(b)s(er)f -(less)i(than)f(zero.)630 2527 y(The)i(follo)m(wing)i(examples)f -(illustrate)h(substring)d(expansion)i(using)f(p)s(ositional)h(param-) -630 2637 y(eters:)630 2765 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 -2874 y($)g(echo)g(${@:7})630 2984 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 3093 y($)g(echo)g(${@:7:0})630 3313 y($)g(echo)g -(${@:7:2})630 3422 y(7)g(8)630 3532 y($)g(echo)g(${@:7:-2})630 -3641 y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)630 -3751 y($)g(echo)g(${@:)g(-7:2})630 3861 y(b)g(c)630 3970 -y($)g(echo)g(${@:0})630 4080 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 4189 y($)f(echo)g(${@:0:2}) -630 4299 y(./bash)f(1)630 4408 y($)h(echo)g(${@:)g(-7:0})630 -4646 y Fu(If)36 b Fr(parameter)43 b Fu(is)36 b(an)g(indexed)g(arra)m(y) +Fu(p)s(ositional)g(parameters)g(b)s(eginning)630 2184 +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 2293 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 2403 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 2513 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 +2644 y(The)i(follo)m(wing)i(examples)f(illustrate)h(substring)d +(expansion)i(using)f(p)s(ositional)h(param-)630 2754 +y(eters:)630 2885 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 2995 y($)g(echo)g(${@:7}) +630 3104 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 +3214 y($)g(echo)g(${@:7:0})630 3433 y($)g(echo)g(${@:7:2})630 +3543 y(7)g(8)630 3652 y($)g(echo)g(${@:7:-2})630 3762 +y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)630 3871 +y($)g(echo)g(${@:)g(-7:2})630 3981 y(b)g(c)630 4091 y($)g(echo)g +(${@:0})630 4200 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 4310 y($)f(echo)g(${@:0:2})630 +4419 y(./bash)f(1)630 4529 y($)h(echo)g(${@:)g(-7:0})630 +4770 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 4755 y(the)j Fr(length)g +Ft(*)p Fu(',)h(the)e(result)g(is)630 4880 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 4865 y(negativ)m(e)33 b Fr(o\013set)g Fu(is)e(tak)m(en)h +b(A)630 4989 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 4975 y(sp)s(eci\014ed)38 b(arra)m(y)-8 +(of)h(the)630 5099 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 -5084 y(than)30 b(zero.)630 5212 y(These)23 b(examples)i(sho)m(w)e(ho)m +5208 y(than)30 b(zero.)630 5340 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 5340 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\))p eop end +(arra)m(ys:)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(echo)g(${array[@]:7})630 408 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 518 y($)g(echo)g(${array[@]:7:2})630 -628 y(7)g(8)630 737 y($)g(echo)g(${array[@]:)e(-7:2})630 -847 y(b)i(c)630 956 y($)g(echo)g(${array[@]:)e(-7:-2})630 -1066 y(bash:)h(-2:)h(substring)f(expression)f(<)i(0)630 -1176 y($)g(echo)g(${array[@]:0})630 1285 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 1395 -y($)g(echo)g(${array[@]:0:2})630 1504 y(0)g(1)630 1614 -y($)g(echo)g(${array[@]:)e(-7:0})630 1855 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 1987 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 2096 y(whic)m(h)29 +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 408 y($)f(echo)g(${array[@]:7})630 +518 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 +628 y($)g(echo)g(${array[@]:7:2})630 737 y(7)g(8)630 +847 y($)g(echo)g(${array[@]:)e(-7:2})630 956 y(b)i(c)630 +1066 y($)g(echo)g(${array[@]:)e(-7:-2})630 1176 y(bash:)h(-2:)h +(substring)f(expression)f(<)i(0)630 1285 y($)g(echo)g(${array[@]:0})630 +1395 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 1504 y($)g(echo)g(${array[@]:0:2})630 +1614 y(0)g(1)630 1724 y($)g(echo)g(${array[@]:)e(-7:0})630 +1965 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 +2096 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 2206 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 -2206 y(parameters)h(are)f(used,)g Ft($0)g Fu(is)g(pre\014xed)g(to)h -(the)f(list.)150 2359 y Ft(${!)p Fj(prefix)p Ft(*})150 -2469 y(${!)p Fj(prefix)p Ft(@})630 2578 y Fu(Expands)24 +2315 y(parameters)h(are)f(used,)g Ft($0)g Fu(is)g(pre\014xed)g(to)h +(the)f(list.)150 2469 y Ft(${!)p Fj(prefix)p Ft(*})150 +2578 y(${!)p Fj(prefix)p Ft(@})630 2688 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 -2688 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Ft(IFS)f +2798 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 2798 y(sion)35 +Fu(')g(is)g(used)f(and)h(the)g(expan-)630 2907 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 -2907 y(w)m(ord.)150 3061 y Ft(${!)p Fj(name)p Ft([@]})150 -3170 y(${!)p Fj(name)p Ft([*]})630 3280 y Fu(If)26 b +3017 y(w)m(ord.)150 3170 y Ft(${!)p Fj(name)p Ft([@]})150 +3280 y(${!)p Fj(name)p Ft([*]})630 3389 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 3389 y(in)c Fr(name)p Fu(.)39 b(If)24 b +(assigned)630 3499 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 3499 y(When)39 b(`)p Ft(@)p Fu(')h(is)f(used)g(and)f +(otherwise.)630 3608 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 3608 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150 -3762 y Ft(${#)p Fj(parameter)p Ft(})630 3871 y Fu(The)40 +(k)m(ey)630 3718 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150 +3871 y Ft(${#)p Fj(parameter)p Ft(})630 3981 y Fu(The)40 b(length)g(in)g(c)m(haracters)i(of)e(the)h(expanded)e(v)-5 b(alue)41 b(of)f Fr(parameter)47 b Fu(is)40 b(substituted.)630 -3981 y(If)i Fr(parameter)50 b Fu(is)43 b(`)p Ft(*)p Fu(')g(or)g(`)p +4091 y(If)i Fr(parameter)50 b Fu(is)43 b(`)p Ft(*)p Fu(')g(or)g(`)p Ft(@)p Fu(',)k(the)c(v)-5 b(alue)43 b(substituted)f(is)h(the)g(n)m(um)m -(b)s(er)f(of)h(p)s(ositional)630 4091 y(parameters.)i(If)32 +(b)s(er)f(of)h(p)s(ositional)630 4200 y(parameters.)i(If)32 b Fr(parameter)38 b Fu(is)32 b(an)g(arra)m(y)g(name)g(subscripted)f(b)m (y)g(`)p Ft(*)p Fu(')h(or)g(`)p Ft(@)p Fu(',)g(the)g(v)-5 -b(alue)630 4200 y(substituted)30 b(is)h(the)g(n)m(um)m(b)s(er)e(of)i +b(alue)630 4310 y(substituted)30 b(is)h(the)g(n)m(um)m(b)s(er)e(of)i (elemen)m(ts)i(in)d(the)h(arra)m(y)-8 b(.)43 b(If)30 -b Fr(parameter)38 b Fu(is)31 b(an)f(indexed)630 4310 +b Fr(parameter)38 b Fu(is)31 b(an)f(indexed)630 4419 y(arra)m(y)37 b(name)g(subscripted)f(b)m(y)h(a)g(negativ)m(e)i(n)m(um)m (b)s(er,)f(that)f(n)m(um)m(b)s(er)f(is)g(in)m(terpreted)i(as)630 -4419 y(relativ)m(e)47 b(to)g(one)e(greater)i(than)e(the)h(maxim)m(um)f +4529 y(relativ)m(e)47 b(to)g(one)e(greater)i(than)e(the)h(maxim)m(um)f (index)g(of)g Fr(parameter)p Fu(,)50 b(so)c(negativ)m(e)630 -4529 y(indices)30 b(coun)m(t)h(bac)m(k)g(from)f(the)h(end)e(of)i(the)f +4639 y(indices)30 b(coun)m(t)h(bac)m(k)g(from)f(the)h(end)e(of)i(the)f (arra)m(y)-8 b(,)32 b(and)e(an)g(index)g(of)g(-1)h(references)g(the)630 -4639 y(last)g(elemen)m(t.)150 4792 y Ft(${)p Fj(parameter)p -Ft(#)p Fj(word)p Ft(})150 4902 y(${)p Fj(parameter)p -Ft(##)p Fj(word)p Ft(})630 5011 y Fu(The)43 b Fr(w)m(ord)k +4748 y(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)43 b Fr(w)m(ord)k Fu(is)d(expanded)f(to)h(pro)s(duce)f(a)h(pattern)g(and)f(matc)m(hed)i -(according)f(to)h(the)630 5121 y(rules)31 b(describ)s(ed)g(b)s(elo)m(w) +(according)f(to)h(the)630 5230 y(rules)31 b(describ)s(ed)g(b)s(elo)m(w) h(\(see)h(Section)g(3.5.8.1)h([P)m(attern)g(Matc)m(hing],)g(page)f -(36\).)46 b(If)32 b(the)630 5230 y(pattern)37 b(matc)m(hes)h(the)f(b)s +(36\).)46 b(If)32 b(the)630 5340 y(pattern)37 b(matc)m(hes)h(the)f(b)s (eginning)f(of)h(the)g(expanded)f(v)-5 b(alue)38 b(of)f -Fr(parameter)p Fu(,)i(then)e(the)630 5340 y(result)f(of)h(the)f -(expansion)h(is)f(the)h(expanded)e(v)-5 b(alue)37 b(of)g -Fr(parameter)43 b Fu(with)36 b(the)h(shortest)p eop end +Fr(parameter)p Fu(,)i(then)e(the)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(matc)m(hing)31 b(pattern)e(\(the)h(`)p Ft(#)p Fu(')g(case\))h(or)e -(the)h(longest)h(matc)m(hing)f(pattern)g(\(the)g(`)p -Ft(##)p Fu(')g(case\))630 408 y(deleted.)49 b(If)32 b +y(result)36 b(of)h(the)f(expansion)h(is)f(the)h(expanded)e(v)-5 +b(alue)37 b(of)g Fr(parameter)43 b Fu(with)36 b(the)h(shortest)630 +408 y(matc)m(hing)31 b(pattern)e(\(the)h(`)p Ft(#)p Fu(')g(case\))h(or) +e(the)h(longest)h(matc)m(hing)f(pattern)g(\(the)g(`)p +Ft(##)p Fu(')g(case\))630 518 y(deleted.)49 b(If)32 b Fr(parameter)40 b Fu(is)33 b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5 b(al)34 b(op)s(eration)g(is) -f(applied)f(to)630 518 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f +f(applied)f(to)630 628 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f (turn,)h(and)e(the)h(expansion)g(is)h(the)f(resultan)m(t)h(list.)61 -b(If)630 628 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5 +b(If)630 737 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p -Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 737 +Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 847 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m(b)s(er)e(of)h (the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g(is)630 -847 y(the)h(resultan)m(t)g(list.)150 1019 y Ft(${)p Fj(parameter)p -Ft(\045)p Fj(word)p Ft(})150 1129 y(${)p Fj(parameter)p -Ft(\045\045)p Fj(word)p Ft(})630 1238 y Fu(The)43 b Fr(w)m(ord)k +956 y(the)h(resultan)m(t)g(list.)150 1129 y Ft(${)p Fj(parameter)p +Ft(\045)p Fj(word)p Ft(})150 1238 y(${)p Fj(parameter)p +Ft(\045\045)p Fj(word)p Ft(})630 1348 y Fu(The)43 b Fr(w)m(ord)k Fu(is)d(expanded)f(to)h(pro)s(duce)f(a)h(pattern)g(and)f(matc)m(hed)i -(according)f(to)h(the)630 1348 y(rules)f(describ)s(ed)g(b)s(elo)m(w)h +(according)f(to)h(the)630 1457 y(rules)f(describ)s(ed)g(b)s(elo)m(w)h (\(see)h(Section)g(3.5.8.1)h([P)m(attern)f(Matc)m(hing],)51 -b(page)45 b(36\).)85 b(If)630 1457 y(the)43 b(pattern)g(matc)m(hes)h(a) +b(page)45 b(36\).)85 b(If)630 1567 y(the)43 b(pattern)g(matc)m(hes)h(a) g(trailing)g(p)s(ortion)e(of)h(the)g(expanded)g(v)-5 -b(alue)43 b(of)g Fr(parameter)p Fu(,)630 1567 y(then)c(the)g(result)g +b(alue)43 b(of)g Fr(parameter)p Fu(,)630 1677 y(then)c(the)g(result)g (of)h(the)f(expansion)g(is)h(the)f(v)-5 b(alue)40 b(of)f -Fr(parameter)46 b Fu(with)39 b(the)h(shortest)630 1677 +Fr(parameter)46 b Fu(with)39 b(the)h(shortest)630 1786 y(matc)m(hing)31 b(pattern)e(\(the)h(`)p Ft(\045)p Fu(')g(case\))h(or)e (the)h(longest)h(matc)m(hing)f(pattern)g(\(the)g(`)p -Ft(\045\045)p Fu(')g(case\))630 1786 y(deleted.)49 b(If)32 +Ft(\045\045)p Fu(')g(case\))630 1896 y(deleted.)49 b(If)32 b Fr(parameter)40 b Fu(is)33 b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5 b(al)34 b(op)s(eration)g(is) -f(applied)f(to)630 1896 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f +f(applied)f(to)630 2005 y(eac)m(h)38 b(p)s(ositional)g(parameter)g(in)f (turn,)h(and)e(the)h(expansion)g(is)h(the)f(resultan)m(t)h(list.)61 -b(If)630 2005 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5 +b(If)630 2115 y Fr(parameter)38 b Fu(is)32 b(an)f(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p -Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 2115 +Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5 b(al)630 2225 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m(b)s(er)e(of)h (the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g(is)630 -2225 y(the)h(resultan)m(t)g(list.)150 2397 y Ft(${)p +2334 y(the)h(resultan)m(t)g(list.)150 2506 y Ft(${)p Fj(parameter)p Ft(/)p Fj(pattern)p Ft(/)p Fj(stri)o(ng)p -Ft(})150 2506 y(${)p Fj(parameter)p Ft(//)p Fj(pattern)p -Ft(/)p Fj(str)o(ing)p Ft(})150 2616 y(${)p Fj(parameter)p -Ft(/#)p Fj(pattern)p Ft(/)p Fj(str)o(ing)p Ft(})150 2725 +Ft(})150 2616 y(${)p Fj(parameter)p Ft(//)p Fj(pattern)p +Ft(/)p Fj(str)o(ing)p Ft(})150 2725 y(${)p Fj(parameter)p +Ft(/#)p Fj(pattern)p Ft(/)p Fj(str)o(ing)p Ft(})150 2835 y(${)p Fj(parameter)p Ft(/\045)p Fj(pattern)p Ft(/)p -Fj(str)o(ing)p Ft(})630 2835 y Fu(The)37 b Fr(pattern)g +Fj(str)o(ing)p Ft(})630 2945 y Fu(The)37 b Fr(pattern)g Fu(is)g(expanded)g(to)h(pro)s(duce)e(a)h(pattern)g(just)g(as)h(in)e -(\014lename)i(expansion.)630 2945 y Fr(P)m(arameter)46 +(\014lename)i(expansion.)630 3054 y Fr(P)m(arameter)46 b Fu(is)38 b(expanded)f(and)g(the)i(longest)g(matc)m(h)g(of)f Fr(pattern)g Fu(against)h(its)f(v)-5 b(alue)39 b(is)630 -3054 y(replaced)30 b(with)e Fr(string)p Fu(.)41 b Fr(string)c +3164 y(replaced)30 b(with)e Fr(string)p Fu(.)41 b Fr(string)c Fu(undergo)s(es)28 b(tilde)i(expansion,)f(parameter)h(and)e(v)-5 -b(ariable)630 3164 y(expansion,)25 b(arithmetic)g(expansion,)g(command) +b(ariable)630 3273 y(expansion,)25 b(arithmetic)g(expansion,)g(command) e(and)g(pro)s(cess)g(substitution,)i(and)e(quote)630 -3273 y(remo)m(v)-5 b(al.)54 b(The)33 b(matc)m(h)j(is)e(p)s(erformed)f +3383 y(remo)m(v)-5 b(al.)54 b(The)33 b(matc)m(h)j(is)e(p)s(erformed)f (according)i(to)g(the)f(rules)g(describ)s(ed)f(b)s(elo)m(w)i(\(see)630 -3383 y(Section)c(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(36\).) -630 3524 y(In)45 b(the)g(\014rst)g(form)g(ab)s(o)m(v)m(e,)50 +3493 y(Section)c(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(36\).) +630 3634 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 3634 y(slashes)28 +b(If)45 b(there)h(are)g(t)m(w)m(o)630 3743 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 -3743 y(of)d Fr(pattern)g Fu(are)g(replaced)g(with)f Fr(string)p +3853 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 3853 y(ab)s(o)m(v)m(e\),)32 +Ft(#)p Fu(')h(\(the)h(third)d(form)630 3962 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 3962 y Fr(pattern)28 b Fu(is)g(preceded)g(b)m(y)g(`)p +b(If)630 4072 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 4072 y(the)i(expanded)e(v)-5 +(ust)f(matc)m(h)h(at)g(the)f(end)g(of)630 4181 y(the)i(expanded)e(v)-5 b(alue)30 b(of)g Fr(parameter)p Fu(.)41 b(If)28 b(the)i(expansion)f(of) h Fr(string)37 b Fu(is)29 b(n)m(ull,)h(matc)m(hes)h(of)630 -4181 y Fr(pattern)d Fu(are)g(deleted.)41 b(If)28 b Fr(string)35 +4291 y Fr(pattern)d Fu(are)g(deleted.)41 b(If)28 b Fr(string)35 b Fu(is)28 b(n)m(ull,)h(matc)m(hes)g(of)f Fr(pattern)g -Fu(are)h(deleted)f(and)g(the)g(`)p Ft(/)p Fu(')630 4291 +Fu(are)h(deleted)f(and)g(the)g(`)p Ft(/)p Fu(')630 4401 y(follo)m(wing)k Fr(pattern)e Fu(ma)m(y)h(b)s(e)f(omitted.)630 -4432 y(If)f(the)h Ft(patsub_replacement)25 b Fu(shell)30 +4542 y(If)f(the)h Ft(patsub_replacement)25 b Fu(shell)30 b(option)g(is)f(enabled)h(using)f Ft(shopt)p Fu(,)g(an)m(y)h(unquoted) -630 4542 y(instances)40 b(of)g(`)p Ft(&)p Fu(')g(in)f +630 4651 y(instances)40 b(of)g(`)p Ft(&)p Fu(')g(in)f Fr(string)48 b Fu(are)40 b(replaced)g(with)g(the)g(matc)m(hing)g(p)s -(ortion)g(of)g Fr(pattern)p Fu(.)630 4651 y(This)30 b(is)g(in)m(tended) +(ortion)g(of)g Fr(pattern)p Fu(.)630 4761 y(This)30 b(is)g(in)m(tended) g(to)h(duplicate)g(a)g(common)g Ft(sed)e Fu(idiom.)630 -4792 y(Quoting)g(an)m(y)f(part)h(of)f Fr(string)36 b +4902 y(Quoting)g(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 4902 y(p)s(ortion,)j(including)g(replacemen)m(t)h(strings)f +(quoted)630 5011 y(p)s(ortion,)j(including)g(replacemen)m(t)h(strings)f (stored)g(in)g(shell)g(v)-5 b(ariables.)46 b(Bac)m(kslash)34 -b(will)630 5011 y(escap)s(e)k(`)p Ft(&)p Fu(')g(in)f +b(will)630 5121 y(escap)s(e)k(`)p Ft(&)p Fu(')g(in)f Fr(string)8 b Fu(;)42 b(the)c(bac)m(kslash)g(is)g(remo)m(v)m(ed)g(in)g (order)f(to)h(p)s(ermit)f(a)i(literal)g(`)p Ft(&)p Fu(')630 -5121 y(in)31 b(the)h(replacemen)m(t)h(string.)44 b(Users)32 +5230 y(in)31 b(the)h(replacemen)m(t)h(string.)44 b(Users)32 b(should)e(tak)m(e)k(care)e(if)g Fr(string)39 b Fu(is)32 -b(double-quoted)f(to)630 5230 y(a)m(v)m(oid)37 b(un)m(w)m(an)m(ted)f +b(double-quoted)f(to)630 5340 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 5340 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-)p eop end +(double-quoting,)j(since)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(forms)28 b(the)h(c)m(hec)m(k)i(for)d(unquoted)g(`)p +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 +408 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 408 y(to)33 b(prop)s(erly)e(quote)i(an)m(y)f(o)s +(should)g(ensure)630 518 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 518 y(replacemen)m(t)k(and)e +(tak)m(en)h(literally)h(in)e(the)630 628 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 628 y(quoted.)630 -756 y(F)-8 b(or)31 b(instance,)870 883 y Ft(var=abcdef)870 -993 y(rep='&)46 b(')870 1103 y(echo)h(${var/abc/&)d(})870 -1212 y(echo)j("${var/abc/&)d(}")870 1322 y(echo)j(${var/abc/$rep})870 -1431 y(echo)g("${var/abc/$rep}")630 1559 y Fu(will)31 +(t)g(to)h(b)s(e)e(replaced)h(are)g(un-)630 737 y(quoted.)630 +924 y(F)-8 b(or)31 b(instance,)870 1110 y Ft(var=abcdef)870 +1219 y(rep='&)46 b(')870 1329 y(echo)h(${var/abc/&)d(})870 +1439 y(echo)j("${var/abc/&)d(}")870 1548 y(echo)j(${var/abc/$rep})870 +1658 y(echo)g("${var/abc/$rep}")630 1844 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 1687 y Ft(var=abcdef)870 1797 -y(rep='&)46 b(')870 1906 y(echo)h(${var/abc/\\&)d(})870 -2016 y(echo)j("${var/abc/\\&)d(}")870 2125 y(echo)j(${var/abc/"&)d("}) -870 2235 y(echo)j(${var/abc/"$rep"})630 2363 y Fu(will)34 +Ft(")p Fu(,)g(while)870 2030 y Ft(var=abcdef)870 2140 +y(rep='&)46 b(')870 2250 y(echo)h(${var/abc/\\&)d(})870 +2359 y(echo)j("${var/abc/\\&)d(}")870 2469 y(echo)j(${var/abc/"&)d("}) +870 2578 y(echo)j(${var/abc/"$rep"})630 2765 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 2472 y(quotes)23 +b(al)35 b(op)s(erators,)g(double)630 2874 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 2582 y(double)43 b(quotes)i(enclosing)f +f(c)m(haracters,)26 b(while)630 2984 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 2692 y(expansion)e(is)h(p)s(erformed)e(in)h(a)h(con)m(text)h(that)f +630 3093 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 -2801 y(quotes)31 b(in)m(to)g(accoun)m(t.)630 2929 y(Since)24 +3203 y(quotes)31 b(in)m(to)g(accoun)m(t.)630 3389 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 -3039 y(string.)39 b(This)26 b(means)g(that)h(`)p Ft(\\\\)p +3499 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 3148 y(so)31 b(these)f(t)m(w)m(o)i -Ft(echo)d Fu(commands)870 3276 y Ft(var=abcdef)870 3386 -y(rep='\\\\&xyz')870 3495 y(echo)47 b(${var/abc/\\\\&xyz})870 -3605 y(echo)g(${var/abc/$rep})630 3733 y Fu(will)31 b(b)s(oth)e(output) -h(`)p Ft(\\abcxyzdef)p Fu('.)630 3861 y(It)g(should)g(rarely)g(b)s(e)g +(replacemen)m(t,)630 3608 y(so)31 b(these)f(t)m(w)m(o)i +Ft(echo)d Fu(commands)870 3795 y Ft(var=abcdef)870 3904 +y(rep='\\\\&xyz')870 4014 y(echo)47 b(${var/abc/\\\\&xyz})870 +4124 y(echo)g(${var/abc/$rep})630 4310 y Fu(will)31 b(b)s(oth)e(output) +h(`)p Ft(\\abcxyzdef)p Fu('.)630 4496 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 3988 y(If)j(the)h Ft(nocasematch)d +b(double)g(quotes.)630 4682 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 4098 y([The)23 +Ft(shopt)e Fu(in)i(Section)g(4.3.2)630 4792 y([The)23 b(Shopt)g(Builtin],)j(page)e(71\))h(is)e(enabled,)i(the)f(matc)m(h)g -(is)g(p)s(erformed)e(without)h(regard)630 4208 y(to)31 +(is)g(p)s(erformed)e(without)h(regard)630 4902 y(to)31 b(the)f(case)h(of)g(alphab)s(etic)f(c)m(haracters.)42 b(If)30 b Fr(parameter)37 b Fu(is)30 b(`)p Ft(@)p Fu(')g(or)g(`)p -Ft(*)p Fu(',)h(the)f(substitution)630 4317 y(op)s(eration)g(is)f +Ft(*)p Fu(',)h(the)f(substitution)630 5011 y(op)s(eration)g(is)f (applied)g(to)h(eac)m(h)g(p)s(ositional)g(parameter)g(in)e(turn,)h(and) -g(the)g(expansion)g(is)630 4427 y(the)i(resultan)m(t)h(list.)45 +g(the)g(expansion)g(is)630 5121 y(the)i(resultan)m(t)h(list.)45 b(If)30 b Fr(parameter)39 b Fu(is)31 b(an)g(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h(`)p Ft(@)p Fu(')g(or)h(`)p -Ft(*)p Fu(',)630 4536 y(the)e(substitution)g(op)s(eration)h(is)f +Ft(*)p Fu(',)630 5230 y(the)e(substitution)g(op)s(eration)h(is)f (applied)g(to)h(eac)m(h)h(mem)m(b)s(er)e(of)g(the)g(arra)m(y)h(in)f -(turn,)g(and)630 4646 y(the)h(expansion)f(is)g(the)h(resultan)m(t)g -(list.)150 4792 y Ft(${)p Fj(parameter)p Ft(^)p Fj(pattern)p -Ft(})150 4902 y(${)p Fj(parameter)p Ft(^^)p Fj(pattern)p -Ft(})150 5011 y(${)p Fj(parameter)p Ft(,)p Fj(pattern)p -Ft(})150 5121 y(${)p Fj(parameter)p Ft(,,)p Fj(pattern)p -Ft(})630 5230 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 5340 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)p eop end +(turn,)g(and)630 5340 y(the)h(expansion)f(is)g(the)h(resultan)m(t)g +(list.)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(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 408 y(it)j(matc)m(hes)h(the)g +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)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 518 y(to)e(matc)m(h)g(more)g -(than)f(one)h(c)m(haracter.)630 650 y(The)f(`)p Ft(^)p +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 -760 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 870 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 -979 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 1089 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 1221 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 1331 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 1440 y(an)e(arra)m(y)g(v)-5 b(ariable)31 +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 -1550 y(applied)d(to)g(eac)m(h)h(mem)m(b)s(er)e(of)h(the)g(arra)m(y)g +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 -1660 y(list.)150 1815 y Ft(${)p Fj(parameter)p Ft(@)p -Fj(operator)p Ft(})630 1924 y Fu(The)h(expansion)h(is)f(either)h(a)g +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 2034 y(tion)e(ab)s(out)f Fr(parameter)33 +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 -2144 y Fu(is)j(a)h(single)g(letter:)630 2299 y Ft(U)432 +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 -2408 y(ercase)g(alphab)s(etic)g(c)m(haracters)h(con)m(v)m(erted)g(to)f -(upp)s(ercase.)630 2564 y Ft(u)432 b Fu(The)34 b(expansion)g(is)g(a)h +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 2673 y(\014rst)c(c)m(haracter)i(con)m(v)m +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 -2829 y Ft(L)432 b Fu(The)33 b(expansion)h(is)g(a)g(string)g(that)h(is)f +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 2938 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 3093 y Ft(Q)432 b +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 -3203 y(a)g(format)f(that)h(can)g(b)s(e)f(reused)f(as)i(input.)630 -3358 y Ft(E)432 b Fu(The)27 b(expansion)g(is)g(a)g(string)h(that)f(is)h +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 3468 y(slash)e(escap)s(e)h(sequences)f(expanded)g(as)g +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 -3577 y(anism.)630 3733 y Ft(P)432 b Fu(The)22 b(expansion)h(is)g(a)g +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 3842 y Fr(parameter)31 b Fu(as)24 +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 3952 y(the)31 b(Prompt],)f(page)h(104\).)630 -4107 y Ft(A)432 b Fu(The)24 b(expansion)g(is)g(a)h(string)f(in)g(the)g +([Con)m(trolling)1110 4682 y(the)31 b(Prompt],)f(page)h(105\).)630 +4847 y Ft(A)432 b Fu(The)24 b(expansion)g(is)g(a)h(string)f(in)g(the)g (form)g(of)h(an)f(assignmen)m(t)h(statemen)m(t)h(or)1110 -4217 y Ft(declare)h Fu(command)i(that,)h(if)f(ev)-5 b(aluated,)31 -b(will)e(recreate)i Fr(parameter)36 b Fu(with)1110 4326 -y(its)31 b(attributes)g(and)e(v)-5 b(alue.)630 4482 y +4956 y Ft(declare)h Fu(command)i(that,)h(if)f(ev)-5 b(aluated,)31 +b(will)e(recreate)i Fr(parameter)36 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 -4591 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)1110 -4701 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 -4810 y(page)31 b(100\).)630 4966 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 5075 y(rameter)7 -b Fu('s)31 b(attributes.)630 5230 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 5340 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.)p eop end +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: 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)630 299 -y(If)29 b 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 408 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 518 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 -628 y(in)30 b(turn,)g(and)f(the)i(expansion)f(is)h(the)f(resultan)m(t)h -(list.)630 761 y(The)c(result)h(of)g(the)f(expansion)h(is)g(sub)5 +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(34)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)31 b(101\).)630 576 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 685 y(rameter)7 b Fu('s)31 +b(attributes.)630 853 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 962 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 1130 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 1239 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 1349 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 1458 +y(in)30 b(turn,)g(and)f(the)i(expansion)f(is)h(the)f(resultan)m(t)h +(list.)630 1597 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 -870 y(as)j(describ)s(ed)e(b)s(elo)m(w.)150 1067 y Fk(3.5.4)63 -b(Command)41 b(Substitution)150 1214 y Fu(Command)f(substitution)h +1706 y(as)j(describ)s(ed)e(b)s(elo)m(w.)150 1914 y Fk(3.5.4)63 +b(Command)41 b(Substitution)150 2060 y Fu(Command)f(substitution)h (allo)m(ws)i(the)e(output)g(of)h(a)f(command)g(to)h(replace)g(the)g -(command)f(itself.)150 1324 y(Command)29 b(substitution)h(o)s(ccurs)h +(command)f(itself.)150 2170 y(Command)29 b(substitution)h(o)s(ccurs)h (when)e(a)i(command)f(is)g(enclosed)h(as)g(follo)m(ws:)390 -1457 y Ft($\()p Fj(command)p Ft(\))150 1590 y Fu(or)390 -1724 y Ft(`)p Fj(command)p Ft(`)150 1857 y Fu(Bash)20 +2312 y Ft($\()p Fj(command)p Ft(\))150 2455 y Fu(or)390 +2597 y Ft(`)p Fj(command)p Ft(`)150 2740 y Fu(Bash)20 b(p)s(erforms)f(the)i(expansion)f(b)m(y)g(executing)i Fr(command)h Fu(in)d(a)h(subshell)e(en)m(vironmen)m(t)i(and)f -(replacing)150 1966 y(the)40 b(command)g(substitution)f(with)h(the)g +(replacing)150 2849 y(the)40 b(command)g(substitution)f(with)h(the)g (standard)f(output)g(of)h(the)g(command,)i(with)e(an)m(y)g(trailing)150 -2076 y(newlines)e(deleted.)64 b(Em)m(b)s(edded)37 b(newlines)h(are)g +2959 y(newlines)e(deleted.)64 b(Em)m(b)s(edded)37 b(newlines)h(are)g (not)g(deleted,)j(but)d(they)g(ma)m(y)h(b)s(e)e(remo)m(v)m(ed)i(during) -150 2186 y(w)m(ord)30 b(splitting.)42 b(The)30 b(command)g +150 3068 y(w)m(ord)30 b(splitting.)42 b(The)30 b(command)g (substitution)h Ft($\(cat)e Fj(file)p Ft(\))g Fu(can)h(b)s(e)g -(replaced)h(b)m(y)g(the)f(equiv)-5 b(alen)m(t)150 2295 +(replaced)h(b)m(y)g(the)f(equiv)-5 b(alen)m(t)150 3178 y(but)30 b(faster)g Ft($\(<)g Fj(file)p Ft(\))p Fu(.)275 -2428 y(When)j(the)i(old-st)m(yle)h(bac)m(kquote)f(form)f(of)g +3320 y(When)j(the)i(old-st)m(yle)h(bac)m(kquote)f(form)f(of)g (substitution)g(is)g(used,)h(bac)m(kslash)f(retains)h(its)f(literal)150 -2538 y(meaning)k(except)h(when)e(follo)m(w)m(ed)j(b)m(y)e(`)p +3430 y(meaning)k(except)h(when)e(follo)m(w)m(ed)j(b)m(y)e(`)p Ft($)p Fu(',)j(`)p Ft(`)p Fu(',)f(or)e(`)p Ft(\\)p Fu('.)64 b(The)38 b(\014rst)f(bac)m(kquote)j(not)e(preceded)g(b)m(y)g(a)150 -2648 y(bac)m(kslash)k(terminates)f(the)h(command)e(substitution.)72 +3540 y(bac)m(kslash)k(terminates)f(the)h(command)e(substitution.)72 b(When)41 b(using)f(the)i Ft($\()p Fj(command)p Ft(\))c -Fu(form,)43 b(all)150 2757 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the) +Fu(form,)43 b(all)150 3649 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the) f(paren)m(theses)h(mak)m(e)g(up)f(the)g(command;)h(none)f(are)h -(treated)g(sp)s(ecially)-8 b(.)275 2890 y(Command)22 +(treated)g(sp)s(ecially)-8 b(.)275 3792 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 3000 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m(kslashes.)275 -3133 y(If)e(the)i(substitution)e(app)s(ears)h(within)g(double)f +150 3901 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m(kslashes.)275 +4044 y(If)e(the)i(substitution)e(app)s(ears)h(within)g(double)f (quotes,)i(w)m(ord)f(splitting)h(and)f(\014lename)g(expansion)150 -3243 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150 -3440 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)150 3587 +4153 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150 +4360 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)150 4507 y Fu(Arithmetic)25 b(expansion)g(allo)m(ws)g(the)g(ev)-5 b(aluation)26 b(of)f(an)f(arithmetic)i(expression)e(and)g(the)g -(substitution)150 3696 y(of)31 b(the)f(result.)41 b(The)30 -b(format)g(for)g(arithmetic)i(expansion)e(is:)390 3829 -y Ft($\(\()47 b Fj(expression)e Ft(\)\))275 3963 y Fu(The)34 +(substitution)150 4617 y(of)31 b(the)f(result.)41 b(The)30 +b(format)g(for)g(arithmetic)i(expansion)e(is:)390 4759 +y Ft($\(\()47 b Fj(expression)e Ft(\)\))275 4902 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 4072 +(it)g(w)m(ere)h(within)e(double)h(quotes,)i(but)150 5011 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 4182 y(k)m(ens)c(in)f(the)h(expression)f(undergo)g +b(All)38 b(to-)150 5121 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 4291 y(and)41 b(quote)i(remo)m(v)-5 +(substitution,)150 5230 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 4401 -y(Arithmetic)31 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)275 -4534 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 4644 y(Arithmetic],)32 b(page)f(98\).)42 b(If)30 -b(the)h(expression)f(is)g(in)m(v)-5 b(alid,)32 b(Bash)e(prin)m(ts)g(a)h -(message)g(indicating)h(failure)150 4753 y(to)f(the)g(standard)e(error) -h(and)g(no)g(substitution)g(o)s(ccurs.)150 4950 y Fk(3.5.6)63 -b(Pro)s(cess)42 b(Substitution)150 5097 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 -5207 y(It)d(tak)m(es)i(the)f(form)f(of)390 5340 y Ft(<\()p -Fj(list)p Ft(\))p eop end +(expression)f(to)g(b)s(e)f(ev)-5 b(aluated.)150 5340 +y(Arithmetic)31 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)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)150 299 -y(or)390 426 y Ft(>\()p Fj(list)p Ft(\))150 553 y Fu(The)28 -b(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 663 y(\014lename)25 b(is)g(passed)g(as)g(an) -g(argumen)m(t)h(to)g(the)f(curren)m(t)g(command)g(as)g(the)g(result)g -(of)g(the)h(expansion.)38 b(If)150 772 y(the)28 b Ft(>\()p -Fj(list)p Ft(\))d Fu(form)i(is)g(used,)h(writing)f(to)h(the)g(\014le)f -(will)h(pro)m(vide)g(input)e(for)h Fr(list)p Fu(.)41 -b(If)26 b(the)i Ft(<\()p Fj(list)p Ft(\))d Fu(form)150 -882 y(is)g(used,)g(the)f(\014le)h(passed)f(as)h(an)f(argumen)m(t)h -(should)e(b)s(e)h(read)h(to)g(obtain)g(the)f(output)g(of)h -Fr(list)p Fu(.)40 b(Note)25 b(that)150 991 y(no)33 b(space)g(ma)m(y)g -(app)s(ear)f(b)s(et)m(w)m(een)i(the)f Ft(<)f Fu(or)h -Ft(>)f Fu(and)g(the)h(left)h(paren)m(thesis,)f(otherwise)h(the)f -(construct)150 1101 y(w)m(ould)j(b)s(e)g(in)m(terpreted)g(as)h(a)f -(redirection.)59 b(Pro)s(cess)36 b(substitution)g(is)h(supp)s(orted)d -(on)i(systems)g(that)150 1210 y(supp)s(ort)29 b(named)h(pip)s(es)f(\()p -Fm(fif)n(o)p Fu(s\))h(or)h(the)f Ft(/dev/fd)f Fu(metho)s(d)h(of)g -(naming)g(op)s(en)g(\014les.)275 1337 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 1447 y(v)-5 -b(ariable)31 b(expansion,)g(command)f(substitution,)g(and)g(arithmetic) -i(expansion.)150 1631 y Fk(3.5.7)63 b(W)-10 b(ord)41 -b(Splitting)150 1778 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 1888 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h -(quotes)h(for)f(w)m(ord)g(splitting.)275 2015 y(The)e(shell)g(treats)i +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)275 299 +y(The)34 b(ev)-5 b(aluation)37 b(is)f(p)s(erformed)e(according)i(to)g +(the)g(rules)f(listed)h(b)s(elo)m(w)g(\(see)g(Section)g(6.5)h([Shell) +150 408 y(Arithmetic],)32 b(page)f(99\).)42 b(If)30 b(the)h(expression) +f(is)g(in)m(v)-5 b(alid,)32 b(Bash)e(prin)m(ts)g(a)h(message)g +(indicating)h(failure)150 518 y(to)f(the)g(standard)e(error)h(and)g(no) +g(substitution)g(o)s(ccurs.)150 721 y Fk(3.5.6)63 b(Pro)s(cess)42 +b(Substitution)150 868 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 978 y(It)d(tak)m(es)i(the)f(form)f(of)390 +1116 y Ft(<\()p Fj(list)p Ft(\))150 1254 y Fu(or)390 +1392 y Ft(>\()p Fj(list)p Ft(\))150 1531 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 1640 y(\014lename)25 b(is)g(passed)g(as)g(an)g(argumen)m(t)h +(to)g(the)f(curren)m(t)g(command)g(as)g(the)g(result)g(of)g(the)h +(expansion.)38 b(If)150 1750 y(the)28 b Ft(>\()p Fj(list)p +Ft(\))d Fu(form)i(is)g(used,)h(writing)f(to)h(the)g(\014le)f(will)h +(pro)m(vide)g(input)e(for)h Fr(list)p Fu(.)41 b(If)26 +b(the)i Ft(<\()p Fj(list)p Ft(\))d Fu(form)150 1859 y(is)g(used,)g(the) +f(\014le)h(passed)f(as)h(an)f(argumen)m(t)h(should)e(b)s(e)h(read)h(to) +g(obtain)g(the)f(output)g(of)h Fr(list)p Fu(.)40 b(Note)25 +b(that)150 1969 y(no)33 b(space)g(ma)m(y)g(app)s(ear)f(b)s(et)m(w)m +(een)i(the)f Ft(<)f Fu(or)h Ft(>)f Fu(and)g(the)h(left)h(paren)m +(thesis,)f(otherwise)h(the)f(construct)150 2078 y(w)m(ould)j(b)s(e)g +(in)m(terpreted)g(as)h(a)f(redirection.)59 b(Pro)s(cess)36 +b(substitution)g(is)h(supp)s(orted)d(on)i(systems)g(that)150 +2188 y(supp)s(ort)29 b(named)h(pip)s(es)f(\()p Fm(fif)n(o)p +Fu(s\))h(or)h(the)f Ft(/dev/fd)f Fu(metho)s(d)h(of)g(naming)g(op)s(en)g +(\014les.)275 2326 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 2436 y(v)-5 b(ariable)31 +b(expansion,)g(command)f(substitution,)g(and)g(arithmetic)i(expansion.) +150 2639 y Fk(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150 +2786 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 +2895 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h +(quotes)h(for)f(w)m(ord)g(splitting.)275 3034 y(The)e(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 2125 y(expansions)22 -b(in)m(to)i(w)m(ords)e(using)h(these)g(c)m(haracters)h(as)f(\014eld)f -(terminators.)39 b(If)22 b Ft(IFS)g Fu(is)h(unset,)h(or)e(its)h(v)-5 -b(alue)150 2234 y(is)36 b(exactly)j Ft()p -Fu(,)32 b(the)37 b(default,)h(then)e(sequences)h(of)67 -b Ft()p Fu(,)36 b Ft()p Fu(,)h(and)150 2344 -y Ft()28 b Fu(at)k(the)f(b)s(eginning)f(and)h(end)f(of)h(the)g -(results)g(of)g(the)g(previous)g(expansions)f(are)i(ignored,)150 -2453 y(and)k(an)m(y)h(sequence)h(of)f Ft(IFS)f Fu(c)m(haracters)i(not)f -(at)h(the)f(b)s(eginning)f(or)h(end)f(serv)m(es)h(to)h(delimit)f(w)m -(ords.)150 2563 y(If)43 b Ft(IFS)f Fu(has)h(a)h(v)-5 -b(alue)43 b(other)h(than)f(the)g(default,)k(then)c(sequences)h(of)f -(the)h(whitespace)f(c)m(haracters)150 2672 y Ft(space)p -Fu(,)29 b Ft(tab)p Fu(,)h(and)g Ft(newline)e Fu(are)j(ignored)g(at)g -(the)f(b)s(eginning)g(and)g(end)g(of)g(the)h(w)m(ord,)f(as)h(long)g(as) -g(the)150 2782 y(whitespace)c(c)m(haracter)h(is)f(in)f(the)g(v)-5 -b(alue)27 b(of)g Ft(IFS)e Fu(\(an)i Ft(IFS)e Fu(whitespace)i(c)m -(haracter\).)42 b(An)m(y)26 b(c)m(haracter)i(in)150 2892 -y Ft(IFS)c Fu(that)h(is)g(not)f Ft(IFS)g Fu(whitespace,)j(along)f(with) -e(an)m(y)h(adjacen)m(t)h Ft(IFS)e Fu(whitespace)h(c)m(haracters,)i -(delimits)150 3001 y(a)k(\014eld.)40 b(A)31 b(sequence)g(of)f -Ft(IFS)g Fu(whitespace)h(c)m(haracters)h(is)e(also)h(treated)h(as)f(a)f -(delimiter.)42 b(If)30 b(the)g(v)-5 b(alue)150 3111 y(of)31 -b Ft(IFS)e Fu(is)h(n)m(ull,)h(no)f(w)m(ord)g(splitting)h(o)s(ccurs.)275 -3238 y(Explicit)21 b(n)m(ull)g(argumen)m(ts)g(\()p Ft("")g +(splits)g(the)h(results)f(of)h(the)g(other)150 3143 y(expansions)h(in)m +(to)h(w)m(ords)f(using)g(these)h(c)m(haracters)h(as)e(\014eld)g +(terminators.)275 3281 y(If)38 b Ft(IFS)g Fu(is)g(unset,)j(or)e(its)g +(v)-5 b(alue)39 b(is)g(exactly)h Ft()p +Fu(,)c(the)j(default,)i(then)d(se-)150 3391 y(quences)27 +b(of)h Ft(space)p Fu(,)f Ft(tab)p Fu(,)g(and)g Ft(newline)e +Fu(at)j(the)f(b)s(eginning)g(and)g(end)f(of)i(the)f(results)g(of)h(the) +f(previous)150 3501 y(expansions)38 b(are)g(ignored,)i(and)d(an)m(y)i +(sequence)f(of)g Ft(IFS)f Fu(c)m(haracters)j(not)e(at)g(the)g(b)s +(eginning)g(or)g(end)150 3610 y(serv)m(es)e(to)h(delimit)f(w)m(ords.)56 +b(If)35 b Ft(IFS)g Fu(has)h(a)g(v)-5 b(alue)36 b(other)g(than)f(the)h +(default,)i(then)d(sequences)h(of)g(the)150 3720 y(whitespace)i(c)m +(haracters)h Ft(space)p Fu(,)e Ft(tab)p Fu(,)h(and)f +Ft(newline)e Fu(are)j(ignored)f(at)h(the)f(b)s(eginning)g(and)f(end)h +(of)150 3829 y(the)h(w)m(ord,)j(as)d(long)h(as)g(the)f(whitespace)h(c)m +(haracter)h(is)e(in)g(the)h(v)-5 b(alue)38 b(of)h Ft(IFS)e +Fu(\(an)i Ft(IFS)e Fu(whitespace)150 3939 y(c)m(haracter\).)47 +b(An)m(y)32 b(c)m(haracter)i(in)d Ft(IFS)g Fu(that)i(is)f(not)g +Ft(IFS)f Fu(whitespace,)i(along)g(with)e(an)m(y)i(adjacen)m(t)g +Ft(IFS)150 4049 y Fu(whitespace)41 b(c)m(haracters,)j(delimits)d(a)g +(\014eld.)70 b(A)40 b(sequence)h(of)g Ft(IFS)e Fu(whitespace)i(c)m +(haracters)h(is)e(also)150 4158 y(treated)31 b(as)g(a)g(delimiter.)275 +4296 y(If)22 b(the)h(v)-5 b(alue)23 b(of)f Ft(IFS)g Fu(is)h(n)m(ull,)h +(no)f(w)m(ord)f(splitting)h(o)s(ccurs.)38 b(If)22 b Ft(IFS)g +Fu(is)h(unset,)h(w)m(ord)e(splitting)h(b)s(eha)m(v)m(es)150 +4406 y(as)31 b(if)f(it)h(con)m(tained)g(the)g(default)g(v)-5 +b(alue)30 b Ft()p Fu(.)275 4544 +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 3347 y(Unquoted)37 b(implicit)i(n)m(ull)f +(as)i(empt)m(y)f(strings.)150 4654 y(Unquoted)37 b(implicit)i(n)m(ull)f (argumen)m(ts,)i(resulting)d(from)g(the)h(expansion)g(of)g(parameters)f -(that)i(ha)m(v)m(e)150 3457 y(no)32 b(v)-5 b(alues,)33 +(that)i(ha)m(v)m(e)150 4763 y(no)32 b(v)-5 b(alues,)33 b(are)f(remo)m(v)m(ed.)47 b(If)32 b(a)g(parameter)h(with)e(no)h(v)-5 b(alue)33 b(is)f(expanded)f(within)h(double)f(quotes,)j(a)150 -3567 y(n)m(ull)c(argumen)m(t)g(results)g(and)f(is)h(retained)g(and)f +4873 y(n)m(ull)c(argumen)m(t)g(results)g(and)f(is)h(retained)g(and)f (passed)g(to)i(a)f(command)g(as)g(an)f(empt)m(y)i(string.)40 -b(When)150 3676 y(a)f(quoted)f(n)m(ull)g(argumen)m(t)h(app)s(ears)e(as) +b(When)150 4983 y(a)f(quoted)f(n)m(ull)g(argumen)m(t)h(app)s(ears)e(as) i(part)f(of)g(a)g(w)m(ord)g(whose)g(expansion)g(is)h(non-n)m(ull,)h -(the)e(n)m(ull)150 3786 y(argumen)m(t)i(is)f(remo)m(v)m(ed.)69 +(the)e(n)m(ull)150 5092 y(argumen)m(t)i(is)f(remo)m(v)m(ed.)69 b(That)39 b(is,)j(the)e(w)m(ord)f Ft(-d'')f Fu(b)s(ecomes)i Ft(-d)e Fu(after)i(w)m(ord)f(splitting)h(and)f(n)m(ull)150 -3895 y(argumen)m(t)31 b(remo)m(v)-5 b(al.)275 4022 y(Note)31 +5202 y(argumen)m(t)31 b(remo)m(v)-5 b(al.)275 5340 y(Note)31 b(that)g(if)g(no)f(expansion)g(o)s(ccurs,)g(no)h(splitting)g(is)f(p)s -(erformed.)150 4207 y Fk(3.5.8)63 b(Filename)41 b(Expansion)150 -4354 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 4463 y(page)d(67\),)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 4573 y(app)s(ears,)34 -b(and)f(is)g(not)h(quoted,)h(then)e(the)h(w)m(ord)f(is)h(regarded)f(as) -h(a)g Fr(pattern)p Fu(,)h(and)e(replaced)h(with)f(an)150 -4682 y(alphab)s(etically)41 b(sorted)e(list)h(of)g(\014lenames)f(matc)m -(hing)i(the)e(pattern)g(\(see)i(Section)f(3.5.8.1)i([P)m(attern)150 -4792 y(Matc)m(hing],)e(page)e(36\).)60 b(If)36 b(no)h(matc)m(hing)g +(erformed.)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 Fk(3.5.8)63 b(Filename)41 b(Expansion)150 446 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 +555 y(page)d(67\),)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 +665 y(app)s(ears,)34 b(and)f(is)g(not)h(quoted,)h(then)e(the)h(w)m(ord) +f(is)h(regarded)f(as)h(a)g Fr(pattern)p Fu(,)h(and)e(replaced)h(with)f +(an)150 775 y(alphab)s(etically)41 b(sorted)e(list)h(of)g(\014lenames)f +(matc)m(hing)i(the)e(pattern)g(\(see)i(Section)f(3.5.8.1)i([P)m(attern) +150 884 y(Matc)m(hing],)e(page)e(36\).)60 b(If)36 b(no)h(matc)m(hing)g (\014lenames)g(are)g(found,)g(and)f(the)g(shell)h(option)g -Ft(nullglob)150 4902 y Fu(is)k(disabled,)i(the)f(w)m(ord)e(is)h(left)h +Ft(nullglob)150 994 y Fu(is)k(disabled,)i(the)f(w)m(ord)e(is)h(left)h (unc)m(hanged.)72 b(If)40 b(the)h Ft(nullglob)e Fu(option)i(is)g(set,)k -(and)40 b(no)h(matc)m(hes)150 5011 y(are)c(found,)g(the)g(w)m(ord)f(is) +(and)40 b(no)h(matc)m(hes)150 1103 y(are)c(found,)g(the)g(w)m(ord)f(is) g(remo)m(v)m(ed.)60 b(If)36 b(the)h Ft(failglob)d Fu(shell)j(option)g -(is)g(set,)i(and)c(no)i(matc)m(hes)h(are)150 5121 y(found,)e(an)g +(is)g(set,)i(and)c(no)i(matc)m(hes)h(are)150 1213 y(found,)e(an)g (error)f(message)i(is)f(prin)m(ted)f(and)h(the)g(command)f(is)h(not)g -(executed.)58 b(If)35 b(the)h(shell)g(option)150 5230 +(executed.)58 b(If)35 b(the)h(shell)g(option)150 1323 y Ft(nocaseglob)e Fu(is)j(enabled,)i(the)e(matc)m(h)h(is)f(p)s (erformed)e(without)i(regard)g(to)h(the)f(case)h(of)f(alphab)s(etic)150 -5340 y(c)m(haracters.)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)275 299 -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 408 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 518 y Fu(is)36 b(set.)58 -b(In)35 b(order)g(to)i(matc)m(h)f(the)g(\014lenames)g(`)p -Ft(.)p Fu(')g(and)g(`)p Ft(..)p Fu(',)h(the)f(pattern)g(m)m(ust)g(b)s -(egin)f(with)h(`)p Ft(.)p Fu(')g(\(for)150 628 y(example,)42 -b(`)p Ft(.?)p Fu('\),)f(ev)m(en)f(if)f Ft(dotglob)d Fu(is)j(set.)67 +1432 y(c)m(haracters.)275 1575 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 +1685 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 1795 y Fu(is)36 b(set.)58 b(In)35 b(order)g(to)i(matc)m +(h)f(the)g(\014lenames)g(`)p Ft(.)p Fu(')g(and)g(`)p +Ft(..)p Fu(',)h(the)f(pattern)g(m)m(ust)g(b)s(egin)f(with)h(`)p +Ft(.)p Fu(')g(\(for)150 1904 y(example,)42 b(`)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 737 y(\014lenames)33 b(`)p Ft(.)p Fu(')g(and)f(`)p +(the)150 2014 y(\014lenames)33 b(`)p Ft(.)p Fu(')g(and)f(`)p Ft(..)p Fu(')h(are)g(nev)m(er)g(matc)m(hed,)h(ev)m(en)g(if)e(the)h (pattern)g(b)s(egins)f(with)h(a)g(`)p Ft(.)p Fu('.)48 -b(When)33 b(not)150 847 y(matc)m(hing)e(\014lenames,)g(the)g(`)p +b(When)33 b(not)150 2123 y(matc)m(hing)e(\014lenames,)g(the)g(`)p Ft(.)p Fu(')f(c)m(haracter)i(is)f(not)f(treated)i(sp)s(ecially)-8 -b(.)275 985 y(When)30 b(matc)m(hing)i(a)f(\014lename,)h(the)f(slash)f +b(.)275 2267 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 1095 y(slash)d(in)f(the)h(pattern,)h(but)e +(explicitly)i(b)m(y)e(a)150 2376 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 1205 y(c)m(haracter)j(as)f +(hed)g(b)m(y)g(a)g(sp)s(ecial)h(pattern)150 2486 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(36\).)275 1343 y(See)d(the)g(description)g(of)g +(Matc)m(hing],)i(page)e(36\).)275 2629 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 -(71,)g(for)f(a)g(descrip-)150 1453 y(tion)j(of)f(the)h +(71,)g(for)f(a)g(descrip-)150 2739 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 -1592 y(The)36 b Ft(GLOBIGNORE)d Fu(shell)k(v)-5 b(ariable)37 +2882 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 1701 y(a)42 b(pattern.)74 b(If)41 +(names)h(matc)m(hing)150 2992 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 1811 +f(that)h(also)h(matc)m(hes)f(one)g(of)g(the)150 3101 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 1920 y(set,)c(the)e(matc)m(hing)i(against)g(the)f +Fu(option)k(is)150 3211 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 2030 y(The)d(\014lenames)h Ft(.)g +(regard)f(to)i(case.)150 3320 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 2139 y(setting)30 b Ft(GLOBIGNORE)d +b(Ho)m(w)m(ev)m(er,)150 3430 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 -2249 y(so)j(all)h(other)f(\014lenames)g(b)s(eginning)f(with)h(a)g(`)p +3540 y(so)j(all)h(other)f(\014lenames)g(b)s(eginning)f(with)h(a)g(`)p Ft(.)p Fu(')g(will)h(matc)m(h.)46 b(T)-8 b(o)32 b(get)h(the)f(old)g(b)s -(eha)m(vior)g(of)h(ignoring)150 2359 y(\014lenames)c(b)s(eginning)f +(eha)m(vior)g(of)h(ignoring)150 3649 y(\014lenames)c(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 2468 y Fu(option)i(is)f(disabled)g -(when)g Ft(GLOBIGNORE)d Fu(is)k(unset.)150 2672 y Fk(3.5.8.1)63 -b(P)m(attern)40 b(Matc)m(hing)150 2819 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 -2928 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 3038 -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 3147 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 3286 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 3452 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 -3561 y(is)37 b(enabled,)h(and)e(`)p Ft(*)p Fu(')h(is)g(used)f(in)g(a)h -(\014lename)g(expansion)g(con)m(text,)j(t)m(w)m(o)e(adjacen)m(t)g(`)p -Ft(*)p Fu('s)630 3671 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc) -m(h)i(all)f(\014les)f(and)g(zero)h(or)g(more)f(directories)i(and)630 -3780 y(sub)s(directories.)g(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p +Fu(.)37 b(The)29 b Ft(dotglob)150 3759 y Fu(option)i(is)f(disabled)g +(when)g Ft(GLOBIGNORE)d Fu(is)k(unset.)275 3902 y(After)26 +b(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 +4012 y Fu(v)-5 b(ariable)46 b(con)m(trols)g(ho)m(w)f(the)g(results)f +(are)h(sorted,)k(as)c(describ)s(ed)f(b)s(elo)m(w)h(\(see)h(Section)g +(5.2)g([Bash)150 4121 y(V)-8 b(ariables],)32 b(page)f(79\).)150 +4329 y Fk(3.5.8.1)63 b(P)m(attern)40 b(Matc)m(hing)150 +4476 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 4586 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 +4695 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 4805 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 4948 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 +5121 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 5230 y(is)37 b(enabled,)h(and)e(`)p +Ft(*)p Fu(')h(is)g(used)f(in)g(a)h(\014lename)g(expansion)g(con)m +(text,)j(t)m(w)m(o)e(adjacen)m(t)g(`)p Ft(*)p Fu('s)630 +5340 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)m(h)i(all)f +(\014les)f(and)g(zero)h(or)g(more)f(directories)i(and)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)630 299 +y(sub)s(directories.)39 b(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p Ft(/)p Fu(',)h(t)m(w)m(o)g(adjacen)m(t)h(`)p Ft(*)p Fu('s)e(will)g -(matc)m(h)h(only)f(directories)630 3890 y(and)k(sub)s(directories.)150 -4054 y Ft(?)432 b Fu(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.) -150 4217 y Ft([...)o(])241 b Fu(Matc)m(hes)27 b(an)m(y)e(one)g(of)g -(the)g(enclosed)g(c)m(haracters.)41 b(A)25 b(pair)f(of)h(c)m(haracters) -i(separated)e(b)m(y)g(a)630 4327 y(h)m(yphen)k(denotes)i(a)g +(matc)m(h)h(only)f(directories)630 408 y(and)k(sub)s(directories.)150 +572 y Ft(?)432 b Fu(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)150 +736 y Ft([...)o(])241 b Fu(Matc)m(hes)27 b(an)m(y)e(one)g(of)g(the)g +(enclosed)g(c)m(haracters.)41 b(A)25 b(pair)f(of)h(c)m(haracters)i +(separated)e(b)m(y)g(a)630 846 y(h)m(yphen)k(denotes)i(a)g Fr(range)g(expression)p Fu(;)f(an)m(y)h(c)m(haracter)h(that)f(falls)g -(b)s(et)m(w)m(een)g(those)g(t)m(w)m(o)630 4436 y(c)m(haracters,)d +(b)s(et)m(w)m(een)g(those)g(t)m(w)m(o)630 956 y(c)m(haracters,)d (inclusiv)m(e,)f(using)d(the)h(curren)m(t)f(lo)s(cale's)j(collating)g -(sequence)e(and)f(c)m(haracter)630 4546 y(set,)31 b(is)f(matc)m(hed.)42 +(sequence)e(and)f(c)m(haracter)630 1065 y(set,)31 b(is)f(matc)m(hed.)42 b(If)30 b(the)g(\014rst)g(c)m(haracter)i(follo)m(wing)g(the)e(`)p Ft([)p Fu(')h(is)f(a)h(`)p Ft(!)p Fu(')f(or)g(a)h(`)p -Ft(^)p Fu(')g(then)f(an)m(y)630 4655 y(c)m(haracter)c(not)f(enclosed)g +Ft(^)p Fu(')g(then)f(an)m(y)630 1175 y(c)m(haracter)c(not)f(enclosed)g (is)g(matc)m(hed.)40 b(A)25 b(`)p Fq(\000)p Fu(')f(ma)m(y)i(b)s(e)e -(matc)m(hed)h(b)m(y)f(including)h(it)g(as)g(the)630 4765 +(matc)m(hed)h(b)m(y)f(including)h(it)g(as)g(the)630 1284 y(\014rst)32 b(or)h(last)h(c)m(haracter)h(in)e(the)g(set.)50 b(A)33 b(`)p Ft(])p Fu(')g(ma)m(y)h(b)s(e)e(matc)m(hed)i(b)m(y)f -(including)g(it)g(as)h(the)630 4875 y(\014rst)c(c)m(haracter)j(in)d +(including)g(it)g(as)h(the)630 1394 y(\014rst)c(c)m(haracter)j(in)d (the)h(set.)43 b(The)31 b(sorting)g(order)g(of)g(c)m(haracters)h(in)f -(range)g(expressions,)630 4984 y(and)f(the)h(c)m(haracters)h(included)e +(range)g(expressions,)630 1503 y(and)f(the)h(c)m(haracters)h(included)e (in)h(the)f(range,)i(are)f(determined)f(b)m(y)h(the)g(curren)m(t)f(lo)s -(cale)630 5094 y(and)g(the)g(v)-5 b(alues)31 b(of)g(the)f +(cale)630 1613 y(and)g(the)g(v)-5 b(alues)31 b(of)g(the)f Ft(LC_COLLATE)e Fu(and)h Ft(LC_ALL)g Fu(shell)i(v)-5 -b(ariables,)31 b(if)f(set.)630 5230 y(F)-8 b(or)34 b(example,)g(in)f +b(ariables,)31 b(if)f(set.)630 1750 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 5340 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)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)630 299 -y(`)p Ft([a-dx-z])p Fu(')36 b(is)i(t)m(ypically)i(not)e(equiv)-5 +Fu('.)630 1859 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 +1969 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 408 y(to)34 b(`)p Ft([aBbCcDdxYyZz])p +(equiv)-5 b(alen)m(t)630 2079 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 518 y(ranges)e(in)f(brac)m(k)m(et)i +(in)m(terpretation)h(of)630 2188 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 628 y(the)c Ft(LC_COLLATE)e +(cale)i(b)m(y)f(setting)630 2298 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 -737 y Ft(globasciiranges)c Fu(shell)31 b(option.)630 -873 y(Within)23 b(`)p Ft([)p Fu(')h(and)e(`)p Ft(])p +2407 y Ft(globasciiranges)c Fu(shell)31 b(option.)630 +2544 y(Within)23 b(`)p Ft([)p Fu(')h(and)e(`)p Ft(])p Fu(',)j Fr(c)m(haracter)g(classes)j Fu(can)c(b)s(e)e(sp)s(eci\014ed)h (using)f(the)i(syn)m(tax)f Ft([:)p Fr(class)t Ft(:])p -Fu(,)630 982 y(where)30 b Fr(class)35 b Fu(is)30 b(one)h(of)f(the)h +Fu(,)630 2654 y(where)30 b Fr(class)35 b Fu(is)30 b(one)h(of)f(the)h (follo)m(wing)h(classes)f(de\014ned)e(in)h(the)h Fm(posix)f -Fu(standard:)870 1118 y Ft(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g -(digit)g(graph)g(lower)870 1227 y(print)g(punct)g(space)f(upper)h(word) -190 b(xdigit)630 1363 y Fu(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h +Fu(standard:)870 2790 y Ft(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g +(digit)g(graph)g(lower)870 2900 y(print)g(punct)g(space)f(upper)h(word) +190 b(xdigit)630 3037 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 1472 y Fu(c)m(haracter)32 b(class)f(matc)m(hes)h +b(The)41 b Ft(word)630 3146 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 1608 y(Within)25 b(`)p Ft([)p Fu(')f(and)g(`)p +Ft(_)p Fu('.)630 3283 y(Within)25 b(`)p Ft([)p Fu(')f(and)g(`)p Ft(])p Fu(',)i(an)e Fr(equiv)-5 b(alence)26 b(class)j Fu(can)24 b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)h -Ft([=)p Fr(c)6 b Ft(=])p Fu(,)630 1717 y(whic)m(h)29 +Ft([=)p Fr(c)6 b Ft(=])p Fu(,)630 3393 y(whic)m(h)29 b(matc)m(hes)i(all)f(c)m(haracters)h(with)e(the)h(same)g(collation)h(w) -m(eigh)m(t)g(\(as)f(de\014ned)e(b)m(y)i(the)630 1827 +m(eigh)m(t)g(\(as)f(de\014ned)e(b)m(y)i(the)630 3502 y(curren)m(t)g(lo)s(cale\))j(as)d(the)h(c)m(haracter)h -Fr(c)p Fu(.)630 1962 y(Within)22 b(`)p Ft([)p Fu(')f(and)g(`)p +Fr(c)p Fu(.)630 3639 y(Within)22 b(`)p Ft([)p Fu(')f(and)g(`)p Ft(])p Fu(',)j(the)d(syn)m(tax)h Ft([.)p Fr(sym)m(b)s(ol)t Ft(.])e Fu(matc)m(hes)i(the)g(collating)i(sym)m(b)s(ol)d -Fr(sym)m(b)s(ol)p Fu(.)275 2125 y(If)i(the)g Ft(extglob)f +Fr(sym)m(b)s(ol)p Fu(.)275 3805 y(If)i(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 -2234 y(extended)i(pattern)f(matc)m(hing)i(op)s(erators.)40 +3915 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 2344 y(one)23 b(or)f(more)h(patterns)g +Fu(is)d(a)g(list)g(of)150 4024 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 -2453 y(determines)h(the)h(set)g(of)g(\014lenames)f(that)h(are)g +4134 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 2563 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 2725 -y Ft(?\()p Fj(pattern-list)p Ft(\))630 2835 y Fu(Matc)m(hes)g(zero)f +b(patterns)f(ma)m(y)150 4244 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 4410 +y Ft(?\()p Fj(pattern-list)p Ft(\))630 4519 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 -2996 y Ft(*\()p Fj(pattern-list)p Ft(\))630 3106 y Fu(Matc)m(hes)h +4683 y Ft(*\()p Fj(pattern-list)p Ft(\))630 4793 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.) -150 3267 y Ft(+\()p Fj(pattern-list)p Ft(\))630 3377 +150 4957 y Ft(+\()p Fj(pattern-list)p Ft(\))630 5066 y Fu(Matc)m(hes)h(one)f(or)f(more)h(o)s(ccurrences)f(of)h(the)f(giv)m -(en)i(patterns.)150 3538 y Ft(@\()p Fj(pattern-list)p -Ft(\))630 3648 y Fu(Matc)m(hes)g(one)f(of)f(the)h(giv)m(en)g(patterns.) -150 3809 y Ft(!\()p Fj(pattern-list)p Ft(\))630 3919 -y Fu(Matc)m(hes)h(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g -(patterns.)275 4081 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 4190 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 4300 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 4410 y(con)m(taining)i(the)e -(patterns,)h(including)f(shell)h(functions)f(and)f(command)h -(substitutions.)275 4546 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 4656 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 4765 -y(`)p Ft(.)p Fu(',)d(but)e(the)g(\014lenames)h(`)p Ft(.)p -Fu(')g(and)f(`)p Ft(..)p Fu(')g(m)m(ust)h(b)s(e)f(matc)m(hed)h(b)m(y)g -(a)g(pattern)g(or)f(sub-pattern)g(that)h(b)s(egins)150 -4875 y(with)33 b(a)g(dot;)j(when)c(it)h(is)h(disabled,)f(the)h(set)g -(do)s(es)e(not)i(include)f(an)m(y)g(\014lenames)g(b)s(eginning)g(with)g -(\\.")150 4984 y(unless)24 b(the)g(pattern)h(or)f(sub-pattern)g(b)s -(egins)g(with)g(a)g(`)p Ft(.)p Fu('.)39 b(As)25 b(ab)s(o)m(v)m(e,)i(`)p -Ft(.)p Fu(')d(only)h(has)f(a)h(sp)s(ecial)g(meaning)150 -5094 y(when)k(matc)m(hing)j(\014lenames.)275 5230 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 5340 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)p eop end +(en)i(patterns.)150 5230 y Ft(@\()p Fj(pattern-list)p +Ft(\))630 5340 y Fu(Matc)m(hes)g(one)f(of)f(the)h(giv)m(en)g(patterns.) +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(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 -408 y(ma)m(y)31 b(b)s(e)f(faster.)150 603 y Fk(3.5.9)63 -b(Quote)41 b(Remo)m(v)-7 b(al)150 750 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 860 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 -1096 y Fs(3.6)68 b(Redirections)150 1255 y Fu(Before)32 +y Ft(!\()p Fj(pattern-list)p Ft(\))630 408 y Fu(Matc)m(hes)32 +b(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g(patterns.)275 +560 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 +669 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 +779 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 889 y(con)m(taining)i(the)e(patterns,)h +(including)f(shell)h(functions)f(and)f(command)h(substitutions.)275 +1019 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 1129 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 1238 y(`)p Ft(.)p +Fu(',)d(but)e(the)g(\014lenames)h(`)p Ft(.)p Fu(')g(and)f(`)p +Ft(..)p Fu(')g(m)m(ust)h(b)s(e)f(matc)m(hed)h(b)m(y)g(a)g(pattern)g(or) +f(sub-pattern)g(that)h(b)s(egins)150 1348 y(with)33 b(a)g(dot;)j(when)c +(it)h(is)h(disabled,)f(the)h(set)g(do)s(es)e(not)i(include)f(an)m(y)g +(\014lenames)g(b)s(eginning)g(with)g(\\.")150 1457 y(unless)24 +b(the)g(pattern)h(or)f(sub-pattern)g(b)s(egins)g(with)g(a)g(`)p +Ft(.)p Fu('.)39 b(As)25 b(ab)s(o)m(v)m(e,)i(`)p Ft(.)p +Fu(')d(only)h(has)f(a)h(sp)s(ecial)g(meaning)150 1567 +y(when)k(matc)m(hing)j(\014lenames.)275 1698 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 1807 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 1917 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 2026 +y(ma)m(y)31 b(b)s(e)f(faster.)150 2218 y Fk(3.5.9)63 +b(Quote)41 b(Remo)m(v)-7 b(al)150 2365 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 2474 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 2707 y Fs(3.6)68 b(Redirections)150 2866 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 -1365 y(tation)d(in)m(terpreted)f(b)m(y)f(the)h(shell.)40 +2976 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 1475 y(op)s(ened,)i(closed,)i(made)e(to)h +i(b)s(e)e(duplicated,)150 3085 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 1584 y(from)39 b(and)g(writes)h +(\014les)f(the)g(command)g(reads)150 3195 y(from)39 b(and)g(writes)h (to.)69 b(Redirection)40 b(ma)m(y)g(also)h(b)s(e)e(used)g(to)h(mo)s (dify)f(\014le)g(handles)g(in)g(the)h(curren)m(t)150 -1694 y(shell)e(execution)h(en)m(vironmen)m(t.)65 b(The)37 +3305 y(shell)e(execution)h(en)m(vironmen)m(t.)65 b(The)37 b(follo)m(wing)j(redirection)f(op)s(erators)f(ma)m(y)g(precede)h(or)f -(app)s(ear)150 1803 y(an)m(ywhere)30 b(within)f(a)h(simple)f(command)h +(app)s(ear)150 3414 y(an)m(ywhere)30 b(within)f(a)h(simple)f(command)h (or)f(ma)m(y)i(follo)m(w)g(a)f(command.)40 b(Redirections)30 -b(are)g(pro)s(cessed)150 1913 y(in)g(the)h(order)f(they)g(app)s(ear,)g -(from)g(left)h(to)g(righ)m(t.)275 2045 y(Eac)m(h)45 b(redirection)h +b(are)g(pro)s(cessed)150 3524 y(in)g(the)h(order)f(they)g(app)s(ear,)g +(from)g(left)h(to)g(righ)m(t.)275 3654 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 2155 +(n)m(um)m(b)s(er)g(ma)m(y)h(instead)h(b)s(e)150 3764 y(preceded)41 b(b)m(y)g(a)h(w)m(ord)f(of)g(the)h(form)f Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(.)74 b(In)41 b(this)g(case,)k -(for)c(eac)m(h)i(redirection)f(op)s(erator)150 2264 y(except)37 +(for)c(eac)m(h)i(redirection)f(op)s(erator)150 3874 y(except)37 b Ft(>)p Fu(&-)e(and)g Ft(<)p Fu(&-,)i(the)f(shell)g(will)g(allo)s (cate)j(a)d(\014le)g(descriptor)f(greater)i(than)f(10)g(and)f(assign)h -(it)150 2374 y(to)e Fi({)p Fr(v)-5 b(arname)5 b Fi(})p +(it)150 3983 y(to)e Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(.)52 b(If)33 b Ft(>)p Fu(&-)g(or)h Ft(<)p Fu(&-)f(is)g(preceded)h(b) m(y)f Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(,)36 b(the)e(v)-5 b(alue)34 b(of)f Fr(v)-5 b(arname)39 b Fu(de\014nes)33 -b(the)150 2483 y(\014le)e(descriptor)g(to)h(close.)43 +b(the)150 4093 y(\014le)e(descriptor)g(to)h(close.)43 b(If)31 b Fi({)p Fr(v)-5 b(arname)5 b Fi(})32 b Fu(is)f(supplied,)f (the)h(redirection)g(p)s(ersists)f(b)s(ey)m(ond)h(the)g(scop)s(e)150 -2593 y(of)42 b(the)f(command,)j(allo)m(wing)f(the)f(shell)g(programmer) +4202 y(of)42 b(the)f(command,)j(allo)m(wing)f(the)f(shell)g(programmer) f(to)h(manage)g(the)g(\014le)f(descriptor's)h(lifetime)150 -2703 y(man)m(ually)-8 b(.)41 b(The)29 b Ft(varredir_close)c +4312 y(man)m(ually)-8 b(.)41 b(The)29 b Ft(varredir_close)c Fu(shell)k(option)g(manages)h(this)f(b)s(eha)m(vior)g(\(see)h(Section)f -(4.3.2)i([The)150 2812 y(Shopt)f(Builtin],)h(page)g(71\).)275 -2944 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g +(4.3.2)i([The)150 4421 y(Shopt)f(Builtin],)h(page)g(71\).)275 +4552 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 3054 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g +(c)m(har-)150 4662 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)150 3164 y(descriptor)33 +(standard)f(input)f(\(\014le)150 4771 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 3273 y(to)e(the)g(standard)e(output)h(\(\014le)h -(descriptor)f(1\).)275 3405 y(The)h(w)m(ord)h(follo)m(wing)i(the)f +g(refers)150 4881 y(to)e(the)g(standard)e(output)h(\(\014le)h +(descriptor)f(1\).)275 5011 y(The)h(w)m(ord)h(follo)m(wing)i(the)f (redirection)g(op)s(erator)f(in)g(the)h(follo)m(wing)h(descriptions,)f -(unless)e(other-)150 3515 y(wise)21 b(noted,)i(is)e(sub)5 +(unless)e(other-)150 5121 y(wise)21 b(noted,)i(is)e(sub)5 b(jected)21 b(to)h(brace)f(expansion,)i(tilde)f(expansion,)h(parameter) -e(expansion,)i(command)150 3625 y(substitution,)31 b(arithmetic)h +e(expansion,)i(command)150 5230 y(substitution,)31 b(arithmetic)h (expansion,)f(quote)h(remo)m(v)-5 b(al,)33 b(\014lename)e(expansion,)g -(and)f(w)m(ord)h(splitting.)150 3734 y(If)f(it)h(expands)e(to)i(more)g -(than)f(one)h(w)m(ord,)f(Bash)h(rep)s(orts)e(an)h(error.)275 -3866 y(Note)h(that)g(the)g(order)f(of)g(redirections)h(is)g -(signi\014can)m(t.)41 b(F)-8 b(or)31 b(example,)h(the)e(command)390 -3999 y Ft(ls)47 b(>)h Fj(dirlist)d Ft(2>&1)150 4131 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 4240 y(\014le)h Fr(dirlist)p Fu(,)h(while)f(the)h(command)390 -4373 y Ft(ls)47 b(2>&1)g(>)g Fj(dirlist)150 4505 y Fu(directs)28 +(and)f(w)m(ord)h(splitting.)150 5340 y(If)f(it)h(expands)e(to)i(more)g +(than)f(one)h(w)m(ord,)f(Bash)h(rep)s(orts)e(an)h(error.)p +eop end +%%Page: 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)275 299 +y(Note)31 b(that)g(the)g(order)f(of)g(redirections)h(is)g(signi\014can) +m(t.)41 b(F)-8 b(or)31 b(example,)h(the)e(command)390 +430 y Ft(ls)47 b(>)h Fj(dirlist)d Ft(2>&1)150 562 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 +671 y(\014le)h Fr(dirlist)p Fu(,)h(while)f(the)h(command)390 +803 y Ft(ls)47 b(2>&1)g(>)g Fj(dirlist)150 934 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 4615 y(of)j(the)f(standard)g(output)g(b)s(efore)g(the)g +(y)150 1044 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 4747 y(Bash)26 b(handles)f(sev)m(eral)j(\014lenames)e(sp)s +Fu(.)275 1175 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 4856 y(in)38 b(the)h(follo)m(wing)h(table.)66 +(describ)s(ed)150 1285 y(in)38 b(the)h(follo)m(wing)h(table.)66 b(If)38 b(the)h(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)h(is)f -(running)f(pro)m(vides)h(these)150 4966 y(sp)s(ecial)27 -b(\014les,)g(bash)e(will)i(use)f(them;)h(otherwise)g(it)f(will)h(em)m -(ulate)h(them)e(in)m(ternally)h(with)f(the)g(b)s(eha)m(vior)150 -5076 y(describ)s(ed)j(b)s(elo)m(w.)150 5230 y Ft(/dev/fd/)p -Fj(fd)630 5340 y Fu(If)h Fr(fd)j Fu(is)d(a)h(v)-5 b(alid)31 -b(in)m(teger,)h(\014le)e(descriptor)h Fr(fd)i Fu(is)d(duplicated.)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(/dev/stdin)630 408 y Fu(File)32 b(descriptor)e(0)h(is)f -(duplicated.)150 577 y Ft(/dev/stdout)630 687 y Fu(File)i(descriptor)e -(1)h(is)f(duplicated.)150 856 y Ft(/dev/stderr)630 965 -y Fu(File)i(descriptor)e(2)h(is)f(duplicated.)150 1134 -y Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 1244 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 1354 y(n)m(um)m(b)s(er)23 b(or)i(service)h(name,)g(Bash)f +(running)f(pro)m(vides)h(these)150 1395 y(sp)s(ecial)26 +b(\014les,)g(Bash)f(will)h(use)e(them;)k(otherwise)d(it)h(will)f(em)m +(ulate)i(them)e(in)m(ternally)h(with)f(the)g(b)s(eha)m(vior)150 +1504 y(describ)s(ed)k(b)s(elo)m(w.)150 1658 y Ft(/dev/fd/)p +Fj(fd)630 1767 y Fu(If)h Fr(fd)j Fu(is)d(a)h(v)-5 b(alid)31 +b(in)m(teger,)h(\014le)e(descriptor)h Fr(fd)i Fu(is)d(duplicated.)150 +1920 y Ft(/dev/stdin)630 2030 y Fu(File)i(descriptor)e(0)h(is)f +(duplicated.)150 2183 y Ft(/dev/stdout)630 2293 y Fu(File)i(descriptor) +e(1)h(is)f(duplicated.)150 2446 y Ft(/dev/stderr)630 +2556 y Fu(File)i(descriptor)e(2)h(is)f(duplicated.)150 +2709 y Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 2819 +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 2928 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 1522 y Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)630 -1632 y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41 +(et.)150 3082 y Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)630 +3191 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 1742 y(n)m(um)m(b)s(er)23 +Fu(is)f(an)f(in)m(teger)i(p)s(ort)630 3301 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 1915 y(A)30 +(corresp)s(onding)f(UDP)i(so)s(c)m(k)m(et.)275 3454 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 2059 y(Redirections)f(using)e(\014le)i +(redirection)h(to)g(fail.)275 3586 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 2169 y(con\015ict)i(with)f(\014le)h +(care,)h(as)g(they)f(ma)m(y)150 3695 y(con\015ict)i(with)f(\014le)h (descriptors)f(the)g(shell)h(uses)f(in)m(ternally)-8 -b(.)150 2378 y Fk(3.6.1)63 b(Redirecting)40 b(Input)150 -2525 y Fu(Redirection)35 b(of)f(input)f(causes)i(the)f(\014le)g(whose)g +b(.)150 3889 y Fk(3.6.1)63 b(Redirecting)40 b(Input)150 +4036 y Fu(Redirection)35 b(of)f(input)f(causes)i(the)f(\014le)g(whose)g (name)g(results)g(from)g(the)g(expansion)g(of)g Fr(w)m(ord)k -Fu(to)d(b)s(e)150 2634 y(op)s(ened)d(for)g(reading)g(on)g(\014le)h +Fu(to)d(b)s(e)150 4145 y(op)s(ened)d(for)g(reading)g(on)g(\014le)h (descriptor)f Ft(n)p Fu(,)h(or)f(the)g(standard)g(input)f(\(\014le)i -(descriptor)f(0\))h(if)f Ft(n)g Fu(is)h(not)150 2744 -y(sp)s(eci\014ed.)275 2888 y(The)c(general)j(format)e(for)h -(redirecting)g(input)e(is:)390 3032 y Ft([)p Fj(n)p Ft(]<)p -Fj(word)150 3241 y Fk(3.6.2)63 b(Redirecting)40 b(Output)150 -3388 y Fu(Redirection)31 b(of)g(output)f(causes)h(the)f(\014le)h(whose) +(descriptor)f(0\))h(if)f Ft(n)g Fu(is)h(not)150 4255 +y(sp)s(eci\014ed.)275 4386 y(The)c(general)j(format)e(for)h +(redirecting)g(input)e(is:)390 4518 y Ft([)p Fj(n)p Ft(]<)p +Fj(word)150 4711 y Fk(3.6.2)63 b(Redirecting)40 b(Output)150 +4858 y Fu(Redirection)31 b(of)g(output)f(causes)h(the)f(\014le)h(whose) f(name)g(results)h(from)e(the)i(expansion)f(of)h Fr(w)m(ord)i -Fu(to)f(b)s(e)150 3497 y(op)s(ened)d(for)g(writing)g(on)g(\014le)h +Fu(to)f(b)s(e)150 4967 y(op)s(ened)d(for)g(writing)g(on)g(\014le)h (descriptor)f Fr(n)p Fu(,)g(or)g(the)h(standard)e(output)h(\(\014le)h -(descriptor)f(1\))h(if)g Fr(n)e Fu(is)i(not)150 3607 +(descriptor)f(1\))h(if)g Fr(n)e Fu(is)i(not)150 5077 y(sp)s(eci\014ed.)40 b(If)30 b(the)g(\014le)h(do)s(es)f(not)h(exist)g (it)g(is)f(created;)i(if)e(it)h(do)s(es)f(exist)h(it)g(is)g(truncated)f -(to)h(zero)g(size.)275 3751 y(The)e(general)j(format)e(for)h -(redirecting)g(output)f(is:)390 3895 y Ft([)p Fj(n)p -Ft(]>[|])p Fj(word)275 4039 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 4148 y(enabled,)h(the)g +(to)h(zero)g(size.)275 5209 y(The)e(general)j(format)e(for)h +(redirecting)g(output)f(is:)390 5340 y Ft([)p Fj(n)p +Ft(]>[|])p Fj(word)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)275 299 +y(If)30 b(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 408 y(enabled,)h(the)g (redirection)h(will)f(fail)h(if)e(the)i(\014le)e(whose)h(name)g (results)g(from)f(the)h(expansion)g(of)g Fr(w)m(ord)150 -4258 y Fu(exists)f(and)f(is)g(a)h(regular)g(\014le.)41 +518 y Fu(exists)f(and)f(is)g(a)h(regular)g(\014le.)41 b(If)30 b(the)h(redirection)g(op)s(erator)g(is)f(`)p Ft(>|)p Fu(',)h(or)f(the)h(redirection)g(op)s(erator)g(is)150 -4367 y(`)p Ft(>)p Fu(')36 b(and)f(the)g Ft(noclobber)e +628 y(`)p Ft(>)p Fu(')36 b(and)f(the)g Ft(noclobber)e Fu(option)j(is)g(not)g(enabled,)h(the)e(redirection)h(is)g(attempted)g -(ev)m(en)h(if)e(the)h(\014le)150 4477 y(named)30 b(b)m(y)g -Fr(w)m(ord)k Fu(exists.)150 4686 y Fk(3.6.3)63 b(App)s(ending)42 -b(Redirected)e(Output)150 4833 y Fu(Redirection)23 b(of)e(output)h(in)f +(ev)m(en)h(if)e(the)h(\014le)150 737 y(named)30 b(b)m(y)g +Fr(w)m(ord)k Fu(exists.)150 934 y Fk(3.6.3)63 b(App)s(ending)42 +b(Redirected)e(Output)150 1081 y Fu(Redirection)23 b(of)e(output)h(in)f (this)h(fashion)f(causes)h(the)g(\014le)g(whose)f(name)h(results)f -(from)g(the)h(expansion)g(of)150 4942 y Fr(w)m(ord)28 +(from)g(the)h(expansion)g(of)150 1191 y Fr(w)m(ord)28 b Fu(to)e(b)s(e)e(op)s(ened)g(for)h(app)s(ending)e(on)i(\014le)g (descriptor)g Fr(n)p Fu(,)g(or)g(the)g(standard)f(output)h(\(\014le)g -(descriptor)150 5052 y(1\))31 b(if)f Fr(n)g Fu(is)h(not)f(sp)s +(descriptor)150 1300 y(1\))31 b(if)f Fr(n)g Fu(is)h(not)f(sp)s (eci\014ed.)40 b(If)30 b(the)h(\014le)f(do)s(es)g(not)h(exist)g(it)g -(is)f(created.)275 5196 y(The)f(general)j(format)e(for)h(app)s(ending)e -(output)h(is:)390 5340 y Ft([)p Fj(n)p Ft(]>>)p Fj(word)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 Fk(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g(Standard)g -(Error)150 446 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s(oth)f(the)g -(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f(the)g -(standard)f(error)150 555 y(output)d(\(\014le)h(descriptor)f(2\))h(to)g -(b)s(e)f(redirected)h(to)g(the)f(\014le)h(whose)f(name)h(is)f(the)g -(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 712 y(There)f(are)i(t)m(w)m(o)h -(formats)e(for)h(redirecting)g(standard)e(output)h(and)g(standard)f -(error:)390 870 y Ft(&>)p Fj(word)150 1027 y Fu(and)390 -1184 y Ft(>&)p Fj(word)150 1341 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 1498 y Ft(>)p Fj(word)46 -b Ft(2>&1)275 1655 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 1764 -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 -1874 y(reasons.)150 2096 y Fk(3.6.5)63 b(App)s(ending)42 -b(Standard)f(Output)g(and)g(Standard)g(Error)150 2243 -y Fu(This)33 b(construct)i(allo)m(ws)g(b)s(oth)f(the)g(standard)g -(output)f(\(\014le)i(descriptor)f(1\))h(and)f(the)g(standard)f(error) -150 2352 y(output)d(\(\014le)h(descriptor)f(2\))h(to)g(b)s(e)f(app)s -(ended)f(to)i(the)f(\014le)h(whose)f(name)g(is)h(the)f(expansion)h(of)f -Fr(w)m(ord)p Fu(.)275 2509 y(The)f(format)i(for)f(app)s(ending)f -(standard)h(output)g(and)f(standard)h(error)g(is:)390 -2666 y Ft(&>>)p Fj(word)150 2823 y Fu(This)g(is)g(seman)m(tically)j -(equiv)-5 b(alen)m(t)32 b(to)390 2980 y Ft(>>)p Fj(word)46 -b Ft(2>&1)275 3138 y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g -(b)s(elo)m(w\).)150 3359 y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150 -3506 y Fu(This)26 b(t)m(yp)s(e)g(of)h(redirection)g(instructs)f(the)g -(shell)h(to)g(read)f(input)g(from)g(the)g(curren)m(t)h(source)f(un)m -(til)h(a)g(line)150 3616 y(con)m(taining)h(only)e Fr(w)m(ord)k -Fu(\(with)c(no)g(trailing)h(blanks\))f(is)g(seen.)40 -b(All)27 b(of)f(the)g(lines)h(read)f(up)f(to)i(that)g(p)s(oin)m(t)150 -3725 y(are)k(then)f(used)f(as)i(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)f(command.)275 3883 y(The)f(format)i(of)g(here-do)s(cumen)m(ts)f -(is:)390 4040 y Ft([)p Fj(n)p Ft(]<<[)p Fq(\000)p Ft(])p -Fj(word)772 4149 y(here-document)390 4259 y(delimiter)275 -4416 y Fu(No)i(parameter)h(and)f(v)-5 b(ariable)32 b(expansion,)h -(command)f(substitution,)h(arithmetic)g(expansion,)g(or)150 -4525 y(\014lename)26 b(expansion)g(is)g(p)s(erformed)e(on)i -Fr(w)m(ord)p Fu(.)39 b(If)25 b(an)m(y)i(part)e(of)h Fr(w)m(ord)j -Fu(is)d(quoted,)i(the)e Fr(delimiter)33 b Fu(is)26 b(the)150 -4635 y(result)33 b(of)g(quote)g(remo)m(v)-5 b(al)34 b(on)f -Fr(w)m(ord)p Fu(,)g(and)f(the)h(lines)g(in)g(the)g(here-do)s(cumen)m(t) -g(are)g(not)g(expanded.)47 b(If)150 4745 y Fr(w)m(ord)26 -b Fu(is)c(unquoted,)h(all)g(lines)g(of)g(the)f(here-do)s(cumen)m(t)g -(are)h(sub)5 b(jected)22 b(to)h(parameter)g(expansion,)h(com-)150 -4854 y(mand)30 b(substitution,)g(and)g(arithmetic)h(expansion,)g(the)f -(c)m(haracter)i(sequence)f Ft(\\newline)d Fu(is)j(ignored,)150 -4964 y(and)f(`)p Ft(\\)p Fu(')g(m)m(ust)h(b)s(e)e(used)h(to)h(quote)g -(the)g(c)m(haracters)g(`)p Ft(\\)p Fu(',)g(`)p Ft($)p -Fu(',)g(and)f(`)p Ft(`)p Fu('.)275 5121 y(If)21 b(the)i(redirection)g -(op)s(erator)g(is)f(`)p Ft(<<-)p Fu(',)i(then)e(all)h(leading)g(tab)g -(c)m(haracters)h(are)e(stripp)s(ed)f(from)h(input)150 -5230 y(lines)33 b(and)f(the)h(line)h(con)m(taining)g -Fr(delimiter)p Fu(.)49 b(This)32 b(allo)m(ws)i(here-do)s(cumen)m(ts)f -(within)f(shell)i(scripts)e(to)150 5340 y(b)s(e)e(inden)m(ted)g(in)g(a) -h(natural)f(fashion.)p eop end +(is)f(created.)275 1433 y(The)f(general)j(format)e(for)h(app)s(ending)e +(output)h(is:)390 1567 y Ft([)p Fj(n)p Ft(]>>)p Fj(word)150 +1763 y Fk(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g +(Standard)g(Error)150 1910 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s +(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f +(the)g(standard)f(error)150 2020 y(output)d(\(\014le)h(descriptor)f +(2\))h(to)g(b)s(e)f(redirected)h(to)g(the)f(\014le)h(whose)f(name)h(is) +f(the)g(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 2153 y(There)f(are)i(t)m +(w)m(o)h(formats)e(for)h(redirecting)g(standard)e(output)h(and)g +(standard)f(error:)390 2286 y Ft(&>)p Fj(word)150 2420 +y Fu(and)390 2553 y Ft(>&)p Fj(word)150 2686 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 +2819 y Ft(>)p Fj(word)46 b Ft(2>&1)275 2953 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 3062 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 3172 y(reasons.)150 +3369 y Fk(3.6.5)63 b(App)s(ending)42 b(Standard)f(Output)g(and)g +(Standard)g(Error)150 3516 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s +(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f +(the)g(standard)f(error)150 3625 y(output)d(\(\014le)h(descriptor)f +(2\))h(to)g(b)s(e)f(app)s(ended)f(to)i(the)f(\014le)h(whose)f(name)g +(is)h(the)f(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 3758 +y(The)f(format)i(for)f(app)s(ending)f(standard)h(output)g(and)f +(standard)h(error)g(is:)390 3892 y Ft(&>>)p Fj(word)150 +4025 y Fu(This)g(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32 +b(to)390 4158 y Ft(>>)p Fj(word)46 b Ft(2>&1)275 4291 +y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g(b)s(elo)m(w\).)150 +4488 y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150 4635 +y Fu(This)c(t)m(yp)s(e)h(of)f(redirection)i(instructs)e(the)h(shell)f +(to)i(read)e(input)g(from)g(the)h(curren)m(t)f(source)h(un)m(til)g(a) +150 4745 y(line)33 b(con)m(taining)g(only)g Fr(delimiter)39 +b Fu(\(with)32 b(no)g(trailing)i(blanks\))e(is)g(seen.)46 +b(All)33 b(of)f(the)h(lines)f(read)g(up)f(to)150 4854 +y(that)k(p)s(oin)m(t)f(are)g(then)g(used)g(as)g(the)g(standard)g(input) +f(\(or)h(\014le)g(descriptor)g Fr(n)g Fu(if)g Fr(n)g +Fu(is)g(sp)s(eci\014ed\))g(for)g(a)150 4964 y(command.)275 +5097 y(The)29 b(format)i(of)g(here-do)s(cumen)m(ts)f(is:)390 +5230 y Ft([)p Fj(n)p Ft(]<<[)p Fq(\000)p Ft(])p Fj(word)772 +5340 y(here-document)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 Fk(3.6.7)63 b(Here)41 b(Strings)150 446 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 -600 y Ft([)p Fj(n)p Ft(]<<<)46 b Fj(word)275 753 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 -863 y(stitution,)f(arithmetic)f(expansion,)g(and)f(quote)h(remo)m(v)-5 +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(41)390 299 +y Fj(delimiter)275 436 y Fu(No)32 b(parameter)h(and)f(v)-5 +b(ariable)32 b(expansion,)h(command)f(substitution,)h(arithmetic)g +(expansion,)g(or)150 545 y(\014lename)e(expansion)f(is)g(p)s(erformed)f +(on)h Fr(w)m(ord)p Fu(.)275 682 y(If)40 b(an)m(y)i(part)g(of)f +Fr(w)m(ord)k Fu(is)c(quoted,)k(the)c Fr(delimiter)49 +b Fu(is)41 b(the)h(result)f(of)h(quote)g(remo)m(v)-5 +b(al)43 b(on)e Fr(w)m(ord)p Fu(,)150 791 y(and)d(the)h(lines)g(in)f +(the)h(here-do)s(cumen)m(t)g(are)g(not)g(expanded.)65 +b(If)38 b Fr(w)m(ord)k Fu(is)d(unquoted,)h Fr(delimiter)46 +b Fu(is)150 901 y Fr(w)m(ord)32 b Fu(itself,)e(all)f(lines)g(of)g(the)g +(here-do)s(cumen)m(t)f(are)h(sub)5 b(jected)29 b(to)g(parameter)g +(expansion,)g(command)150 1011 y(substitution,)39 b(and)e(arithmetic)i +(expansion,)g(the)f(c)m(haracter)h(sequence)e Ft(\\newline)f +Fu(is)h(ignored,)j(and)150 1120 y(`)p Ft(\\)p Fu(')31 +b(m)m(ust)f(b)s(e)g(used)f(to)i(quote)g(the)g(c)m(haracters)h(`)p +Ft(\\)p Fu(',)e(`)p Ft($)p Fu(',)h(and)f(`)p Ft(`)p Fu('.)275 +1257 y(If)21 b(the)i(redirection)g(op)s(erator)g(is)f(`)p +Ft(<<-)p Fu(',)i(then)e(all)h(leading)g(tab)g(c)m(haracters)h(are)e +(stripp)s(ed)f(from)h(input)150 1366 y(lines)33 b(and)f(the)h(line)h +(con)m(taining)g Fr(delimiter)p Fu(.)49 b(This)32 b(allo)m(ws)i +(here-do)s(cumen)m(ts)f(within)f(shell)i(scripts)e(to)150 +1476 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)150 +1678 y Fk(3.6.7)63 b(Here)41 b(Strings)150 1824 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 1961 y Ft([)p Fj(n)p Ft(]<<<)46 b Fj(word)275 +2098 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 +2207 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 -973 y(are)35 b(not)g(p)s(erformed.)51 b(The)34 b(result)h(is)g +2317 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 1082 y(the)d(command)f(on)g(its)h(standard)e(input)h +(ended,)g(to)150 2427 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 1301 y Fk(3.6.8)63 b(Duplicating)41 -b(File)g(Descriptors)150 1448 y Fu(The)30 b(redirection)h(op)s(erator) -390 1602 y Ft([)p Fj(n)p Ft(]<&)p Fj(word)150 1755 y +(eci\014ed\).)150 2628 y Fk(3.6.8)63 b(Duplicating)41 +b(File)g(Descriptors)150 2775 y Fu(The)30 b(redirection)h(op)s(erator) +390 2912 y Ft([)p Fj(n)p Ft(]<&)p Fj(word)150 3048 y Fu(is)k(used)e(to)j(duplicate)f(input)f(\014le)g(descriptors.)53 b(If)34 b Fr(w)m(ord)k Fu(expands)c(to)h(one)g(or)g(more)g(digits,)h -(the)f(\014le)150 1865 y(descriptor)e(denoted)h(b)m(y)f +(the)f(\014le)150 3158 y(descriptor)e(denoted)h(b)m(y)f Fr(n)g Fu(is)g(made)h(to)g(b)s(e)f(a)g(cop)m(y)h(of)g(that)g(\014le)f (descriptor.)50 b(If)33 b(the)h(digits)g(in)f Fr(w)m(ord)150 -1975 y Fu(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g +3268 y Fu(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g (for)g(input,)g(a)h(redirection)g(error)f(o)s(ccurs.)40 -b(If)29 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)150 2084 y(to)31 +b(If)29 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)150 3377 y(to)31 b(`)p Ft(-)p Fu(',)g(\014le)g(descriptor)g Fr(n)f Fu(is)g(closed.)43 b(If)30 b Fr(n)g Fu(is)g(not)h(sp)s(eci\014ed,)f(the)h(standard)f -(input)g(\(\014le)h(descriptor)f(0\))150 2194 y(is)g(used.)275 -2348 y(The)f(op)s(erator)390 2502 y Ft([)p Fj(n)p Ft(]>&)p -Fj(word)150 2655 y Fu(is)40 b(used)g(similarly)h(to)g(duplicate)f +(input)g(\(\014le)h(descriptor)f(0\))150 3487 y(is)g(used.)275 +3623 y(The)f(op)s(erator)390 3760 y Ft([)p Fj(n)p Ft(]>&)p +Fj(word)150 3897 y Fu(is)40 b(used)g(similarly)h(to)g(duplicate)f (output)g(\014le)h(descriptors.)70 b(If)40 b Fr(n)f Fu(is)i(not)f(sp)s -(eci\014ed,)i(the)f(standard)150 2765 y(output)30 b(\(\014le)g +(eci\014ed,)i(the)f(standard)150 4006 y(output)30 b(\(\014le)g (descriptor)g(1\))h(is)f(used.)39 b(If)30 b(the)g(digits)h(in)e Fr(w)m(ord)34 b Fu(do)29 b(not)i(sp)s(ecify)e(a)i(\014le)f(descriptor)g -(op)s(en)150 2875 y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s +(op)s(en)150 4116 y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s (ccurs.)55 b(If)35 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)37 b(to)f(`)p Ft(-)p Fu(',)h(\014le)e(descriptor)g Fr(n)g -Fu(is)g(closed.)150 2984 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e +Fu(is)g(closed.)150 4226 y(As)f(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 -3094 y(the)d(standard)e(output)h(and)g(standard)f(error)h(are)h +4335 y(the)d(standard)e(output)h(and)g(standard)f(error)h(are)h (redirected)g(as)g(describ)s(ed)e(previously)-8 b(.)150 -3312 y Fk(3.6.9)63 b(Mo)m(ving)41 b(File)h(Descriptors)150 -3459 y Fu(The)30 b(redirection)h(op)s(erator)390 3613 -y Ft([)p Fj(n)p Ft(]<&)p Fj(digit)p Ft(-)150 3767 y Fu(mo)m(v)m(es)i +4537 y Fk(3.6.9)63 b(Mo)m(ving)41 b(File)h(Descriptors)150 +4684 y Fu(The)30 b(redirection)h(op)s(erator)390 4820 +y Ft([)p Fj(n)p Ft(]<&)p Fj(digit)p Ft(-)150 4957 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 3876 y(if)f Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)40 +(0\))150 5067 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 4030 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s -(erator)390 4184 y Ft([)p Fj(n)p Ft(]>&)p Fj(digit)p -Ft(-)150 4338 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 -4448 y(if)i Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)150 -4666 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 4813 y Fu(The)30 -b(redirection)h(op)s(erator)390 4967 y Ft([)p Fj(n)p -Ft(]<>)p Fj(word)150 5121 y Fu(causes)39 b(the)g(\014le)g(whose)g(name) -g(is)g(the)g(expansion)g(of)g Fr(w)m(ord)j Fu(to)d(b)s(e)g(op)s(ened)f -(for)g(b)s(oth)h(reading)g(and)150 5230 y(writing)33 -b(on)f(\014le)h(descriptor)f Fr(n)p Fu(,)h(or)g(on)f(\014le)h -(descriptor)g(0)g(if)f Fr(n)g Fu(is)h(not)g(sp)s(eci\014ed.)47 -b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 5340 y(exist,)e(it)g(is)g -(created.)p eop end +Fr(n)p Fu(.)275 5203 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s +(erator)390 5340 y Ft([)p Fj(n)p Ft(]>&)p Fj(digit)p +Ft(-)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 Fs(3.7)68 b(Executing)46 b(Commands)150 523 y Fk(3.7.1)63 -b(Simple)41 b(Command)h(Expansion)150 670 y Fu(When)33 +y(mo)m(v)m(es)29 b(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 408 y(if)i +Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)150 625 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 772 y Fu(The)30 b(redirection)h(op)s(erator)390 +924 y Ft([)p Fj(n)p Ft(]<>)p Fj(word)150 1076 y Fu(causes)39 +b(the)g(\014le)g(whose)g(name)g(is)g(the)g(expansion)g(of)g +Fr(w)m(ord)j Fu(to)d(b)s(e)g(op)s(ened)f(for)g(b)s(oth)h(reading)g(and) +150 1185 y(writing)33 b(on)f(\014le)h(descriptor)f Fr(n)p +Fu(,)h(or)g(on)f(\014le)h(descriptor)g(0)g(if)f Fr(n)g +Fu(is)h(not)g(sp)s(eci\014ed.)47 b(If)32 b(the)h(\014le)f(do)s(es)h +(not)150 1295 y(exist,)e(it)g(is)g(created.)150 1562 +y Fs(3.7)68 b(Executing)46 b(Commands)150 1786 y Fk(3.7.1)63 +b(Simple)41 b(Command)h(Expansion)150 1933 y Fu(When)33 b(a)g(simple)g(command)g(is)g(executed,)h(the)g(shell)f(p)s(erforms)e -(the)i(follo)m(wing)i(expansions,)e(assign-)150 779 y(men)m(ts,)e(and)f -(redirections,)h(from)f(left)h(to)g(righ)m(t,)g(in)f(the)h(follo)m -(wing)h(order.)199 913 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 1023 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 -1157 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 1267 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 1376 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 1486 y(men)m(ts.)199 1620 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(38\).)199 -1754 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 1864 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 1973 y(b)s(eing)30 -b(assigned)h(to)g(the)f(v)-5 b(ariable.)275 2132 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 2242 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 2351 y(and)27 b(redirections\),)i(assignmen)m(t)g +(the)i(follo)m(wing)i(expansions,)e(assign-)150 2043 +y(men)m(ts,)e(and)f(redirections,)h(from)f(left)h(to)g(righ)m(t,)g(in)f +(the)h(follo)m(wing)h(order.)199 2194 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 +2304 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 2447 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 +2557 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 2666 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 2776 y(men)m(ts.)199 2919 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(38\).)199 3062 +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 3172 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 3282 y(b)s(eing)30 b(assigned)h(to)g(the)f(v)-5 +b(ariable.)275 3467 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 3577 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 3686 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 2461 y(v)-5 b(ariables)27 b(are)g(added)e(to) +b(Otherwise,)28 b(the)150 3796 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 2570 y(ren)m(t)32 b(shell)f(en)m +(not)h(a\013ect)h(the)e(cur-)150 3905 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 -2680 y(v)-5 b(ariable,)31 b(an)g(error)f(o)s(ccurs,)g(and)g(the)g +4015 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.)275 -2814 y(If)i(no)g(command)g(name)h(results,)g(redirections)g(are)g(p)s +4167 y(If)i(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 -2924 y(shell)d(en)m(vironmen)m(t.)41 b(A)30 b(redirection)h(error)f +4277 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 -3058 y(If)26 b(there)i(is)f(a)h(command)f(name)h(left)g(after)g +4428 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 3167 y(Otherwise,)39 b(the)e(command)g(exits.)62 +(w.)150 4538 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 3277 y(tion,)i(the)d(exit)h(status)g(of)f(the)h(command) +(substitu-)150 4648 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 3387 y(p)s(erformed.)55 b(If)35 b(there)g(w)m(ere)h(no)g(command)f +150 4757 y(p)s(erformed.)55 b(If)35 b(there)g(w)m(ere)h(no)g(command)f (substitutions,)i(the)e(command)h(exits)g(with)f(a)h(status)g(of)150 -3496 y(zero.)150 3695 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h -(Execution)150 3842 y Fu(After)i(a)h(command)f(has)g(b)s(een)f(split)h +4867 y(zero.)150 5083 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h +(Execution)150 5230 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 3951 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g -(follo)m(wing)g(actions)h(are)f(tak)m(en.)199 4085 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 4195 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 4305 y(F)-8 b(unctions],)31 b(page)h(19.)199 -4439 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 4548 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 4682 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 -4792 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 4902 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 5011 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 5121 y(Builtins],)37 -b(page)f(48\).)55 b(A)35 b(full)g(searc)m(h)g(of)g(the)g(directories)h -(in)f Ft($PATH)e Fu(is)i(p)s(erformed)f(only)h(if)g(the)330 -5230 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 5340 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,)p eop end +(and)f(an)150 5340 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.)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)330 299 -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 -408 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 -518 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 628 y(message)k(and)f(returns)f(an)i(exit)g -(status)g(of)f(127.)199 759 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 868 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 978 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 1087 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8 -b(.)199 1218 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g +b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(43)199 299 +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 408 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 518 y(F)-8 b(unctions],)31 +b(page)h(19.)199 649 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 758 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 889 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 999 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 1108 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 1218 +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 1328 y(Builtins],)37 b(page)f(48\).)55 b(A)35 b(full)g(searc)m(h)g +(of)g(the)g(directories)h(in)f Ft($PATH)e Fu(is)i(p)s(erformed)f(only)h +(if)g(the)330 1437 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 1547 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 1656 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 1766 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 1876 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 +1985 y(message)k(and)f(returns)f(an)i(exit)g(status)g(of)f(127.)199 +2116 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 2226 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 2335 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 2445 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8 +b(.)199 2576 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g (the)f(\014le)h(is)g(not)g(in)f(executable)j(format,)f(and)e(the)h -(\014le)g(is)g(not)330 1328 y(a)d(directory)-8 b(,)34 +(\014le)g(is)g(not)330 2685 y(a)d(directory)-8 b(,)34 b(it)f(is)g(assumed)e(to)j(b)s(e)d(a)i Fr(shell)g(script)h Fu(and)e(the)h(shell)f(executes)i(it)f(as)g(describ)s(ed)e(in)330 -1438 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(46.)199 -1569 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async) +2795 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(46.)199 +2926 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 1678 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150 -1870 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150 -2017 y Fu(The)30 b(shell)g(has)h(an)f Fr(execution)h(en)m(vironmen)m(t) +(to)330 3035 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150 +3227 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150 +3374 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 -2148 y Fq(\017)60 b Fu(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f +3505 y Fq(\017)60 b Fu(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f (shell)h(at)g(in)m(v)m(o)s(cation,)j(as)c(mo)s(di\014ed)g(b)m(y)g -(redirections)h(supplied)e(to)330 2258 y(the)g Ft(exec)e -Fu(builtin)225 2389 y Fq(\017)60 b Fu(the)28 b(curren)m(t)g(w)m(orking) +(redirections)h(supplied)e(to)330 3615 y(the)g Ft(exec)e +Fu(builtin)225 3745 y Fq(\017)60 b Fu(the)28 b(curren)m(t)g(w)m(orking) h(directory)g(as)f(set)h(b)m(y)f Ft(cd)p Fu(,)g Ft(pushd)p Fu(,)g(or)g Ft(popd)p Fu(,)g(or)g(inherited)g(b)m(y)g(the)h(shell)f(at) -330 2498 y(in)m(v)m(o)s(cation)225 2629 y Fq(\017)60 +330 3855 y(in)m(v)m(o)s(cation)225 3986 y Fq(\017)60 b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g(as)h(set)g(b)m(y)f Ft(umask)f Fu(or)h(inherited)g(from)g(the)h(shell's)f(paren)m(t)225 -2760 y Fq(\017)60 b Fu(curren)m(t)30 b(traps)g(set)h(b)m(y)f -Ft(trap)225 2891 y Fq(\017)60 b Fu(shell)30 b(parameters)f(that)h(are)g +4117 y Fq(\017)60 b Fu(curren)m(t)30 b(traps)g(set)h(b)m(y)f +Ft(trap)225 4247 y Fq(\017)60 b Fu(shell)30 b(parameters)f(that)h(are)g (set)g(b)m(y)g(v)-5 b(ariable)30 b(assignmen)m(t)g(or)g(with)f -Ft(set)f Fu(or)i(inherited)f(from)g(the)330 3001 y(shell's)i(paren)m(t) -f(in)g(the)h(en)m(vironmen)m(t)225 3132 y Fq(\017)60 +Ft(set)f Fu(or)i(inherited)f(from)g(the)330 4357 y(shell's)i(paren)m(t) +f(in)g(the)h(en)m(vironmen)m(t)225 4488 y Fq(\017)60 b Fu(shell)44 b(functions)f(de\014ned)f(during)h(execution)i(or)e (inherited)h(from)f(the)h(shell's)g(paren)m(t)f(in)h(the)330 -3242 y(en)m(vironmen)m(t)225 3373 y Fq(\017)60 b Fu(options)33 +4597 y(en)m(vironmen)m(t)225 4728 y Fq(\017)60 b Fu(options)33 b(enabled)g(at)h(in)m(v)m(o)s(cation)h(\(either)f(b)m(y)f(default)g(or) -g(with)g(command-line)g(argumen)m(ts\))h(or)330 3482 -y(b)m(y)c Ft(set)225 3613 y Fq(\017)60 b Fu(options)31 +g(with)g(command-line)g(argumen)m(ts\))h(or)330 4838 +y(b)m(y)c Ft(set)225 4969 y Fq(\017)60 b Fu(options)31 b(enabled)f(b)m(y)g Ft(shopt)f Fu(\(see)j(Section)f(4.3.2)h([The)e -(Shopt)g(Builtin],)h(page)g(71\))225 3744 y Fq(\017)60 +(Shopt)g(Builtin],)h(page)g(71\))225 5100 y Fq(\017)60 b Fu(shell)31 b(aliases)g(de\014ned)f(with)g Ft(alias)f -Fu(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(100\))225 -3875 y Fq(\017)60 b Fu(v)-5 b(arious)50 b(pro)s(cess)f +Fu(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(101\))225 +5230 y Fq(\017)60 b Fu(v)-5 b(arious)50 b(pro)s(cess)f Fm(id)p Fu(s,)55 b(including)49 b(those)i(of)e(bac)m(kground)h(jobs)f -(\(see)i(Section)g(3.2.4)g([Lists],)330 3985 y(page)31 +(\(see)i(Section)g(3.2.4)g([Lists],)330 5340 y(page)31 b(10\),)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)275 4137 y Fu(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 4247 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 4356 y(noted,)31 -b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225 -4487 y Fq(\017)60 b Fu(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e +b(alue)31 b(of)g Ft($PPID)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)275 299 +y(When)34 b(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 +408 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 518 y(noted,)31 b(the)f(v)-5 +b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225 +650 y Fq(\017)60 b Fu(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e (an)m(y)h(mo)s(di\014cations)h(and)e(additions)h(sp)s(eci\014ed)g(b)m -(y)g(redirections)g(to)330 4597 y(the)g(command)225 4728 +(y)g(redirections)g(to)330 760 y(the)g(command)225 892 y Fq(\017)60 b Fu(the)31 b(curren)m(t)f(w)m(orking)g(directory)225 -4859 y Fq(\017)60 b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225 -4990 y Fq(\017)60 b Fu(shell)32 b(v)-5 b(ariables)33 +1024 y Fq(\017)60 b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225 +1156 y Fq(\017)60 b Fu(shell)32 b(v)-5 b(ariables)33 b(and)e(functions)h(mark)m(ed)g(for)g(exp)s(ort,)g(along)h(with)f(v)-5 -b(ariables)32 b(exp)s(orted)g(for)g(the)330 5099 y(command,)e(passed)g +b(ariables)32 b(exp)s(orted)g(for)g(the)330 1266 y(command,)e(passed)g (in)g(the)h(en)m(vironmen)m(t)g(\(see)g(Section)g(3.7.4)i([En)m -(vironmen)m(t],)e(page)g(44\))225 5230 y Fq(\017)60 b +(vironmen)m(t],)e(page)g(44\))225 1398 y Fq(\017)60 b Fu(traps)31 b(caugh)m(t)h(b)m(y)f(the)g(shell)h(are)f(reset)h(to)g(the) f(v)-5 b(alues)32 b(inherited)e(from)h(the)g(shell's)h(paren)m(t,)g -(and)330 5340 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored)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)275 299 -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 -408 y(en)m(vironmen)m(t.)275 540 y(A)30 b Fr(subshell)j +(and)330 1508 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored) +275 1662 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 +1772 y(en)m(vironmen)m(t.)275 1904 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 -671 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 781 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 +2036 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 2146 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 -891 y(except)i(that)g(traps)f(caugh)m(t)h(b)m(y)f(the)h(shell)f(are)g +2255 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 1000 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49 +(from)150 2365 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49 b(Builtin)32 b(commands)g(that)h(are)g(in)m(v)m(ok)m(ed)h(as)e(part)g -(of)h(a)f(pip)s(eline)g(are)h(also)150 1110 y(executed)41 +(of)h(a)f(pip)s(eline)g(are)h(also)150 2475 y(executed)41 b(in)f(a)h(subshell)e(en)m(vironmen)m(t.)72 b(Changes)40 b(made)g(to)h(the)g(subshell)e(en)m(vironmen)m(t)i(cannot)150 -1219 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275 -1351 y(Subshells)c(spa)m(wned)i(to)h(execute)g(command)f(substitutions) +2584 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275 +2716 y(Subshells)c(spa)m(wned)i(to)h(execute)g(command)f(substitutions) g(inherit)g(the)g(v)-5 b(alue)31 b(of)f(the)h Ft(-e)e -Fu(option)150 1460 y(from)23 b(the)i(paren)m(t)f(shell.)38 +Fu(option)150 2826 y(from)23 b(the)i(paren)m(t)f(shell.)38 b(When)24 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)f(clears)h(the)f -Ft(-e)f Fu(option)i(in)e(suc)m(h)h(subshells.)275 1592 +Ft(-e)f Fu(option)i(in)e(suc)m(h)h(subshells.)275 2958 y(If)f(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 1701 y(for)35 b(the)g(command)g(is)g +(default)g(standard)f(input)150 3068 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 1811 +b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 3177 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 2004 y Fk(3.7.4)63 -b(En)m(vironmen)m(t)150 2151 y Fu(When)29 b(a)g(program)f(is)h(in)m(v)m +(di\014ed)g(b)m(y)g(redirections.)150 3372 y Fk(3.7.4)63 +b(En)m(vironmen)m(t)150 3519 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 -2261 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(.)275 2392 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w) +3628 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(.)275 3761 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 2502 +b(On)38 b(in)m(v)m(o)s(cation,)44 b(the)c(shell)150 3870 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 -2611 y(marking)23 b(it)h(for)f Ft(export)f Fu(to)i(c)m(hild)g(pro)s +3980 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 2721 y Ft(export)c Fu(and)i(`)p Ft(declare)29 +(t.)39 b(The)150 4089 y Ft(export)c Fu(and)i(`)p Ft(declare)29 b(-x)p Fu(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g -(to)h(b)s(e)e(added)h(to)h(and)150 2830 y(deleted)21 +(to)h(b)s(e)e(added)h(to)h(and)150 4199 y(deleted)21 b(from)f(the)h(en)m(vironmen)m(t.)38 b(If)20 b(the)h(v)-5 b(alue)21 b(of)g(a)g(parameter)g(in)f(the)g(en)m(vironmen)m(t)i(is)e -(mo)s(di\014ed,)i(the)150 2940 y(new)31 b(v)-5 b(alue)32 +(mo)s(di\014ed,)i(the)150 4309 y(new)31 b(v)-5 b(alue)32 b(b)s(ecomes)f(part)h(of)f(the)h(en)m(vironmen)m(t,)g(replacing)h(the)e (old.)44 b(The)31 b(en)m(vironmen)m(t)h(inherited)150 -3050 y(b)m(y)f(an)m(y)g(executed)h(command)f(consists)g(of)g(the)g +4418 y(b)m(y)f(an)m(y)g(executed)h(command)f(consists)g(of)g(the)g (shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f(v)-5 -b(alues)31 b(ma)m(y)h(b)s(e)150 3159 y(mo)s(di\014ed)26 +b(alues)31 b(ma)m(y)h(b)s(e)150 4528 y(mo)s(di\014ed)26 b(in)g(the)h(shell,)h(less)f(an)m(y)g(pairs)f(remo)m(v)m(ed)i(b)m(y)f (the)g Ft(unset)e Fu(and)h(`)p Ft(export)j(-n)p Fu(')e(commands,)g -(plus)150 3269 y(an)m(y)k(additions)f(via)h(the)g Ft(export)d -Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275 3400 +(plus)150 4637 y(an)m(y)k(additions)f(via)h(the)g Ft(export)d +Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275 4769 y(The)j(en)m(vironmen)m(t)i(for)f(an)m(y)g(simple)h(command)f(or)g (function)g(ma)m(y)g(b)s(e)g(augmen)m(ted)h(temp)s(orarily)150 -3510 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h +4879 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h (as)e(describ)s(ed)g(in)g(Section)i(3.4)g([Shell)e(P)m(arameters],)150 -3619 y(page)g(21.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g +4989 y(page)g(21.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g (a\013ect)f(only)g(the)f(en)m(vironmen)m(t)h(seen)g(b)m(y)f(that)h -(command.)275 3751 y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g +(command.)275 5121 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(67\),)h(then)e(all)g -(parameter)150 3860 y(assignmen)m(ts)f(are)g(placed)h(in)e(the)h(en)m +(parameter)150 5230 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 3970 y(command)g(name.)275 4101 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 4211 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 4404 y Fk(3.7.5)63 -b(Exit)40 b(Status)150 4551 y Fu(The)23 b(exit)i(status)f(of)h(an)e +(precede)g(the)150 5340 y(command)g(name.)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(When)31 b(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 408 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 605 y Fk(3.7.5)63 +b(Exit)40 b(Status)150 752 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 4661 y(equiv)-5 +(the)g Ft(waitpid)e Fu(system)i(call)h(or)150 862 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 4770 y(shell)i(ma)m(y)g(use)f(v)-5 b(alues)35 b(ab)s(o)m(v)m(e)g +150 971 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 4880 y(commands)j(are)g(also)h +(builtins)f(and)f(comp)s(ound)150 1081 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 4989 y(sp)s(ecial)31 b(v)-5 +h(the)e(shell)h(will)f(use)150 1191 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 -5121 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s(oses,)e(a)j(command)e +1324 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 5230 y(A)e(non-zero)h(exit)g(status)g(indicates)g(failure.)40 +150 1433 y(A)e(non-zero)h(exit)g(status)g(indicates)g(failure.)40 b(This)28 b(seemingly)i(coun)m(ter-in)m(tuitiv)m(e)i(sc)m(heme)e(is)f -(used)g(so)150 5340 y(there)34 b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m +(used)g(so)150 1543 y(there)34 b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m (y)g(to)h(indicate)g(success)f(and)f(a)h(v)-5 b(ariet)m(y)35 -b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5 b(arious)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)150 299 -y(failure)38 b(mo)s(des.)62 b(When)37 b(a)h(command)f(terminates)i(on)e -(a)h(fatal)h(signal)g(whose)e(n)m(um)m(b)s(er)f(is)i -Fr(N)p Fu(,)i(Bash)150 408 y(uses)30 b(the)g(v)-5 b(alue)31 +b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5 b(arious)150 +1653 y(failure)38 b(mo)s(des.)62 b(When)37 b(a)h(command)f(terminates)i +(on)e(a)h(fatal)h(signal)g(whose)e(n)m(um)m(b)s(er)f(is)i +Fr(N)p Fu(,)i(Bash)150 1762 y(uses)30 b(the)g(v)-5 b(alue)31 b(128)p Ft(+)p Fr(N)42 b Fu(as)30 b(the)h(exit)g(status.)275 -549 y(If)k(a)h(command)g(is)g(not)g(found,)g(the)g(c)m(hild)h(pro)s +1895 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 -658 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)f(but)h(is)g(not)h +2005 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 -798 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 -908 y(is)c(greater)i(than)e(zero.)275 1048 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 1158 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 1267 y(page)31 b(10\).)275 1407 -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 -1517 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 1627 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 1736 y(argumen)m(ts.)275 -1876 y(The)f(exit)i(status)f(of)h(the)f(last)h(command)f(is)g(a)m(v)-5 +2138 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 +2248 y(is)c(greater)i(than)e(zero.)275 2381 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 2491 +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 +2600 y(page)31 b(10\).)275 2733 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 2843 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 2953 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 3062 y(argumen)m(ts.)275 +3196 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 1986 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m -(arameters],)h(page)f(23\).)150 2191 y Fk(3.7.6)63 b(Signals)150 -2338 y Fu(When)36 b(Bash)g(is)h(in)m(teractiv)m(e,)j(in)c(the)h +b(\(see)35 b(Sec-)150 3305 y(tion)c(3.4.2)h([Sp)s(ecial)f(P)m +(arameters],)h(page)f(23\).)150 3502 y Fk(3.7.6)63 b(Signals)150 +3649 y Fu(When)36 b(Bash)g(is)h(in)m(teractiv)m(e,)j(in)c(the)h (absence)f(of)h(an)m(y)f(traps,)i(it)e(ignores)h Ft(SIGTERM)d -Fu(\(so)j(that)g(`)p Ft(kill)150 2447 y(0)p Fu(')c(do)s(es)g(not)g +Fu(\(so)j(that)g(`)p Ft(kill)150 3758 y(0)p Fu(')c(do)s(es)g(not)g (kill)g(an)g(in)m(teractiv)m(e)j(shell\),)f(and)d Ft(SIGINT)f Fu(is)i(caugh)m(t)h(and)f(handled)f(\(so)h(that)h(the)f -Ft(wait)150 2557 y Fu(builtin)24 b(is)h(in)m(terruptible\).)39 +Ft(wait)150 3868 y Fu(builtin)24 b(is)h(in)m(terruptible\).)39 b(When)24 b(Bash)g(receiv)m(es)j(a)d Ft(SIGINT)p Fu(,)h(it)g(breaks)f -(out)h(of)f(an)m(y)h(executing)h(lo)s(ops.)150 2667 y(In)31 +(out)h(of)f(an)m(y)h(executing)h(lo)s(ops.)150 3978 y(In)31 b(all)h(cases,)h(Bash)f(ignores)g Ft(SIGQUIT)p Fu(.)42 b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h(\(see)f(Chapter)f(7)h -([Job)g(Con)m(trol],)150 2776 y(page)f(113\),)h(Bash)f(ignores)g +([Job)g(Con)m(trol],)150 4087 y(page)f(116\),)h(Bash)f(ignores)g Ft(SIGTTIN)p Fu(,)d Ft(SIGTTOU)p Fu(,)h(and)h Ft(SIGTSTP)p -Fu(.)275 2916 y(Non-builtin)h(commands)g(started)g(b)m(y)g(Bash)h(ha)m +Fu(.)275 4220 y(Non-builtin)h(commands)g(started)g(b)m(y)g(Bash)h(ha)m (v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5 b(alues)31 -b(inherited)150 3026 y(b)m(y)37 b(the)h(shell)g(from)f(its)h(paren)m +b(inherited)150 4330 y(b)m(y)37 b(the)h(shell)g(from)f(its)h(paren)m (t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f(e\013ect,)k -(async)m(hronous)c(commands)150 3136 y(ignore)f Ft(SIGINT)e +(async)m(hronous)c(commands)150 4440 y(ignore)f 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 3245 y(result)27 +(handlers.)55 b(Commands)35 b(run)f(as)i(a)150 4549 y(result)27 b(of)h(command)f(substitution)h(ignore)g(the)g(k)m(eyb)s (oard-generated)g(job)g(con)m(trol)h(signals)f Ft(SIGTTIN)p -Fu(,)150 3355 y Ft(SIGTTOU)p Fu(,)h(and)g Ft(SIGTSTP)p -Fu(.)275 3495 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f +Fu(,)150 4659 y Ft(SIGTTOU)p Fu(,)h(and)g Ft(SIGTSTP)p +Fu(.)275 4792 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f (receipt)i(of)f(a)h Ft(SIGHUP)p Fu(.)42 b(Before)32 b(exiting,)h(an)e -(in)m(teractiv)m(e)j(shell)150 3604 y(resends)41 b(the)i +(in)m(teractiv)m(e)j(shell)150 4902 y(resends)41 b(the)i Ft(SIGHUP)e Fu(to)i(all)g(jobs,)i(running)c(or)h(stopp)s(ed.)76 b(Stopp)s(ed)41 b(jobs)h(are)h(sen)m(t)g Ft(SIGCONT)d -Fu(to)150 3714 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e +Fu(to)150 5011 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e Ft(SIGHUP)p Fu(.)47 b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)g(from) -g(sending)f(the)h Ft(SIGHUP)e Fu(signal)150 3824 y(to)i(a)g(particular) +g(sending)f(the)h Ft(SIGHUP)e Fu(signal)150 5121 y(to)i(a)g(particular) g(job,)g(it)g(should)f(b)s(e)g(remo)m(v)m(ed)h(from)g(the)f(jobs)g (table)i(with)e(the)h Ft(disown)e Fu(builtin)h(\(see)150 -3933 y(Section)c(7.2)g([Job)e(Con)m(trol)i(Builtins],)g(page)g(114\))h +5230 y(Section)c(7.2)g([Job)e(Con)m(trol)i(Builtins],)g(page)g(117\))h (or)e(mark)m(ed)g(to)g(not)g(receiv)m(e)i Ft(SIGHUP)c -Fu(using)i Ft(disown)150 4043 y(-h)p Fu(.)275 4183 y(If)38 -b(the)h Ft(huponexit)e Fu(shell)i(option)g(has)g(b)s(een)f(set)i(with)f -Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150 -4293 y(Builtin],)31 b(page)g(71\),)h(Bash)f(sends)e(a)i +Fu(using)i Ft(disown)150 5340 y(-h)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)275 299 +y(If)38 b(the)h Ft(huponexit)e Fu(shell)i(option)g(has)g(b)s(een)f(set) +i(with)f Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150 +408 y(Builtin],)31 b(page)g(71\),)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 4433 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g +e(shell)g(exits.)275 554 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g (command)f(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)h(for)e(whic) -m(h)h(a)g(trap)150 4542 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g +m(h)h(a)g(trap)150 663 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g (not)g(b)s(e)f(executed)i(un)m(til)f(the)g(command)f(completes.)55 -b(When)35 b(Bash)g(is)150 4652 y(w)m(aiting)j(for)f(an)g(async)m +b(When)35 b(Bash)g(is)150 773 y(w)m(aiting)j(for)f(an)g(async)m (hronous)g(command)g(via)h(the)f Ft(wait)f Fu(builtin,)i(the)g -(reception)g(of)f(a)g(signal)h(for)150 4761 y(whic)m(h)d(a)g(trap)g -(has)g(b)s(een)f(set)h(will)h(cause)f(the)g Ft(wait)f -Fu(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150 -4871 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h) -f(the)h(trap)f(is)g(executed.)275 5011 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 5121 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 5230 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 -5340 y(shell)23 b(and)g(the)h(command)f(are)g(in)g(the)h(same)f(pro)s +(reception)g(of)f(a)g(signal)h(for)150 882 y(whic)m(h)d(a)g(trap)g(has) +g(b)s(een)f(set)h(will)h(cause)f(the)g Ft(wait)f Fu(builtin)h(to)g +(return)f(immediately)i(with)f(an)g(exit)150 992 y(status)c(greater)g +(than)f(128,)i(immediately)g(after)f(whic)m(h)f(the)h(trap)f(is)g +(executed.)275 1137 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 1247 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 1356 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 +1466 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)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)150 299 -y(to)35 b(all)g(pro)s(cesses)f(in)g(that)g(pro)s(cess)g(group.)51 -b(See)35 b(Chapter)e(7)i([Job)f(Con)m(trol],)i(page)f(113,)h(for)e(a)h -(more)150 408 y(in-depth)30 b(discussion)f(of)i(pro)s(cess)f(groups.) -275 542 y(When)35 b(Bash)h(is)g(running)f(without)h(job)f(con)m(trol)i -(enabled)f(and)g(receiv)m(es)h Ft(SIGINT)e Fu(while)h(w)m(aiting)150 -651 y(for)g(a)h(foreground)f(command,)i(it)f(w)m(aits)g(un)m(til)g +Fu(')g(sends)g Ft(SIGINT)150 1576 y Fu(to)35 b(all)g(pro)s(cesses)f(in) +g(that)g(pro)s(cess)g(group.)51 b(See)35 b(Chapter)e(7)i([Job)f(Con)m +(trol],)i(page)f(116,)h(for)e(a)h(more)150 1685 y(in-depth)30 +b(discussion)f(of)i(pro)s(cess)f(groups.)275 1830 y(When)35 +b(Bash)h(is)g(running)f(without)h(job)f(con)m(trol)i(enabled)f(and)g +(receiv)m(es)h Ft(SIGINT)e Fu(while)h(w)m(aiting)150 +1940 y(for)g(a)h(foreground)f(command,)i(it)f(w)m(aits)g(un)m(til)g (that)g(foreground)f(command)g(terminates)h(and)f(then)150 -761 y(decides)31 b(what)f(to)h(do)f(ab)s(out)g(the)h -Ft(SIGINT)p Fu(:)199 894 y(1.)61 b(If)29 b(the)h(command)f(terminates)i -(due)d(to)j(the)e Ft(SIGINT)p Fu(,)g(Bash)g(concludes)h(that)g(the)g -(user)f(mean)m(t)h(to)330 1004 y(end)25 b(the)h(en)m(tire)h(script,)g +2050 y(decides)31 b(what)f(to)h(do)f(ab)s(out)g(the)h +Ft(SIGINT)p Fu(:)199 2195 y(1.)61 b(If)29 b(the)h(command)f(terminates) +i(due)d(to)j(the)e Ft(SIGINT)p Fu(,)g(Bash)g(concludes)h(that)g(the)g +(user)f(mean)m(t)h(to)330 2304 y(end)25 b(the)h(en)m(tire)h(script,)g (and)f(acts)h(on)e(the)i Ft(SIGINT)d Fu(\(e.g.,)k(b)m(y)e(running)f(a)h -Ft(SIGINT)e Fu(trap)i(or)g(exiting)330 1113 y(itself)7 -b(\);)199 1246 y(2.)61 b(If)39 b(the)g(pip)s(eline)g(do)s(es)g(not)h +Ft(SIGINT)e Fu(trap)i(or)g(exiting)330 2414 y(itself)7 +b(\);)199 2554 y(2.)61 b(If)39 b(the)g(pip)s(eline)g(do)s(es)g(not)h (terminate)g(due)f(to)h Ft(SIGINT)p Fu(,)g(the)g(program)f(handled)f -(the)i Ft(SIGINT)330 1356 y Fu(itself)35 b(and)e(did)h(not)g(treat)h +(the)i Ft(SIGINT)330 2663 y Fu(itself)35 b(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 1466 y Fu(as)41 b(a)g(fatal)g +(es)g(not)g(treat)i Ft(SIGINT)330 2773 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 -1575 y(program's)32 b(normal)g(op)s(eration)h(\(e.g.,)h +2883 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 1685 y(erately)41 b(discarded.)69 b(Ho)m(w)m(ev)m(er,)45 +(delib-)330 2992 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 1794 y(an)m(y)31 +Fu(,)h(as)f(it)h(do)s(es)e(with)330 3102 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 -1904 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)150 -2142 y Fs(3.8)68 b(Shell)45 b(Scripts)150 2302 y Fu(A)30 +3211 y(complete,)i(for)e(compatibilit)m(y)-8 b(.)150 +3468 y Fs(3.8)68 b(Shell)45 b(Scripts)150 3628 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 2411 y(non-option)c(argumen)m(t)h(when)e(in)m(v)m(oking)i +(\014rst)150 3737 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 2521 y(Section)39 -b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f(91\),)i(Bash)d(reads)g(and)f -(executes)i(commands)f(from)f(the)i(\014le,)150 2630 +Fu(option)g(is)g(supplied)f(\(see)150 3847 y(Section)39 +b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f(92\),)i(Bash)d(reads)g(and)f +(executes)i(commands)f(from)f(the)i(\014le,)150 3956 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s(eration)f (creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46 b(The)31 -b(shell)i(\014rst)e(searc)m(hes)150 2740 y(for)d(the)g(\014le)g(in)g +b(shell)i(\014rst)e(searc)m(hes)150 4066 y(for)d(the)g(\014le)g(in)g (the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e(the)i (directories)g(in)e Ft($PATH)g Fu(if)h(not)g(found)e(there.)275 -2873 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f +4211 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 2983 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j +(\014le,)150 4321 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 3092 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m +(remain-)150 4430 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 3202 y(parameters)31 b(are)f(unset.)275 -3335 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m +(the)f(p)s(ositional)150 4540 y(parameters)31 b(are)f(unset.)275 +4685 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 -3445 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h +4795 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 3554 y(creates)32 b(a)f(new)e(instance)i(of)g +(command,)h(it)150 4904 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 3688 y Ft(filename)46 b Fj(arguments)150 -3821 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390 -3954 y Ft(bash)47 b(filename)e Fj(arguments)150 4087 -y Fu(if)30 b Ft(filename)d Fu(is)j(an)f(executable)j(shell)e(script.)40 +(executing)390 5050 y Ft(filename)46 b Fj(arguments)150 +5195 y Fu(is)30 b(equiv)-5 b(alen)m(t)32 b(to)f(executing)390 +5340 y Ft(bash)47 b(filename)e Fj(arguments)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)150 299 +y(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 4197 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 4306 y(lo)s(cations)25 b(of)g(commands)e +(e\013ect)150 408 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 518 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 -4416 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(48\))h(are)e(retained)h -(b)m(y)f(the)h(c)m(hild.)275 4549 y(Most)36 b(v)m(ersions)g(of)g(Unix)f +628 y([Bourne)30 b(Shell)h(Builtins],)g(page)g(48\))h(are)e(retained)h +(b)m(y)f(the)h(c)m(hild.)275 762 y(Most)36 b(v)m(ersions)g(of)g(Unix)f (mak)m(e)h(this)g(a)g(part)f(of)h(the)g(op)s(erating)g(system's)f -(command)h(execution)150 4659 y(mec)m(hanism.)50 b(If)33 +(command)h(execution)150 872 y(mec)m(hanism.)50 b(If)33 b(the)g(\014rst)g(line)h(of)f(a)h(script)f(b)s(egins)g(with)g(the)g(t)m (w)m(o)i(c)m(haracters)g(`)p Ft(#!)p Fu(',)f(the)g(remainder)150 -4768 y(of)27 b(the)g(line)g(sp)s(eci\014es)g(an)g(in)m(terpreter)g(for) -g(the)g(program)g(and,)g(dep)s(ending)e(on)i(the)g(op)s(erating)h -(system,)150 4878 y(one)e(or)g(more)g(optional)h(argumen)m(ts)f(for)g +981 y(of)27 b(the)g(line)g(sp)s(eci\014es)g(an)g(in)m(terpreter)g(for)g +(the)g(program)g(and,)g(dep)s(ending)e(on)i(the)g(op)s(erating)h +(system,)150 1091 y(one)e(or)g(more)g(optional)h(argumen)m(ts)f(for)g (that)g(in)m(terpreter.)40 b(Th)m(us,)26 b(y)m(ou)g(can)g(sp)s(ecify)g -(Bash,)h Ft(awk)p Fu(,)f(P)m(erl,)150 4988 y(or)k(some)h(other)g(in)m +(Bash,)h Ft(awk)p Fu(,)f(P)m(erl,)150 1200 y(or)k(some)h(other)g(in)m (terpreter)g(and)e(write)i(the)f(rest)h(of)g(the)f(script)g(\014le)h -(in)f(that)h(language.)275 5121 y(The)k(argumen)m(ts)h(to)h(the)f(in)m +(in)f(that)h(language.)275 1335 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 5230 y(the)e(in)m(terpreter)g(name)g(on)g(the)g +(follo)m(wing)150 1445 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 5340 y(\014le,)k(follo)m(w)m(ed)g +e(the)g(name)g(of)g(the)g(script)150 1554 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)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)150 299 -y(in)m(terpreter)26 b(line)g(is)g(split)g(in)m(to)h(an)f(in)m +(script.)58 b(The)35 b(details)i(of)g(ho)m(w)f(the)150 +1664 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 408 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 518 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 628 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 737 y(will)31 -b(w)m(ork.)275 872 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 981 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 1091 -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 1200 y(in)h(another)g(directory:)40 +b(ary)25 b(across)i(systems.)150 1773 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 1883 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 1993 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 +2102 y(will)31 b(w)m(ork.)275 2237 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 2346 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 +2456 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 2565 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 @@ -11631,12 +11653,12 @@ b(Builtin)150 828 y(commands)f(are)h(necessary)g(to)g(implemen)m(t)g (other)g(c)m(hapters:)69 b(builtin)43 b(commands)h(whic)m(h)150 1412 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 1521 y(page)33 b(114\),)i(the)e(directory)g(stac)m(k)h +(Builtins],)150 1521 y(page)33 b(117\),)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 -(102\),)i(the)150 1631 y(command)23 b(history)h(\(see)g(Section)g(9.2)h -([Bash)f(History)g(Builtins],)h(page)g(152\),)h(and)d(the)h +(104\),)i(the)150 1631 y(command)23 b(history)h(\(see)g(Section)g(9.2)h +([Bash)f(History)g(Builtins],)h(page)g(155\),)h(and)d(the)h (programmable)150 1740 y(completion)32 b(facilities)g(\(see)g(Section)f -(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(146\).)275 +(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(149\).)275 1868 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 1996 y(Unless)20 b(otherwise)h(noted,)h(eac)m(h)g(builtin)e(command)g(do)s(cumen)m(ted)g @@ -11707,7 +11729,7 @@ Fr(n)p Fu(th)630 677 y(enclosing)c(lo)s(op)f(is)h(exited.)70 b Fr(n)40 b Fu(m)m(ust)g(b)s(e)f(greater)j(than)d(or)i(equal)f(to)h(1.) 70 b(The)40 b(return)630 787 y(status)31 b(is)f(zero)h(unless)f Fr(n)g Fu(is)g(not)h(greater)g(than)g(or)f(equal)h(to)g(1.)150 -946 y Ft(cd)870 1081 y(cd)47 b([-L|[-P)f([-e]])g([-@])h([)p +946 y Ft(cd)870 1081 y(cd)47 b([-L|[-P)f([-e]]])g([-@])h([)p Fj(directory)p Ft(])630 1215 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 1325 @@ -12024,7 +12046,7 @@ eop end %%Page: 53 59 TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)41 b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y(Expressions],)39 -b(page)g(96.)64 b Ft(test)37 b Fu(do)s(es)g(not)h(accept)i(an)m(y)e +b(page)g(97.)64 b Ft(test)37 b Fu(do)s(es)g(not)h(accept)i(an)m(y)e (options,)i(nor)e(do)s(es)f(it)h(accept)630 408 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f Ft(--)g Fu(as)h(signifying)f(the)h (end)f(of)g(options.)630 550 y(When)g(the)h Ft([)f Fu(form)g(is)g @@ -12057,7 +12079,7 @@ Fu(',)g(the)g(expression)g(is)g(true)f(if)h(and)f(only)h(if)g(the)1110 3176 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 3285 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f([Bash)g -(Conditional)g(Expres-)1110 3395 y(sions],)34 b(page)f(96\),)i(the)e +(Conditional)g(Expres-)1110 3395 y(sions],)34 b(page)f(97\),)i(the)e (expression)f(is)h(true)g(if)g(the)g(unary)e(test)j(is)f(true.)47 b(If)1110 3504 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 @@ -12065,7 +12087,7 @@ b(alid)34 b(unary)e(op)s(erator,)i(the)g(expression)f(is)1110 (wing)i(conditions)f(are)f(applied)h(in)f(the)g(order)g(listed.)1159 4039 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 4148 y(tors)c(\(see)h -(Section)g(6.4)g([Bash)g(Conditional)f(Expressions],)h(page)f(96\),) +(Section)g(6.4)g([Bash)g(Conditional)f(Expressions],)h(page)f(97\),) 1290 4258 y(the)d(result)g(of)f(the)h(expression)g(is)g(the)f(result)h (of)g(the)g(binary)f(test)h(using)1290 4367 y(the)35 b(\014rst)e(and)h(third)g(argumen)m(ts)h(as)f(op)s(erands.)52 @@ -12109,8 +12131,8 @@ y(using)30 b(ASCI)s(I)f(ordering.)150 2162 y Ft(times)870 2296 y(times)630 2430 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 2539 y(return)29 b(status)i(is)f(zero.)150 -2698 y Ft(trap)870 2832 y(trap)47 b([-lp])f([)p Fj(action)p -Ft(])g([)p Fj(sigspec)f Ft(...)o(])630 2966 y Fu(The)40 +2698 y Ft(trap)870 2832 y(trap)47 b([-Plp])f([)p Fj(action)p +Ft(])f([)p Fj(sigspec)h Ft(...)o(])630 2966 y Fu(The)40 b Fr(action)i Fu(is)e(a)h(command)f(that)h(is)f(read)h(and)e(executed)j (when)d(the)i(shell)f(receiv)m(es)630 3075 y(signal)30 b Fr(sigsp)s(ec)p Fu(.)40 b(If)29 b Fr(action)h Fu(is)f(absen)m(t)h @@ -12133,1606 +12155,1647 @@ Fu(displa)m(ys)i(the)f(trap)h(commands)f(asso)s(ciated)h(with)f(eac)m (h)i Fr(sigsp)s(ec)p Fu(,)h(or,)630 3976 y(if)32 b(no)g Fr(sigsp)s(ec)6 b Fu(s)32 b(are)h(supplied,)e(for)h(all)h(trapp)s(ed)e (signals,)j(as)e(a)h(set)g(of)f Ft(trap)f Fu(commands)630 -4086 y(that)g(can)g(b)s(e)e(reused)h(as)h(shell)f(input)g(to)h(restore) -g(the)f(curren)m(t)g(signal)h(disp)s(ositions.)630 4220 -y(The)21 b Ft(-l)f Fu(option)i(causes)g Ft(trap)e Fu(to)i(prin)m(t)f(a) -g(list)h(of)g(signal)g(names)f(and)g(their)g(corresp)s(onding)630 -4329 y(n)m(um)m(b)s(ers.)37 b(Eac)m(h)24 b Fr(sigsp)s(ec)30 +4086 y(that)44 b(can)g(b)s(e)f(reused)g(as)g(shell)h(input)f(to)h +(restore)g(the)g(curren)m(t)f(signal)h(disp)s(ositions.)630 +4195 y(The)31 b Ft(-P)g Fu(option)g(b)s(eha)m(v)m(es)h(similarly)-8 +b(,)33 b(but)e(displa)m(ys)g(only)g(the)h(actions)g(asso)s(ciated)h +(with)630 4305 y(eac)m(h)43 b Fr(sigsp)s(ec)k Fu(argumen)m(t.)74 +b Ft(-P)41 b Fu(requires)g(at)h(least)h(one)f Fr(sigsp)s(ec)47 +b Fu(argumen)m(t.)75 b(The)41 b Ft(-P)630 4415 y Fu(or)34 +b Ft(-p)f Fu(options)h(to)g Ft(trap)e Fu(ma)m(y)j(b)s(e)e(used)g(in)g +(a)h(subshell)f(en)m(vironmen)m(t)h(\(e.g.,)i(command)630 +4524 y(substitution\))k(and,)j(as)d(long)h(as)g(they)g(are)f(used)g(b)s +(efore)g Ft(trap)f Fu(is)h(used)g(to)h(c)m(hange)h(a)630 +4634 y(signal's)31 b(handling,)f(will)h(displa)m(y)f(the)h(state)h(of)e +(its)h(paren)m(t's)g(traps.)630 4768 y(The)21 b Ft(-l)f +Fu(option)i(causes)g Ft(trap)e Fu(to)i(prin)m(t)f(a)g(list)h(of)g +(signal)g(names)f(and)g(their)g(corresp)s(onding)630 +4877 y(n)m(um)m(b)s(ers.)37 b(Eac)m(h)24 b Fr(sigsp)s(ec)30 b Fu(is)23 b(either)i(a)f(signal)g(name)g(or)f(a)h(signal)h(n)m(um)m(b) -s(er.)37 b(Signal)24 b(names)630 4439 y(are)31 b(case)g(insensitiv)m(e) +s(er.)37 b(Signal)24 b(names)630 4987 y(are)31 b(case)g(insensitiv)m(e) h(and)d(the)i Ft(SIG)e Fu(pre\014x)h(is)g(optional.)630 -4573 y(If)f(a)g Fr(sigsp)s(ec)35 b Fu(is)30 b Ft(0)f +5121 y(If)f(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 -4682 y Ft(DEBUG)p Fu(,)g Fr(action)g Fu(is)g(executed)h(b)s(efore)e(ev) +5230 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 -4792 y Fu(command,)29 b Ft(select)d Fu(command,)j(\(\()g(arithmetic)h -(command,)e([[)h(conditional)h(command,)630 4902 y(arithmetic)44 +5340 y Fu(command,)29 b Ft(select)d Fu(command,)j(\(\()g(arithmetic)h +(command,)e([[)h(conditional)h(command,)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(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 5011 y(function.)d(Refer)31 +(executes)i(in)f(a)g(shell)630 408 y(function.)d(Refer)31 b(to)g(the)f(description)h(of)f(the)h Ft(extdebug)d Fu(option)j(to)g -(the)f Ft(shopt)f Fu(builtin)630 5121 y(\(see)35 b(Section)g(4.3.2)g +(the)f Ft(shopt)f Fu(builtin)630 518 y(\(see)35 b(Section)g(4.3.2)g ([The)f(Shopt)f(Builtin],)j(page)f(71\))g(for)f(details)h(of)f(its)g -(e\013ect)i(on)e(the)630 5230 y Ft(DEBUG)25 b Fu(trap.)39 +(e\013ect)i(on)e(the)630 628 y Ft(DEBUG)25 b Fu(trap.)39 b(If)26 b(a)g Fr(sigsp)s(ec)32 b Fu(is)26 b Ft(RETURN)p Fu(,)g Fr(action)i Fu(is)e(executed)h(eac)m(h)g(time)g(a)g(shell)f -(function)630 5340 y(or)k(a)h(script)f(executed)i(with)e(the)g -Ft(.)g Fu(or)h Ft(source)d Fu(builtins)i(\014nishes)f(executing.)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(If)25 -b(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 408 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 -518 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 628 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 -737 y Fu(or)h Ft(while)f Fu(k)m(eyw)m(ord,)j(part)e(of)g(the)g(test)h +(function)630 737 y(or)k(a)h(script)f(executed)i(with)e(the)g +Ft(.)g Fu(or)h Ft(source)d Fu(builtins)i(\014nishes)f(executing.)630 +864 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 973 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 1083 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 1192 +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 1302 +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 847 y(of)37 b(a)g(command)f(executed)i(in)e(a)h +(ords,)h(part)630 1412 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 956 y(\014nal)f Ft(&&)f Fu(or)h Ft(||)p +(wing)h(the)630 1521 y(\014nal)f Ft(&&)f Fu(or)h Ft(||)p Fu(,)i(an)m(y)e(command)g(in)g(a)g(pip)s(eline)g(but)f(the)i(last,)i -(or)d(if)g(the)g(command's)630 1066 y(return)31 b(status)i(is)f(b)s +(or)d(if)g(the)g(command's)630 1631 y(return)31 b(status)i(is)f(b)s (eing)f(in)m(v)m(erted)i(using)f Ft(!)p Fu(.)46 b(These)32 -b(are)g(the)h(same)f(conditions)h(ob)s(ey)m(ed)630 1176 +b(are)g(the)h(same)f(conditions)h(ob)s(ey)m(ed)630 1740 y(b)m(y)d(the)h Ft(errexit)d Fu(\()p Ft(-e)p Fu(\))j(option.)630 -1309 y(Signals)23 b(ignored)h(up)s(on)e(en)m(try)h(to)h(a)g(non-in)m +1867 y(Signals)23 b(ignored)h(up)s(on)e(en)m(try)h(to)h(a)g(non-in)m (teractiv)m(e)i(shell)d(cannot)h(b)s(e)f(trapp)s(ed)f(or)h(reset.)630 -1418 y(In)m(teractiv)m(e)i(shells)d(p)s(ermit)f(trapping)h(signals)h +1976 y(In)m(teractiv)m(e)i(shells)d(p)s(ermit)f(trapping)h(signals)h (ignored)f(on)g(en)m(try)-8 b(.)39 b(T)-8 b(rapp)s(ed)21 -b(signals)h(that)630 1528 y(are)30 b(not)g(b)s(eing)f(ignored)h(are)g +b(signals)h(that)630 2086 y(are)30 b(not)g(b)s(eing)f(ignored)h(are)g (reset)g(to)g(their)g(original)g(v)-5 b(alues)30 b(in)g(a)g(subshell)e -(or)i(subshell)630 1638 y(en)m(vironmen)m(t)h(when)e(one)i(is)f -(created.)630 1771 y(The)g(return)f(status)i(is)f(zero)h(unless)f(a)h +(or)i(subshell)630 2195 y(en)m(vironmen)m(t)h(when)e(one)i(is)f +(created.)630 2322 y(The)g(return)f(status)i(is)f(zero)h(unless)f(a)h Fr(sigsp)s(ec)36 b Fu(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5 -b(alid)31 b(signal.)150 1928 y Ft(umask)870 2061 y(umask)46 -b([-p])h([-S])g([)p Fj(mode)p Ft(])630 2194 y Fu(Set)30 +b(alid)31 b(signal.)150 2465 y Ft(umask)870 2591 y(umask)46 +b([-p])h([-S])g([)p Fj(mode)p Ft(])630 2718 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 2304 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s +b(with)g(a)h(digit,)630 2827 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 2413 y(mask)i(similar)g(to)g(that)h +(a)h(sym)m(b)s(olic)f(mo)s(de)630 2937 y(mask)i(similar)g(to)g(that)h (accepted)g(b)m(y)f(the)g Ft(chmod)e Fu(command.)40 b(If)28 -b Fr(mo)s(de)34 b Fu(is)28 b(omitted,)j(the)630 2523 +b Fr(mo)s(de)34 b Fu(is)28 b(omitted,)j(the)630 3047 y(curren)m(t)39 b(v)-5 b(alue)40 b(of)f(the)g(mask)g(is)h(prin)m(ted.) 66 b(If)39 b(the)g Ft(-S)g Fu(option)g(is)h(supplied)d(without)j(a)630 -2632 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f +3156 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f (in)g(a)g(sym)m(b)s(olic)h(format.)47 b(If)32 b(the)g -Ft(-p)g Fu(option)h(is)630 2742 y(supplied,)f(and)f Fr(mo)s(de)37 +Ft(-p)g Fu(option)h(is)630 3266 y(supplied,)f(and)f Fr(mo)s(de)37 b Fu(is)32 b(omitted,)i(the)f(output)f(is)g(in)g(a)g(form)g(that)h(ma)m -(y)g(b)s(e)e(reused)h(as)630 2852 y(input.)62 b(The)38 +(y)g(b)s(e)e(reused)h(as)630 3375 y(input.)62 b(The)38 b(return)f(status)h(is)g(zero)g(if)g(the)g(mo)s(de)g(is)g(successfully) -g(c)m(hanged)g(or)g(if)g(no)630 2961 y Fr(mo)s(de)d Fu(argumen)m(t)c -(is)f(supplied,)g(and)f(non-zero)i(otherwise.)630 3094 +g(c)m(hanged)g(or)g(if)g(no)630 3485 y Fr(mo)s(de)d Fu(argumen)m(t)c +(is)f(supplied,)g(and)f(non-zero)i(otherwise.)630 3611 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 -3204 y(the)f(umask)g(is)h(subtracted)f(from)f Ft(7)p +3721 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 3314 y(of)d Ft(755)p Fu(.)150 3470 y -Ft(unset)870 3604 y(unset)46 b([-fnv])g([)p Fj(name)p -Ft(])630 3737 y Fu(Remo)m(v)m(e)36 b(eac)m(h)f(v)-5 b(ariable)35 +(ermissions)630 3830 y(of)d Ft(755)p Fu(.)150 3974 y +Ft(unset)870 4100 y(unset)46 b([-fnv])g([)p Fj(name)p +Ft(])630 4226 y Fu(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 3846 +Fu(option)h(is)g(giv)m(en,)j(eac)m(h)e Fr(name)630 4336 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 3956 y(the)37 +Ft(-f)g Fu(option)g(is)h(giv)m(en,)630 4446 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 -4066 y(the)34 b Ft(-n)e Fu(option)i(is)f(supplied,)h(and)e +4555 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 4175 y Fr(name)42 b Fu(will)37 +Ft(nameref)d Fu(attribute,)630 4665 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 -4285 y(the)h Ft(-f)g Fu(option)g(is)h(supplied.)65 b(If)39 +4774 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 4394 y(v)-5 b(ariable;)45 b(if)39 +Fu(refers)39 b(to)h(a)630 4884 y(v)-5 b(ariable;)45 b(if)39 b(there)g(is)g(no)g(v)-5 b(ariable)40 b(b)m(y)f(that)h(name,)h(a)f -(function)f(with)g(that)g(name,)j(if)630 4504 y(an)m(y)-8 +(function)f(with)g(that)g(name,)j(if)630 4994 y(an)m(y)-8 b(,)34 b(is)e(unset.)46 b(Readonly)33 b(v)-5 b(ariables)33 b(and)f(functions)g(ma)m(y)h(not)f(b)s(e)g(unset.)46 -b(Some)33 b(shell)630 4614 y(v)-5 b(ariables)29 b(lose)h(their)e(sp)s +b(Some)33 b(shell)630 5103 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 4723 y(the)35 b(description)h(of)f(the)g +m(vior)h(is)g(noted)f(in)630 5213 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 4833 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m -(y)g(not)f(b)s(e)g(unset.)150 5071 y Fs(4.2)68 b(Bash)45 -b(Builtin)g(Commands)150 5230 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 5340 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.)p eop end +(zero)h(unless)f(a)630 5322 y Fr(name)h Fu(is)30 b(readonly)g(or)h(ma)m +(y)g(not)f(b)s(e)g(unset.)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)150 299 y Ft(alias)870 -435 y(alias)46 b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p -Ft(])d(...)o(])630 571 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 680 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 790 y(are)j(supplied,)e(an)i(alias)g(is)f +b(Shell)30 b(Builtin)h(Commands)2069 b(56)150 299 y Fs(4.2)68 +b(Bash)45 b(Builtin)g(Commands)150 458 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 568 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 717 y Ft(alias)870 847 y(alias)46 +b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p Ft(])d(...)o(])630 +976 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 1086 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 1196 y(are)j(supplied,)e(an)i(alias)g(is)f (de\014ned)f(for)h(eac)m(h)h Fr(name)33 b Fu(whose)27 b Fr(v)-5 b(alue)33 b Fu(is)27 b(giv)m(en.)41 b(If)26 -b(no)h Fr(v)-5 b(alue)630 899 y Fu(is)37 b(giv)m(en,)j(the)d(name)g +b(no)h Fr(v)-5 b(alue)630 1305 y Fu(is)37 b(giv)m(en,)j(the)d(name)g (and)g(v)-5 b(alue)37 b(of)h(the)f(alias)h(is)f(prin)m(ted.)61 -b(Aliases)38 b(are)f(describ)s(ed)f(in)630 1009 y(Section)31 -b(6.6)h([Aliases],)g(page)f(100.)150 1171 y Ft(bind)870 -1307 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lpsvPSVX])870 -1417 y(bind)i([-m)g Fj(keymap)p Ft(])e([-q)i Fj(function)p +b(Aliases)38 b(are)f(describ)s(ed)f(in)630 1415 y(Section)31 +b(6.6)h([Aliases],)g(page)f(101.)150 1564 y Ft(bind)870 +1694 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lpsvPSVX])870 +1803 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 -1526 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870 -1636 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq:shell-command) -870 1745 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e Fj(keyseq:function-name) -870 1855 y Ft(bind)i([-m)g Fj(keymap)p Ft(])e Fj -(keyseq:readline-command)870 1965 y Ft(bind)i Fj(readline-command-line) -630 2101 y Fu(Displa)m(y)22 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g -(8)g([Command)f(Line)h(Editing],)j(page)e(117\))g(k)m(ey)630 -2210 y(and)36 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g -(to)h(a)f(Readline)g(function)f(or)h(macro,)630 2320 +1913 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870 +2022 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq:shell-command) +870 2132 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e Fj(keyseq:function-name) +870 2242 y Ft(bind)i([-m)g Fj(keymap)p Ft(])e Fj +(keyseq:readline-command)870 2351 y Ft(bind)i Fj(readline-command-line) +630 2481 y Fu(Displa)m(y)22 b(curren)m(t)f(Readline)h(\(see)f(Chapter)g +(8)g([Command)f(Line)h(Editing],)j(page)e(120\))g(k)m(ey)630 +2590 y(and)36 b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g +(to)h(a)f(Readline)g(function)f(or)h(macro,)630 2700 y(or)44 b(set)h(a)g(Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45 b(non-option)g(argumen)m(t)f(is)g(a)h(command)f(as)g(it)630 -2429 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g(initialization)i +2809 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g(initialization)i (\014le)d(\(see)h(Section)g(8.3)g([Readline)g(Init)630 -2539 y(File],)c(page)d(120\),)j(but)c(eac)m(h)h(binding)f(or)g(command) -h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630 2648 +2919 y(File],)c(page)d(123\),)j(but)c(eac)m(h)h(binding)f(or)g(command) +h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630 3029 y(argumen)m(t;)31 b(e.g.,)h(`)p Ft("\\C-x\\C-r":re-read-init-f)o(ile)p -Fu('.)630 2784 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m -(wing)h(meanings:)630 2947 y Ft(-m)e Fj(keymap)66 b Fu(Use)54 +Fu('.)630 3158 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m +(wing)h(meanings:)630 3308 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 3056 y(bindings.)46 b(Acceptable)34 +m(y)f(the)g(subsequen)m(t)1110 3417 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 3166 y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p +Fu(,)1110 3527 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 3275 y Ft(vi-insert)p Fu(.)81 b Ft(vi)44 +Fu(,)f(and)1110 3636 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 3385 y(synon)m(ym\);)30 +Fu(\()p Ft(vi-move)h Fu(is)i(also)h(a)1110 3746 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 3547 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g -(Readline)g(functions.)630 3709 y Ft(-p)384 b Fu(Displa)m(y)34 +Fu(.)630 3895 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g +(Readline)g(functions.)630 4045 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 3819 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g -(in)g(a)h(Readline)g(initialization)i(\014le.)630 3981 +(a)m(y)f(that)1110 4154 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g +(in)g(a)h(Readline)g(initialization)i(\014le.)630 4304 y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f(names)g -(and)g(bindings.)630 4143 y Ft(-v)384 b Fu(Displa)m(y)25 +(and)g(bindings.)630 4453 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 4253 +b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 4563 y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g -(initialization)j(\014le.)630 4415 y Ft(-V)384 b Fu(List)31 +(initialization)j(\014le.)630 4712 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 4577 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g +b(alues.)630 4862 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 -4687 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g -(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 4796 -y(Readline)d(initialization)i(\014le.)630 4959 y Ft(-S)384 +4971 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g +(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 5081 +y(Readline)d(initialization)i(\014le.)630 5230 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 5068 y(they)31 b(output.)630 -5230 y Ft(-f)f Fj(filename)1110 5340 y Fu(Read)h(k)m(ey)g(bindings)e -(from)h Fr(\014lename)p Fu(.)p eop end +(macros)g(and)f(the)g(strings)1110 5340 y(they)31 b(output.)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(-q)30 -b Fj(function)1110 408 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in) -m(v)m(ok)m(e)h(the)f(named)f Fr(function)p Fu(.)630 564 -y Ft(-u)g Fj(function)1110 673 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s -(ound)e(to)i(the)f(named)g Fr(function)p Fu(.)630 829 -y Ft(-r)g 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 984 y Ft(-x)g -Fj(keyseq:shell-command)1110 1093 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 1203 y(When)46 b Fr(shell-command)k -Fu(is)c(executed,)51 b(the)46 b(shell)g(sets)g(the)g -Ft(READLINE_)1110 1313 y(LINE)37 b Fu(v)-5 b(ariable)38 -b(to)g(the)g(con)m(ten)m(ts)i(of)e(the)g(Readline)g(line)g(bu\013er)f -(and)g(the)1110 1422 y Ft(READLINE_POINT)d Fu(and)j Ft(READLINE_MARK)d -Fu(v)-5 b(ariables)39 b(to)f(the)g(curren)m(t)g(lo-)1110 -1532 y(cation)46 b(of)f(the)g(insertion)g(p)s(oin)m(t)f(and)g(the)h(sa) -m(v)m(ed)h(insertion)f(p)s(oin)m(t)f(\(the)1110 1641 -y Fr(mark)6 b Fu(\),)38 b(resp)s(ectiv)m(ely)-8 b(.)62 -b(The)36 b(shell)h(assigns)g(an)m(y)g(n)m(umeric)g(argumen)m(t)g(the) -1110 1751 y(user)43 b(supplied)g(to)h(the)g Ft(READLINE_ARGUMENT)39 -b Fu(v)-5 b(ariable.)82 b(If)44 b(there)g(w)m(as)1110 -1861 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 -1970 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 -2080 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 -2189 y(state.)630 2345 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 2454 y(commands)j(in)g(a)h(format)g(that)f(can)h(b)s(e)f -(reused)f(as)i(input.)630 2609 y(The)26 b(return)f(status)i(is)f(zero)i -(unless)d(an)i(in)m(v)-5 b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f -(error)g(o)s(ccurs.)150 2765 y Ft(builtin)870 2897 y(builtin)46 -b([)p Fj(shell-builtin)e Ft([)p Fj(args)p Ft(]])630 3029 -y Fu(Run)35 b(a)i(shell)f(builtin,)i(passing)e(it)h Fr(args)p -Fu(,)h(and)e(return)f(its)i(exit)g(status.)59 b(This)35 -b(is)i(useful)630 3139 y(when)29 b(de\014ning)h(a)g(shell)h(function)f -(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g(retaining)630 -3249 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g(within)g(the)h -(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630 -3358 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f -(builtin)g(command.)150 3513 y Ft(caller)870 3646 y(caller)46 -b([)p Fj(expr)p Ft(])630 3778 y Fu(Returns)34 b(the)g(con)m(text)j(of)e +b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y Ft(-f)30 +b Fj(filename)1110 408 y Fu(Read)h(k)m(ey)g(bindings)e(from)h +Fr(\014lename)p Fu(.)630 571 y Ft(-q)g Fj(function)1110 +680 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h(the) +f(named)f Fr(function)p Fu(.)630 842 y Ft(-u)g Fj(function)1110 +952 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i(the)f(named)g +Fr(function)p Fu(.)630 1114 y Ft(-r)g 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 1276 y Ft(-x)g Fj(keyseq:shell-command)1110 +1386 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 +1496 y(When)46 b Fr(shell-command)k Fu(is)c(executed,)51 +b(the)46 b(shell)g(sets)g(the)g Ft(READLINE_)1110 1605 +y(LINE)37 b Fu(v)-5 b(ariable)38 b(to)g(the)g(con)m(ten)m(ts)i(of)e +(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 1715 +y Ft(READLINE_POINT)d Fu(and)j Ft(READLINE_MARK)d Fu(v)-5 +b(ariables)39 b(to)f(the)g(curren)m(t)g(lo-)1110 1824 +y(cation)46 b(of)f(the)g(insertion)g(p)s(oin)m(t)f(and)g(the)h(sa)m(v)m +(ed)h(insertion)f(p)s(oin)m(t)f(\(the)1110 1934 y Fr(mark)6 +b Fu(\),)38 b(resp)s(ectiv)m(ely)-8 b(.)62 b(The)36 b(shell)h(assigns)g +(an)m(y)g(n)m(umeric)g(argumen)m(t)g(the)1110 2044 y(user)43 +b(supplied)g(to)h(the)g Ft(READLINE_ARGUMENT)39 b Fu(v)-5 +b(ariable.)82 b(If)44 b(there)g(w)m(as)1110 2153 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 2263 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 2372 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 2482 y(state.)630 2644 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 2754 y(commands)j(in)g(a)h +(format)g(that)f(can)h(b)s(e)f(reused)f(as)i(input.)630 +2916 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i(in)m(v)-5 +b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s(ccurs.)150 +3078 y Ft(builtin)870 3214 y(builtin)46 b([)p Fj(shell-builtin)e +Ft([)p Fj(args)p Ft(]])630 3350 y Fu(Run)35 b(a)i(shell)f(builtin,)i +(passing)e(it)h Fr(args)p Fu(,)h(and)e(return)f(its)i(exit)g(status.)59 +b(This)35 b(is)i(useful)630 3459 y(when)29 b(de\014ning)h(a)g(shell)h +(function)f(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g +(retaining)630 3569 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g +(within)g(the)h(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630 +3679 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f +(builtin)g(command.)150 3841 y Ft(caller)870 3977 y(caller)46 +b([)p Fj(expr)p Ft(])630 4113 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 3888 y(executed)c(with)f(the)h Ft(.)f -Fu(or)g Ft(source)f Fu(builtins\).)630 4020 y(Without)45 +(a)g(script)630 4222 y(executed)c(with)f(the)h Ft(.)f +Fu(or)g Ft(source)f Fu(builtins\).)630 4358 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 4130 +m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 4468 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 -4240 y Fu(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d +4577 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 -4349 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g +4687 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 -4459 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m +4796 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 -4591 y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g +4932 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 4701 y Fu(do)s(es)h(not)h(corresp)s(ond)e(to)i(a)g(v)-5 +Fr(expr)630 5042 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 -4856 y Ft(command)870 4988 y(command)46 b([-pVv])g Fj(command)g -Ft([)p Fj(arguments)f Ft(...)o(])630 5121 y Fu(Runs)32 +5204 y Ft(command)870 5340 y(command)46 b([-pVv])g Fj(command)g +Ft([)p Fj(arguments)f Ft(...)o(])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)630 299 y(Runs)32 b Fr(command)k Fu(with)d Fr(argumen)m(ts)k Fu(ignoring)c(an)m(y)g -(shell)h(function)e(named)h Fr(command)p Fu(.)630 5230 +(shell)h(function)e(named)h Fr(command)p Fu(.)630 408 y(Only)39 b(shell)i(builtin)e(commands)h(or)g(commands)f(found)g(b)m(y) -h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 5340 y(executed.)59 +h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 518 y(executed.)59 b(If)36 b(there)h(is)f(a)h(shell)f(function)g(named)g Ft(ls)p Fu(,)h(running)e(`)p Ft(command)29 b(ls)p Fu(')35 -b(within)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)630 299 y(the)31 -b(function)f(will)h(execute)g(the)g(external)g(command)g -Ft(ls)f Fu(instead)g(of)h(calling)h(the)f(func-)630 408 -y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b Ft(-p)h +b(within)630 628 y(the)c(function)f(will)h(execute)g(the)g(external)g +(command)g Ft(ls)f Fu(instead)g(of)h(calling)h(the)f(func-)630 +737 y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b Ft(-p)h Fu(option)g(means)g(to)h(use)f(a)g(default)h(v)-5 b(alue)35 -b(for)g Ft(PATH)f Fu(that)i(is)630 518 y(guaran)m(teed)f(to)f(\014nd)e +b(for)g Ft(PATH)f Fu(that)i(is)630 847 y(guaran)m(teed)f(to)f(\014nd)e (all)j(of)f(the)g(standard)f(utilities.)52 b(The)33 b(return)g(status)h -(in)f(this)h(case)630 628 y(is)29 b(127)g(if)g Fr(command)j +(in)f(this)h(case)630 956 y(is)29 b(127)g(if)g Fr(command)j Fu(cannot)d(b)s(e)e(found)h(or)g(an)g(error)h(o)s(ccurred,)f(and)g(the) -h(exit)g(status)g(of)630 737 y Fr(command)34 b Fu(otherwise.)630 -870 y(If)e(either)h(the)f Ft(-V)g Fu(or)g Ft(-v)g Fu(option)h(is)f +h(exit)g(status)g(of)630 1066 y Fr(command)34 b Fu(otherwise.)630 +1201 y(If)e(either)h(the)f Ft(-V)g Fu(or)g Ft(-v)g Fu(option)h(is)f (supplied,)g(a)h(description)f(of)h Fr(command)j Fu(is)c(prin)m(ted.) -630 979 y(The)f Ft(-v)h Fu(option)g(causes)g(a)g(single)h(w)m(ord)f +630 1311 y(The)f Ft(-v)h Fu(option)g(causes)g(a)g(single)h(w)m(ord)f (indicating)g(the)g(command)g(or)g(\014le)g(name)g(used)630 -1089 y(to)40 b(in)m(v)m(ok)m(e)h Fr(command)h Fu(to)e(b)s(e)e(displa)m +1421 y(to)40 b(in)m(v)m(ok)m(e)h Fr(command)h Fu(to)e(b)s(e)e(displa)m (y)m(ed;)44 b(the)39 b Ft(-V)f Fu(option)i(pro)s(duces)d(a)j(more)f(v)m -(erb)s(ose)630 1199 y(description.)61 b(In)36 b(this)h(case,)j(the)e +(erb)s(ose)630 1530 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 1308 y(non-zero)31 b(if)f(not.)150 1464 y Ft(declare)870 -1597 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p -Ft([=)p Fj(value)p Ft(])d(...)o(])630 1729 y Fu(Declare)29 +630 1640 y(non-zero)31 b(if)f(not.)150 1801 y Ft(declare)870 +1936 y(declare)46 b([-aAfFgiIlnrtux])d([-p])k([)p Fj(name)p +Ft([=)p Fj(value)p Ft(])d(...)o(])630 2072 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 1839 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31 -b(instead.)630 1972 y(The)k Ft(-p)f Fu(option)i(will)g(displa)m(y)f +(y)630 2181 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31 +b(instead.)630 2317 y(The)k 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 2081 y Fu(is)i(used)g(with)g +Fr(name)p Fu(.)55 b(When)36 b Ft(-p)630 2426 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 2191 y(ignored.)630 -2323 y(When)g Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k +Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 2536 y(ignored.)630 +2671 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 -2433 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5 +2781 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 2543 y(tional)k(options.)52 b(If)34 +(the)g(addi-)630 2890 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 2652 y(the)e(attributes)h +Fu(,)g Ft(declare)e Fu(will)j(displa)m(y)630 3000 y(the)e(attributes)h (and)e(v)-5 b(alues)33 b(of)g(all)h(shell)f(v)-5 b(ariables.)50 b(The)32 b Ft(-f)g Fu(option)i(will)f(restrict)h(the)630 -2762 y(displa)m(y)d(to)g(shell)f(functions.)630 2894 +3110 y(displa)m(y)d(to)g(shell)f(functions.)630 3245 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 -3004 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40 +3354 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 3114 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f +630 3464 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f (Builtin],)k(page)e(71\),)i(the)d(source)h(\014le)f(name)h(and)630 -3223 y(line)31 b(n)m(um)m(b)s(er)e(where)h(eac)m(h)h +3574 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 3356 +(ell.)41 b Ft(-F)30 b Fu(implies)h Ft(-f)p Fu(.)630 3709 y(The)36 b Ft(-g)g Fu(option)h(forces)g(v)-5 b(ariables)37 b(to)g(b)s(e)f(created)i(or)e(mo)s(di\014ed)g(at)h(the)g(global)h(scop) -s(e,)630 3465 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f +s(e,)630 3819 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f (a)g(shell)h(function.)61 b(It)37 b(is)g(ignored)h(in)f(all)h(other)630 -3575 y(cases.)630 3708 y(The)50 b Ft(-I)h Fu(option)g(causes)h(lo)s +3928 y(cases.)630 4064 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 3817 y Ft(nameref)43 b Fu(attribute\))j(and)f(v)-5 +i(the)630 4173 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 3927 y Fu(at)40 b(a)f(surrounding)d +b(with)f(the)g(same)h Fr(name)630 4283 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 -4036 y(initially)32 b(unset.)630 4169 y(The)27 b(follo)m(wing)h +4392 y(initially)32 b(unset.)630 4528 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 4279 y(i\014ed)j(attributes)h +b(ariables)28 b(with)f(the)g(sp)s(ec-)630 4637 y(i\014ed)j(attributes)h (or)f(to)h(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630 -4434 y Ft(-a)384 b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34 +4798 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 4544 y(page)31 b(100\).)630 4700 y +([Arra)m(ys],)1110 4908 y(page)31 b(101\).)630 5069 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 4809 y(page)31 b(100\).)630 4965 y Ft(-f)384 -b Fu(Use)31 b(function)f(names)g(only)-8 b(.)630 5121 -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 5230 y(\(see)29 b(Section)f(6.5)h([Shell)f -(Arithmetic],)i(page)e(98\))h(is)f(p)s(erformed)e(when)h(the)1110 -5340 y(v)-5 b(ariable)31 b(is)g(assigned)f(a)h(v)-5 b(alue.)p -eop end +(ys],)1110 5179 y(page)31 b(101\).)630 5340 y Ft(-f)384 +b Fu(Use)31 b(function)f(names)g(only)-8 b(.)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 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 -408 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 579 -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 689 y(to)32 b(another)g(v)-5 b(ariable.)46 b(That)31 -b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g(v)-5 -b(alue)32 b(of)1110 798 y Fr(name)p Fu(.)54 b(All)35 +TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)h(Shell)f +(Builtin)h(Commands)2079 b(59)630 299 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 408 y(\(see)29 +b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(99\))h(is)f(p)s +(erformed)e(when)h(the)1110 518 y(v)-5 b(ariable)31 b(is)g(assigned)f +(a)h(v)-5 b(alue.)630 682 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 792 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 956 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 1066 y(to)32 b(another)g(v)-5 b(ariable.)46 +b(That)31 b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g +(v)-5 b(alue)32 b(of)1110 1176 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 908 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 -1017 y(p)s(erformed)22 b(on)h(the)g(v)-5 b(ariable)25 +g(to)1110 1285 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 +1395 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 1127 y(attribute)31 b(cannot)g(b)s(e)f(applied) -g(to)h(arra)m(y)g(v)-5 b(ariables.)630 1297 y Ft(-r)384 +b(The)23 b(nameref)1110 1504 y(attribute)31 b(cannot)g(b)s(e)f(applied) +g(to)h(arra)m(y)g(v)-5 b(ariables.)630 1669 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 1407 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h -(statemen)m(ts)h(or)f(unset.)630 1577 y Ft(-t)384 b Fu(Giv)m(e)33 +b(alues)1110 1778 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h +(statemen)m(ts)h(or)f(unset.)630 1943 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 1687 +b(T)-8 b(raced)32 b(functions)g(inherit)g(the)1110 2052 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 1797 y(has)h(no)g(sp)s -(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 1967 y +(shell.)40 b(The)27 b(trace)i(attribute)1110 2162 y(has)h(no)g(sp)s +(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 2326 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 -2077 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 2247 +2436 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 2600 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 -2357 y(ronmen)m(t.)630 2527 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g +2710 y(ronmen)m(t.)630 2874 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g (`)p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f -(the)g(exceptions)h(that)630 2637 y(`)p Ft(+a)p Fu(')23 +(the)g(exceptions)h(that)630 2984 y(`)p Ft(+a)p Fu(')23 b(and)f(`)p Ft(+A)p Fu(')h(ma)m(y)h(not)f(b)s(e)f(used)g(to)i(destro)m (y)g(arra)m(y)f(v)-5 b(ariables)24 b(and)e(`)p Ft(+r)p -Fu(')h(will)g(not)g(remo)m(v)m(e)630 2746 y(the)36 b(readonly)h +Fu(')h(will)g(not)g(remo)m(v)m(e)630 3093 y(the)36 b(readonly)h (attribute.)59 b(When)36 b(used)f(in)h(a)h(function,)g -Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 2856 +Ft(declare)d Fu(mak)m(es)j(eac)m(h)h Fr(name)630 3203 y Fu(lo)s(cal,)e(as)d(with)h(the)f Ft(local)f Fu(command,)j(unless)d (the)i Ft(-g)f Fu(option)h(is)f(used.)49 b(If)33 b(a)h(v)-5 -b(ariable)630 2966 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)p +b(ariable)630 3313 y(name)30 b(is)h(follo)m(w)m(ed)h(b)m(y)e(=)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)32 b(is)e(set)h(to)g Fr(v)-5 b(alue)p Fu(.)630 -3106 y(When)41 b(using)g Ft(-a)g Fu(or)h Ft(-A)e Fu(and)h(the)h(comp)s +3450 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 -3215 y(v)-5 b(ariables,)28 b(additional)f(attributes)g(do)f(not)h(tak)m +3559 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 -3355 y(The)35 b(return)f(status)i(is)g(zero)g(unless)f(an)g(in)m(v)-5 +3696 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 -3465 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f(`)p +3806 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 -3574 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5 +3915 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 3684 y(arra)m(y)30 b(v)-5 b(ariable)30 +b(alue)42 b(to)h(an)630 4025 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 3794 y([Arra)m(ys],)43 b(page)d(100\),)k +(\(see)h(Section)f(6.7)630 4134 y([Arra)m(ys],)43 b(page)d(101\),)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 -3903 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g +4244 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 -4013 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g +4354 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 -4122 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g -Ft(-f)p Fu(.)150 4293 y Ft(echo)870 4433 y(echo)47 b([-neE])f([)p -Fj(arg)g Ft(...])630 4573 y Fu(Output)31 b(the)i Fr(arg)8 +4463 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g +Ft(-f)p Fu(.)150 4628 y Ft(echo)870 4765 y(echo)47 b([-neE])f([)p +Fj(arg)g Ft(...])630 4902 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 4682 y(status)f(is)f(0)h(unless)f(a) +(newline.)47 b(The)32 b(return)630 5011 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 4792 +(eci\014ed,)f(the)h(trailing)g(newline)g(is)630 5121 y(suppressed.)38 b(If)29 b(the)h Ft(-e)f Fu(option)h(is)f(giv)m(en,)i (in)m(terpretation)g(of)e(the)h(follo)m(wing)h(bac)m(kslash-)630 -4902 y(escap)s(ed)43 b(c)m(haracters)h(is)e(enabled.)78 +5230 y(escap)s(ed)43 b(c)m(haracters)h(is)e(enabled.)78 b(The)42 b Ft(-E)g Fu(option)h(disables)g(the)g(in)m(terpretation)h(of) -630 5011 y(these)27 b(escap)s(e)g(c)m(haracters,)i(ev)m(en)e(on)g -(systems)f(where)g(they)h(are)g(in)m(terpreted)g(b)m(y)f(default.)630 -5121 y(The)32 b Ft(xpg_echo)f Fu(shell)i(option)g(ma)m(y)h(b)s(e)e -(used)g(to)h(dynamically)h(determine)f(whether)f(or)630 -5230 y(not)h Ft(echo)f Fu(expands)g(these)h(escap)s(e)h(c)m(haracters)g -(b)m(y)f(default.)48 b Ft(echo)32 b Fu(do)s(es)g(not)i(in)m(terpret)630 -5340 y Ft(--)c Fu(to)h(mean)f(the)h(end)f(of)g(options.)p +630 5340 y(these)27 b(escap)s(e)g(c)m(haracters,)i(ev)m(en)e(on)g +(systems)f(where)g(they)h(are)g(in)m(terpreted)g(b)m(y)f(default.)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 Ft(echo)29 -b Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f(sequences:)630 -466 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 634 -y Ft(\\b)384 b Fu(bac)m(kspace)630 802 y Ft(\\c)g Fu(suppress)28 -b(further)h(output)630 969 y Ft(\\e)630 1079 y(\\E)384 -b Fu(escap)s(e)630 1247 y Ft(\\f)g Fu(form)30 b(feed)630 -1414 y Ft(\\n)384 b Fu(new)30 b(line)630 1582 y Ft(\\r)384 -b Fu(carriage)32 b(return)630 1749 y Ft(\\t)384 b Fu(horizon)m(tal)32 -b(tab)630 1917 y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)630 -2085 y Ft(\\\\)384 b Fu(bac)m(kslash)630 2252 y Ft(\\0)p -Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e(v)-5 -b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5 b(alue)32 b Fr(nnn)f -Fu(\(zero)i(to)1110 2362 y(three)e(o)s(ctal)g(digits\))630 -2529 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g -(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 -b(alue)39 b Fr(HH)1110 2639 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e -(digits\))630 2807 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41 +b(Shell)30 b(Builtin)h(Commands)2069 b(60)630 299 y(The)32 +b Ft(xpg_echo)f Fu(shell)i(option)g(ma)m(y)h(b)s(e)e(used)g(to)h +(dynamically)h(determine)f(whether)f(or)630 408 y(not)h +Ft(echo)f Fu(expands)g(these)h(escap)s(e)h(c)m(haracters)g(b)m(y)f +(default.)48 b Ft(echo)32 b Fu(do)s(es)g(not)i(in)m(terpret)630 +518 y Ft(--)c Fu(to)h(mean)f(the)h(end)f(of)g(options.)630 +653 y Ft(echo)f Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f +(sequences:)630 812 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 +972 y Ft(\\b)384 b Fu(bac)m(kspace)630 1132 y Ft(\\c)g +Fu(suppress)28 b(further)h(output)630 1291 y Ft(\\e)630 +1401 y(\\E)384 b Fu(escap)s(e)630 1561 y Ft(\\f)g Fu(form)30 +b(feed)630 1720 y Ft(\\n)384 b Fu(new)30 b(line)630 1880 +y Ft(\\r)384 b Fu(carriage)32 b(return)630 2040 y Ft(\\t)384 +b Fu(horizon)m(tal)32 b(tab)630 2199 y Ft(\\v)384 b Fu(v)m(ertical)32 +b(tab)630 2359 y Ft(\\\\)384 b Fu(bac)m(kslash)630 2519 +y Ft(\\0)p Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g +(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5 +b(alue)32 b Fr(nnn)f Fu(\(zero)i(to)1110 2628 y(three)e(o)s(ctal)g +(digits\))630 2788 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c) +m(haracter)g(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 +b(alue)39 b Fr(HH)1110 2898 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e +(digits\))630 3057 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41 b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 -b(alue)41 b(is)g(the)g(hex-)1110 2916 y(adecimal)32 b(v)-5 +b(alue)41 b(is)g(the)g(hex-)1110 3167 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 -3084 y Ft(\\U)p Fj(HHHHHHHH)1110 3193 y Fu(the)41 b(Unico)s(de)g +3327 y Ft(\\U)p Fj(HHHHHHHH)1110 3436 y Fu(the)41 b(Unico)s(de)g (\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41 -b(is)g(the)g(hex-)1110 3303 y(adecimal)32 b(v)-5 b(alue)31 +b(is)g(the)g(hex-)1110 3546 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\))150 -3471 y Ft(enable)870 3609 y(enable)46 b([-a])h([-dnps])f([-f)g -Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 3748 +3706 y Ft(enable)870 3840 y(enable)46 b([-a])h([-dnps])f([-f)g +Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 3975 y Fu(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56 b(Disabling)37 b(a)g(builtin)e(allo)m(ws)i(a)f(disk)630 -3857 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h -(builtin)e(to)i(b)s(e)f(executed)h(without)630 3967 y(sp)s(ecifying)27 +4084 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h +(builtin)e(to)i(b)s(e)f(executed)h(without)630 4194 y(sp)s(ecifying)27 b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)g(shell)g(normally)g -(searc)m(hes)h(for)f(builtins)630 4076 y(b)s(efore)35 +(searc)m(hes)h(for)f(builtins)630 4304 y(b)s(efore)35 b(disk)g(commands.)55 b(If)35 b Ft(-n)g Fu(is)g(used,)h(the)g Fr(name)5 b Fu(s)35 b(b)s(ecome)h(disabled.)55 b(Otherwise)630 -4186 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8 +4413 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8 b(or)45 b(example,)k(to)c(use)f(the)g Ft(test)f Fu(binary)h(found)f -(via)h Ft($PATH)630 4296 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g +(via)h Ft($PATH)630 4523 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g (v)m(ersion,)h(t)m(yp)s(e)g(`)p Ft(enable)e(-n)h(test)p -Fu('.)630 4434 y(If)45 b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or) +Fu('.)630 4657 y(If)45 b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or) d(no)g Fr(name)51 b Fu(argumen)m(ts)46 b(app)s(ear,)k(a)c(list)h(of)f -(shell)630 4544 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38 +(shell)630 4767 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38 b(no)f(other)h(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h -(enabled)630 4653 y(shell)d(builtins.)57 b(The)35 b Ft(-a)h +(enabled)630 4877 y(shell)d(builtins.)57 b(The)35 b Ft(-a)h Fu(option)g(means)g(to)g(list)h(eac)m(h)g(builtin)f(with)f(an)h -(indication)h(of)630 4763 y(whether)30 b(or)g(not)h(it)g(is)f(enabled.) -630 4902 y(The)22 b Ft(-f)f Fu(option)h(means)g(to)h(load)g(the)f(new)g +(indication)h(of)630 4986 y(whether)30 b(or)g(not)h(it)g(is)f(enabled.) +630 5121 y(The)22 b Ft(-f)f Fu(option)h(means)g(to)h(load)g(the)f(new)g (builtin)f(command)h Fr(name)27 b Fu(from)22 b(shared)f(ob)5 -b(ject)630 5011 y Fr(\014lename)p Fu(,)31 b(on)f(systems)g(that)h(supp) +b(ject)630 5230 y Fr(\014lename)p Fu(,)31 b(on)f(systems)g(that)h(supp) s(ort)e(dynamic)h(loading.)41 b(Bash)31 b(will)f(use)g(the)h(v)-5 -b(alue)31 b(of)630 5121 y(the)39 b Ft(BASH_LOADABLES_PATH)34 +b(alue)31 b(of)630 5340 y(the)39 b Ft(BASH_LOADABLES_PATH)34 b Fu(v)-5 b(ariable)40 b(as)f(a)h(colon-separated)h(list)f(of)f -(directories)h(in)630 5230 y(whic)m(h)31 b(to)h(searc)m(h)g(for)f -Fr(\014lename)p Fu(.)44 b(The)31 b(default)g(is)h(system-dep)s(enden)m -(t.)43 b(The)31 b Ft(-d)f Fu(option)630 5340 y(will)h(delete)g(a)g -(builtin)f(loaded)h(with)f Ft(-f)p Fu(.)p eop end +(directories)h(in)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(If)33 -b(there)i(are)f(no)g(options,)h(a)f(list)h(of)f(the)g(shell)g(builtins) -g(is)g(displa)m(y)m(ed.)52 b(The)33 b Ft(-s)g Fu(option)630 -408 y(restricts)j Ft(enable)d Fu(to)j(the)f Fm(posix)f -Fu(sp)s(ecial)i(builtins.)54 b(If)34 b Ft(-s)h Fu(is)g(used)f(with)g -Ft(-f)p Fu(,)i(the)f(new)630 518 y(builtin)30 b(b)s(ecomes)h(a)f(sp)s -(ecial)h(builtin)f(\(see)i(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g -(page)g(77\).)630 650 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 759 y(to)c(load)g Fr(name)26 b +b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y(whic)m(h)31 +b(to)h(searc)m(h)g(for)f Fr(\014lename)p Fu(.)44 b(The)31 +b(default)g(is)h(system-dep)s(enden)m(t.)43 b(The)31 +b Ft(-d)f Fu(option)630 408 y(will)h(delete)g(a)g(builtin)f(loaded)h +(with)f Ft(-f)p Fu(.)630 542 y(If)j(there)i(are)f(no)g(options,)h(a)f +(list)h(of)f(the)g(shell)g(builtins)g(is)g(displa)m(y)m(ed.)52 +b(The)33 b Ft(-s)g Fu(option)630 651 y(restricts)j Ft(enable)d +Fu(to)j(the)f Fm(posix)f Fu(sp)s(ecial)i(builtins.)54 +b(If)34 b Ft(-s)h Fu(is)g(used)f(with)g Ft(-f)p Fu(,)i(the)f(new)630 +761 y(builtin)30 b(b)s(ecomes)h(a)f(sp)s(ecial)h(builtin)f(\(see)i +(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g(78\).)630 +894 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 1003 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 -869 y(-f)30 b Fj(name)f(name)p Fu('.)630 1000 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 1110 y(loading)31 +1113 y(-f)30 b Fj(name)f(name)p Fu('.)630 1246 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 1356 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g(ob)5 b(ject.)150 -1263 y Ft(help)870 1395 y(help)47 b([-dms])f([)p Fj(pattern)p -Ft(])630 1526 y Fu(Displa)m(y)40 b(helpful)e(information)h(ab)s(out)g +1512 y Ft(help)870 1645 y(help)47 b([-dms])f([)p Fj(pattern)p +Ft(])630 1778 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 1636 y Ft(help)28 b Fu(giv)m(es)i(detailed)g(help)e(on)h(all)h +630 1888 y Ft(help)28 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)f(a)g(list)h -(of)630 1745 y(the)h(builtins)e(is)i(prin)m(ted.)630 -1877 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h -(meanings:)630 2030 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 2184 y Ft(-m)384 +(of)630 1998 y(the)h(builtins)e(is)i(prin)m(ted.)630 +2131 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h +(meanings:)630 2287 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 2444 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 -2337 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 2491 y Fu(The)f(return)f +2600 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 2757 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 2644 y Ft(let)870 2776 y(let)47 +Fr(pattern)p Fu(.)150 2913 y Ft(let)870 3046 y(let)47 b Fj(expression)e Ft([)p Fj(expression)g Ft(...)o(])630 -2907 y Fu(The)c Ft(let)g Fu(builtin)g(allo)m(ws)i(arithmetic)f(to)h(b)s +3180 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 3017 y Fr(expression)31 b Fu(is)g(ev)-5 +b(Eac)m(h)630 3289 y Fr(expression)31 b Fu(is)g(ev)-5 b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)h(b)s(elo)m(w)f -(in)f(Section)i(6.5)g([Shell)630 3126 y(Arithmetic],)51 -b(page)46 b(98.)87 b(If)45 b(the)g(last)h Fr(expression)g +(in)f(Section)i(6.5)g([Shell)630 3399 y(Arithmetic],)51 +b(page)46 b(99.)87 b(If)45 b(the)g(last)h Fr(expression)g Fu(ev)-5 b(aluates)47 b(to)f(0,)k Ft(let)44 b Fu(returns)g(1;)630 -3236 y(otherwise)31 b(0)g(is)f(returned.)150 3389 y Ft(local)870 -3521 y(local)46 b([)p Fj(option)p Ft(])g Fj(name)p Ft([=)p -Fj(value)p Ft(])e(...)630 3652 y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m +3508 y(otherwise)31 b(0)g(is)f(returned.)150 3665 y Ft(local)870 +3798 y(local)46 b([)p Fj(option)p Ft(])g Fj(name)p Ft([=)p +Fj(value)p Ft(])e(...)630 3931 y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m (t,)g(a)f(lo)s(cal)h(v)-5 b(ariable)27 b(named)e Fr(name)31 b Fu(is)26 b(created,)i(and)d(assigned)h Fr(v)-5 b(alue)p -Fu(.)630 3762 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 3871 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 -3981 y(restricted)h(to)f(that)h(function)e(and)g(its)i(c)m(hildren.)78 -b(If)42 b Fr(name)48 b Fu(is)43 b(`)p Ft(-)p Fu(',)j(the)d(set)h(of)f -(shell)630 4091 y(options)34 b(is)f(made)g(lo)s(cal)i(to)f(the)f -(function)g(in)g(whic)m(h)g Ft(local)f Fu(is)h(in)m(v)m(ok)m(ed:)48 -b(shell)34 b(options)630 4200 y(c)m(hanged)e(using)e(the)i -Ft(set)e Fu(builtin)h(inside)g(the)g(function)g(are)g(restored)h(to)g -(their)f(original)630 4310 y(v)-5 b(alues)36 b(when)e(the)i(function)f -(returns.)54 b(The)35 b(restore)h(is)g(e\013ected)h(as)e(if)h(a)g -(series)f(of)h Ft(set)630 4419 y Fu(commands)j(w)m(ere)g(executed)h(to) -f(restore)h(the)f(v)-5 b(alues)39 b(that)h(w)m(ere)f(in)f(place)i(b)s -(efore)f(the)630 4529 y(function.)j(The)30 b(return)g(status)h(is)g -(zero)h(unless)e Ft(local)g Fu(is)h(used)f(outside)h(a)g(function,)g -(an)630 4639 y(in)m(v)-5 b(alid)31 b Fr(name)k Fu(is)c(supplied,)e(or)i -Fr(name)k Fu(is)c(a)f(readonly)h(v)-5 b(ariable.)150 -4792 y Ft(logout)870 4924 y(logout)46 b([)p Fj(n)p Ft(])630 -5055 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.)150 5208 y -Ft(mapfile)870 5340 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(])p eop end +Fu(.)630 4041 y(The)28 b Fr(option)i Fu(can)f(b)s(e)f(an)m(y)i(of)f +(the)g(options)g(accepted)i(b)m(y)d Ft(declare)p Fu(.)39 +b Ft(local)27 b Fu(can)i(only)h(b)s(e)630 4150 y(used)20 +b(within)g(a)h(function;)j(it)d(mak)m(es)g(the)g(v)-5 +b(ariable)22 b Fr(name)k Fu(ha)m(v)m(e)21 b(a)g(visible)h(scop)s(e)e +(restricted)630 4260 y(to)28 b(that)g(function)f(and)g(its)h(c)m +(hildren.)39 b(If)27 b Fr(name)33 b Fu(is)27 b(`)p Ft(-)p +Fu(',)i(the)f(set)f(of)h(shell)g(options)f(is)h(made)630 +4369 y(lo)s(cal)40 b(to)f(the)f(function)g(in)g(whic)m(h)h +Ft(local)e Fu(is)h(in)m(v)m(ok)m(ed:)58 b(shell)39 b(options)f(c)m +(hanged)h(using)630 4479 y(the)31 b Ft(set)f Fu(builtin)h(inside)g(the) +g(function)f(after)i(the)f(call)h(to)g Ft(local)e Fu(are)h(restored)g +(to)h(their)630 4589 y(original)h(v)-5 b(alues)33 b(when)e(the)i +(function)f(returns.)45 b(The)32 b(restore)h(is)f(e\013ected)i(as)f(if) +f(a)h(series)630 4698 y(of)c Ft(set)f Fu(commands)h(w)m(ere)g(executed) +h(to)g(restore)f(the)g(v)-5 b(alues)30 b(that)f(w)m(ere)h(in)e(place)i +(b)s(efore)630 4808 y(the)f(function.)40 b(The)28 b(return)f(status)i +(is)g(zero)g(unless)f Ft(local)f Fu(is)h(used)g(outside)h(a)g +(function,)630 4917 y(an)h(in)m(v)-5 b(alid)31 b Fr(name)36 +b Fu(is)30 b(supplied,)f(or)i Fr(name)k Fu(is)c(a)g(readonly)f(v)-5 +b(ariable.)150 5074 y Ft(logout)870 5207 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: 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)1061 299 y -Ft([-t])47 b([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p +b(Shell)30 b(Builtin)h(Commands)2069 b(62)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 -429 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j +688 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 539 y(from)28 b(\014le)h(descriptor)f Fr(fd)k +Fu(,)i(or)630 798 y(from)28 b(\014le)h(descriptor)f Fr(fd)k Fu(if)c(the)h Ft(-u)f Fu(option)h(is)g(supplied.)39 b(The)28 -b(v)-5 b(ariable)29 b Ft(MAPFILE)e Fu(is)i(the)630 648 +b(v)-5 b(ariable)29 b Ft(MAPFILE)e Fu(is)i(the)630 907 y(default)i 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 799 y Ft(-d)384 +(v)m(e)h(the)g(follo)m(wing)h(meanings:)630 1077 y Ft(-d)384 b Fu(The)37 b(\014rst)g(c)m(haracter)i(of)f Fr(delim)g Fu(is)f(used)g(to)h(terminate)h(eac)m(h)g(input)d(line,)1110 -908 y(rather)41 b(than)h(newline.)74 b(If)41 b Fr(delim)h +1187 y(rather)41 b(than)h(newline.)74 b(If)41 b Fr(delim)h Fu(is)g(the)f(empt)m(y)h(string,)j Ft(mapfile)40 b Fu(will)1110 -1018 y(terminate)31 b(a)g(line)g(when)e(it)i(reads)f(a)h(NUL)g(c)m -(haracter.)630 1169 y Ft(-n)384 b Fu(Cop)m(y)30 b(at)h(most)g +1297 y(terminate)31 b(a)g(line)g(when)e(it)i(reads)f(a)h(NUL)g(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(all)h -(lines)e(are)h(copied.)630 1319 y Ft(-O)384 b Fu(Begin)31 +(lines)e(are)h(copied.)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 -1470 y Ft(-s)384 b Fu(Discard)31 b(the)f(\014rst)g Fr(coun)m(t)j -Fu(lines)e(read.)630 1621 y Ft(-t)384 b Fu(Remo)m(v)m(e)32 +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 1771 y Ft(-u)384 b Fu(Read)31 b(lines)f(from)g +(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 1922 y Ft(-C)384 b Fu(Ev)-5 b(aluate)26 b +(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 -2032 y(sp)s(eci\014es)30 b Fr(quan)m(tum)p Fu(.)630 2182 +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 2333 y(If)36 b Ft(-C)g Fu(is)g(sp)s(eci\014ed)g(without)g +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 2443 y(ev)-5 +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 -2552 y(the)39 b(line)g(to)h(b)s(e)e(assigned)h(to)h(that)f(elemen)m(t)i +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 2662 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read) +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 -2792 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g +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 2902 y(to)31 b(it.)630 3032 y Ft(mapfile)41 +b(assigning)630 3345 y(to)31 b(it.)630 3485 y Ft(mapfile)41 b Fu(returns)g(successfully)i(unless)e(an)i(in)m(v)-5 b(alid)43 b(option)g(or)g(option)g(argumen)m(t)g(is)630 -3141 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5 +3594 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5 b(alid)31 b(or)g(unassignable,)f(or)h Fr(arra)m(y)38 b Fu(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150 -3292 y Ft(printf)870 3422 y(printf)46 b([-v)h Fj(var)p -Ft(])g Fj(format)f Ft([)p Fj(arguments)p Ft(])630 3552 +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)27 b(the)g(formatted)f Fr(argumen)m(ts)k Fu(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the) -630 3662 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g +630 4153 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g (the)g(output)g(to)g(b)s(e)f(assigned)h(to)h(the)f(v)-5 -b(ariable)39 b Fr(v)-5 b(ar)630 3771 y Fu(rather)30 b(than)g(b)s(eing)g -(prin)m(ted)g(to)h(the)g(standard)e(output.)630 3902 +b(ariable)39 b Fr(v)-5 b(ar)630 4263 y Fu(rather)30 b(than)g(b)s(eing)g +(prin)m(ted)g(to)h(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 4011 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e +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 -4121 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 4230 y(sp)s +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,)j(eac)m(h)e(of)g(whic)m(h)f(causes)g(prin)m(ting)g(of) h(the)f(next)h(successiv)m(e)g Fr(argumen)m(t)p Fu(.)630 -4340 y(In)24 b(addition)h(to)g(the)g(standard)f Ft(printf\(1\))e -Fu(formats,)27 b Ft(printf)c Fu(in)m(terprets)i(the)f(follo)m(wing)630 -4450 y(extensions:)630 4600 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 4710 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 4819 y([Bash)e(Builtins],)g(page)g(55\).) -630 4970 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 5080 y(that)e(can)g(b)s(e)e(reused)h(as)h -(shell)f(input.)630 5230 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 5340 y(quoting)c(it.)p -eop end +4841 y(In)27 b(addition)g(to)h(the)g(standard)e Ft(printf\(3\))f +Fu(format)j(c)m(haracters)g Ft(csndiouxXeEfFgGaA)p Fu(,)630 +4951 y Ft(printf)h 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(56\).)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 Ft(\045\()p -Fj(datefmt)p Ft(\)T)1110 408 y Fu(Causes)29 b Ft(printf)e -Fu(to)j(output)f(the)g(date-time)i(string)e(resulting)h(from)e(using) -1110 518 y Fr(datefm)m(t)45 b Fu(as)d(a)g(format)g(string)g(for)g +b(Shell)30 b(Builtin)h(Commands)2069 b(63)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)42 b(the)h(format)h(string)f +(uses)f(the)h Ft(printf)e Fr(alternate)k(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)45 b Fu(as)d(a)g(format)g(string)g(for)g Ft(strftime)p Fu(\(3\).)74 b(The)41 b(corresp)s(onding)1110 -628 y Fr(argumen)m(t)h Fu(is)e(an)g(in)m(teger)i(represen)m(ting)e(the) -g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 737 y(the)24 -b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f(v)-5 -b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25 b(represen)m(ts)1110 -847 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i(represen)m(ts)f(the)g -(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)1110 -956 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m +1598 y Fr(argumen)m(t)h Fu(is)e(an)g(in)m(teger)i(represen)m(ting)e +(the)g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 1708 +y(the)24 b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f +(v)-5 b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25 +b(represen)m(ts)1110 1817 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i +(represen)m(ts)f(the)g(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.) +1110 1927 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m (ersion)f(b)s(eha)m(v)m(es)g(as)g(if)f(-1)h(had)f(b)s(een)1110 -1066 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g -Ft(printf)f Fu(b)s(eha)m(vior.)630 1219 y(The)d(\045b,)h(\045q,)h(and)e -(\045T)g(directiv)m(es)j(all)e(use)g(the)g(\014eld)f(width)g(and)h -(precision)g(argumen)m(ts)630 1329 y(from)f(the)g(format)h(sp)s -(eci\014cation)g(and)e(write)i(that)f(man)m(y)h(b)m(ytes)f(from)g(\(or) -h(use)e(that)i(wide)630 1439 y(a)42 b(\014eld)g(for\))g(the)h(expanded) -e(argumen)m(t,)k(whic)m(h)d(usually)g(con)m(tains)h(more)f(c)m -(haracters)630 1548 y(than)30 b(the)h(original.)630 1680 -y(Argumen)m(ts)d(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 1789 -y(except)22 b(that)g(a)g(leading)g(plus)e(or)h(min)m(us)f(sign)i(is)f -(allo)m(w)m(ed,)k(and)c(if)g(the)g(leading)h(c)m(haracter)h(is)630 -1899 y(a)i(single)g(or)f(double)h(quote,)h(the)f(v)-5 -b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5 b(alue)25 b(of)f(the)h(follo)m -(wing)h(c)m(haracter.)630 2030 y(The)31 b 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 -2140 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 -2250 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 2359 y(return)29 b(v)-5 b(alue)31 -b(is)g(zero)g(on)f(success,)h(non-zero)g(on)f(failure.)150 -2513 y Ft(read)870 2644 y(read)47 b([-ers])f([-a)h Fj(aname)p +2037 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g +Ft(printf)f Fu(b)s(eha)m(vior.)630 2193 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 2303 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 2412 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 +2522 y(c)m(haracters)h(than)e(the)h(original.)630 2655 +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 +2765 y(shell)h(v)-5 b(ariable)31 b(name.)630 2898 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 +3007 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 +3117 y(\014eld)30 b(width)g(and)f(precision)i(in)f(terms)g(of)h(c)m +(haracters,)h(not)e(b)m(ytes.)630 3250 y(Argumen)m(ts)e(to)h +(non-string)e(format)i(sp)s(eci\014ers)e(are)h(treated)h(as)g(C)e +(language)j(constan)m(ts,)630 3360 y(except)22 b(that)g(a)g(leading)g +(plus)e(or)h(min)m(us)f(sign)i(is)f(allo)m(w)m(ed,)k(and)c(if)g(the)g +(leading)h(c)m(haracter)h(is)630 3469 y(a)i(single)g(or)f(double)h +(quote,)h(the)f(v)-5 b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5 +b(alue)25 b(of)f(the)h(follo)m(wing)h(c)m(haracter.)630 +3602 y(The)31 b 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 3712 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 3821 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 3931 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 4041 +y(write)31 b(or)f(assignmen)m(t)h(error)f(o)s(ccurs.)150 +4197 y Ft(read)870 4330 y(read)47 b([-ers])f([-a)h Fj(aname)p Ft(])f([-d)h Fj(delim)p Ft(])f([-i)h Fj(text)p Ft(])f([-n)h -Fj(nchars)p Ft(])1061 2754 y([-N)g Fj(nchars)p Ft(])f([-p)h +Fj(nchars)p Ft(])1061 4440 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 2885 y Fu(One)38 +Ft(])g([)p Fj(name)f Ft(...)o(])630 4573 y Fu(One)38 b(line)g(is)g(read)g(from)g(the)g(standard)f(input,)j(or)e(from)f(the)i -(\014le)f(descriptor)g Fr(fd)j Fu(sup-)630 2995 y(plied)34 +(\014le)f(descriptor)g Fr(fd)j Fu(sup-)630 4682 y(plied)34 b(as)h(an)f(argumen)m(t)h(to)g(the)f Ft(-u)g Fu(option,)i(split)f(in)m (to)g(w)m(ords)f(as)g(describ)s(ed)g(ab)s(o)m(v)m(e)h(in)630 -3104 y(Section)j(3.5.7)h([W)-8 b(ord)38 b(Splitting],)i(page)e(35,)j +4792 y(Section)j(3.5.7)h([W)-8 b(ord)38 b(Splitting],)i(page)e(35,)j (and)36 b(the)i(\014rst)f(w)m(ord)g(is)g(assigned)h(to)g(the)630 -3214 y(\014rst)32 b Fr(name)p Fu(,)h(the)g(second)g(w)m(ord)f(to)h(the) +4902 y(\014rst)32 b Fr(name)p Fu(,)h(the)g(second)g(w)m(ord)f(to)h(the) g(second)g Fr(name)p Fu(,)g(and)f(so)h(on.)47 b(If)32 -b(there)h(are)g(more)630 3324 y(w)m(ords)39 b(than)g(names,)j(the)e +b(there)h(are)g(more)630 5011 y(w)m(ords)39 b(than)g(names,)j(the)e (remaining)f(w)m(ords)g(and)g(their)h(in)m(terv)m(ening)g(delimiters)h -(are)630 3433 y(assigned)29 b(to)h(the)g(last)g Fr(name)p +(are)630 5121 y(assigned)29 b(to)h(the)g(last)g Fr(name)p Fu(.)40 b(If)29 b(there)g(are)h(few)m(er)f(w)m(ords)g(read)g(from)g -(the)g(input)g(stream)630 3543 y(than)35 b(names,)i(the)e(remaining)h +(the)g(input)g(stream)630 5230 y(than)35 b(names,)i(the)e(remaining)h (names)f(are)h(assigned)f(empt)m(y)h(v)-5 b(alues.)56 -b(The)34 b(c)m(haracters)630 3652 y(in)e(the)h(v)-5 b(alue)33 +b(The)34 b(c)m(haracters)630 5340 y(in)e(the)h(v)-5 b(alue)33 b(of)g(the)g Ft(IFS)f Fu(v)-5 b(ariable)33 b(are)h(used)d(to)j(split)f -(the)g(line)g(in)m(to)g(w)m(ords)g(using)f(the)630 3762 -y(same)d(rules)f(the)g(shell)h(uses)f(for)g(expansion)g(\(describ)s(ed) -g(ab)s(o)m(v)m(e)i(in)e(Section)h(3.5.7)h([W)-8 b(ord)630 -3871 y(Splitting],)38 b(page)f(35\).)60 b(The)35 b(bac)m(kslash)i(c)m +(the)g(line)g(in)m(to)g(w)m(ords)g(using)f(the)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)630 299 y(same)29 +b(rules)f(the)g(shell)h(uses)f(for)g(expansion)g(\(describ)s(ed)g(ab)s +(o)m(v)m(e)i(in)e(Section)h(3.5.7)h([W)-8 b(ord)630 408 +y(Splitting],)38 b(page)f(35\).)60 b(The)35 b(bac)m(kslash)i(c)m (haracter)h(`)p Ft(\\)p Fu(')e(ma)m(y)h(b)s(e)f(used)f(to)i(remo)m(v)m -(e)h(an)m(y)630 3981 y(sp)s(ecial)31 b(meaning)g(for)f(the)g(next)h(c)m +(e)h(an)m(y)630 518 y(sp)s(ecial)31 b(meaning)g(for)f(the)g(next)h(c)m (haracter)h(read)e(and)g(for)g(line)h(con)m(tin)m(uation.)630 -4113 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h -(meanings:)630 4266 y Ft(-a)e Fj(aname)114 b Fu(The)34 +654 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h +(meanings:)630 816 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 4376 y Fr(aname)p Fu(,)29 +(arra)m(y)h(v)-5 b(ariable)1110 925 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 4485 y(the)d(assignmen)m(t.)41 +(from)d Fr(aname)34 b Fu(b)s(efore)1110 1035 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 -4639 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f +1196 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f Fr(delim)g Fu(is)g(used)g(to)g(terminate)h(the)f(input)f(line,)1110 -4748 y(rather)31 b(than)g(newline.)42 b(If)30 b Fr(delim)h +1306 y(rather)31 b(than)g(newline.)42 b(If)30 b Fr(delim)h Fu(is)g(the)h(empt)m(y)f(string,)g Ft(read)f Fu(will)h(termi-)1110 -4858 y(nate)g(a)g(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.) -630 5011 y Ft(-e)384 b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command) -f(Line)h(Editing],)50 b(page)45 b(117\))i(is)1110 5121 +1416 y(nate)g(a)g(line)f(when)g(it)h(reads)f(a)h(NUL)f(c)m(haracter.) +630 1577 y Ft(-e)384 b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command) +f(Line)h(Editing],)50 b(page)45 b(120\))i(is)1110 1687 y(used)37 b(to)i(obtain)g(the)f(line.)65 b(Readline)39 b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110 -5230 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k -(editing)d(settings,)j(but)c(uses)1110 5340 y(Readline's)31 -b(default)g(\014lename)f(completion.)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)630 299 y Ft(-i)30 -b Fj(text)162 b Fu(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read) -g(the)g(line,)j Fr(text)f Fu(is)e(placed)h(in)m(to)g(the)1110 -408 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 -564 y Ft(-n)f Fj(nchars)66 b Ft(read)38 b Fu(returns)f(after)j(reading) -f Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)f(than)g(w)m(aiting)1110 -674 y(for)d(a)h(complete)h(line)f(of)g(input,)g(but)f(honors)g(a)h -(delimiter)g(if)f(few)m(er)h(than)1110 783 y Fr(nc)m(hars)d -Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g(delimiter.)630 -939 y Ft(-N)g 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 -1049 y(w)m(aiting)32 b(for)f(a)g(complete)i(line)e(of)g(input,)g -(unless)f(EOF)h(is)g(encoun)m(tered)g(or)1110 1158 y -Ft(read)f Fu(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f(encoun)m -(tered)g(in)f(the)g(input)g(are)1110 1268 y(not)g(treated)h(sp)s -(ecially)f(and)f(do)h(not)g(cause)g Ft(read)e Fu(to)j(return)d(un)m -(til)i Fr(nc)m(hars)1110 1377 y Fu(c)m(haracters)26 b(are)f(read.)38 -b(The)24 b(result)g(is)h(not)f(split)h(on)f(the)h(c)m(haracters)h(in)e -Ft(IFS)p Fu(;)1110 1487 y(the)e(in)m(ten)m(t)i(is)e(that)h(the)f(v)-5 +1797 y(line)h(editing)g(w)m(as)g(not)g(previously)f(activ)m(e\))k +(editing)d(settings,)j(but)c(uses)1110 1906 y(Readline's)31 +b(default)g(\014lename)f(completion.)630 2068 y Ft(-i)g +Fj(text)162 b Fu(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read)g +(the)g(line,)j Fr(text)f Fu(is)e(placed)h(in)m(to)g(the)1110 +2178 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 +2339 y Ft(-n)f Fj(nchars)66 b Ft(read)38 b Fu(returns)f(after)j +(reading)f Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)f(than)g(w)m +(aiting)1110 2449 y(for)d(a)h(complete)h(line)f(of)g(input,)g(but)f +(honors)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110 2559 +y Fr(nc)m(hars)d Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g +(delimiter.)630 2720 y Ft(-N)g 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 2830 y(w)m(aiting)32 +b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless)f(EOF)h(is)g(encoun) +m(tered)g(or)1110 2939 y Ft(read)f Fu(times)i(out.)43 +b(Delimiter)33 b(c)m(haracters)f(encoun)m(tered)g(in)f(the)g(input)g +(are)1110 3049 y(not)g(treated)h(sp)s(ecially)f(and)f(do)h(not)g(cause) +g Ft(read)e Fu(to)j(return)d(un)m(til)i Fr(nc)m(hars)1110 +3159 y Fu(c)m(haracters)26 b(are)f(read.)38 b(The)24 +b(result)g(is)h(not)f(split)h(on)f(the)h(c)m(haracters)h(in)e +Ft(IFS)p Fu(;)1110 3268 y(the)e(in)m(ten)m(t)i(is)e(that)h(the)f(v)-5 b(ariable)23 b(is)f(assigned)g(exactly)i(the)e(c)m(haracters)i(read) -1110 1597 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 1752 y +1110 3378 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 3540 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 1862 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m -(y)m(ed)h(only)f(if)g(input)g(is)g(coming)1110 1972 y(from)30 -b(a)h(terminal.)630 2127 y Ft(-r)384 b Fu(If)21 b(this)h(option)g(is)f +1110 3649 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m +(y)m(ed)h(only)f(if)g(input)g(is)g(coming)1110 3759 y(from)30 +b(a)h(terminal.)630 3921 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 2237 y(The)30 b(bac)m(kslash)i(is)f(considered)g +(c)m(haracter.)1110 4030 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 -2346 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 2502 +4140 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 4301 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 -2612 y(ec)m(ho)s(ed.)630 2768 y Ft(-t)i Fj(timeout)1110 -2877 y Fu(Cause)23 b Ft(read)f Fu(to)i(time)f(out)h(and)e(return)g +4411 y(ec)m(ho)s(ed.)630 4573 y Ft(-t)i Fj(timeout)1110 +4682 y Fu(Cause)23 b Ft(read)f Fu(to)i(time)f(out)h(and)e(return)g (failure)h(if)g(a)h(complete)g(line)g(of)f(input)1110 -2987 y(\(or)h(a)f(sp)s(eci\014ed)g(n)m(um)m(b)s(er)f(of)i(c)m +4792 y(\(or)h(a)f(sp)s(eci\014ed)g(n)m(um)m(b)s(er)f(of)i(c)m (haracters\))h(is)e(not)h(read)f(within)g Fr(timeout)j -Fu(sec-)1110 3096 y(onds.)43 b Fr(timeout)34 b Fu(ma)m(y)e(b)s(e)e(a)i +Fu(sec-)1110 4902 y(onds.)43 b Fr(timeout)34 b Fu(ma)m(y)e(b)s(e)e(a)i (decimal)g(n)m(um)m(b)s(er)e(with)h(a)h(fractional)g(p)s(ortion)1110 -3206 y(follo)m(wing)39 b(the)f(decimal)g(p)s(oin)m(t.)63 +5011 y(follo)m(wing)39 b(the)f(decimal)g(p)s(oin)m(t.)63 b(This)37 b(option)h(is)g(only)f(e\013ectiv)m(e)k(if)c -Ft(read)1110 3315 y Fu(is)c(reading)h(input)e(from)h(a)h(terminal,)h +Ft(read)1110 5121 y Fu(is)c(reading)h(input)e(from)h(a)h(terminal,)h (pip)s(e,)e(or)h(other)f(sp)s(ecial)h(\014le;)h(it)f(has)1110 -3425 y(no)f(e\013ect)i(when)d(reading)i(from)f(regular)g(\014les.)50 -b(If)33 b Ft(read)f Fu(times)i(out,)g Ft(read)1110 3535 +5230 y(no)f(e\013ect)i(when)d(reading)i(from)f(regular)g(\014les.)50 +b(If)33 b Ft(read)f Fu(times)i(out,)g Ft(read)1110 5340 y Fu(sa)m(v)m(es)41 b(an)m(y)f(partial)h(input)e(read)g(in)m(to)i(the)f (sp)s(eci\014ed)f(v)-5 b(ariable)40 b Fr(name)p Fu(.)69 -b(If)1110 3644 y Fr(timeout)31 b Fu(is)c(0,)i Ft(read)d -Fu(returns)h(immediately)-8 b(,)30 b(without)d(trying)h(to)g(read)g(an) -m(y)1110 3754 y(data.)49 b(The)33 b(exit)h(status)f(is)g(0)g(if)g -(input)f(is)h(a)m(v)-5 b(ailable)36 b(on)c(the)i(sp)s(eci\014ed)e -(\014le)1110 3863 y(descriptor,)37 b(or)e(the)h(read)f(will)h(return)e -(EOF,)h(non-zero)h(otherwise.)56 b(The)1110 3973 y(exit)31 -b(status)g(is)f(greater)i(than)e(128)i(if)e(the)h(timeout)g(is)f -(exceeded.)630 4129 y Ft(-u)g Fj(fd)258 b Fu(Read)31 -b(input)e(from)h(\014le)g(descriptor)h Fr(fd)p Fu(.)630 -4284 y(If)h(no)g Fr(name)5 b Fu(s)33 b(are)f(supplied,)g(the)h(line)g -(read,)g(without)f(the)h(ending)f(delimiter)h(but)e(oth-)630 -4394 y(erwise)36 b(unmo)s(di\014ed,)e(is)i(assigned)f(to)h(the)g(v)-5 +b(If)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)1110 299 y +Fr(timeout)31 b Fu(is)c(0,)i Ft(read)d Fu(returns)h(immediately)-8 +b(,)30 b(without)d(trying)h(to)g(read)g(an)m(y)1110 408 +y(data.)49 b(The)33 b(exit)h(status)f(is)g(0)g(if)g(input)f(is)h(a)m(v) +-5 b(ailable)36 b(on)c(the)i(sp)s(eci\014ed)e(\014le)1110 +518 y(descriptor,)37 b(or)e(the)h(read)f(will)h(return)e(EOF,)h +(non-zero)h(otherwise.)56 b(The)1110 628 y(exit)31 b(status)g(is)f +(greater)i(than)e(128)i(if)e(the)h(timeout)g(is)f(exceeded.)630 +785 y Ft(-u)g Fj(fd)258 b Fu(Read)31 b(input)e(from)h(\014le)g +(descriptor)h Fr(fd)p Fu(.)630 942 y(If)h(no)g Fr(name)5 +b Fu(s)33 b(are)f(supplied,)g(the)h(line)g(read,)g(without)f(the)h +(ending)f(delimiter)h(but)e(oth-)630 1052 y(erwise)36 +b(unmo)s(di\014ed,)e(is)i(assigned)f(to)h(the)g(v)-5 b(ariable)36 b Ft(REPLY)p Fu(.)55 b(The)34 b(exit)j(status)e(is)h -(zero,)630 4504 y(unless)i(end-of-\014le)h(is)f(encoun)m(tered,)j +(zero,)630 1161 y(unless)i(end-of-\014le)h(is)f(encoun)m(tered,)j Ft(read)d Fu(times)h(out)f(\(in)h(whic)m(h)f(case)h(the)g(status)g(is) -630 4613 y(greater)31 b(than)f(128\),)i(a)e(v)-5 b(ariable)30 +630 1271 y(greater)31 b(than)f(128\),)i(a)e(v)-5 b(ariable)30 b(assignmen)m(t)h(error)f(\(suc)m(h)f(as)i(assigning)f(to)h(a)f -(readonly)630 4723 y(v)-5 b(ariable\))30 b(o)s(ccurs,)f(or)f(an)h(in)m +(readonly)630 1380 y(v)-5 b(ariable\))30 b(o)s(ccurs,)f(or)f(an)h(in)m (v)-5 b(alid)29 b(\014le)g(descriptor)f(is)h(supplied)e(as)i(the)g -(argumen)m(t)g(to)g Ft(-u)p Fu(.)150 4879 y Ft(readarray)870 -4988 y(readarray)45 b([-d)i Fj(delim)p Ft(])f([-n)h Fj(count)p +(argumen)m(t)g(to)g Ft(-u)p Fu(.)150 1538 y Ft(readarray)870 +1647 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 -5098 y([-t])g([-u)f Fj(fd)p Ft(])h([-C)g Fj(callback)p +1757 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 -5230 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e(input)g(in)m(to)j +1890 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 5340 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.)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(A)30 -b(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)150 455 y Ft(source)870 -588 y(source)46 b Fj(filename)630 721 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 -(48\).)150 877 y Ft(type)870 1010 y(type)47 b([-afptP])e([)p -Fj(name)i Ft(...)o(])630 1142 y Fu(F)-8 b(or)42 b(eac)m(h)g -Fr(name)p Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m -(terpreted)g(if)g(used)f(as)i(a)f(command)630 1252 y(name.)630 -1385 y(If)g(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 1494 y(`)p Ft(function)p Fu(',)32 -b(`)p Ft(builtin)p Fu(',)g(`)p Ft(file)p Fu(')g(or)h(`)p -Ft(keyword)p Fu(',)f(if)h Fr(name)38 b Fu(is)33 b(an)f(alias,)j(shell)e -(function,)630 1604 y(shell)i(builtin,)g(disk)g(\014le,)h(or)e(shell)h -(reserv)m(ed)g(w)m(ord,)h(resp)s(ectiv)m(ely)-8 b(.)55 -b(If)34 b(the)h Fr(name)40 b Fu(is)35 b(not)630 1714 -y(found,)29 b(then)h(nothing)h(is)f(prin)m(ted,)g(and)g -Ft(type)f Fu(returns)g(a)i(failure)g(status.)630 1846 -y(If)25 b(the)g Ft(-p)g Fu(option)h(is)f(used,)h Ft(type)e -Fu(either)h(returns)g(the)g(name)g(of)h(the)f(disk)g(\014le)g(that)h(w) -m(ould)630 1956 y(b)s(e)k(executed,)h(or)g(nothing)f(if)g -Ft(-t)g Fu(w)m(ould)g(not)h(return)e(`)p Ft(file)p Fu('.)630 -2089 y(The)h 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 2198 y(`)p Ft(file)p Fu('.)630 2331 y(If)f(a)g(command)g -(is)g(hashed,)f Ft(-p)h Fu(and)f Ft(-P)g Fu(prin)m(t)h(the)g(hashed)f -(v)-5 b(alue,)31 b(whic)m(h)f(is)g(not)g(neces-)630 2441 -y(sarily)h(the)f(\014le)h(that)g(app)s(ears)e(\014rst)h(in)g -Ft($PATH)p Fu(.)630 2574 y(If)22 b(the)i Ft(-a)e Fu(option)h(is)g -(used,)h Ft(type)e Fu(returns)f(all)j(of)f(the)g(places)h(that)f(con)m -(tain)i(an)d(executable)630 2683 y(named)32 b Fr(\014le)p -Fu(.)49 b(This)32 b(includes)h(aliases)h(and)e(functions,)i(if)f(and)f -(only)h(if)g(the)g Ft(-p)f Fu(option)i(is)630 2793 y(not)d(also)g -(used.)630 2926 y(If)f(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 3035 y(the)h Ft(command)d -Fu(builtin.)630 3168 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 3278 y(found.)150 3434 y Ft(typeset)870 -3567 y(typeset)46 b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p -Ft([=)p Fj(value)p Ft(])d(...)o(])630 3699 y Fu(The)31 +Fu(,)i(or)630 2000 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 +2133 y(A)f(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)150 2291 +y Ft(source)870 2424 y(source)46 b Fj(filename)630 2557 +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(48\).)150 2715 +y Ft(type)870 2848 y(type)47 b([-afptP])e([)p Fj(name)i +Ft(...)o(])630 2981 y Fu(F)-8 b(or)42 b(eac)m(h)g Fr(name)p +Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m(terpreted)g(if) +g(used)f(as)i(a)f(command)630 3091 y(name.)630 3224 y(If)g(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 3334 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 +3444 y(w)m(ord,)39 b(shell)e(function,)i(shell)e(builtin,)i(or)e +(executable)i(disk)d(\014le,)j(resp)s(ectiv)m(ely)-8 +b(.)63 b(If)37 b(the)630 3553 y Fr(name)f Fu(is)30 b(not)h(found,)e +(then)h(nothing)g(is)h(prin)m(ted,)f(and)g Ft(type)f +Fu(returns)g(a)i(failure)f(status.)630 3687 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 3796 +y(w)m(ould)30 b(b)s(e)g(found)f(b)m(y)h(searc)m(hing)h +Ft($PATH)p Fu(,)f(or)g(nothing)g(if)h Ft(-t)e Fu(w)m(ould)i(not)f +(return)f(`)p Ft(file)p Fu('.)630 3930 y(The)h 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 +4039 y(`)p Ft(file)p Fu('.)630 4173 y(If)e(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 4282 +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 4416 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 4525 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 4635 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 4744 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 +4854 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 4987 +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 5097 y(the)h Ft(command)d Fu(builtin.)630 5230 +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 5340 y(found.)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)150 299 y Ft(typeset)870 +435 y(typeset)46 b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p +Ft([=)p Fj(value)p Ft(])d(...)o(])630 571 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 3809 -y(a)g(synon)m(ym)f(for)g(the)g Ft(declare)f Fu(builtin)h(command.)150 -3965 y Ft(ulimit)870 4098 y(ulimit)46 b([-HS])g(-a)870 -4208 y(ulimit)g([-HS])g([-bcdefiklmnpqrstuvxPRT])c([)p -Fj(limit)p Ft(])630 4340 y(ulimit)25 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)29 b(to)e(pro)s(cesses) -f(started)h(b)m(y)g(the)630 4450 y(shell,)i(on)f(systems)g(that)h(allo) -m(w)h(suc)m(h)e(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i -(it)e(is)h(in)m(terpreted)630 4560 y(as)i(follo)m(ws:)630 -4716 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 4872 y Ft(-H)384 +(with)e(the)g(Korn)f(shell.)44 b(It)31 b(is)630 680 y(a)g(synon)m(ym)f +(for)g(the)g Ft(declare)f Fu(builtin)h(command.)150 842 +y Ft(ulimit)870 978 y(ulimit)46 b([-HS])g(-a)870 1088 +y(ulimit)g([-HS])g([-bcdefiklmnpqrstuvxPRT])c([)p Fj(limit)p +Ft(])630 1224 y(ulimit)25 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)29 b(to)e(pro)s(cesses)f(started) +h(b)m(y)g(the)630 1333 y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc) +m(h)e(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i(it)e(is)h +(in)m(terpreted)630 1443 y(as)i(follo)m(ws:)630 1605 +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 1767 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 5028 y Ft(-a)384 b Fu(All)31 +(with)e(a)h(resource.)630 1930 y Ft(-a)384 b Fu(All)31 b(curren)m(t)f(limits)h(are)g(rep)s(orted;)f(no)g(limits)h(are)g(set.) -630 5184 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 5340 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size) -h(of)g(core)g(\014les)f(created.)p eop end -%%Page: 66 72 -TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(66)630 299 y Ft(-d)384 +630 2092 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 2254 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size) +h(of)g(core)g(\014les)f(created.)630 2416 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 453 y Ft(-e)384 b Fu(The)30 b(maxim)m(um)g(sc)m +(segmen)m(t.)630 2578 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 608 y Ft(-f)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g +Fu(\).)630 2741 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 -763 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 917 y Ft(-k)384 b Fu(The)30 b(maxim)m(um)g(n)m +2903 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 3065 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 -1072 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 1226 +3227 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 3389 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 1336 -y(limit\).)630 1490 y Ft(-n)384 b Fu(The)38 b(maxim)m(um)h(n)m(um)m(b)s +(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110 3499 +y(limit\).)630 3661 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 -1600 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).) -630 1754 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630 -1909 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.)630 2064 +3771 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).) +630 3933 y Ft(-p)384 b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630 +4095 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.)630 4257 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 2218 y Ft(-s)384 b Fu(The)30 -b(maxim)m(um)g(stac)m(k)i(size.)630 2373 y Ft(-t)384 +(priorit)m(y)-8 b(.)630 4419 y Ft(-s)384 b Fu(The)30 +b(maxim)m(um)g(stac)m(k)i(size.)630 4582 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 2527 y Ft(-u)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i +630 4744 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 -2682 y Ft(-v)384 b Fu(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f +4906 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 -2791 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630 -2946 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 3100 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 -3255 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 -3365 y(microseconds.)630 3519 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 3674 -y(If)36 b Fr(limit)k Fu(is)c(giv)m(en,)k(and)c(the)h +5016 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630 +5178 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 5340 y Ft(-P)384 b Fu(The)30 +b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(pseudoterminals.)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)630 299 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 408 y(microseconds.)630 +565 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 722 y(If)36 b Fr(limit)k Fu(is)c(giv)m(en,)k(and)c(the)h Ft(-a)f Fu(option)h(is)f(not)h(used,)h Fr(limit)h Fu(is)e(the)g(new)f -(v)-5 b(alue)37 b(of)g(the)630 3783 y(sp)s(eci\014ed)c(resource.)51 +(v)-5 b(alue)37 b(of)g(the)630 832 y(sp)s(eci\014ed)c(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 3893 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g +Fu(stand)630 941 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 4002 y(hard)24 b(limit)i(cannot)g(b)s(e)e(increased)h(b) +b(.)48 b(A)630 1051 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 4112 y(b)s(e)37 b(increased)h(up)e(to)j(the)f(v)-5 +(limit)h(ma)m(y)630 1161 y(b)s(e)37 b(increased)h(up)e(to)j(the)f(v)-5 b(alue)38 b(of)f(the)h(hard)f(limit.)63 b(Otherwise,)39 -b(the)f(curren)m(t)f(v)-5 b(alue)630 4222 y(of)39 b(the)g(soft)h(limit) +b(the)f(curren)m(t)f(v)-5 b(alue)630 1270 y(of)39 b(the)g(soft)h(limit) g(for)f(the)g(sp)s(eci\014ed)f(resource)h(is)g(prin)m(ted,)i(unless)e -(the)g Ft(-H)f Fu(option)i(is)630 4331 y(supplied.)47 +(the)g Ft(-H)f Fu(option)i(is)630 1380 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 4441 y(if)27 b(appropriate,)h(are)f +(limit)h(name)f(and)f(unit,)630 1489 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 4550 y Ft(-H)38 +b(setting)h(new)e(limits,)j(if)e(neither)630 1599 y Ft(-H)38 b Fu(nor)g Ft(-S)g Fu(is)h(supplied,)h(b)s(oth)e(the)h(hard)f(and)g (soft)h(limits)g(are)g(set.)67 b(If)38 b(no)h(option)g(is)630 -4660 y(giv)m(en,)c(then)f Ft(-f)e Fu(is)i(assumed.)49 +1709 y(giv)m(en,)c(then)f Ft(-f)e Fu(is)i(assumed.)49 b(V)-8 b(alues)35 b(are)e(in)h(1024-b)m(yte)i(incremen)m(ts,)f(except)f -(for)f Ft(-t)p Fu(,)630 4770 y(whic)m(h)e(is)g(in)g(seconds;)h +(for)f Ft(-t)p Fu(,)630 1818 y(whic)m(h)e(is)g(in)g(seconds;)h Ft(-R)p Fu(,)g(whic)m(h)f(is)g(in)g(microseconds;)h Ft(-p)p -Fu(,)g(whic)m(h)f(is)g(in)g(units)g(of)g(512-)630 4879 +Fu(,)g(whic)m(h)f(is)g(in)g(units)g(of)g(512-)630 1928 y(b)m(yte)k(blo)s(c)m(ks;)j Ft(-P)p Fu(,)e Ft(-T)p Fu(,)f Ft(-b)p Fu(,)h Ft(-k)p Fu(,)f Ft(-n)g Fu(and)f Ft(-u)p Fu(,)h(whic)m(h)g(are)g(unscaled)g(v)-5 b(alues;)37 b(and,)f(when)630 -4989 y(in)g Fm(posix)f Fu(Mo)s(de)h(\(see)g(Section)h(6.11)g([Bash)g -(POSIX)d(Mo)s(de],)k(page)f(106\),)i Ft(-c)c Fu(and)g -Ft(-f)p Fu(,)630 5098 y(whic)m(h)30 b(are)h(in)f(512-b)m(yte)j -(incremen)m(ts.)630 5230 y(The)h(return)g(status)h(is)f(zero)i(unless)e +2037 y(in)g Fm(posix)f Fu(Mo)s(de)h(\(see)g(Section)h(6.11)g([Bash)g +(POSIX)d(Mo)s(de],)k(page)f(107\),)i Ft(-c)c Fu(and)g +Ft(-f)p Fu(,)630 2147 y(whic)m(h)30 b(are)h(in)f(512-b)m(yte)j +(incremen)m(ts.)630 2280 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 5340 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f -(limit.)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(unalias)870 -428 y(unalias)46 b([-a])g([)p Fj(name)h Ft(...)g(])630 -558 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f Fr(name)k Fu(from)39 -b(the)i(list)f(of)g(aliases.)71 b(If)40 b Ft(-a)f Fu(is)h(supplied,)h -(all)g(aliases)h(are)630 668 y(remo)m(v)m(ed.)g(Aliases)31 -b(are)g(describ)s(ed)e(in)h(Section)i(6.6)f([Aliases],)h(page)f(100.) -150 898 y Fs(4.3)68 b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 -1118 y Fk(4.3.1)63 b(The)41 b(Set)g(Builtin)150 1265 -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 1374 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 1484 y(v)-5 b(alues)31 -b(of)f(shell)h(v)-5 b(ariables.)150 1633 y Ft(set)870 -1763 y(set)47 b([-abefhkmnptuvxBCEHPT])42 b([-o)47 b -Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e -Ft(...)o(])870 1873 y(set)i([+abefhkmnptuvxBCEHPT])42 +h(or)630 2390 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f +(limit.)150 2547 y Ft(unalias)870 2680 y(unalias)46 b([-a])g([)p +Fj(name)h Ft(...)g(])630 2813 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f +Fr(name)k Fu(from)39 b(the)i(list)f(of)g(aliases.)71 +b(If)40 b Ft(-a)f Fu(is)h(supplied,)h(all)g(aliases)h(are)630 +2923 y(remo)m(v)m(ed.)g(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section) +i(6.6)f([Aliases],)h(page)f(101.)150 3161 y Fs(4.3)68 +b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 3384 y Fk(4.3.1)63 +b(The)41 b(Set)g(Builtin)150 3531 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 +3640 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 3750 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150 +3907 y Ft(set)870 4040 y(set)47 b([-abefhkmnptuvxBCEHPT])42 +b([-o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e +Ft(...)o(])870 4150 y(set)i([+abefhkmnptuvxBCEHPT])42 b([+o)47 b Fj(option-name)p Ft(])d([--])j([-])g([)p Fj(argument)e -Ft(...)o(])630 2002 y Fu(If)22 b(no)h(options)g(or)g(argumen)m(ts)g +Ft(...)o(])630 4283 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 2112 y(shell)j(v)-5 b(ariables)27 +b(alues)23 b(of)g(all)630 4392 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 2221 y(that)i(ma)m(y)h(b)s(e)e(reused)g +(cale,)k(in)c(a)i(format)630 4502 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 2331 y(Read-only)37 b(v)-5 b(ariables)37 +(v)-5 b(ariables.)630 4612 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 2440 y(listed.)630 -2570 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f +(shell)f(v)-5 b(ariables)38 b(are)630 4721 y(listed.)630 +4854 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f (shell)h(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630 -2680 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630 -2829 y Ft(-a)384 b Fu(Eac)m(h)37 b(v)-5 b(ariable)36 +4964 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630 +5121 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 2939 y(exp)s(ort)28 b(attribute)h(and)f(mark)m(ed)g(for) +(en)h(the)1110 5230 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 -3048 y(sequen)m(t)i(commands.)630 3198 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 3307 y(immediately)-8 -b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)g(the)g(next)g -(primary)g(prompt.)630 3457 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 3567 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 -3676 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 3786 y([Lists],)60 -b(page)55 b(10\),)60 b(or)54 b(a)g(comp)s(ound)e(command)h(\(see)i -(Section)f(3.2.5)1110 3895 y([Comp)s(ound)60 b(Commands],)70 -b(page)63 b(11\))g(returns)e(a)i(non-zero)f(status.)1110 -4005 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 4115 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 4224 y(part)61 b(of)g(the)g(test)h -(in)e(an)h Ft(if)f Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g -(command)1110 4334 y(executed)50 b(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)1110 -4443 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f +5340 y(sequen)m(t)i(commands.)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(-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 408 y(immediately)-8 b(,)30 +b(rather)d(than)f(b)s(efore)h(prin)m(ting)g(the)g(next)g(primary)g +(prompt.)630 555 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 +664 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 774 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 883 y([Lists],)60 b(page)55 b(10\),)60 +b(or)54 b(a)g(comp)s(ound)e(command)h(\(see)i(Section)f(3.2.5)1110 +993 y([Comp)s(ound)60 b(Commands],)70 b(page)63 b(11\))g(returns)e(a)i +(non-zero)f(status.)1110 1103 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 +1212 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 +1322 y(part)61 b(of)g(the)g(test)h(in)e(an)h Ft(if)f +Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g(command)1110 +1431 y(executed)50 b(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)1110 +1541 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f (in)g(a)g(pip)s(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110 -4553 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h +1650 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h (with)e Ft(!)p Fu(.)48 b(If)33 b(a)g(comp)s(ound)1110 -4662 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h -(status)f(b)s(ecause)1110 4772 y(a)k(command)g(failed)g(while)g +1760 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h +(status)f(b)s(ecause)1110 1870 y(a)k(command)g(failed)g(while)g Ft(-e)f Fu(w)m(as)i(b)s(eing)e(ignored,)j(the)e(shell)g(do)s(es)g(not) -1110 4882 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g +1110 1979 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g (is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)1110 -5011 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 5121 y(vironmen)m(t)j(separately)i +2107 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 2217 y(vironmen)m(t)j(separately)i (\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110 -5230 y(vironmen)m(t],)i(page)f(43\),)i(and)d(ma)m(y)h(cause)f -(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 5340 y(cuting)d(all)g -(the)g(commands)f(in)g(the)g(subshell.)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)1110 299 y(If)41 +2326 y(vironmen)m(t],)i(page)f(43\),)i(and)d(ma)m(y)h(cause)f +(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 2436 y(cuting)d(all)g +(the)g(commands)f(in)g(the)g(subshell.)1110 2564 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 408 y(where)31 b Ft(-e)g Fu(is)g(b)s(eing)g +(a)g(con)m(text)1110 2673 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 -518 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 628 y Ft(-e)25 +2783 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 2892 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 737 y(If)32 b(a)i(comp)s(ound)d +g(returns)e(a)i(failure)g(status.)1110 3002 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 847 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 -956 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 1066 y(the)31 b(function)f(call)h -(completes.)630 1217 y Ft(-f)384 b Fu(Disable)31 b(\014lename)g -(expansion)f(\(globbing\).)630 1367 y Ft(-h)384 b Fu(Lo)s(cate)33 +1110 3112 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 3221 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 3331 y(the)31 b(function)f(call)h +(completes.)630 3477 y Ft(-f)384 b Fu(Disable)31 b(\014lename)g +(expansion)f(\(globbing\).)630 3623 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 1477 y(execution.)42 b(This)29 -b(option)i(is)g(enabled)f(b)m(y)g(default.)630 1628 y +(ok)m(ed)h(up)e(for)1110 3733 y(execution.)42 b(This)29 +b(option)i(is)g(enabled)f(b)m(y)g(default.)630 3879 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 -1737 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 1847 y(command)30 -b(name.)630 1998 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(113\).)41 -b(All)1110 2107 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s +3988 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 4098 y(command)30 +b(name.)630 4244 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(116\).)41 +b(All)1110 4354 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 -2217 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 2367 y Ft(-n)384 +4463 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 4609 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 2477 y(c)m(hec)m(k)d(a)e +b(This)37 b(ma)m(y)h(b)s(e)f(used)f(to)1110 4719 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 2587 y(tiv)m(e)h(shells.)630 -2737 y Ft(-o)e Fj(option-name)1110 2847 y Fu(Set)h(the)f(option)h +(ignored)g(b)m(y)g(in)m(terac-)1110 4829 y(tiv)m(e)h(shells.)630 +4975 y Ft(-o)e Fj(option-name)1110 5084 y Fu(Set)h(the)f(option)h (corresp)s(onding)e(to)i Fr(option-name)5 b Fu(:)1110 -2998 y Ft(allexport)1590 3107 y Fu(Same)30 b(as)h Ft(-a)p -Fu(.)1110 3258 y Ft(braceexpand)1590 3367 y Fu(Same)f(as)h -Ft(-B)p Fu(.)1110 3518 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 3628 y([Command)33 b(Line)g(Editing],)h(page)h -(117\).)51 b(This)32 b(also)i(a\013ects)1590 3737 y(the)d(editing)g(in) -m(terface)h(used)d(for)h Ft(read)f(-e)p Fu(.)1110 3888 -y Ft(errexit)144 b Fu(Same)30 b(as)h Ft(-e)p Fu(.)1110 -4039 y Ft(errtrace)96 b Fu(Same)30 b(as)h Ft(-E)p Fu(.)1110 -4189 y Ft(functrace)1590 4299 y Fu(Same)f(as)h Ft(-T)p -Fu(.)1110 4450 y Ft(hashall)144 b Fu(Same)30 b(as)h Ft(-h)p -Fu(.)1110 4600 y Ft(histexpand)1590 4710 y Fu(Same)f(as)h -Ft(-H)p Fu(.)1110 4861 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 4970 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(152.)60 -b(This)36 b(option)h(is)f(on)1590 5080 y(b)m(y)30 b(default)h(in)f(in)m -(teractiv)m(e)j(shells.)1110 5230 y Ft(ignoreeof)1590 -5340 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.)p eop end +5230 y Ft(allexport)1590 5340 y Fu(Same)30 b(as)h Ft(-a)p +Fu(.)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)1110 299 y -Ft(keyword)144 b Fu(Same)30 b(as)h Ft(-k)p Fu(.)1110 -457 y Ft(monitor)144 b Fu(Same)30 b(as)h Ft(-m)p Fu(.)1110 -615 y Ft(noclobber)1590 725 y Fu(Same)f(as)h Ft(-C)p -Fu(.)1110 883 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p -Fu(.)1110 1042 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p -Fu(.)1110 1200 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110 -1358 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110 -1517 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110 -1675 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110 -1833 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110 -1991 y Ft(pipefail)96 b Fu(If)44 b(set,)k(the)d(return)e(v)-5 +Ft(braceexpand)1590 408 y Fu(Same)30 b(as)h Ft(-B)p Fu(.)1110 +573 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 682 +y([Command)33 b(Line)g(Editing],)h(page)h(120\).)51 b(This)32 +b(also)i(a\013ects)1590 792 y(the)d(editing)g(in)m(terface)h(used)d +(for)h Ft(read)f(-e)p Fu(.)1110 956 y Ft(errexit)144 +b Fu(Same)30 b(as)h Ft(-e)p Fu(.)1110 1121 y Ft(errtrace)96 +b Fu(Same)30 b(as)h Ft(-E)p Fu(.)1110 1285 y Ft(functrace)1590 +1395 y Fu(Same)f(as)h Ft(-T)p Fu(.)1110 1559 y Ft(hashall)144 +b Fu(Same)30 b(as)h Ft(-h)p Fu(.)1110 1724 y Ft(histexpand)1590 +1833 y Fu(Same)f(as)h Ft(-H)p Fu(.)1110 1998 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 2107 y([Bash)d(History)g(F)-8 b(acilities],)41 +b(page)c(155.)60 b(This)36 b(option)h(is)f(on)1590 2217 +y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110 +2381 y Ft(ignoreeof)1590 2491 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 2655 +y Ft(keyword)144 b Fu(Same)30 b(as)h Ft(-k)p Fu(.)1110 +2819 y Ft(monitor)144 b Fu(Same)30 b(as)h Ft(-m)p Fu(.)1110 +2984 y Ft(noclobber)1590 3093 y Fu(Same)f(as)h Ft(-C)p +Fu(.)1110 3258 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p +Fu(.)1110 3422 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p +Fu(.)1110 3587 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110 +3751 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110 +3915 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110 +4080 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110 +4244 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110 +4408 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 2101 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h -(exit)g(with)f(a)g(non-zero)1590 2211 y(status,)28 b(or)f(zero)g(if)f +b(of)1590 4518 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h +(exit)g(with)f(a)g(non-zero)1590 4628 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 -2320 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h -(default.)1110 2478 y Ft(posix)240 b Fu(Change)30 b(the)g(b)s(eha)m +4737 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h +(default.)1110 4902 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 -2588 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 2698 y(dard)h(\(see)j -(Section)f(6.11)h([Bash)f(POSIX)e(Mo)s(de],)j(page)f(106\).)1590 -2807 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 2917 y(p)s(erset)30 b(of)h(that)f -(standard.)1110 3075 y Ft(privileged)1590 3185 y Fu(Same)g(as)h -Ft(-p)p Fu(.)1110 3343 y Ft(verbose)144 b Fu(Same)30 -b(as)h Ft(-v)p Fu(.)1110 3501 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 3611 y(the)31 b(editing)g(in)m -(terface)h(used)d(for)h Ft(read)f(-e)p Fu(.)1110 3769 -y Ft(xtrace)192 b Fu(Same)30 b(as)h Ft(-x)p Fu(.)630 -3927 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 4037 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 -4147 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 -4256 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 -4366 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 -4475 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 4585 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 4695 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 4804 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 4914 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f -(and)g(group)g(ids.)630 5072 y Ft(-r)384 b Fu(Enable)32 -b(restricted)h(shell)f(mo)s(de.)45 b(This)31 b(option)i(cannot)g(b)s(e) -e(unset)h(once)g(it)1110 5182 y(has)e(b)s(een)g(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 +5011 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 5121 y(dard)h(\(see)j +(Section)f(6.11)h([Bash)f(POSIX)e(Mo)s(de],)j(page)f(107\).)1590 +5230 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 5340 y(p)s(erset)30 b(of)h(that)f +(standard.)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(-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 -902 y Ft(-v)384 b Fu(Prin)m(t)30 b(shell)h(input)e(lines)i(as)g(they)f -(are)h(read.)630 1066 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 1176 y Ft(select)29 b Fu(commands,)j(and)e -(arithmetic)j Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110 -1285 y(men)m(ts)h(or)f(asso)s(ciated)i(w)m(ord)e(lists)h(after)g(they)f -(are)h(expanded)f(and)f(b)s(efore)1110 1395 y(they)i(are)g(executed.)49 -b(The)32 b(v)-5 b(alue)33 b(of)g(the)g Ft(PS4)f Fu(v)-5 -b(ariable)34 b(is)f(expanded)f(and)1110 1504 y(the)24 -b(resultan)m(t)h(v)-5 b(alue)24 b(is)g(prin)m(ted)g(b)s(efore)f(the)h -(command)g(and)f(its)i(expanded)1110 1614 y(argumen)m(ts.)630 -1778 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 1888 -y(Expansion],)30 b(page)h(24\).)42 b(This)30 b(option)h(is)f(on)g(b)m -(y)h(default.)630 2052 y Ft(-C)384 b Fu(Prev)m(en)m(t)25 +b(Shell)30 b(Builtin)h(Commands)2069 b(70)1110 299 y +Ft(privileged)1590 408 y Fu(Same)30 b(as)h Ft(-p)p Fu(.)1110 +569 y Ft(verbose)144 b Fu(Same)30 b(as)h Ft(-v)p Fu(.)1110 +729 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 +838 y(the)31 b(editing)g(in)m(terface)h(used)d(for)h +Ft(read)f(-e)p Fu(.)1110 999 y Ft(xtrace)192 b Fu(Same)30 +b(as)h Ft(-x)p Fu(.)630 1159 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 1268 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 1378 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 1487 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 1597 y(is)37 +b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d(\(group\))g(id)g(not)g +(equal)h(to)g(the)f(real)1110 1707 y(user)h(\(group\))h(id,)i(and)d +(the)h Ft(-p)f Fu(option)i(is)e(not)i(supplied,)f(these)h(actions)1110 +1816 y(are)32 b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is) +g(set)h(to)f(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 +1926 y 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 +2035 y(T)-8 b(urning)35 b(this)i(option)g(o\013)g(causes)g(the)g +(e\013ectiv)m(e)i(user)d(and)g(group)g(ids)g(to)1110 +2145 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630 +2305 y Ft(-r)384 b Fu(Enable)32 b(restricted)h(shell)f(mo)s(de.)45 +b(This)31 b(option)i(cannot)g(b)s(e)e(unset)h(once)g(it)1110 +2415 y(has)e(b)s(een)g(set.)630 2575 y Ft(-t)384 b Fu(Exit)31 +b(after)g(reading)f(and)g(executing)h(one)g(command.)630 +2735 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 +2845 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 2954 y(error)24 +b(when)g(p)s(erforming)g(parameter)h(expansion.)39 b(An)24 +b(error)h(message)h(will)1110 3064 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 3173 y(exit.)630 3334 y Ft(-v)384 b Fu(Prin)m(t)30 +b(shell)h(input)e(lines)i(as)g(they)f(are)h(read.)630 +3494 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 +3603 y Ft(select)29 b Fu(commands,)j(and)e(arithmetic)j +Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110 3713 +y(men)m(ts)g(or)g(asso)s(ciated)h(w)m(ord)e(lists)h(to)g(standard)f +(error)g(after)i(they)e(are)h(ex-)1110 3823 y(panded)20 +b(and)h(b)s(efore)g(they)g(are)h(executed.)39 b(The)21 +b(shell)g(prin)m(ts)g(the)h(expanded)1110 3932 y(v)-5 +b(alue)28 b(of)f(the)g Ft(PS4)g Fu(v)-5 b(ariable)28 +b(b)s(efore)f(the)g(command)g(and)g(its)g(expanded)g(ar-)1110 +4042 y(gumen)m(ts.)630 4202 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 +4312 y(Expansion],)30 b(page)h(24\).)42 b(This)30 b(option)h(is)f(on)g +(b)m(y)h(default.)630 4472 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 -2162 y(existing)31 b(\014les.)630 2326 y Ft(-E)384 b +4581 y(existing)31 b(\014les.)630 4741 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 2436 y(substitutions,)35 +(y)g(shell)h(functions,)h(command)1110 4851 y(substitutions,)35 b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.) -1110 2545 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 2710 y Ft(-H)384 b Fu(Enable)38 +1110 4961 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 5121 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 2819 y(teraction],)g(page)d -(154\).)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 2929 y(shells.)630 3093 y Ft(-P)384 +(Section)h(9.3)f([History)g(In-)1110 5230 y(teraction],)g(page)d +(157\).)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 5340 y(shells.)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 Ft(-P)384 b Fu(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s(olic)e(links)g -(when)f(p)s(erforming)g(commands)1110 3203 y(suc)m(h)29 +(when)f(p)s(erforming)g(commands)1110 408 y(suc)m(h)29 b(as)h Ft(cd)f Fu(whic)m(h)g(c)m(hange)h(the)g(curren)m(t)f(directory) --8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 3313 y(tory)j(is)g(used) -f(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i -(c)m(hain)f(of)1110 3422 y(directories)j(when)d(p)s(erforming)h +-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 518 y(tory)j(is)g(used)f +(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i +(c)m(hain)f(of)1110 628 y(directories)j(when)d(p)s(erforming)h (commands)g(whic)m(h)g(c)m(hange)i(the)f(curren)m(t)1110 -3532 y(directory)-8 b(.)1110 3669 y(F)g(or)42 b(example,)i(if)d +737 y(directory)-8 b(.)1110 870 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 3778 y Fu(then:)1350 3915 y Ft($)47 -b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4025 y(/usr/sys)1350 -4134 y($)g(cd)h(..;)f(pwd)1350 4244 y(/usr)1110 4381 -y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 4518 -y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4628 y(/usr/local/sys) -1350 4737 y($)g(cd)h(..;)f(pwd)1350 4847 y(/usr/local)630 -5011 y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g +Ft(/usr/local/sys)1110 980 y Fu(then:)1350 1113 y Ft($)47 +b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1223 y(/usr/sys)1350 +1332 y($)g(cd)h(..;)f(pwd)1350 1442 y(/usr)1110 1575 +y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 1708 +y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1818 y(/usr/local/sys) +1350 1927 y($)g(cd)h(..;)f(pwd)1350 2037 y(/usr/local)630 +2194 y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g Ft(DEBUG)e Fu(and)i Ft(RETURN)e Fu(are)i(inherited)g(b)m(y)f(shell)i -(func-)1110 5121 y(tions,)k(command)d(substitutions,)h(and)f(commands)g -(executed)h(in)f(a)h(sub-)1110 5230 y(shell)33 b(en)m(vironmen)m(t.)49 +(func-)1110 2303 y(tions,)k(command)d(substitutions,)h(and)f(commands)g +(executed)h(in)f(a)h(sub-)1110 2413 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: 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 Ft(--)384 -b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e(option,)k(then)c -(the)h(p)s(ositional)g(parame-)1110 408 y(ters)31 b(are)g(unset.)40 -b(Otherwise,)31 b(the)f(p)s(ositional)i(parameters)f(are)f(set)h(to)h -(the)1110 518 y Fr(argumen)m(ts)p Fu(,)f(ev)m(en)g(if)f(some)h(of)g -(them)f(b)s(egin)g(with)g(a)h(`)p Ft(-)p Fu('.)630 694 -y Ft(-)432 b Fu(Signal)45 b(the)g(end)f(of)h(options,)k(cause)c(all)h -(remaining)e Fr(argumen)m(ts)49 b Fu(to)d(b)s(e)1110 -803 y(assigned)33 b(to)h(the)g(p)s(ositional)g(parameters.)49 -b(The)33 b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are)1110 -913 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m(ts,)j -(the)e(p)s(ositional)g(parameters)1110 1022 y(remain)30 -b(unc)m(hanged.)630 1198 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`) +(not)1110 2522 y(inherited)d(in)g(suc)m(h)g(cases.)630 +2679 y Ft(--)384 b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e +(option,)k(then)c(the)h(p)s(ositional)g(parame-)1110 +2789 y(ters)31 b(are)g(unset.)40 b(Otherwise,)31 b(the)f(p)s(ositional) +i(parameters)f(are)f(set)h(to)h(the)1110 2898 y Fr(argumen)m(ts)p +Fu(,)f(ev)m(en)g(if)f(some)h(of)g(them)f(b)s(egin)g(with)g(a)h(`)p +Ft(-)p Fu('.)630 3055 y Ft(-)432 b Fu(Signal)45 b(the)g(end)f(of)h +(options,)k(cause)c(all)h(remaining)e Fr(argumen)m(ts)49 +b Fu(to)d(b)s(e)1110 3164 y(assigned)33 b(to)h(the)g(p)s(ositional)g +(parameters.)49 b(The)33 b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are) +1110 3274 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m +(ts,)j(the)e(p)s(ositional)g(parameters)1110 3384 y(remain)30 +b(unc)m(hanged.)630 3540 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`) p Ft(-)p Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e(turned)g -(o\013.)40 b(The)27 b(options)h(can)630 1307 y(also)36 +(o\013.)40 b(The)27 b(options)h(can)630 3650 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 -1417 y(found)29 b(in)h Ft($-)p Fu(.)630 1560 y(The)43 +3759 y(found)29 b(in)h Ft($-)p Fu(.)630 3893 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 1669 y(order,)30 +(parameters)g(and)f(are)h(assigned,)j(in)630 4002 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 1812 y(The)f(return)f(status)i(is)f(alw)m(a)m +Fu(is)g(set)h(to)g(N.)630 4135 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 2027 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150 -2174 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h +(supplied.)150 4332 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150 +4479 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h (additional)f(shell)f(optional)i(b)s(eha)m(vior.)150 -2358 y Ft(shopt)870 2500 y(shopt)46 b([-pqsu])g([-o])h([)p -Fj(optname)e Ft(...])630 2643 y Fu(T)-8 b(oggle)37 b(the)e(v)-5 +4635 y Ft(shopt)870 4768 y(shopt)46 b([-pqsu])g([-o])h([)p +Fj(optname)e Ft(...])630 4902 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 2752 y(can)24 +(eha)m(vior.)55 b(The)34 b(settings)630 5011 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 2862 y(the)k Ft(-o)f Fu(option)i(to)f(the)g +b(with)630 5121 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 2972 y(page)i(67\).)45 b(With)32 b(no)f(options,)h(or)g +(Builtin],)630 5230 y(page)i(67\).)45 b(With)32 b(no)f(options,)h(or)g (with)f(the)g Ft(-p)g Fu(option,)h(a)g(list)g(of)f(all)i(settable)g -(options)630 3081 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h +(options)630 5340 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h (of)f(whether)g(or)g(not)g(eac)m(h)h(is)g(set;)h(if)e -Fr(optname)5 b Fu(s)34 b(are)630 3191 y(supplied,)25 +Fr(optname)5 b Fu(s)34 b(are)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(supplied,)25 b(the)g(output)g(is)g(restricted)g(to)h(those)g(options.)39 -b(The)24 b Ft(-p)h Fu(option)g(causes)g(output)630 3300 +b(The)24 b Ft(-p)h Fu(option)g(causes)g(output)630 408 y(to)30 b(b)s(e)f(displa)m(y)m(ed)g(in)g(a)h(form)f(that)g(ma)m(y)h(b)s (e)f(reused)f(as)i(input.)39 b(Other)29 b(options)g(ha)m(v)m(e)i(the) -630 3410 y(follo)m(wing)h(meanings:)630 3586 y Ft(-s)384 +630 518 y(follo)m(wing)h(meanings:)630 671 y Ft(-s)384 b Fu(Enable)30 b(\(set\))i(eac)m(h)f Fr(optname)p Fu(.)630 -3761 y Ft(-u)384 b Fu(Disable)31 b(\(unset\))g(eac)m(h)h -Fr(optname)p Fu(.)630 3937 y Ft(-q)384 b Fu(Suppresses)28 +825 y Ft(-u)384 b Fu(Disable)31 b(\(unset\))g(eac)m(h)h +Fr(optname)p Fu(.)630 978 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 4046 y Fr(optname)37 b Fu(is)31 b(set)h(or)f(unset.)43 +1110 1088 y Fr(optname)37 b Fu(is)31 b(set)h(or)f(unset.)43 b(If)31 b(m)m(ultiple)h Fr(optname)37 b Fu(argumen)m(ts)31 -b(are)h(giv)m(en)1110 4156 y(with)d Ft(-q)p Fu(,)f(the)i(return)d +b(are)h(giv)m(en)1110 1198 y(with)d Ft(-q)p Fu(,)f(the)i(return)d (status)j(is)f(zero)g(if)g(all)h Fr(optname)5 b Fu(s)29 -b(are)h(enabled;)f(non-)1110 4265 y(zero)i(otherwise.)630 -4441 y Ft(-o)384 b Fu(Restricts)22 b(the)f(v)-5 b(alues)22 +b(are)h(enabled;)f(non-)1110 1307 y(zero)i(otherwise.)630 +1461 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 4551 y(to)31 b(the)g Ft(set)e +(the)g Ft(-o)f Fu(option)1110 1570 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 -(67\).)630 4726 y(If)e(either)i Ft(-s)e Fu(or)h Ft(-u)f +(67\).)630 1724 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 4836 y(options)h(whic)m(h)f +Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630 1833 y(options)h(whic)m(h)f (are)h(set)f(or)h(unset,)f(resp)s(ectiv)m(ely)-8 b(.)630 -4978 y(Unless)30 b(otherwise)h(noted,)g(the)g Ft(shopt)d +1965 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 +2096 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 +2206 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 2315 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: 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(The)30 -b(list)h(of)f Ft(shopt)f Fu(options)i(is:)630 545 y Ft -(assoc_expand_once)1110 655 y Fu(If)h(set,)i(the)e(shell)h(suppresses)e -(m)m(ultiple)i(ev)-5 b(aluation)34 b(of)e(asso)s(ciativ)m(e)j(arra)m(y) -1110 765 y(subscripts)24 b(during)h(arithmetic)h(expression)g(ev)-5 -b(aluation,)28 b(while)e(executing)1110 874 y(builtins)c(that)i(can)f +b(alid)30 b(shell)h(option.)630 2447 y(The)f(list)h(of)f +Ft(shopt)f Fu(options)i(is:)630 2600 y Ft(assoc_expand_once)1110 +2710 y Fu(If)h(set,)i(the)e(shell)h(suppresses)e(m)m(ultiple)i(ev)-5 +b(aluation)34 b(of)e(asso)s(ciativ)m(e)j(arra)m(y)1110 +2819 y(subscripts)24 b(during)h(arithmetic)h(expression)g(ev)-5 +b(aluation,)28 b(while)e(executing)1110 2929 y(builtins)c(that)i(can)f (p)s(erform)f(v)-5 b(ariable)24 b(assignmen)m(ts,)h(and)e(while)g -(executing)1110 984 y(builtins)30 b(that)h(p)s(erform)e(arra)m(y)i -(dereferencing.)630 1230 y Ft(autocd)192 b Fu(If)27 b(set,)h(a)g +(executing)1110 3039 y(builtins)30 b(that)h(p)s(erform)e(arra)m(y)i +(dereferencing.)630 3192 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 1340 y(as)j(if)f(it)h(w)m(ere)f(the)h(argumen)m(t)g(to)g +(executed)1110 3302 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 -1450 y(used)g(b)m(y)g(in)m(teractiv)m(e)j(shells.)630 -1696 y Ft(cdable_vars)1110 1806 y Fu(If)h(this)h(is)g(set,)i(an)e +3411 y(used)g(b)m(y)g(in)m(teractiv)m(e)j(shells.)630 +3565 y Ft(cdable_vars)1110 3674 y Fu(If)h(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 1915 y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h +(not)1110 3784 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 2025 y(the)g(directory)f(to)i(c)m(hange)f(to.)630 -2271 y Ft(cdspell)144 b Fu(If)27 b(set,)h(minor)f(errors)f(in)h(the)g +b(is)1110 3893 y(the)g(directory)f(to)i(c)m(hange)f(to.)630 +4047 y Ft(cdspell)144 b Fu(If)27 b(set,)h(minor)f(errors)f(in)h(the)g (sp)s(elling)h(of)f(a)g(directory)h(comp)s(onen)m(t)f(in)g(a)h -Ft(cd)1110 2381 y Fu(command)i(will)h(b)s(e)f(corrected.)43 +Ft(cd)1110 4156 y Fu(command)i(will)h(b)s(e)f(corrected.)43 b(The)30 b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110 -2491 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47 +4266 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47 b(and)40 b(a)i(c)m(haracter)h(to)s(o)g(man)m(y)-8 b(.)74 -b(If)42 b(a)1110 2600 y(correction)25 b(is)e(found,)g(the)h(corrected)g -(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 2710 +b(If)42 b(a)1110 4376 y(correction)25 b(is)e(found,)g(the)h(corrected)g +(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 4485 y(pro)s(ceeds.)40 b(This)30 b(option)h(is)f(only)h(used)e(b)m(y)h(in)m -(teractiv)m(e)k(shells.)630 2956 y Ft(checkhash)1110 -3066 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 3176 +(teractiv)m(e)k(shells.)630 4639 y Ft(checkhash)1110 +4748 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 4858 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 3285 +b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 4967 y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630 -3532 y Ft(checkjobs)1110 3641 y Fu(If)d(set,)i(Bash)e(lists)h(the)g +5121 y Ft(checkjobs)1110 5230 y Fu(If)d(set,)i(Bash)e(lists)h(the)g (status)g(of)f(an)m(y)h(stopp)s(ed)f(and)g(running)e(jobs)i(b)s(efore) -1110 3751 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72 -b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)1110 -3861 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h -(exit)g(is)g(attempted)h(without)e(an)1110 3970 y(in)m(terv)m(ening)d -(command)f(\(see)h(Chapter)e(7)h([Job)g(Con)m(trol],)i(page)f(113\).)40 -b(The)1110 4080 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h -(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 4326 y Ft(checkwinsize)1110 -4436 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 4545 +1110 5340 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72 +b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)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)1110 299 y(the)30 +b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h(exit)g(is)g +(attempted)h(without)e(an)1110 408 y(in)m(terv)m(ening)d(command)f +(\(see)h(Chapter)e(7)h([Job)g(Con)m(trol],)i(page)f(116\).)40 +b(The)1110 518 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h +(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 690 y Ft(checkwinsize)1110 +800 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 909 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 4655 y Ft(COLUMNS)p Fu(.)39 b(This)29 b(option)i(is)g -(enabled)f(b)m(y)g(default.)630 4902 y Ft(cmdhist)144 +Fu(and)1110 1019 y Ft(COLUMNS)p Fu(.)39 b(This)29 b(option)i(is)g +(enabled)f(b)m(y)g(default.)630 1191 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 5011 y(in)c(the)g(same)g +(of)g(a)h(m)m(ultiple-line)g(command)1110 1301 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 5121 y(commands.)79 +(re-editing)g(of)f(m)m(ulti-line)1110 1410 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)1110 5230 y(e\013ect)30 b(if)e(command)g(history)g(is)h +(has)g(an)1110 1520 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 -5340 y(F)-8 b(acilities],)34 b(page)d(152\).)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)630 299 y Ft(compat31)630 -408 y(compat32)630 518 y(compat40)630 628 y(compat41)630 -737 y(compat42)630 847 y(compat43)630 956 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 1066 -y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g -(110\).)630 1219 y Ft(complete_fullquote)1110 1329 y +1630 y(F)-8 b(acilities],)34 b(page)d(155\).)630 1802 +y Ft(compat31)630 1911 y(compat32)630 2021 y(compat40)630 +2131 y(compat41)630 2240 y(compat42)630 2350 y(compat43)630 +2459 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 +2569 y(tion)31 b(6.12)h([Shell)e(Compatibilit)m(y)i(Mo)s(de],)f(page)g +(112\).)630 2741 y Ft(complete_fullquote)1110 2851 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 1439 y(tory)g(names)f(when)g(p)s +(\014lenames)g(and)g(direc-)1110 2960 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 1548 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 1658 +(es)1110 3070 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 3180 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 1767 y(acters)29 b(app)s(ear)e(in)g(shell)h +(these)i(metac)m(har-)1110 3289 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 1877 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v) +(completed.)1110 3399 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 -1987 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 2096 -y(\014lenames)j(will)h(not)f(b)s(e)g(quoted,)h(either.)41 -b(This)28 b(is)i(activ)m(e)h(only)e(when)g(bash)1110 -2206 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 2315 +3508 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 3618 +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 +3727 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 3837 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 2425 y(through)30 -b(4.2.)630 2578 y Ft(direxpand)1110 2688 y Fu(If)k(set,)i(Bash)f +(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 3947 y(through)30 +b(4.2.)630 4119 y Ft(direxpand)1110 4228 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 2798 y(pansion)k(when)g(p)s(erforming)f(\014lename)i -(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 2907 +(ex-)1110 4338 y(pansion)k(when)g(p)s(erforming)f(\014lename)i +(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 4448 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 3017 y(to)d(preserv)m(e)g -(what)f(the)g(user)g(t)m(yp)s(ed.)630 3170 y Ft(dirspell)96 +b(If)33 b(not)i(set,)h(Bash)e(attempts)1110 4557 y(to)d(preserv)m(e)g +(what)f(the)g(user)g(t)m(yp)s(ed.)630 4729 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 3280 y(w)m(ord)36 b(completion)h(if)f +(directory)g(names)f(during)1110 4839 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 -3389 y(exist.)630 3543 y Ft(dotglob)144 b Fu(If)36 b(set,)i(Bash)e +4949 y(exist.)630 5121 y Ft(dotglob)144 b Fu(If)36 b(set,)i(Bash)e (includes)g(\014lenames)g(b)s(eginning)f(with)h(a)g(`.')58 -b(in)36 b(the)g(results)1110 3652 y(of)f(\014lename)f(expansion.)53 +b(in)36 b(the)g(results)1110 5230 y(of)f(\014lename)f(expansion.)53 b(The)33 b(\014lenames)i(`)p Ft(.)p Fu(')f(and)g(`)p -Ft(..)p Fu(')g(m)m(ust)h(alw)m(a)m(ys)h(b)s(e)1110 3762 +Ft(..)p Fu(')g(m)m(ust)h(alw)m(a)m(ys)h(b)s(e)1110 5340 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 3915 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 4025 y(the)i(\014le)g -(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h(the)f -Ft(exec)f Fu(builtin)h(command.)39 b(An)1110 4134 y(in)m(teractiv)m(e) +Ft(dotglob)f Fu(is)h(set.)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(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 +408 y(the)i(\014le)g(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h(the) +f Ft(exec)f Fu(builtin)h(command.)39 b(An)1110 518 y(in)m(teractiv)m(e) 33 b(shell)e(do)s(es)f(not)g(exit)i(if)e Ft(exec)f Fu(fails.)630 -4288 y Ft(expand_aliases)1110 4398 y Fu(If)j(set,)h(aliases)g(are)g +689 y Ft(expand_aliases)1110 798 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 4507 y(tion)i(6.6)h([Aliases],)h(page)e(100.)55 -b(This)33 b(option)i(is)g(enabled)f(b)m(y)h(default)f(for)1110 -4617 y(in)m(teractiv)m(e)f(shells.)630 4770 y Ft(extdebug)96 +1110 908 y(tion)i(6.6)h([Aliases],)h(page)e(101.)55 b(This)33 +b(option)i(is)g(enabled)f(b)m(y)h(default)f(for)1110 +1017 y(in)m(teractiv)m(e)f(shells.)630 1188 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 -4880 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 4989 y Ft(--debugger)32 +1297 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 1407 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 5099 y(use)30 b(b)m(y)g(debuggers)g(is) -h(enabled:)1159 5230 y(1.)61 b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g +m(vior)c(in)m(tended)g(for)1110 1517 y(use)30 b(b)m(y)g(debuggers)g(is) +h(enabled:)1159 1657 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 -5340 y(Builtins],)29 b(page)g(55\))g(displa)m(ys)f(the)g(source)h -(\014le)f(name)g(and)f(line)h(n)m(um-)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)1290 299 y(b)s(er)29 -b(corresp)s(onding)g(to)i(eac)m(h)g(function)f(name)g(supplied)f(as)i -(an)f(argu-)1290 408 y(men)m(t.)1159 547 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 656 y(the)31 b(next)f(command)g(is)h -(skipp)s(ed)e(and)g(not)i(executed.)1159 795 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 -905 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 1014 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 -1124 y(sim)m(ulates)d(a)g(call)h(to)f Ft(return)p Fu(.)1159 -1262 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 -1372 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g(V)-8 -b(ariables],)32 b(page)f(78\).)1159 1510 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 1620 y(functions,)32 +1766 y(Builtins],)29 b(page)g(56\))g(displa)m(ys)f(the)g(source)h +(\014le)f(name)g(and)f(line)h(n)m(um-)1290 1876 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 1985 y(men)m(t.)1159 2125 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 2235 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g +(not)i(executed.)1159 2375 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 2485 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 2594 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 2704 y(sim)m(ulates)d(a)g(call)h(to)f +Ft(return)p Fu(.)1159 2844 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 2953 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g +(V)-8 b(ariables],)32 b(page)f(79\).)1159 3093 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 3203 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 1729 y Ft(DEBUG)d -Fu(and)h Ft(RETURN)e Fu(traps.)1159 1868 y(6.)61 b(Error)41 +Fj(command)e Ft(\))j Fu(inherit)h(the)1290 3313 y Ft(DEBUG)d +Fu(and)h Ft(RETURN)e Fu(traps.)1159 3453 y(6.)61 b(Error)41 b(tracing)i(is)f(enabled:)63 b(command)42 b(substitution,)i(shell)f -(func-)1290 1977 y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i +(func-)1290 3562 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 2087 y Fu(trap.)630 2254 y Ft(extglob)144 +Ft(ERR)1290 3672 y Fu(trap.)630 3842 y Ft(extglob)144 b Fu(If)26 b(set,)i(the)f(extended)f(pattern)h(matc)m(hing)g(features)g -(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 2364 y(Section)j(3.5.8.1)i +(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 3952 y(Section)j(3.5.8.1)i ([P)m(attern)f(Matc)m(hing],)g(page)f(36\))h(are)f(enabled.)630 -2531 y Ft(extquote)96 b Fu(If)51 b(set,)58 b Ft($')p +4122 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 2641 y Ft(${)p +Fu(quoting)k(is)e(p)s(erformed)f(within)1110 4232 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 2750 y(is)d(enabled)h(b)m(y)f -(default.)630 2917 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d +(quotes.)55 b(This)33 b(option)1110 4341 y(is)d(enabled)h(b)m(y)f +(default.)630 4512 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 3027 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630 -3194 y Ft(force_fignore)1110 3304 y Fu(If)43 b(set,)k(the)d(su\016xes)f +(ex-)1110 4622 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630 +4792 y Ft(force_fignore)1110 4902 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 3414 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h +b(ariable)44 b(cause)1110 5011 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 -3523 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 3633 y([Bash)24 -b(V)-8 b(ariables],)27 b(page)e(78,)h(for)d(a)h(description)g(of)g -Ft(FIGNORE)p Fu(.)37 b(This)22 b(option)1110 3742 y(is)30 -b(enabled)h(b)m(y)f(default.)630 3910 y Ft(globasciiranges)1110 -4019 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 4129 y(sions)28 +5121 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 5230 y([Bash)24 +b(V)-8 b(ariables],)27 b(page)e(79,)h(for)d(a)h(description)g(of)g +Ft(FIGNORE)p Fu(.)37 b(This)22 b(option)1110 5340 y(is)30 +b(enabled)h(b)m(y)f(default.)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)630 299 y Ft(globasciiranges) +1110 408 y Fu(If)33 b(set,)h(range)f(expressions)g(used)f(in)h(pattern) +g(matc)m(hing)h(brac)m(k)m(et)h(expres-)1110 518 y(sions)28 b(\(see)h(Section)h(3.5.8.1)g([P)m(attern)g(Matc)m(hing],)h(page)e -(36\))g(b)s(eha)m(v)m(e)g(as)g(if)1110 4238 y(in)i(the)g(traditional)i +(36\))g(b)s(eha)m(v)m(e)g(as)g(if)1110 628 y(in)i(the)g(traditional)i (C)d(lo)s(cale)j(when)d(p)s(erforming)g(comparisons.)44 -b(That)31 b(is,)1110 4348 y(the)d(curren)m(t)g(lo)s(cale's)i(collating) -h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g(accoun)m(t,)i(so)1110 -4457 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p +b(That)31 b(is,)1110 737 y(the)d(curren)m(t)g(lo)s(cale's)i(collating)h +(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g(accoun)m(t,)i(so)1110 +847 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p Ft(A)p Fu(')g(and)f(`)p Ft(B)p Fu(',)h(and)f(upp)s(er-case)g(and)g(lo)m -(w)m(er-)1110 4567 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i -(together.)630 4734 y Ft(globskipdots)1110 4844 y Fu(If)38 +(w)m(er-)1110 956 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i +(together.)630 1127 y Ft(globskipdots)1110 1236 y Fu(If)38 b(set,)k(\014lename)d(expansion)f(will)h(nev)m(er)g(matc)m(h)h(the)f -(\014lenames)g(`)p Ft(.)p Fu(')g(and)1110 4954 y(`)p +(\014lenames)g(`)p Ft(.)p Fu(')g(and)1110 1346 y(`)p Ft(..)p Fu(',)c(ev)m(en)g(if)g(the)f(pattern)g(b)s(egins)g(with)g(a)h (`)p Ft(.)p Fu('.)52 b(This)34 b(option)h(is)f(enabled)1110 -5063 y(b)m(y)c(default.)630 5230 y Ft(globstar)96 b Fu(If)38 +1456 y(b)m(y)c(default.)630 1626 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 5340 y(matc)m(h)36 +h(expansion)f(con)m(text)j(will)1110 1736 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)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(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 -408 y(matc)m(h.)630 558 y Ft(gnu_errfmt)1110 667 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 777 y(message)c(format.)630 -927 y Ft(histappend)1110 1036 y Fu(If)c(set,)j(the)e(history)g(list)g +(directories.)54 b(If)1110 1845 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 1955 y(matc)m(h.)630 2125 y Ft(gnu_errfmt)1110 +2235 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 2345 y(message)c(format.)630 +2515 y Ft(histappend)1110 2625 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 1146 y(the)d Ft(HISTFILE)d Fu(v)-5 +b(alue)29 b(of)1110 2734 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 1255 y(the)31 b(\014le.)630 1405 y Ft(histreedit)1110 -1514 y Fu(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g +(erwriting)1110 2844 y(the)31 b(\014le.)630 3014 y Ft(histreedit)1110 +3124 y Fu(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g (user)g(is)g(giv)m(en)h(the)g(opp)s(ortunit)m(y)1110 -1624 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630 -1773 y Ft(histverify)1110 1883 y Fu(If)35 b(set,)i(and)e(Readline)h(is) +3233 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630 +3404 y Ft(histverify)1110 3513 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 -1993 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 2102 y(resulting)i(line)f(is)h +3623 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 3733 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 2212 y(further)29 b(mo)s(di\014cation.)630 2361 -y Ft(hostcomplete)1110 2471 y Fu(If)38 b(set,)j(and)c(Readline)i(is)f +1110 3842 y(further)29 b(mo)s(di\014cation.)630 4013 +y Ft(hostcomplete)1110 4122 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 -2580 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 2690 y(pleted)g(\(see)h +4232 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 4341 y(pleted)g(\(see)h (Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g -(139\).)1110 2800 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.) -630 2949 y Ft(huponexit)1110 3059 y Fu(If)i(set,)i(Bash)f(will)h(send)d +(142\).)1110 4451 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.) +630 4622 y Ft(huponexit)1110 4731 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 3168 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g -(page)f(45\).)630 3318 y Ft(inherit_errexit)1110 3427 +1110 4841 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g +(page)f(45\).)630 5011 y Ft(inherit_errexit)1110 5121 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 3537 +b(alue)30 b(of)g(the)f Ft(errexit)f Fu(op-)1110 5230 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 3646 y(tion)f(is)f(enabled)h -(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)630 3796 -y Ft(interactive_comments)1110 3905 y Fu(Allo)m(w)d(a)g(w)m(ord)e(b)s +(vironmen)m(t.)46 b(This)32 b(op-)1110 5340 y(tion)f(is)f(enabled)h +(when)e Fm(posix)h Fu(mo)s(de)g(is)g(enabled.)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 +(interactive_comments)1110 408 y Fu(Allo)m(w)27 b(a)g(w)m(ord)e(b)s (eginning)g(with)h(`)p Ft(#)p Fu(')g(to)h(cause)f(that)h(w)m(ord)f(and) -f(all)i(remain-)1110 4015 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g +f(all)i(remain-)1110 518 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g (to)g(b)s(e)f(ignored)g(in)g(an)g(in)m(teractiv)m(e)j(shell.)1110 -4125 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630 -4274 y Ft(lastpipe)96 b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f +628 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630 +792 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 -4384 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 4493 y(en)m(vironmen)m -(t.)630 4643 y Ft(lithist)144 b Fu(If)22 b(enabled,)i(and)d(the)h +902 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 1011 y(en)m(vironmen)m +(t.)630 1176 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 -4752 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 4862 y(semicolon)32 -b(separators)f(where)e(p)s(ossible.)630 5011 y Ft(localvar_inherit)1110 -5121 y Fu(If)j(set,)h(lo)s(cal)g(v)-5 b(ariables)33 b(inherit)f(the)g +1285 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 1395 y(semicolon)32 +b(separators)f(where)e(p)s(ossible.)630 1559 y Ft(localvar_inherit)1110 +1669 y Fu(If)j(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 -5230 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 5340 y(v)-5 +1778 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 1888 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.)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(localvar_unset) -1110 408 y Fu(If)33 b(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 -518 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 628 y(tion)40 +Fu(attribute)k(is)e(not)h(inherited.)630 2052 y Ft(localvar_unset)1110 +2162 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 +2271 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 2381 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 737 y(v)-5 b(ariables)31 -b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 902 -y Ft(login_shell)1110 1011 y Fu(The)35 b(shell)h(sets)g(this)f(option)h +(vior)g(of)g(unsetting)g(lo)s(cal)1110 2491 y(v)-5 b(ariables)31 +b(at)g(the)g(curren)m(t)f(function)g(scop)s(e.)630 2655 +y Ft(login_shell)1110 2765 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 -1121 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(91\).)41 +2874 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(92\).)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 -1285 y Ft(mailwarn)96 b Fu(If)34 b(set,)i(and)e(a)h(\014le)g(that)g +3039 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 1395 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m +1110 3148 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m (ed,)k(the)c(message)h Ft("The)k(mail)h(in)f Fj(mail-)1110 -1504 y(file)g Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630 -1669 y Ft(no_empty_cmd_completion)1110 1778 y Fu(If)g(set,)g(and)g +3258 y(file)g Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630 +3422 y Ft(no_empty_cmd_completion)1110 3532 y Fu(If)g(set,)g(and)g (Readline)g(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e -(searc)m(h)1110 1888 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f +(searc)m(h)1110 3641 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f (completions)j(when)d(completion)i(is)f(attempted)h(on)1110 -1998 y(an)k(empt)m(y)h(line.)630 2162 y Ft(nocaseglob)1110 -2271 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 2381 y(p)s(erforming)29 -b(\014lename)i(expansion.)630 2545 y Ft(nocasematch)1110 -2655 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 2765 y(p)s(erforming)31 +3751 y(an)k(empt)m(y)h(line.)630 3915 y Ft(nocaseglob)1110 +4025 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 4134 y(p)s(erforming)29 +b(\014lename)i(expansion.)630 4299 y Ft(nocasematch)1110 +4408 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 4518 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 2874 y(mands)25 b(\(see)i(Section)f +Ft([[)g Fu(conditional)h(com-)1110 4628 y(mands)25 b(\(see)i(Section)f (3.2.5.2)j([Conditional)e(Constructs],)f(page)h(12,)h(when)1110 -2984 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h -(or)f(when)g(\014ltering)1110 3093 y(p)s(ossible)j(completions)h(as)g -(part)f(of)h(programmable)f(completion.)630 3258 y Ft -(noexpand_translation)1110 3367 y Fu(If)23 b(set,)j(Bash)d(encloses)i +4737 y(p)s(erforming)e(pattern)i(substitution)f(w)m(ord)g(expansions,)h +(or)f(when)g(\014ltering)1110 4847 y(p)s(ossible)j(completions)h(as)g +(part)f(of)h(programmable)f(completion.)630 5011 y Ft +(noexpand_translation)1110 5121 y Fu(If)23 b(set,)j(Bash)d(encloses)i (the)e(translated)h(results)g(of)f($)p Ft(")p Fu(...)p -Ft(")h Fu(quoting)g(in)f(single)1110 3477 y(quotes)k(instead)g(of)g +Ft(")h Fu(quoting)g(in)f(single)1110 5230 y(quotes)k(instead)g(of)g (double)f(quotes.)40 b(If)26 b(the)h(string)f(is)h(not)g(translated,)h -(this)1110 3587 y(has)i(no)g(e\013ect.)630 3751 y Ft(nullglob)96 +(this)1110 5340 y(has)i(no)g(e\013ect.)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(nullglob)96 b Fu(If)23 b(set,)j(Bash)e(allo)m(ws)g(\014lename)g(patterns)g(whic)m -(h)f(matc)m(h)h(no)g(\014les)f(to)i(expand)1110 3861 -y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g(themselv)m(es.)630 -4025 y Ft(patsub_replacement)1110 4134 y Fu(If)38 b(set,)k(Bash)d +(h)f(matc)m(h)h(no)g(\014les)f(to)i(expand)1110 408 y(to)31 +b(a)g(n)m(ull)f(string,)h(rather)f(than)g(themselv)m(es.)630 +591 y Ft(patsub_replacement)1110 701 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 4244 y(of)47 b(pattern)g(substitution)g +(replacemen)m(t)h(string)1110 810 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 4354 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 4463 +b(as)1110 920 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 1029 y(page)31 b(26\).)42 b(This)30 b(option)g(is)h(enabled)f(b)m(y)g -(default.)630 4628 y Ft(progcomp)96 b Fu(If)25 b(set,)i(the)f +(default.)630 1212 y Ft(progcomp)96 b Fu(If)25 b(set,)i(the)f (programmable)g(completion)g(facilities)i(\(see)f(Section)f(8.6)h -([Pro-)1110 4737 y(grammable)45 b(Completion],)k(page)c(143\))h(are)f -(enabled.)82 b(This)44 b(option)h(is)1110 4847 y(enabled)30 -b(b)m(y)h(default.)630 5011 y Ft(progcomp_alias)1110 -5121 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 5230 y(mand)34 +([Pro-)1110 1322 y(grammable)45 b(Completion],)k(page)c(146\))h(are)f +(enabled.)82 b(This)44 b(option)h(is)1110 1431 y(enabled)30 +b(b)m(y)h(default.)630 1614 y Ft(progcomp_alias)1110 +1724 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 1833 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 5340 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)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)1110 299 y(programmable)28 -b(completion)h(using)e(the)h(command)f(w)m(ord)h(resulting)f(from)1110 -408 y(the)k(expanded)e(alias.)630 566 y Ft(promptvars)1110 -676 y Fu(If)50 b(set,)56 b(prompt)49 b(strings)h(undergo)g(parameter)h -(expansion,)k(command)1110 785 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 -895 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 1005 y(Prompt],)30 -b(page)h(104\).)43 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g -(default.)630 1162 y Ft(restricted_shell)1110 1272 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 1382 y(Section)32 -b(6.10)h([The)d(Restricted)j(Shell],)e(page)h(105\).)45 -b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110 1491 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 1601 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 1710 y(stricted.)630 1868 y Ft(shift_verbose)1110 -1978 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 2087 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 2245 y Ft(sourcepath)1110 2355 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 -2464 y(directory)32 b(con)m(taining)g(the)g(\014le)f(supplied)f(as)h -(an)g(argumen)m(t.)44 b(This)30 b(option)1110 2574 y(is)g(enabled)h(b)m -(y)f(default.)630 2732 y Ft(varredir_close)1110 2841 +(a)g(p)s(ossible)g(alias)1110 1943 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 +2052 y(programmable)28 b(completion)h(using)e(the)h(command)f(w)m(ord)h +(resulting)f(from)1110 2162 y(the)k(expanded)e(alias.)630 +2345 y Ft(promptvars)1110 2454 y Fu(If)50 b(set,)56 b(prompt)49 +b(strings)h(undergo)g(parameter)h(expansion,)k(command)1110 +2564 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 2673 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 2783 y(Prompt],)30 b(page)h(105\).)43 +b(This)29 b(option)i(is)g(enabled)f(b)m(y)g(default.)630 +2966 y Ft(restricted_shell)1110 3075 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 3185 y(Section)32 b(6.10)h([The)d(Restricted)j(Shell],)e(page)h +(107\).)45 b(The)30 b(v)-5 b(alue)32 b(ma)m(y)g(not)1110 +3294 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 3404 +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 3513 +y(stricted.)630 3696 y Ft(shift_verbose)1110 3806 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 3915 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 4098 y +Ft(sourcepath)1110 4208 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 +4317 y(directory)32 b(con)m(taining)g(the)g(\014le)f(supplied)f(as)h +(an)g(argumen)m(t.)44 b(This)30 b(option)1110 4427 y(is)g(enabled)h(b)m +(y)f(default.)630 4609 y Ft(varredir_close)1110 4719 y Fu(If)i(set,)h(the)f(shell)h(automatically)i(closes)e(\014le)f -(descriptors)g(assigned)g(using)1110 2951 y(the)40 b +(descriptors)g(assigned)g(using)1110 4829 y(the)40 b Ft({varname})c Fu(redirection)k(syn)m(tax)g(\(see)h(Section)f(3.6)g -([Redirections],)1110 3060 y(page)h(38\))f(instead)h(of)e(lea)m(ving)j -(them)e(op)s(en)f(when)g(the)h(command)f(com-)1110 3170 -y(pletes.)630 3328 y Ft(xpg_echo)96 b Fu(If)31 b(set,)h(the)g +([Redirections],)1110 4938 y(page)h(38\))f(instead)h(of)e(lea)m(ving)j +(them)e(op)s(en)f(when)g(the)h(command)f(com-)1110 5048 +y(pletes.)630 5230 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 3437 y(fault.)150 3677 y Fs(4.4)68 -b(Sp)t(ecial)45 b(Builtins)150 3836 y Fu(F)-8 b(or)35 +(b)m(y)f(de-)1110 5340 y(fault.)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)150 299 y Fs(4.4)68 +b(Sp)t(ecial)45 b(Builtins)150 458 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 3946 y(cial)p Fu(.)47 b(When)33 b(Bash)f(is)h +Fl(sp)-5 b(e-)150 568 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 4055 y(commands)e(in)g(three)h -(resp)s(ects:)199 4189 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 4323 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 -4456 y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f +e(di\013er)i(from)f(other)g(builtin)150 677 y(commands)e(in)g(three)h +(resp)s(ects:)199 812 y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found) +e(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s(okup.)199 +946 y(2.)61 b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error)g +(status,)h(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 +1081 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 4566 y(after)i(the)f(command)h(completes.)275 -4724 y(When)36 b(Bash)g(is)h(not)f(executing)i(in)e Fm(posix)f +(t)330 1191 y(after)i(the)f(command)h(completes.)275 +1350 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 4833 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e +(tly)h(than)150 1460 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 4943 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g -(106.)275 5076 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h -(builtins:)390 5210 y Ft(break)46 b(:)i(.)f(continue)f(eval)g(exec)h -(exit)g(export)f(readonly)f(return)h(set)390 5320 y(shift)g(trap)h +(ed)f(in)h(Section)h(6.11)150 1569 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g +(107.)275 1704 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h +(builtins:)390 1838 y Ft(break)46 b(:)i(.)f(continue)f(eval)g(exec)h +(exit)g(export)f(readonly)f(return)h(set)390 1948 y(shift)g(trap)h (unset)p eop end -%%Page: 78 84 -TeXDict begin 78 83 bop 3659 -116 a Fu(78)150 299 y Fp(5)80 +%%Page: 79 85 +TeXDict begin 79 84 bop 3659 -116 a Fu(79)150 299 y Fp(5)80 b(Shell)53 b(V)-13 b(ariables)150 504 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 @@ -13781,7 +13844,7 @@ Fu(builtin.)150 3392 y Ft(PATH)288 b Fu(A)32 b(colon-separated)i(list)f 3869 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 3979 y([Con)m(trolling)i(the)e -(Prompt],)i(page)f(104,)i(for)d(the)h(complete)h(list)e(of)h(escap)s(e) +(Prompt],)i(page)f(105,)i(for)d(the)h(complete)h(list)e(of)h(escap)s(e) g(sequences)630 4088 y(that)31 b(are)g(expanded)e(b)s(efore)h Ft(PS1)g Fu(is)g(displa)m(y)m(ed.)150 4236 y Ft(PS2)336 b Fu(The)28 b(secondary)g(prompt)g(string.)40 b(The)28 @@ -13796,15 +13859,15 @@ 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 5082 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(116\).)150 5230 y Ft(_)432 b +b(ariables],)32 b(page)g(119\).)150 5230 y Ft(_)432 b Fu(\($)p 716 5230 28 4 v 41 w(,)34 b(an)g(underscore.\))49 b(A)m(t)35 b(shell)f(startup,)g(set)g(to)g(the)g(pathname)f(used)g(to)h (in)m(v)m(ok)m(e)i(the)630 5340 y(shell)e(or)g(shell)h(script)f(b)s (eing)f(executed)j(as)e(passed)g(in)f(the)i(en)m(vironmen)m(t)f(or)g (argumen)m(t)p eop end -%%Page: 79 85 -TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(79)630 299 y(list.)55 +%%Page: 80 86 +TeXDict begin 80 85 bop 150 -116 a Fu(Chapter)30 b(5:)41 +b(Shell)30 b(V)-8 b(ariables)2459 b(80)630 299 y(list.)55 b(Subsequen)m(tly)-8 b(,)35 b(expands)f(to)i(the)f(last)g(argumen)m(t)h (to)f(the)g(previous)f(simple)h(com-)630 408 y(mand)21 b(executed)i(in)e(the)i(foreground,)g(after)f(expansion.)38 @@ -13850,10 +13913,10 @@ 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 3002 y(if)k(it)h(is)g(subsequen)m(tly)f (reset.)150 3185 y Ft(BASH_ARGC)630 3294 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 3404 y(of)i(the)g(curren)m -(t)g(bash)f(execution)i(call)g(stac)m(k.)76 b(The)42 +(of)h(parameters)g(in)g(eac)m(h)h(frame)630 3404 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 3513 -y(curren)m(t)38 b(subroutine)f(\(shell)i(function)e(or)i(script)f +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 3623 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 @@ -13867,9 +13930,9 @@ b Ft(extdebug)630 4061 y Fu(after)c(the)g(shell)g(has)g(started)g(to)g (execute)i(a)e(script,)g(or)g(referencing)g(this)f(v)-5 b(ariable)30 b(when)630 4171 y Ft(extdebug)e Fu(is)j(not)f(set,)h(ma)m (y)g(result)g(in)f(inconsisten)m(t)h(v)-5 b(alues.)150 -4354 y Ft(BASH_ARGV)630 4463 y Fu(An)24 b(arra)m(y)g(v)-5 -b(ariable)25 b(con)m(taining)h(all)f(of)f(the)h(parameters)f(in)g(the)g -(curren)m(t)g(bash)g(execution)630 4573 y(call)35 b(stac)m(k.)53 +4354 y Ft(BASH_ARGV)630 4463 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 4573 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)630 4682 y(stac)m(k;)28 b(the)c(\014rst)f(parameter)i(of)f(the)g(initial)i(call)f(is)f(at)h @@ -13885,9 +13948,9 @@ b(Setting)38 b Ft(extdebug)e Fu(after)j(the)f(shell)g(has)g(started)g 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 5340 y(v)-5 b(alues.)p eop end -%%Page: 80 86 -TeXDict begin 80 85 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(80)150 299 y Ft(BASH_ARGV0)630 +%%Page: 81 87 +TeXDict begin 81 86 bop 150 -116 a Fu(Chapter)30 b(5:)41 +b(Shell)30 b(V)-8 b(ariables)2459 b(81)150 299 y Ft(BASH_ARGV0)630 408 y Fu(When)31 b(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 518 y(\(iden)m(tical)42 b(to)e Ft($0)p Fu(;)j(See)d(Section)g @@ -13920,7 +13983,7 @@ b(If)30 b Ft(BASH_COMMAND)e Fu(is)i(unset,)h(it)g(loses)630 (subsequen)m(tly)g(reset.)150 2545 y Ft(BASH_COMPAT)630 2655 y Fu(The)i(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 -2765 y(Compatibilit)m(y)j(Mo)s(de],)h(page)e(110,)i(for)e(a)g +2765 y(Compatibilit)m(y)j(Mo)s(de],)h(page)e(112,)i(for)e(a)g (description)g(of)f(the)h(v)-5 b(arious)36 b(compatibilit)m(y)630 2874 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 @@ -13937,7 +14000,7 @@ b(alid)31 b(compatibilit)m(y)i(lev)m(els,)f(the)f(shell)f(prin)m(ts)g 47 b(The)31 b(v)-5 b(alid)33 b(v)-5 b(alues)630 3532 y(corresp)s(ond)31 b(to)i(the)g(compatibilit)m(y)i(lev)m(els)f(describ) s(ed)d(b)s(elo)m(w)i(\(see)g(Section)h(6.12)g([Shell)630 -3641 y(Compatibilit)m(y)d(Mo)s(de],)f(page)g(110\).)42 +3641 y(Compatibilit)m(y)d(Mo)s(de],)f(page)g(112\).)42 b(F)-8 b(or)30 b(example,)h(4.2)f(and)f(42)h(are)g(v)-5 b(alid)30 b(v)-5 b(alues)29 b(that)630 3751 y(corresp)s(ond)d(to)i(the) f Ft(compat42)e(shopt)g Fu(option)j(and)e(set)i(the)f(compatibilit)m(y) @@ -13948,7 +14011,7 @@ b(is)e(set)h(when)f(Bash)g(is)h(in)m(v)m(ok)m(ed)h(to)f(execute)h(a)e (shell)h(script,)g(its)g(v)-5 b(alue)29 b(is)630 4171 y(expanded)k(and)h(used)g(as)g(the)h(name)f(of)g(a)h(startup)f(\014le)g (to)h(read)f(b)s(efore)g(executing)i(the)630 4281 y(script.)41 -b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)j(page)f(93.)150 +b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)j(page)f(94.)150 4482 y Ft(BASH_EXECUTION_STRING)630 4591 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.)150 4792 y Ft(BASH_LINENO)630 4902 y Fu(An)38 b(arra)m(y)g(v)-5 @@ -13962,9 +14025,9 @@ b(ariable)39 b(whose)f(mem)m(b)s(ers)f(are)i(the)f(line)h(n)m(um)m(b)s b Fu(if)36 b(referenced)g(within)630 5340 y(another)31 b(shell)f(function\).)41 b(Use)31 b Ft(LINENO)d Fu(to)j(obtain)g(the)g (curren)m(t)f(line)h(n)m(um)m(b)s(er.)p eop end -%%Page: 81 87 -TeXDict begin 81 86 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(81)150 299 y Ft +%%Page: 82 88 +TeXDict begin 82 87 bop 150 -116 a Fu(Chapter)30 b(5:)41 +b(Shell)30 b(V)-8 b(ariables)2459 b(82)150 299 y Ft (BASH_LOADABLES_PATH)630 408 y Fu(A)39 b(colon-separated)i(list)f(of)f (directories)h(in)f(whic)m(h)g(the)g(shell)h(lo)s(oks)f(for)g (dynamically)630 518 y(loadable)32 b(builtins)d(sp)s(eci\014ed)h(b)m(y) @@ -13994,7 +14057,7 @@ b(alue)28 b(is)f(0.)40 b(If)28 b Ft(BASH_SUBSHELL)630 2299 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 2454 y Ft(BASH_VERSINFO)630 2564 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(100\))g +b(ariable)32 b(\(see)h(Section)g(6.7)f([Arra)m(ys],)h(page)g(101\))g (whose)f(mem)m(b)s(ers)630 2673 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 2783 y(arra)m(y)e(mem)m(b)s(ers)e @@ -14021,9 +14084,9 @@ b(tracing)h(output)d(to)i(b)s(e)f(separated)g(from)g(diagnostic)h(and)f (new)f(v)-5 b(alue.)630 5340 y(Unsetting)45 b Ft(BASH_XTRACEFD)40 b Fu(or)k(assigning)g(it)g(the)g(empt)m(y)h(string)e(causes)i(the)f (trace)p eop end -%%Page: 82 88 -TeXDict begin 82 87 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(82)630 299 y(output)33 +%%Page: 83 89 +TeXDict begin 83 88 bop 150 -116 a Fu(Chapter)30 b(5:)41 +b(Shell)30 b(V)-8 b(ariables)2459 b(83)630 299 y(output)33 b(to)i(b)s(e)d(sen)m(t)j(to)f(the)g(standard)e(error.)50 b(Note)35 b(that)g(setting)f Ft(BASH_XTRACEFD)c Fu(to)630 408 y(2)39 b(\(the)h(standard)e(error)g(\014le)h(descriptor\))h(and)e @@ -14051,13 +14114,13 @@ Ft(${COMP_WORDS})c Fu(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 b(ailable)43 b(only)e(in)f(shell)h (functions)f(in)m(v)m(ok)m(ed)i(b)m(y)e(the)h(pro-)630 2052 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g -([Programmable)g(Completion],)630 2162 y(page)31 b(143\).)150 +([Programmable)g(Completion],)630 2162 y(page)31 b(146\).)150 2308 y Ft(COMP_LINE)630 2418 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 2527 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 2637 -y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(143\).)150 +y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(146\).)150 2783 y Ft(COMP_POINT)630 2892 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 3002 y(command.)40 b(If)27 b(the)h(curren)m(t)g @@ -14068,7 +14131,7 @@ b(This)29 b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630 3221 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 3331 y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g -(Completion],)h(page)f(143\).)150 3477 y Ft(COMP_TYPE)630 +(Completion],)h(page)f(146\).)150 3477 y Ft(COMP_TYPE)630 3587 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(completion)h (attempted)g(that)630 3696 y(caused)j(a)g(completion)h(function)e(to)h @@ -14082,7 +14145,7 @@ g(unmo)s(di\014ed,)f(or)h(`)p Ft(\045)p Fu(',)h(for)630 b(is)g(a)m(v)-5 b(ailable)28 b(only)f(in)f(shell)g(functions)g(and)g (external)630 4134 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 -4244 y([Programmable)e(Completion],)h(page)f(143\).)150 +4244 y([Programmable)e(Completion],)h(page)f(146\).)150 4390 y Ft(COMP_KEY)96 b Fu(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i (of)f(a)g(k)m(ey)h(sequence\))g(used)e(to)i(in)m(v)m(ok)m(e)h(the)e (curren)m(t)g(completion)630 4500 y(function.)150 4646 @@ -14097,20 +14160,20 @@ g(individual)f(w)m(ords)h(in)f(the)h(curren)m(t)g(command)630 5340 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_)p eop end -%%Page: 83 89 -TeXDict begin 83 88 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(83)630 299 y Ft(WORDBREAKS)34 +%%Page: 84 90 +TeXDict begin 84 89 bop 150 -116 a Fu(Chapter)30 b(5:)41 +b(Shell)30 b(V)-8 b(ariables)2459 b(84)630 299 y Ft(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 408 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 518 y(grammable)e(Completion],)g(page)g(143\).)150 +([Pro-)630 518 y(grammable)e(Completion],)g(page)g(146\).)150 676 y Ft(COMPREPLY)630 786 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 896 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 1005 y(tion)g(8.6)g([Programmable)g(Completion],) -h(page)f(143\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains) +h(page)f(146\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains) 630 1115 y(one)c(p)s(ossible)f(completion.)150 1273 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 @@ -14138,9 +14201,9 @@ b(in)f(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)f(starts)h(with)f h(disables)630 2576 y(line)d(editing.)150 2734 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 -2844 y(Files],)k(page)e(93\))h(when)d(an)h(in)m(teractiv)m(e)j(shell)d +2844 y(Files],)k(page)e(94\))h(when)d(an)h(in)m(teractiv)m(e)j(shell)d (is)h(in)m(v)m(ok)m(ed)g(in)f Fm(posix)g Fu(Mo)s(de)g(\(see)h(Sec-)630 -2953 y(tion)31 b(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(106\).)150 +2953 y(tion)31 b(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(107\).)150 3112 y Ft(EPOCHREALTIME)630 3221 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 3331 y(since)f(the)g(Unix)f(Ep)s(o)s(c)m(h)g(as) @@ -14176,504 +14239,533 @@ 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 5340 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(.)p eop end -%%Page: 84 90 -TeXDict begin 84 89 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(84)630 299 y(Use)30 +%%Page: 85 91 +TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(5:)41 +b(Shell)30 b(V)-8 b(ariables)2459 b(85)630 299 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 408 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 -518 y Ft(extglob)28 b Fu(shell)j(option.)150 679 y Ft(FCEDIT)192 +518 y Ft(extglob)28 b Fu(shell)j(option.)150 676 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(-e)g Fu(option)h(to)g(the)f Ft(fc)g Fu(builtin)g(command.)150 -840 y Ft(FIGNORE)144 b Fu(A)35 b(colon-separated)i(list)f(of)g +835 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 950 y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i +630 944 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 -1060 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41 +1054 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 1221 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5 +Fu(')150 1212 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 1330 y(execution)g(call)h +(functions)g(curren)m(tly)f(in)h(the)630 1322 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 1440 y(executing)f(shell)f +(name)h(of)f(an)m(y)h(curren)m(tly-)630 1431 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 1549 y(index\))e(is)h Ft("main")p +(with)g(the)g(highest)630 1541 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 1659 y(Assignmen)m(ts)23 +(shell)f(function)g(is)g(executing.)630 1650 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 1769 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m -(tly)f(reset.)630 1904 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used) +630 1760 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m +(tly)f(reset.)630 1894 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 2014 y(of)g Ft(FUNCNAME)d +b(Eac)m(h)32 b(elemen)m(t)630 2004 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 2123 y(describ)s(e)39 +Fu(and)k Ft(BASH_SOURCE)c Fu(to)630 2113 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 -2233 y(\014le)27 b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27 +2223 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 2342 y Fu(builtin)j(displa)m(ys)g(the)h +b(The)27 b Ft(caller)630 2332 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 -2504 y Ft(FUNCNEST)96 b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5 +2491 y Ft(FUNCNEST)96 b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5 b(alue)36 b(greater)g(than)e(0,)j(de\014nes)d(a)h(maxim)m(um)g -(function)g(nesting)630 2613 y(lev)m(el.)42 b(F)-8 b(unction)29 +(function)g(nesting)630 2600 y(lev)m(el.)42 b(F)-8 b(unction)29 b(in)m(v)m(o)s(cations)h(that)f(exceed)h(this)e(nesting)h(lev)m(el)h -(will)f(cause)g(the)f(curren)m(t)630 2723 y(command)i(to)h(ab)s(ort.) -150 2884 y Ft(GLOBIGNORE)630 2993 y Fu(A)k(colon-separated)i(list)f(of) +(will)f(cause)g(the)f(curren)m(t)630 2710 y(command)i(to)h(ab)s(ort.) +150 2868 y Ft(GLOBIGNORE)630 2978 y Fu(A)k(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 3103 y(b)m(y)28 b(\014lename)h(expansion.)40 +g(ignored)630 3087 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)630 3213 y(also)k(matc)m(hes)g(one)f(of)g(the)g +(expansion)h(pattern)630 3197 y(also)k(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 3322 y(matc)m(hes.)41 b(The)27 +e(the)h(list)h(of)630 3306 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 3483 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 -3593 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 3703 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 -3864 y Ft(histchars)630 3973 y Fu(Up)c(to)g(three)g(c)m(haracters)i -(whic)m(h)d(con)m(trol)j(history)d(expansion,)i(quic)m(k)g -(substitution,)g(and)630 4083 y(tok)m(enization)k(\(see)f(Section)f -(9.3)h([History)f(In)m(teraction],)i(page)f(154\).)41 -b(The)29 b(\014rst)e(c)m(harac-)630 4193 y(ter)j(is)f(the)g -Fr(history)g(expansion)g Fu(c)m(haracter,)j(that)e(is,)f(the)h(c)m -(haracter)h(whic)m(h)d(signi\014es)i(the)630 4302 y(start)25 -b(of)f(a)h(history)f(expansion,)i(normally)e(`)p Ft(!)p -Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m(haracter)630 -4412 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h(substitution')f(when)f -(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e(a)g(line,)630 -4521 y(normally)27 b(`)p Ft(^)p Fu('.)39 b(The)26 b(optional)i(third)d -(c)m(haracter)j(is)e(the)h(c)m(haracter)h(whic)m(h)e(indicates)h(that) -630 4631 y(the)34 b(remainder)f(of)h(the)g(line)g(is)f(a)h(commen)m(t)h -(when)e(found)f(as)i(the)g(\014rst)f(c)m(haracter)i(of)f(a)630 -4740 y(w)m(ord,)i(usually)f(`)p Ft(#)p Fu('.)55 b(The)34 -b(history)h(commen)m(t)h(c)m(haracter)h(causes)e(history)g -(substitution)630 4850 y(to)27 b(b)s(e)f(skipp)s(ed)f(for)i(the)f -(remaining)h(w)m(ords)f(on)h(the)f(line.)40 b(It)27 b(do)s(es)f(not)h -(necessarily)g(cause)630 4960 y(the)k(shell)f(parser)g(to)h(treat)g -(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)37 b(to)h Ft(HISTCMD)d -Fu(are)j(ignored.)61 b(If)37 b Ft(HISTCMD)e Fu(is)i(unset,)h(it)g -(loses)g(its)f(sp)s(ecial)630 5340 y(prop)s(erties,)30 -b(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)p -eop end -%%Page: 85 91 -TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(5:)41 -b(Shell)30 b(V)-8 b(ariables)2459 b(85)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 +Ft(extglob)d Fu(shell)i(option.)150 3465 y Ft(GLOBSORT)96 +b Fu(Con)m(trol)41 b(ho)m(w)f(the)g(results)g(of)h(\014lename)f +(expansion)g(are)g(sorted.)70 b(The)40 b(v)-5 b(alue)41 +b(of)f(this)630 3574 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 3684 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 3794 y(uses)g(the)h(historial)g(b)s(eha)m +(vior)f(of)h(sorting)g(b)m(y)f(name.)41 b(If)29 b(set,)h(a)g(v)-5 +b(alid)29 b(v)-5 b(alue)30 b(b)s(egins)f(with)630 3903 +y(an)42 b(optional)h(`)p Ft(+)p Fu(',)i(whic)m(h)d(is)g(ignored,)j(or)d +(`)p Ft(-)p Fu(',)j(whic)m(h)d(rev)m(erses)h(the)f(sort)g(order)f(from) +630 4013 y(ascending)34 b(to)g(descending,)g(follo)m(w)m(ed)h(b)m(y)e +(a)h(sort)f(sp)s(eci\014er.)50 b(The)32 b(v)-5 b(alid)34 +b(sort)g(sp)s(eci\014ers)630 4122 y(are)21 b(`)p Ft(name)p +Fu(',)h(`)p Ft(size)p Fu(',)g(`)p Ft(mtime)p Fu(',)g(`)p +Ft(atime)p Fu(',)g(`)p Ft(ctime)p Fu(',)f(and)f(`)p Ft(blocks)p +Fu(',)i(whic)m(h)e(sort)h(the)g(\014les)f(on)630 4232 +y(name,)30 b(\014le)h(size,)g(mo)s(di\014cation)f(time,)h(access)h +(time,)f(ino)s(de)e(c)m(hange)j(time,)f(and)e(n)m(um)m(b)s(er)630 +4341 y(of)i(blo)s(c)m(ks,)g(resp)s(ectiv)m(ely)-8 b(.)630 +4475 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 4585 y(\014cation)f(time)g(\(new)m(est)h(\014rst\).)630 +4719 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 +4829 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 4963 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 5121 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 5230 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 +5340 y(sp)s(ecial)f(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g +(subsequen)m(tly)f(reset.)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 Ft(histchars)630 +408 y Fu(Up)26 b(to)g(three)g(c)m(haracters)i(whic)m(h)d(con)m(trol)j +(history)d(expansion,)i(quic)m(k)g(substitution,)g(and)630 +518 y(tok)m(enization)k(\(see)f(Section)f(9.3)h([History)f(In)m +(teraction],)i(page)f(157\).)41 b(The)29 b(\014rst)e(c)m(harac-)630 +628 y(ter)j(is)f(the)g Fr(history)g(expansion)g Fu(c)m(haracter,)j +(that)e(is,)f(the)h(c)m(haracter)h(whic)m(h)d(signi\014es)i(the)630 +737 y(start)25 b(of)f(a)h(history)f(expansion,)i(normally)e(`)p +Ft(!)p Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m +(haracter)630 847 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h +(substitution')f(when)f(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e +(a)g(line,)630 956 y(normally)27 b(`)p Ft(^)p Fu('.)39 +b(The)26 b(optional)i(third)d(c)m(haracter)j(is)e(the)h(c)m(haracter)h +(whic)m(h)e(indicates)h(that)630 1066 y(the)34 b(remainder)f(of)h(the)g +(line)g(is)f(a)h(commen)m(t)h(when)e(found)f(as)i(the)g(\014rst)f(c)m +(haracter)i(of)f(a)630 1176 y(w)m(ord,)i(usually)f(`)p +Ft(#)p Fu('.)55 b(The)34 b(history)h(commen)m(t)h(c)m(haracter)h +(causes)e(history)g(substitution)630 1285 y(to)27 b(b)s(e)f(skipp)s(ed) +f(for)i(the)f(remaining)h(w)m(ords)f(on)h(the)f(line.)40 +b(It)27 b(do)s(es)f(not)h(necessarily)g(cause)630 1395 +y(the)k(shell)f(parser)g(to)h(treat)g(the)g(rest)g(of)f(the)h(line)f +(as)h(a)g(commen)m(t.)150 1548 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 1658 y(Assignmen)m(ts)37 +b(to)h Ft(HISTCMD)d Fu(are)j(ignored.)61 b(If)37 b Ft(HISTCMD)e +Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)630 1767 +y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f +(reset.)150 1921 y Ft(HISTCONTROL)630 2030 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 2140 +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 +(b)s(egin)f(with)630 2250 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(alue)39 b(of)g(`)p Ft(ignoredups)p Fu(')630 2359 y(causes)34 b(lines)h(whic)m(h)f(matc)m(h)h(the)f(previous)f(history)h(en)m(try)h (to)g(not)f(b)s(e)f(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 +2469 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 +b(A)32 b(v)-5 b(alue)32 b(of)630 2578 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)42 +(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630 2688 y(from)42 b(the)h(history)f(list)i(b)s(efore)e(that)h(line)g(is)g(sa)m(v)m(ed.)78 b(An)m(y)43 b(v)-5 b(alue)43 b(not)g(in)f(the)h(ab)s(o)m(v)m(e)630 -1176 y(list)35 b(is)g(ignored.)53 b(If)34 b Ft(HISTCONTROL)e +2798 y(list)35 b(is)g(ignored.)53 b(If)34 b Ft(HISTCONTROL)e Fu(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h(v)-5 -b(alid)35 b(v)-5 b(alue,)36 b(all)630 1285 y(lines)30 +b(alid)35 b(v)-5 b(alue,)36 b(all)630 2907 y(lines)30 b(read)g(b)m(y)g(the)g(shell)g(parser)g(are)g(sa)m(v)m(ed)h(on)f(the)g (history)g(list,)h(sub)5 b(ject)30 b(to)g(the)g(v)-5 -b(alue)630 1395 y(of)42 b Ft(HISTIGNORE)p Fu(.)73 b(The)42 +b(alue)630 3017 y(of)42 b Ft(HISTIGNORE)p Fu(.)73 b(The)42 b(second)g(and)g(subsequen)m(t)f(lines)h(of)h(a)f(m)m(ulti-line)h(comp) -s(ound)630 1504 y(command)33 b(are)h(not)g(tested,)i(and)d(are)h(added) +s(ound)630 3126 y(command)33 b(are)h(not)g(tested,)i(and)d(are)h(added) f(to)h(the)g(history)g(regardless)g(of)g(the)f(v)-5 b(alue)630 -1614 y(of)31 b Ft(HISTCONTROL)p Fu(.)150 1763 y Ft(HISTFILE)96 +3236 y(of)31 b Ft(HISTCONTROL)p Fu(.)150 3389 y Ft(HISTFILE)96 b Fu(The)27 b(name)h(of)g(the)g(\014le)g(to)h(whic)m(h)f(the)g(command) f(history)h(is)g(sa)m(v)m(ed.)41 b(The)27 b(default)h(v)-5 -b(alue)630 1873 y(is)30 b Ft(~/.bash_history)p Fu(.)150 -2022 y Ft(HISTFILESIZE)630 2132 y Fu(The)c(maxim)m(um)f(n)m(um)m(b)s +b(alue)630 3499 y(is)30 b Ft(~/.bash_history)p Fu(.)150 +3652 y Ft(HISTFILESIZE)630 3762 y Fu(The)c(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 2242 y(is)25 b(assigned)h(a)g(v) +b(When)26 b(this)g(v)-5 b(ariable)630 3871 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 -2351 y(than)37 b(that)h(n)m(um)m(b)s(er)d(of)j(lines)f(b)m(y)g(remo)m +3981 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 2461 y(also)i(truncated)f(to)h(this)e(size)i(after)g(writing)f(it)g +630 4091 y(also)i(truncated)f(to)h(this)e(size)i(after)g(writing)f(it)g (when)f(a)h(shell)h(exits.)64 b(If)37 b(the)h(v)-5 b(alue)39 -b(is)630 2570 y(0,)g(the)e(history)f(\014le)h(is)g(truncated)f(to)i +b(is)630 4200 y(0,)g(the)e(history)f(\014le)h(is)g(truncated)f(to)i (zero)f(size.)60 b(Non-n)m(umeric)37 b(v)-5 b(alues)37 -b(and)f(n)m(umeric)630 2680 y(v)-5 b(alues)31 b(less)f(than)g(zero)h +b(and)f(n)m(umeric)630 4310 y(v)-5 b(alues)31 b(less)f(than)g(zero)h (inhibit)f(truncation.)41 b(The)29 b(shell)i(sets)f(the)h(default)f(v) --5 b(alue)31 b(to)g(the)630 2790 y(v)-5 b(alue)31 b(of)f +-5 b(alue)31 b(to)g(the)630 4419 y(v)-5 b(alue)31 b(of)f Ft(HISTSIZE)f Fu(after)h(reading)h(an)m(y)g(startup)f(\014les.)150 -2939 y Ft(HISTIGNORE)630 3049 y Fu(A)j(colon-separated)h(list)f(of)g +4573 y Ft(HISTIGNORE)630 4682 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 3158 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47 +630 4792 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47 b(Eac)m(h)33 b(pattern)g(is)f(anc)m(hored)h(at)g(the)f(b)s(eginning)g -(of)h(the)630 3268 y(line)43 b(and)e(m)m(ust)h(matc)m(h)h(the)g +(of)h(the)630 4902 y(line)43 b(and)e(m)m(ust)h(matc)m(h)h(the)g (complete)h(line)e(\(no)h(implicit)g(`)p Ft(*)p Fu(')f(is)g(app)s -(ended\).)75 b(Eac)m(h)630 3377 y(pattern)42 b(is)g(tested)g(against)h +(ended\).)75 b(Eac)m(h)630 5011 y(pattern)42 b(is)g(tested)g(against)h (the)f(line)g(after)g(the)g(c)m(hec)m(ks)h(sp)s(eci\014ed)e(b)m(y)h -Ft(HISTCONTROL)630 3487 y Fu(are)37 b(applied.)59 b(In)36 +Ft(HISTCONTROL)630 5121 y Fu(are)37 b(applied.)59 b(In)36 b(addition)h(to)g(the)g(normal)g(shell)f(pattern)h(matc)m(hing)h(c)m -(haracters,)i(`)p Ft(&)p Fu(')630 3597 y(matc)m(hes)d(the)f(previous)g +(haracters,)i(`)p Ft(&)p Fu(')630 5230 y(matc)m(hes)d(the)f(previous)g (history)g(line.)57 b(`)p Ft(&)p Fu(')36 b(ma)m(y)h(b)s(e)e(escap)s(ed) -h(using)g(a)g(bac)m(kslash;)k(the)630 3706 y(bac)m(kslash)34 +h(using)g(a)g(bac)m(kslash;)k(the)630 5340 y(bac)m(kslash)34 b(is)g(remo)m(v)m(ed)h(b)s(efore)e(attempting)i(a)g(matc)m(h.)51 -b(The)34 b(second)f(and)h(subsequen)m(t)630 3816 y(lines)e(of)h(a)g(m)m -(ulti-line)g(comp)s(ound)e(command)h(are)h(not)f(tested,)i(and)e(are)g -(added)g(to)h(the)630 3925 y(history)k(regardless)h(of)f(the)g(v)-5 -b(alue)38 b(of)f Ft(HISTIGNORE)p Fu(.)58 b(The)37 b(pattern)g(matc)m -(hing)i(honors)630 4035 y(the)31 b(setting)g(of)g(the)f -Ft(extglob)f Fu(shell)h(option.)630 4164 y Ft(HISTIGNORE)20 -b Fu(subsumes)g(the)j(function)f(of)h Ft(HISTCONTROL)p -Fu(.)35 b(A)23 b(pattern)f(of)h(`)p Ft(&)p Fu(')g(is)f(iden)m(tical)630 -4274 y(to)k Ft(ignoredups)p Fu(,)e(and)h(a)h(pattern)g(of)f(`)p -Ft([)31 b(]*)p Fu(')25 b(is)h(iden)m(tical)h(to)f Ft(ignorespace)p -Fu(.)36 b(Com)m(bining)630 4384 y(these)30 b(t)m(w)m(o)h(patterns,)f -(separating)g(them)g(with)f(a)h(colon,)h(pro)m(vides)e(the)h -(functionalit)m(y)h(of)630 4493 y Ft(ignoreboth)p Fu(.)150 -4643 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 4752 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)630 4862 y(zero)i(result)e(in)h(ev)m +b(The)34 b(second)f(and)h(subsequen)m(t)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(lines)32 +b(of)h(a)g(m)m(ulti-line)g(comp)s(ound)e(command)h(are)h(not)f(tested,) +i(and)e(are)g(added)g(to)h(the)630 408 y(history)k(regardless)h(of)f +(the)g(v)-5 b(alue)38 b(of)f Ft(HISTIGNORE)p Fu(.)58 +b(The)37 b(pattern)g(matc)m(hing)i(honors)630 518 y(the)31 +b(setting)g(of)g(the)f Ft(extglob)f Fu(shell)h(option.)630 +656 y Ft(HISTIGNORE)20 b Fu(subsumes)g(the)j(function)f(of)h +Ft(HISTCONTROL)p Fu(.)35 b(A)23 b(pattern)f(of)h(`)p +Ft(&)p Fu(')g(is)f(iden)m(tical)630 766 y(to)k Ft(ignoredups)p +Fu(,)e(and)h(a)h(pattern)g(of)f(`)p Ft([)31 b(]*)p Fu(')25 +b(is)h(iden)m(tical)h(to)f Ft(ignorespace)p Fu(.)36 b(Com)m(bining)630 +876 y(these)30 b(t)m(w)m(o)h(patterns,)f(separating)g(them)g(with)f(a)h +(colon,)h(pro)m(vides)e(the)h(functionalit)m(y)h(of)630 +985 y Ft(ignoreboth)p Fu(.)150 1153 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 1262 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)630 1372 y(zero)i(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 4971 y(The)j(shell)g(sets)h(the)g +(\(there)f(is)g(no)g(limit\).)630 1481 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 5121 y Ft(HISTTIMEFORMAT)630 -5230 y Fu(If)44 b(this)g(v)-5 b(ariable)45 b(is)f(set)g(and)g(not)g(n)m +(startup)f(\014les.)150 1649 y Ft(HISTTIMEFORMAT)630 +1758 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 5340 y Ft(strftime)26 b Fu(to)k(prin)m(t)e(the)g(time)i(stamp) +(for)630 1868 y Ft(strftime)26 b Fu(to)k(prin)m(t)e(the)g(time)i(stamp) e(asso)s(ciated)i(with)e(eac)m(h)i(history)f(en)m(try)f(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)630 299 y(b)m(y)34 -b(the)f Ft(history)f Fu(builtin.)50 b(If)33 b(this)h(v)-5 -b(ariable)34 b(is)g(set,)h(time)f(stamps)g(are)g(written)f(to)i(the)630 -408 y(history)26 b(\014le)g(so)g(they)g(ma)m(y)h(b)s(e)e(preserv)m(ed)g -(across)i(shell)f(sessions.)39 b(This)25 b(uses)h(the)g(history)630 -518 y(commen)m(t)31 b(c)m(haracter)h(to)f(distinguish)f(timestamps)h -(from)f(other)g(history)h(lines.)150 687 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 -797 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 -907 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 -1016 y(completion)33 b(is)g(attempted)g(after)g(the)f(v)-5 +(ed)630 1977 y(b)m(y)34 b(the)f Ft(history)f Fu(builtin.)50 +b(If)33 b(this)h(v)-5 b(ariable)34 b(is)g(set,)h(time)f(stamps)g(are)g +(written)f(to)i(the)630 2087 y(history)26 b(\014le)g(so)g(they)g(ma)m +(y)h(b)s(e)e(preserv)m(ed)g(across)i(shell)f(sessions.)39 +b(This)25 b(uses)h(the)g(history)630 2196 y(commen)m(t)31 +b(c)m(haracter)h(to)f(distinguish)f(timestamps)h(from)f(other)g +(history)h(lines.)150 2364 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 2473 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 2583 +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 2693 +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 1126 y(the)h(new)f(\014le)g(to)h(the)g(existing)h(list.)53 +630 2802 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 1235 y(not)d(name)f(a)h(readable)g +b(alue,)36 b(or)e(do)s(es)630 2912 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 1345 y(of)h(p)s(ossible)f(hostname)h +Fu(to)j(obtain)g(the)f(list)630 3021 y(of)h(p)s(ossible)f(hostname)h (completions.)43 b(When)31 b Ft(HOSTFILE)d Fu(is)j(unset,)f(the)h -(hostname)g(list)630 1455 y(is)f(cleared.)150 1624 y +(hostname)g(list)630 3131 y(is)f(cleared.)150 3298 y Ft(HOSTNAME)96 b Fu(The)30 b(name)g(of)h(the)f(curren)m(t)h(host.)150 -1793 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 1963 y Ft(IGNOREEOF)630 -2072 y Fu(Con)m(trols)e(the)h(action)g(of)f(the)g(shell)g(on)g(receipt) +3465 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 3633 y Ft(IGNOREEOF)630 +3742 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 -2182 y(If)i(set,)i(the)f(v)-5 b(alue)32 b(denotes)f(the)g(n)m(um)m(b)s +3852 y(If)i(set,)i(the)f(v)-5 b(alue)32 b(denotes)f(the)g(n)m(um)m(b)s (er)f(of)h(consecutiv)m(e)i Ft(EOF)d Fu(c)m(haracters)i(that)f(can)h(b) -s(e)630 2291 y(read)40 b(as)f(the)h(\014rst)f(c)m(haracter)i(on)f(an)f +s(e)630 3961 y(read)40 b(as)f(the)h(\014rst)f(c)m(haracter)i(on)f(an)f (input)g(line)h(b)s(efore)f(the)h(shell)g(will)g(exit.)70 -b(If)39 b(the)630 2401 y(v)-5 b(ariable)39 b(exists)f(but)g(do)s(es)f +b(If)39 b(the)630 4071 y(v)-5 b(ariable)39 b(exists)f(but)g(do)s(es)f (not)h(ha)m(v)m(e)h(a)g(n)m(umeric)f(v)-5 b(alue,)40 -b(or)e(has)g(no)g(v)-5 b(alue,)40 b(then)e(the)630 2511 +b(or)e(has)g(no)g(v)-5 b(alue,)40 b(then)e(the)630 4181 y(default)31 b(is)g(10.)43 b(If)30 b(the)h(v)-5 b(ariable)31 b(do)s(es)g(not)g(exist,)h(then)e Ft(EOF)g Fu(signi\014es)h(the)g(end)f -(of)h(input)630 2620 y(to)g(the)g(shell.)41 b(This)29 +(of)h(input)630 4290 y(to)g(the)g(shell.)41 b(This)29 b(is)i(only)f(in)g(e\013ect)i(for)e(in)m(teractiv)m(e)j(shells.)150 -2790 y Ft(INPUTRC)144 b Fu(The)68 b(name)h(of)f(the)h(Readline)g +4457 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 2899 y Ft(~/.inputrc)p Fu(.)150 3068 y Ft(INSIDE_EMACS)630 -3178 y Fu(If)29 b(Bash)h(\014nds)e(this)h(v)-5 b(ariable)31 +(of)630 4567 y Ft(~/.inputrc)p Fu(.)150 4734 y Ft(INSIDE_EMACS)630 +4844 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 3288 y(that)i(the)g(shell)g(is)f(running)f(in)i(an)f +(assumes)630 4954 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 -3397 y(dep)s(ending)d(on)h(the)h(v)-5 b(alue)31 b(of)f -Ft(TERM)p Fu(.)150 3567 y Ft(LANG)288 b Fu(Used)28 b(to)h(determine)f +5063 y(dep)s(ending)d(on)h(the)h(v)-5 b(alue)31 b(of)f +Ft(TERM)p Fu(.)150 5230 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 3676 y(with)i(a)h(v)-5 b(ariable)31 -b(starting)g(with)f Ft(LC_)p Fu(.)150 3846 y Ft(LC_ALL)192 +(eci\014cally)g(selected)630 5340 y(with)i(a)h(v)-5 b(ariable)31 +b(starting)g(with)f Ft(LC_)p Fu(.)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(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 3955 -y(a)i(lo)s(cale)h(category)-8 b(.)150 4125 y Ft(LC_COLLATE)630 -4234 y Fu(This)37 b(v)-5 b(ariable)38 b(determines)g(the)g(collation)i +Ft(LC_)f Fu(v)-5 b(ariable)29 b(sp)s(ecifying)630 408 +y(a)i(lo)s(cale)h(category)-8 b(.)150 573 y Ft(LC_COLLATE)630 +682 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 -4344 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 4453 y(alence)e -(classes,)h(and)e(collating)i(sequences)e(within)f(\014lename)h -(expansion)g(and)f(pattern)630 4563 y(matc)m(hing)d(\(see)h(Section)f -(3.5.8)h([Filename)g(Expansion],)e(page)h(35\).)150 4732 -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 4842 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 -4951 y(tion)31 b(3.5.8)h([Filename)g(Expansion],)e(page)h(35\).)150 -5121 y Ft(LC_MESSAGES)630 5230 y Fu(This)25 b(v)-5 b(ariable)27 +792 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 902 y(alence)e(classes,) +h(and)e(collating)i(sequences)e(within)f(\014lename)h(expansion)g(and)f +(pattern)630 1011 y(matc)m(hing)d(\(see)h(Section)f(3.5.8)h([Filename)g +(Expansion],)e(page)h(36\).)150 1176 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 1285 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 1395 +y(tion)31 b(3.5.8)h([Filename)g(Expansion],)e(page)h(36\).)150 +1559 y Ft(LC_MESSAGES)630 1669 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 5340 y(ceded)31 b(b)m(y)f(a)h(`)p +f(strings)g(pre-)630 1778 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\).)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)150 299 y Ft(LC_NUMERIC)630 -408 y Fu(This)30 b(v)-5 b(ariable)31 b(determines)f(the)h(lo)s(cale)h +b(ranslation],)32 b(page)f(7\).)150 1943 y Ft(LC_NUMERIC)630 +2052 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 -573 y Ft(LC_TIME)144 b Fu(This)25 b(v)-5 b(ariable)26 +2217 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 737 y Ft(LINENO)192 b Fu(The)32 +(time)i(formatting.)150 2381 y Ft(LINENO)192 b Fu(The)32 b(line)h(n)m(um)m(b)s(er)e(in)i(the)f(script)h(or)f(shell)h(function)f (curren)m(tly)h(executing.)49 b(If)32 b Ft(LINENO)630 -847 y Fu(is)e(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 -1011 y Ft(LINES)240 b Fu(Used)43 b(b)m(y)g(the)g Ft(select)e +2491 y Fu(is)e(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 +2655 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 1121 y(selection)c(lists.)63 b(Automatically)41 +(ting)630 2765 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 1230 y(Section)44 b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d +630 2874 y(Section)44 b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d (71\),)k(or)43 b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630 -1340 y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 1504 +2984 y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 3148 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 1614 y(standard)k Fm(gnu)g Fr(cpu-compan)m(y-system)h -Fu(format.)150 1778 y Ft(MAILCHECK)630 1888 y Fu(Ho)m(w)d(often)g(\(in) +(in)e(the)630 3258 y(standard)k Fm(gnu)g Fr(cpu-compan)m(y-system)h +Fu(format.)150 3422 y Ft(MAILCHECK)630 3532 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 1998 y(in)i(the)h +(in)f(the)h(\014les)g(sp)s(eci\014ed)630 3641 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 2107 y(to)37 b(c)m(hec)m(k)h(for)e(mail,)j(the)e +b(it)h(is)g(time)630 3751 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 2217 y(this)37 b(v)-5 b(ariable)38 +(prompt.)57 b(If)630 3861 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 2326 y(equal)31 +(a)f(n)m(um)m(b)s(er)f(greater)i(than)f(or)630 3970 y(equal)31 b(to)g(zero,)g(the)g(shell)g(disables)f(mail)h(c)m(hec)m(king.)150 -2491 y Ft(MAPFILE)144 b Fu(An)35 b(arra)m(y)h(v)-5 b(ariable)36 +4134 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 2600 y(no)30 b(v)-5 -b(ariable)31 b(name)g(is)f(supplied.)150 2765 y Ft(OLDPWD)192 +Ft(mapfile)d Fu(builtin)i(when)630 4244 y(no)30 b(v)-5 +b(ariable)31 b(name)g(is)f(supplied.)150 4408 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 2929 y Ft(OPTERR)192 b +(the)h Ft(cd)e Fu(builtin.)150 4573 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 -3039 y Fu(builtin)30 b(command.)150 3203 y Ft(OSTYPE)192 +4682 y Fu(builtin)30 b(command.)150 4847 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 3367 y Ft(PIPESTATUS)630 3477 +(is)h(running)d(on.)150 5011 y Ft(PIPESTATUS)630 5121 y Fu(An)48 b(arra)m(y)g(v)-5 b(ariable)49 b(\(see)g(Section)g(6.7)g -([Arra)m(ys],)k(page)c(100\))g(con)m(taining)h(a)e(list)h(of)630 -3587 y(exit)32 b(status)f(v)-5 b(alues)31 b(from)f(the)h(pro)s(cesses)g +([Arra)m(ys],)k(page)c(101\))g(con)m(taining)h(a)e(list)h(of)630 +5230 y(exit)32 b(status)f(v)-5 b(alues)31 b(from)f(the)h(pro)s(cesses)g (in)g(the)g(most-recen)m(tly-executed)j(foreground)630 -3696 y(pip)s(eline)c(\(whic)m(h)g(ma)m(y)h(con)m(tain)h(only)f(a)f -(single)h(command\).)150 3861 y Ft(POSIXLY_CORRECT)630 -3970 y Fu(If)h(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m +5340 y(pip)s(eline)c(\(whic)m(h)g(ma)m(y)h(con)m(tain)h(only)f(a)f +(single)h(command\).)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)150 299 y Ft(POSIXLY_CORRECT)630 +408 y Fu(If)32 b(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 4080 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(106\))h(b)s(efore)e(reading)g(the)630 -4189 y(startup)38 b(\014les,)j(as)e(if)g(the)g Ft(--posix)d +Fm(posix)630 518 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(107\))h(b)s(efore)e(reading)g(the)630 +628 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 4299 y(set)31 b(while)f(the)h(shell)f(is)h +b(If)39 b(it)g(is)630 737 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 4436 y Ft(set)47 b(-o)g(posix)630 4573 y +(command)870 870 y Ft(set)47 b(-o)g(posix)630 1002 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 4682 y(it)d(w)m(as)g(not)f(already)h(set.)150 -4847 y Ft(PPID)288 b Fu(The)30 b(pro)s(cess)g Fm(id)g +b(if)630 1112 y(it)d(w)m(as)g(not)f(already)h(set.)150 +1267 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 5011 y -Ft(PROMPT_COMMAND)630 5121 y Fu(If)23 b(this)h(v)-5 b(ariable)24 +b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150 1422 y +Ft(PROMPT_COMMAND)630 1532 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 -5230 y(as)29 b(a)g(command)f(to)i(execute)g(b)s(efore)e(prin)m(ting)h +1641 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 5340 y(set)c(but)f(not)g(an)h(arra)m(y)g(v)-5 +b(this)h(is)630 1751 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.)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(PROMPT_DIRTRIM)630 -408 y Fu(If)27 b(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 518 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 628 y(cap)s(es)i(\(see)h(Section)g(6.9)g -([Con)m(trolling)g(the)f(Prompt],)i(page)e(104\).)41 -b(Characters)24 b(remo)m(v)m(ed)630 737 y(are)31 b(replaced)g(with)f -(an)g(ellipsis.)150 892 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 -1002 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 1157 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 1267 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 1422 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 1532 -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 -1641 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e +(to)i(execute)f(instead.)150 1906 y Ft(PROMPT_DIRTRIM)630 +2016 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 2125 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 2235 y(cap)s(es)i(\(see)h(Section)g(6.9)g([Con)m(trolling)g +(the)f(Prompt],)i(page)e(105\).)41 b(Characters)24 b(remo)m(v)m(ed)630 +2345 y(are)31 b(replaced)g(with)f(an)g(ellipsis.)150 +2500 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 2609 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 +2765 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 2874 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 3029 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 3139 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 +3249 y(set)k(\(see)h(Section)g(4.3.1)g([The)f(Set)g(Builtin],)j(page)e (67\).)67 b(The)38 b(\014rst)g(c)m(haracter)j(of)e(the)630 -1751 y(expanded)33 b(v)-5 b(alue)33 b(is)h(replicated)g(m)m(ultiple)g +3358 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 -1861 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p -Ft(+)h Fu('.)150 2016 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m +3468 y(lev)m(els)e(of)e(indirection.)42 b(The)29 b(default)i(is)f(`)p +Ft(+)h Fu('.)150 3623 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 2171 y Ft(RANDOM)192 b Fu(Eac)m(h)26 +Fu(builtin.)150 3778 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 2281 y(0)e(and)e(32767.)41 +(random)e(in)m(teger)j(b)s(et)m(w)m(een)630 3888 y(0)e(and)e(32767.)41 b(Assigning)25 b(a)f(v)-5 b(alue)25 b(to)g(this)f(v)-5 b(ariable)25 b(seeds)f(the)h(random)e(n)m(um)m(b)s(er)g(gener-)630 -2390 y(ator.)41 b(If)27 b Ft(RANDOM)f Fu(is)h(unset,)h(it)g(loses)h +3998 y(ator.)41 b(If)27 b Ft(RANDOM)f 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)f -(subsequen)m(tly)630 2500 y(reset.)150 2655 y Ft(READLINE_ARGUMENT)630 -2765 y Fu(An)m(y)37 b(n)m(umeric)f(argumen)m(t)h(giv)m(en)g(to)g(a)g +(subsequen)m(tly)630 4107 y(reset.)150 4262 y Ft(READLINE_ARGUMENT)630 +4372 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 -2874 y(`)p Ft(bind)29 b(-x)p Fu(')h(\(see)i(Section)f(4.2)g([Bash)g -(Builtins],)g(page)h(55,)f(when)e(it)i(w)m(as)g(in)m(v)m(ok)m(ed.)150 -3029 y Ft(READLINE_LINE)630 3139 y Fu(The)c(con)m(ten)m(ts)i(of)f(the)g +4482 y(`)p Ft(bind)29 b(-x)p Fu(')h(\(see)i(Section)f(4.2)g([Bash)g +(Builtins],)g(page)h(56,)f(when)e(it)i(w)m(as)g(in)m(v)m(ok)m(ed.)150 +4637 y Ft(READLINE_LINE)630 4746 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 3249 -y([Bash)i(Builtins],)g(page)g(55\).)150 3404 y Ft(READLINE_MARK)630 -3513 y Fu(The)26 b(p)s(osition)h(of)g(the)g Fr(mark)32 +Ft(bind)j(-x)p Fu(')d(\(see)h(Section)h(4.2)630 4856 +y([Bash)i(Builtins],)g(page)g(56\).)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 3623 y(use)36 b(with)f(`)p +(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(55\).)58 b(The)35 b(c)m(haracters)630 3733 y(b)s(et)m(w)m(een) +i(page)f(56\).)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(.)150 3888 y Ft(READLINE_POINT)630 -3998 y Fu(The)23 b(p)s(osition)g(of)g(the)h(insertion)f(p)s(oin)m(t)g +(called)i(the)f Fr(region)p Fu(.)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(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 4107 y(-x)p Fu(')30 b(\(see)h(Section)h(4.2)f([Bash)g -(Builtins],)g(page)g(55\).)150 4262 y Ft(REPLY)240 b -Fu(The)30 b(default)g(v)-5 b(ariable)32 b(for)e(the)g -Ft(read)g Fu(builtin.)150 4418 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 -4527 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 4637 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 4746 y(the)41 -b(assignmen)m(t.)72 b(The)40 b(n)m(um)m(b)s(er)f(of)i(seconds)f(at)h -(shell)g(in)m(v)m(o)s(cation)i(and)c(the)i(curren)m(t)630 -4856 y(time)30 b(are)g(alw)m(a)m(ys)g(determined)f(b)m(y)g(querying)g -(the)h(system)f(clo)s(c)m(k.)42 b(If)29 b Ft(SECONDS)e -Fu(is)i(unset,)630 4966 y(it)i(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 -5121 y Ft(SHELL)240 b Fu(This)24 b(en)m(vironmen)m(t)i(v)-5 +Ft(bind)630 518 y(-x)p Fu(')30 b(\(see)h(Section)h(4.2)f([Bash)g +(Builtins],)g(page)g(56\).)150 678 y Ft(REPLY)240 b Fu(The)30 +b(default)g(v)-5 b(ariable)32 b(for)e(the)g Ft(read)g +Fu(builtin.)150 838 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 948 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 1058 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 +1167 y(the)41 b(assignmen)m(t.)72 b(The)40 b(n)m(um)m(b)s(er)f(of)i +(seconds)f(at)h(shell)g(in)m(v)m(o)s(cation)i(and)c(the)i(curren)m(t) +630 1277 y(time)30 b(are)g(alw)m(a)m(ys)g(determined)f(b)m(y)g +(querying)g(the)h(system)f(clo)s(c)m(k.)42 b(If)29 b +Ft(SECONDS)e Fu(is)i(unset,)630 1386 y(it)i(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 +1547 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 5230 y(set)36 +(shell.)39 b(If)25 b(it)g(is)h(not)630 1656 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 5340 y(user's)30 -b(login)h(shell.)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)150 299 y Ft(SHELLOPTS)630 -408 y 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 518 y(argumen)m(t)28 b(for)f(the)h Ft(-o)e +f(pathname)h(of)g(the)g(curren)m(t)630 1766 y(user's)30 +b(login)h(shell.)150 1926 y Ft(SHELLOPTS)630 2035 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 2145 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 628 y(Set)g(Builtin],)h(page)f(67\).)42 +f(4.3.1)h([The)630 2255 y(Set)g(Builtin],)h(page)f(67\).)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 737 y(as)g(`)p Ft(on)p +Fu(are)j(those)h(rep)s(orted)630 2364 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 847 y(eac)m(h)41 b(shell)e(option)h(in)f(the)h(list)g -(will)f(b)s(e)g(enabled)h(b)s(efore)f(reading)g(an)m(y)h(startup)f -(\014les.)630 956 y(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8 -b(.)150 1121 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac) +(starts)g(up,)630 2474 y(eac)m(h)41 b(shell)e(option)h(in)f(the)h(list) +g(will)f(b)s(e)g(enabled)h(b)s(efore)f(reading)g(an)m(y)h(startup)f +(\014les.)630 2583 y(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8 +b(.)150 2744 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 1230 y(to)31 b(b)s(e)f(a)h(coun)m(t)g +b(This)20 b(is)h(in)m(tended)630 2853 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 -1395 y Ft(SRANDOM)144 b Fu(This)36 b(v)-5 b(ariable)37 +3013 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 1504 y(erenced.)47 b(The)32 +(h)j(time)f(it)g(is)g(ref-)630 3123 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 1614 y Ft(/dev/urandom)26 +(systems)h(that)g(supp)s(ort)630 3232 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 1724 y(the)39 +(er)f(has)h(no)g(relationship)h(to)630 3342 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 1833 +s(er)f(generator)j(cannot)g(b)s(e)e(seeded,)630 3452 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 1943 y(sp)s(ecial)c(prop)s +Fu(is)j(unset,)g(it)f(loses)i(its)630 3561 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 -2107 y Ft(TIMEFORMAT)630 2217 y Fu(The)g(v)-5 b(alue)32 +3721 y Ft(TIMEFORMAT)630 3831 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 2326 y(ing)37 b(information)f(for)h +(ecifying)f(ho)m(w)h(the)g(tim-)630 3941 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 2436 y(displa)m(y)m(ed.)k(The)27 +m(ord)f(should)g(b)s(e)630 4050 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 2545 y(a)37 +(e)g(sequence)g(that)g(is)f(expanded)g(to)630 4160 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 -2655 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h -(p)s(ortions.)630 2819 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p -Ft(\045)p Fu('.)630 2984 y Ft(\045[)p Fj(p)p Ft(][l]R)96 -b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 3148 +4269 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h +(p)s(ortions.)630 4430 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p +Ft(\045)p Fu('.)630 4590 y Ft(\045[)p Fj(p)p Ft(][l]R)96 +b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 4750 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 -3313 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f +4910 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 -3477 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 3641 +5070 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 -3751 y(after)36 b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35 +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)630 3861 y(output.)48 b(A)m(t)34 -b(most)f(three)g(places)h(after)f(the)g(decimal)h(p)s(oin)m(t)f(ma)m(y) -h(b)s(e)e(sp)s(eci\014ed;)i(v)-5 b(alues)630 3970 y(of)31 -b Fr(p)h Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g(3.)42 -b(If)29 b Fr(p)k Fu(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5 -b(alue)30 b(3)h(is)g(used.)630 4107 y(The)54 b(optional)h +(fraction)g(to)g(b)s(e)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)630 299 y(output.)48 +b(A)m(t)34 b(most)f(three)g(places)h(after)f(the)g(decimal)h(p)s(oin)m +(t)f(ma)m(y)h(b)s(e)e(sp)s(eci\014ed;)i(v)-5 b(alues)630 +408 y(of)31 b Fr(p)h Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g +(3.)42 b(If)29 b Fr(p)k Fu(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5 +b(alue)30 b(3)h(is)g(used.)630 543 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 4217 y Fr(MM)10 +b(min)m(utes,)61 b(of)54 b(the)g(form)630 653 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 4326 y(included.)630 4463 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 4600 y Ft -($'\\nreal\\t\0453lR\\nuser\\t\0453)o(lU\\n)o(sys\\)o(t\0453)o(lS')630 -4737 y Fu(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f -(information)h(is)f(displa)m(y)m(ed.)62 b(A)37 b(trailing)i(newline)e -(is)630 4847 y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m -(y)m(ed.)150 5011 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5 +(fraction)h(is)630 762 y(included.)630 897 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 1031 y Ft($'\\nreal\\t\0453lR\\nuser\\t\0453)o +(lU\\n)o(sys\\)o(t\0453)o(lS')630 1166 y Fu(If)37 b(the)g(v)-5 +b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f(information)h(is)f(displa)m +(y)m(ed.)62 b(A)37 b(trailing)i(newline)e(is)630 1275 +y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m(y)m(ed.)150 +1435 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5 b(alue)23 b(greater)h(than)e(zero,)j Ft(TMOUT)d Fu(is)g(treated)i(as)e -(the)h(default)g(timeout)g(for)g(the)630 5121 y Ft(read)31 +(the)h(default)g(timeout)g(for)g(the)630 1544 y Ft(read)31 b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g -(55\).)47 b(The)32 b Ft(select)e Fu(command)630 5230 +(56\).)47 b(The)32 b Ft(select)e Fu(command)630 1654 y(\(see)f(Section)h(3.2.5.2)g([Conditional)g(Constructs],)e(page)i -(12\))f(terminates)g(if)g(input)e(do)s(es)630 5340 y(not)k(arriv)m(e)g +(12\))f(terminates)g(if)g(input)e(do)s(es)630 1763 y(not)k(arriv)m(e)g (after)g Ft(TMOUT)e Fu(seconds)h(when)f(input)h(is)g(coming)h(from)f(a) -h(terminal.)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)630 299 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 408 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 -518 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 -677 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 787 y(temp)s(orary)30 b(\014les)g(for)g(the)h -(shell's)g(use.)150 946 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: 91 97 -TeXDict begin 91 96 bop 3659 -116 a Fu(91)150 299 y Fp(6)80 +h(terminal.)630 1898 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 2007 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 2117 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 2276 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 2386 +y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150 +2545 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: 92 98 +TeXDict begin 92 97 bop 3659 -116 a Fu(92)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 @@ -14715,7 +14807,7 @@ 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(117\))h(to)f(read)g(command)f +f(Line)g(Editing],)630 4131 y(page)h(120\))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 @@ -14732,15 +14824,15 @@ b(the)h(b)s(eha)m(vior)f(of)g(Bash)h(where)e(the)i(default)f(op)s 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(106,)630 +b(See)21 b(Section)h(6.11)g([Bash)f(POSIX)f(Mo)s(de],)k(page)d(107,)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: 92 98 -TeXDict begin 92 97 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(92)150 299 y Ft(--restricted)630 +%%Page: 93 99 +TeXDict begin 93 98 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(93)150 299 y Ft(--restricted)630 408 y 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 518 -y(page)31 b(105\).)150 677 y Ft(--verbose)630 787 y Fu(Equiv)-5 +y(page)31 b(107\).)150 677 y Ft(--verbose)630 787 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 946 y Ft(--version)630 1056 y Fu(Sho)m(w)d(v)m(ersion)g(information)g(for)g(this)g(instance)h @@ -14762,7 +14854,7 @@ b(assignmen)m(t)i(to)g Ft($0)f Fu(sets)g(the)h(name)f(of)g(the)g (error)g(messages.)150 2192 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 2301 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(94.)150 +(6.3)630 2301 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(95.)150 2461 y Ft(-l)384 b Fu(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h (had)f(b)s(een)f(directly)i(in)m(v)m(ok)m(ed)h(b)m(y)f(login.)44 b(When)31 b(the)h(shell)630 2570 y(is)37 b(in)m(teractiv)m(e,)43 @@ -14773,11 +14865,11 @@ b(this)37 b(is)g(equiv)-5 b(alen)m(t)39 b(to)f(starting)h(a)e(login)i 2790 y(`)p Ft(exec)e(bash)h(-l)p Fu(')43 b(or)h(`)p Ft(exec)29 b(bash)g(--login)p Fu(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell) h(with)g(a)630 2899 y(Bash)26 b(login)g(shell.)39 b(See)26 -b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(93,)i(for)d(a)h +b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(94,)i(for)d(a)h (description)630 3009 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of) f(a)h(login)g(shell.)150 3168 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 3278 y(page)31 b(105\).)150 +d(Restricted)j(Shell],)630 3278 y(page)31 b(107\).)150 3437 y Ft(-s)384 b Fu(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f (if)g(no)f(argumen)m(ts)i(remain)e(after)i(option)f(pro)s(cessing,)h (then)630 3547 y(commands)i(are)h(read)g(from)f(the)h(standard)f @@ -14812,9 +14904,9 @@ f(a)h(format)f(that)630 5071 y(ma)m(y)i(b)s(e)f(reused)f(as)i(input.) b(An)m(y)630 5340 y(argumen)m(ts)31 b(after)g(the)f Ft(--)g Fu(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)p eop end -%%Page: 93 99 -TeXDict begin 93 98 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(93)275 299 y(A)27 b +%%Page: 94 100 +TeXDict begin 94 99 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(94)275 299 y(A)27 b 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 @@ -14826,7 +14918,7 @@ g(input)g(and)f(output)h(are)h(b)s(oth)f(connected)h(to)g(ter-)150 774 y(minals)g(\(as)g(determined)f(b)m(y)h Ft(isatty\(3\))p Fu(\),)e(or)i(one)g(started)g(with)f(the)h Ft(-i)f Fu(option.)51 b(See)33 b(Section)i(6.3)150 884 y([In)m(teractiv)m(e)e(Shells],)e -(page)g(94,)g(for)f(more)h(information.)275 1031 y(If)i(argumen)m(ts)h +(page)g(95,)g(for)f(more)h(information.)275 1031 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 1140 y(b)s(een)44 b(supplied,)j(the)d(\014rst)g(argumen)m(t)h(is)g(assumed)e @@ -14848,7 +14940,7 @@ b(If)26 b(no)g(commands)g(are)h(executed,)150 1688 y(the)k(exit)g (describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2326 y(Tilde)f(Expansion)g (\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(25\).)275 2473 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(94.)150 +(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(95.)150 2684 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 2831 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 @@ -14887,9 +14979,9 @@ b(the)f(line)390 4725 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g 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: 94 100 -TeXDict begin 94 99 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(94)150 299 y(expanded)30 +%%Page: 95 101 +TeXDict begin 95 100 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(95)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 552 @@ -14970,9 +15062,9 @@ h(and)e(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)g(to)h(the)f(real)h h(is)g(the)g(same,)i(but)d(the)150 5070 y(e\013ectiv)m(e)c(user)d(id)g (is)g(not)h(reset.)150 5324 y Fs(6.3)68 b(In)l(teractiv)l(e)47 b(Shells)p eop end -%%Page: 95 101 -TeXDict begin 95 100 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(95)150 299 y Fk(6.3.1)63 +%%Page: 96 102 +TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(96)150 299 y Fk(6.3.1)63 b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150 446 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 @@ -15007,8 +15099,8 @@ b(Shell)k(Beha)m(vior)150 3187 y Fu(When)30 b(the)h(shell)f(is)h (eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 3330 y(1.)61 b(Startup)37 b(\014les)g(are)h(read)f(and)g(executed)h(as)f (describ)s(ed)g(in)g(Section)h(6.2)g([Bash)g(Startup)e(Files],)330 -3440 y(page)31 b(93.)199 3579 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(113\))h(is)e(enabled)g(b)m +3440 y(page)31 b(94.)199 3579 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(116\))h(is)e(enabled)g(b)m (y)g(default.)46 b(When)32 b(job)330 3689 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 3798 y @@ -15021,15 +15113,15 @@ Fu(b)s(efore)h(reading)g(the)g(second)g(and)f(subsequen)m(t)g(lines)i 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 4266 y(it.)54 b(See)35 b(Section)h(6.9)f([Con)m(trolling)i(the)d(Prompt],)i(page)g -(104,)h(for)d(a)h(complete)i(list)e(of)g(prompt)330 4375 +(105,)h(for)d(a)h(complete)i(list)e(of)g(prompt)330 4375 y(string)30 b(escap)s(e)h(sequences.)199 4514 y(4.)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 4624 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 4733 y(page)31 b(78\).)199 4872 +(V)-8 b(ariables],)330 4733 y(page)31 b(79\).)199 4872 y(5.)61 b(Readline)27 b(\(see)g(Chapter)e(8)h([Command)g(Line)g -(Editing],)h(page)g(117\))g(is)f(used)g(to)g(read)g(commands)330 +(Editing],)h(page)g(120\))g(is)f(used)g(to)g(read)g(commands)330 4982 y(from)k(the)g(user's)g(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 @@ -15037,18 +15129,18 @@ Ft(ignoreeof)e Fu(option)j(to)g Ft(set)29 b(-o)36 b Fu(instead)h(of)f 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 (67\).)p eop end -%%Page: 96 102 -TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(96)199 299 y(7.)61 +%%Page: 97 103 +TeXDict begin 97 102 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(97)199 299 y(7.)61 b(Command)43 b(history)h(\(see)h(Section)g(9.1)g([Bash)f(History)h(F)-8 -b(acilities],)51 b(page)45 b(152\))h(and)d(history)330 +b(acilities],)51 b(page)45 b(155\))h(and)d(history)330 408 y(expansion)h(\(see)i(Section)f(9.3)h([History)g(In)m(teraction],)k -(page)45 b(154\))h(are)f(enabled)g(b)m(y)f(default.)330 +(page)45 b(157\))h(are)f(enabled)g(b)m(y)f(default.)330 518 y(Bash)28 b(will)g(sa)m(v)m(e)h(the)f(command)f(history)h(to)g(the) g(\014le)g(named)f(b)m(y)h Ft($HISTFILE)d Fu(when)h(a)i(shell)g(with) 330 628 y(history)i(enabled)h(exits.)199 762 y(8.)61 b(Alias)31 b(expansion)g(\(see)g(Section)g(6.6)g([Aliases],)i(page)e -(100\))h(is)e(p)s(erformed)f(b)m(y)h(default.)199 896 +(101\))h(is)e(p)s(erformed)f(b)m(y)h(default.)199 896 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(45\).)154 1030 y(10.)61 b(In)29 b(the)g(absence)h(of)g(an)m(y)g @@ -15067,7 +15159,7 @@ e(Section)h(4.3.1)g([The)330 1627 y(Set)g(Builtin],)g(page)g(67\).)154 b(of)g(the)h Ft(MAIL)p Fu(,)e Ft(MAILPATH)p Fu(,)330 1871 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(78\).)154 2005 y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i +b(page)f(79\).)154 2005 y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i (references)f(to)h(un)m(b)s(ound)c(shell)j(v)-5 b(ariables)34 b(after)g(`)p Ft(set)29 b(-u)p Fu(')k(has)g(b)s(een)330 2114 y(enabled)d(will)h(not)g(cause)g(the)f(shell)h(to)g(exit)g(\(see)g @@ -15082,7 +15174,7 @@ Ft(:?)p Fj(word)p Ft(})27 b Fu(expansions)j(\(see)h(Section)h(3.5.3)g 2626 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 2736 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(106\).)154 2870 y(18.)61 +([Bash)f(POSIX)e(Mo)s(de],)i(page)g(107\).)154 2870 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 2980 y(page)e(48\).)154 3114 y(19.)61 b(P)m(arser)31 @@ -15100,7 +15192,7 @@ 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 3820 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 -3930 y(V)-8 b(ariables],)32 b(page)f(78\).)150 4170 y +3930 y(V)-8 b(ariables],)32 b(page)f(79\).)150 4170 y Fs(6.4)68 b(Bash)45 b(Conditional)h(Expressions)150 4329 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-) @@ -15123,9 +15215,9 @@ b(If)34 b(the)h(op)s(erating)f(system)h(on)f(whic)m(h)g(Bash)h(is)f b(\014les,)i(Bash)e(will)g(use)f(them;)k(otherwise)d(it)g(will)g(em)m (ulate)h(them)f(in)m(ternally)h(with)e(this)h(b)s(eha)m(vior:)p eop end -%%Page: 97 103 -TeXDict begin 97 102 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(97)150 299 y(If)27 +%%Page: 98 104 +TeXDict begin 98 103 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(98)150 299 y(If)27 b(the)g Fr(\014le)33 b Fu(argumen)m(t)27 b(to)h(one)g(of)f(the)h (primaries)f(is)g(of)h(the)f(form)g Ft(/dev/fd/)p Fj(N)p Fu(,)e(then)i(\014le)h(descriptor)f Fr(N)150 408 y Fu(is)g(c)m(hec)m(k) @@ -15198,9 +15290,9 @@ 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: 98 104 -TeXDict begin 98 103 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(98)150 299 y Ft(-o)30 +%%Page: 99 105 +TeXDict begin 99 104 bop 150 -116 a Fu(Chapter)30 b(6:)41 +b(Bash)30 b(F)-8 b(eatures)2484 b(99)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 @@ -15245,7 +15337,7 @@ 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 3799 y Fr(Arg1)41 b Fu(and)33 b Fr(Arg2)41 b Fu(are)33 b(ev)-5 b(aluated)35 b(as)e(arithmetic)i(expressions)d(\(see)j(Section) -f(6.5)g([Shell)630 3908 y(Arithmetic],)e(page)f(98\).)150 +f(6.5)g([Shell)630 3908 y(Arithmetic],)e(page)f(99\).)150 4145 y Fs(6.5)68 b(Shell)45 b(Arithmetic)150 4304 y Fu(The)26 b(shell)h(allo)m(ws)h(arithmetic)f(expressions)g(to)g(b)s(e)f(ev)-5 b(aluated,)29 b(as)d(one)h(of)g(the)g(shell)f(expansions)h(or)f(b)m(y) @@ -15267,9 +15359,9 @@ b(p)s(ost-incremen)m(t)g(and)f(p)s(ost-decremen)m(t)150 b(pre-incremen)m(t)g(and)f(pre-decremen)m(t)150 5340 y Ft(-)g(+)354 b Fu(unary)29 b(min)m(us)h(and)g(plus)p eop end -%%Page: 99 105 -TeXDict begin 99 104 bop 150 -116 a Fu(Chapter)30 b(6:)41 -b(Bash)30 b(F)-8 b(eatures)2484 b(99)150 299 y Ft(!)30 +%%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(!)30 b(~)354 b Fu(logical)33 b(and)d(bit)m(wise)h(negation)150 482 y Ft(**)384 b Fu(exp)s(onen)m(tiation)150 664 y Ft(*)30 b(/)g(\045)276 b Fu(m)m(ultiplication,)33 b(division,)d(remainder)150 @@ -15281,23 +15373,24 @@ b(/)g(\045)276 b Fu(m)m(ultiplication,)33 b(division,)d(remainder)150 b Fu(bit)m(wise)31 b(exclusiv)m(e)h(OR)150 1944 y Ft(|)432 b Fu(bit)m(wise)31 b(OR)150 2126 y Ft(&&)384 b Fu(logical)33 b(AND)150 2309 y Ft(||)384 b Fu(logical)33 b(OR)150 2492 -y Ft(expr)c(?)h(expr)f(:)h(expr)630 2601 y Fu(conditional)i(op)s -(erator)150 2784 y Ft(=)e(*=)g(/=)g(\045=)f(+=)h(-=)g(<<=)f(>>=)h(&=)g -(^=)f(|=)630 2894 y Fu(assignmen)m(t)150 3076 y Ft(expr1)g(,)h(expr2) -630 3186 y Fu(comma)275 3380 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 3490 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 -3600 y(name)31 b(without)f(using)g(the)h(parameter)g(expansion)f(syn)m -(tax.)42 b(A)31 b(shell)f(v)-5 b(ariable)32 b(that)f(is)f(n)m(ull)h(or) -f(unset)150 3709 y(ev)-5 b(aluates)41 b(to)f(0)g(when)e(referenced)h(b) -m(y)g(name)h(without)f(using)g(the)g(parameter)h(expansion)f(syn)m -(tax.)150 3819 y(The)c(v)-5 b(alue)37 b(of)f(a)h(v)-5 -b(ariable)36 b(is)g(ev)-5 b(aluated)38 b(as)e(an)g(arithmetic)h -(expression)f(when)f(it)h(is)g(referenced,)i(or)150 3928 -y(when)27 b(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 +y Ft(expr)c(?)h(if-true-expr)d(:)j(if-false-expr)630 +2601 y Fu(conditional)i(op)s(erator)150 2784 y Ft(=)e(*=)g(/=)g(\045=)f +(+=)h(-=)g(<<=)f(>>=)h(&=)g(^=)f(|=)630 2894 y Fu(assignmen)m(t)150 +3076 y Ft(expr1)g(,)h(expr2)630 3186 y Fu(comma)275 3380 +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 3490 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 3600 y(name)31 b(without)f(using)g(the)h +(parameter)g(expansion)f(syn)m(tax.)42 b(A)31 b(shell)f(v)-5 +b(ariable)32 b(that)f(is)f(n)m(ull)h(or)f(unset)150 3709 +y(ev)-5 b(aluates)41 b(to)f(0)g(when)e(referenced)h(b)m(y)g(name)h +(without)f(using)g(the)g(parameter)h(expansion)f(syn)m(tax.)150 +3819 y(The)c(v)-5 b(alue)37 b(of)f(a)h(v)-5 b(ariable)36 +b(is)g(ev)-5 b(aluated)38 b(as)e(an)g(arithmetic)h(expression)f(when)f +(it)h(is)g(referenced,)i(or)150 3928 y(when)27 b(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 4038 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 @@ -15328,1069 +15421,1182 @@ b(ma)m(y)f(b)s(e)e(used)h(in)m(terc)m(hangeably)i(to)f(represen)m(t)g (precedence.)85 b(Sub-expressions)44 b(in)g(paren)m(theses)i(are)150 5340 y(ev)-5 b(aluated)32 b(\014rst)d(and)h(ma)m(y)h(o)m(v)m(erride)g (the)g(precedence)g(rules)f(ab)s(o)m(v)m(e.)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 Fs(6.6)68 -b(Aliases)150 458 y Fr(Aliases)41 b Fu(allo)m(w)d(a)f(string)f(to)h(b)s -(e)f(substituted)g(for)g(a)g(w)m(ord)g(when)g(it)h(is)f(used)f(as)i -(the)g(\014rst)e(w)m(ord)h(of)h(a)150 568 y(simple)32 -b(command.)45 b(The)31 b(shell)i(main)m(tains)f(a)h(list)f(of)g -(aliases)i(that)e(ma)m(y)h(b)s(e)e(set)h(and)g(unset)f(with)h(the)150 -677 y Ft(alias)d Fu(and)h Ft(unalias)e Fu(builtin)i(commands.)275 -810 y(The)f(\014rst)f(w)m(ord)i(of)f(eac)m(h)i(simple)f(command,)g(if)f -(unquoted,)g(is)h(c)m(hec)m(k)m(ed)h(to)g(see)f(if)g(it)g(has)f(an)g -(alias.)150 920 y(If)24 b(so,)i(that)g(w)m(ord)e(is)h(replaced)g(b)m(y) -f(the)h(text)h(of)e(the)h(alias.)40 b(The)24 b(c)m(haracters)i(`)p -Ft(/)p Fu(',)h(`)p Ft($)p Fu(',)f(`)p Ft(`)p Fu(',)g(`)p -Ft(=)p Fu(')f(and)f(an)m(y)h(of)150 1030 y(the)e(shell)g(metac)m -(haracters)i(or)e(quoting)g(c)m(haracters)h(listed)g(ab)s(o)m(v)m(e)g -(ma)m(y)f(not)g(app)s(ear)f(in)h(an)g(alias)h(name.)150 -1139 y(The)e(replacemen)m(t)h(text)g(ma)m(y)g(con)m(tain)h(an)m(y)e(v) --5 b(alid)23 b(shell)f(input,)h(including)f(shell)g(metac)m(haracters.) -40 b(The)150 1249 y(\014rst)35 b(w)m(ord)g(of)h(the)g(replacemen)m(t)i -(text)e(is)g(tested)h(for)e(aliases,)k(but)c(a)h(w)m(ord)g(that)g(is)g -(iden)m(tical)i(to)e(an)150 1358 y(alias)c(b)s(eing)f(expanded)f(is)h -(not)g(expanded)f(a)h(second)g(time.)43 b(This)30 b(means)h(that)g(one) -g(ma)m(y)h(alias)g Ft(ls)e Fu(to)150 1468 y Ft("ls)f(-F")p -Fu(,)f(for)f(instance,)i(and)d(Bash)i(do)s(es)f(not)h(try)f(to)h -(recursiv)m(ely)g(expand)e(the)i(replacemen)m(t)h(text.)40 -b(If)150 1578 y(the)30 b(last)h(c)m(haracter)g(of)g(the)f(alias)h(v)-5 -b(alue)30 b(is)g(a)g Ft(blank)p Fu(,)f(then)h(the)g(next)g(command)g(w) -m(ord)f(follo)m(wing)j(the)150 1687 y(alias)g(is)e(also)h(c)m(hec)m(k)m -(ed)i(for)d(alias)h(expansion.)275 1820 y(Aliases)e(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 1930 y Fu(command.)275 -2063 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 2172 y(argumen)m(ts)31 b(are)f(needed,)h(use)f(a)h -(shell)f(function)g(\(see)i(Section)f(3.3)g([Shell)g(F)-8 -b(unctions],)31 b(page)g(19\).)275 2305 y(Aliases)i(are)h(not)e -(expanded)g(when)g(the)h(shell)g(is)g(not)g(in)m(teractiv)m(e,)j -(unless)c(the)h Ft(expand_aliases)150 2415 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(71\).)275 2548 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 2657 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 2767 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 2877 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 2986 y(de\014nition)36 -b(app)s(earing)h(on)f(the)h(same)g(line)g(as)g(another)g(command)f(do)s -(es)g(not)h(tak)m(e)i(e\013ect)f(un)m(til)f(the)150 3096 -y(next)i(line)g(of)g(input)f(is)h(read.)66 b(The)38 b(commands)h(follo) -m(wing)h(the)f(alias)h(de\014nition)e(on)h(that)g(line)h(are)150 -3205 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 3315 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 3425 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 3534 y(function)28 b(are)h(not)g(a)m(v)-5 +%%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 Fs(6.6)68 +b(Aliases)150 458 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 568 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 677 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 787 y(Builtin)31 b(Commands],)f(page)h(48\).) +275 934 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 1044 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 1153 +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 1263 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 +1410 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 +1519 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 1629 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 1738 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 1848 +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 1958 y(recursiv)m(ely)i(expand)f(the)g +(replacemen)m(t)i(text.)275 2104 y(If)25 b(the)i(last)g(c)m(haracter)h +(of)e(the)g(alias)i(v)-5 b(alue)26 b(is)h(a)f Ft(blank)p +Fu(,)g(then)g(the)g(next)h(command)f(w)m(ord)f(follo)m(wing)150 +2214 y(the)31 b(alias)g(is)g(also)g(c)m(hec)m(k)m(ed)h(for)e(alias)i +(expansion.)275 2361 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 2471 y Fu(command.)275 2617 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 2727 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 2837 y(instead.)275 2984 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 3093 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(71\).)275 3240 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 3350 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 3459 +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 +3569 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 3678 y(de\014nition)36 b(app)s(earing)h(on)f(the)h +(same)g(line)g(as)g(another)g(command)f(do)s(es)g(not)h(tak)m(e)i +(e\013ect)f(un)m(til)f(the)150 3788 y(next)i(line)g(of)g(input)f(is)h +(read.)66 b(The)38 b(commands)h(follo)m(wing)h(the)f(alias)h +(de\014nition)e(on)h(that)g(line)h(are)150 3898 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 4007 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 4117 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 4226 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 -3644 y(de\014nitions)i(on)g(a)h(separate)g(line,)g(and)f(do)g(not)h +4336 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 -3777 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i +4483 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i (functions)f(are)g(preferred)g(o)m(v)m(er)h(aliases.)150 -4014 y Fs(6.7)68 b(Arra)l(ys)150 4174 y Fu(Bash)33 b(pro)m(vides)g +4742 y Fs(6.7)68 b(Arra)l(ys)150 4902 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 -4283 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e +5011 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e Ft(declare)e Fu(builtin)h(will)i(explicitly)g(declare)g(an)f(arra)m(y) --8 b(.)46 b(There)32 b(is)150 4393 y(no)h(maxim)m(um)g(limit)h(on)f +-8 b(.)46 b(There)32 b(is)150 5121 y(no)h(maxim)m(um)g(limit)h(on)f (the)g(size)h(of)g(an)f(arra)m(y)-8 b(,)35 b(nor)d(an)m(y)i(requiremen) -m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 4503 +m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 5230 y(or)26 b(assigned)h(con)m(tiguously)-8 b(.)41 b(Indexed)25 b(arra)m(ys)i(are)f(referenced)g(using)g(in)m(tegers)i(\(including)e -(arithmetic)150 4612 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell) -e(Arithmetic],)k(page)d(98\)\))h(and)d(are)i(zero-based;)k(asso)s -(ciativ)m(e)150 4722 y(arra)m(ys)37 b(use)f(arbitrary)g(strings.)59 -b(Unless)36 b(otherwise)h(noted,)h(indexed)e(arra)m(y)h(indices)f(m)m -(ust)g(b)s(e)g(non-)150 4831 y(negativ)m(e)d(in)m(tegers.)275 -4964 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 5097 y Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p -Fj(value)150 5230 y Fu(The)34 b Fr(subscript)h Fu(is)g(treated)g(as)g -(an)f(arithmetic)i(expression)e(that)h(m)m(ust)g(ev)-5 -b(aluate)36 b(to)f(a)g(n)m(um)m(b)s(er.)51 b(T)-8 b(o)150 -5340 y(explicitly)32 b(declare)f(an)g(arra)m(y)-8 b(,)31 -b(use)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)390 299 y Ft(declare)46 -b(-a)h Fj(name)150 438 y Fu(The)30 b(syn)m(tax)390 577 -y Ft(declare)46 b(-a)h Fj(name)p Ft([)p Fj(subscript)p -Ft(])150 715 y Fu(is)30 b(also)i(accepted;)g(the)e Fr(subscript)h -Fu(is)g(ignored.)150 854 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h -(created)h(using)390 993 y Ft(declare)46 b(-A)h Fj(name)275 -1132 y Fu(A)m(ttributes)f(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g +(arithmetic)150 5340 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell) +e(Arithmetic],)k(page)d(99\)\))h(and)d(are)i(zero-based;)k(asso)s +(ciativ)m(e)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(arra)m(ys)37 +b(use)f(arbitrary)g(strings.)59 b(Unless)36 b(otherwise)h(noted,)h +(indexed)e(arra)m(y)h(indices)f(m)m(ust)g(b)s(e)g(non-)150 +408 y(negativ)m(e)d(in)m(tegers.)275 541 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 674 +y Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p Fj(value)150 +806 y Fu(The)34 b Fr(subscript)h Fu(is)g(treated)g(as)g(an)f +(arithmetic)i(expression)e(that)h(m)m(ust)g(ev)-5 b(aluate)36 +b(to)f(a)g(n)m(um)m(b)s(er.)51 b(T)-8 b(o)150 916 y(explicitly)32 +b(declare)f(an)g(arra)m(y)-8 b(,)31 b(use)390 1049 y +Ft(declare)46 b(-a)h Fj(name)150 1181 y Fu(The)30 b(syn)m(tax)390 +1314 y Ft(declare)46 b(-a)h Fj(name)p Ft([)p Fj(subscript)p +Ft(])150 1447 y Fu(is)30 b(also)i(accepted;)g(the)e Fr(subscript)h +Fu(is)g(ignored.)150 1579 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h +(created)h(using)390 1712 y Ft(declare)46 b(-A)h Fj(name)275 +1845 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 1241 y Fu(builtins.)40 b(Eac)m(h)31 +Fu(and)h Ft(readonly)150 1954 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 1380 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s -(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 1519 y Fj(name)p -Ft(=\()p Fj(value1)44 b(value2)j Ft(...)f(\))150 1658 +-8 b(.)275 2087 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s +(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 2220 y Fj(name)p +Ft(=\()p Fj(value1)44 b(value2)j Ft(...)f(\))150 2352 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 -1767 y(not)26 b(require)f(an)m(ything)g(but)g Fr(string)p +2462 y(not)26 b(require)f(an)m(ything)g(but)g Fr(string)p Fu(.)39 b(When)25 b(assigning)h(to)g(indexed)f(arra)m(ys,)i(if)e(the)h -(optional)g(subscript)150 1877 y(is)h(supplied,)f(that)h(index)g(is)f +(optional)g(subscript)150 2571 y(is)h(supplied,)f(that)h(index)g(is)f (assigned)h(to;)i(otherwise)e(the)g(index)g(of)f(the)h(elemen)m(t)i -(assigned)d(is)h(the)g(last)150 1987 y(index)j(assigned)h(to)g(b)m(y)f +(assigned)d(is)h(the)g(last)150 2681 y(index)j(assigned)h(to)g(b)m(y)f (the)g(statemen)m(t)j(plus)c(one.)41 b(Indexing)30 b(starts)h(at)g -(zero.)275 2125 y(Eac)m(h)26 b Fr(v)-5 b(alue)32 b Fu(in)26 -b(the)h(list)g(undergo)s(es)e(all)i(the)g(shell)f(expansions)g(describ) -s(ed)f(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.5)150 2235 -y([Shell)j(Expansions],)h(page)g(24\).)275 2374 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 -2483 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 2593 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 2703 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 2812 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 2922 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 3031 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 3170 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 3280 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 -3419 y(When)h(assigning)h(to)h(an)e(indexed)g(arra)m(y)-8 +(zero.)275 2814 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 2923 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 3033 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 3142 y(v)-5 +b(ariable)31 b(assignmen)m(ts.)275 3275 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 3385 +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 3494 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 +3604 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 3713 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 3823 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 +3933 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 +4065 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 4175 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 +4308 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 3528 y(n)m(um)m(b)s(er)43 +(negativ)m(e)i(n)m(um)m(b)s(er,)c(that)150 4417 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)150 -3638 y(negativ)m(e)30 b(indices)d(coun)m(t)h(bac)m(k)g(from)f(the)g +4527 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 3747 y(elemen)m(t.)275 3886 +(references)g(the)f(last)150 4636 y(elemen)m(t.)275 4769 y(The)j(`)p Ft(+=)p Fu(')g(op)s(erator)h(will)g(app)s(end)e(to)i(an)g (arra)m(y)g(v)-5 b(ariable)32 b(when)d(assigning)i(using)g(the)f(comp)s -(ound)150 3996 y(assignmen)m(t)h(syn)m(tax;)g(see)g(Section)g(3.4)h +(ound)150 4879 y(assignmen)m(t)h(syn)m(tax;)g(see)g(Section)g(3.4)h ([Shell)e(P)m(arameters],)i(page)g(21,)f(ab)s(o)m(v)m(e.)275 -4134 y(An)m(y)d(elemen)m(t)h(of)g(an)f(arra)m(y)g(ma)m(y)h(b)s(e)f +5011 y(An)m(y)d(elemen)m(t)h(of)g(an)f(arra)m(y)g(ma)m(y)h(b)s(e)f (referenced)g(using)g Ft(${)p Fj(name)p Ft([)p Fj(subscript)p -Ft(]})p Fu(.)35 b(The)27 b(braces)i(are)150 4244 y(required)f(to)j(a)m +Ft(]})p Fu(.)35 b(The)27 b(braces)i(are)150 5121 y(required)f(to)j(a)m (v)m(oid)f(con\015icts)g(with)f(the)h(shell's)f(\014lename)h(expansion) f(op)s(erators.)41 b(If)28 b(the)i Fr(subscript)g Fu(is)150 -4354 y(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)f(the)h(w)m(ord)f +5230 y(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)f(the)h(w)m(ord)f (expands)f(to)i(all)g(mem)m(b)s(ers)e(of)i(the)f(arra)m(y)h Fr(name)p Fu(.)40 b(These)29 b(subscripts)f(di\013er)h(only)150 -4463 y(when)36 b(the)g(w)m(ord)g(app)s(ears)g(within)g(double)g +5340 y(when)36 b(the)g(w)m(ord)g(app)s(ears)g(within)g(double)g (quotes.)60 b(If)36 b(the)h(w)m(ord)f(is)g(double-quoted,)j -Ft(${)p Fj(name)p Ft([*]})150 4573 y Fu(expands)25 b(to)h(a)g(single)h -(w)m(ord)e(with)g(the)h(v)-5 b(alue)26 b(of)g(eac)m(h)h(arra)m(y)f(mem) -m(b)s(er)f(separated)h(b)m(y)g(the)f(\014rst)g(c)m(harac-)150 -4682 y(ter)j(of)g(the)h Ft(IFS)e Fu(v)-5 b(ariable,)29 -b(and)f Ft(${)p Fj(name)p Ft([@]})d Fu(expands)i(eac)m(h)i(elemen)m(t)h -(of)e Fr(name)33 b Fu(to)c(a)f(separate)h(w)m(ord.)150 -4792 y(When)j(there)h(are)f(no)g(arra)m(y)h(mem)m(b)s(ers,)f -Ft(${)p Fj(name)p Ft([@]})e Fu(expands)h(to)i(nothing.)47 -b(If)31 b(the)i(double-quoted)150 4902 y(expansion)39 -b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d(expansion)h(of)g(the)f -(\014rst)g(parameter)h(is)g(joined)f(with)h(the)150 5011 -y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e(and)g(the)h -(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f(with)150 -5121 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40 +Ft(${)p Fj(name)p Ft([*]})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(expands)25 +b(to)h(a)g(single)h(w)m(ord)e(with)g(the)h(v)-5 b(alue)26 +b(of)g(eac)m(h)h(arra)m(y)f(mem)m(b)s(er)f(separated)h(b)m(y)g(the)f +(\014rst)g(c)m(harac-)150 408 y(ter)j(of)g(the)h Ft(IFS)e +Fu(v)-5 b(ariable,)29 b(and)f Ft(${)p Fj(name)p Ft([@]})d +Fu(expands)i(eac)m(h)i(elemen)m(t)h(of)e Fr(name)33 b +Fu(to)c(a)f(separate)h(w)m(ord.)150 518 y(When)j(there)h(are)f(no)g +(arra)m(y)h(mem)m(b)s(ers,)f Ft(${)p Fj(name)p Ft([@]})e +Fu(expands)h(to)i(nothing.)47 b(If)31 b(the)i(double-quoted)150 +628 y(expansion)39 b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d +(expansion)h(of)g(the)f(\014rst)g(parameter)h(is)g(joined)f(with)h(the) +150 737 y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e +(and)g(the)h(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f +(with)150 847 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40 b(This)28 b(is)h(analogous)h(to)f(the)h(expansion)e(of)h(the)g(sp)s -(ecial)h(param-)150 5230 y(eters)g(`)p Ft(@)p Fu(')f(and)g(`)p +(ecial)h(param-)150 956 y(eters)g(`)p Ft(@)p Fu(')f(and)g(`)p Ft(*)p Fu('.)41 b Ft(${#)p Fj(name)p Ft([)p Fj(subscript)p Ft(]})24 b Fu(expands)k(to)i(the)g(length)g(of)f Ft(${)p Fj(name)p Ft([)p Fj(subscript)p Ft(]})p Fu(.)35 b(If)150 -5340 y Fr(subscript)28 b Fu(is)g(`)p Ft(@)p Fu(')f(or)h(`)p +1066 y Fr(subscript)28 b Fu(is)g(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)g(the)g(expansion)f(is)g(the)h(n)m(um)m(b)s(er)e(of)i (elemen)m(ts)g(in)f(the)h(arra)m(y)-8 b(.)41 b(If)27 -b(the)g Fr(subscript)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(used)34 -b(to)h(reference)g(an)f(elemen)m(t)i(of)f(an)f(indexed)g(arra)m(y)h(ev) --5 b(aluates)36 b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero,)i(it) -150 408 y(is)c(in)m(terpreted)h(as)f(relativ)m(e)i(to)f(one)f(greater)h +b(the)g Fr(subscript)150 1176 y Fu(used)34 b(to)h(reference)g(an)f +(elemen)m(t)i(of)f(an)f(indexed)g(arra)m(y)h(ev)-5 b(aluates)36 +b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero,)i(it)150 +1285 y(is)c(in)m(terpreted)h(as)f(relativ)m(e)i(to)f(one)f(greater)h (than)f(the)h(maxim)m(um)f(index)f(of)h(the)h(arra)m(y)-8 -b(,)33 b(so)g(negativ)m(e)150 518 y(indices)d(coun)m(t)h(bac)m(k)h +b(,)33 b(so)g(negativ)m(e)150 1395 y(indices)d(coun)m(t)h(bac)m(k)h (from)e(the)g(end)g(of)g(the)h(arra)m(y)-8 b(,)31 b(and)f(an)g(index)g (of)h(-1)g(refers)f(to)h(the)g(last)g(elemen)m(t.)275 -675 y(Referencing)41 b(an)f(arra)m(y)h(v)-5 b(ariable)42 +1544 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 785 y(subscript)35 +b(to)f(referencing)g(with)g(a)150 1653 y(subscript)35 b(of)h(0.)57 b(An)m(y)36 b(reference)g(to)h(a)f(v)-5 b(ariable)36 b(using)g(a)g(v)-5 b(alid)36 b(subscript)f(is)h(legal,)j -(and)c Ft(bash)g Fu(will)150 894 y(create)d(an)e(arra)m(y)h(if)f -(necessary)-8 b(.)275 1051 y(An)35 b(arra)m(y)i(v)-5 +(and)c Ft(bash)g Fu(will)150 1763 y(create)d(an)e(arra)m(y)h(if)f +(necessary)-8 b(.)275 1912 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 -1161 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275 -1317 y(It)29 b(is)h(p)s(ossible)f(to)h(obtain)g(the)f(k)m(eys)i +2021 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275 +2170 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 1427 y Fu(and)39 b($)p Fi({)p Fu(!)p Fr(name)5 +Fi(})150 2280 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 1537 y(when)i(in)g(double)g(quotes)h(is)f(similar)h +b(treatmen)m(t)150 2389 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 1646 y(within)30 -b(double)g(quotes.)275 1803 y(The)25 b Ft(unset)g Fu(builtin)g(is)h +Ft(@)p Fu(')g(and)f(`)p Ft(*)p Fu(')150 2499 y(within)30 +b(double)g(quotes.)275 2648 y(The)25 b Ft(unset)g Fu(builtin)g(is)h (used)f(to)i(destro)m(y)f(arra)m(ys.)40 b Ft(unset)29 b Fj(name)p Ft([)p Fj(subscript)p Ft(])22 b Fu(destro)m(ys)k(the)g -(arra)m(y)150 1913 y(elemen)m(t)40 b(at)e(index)g Fr(subscript)p +(arra)m(y)150 2757 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 2022 y(scrib)s(ed)30 +f(in)m(terpreted)h(as)f(de-)150 2867 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 2132 y Ft(unset)29 b Fj(name)p Fu(,)39 +b(ariable.)150 2977 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 -2241 y Fu(b)s(eha)m(v)m(es)h(di\013eren)m(tly)g(dep)s(ending)d(on)j +3086 y Fu(b)s(eha)m(v)m(es)h(di\013eren)m(tly)g(dep)s(ending)d(on)j (the)f(arra)m(y)h(t)m(yp)s(e)f(when)g(giv)m(en)h(a)f(subscript)g(of)g (`)p Ft(*)p Fu(')g(or)h(`)p Ft(@)p Fu('.)40 b(When)150 -2351 y Fr(name)46 b Fu(is)40 b(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8 +3196 y Fr(name)46 b Fu(is)40 b(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8 b(,)44 b(it)d(remo)m(v)m(es)h(the)f(elemen)m(t)h(with)e(k)m(ey)h(`)p Ft(*)p Fu(')g(or)f(`)p Ft(@)p Fu('.)72 b(If)40 b Fr(name)45 -b Fu(is)c(an)150 2461 y(indexed)30 b(arra)m(y)-8 b(,)31 +b Fu(is)c(an)150 3305 y(indexed)30 b(arra)m(y)-8 b(,)31 b Ft(unset)e Fu(remo)m(v)m(es)j(all)f(of)g(the)f(elemen)m(ts,)i(but)e (do)s(es)g(not)h(remo)m(v)m(e)h(the)e(arra)m(y)h(itself.)275 -2617 y(When)k(using)g(a)i(v)-5 b(ariable)36 b(name)g(with)g(a)g +3454 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 2727 y(with)k Ft(unset)p Fu(,)h(without)e(using)h(the)g(w)m(ord)f +150 3564 y(with)k Ft(unset)p Fu(,)h(without)e(using)h(the)g(w)m(ord)f (expansion)h(syn)m(tax)g(describ)s(ed)f(ab)s(o)m(v)m(e,)44 -b(the)c(argumen)m(t)g(is)150 2837 y(sub)5 b(ject)25 b(to)h(the)g +b(the)c(argumen)m(t)g(is)150 3673 y(sub)5 b(ject)25 b(to)h(the)g (shell's)g(\014lename)f(expansion.)39 b(If)25 b(\014lename)h(expansion) -f(is)g(not)h(desired,)g(the)f(argumen)m(t)150 2946 y(should)k(b)s(e)h -(quoted.)275 3103 y(The)20 b Ft(declare)p Fu(,)h Ft(local)p +f(is)g(not)h(desired,)g(the)f(argumen)m(t)150 3783 y(should)k(b)s(e)h +(quoted.)275 3932 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 -3213 y(arra)m(y)28 b(and)f(a)h Ft(-A)e Fu(option)i(to)g(sp)s(ecify)f +4042 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 -3322 y(precedence.)55 b(The)35 b Ft(read)f Fu(builtin)h(accepts)h(a)g +4151 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)150 3432 y(standard)h(input)g(to)i(an)f(arra)m(y)-8 +(from)g(the)150 4261 y(standard)h(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 3541 y(arra)m(y)f(elemen)m(ts.)62 +(input)f(in)m(to)i(individual)150 4370 y(arra)m(y)f(elemen)m(ts.)62 b(The)36 b Ft(set)g Fu(and)h Ft(declare)d Fu(builtins)j(displa)m(y)g (arra)m(y)g(v)-5 b(alues)37 b(in)g(a)g(w)m(a)m(y)h(that)g(allo)m(ws)150 -3651 y(them)30 b(to)h(b)s(e)f(reused)g(as)g(input.)150 -3925 y Fs(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150 -4085 y Fu(The)21 b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m +4480 y(them)30 b(to)h(b)s(e)f(reused)g(as)g(input.)150 +4742 y Fs(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150 +4902 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 4194 y(to)42 b(the)f(stac)m(k)i(as) +Fu(builtin)h(adds)g(directories)150 5011 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 4304 y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j +150 5121 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 4414 y Ft(dirs)34 b Fu(builtin)g(displa)m(ys)h(the)g(con)m +41 b(The)150 5230 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 4523 -y(the)c Ft(")p Fu(top)p Ft(")f Fu(of)g(the)h(directory)g(stac)m(k.)275 -4680 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 4790 y(v)-5 b(ariable.)150 -5011 y Fk(6.8.1)63 b(Directory)40 b(Stac)m(k)g(Builtins)150 -5194 y Ft(dirs)870 5340 y(dirs)47 b([-clpv])e([+)p Fj(N)i -Ft(|)h(-)p Fj(N)p Ft(])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)630 299 y(Displa)m(y)35 -b(the)f(list)g(of)g(curren)m(tly)g(remem)m(b)s(ered)f(directories.)51 -b(Directories)36 b(are)e(added)f(to)630 408 y(the)28 -b(list)h(with)f(the)g Ft(pushd)f Fu(command;)i(the)f -Ft(popd)f Fu(command)h(remo)m(v)m(es)h(directories)g(from)630 -518 y(the)i(list.)41 b(The)30 b(curren)m(t)g(directory)h(is)f(alw)m(a)m -(ys)i(the)f(\014rst)e(directory)i(in)f(the)h(stac)m(k.)630 -676 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 833 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 943 y(uses)d(a)h(tilde)g(to)g(denote)g -(the)f(home)h(directory)-8 b(.)630 1100 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 1258 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 1367 -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 1525 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 1634 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 1792 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 -1902 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 2059 -y Ft(popd)870 2193 y(popd)47 b([-n])f([+)p Fj(N)h Ft(|)h(-)p -Fj(N)p Ft(])630 2326 y Fu(Remo)m(v)m(es)34 b(elemen)m(ts)g(from)e(the)h -(directory)g(stac)m(k.)49 b(The)32 b(elemen)m(ts)i(are)f(n)m(um)m(b)s -(ered)e(from)630 2436 y(0)38 b(starting)h(at)f(the)g(\014rst)f -(directory)h(listed)g(b)m(y)g Ft(dirs)p Fu(;)j(that)d(is,)i -Ft(popd)c Fu(is)i(equiv)-5 b(alen)m(t)39 b(to)630 2545 -y Ft(popd)29 b(+0)p Fu(.)630 2679 y(When)j(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 2789 y(and)e(c)m(hanges)h(to)g(the)g(new)f(top)g -(directory)-8 b(.)630 2922 y(Argumen)m(ts,)31 b(if)f(supplied,)f(ha)m -(v)m(e)j(the)e(follo)m(wing)i(meanings:)630 3080 y Ft(-n)384 -b Fu(Suppresses)27 b(the)j(normal)g(c)m(hange)g(of)g(directory)g(when)e -(remo)m(ving)j(directo-)1110 3189 y(ries)f(from)g(the)h(stac)m(k,)h(so) -f(that)g(only)f(the)h(stac)m(k)g(is)g(manipulated.)630 -3347 y Ft(+)p Fj(N)384 b Fu(Remo)m(v)m(es)22 b(the)f -Fr(N)10 b Fu(th)20 b(directory)g(\(coun)m(ting)i(from)e(the)g(left)h -(of)g(the)f(list)h(prin)m(ted)1110 3456 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 -3614 y Ft(-)p Fj(N)384 b Fu(Remo)m(v)m(es)46 b(the)g -Fr(N)10 b Fu(th)44 b(directory)h(\(coun)m(ting)h(from)f(the)g(righ)m(t) -g(of)g(the)g(list)1110 3724 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 -3881 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 -3991 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 4100 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 4234 y(Otherwise,)34 b Ft(popd)f Fu(returns)f(an)h -(unsuccessful)g(status)g(if)h(an)f(in)m(v)-5 b(alid)34 -b(option)g(is)g(encoun-)630 4343 y(tered,)39 b(the)d(directory)h(stac)m -(k)i(is)d(empt)m(y)-8 b(,)39 b(or)e(a)g(non-existen)m(t)h(directory)f -(stac)m(k)h(en)m(try)f(is)630 4453 y(sp)s(eci\014ed.)630 -4587 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 -4696 y(of)f(the)f(directory)h(stac)m(k,)h(and)e(the)g(return)g(status)g -(is)h(0.)150 4854 y Ft(pushd)870 4987 y(pushd)46 b([-n])h([+)p -Fj(N)g Ft(|)g Fj(-N)h Ft(|)f Fj(dir)p Ft(])630 5121 y -Fu(Adds)27 b(a)h(directory)h(to)g(the)f(top)g(of)g(the)g(directory)h -(stac)m(k,)h(or)e(rotates)h(the)f(stac)m(k,)j(making)630 -5230 y(the)37 b(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 -5340 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.)p eop end +b(curren)m(t)h(directory)g(is)g(alw)m(a)m(ys)150 5340 +y(the)c Ft(")p Fu(top)p Ft(")f Fu(of)g(the)h(directory)g(stac)m(k.)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)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 -455 y Ft(-n)384 b Fu(Suppresses)24 b(the)j(normal)f(c)m(hange)h(of)g -(directory)f(when)g(rotating)h(or)f(adding)1110 564 y(directories)31 -b(to)h(the)e(stac)m(k,)i(so)f(that)g(only)f(the)h(stac)m(k)h(is)e -(manipulated.)630 720 y Ft(+)p Fj(N)384 b Fu(Brings)29 -b(the)f Fr(N)10 b Fu(th)29 b(directory)g(\(coun)m(ting)h(from)e(the)g -(left)i(of)e(the)h(list)g(prin)m(ted)1110 830 y(b)m(y)34 +b(Bash)30 b(F)-8 b(eatures)2439 b(104)275 299 y(The)35 +b(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 408 y(v)-5 b(ariable.)150 600 y Fk(6.8.1)63 +b(Directory)40 b(Stac)m(k)g(Builtins)150 768 y Ft(dirs)870 +898 y(dirs)47 b([-clpv])e([+)p Fj(N)i Ft(|)h(-)p Fj(N)p +Ft(])630 1029 y Fu(Displa)m(y)35 b(the)f(list)g(of)g(curren)m(tly)g +(remem)m(b)s(ered)f(directories.)51 b(Directories)36 +b(are)e(added)f(to)630 1138 y(the)28 b(list)h(with)f(the)g +Ft(pushd)f Fu(command;)i(the)f Ft(popd)f Fu(command)h(remo)m(v)m(es)h +(directories)g(from)630 1248 y(the)i(list.)41 b(The)30 +b(curren)m(t)g(directory)h(is)f(alw)m(a)m(ys)i(the)f(\014rst)e +(directory)i(in)f(the)h(stac)m(k.)630 1399 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 1551 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 1660 y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h +(directory)-8 b(.)630 1812 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 1963 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 2073 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 +2224 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 2334 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 +2485 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 2595 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 2746 y Ft(popd)870 2876 y(popd)47 b([-n])f([+)p +Fj(N)h Ft(|)h(-)p Fj(N)p Ft(])630 3007 y Fu(Remo)m(v)m(es)34 +b(elemen)m(ts)g(from)e(the)h(directory)g(stac)m(k.)49 +b(The)32 b(elemen)m(ts)i(are)f(n)m(um)m(b)s(ered)e(from)630 +3116 y(0)38 b(starting)h(at)f(the)g(\014rst)f(directory)h(listed)g(b)m +(y)g Ft(dirs)p Fu(;)j(that)d(is,)i Ft(popd)c Fu(is)i(equiv)-5 +b(alen)m(t)39 b(to)630 3226 y Ft(popd)29 b(+0)p Fu(.)630 +3357 y(When)j(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 +3466 y(and)e(c)m(hanges)h(to)g(the)g(new)f(top)g(directory)-8 +b(.)630 3597 y(Argumen)m(ts,)31 b(if)f(supplied,)f(ha)m(v)m(e)j(the)e +(follo)m(wing)i(meanings:)630 3748 y Ft(-n)384 b Fu(Suppresses)27 +b(the)j(normal)g(c)m(hange)g(of)g(directory)g(when)e(remo)m(ving)j +(directo-)1110 3858 y(ries)f(from)g(the)h(stac)m(k,)h(so)f(that)g(only) +f(the)h(stac)m(k)g(is)g(manipulated.)630 4009 y Ft(+)p +Fj(N)384 b Fu(Remo)m(v)m(es)22 b(the)f Fr(N)10 b Fu(th)20 +b(directory)g(\(coun)m(ting)i(from)e(the)g(left)h(of)g(the)f(list)h +(prin)m(ted)1110 4119 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 4270 y Ft(-)p Fj(N)384 +b Fu(Remo)m(v)m(es)46 b(the)g Fr(N)10 b Fu(th)44 b(directory)h(\(coun)m +(ting)h(from)f(the)g(righ)m(t)g(of)g(the)g(list)1110 +4380 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 4531 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 4641 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 4750 +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 4881 y(Otherwise,)34 +b Ft(popd)f Fu(returns)f(an)h(unsuccessful)g(status)g(if)h(an)f(in)m(v) +-5 b(alid)34 b(option)g(is)g(encoun-)630 4990 y(tered,)39 +b(the)d(directory)h(stac)m(k)i(is)d(empt)m(y)-8 b(,)39 +b(or)e(a)g(non-existen)m(t)h(directory)f(stac)m(k)h(en)m(try)f(is)630 +5100 y(sp)s(eci\014ed.)630 5230 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 +5340 y(of)f(the)f(directory)h(stac)m(k,)h(and)e(the)g(return)g(status)g +(is)h(0.)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 Ft(pushd)870 +432 y(pushd)46 b([-n])h([+)p Fj(N)g Ft(|)g Fj(-N)h Ft(|)f +Fj(dir)p Ft(])630 565 y Fu(Adds)27 b(a)h(directory)h(to)g(the)f(top)g +(of)g(the)g(directory)h(stac)m(k,)h(or)e(rotates)h(the)f(stac)m(k,)j +(making)630 674 y(the)37 b(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 784 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 +917 y(Argumen)m(ts,)g(if)f(supplied,)f(ha)m(v)m(e)j(the)e(follo)m(wing) +i(meanings:)630 1073 y Ft(-n)384 b Fu(Suppresses)24 b(the)j(normal)f(c) +m(hange)h(of)g(directory)f(when)g(rotating)h(or)f(adding)1110 +1182 y(directories)31 b(to)h(the)e(stac)m(k,)i(so)f(that)g(only)f(the)h +(stac)m(k)h(is)e(manipulated.)630 1339 y Ft(+)p Fj(N)384 +b Fu(Brings)29 b(the)f Fr(N)10 b Fu(th)29 b(directory)g(\(coun)m(ting)h +(from)e(the)g(left)i(of)e(the)h(list)g(prin)m(ted)1110 +1448 y(b)m(y)34 b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the) +f(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i(the)1110 +1558 y(stac)m(k.)630 1714 y Ft(-)p Fj(N)384 b Fu(Brings)23 +b(the)g Fr(N)10 b Fu(th)23 b(directory)h(\(coun)m(ting)g(from)e(the)i +(righ)m(t)f(of)g(the)h(list)f(prin)m(ted)1110 1824 y(b)m(y)34 b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)f(top)g(of)h -(the)f(list)h(b)m(y)f(rotating)i(the)1110 939 y(stac)m(k.)630 -1095 y Ft(-)p Fj(N)384 b Fu(Brings)23 b(the)g Fr(N)10 -b Fu(th)23 b(directory)h(\(coun)m(ting)g(from)e(the)i(righ)m(t)f(of)g -(the)h(list)f(prin)m(ted)1110 1205 y(b)m(y)34 b Ft(dirs)p -Fu(,)g(starting)h(with)f(zero\))i(to)f(the)f(top)g(of)h(the)f(list)h(b) -m(y)f(rotating)i(the)1110 1314 y(stac)m(k.)630 1470 y -Fj(dir)336 b Fu(Mak)m(es)32 b Fr(dir)k Fu(b)s(e)30 b(the)g(top)h(of)f -(the)h(stac)m(k.)630 1626 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 1735 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 1845 -y Fu(fails,)h Ft(pushd)e Fu(returns)g(a)i(non-zero)g(v)-5 -b(alue.)630 1978 y(Otherwise,)34 b(if)g(no)f(argumen)m(ts)h(are)g -(supplied,)f Ft(pushd)f Fu(returns)g(0)i(unless)f(the)g(directory)630 -2087 y(stac)m(k)g(is)f(empt)m(y)-8 b(.)46 b(When)32 b(rotating)h(the)f -(directory)g(stac)m(k,)i Ft(pushd)d Fu(returns)f(0)j(unless)e(the)630 -2197 y(directory)g(stac)m(k)h(is)e(empt)m(y)h(or)f(a)h(non-existen)m(t) -h(directory)f(stac)m(k)g(elemen)m(t)h(is)f(sp)s(eci\014ed.)630 -2330 y(If)e(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 -2439 y(of)i(the)f(directory)h(stac)m(k.)150 2676 y Fs(6.9)68 -b(Con)l(trolling)47 b(the)e(Prompt)150 2836 y Fu(Bash)37 +(the)f(list)h(b)m(y)f(rotating)i(the)1110 1933 y(stac)m(k.)630 +2089 y Fj(dir)336 b Fu(Mak)m(es)32 b Fr(dir)k Fu(b)s(e)30 +b(the)g(top)h(of)f(the)h(stac)m(k.)630 2246 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 +2355 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 2465 y Fu(fails,)h Ft(pushd)e +Fu(returns)g(a)i(non-zero)g(v)-5 b(alue.)630 2598 y(Otherwise,)34 +b(if)g(no)f(argumen)m(ts)h(are)g(supplied,)f Ft(pushd)f +Fu(returns)g(0)i(unless)f(the)g(directory)630 2707 y(stac)m(k)g(is)f +(empt)m(y)-8 b(.)46 b(When)32 b(rotating)h(the)f(directory)g(stac)m(k,) +i Ft(pushd)d Fu(returns)f(0)j(unless)e(the)630 2817 y(directory)g(stac) +m(k)h(is)e(empt)m(y)h(or)f(a)h(non-existen)m(t)h(directory)f(stac)m(k)g +(elemen)m(t)h(is)f(sp)s(eci\014ed.)630 2950 y(If)e(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 +3059 y(of)i(the)f(directory)h(stac)m(k.)150 3297 y Fs(6.9)68 +b(Con)l(trolling)47 b(the)e(Prompt)150 3456 y Fu(Bash)37 b(examines)h(the)f(v)-5 b(alue)37 b(of)g(the)h(arra)m(y)f(v)-5 b(ariable)38 b Ft(PROMPT_COMMAND)33 b Fu(just)j(b)s(efore)h(prin)m -(ting)g(eac)m(h)150 2945 y(primary)c(prompt.)49 b(If)33 +(ting)g(eac)m(h)150 3566 y(primary)c(prompt.)49 b(If)33 b(an)m(y)h(elemen)m(ts)h(in)f Ft(PROMPT_COMMAND)29 b Fu(are)34 b(set)h(and)e(non-n)m(ull,)h(Bash)g(executes)150 -3055 y(eac)m(h)e(v)-5 b(alue,)31 b(in)f(n)m(umeric)g(order,)g(just)g +3675 y(eac)m(h)e(v)-5 b(alue,)31 b(in)f(n)m(umeric)g(order,)g(just)g (as)g(if)h(it)g(had)e(b)s(een)h(t)m(yp)s(ed)g(on)g(the)h(command)f -(line.)275 3188 y(In)d(addition,)j(the)f(follo)m(wing)h(table)f +(line.)275 3808 y(In)d(addition,)j(the)f(follo)m(wing)h(table)f (describ)s(es)f(the)h(sp)s(ecial)g(c)m(haracters)h(whic)m(h)f(can)f -(app)s(ear)g(in)h(the)150 3297 y(prompt)g(v)-5 b(ariables)32 +(app)s(ear)g(in)h(the)150 3918 y(prompt)g(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 3453 y Ft(\\a)384 b Fu(A)30 b(b)s(ell)h(c)m -(haracter.)150 3609 y Ft(\\d)384 b Fu(The)30 b(date,)h(in)f +Ft(PS4)p Fu(:)150 4074 y Ft(\\a)384 b Fu(A)30 b(b)s(ell)h(c)m +(haracter.)150 4230 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 3765 y Ft(\\D{)p Fj(format)p Ft(})630 -3874 y Fu(The)c Fr(format)i Fu(is)f(passed)e(to)i Ft(strftime)p +Ft(")p Fu(\).)150 4386 y Ft(\\D{)p Fj(format)p Ft(})630 +4496 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 3984 y(string;)42 b(an)d(empt)m(y)f Fr(format)j Fu(results)d(in)g +630 4606 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 4093 y(braces)31 b(are)f(required.)150 4249 +b(The)630 4715 y(braces)31 b(are)f(required.)150 4871 y Ft(\\e)384 b Fu(An)30 b(escap)s(e)h(c)m(haracter.)150 -4405 y Ft(\\h)384 b Fu(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e -(`.'.)150 4561 y Ft(\\H)384 b Fu(The)30 b(hostname.)150 -4717 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 4873 y Ft(\\l)384 +5028 y Ft(\\h)384 b Fu(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e +(`.'.)150 5184 y Ft(\\H)384 b Fu(The)30 b(hostname.)150 +5340 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.)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(\\l)384 b Fu(The)30 b(basename)h(of)f(the)h(shell's)f(terminal)h(device)g -(name.)150 5028 y Ft(\\n)384 b Fu(A)30 b(newline.)150 -5184 y Ft(\\r)384 b Fu(A)30 b(carriage)i(return.)150 -5340 y Ft(\\s)384 b Fu(The)22 b(name)g(of)h(the)f(shell,)i(the)f -(basename)f(of)h Ft($0)f Fu(\(the)g(p)s(ortion)g(follo)m(wing)i(the)f -(\014nal)e(slash\).)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 Ft(\\t)384 -b Fu(The)30 b(time,)h(in)f(24-hour)h(HH:MM:SS)g(format.)150 -459 y Ft(\\T)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(HH:MM:SS)g -(format.)150 619 y Ft(\\@)384 b Fu(The)30 b(time,)h(in)f(12-hour)h -(am/pm)f(format.)150 780 y Ft(\\A)384 b Fu(The)30 b(time,)h(in)f -(24-hour)h(HH:MM)g(format.)150 940 y Ft(\\u)384 b Fu(The)30 -b(username)g(of)g(the)h(curren)m(t)f(user.)150 1100 y -Ft(\\v)384 b Fu(The)30 b(v)m(ersion)h(of)f(Bash)h(\(e.g.,)h(2.00\))150 -1261 y Ft(\\V)384 b Fu(The)30 b(release)i(of)e(Bash,)h(v)m(ersion)g -Ft(+)f Fu(patc)m(hlev)m(el)i(\(e.g.,)h(2.00.0\))150 1421 -y Ft(\\w)384 b Fu(The)27 b(v)-5 b(alue)28 b(of)g(the)g +(name.)150 487 y Ft(\\n)384 b Fu(A)30 b(newline.)150 +676 y Ft(\\r)384 b Fu(A)30 b(carriage)i(return.)150 864 +y Ft(\\s)384 b Fu(The)22 b(name)g(of)h(the)f(shell,)i(the)f(basename)f +(of)h Ft($0)f Fu(\(the)g(p)s(ortion)g(follo)m(wing)i(the)f(\014nal)e +(slash\).)150 1052 y Ft(\\t)384 b Fu(The)30 b(time,)h(in)f(24-hour)h +(HH:MM:SS)g(format.)150 1241 y Ft(\\T)384 b Fu(The)30 +b(time,)h(in)f(12-hour)h(HH:MM:SS)g(format.)150 1429 +y Ft(\\@)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(am/pm)f(format.)150 +1617 y Ft(\\A)384 b Fu(The)30 b(time,)h(in)f(24-hour)h(HH:MM)g(format.) +150 1806 y Ft(\\u)384 b Fu(The)30 b(username)g(of)g(the)h(curren)m(t)f +(user.)150 1994 y Ft(\\v)384 b Fu(The)30 b(v)m(ersion)h(of)f(Bash)h +(\(e.g.,)h(2.00\))150 2183 y Ft(\\V)384 b Fu(The)30 b(release)i(of)e +(Bash,)h(v)m(ersion)g Ft(+)f Fu(patc)m(hlev)m(el)i(\(e.g.,)h(2.00.0\)) +150 2371 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 -1530 y(\(uses)i(the)h Ft($PROMPT_DIRTRIM)26 b Fu(v)-5 -b(ariable\).)150 1691 y Ft(\\W)384 b Fu(The)30 b(basename)h(of)f +2480 y(\(uses)i(the)h Ft($PROMPT_DIRTRIM)26 b Fu(v)-5 +b(ariable\).)150 2669 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 1851 y Ft(\\!)384 b Fu(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i -(this)f(command.)150 2011 y Ft(\\#)384 b Fu(The)30 b(command)g(n)m(um)m -(b)s(er)f(of)i(this)f(command.)150 2171 y Ft(\\$)384 +150 2857 y Ft(\\!)384 b Fu(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i +(this)f(command.)150 3046 y Ft(\\#)384 b Fu(The)30 b(command)g(n)m(um)m +(b)s(er)f(of)i(this)f(command.)150 3234 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 2332 y Ft(\\)p Fj(nnn)288 +Fu(,)g(otherwise)g Ft($)p Fu(.)150 3422 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 2492 y Ft(\\\\)384 -b Fu(A)30 b(bac)m(kslash.)150 2652 y Ft(\\[)384 b Fu(Begin)38 +s(ctal)i(v)-5 b(alue)31 b Fr(nnn)p Fu(.)150 3611 y Ft(\\\\)384 +b Fu(A)30 b(bac)m(kslash.)150 3799 y Ft(\\[)384 b Fu(Begin)38 b(a)f(sequence)g(of)g(non-prin)m(ting)g(c)m(haracters.)61 b(This)36 b(could)h(b)s(e)g(used)f(to)h(em)m(b)s(ed)g(a)630 -2762 y(terminal)31 b(con)m(trol)h(sequence)e(in)m(to)i(the)e(prompt.) -150 2922 y Ft(\\])384 b Fu(End)29 b(a)i(sequence)g(of)f(non-prin)m -(ting)g(c)m(haracters.)275 3083 y(The)25 b(command)h(n)m(um)m(b)s(er)f +3909 y(terminal)31 b(con)m(trol)h(sequence)e(in)m(to)i(the)e(prompt.) +150 4097 y Ft(\\])384 b Fu(End)29 b(a)i(sequence)g(of)f(non-prin)m +(ting)g(c)m(haracters.)275 4300 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 3192 +(t:)39 b(the)26 b(history)g(n)m(um)m(b)s(er)150 4409 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 -3302 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(152\),)j(while)d(the)f -(command)150 3412 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g +4519 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(155\),)j(while)d(the)f +(command)150 4629 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g (the)g(sequence)h(of)f(commands)g(executed)h(during)e(the)i(curren)m(t) -f(shell)150 3521 y(session.)275 3657 y(After)28 b(the)g(string)g(is)g +f(shell)150 4738 y(session.)275 4902 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 3766 y(tion,)g(arithmetic)f(expansion,)g(and)e +(command)f(substitu-)150 5011 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 3876 +b(alue)27 b(of)f(the)g Ft(promptvars)e Fu(shell)150 5121 y(option)i(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)j(page)e (71\).)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 3985 y(if)i(escap)s(ed)f(p)s(ortions)g(of)h(the)g +(e\013ects)150 5230 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 4095 y(sp)s(ecial)j(to)g(w)m(ord)f -(expansion.)150 4337 y Fs(6.10)68 b(The)45 b(Restricted)h(Shell)150 -4496 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 4606 y(in)m(v)m(o)s(cation,) -d(the)d(shell)g(b)s(ecomes)h(restricted.)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 -4716 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 4825 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 -4961 y Fq(\017)60 b Fu(Changing)30 b(directories)h(with)g(the)f -Ft(cd)g Fu(builtin.)225 5095 y Fq(\017)60 b Fu(Setting)33 +(tain)g(c)m(haracters)150 5340 y(sp)s(ecial)j(to)g(w)m(ord)f +(expansion.)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 Fs(6.10)68 +b(The)45 b(Restricted)h(Shell)150 458 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 +568 y(in)m(v)m(o)s(cation,)d(the)d(shell)g(b)s(ecomes)h(restricted.)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 677 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 787 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 919 y Fq(\017)60 b Fu(Changing)30 b(directories)h(with)g +(the)f Ft(cd)g Fu(builtin.)225 1050 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 -5205 y(ables.)225 5340 y Fq(\017)60 b Fu(Sp)s(ecifying)30 -b(command)g(names)g(con)m(taining)i(slashes.)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)225 299 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 -434 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 543 y(mand.)225 678 -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 788 y Fu(builtin)e(command.)225 -923 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 -1058 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 1193 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 1327 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 1462 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 1597 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 1732 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 -1867 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 2028 y(These)g(restrictions)h(are)g -(enforced)f(after)h(an)m(y)g(startup)f(\014les)g(are)h(read.)275 -2163 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 -2273 y(Scripts],)25 b(page)e(46\),)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 2408 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 2517 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 -2627 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 -2737 y(curren)m(t)28 b(directory)g(to)h(a)f(non-writable)g(directory)g +1160 y(ables.)225 1292 y Fq(\017)60 b Fu(Sp)s(ecifying)30 +b(command)g(names)g(con)m(taining)i(slashes.)225 1424 +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 1555 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 1665 y(mand.)225 +1797 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 1906 y Fu(builtin)e +(command.)225 2038 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 2170 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 2301 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 2433 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 2565 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 2696 +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 2828 +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 2960 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 3114 y(These)g(restrictions)h(are)g(enforced)f(after)h(an)m +(y)g(startup)f(\014les)g(are)h(read.)275 3245 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 3355 y(Scripts],)25 +b(page)e(46\),)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 +3487 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 3596 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 3706 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 +3815 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 2846 y(restricted)25 b(shell)g(to)h(execute)g(shell)f(scripts,)h +150 3925 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 2956 y(some)31 b(commands)f(to)h(mo)s +b(ariables)25 b(that)g(cause)150 4035 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 3091 y(Mo)s(dern)e(systems)g(pro)m +b Fu(or)j Ft(PAGER)p Fu(\).)275 4166 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 3201 y(as)h +(restricted)h(en)m(vironmen)m(t,)f(suc)m(h)150 4276 y(as)h Ft(jails)p Fu(,)e Ft(zones)p Fu(,)g(or)h Ft(containers)p -Fu(.)150 3443 y Fs(6.11)68 b(Bash)45 b(POSIX)f(Mo)t(de)150 -3602 y Fu(Starting)39 b(Bash)f(with)g(the)h Ft(--posix)d -Fu(command-line)j(option)g(or)f(executing)h(`)p Ft(set)30 -b(-o)g(posix)p Fu(')37 b(while)150 3712 y(Bash)26 b(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 3821 -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 3957 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 4092 y(The)f(follo)m(wing)j +Fu(.)150 4511 y Fs(6.11)68 b(Bash)45 b(and)g(POSIX)150 +4733 y Fk(6.11.1)63 b(What)40 b(is)i(POSIX?)150 4879 +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 4989 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 5099 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 5230 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 5340 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)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(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 408 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 +518 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 628 y(mak)m(e)34 b(up)e(IEEE)g(Std)g +(1003.1-2017,)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 737 y(the)e(curren)m(t)f +(uni\014ed)f Fm(posix)g Fu(standard.)275 869 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 979 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 1089 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 1198 y(9699919799/utilities/con)o(tent)o(s.ht)o(ml)p +Fu(.)275 1330 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 1440 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 1550 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 1659 y(argumen)m(t)31 +b(handling,)f(v)-5 b(ariable)31 b(expansion,)f(and)g(quoting.)275 +1791 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 1901 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 2010 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 2120 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 +2230 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 2339 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 2449 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 2643 y Fk(6.11.2)63 b(Bash)41 b(POSIX)g(Mo)s(de)150 +2790 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 2900 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 3009 +y(Bash)h(b)s(eha)m(vior)f(in)g(these)h(areas)g(so)g(that)g(it)f +(conforms)h(to)g(the)f(standard)g(more)g(closely)-8 b(.)275 +3142 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 3251 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 3361 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 3493 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 3625 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 4227 y(1.)61 b(Bash)31 +Fu(mo)s(de')h(is)f(in)g(e\013ect:)199 3757 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 4362 y(2.)61 b(When)28 b(a)i(command)e(in) +b(ariable)31 b(is)f(set.)199 3889 y(2.)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 4472 y(the)i(new)e(lo)s(cation.)43 +(h)h Ft($PATH)d Fu(to)i(\014nd)330 3999 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('.)199 4607 y(3.)61 b(Bash)36 +Ft(shopt)f(-s)h(checkhash)p Fu('.)199 4131 y(3.)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 4716 y(table,)c(ev)m(en)f(if) +(set)g(in)m(to)h(the)f(command)g(hash)330 4241 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.)199 4851 y(4.)61 b(The)42 b(message)h(prin)m +Ft($PATH)e Fu(searc)m(h.)199 4373 y(4.)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 4961 y(non-zero)31 -b(status)g(is)f(`Done\(status\)'.)199 5095 y(5.)61 b(The)40 +(when)f(a)h(job)g(exits)h(with)f(a)330 4483 y(non-zero)31 +b(status)g(is)f(`Done\(status\)'.)199 4615 y(5.)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 -5205 y(`Stopp)s(ed\()p Fr(signame)5 b Fu(\)',)31 b(where)f +4724 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(.)199 5340 y(6.)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.)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)199 299 y(7.)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 -408 y(undergo)30 b(alias)h(expansion.)199 536 y(8.)61 +Fu(.)199 4856 y(6.)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 +4989 y(7.)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 5098 y(undergo)30 b(alias)h(expansion.)199 5230 y(8.)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 646 +(parsing)d(a)h(command)g(substitution.)80 b(The)330 5340 y(default)44 b(mo)s(de)g(generally)h(defers)f(it,)k(when)43 -b(enabled,)48 b(un)m(til)c(the)g(command)g(substitution)g(is)330 -756 y(executed.)77 b(This)42 b(means)g(that)h(command)f(substitution)f -(will)i(not)g(expand)e(aliases)j(that)f(are)330 865 y(de\014ned)34 +b(enabled,)48 b(un)m(til)c(the)g(command)g(substitution)g(is)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)330 299 y(executed.)77 +b(This)42 b(means)g(that)h(command)f(substitution)f(will)i(not)g +(expand)e(aliases)j(that)f(are)330 408 y(de\014ned)34 b(after)h(the)g(command)f(substitution)h(is)g(initially)h(parsed)e -(\(e.g.,)k(as)d(part)f(of)h(a)g(function)330 975 y(de\014nition\).)199 -1103 y(9.)61 b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g -Ft(PS2)g Fu(expansions)g(of)i(`)p Ft(!)p Fu(')f(to)g(the)g(history)g(n) -m(um)m(b)s(er)f(and)g(`)p Ft(!!)p Fu(')h(to)g(`)p Ft(!)p -Fu(')h(are)330 1212 y(enabled,)26 b(and)f(parameter)g(expansion)g(is)g -(p)s(erformed)e(on)i(the)g(v)-5 b(alues)25 b(of)g Ft(PS1)f -Fu(and)h Ft(PS2)f Fu(regardless)330 1322 y(of)31 b(the)f(setting)i(of)e -(the)h Ft(promptvars)c Fu(option.)154 1450 y(10.)61 b(The)30 +(\(e.g.,)k(as)d(part)f(of)h(a)g(function)330 518 y(de\014nition\).)199 +658 y(9.)61 b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g Ft(PS2)g +Fu(expansions)g(of)i(`)p Ft(!)p Fu(')f(to)g(the)g(history)g(n)m(um)m(b) +s(er)f(and)g(`)p Ft(!!)p Fu(')h(to)g(`)p Ft(!)p Fu(')h(are)330 +768 y(enabled,)26 b(and)f(parameter)g(expansion)g(is)g(p)s(erformed)e +(on)i(the)g(v)-5 b(alues)25 b(of)g Ft(PS1)f Fu(and)h +Ft(PS2)f Fu(regardless)330 877 y(of)31 b(the)f(setting)i(of)e(the)h +Ft(promptvars)c Fu(option.)154 1017 y(10.)61 b(The)30 b Fm(posix)g Fu(startup)f(\014les)i(are)g(executed)g(\()p Ft($ENV)p Fu(\))f(rather)g(than)g(the)h(normal)f(Bash)g(\014les.)154 -1577 y(11.)61 b(Tilde)30 b(expansion)g(is)f(only)h(p)s(erformed)f(on)h +1157 y(11.)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 -1687 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)e(the)h -(line.)154 1815 y(12.)61 b(The)30 b(default)g(history)h(\014le)f(is)h +1267 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h(on)e(the)h +(line.)154 1407 y(12.)61 b(The)30 b(default)g(history)h(\014le)f(is)h Ft(~/.sh_history)26 b Fu(\(this)31 b(is)f(the)h(default)g(v)-5 -b(alue)30 b(of)h Ft($HISTFILE)p Fu(\).)154 1943 y(13.)61 +b(alue)30 b(of)h Ft($HISTFILE)p Fu(\).)154 1547 y(13.)61 b(Redirection)25 b(op)s(erators)f(do)g(not)g(p)s(erform)f(\014lename)h (expansion)g(on)g(the)g(w)m(ord)f(in)h(the)g(redirection)330 -2052 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m(e.)154 -2180 y(14.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s(erform)e +1657 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m(e.)154 +1797 y(14.)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(the)g(redirection.)154 -2308 y(15.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f(b)s(e)g(v)-5 +1937 y(15.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f(b)s(e)g(v)-5 b(alid)35 b(shell)f Ft(name)p Fu(s.)52 b(That)34 b(is,)i(they)f(ma)m(y) -g(not)g(con)m(tain)g(c)m(haracters)330 2418 y(other)e(than)g(letters,)h +g(not)g(con)m(tain)g(c)m(haracters)330 2046 y(other)e(than)g(letters,)h (digits,)h(and)d(underscores,)h(and)f(ma)m(y)h(not)g(start)h(with)e(a)h -(digit.)49 b(Declaring)330 2527 y(a)31 b(function)f(with)g(an)g(in)m(v) +(digit.)49 b(Declaring)330 2156 y(a)31 b(function)f(with)g(an)g(in)m(v) -5 b(alid)31 b(name)g(causes)f(a)h(fatal)h(syn)m(tax)f(error)f(in)g -(non-in)m(teractiv)m(e)j(shells.)154 2655 y(16.)61 b(F)-8 +(non-in)m(teractiv)m(e)j(shells.)154 2296 y(16.)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 -2783 y(17.)61 b Fm(posix)30 b Fu(sp)s(ecial)h(builtins)e(are)i(found)e -(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s(okup.)154 -2911 y(18.)61 b(When)48 b(prin)m(ting)g(shell)h(function)f +2436 y(17.)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 2545 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 2685 y(18.)61 b Fm(posix)30 b Fu(sp)s(ecial)h(builtins)e +(are)i(found)e(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s +(okup.)154 2826 y(19.)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 3020 y Ft(function)28 -b Fu(k)m(eyw)m(ord.)154 3148 y(19.)61 b(Literal)28 b(tildes)g(that)f +(es)f(not)h(prin)m(t)f(the)330 2935 y Ft(function)28 +b Fu(k)m(eyw)m(ord.)154 3075 y(20.)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 -3258 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(25.)154 3386 -y(20.)61 b(The)29 b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g(b)s +3185 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(25.)154 3325 +y(21.)61 b(The)29 b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g(b)s (e)g(used)f(b)m(y)h(itself)g(as)g(a)h(command.)40 b(When)30 -b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 3495 y(it)33 +b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 3434 y(it)33 b(displa)m(ys)g(timing)g(statistics)h(for)e(the)h(shell)g(and)f(its)g (completed)i(c)m(hildren.)47 b(The)32 b Ft(TIMEFORMAT)330 -3605 y Fu(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f -(timing)h(information.)154 3733 y(21.)61 b(When)33 b(parsing)g(and)f +3544 y Fu(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f +(timing)h(information.)154 3684 y(22.)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 -3842 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f +3794 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 -3952 y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s +3903 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 4061 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they) +(pattern)330 4013 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.)154 -4189 y(22.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h +4153 y(23.)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 4299 y(`)p Ft(-)p Fu('.)154 -4427 y(23.)61 b(The)30 b(`)p Ft(!)p Fu(')h(c)m(haracter)h(do)s(es)e +(en)h(b)s(egins)d(with)i(a)330 4262 y(`)p Ft(-)p Fu('.)154 +4402 y(24.)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 4536 y(ev)m(en)g(if)f(the)h -Ft(histexpand)d Fu(option)i(is)h(enabled.)154 4664 y(24.)61 +(double-quoted)g(string,)330 4512 y(ev)m(en)g(if)f(the)h +Ft(histexpand)d Fu(option)i(is)h(enabled.)154 4652 y(25.)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 4774 y(errors)30 b(are)h(those)f(listed)h(in)f +b(The)24 b(fatal)330 4762 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 4883 y(options,)43 b(redirection)d(errors,)i +(passing)e(incorrect)330 4871 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 4993 y(command)30 b(name,)h(and)f(so)g(on.)154 -5121 y(25.)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 5230 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 5340 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.)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)154 299 y(26.)61 -b(A)31 b(non-in)m(teractiv)m(e)j(shell)d(exits)h(with)e(an)h(error)g +(preceding)f(the)330 4981 y(command)30 b(name,)h(and)f(so)g(on.)154 +5121 y(26.)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 5230 y(unset)22 b(a)h Ft(readonly)d +Fu(or)i Ft(non-unsettable)c Fu(v)-5 b(ariable,)25 b(or)e(encoun)m(ters) +f(a)h(v)-5 b(ariable)23 b(name)f(argumen)m(t)330 5340 +y(that)31 b(is)f(an)h(in)m(v)-5 b(alid)31 b(iden)m(ti\014er,)f(whic)m +(h)g(causes)h(a)g(non-in)m(teractiv)m(e)i(shell)e(to)g(exit.)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)154 299 y(27.)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 408 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 518 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 628 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 737 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 871 y(27.)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 981 y Fu(statemen)m(t)32 -b(or)f(the)f(selection)i(v)-5 b(ariable)32 b(in)e(a)g -Ft(select)f Fu(statemen)m(t)j(is)f(a)f(readonly)h(v)-5 -b(ariable.)154 1115 y(28.)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 1249 y(29.)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 -1358 y(in)m(v)-5 b(alid)31 b(expression.)154 1492 y(30.)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 1626 y(31.)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 -1736 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.)154 1870 y(32.)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 -1979 y(parameters.)154 2113 y(33.)61 b(Expanding)21 b(the)h(`)p +(ccurs)330 408 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 518 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 658 y(28.)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 +768 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 +877 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 +987 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 1096 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 1236 +y(29.)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 1346 y Fu(statemen)m(t)32 b(or)f(the)f(selection) +i(v)-5 b(ariable)32 b(in)e(a)g Ft(select)f Fu(statemen)m(t)j(is)f(a)f +(readonly)h(v)-5 b(ariable.)154 1486 y(30.)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 +1626 y(31.)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 1736 y(in)m(v)-5 b(alid)31 b(expression.)154 +1876 y(32.)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 2016 +y(33.)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 2125 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.)154 +2265 y(34.)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 +2375 y(parameters.)154 2515 y(35.)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 2223 y(quoted)31 +(where)f(the)g(expansion)g(is)g(double-)330 2625 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 2357 y(34.)61 b(Assignmen)m(t)23 +(double-quoted.)154 2765 y(36.)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 2466 -y(after)31 b(the)f(builtin)g(completes.)154 2600 y(35.)61 +(ersist)g(in)f(the)i(shell)f(en)m(vironmen)m(t)330 2874 +y(after)31 b(the)f(builtin)g(completes.)154 3014 y(37.)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 2710 y(gumen)m(ts)40 b(from)e(expanding)h(them)g(as)h(assignmen)m +330 3124 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 2819 y(assignmen)m(t)k(builtins)e(lose)h(their)g +Fu(mo)s(de,)330 3233 y(assignmen)m(t)k(builtins)e(lose)h(their)g (assignmen)m(t)h(statemen)m(t)h(expansion)d(prop)s(erties)g(when)g -(pre-)330 2929 y(ceded)31 b(b)m(y)f Ft(command)p Fu(.)154 -3063 y(36.)61 b(The)27 b Ft(bg)g Fu(builtin)g(uses)g(the)h(required)f +(pre-)330 3343 y(ceded)31 b(b)m(y)f Ft(command)p Fu(.)154 +3483 y(38.)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 3173 y(whic)m(h)h(do)s(es)g(not)g(include)g(an)g +(kground,)330 3593 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 3306 y(37.)61 b(The)23 b(output)f(of)i(`)p +(previous)g(job.)154 3733 y(39.)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 -3416 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154 -3550 y(38.)61 b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h(accept) +3842 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154 +3982 y(40.)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 -3684 y(39.)61 b(The)38 b Ft(export)f Fu(and)g Ft(readonly)f +4122 y(41.)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 3794 y(quired)30 b(b)m(y)g Fm(posix)p -Fu(.)154 3927 y(40.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g +(format)g(re-)330 4232 y(quired)30 b(b)m(y)g Fm(posix)p +Fu(.)154 4372 y(42.)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 4061 y(41.)61 b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g +Fu(.)154 4512 y(43.)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 4171 y(and)30 b(rev)m(ert)i(the)e +(signal)i(sp)s(eci\014cation)330 4622 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 4281 y(consists)e(solely)g(of)g +(is,)g(unless)f(that)h(argumen)m(t)330 4731 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 -4390 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s +4841 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 4524 y(42.)61 b Ft(trap)29 b(-p)24 +f(argumen)m(t.)154 4981 y(44.)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 4524 28 4 v 40 -w(DFL)h(and)330 4634 y(those)31 b(that)g(w)m(ere)g(ignored)f(when)g +(ositions)g(are)g(set)h(to)f(SIG)p 3360 4981 28 4 v 40 +w(DFL)h(and)330 5090 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 -4768 y(43.)61 b(The)21 b Ft(.)h Fu(and)f Ft(source)f +5230 y(45.)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 4877 y(if)30 +(for)g(the)g(\014lename)f(argumen)m(t)330 5340 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 5011 y(44.)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 5121 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 -5230 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 5340 y Fu(option)31 b(in)f(suc)m(h)g(subshells.)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)154 299 y(45.)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 408 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 518 y(error)g(message.)154 -662 y(46.)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 771 y(leading)31 b(`)p Ft(alias)e Fu(')i(unless)f(the)g -Ft(-p)g Fu(option)h(is)f(supplied.)154 915 y(47.)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 -1025 y(names)30 b(and)g(de\014nitions.)154 1169 y(48.)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 1278 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 1388 y(c)m(haracters.)154 -1532 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 1641 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 -1751 y(directory)-8 b(,)32 b Ft(cd)d Fu(will)i(fail)g(instead)g(of)f +Fu(.)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)154 299 y(46.)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 408 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 518 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 628 y Fu(option)31 +b(in)f(suc)m(h)g(subshells.)154 765 y(47.)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 +874 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 +984 y(error)g(message.)154 1121 y(48.)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 1230 y(leading)31 +b(`)p Ft(alias)e Fu(')i(unless)f(the)g Ft(-p)g Fu(option)h(is)f +(supplied.)154 1367 y(49.)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 1477 y(names)30 +b(and)g(de\014nitions.)154 1614 y(50.)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 +1724 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 1833 y(c)m(haracters.)154 1970 y(51.)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 +2080 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 +2189 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 -1895 y(50.)61 b(When)37 b(the)h Ft(cd)f Fu(builtin)g(cannot)h(c)m +2326 y(52.)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 2004 y(constructed)27 b(from)g Ft($PWD)f +(pathname)330 2436 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 2114 y(MAX)d Fu(when)g(all)h(sym)m(b)s(olic)g +(exceeds)h Ft(PATH_)330 2545 y(MAX)d Fu(when)g(all)h(sym)m(b)s(olic)g (links)g(are)g(expanded,)g Ft(cd)f Fu(will)h(fail)h(instead)f(of)g -(attempting)h(to)f(use)g(only)330 2224 y(the)31 b(supplied)e(directory) -i(name.)154 2367 y(51.)61 b(The)36 b Ft(pwd)f Fu(builtin)h(v)m +(attempting)h(to)f(use)g(only)330 2655 y(the)31 b(supplied)e(directory) +i(name.)154 2792 y(53.)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 -2477 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 +2902 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 -2621 y(52.)61 b(When)35 b(listing)g(the)g(history)-8 +3039 y(54.)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 2730 y(not)d(a)f(history)h(en)m -(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154 2874 y(53.)61 +(indication)i(of)f(whether)f(or)330 3148 y(not)d(a)f(history)h(en)m +(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154 3285 y(55.)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 3018 y(54.)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 -3128 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g +Fu(is)g Ft(ed)p Fu(.)154 3422 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 +3532 y(returns)29 b(failure.)154 3669 y(57.)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 +3778 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 3237 y(found)i(in)h Ft($PATH)p Fu(.)154 -3381 y(55.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m +g(\014le)330 3888 y(found)i(in)h Ft($PATH)p Fu(.)154 +4025 y(58.)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 3491 y(instead)e(of)f(c)m(hec)m -(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 3634 -y(56.)61 b(When)41 b(the)g Ft(xpg_echo)e Fu(option)i(is)g(enabled,)j +Ft(v)p Fu(')f(command)g(is)g(run,)330 4134 y(instead)e(of)f(c)m(hec)m +(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 4271 +y(59.)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 -3744 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54 +4381 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54 b(Eac)m(h)35 b(argumen)m(t)g(is)f(displa)m(y)m(ed,)j(after)e(escap)s(e) -g(c)m(haracters)h(are)330 3854 y(con)m(v)m(erted.)154 -3998 y(57.)61 b(The)30 b Ft(ulimit)f Fu(builtin)g(uses)h(a)h(blo)s(c)m +g(c)m(haracters)h(are)330 4491 y(con)m(v)m(erted.)154 +4628 y(60.)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 4141 y(58.)61 b(The)39 +Fu(and)g Ft(-f)f Fu(options.)154 4765 y(61.)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 4251 y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f +Ft(wait)330 4874 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 4361 y(c)m(hild)31 b(that)g(exits.)154 -4504 y(59.)61 b(The)27 b Ft(read)f Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m +(for)f(eac)m(h)330 4984 y(c)m(hild)31 b(that)g(exits.)154 +5121 y(62.)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 4614 y(receiv)m(es)41 +(een)f(set.)40 b(If)27 b(Bash)330 5230 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 -4724 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)154 -4867 y(60.)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 4977 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 5087 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 5230 y(61.)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(is)g(used)g(to)h(obtain)g(it.)p +5340 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)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)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 -549 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 658 y(rather)g(than)g(defaulting)h +%%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)154 299 y(63.)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 408 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 518 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 650 y(64.)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 759 y(the)k Ft(wait)e Fu(builtin)h(is)g(used) +g(to)h(obtain)g(it.)154 891 y(65.)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 1000 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 1110 +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 +1219 y(and)i(the)g(bac)m(kslash)h(will)g(b)s(e)f(remo)m(v)m(ed.)154 +1351 y(66.)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 1461 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 +1570 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 1680 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.)275 1833 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 1943 y Fm(posix)d +Fu(mo)s(de.)40 b(Sp)s(eci\014cally:)199 2074 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 2184 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 796 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 905 y(to)j(b)s(e)f(fully)g(conforman)m(t.)275 -1073 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 1183 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 1292 y(page)31 b(161\).)150 -1542 y Fs(6.12)68 b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150 -1701 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 1811 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 1920 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 2030 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 -2139 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 2249 y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f -(solution.)275 2389 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 2499 y(setting)d Ft(compat32)c Fu(means)i(that)i(quoting) -e(the)h(rhs)f(of)g(the)h(regexp)g(matc)m(hing)h(op)s(erator)e(quotes)h -(sp)s(e-)150 2608 y(cial)39 b(regexp)e(c)m(haracters)i(in)e(the)g(w)m -(ord,)i(whic)m(h)e(is)g(default)h(b)s(eha)m(vior)f(in)g(bash-3.2)h(and) -f(subsequen)m(t)150 2718 y(v)m(ersions\).)275 2858 y(If)29 -b(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 2968 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 -3077 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 3187 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 3296 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 3406 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 -3515 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 3625 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 3765 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 -3875 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 3984 y Fu(option,)g(lik)m(e)h(42\))f -(determines)g(the)f(compatibilit)m(y)j(lev)m(el.)275 -4125 y(Starting)e(with)g(bash-4.4,)h(Bash)f(has)g(b)s(egun)f -(deprecating)h(older)h(compatibilit)m(y)h(lev)m(els.)44 -b(Ev)m(en)m(tu-)150 4234 y(ally)-8 b(,)32 b(the)e(options)h(will)g(b)s +Ft(ed)g Fu(if)g Ft(EDITOR)f Fu(is)h(unset.)199 2315 y(2.)61 +b(A)37 b(non-in)m(teractiv)m(e)i(shell)e(do)s(es)f(not)h(exit)h(if)e(a) +h(v)-5 b(ariable)38 b(assignmen)m(t)f(preceding)g(the)g +Ft(command)330 2425 y Fu(builtin)30 b(or)g(another)h(non-sp)s(ecial)g +(builtin)f(fails.)199 2557 y(3.)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 2666 +y(to)j(b)s(e)f(fully)g(conforman)m(t.)275 2820 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 +2929 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 3039 y(page)31 b(164\).)150 3274 y Fs(6.12)68 +b(Shell)46 b(Compatibilit)l(y)h(Mo)t(de)150 3433 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 +3543 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 +3652 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 3762 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 3871 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 3981 +y(in)m(tended)30 b(to)h(b)s(e)f(a)h(temp)s(orary)f(solution.)275 +4113 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 +4222 y(setting)d Ft(compat32)c Fu(means)i(that)i(quoting)e(the)h(rhs)f +(of)g(the)h(regexp)g(matc)m(hing)h(op)s(erator)e(quotes)h(sp)s(e-)150 +4332 y(cial)39 b(regexp)e(c)m(haracters)i(in)e(the)g(w)m(ord,)i(whic)m +(h)e(is)g(default)h(b)s(eha)m(vior)f(in)g(bash-3.2)h(and)f(subsequen)m +(t)150 4441 y(v)m(ersions\).)275 4573 y(If)29 b(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 +4682 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 4792 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 4902 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 +5011 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 +5121 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 5230 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 5340 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.)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)275 299 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 408 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 +518 y Fu(option,)g(lik)m(e)h(42\))f(determines)g(the)f(compatibilit)m +(y)j(lev)m(el.)275 666 y(Starting)e(with)g(bash-4.4,)h(Bash)f(has)g(b)s +(egun)f(deprecating)h(older)h(compatibilit)m(y)h(lev)m(els.)44 +b(Ev)m(en)m(tu-)150 775 y(ally)-8 b(,)32 b(the)e(options)h(will)g(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 4374 y(Bash-5.0)36 b(is)f(the)g(\014nal)f(v)m(ersion)i(for)e +Fu(.)275 923 y(Bash-5.0)36 b(is)f(the)g(\014nal)f(v)m(ersion)i(for)e (whic)m(h)h(there)g(will)g(b)s(e)f(an)h(individual)f(shopt)h(option)g -(for)g(the)150 4484 y(previous)30 b(v)m(ersion.)41 b(Users)30 +(for)g(the)150 1033 y(previous)30 b(v)m(ersion.)41 b(Users)30 b(should)g(use)g Ft(BASH_COMPAT)d Fu(on)j(bash-5.0)h(and)f(later)i(v)m -(ersions.)275 4624 y(The)24 b(follo)m(wing)i(table)g(describ)s(es)e +(ersions.)275 1181 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 4734 y(setting.)43 b(The)30 +(compatibilit)m(y)h(lev)m(el)150 1290 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 -4843 y Fu(using)37 b(one)h(of)g(the)g(follo)m(wing)h(mec)m(hanisms.)63 +1400 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 4953 y(lev)m(el)d(ma)m(y)f(b)s(e)e(set)i(using)e +(compatibilit)m(y)150 1509 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 -5062 y(v)m(ersions,)40 b(the)e Ft(BASH_COMPAT)d Fu(v)-5 +1619 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 5172 y(v)m(ersions.)150 5340 -y Ft(compat31)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)705 299 y Fq(\017)60 -b Fu(quoting)34 b(the)g(rhs)e(of)i(the)f Ft([[)g Fu(command's)h(regexp) -f(matc)m(hing)i(op)s(erator)f(\(=)p Ft(~)p Fu(\))f(has)810 -408 y(no)d(sp)s(ecial)h(e\013ect)150 568 y Ft(compat32)705 -702 y Fq(\017)60 b Fu(in)m(terrupting)28 b(a)g(command)g(list)h(suc)m -(h)f(as)g Ft(")p Fu(a)g(;)h(b)f(;)h(c)p Ft(")f Fu(causes)h(the)f -(execution)h(of)g(the)810 812 y(next)j(command)f(in)g(the)h(list)g -(\(in)f(bash-4.0)h(and)f(later)i(v)m(ersions,)f(the)g(shell)f(acts)i -(as)810 922 y(if)i(it)i(receiv)m(ed)f(the)g(in)m(terrupt,)h(so)f(in)m -(terrupting)f(one)h(command)f(in)g(a)h(list)g(ab)s(orts)810 -1031 y(the)31 b(execution)g(of)g(the)f(en)m(tire)i(list\))150 -1191 y Ft(compat40)705 1325 y Fq(\017)60 b Fu(the)35 -b(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p Fu(')g(op)s(erators)h(to)g(the)g -Ft([[)f Fu(command)h(do)f(not)h(consider)f(the)h(curren)m(t)810 -1435 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 1544 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 1654 y(use)30 b(the)h(curren)m(t)f(lo)s -(cale's)i(collation)h(sequence)d(and)g(strcoll\(3\).)150 -1813 y Ft(compat41)705 1948 y Fq(\017)60 b Fu(in)29 b(p)s(osix)f(mo)s -(de,)i Ft(time)e Fu(ma)m(y)h(b)s(e)g(follo)m(w)m(ed)i(b)m(y)e(options)g -(and)g(still)h(b)s(e)e(recognized)j(as)810 2057 y(a)g(reserv)m(ed)f(w)m -(ord)g(\(this)h(is)f Fm(posix)g Fu(in)m(terpretation)i(267\))705 -2192 y Fq(\017)60 b Fu(in)37 b(p)s(osix)f(mo)s(de,)i(the)g(parser)e -(requires)g(that)i(an)f(ev)m(en)g(n)m(um)m(b)s(er)f(of)h(single)g -(quotes)810 2301 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 -2411 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 -2521 y(considered)30 b(quoted)h(\(this)f(is)h Fm(posix)e -Fu(in)m(terpretation)j(221\))150 2680 y Ft(compat42)705 -2814 y Fq(\017)60 b Fu(the)29 b(replacemen)m(t)i(string)e(in)g +(bash-5.1)i(and)e(later)150 1729 y(v)m(ersions.)150 1908 +y Ft(compat31)705 2049 y Fq(\017)60 b Fu(quoting)34 b(the)g(rhs)e(of)i +(the)f Ft([[)g Fu(command's)h(regexp)f(matc)m(hing)i(op)s(erator)f(\(=) +p Ft(~)p Fu(\))f(has)810 2159 y(no)d(sp)s(ecial)h(e\013ect)150 +2331 y Ft(compat32)705 2472 y Fq(\017)60 b Fu(in)m(terrupting)28 +b(a)g(command)g(list)h(suc)m(h)f(as)g Ft(")p Fu(a)g(;)h(b)f(;)h(c)p +Ft(")f Fu(causes)h(the)f(execution)h(of)g(the)810 2582 +y(next)j(command)f(in)g(the)h(list)g(\(in)f(bash-4.0)h(and)f(later)i(v) +m(ersions,)f(the)g(shell)f(acts)i(as)810 2692 y(if)i(it)i(receiv)m(ed)f +(the)g(in)m(terrupt,)h(so)f(in)m(terrupting)f(one)h(command)f(in)g(a)h +(list)g(ab)s(orts)810 2801 y(the)31 b(execution)g(of)g(the)f(en)m(tire) +i(list\))150 2974 y Ft(compat40)705 3115 y Fq(\017)60 +b Fu(the)35 b(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p Fu(')g(op)s(erators)h +(to)g(the)g Ft([[)f Fu(command)h(do)f(not)h(consider)f(the)h(curren)m +(t)810 3225 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 +3334 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 3444 y(use)30 +b(the)h(curren)m(t)f(lo)s(cale's)i(collation)h(sequence)d(and)g +(strcoll\(3\).)150 3616 y Ft(compat41)705 3758 y Fq(\017)60 +b Fu(in)29 b(p)s(osix)f(mo)s(de,)i Ft(time)e Fu(ma)m(y)h(b)s(e)g(follo) +m(w)m(ed)i(b)m(y)e(options)g(and)g(still)h(b)s(e)e(recognized)j(as)810 +3867 y(a)g(reserv)m(ed)f(w)m(ord)g(\(this)h(is)f Fm(posix)g +Fu(in)m(terpretation)i(267\))705 4008 y Fq(\017)60 b +Fu(in)37 b(p)s(osix)f(mo)s(de,)i(the)g(parser)e(requires)g(that)i(an)f +(ev)m(en)g(n)m(um)m(b)s(er)f(of)h(single)g(quotes)810 +4118 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 4227 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 4337 y(considered)30 b(quoted)h(\(this)f(is)h +Fm(posix)e Fu(in)m(terpretation)j(221\))150 4510 y Ft(compat42)705 +4651 y Fq(\017)60 b Fu(the)29 b(replacemen)m(t)i(string)e(in)g (double-quoted)h(pattern)f(substitution)g(do)s(es)g(not)h(un-)810 -2924 y(dergo)h(quote)g(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 3059 y Fq(\017)60 +4760 y(dergo)h(quote)g(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 4902 y Fq(\017)60 b Fu(in)39 b(p)s(osix)g(mo)s(de,)j(single)e(quotes)g(are)g(considered)f -(sp)s(ecial)h(when)f(expanding)g(the)810 3168 y Fr(w)m(ord)d +(sp)s(ecial)h(when)f(expanding)g(the)810 5011 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 3278 y(used)40 b(to)i(quote)g(a)f(closing)h(brace)f(or)g +(b)s(e)810 5121 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 -3387 y Fm(posix)36 b Fu(in)m(terpretation)h(221\);)42 +5230 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 3497 y(within)30 b(double-quoted)g(w)m(ord)g(expansions)150 -3656 y Ft(compat43)705 3791 y Fq(\017)60 b Fu(the)31 -b(shell)g(do)s(es)g(not)g(prin)m(t)f(a)h(w)m(arning)g(message)h(if)f -(an)g(attempt)h(is)f(made)f(to)i(use)f(a)810 3900 y(quoted)36 -b(comp)s(ound)e(assignmen)m(t)i(as)g(an)g(argumen)m(t)g(to)g(declare)h -(\(e.g.,)i(declare)d(-a)810 4010 y(fo)s(o='\(1)31 b(2\)'\).)42 -b(Later)31 b(v)m(ersions)g(w)m(arn)f(that)h(this)f(usage)h(is)g -(deprecated)705 4144 y Fq(\017)60 b Fu(w)m(ord)21 b(expansion)g(errors) -g(are)h(considered)f(non-fatal)h(errors)f(that)h(cause)g(the)f(curren)m -(t)810 4254 y(command)k(to)g(fail,)i(ev)m(en)e(in)g(p)s(osix)f(mo)s(de) -h(\(the)g(default)g(b)s(eha)m(vior)g(is)g(to)g(mak)m(e)h(them)810 -4364 y(fatal)32 b(errors)d(that)i(cause)g(the)g(shell)f(to)i(exit\))705 -4498 y Fq(\017)60 b Fu(when)37 b(executing)i(a)g(shell)f(function,)i -(the)f(lo)s(op)f(state)h(\(while/un)m(til/etc.\))68 b(is)38 -b(not)810 4608 y(reset,)c(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 4717 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 -4827 y(this)150 4986 y Ft(compat44)705 5121 y Fq(\017)60 -b Fu(the)41 b(shell)g(sets)g(up)e(the)i(v)-5 b(alues)41 -b(used)f(b)m(y)h Ft(BASH_ARGV)d Fu(and)i Ft(BASH_ARGC)e -Fu(so)j(they)810 5230 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 -5340 y(mo)s(de)k(is)g(not)h(enabled)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)705 299 y Fq(\017)60 -b Fu(a)40 b(subshell)f(inherits)g(lo)s(ops)h(from)g(its)g(paren)m(t)g -(con)m(text,)k(so)c Ft(break)e Fu(or)i Ft(continue)810 -408 y Fu(will)35 b(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 -518 y(prev)m(en)m(t)c(the)g(exit)705 653 y Fq(\017)60 -b Fu(v)-5 b(ariable)28 b(assignmen)m(ts)h(preceding)f(builtins)f(lik)m -(e)i Ft(export)d Fu(and)h Ft(readonly)e Fu(that)j(set)810 -762 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 -872 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 1031 y Ft(compat50)f(\(set)h(using)g -(BASH_COMPAT\))705 1141 y Fq(\017)60 b Fu(Bash-5.1)29 +(ecial)810 5340 y(within)30 b(double-quoted)g(w)m(ord)g(expansions)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 Ft(compat43)705 +434 y Fq(\017)60 b Fu(the)31 b(shell)g(do)s(es)g(not)g(prin)m(t)f(a)h +(w)m(arning)g(message)h(if)f(an)g(attempt)h(is)f(made)f(to)i(use)f(a) +810 544 y(quoted)36 b(comp)s(ound)e(assignmen)m(t)i(as)g(an)g(argumen)m +(t)g(to)g(declare)h(\(e.g.,)i(declare)d(-a)810 653 y(fo)s(o='\(1)31 +b(2\)'\).)42 b(Later)31 b(v)m(ersions)g(w)m(arn)f(that)h(this)f(usage)h +(is)g(deprecated)705 789 y Fq(\017)60 b Fu(w)m(ord)21 +b(expansion)g(errors)g(are)h(considered)f(non-fatal)h(errors)f(that)h +(cause)g(the)f(curren)m(t)810 898 y(command)k(to)g(fail,)i(ev)m(en)e +(in)g(p)s(osix)f(mo)s(de)h(\(the)g(default)g(b)s(eha)m(vior)g(is)g(to)g +(mak)m(e)h(them)810 1008 y(fatal)32 b(errors)d(that)i(cause)g(the)g +(shell)f(to)i(exit\))705 1143 y Fq(\017)60 b Fu(when)37 +b(executing)i(a)g(shell)f(function,)i(the)f(lo)s(op)f(state)h +(\(while/un)m(til/etc.\))68 b(is)38 b(not)810 1253 y(reset,)c(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 1363 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 1472 y(this)150 1633 +y Ft(compat44)705 1769 y Fq(\017)60 b Fu(the)41 b(shell)g(sets)g(up)e +(the)i(v)-5 b(alues)41 b(used)f(b)m(y)h Ft(BASH_ARGV)d +Fu(and)i Ft(BASH_ARGC)e Fu(so)j(they)810 1878 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 1988 y(mo)s(de)k(is)g(not)h(enabled)705 +2123 y Fq(\017)60 b Fu(a)40 b(subshell)f(inherits)g(lo)s(ops)h(from)g +(its)g(paren)m(t)g(con)m(text,)k(so)c Ft(break)e Fu(or)i +Ft(continue)810 2233 y Fu(will)35 b(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 2342 y(prev)m(en)m(t)c(the)g(exit)705 2478 y +Fq(\017)60 b Fu(v)-5 b(ariable)28 b(assignmen)m(ts)h(preceding)f +(builtins)f(lik)m(e)i Ft(export)d Fu(and)h Ft(readonly)e +Fu(that)j(set)810 2587 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 2697 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 2858 y Ft(compat50)f(\(set)h +(using)g(BASH_COMPAT\))705 2968 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 1250 y(randomness.)39 +(in)m(tro)s(duce)g(sligh)m(tly)h(more)810 3077 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)810 1360 y(to)e(the)g(metho)s +(50)f(or)g(lo)m(w)m(er,)h(it)f(rev)m(erts)810 3187 y(to)e(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 1469 y(n)m(um)m(b)s(er)36 b(generator)j(b)m(y)e +(the)g(random)810 3296 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 1579 y(sequence)31 b(as)f(in)g(bash-5.0)705 -1714 y Fq(\017)60 b Fu(If)22 b(the)g(command)g(hash)f(table)i(is)f +(duce)e(the)i(same)810 3406 y(sequence)31 b(as)f(in)g(bash-5.0)705 +3541 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 1823 y(an)29 b(informational)i(message)g(to)f(that)g +(prin)m(ted)810 3651 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 -1933 y(can)40 b(b)s(e)g(reused)f(as)h(input.)69 b(Bash-5.1)42 +3761 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 -2042 y Fu(option)31 b(is)f(supplied.)150 2202 y Ft(compat51)e(\(set)h -(using)g(BASH_COMPAT\))705 2311 y Fq(\017)60 b Fu(The)38 +3870 y Fu(option)31 b(is)f(supplied.)150 4031 y Ft(compat51)e(\(set)h +(using)g(BASH_COMPAT\))705 4141 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 2421 y(Bash-5.2)32 b(will)f(unset)f(an)g(elemen)m +Ft(a[@])p Fu('.)810 4251 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 2531 y(all)h(the)g(elemen)m(ts)h(without) +(ys\))d(or)f(remo)m(v)m(e)810 4360 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 -2665 y Fq(\017)60 b Fu(arithmetic)36 b(commands)e(\()h(\(\(...\)\))55 +4495 y Fq(\017)60 b Fu(arithmetic)36 b(commands)e(\()h(\(\(...\)\))55 b(\))f(and)34 b(the)g(expressions)h(in)f(an)g(arithmetic)i(for)810 -2775 y(statemen)m(t)c(can)f(b)s(e)f(expanded)f(more)i(than)f(once)705 -2909 y Fq(\017)60 b Fu(expressions)22 b(used)g(as)h(argumen)m(ts)g(to)h +4605 y(statemen)m(t)c(can)f(b)s(e)f(expanded)f(more)i(than)f(once)705 +4740 y Fq(\017)60 b Fu(expressions)22 b(used)g(as)h(argumen)m(ts)g(to)h (arithmetic)f(op)s(erators)g(in)g(the)g Ft([[)f Fu(conditional)810 -3019 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once)705 -3153 y Fq(\017)60 b Fu(the)35 b(expressions)g(in)g(substring)e +4850 y(command)30 b(can)h(b)s(e)f(expanded)f(more)i(than)f(once)705 +4985 y Fq(\017)60 b Fu(the)35 b(expressions)g(in)g(substring)e (parameter)j(brace)f(expansion)g(can)g(b)s(e)g(expanded)810 -3263 y(more)c(than)f(once)705 3397 y Fq(\017)60 b Fu(the)39 +5095 y(more)c(than)f(once)705 5230 y Fq(\017)60 b Fu(the)39 b(expressions)f(in)g(the)h($\(\()h(...)66 b(\)\))f(w)m(ord)39 -b(expansion)f(can)h(b)s(e)f(expanded)g(more)810 3507 -y(than)30 b(once)705 3641 y Fq(\017)60 b Fu(arithmetic)36 -b(expressions)f(used)f(as)h(indexed)f(arra)m(y)i(subscripts)d(can)i(b)s -(e)g(expanded)810 3751 y(more)c(than)f(once)705 3885 -y Fq(\017)60 b Ft(test)29 b(-v)p Fu(,)35 b(when)f(giv)m(en)h(an)g +b(expansion)f(can)h(b)s(e)f(expanded)g(more)810 5340 +y(than)30 b(once)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)705 299 y Fq(\017)60 +b Fu(arithmetic)36 b(expressions)f(used)f(as)h(indexed)f(arra)m(y)i +(subscripts)d(can)i(b)s(e)g(expanded)810 408 y(more)c(than)f(once)705 +543 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 3995 y(ciativ)m(e)h(arra)m(y)-8 +Fu(is)f(an)h(existing)g(asso-)810 653 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 4105 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 4239 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 4349 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 4458 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 -4593 y Fq(\017)60 b Fu(P)m(arsing)37 b(command)f(substitutions)g(will)g -(b)s(eha)m(v)m(e)h(as)g(if)f(extended)g(glob)h(\(see)g(Sec-)810 -4702 y(tion)30 b(4.3.2)h([The)f(Shopt)f(Builtin],)h(page)h(71\))f(is)g -(enabled,)g(so)g(that)g(parsing)f(a)h(com-)810 4812 y(mand)38 -b(substitution)g(con)m(taining)i(an)f(extglob)h(pattern)f(\(sa)m(y)-8 -b(,)42 b(as)d(part)g(of)g(a)g(shell)810 4922 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 5031 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 5141 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 5250 y(command)30 b(is)h(executed.)p eop end -%%Page: 113 119 -TeXDict begin 113 118 bop 3614 -116 a Fu(113)150 299 +(set)g(elemen)m(ts.)53 b(Bash-5.2)810 762 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 897 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 +1006 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 +1116 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 1250 y Fq(\017)60 b Fu(P)m(arsing)37 b(command)f +(substitutions)g(will)g(b)s(eha)m(v)m(e)h(as)g(if)f(extended)g(glob)h +(\(see)g(Sec-)810 1360 y(tion)30 b(4.3.2)h([The)f(Shopt)f(Builtin],)h +(page)h(71\))f(is)g(enabled,)g(so)g(that)g(parsing)f(a)h(com-)810 +1469 y(mand)38 b(substitution)g(con)m(taining)i(an)f(extglob)h(pattern) +f(\(sa)m(y)-8 b(,)42 b(as)d(part)g(of)g(a)g(shell)810 +1579 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 1689 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 +1798 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 1908 y(command)30 +b(is)h(executed.)p eop end +%%Page: 116 122 +TeXDict begin 116 121 bop 3614 -116 a Fu(116)150 299 y Fp(7)80 b(Job)54 b(Con)l(trol)150 518 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) @@ -16482,9 +16688,9 @@ h Ft(jobs)e Fu(command\),)k(the)d(curren)m(t)h(job)f(is)g(alw)m(a)m(ys) i(\015agged)f(with)f(a)h(`)p Ft(+)p Fu(',)i(and)d(the)150 5340 y(previous)30 b(job)g(with)g(a)h(`)p Ft(-)p Fu('.)p eop end -%%Page: 114 120 -TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(7:)41 -b(Job)30 b(Con)m(trol)2526 b(114)275 299 y(A)38 b(job)g(ma)m(y)h(also)g +%%Page: 117 123 +TeXDict begin 117 122 bop 150 -116 a Fu(Chapter)30 b(7:)41 +b(Job)30 b(Con)m(trol)2526 b(117)275 299 y(A)38 b(job)g(ma)m(y)h(also)g (b)s(e)f(referred)f(to)j(using)d(a)i(pre\014x)e(of)i(the)f(name)h(used) e(to)i(start)g(it,)i(or)e(using)f(a)150 408 y(substring)g(that)j(app)s (ears)e(in)g(its)h(command)f(line.)69 b(F)-8 b(or)41 @@ -16562,9 +16768,9 @@ b(The)30 b(options)g(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630 5340 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.)p eop end -%%Page: 115 121 -TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(7:)41 -b(Job)30 b(Con)m(trol)2526 b(115)630 299 y Ft(-n)384 +%%Page: 118 124 +TeXDict begin 118 123 bop 150 -116 a Fu(Chapter)30 b(7:)41 +b(Job)30 b(Con)m(trol)2526 b(118)630 299 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 408 y(the)31 b(user)e(w)m(as)i(last)g(noti\014ed)f(of)h(their)f(status.)630 @@ -16653,9 +16859,9 @@ b(If)27 b Ft(wait)g Fu(is)g(in)m(terrupted)g(b)m(y)h(a)g(signal,)h(the) f(return)630 5340 y(status)j(will)f(b)s(e)g(greater)i(than)e(128,)i(as) e(describ)s(ed)g(ab)s(o)m(v)m(e)h(\(see)h(Section)f(3.7.6)h([Signals],) p eop end -%%Page: 116 122 -TeXDict begin 116 121 bop 150 -116 a Fu(Chapter)30 b(7:)41 -b(Job)30 b(Con)m(trol)2526 b(116)630 299 y(page)33 b(45\).)48 +%%Page: 119 125 +TeXDict begin 119 124 bop 150 -116 a Fu(Chapter)30 b(7:)41 +b(Job)30 b(Con)m(trol)2526 b(119)630 299 y(page)33 b(45\).)48 b(Otherwise,)32 b(the)h(return)e(status)i(is)f(the)g(exit)i(status)e (of)h(the)f(last)h(pro)s(cess)f(or)630 408 y(job)e(w)m(aited)h(for.)150 568 y Ft(disown)870 702 y(disown)46 b([-ar])g([-h])h([)p @@ -16710,14 +16916,14 @@ Fu(',)d(the)i(string)g(supplied)e(needs)i(to)g(matc)m(h)h(a)f 62 b(The)37 b(`)p Ft(substring)p Fu(')e(v)-5 b(alue)38 b(pro)m(vides)f(functionalit)m(y)i(analogous)g(to)630 4042 y(the)c(`)p Ft(\045?)p Fu(')g(job)g Fm(id)g Fu(\(see)h(Section)g -(7.1)g([Job)e(Con)m(trol)i(Basics],)i(page)e(113\).)56 +(7.1)g([Job)e(Con)m(trol)i(Basics],)i(page)e(116\).)56 b(If)34 b(set)i(to)g(an)m(y)630 4151 y(other)c(v)-5 b(alue,)32 b(the)g(supplied)e(string)i(m)m(ust)f(b)s(e)g(a)h(pre\014x)f(of)h(a)g (stopp)s(ed)e(job's)i(name;)g(this)630 4261 y(pro)m(vides)e (functionalit)m(y)i(analogous)g(to)f(the)g(`)p Ft(\045)p Fu(')f(job)g Fm(id)p Fu(.)p eop end -%%Page: 117 123 -TeXDict begin 117 122 bop 3614 -116 a Fu(117)150 299 +%%Page: 120 126 +TeXDict begin 120 125 bop 3614 -116 a Fu(120)150 299 y Fp(8)80 b(Command)54 b(Line)f(Editing)150 635 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 @@ -16730,7 +16936,7 @@ b(Com-)150 745 y(mand)c(line)i(editing)f(is)g(pro)m(vided)g(b)m(y)g (shell)f(in)m(v)m(o)s(cation.)45 b(Line)31 b(editing)150 1074 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 1183 y(Builtins],)j(page)f(55\).)52 +(Section)g(4.2)h([Bash)150 1183 y(Builtins],)j(page)f(56\).)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 1293 y(A)h(vi-st)m(yle)h(line)f(editing)g (in)m(terface)h(is)e(also)i(a)m(v)-5 b(ailable.)55 b(Line)34 @@ -16777,7 +16983,7 @@ 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 3902 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 4012 y([Readline)f(Init)g(File],)i -(page)e(120\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g +(page)e(123\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g Ft(LFD)f Fu(k)m(ey)-8 b(,)36 b(t)m(yping)e Ft(C-j)e Fu(will)i(pro)s (duce)150 4122 y(the)d(desired)e(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 @@ -16801,9 +17007,9 @@ 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 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 5340 y(within)c(the)g(line.)p eop end -%%Page: 118 124 -TeXDict begin 118 123 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(118)150 299 y Fk(8.2.1)63 +%%Page: 121 127 +TeXDict begin 121 126 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(121)150 299 y Fk(8.2.1)63 b(Readline)40 b(Bare)h(Essen)m(tials)150 446 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 @@ -16870,9 +17076,9 @@ b(It)24 b(is)h(a)g(lo)s(ose)150 5230 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 5340 y(w)m(ords.)p eop end -%%Page: 119 125 -TeXDict begin 119 124 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(119)150 299 y Fk(8.2.3)63 +%%Page: 122 128 +TeXDict begin 122 127 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(122)150 299 y Fk(8.2.3)63 b(Readline)40 b(Killing)i(Commands)150 446 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 @@ -16946,13 +17152,13 @@ b(on)e(the)h(input)e(line.)150 4974 y Fk(8.2.5)63 b(Searc)m(hing)40 b(for)i(Commands)g(in)f(the)g(History)150 5121 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 5230 y([Bash)i(History)h -(F)-8 b(acilities],)42 b(page)37 b(152\))i(for)d(lines)h(con)m(taining) +(F)-8 b(acilities],)42 b(page)37 b(155\))i(for)d(lines)h(con)m(taining) i(a)e(sp)s(eci\014ed)f(string.)60 b(There)36 b(are)i(t)m(w)m(o)150 5340 y(searc)m(h)31 b(mo)s(des:)40 b Fr(incremen)m(tal)35 b Fu(and)30 b Fr(non-incremen)m(tal)p Fu(.)p eop end -%%Page: 120 126 -TeXDict begin 120 125 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(120)275 299 y(Incremen)m(tal)26 +%%Page: 123 129 +TeXDict begin 123 128 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(123)275 299 y(Incremen)m(tal)26 b(searc)m(hes)h(b)s(egin)e(b)s(efore)g(the)h(user)f(has)h(\014nished)e (t)m(yping)i(the)g(searc)m(h)g(string.)39 b(As)26 b(eac)m(h)150 408 y(c)m(haracter)37 b(of)e(the)h(searc)m(h)g(string)f(is)h(t)m(yp)s @@ -17018,7 +17224,7 @@ b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h(b)s(e)150 Fu(.)47 b(The)33 b Ft(bind)g Fu(builtin)g(command)h(can)g(also)h(b)s(e) e(used)150 3713 y(to)e(set)g(Readline)g(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 -(55.)275 3843 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)g +(56.)275 3843 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)g (library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h(read,)g(and)f(the) 150 3953 y(k)m(ey)i(bindings)e(are)i(set.)275 4083 y(In)26 b(addition,)i(the)f Ft(C-x)i(C-r)d Fu(command)h(re-reads)g(this)f(init) @@ -17031,7 +17237,7 @@ b(lines)h(are)150 4641 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 4750 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g -([Conditional)g(Init)e(Constructs],)j(page)e(129\).)64 +([Conditional)g(Init)e(Constructs],)j(page)e(132\).)64 b(Other)150 4860 y(lines)31 b(denote)g(v)-5 b(ariable)31 b(settings)g(and)f(k)m(ey)h(bindings.)150 5011 y(V)-8 b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e @@ -17040,9 +17246,9 @@ b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e b(in)f(Readline)i(using)e(the)g Ft(set)g Fu(command)g(within)g(the)h (init)g(\014le.)50 b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p eop end -%%Page: 121 127 -TeXDict begin 121 126 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(121)870 299 y Ft(set)47 +%%Page: 124 130 +TeXDict begin 124 129 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(124)870 299 y Ft(set)47 b Fj(variable)e(value)630 432 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 542 y(use)k Ft(vi)g Fu(line)h(editing)g(commands:)870 @@ -17059,7 +17265,7 @@ b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v) 1403 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 1512 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page) -g(55.)630 1645 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g +g(56.)630 1645 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 1802 y Ft(active-region-start-colo)o(r)1110 1911 y Fu(A)27 b(string)f(v)-5 b(ariable)27 b(that)g(con)m(trols)h(the) @@ -17113,9 +17319,9 @@ Ft(on)p Fu(')f(\(the)g(default\),)i(Readline)f(attempts)g(to)g(bind)d (ecially)g(b)m(y)f(the)g(k)m(ernel's)h(terminal)f(driv)m(er)g(to)h (their)1110 5340 y(Readline)h(equiv)-5 b(alen)m(ts.)p eop end -%%Page: 122 128 -TeXDict begin 122 127 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(122)630 299 y Ft +%%Page: 125 131 +TeXDict begin 125 130 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(125)630 299 y Ft (blink-matching-paren)1110 408 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 518 y(op)s(ening)k(paren)m(thesis)h(when)f @@ -17181,9 +17387,9 @@ s(e)g(displa)m(y)m(ed.)77 b(If)1110 5230 y(the)29 b(n)m(um)m(b)s(er)f (to)h(this)1110 5340 y(v)-5 b(alue,)45 b(Readline)e(will)f(ask)g (whether)f(or)h(not)g(the)g(user)f(wishes)g(to)i(view)p eop end -%%Page: 123 129 -TeXDict begin 123 128 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(123)1110 299 y(them;)33 +%%Page: 126 132 +TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(126)1110 299 y(them;)33 b(otherwise,)f(they)g(are)g(simply)g(listed.)45 b(This)31 b(v)-5 b(ariable)33 b(m)m(ust)e(b)s(e)g(set)1110 408 y(to)43 b(an)e(in)m(teger)j(v)-5 b(alue)42 b(greater)h(than)f(or)g @@ -17242,7 +17448,7 @@ b(The)1110 3988 y(default)31 b(is)f(`)p Ft(@)p Fu('.)630 b Fr(p)s(oin)m(t)j Fu(is)e(the)g(curren)m(t)f(cursor)g(p)s(osition,)52 b(and)46 b Fr(mark)52 b Fu(refers)46 b(to)i(a)1110 4354 y(sa)m(v)m(ed)37 b(cursor)f(p)s(osition)g(\(see)i(Section)f(8.4.1)h -([Commands)d(F)-8 b(or)37 b(Mo)m(ving],)1110 4463 y(page)d(133\).)50 +([Commands)d(F)-8 b(or)37 b(Mo)m(ving],)1110 4463 y(page)d(136\).)50 b(The)33 b(text)h(b)s(et)m(w)m(een)f(the)g(p)s(oin)m(t)g(and)g(mark)g (is)g(referred)f(to)i(as)1110 4573 y(the)h Fr(region)p Fu(.)53 b(When)34 b(this)g(v)-5 b(ariable)36 b(is)e(set)h(to)g(`)p @@ -17259,9 +17465,9 @@ b(defaults)g(to)h(the)f(string)1110 5011 y(that)23 b(enables)f(the)g 5230 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 5340 y(is)e(`)p Ft(On)p Fu('.)p eop end -%%Page: 124 130 -TeXDict begin 124 129 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(124)630 299 y Ft +%%Page: 127 133 +TeXDict begin 127 132 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(127)630 299 y Ft (enable-bracketed-paste)1110 408 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 518 y(paste)27 b(in)m(to)g(the)f(editing)h(bu\013er)e @@ -17329,9 +17535,9 @@ b(The)44 b(default)g(v)-5 b(alue)44 b(is)g(`)p Ft(off)p Fu(',)j(but)1110 5340 y(Readline)24 b(will)h(set)f(it)g(to)h(`)p Ft(on)p Fu(')e(if)h(the)g(lo)s(cale)i(con)m(tains)f(eigh)m(t-bit)g(c)m (haracters.)p eop end -%%Page: 125 131 -TeXDict begin 125 130 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(125)1110 299 y(The)29 +%%Page: 128 134 +TeXDict begin 128 133 bop 150 -116 a Fu(Chapter)30 b(8:)41 +b(Command)29 b(Line)i(Editing)2062 b(128)1110 299 y(The)29 b(name)g Ft(meta-flag)e Fu(is)i(a)h(synon)m(ym)f(for)g(this)g(v)-5 b(ariable.)42 b(This)28 b(v)-5 b(ariable)1110 408 y(is)35 b(dep)s(enden)m(t)f(on)h(the)g Ft(LC_CTYPE)e Fu(lo)s(cale)k(category)-8 @@ -17341,7 +17547,7 @@ b(lo)s(cale)h(is)e(c)m(hanged.)630 675 y Ft(isearch-terminators)1110 (terminate)j(an)f(incremen)m(tal)1110 894 y(searc)m(h)25 b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g (command)1110 1003 y(\(see)38 b(Section)g(8.2.5)h([Searc)m(hing],)h -(page)e(119\).)62 b(If)37 b(this)g(v)-5 b(ariable)38 +(page)e(122\).)62 b(If)37 b(this)g(v)-5 b(ariable)38 b(has)f(not)1110 1113 y(b)s(een)e(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m(haracters)h Ft(ESC)d Fu(and)h Fj(C-J)g Fu(will)h(terminate)g(an)1110 1223 y(incremen)m(tal)c(searc)m @@ -17405,342 +17611,347 @@ y(names)44 b(b)s(egin)g(with)g(a)g(`)p Ft(.)p Fu(')g(\(hidden)f y(completion.)75 b(If)41 b(set)g(to)h(`)p Ft(off)p Fu(',)i(the)e (leading)g(`)p Ft(.)p Fu(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)p eop end -%%Page: 126 132 -TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(126)1110 299 y(the)34 +%%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)1110 299 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Ft(on)p Fu(')g(b)m(y)1110 -408 y(default.)630 587 y Ft(menu-complete-display-pr)o(efix)1110 -696 y Fu(If)f(set)h(to)g(`)p Ft(on)p Fu(',)h(men)m(u)e(completion)i +408 y(default.)630 555 y Ft(menu-complete-display-pr)o(efix)1110 +664 y Fu(If)f(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 -806 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 915 y(through)30 +774 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 883 y(through)30 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Ft(off)p -Fu('.)630 1093 y Ft(output-meta)1110 1203 y Fu(If)35 +Fu('.)630 1029 y Ft(output-meta)1110 1139 y Fu(If)35 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(displa)m(y)f(c)m -(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1313 y(set)h(directly)g +(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1249 y(set)h(directly)g (rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59 -b(The)1110 1422 y(default)26 b(is)f(`)p Ft(off)p Fu(',)i(but)e +b(The)1110 1358 y(default)26 b(is)f(`)p Ft(off)p Fu(',)i(but)e (Readline)h(will)g(set)g(it)g(to)h(`)p Ft(on)p Fu(')e(if)h(the)f(lo)s -(cale)j(con)m(tains)1110 1532 y(eigh)m(t-bit)38 b(c)m(haracters.)61 +(cale)j(con)m(tains)1110 1468 y(eigh)m(t-bit)38 b(c)m(haracters.)61 b(This)36 b(v)-5 b(ariable)37 b(is)g(dep)s(enden)m(t)e(on)h(the)h -Ft(LC_CTYPE)1110 1641 y Fu(lo)s(cale)32 b(category)-8 +Ft(LC_CTYPE)1110 1577 y Fu(lo)s(cale)32 b(category)-8 b(,)33 b(and)d(ma)m(y)h(c)m(hange)g(if)g(the)f(lo)s(cale)i(is)f(c)m -(hanged.)630 1819 y Ft(page-completions)1110 1929 y Fu(If)i(set)i(to)f +(hanged.)630 1724 y Ft(page-completions)1110 1833 y Fu(If)i(set)i(to)f (`)p Ft(on)p Fu(',)h(Readline)g(uses)e(an)h(in)m(ternal)h Ft(more)p Fu(-lik)m(e)f(pager)g(to)h(displa)m(y)1110 -2039 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.) +1943 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.) 47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Ft(on)p Fu(')1110 -2148 y(b)m(y)e(default.)630 2326 y Ft(print-completions-horizo)o(ntal)o -(ly)1110 2436 y Fu(If)23 b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g +2052 y(b)m(y)e(default.)630 2198 y Ft(print-completions-horizo)o(ntal)o +(ly)1110 2308 y Fu(If)23 b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g (will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110 -2545 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 2655 y(The)30 b(default)g(is)h(`)p -Ft(off)p Fu('.)630 2833 y Ft(revert-all-at-newline)1110 -2943 y Fu(If)e(set)h(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f +2418 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 2527 y(The)30 b(default)g(is)h(`)p +Ft(off)p Fu('.)630 2673 y Ft(revert-all-at-newline)1110 +2783 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 -3052 y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41 -b(By)29 b(default,)g(history)g(lines)1110 3162 y(ma)m(y)42 +2892 y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41 +b(By)29 b(default,)g(history)g(lines)1110 3002 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 3271 y Ft(readline\(\))p Fu(.)38 -b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 3450 -y Ft(show-all-if-ambiguous)1110 3559 y Fu(This)e(alters)i(the)f +(across)g(calls)h(to)1110 3112 y Ft(readline\(\))p Fu(.)38 +b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630 3258 +y Ft(search-ignore-case)1110 3367 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 3477 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 3587 y(is)30 b(`)p Ft(off)p Fu('.)630 3733 +y Ft(show-all-if-ambiguous)1110 3842 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 3669 y(to)f(`)p Ft(on)p Fu(',)g(w)m(ords)f(whic)m(h) +b(If)29 b(set)1110 3952 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 3778 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 3888 y(The)30 +1110 4061 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 4171 y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Ft(off)p Fu('.)630 -4066 y Ft(show-all-if-unmodified)1110 4176 y Fu(This)38 +4317 y Ft(show-all-if-unmodified)1110 4427 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 4285 y(fashion)25 b(similar)h(to)g +(functions)e(in)h(a)1110 4536 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 4395 y(ha)m(v)m(e)32 +Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)1110 4646 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 4504 y(tial)43 b(completion)h(\(the)f(p)s(ossible) -f(completions)h(don't)f(share)g(a)h(common)1110 4614 +(ossible)f(par-)1110 4756 y(tial)43 b(completion)h(\(the)f(p)s(ossible) +f(completions)h(don't)f(share)g(a)h(common)1110 4865 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 4724 y(ing)g(the)f(b)s(ell.)41 +(immediately)i(instead)e(of)h(ring-)1110 4975 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 4902 y Ft(show-mode-in-prompt)1110 5011 y Fu(If)24 +Fu('.)630 5121 y Ft(show-mode-in-prompt)1110 5230 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 5121 +(eginning)g(of)g(the)h(prompt)e(indicating)1110 5340 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 5230 y(strings)45 +h(insertion.)49 b(The)32 b(mo)s(de)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)1110 299 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 5340 y(v)-5 b(alue)31 -b(is)f(`)p Ft(off)p Fu('.)p eop end -%%Page: 127 133 -TeXDict begin 127 132 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(127)630 299 y Ft -(skip-completed-text)1110 408 y Fu(If)32 b(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 518 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 628 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 737 y(not)41 +b Fu(\).)87 b(The)45 b(default)1110 408 y(v)-5 b(alue)31 +b(is)f(`)p Ft(off)p Fu('.)630 558 y Ft(skip-completed-text)1110 +667 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 +777 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 +887 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 996 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 847 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 -956 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45 +(c)m(haracters)1110 1106 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 +1215 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 -1066 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g -(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 1176 y(`)p Ft(Makefile)p +1325 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g +(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 1435 y(`)p Ft(Makefile)p Fu(')c(will)i(result)f(in)g(`)p Ft(Makefile)p Fu(')f(rather)h(than)h(`) -p Ft(Makefilefile)p Fu(',)1110 1285 y(assuming)d(there)g(is)h(a)f +p Ft(Makefilefile)p Fu(',)1110 1544 y(assuming)d(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 1395 y(is)30 b(`)p Ft(off)p Fu('.)630 1548 -y Ft(vi-cmd-mode-string)1110 1658 y Fu(If)j(the)h Fr(sho)m(w-mo)s +b(alue)1110 1654 y(is)30 b(`)p Ft(off)p Fu('.)630 1803 +y Ft(vi-cmd-mode-string)1110 1913 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 1767 y(pla)m(y)m(ed)24 b(immediately)g(b)s(efore)f(the) +(is)h(dis-)1110 2022 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 -1877 y(vi)32 b(editing)h(mo)s(de)f(is)g(activ)m(e)j(and)c(in)h(command) +2132 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 -1987 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f +2242 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f (standard)f(set)h(of)g(meta-)h(and)e(con)m(trol)1110 -2096 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is) +2351 y(pre\014xes)34 b(and)g(bac)m(kslash)i(escap)s(e)g(sequences)f(is) g(a)m(v)-5 b(ailable.)57 b(Use)35 b(the)g(`)p Ft(\\1)p -Fu(')1110 2206 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s +Fu(')1110 2461 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s (egin)g(and)f(end)g(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 -2315 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a) -h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 2425 +2570 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a) +h(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 2680 y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p -Ft(\(cmd\))p Fu('.)630 2578 y Ft(vi-ins-mode-string)1110 -2688 y Fu(If)j(the)h Fr(sho)m(w-mo)s(de-in-prompt)h Fu(v)-5 +Ft(\(cmd\))p Fu('.)630 2829 y Ft(vi-ins-mode-string)1110 +2939 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 -2798 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 2907 y(vi)35 +3049 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 3158 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 3017 y(panded)26 +54 b(The)35 b(v)-5 b(alue)35 b(is)g(ex-)1110 3268 y(panded)26 b(lik)m(e)i(a)f(k)m(ey)h(binding,)e(so)i(the)f(standard)f(set)h(of)g -(meta-)h(and)e(con)m(trol)1110 3126 y(pre\014xes)34 b(and)g(bac)m +(meta-)h(and)e(con)m(trol)1110 3377 y(pre\014xes)34 b(and)g(bac)m (kslash)i(escap)s(e)g(sequences)f(is)g(a)m(v)-5 b(ailable.)57 -b(Use)35 b(the)g(`)p Ft(\\1)p Fu(')1110 3236 y(and)23 +b(Use)35 b(the)g(`)p Ft(\\1)p Fu(')1110 3487 y(and)23 b(`)p Ft(\\2)p Fu(')h(escap)s(es)h(to)f(b)s(egin)g(and)f(end)g -(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 3345 +(sequences)i(of)f(non-prin)m(ting)f(c)m(harac-)1110 3597 y(ters,)31 b(whic)m(h)g(can)g(b)s(e)f(used)g(to)h(em)m(b)s(ed)f(a)h -(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 3455 +(terminal)h(con)m(trol)g(sequence)f(in)m(to)1110 3706 y(the)g(mo)s(de)f(string.)40 b(The)30 b(default)h(is)f(`)p -Ft(\(ins\))p Fu('.)630 3608 y Ft(visible-stats)1110 3718 +Ft(\(ins\))p Fu('.)630 3856 y Ft(visible-stats)1110 3965 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 -3828 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 3981 -y(Key)f(Bindings)630 4091 y(The)41 b(syn)m(tax)i(for)f(con)m(trolling)h +4075 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 4224 +y(Key)f(Bindings)630 4334 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 4200 y(need)27 b(to)i(\014nd)d(the)i(name)f(of) +b(First)43 b(y)m(ou)630 4443 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 4310 y(sections)37 b(con)m(tain)g(tables)g +b(The)27 b(follo)m(wing)630 4553 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 4419 y(and)30 b(a)h(short)f(description)g(of)h(what)f -(the)g(command)h(do)s(es.)630 4551 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g +m(y)-8 b(,)630 4663 y(and)30 b(a)h(short)f(description)g(of)h(what)f +(the)g(command)h(do)s(es.)630 4792 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 4661 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m +(the)g(init)630 4902 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 4770 y(the)f(name)h(of)f(the)g(command.)46 b(There)32 +630 5011 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 4880 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m +(and)630 5121 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 4989 y(the)35 b(k)m(ey)g(can)g(b)s(e)f +b(The)40 b(name)h(of)630 5230 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 5099 y(comfortable.)630 -5230 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 -5340 y(that)d(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g(\(a) -h Fr(macro)5 b Fu(\).)p eop end -%%Page: 128 134 -TeXDict begin 128 133 bop 150 -116 a Fu(Chapter)30 b(8:)41 -b(Command)29 b(Line)i(Editing)2062 b(128)630 299 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 408 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 518 -y(Builtins],)i(page)g(55.)630 673 y Fr(k)m(eyname)5 b -Fu(:)42 b Fr(function-name)35 b Fu(or)c Fr(macro)1110 -783 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 -915 y Ft(Control-u:)45 b(universal-argument)1350 1024 -y(Meta-Rubout:)f(backward-kill-word)1350 1134 y(Control-o:)h(">)i -(output")1110 1266 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 -1376 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 1485 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 1595 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 1705 y(output)p Fu(')29 b(in)m(to)i(the)g(line\).)1110 -1837 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g -(names)f(are)g(recognized)h(while)1110 1946 y(pro)s(cessing)40 -b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fr(DEL)p -Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f Fr(LFD)p -Fu(,)1110 2056 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p Fu(,)f -Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h 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 -2211 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 2321 y(k)m(eyseq)k Fu(di\013ers)d(from)f -Fr(k)m(eyname)37 b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f -(denoting)g(an)g(en-)1110 2430 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s -(e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in) -1110 2540 y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h -Fu(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as) -1110 2649 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s -(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 2759 y(recognized.)1350 -2891 y Ft("\\C-u":)46 b(universal-argument)1350 3001 -y("\\C-x\\C-r":)f(re-read-init-file)1350 3110 y("\\e[11~":)g("Function) -h(Key)g(1")1110 3243 y Fu(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74 +(what)h(y)m(ou)g(\014nd)e(most)630 5340 y(comfortable.)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)630 299 y(In)33 +b(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 408 y(that)d(is)f +(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g(\(a)h +Fr(macro)5 b Fu(\).)630 538 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 647 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 757 y(Builtins],)i(page)g(56.)630 +906 y Fr(k)m(eyname)5 b Fu(:)42 b Fr(function-name)35 +b Fu(or)c Fr(macro)1110 1015 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 1144 y Ft(Control-u:)45 +b(universal-argument)1350 1254 y(Meta-Rubout:)f(backward-kill-word)1350 +1363 y(Control-o:)h(">)i(output")1110 1493 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 1602 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 +1712 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 1821 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 1931 y(output)p Fu(')29 b(in)m(to)i(the)g +(line\).)1110 2060 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m +(haracter)g(names)f(are)g(recognized)h(while)1110 2170 +y(pro)s(cessing)40 b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 +b Fr(DEL)p Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f +Fr(LFD)p Fu(,)1110 2279 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p +Fu(,)f Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h 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 2428 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 2538 +y(k)m(eyseq)k Fu(di\013ers)d(from)f Fr(k)m(eyname)37 +b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f(denoting)g(an)g(en-)1110 +2647 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s(e)f(sp)s(eci\014ed,)h(b)m +(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)1110 2757 +y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h Fu(Emacs)f(st)m(yle)i(k)m +(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)1110 2866 +y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s(ecial)h(c)m +(haracter)g(names)f(are)g(not)1110 2976 y(recognized.)1350 +3105 y Ft("\\C-u":)46 b(universal-argument)1350 3215 +y("\\C-x\\C-r":)f(re-read-init-file)1350 3324 y("\\e[11~":)g("Function) +h(Key)g(1")1110 3453 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 -3352 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 3462 +3563 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 3673 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 -3571 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 3726 y(The)g(follo)m(wing)i +3782 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 3931 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 3836 y(k)m(ey)i(sequences:)630 -3991 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630 -4146 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 4301 y +b(ailable)32 b(when)d(sp)s(ecifying)630 4041 y(k)m(ey)i(sequences:)630 +4189 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630 +4338 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 4487 y Fj(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)630 -4456 y Fj(\\\\)384 b Fu(bac)m(kslash)630 4611 y Fj(\\)p +4635 y Fj(\\\\)384 b Fu(bac)m(kslash)630 4784 y Fj(\\)p Ft(")g(")p Fu(,)30 b(a)h(double)f(quotation)i(mark)630 -4766 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s -(ostrophe)630 4921 y(In)d(addition)h(to)g(the)g Fm(gnu)f +4933 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s +(ostrophe)630 5082 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 5030 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630 -5185 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: 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)630 299 y Ft(\\d)384 -b Fu(delete)630 460 y Ft(\\f)g Fu(form)30 b(feed)630 -620 y Ft(\\n)384 b Fu(newline)630 781 y Ft(\\r)g Fu(carriage)32 -b(return)630 941 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)630 -1102 y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)630 1263 -y Ft(\\)p Fj(nnn)288 b Fu(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose) -e(v)-5 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 -b Fr(nnn)e Fu(\(one)i(to)1110 1372 y(three)c(digits\))630 -1533 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g +(bac)m(kslash)630 5191 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630 +5340 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))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)630 299 y Ft(\\b)384 +b Fu(bac)m(kspace)630 456 y Ft(\\d)g Fu(delete)630 613 +y Ft(\\f)g Fu(form)30 b(feed)630 770 y Ft(\\n)384 b Fu(newline)630 +928 y Ft(\\r)g Fu(carriage)32 b(return)630 1085 y Ft(\\t)384 +b Fu(horizon)m(tal)32 b(tab)630 1242 y Ft(\\v)384 b Fu(v)m(ertical)32 +b(tab)630 1399 y Ft(\\)p Fj(nnn)288 b Fu(the)35 b(eigh)m(t-bit)h(c)m +(haracter)g(whose)e(v)-5 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 +b(alue)35 b Fr(nnn)e Fu(\(one)i(to)1110 1509 y(three)c(digits\))630 +1666 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g (whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 -b(alue)39 b Fr(HH)1110 1643 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e -(digits\))630 1803 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g +b(alue)39 b Fr(HH)1110 1775 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e +(digits\))630 1933 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 1913 y(indicate)23 b(a)e(macro)h(de\014nition.)38 +630 2042 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f -(name.)38 b(In)630 2022 y(the)22 b(macro)f(b)s(o)s(dy)-8 +(name.)38 b(In)630 2152 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m -(e)j(are)e(expanded.)37 b(Bac)m(kslash)630 2132 y(will)j(quote)h(an)m +(e)j(are)e(expanded.)37 b(Bac)m(kslash)630 2261 y(will)j(quote)h(an)m (y)f(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39 b(`)p Ft(")p Fu(')h(and)g(`)p Ft(')p Fu('.)69 b(F)-8 -b(or)630 2242 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i +b(or)630 2371 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i (mak)m(e)h(`)p Fj(C-x)j Ft(\\)p Fu(')c(insert)f(a)h(single)h(`)p -Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 2377 y Ft("\\C-x\\\\":)45 -b("\\\\")150 2577 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs) -150 2724 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f +Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 2504 y Ft("\\C-x\\\\":)45 +b("\\\\")150 2701 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs) +150 2848 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 -2834 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g +2958 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 2943 y(result)f(of)h(tests.)41 +(erformed)f(as)i(the)150 3067 y(result)f(of)h(tests.)41 b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150 -3105 y Ft($if)336 b Fu(The)31 b Ft($if)f Fu(construct)i(allo)m(ws)h +3225 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 3214 y(terminal)37 b(b)s(eing)f(used,)h(or)f(the)h +(the)630 3334 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 3324 y(after)30 b(an)m(y)g(comparison)g(op)s(erator,)g(extends)f +630 3444 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 -3433 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i -(it.)630 3594 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e +3553 y(noted,)i(no)f(c)m(haracters)i(are)f(required)e(to)i(isolate)i +(it.)630 3711 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 3704 y(line)44 b(is)f(in)g Ft(emacs)f +(whether)e(Read-)1110 3820 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 3813 y(with)c(the)h(`)p Ft(set)29 b(keymap)p +(conjunction)1110 3930 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 -3923 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 4032 y(starting)f(out)g -(in)f Ft(emacs)f Fu(mo)s(de.)630 4193 y Ft(term)288 b +4039 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 4149 y(starting)f(out)g +(in)f Ft(emacs)f Fu(mo)s(de.)630 4306 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 4303 y(ings,)38 +(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 4416 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 4412 y(function)24 b(k)m(eys.)39 +(the)g(terminal's)1110 4525 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 4522 y(b)s(oth)k(the)h(full)g +Ft(=)p Fu(')g(is)g(tested)h(against)1110 4635 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 4631 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p +(terminal)1110 4744 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p Ft(-)p Fu('.)50 b(This)33 b(allo)m(ws)i Ft(sun)e Fu(to)h(matc)m(h)g(b)s -(oth)f Ft(sun)g Fu(and)1110 4741 y Ft(sun-cmd)p Fu(,)c(for)h(instance.) -630 4902 y Ft(version)144 b Fu(The)44 b Ft(version)f +(oth)f Ft(sun)g Fu(and)1110 4854 y Ft(sun-cmd)p Fu(,)c(for)h(instance.) +630 5011 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 5011 y(sp)s(eci\014c)c(Readline)i(v)m(ersions.)74 +(against)1110 5121 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 -5121 y(Readline)25 b(v)m(ersion.)39 b(The)23 b(set)h(of)g(comparison)h +5230 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 -5230 y(`)p Ft(==)p Fu('\),)33 b(`)p Ft(!=)p Fu(',)f(`)p +5340 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 5340 y(the)j(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g -(consists)h(of)f(a)g(ma)5 b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)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)1110 299 y(an)45 +(on)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)1110 299 y(the)34 +b(righ)m(t)h(side)f(of)g(the)g(op)s(erator)g(consists)h(of)f(a)g(ma)5 +b(jor)35 b(v)m(ersion)f(n)m(um)m(b)s(er,)1110 408 y(an)45 b(optional)i(decimal)f(p)s(oin)m(t,)k(and)44 b(an)i(optional)g(minor)f -(v)m(ersion)h(\(e.g.,)1110 408 y(`)p Ft(7.1)p Fu('\).)40 +(v)m(ersion)h(\(e.g.,)1110 518 y(`)p Ft(7.1)p Fu('\).)40 b(If)27 b(the)h(minor)f(v)m(ersion)h(is)g(omitted,)h(it)f(is)g(assumed) -f(to)h(b)s(e)f(`)p Ft(0)p Fu('.)40 b(The)1110 518 y(op)s(erator)34 +f(to)h(b)s(e)f(`)p Ft(0)p Fu('.)40 b(The)1110 628 y(op)s(erator)34 b(ma)m(y)g(b)s(e)f(separated)g(from)g(the)h(string)f -Ft(version)f Fu(and)h(from)g(the)1110 628 y(v)m(ersion)39 +Ft(version)f Fu(and)h(from)g(the)1110 737 y(v)m(ersion)39 b(n)m(um)m(b)s(er)f(argumen)m(t)h(b)m(y)f(whitespace.)67 -b(The)38 b(follo)m(wing)i(example)1110 737 y(sets)31 +b(The)38 b(follo)m(wing)i(example)1110 847 y(sets)31 b(a)g(v)-5 b(ariable)31 b(if)f(the)h(Readline)g(v)m(ersion)f(b)s(eing)g -(used)g(is)g(7.0)i(or)e(new)m(er:)1350 872 y Ft($if)47 -b(version)f(>=)h(7.0)1350 981 y(set)g(show-mode-in-prompt)42 -b(on)1350 1091 y($endif)630 1250 y(application)1110 1360 +(used)g(is)g(7.0)i(or)e(new)m(er:)1350 981 y Ft($if)47 +b(version)f(>=)h(7.0)1350 1091 y(set)g(show-mode-in-prompt)42 +b(on)1350 1200 y($endif)630 1360 y(application)1110 1469 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 1469 y(tings.)39 +f(application-sp)s(eci\014c)h(set-)1110 1579 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 1579 y(name)p Fu(,)g(and)e(y)m(ou)g(can)h(test)g +g Fr(application)1110 1689 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 1689 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e +(used)f(to)1110 1798 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 1798 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 1908 y(the)e(curren)m(t)f -(or)g(previous)g(w)m(ord)g(in)g(Bash:)1350 2042 y Ft($if)47 -b(Bash)1350 2152 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word) -1350 2262 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 2371 y($endif)630 -2531 y(variable)96 b Fu(The)33 b Fr(v)-5 b(ariable)39 +b(or)1110 1908 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 2017 y(the)e(curren)m(t)f +(or)g(previous)g(w)m(ord)g(in)g(Bash:)1350 2152 y Ft($if)47 +b(Bash)1350 2262 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word) +1350 2371 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 2481 y($endif)630 +2640 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 2640 y(v)-5 b(ariables)32 b(and)f(v)-5 +(Readline)1110 2750 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 2750 y(`)p Ft(==)p Fu(',)49 b(and)44 +(`)p Ft(=)p Fu(',)1110 2859 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 2859 y(comparison)25 +(b)s(e)g(separated)g(from)g(the)1110 2969 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 2969 y(from)33 b(the)h(v)-5 b(alue)35 +(e)f(separated)1110 3078 y(from)33 b(the)h(v)-5 b(alue)35 b(on)f(the)g(righ)m(t)g(hand)f(side)h(b)m(y)f(whitespace.)52 -b(Both)35 b(string)1110 3078 y(and)i(b)s(o)s(olean)g(v)-5 +b(Both)35 b(string)1110 3188 y(and)i(b)s(o)s(olean)g(v)-5 b(ariables)38 b(ma)m(y)h(b)s(e)d(tested.)63 b(Bo)s(olean)39 -b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 3188 y(tested)46 +b(v)-5 b(ariables)38 b(m)m(ust)g(b)s(e)1110 3298 y(tested)46 b(against)g(the)f(v)-5 b(alues)46 b Fr(on)f Fu(and)f Fr(o\013)p Fu(.)85 b(The)45 b(follo)m(wing)h(example)g(is)1110 -3298 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Ft(mode=emacs)e -Fu(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 3432 y -Ft($if)47 b(editing-mode)d(==)k(emacs)1350 3542 y(set)f -(show-mode-in-prompt)42 b(on)1350 3651 y($endif)150 3811 +3407 y(equiv)-5 b(alen)m(t)32 b(to)f(the)f Ft(mode=emacs)e +Fu(test)j(describ)s(ed)f(ab)s(o)m(v)m(e:)1350 3542 y +Ft($if)47 b(editing-mode)d(==)k(emacs)1350 3651 y(set)f +(show-mode-in-prompt)42 b(on)1350 3761 y($endif)150 3920 y($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 -3970 y Ft($else)240 b Fu(Commands)29 b(in)h(this)h(branc)m(h)e(of)i +4080 y Ft($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 4130 y Ft($include)96 b Fu(This)43 b(directiv)m(e)i(tak)m +(fails.)150 4239 y Ft($include)96 b Fu(This)43 b(directiv)m(e)i(tak)m (es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g -(commands)630 4239 y(and)38 b(bindings)f(from)h(that)i(\014le.)65 +(commands)630 4349 y(and)38 b(bindings)f(from)h(that)i(\014le.)65 b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e -(from)630 4349 y Ft(/etc/inputrc)p Fu(:)870 4483 y Ft($include)46 -b(/etc/inputrc)150 4682 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)150 -4829 y Fu(Here)27 b(is)f(an)h(example)g(of)f(an)h Fr(inputrc)k +(from)630 4458 y Ft(/etc/inputrc)p Fu(:)870 4593 y Ft($include)46 +b(/etc/inputrc)150 4792 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)150 +4939 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 4939 y(conditional)j(syn)m +b(ariable)27 b(assignmen)m(t,)i(and)150 5049 y(conditional)j(syn)m (tax.)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)390 408 y Ft(#)47 +%%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)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) @@ -17769,9 +17980,9 @@ y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(keypad)f(mode)390 4902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode) 390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390 5340 y(#"\\M-\\C-[C":)g(forward-char)p eop end -%%Page: 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)390 299 y Ft(#"\\M-\\C-[A":) +%%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)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) @@ -17804,9 +18015,9 @@ y($endif)390 3477 y(#)i(use)g(a)h(visible)e(bell)g(if)h(one)g(is)h 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: 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)390 299 y Ft(#)47 +%%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)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 1089 y Fs(8.4)68 b(Bindable)45 b(Readline)i(Commands) @@ -17816,7 +18027,7 @@ b(Y)-8 b(ou)33 b(can)150 1358 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 1468 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(55.\))41 b(Command)28 b(names)h(without) +([Bash)g(Builtins],)g(page)g(56.\))41 b(Command)28 b(names)h(without) 150 1577 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 1713 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 @@ -17856,9 +18067,9 @@ b(screen)f(line.)39 b(This)24 b(will)i(not)f(ha)m(v)m(e)h(the)f (ysical)h(line)g(or)f(if)g(p)s(oin)m(t)h(is)f(not)h(greater)g(than)630 5340 y(the)j(length)f(of)h(the)f(prompt)g(plus)f(the)i(screen)f(width.) 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)150 299 y Ft(next-screen-line) +%%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)150 299 y Ft(next-screen-line) 26 b(\(\))630 408 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 518 y(screen)e(line.)39 b(This)23 b(will)g(not)h(ha)m(v)m @@ -17916,9 +18127,9 @@ b(\(M-p\))630 5121 y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g (tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630 5340 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.)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)150 299 y Ft +%%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)150 299 y Ft (non-incremental-forward-)o(sear)o(ch-h)o(ist)o(ory)24 b(\(M-n\))630 408 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 @@ -17992,9 +18203,9 @@ b(the)g(curren)m(t)e(line)i(for)f(return)f(to)h(the)h(calling)g 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)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(for)31 +%%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)630 299 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 408 y(instead)g(of)f(the)h(curren)m(t)f(line.)150 565 @@ -18058,9 +18269,9 @@ g(of)h(the)630 5230 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 5340 y(ha)m(v)m(e)32 b(no)e(e\013ect.)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)150 299 y Ft(transpose-words) +%%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)150 299 y Ft(transpose-words) 26 b(\(M-t\))630 408 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 518 y(w)m(ord)c(as)h(w)m(ell.)41 @@ -18121,9 +18332,9 @@ Fu(.)150 5230 y Ft(backward-kill-word)25 b(\(M-DEL\))630 5340 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(.)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)150 299 y Ft(shell-kill-word) +%%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)150 299 y Ft(shell-kill-word) 26 b(\(M-C-d\))630 408 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 518 y(of)h(the)f(next)h(w)m(ord.)40 @@ -18180,9 +18391,9 @@ Fj(M-1)p Ft(,)h(...)f Fj(M--)p Ft(\))630 5230 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 5340 y Fj(M--)j Fu(starts)i(a)g(negativ)m(e)i (argumen)m(t.)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)150 299 y Ft +%%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)150 299 y Ft (universal-argument)25 b(\(\))630 408 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 @@ -18257,9 +18468,9 @@ 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 5230 y Ft(complete-filename)c(\(M-/\))630 5340 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.)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)150 299 y Ft +%%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)150 299 y Ft (possible-filename-comple)o(tion)o(s)24 b(\(C-x)30 b(/\))630 408 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 @@ -18311,9 +18522,9 @@ g(macro.)150 5121 y Ft(end-kbd-macro)d(\(C-x)i(\)\))630 5230 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 5340 y(de\014nition.)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)150 299 y Ft +%%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)150 299 y Ft (call-last-kbd-macro)25 b(\(C-x)k(e\))630 408 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 518 y(macro)c(app)s(ear)f(as)g(if)h @@ -18370,9 +18581,9 @@ g(that)630 4968 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(argumen)m(t)f (as)g(those)h(de\014ned)630 5340 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g (and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m (trol)g(Sequence)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(Indicator)37 +%%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)630 299 y(Indicator)37 b(\(CSI\),)f(usually)h(ESC-[.)59 b(If)36 b(this)g(sequence)h(is)g(b)s (ound)d(to)k Ft("\\)p Fu(e[)p Ft(")p Fu(,)g(k)m(eys)f(pro-)630 408 y(ducing)29 b(suc)m(h)g(sequences)g(will)h(ha)m(v)m(e)h(no)e @@ -18445,162 +18656,164 @@ b(If)39 b(a)h(n)m(umeric)630 4847 y(argumen)m(t)31 b(is)f(supplied,)g 50 b(If)33 b(a)h(n)m(umeric)g(argumen)m(t)g(is)f(supplied,)h(a)g(`)p Ft(*)p Fu(')630 5340 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g (expansion.)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)150 299 y Ft +%%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 (display-shell-version)25 b(\(C-x)k(C-v\))630 408 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 566 y Ft(shell-expand-line)c(\(M-C-e\))630 -676 y Fu(Expand)34 b(the)h(line)h(as)g(the)f(shell)h(do)s(es.)55 -b(This)34 b(p)s(erforms)g(alias)i(and)f(history)g(expansion)630 -785 y(as)f(w)m(ell)g(as)g(all)h(of)e(the)h(shell)g(w)m(ord)f -(expansions)g(\(see)i(Section)f(3.5)h([Shell)e(Expansions],)630 -895 y(page)e(24\).)150 1053 y Ft(history-expand-line)25 -b(\(M-^\))630 1162 y Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the) -h(curren)m(t)f(line.)150 1320 y Ft(magic-space)d(\(\))630 -1429 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 -1539 y([History)31 b(In)m(teraction],)i(page)e(154\).)150 -1697 y Ft(alias-expand-line)26 b(\(\))630 1806 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(100\).)150 1964 y Ft(history-and-alias-expand)o -(-lin)o(e)f(\(\))630 2073 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 2231 y -Ft(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630 2341 -y Fu(A)g(synon)m(ym)g(for)g Ft(yank-last-arg)p Fu(.)150 -2498 y Ft(edit-and-execute-command)24 b(\(C-x)29 b(C-e\))630 -2608 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 -2718 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 2827 y(editor,)31 b(in)f(that)h(order.)150 -3066 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 3226 +676 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 +785 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 895 y(ter)g(and)f(v)-5 +b(ariable)44 b(expansion,)h(arithmetic)f(expansion,)i(w)m(ord)c +(splitting,)47 b(and)42 b(quote)630 1004 y(remo)m(v)-5 +b(al.)150 1162 y Ft(history-expand-line)25 b(\(M-^\))630 +1272 y Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the)h(curren)m(t)f +(line.)150 1429 y Ft(magic-space)d(\(\))630 1539 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 1649 y([History)31 +b(In)m(teraction],)i(page)e(157\).)150 1806 y Ft(alias-expand-line)26 +b(\(\))630 1916 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 +(101\).)150 2073 y Ft(history-and-alias-expand)o(-lin)o(e)f(\(\))630 +2183 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 2341 y Ft(insert-last-argument)25 +b(\(M-.)k(or)h(M-_\))630 2450 y Fu(A)g(synon)m(ym)g(for)g +Ft(yank-last-arg)p Fu(.)150 2608 y Ft(edit-and-execute-command)24 +b(\(C-x)29 b(C-e\))630 2718 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 2827 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 2937 y(editor,)31 b(in)f(that)h(order.)150 +3176 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 3335 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 3335 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f +(con)m(tain)150 3445 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 3445 y(the)e Fm(posix)e -Fu(standard.)275 3578 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv) +m(es)i(as)f(sp)s(eci\014ed)f(in)150 3554 y(the)e Fm(posix)e +Fu(standard.)275 3688 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv) m(ely)j(b)s(et)m(w)m(een)d Ft(emacs)f Fu(and)g Ft(vi)g Fu(editing)h(mo)s(des,)h(use)f(the)g(`)p Ft(set)30 b(-o)150 -3688 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p +3798 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p Fu(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j -(page)e(67\).)83 b(The)150 3798 y(Readline)31 b(default)g(is)f -Ft(emacs)f Fu(mo)s(de.)275 3931 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f +(page)e(67\).)83 b(The)150 3907 y(Readline)31 b(default)g(is)f +Ft(emacs)f Fu(mo)s(de.)275 4041 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 4041 y(had)f(t)m(yp)s +(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 4150 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 4150 y(text)35 b(of)f(the)g(line)g(with)f +(ou)i(can)g(edit)g(the)150 4260 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 4260 y(`)p +f(to)f(previous)g(history)f(lines)h(with)150 4370 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 4499 y Fs(8.6)68 -b(Programmable)47 b(Completion)150 4658 y Fu(When)25 +Ft(j)p Fu(',)g(and)g(so)h(forth.)150 4609 y Fs(8.6)68 +b(Programmable)47 b(Completion)150 4768 y Fu(When)25 b(w)m(ord)g(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)g -(a)g(command)f(for)h(whic)m(h)f(a)h(completion)150 4768 +(a)g(command)f(for)h(whic)m(h)f(a)h(completion)150 4878 y(sp)s(eci\014cation)40 b(\(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)d -Fu(builtin)j(\(see)g(Section)h(8.7)150 4878 y([Programmable)h -(Completion)f(Builtins],)k(page)d(146\),)j(the)c(programmable)g -(completion)i(facilities)150 4987 y(are)31 b(in)m(v)m(ok)m(ed.)275 -5121 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37 +Fu(builtin)j(\(see)g(Section)h(8.7)150 4987 y([Programmable)h +(Completion)f(Builtins],)k(page)d(149\),)j(the)c(programmable)g +(completion)i(facilities)150 5097 y(are)31 b(in)m(v)m(ok)m(ed.)275 +5230 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37 b(If)21 b(a)g(compsp)s(ec)g(has)g(b)s(een)f(de\014ned)g(for)h(that)h -(command,)150 5230 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i +(command,)150 5340 y(the)44 b(compsp)s(ec)g(is)g(used)f(to)h(generate)i (the)e(list)g(of)g(p)s(ossible)g(completions)h(for)e(the)h(w)m(ord.)81 -b(If)44 b(the)150 5340 y(command)36 b(w)m(ord)g(is)g(the)g(empt)m(y)h -(string)f(\(completion)i(attempted)f(at)g(the)g(b)s(eginning)e(of)h(an) -h(empt)m(y)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)150 299 y(line\),)30 -b(an)m(y)g(compsp)s(ec)f(de\014ned)f(with)h(the)h Ft(-E)e -Fu(option)i(to)g Ft(complete)d Fu(is)i(used.)40 b(If)29 -b(the)g(command)g(w)m(ord)150 408 y(is)e(a)h(full)e(pathname,)i(a)g -(compsp)s(ec)e(for)h(the)g(full)g(pathname)g(is)g(searc)m(hed)h(for)f -(\014rst.)39 b(If)26 b(no)h(compsp)s(ec)g(is)150 518 -y(found)22 b(for)g(the)h(full)g(pathname,)h(an)f(attempt)h(is)f(made)g -(to)g(\014nd)f(a)h(compsp)s(ec)f(for)h(the)g(p)s(ortion)f(follo)m(wing) -150 628 y(the)34 b(\014nal)g(slash.)53 b(If)34 b(those)g(searc)m(hes)i -(do)e(not)g(result)h(in)f(a)g(compsp)s(ec,)h(an)m(y)g(compsp)s(ec)f -(de\014ned)f(with)150 737 y(the)k Ft(-D)g Fu(option)g(to)h -Ft(complete)d Fu(is)i(used)g(as)g(the)g(default.)61 b(If)37 -b(there)g(is)h(no)f(default)g(compsp)s(ec,)i(Bash)150 -847 y(attempts)e(alias)h(expansion)e(on)g(the)h(command)f(w)m(ord)g(as) -h(a)f(\014nal)g(resort,)j(and)c(attempts)j(to)f(\014nd)e(a)150 -956 y(compsp)s(ec)30 b(for)g(the)h(command)f(w)m(ord)g(from)g(an)m(y)h -(successful)f(expansion)275 1113 y(Once)k(a)g(compsp)s(ec)g(has)g(b)s +b(If)44 b(the)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(command)36 +b(w)m(ord)g(is)g(the)g(empt)m(y)h(string)f(\(completion)i(attempted)f +(at)g(the)g(b)s(eginning)e(of)h(an)h(empt)m(y)150 408 +y(line\),)30 b(an)m(y)g(compsp)s(ec)f(de\014ned)f(with)h(the)h +Ft(-E)e Fu(option)i(to)g Ft(complete)d Fu(is)i(used.)40 +b(If)29 b(the)g(command)g(w)m(ord)150 518 y(is)e(a)h(full)e(pathname,)i +(a)g(compsp)s(ec)e(for)h(the)g(full)g(pathname)g(is)g(searc)m(hed)h +(for)f(\014rst.)39 b(If)26 b(no)h(compsp)s(ec)g(is)150 +628 y(found)22 b(for)g(the)h(full)g(pathname,)h(an)f(attempt)h(is)f +(made)g(to)g(\014nd)f(a)h(compsp)s(ec)f(for)h(the)g(p)s(ortion)f(follo) +m(wing)150 737 y(the)34 b(\014nal)g(slash.)53 b(If)34 +b(those)g(searc)m(hes)i(do)e(not)g(result)h(in)f(a)g(compsp)s(ec,)h(an) +m(y)g(compsp)s(ec)f(de\014ned)f(with)150 847 y(the)k +Ft(-D)g Fu(option)g(to)h Ft(complete)d Fu(is)i(used)g(as)g(the)g +(default.)61 b(If)37 b(there)g(is)h(no)f(default)g(compsp)s(ec,)i(Bash) +150 956 y(attempts)e(alias)h(expansion)e(on)g(the)h(command)f(w)m(ord)g +(as)h(a)f(\014nal)g(resort,)j(and)c(attempts)j(to)f(\014nd)e(a)150 +1066 y(compsp)s(ec)30 b(for)g(the)h(command)f(w)m(ord)g(from)g(an)m(y)h +(successful)f(expansion)275 1207 y(Once)k(a)g(compsp)s(ec)g(has)g(b)s (een)f(found,)h(it)h(is)f(used)f(to)i(generate)h(the)e(list)h(of)f -(matc)m(hing)h(w)m(ords.)51 b(If)150 1223 y(a)37 b(compsp)s(ec)f(is)g +(matc)m(hing)h(w)m(ords.)51 b(If)150 1316 y(a)37 b(compsp)s(ec)f(is)g (not)h(found,)f(the)h(default)f(Bash)h(completion)g(describ)s(ed)e(ab)s -(o)m(v)m(e)j(\(see)f(Section)g(8.4.6)150 1332 y([Commands)30 -b(F)-8 b(or)31 b(Completion],)g(page)g(139\))h(is)f(p)s(erformed.)275 -1489 y(First,)g(the)g(actions)g(sp)s(eci\014ed)f(b)m(y)h(the)f(compsp)s +(o)m(v)m(e)j(\(see)f(Section)g(8.4.6)150 1426 y([Commands)30 +b(F)-8 b(or)31 b(Completion],)g(page)g(142\))h(is)f(p)s(erformed.)275 +1567 y(First,)g(the)g(actions)g(sp)s(eci\014ed)f(b)m(y)h(the)f(compsp)s (ec)h(are)g(used.)40 b(Only)30 b(matc)m(hes)i(whic)m(h)e(are)h -(pre\014xed)150 1598 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h +(pre\014xed)150 1677 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h (are)g(returned.)44 b(When)31 b(the)h Ft(-f)f Fu(or)h Ft(-d)f Fu(option)h(is)f(used)g(for)h(\014lename)150 -1708 y(or)e(directory)h(name)f(completion,)i(the)e(shell)h(v)-5 +1786 y(or)e(directory)h(name)f(completion,)i(the)e(shell)h(v)-5 b(ariable)31 b Ft(FIGNORE)d Fu(is)i(used)f(to)i(\014lter)g(the)f(matc)m -(hes.)42 b(See)150 1817 y(Section)31 b(5.2)h([Bash)e(V)-8 -b(ariables],)33 b(page)e(78,)g(for)f(a)h(description)g(of)f -Ft(FIGNORE)p Fu(.)275 1974 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f +(hes.)42 b(See)150 1896 y(Section)31 b(5.2)h([Bash)e(V)-8 +b(ariables],)33 b(page)e(79,)g(for)f(a)h(description)g(of)f +Ft(FIGNORE)p Fu(.)275 2037 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f (b)m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g -Ft(-G)e Fu(option)i(are)g(generated)150 2084 y(next.)41 +Ft(-G)e Fu(option)i(are)g(generated)150 2146 y(next.)41 b(The)29 b(w)m(ords)g(generated)h(b)m(y)g(the)g(pattern)f(need)h(not)f (matc)m(h)i(the)f(w)m(ord)f(b)s(eing)g(completed.)41 -b(The)150 2193 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32 +b(The)150 2256 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32 b(is)g(not)g(used)e(to)i(\014lter)g(the)g(matc)m(hes,)h(but)d(the)i -Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 2303 y(is)30 -b(used.)275 2459 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the) +Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 2365 y(is)30 +b(used.)275 2506 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the) g(argumen)m(t)h(to)g(the)f Ft(-W)f Fu(option)i(is)f(considered.)60 -b(The)37 b(string)150 2569 y(is)c(\014rst)e(split)i(using)f(the)h(c)m +b(The)37 b(string)150 2616 y(is)c(\014rst)e(split)i(using)f(the)h(c)m (haracters)h(in)e(the)h Ft(IFS)e Fu(sp)s(ecial)j(v)-5 b(ariable)33 b(as)g(delimiters.)48 b(Shell)32 b(quoting)h(is)150 -2679 y(honored)f(within)h(the)g(string,)h(in)f(order)f(to)i(pro)m(vide) +2725 y(honored)f(within)h(the)g(string,)h(in)f(order)f(to)i(pro)m(vide) f(a)h(mec)m(hanism)f(for)g(the)g(w)m(ords)g(to)g(con)m(tain)i(shell)150 -2788 y(metac)m(haracters)e(or)e(c)m(haracters)i(in)e(the)g(v)-5 +2835 y(metac)m(haracters)e(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 2898 y(expansion,)g(tilde)h(expansion,)f +(expanded)f(using)h(brace)150 2945 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 3007 y(arithmetic)c(expansion,)f(as)g(describ) +(substitution,)i(and)150 3054 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 3117 y(results)23 b(are)h(split)g(using)f +(page)g(24\).)40 b(The)150 3164 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(35\).)150 3226 +h([W)-8 b(ord)24 b(Splitting],)i(page)e(35\).)150 3273 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 -3336 y(matc)m(hing)k(w)m(ords)f(b)s(ecome)h(the)g(p)s(ossible)f -(completions.)275 3493 y(After)f(these)g(matc)m(hes)i(ha)m(v)m(e)f(b)s +3383 y(matc)m(hing)k(w)m(ords)f(b)s(ecome)h(the)g(p)s(ossible)f +(completions.)275 3524 y(After)f(these)g(matc)m(hes)i(ha)m(v)m(e)f(b)s (een)f(generated,)h(an)m(y)g(shell)f(function)g(or)g(command)g(sp)s -(eci\014ed)f(with)150 3602 y(the)36 b Ft(-F)f Fu(and)g +(eci\014ed)f(with)150 3634 y(the)36 b Ft(-F)f Fu(and)g Ft(-C)g Fu(options)h(is)g(in)m(v)m(ok)m(ed.)59 b(When)35 b(the)h(command)g(or)f(function)h(is)g(in)m(v)m(ok)m(ed,)i(the)e -Ft(COMP_)150 3712 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p +Ft(COMP_)150 3743 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p Fu(,)d Ft(COMP_KEY)p Fu(,)i(and)e Ft(COMP_TYPE)f Fu(v)-5 b(ariables)41 b(are)f(assigned)g(v)-5 b(alues)41 b(as)f(describ)s(ed) -150 3821 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8 -b(ariables],)36 b(page)d(78\).)50 b(If)33 b(a)g(shell)g(function)g(is)g -(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 3931 y Ft(COMP_WORDS)j +150 3853 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8 +b(ariables],)36 b(page)d(79\).)50 b(If)33 b(a)g(shell)g(function)g(is)g +(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 3962 y Ft(COMP_WORDS)j Fu(and)i Ft(COMP_CWORD)d Fu(v)-5 b(ariables)42 b(are)g(also)h(set.)74 -b(When)41 b(the)h(function)f(or)h(command)f(is)150 4041 +b(When)41 b(the)h(function)f(or)h(command)f(is)150 4072 y(in)m(v)m(ok)m(ed,)c(the)e(\014rst)f(argumen)m(t)h(\($1\))h(is)e(the)h (name)g(of)f(the)h(command)f(whose)h(argumen)m(ts)f(are)h(b)s(eing)150 -4150 y(completed,)30 b(the)f(second)f(argumen)m(t)h(\($2\))h(is)f(the)g +4181 y(completed,)30 b(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 -4260 y(\($3\))40 b(is)f(the)f(w)m(ord)h(preceding)f(the)h(w)m(ord)f(b)s +4291 y(\($3\))40 b(is)f(the)f(w)m(ord)h(preceding)f(the)h(w)m(ord)f(b)s (eing)g(completed)i(on)e(the)h(curren)m(t)f(command)h(line.)65 -b(No)150 4369 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g +b(No)150 4401 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g (against)h(the)e(w)m(ord)g(b)s(eing)f(completed)i(is)g(p)s(erformed;)f -(the)150 4479 y(function)d(or)g(command)h(has)f(complete)i(freedom)e -(in)g(generating)h(the)g(matc)m(hes.)275 4635 y(An)m(y)j(function)h(sp) +(the)150 4510 y(function)d(or)g(command)h(has)f(complete)i(freedom)e +(in)g(generating)h(the)g(matc)m(hes.)275 4651 y(An)m(y)j(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 -4745 y(facilities,)50 b(including)44 b(the)h Ft(compgen)d +4761 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 4855 y([Programmable)31 b(Completion)h(Builtins],)f -(page)h(146\),)g(to)g(generate)g(the)f(matc)m(hes.)42 -b(It)31 b(m)m(ust)g(put)f(the)150 4964 y(p)s(ossible)g(completions)h +i(Section)f(8.7)150 4870 y([Programmable)31 b(Completion)h(Builtins],)f +(page)h(149\),)g(to)g(generate)g(the)f(matc)m(hes.)42 +b(It)31 b(m)m(ust)g(put)f(the)150 4980 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 5121 y(Next,)26 b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g(the)h Ft(-C)f @@ -18610,9 +18823,9 @@ 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 5340 y(output.)40 b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h(escap)s(e)g(a)f (newline,)h(if)f(necessary)-8 b(.)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)275 299 y(After)24 +%%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)275 299 y(After)24 b(all)i(of)f(the)f(p)s(ossible)g(completions)i(are)f(generated,)i(an)m (y)e(\014lter)g(sp)s(eci\014ed)e(with)i(the)g Ft(-X)e Fu(option)150 408 y(is)34 b(applied)g(to)g(the)h(list.)52 @@ -18698,84 +18911,90 @@ b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g (return)f(124)390 5230 y(})390 5340 y(complete)g(-D)h(-F)g (_completion_loader)c(-o)k(bashdefault)e(-o)i(default)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 Fs(8.7)68 +%%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 Fs(8.7)68 b(Programmable)47 b(Completion)f(Builtins)150 458 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 568 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 677 y(to)e(mo)s(dify)f(the)g(completion)i(as)e(it)h(is)g(happ)s -(ening.)150 893 y Ft(compgen)870 1046 y(compgen)46 b([)p -Fj(option)p Ft(])f([)p Fj(word)p Ft(])630 1199 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 -1309 y(ma)m(y)32 b(b)s(e)f(an)m(y)h(option)g(accepted)g(b)m(y)g(the)f -Ft(complete)f Fu(builtin)h(with)g(the)g(exception)i(of)f -Ft(-p)630 1418 y Fu(and)39 b Ft(-r)p Fu(,)i(and)e(write)h(the)g(matc)m -(hes)g(to)g(the)g(standard)f(output.)68 b(When)39 b(using)g(the)h -Ft(-F)630 1528 y Fu(or)33 b Ft(-C)f Fu(options,)i(the)e(v)-5 -b(arious)33 b(shell)g(v)-5 b(ariables)33 b(set)g(b)m(y)g(the)g -(programmable)g(completion)630 1638 y(facilities,)g(while)d(a)m(v)-5 -b(ailable,)33 b(will)e(not)g(ha)m(v)m(e)g(useful)f(v)-5 -b(alues.)630 1791 y(The)34 b(matc)m(hes)h(will)g(b)s(e)f(generated)h +(ening.)150 851 y Ft(compgen)870 990 y(compgen)46 b([-V)h +Fj(varname)p Ft(])e([)p Fj(option)p Ft(])h([)p Fj(word)p +Ft(])630 1129 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 1239 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 1348 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 1487 +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 +1597 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 1736 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 +1846 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 1985 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 -1900 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 2010 +2094 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 2204 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 2120 y(b)s(e)d(displa)m(y)m(ed.)630 -2273 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in) +Fr(w)m(ord)j Fu(will)630 2313 y(b)s(e)d(displa)m(y)m(ed.)630 +2453 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 2382 y(generated.)150 2579 y Ft(complete)870 -2732 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p -Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])e([-)870 2842 -y(G)i Fj(globpat)p Ft(])870 2951 y([-W)g Fj(wordlist)p -Ft(])e([-F)i Fj(function)p Ft(])e([-C)i Fj(command)p -Ft(])f([-X)h Fj(filterpat)p Ft(])870 3061 y([-P)g Fj(prefix)p -Ft(])f([-S)h Fj(suffix)p Ft(])e Fj(name)i Ft([)p Fj(name)f -Ft(...])870 3171 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f -Ft(...)o(])630 3324 y Fu(Sp)s(ecify)37 b(ho)m(w)h(argumen)m(ts)f(to)i -(eac)m(h)g Fr(name)j Fu(should)37 b(b)s(e)g(completed.)63 -b(If)38 b(the)f Ft(-p)g Fu(option)630 3433 y(is)30 b(supplied,)e(or)i -(if)g(no)f(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s -(eci\014cations)g(are)630 3543 y(prin)m(ted)24 b(in)h(a)g(w)m(a)m(y)g +(ere)630 2562 y(generated.)150 2731 y Ft(complete)870 +2870 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p +Ft(])e([-DEI])h([-A)h Fj(action)p Ft(])870 2980 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 3089 +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 +3199 y(complete)g(-pr)g([-DEI])h([)p Fj(name)f Ft(...)o(])630 +3338 y Fu(Sp)s(ecify)37 b(ho)m(w)h(argumen)m(ts)f(to)i(eac)m(h)g +Fr(name)j Fu(should)37 b(b)s(e)g(completed.)63 b(If)38 +b(the)f Ft(-p)g Fu(option)630 3447 y(is)30 b(supplied,)e(or)i(if)g(no)f +(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s +(eci\014cations)g(are)630 3557 y(prin)m(ted)24 b(in)h(a)g(w)m(a)m(y)g (that)h(allo)m(ws)g(them)e(to)i(b)s(e)e(reused)f(as)i(input.)38 -b(The)24 b Ft(-r)g Fu(option)i(remo)m(v)m(es)630 3653 +b(The)24 b Ft(-r)g Fu(option)i(remo)m(v)m(es)630 3667 y(a)i(completion)h(sp)s(eci\014cation)f(for)g(eac)m(h)h Fr(name)p Fu(,)f(or,)h(if)e(no)h Fr(name)5 b Fu(s)27 -b(are)h(supplied,)g(all)g(com-)630 3762 y(pletion)i(sp)s +b(are)h(supplied,)g(all)g(com-)630 3776 y(pletion)i(sp)s (eci\014cations.)42 b(The)29 b Ft(-D)g Fu(option)h(indicates)h(that)f -(other)g(supplied)e(options)j(and)630 3872 y(actions)c(should)e(apply)g +(other)g(supplied)e(options)j(and)630 3886 y(actions)c(should)e(apply)g (to)i(the)f(\\default")h(command)e(completion;)k(that)e(is,)g -(completion)630 3981 y(attempted)g(on)f(a)h(command)f(for)g(whic)m(h)g +(completion)630 3995 y(attempted)g(on)f(a)h(command)f(for)g(whic)m(h)g (no)g(completion)i(has)d(previously)h(b)s(een)g(de\014ned.)630 -4091 y(The)e Ft(-E)g Fu(option)h(indicates)g(that)g(other)g(supplied)e -(options)h(and)g(actions)i(should)d(apply)h(to)630 4200 +4105 y(The)e Ft(-E)g Fu(option)h(indicates)g(that)g(other)g(supplied)e +(options)h(and)g(actions)i(should)d(apply)h(to)630 4215 y(\\empt)m(y")33 b(command)e(completion;)i(that)f(is,)g(completion)h -(attempted)f(on)g(a)f(blank)g(line.)630 4310 y(The)24 +(attempted)f(on)g(a)f(blank)g(line.)630 4324 y(The)24 b Ft(-I)g Fu(option)h(indicates)g(that)g(other)g(supplied)e(options)h -(and)g(actions)i(should)d(apply)h(to)630 4420 y(completion)29 +(and)g(actions)i(should)d(apply)h(to)630 4434 y(completion)29 b(on)g(the)f(initial)h(non-assignmen)m(t)g(w)m(ord)f(on)g(the)g(line,)i -(or)e(after)h(a)f(command)630 4529 y(delimiter)41 b(suc)m(h)g(as)f(`)p +(or)e(after)h(a)f(command)630 4543 y(delimiter)41 b(suc)m(h)g(as)f(`)p Ft(;)p Fu(')h(or)g(`)p Ft(|)p Fu(',)i(whic)m(h)e(is)f(usually)h -(command)f(name)h(completion.)72 b(If)630 4639 y(m)m(ultiple)26 +(command)f(name)h(completion.)72 b(If)630 4653 y(m)m(ultiple)26 b(options)g(are)g(supplied,)g(the)f Ft(-D)g Fu(option)h(tak)m(es)i (precedence)e(o)m(v)m(er)g Ft(-E)p Fu(,)h(and)e(b)s(oth)630 -4748 y(tak)m(e)34 b(precedence)f(o)m(v)m(er)h Ft(-I)p +4762 y(tak)m(e)34 b(precedence)f(o)m(v)m(er)h Ft(-I)p Fu(.)47 b(If)32 b(an)m(y)h(of)g Ft(-D)p Fu(,)g Ft(-E)p Fu(,)f(or)h Ft(-I)f Fu(are)h(supplied,)f(an)m(y)h(other)g -Fr(name)630 4858 y Fu(argumen)m(ts)k(are)g(ignored;)j(these)d +Fr(name)630 4872 y Fu(argumen)m(ts)k(are)g(ignored;)j(these)d (completions)h(only)e(apply)g(to)i(the)f(case)g(sp)s(eci\014ed)f(b)m(y) -630 4968 y(the)31 b(option.)630 5121 y(The)e(pro)s(cess)g(of)h +630 4982 y(the)31 b(option.)630 5121 y(The)e(pro)s(cess)g(of)h (applying)g(these)g(completion)g(sp)s(eci\014cations)h(when)d(w)m(ord)i (completion)630 5230 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 -5340 y(page)31 b(143\).)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)630 299 y(Other)28 +5340 y(page)31 b(146\).)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)630 299 y(Other)28 b(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 408 y Ft(-G)p Fu(,)41 b Ft(-W)p Fu(,)h(and)c Ft(-X)h @@ -18824,7 +19043,7 @@ b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i Ft(-a)p Fu(.)1110 4408 y Ft(arrayvar)96 b Fu(Arra)m(y)31 b(v)-5 b(ariable)31 b(names.)1110 4559 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 -4669 y(Readline)h(Commands],)f(page)h(133\).)1110 4819 +4669 y(Readline)h(Commands],)f(page)h(136\).)1110 4819 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 4929 y(as)31 b Ft(-b)p Fu(.)1110 5080 y Ft(command)144 b Fu(Command)29 @@ -18832,9 +19051,9 @@ 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 5230 y Ft(directory)1590 5340 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(.)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)1110 299 y Ft(disabled)96 +%%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)1110 299 y Ft(disabled)96 b Fu(Names)31 b(of)g(disabled)f(shell)g(builtins.)1110 455 y Ft(enabled)144 b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.) 1110 610 y Ft(export)192 b Fu(Names)34 b(of)f(exp)s(orted)f(shell)h(v) @@ -18847,11 +19066,11 @@ 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 1343 y Ft(helptopic)1590 1452 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 1562 y(tion)31 -b(4.2)g([Bash)g(Builtins],)g(page)g(55\).)1110 1718 y +b(4.2)g([Bash)g(Builtins],)g(page)g(56\).)1110 1718 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 1827 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 1937 y(V)-8 b(ariables],)32 b(page)f(78\).)1110 +([Bash)1590 1937 y(V)-8 b(ariables],)32 b(page)f(79\).)1110 2093 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 2202 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 2358 y Ft(keyword)144 @@ -18866,7 +19085,7 @@ Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)1590 2935 y(\(see)31 b(Section)h(4.3.1)g([The)e(Set)g(Builtin],)i(page)f(67\).) 1110 3091 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 -3200 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(55\).) +3200 y(\(see)31 b(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(56\).) 1110 3356 y Ft(signal)192 b Fu(Signal)31 b(names.)1110 3512 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 3667 y Ft(user)288 @@ -18887,14 +19106,14 @@ b(argumen)m(ts)h(are)g(b)s(eing)f(completed,)j($2)e(is)f(the)h(w)m(ord) f(b)s(eing)g(com-)1110 5011 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m (ord)g(preceding)f(the)h(w)m(ord)f(b)s(eing)h(completed,)1110 5121 y(as)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(\(see)g(Section)f(8.6)h -([Programmable)g(Completion],)1110 5230 y(page)30 b(143\).)42 +([Programmable)g(Completion],)1110 5230 y(page)30 b(146\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s(ossible)g(completions)h(are)g (retriev)m(ed)1110 5340 y(from)g(the)g(v)-5 b(alue)31 b(of)g(the)f Ft(COMPREPLY)e Fu(arra)m(y)j(v)-5 b(ariable.)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)630 299 y Ft(-G)30 +%%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)630 299 y Ft(-G)30 b Fj(globpat)1110 408 y Fu(The)39 b(\014lename)h(expansion)g(pattern)g Fr(globpat)j Fu(is)d(expanded)f(to)h(generate)1110 518 y(the)31 b(p)s(ossible)e(completions.)630 708 y Ft(-P)h @@ -18923,50 +19142,52 @@ Fu(')e(in)g Fr(\014lterpat)j Fu(negates)f(the)f(pattern;)g(in)f(this) Fr(\014lterpat)i Fu(is)d(remo)m(v)m(ed.)630 2671 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 -2781 y(than)h Ft(-p)g Fu(or)g Ft(-r)f Fu(is)h(supplied)f(without)i(a)f -Fr(name)44 b Fu(argumen)m(t,)c(an)e(attempt)i(is)e(made)g(to)630 -2891 y(remo)m(v)m(e)32 b(a)e(completion)i(sp)s(eci\014cation)f(for)f(a) -h Fr(name)k Fu(for)30 b(whic)m(h)g(no)g(sp)s(eci\014cation)h(exists,) -630 3000 y(or)f(an)h(error)f(o)s(ccurs)g(adding)g(a)g(completion)i(sp)s -(eci\014cation.)150 3190 y Ft(compopt)870 3339 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(])630 3489 y Fu(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 -3598 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 3708 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 3818 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 -3927 y(ab)s(o)m(v)m(e.)41 b(The)27 b Ft(-D)f Fu(option)i(indicates)g -(that)g(other)f(supplied)f(options)i(should)e(apply)h(to)h(the)630 -4037 y(\\default")33 b(command)f(completion;)i(that)f(is,)g(completion) -g(attempted)g(on)f(a)g(command)630 4146 y(for)g(whic)m(h)g(no)g -(completion)i(has)e(previously)g(b)s(een)g(de\014ned.)45 -b(The)32 b Ft(-E)f Fu(option)i(indicates)630 4256 y(that)23 -b(other)f(supplied)e(options)j(should)e(apply)g(to)i(\\empt)m(y")g -(command)f(completion;)k(that)630 4366 y(is,)36 b(completion)g -(attempted)g(on)e(a)h(blank)g(line.)54 b(The)34 b Ft(-I)g -Fu(option)h(indicates)g(that)h(other)630 4475 y(supplied)23 -b(options)i(should)f(apply)g(to)i(completion)g(on)e(the)h(initial)h -(non-assignmen)m(t)f(w)m(ord)630 4585 y(on)37 b(the)f(line,)j(or)e -(after)g(a)g(command)f(delimiter)i(suc)m(h)e(as)h(`)p -Ft(;)p Fu(')g(or)f(`)p Ft(|)p Fu(',)j(whic)m(h)e(is)f(usually)630 -4694 y(command)30 b(name)h(completion.)630 4844 y(If)k(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 4954 -y(b)s(oth)30 b(tak)m(e)i(precedence)e(o)m(v)m(er)i Ft(-I)630 -5103 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 5213 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h +2781 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 +2891 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 3000 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 3190 +y Ft(compopt)870 3339 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(])630 3489 y Fu(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 3598 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 3708 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 +3818 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 3927 y(ab)s(o)m(v)m(e.)41 +b(The)27 b Ft(-D)f Fu(option)i(indicates)g(that)g(other)f(supplied)f +(options)i(should)e(apply)h(to)h(the)630 4037 y(\\default")33 +b(command)f(completion;)i(that)f(is,)g(completion)g(attempted)g(on)f(a) +g(command)630 4146 y(for)g(whic)m(h)g(no)g(completion)i(has)e +(previously)g(b)s(een)g(de\014ned.)45 b(The)32 b Ft(-E)f +Fu(option)i(indicates)630 4256 y(that)23 b(other)f(supplied)e(options)j +(should)e(apply)g(to)i(\\empt)m(y")g(command)f(completion;)k(that)630 +4366 y(is,)36 b(completion)g(attempted)g(on)e(a)h(blank)g(line.)54 +b(The)34 b Ft(-I)g Fu(option)h(indicates)g(that)h(other)630 +4475 y(supplied)23 b(options)i(should)f(apply)g(to)i(completion)g(on)e +(the)h(initial)h(non-assignmen)m(t)f(w)m(ord)630 4585 +y(on)37 b(the)f(line,)j(or)e(after)g(a)g(command)f(delimiter)i(suc)m(h) +e(as)h(`)p Ft(;)p Fu(')g(or)f(`)p Ft(|)p Fu(',)j(whic)m(h)e(is)f +(usually)630 4694 y(command)30 b(name)h(completion.)630 +4844 y(If)k(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 4954 y(b)s(oth)30 b(tak)m(e)i(precedence)e(o)m +(v)m(er)i Ft(-I)630 5103 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 +5213 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 5322 y(or)e(an)h(output)f(error)g(o)s(ccurs.)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 Fs(8.8)68 +%%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 Fs(8.8)68 b(A)44 b(Programmable)j(Completion)f(Example)150 458 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 @@ -19025,9 +19246,9 @@ h(one)f(per)h(line;)g(could)f(also)h(use)g(while)f(loop)772 y(_skipdot=false)772 5230 y(#)f(preprocess)e(CDPATH)h(to)i(convert)d (null)i(directory)e(names)i(to)g(.)772 5340 y(_cdpath=${CDPATH/#:/.:})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)772 299 y Ft +%%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)772 299 y Ft (_cdpath=${_cdpath//::/:.)o(:})772 408 y(_cdpath=${_cdpath/\045:/:.}) 772 518 y(for)47 b(i)g(in)g(${_cdpath//:/$'\\n'};)c(do)963 628 y(if)k([[)g($i)g(-ef)g(.)h(]];)f(then)f(_skipdot=true;)e(fi)963 @@ -19073,7 +19294,7 @@ 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 4100 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 -4209 y(Section)j(3.5.8)h([Filename)g(Expansion],)e(page)i(35\),)f(and)f +4209 y(Section)j(3.5.8)h([Filename)g(Expansion],)e(page)i(36\),)f(and)f (so)h(on.)275 4344 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 4453 y(completion)32 b(for)e(a)h @@ -19093,8 +19314,8 @@ b(older)h(v)m(ersion)h(of)f(the)g(bash)p 1532 5161 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 5270 y Ft(examples/complete)26 b Fu(sub)s(directory)-8 b(.)p eop end -%%Page: 152 158 -TeXDict begin 152 157 bop 3614 -116 a Fu(152)150 299 +%%Page: 155 161 +TeXDict begin 155 160 bop 3614 -116 a Fu(155)150 299 y Fp(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150 554 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 @@ -19133,7 +19354,7 @@ h Ft($HISTSIZE)c Fu(lines)150 2422 y(are)35 b(copied)g(from)g(the)g (history)f(list)i(to)f(the)g(\014le)g(named)f(b)m(y)h Ft($HISTFILE)p Fu(.)51 b(If)35 b(the)g Ft(histappend)d Fu(shell)150 2532 y(option)26 b(is)g(set)g(\(see)h(Section)f(4.2)h -([Bash)f(Builtins],)h(page)g(55\),)h(the)e(lines)g(are)g(app)s(ended)e +([Bash)f(Builtins],)h(page)g(56\),)h(the)e(lines)g(are)g(app)s(ended)e (to)i(the)g(history)150 2641 y(\014le,)36 b(otherwise)f(the)g(history)f (\014le)h(is)f(o)m(v)m(erwritten.)55 b(If)34 b Ft(HISTFILE)e Fu(is)j(unset,)g(or)g(if)f(the)h(history)f(\014le)h(is)150 @@ -19162,7 +19383,7 @@ Fu(builtin)i(ma)m(y)h(b)s(e)e(used)g(to)i(displa)m(y)g(or)f(mo)s(dify)f (commands)g(are)g(a)m(v)-5 b(ailable)33 b(in)e(eac)m(h)150 3911 y(editing)45 b(mo)s(de)g(that)g(pro)m(vide)g(access)h(to)f(the)g (history)f(list)i(\(see)f(Section)h(8.4.2)g([Commands)e(F)-8 -b(or)150 4020 y(History],)31 b(page)h(134\).)275 4162 +b(or)150 4020 y(History],)31 b(page)h(137\).)275 4162 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 4272 y Ft(HISTCONTROL)25 b Fu(and)j Ft(HISTIGNORE)e @@ -19184,9 +19405,9 @@ Fu(.)150 5181 y Fs(9.2)68 b(Bash)45 b(History)h(Builtins)150 5340 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.)p eop end -%%Page: 153 159 -TeXDict begin 153 158 bop 150 -116 a Fu(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(153)150 +%%Page: 156 162 +TeXDict begin 156 161 bop 150 -116 a Fu(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(156)150 299 y Ft(fc)870 430 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 540 y(fc)h(-s)g([)p Fj(pat)p Ft(=)p Fj(rep)p Ft(])f([)p Fj(command)p Ft(])630 @@ -19237,7 +19458,7 @@ Fu(,)h(so)h(that)h(t)m(yping)f(`)p Ft(r)f(cc)p Fu(')630 3061 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 3170 y(command)30 b(\(see)h(Section)h(6.6)f([Aliases],)h -(page)g(100\).)150 3324 y Ft(history)870 3455 y(history)46 +(page)g(101\).)150 3324 y Ft(history)870 3455 y(history)46 b([)p Fj(n)p Ft(])870 3565 y(history)g(-c)870 3674 y(history)g(-d)h Fj(offset)870 3784 y Ft(history)f(-d)h Fj(start)p Ft(-)p Fj(end)870 3893 y Ft(history)f([-anrw])g([)p Fj(filename)p @@ -19264,9 +19485,9 @@ 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 5340 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)p eop end -%%Page: 154 160 -TeXDict begin 154 159 bop 150 -116 a Fu(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(154)1110 +%%Page: 157 163 +TeXDict begin 157 162 bop 150 -116 a Fu(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(157)1110 299 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 408 y(last)36 b(history)f(p)s(osition,)h(so)f(negativ)m(e)i(indices)e @@ -19342,9 +19563,9 @@ Fr(mo)s(di\014ers)150 5340 y Fu(are)33 b(a)m(v)-5 b(ailable)36 b(to)d(manipulate)h(the)f(selected)h(w)m(ords.)48 b(The)32 b(line)i(is)f(brok)m(en)f(in)m(to)i(w)m(ords)f(in)f(the)i(same)p eop end -%%Page: 155 161 -TeXDict begin 155 160 bop 150 -116 a Fu(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(155)150 +%%Page: 158 164 +TeXDict begin 158 163 bop 150 -116 a Fu(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(158)150 299 y(fashion)23 b(that)g(Bash)g(do)s(es,)h(so)f(that)h(sev)m(eral)g(w) m(ords)e(surrounded)e(b)m(y)j(quotes)g(are)g(considered)g(one)g(w)m (ord.)150 408 y(History)37 b(expansions)g(are)g(in)m(tro)s(duced)f(b)m @@ -19395,7 +19616,7 @@ y(to)36 b(add)f(commands)g(to)h(the)g(end)f(of)g(the)h(history)f(list)i (expansion)g(mec)m(h-)150 2927 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 -3036 y(page)32 b(78\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g +3036 y(page)32 b(79\).)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 3146 y(writing)e(the)h(history)f(\014le.)150 3347 y Fk(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150 3494 @@ -19427,9 +19648,9 @@ b Fu(is)32 b(follo)m(w)m(ed)630 5230 y(immediately)f(b)m(y)e(a)h (string)f(from)g(the)h(most)g(recen)m(t)630 5340 y(searc)m(h)h(is)f (used;)g(it)h(is)g(an)f(error)g(if)g(there)h(is)f(no)g(previous)g (searc)m(h)h(string.)p eop end -%%Page: 156 162 -TeXDict begin 156 161 bop 150 -116 a Fu(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(156)150 +%%Page: 159 165 +TeXDict begin 159 164 bop 150 -116 a Fu(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(159)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 @@ -19494,9 +19715,9 @@ Ft(:)p Fu('.)50 b(These)33 b(mo)s(dify)-8 b(,)33 b(or)h(edit,)g(the)g (ev)m(en)m(t.)150 5340 y Ft(h)432 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(pathname)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e(the) h(head.)p eop end -%%Page: 157 163 -TeXDict begin 157 162 bop 150 -116 a Fu(Chapter)30 b(9:)41 -b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(157)150 +%%Page: 160 166 +TeXDict begin 160 165 bop 150 -116 a Fu(Chapter)30 b(9:)41 +b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(160)150 299 y Ft(t)432 b Fu(Remo)m(v)m(e)32 b(all)f(leading)h(pathname)e(comp)s (onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150 458 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 @@ -19538,8 +19759,8 @@ Ft(/)p Fu(,)c(or)j(with)h(`)p Ft(&)p Fu('.)150 2939 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: 158 164 -TeXDict begin 158 163 bop 3614 -116 a Fu(158)150 299 +%%Page: 161 167 +TeXDict begin 161 166 bop 3614 -116 a Fu(161)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 @@ -19581,7 +19802,7 @@ Fu(')i(migh)m(t)i(b)s(e)f(required.)47 b(More)33 b(information)g(ab)s (out)f(con-)330 3071 y(trolling)c(the)g(lo)s(cations)g(where)f Ft(bash)f Fu(and)h(other)g(\014les)g(are)h(installed)g(is)f(b)s(elo)m (w)g(\(see)h(Section)g(10.4)330 3181 y([Installation)k(Names],)g(page)f -(160\).)275 3343 y(The)20 b Ft(configure)f Fu(shell)i(script)g +(163\).)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 @@ -19612,19 +19833,19 @@ b(t)m(yp)s(e)390 4602 y Ft(bash-4.2$)45 b(./configure)g(--help)150 (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)24 -b(commands)f(will)g(build)f(bash)g(in)g(a)h(directory)h(under)d -Ft(/usr/local/build)d Fu(from)23 b(the)g(source)150 5204 +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: 159 165 -TeXDict begin 159 164 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(159)390 299 y Ft(cd)47 +%%Page: 162 168 +TeXDict begin 162 167 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(162)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(159,)j(for)c(more)i(information)150 +(hitectures],)i(page)d(162,)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 @@ -19675,7 +19896,7 @@ 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(158\).)47 +(Section)f(10.1)i([Basic)f(Installation],)i(page)e(161\).)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 @@ -19704,9 +19925,9 @@ Fu(:)390 5096 y Ft(bash)47 b(/usr/gnu/src/bash-2.0/s)o(uppo)o(rt/)o 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: 160 166 -TeXDict begin 160 165 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(160)150 299 y Fs(10.4)68 +%%Page: 163 169 +TeXDict begin 163 168 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(163)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 @@ -19722,7 +19943,7 @@ 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 +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 @@ -19739,8 +19960,8 @@ 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)43 b(y)m(ou)i(w)m(an)m(t)g(to)g(see)f(the)h(\014les) -f(bash)f(will)i(install)g(and)e(where)h(it)g(will)h(install)g(them)f +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 @@ -19793,9 +20014,9 @@ Ft(CONFIG_SITE)c Fu(en)m(vironmen)m(t)k(v)-5 b(ari-)150 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: 161 167 -TeXDict begin 161 166 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(161)150 299 y Fs(10.7)68 +%%Page: 164 170 +TeXDict begin 164 169 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(164)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 606 y Ft(--cache-file=)p Fj(file)630 @@ -19859,9 +20080,9 @@ g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g(Readline)g(rather)630 5340 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)p eop end -%%Page: 162 168 -TeXDict begin 162 167 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(162)630 299 y(v)m(ersions.)46 +%%Page: 165 171 +TeXDict begin 165 170 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(165)630 299 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 408 y(mak)m(e)28 b(v)-5 b(ariables)29 b Ft(includedir)24 @@ -19927,14 +20148,14 @@ m(vide)150 4946 y(the)e(necessary)f(supp)s(ort.)150 5121 y Ft(--enable-alias)630 5230 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 5340 y(tion)31 b(6.6)g([Aliases],)i -(page)e(100\).)p eop end -%%Page: 163 169 -TeXDict begin 163 168 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(163)150 299 y Ft +(page)e(101\).)p eop end +%%Page: 166 172 +TeXDict begin 166 171 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(166)150 299 y Ft (--enable-alt-array-imple)o(ment)o(atio)o(n)630 408 y -Fu(This)33 b(builds)g(bash)g(using)h(an)g(alternate)i(implemen)m -(tation)f(of)g(arra)m(ys)f(\(see)h(Section)g(6.7)630 -518 y([Arra)m(ys],)43 b(page)d(100\))h(that)f(pro)m(vides)g(faster)g +Fu(This)32 b(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 +518 y([Arra)m(ys],)43 b(page)d(101\))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 628 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 774 @@ -19945,11 +20166,11 @@ Ft(for)f Fu(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630 (3.2.5.1)i([Lo)s(oping)d(Constructs],)h(page)g(11\).)150 1139 y Ft(--enable-array-variables)630 1249 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 1358 y(ra)m(ys],)c(page)g(100\).)150 +b(\(see)h(Section)g(6.7)h([Ar-)630 1358 y(ra)m(ys],)c(page)g(101\).)150 1504 y Ft(--enable-bang-history)630 1614 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 1724 y(teraction],)c(page)e -(154\).)150 1870 y Ft(--enable-brace-expansion)630 1979 +(157\).)150 1870 y Ft(--enable-brace-expansion)630 1979 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 2089 y([Brace)32 b(Expansion],)e(page)h(24,)h @@ -19984,17 +20205,17 @@ 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 4609 y([Pip)s(elines],)31 b(page)g(10\).)150 4756 y Ft (--enable-debugger)630 4865 y Fu(Include)f(supp)s(ort)e(for)i(the)h -(bash)f(debugger)g(\(distributed)g(separately\).)150 -5011 y Ft(--enable-dev-fd-stat-bro)o(ken)630 5121 y Fu(If)c(calling)j +(Bash)g(debugger)f(\(distributed)f(separately\).)150 +5011 y Ft(--enable-dev-fd-stat-bro)o(ken)630 5121 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 5230 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 5340 y(for)j(conditional)i(commands)e(that)h (test)g(\014le)g(attributes.)p eop end -%%Page: 164 170 -TeXDict begin 164 169 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(164)150 299 y Ft +%%Page: 167 173 +TeXDict begin 167 172 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(167)150 299 y Ft (--enable-direxpand-defau)o(lt)630 408 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 518 y(page)29 b(71\))g(to)f(b)s(e)f @@ -20004,12 +20225,12 @@ b(It)27 b(is)h(normally)g(disabled)630 628 y(b)m(y)i(default.)150 (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 1026 y Fu(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m -(k],)g(page)f(102\).)150 1205 y Ft(--enable-disabled-builti)o(ns)630 +(k],)g(page)f(103\).)150 1205 y Ft(--enable-disabled-builti)o(ns)630 1315 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 1425 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(55,)630 1534 y(for)e(details)i(of)e(the)h +(Builtins],)i(page)f(56,)630 1534 y(for)e(details)i(of)e(the)h Ft(builtin)d Fu(and)i Ft(enable)e Fu(builtin)i(commands.)150 1714 y Ft(--enable-dparen-arithmet)o(ic)630 1823 y Fu(Include)42 b(supp)s(ort)f(for)h(the)h Ft(\(\(...)o(\)\))f Fu(command)g(\(see)i @@ -20038,20 +20259,20 @@ b(con)m(trols)i(the)630 3636 y(b)s(eha)m(vior)40 b(of)f(c)m(haracter)i 4035 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 4144 y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f -(55\).)150 4324 y Ft(--enable-history)630 4433 y Fu(Include)e(command)g +(56\).)150 4324 y Ft(--enable-history)630 4433 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 4543 y(tion)h(9.1)g([Bash)g -(History)g(F)-8 b(acilities],)34 b(page)d(152\).)150 +(History)g(F)-8 b(acilities],)34 b(page)d(155\).)150 4722 y Ft(--enable-job-control)630 4832 y Fu(This)h(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(113\),)630 4941 y(if)c(the)h(op)s(erating)g(system)f +(trol],)i(page)f(116\),)630 4941 y(if)c(the)h(op)s(erating)g(system)f (supp)s(orts)f(them.)150 5121 y Ft(--enable-multibyte)630 5230 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 5340 y(the)h(necessary)f(supp)s(ort.)p eop end -%%Page: 165 171 -TeXDict begin 165 170 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(165)150 299 y Ft +%%Page: 168 174 +TeXDict begin 168 173 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(168)150 299 y Ft (--enable-net-redirection)o(s)630 408 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 518 y Fu(and)31 @@ -20060,28 +20281,28 @@ b(used)g(in)g(redirections)h(\(see)g(Section)g(3.6)h([Redirec-)630 628 y(tions],)e(page)g(38\).)150 787 y Ft(--enable-process-substit)o (utio)o(n)630 897 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 -1006 y(page)31 b(34\))h(if)e(the)h(op)s(erating)f(system)h(pro)m(vides) +1006 y(page)31 b(35\))h(if)e(the)h(op)s(erating)f(system)h(pro)m(vides) f(the)h(necessary)g(supp)s(ort.)150 1166 y Ft(--enable-progcomp)630 1275 y Fu(Enable)d(the)g(programmable)g(completion)i(facilities)g (\(see)f(Section)g(8.6)g([Programmable)630 1385 y(Completion],)i(page)h -(143\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g +(146\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g (has)f(no)g(e\013ect.)150 1544 y Ft(--enable-prompt-string-d)o(ecod)o (ing)630 1654 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 1763 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 -1873 y(Prompt],)30 b(page)h(104,)h(for)f(a)f(complete)i(list)f(of)g +1873 y(Prompt],)30 b(page)h(105,)h(for)f(a)f(complete)i(list)f(of)g (prompt)e(string)i(escap)s(e)f(sequences.)150 2032 y Ft(--enable-readline)630 2142 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 2252 y(the)i(Readline)g(library)f(\(see)h(Chapter)f(8) -g([Command)g(Line)g(Editing],)h(page)g(117\).)150 2411 +g([Command)g(Line)g(Editing],)h(page)g(120\).)150 2411 y Ft(--enable-restricted)630 2521 y Fu(Include)41 b(supp)s(ort)f(for)i (a)g Fr(restricted)g(shell)p Fu(.)75 b(If)42 b(this)f(is)h(enabled,)j (Bash,)g(when)c(called)630 2630 y(as)f Ft(rbash)p Fu(,)h(en)m(ters)f(a) g(restricted)h(mo)s(de.)68 b(See)40 b(Section)h(6.10)g([The)f -(Restricted)h(Shell],)630 2740 y(page)31 b(105,)h(for)e(a)h +(Restricted)h(Shell],)630 2740 y(page)31 b(107,)h(for)e(a)h (description)f(of)h(restricted)g(mo)s(de.)150 2899 y Ft(--enable-select)630 3009 y Fu(Include)25 b(the)h Ft(select)f Fu(comp)s(ound)f(command,)j(whic)m(h)e(allo)m(ws)j(the)e(generation)h @@ -20097,7 +20318,7 @@ g(v)m(ery)h(long)g(string)f(literals.)150 3766 y Ft (--enable-strict-posix-de)o(faul)o(t)630 3875 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 3985 y(page)31 -b(106\).)150 4144 y Ft(--enable-translatable-st)o(ring)o(s)630 +b(107\).)150 4144 y Ft(--enable-translatable-st)o(ring)o(s)630 4254 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 4364 y(T)-8 b(ranslation],)32 b(page)f(7\).)150 @@ -20112,12 +20333,12 @@ b(alue)24 b(of)g(the)g Ft(xpg_echo)e Fu(shell)h(option)630 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 5230 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(55,)630 5340 y(for)30 b(a)h(description)f(of)h +(Builtins],)h(page)f(56,)630 5340 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.)p eop end -%%Page: 166 172 -TeXDict begin 166 171 bop 150 -116 a Fu(Chapter)30 b(10:)41 -b(Installing)31 b(Bash)2356 b(166)275 299 y(The)28 b(\014le)i +%%Page: 169 175 +TeXDict begin 169 174 bop 150 -116 a Fu(Chapter)30 b(10:)41 +b(Installing)31 b(Bash)2356 b(169)275 299 y(The)28 b(\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 408 y(are)35 b(not)g(settable)i(from)d Ft(configure)p @@ -20126,8 +20347,8 @@ m(hanged;)k(b)s(ew)m(are)d(of)150 518 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 628 y(information)c(ab)s(out)f (its)h(e\013ect.)p eop end -%%Page: 167 173 -TeXDict begin 167 172 bop 3614 -116 a Fu(167)150 299 +%%Page: 170 176 +TeXDict begin 170 175 bop 3614 -116 a Fu(170)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 @@ -20138,33 +20359,31 @@ b(The)29 b(latest)j(v)m(ersion)e(of)f(Bash)h(is)f(alw)m(a)m(ys)150 b(/)g(/)g(ftp)g(.)g(gnu)g(.)g(org)g(/)g(pub)g(/)g(gnu)g(/)g(bash)g(/)45 b Fu(and)40 b(from)g Ft(http:)8 b(/)g(/)g(git)g(.)150 862 y(savannah.gnu.org/cgit/ba)o(sh.g)o(it/s)o(nap)o(shot)o(/bas)o(h-m) -o(aste)o(r.ta)o(r.g)o(z)p Fu(.)275 996 y(Once)26 b(y)m(ou)h(ha)m(v)m(e) -g(determined)f(that)h(a)g(bug)f(actually)i(exists,)g(use)e(the)g -Ft(bashbug)f Fu(command)h(to)h(sub-)150 1106 y(mit)21 -b(a)f(bug)g(rep)s(ort)g(or)g(use)g(the)g(form)g(at)h(the)g -Ft(<)p Fu(a)f(href=)p Ft(")p Fu(h)m(ttps://sa)m(v)-5 -b(annah.gn)m(u.org/pro)5 b(jects/bash/)p Ft(">)p Fu(Bash)150 -1215 y(pro)g(ject)27 b(page)p Ft(<)p Fu(/a)p Ft(>)p Fu(.)41 -b(If)26 b(y)m(ou)h(ha)m(v)m(e)h(a)f(\014x,)h(y)m(ou)f(are)g(encouraged) -g(to)h(submit)e(that)h(as)g(w)m(ell!)40 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: 168 174 -TeXDict begin 168 173 bop 3614 -116 a Fu(168)150 141 +o(aste)o(r.ta)o(r.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: 171 177 +TeXDict begin 171 176 bop 3614 -116 a Fu(171)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 530 y Fu(Bash)26 b(implemen)m(ts)h(essen)m(tially)g(the)g(same)f(grammar,)h(parameter)f @@ -20185,20 +20404,20 @@ Ft(sh)f Fu(included)g(in)h(SVR4.2)h(\(the)f(last)h(v)m(ersion)f(of)g 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 1431 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(106\).)225 1565 y Fq(\017)60 +(POSIX)g(Mo)s(de],)h(page)g(107\).)225 1565 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 -(91\).)225 1699 y Fq(\017)60 b Fu(Bash)40 b(has)f(command-line)h +(92\).)225 1699 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 -(117\))330 1809 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225 +(120\))330 1809 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225 1943 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 -2052 y(grammable)39 b(Completion],)i(page)e(143\),)i(and)d(builtin)g +2052 y(grammable)39 b(Completion],)i(page)e(146\),)i(and)d(builtin)g (commands)f Ft(complete)p Fu(,)h Ft(compgen)p Fu(,)h(and)330 2162 y Ft(compopt)p Fu(,)29 b(to)i(manipulate)g(it.)225 2296 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(152\))i(and)d(the)330 2405 y Ft(history)k Fu(and)h +b(page)c(155\))i(and)d(the)330 2405 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 2515 y(information)g(and)e(uses)h(the)h(v)-5 b(alue)31 @@ -20206,9 +20425,9 @@ b(of)f(the)h Ft(HISTTIMEFORMAT)26 b Fu(v)-5 b(ariable)32 b(to)f(displa)m(y)f(it.)225 2649 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 2759 -y(page)31 b(154\).)225 2892 y Fq(\017)60 b Fu(Bash)29 +y(page)31 b(157\).)225 2892 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(100\),)h(and)e(the)330 +b(\(see)h(Section)f(6.7)g([Arra)m(ys],)h(page)f(101\),)h(and)e(the)330 3002 y(appropriate)39 b(v)-5 b(ariable)40 b(expansions)f(and)g (assignmen)m(t)h(syn)m(tax)g(to)g(use)f(them.)67 b(Sev)m(eral)40 b(of)g(the)330 3112 y(Bash)32 b(builtins)f(tak)m(e)j(options)e(to)h @@ -20250,10 +20469,10 @@ 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 5340 y(men)m(us)f(\(see)h(Section)g(3.2.5.2)i([Conditional)e (Constructs],)g(page)g(12\).)p eop end -%%Page: 169 175 -TeXDict begin 169 174 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 172 178 +TeXDict begin 172 177 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(169)225 299 y Fq(\017)60 +b(The)f(Bourne)g(Shell)1258 b(172)225 299 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 408 y(the)f(shell)g(grammar)g(\(see)h(Section)f(3.2.5.2)j([Conditional) @@ -20267,12 +20486,12 @@ b Fu(Bash)31 b(pro)m(vides)f(optional)h(case-insensitiv)m(e)i(matc)m (page)h(25\).)225 1034 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 -1143 y([Aliases],)32 b(page)f(100\).)225 1279 y Fq(\017)60 +1143 y([Aliases],)32 b(page)f(101\).)225 1279 y Fq(\017)60 b Fu(Bash)32 b(pro)m(vides)g(shell)g(arithmetic,)i(the)e Ft(\(\()g Fu(comp)s(ound)e(command)i(\(see)h(Section)f(3.2.5.2)j([Con-) 330 1388 y(ditional)d(Constructs],)e(page)i(12\),)g(and)e(arithmetic)i (expansion)e(\(see)i(Section)f(6.5)h([Shell)f(Arith-)330 -1498 y(metic],)h(page)f(98\).)225 1633 y Fq(\017)60 b +1498 y(metic],)h(page)f(99\).)225 1633 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 1743 y(pro)s(cesses.)38 b(The)23 b(Bourne)g(shell)g(do)s(es)g(not)g @@ -20324,7 +20543,7 @@ Fu(form)g(of)h(command)g(substitution)f(is)h(implemen)m(ted)g(\(see)h Ft(``)e Fu(\(whic)m(h)i(is)f(also)330 4495 y(implemen)m(ted)31 b(for)f(bac)m(kw)m(ards)h(compatibilit)m(y\).)225 4631 y 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(34\).)225 +(Section)g(3.5.6)h([Pro)s(cess)f(Substitution],)f(page)h(35\).)225 4766 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 4876 y(user)40 b(\()p Ft(UID)p Fu(,)i @@ -20334,16 +20553,16 @@ Fu(,)f(and)330 4985 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 5095 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(78,)g(for)f(details.)225 5230 y Fq(\017)60 b +b(page)e(79,)g(for)f(details.)225 5230 y Fq(\017)60 b Fu(The)44 b Ft(IFS)f Fu(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f (only)g(the)g(results)g(of)h(expansion,)i(not)d(all)h(w)m(ords)f(\(see) 330 5340 y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f (35\).)41 b(This)28 b(closes)h(a)g(longstanding)g(shell)f(securit)m(y)h (hole.)p eop end -%%Page: 170 176 -TeXDict begin 170 175 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 173 179 +TeXDict begin 173 178 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(170)225 299 y Fq(\017)60 +b(The)f(Bourne)g(Shell)1258 b(173)225 299 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 408 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f @@ -20353,7 +20572,7 @@ Ft(!)p Fu('.)225 536 y Fq(\017)60 b Fu(Bash)38 b(implemen)m(ts)g(the)g (erators,)i(including)d(c)m(har-)330 646 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 756 y(Expansion],)30 -b(page)h(35\).)225 883 y Fq(\017)60 b Fu(Bash)35 b(implemen)m(ts)g +b(page)h(36\).)225 883 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 993 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(36\).)225 @@ -20365,7 +20584,7 @@ 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 1468 y(useful)i(recursiv)m(e)g (functions)g(ma)m(y)h(b)s(e)f(written)g(\(see)i(Section)f(4.2)g([Bash)g -(Builtins],)g(page)h(55\).)225 1596 y Fq(\017)60 b Fu(V)-8 +(Builtins],)g(page)h(56\).)225 1596 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 1705 y(functions)36 b(\(see)h(Section)g(3.7.4)h([En)m(vironmen)m(t],)h(page) @@ -20414,14 +20633,14 @@ 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 4171 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 4281 y(\(see)f(Section)h(4.2)f([Bash)g -(Builtins],)g(page)g(55\).)225 4408 y Fq(\017)60 b Fu(The)35 +(Builtins],)g(page)g(56\).)225 4408 y Fq(\017)60 b Fu(The)35 b Ft(command)e Fu(builtin)i(allo)m(ws)i(selectiv)m(e)h(disabling)e(of)f (functions)g(when)g(command)g(lo)s(okup)g(is)330 4518 y(p)s(erformed)29 b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g -(55\).)225 4646 y Fq(\017)60 b Fu(Individual)23 b(builtins)g(ma)m(y)i +(56\).)225 4646 y Fq(\017)60 b Fu(Individual)23 b(builtins)g(ma)m(y)i (b)s(e)e(enabled)h(or)g(disabled)g(using)f(the)h Ft(enable)f Fu(builtin)g(\(see)i(Section)g(4.2)330 4756 y([Bash)31 -b(Builtins],)g(page)g(55\).)225 4883 y Fq(\017)60 b Fu(The)26 +b(Builtins],)g(page)g(56\).)225 4883 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 4993 y(of)35 b(the)f(en)m(vironmen)m(t)h(passed)f(to)h(the)g(executed)g @@ -20432,10 +20651,10 @@ 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 5340 y(Section)i(3.3)h([Shell)e(F)-8 b(unctions],)32 b(page)f(19\).)p eop end -%%Page: 171 177 -TeXDict begin 171 176 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 174 180 +TeXDict begin 174 179 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(171)225 299 y Fq(\017)60 +b(The)f(Bourne)g(Shell)1258 b(174)225 299 y Fq(\017)60 b Fu(The)40 b(Bash)h Ft(export)p Fu(,)h Ft(readonly)p Fu(,)f(and)g Ft(declare)d Fu(builtins)j(can)g(tak)m(e)h(a)f Ft(-f)f Fu(option)i(to)f(act)h(on)330 408 y(shell)30 @@ -20454,12 +20673,12 @@ Ft($PATH)p Fu(,)g(using)f(`)p Ft(hash)h(-p)p Fu(')g(\(see)330 984 y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(48\).)225 1121 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 1230 y(Builtins],)j(page)g(55\).)225 +(\(see)f(Section)g(4.2)g([Bash)330 1230 y(Builtins],)j(page)g(56\).)225 1367 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 1477 y(Builtins],)31 b(page)g(55\).)225 +(4.2)g([Bash)330 1477 y(Builtins],)31 b(page)g(56\).)225 1614 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(55\))g(will)f(read)g(a)g +(Section)g(4.2)g([Bash)f(Builtins],)h(page)g(56\))g(will)f(read)g(a)g (line)g(ending)330 1724 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 @@ -20489,7 +20708,7 @@ Fu(builtin,)k(for)d(\014ner)f(con)m(trol)j(of)e(shell)h(optional)g (Builtin],)k(page)d(71\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f (b)s(e)f(set)i(and)330 3093 y(unset)30 b(at)h(shell)g(in)m(v)m(o)s (cation)h(\(see)f(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)g(page)h -(91\).)225 3230 y Fq(\017)60 b Fu(Bash)45 b(has)f(m)m(uc)m(h)g(more)h +(92\).)225 3230 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 3340 y(tion)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(67\).)225 3477 @@ -20529,10 +20748,10 @@ Fu(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j 5340 y(signal)30 b(sp)s(eci\014cation,)h(similar)f(to)g 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)p eop end -%%Page: 172 178 -TeXDict begin 172 177 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 175 181 +TeXDict begin 175 180 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(172)330 299 y(are)40 b(executed)g(after)g +b(The)f(Bourne)g(Shell)1258 b(175)330 299 y(are)40 b(executed)g(after)g (a)f(simple)h(command)f(fails,)j(with)d(a)h(few)f(exceptions.)68 b(The)39 b Ft(ERR)g Fu(trap)g(is)330 408 y(not)g(inherited)f(b)m(y)h (shell)g(functions)f(unless)g(the)h Ft(-o)29 b(errtrace)37 @@ -20553,7 +20772,7 @@ Ft(shopt)f Fu(builtin.)225 1329 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 1439 y(it)h(\014nds)e(\(see)i(Section)g(4.2)h([Bash)e(Builtins],)i -(page)f(55\).)225 1570 y Fq(\017)60 b Fu(The)27 b(Bash)h +(page)f(56\).)225 1570 y Fq(\017)60 b Fu(The)27 b(Bash)h Ft(umask)e Fu(builtin)h(p)s(ermits)g(a)h Ft(-p)f Fu(option)h(to)h (cause)f(the)g(output)f(to)h(b)s(e)f(displa)m(y)m(ed)h(in)g(the)330 1680 y(form)i(of)h(a)g Ft(umask)f Fu(command)g(that)i(ma)m(y)f(b)s(e)f @@ -20563,20 +20782,20 @@ 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 2030 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(102\).)47 b(Bash)32 b(also)330 2140 y(mak)m(es)f(the)g +(k],)h(page)f(103\).)47 b(Bash)32 b(also)330 2140 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 2272 y Fq(\017)60 b Fu(Bash)28 b(in)m(terprets)h(sp)s(ecial)g(bac)m (kslash-escap)s(ed)g(c)m(haracters)g(in)f(the)h(prompt)e(strings)h (when)f(in)m(ter-)330 2381 y(activ)m(e)33 b(\(see)e(Section)g(6.9)h -([Con)m(trolling)f(the)g(Prompt],)f(page)h(104\).)225 +([Con)m(trolling)f(the)g(Prompt],)f(page)h(105\).)225 2513 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 2622 y(page)31 b(105\);)h(the)f(SVR4.2)g(shell)g(restricted)g(mo)s +330 2622 y(page)31 b(107\);)h(the)f(SVR4.2)g(shell)g(restricted)g(mo)s (de)f(is)g(to)s(o)h(limited.)225 2754 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 2863 y([Job)e(Con)m(trol)h(Builtins],)g(page)g(114\))g(or)g +(7.2)330 2863 y([Job)e(Con)m(trol)h(Builtins],)g(page)g(117\))g(or)g (suppress)d(the)i(sending)g(of)g Ft(SIGHUP)e Fu(to)j(a)g(job)f(when)f (the)330 2973 y(shell)i(exits)g(as)f(the)h(result)f(of)h(a)f Ft(SIGHUP)p Fu(.)225 3104 y Fq(\017)60 b Fu(Bash)31 b(includes)f(a)g(n) @@ -20593,7 +20812,7 @@ 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 3894 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(91.)150 4128 y Fs(B.1)67 b(Implemen)l(tation)48 +b(eatures],)32 b(page)f(92.)150 4128 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 4288 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 @@ -20614,10 +20833,10 @@ 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 5340 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(.)p eop end -%%Page: 173 179 -TeXDict begin 173 178 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 176 182 +TeXDict begin 176 181 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(173)225 299 y Fq(\017)60 +b(The)f(Bourne)g(Shell)1258 b(176)225 299 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 408 y Fu(option,)39 b(will)d(alter)i(its)e(real)h(and) @@ -20648,8 +20867,8 @@ Fm(posix)330 1738 y Fu(standard.)225 1873 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\).)p eop end -%%Page: 174 180 -TeXDict begin 174 179 bop 3614 -116 a Fu(174)150 299 +%%Page: 177 183 +TeXDict begin 177 182 bop 3614 -116 a Fu(177)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 @@ -20730,10 +20949,10 @@ b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g 5340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27 b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s (cumen)m(t)g(is)g(released)p eop end -%%Page: 175 181 -TeXDict begin 175 180 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 178 184 +TeXDict begin 178 183 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(175)330 299 y(under)26 b(this)i(License.)40 b(If)27 +b(178)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 @@ -20824,10 +21043,10 @@ b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m 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: 176 182 -TeXDict begin 176 181 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 179 185 +TeXDict begin 179 184 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(176)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h +b(179)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 @@ -20917,10 +21136,10 @@ 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 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: 177 183 -TeXDict begin 177 182 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 180 186 +TeXDict begin 180 185 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(177)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g +b(180)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 @@ -20999,10 +21218,10 @@ b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g (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: 178 184 -TeXDict begin 178 183 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 181 187 +TeXDict begin 181 186 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(178)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5 +b(181)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 @@ -21087,10 +21306,10 @@ 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 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: 179 185 -TeXDict begin 179 184 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 182 188 +TeXDict begin 182 187 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(179)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h +b(182)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 @@ -21175,10 +21394,10 @@ 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 (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: 180 186 -TeXDict begin 180 185 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 183 189 +TeXDict begin 183 188 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(180)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE) +b(183)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 @@ -21242,10 +21461,10 @@ f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g 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: 181 187 -TeXDict begin 181 186 bop 150 -116 a Fu(App)s(endix)29 +%%Page: 184 190 +TeXDict begin 184 189 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(181)150 299 y Fs(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f +b(184)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 @@ -21280,8 +21499,8 @@ y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g b(as)g(the)g(GNU)150 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: 182 188 -TeXDict begin 182 187 bop 3614 -116 a Fu(182)150 299 +%%Page: 185 191 +TeXDict begin 185 190 bop 3614 -116 a Fu(185)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 923 y Fe(.)19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g @@ -21301,7 +21520,7 @@ g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(56)146 2239 y Fs(B)150 2356 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(114)150 2443 y Fe(bind)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g +b Fb(117)150 2443 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(56)150 2531 y Fe(break)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g @@ -21322,13 +21541,13 @@ b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g h(:)f(:)g(:)g(:)g(:)35 b Fb(57)150 3238 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(146)150 3326 y Fe(complete)16 +(:)h(:)f(:)g(:)33 b Fb(149)150 3326 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(146)150 3413 y Fe(compopt)18 b Fc(:)d(:)e(:)g(:)h(:) +(:)g(:)g(:)31 b Fb(149)150 3413 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(149)150 3501 y Fe(continue)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g +b Fb(152)150 3501 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(49)146 3741 y Fs(D)150 3858 y Fe(declare)22 b Fc(:)13 @@ -21337,10 +21556,10 @@ b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h g(:)g(:)g(:)35 b Fb(58)150 3946 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(102)150 4033 y Fe(disown)e +h(:)f(:)g(:)g(:)g(:)g(:)24 b Fb(104)150 4033 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(116)146 4274 y Fs(E)150 4391 +g(:)g(:)g(:)g(:)g(:)36 b Fb(119)146 4274 y Fs(E)150 4391 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 @@ -21362,10 +21581,10 @@ g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(50)146 5080 y Fs(F)150 5197 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(153)150 5284 y Fe(fg)14 b Fc(:)g(:)f(:)g(:)g(:)g(:) +g(:)g(:)g(:)29 b Fb(156)150 5284 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(114)2021 871 y Fs(G)2025 988 y Fe(getopts)22 +g(:)g(:)g(:)29 b Fb(117)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(50)2021 1250 y Fs(H)2025 @@ -21378,14 +21597,14 @@ g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(61)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(153)2021 1806 y Fs(J)2025 1924 y Fe(jobs)9 b Fc(:)14 +Fb(156)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(114)2021 2186 y Fs(K)2025 +g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(117)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(115)2021 2554 y Fs(L)2025 2672 y Fe(let)14 b Fc(:)f(:)g(:)h(:)f(:) +b Fb(118)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(61)2025 2760 y Fe(local)9 b Fc(:)14 @@ -21397,17 +21616,17 @@ b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(61)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(61)2021 +f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(62)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(103)2025 3696 y Fe(printf)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:) +b Fb(104)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(62)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(103)2025 3871 y Fe(pwd)14 b Fc(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g +b Fb(104)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(51)2021 4133 y Fs(R)2025 4251 y Fe(read)11 b Fc(:)j(:)f(:)g(:)g(:) @@ -21416,7 +21635,7 @@ g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f g(:)g(:)g(:)26 b Fb(63)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(64)2025 4427 y Fe(readonly)18 b Fc(:)d(:)e(:)g(:)g(:)g +g(:)g(:)30 b Fb(65)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(52)2025 4515 y Fe(return)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g @@ -21437,10 +21656,10 @@ y Fe(source)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(65)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(116)p eop end -%%Page: 183 189 -TeXDict begin 183 188 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(183)146 294 y Fs(T)150 410 y Fe(test)11 +f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(119)p eop end +%%Page: 186 192 +TeXDict begin 186 191 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(186)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(52)150 497 @@ -21456,10 +21675,10 @@ h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(65)150 758 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(65)146 1003 y Fs(U)150 1119 y Fe(ulimit)6 b Fc(:)15 +b Fb(66)146 1003 y Fs(U)150 1119 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(65)150 1206 y Fe(umask)9 +g(:)g(:)g(:)h(:)f(:)20 b Fb(66)150 1206 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(55)150 1293 y @@ -21472,7 +21691,7 @@ g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(55)2021 294 y Fs(W)2025 433 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(115)150 2133 y Fs(D.2)68 b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h +b Fb(118)150 2133 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(:) @@ -21544,9 +21763,9 @@ 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: 184 190 -TeXDict begin 184 189 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(184)150 299 y Fs(D.3)68 b(P)l(arameter)47 +%%Page: 187 193 +TeXDict begin 187 192 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(187)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(:) @@ -21583,7 +21802,7 @@ g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g (:)31 b Fb(23)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(78)150 2582 y Fe($0)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)g(:)h +(:)g(:)31 b Fb(79)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 @@ -21604,847 +21823,863 @@ f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(23)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(78)146 4631 y Fs(0)150 4748 y +(:)f(:)g(:)g(:)33 b Fb(79)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(121)150 5196 y Fe(active-region-start-color) +(:)g(:)g(:)g(:)h(:)26 b Fb(124)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(121)150 5283 y Fe(auto_resume)8 b +g(:)g(:)h(:)21 b Fb(124)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(116)2021 954 y Fs(B)2025 1074 y Fe(BASH)11 b +23 b Fb(119)2021 954 y Fs(B)2025 1074 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(79)2025 1163 +g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(80)2025 1163 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(79)2025 1251 y Fe(BASH_ARGC)15 +g(:)g(:)g(:)g(:)h(:)22 b Fb(80)2025 1251 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(79)2025 1340 y Fe(BASH_ARGV)15 b Fc(:)g(:)f(:)f(:)g +(:)g(:)g(:)30 b Fb(80)2025 1340 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(79)2025 1429 y Fe(BASH_ARGV0)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g +b Fb(80)2025 1429 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(80)2025 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(81)2025 1517 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(80)2025 1606 +g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(81)2025 1606 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(80)2025 1695 y Fe(BASH_COMPAT)10 +g(:)g(:)g(:)g(:)h(:)22 b Fb(81)2025 1695 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(80)2025 1783 y Fe(BASH_ENV)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g +g(:)25 b Fb(81)2025 1783 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(80)2025 1872 y Fe(BASH_EXECUTION_STRING)24 b Fc(:)13 +b Fb(81)2025 1872 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(80)2025 1960 y Fe(BASH_LINENO)10 +(:)g(:)g(:)g(:)g(:)34 b Fb(81)2025 1960 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(80)2025 2049 y Fe(BASH_LOADABLES_PATH)7 b +g(:)25 b Fb(81)2025 2049 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(81)2025 +(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(82)2025 2138 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(81)2025 2226 y Fe(BASH_SOURCE)10 +(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(82)2025 2226 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(81)2025 2315 y Fe(BASH_SUBSHELL)g Fc(:)13 +g(:)25 b Fb(82)2025 2315 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(81)2025 2403 y Fe(BASH_VERSINFO)25 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g +b Fb(82)2025 2403 y Fe(BASH_VERSINFO)25 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(:)37 b Fb(81)2025 2492 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(82)2025 2492 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(81)2025 2581 y Fe(BASH_XTRACEFD)j +g(:)g(:)g(:)g(:)h(:)22 b Fb(82)2025 2581 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(81)2025 2669 y Fe(BASHOPTS)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f +b Fb(82)2025 2669 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(79)2025 2758 y Fe(BASHPID)22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g +Fb(80)2025 2758 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(79)2025 2847 y Fe(bell-style)11 b Fc(:)k(:)e(:)g(:)g(:)g(:)h(:)f +b Fb(80)2025 2847 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(121)2025 +g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(124)2025 2935 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(121)2025 3022 y Fe(blink-matching-paren)24 b Fc(:)13 +b Fb(124)2025 3022 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(122)2021 3297 y Fs(C)2025 +(:)g(:)g(:)g(:)h(:)34 b Fb(125)2021 3297 y Fs(C)2025 3417 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(78)2025 3506 y Fe(CHILD_MAX)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g +Fb(79)2025 3506 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(82)2025 +f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(83)2025 3595 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(122)2025 3683 y Fe(colored-stats)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f +b Fb(125)2025 3683 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(122)2025 3772 y Fe(COLUMNS)22 +g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(125)2025 3772 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(82)2025 3860 y Fe(comment-begin)23 +g(:)g(:)h(:)f(:)g(:)35 b Fb(83)2025 3860 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(122)2025 3949 y Fe(COMP_CWORD)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g +b Fb(125)2025 3949 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(82)2025 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(83)2025 4038 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(82)2025 4126 +g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(83)2025 4126 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(82)2025 4215 y Fe(COMP_POINT)13 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(83)2025 4215 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(82)2025 4303 y Fe(COMP_TYPE)15 b Fc(:)g(:)f(:)f(:)g(:)g +(:)h(:)27 b Fb(83)2025 4303 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(82)2025 4392 y Fe(COMP_WORDBREAKS)17 b Fc(:)g(:)c(:)g(:)g(:)g(:)g +b Fb(83)2025 4392 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(82)2025 4481 y Fe(COMP_WORDS)13 +h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(83)2025 4481 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(82)2025 4569 y Fe(completion-display-width)9 +(:)h(:)27 b Fb(83)2025 4569 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(122)2025 4658 y Fe(completion-ignore-case)14 +(:)h(:)f(:)g(:)24 b Fb(125)2025 4658 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(122)2025 4747 y Fe(completion-map-case)d +(:)g(:)g(:)h(:)f(:)29 b Fb(125)2025 4747 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(122)2025 4835 +(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(125)2025 4835 y Fe(completion-prefix-display-leng)q(th)29 b Fc(:)13 -b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(122)2025 4924 +b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(125)2025 4924 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(122)2025 5012 y Fe(COMPREPLY)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g +b Fb(125)2025 5012 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(83)2025 5101 y Fe(convert-meta)25 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:) +Fb(84)2025 5101 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(123)2025 5188 +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(126)2025 5188 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(83)p +g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(84)p eop end -%%Page: 185 191 -TeXDict begin 185 190 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(185)146 294 y Fs(D)150 415 y Fe(DIRSTACK)18 +%%Page: 188 194 +TeXDict begin 188 193 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(188)146 294 y Fs(D)150 414 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(83)150 502 y Fe(disable-completion)7 +(:)g(:)h(:)f(:)32 b Fb(84)150 501 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(123)146 -782 y Fs(E)150 903 y Fe(echo-control-characters)12 b +(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(126)146 +772 y Fs(E)150 892 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(123)150 991 y Fe(editing-mode)f +g(:)g(:)g(:)h(:)26 b Fb(126)150 981 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(123)150 1080 y Fe(emacs-mode-string)10 b Fc(:)17 +b Fb(126)150 1069 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(123)150 1169 +(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)25 b Fb(126)150 1158 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(83)150 -1258 y Fe(enable-active-region)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g +(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(84)150 +1246 y Fe(enable-active-region)h Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 -b Fb(123)150 1347 y Fe(enable-bracketed-paste)14 b Fc(:)k(:)c(:)f(:)g +b Fb(126)150 1335 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(124)150 1436 y Fe(enable-keypad)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g +b Fb(127)150 1423 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(124)150 1525 y Fe(ENV)14 +g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(127)150 1511 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(83)150 -1613 y Fe(EPOCHREALTIME)d Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(84)150 +1600 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(83)150 1702 y Fe(EPOCHSECONDS)8 +g(:)g(:)g(:)g(:)37 b Fb(84)150 1688 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(83)150 1791 y Fe(EUID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g +22 b Fb(84)150 1777 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(83)150 1880 y Fe(EXECIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:) +b Fb(84)150 1865 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(83)150 -1967 y Fe(expand-tilde)e Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(84)150 +1953 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(124)146 2247 y Fs(F)150 2368 +g(:)g(:)g(:)h(:)37 b Fb(127)146 2224 y Fs(F)150 2344 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(84)150 -2457 y Fe(FIGNORE)i Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h +g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)20 b Fb(85)150 +2432 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(84)150 -2545 y Fe(FUNCNAME)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g +g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(85)150 +2521 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(84)150 2633 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(85)150 2608 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(84)146 2901 y -Fs(G)150 3022 y Fe(GLOBIGNORE)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g +f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(85)146 2868 y +Fs(G)150 2988 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(84)150 -3109 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(84)146 3377 y Fs(H)150 3498 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(84)150 3587 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(84)150 3676 y Fe(HISTCONTROL)10 b Fc(:)16 b(:)d(:)g(:)g(:)h(:)f(:) +h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(85)150 +3076 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(85)150 3164 +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(85)146 +3423 y Fs(H)150 3543 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(86)150 3632 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(86)150 3720 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(85)150 -3765 y Fe(HISTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g +(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(86)150 +3809 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(85)150 3854 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(86)150 3897 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(85)150 3942 y Fe(HISTIGNORE)13 +g(:)g(:)h(:)f(:)g(:)22 b Fb(86)150 3986 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(85)150 4031 y Fe(history-preserve-point)14 +(:)g(:)27 b Fb(86)150 4074 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(124)150 4120 y Fe(history-size)c +h(:)f(:)g(:)g(:)29 b Fb(127)150 4163 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(124)150 4209 y Fe(HISTSIZE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g +b Fb(127)150 4251 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(85)150 4298 y Fe(HISTTIMEFORMAT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f +Fb(87)150 4340 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(85)150 4387 y Fe(HOME)11 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(87)150 4428 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(78)150 4475 +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)25 b Fb(79)150 4517 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(124)150 -4564 y Fe(HOSTFILE)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g +(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(127)150 +4605 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(86)150 4653 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(87)150 4693 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(86)150 4740 y +f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(87)150 4781 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(86)2021 294 y Fs(I)2025 +g(:)g(:)g(:)g(:)g(:)h(:)f(:)32 b Fb(87)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(78)2025 510 y Fe(IGNOREEOF)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:)g +b Fb(79)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(86)2025 +f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(87)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(124)2025 691 y Fe(INPUTRC)c +h(:)f(:)g(:)g(:)g(:)g(:)26 b Fb(127)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(86)2025 781 y Fe(INSIDE_EMACS)8 +g(:)g(:)h(:)f(:)g(:)35 b Fb(87)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(86)2025 868 y Fe(isearch-terminators)k Fc(:)13 +22 b Fb(87)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(125)2021 1167 y Fs(K)2025 +(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(128)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(125)2021 +g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(128)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(86)2025 1817 y Fe(LC_ALL)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g +b Fb(8,)26 b(87)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(86)2025 1907 y Fe(LC_COLLATE)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g +b Fb(88)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(86)2025 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(88)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(86)2025 2088 +g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(88)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(86)2025 2178 y Fe(LC_NUMERIC)13 +g(:)g(:)g(:)34 b Fb(8,)26 b(88)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(87)2025 2269 y Fe(LC_TIME)22 b Fc(:)13 +(:)h(:)27 b Fb(88)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(87)2025 2359 y Fe(LINENO)6 b Fc(:)14 +h(:)f(:)g(:)35 b Fb(88)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(87)2025 2446 y Fe(LINES)9 +g(:)g(:)g(:)g(:)g(:)21 b Fb(88)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(87)2021 2746 +g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)23 b Fb(88)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(87)2025 2962 y Fe(MAIL)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g +Fb(88)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(78)2025 3052 y Fe(MAILCHECK)15 b Fc(:)g(:)f(:)f(:)g(:)g(:)g(:)g(:) +b Fb(79)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(87)2025 +(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(88)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(78)2025 3233 +g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(79)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(87)2025 3323 +g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(88)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(125)2025 3414 y Fe(mark-symlinked-directories)27 +b Fb(128)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(125)2025 3504 y Fe(match-hidden-files)7 b Fc(:)17 +36 b Fb(128)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(125)2025 3594 +(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(128)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(126)2025 3681 y Fe(meta-flag)13 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)31 b Fb(129)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(124)2021 3992 y Fs(O)2025 4118 y Fe(OLDPWD)6 +(:)f(:)28 b Fb(127)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(87)2025 4208 y Fe(OPTARG)6 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(88)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(78)2025 4299 y Fe(OPTERR)6 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(79)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(87)2025 4389 y Fe(OPTIND)6 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(88)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(78)2025 4480 y Fe(OSTYPE)6 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(79)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(87)2025 4567 y Fe(output-meta)8 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)21 b Fb(88)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(126)p eop end -%%Page: 186 192 -TeXDict begin 186 191 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(186)146 294 y Fs(P)150 410 y Fe(page-completions) +23 b Fb(129)p eop end +%%Page: 189 195 +TeXDict begin 189 194 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(189)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(126)150 +(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)27 b Fb(129)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(78)150 584 y Fe(PIPESTATUS)13 b Fc(:)i(:)e(:)h(:)f(:)g(:)g(:)g(:)g +b Fb(79)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(87)150 +h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)27 b Fb(88)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(87)150 758 y Fe(PPID)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g +(:)g(:)g(:)32 b Fb(89)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(87)150 846 y Fe(PROMPT_COMMAND)e Fc(:)13 +(:)h(:)25 b Fb(89)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(87)150 933 y Fe(PROMPT_DIRTRIM)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f +b Fb(89)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(88)150 1020 y Fe(PS0)14 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(89)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(88)150 +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)28 b Fb(89)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(78)150 1194 y Fe(PS2)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h +b Fb(79)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(78)150 1281 y Fe(PS3)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h +b Fb(79)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(88)150 1369 y Fe(PS4)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h +b Fb(89)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(88)150 1456 y Fe(PWD)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h +b Fb(89)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(88)146 1689 y Fs(R)150 1804 y Fe(RANDOM)6 b Fc(:)15 +b Fb(89)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(88)150 1892 y Fe(READLINE_ARGUMENT)12 +g(:)g(:)g(:)h(:)f(:)20 b Fb(89)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(88)150 +(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(89)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(88)150 2066 y Fe(READLINE_MARK)25 +g(:)g(:)g(:)g(:)37 b Fb(89)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(88)150 2153 y Fe(READLINE_POINT)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f +b Fb(89)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(88)150 2240 y Fe(REPLY)9 +g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(90)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(88)150 2327 y +g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)23 b Fb(90)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(126)146 2560 y Fs(S)150 2676 y Fe(SECONDS)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(88)150 2763 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(88)150 2851 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(89)150 2938 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(89)150 3025 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(126)150 3112 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(126)150 -3199 y Fe(show-mode-in-prompt)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(:)37 -b Fb(126)2025 260 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(127)2025 347 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(89)2021 673 y Fs(T)2025 803 -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 895 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 986 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(89)2025 -1078 y Fe(TMOUT)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g +b Fb(129)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(129)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(90)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(90)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(90)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(90)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(129)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(129)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(129)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(130)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(90)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(90)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(89)2025 1165 y Fe(TMPDIR)6 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g +b Fb(91)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(90)2021 1492 y Fs(U)2025 1617 y Fe(UID)14 b Fc(:)f(:)g(:)h(:)f(:)g +b Fb(91)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(90)2021 1943 y Fs(V)2025 2073 +(:)g(:)h(:)f(:)28 b Fb(91)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(127)2025 2165 y Fe(vi-ins-mode-string)7 b Fc(:)17 +b Fb(130)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(127)2025 2252 +(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)22 b Fb(130)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(127)150 3845 y Fs(D.4)68 b(F)-11 b(unction)44 -b(Index)146 4330 y(A)150 4447 y Fe(abort)27 b(\(C-g\))15 +f(:)g(:)35 b Fb(130)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(141)150 4535 y Fe(accept-line)e(\(Newline)g(or)e(Return\))12 +b Fb(144)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(134)150 4622 y Fe(alias-expand-line)i(\(\))9 b Fc(:)14 +b Fb(137)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(143)146 4873 y Fs(B)150 -4990 y Fe(backward-char)29 b(\(C-b\))12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:) +(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(146)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(133)150 5077 y Fe(backward-delete-char)k(\(Rubout\))22 +(:)26 b Fb(136)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(136)150 5165 y Fe(backward-kill-line)30 b(\(C-x)c(Rubout\))e +b Fb(139)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(137)150 5252 y Fe(backward-kill-word)30 b(\(M-DEL\))11 +Fb(140)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(137)150 5340 y Fe(backward-word)j(\(M-b\))12 +26 b Fb(140)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(133)2025 4300 +f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(136)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(134)2025 -4389 y Fe(beginning-of-line)j(\(C-a\))20 b Fc(:)13 b(:)g(:)g(:)g(:)h(:) +(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(137)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(133)2025 4477 y Fe(bracketed-paste-begin)c(\(\))16 +b Fb(136)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(136)2021 4769 y Fs(C)2025 4893 y Fe +g(:)g(:)31 b Fb(139)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(141)2025 4982 +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)30 b Fb(144)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(137)2025 5072 y Fe(character-search)29 b(\(C-]\))22 +b Fb(140)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(141)2025 5161 y Fe +(:)h(:)f(:)g(:)g(:)36 b Fb(144)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(141)2025 5250 +b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)25 b Fb(144)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(134)2025 5340 y Fe(clear-screen)28 b(\(C-l\))14 +b Fb(137)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(134)p eop +f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(137)p eop end -%%Page: 187 193 -TeXDict begin 187 192 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(187)150 264 y Fe(complete)27 b(\(TAB\))7 +%%Page: 190 196 +TeXDict begin 190 195 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(190)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(139)150 352 y Fe(complete-command)29 b(\(M-!\))23 +b Fb(142)150 352 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(140)150 440 y Fe(complete-filename)29 +(:)f(:)g(:)g(:)g(:)36 b Fb(143)150 440 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(139)150 528 y Fe(complete-hostname) +g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(142)150 528 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(140)150 616 y Fe +g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(143)150 616 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(140)150 704 +(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(143)150 704 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(140)150 792 y Fe(complete-variable)c(\(M-$\))20 +b Fb(143)150 792 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(140)150 880 y Fe(copy-backward-word)d(\(\))7 +(:)g(:)h(:)f(:)33 b Fb(143)150 880 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(138)150 968 y Fe(copy-forward-word) +(:)g(:)g(:)g(:)g(:)h(:)f(:)21 b Fb(141)150 968 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(138)150 +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(141)150 1056 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(138)146 1320 y Fs(D)150 1438 y Fe(dabbrev-expand)29 +(:)g(:)g(:)36 b Fb(141)146 1320 y Fs(D)150 1438 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(140)150 1527 y Fe(delete-char)c(\(C-d\))17 b Fc(:)d(:)f(:)g(:)h(:) +b Fb(143)150 1527 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(136)150 1615 y Fe(delete-char-or-list)e +(:)g(:)g(:)g(:)g(:)32 b Fb(139)150 1615 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(139)150 1703 y Fe +g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(142)150 1703 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(138)150 +(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(141)150 1791 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(138)150 1879 y Fe(display-shell-version)k(\(C-x)d(C-v\))c +26 b Fb(141)150 1879 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(143)150 1958 y Fe(do-lowercase-version)30 b(\(M-A,)227 +Fb(146)150 1958 y Fe(do-lowercase-version)30 b(\(M-A,)227 2046 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(141)150 2134 y Fe(downcase-word)k(\(M-l\)) +g(:)g(:)g(:)g(:)g(:)25 b Fb(144)150 2134 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(137)150 2222 +(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)26 b Fb(140)150 2222 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(142)150 2310 y Fe(dump-macros)c(\(\))7 b Fc(:)14 +32 b Fb(145)150 2310 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(142)150 2398 y Fe(dump-variables)29 b(\(\))17 b +b Fb(145)150 2398 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(142)150 +(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(145)150 2485 y Fe(dynamic-complete-history)f(\(M-TAB\))13 b Fc(:)i(:)e(:)g(:)g -(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(140)146 2749 y Fs(E)150 +(:)g(:)g(:)g(:)g(:)h(:)27 b Fb(143)146 2749 y Fs(E)150 2868 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(143)150 2956 +b Fc(:)g(:)f(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(146)150 2956 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(140)150 3044 y Fd(end-of-file)g Fe(\(usually)g(C-d\))21 +b Fb(143)150 3044 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(136)150 3132 y Fe(end-of-history)29 b(\(M->\))9 +(:)g(:)35 b Fb(139)150 3132 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(134)150 3220 y +(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)24 b Fb(137)150 3220 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(133)150 3308 y Fe(exchange-point-and-mark)f(\(C-x)26 +b Fb(136)150 3308 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(141)146 3571 y Fs(F)150 3690 y Fe(fetch-history)d(\(\))19 +b Fb(144)146 3571 y Fs(F)150 3690 y Fe(fetch-history)d(\(\))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(136)150 +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(139)150 3778 y Fe(forward-backward-delete-char)e(\(\))15 b Fc(:)f(:)f(:)g(:)g -(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(136)150 3867 y Fe(forward-char)e +(:)g(:)g(:)h(:)f(:)g(:)g(:)30 b Fb(139)150 3867 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(133)150 3955 y Fe(forward-search-history)i(\(C-s\))24 +Fb(136)150 3955 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(134)150 4042 y Fe(forward-word)28 b(\(M-f\))14 b +b Fb(137)150 4042 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(133)146 4295 +(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)29 b Fb(136)146 4295 y Fs(G)150 4414 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(142)150 4502 y Fe(glob-expand-word)e(\(C-x)e(*\))c +g(:)g(:)31 b Fb(145)150 4502 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(142)150 4590 y Fe(glob-list-expansions)30 +(:)g(:)g(:)38 b Fb(145)150 4590 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(142)2021 294 y Fs(H)2025 422 y Fe +(:)g(:)h(:)27 b Fb(145)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(143)2025 513 y Fe(history-expand-line)i +g(:)g(:)g(:)g(:)28 b Fb(146)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(143)2025 604 y Fe(history-search-backward)j +g(:)g(:)g(:)h(:)28 b Fb(146)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(135)2025 695 y Fe(history-search-forward)k(\(\))13 +(:)g(:)g(:)26 b Fb(138)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(135)2025 786 y Fe(history-substring-search-backw)q(ard)k -(\(\))20 b Fc(:)13 b(:)g(:)g(:)g(:)35 b Fb(135)2025 874 +h(:)28 b Fb(138)2025 786 y Fe(history-substring-search-backw)q(ard)k +(\(\))20 b Fc(:)13 b(:)g(:)g(:)g(:)35 b Fb(138)2025 874 y Fe(history-substring-search-forwa)q(rd)d(\(\))22 b -Fc(:)13 b(:)h(:)f(:)g(:)g(:)37 b Fb(135)2021 1200 y Fs(I)2025 +Fc(:)13 b(:)h(:)f(:)g(:)g(:)37 b Fb(138)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(142)2025 1420 y Fe(insert-completions)29 b(\(M-*\))16 +24 b Fb(145)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(139)2025 1507 y Fe(insert-last-argument)f(\(M-.)c(or)g +g(:)g(:)31 b Fb(142)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(143)2021 1834 y Fs(K)2025 1962 y Fe(kill-line)27 +b Fb(146)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(137)2025 2053 y Fe(kill-region)28 b(\(\))7 b Fc(:)14 +b Fb(140)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(138)2025 2144 y Fe(kill-whole-line)29 b(\(\))14 +b Fb(141)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(137)2025 +f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(140)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(137)2021 2548 y Fs(M)2025 2676 y +g(:)g(:)g(:)37 b Fb(140)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(143)2025 2767 y Fe(menu-complete)28 +g(:)g(:)h(:)f(:)22 b Fb(146)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(139)2025 2854 y Fe(menu-complete-backward)c(\(\))13 +b Fb(142)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(139)2021 3181 y Fs(N)2025 3309 y Fe(next-history)g(\(C-n\)) +h(:)28 b Fb(142)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(134)2025 +(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)29 b Fb(137)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(134)2025 3472 y Fe(non-incremental-forward-)2102 +27 b Fb(137)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(135)2025 3647 y Fe(non-incremental-reverse-)2102 +b Fb(138)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(134)2021 4070 y Fs(O)2025 4198 y Fe(operate-and-get-next)30 +b Fb(137)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(135)2025 4285 y Fe(overwrite-mode)j(\(\))17 +(:)g(:)g(:)g(:)26 b Fb(138)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(137)p +g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(140)p eop end -%%Page: 188 194 -TeXDict begin 188 193 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(188)146 294 y Fs(P)150 411 y Fe +%%Page: 191 197 +TeXDict begin 191 196 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(191)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(140)150 499 y Fe +Fc(:)14 b(:)g(:)f(:)g(:)g(:)24 b Fb(143)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(139)150 +(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)26 b Fb(142)150 586 y Fe(possible-filename-completions)32 b(\(C-x)27 -b(/\))7 b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(140)150 674 +b(/\))7 b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(143)150 674 y Fe(possible-hostname-completions)32 b(\(C-x)27 b(@\))7 -b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(140)150 762 y Fe +b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(143)150 762 y Fe (possible-username-completions)32 b(\(C-x)27 b(~\))7 -b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(140)150 849 y Fe +b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(143)150 849 y Fe (possible-variable-completions)32 b(\(C-x)27 b($\))7 -b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(140)150 937 y Fe(prefix-meta)28 +b Fc(:)13 b(:)g(:)g(:)g(:)22 b Fb(143)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(141)150 1025 y Fe(previous-history)d(\(C-p\))23 +b Fb(144)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(134)150 1112 y Fe(previous-screen-line)30 +(:)f(:)g(:)g(:)g(:)36 b Fb(137)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(133)150 1200 y Fe +(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(136)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(141)146 +(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(144)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(136)146 1825 y Fs(R)150 1943 y Fe(re-read-init-file)29 +(:)g(:)22 b Fb(139)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(141)150 2030 y Fe(redraw-current-line)g(\(\))22 +(:)g(:)g(:)g(:)30 b Fb(144)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(134)150 2118 y Fe(reverse-search-history)31 +(:)f(:)g(:)g(:)g(:)36 b Fb(137)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(134)150 2205 y Fe(revert-line)28 b(\(M-r\))17 +g(:)38 b Fb(137)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(141)146 +g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(144)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(136)150 2654 y Fe(set-mark)g(\(C-@\))7 b Fc(:)15 +b Fb(139)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(141)150 2742 y Fe(shell-backward-kill-word)31 b(\(\))8 +b Fb(144)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(138)150 2830 y Fe(shell-backward-word)30 b(\(M-C-b\))8 +23 b Fb(141)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(133)150 2917 y Fe(shell-expand-line)29 b(\(M-C-e\))13 +23 b Fb(136)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(143)150 3005 y Fe(shell-forward-word)i(\(M-C-f\))11 +g(:)28 b Fb(146)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(133)150 3093 y Fe(shell-kill-word)j(\(M-C-d\))20 +26 b Fb(136)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(138)150 3180 y Fe(shell-transpose-words)d +(:)g(:)h(:)f(:)33 b Fb(141)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(138)2025 264 y Fe(skip-csi-sequence)29 b(\(\))9 +(:)35 b Fb(141)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(141)2025 361 y +(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(144)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(142)2025 +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fb(145)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(140)2021 891 y Fs(T)2025 1038 y Fe(tilde-expand)28 +b Fb(143)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(141)2025 1135 y Fe(transpose-chars)g(\(C-t\))7 b +b Fb(144)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(136)2025 1222 y Fe(transpose-words) +(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(139)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(137)2021 +(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(140)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(141)2025 1920 y Fe +g(:)g(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(144)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(139)2025 2017 y Fe(unix-filename-rubout)30 b(\(\))19 +b Fb(142)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(138)2025 2114 y Fe(unix-line-discard)29 +(:)g(:)g(:)g(:)34 b Fb(141)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(137)2025 2211 y Fe +f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(140)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(138)2025 2298 y Fe(upcase-word)28 b(\(M-u\))17 b +b Fb(141)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(137)2021 +(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)32 b Fb(140)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(138)2025 2996 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))8 +b Fb(141)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(135)2025 3093 y Fe(yank-nth-arg)28 b(\(M-C-y\))9 +(:)h(:)22 b Fb(138)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(135)2025 3180 +(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)24 b Fb(138)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(138)150 3929 y Fs(D.5)68 b(Concept)45 -b(Index)146 4523 y(A)150 4648 y Fb(alias)27 b(expansion)22 +g(:)g(:)h(:)f(:)22 b Fb(141)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(100)150 4738 y(arithmetic)26 b(ev)l(aluation)d Fc(:)13 +b Fb(101)150 4735 y(arithmetic)26 b(ev)l(aluation)d 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(:)37 b Fb(98)150 4828 y(arithmetic)26 +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(99)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(34)150 4919 y(arithmetic,)h(shell)6 b Fc(:)14 b(:)f(:)g(:)g(:)g(:) -g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h -(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)20 b Fb(98)150 5006 -y(arra)n(ys)f 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(100)2021 -4523 y Fs(B)2025 4646 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(113)2025 -4735 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(158)2025 4825 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(158)2025 4914 y(Bourne)i(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 5004 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(24)2025 5091 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: 189 195 -TeXDict begin 189 194 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(189)146 294 y Fs(C)150 415 y Fb(command)26 +b Fb(34)150 4914 y(arithmetic)g(op)r(erators)c Fc(:)13 +b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g +(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(99)150 5003 +y(arithmetic,)27 b(shell)6 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:) +g(:)g(:)g(:)g(:)h(:)20 b Fb(99)150 5090 y(arra)n(ys)f +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(101)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(116)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(161)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(161)2025 +4905 y(binary)h(arithmetic)h(op)r(erators)20 b Fc(:)13 +b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f +(:)g(:)33 b Fb(99)2025 4993 y(bit)n(wise)26 b(arithmetic)h(op)r +(erators)10 b Fc(:)k(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:) +g(:)g(:)g(:)g(:)g(:)h(:)24 b Fb(99)2025 5081 y(Bourne)i(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(24)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: 192 198 +TeXDict begin 192 197 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(192)146 294 y Fs(C)150 413 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(118)150 503 y(command)26 b(execution)12 b Fc(:)h(:)g(:)g(:)g(:)g +b Fb(121)150 501 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(42)150 592 y(command)g(expansion)c +g(:)h(:)f(:)g(:)g(:)26 b Fb(42)150 590 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(42)150 -681 y(command)26 b(history)18 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g +678 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(152)150 770 y(command)26 b(searc)n(h)16 +g(:)g(:)g(:)33 b Fb(155)150 766 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(42)150 859 y(command)c(substitution)21 b Fc(:)13 +b Fb(42)150 855 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(34)150 947 y(command)26 +(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(34)150 943 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 1036 y(commands,)h(comp)r(ound)c Fc(:)13 +b Fb(10)150 1031 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 1125 y(commands,)26 +(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1120 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 1214 y(commands,)h(grouping)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g +b Fb(12)150 1208 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 1302 y(commands,)d(lists)10 +g(:)g(:)g(:)29 b Fb(17)150 1296 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(10)150 1391 y(commands,)i(lo)r(oping)e Fc(:)13 b(:)g(:)g(:)g(:)h +b Fb(10)150 1385 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(11)150 1480 y(commands,)26 +g(:)g(:)g(:)g(:)g(:)37 b Fb(11)150 1473 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 1569 y(commands,)c(shell)c Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:) +b Fb(10)150 1561 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 1657 y(commands,)26 +(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(9)150 1649 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 1746 y(commen)n(ts,)26 b(shell)13 b Fc(:)i(:)e(:)g(:)g(:)g +b Fb(9)150 1738 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 -1835 y(Compatibilit)n(y)f(Lev)n(el)10 b Fc(:)j(:)g(:)g(:)g(:)g(:)h(:)f +1826 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(110)150 1924 y(Compatibilit)n(y)i(Mo)r(de)22 +g(:)g(:)25 b Fb(112)150 1914 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(110)150 -2013 y(completion)27 b(builtins)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(112)150 +2003 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(146)150 2101 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(158)150 2190 y(con)n(trol)26 b(op)r(erator)8 b Fc(:)15 +g(:)g(:)36 b Fb(149)150 2091 y(conditional)27 b(arithmetic)f(op)r +(erator)7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g +(:)g(:)g(:)h(:)21 b Fb(99)150 2179 y(con\014guration)h +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(161)150 2268 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 2277 y(copro)r(cess)18 b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g +b Fb(3)150 2355 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 2553 y Fs(D)150 2672 y Fb(directory)26 b(stac)n(k)9 +Fb(18)146 2621 y Fs(D)150 2739 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(102)146 2948 y Fs(E)150 3069 y Fb(editing)i(command)g(lines)17 +b Fb(103)146 3005 y Fs(E)150 3124 y Fb(editing)i(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(118)150 3158 y(en)n(vironmen)n(t)18 +f(:)g(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(121)150 3213 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(44)150 3247 y(ev)l(aluation,)26 b(arithmetic)12 +f(:)32 b Fb(44)150 3301 y(ev)l(aluation,)26 b(arithmetic)12 b Fc(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:) -g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(98)150 3335 +g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)26 b Fb(99)150 3389 y(ev)n(en)n(t)f(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(155)150 3424 y(execution)26 b(en)n(vironmen)n(t)17 +g(:)h(:)34 b Fb(158)150 3478 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(43)150 3513 +(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)31 b Fb(43)150 3566 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(44)150 3602 y(expansion)9 +(:)f(:)g(:)g(:)g(:)g(:)g(:)22 b Fb(3,)k(45)150 3654 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 3691 y(expansion,)i(arithmetic)18 +g(:)g(:)g(:)g(:)24 b Fb(24)150 3743 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(34)150 3779 +g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(34)150 3831 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(24)150 3868 y(expansion,)c(\014lename)18 +f(:)g(:)g(:)30 b Fb(24)150 3919 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(35)150 -3957 y(expansion,)26 b(parameter)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g +(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(36)150 +4008 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(26)150 4046 y(expansion,)26 b(pathname)7 +g(:)34 b Fb(26)150 4096 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(35)150 -4134 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(:)22 b Fb(36)150 +4184 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(25)150 4223 y(expressions,)f(arithmetic)13 +h(:)f(:)g(:)g(:)g(:)28 b Fb(25)150 4272 y(expressions,)f(arithmetic)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(:)h(:)f(:)27 b Fb(98)150 4310 y(expressions,)g +f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)27 b Fb(99)150 4360 y(expressions,)g (conditional)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:) -g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(96)2021 +g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)32 b Fb(97)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 @@ -22453,40 +22688,40 @@ 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(:)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(35)2025 680 y(foreground)9 +g(:)g(:)h(:)f(:)g(:)g(:)26 b Fb(36)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(113)2025 767 y(functions,)i(shell)9 b +h(:)f(:)24 b Fb(116)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(152)2025 1247 y(history)25 b(ev)n(en)n(ts)8 b Fc(:)13 +b Fb(155)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(155)2025 1335 y(history)i(expansion)14 b Fc(:)g(:)f(:)g(:)g(:)h(:) +b Fb(158)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(154)2025 1424 y(history)c(list)9 +(:)g(:)g(:)g(:)h(:)f(:)29 b Fb(157)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(152)2025 1511 y(History)-6 b(,)25 b(ho)n(w)h(to)g(use) +g(:)g(:)24 b Fb(155)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(151)2021 +(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(154)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(120)2025 2080 y(installation)21 +f(:)g(:)g(:)g(:)32 b Fb(123)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(158)2025 2168 y(in)n(teraction,)26 b(readline)7 +g(:)34 b Fb(161)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(117)2025 +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)22 b Fb(120)2025 2257 y(in)n(teractiv)n(e)k(shell)20 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(:)34 b Fb(93,)27 b(94)2025 2346 y(in)n(ternationalization)22 +h(:)f(:)g(:)34 b Fb(94,)27 b(95)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 @@ -22497,29 +22732,29 @@ Fs(J)2025 2824 y Fb(job)23 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)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(113)2021 +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 b Fb(3,)c(116)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(119)2025 3390 y(killing)k(text)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g +b Fb(122)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(119)2021 3661 y Fs(L)2025 3782 y Fb(lo)r(calization)i +Fb(122)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)6 b Fc(:)15 b(:)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(:)21 b Fb(93)2021 4140 y Fs(M)2025 4260 +g(:)g(:)g(:)g(:)21 b Fb(94)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(36)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: 190 196 -TeXDict begin 190 195 bop 150 -116 a Fu(App)s(endix)29 -b(D:)i(Indexes)2623 b(190)146 294 y Fs(N)150 410 y Fb(name)19 +%%Page: 193 199 +TeXDict begin 193 198 bop 150 -116 a Fu(App)s(endix)29 +b(D:)i(Indexes)2623 b(193)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 @@ -22528,124 +22763,129 @@ y(nativ)n(e)25 b(languages)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)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(118)146 826 y Fs(O)150 942 y Fb(op)r(erator,)g(shell)c +b Fb(121)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 1184 y Fs(P)150 1300 y Fb(parameter)26 +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(26)150 1388 y(parameters)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g +b Fb(26)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(21)150 -1475 y(parameters,)27 b(p)r(ositional)7 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g +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 1562 y(parameters,)27 b(sp)r(ecial)7 +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 1649 y(pathname)k(expansion)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g +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(35)150 1736 y(pattern)25 b(matc)n(hing)c +h(:)f(:)g(:)32 b Fb(36)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(36)150 1824 y(pip)r(eline)10 b Fc(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g +b Fb(36)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 1911 y(POSIX)e Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:) +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 1998 y(POSIX)25 b(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(106)150 2085 -y(pro)r(cess)e(group)15 b Fc(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:) +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(:)h(:)f(:)30 b Fb(3)150 2172 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 2259 y(pro)r(cess)h(substitution)11 b Fc(:)h(:)i(:)f(:)g(:)g +(:)g(:)g(:)g(:)g(:)25 b Fb(107)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(108)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(:)25 b Fb(34)150 2347 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(143)150 2434 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(104)146 2676 y Fs(Q)150 2792 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 2879 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 3121 y Fs(R)150 3237 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(116)150 3325 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(38)150 -3412 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(3)150 3499 -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 3586 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(105)150 3673 y(return)e(status)10 b Fc(:)k(:)f(:)g(:)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(35)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(146)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(105)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(:)h(:)f(:)g(:)g(:)g(:)25 b Fb(4)2021 -294 y Fs(S)2025 427 y Fb(shell)h(arithmetic)17 b Fc(:)d(:)f(:)g(:)g(:)g -(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:) -f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 b Fb(98)2025 520 -y(shell)26 b(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 613 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(46)2025 706 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(21)2025 798 y(shell,)k(in)n(teractiv)n(e)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(:)34 -b Fb(94)2025 891 y(signal)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g +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(119)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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)28 -b Fb(4)2025 984 y(signal)f(handling)6 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g +g(:)g(:)h(:)f(:)g(:)g(:)g(:)27 b Fb(38)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(3)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(107)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)17 +b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:) +g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)31 +b Fb(99)2025 508 y(shell)26 b(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(:)21 b Fb(45)2025 1077 -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(77)2025 1170 y(startup)f(\014les)10 -b Fc(:)k(:)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(:)25 b Fb(93)2025 1262 y(string)h(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(7)2025 1350 y(susp)r(ending)i(jobs)10 b Fc(:)k(:)f(:)g(:)h(:)f(:)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(:)25 b Fb(113)2021 1710 y Fs(T)2025 -1843 y Fb(tilde)h(expansion)7 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g +g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(46)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(21)2025 777 y(shell,)k(in)n +(teractiv)n(e)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(:)34 b Fb(95)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(45)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(:)22 b Fb(25)2025 1936 y(tok)n(en)17 -b Fc(:)12 b(:)i(:)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(4,)26 b(78)2025 +1136 y(startup)f(\014les)10 b Fc(:)k(:)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(:)25 b Fb(94)2025 1226 +y(string)h(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(:)g(:)g(:)h(:)f(:)g(:)32 b Fb(4)2025 2023 -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 2384 y Fs(V)2025 2517 y Fb(v)l(ariable,)26 -b(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(21)2025 2604 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(121)2021 2965 y Fs(W)2025 3098 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 +f(:)g(:)g(:)g(:)23 b Fb(7)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(116)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(25)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)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g +(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)27 +b Fb(99)2021 2626 y Fs(V)2025 2750 y Fb(v)l(ariable,)f(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(21)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(124)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(:) -g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)25 b Fb(4)2025 3185 -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(35)2021 3545 y Fs(Y)2025 -3673 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(119)p eop end +24 b Fb(35)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(122)p eop end %%Trailer userdict /end-hook known{end-hook}if diff --git a/doc/builtins.ps b/doc/builtins.ps index 5bec0dcdc..86cff54dd 100644 --- a/doc/builtins.ps +++ b/doc/builtins.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 -%%CreationDate: Fri Dec 2 17:01:16 2022 +%%CreationDate: Tue Apr 18 10:26:00 2023 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic @@ -377,7 +377,7 @@ G(ymap)-.2 E F0(])A F3 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F3 -.37(re)C (re)144 726 S(adline).18 E F0 1.471(initialization \214le such as)3.971 F F3(.inputr)4.201 E(c)-.37 E F0 3.971(,b).31 G 1.472 (ut each binding or command must be passed as a)-4.171 F(GNU Bash 5.2)72 -768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(1)190.545 E 0 Cg EP +768 Q(2023 January 27)141.79 E(1)195.95 E 0 Cg EP %%Page: 2 2 %%BeginPageSetup BP @@ -496,8 +496,8 @@ ent e)144 679.2 R -.15(xe)-.15 G 1.328(cution call stack.).15 F .001 (alue is 0 unless the shell is not e)-.25 F -.15(xe)-.15 G .52 (cuting a subroutine call or).15 F F2 -.2(ex)3.02 G(pr).2 E F0 .52 (does not corre-)3.02 F(spond to a v)144 715.2 Q -(alid position in the call stack.)-.25 E(GNU Bash 5.2)72 768 Q(2021 No) -136.385 E -.15(ve)-.15 G(mber 22).15 E(2)190.545 E 0 Cg EP +(alid position in the call stack.)-.25 E(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(2)195.95 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP @@ -505,7 +505,7 @@ BP /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(cd)108 84 Q F0([)2.5 -E F1A F0(|[)A F1A F0([)2.5 E F1A F0(]] [\255@]] [)A/F2 +E F1A F0(|[)A F1A F0([)2.5 E F1A F0(]]] [\255@] [)A/F2 10/Times-Italic@0 SF(dir)A F0(])A .322(Change the current directory to) 144 96 R F2(dir)2.822 E F0 5.322(.i)C(f)-5.322 E F2(dir)2.822 E F0 .321 (is not supplied, the v)2.822 F .321(alue of the)-.25 F/F3 9 @@ -592,2850 +592,2887 @@ F F1144 400.8 Q F0 .249(option produces a more v)2.749 F .249 (xit status is 127.)-.15 F 1.599(Otherwise, the e)6.599 F 1.599 (xit status of the)-.15 F F1(command)4.099 E F0 -.2(bu)144 436.8 S (iltin is the e).2 E(xit status of)-.15 E F2(command)2.7 E F0(.).77 E F1 -(compgen)108 453.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(wor)-2.5 E(d) --.37 E F0(])A .013(Generate possible completion matches for)144 465.6 R -F2(wor)2.513 E(d)-.37 E F0 .013(according to the)2.513 F F2(option)2.513 -E F0 .013(s, which may be an)B 2.512(yo)-.15 G(ption)-2.512 E .981 -(accepted by the)144 477.6 R F1(complete)3.481 E F0 -.2(bu)3.481 G .981 -(iltin with the e).2 F .981(xception of)-.15 F F13.481 E F0(and) -3.481 E F13.481 E F0 3.481(,a)C .982(nd write the matches to the) --3.481 F .131(standard output.)144 489.6 R .131(When using the)5.131 F -F12.631 E F0(or)2.631 E F12.631 E F0 .131(options, the v) -2.631 F .13(arious shell v)-.25 F .13(ariables set by the program-)-.25 -F(mable completion f)144 501.6 Q(acilities, while a)-.1 E -.25(va)-.2 G -(ilable, will not ha).25 E .3 -.15(ve u)-.2 H(seful v).15 E(alues.)-.25 -E .352(The matches will be generated in the same w)144 525.6 R .352 +(compgen)108 453.6 Q F0([)2.5 E F1A F2(varname)2.5 E F0 2.5(][)C +F2(option)-2.5 E F0 2.5(][)C F2(wor)-2.5 E(d)-.37 E F0(])A .013 +(Generate possible completion matches for)144 465.6 R F2(wor)2.513 E(d) +-.37 E F0 .013(according to the)2.513 F F2(option)2.513 E F0 .013 +(s, which may be an)B 2.512(yo)-.15 G(ption)-2.512 E 1.216 +(accepted by the)144 477.6 R F1(complete)3.716 E F0 -.2(bu)3.716 G 1.216 +(iltin with the e).2 F 1.216(xceptions of)-.15 F F13.716 E F0(,)A +F13.717 E F0(,)A F13.717 E F0(,)A F13.717 E F0 3.717 +(,a)C(nd)-3.717 E F13.717 E F0 3.717(,a)C 1.217(nd write the) +-3.717 F .505(matches to the standard output.)144 489.6 R .505(If the) +5.505 F F13.005 E F0 .505(option is supplied,)3.005 F F1(compgen) +3.004 E F0 .504(stores the generated com-)3.004 F 1.086 +(pletions into the inde)144 501.6 R -.15(xe)-.15 G 3.586(da).15 G 1.086 +(rray v)-3.586 F(ariable)-.25 E F2(varname)3.586 E F0 1.087 +(instead of writing them to the standard output.)3.586 F .195 +(When using the)144 513.6 R F12.695 E F0(or)2.695 E F12.695 +E F0 .195(options, the v)2.695 F .195(arious shell v)-.25 F .194 +(ariables set by the programmable completion)-.25 F -.1(fa)144 525.6 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 549.6 R .352 (ay as if the programmable completion code had gen-)-.1 F .02(erated th\ em directly from a completion speci\214cation with the same \215ags.)144 -537.6 R(If)5.02 E F2(wor)2.52 E(d)-.37 E F0 .02(is speci\214ed, only) -2.52 F(those completions matching)144 549.6 Q F2(wor)2.5 E(d)-.37 E F0 -(will be displayed.)2.5 E(The return v)144 573.6 Q +561.6 R(If)5.02 E F2(wor)2.52 E(d)-.37 E F0 .02(is speci\214ed, only) +2.52 F(those completions matching)144 573.6 Q F2(wor)2.5 E(d)-.37 E F0 +(will be displayed.)2.5 E(The return v)144 597.6 Q (alue is true unless an in)-.25 E -.25(va)-.4 G (lid option is supplied, or no matches were generated.).25 E F1 -(complete)108 590.4 Q F0([)2.5 E F1(\255abcdefgjksuv)A F0 2.5(][)C F1 +(complete)108 614.4 Q F0([)2.5 E F1(\255abcdefgjksuv)A F0 2.5(][)C F1 -2.5 E F2(comp-option)2.5 E F0 2.5(][)C F1(\255DEI)-2.5 E F0 2.5 -(][)C F1-2.5 E F2(action)2.5 E F0 2.5(][)C F1-2.5 E F2 +(][)C F1-2.5 E F2(action)2.5 E F0(])A([)144 626.4 Q F1A F2 (globpat)2.5 E F0 2.5(][)C F1-2.5 E F2(wor)2.5 E(dlist)-.37 E F0 -(])A([)144 602.4 Q F1A F2(function)2.5 E F0 2.5(][)C F1-2.5 -E F2(command)2.5 E F0 2.5(][)C F1-2.5 E F2(\214lterpat)2.5 E F0 +2.5(][)C F1-2.5 E F2(function)2.5 E F0 2.5(][)C F1-2.5 E F2 +(command)2.5 E F0(])A([)144 638.4 Q F1A F2(\214lterpat)2.5 E F0 2.5(][)C F1-2.5 E F2(pr)2.5 E(e\214x)-.37 E F0 2.5(][)C F1 -2.5 E F2(suf)2.5 E<8c78>-.18 E F0(])A F2(name)2.5 E F0([)2.5 E F2 -(name ...)A F0(])A F1(complete \255pr)108 614.4 Q F0([)2.5 E F1(\255DEI) -A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E .633(Specify ho)144 626.4 R +(name ...)A F0(])A F1(complete \255pr)108 650.4 Q F0([)2.5 E F1(\255DEI) +A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E .633(Specify ho)144 662.4 R 3.133(wa)-.25 G -.18(rg)-3.133 G .633(uments to each).18 F F2(name)3.133 E F0 .633(should be completed.)3.133 F .634(If the)5.634 F F13.134 E F0 .634(option is supplied, or if no)3.134 F .14 -(options are supplied, e)144 638.4 R .139 +(options are supplied, e)144 674.4 R .139 (xisting completion speci\214cations are printed in a w)-.15 F .139 (ay that allo)-.1 F .139(ws them to be)-.25 F .31(reused as input.)144 -650.4 R(The)5.31 E F12.81 E F0 .31(option remo)2.81 F -.15(ve)-.15 +686.4 R(The)5.31 E F12.81 E F0 .31(option remo)2.81 F -.15(ve)-.15 G 2.81(sac).15 G .31(ompletion speci\214cation for each)-2.81 F F2(name) 2.81 E F0 2.81(,o)C 1.11 -.4(r, i)-2.81 H 2.81(fn).4 G(o)-2.81 E F2 (name)2.81 E F0(s)A 1.208 -(are supplied, all completion speci\214cations.)144 662.4 R(The)6.208 E +(are supplied, all completion speci\214cations.)144 698.4 R(The)6.208 E F13.708 E F0 1.207(option indicates that other supplied options) -3.707 F .5(and actions should apply to the `)144 674.4 R(`def)-.74 E +3.707 F .5(and actions should apply to the `)144 710.4 R(`def)-.74 E (ault')-.1 E 3('c)-.74 G .5 (ommand completion; that is, completion attempted on)-3 F 3.455(ac)144 -686.4 S .955(ommand for which no completion has pre)-3.455 F .955 +722.4 S .955(ommand for which no completion has pre)-3.455 F .955 (viously been de\214ned.)-.25 F(The)5.955 E F13.455 E F0 .955 -(option indicates that)3.455 F .876 -(other supplied options and actions should apply to `)144 698.4 R -(`empty')-.74 E 3.376('c)-.74 G .876(ommand completion; that is, com-) --3.376 F .448(pletion attempted on a blank line.)144 710.4 R(The)5.447 E -F12.947 E F0 .447 -(option indicates that other supplied options and actions)2.947 F 1.149 -(should apply to completion on the initial non-assignment w)144 722.4 R -1.15(ord on the line, or after a command)-.1 F(GNU Bash 5.2)72 768 Q -(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(3)190.545 E 0 Cg EP +(option indicates that)3.455 F(GNU Bash 5.2)72 768 Q(2023 January 27) +141.79 E(3)195.95 E 0 Cg EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E .431(delimiter such as)144 84 R/F1 10 -/Times-Bold@0 SF(;)2.931 E F0(or)2.931 E F1(|)2.931 E F0 2.931(,w)C .431 -(hich is usually command name completion.)-2.931 F .43 -(If multiple options are sup-)5.43 F .707(plied, the)144 96 R F1 +E(UIL)-.1 E(TINS\(1\))-.92 E .876 +(other supplied options and actions should apply to `)144 84 R(`empty') +-.74 E 3.376('c)-.74 G .876(ommand completion; that is, com-)-3.376 F +.448(pletion attempted on a blank line.)144 96 R(The)5.447 E/F1 10 +/Times-Bold@0 SF2.947 E F0 .447 +(option indicates that other supplied options and actions)2.947 F .123 +(should apply to completion on the initial non-assignment w)144 108 R +.123(ord on the line, or after a command de-)-.1 F 1.021 +(limiter such as)144 120 R F1(;)3.521 E F0(or)3.521 E F1(|)3.521 E F0 +3.521(,w)C 1.021(hich is usually command name completion.)-3.521 F 1.02 +(If multiple options are sup-)6.02 F .707(plied, the)144 132 R F1 3.207 E F0 .707(option tak)3.207 F .707(es precedence o)-.1 F -.15(ve) -.15 G(r).15 E F13.208 E F0 3.208(,a)C .708(nd both tak)-3.208 F 3.208(ep)-.1 G .708(recedence o)-3.208 F -.15(ve)-.15 G(r).15 E F1 3.208 E F0 5.708(.I)C 3.208(fa)-5.708 G 1.008 -.15(ny o)-3.208 H(f).15 E -F13.208 E F0(,)A F1144 108 Q F0 2.604(,o)C(r)-2.604 E F1 +F13.208 E F0(,)A F1144 144 Q F0 2.604(,o)C(r)-2.604 E F1 2.604 E F0 .103(are supplied, an)2.603 F 2.603(yo)-.15 G(ther) -2.603 E/F2 10/Times-Italic@0 SF(name)2.603 E F0(ar)2.603 E .103 (guments are ignored; these completions only apply to the)-.18 F -(case speci\214ed by the option.)144 120 Q .152 +(case speci\214ed by the option.)144 156 Q .152 (The process of applying these completion speci\214cations when w)144 -144 R .153(ord completion is attempted is de-)-.1 F(scribed in)144 156 Q -F2(bash\(1\))2.5 E F0(.)A .556(Other options, if speci\214ed, ha)144 180 +180 R .153(ord completion is attempted is de-)-.1 F(scribed in)144 192 Q +F2(bash\(1\))2.5 E F0(.)A .556(Other options, if speci\214ed, ha)144 216 R .856 -.15(ve t)-.2 H .555(he follo).15 F .555(wing meanings.)-.25 F .555(The ar)5.555 F .555(guments to the)-.18 F F13.055 E F0(,)A F1 3.055 E F0 3.055(,a)C(nd)-3.055 E F13.055 E F0 .722 -(options \(and, if necessary)144 192 R 3.222(,t)-.65 G(he)-3.222 E F1 +(options \(and, if necessary)144 228 R 3.222(,t)-.65 G(he)-3.222 E F1 3.222 E F0(and)3.222 E F13.222 E F0 .723 (options\) should be quoted to protect them from e)3.222 F(xpan-)-.15 E -(sion before the)144 204 Q F1(complete)2.5 E F0 -.2(bu)2.5 G -(iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E F1144 216 Q F2 -(comp-option)2.5 E F0(The)184 228 Q F2(comp-option)2.791 E F0 .291 +(sion before the)144 240 Q F1(complete)2.5 E F0 -.2(bu)2.5 G +(iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E F1144 252 Q F2 +(comp-option)2.5 E F0(The)184 264 Q F2(comp-option)2.791 E F0 .291 (controls se)2.791 F -.15(ve)-.25 G .291(ral aspects of the compspec') .15 F 2.791(sb)-.55 G(eha)-2.791 E .291(vior be)-.2 F .291 -(yond the simple)-.15 F(generation of completions.)184 240 Q F2 -(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 252 Q F0 -.281(Perform the rest of the def)224 264 R(ault)-.1 E F1(bash)2.781 E F0 -.281(completions if the compspec generates no)2.781 F(matches.)224 276 Q -F1(default)184 288 Q F0 2.876(Use readline')224 288 R 5.376(sd)-.55 G +(yond the simple)-.15 F(generation of completions.)184 276 Q F2 +(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 288 Q F0 +.281(Perform the rest of the def)224 300 R(ault)-.1 E F1(bash)2.781 E F0 +.281(completions if the compspec generates no)2.781 F(matches.)224 312 Q +F1(default)184 324 Q F0 2.876(Use readline')224 324 R 5.376(sd)-.55 G (ef)-5.376 E 2.875 (ault \214lename completion if the compspec generates no)-.1 F(matches.) -224 300 Q F1(dir)184 312 Q(names)-.15 E F0(Perform directory name compl\ -etion if the compspec generates no matches.)224 324 Q F1(\214lenames)184 -336 Q F0 -.7(Te)224 348 S .137(ll readline that the compspec generates \ +224 336 Q F1(dir)184 348 Q(names)-.15 E F0(Perform directory name compl\ +etion if the compspec generates no matches.)224 360 Q F1(\214lenames)184 +372 Q F0 -.7(Te)224 384 S .137(ll readline that the compspec generates \ \214lenames, so it can perform an).7 F 2.637<798c>-.15 G(le-)-2.637 E -.134(name\255speci\214c processing \(lik)224 360 R 2.634(ea)-.1 G .134 +.134(name\255speci\214c processing \(lik)224 396 R 2.634(ea)-.1 G .134 (dding a slash to directory names, quoting spe-)-2.634 F .45 -(cial characters, or suppressing trailing spaces\).)224 372 R .45 -(Intended to be used with shell)5.45 F(functions.)224 384 Q F1(noquote) -184 396 Q F0 -.7(Te)224 396 S .814 +(cial characters, or suppressing trailing spaces\).)224 408 R .45 +(Intended to be used with shell)5.45 F(functions.)224 420 Q F1(noquote) +184 432 Q F0 -.7(Te)224 432 S .814 (ll readline not to quote the completed w).7 F .814(ords if the)-.1 F 3.314(ya)-.15 G .814(re \214lenames \(quoting)-3.314 F -(\214lenames is the def)224 408 Q(ault\).)-.1 E F1(nosort)184 420 Q F0 --.7(Te)224 420 S(ll readline not to sort the list of possible completio\ -ns alphabetically).7 E(.)-.65 E F1(nospace)184 432 Q F0 -.7(Te)224 432 S +(\214lenames is the def)224 444 Q(ault\).)-.1 E F1(nosort)184 456 Q F0 +-.7(Te)224 456 S(ll readline not to sort the list of possible completio\ +ns alphabetically).7 E(.)-.65 E F1(nospace)184 468 Q F0 -.7(Te)224 468 S .22(ll readline not to append a space \(the def).7 F .22(ault\) to w)-.1 -F .22(ords completed at the end)-.1 F(of the line.)224 444 Q F1 -(plusdirs)184 456 Q F0 1.985(After an)224 456 R 4.485(ym)-.15 G 1.985 +F .22(ords completed at the end)-.1 F(of the line.)224 480 Q F1 +(plusdirs)184 492 Q F0 1.985(After an)224 492 R 4.485(ym)-.15 G 1.985 (atches de\214ned by the compspec are generated, directory name)-4.485 F -.583(completion is attempted and an)224 468 R 3.084(ym)-.15 G .584 -(atches are added to the results of the other)-3.084 F(actions.)224 480 -Q F1144 492 Q F2(action)2.5 E F0(The)184 504 Q F2(action)2.5 E F0 +.583(completion is attempted and an)224 504 R 3.084(ym)-.15 G .584 +(atches are added to the results of the other)-3.084 F(actions.)224 516 +Q F1144 528 Q F2(action)2.5 E F0(The)184 540 Q F2(action)2.5 E F0 (may be one of the follo)2.5 E (wing to generate a list of possible completions:)-.25 E F1(alias)184 -516 Q F0(Alias names.)224 516 Q(May also be speci\214ed as)5 E F1 -2.5 E F0(.)A F1(arrayv)184 528 Q(ar)-.1 E F0(Array v)224 540 Q -(ariable names.)-.25 E F1(binding)184 552 Q(Readline)224 552 Q F0 -.1 -(ke)2.5 G 2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 564 S(iltin) -.2 E F0(Names of shell b)224 564 Q(uiltin commands.)-.2 E -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(command)184 576 -Q F0(Command names.)224 588 Q(May also be speci\214ed as)5 E F12.5 -E F0(.)A F1(dir)184 600 Q(ectory)-.18 E F0(Directory names.)224 612 Q -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(disabled)184 624 -Q F0(Names of disabled shell b)224 636 Q(uiltins.)-.2 E F1(enabled)184 -648 Q F0(Names of enabled shell b)224 648 Q(uiltins.)-.2 E F1(export)184 -660 Q F0(Names of e)224 660 Q(xported shell v)-.15 E 2.5(ariables. May) +552 Q F0(Alias names.)224 552 Q(May also be speci\214ed as)5 E F1 +2.5 E F0(.)A F1(arrayv)184 564 Q(ar)-.1 E F0(Array v)224 576 Q +(ariable names.)-.25 E F1(binding)184 588 Q(Readline)224 588 Q F0 -.1 +(ke)2.5 G 2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 600 S(iltin) +.2 E F0(Names of shell b)224 600 Q(uiltin commands.)-.2 E +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(command)184 612 +Q F0(Command names.)224 624 Q(May also be speci\214ed as)5 E F12.5 +E F0(.)A F1(dir)184 636 Q(ectory)-.18 E F0(Directory names.)224 648 Q +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(disabled)184 660 +Q F0(Names of disabled shell b)224 672 Q(uiltins.)-.2 E F1(enabled)184 +684 Q F0(Names of enabled shell b)224 684 Q(uiltins.)-.2 E F1(export)184 +696 Q F0(Names of e)224 696 Q(xported shell v)-.15 E 2.5(ariables. May) -.25 F(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1(\214le)184 -672 Q F0(File names.)224 672 Q(May also be speci\214ed as)5 E F1 -2.5 E F0(.)A F1(function)184 684 Q F0(Names of shell functions.)224 696 -Q F1(gr)184 708 Q(oup)-.18 E F0(Group names.)224 708 Q -(May also be speci\214ed as)5 E F12.5 E F0(.)A(GNU Bash 5.2)72 768 -Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(4)190.545 E 0 Cg EP +708 Q F0(File names.)224 708 Q(May also be speci\214ed as)5 E F1 +2.5 E F0(.)A(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(4)195.95 E 0 +Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(helptopic)184 84 Q F0 -(Help topics as accepted by the)224 96 Q F1(help)2.5 E F0 -.2(bu)2.5 G -(iltin.).2 E F1(hostname)184 108 Q F0(Hostnames, as tak)224 120 Q -(en from the \214le speci\214ed by the)-.1 E/F2 9/Times-Bold@0 SF -(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 132 Q F0 -(Job names, if job control is acti)224 132 Q -.15(ve)-.25 G 5(.M).15 G -(ay also be speci\214ed as)-5 E F12.5 E F0(.)A F1 -.1(ke)184 144 S -(yw).1 E(ord)-.1 E F0(Shell reserv)224 156 Q(ed w)-.15 E 2.5(ords. May) --.1 F(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1(running)184 -168 Q F0(Names of running jobs, if job control is acti)224 168 Q -.15 -(ve)-.25 G(.).15 E F1(ser)184 180 Q(vice)-.1 E F0(Service names.)224 180 -Q(May also be speci\214ed as)5 E F12.5 E F0(.)A F1(setopt)184 192 -Q F0 -1.11(Va)224 192 S(lid ar)1.11 E(guments for the)-.18 E F12.5 -E F0(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1 -(shopt)184 204 Q F0(Shell option names as accepted by the)224 204 Q F1 -(shopt)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1(signal)184 216 Q F0 -(Signal names.)224 216 Q F1(stopped)184 228 Q F0 -(Names of stopped jobs, if job control is acti)224 228 Q -.15(ve)-.25 G -(.).15 E F1(user)184 240 Q F0(User names.)224 240 Q -(May also be speci\214ed as)5 E F12.5 E F0(.)A F1 -.1(va)184 252 S -(riable).1 E F0(Names of all shell v)224 252 Q 2.5(ariables. May)-.25 F -(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1144 264 Q/F3 -10/Times-Italic@0 SF(command)2.5 E(command)184 276 Q F0 1.056(is e)3.556 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(function)184 84 Q F0 +(Names of shell functions.)224 96 Q F1(gr)184 108 Q(oup)-.18 E F0 +(Group names.)224 108 Q(May also be speci\214ed as)5 E F12.5 E F0 +(.)A F1(helptopic)184 120 Q F0(Help topics as accepted by the)224 132 Q +F1(help)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1(hostname)184 144 Q F0 +(Hostnames, as tak)224 156 Q(en from the \214le speci\214ed by the)-.1 E +/F2 9/Times-Bold@0 SF(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E +F1(job)184 168 Q F0(Job names, if job control is acti)224 168 Q -.15(ve) +-.25 G 5(.M).15 G(ay also be speci\214ed as)-5 E F12.5 E F0(.)A F1 +-.1(ke)184 180 S(yw).1 E(ord)-.1 E F0(Shell reserv)224 192 Q(ed w)-.15 E +2.5(ords. May)-.1 F(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1 +(running)184 204 Q F0(Names of running jobs, if job control is acti)224 +204 Q -.15(ve)-.25 G(.).15 E F1(ser)184 216 Q(vice)-.1 E F0 +(Service names.)224 216 Q(May also be speci\214ed as)5 E F12.5 E +F0(.)A F1(setopt)184 228 Q F0 -1.11(Va)224 228 S(lid ar)1.11 E +(guments for the)-.18 E F12.5 E F0(option to the)2.5 E F1(set)2.5 +E F0 -.2(bu)2.5 G(iltin.).2 E F1(shopt)184 240 Q F0 +(Shell option names as accepted by the)224 240 Q F1(shopt)2.5 E F0 -.2 +(bu)2.5 G(iltin.).2 E F1(signal)184 252 Q F0(Signal names.)224 252 Q F1 +(stopped)184 264 Q F0(Names of stopped jobs, if job control is acti)224 +264 Q -.15(ve)-.25 G(.).15 E F1(user)184 276 Q F0(User names.)224 276 Q +(May also be speci\214ed as)5 E F12.5 E F0(.)A F1 -.1(va)184 288 S +(riable).1 E F0(Names of all shell v)224 288 Q 2.5(ariables. May)-.25 F +(also be speci\214ed as)2.5 E F12.5 E F0(.)A F1144 300 Q/F3 +10/Times-Italic@0 SF(command)2.5 E(command)184 312 Q F0 1.056(is e)3.556 F -.15(xe)-.15 G 1.056(cuted in a subshell en).15 F 1.056 (vironment, and its output is used as the possible)-.4 F 2.5 -(completions. Ar)184 288 R(guments are passed as with the)-.18 E F1 -2.5 E F0(option.)2.5 E F1144 300 Q F3(function)2.5 E F0 .113 -(The shell function)184 312 R F3(function)2.614 E F0 .114(is e)2.614 F +(completions. Ar)184 324 R(guments are passed as with the)-.18 E F1 +2.5 E F0(option.)2.5 E F1144 336 Q F3(function)2.5 E F0 .113 +(The shell function)184 348 R F3(function)2.614 E F0 .114(is e)2.614 F -.15(xe)-.15 G .114(cuted in the current shell en).15 F 2.614 -(vironment. When)-.4 F .114(the func-)2.614 F .817(tion is e)184 324 R +(vironment. When)-.4 F .114(the func-)2.614 F .817(tion is e)184 360 R -.15(xe)-.15 G .817(cuted, the \214rst ar).15 F .817(gument \()-.18 F F1 ($1)A F0 3.316(\)i)C 3.316(st)-3.316 G .816 (he name of the command whose ar)-3.316 F(guments)-.18 E 1.407 -(are being completed, the second ar)184 336 R 1.407(gument \()-.18 F F1 +(are being completed, the second ar)184 372 R 1.407(gument \()-.18 F F1 ($2)A F0 3.907(\)i)C 3.907(st)-3.907 G 1.407(he w)-3.907 F 1.407 -(ord being completed, and the)-.1 F .104(third ar)184 348 R .104 +(ord being completed, and the)-.1 F .104(third ar)184 384 R .104 (gument \()-.18 F F1($3)A F0 2.604(\)i)C 2.604(st)-2.604 G .104(he w) -2.604 F .104(ord preceding the w)-.1 F .103 -(ord being completed on the current com-)-.1 F .101(mand line.)184 360 R +(ord being completed on the current com-)-.1 F .101(mand line.)184 396 R .101(When it \214nishes, the possible completions are retrie)5.101 F -.15(ve)-.25 G 2.602(df).15 G .102(rom the v)-2.602 F .102(alue of the) --.25 F F2(COMPREPL)184 372 Q(Y)-.828 E F0(array v)2.25 E(ariable.)-.25 E -F1144 384 Q F3(globpat)2.5 E F0 1.008(The pathname e)184 396 R +-.25 F F2(COMPREPL)184 408 Q(Y)-.828 E F0(array v)2.25 E(ariable.)-.25 E +F1144 420 Q F3(globpat)2.5 E F0 1.008(The pathname e)184 432 R 1.008(xpansion pattern)-.15 F F3(globpat)3.507 E F0 1.007(is e)3.507 F -1.007(xpanded to generate the possible comple-)-.15 F(tions.)184 408 Q -F1144 420 Q F3(pr)2.5 E(e\214x)-.37 E(pr)184 432 Q(e\214x)-.37 E +1.007(xpanded to generate the possible comple-)-.15 F(tions.)184 444 Q +F1144 456 Q F3(pr)2.5 E(e\214x)-.37 E(pr)184 468 Q(e\214x)-.37 E F0 .534(is added at the be)3.034 F .534 (ginning of each possible completion after all other options ha)-.15 F --.15(ve)-.2 G(been applied.)184 444 Q F1144 456 Q F3(suf)2.5 E -<8c78>-.18 E(suf)184 456 Q<8c78>-.18 E F0 +-.15(ve)-.2 G(been applied.)184 480 Q F1144 492 Q F3(suf)2.5 E +<8c78>-.18 E(suf)184 492 Q<8c78>-.18 E F0 (is appended to each possible completion after all other options ha)2.5 -E .3 -.15(ve b)-.2 H(een applied.).15 E F1144 468 Q F3(wor)2.5 E -(dlist)-.37 E F0(The)184 480 Q F3(wor)3.64 E(dlist)-.37 E F0 1.14 +E .3 -.15(ve b)-.2 H(een applied.).15 E F1144 504 Q F3(wor)2.5 E +(dlist)-.37 E F0(The)184 516 Q F3(wor)3.64 E(dlist)-.37 E F0 1.14 (is split using the characters in the)3.64 F F2(IFS)3.64 E F0 1.139 (special v)3.39 F 1.139(ariable as delimiters, and)-.25 F .98 -(each resultant w)184 492 R .98(ord is e)-.1 F 3.481(xpanded. Shell)-.15 +(each resultant w)184 528 R .98(ord is e)-.1 F 3.481(xpanded. Shell)-.15 F .981(quoting is honored within)3.481 F F3(wor)3.481 E(dlist)-.37 E F0 -3.481(,i)C 3.481(no)-3.481 G .981(rder to)-3.481 F(pro)184 504 Q .766 +3.481(,i)C 3.481(no)-3.481 G .981(rder to)-3.481 F(pro)184 540 Q .766 (vide a mechanism for the w)-.15 F .765 (ords to contain shell metacharacters or characters in the)-.1 F -.25 -(va)184 516 S 1.964(lue of).25 F F2(IFS)4.464 E/F4 9/Times-Roman@0 SF(.) +(va)184 552 S 1.964(lue of).25 F F2(IFS)4.464 E/F4 9/Times-Roman@0 SF(.) A F0 1.964 (The possible completions are the members of the resultant list which) -6.464 F(match the w)184 528 Q(ord being completed.)-.1 E F1144 540 -Q F3(\214lterpat)2.5 E(\214lterpat)184 552 Q F0 .456 +6.464 F(match the w)184 564 Q(ord being completed.)-.1 E F1144 576 +Q F3(\214lterpat)2.5 E(\214lterpat)184 588 Q F0 .456 (is a pattern as used for pathname e)2.956 F 2.956(xpansion. It)-.15 F .455(is applied to the list of possible)2.956 F 1.596 -(completions generated by the preceding options and ar)184 564 R 1.596 -(guments, and each completion)-.18 F(matching)184 576 Q F3(\214lterpat) +(completions generated by the preceding options and ar)184 600 R 1.596 +(guments, and each completion)-.18 F(matching)184 612 Q F3(\214lterpat) 3.205 E F0 .705(is remo)3.205 F -.15(ve)-.15 G 3.205(df).15 G .704 (rom the list.)-3.205 F 3.204(Al)5.704 G(eading)-3.204 E F1(!)3.204 E F0 (in)3.204 E F3(\214lterpat)3.204 E F0(ne)3.204 E -.05(ga)-.15 G .704 -(tes the pattern;).05 F(in this case, an)184 588 Q 2.5(yc)-.15 G +(tes the pattern;).05 F(in this case, an)184 624 Q 2.5(yc)-.15 G (ompletion not matching)-2.5 E F3(\214lterpat)2.5 E F0(is remo)2.5 E --.15(ve)-.15 G(d.).15 E .466(The return v)144 604.8 R .466 -(alue is true unless an in)-.25 F -.25(va)-.4 G .466 -(lid option is supplied, an option other than).25 F F12.967 E F0 -(or)2.967 E F12.967 E F0 .467(is sup-)2.967 F 1.362 -(plied without a)144 616.8 R F3(name)3.862 E F0(ar)3.862 E 1.361 -(gument, an attempt is made to remo)-.18 F 1.661 -.15(ve a c)-.15 H -1.361(ompletion speci\214cation for a).15 F F3(name)144 628.8 Q F0 -(for which no speci\214cation e)2.5 E -(xists, or an error occurs adding a completion speci\214cation.)-.15 E -F1(compopt)108 645.6 Q F0([)2.5 E F1A F3(option)2.5 E F0 2.5(][)C -F1(\255DEI)-2.5 E F0 2.5(][)C F1(+o)-2.5 E F3(option)2.5 E F0 2.5(][)C -F3(name)-2.5 E F0(])A .447(Modify completion options for each)144 657.6 -R F3(name)2.947 E F0 .447(according to the)2.947 F F3(option)2.947 E F0 -.447(s, or for the currently-e)B -.15(xe)-.15 G(cuting).15 E .726 -(completion if no)144 669.6 R F3(name)3.226 E F0 3.226(sa)C .726 -(re supplied.)-3.226 F .725(If no)5.725 F F3(option)3.225 E F0 3.225(sa) -C .725(re gi)-3.225 F -.15(ve)-.25 G .725 -(n, display the completion options for).15 F(each)144 681.6 Q F3(name) -3.223 E F0 .723(or the current completion.)3.223 F .724(The possible v) -5.724 F .724(alues of)-.25 F F3(option)3.224 E F0 .724(are those v)3.224 -F .724(alid for the)-.25 F F1(com-)3.224 E(plete)144 693.6 Q F0 -.2(bu) -2.678 G .178(iltin described abo).2 F -.15(ve)-.15 G 5.178(.T).15 G(he) --5.178 E F12.678 E F0 .178 -(option indicates that other supplied options should apply to)2.678 F -1.227(the `)144 705.6 R(`def)-.74 E(ault')-.1 E 3.727('c)-.74 G 1.228(o\ -mmand completion; that is, completion attempted on a command for which \ -no)-3.727 F 2.039(completion has pre)144 717.6 R 2.039 -(viously been de\214ned.)-.25 F(The)7.038 E F14.538 E F0 2.038 -(option indicates that other supplied options)4.538 F 1.538 -(should apply to `)144 729.6 R(`empty')-.74 E 4.038('c)-.74 G 1.539 -(ommand completion; that is, completion attempted on a blank line.) --4.038 F(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22) -.15 E(5)190.545 E 0 Cg EP +-.15(ve)-.15 G(d.).15 E .46(The return v)144 640.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 F12.961 E F0 +(,)A F12.961 E F0(,)A F12.961 E F0(,)A F12.961 E F0(,) +A(or)144 652.8 Q F12.986 E F0 .486(is supplied without a)2.986 F +F3(name)2.986 E F0(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 .163 +(tion for a)144 664.8 R F3(name)2.663 E F0 .164 +(for which no speci\214cation e)2.663 F .164 +(xists, or an error occurs adding a completion speci\214ca-)-.15 F +(tion.)144 676.8 Q F1(compopt)108 693.6 Q F0([)2.5 E F1A F3 +(option)2.5 E F0 2.5(][)C F1(\255DEI)-2.5 E F0 2.5(][)C F1(+o)-2.5 E F3 +(option)2.5 E F0 2.5(][)C F3(name)-2.5 E F0(])A .447 +(Modify completion options for each)144 705.6 R F3(name)2.947 E F0 .447 +(according to the)2.947 F F3(option)2.947 E F0 .447 +(s, or for the currently-e)B -.15(xe)-.15 G(cuting).15 E .725 +(completion if no)144 717.6 R F3(name)3.225 E F0 3.225(sa)C .725 +(re supplied.)-3.225 F .725(If no)5.725 F F3(option)3.225 E F0 3.225(sa) +C .725(re gi)-3.225 F -.15(ve)-.25 G .726 +(n, display the completion options for).15 F(each)144 729.6 Q F3(name) +4.846 E F0 2.346(or the current completion.)4.846 F 2.345 +(The possible v)7.345 F 2.345(alues of)-.25 F F3(option)4.845 E F0 2.345 +(are those v)4.845 F 2.345(alid for the)-.25 F(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(5)195.95 E 0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(The)144 84 Q/F1 10/Times-Bold@0 SF -3.02 E F0 .52(option indicates that other supplied options should apply\ - to completion on the initial non-)3.02 F .867(assignment w)144 96 R -.868(ord on the line, or after a command delimiter such as)-.1 F F1(;) -3.368 E F0(or)3.368 E F1(|)3.368 E F0 3.368(,w)C .868 -(hich is usually com-)-3.368 F(mand name completion.)144 108 Q .432 -(The return v)144 132 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 144 Q/F2 10/Times-Italic@0 SF(name)2.5 E F0 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(complete)144 84 Q F0 +-.2(bu)2.842 G .342(iltin described abo).2 F -.15(ve)-.15 G 5.342(.T).15 +G(he)-5.342 E F12.842 E F0 .343 +(option indicates that other supplied options should ap-)2.842 F .208 +(ply to the `)144 96 R(`def)-.74 E(ault')-.1 E 2.707('c)-.74 G .207(omm\ +and completion; that is, completion attempted on a command for which) +-2.707 F .92(no completion has pre)144 108 R .92 +(viously been de\214ned.)-.25 F(The)5.92 E F13.42 E F0 .92 +(option indicates that other supplied options)3.42 F 1.539 +(should apply to `)144 120 R(`empty')-.74 E 4.039('c)-.74 G 1.538 +(ommand completion; that is, completion attempted on a blank line.) +-4.039 F(The)144 132 Q F13.02 E F0 .52(option indicates that othe\ +r supplied options should apply to completion on the initial non-)3.02 F +.868(assignment w)144 144 R .868 +(ord on the line, or after a command delimiter such as)-.1 F F1(;)3.368 +E F0(or)3.368 E F1(|)3.368 E F0 3.367(,w)C .867(hich is usually com-) +-3.367 F(mand name completion.)144 156 Q .431(The return v)144 180 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 192 Q/F2 10/Times-Italic@0 SF(name)2.5 E F0 (for which no completion speci\214cation e)2.5 E -(xists, or an output error occurs.)-.15 E F1(continue)108 160.8 Q F0([) -2.5 E F2(n)A F0(])A .85(Resume the ne)144 172.8 R .85 -(xt iteration of the enclosing)-.15 F F1 -.25(fo)3.35 G(r).25 E F0(,)A +(xists, or an output error occurs.)-.15 E F1(continue)108 208.8 Q F0([) +2.5 E F2(n)A F0(])A .851(Resume the ne)144 220.8 R .851 +(xt iteration of the enclosing)-.15 F F1 -.25(fo)3.351 G(r).25 E F0(,)A F1(while)3.351 E F0(,)A F1(until)3.351 E F0 3.351(,o)C(r)-3.351 E F1 -(select)3.351 E F0 3.351(loop. If)3.351 F F2(n)3.711 E F0 .851 -(is speci\214ed, re-)3.591 F .204(sume at the)144 184.8 R F2(n)2.704 E -F0 .204(th enclosing loop.)B F2(n)5.564 E F0 .204(must be)2.944 F/F3 10 -/Symbol SF2.704 E F0 2.703(1. If)2.704 F F2(n)3.063 E F0 .203 -(is greater than the number of enclosing loops,)2.943 F 1.183 -(the last enclosing loop \(the `)144 196.8 R(`top-le)-.74 E -.15(ve)-.25 -G(l').15 E 3.683('l)-.74 G 1.183(oop\) is resumed.)-3.683 F 1.184 -(The return v)6.184 F 1.184(alue is 0 unless)-.25 F F2(n)3.684 E F0 -1.184(is not)3.684 F(greater than or equal to 1.)144 208.8 Q F1(declar) -108 225.6 Q(e)-.18 E F0([)2.5 E F1(\255aAfFgiIlnrtux)A F0 2.5(][)C F1 +(select)3.35 E F0 3.35(loop. If)3.35 F F2(n)3.71 E F0 .85 +(is speci\214ed, re-)3.59 F .203(sume at the)144 232.8 R F2(n)2.703 E F0 +.203(th enclosing loop.)B F2(n)5.563 E F0 .203(must be)2.943 F/F3 10 +/Symbol SF2.703 E F0 2.704(1. If)2.703 F F2(n)3.064 E F0 .204 +(is greater than the number of enclosing loops,)2.944 F 1.184 +(the last enclosing loop \(the `)144 244.8 R(`top-le)-.74 E -.15(ve)-.25 +G(l').15 E 3.684('l)-.74 G 1.184(oop\) is resumed.)-3.684 F 1.183 +(The return v)6.184 F 1.183(alue is 0 unless)-.25 F F2(n)3.683 E F0 +1.183(is not)3.683 F(greater than or equal to 1.)144 256.8 Q F1(declar) +108 273.6 Q(e)-.18 E F0([)2.5 E F1(\255aAfFgiIlnrtux)A F0 2.5(][)C F1 -2.5 E F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 2.5(].)C -(..])-2.5 E F1(typeset)108 237.6 Q F0([)2.5 E F1(\255aAfFgiIlnrtux)A F0 +(..])-2.5 E F1(typeset)108 285.6 Q F0([)2.5 E F1(\255aAfFgiIlnrtux)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 -2.5(].)C(..])-2.5 E 1.265(Declare v)144 249.6 R 1.265 -(ariables and/or gi)-.25 F 1.565 -.15(ve t)-.25 H 1.265(hem attrib).15 F +2.5(].)C(..])-2.5 E 1.264(Declare v)144 297.6 R 1.264 +(ariables and/or gi)-.25 F 1.564 -.15(ve t)-.25 H 1.264(hem attrib).15 F 3.765(utes. If)-.2 F(no)3.765 E F2(name)3.765 E F0 3.765(sa)C 1.265 -(re gi)-3.765 F -.15(ve)-.25 G 3.764(nt).15 G 1.264(hen display the v) --3.764 F 1.264(alues of)-.25 F -.25(va)144 261.6 S 3.46(riables. The).25 +(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 309.6 S 3.46(riables. The).25 F F13.46 E F0 .96(option will display the attrib)3.46 F .96 (utes and v)-.2 F .96(alues of each)-.25 F F2(name)3.82 E F0 5.96(.W).18 -G(hen)-5.96 E F13.46 E F0 .96(is used)3.46 F(with)144 273.6 Q F2 -(name)2.775 E F0(ar)2.775 E .275 +G(hen)-5.96 E F13.46 E F0 .96(is used)3.46 F(with)144 321.6 Q F2 +(name)2.774 E F0(ar)2.774 E .274 (guments, additional options, other than)-.18 F F12.775 E F0(and) -2.775 E F12.775 E F0 2.775(,a)C .274(re ignored.)-2.775 F(When) -5.274 E F12.774 E F0 .274(is supplied)2.774 F(without)144 285.6 Q -F2(name)3.789 E F0(ar)3.789 E 1.289(guments, it will display the attrib) --.18 F 1.289(utes and v)-.2 F 1.29(alues of all v)-.25 F 1.29 -(ariables ha)-.25 F 1.29(ving the at-)-.2 F(trib)144 297.6 Q .38 +2.775 E F12.775 E F0 2.775(,a)C .275(re ignored.)-2.775 F(When) +5.275 E F12.775 E F0 .275(is supplied)2.775 F(without)144 333.6 Q +F2(name)3.79 E F0(ar)3.79 E 1.29(guments, it will display the attrib) +-.18 F 1.289(utes and v)-.2 F 1.289(alues of all v)-.25 F 1.289 +(ariables ha)-.25 F 1.289(ving the at-)-.2 F(trib)144 345.6 Q .38 (utes speci\214ed by the additional options.)-.2 F .38 (If no other options are supplied with)5.38 F F12.88 E F0(,)A F1 -(declar)2.88 E(e)-.18 E F0(will)2.88 E 1.106(display the attrib)144 -309.6 R 1.106(utes and v)-.2 F 1.106(alues of all shell v)-.25 F 3.606 -(ariables. The)-.25 F F13.606 E F0 1.107 -(option will restrict the display to)3.606 F .3(shell functions.)144 -321.6 R(The)5.3 E F12.8 E F0 .299(option inhibits the display of \ -function de\214nitions; only the function name)2.8 F 1.54(and attrib)144 -333.6 R 1.54(utes are printed.)-.2 F 1.54(If the)6.54 F F1(extdeb)4.04 E -(ug)-.2 E F0 1.54(shell option is enabled using)4.04 F F1(shopt)4.04 E -F0 4.04(,t)C 1.54(he source \214le)-4.04 F .648 -(name and line number where each)144 345.6 R F2(name)3.148 E F0 .648 +(declar)2.88 E(e)-.18 E F0(will)2.88 E 1.107(display the attrib)144 +357.6 R 1.107(utes and v)-.2 F 1.106(alues of all shell v)-.25 F 3.606 +(ariables. The)-.25 F F13.606 E F0 1.106 +(option will restrict the display to)3.606 F .299(shell functions.)144 +369.6 R(The)5.299 E F12.799 E F0 .299(option inhibits the display\ + of function de\214nitions; only the function name)2.799 F 1.54 +(and attrib)144 381.6 R 1.54(utes are printed.)-.2 F 1.54(If the)6.54 F +F1(extdeb)4.04 E(ug)-.2 E F0 1.54(shell option is enabled using)4.04 F +F1(shopt)4.04 E F0 4.04(,t)C 1.54(he source \214le)-4.04 F .648 +(name and line number where each)144 393.6 R F2(name)3.148 E F0 .648 (is de\214ned are displayed as well.)3.148 F(The)5.648 E F13.148 E -F0 .648(option implies)3.148 F F1144 357.6 Q F0 5.836(.T)C(he) --5.836 E F13.336 E F0 .836(option forces v)3.336 F .837 +F0 .649(option implies)3.149 F F1144 405.6 Q F0 5.837(.T)C(he) +-5.837 E F13.337 E F0 .837(option forces v)3.337 F .836 (ariables to be created or modi\214ed at the global scope, e)-.25 F -.15 -(ve)-.25 G 3.337(nw).15 G(hen)-3.337 E F1(de-)3.337 E(clar)144 369.6 Q -(e)-.18 E F0 .819(is e)3.319 F -.15(xe)-.15 G .819 +(ve)-.25 G 3.336(nw).15 G(hen)-3.336 E F1(de-)3.336 E(clar)144 417.6 Q +(e)-.18 E F0 .818(is e)3.318 F -.15(xe)-.15 G .818 (cuted in a shell function.).15 F .818 -(It is ignored in all other cases.)5.818 F(The)5.818 E F13.318 E -F0 .818(option causes local)3.318 F -.25(va)144 381.6 S .693 -(riables to inherit the attrib).25 F .693(utes \(e)-.2 F .693(xcept the) --.15 F F2(namer)3.194 E(ef)-.37 E F0(attrib)3.194 E .694(ute\) and v)-.2 -F .694(alue of an)-.25 F 3.194(ye)-.15 G .694(xisting v)-3.344 F -(ariable)-.25 E .82(with the same)144 393.6 R F2(name)3.32 E F0 .82 +(It is ignored in all other cases.)5.818 F(The)5.819 E F13.319 E +F0 .819(option causes local)3.319 F -.25(va)144 429.6 S .694 +(riables to inherit the attrib).25 F .694(utes \(e)-.2 F .694(xcept the) +-.15 F F2(namer)3.194 E(ef)-.37 E F0(attrib)3.194 E .693(ute\) and v)-.2 +F .693(alue of an)-.25 F 3.193(ye)-.15 G .693(xisting v)-3.343 F +(ariable)-.25 E .82(with the same)144 441.6 R F2(name)3.32 E F0 .82 (at a surrounding scope.)3.32 F .82(If there is no e)5.82 F .82 (xisting v)-.15 F .82(ariable, the local v)-.25 F .82(ariable is)-.25 F -.379(initially unset.)144 405.6 R .379(The follo)5.379 F .379 -(wing options can be used to restrict output to v)-.25 F .38 -(ariables with the speci\214ed)-.25 F(attrib)144 417.6 Q(ute or to gi) +.38(initially unset.)144 453.6 R .38(The follo)5.38 F .379 +(wing options can be used to restrict output to v)-.25 F .379 +(ariables with the speci\214ed)-.25 F(attrib)144 465.6 Q(ute or to gi) -.2 E .3 -.15(ve v)-.25 H(ariables attrib)-.1 E(utes:)-.2 E F1144 -429.6 Q F0(Each)180 429.6 Q F2(name)2.5 E F0(is an inde)2.5 E -.15(xe) +477.6 Q F0(Each)180 477.6 Q F2(name)2.5 E F0(is an inde)2.5 E -.15(xe) -.15 G 2.5(da).15 G(rray v)-2.5 E(ariable \(see)-.25 E F1(Arrays)2.5 E -F0(in)2.5 E F2(bash\(1\))2.5 E F0(\).)A F1144 441.6 Q F0(Each)180 -441.6 Q F2(name)2.5 E F0(is an associati)2.5 E .3 -.15(ve a)-.25 H +F0(in)2.5 E F2(bash\(1\))2.5 E F0(\).)A F1144 489.6 Q F0(Each)180 +489.6 Q F2(name)2.5 E F0(is an associati)2.5 E .3 -.15(ve a)-.25 H (rray v).15 E(ariable \(see)-.25 E F1(Arrays)2.5 E F0(in)2.5 E F2 -(bash\(1\))2.5 E F0(\).)A F1144 453.6 Q F0 -(Use function names only)180 453.6 Q(.)-.65 E F1144 465.6 Q F0 -.558(The v)180 465.6 R .558(ariable is treated as an inte)-.25 F .558 +(bash\(1\))2.5 E F0(\).)A F1144 501.6 Q F0 +(Use function names only)180 501.6 Q(.)-.65 E F1144 513.6 Q F0 +.557(The v)180 513.6 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 477.6 Q F0(in)2.25 E F2(bash\(1\))2.5 E F0 2.5(\)i)C 2.5(sp)-2.5 G +/Times-Bold@0 SF .558(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E(TION) +180 525.6 Q F0(in)2.25 E F2(bash\(1\))2.5 E F0 2.5(\)i)C 2.5(sp)-2.5 G (erformed when the v)-2.5 E(ariable is assigned a v)-.25 E(alue.)-.25 E -F1144 489.6 Q F0 .909(When the v)180 489.6 R .909 +F1144 537.6 Q F0 .91(When the v)180 537.6 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 501.6 R(upper)2.5 E(-case attrib)-.2 E -(ute is disabled.)-.2 E F1144 513.6 Q F0(Gi)180 513.6 Q 1.62 -.15 -(ve e)-.25 H(ach).15 E F2(name)3.82 E F0(the)3.82 E F2(namer)3.819 E(ef) --.37 E F0(attrib)3.819 E 1.319 -(ute, making it a name reference to another v)-.2 F(ariable.)-.25 E .477 -(That other v)180 525.6 R .478(ariable is de\214ned by the v)-.25 F .478 +(-case characters are con)-.2 F -.15(ve)-.4 G .909(rted to lo).15 F(wer) +-.25 E(-)-.2 E 2.5(case. The)180 549.6 R(upper)2.5 E(-case attrib)-.2 E +(ute is disabled.)-.2 E F1144 561.6 Q F0(Gi)180 561.6 Q 1.619 -.15 +(ve e)-.25 H(ach).15 E F2(name)3.819 E F0(the)3.819 E F2(namer)3.819 E +(ef)-.37 E F0(attrib)3.819 E 1.319 +(ute, making it a name reference to another v)-.2 F(ariable.)-.25 E .478 +(That other v)180 573.6 R .478(ariable is de\214ned by the v)-.25 F .478 (alue of)-.25 F F2(name)2.978 E F0 5.478(.A)C .478 -(ll references, assignments, and at-)-5.478 F(trib)180 537.6 Q .782 -(ute modi\214cations to)-.2 F F2(name)3.282 E F0 3.282(,e)C .782 -(xcept those using or changing the)-3.432 F F13.281 E F0(attrib) -3.281 E .781(ute itself, are)-.2 F .808(performed on the v)180 549.6 R -.808(ariable referenced by)-.25 F F2(name)3.308 E F0 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 561.6 Q(ariables.)-.25 E F1144 573.6 Q F0 -(Mak)180 573.6 Q(e)-.1 E F2(name)3.655 E F0 3.655(sr)C(eadonly)-3.655 E +(ll references, assignments, and at-)-5.478 F(trib)180 585.6 Q .781 +(ute modi\214cations to)-.2 F F2(name)3.281 E F0 3.281(,e)C .782 +(xcept those using or changing the)-3.431 F F13.282 E F0(attrib) +3.282 E .782(ute itself, are)-.2 F .809(performed on the v)180 597.6 R +.809(ariable referenced by)-.25 F F2(name)3.308 E F0 1.908 -.55('s v)D +3.308(alue. The).3 F .808(nameref attrib)3.308 F .808(ute cannot be)-.2 +F(applied to array v)180 609.6 Q(ariables.)-.25 E F1144 621.6 Q F0 +(Mak)180 621.6 Q(e)-.1 E F2(name)3.654 E F0 3.654(sr)C(eadonly)-3.654 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 -585.6 Q F1144 597.6 Q F0(Gi)180 597.6 Q .729 -.15(ve e)-.25 H(ach) -.15 E F2(name)2.929 E F0(the)2.929 E F2(tr)2.929 E(ace)-.15 E F0(attrib) +1.155(alues by subsequent as-)-.25 F(signment statements or unset.)180 +633.6 Q F1144 645.6 Q F0(Gi)180 645.6 Q .73 -.15(ve e)-.25 H(ach) +.15 E F2(name)2.93 E F0(the)2.929 E F2(tr)2.929 E(ace)-.15 E F0(attrib) 2.929 E 2.929(ute. T)-.2 F .429(raced functions inherit the)-.35 F F1 -(DEB)2.929 E(UG)-.1 E F0(and)2.93 E F1(RETURN)2.93 E F0 -(traps from the calling shell.)180 609.6 Q(The trace attrib)5 E +(DEB)2.929 E(UG)-.1 E F0(and)2.929 E F1(RETURN)2.929 E F0 +(traps from the calling shell.)180 657.6 Q(The trace attrib)5 E (ute has no special meaning for v)-.2 E(ariables.)-.25 E F1144 -621.6 Q F0 .91(When the v)180 621.6 R .909(ariable is assigned a v)-.25 +669.6 Q F0 .909(When the v)180 669.6 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 633.6 +F -.15(ve)-.4 G .91(rted to upper).15 F(-)-.2 E 2.5(case. The)180 681.6 R(lo)2.5 E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1 -144 645.6 Q F0(Mark)180 645.6 Q F2(name)2.5 E F0 2.5(sf)C(or e)-2.5 E -(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .143 -(Using `+' instead of `\255' turns of)144 662.4 R 2.643(ft)-.25 G .143 -(he attrib)-2.643 F .143(ute instead, with the e)-.2 F .144 -(xceptions that)-.15 F F1(+a)2.644 E F0(and)2.644 E F1(+A)2.644 E F0 -.144(may not)2.644 F .579(be used to destro)144 674.4 R 3.079(ya)-.1 G +144 693.6 Q F0(Mark)180 693.6 Q F2(name)2.5 E F0 2.5(sf)C(or e)-2.5 E +(xport to subsequent commands via the en)-.15 E(vironment.)-.4 E .144 +(Using `+' instead of `\255' turns of)144 710.4 R 2.643(ft)-.25 G .143 +(he attrib)-2.643 F .143(ute instead, with the e)-.2 F .143 +(xceptions that)-.15 F F1(+a)2.643 E F0(and)2.643 E F1(+A)2.643 E F0 +.143(may not)2.643 F .578(be used to destro)144 722.4 R 3.079(ya)-.1 G .579(rray v)-3.079 F .579(ariables and)-.25 F F1(+r)3.079 E F0 .579 (will not remo)3.079 F .879 -.15(ve t)-.15 H .579(he readonly attrib).15 -F 3.079(ute. When)-.2 F .578(used in a)3.078 F(function,)144 686.4 Q F1 -(declar)3.543 E(e)-.18 E F0(and)3.543 E F1(typeset)3.543 E F0(mak)3.543 -E 3.543(ee)-.1 G(ach)-3.543 E F2(name)3.543 E F0 1.043 -(local, as with the)3.543 F F1(local)3.544 E F0 1.044 -(command, unless the)3.544 F F13.544 E F0 1.205 -(option is supplied.)144 698.4 R 1.205(If a v)6.205 F 1.205 -(ariable name is follo)-.25 F 1.205(wed by =)-.25 F F2(value)A F0 3.705 -(,t)C 1.205(he v)-3.705 F 1.205(alue of the v)-.25 F 1.205 -(ariable is set to)-.25 F F2(value)144 710.4 Q F0 5.217(.W)C .217 -(hen using)-5.217 F F12.717 E F0(or)2.717 E F12.717 E F0 -.217(and the compound assignment syntax to create array v)2.717 F .218 -(ariables, addi-)-.25 F .882(tional attrib)144 722.4 R .882 -(utes do not tak)-.2 F 3.382(ee)-.1 G -.25(ff)-3.382 G .882 -(ect until subsequent assignments.).25 F .882(The return v)5.882 F .882 -(alue is 0 unless an)-.25 F(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15 -(ve)-.15 G(mber 22).15 E(6)190.545 E 0 Cg EP +F 3.079(ute. When)-.2 F .579(used in a)3.079 F(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(6)195.95 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(in)144 84 Q -.25(va)-.4 G .365(lid option \ -is encountered, an attempt is made to de\214ne a function using).25 F/F1 -10/Courier@0 SF .366(\255f foo=bar)2.866 F F0 2.866(,a)C 2.866(na)-2.866 -G(t-)-2.866 E .549(tempt is made to assign a v)144 96 R .549 -(alue to a readonly v)-.25 F .548 -(ariable, an attempt is made to assign a v)-.25 F .548(alue to an)-.25 F -.391(array v)144 108 R .391 -(ariable without using the compound assignment syntax \(see)-.25 F/F2 10 -/Times-Bold@0 SF(Arrays)2.892 E F0(in)2.892 E/F3 10/Times-Italic@0 SF -(bash\(1\))2.892 E F0 .392(\), one of the)B F3(names)144 120 Q F0 .359 -(is not a v)2.859 F .359(alid shell v)-.25 F .359 -(ariable name, an attempt is made to turn of)-.25 F 2.859(fr)-.25 G .359 -(eadonly status for a read-)-2.859 F 1.212(only v)144 132 R 1.213 -(ariable, an attempt is made to turn of)-.25 F 3.713(fa)-.25 G 1.213 -(rray status for an array v)-3.713 F 1.213(ariable, or an attempt is) --.25 F(made to display a non-e)144 144 Q(xistent function with)-.15 E F2 -2.5 E F0(.)A F2(dirs [\255clpv] [+)108 160.8 Q F3(n)A F2 2.5(][)C --2.5 E F3(n)A F2(])A F0 -.4(Wi)144 172.8 S .329 +E(UIL)-.1 E(TINS\(1\))-.92 E(function,)144 84 Q/F1 10/Times-Bold@0 SF +(declar)3.544 E(e)-.18 E F0(and)3.544 E F1(typeset)3.544 E F0(mak)3.544 +E 3.544(ee)-.1 G(ach)-3.544 E/F2 10/Times-Italic@0 SF(name)3.543 E F0 +1.043(local, as with the)3.543 F F1(local)3.543 E F0 1.043 +(command, unless the)3.543 F F13.543 E F0 1.205 +(option is supplied.)144 96 R 1.205(If a v)6.205 F 1.205 +(ariable name is follo)-.25 F 1.205(wed by =)-.25 F F2(value)A F0 3.705 +(,t)C 1.205(he v)-3.705 F 1.205(alue of the v)-.25 F 1.205 +(ariable is set to)-.25 F F2(value)144 108 Q F0 5.218(.W)C .218 +(hen using)-5.218 F F12.718 E F0(or)2.718 E F12.718 E F0 +.217(and the compound assignment syntax to create array v)2.717 F .217 +(ariables, addi-)-.25 F .882(tional attrib)144 120 R .882 +(utes do not tak)-.2 F 3.382(ee)-.1 G -.25(ff)-3.382 G .882 +(ect until subsequent assignments.).25 F .882(The return v)5.882 F .882 +(alue is 0 unless an)-.25 F(in)144 132 Q -.25(va)-.4 G .366(lid option \ +is encountered, an attempt is made to de\214ne a function using).25 F/F3 +10/Courier@0 SF .365(\255f foo=bar)2.865 F F0 2.865(,a)C 2.865(na)-2.865 +G(t-)-2.865 E .548(tempt is made to assign a v)144 144 R .548 +(alue to a readonly v)-.25 F .549 +(ariable, an attempt is made to assign a v)-.25 F .549(alue to an)-.25 F +.392(array v)144 156 R .392 +(ariable without using the compound assignment syntax \(see)-.25 F F1 +(Arrays)2.891 E F0(in)2.891 E F2(bash\(1\))2.891 E F0 .391 +(\), one of the)B F2(names)144 168 Q F0 .359(is not a v)2.858 F .359 +(alid shell v)-.25 F .359(ariable name, an attempt is made to turn of) +-.25 F 2.859(fr)-.25 G .359(eadonly status for a read-)-2.859 F 1.213 +(only v)144 180 R 1.213(ariable, an attempt is made to turn of)-.25 F +3.713(fa)-.25 G 1.213(rray status for an array v)-3.713 F 1.212 +(ariable, or an attempt is)-.25 F(made to display a non-e)144 192 Q +(xistent function with)-.15 E F12.5 E F0(.)A F1 +(dirs [\255clpv] [+)108 208.8 Q F2(n)A F1 2.5(][)C-2.5 E F2(n)A F1 +(])A F0 -.4(Wi)144 220.8 S .328 (thout options, displays the list of currently remembered directories.) -.4 F .328(The def)5.328 F .328(ault display is on a)-.1 F 1.238 -(single line with directory names separated by spaces.)144 184.8 R 1.238 -(Directories are added to the list with the)6.238 F F2(pushd)144 196.8 Q -F0 .928(command; the)3.428 F F2(popd)3.428 E F0 .928(command remo)3.428 +.4 F .329(The def)5.329 F .329(ault display is on a)-.1 F 1.238 +(single line with directory names separated by spaces.)144 232.8 R 1.238 +(Directories are added to the list with the)6.238 F F1(pushd)144 244.8 Q +F0 .927(command; the)3.427 F F1(popd)3.428 E F0 .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 208.8 S -(ys the \214rst directory in the stack.).1 E F2144 220.8 Q F0 -(Clears the directory stack by deleting all of the entries.)180 220.8 Q -F2144 232.8 Q F0 .881 -(Produces a listing using full pathnames; the def)180 232.8 R .882 +(The current directory is al-)5.928 F -.1(wa)144 256.8 S +(ys the \214rst directory in the stack.).1 E F1144 268.8 Q F0 +(Clears the directory stack by deleting all of the entries.)180 268.8 Q +F1144 280.8 Q F0 .882 +(Produces a listing using full pathnames; the def)180 280.8 R .881 (ault listing format uses a tilde to denote)-.1 F(the home directory)180 -244.8 Q(.)-.65 E F2144 256.8 Q F0 -(Print the directory stack with one entry per line.)180 256.8 Q F2 -144 268.8 Q F0 .273(Print the directory stack with one entry per line, \ -pre\214xing each entry with its inde)180 268.8 R 2.772(xi)-.15 G 2.772 -(nt)-2.772 G(he)-2.772 E(stack.)180 280.8 Q F2(+)144 292.8 Q F3(n)A F0 -1.564(Displays the)180 292.8 R F3(n)4.064 E F0 1.565 -(th entry counting from the left of the list sho)B 1.565(wn by)-.25 F F2 -(dirs)4.065 E F0 1.565(when in)4.065 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E -(without options, starting with zero.)180 304.8 Q F2144 316.8 Q F3 -(n)A F0 1.194(Displays the)180 316.8 R F3(n)3.694 E F0 1.194 +292.8 Q(.)-.65 E F1144 304.8 Q F0 +(Print the directory stack with one entry per line.)180 304.8 Q F1 +144 316.8 Q F0 .272(Print the directory stack with one entry per line, \ +pre\214xing each entry with its inde)180 316.8 R 2.773(xi)-.15 G 2.773 +(nt)-2.773 G(he)-2.773 E(stack.)180 328.8 Q F1(+)144 340.8 Q F2(n)A F0 +1.565(Displays the)180 340.8 R F2(n)4.065 E F0 1.565 +(th entry counting from the left of the list sho)B 1.564(wn by)-.25 F F1 +(dirs)4.064 E F0 1.564(when in)4.064 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E +(without options, starting with zero.)180 352.8 Q F1144 364.8 Q F2 +(n)A F0 1.194(Displays the)180 364.8 R F2(n)3.694 E F0 1.194 (th entry counting from the right of the list sho)B 1.194(wn by)-.25 F -F2(dirs)3.694 E F0 1.194(when in)3.694 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E -(without options, starting with zero.)180 328.8 Q .257(The return v)144 -345.6 R .258(alue is 0 unless an in)-.25 F -.25(va)-.4 G .258 -(lid option is supplied or).25 F F3(n)2.758 E F0(inde)2.758 E -.15(xe) +F1(dirs)3.694 E F0 1.194(when in)3.694 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E +(without options, starting with zero.)180 376.8 Q .258(The return v)144 +393.6 R .258(alue is 0 unless an in)-.25 F -.25(va)-.4 G .258 +(lid option is supplied or).25 F F2(n)2.758 E F0(inde)2.758 E -.15(xe) -.15 G 2.758(sb).15 G -.15(ey)-2.758 G .258(ond the end of the direc-) -.15 F(tory stack.)144 357.6 Q F2(diso)108 374.4 Q(wn)-.1 E F0([)2.5 E F2 -(\255ar)A F0 2.5(][)C F2-2.5 E F0 2.5(][)C F3(jobspec)-2.5 E F0 -(... |)2.5 E F3(pid)2.5 E F0(... ])2.5 E -.4(Wi)144 386.4 S .122 -(thout options, remo).4 F .422 -.15(ve e)-.15 H(ach).15 E F3(jobspec) +.15 F(tory stack.)144 405.6 Q F1(diso)108 422.4 Q(wn)-.1 E F0([)2.5 E F1 +(\255ar)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(jobspec)-2.5 E F0 +(... |)2.5 E F2(pid)2.5 E F0(... ])2.5 E -.4(Wi)144 434.4 S .121 +(thout options, remo).4 F .422 -.15(ve e)-.15 H(ach).15 E F2(jobspec) 4.362 E F0 .122(from the table of acti)2.932 F .422 -.15(ve j)-.25 H -2.622(obs. If).15 F F3(jobspec)4.362 E F0 .121(is not present, and)2.932 -F .096(neither the)144 398.4 R F22.596 E F0 .096(nor the)2.596 F -F22.596 E F0 .096(option is supplied, the)2.596 F F3(curr)2.596 E -.096(ent job)-.37 F F0 .096(is used.)2.596 F .096(If the)5.096 F F2 +2.622(obs. If).15 F F2(jobspec)4.362 E F0 .122(is not present, and)2.932 +F .096(neither the)144 446.4 R F12.596 E F0 .096(nor the)2.596 F +F12.596 E F0 .096(option is supplied, the)2.596 F F2(curr)2.596 E +.096(ent job)-.37 F F0 .096(is used.)2.596 F .096(If the)5.096 F F1 2.596 E F0 .096(option is gi)2.596 F -.15(ve)-.25 G .096(n, each) -.15 F F3(jobspec)145.74 410.4 Q F0 .586(is not remo)3.396 F -.15(ve)-.15 -G 3.086(df).15 G .585(rom the table, b)-3.086 F .585(ut is mark)-.2 F -.585(ed so that)-.1 F/F4 9/Times-Bold@0 SF(SIGHUP)3.085 E F0 .585 -(is not sent to the job if the)2.835 F .962(shell recei)144 422.4 R -.15 +.15 F F2(jobspec)145.74 458.4 Q F0 .585(is not remo)3.395 F -.15(ve)-.15 +G 3.085(df).15 G .585(rom the table, b)-3.085 F .585(ut is mark)-.2 F +.585(ed so that)-.1 F/F4 9/Times-Bold@0 SF(SIGHUP)3.085 E F0 .586 +(is not sent to the job if the)2.835 F .962(shell recei)144 470.4 R -.15 (ve)-.25 G 3.462(sa).15 G F4(SIGHUP)A/F5 9/Times-Roman@0 SF(.)A F0 .962 -(If no)5.462 F F3(jobspec)5.202 E F0 .962(is supplied, the)3.772 F F2 +(If no)5.462 F F2(jobspec)5.202 E F0 .962(is supplied, the)3.772 F F1 3.462 E F0 .962(option means to remo)3.462 F 1.262 -.15(ve o)-.15 -H 3.462(rm).15 G .962(ark all)-3.462 F 1.359(jobs; the)144 434.4 R F2 -3.859 E F0 1.359(option without a)3.859 F F3(jobspec)5.599 E F0 -(ar)4.169 E 1.358(gument restricts operation to running jobs.)-.18 F -1.358(The return)6.358 F -.25(va)144 446.4 S(lue is 0 unless a).25 E F3 +H 3.462(rm).15 G .962(ark all)-3.462 F 1.358(jobs; the)144 482.4 R F1 +3.858 E F0 1.358(option without a)3.858 F F2(jobspec)5.598 E F0 +(ar)4.169 E 1.359(gument restricts operation to running jobs.)-.18 F +1.359(The return)6.359 F -.25(va)144 494.4 S(lue is 0 unless a).25 E F2 (jobspec)4.24 E F0(does not specify a v)2.81 E(alid job)-.25 E(.)-.4 E -F2(echo)108 463.2 Q F0([)2.5 E F2(\255neE)A F0 2.5(][)C F3(ar)-2.5 E(g) --.37 E F0(...])2.5 E .424(Output the)144 475.2 R F3(ar)2.924 E(g)-.37 E +F1(echo)108 511.2 Q F0([)2.5 E F1(\255neE)A F0 2.5(][)C F2(ar)-2.5 E(g) +-.37 E F0(...])2.5 E .425(Output the)144 523.2 R F2(ar)2.925 E(g)-.37 E F0 .424(s, separated by spaces, follo)B .424(wed by a ne)-.25 F 2.924 -(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F .308 -(error occurs.)144 487.2 R(If)5.308 E F22.808 E F0 .308 -(is speci\214ed, the trailing ne)2.808 F .308(wline is suppressed.)-.25 -F .307(If the)5.308 F F22.807 E F0 .307(option is gi)2.807 F -.15 -(ve)-.25 G .307(n, inter).15 F(-)-.2 E .197(pretation of the follo)144 -499.2 R .198(wing backslash-escaped characters is enabled.)-.25 F(The) -5.198 E F22.698 E F0 .198(option disables the in-)2.698 F .067 -(terpretation of these escape characters, e)144 511.2 R -.15(ve)-.25 G +(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F .307 +(error occurs.)144 535.2 R(If)5.307 E F12.807 E F0 .307 +(is speci\214ed, the trailing ne)2.807 F .308(wline is suppressed.)-.25 +F .308(If the)5.308 F F12.808 E F0 .308(option is gi)2.808 F -.15 +(ve)-.25 G .308(n, inter).15 F(-)-.2 E .198(pretation of the follo)144 +547.2 R .198(wing backslash-escaped characters is enabled.)-.25 F(The) +5.198 E F12.698 E F0 .197(option disables the in-)2.697 F .067 +(terpretation of these escape characters, e)144 559.2 R -.15(ve)-.25 G 2.567(no).15 G 2.567(ns)-2.567 G .067(ystems where the)-2.567 F 2.567 -(ya)-.15 G .067(re interpreted by def)-2.567 F 2.567(ault. The)-.1 F F2 -(xpg_echo)144 523.2 Q F0 .601 -(shell option may be used to dynamically determine whether or not)3.101 -F F2(echo)3.102 E F0 -.15(ex)3.102 G .602(pands these).15 F .659 -(escape characters by def)144 535.2 R(ault.)-.1 E F2(echo)5.659 E F0 -.659(does not interpret)3.159 F F23.159 E F0 .659 -(to mean the end of options.)3.159 F F2(echo)5.658 E F0(inter)3.158 E(-) --.2 E(prets the follo)144 547.2 Q(wing escape sequences:)-.25 E F2(\\a) -144 559.2 Q F0(alert \(bell\))180 559.2 Q F2(\\b)144 571.2 Q F0 -(backspace)180 571.2 Q F2(\\c)144 583.2 Q F0(suppress further output)180 -583.2 Q F2(\\e)144 595.2 Q(\\E)144 607.2 Q F0(an escape character)180 -607.2 Q F2(\\f)144 619.2 Q F0(form feed)180 619.2 Q F2(\\n)144 631.2 Q -F0(ne)180 631.2 Q 2.5(wl)-.25 G(ine)-2.5 E F2(\\r)144 643.2 Q F0 -(carriage return)180 643.2 Q F2(\\t)144 655.2 Q F0(horizontal tab)180 -655.2 Q F2(\\v)144 667.2 Q F0 -.15(ve)180 667.2 S(rtical tab).15 E F2 -(\\\\)144 679.2 Q F0(backslash)180 679.2 Q F2(\\0)144 691.2 Q F3(nnn)A -F0(the eight-bit character whose v)180 691.2 Q(alue is the octal v)-.25 -E(alue)-.25 E F3(nnn)2.5 E F0(\(zero to three octal digits\))2.5 E F2 -(\\x)144 703.2 Q F3(HH)A F0(the eight-bit character whose v)180 703.2 Q -(alue is the he)-.25 E(xadecimal v)-.15 E(alue)-.25 E F3(HH)2.5 E F0 -(\(one or tw)2.5 E 2.5(oh)-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E -(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(7) -190.545 E 0 Cg EP +(ya)-.15 G .067(re interpreted by def)-2.567 F 2.568(ault. The)-.1 F F1 +(xpg_echo)144 571.2 Q F0 .602 +(shell option may be used to dynamically determine whether or not)3.102 +F F1(echo)3.101 E F0 -.15(ex)3.101 G .601(pands these).15 F .658 +(escape characters by def)144 583.2 R(ault.)-.1 E F1(echo)5.658 E F0 +.659(does not interpret)3.159 F F13.159 E F0 .659 +(to mean the end of options.)3.159 F F1(echo)5.659 E F0(inter)3.159 E(-) +-.2 E(prets the follo)144 595.2 Q(wing escape sequences:)-.25 E F1(\\a) +144 607.2 Q F0(alert \(bell\))180 607.2 Q F1(\\b)144 619.2 Q F0 +(backspace)180 619.2 Q F1(\\c)144 631.2 Q F0(suppress further output)180 +631.2 Q F1(\\e)144 643.2 Q(\\E)144 655.2 Q F0(an escape character)180 +655.2 Q F1(\\f)144 667.2 Q F0(form feed)180 667.2 Q F1(\\n)144 679.2 Q +F0(ne)180 679.2 Q 2.5(wl)-.25 G(ine)-2.5 E F1(\\r)144 691.2 Q F0 +(carriage return)180 691.2 Q F1(\\t)144 703.2 Q F0(horizontal tab)180 +703.2 Q F1(\\v)144 715.2 Q F0 -.15(ve)180 715.2 S(rtical tab).15 E +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(7)195.95 E 0 Cg EP %%Page: 8 8 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(\\u)144 84 Q/F2 10 -/Times-Italic@0 SF(HHHH)A F0 1.506 -(the Unicode \(ISO/IEC 10646\) character whose v)180 96 R 1.507 -(alue is the he)-.25 F 1.507(xadecimal v)-.15 F(alue)-.25 E F2(HHHH) -4.007 E F0(\(one to four he)180 108 Q 2.5(xd)-.15 G(igits\))-2.5 E F1 -(\\U)144 120 Q F2(HHHHHHHH)A F0 .548 -(the Unicode \(ISO/IEC 10646\) character whose v)180 132 R .547 -(alue is the he)-.25 F .547(xadecimal v)-.15 F(alue)-.25 E F2(HHHHH-) -3.047 E(HHH)180 144 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G(igits\)) --2.5 E F1(enable)108 160.8 Q F0([)2.5 E F1A F0 2.5(][)C F1 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(\\\\)144 84 Q F0 +(backslash)180 84 Q F1(\\0)144 96 Q/F2 10/Times-Italic@0 SF(nnn)A F0 +(the eight-bit character whose v)180 96 Q(alue is the octal v)-.25 E +(alue)-.25 E F2(nnn)2.5 E F0(\(zero to three octal digits\))2.5 E F1 +(\\x)144 108 Q F2(HH)A F0(the eight-bit character whose v)180 108 Q +(alue is the he)-.25 E(xadecimal v)-.15 E(alue)-.25 E F2(HH)2.5 E F0 +(\(one or tw)2.5 E 2.5(oh)-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E F1 +(\\u)144 120 Q F2(HHHH)A F0 1.507 +(the Unicode \(ISO/IEC 10646\) character whose v)180 132 R 1.506 +(alue is the he)-.25 F 1.506(xadecimal v)-.15 F(alue)-.25 E F2(HHHH) +4.006 E F0(\(one to four he)180 144 Q 2.5(xd)-.15 G(igits\))-2.5 E F1 +(\\U)144 156 Q F2(HHHHHHHH)A F0 .547 +(the Unicode \(ISO/IEC 10646\) character whose v)180 168 R .547 +(alue is the he)-.25 F .548(xadecimal v)-.15 F(alue)-.25 E F2(HHHHH-) +3.048 E(HHH)180 180 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G(igits\)) +-2.5 E F1(enable)108 196.8 Q F0([)2.5 E F1A F0 2.5(][)C F1 (\255dnps)-2.5 E F0 2.5(][)C F1-2.5 E F2(\214lename)2.5 E F0 2.5 -(][)C F2(name)-2.5 E F0(...])2.5 E .277(Enable and disable b)144 172.8 R +(][)C F2(name)-2.5 E F0(...])2.5 E .278(Enable and disable b)144 208.8 R .278(uiltin shell commands.)-.2 F .278(Disabling a b)5.278 F .278 -(uiltin allo)-.2 F .278(ws a disk command which has)-.25 F .834 -(the same name as a shell b)144 184.8 R .834(uiltin to be e)-.2 F -.15 +(uiltin allo)-.2 F .278(ws a disk command which has)-.25 F .833 +(the same name as a shell b)144 220.8 R .834(uiltin to be e)-.2 F -.15 (xe)-.15 G .834(cuted without specifying a full pathname, e).15 F -.15 -(ve)-.25 G 3.333(nt).15 G(hough)-3.333 E .989 -(the shell normally searches for b)144 196.8 R .989 -(uiltins before disk commands.)-.2 F(If)5.989 E F13.489 E F0 .99 -(is used, each)3.49 F F2(name)3.49 E F0 .99(is dis-)3.49 F .649 -(abled; otherwise,)144 208.8 R F2(names)3.148 E F0 .648(are enabled.) +(ve)-.25 G 3.334(nt).15 G(hough)-3.334 E .99 +(the shell normally searches for b)144 232.8 R .989 +(uiltins before disk commands.)-.2 F(If)5.989 E F13.489 E F0 .989 +(is used, each)3.489 F F2(name)3.489 E F0 .989(is dis-)3.489 F .648 +(abled; otherwise,)144 244.8 R F2(names)3.148 E F0 .648(are enabled.) 3.148 F -.15(Fo)5.648 G 3.148(re).15 G .648(xample, to use the)-3.298 F F1(test)3.148 E F0 .648(binary found via the)3.148 F/F3 9/Times-Bold@0 -SF -.666(PA)3.148 G(TH)-.189 E F0(in-)2.898 E .538(stead of the shell b) -144 220.8 R .538(uiltin v)-.2 F .538(ersion, run)-.15 F/F4 10/Courier@0 +SF -.666(PA)3.148 G(TH)-.189 E F0(in-)2.899 E .539(stead of the shell b) +144 256.8 R .538(uiltin v)-.2 F .538(ersion, run)-.15 F/F4 10/Courier@0 SF .538(enable -n test)3.038 F F0 5.538(.T)C(he)-5.538 E F13.038 E -F0 .539(option means to load the ne)3.038 F(w)-.25 E -.2(bu)144 232.8 S +F0 .538(option means to load the ne)3.038 F(w)-.25 E -.2(bu)144 268.8 S 1.365(iltin command).2 F F2(name)4.225 E F0 1.365(from shared object) 4.045 F F2(\214lename)5.775 E F0 3.865(,o).18 G 3.865(ns)-3.865 G 1.365 -(ystems that support dynamic loading.)-3.865 F .606(Bash will use the v) -144 244.8 R .606(alue of the)-.25 F F1 -.3(BA)3.106 G(SH_LO).3 E(AD)-.4 +(ystems that support dynamic loading.)-3.865 F .607(Bash will use the v) +144 280.8 R .606(alue of the)-.25 F F1 -.3(BA)3.106 G(SH_LO).3 E(AD)-.4 E(ABLES_P)-.35 E -.95(AT)-.74 G(H).95 E F0 -.25(va)3.106 G .606 -(riable as a colon-separated list of).25 F .549 -(directories in which to search for)144 256.8 R F2(\214lename)3.049 E F0 -5.549(.T)C .549(he def)-5.549 F .548(ault is system-dependent.)-.1 F -(The)5.548 E F13.048 E F0 .548(option will)3.048 F .546 -(delete a b)144 268.8 R .546(uiltin pre)-.2 F .546(viously loaded with) --.25 F F13.046 E F0 5.547(.I)C 3.047(fn)-5.547 G(o)-3.047 E F2 +(riable as a colon-separated list of).25 F .548 +(directories in which to search for)144 292.8 R F2(\214lename)3.048 E F0 +5.549(.T)C .549(he def)-5.549 F .549(ault is system-dependent.)-.1 F +(The)5.549 E F13.049 E F0 .549(option will)3.049 F .547 +(delete a b)144 304.8 R .547(uiltin pre)-.2 F .547(viously loaded with) +-.25 F F13.047 E F0 5.547(.I)C 3.047(fn)-5.547 G(o)-3.047 E F2 (name)3.047 E F0(ar)3.047 E .547(guments are gi)-.18 F -.15(ve)-.25 G -.547(n, or if the).15 F F13.047 E F0 .547(option is)3.047 F .546 -(supplied, a list of shell b)144 280.8 R .545(uiltins is printed.)-.2 F --.4(Wi)5.545 G .545(th no other option ar).4 F .545 -(guments, the list consists of all)-.18 F .695(enabled shell b)144 292.8 +.546(n, or if the).15 F F13.046 E F0 .546(option is)3.046 F .545 +(supplied, a list of shell b)144 316.8 R .545(uiltins is printed.)-.2 F +-.4(Wi)5.545 G .545(th no other option ar).4 F .546 +(guments, the list consists of all)-.18 F .695(enabled shell b)144 328.8 R 3.195(uiltins. If)-.2 F F13.195 E F0 .695 (is supplied, only disabled b)3.195 F .695(uiltins are printed.)-.2 F -(If)5.695 E F13.195 E F0 .695(is supplied, the)3.195 F .262 -(list printed includes all b)144 304.8 R .261 +(If)5.695 E F13.195 E F0 .695(is supplied, the)3.195 F .261 +(list printed includes all b)144 340.8 R .261 (uiltins, with an indication of whether or not each is enabled.)-.2 F -(If)5.261 E F12.761 E F0 .261(is sup-)2.761 F .268 -(plied, the output is restricted to the POSIX)144 316.8 R F2(special) -2.768 E F0 -.2(bu)2.768 G 2.768(iltins. If).2 F .269 -(no options are supplied and a)2.768 F F2(name)2.769 E F0 .285 -(is not a shell b)144 328.8 R(uiltin,)-.2 E F1(enable)2.784 E F0 .284 +(If)5.261 E F12.761 E F0 .262(is sup-)2.762 F .269 +(plied, the output is restricted to the POSIX)144 352.8 R F2(special) +2.768 E F0 -.2(bu)2.768 G 2.768(iltins. If).2 F .268 +(no options are supplied and a)2.768 F F2(name)2.768 E F0 .284 +(is not a shell b)144 364.8 R(uiltin,)-.2 E F1(enable)2.784 E F0 .284 (will attempt to load)2.784 F F2(name)2.784 E F0 .284 -(from a shared object named)2.784 F F2(name)2.784 E F0 2.784(,a)C 2.784 -(si)-2.784 G 2.784(ft)-2.784 G(he)-2.784 E 1.41(command were)144 340.8 R +(from a shared object named)2.784 F F2(name)2.785 E F0 2.785(,a)C 2.785 +(si)-2.785 G 2.785(ft)-2.785 G(he)-2.785 E 1.41(command were)144 376.8 R F4 1.41(enable \255f)3.91 F F2 1.41(name name)3.91 F F0 6.41(.T)3.91 G 1.41(he return v)-6.41 F 1.41(alue is 0 unless a)-.25 F F2(name)4.27 E -F0 1.41(is not a shell)4.09 F -.2(bu)144 352.8 S +F0 1.41(is not a shell)4.09 F -.2(bu)144 388.8 S (iltin or there is an error loading a ne).2 E 2.5(wb)-.25 G -(uiltin from a shared object.)-2.7 E F1 -2.3 -.15(ev a)108 369.6 T(l).15 -E F0([)2.5 E F2(ar)A(g)-.37 E F0(...])2.5 E(The)144 381.6 Q F2(ar)3.171 -E(g)-.37 E F0 3.171(sa)C .671 -(re read and concatenated together into a single command.)-3.171 F .67 -(This command is then read)5.67 F .478(and e)144 393.6 R -.15(xe)-.15 G -.478(cuted by the shell, and its e).15 F .478 -(xit status is returned as the v)-.15 F .479(alue of)-.25 F F1 -2.3 -.15 -(ev a)2.979 H(l).15 E F0 5.479(.I)C 2.979(ft)-5.479 G .479(here are no) --2.979 F F2(ar)3.309 E(gs)-.37 E F0(,).27 E(or only null ar)144 405.6 Q +(uiltin from a shared object.)-2.7 E F1 -2.3 -.15(ev a)108 405.6 T(l).15 +E F0([)2.5 E F2(ar)A(g)-.37 E F0(...])2.5 E(The)144 417.6 Q F2(ar)3.17 E +(g)-.37 E F0 3.17(sa)C .671 +(re read and concatenated together into a single command.)-3.17 F .671 +(This command is then read)5.671 F .479(and e)144 429.6 R -.15(xe)-.15 G +.479(cuted by the shell, and its e).15 F .479 +(xit status is returned as the v)-.15 F .478(alue of)-.25 F F1 -2.3 -.15 +(ev a)2.978 H(l).15 E F0 5.478(.I)C 2.978(ft)-5.478 G .478(here are no) +-2.978 F F2(ar)3.308 E(gs)-.37 E F0(,).27 E(or only null ar)144 441.6 Q (guments,)-.18 E F1 -2.3 -.15(ev a)2.5 H(l).15 E F0(returns 0.)2.5 E F1 -(exec)108 422.4 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1-2.5 E F2 +(exec)108 458.4 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1-2.5 E F2 (name)2.5 E F0 2.5(][)C F2(command)-2.5 E F0([)2.5 E F2(ar)A(guments) --.37 E F0(]])A(If)144 434.4 Q F2(command)3.006 E F0 .306 -(is speci\214ed, it replaces the shell.)3.576 F .305(No ne)5.305 F 2.805 -(wp)-.25 G .305(rocess is created.)-2.805 F(The)5.305 E F2(ar)3.135 E -(guments)-.37 E F0(become)3.075 E .176(the ar)144 446.4 R .176 +-.37 E F0(]])A(If)144 470.4 Q F2(command)3.005 E F0 .305 +(is speci\214ed, it replaces the shell.)3.575 F .305(No ne)5.305 F 2.805 +(wp)-.25 G .306(rocess is created.)-2.805 F(The)5.306 E F2(ar)3.136 E +(guments)-.37 E F0(become)3.076 E .177(the ar)144 482.4 R .177 (guments to)-.18 F F2(command)2.676 E F0 5.176(.I)C 2.676(ft)-5.176 G (he)-2.676 E F12.676 E F0 .176 -(option is supplied, the shell places a dash at the be)2.676 F .177 -(ginning of)-.15 F .48(the zeroth ar)144 458.4 R .48(gument passed to) +(option is supplied, the shell places a dash at the be)2.676 F .176 +(ginning of)-.15 F .48(the zeroth ar)144 494.4 R .48(gument passed to) -.18 F F2(command)3.18 E F0 5.48(.T).77 G .48(his is what)-5.48 F F2(lo) 3.07 E(gin)-.1 E F0 .48(\(1\) does.).24 F(The)5.48 E F12.98 E F0 -.48(option causes)2.98 F F2(com-)3.18 E(mand)144 470.4 Q F0 .638 -(to be e)3.908 F -.15(xe)-.15 G .638(cuted with an empty en).15 F 3.138 +.48(option causes)2.98 F F2(com-)3.18 E(mand)144 506.4 Q F0 .639 +(to be e)3.909 F -.15(xe)-.15 G .638(cuted with an empty en).15 F 3.138 (vironment. If)-.4 F F13.138 E F0 .638 -(is supplied, the shell passes)3.138 F F2(name)3.499 E F0 .639(as the) -3.319 F 1.078(zeroth ar)144 482.4 R 1.077(gument to the e)-.18 F -.15 +(is supplied, the shell passes)3.138 F F2(name)3.498 E F0 .638(as the) +3.318 F 1.077(zeroth ar)144 518.4 R 1.077(gument to the e)-.18 F -.15 (xe)-.15 G 1.077(cuted command.).15 F(If)6.077 E F2(command)3.777 E F0 1.077(cannot be e)4.347 F -.15(xe)-.15 G 1.077(cuted for some reason, a) -.15 F(non-interacti)144 494.4 Q .876 -.15(ve s)-.25 H .576(hell e).15 F -.576(xits, unless the)-.15 F F1(execfail)3.076 E F0 .577 -(shell option is enabled.)3.077 F .577(In that case, it returns f)5.577 -F(ail-)-.1 E 3.32(ure. An)144 506.4 R(interacti)3.32 E 1.12 -.15(ve s) +.15 F(non-interacti)144 530.4 Q .877 -.15(ve s)-.25 H .577(hell e).15 F +.577(xits, unless the)-.15 F F1(execfail)3.077 E F0 .577 +(shell option is enabled.)3.077 F .576(In that case, it returns f)5.577 +F(ail-)-.1 E 3.32(ure. An)144 542.4 R(interacti)3.32 E 1.12 -.15(ve s) -.25 H .82(hell returns f).15 F .82(ailure if the \214le cannot be e)-.1 F -.15(xe)-.15 G 3.32(cuted. A).15 F .82(subshell e)3.32 F .82 -(xits uncondi-)-.15 F .287(tionally if)144 518.4 R F1(exec)2.787 E F0 --.1(fa)2.787 G 2.787(ils. If).1 F F2(command)2.987 E F0 .287 -(is not speci\214ed, an)3.557 F 2.788(yr)-.15 G .288(edirections tak) --2.788 F 2.788(ee)-.1 G -.25(ff)-2.788 G .288(ect in the current shell,) -.25 F(and the return status is 0.)144 530.4 Q +(xits uncondi-)-.15 F .288(tionally if)144 554.4 R F1(exec)2.788 E F0 +-.1(fa)2.788 G 2.788(ils. If).1 F F2(command)2.988 E F0 .288 +(is not speci\214ed, an)3.558 F 2.787(yr)-.15 G .287(edirections tak) +-2.787 F 2.787(ee)-.1 G -.25(ff)-2.787 G .287(ect in the current shell,) +.25 F(and the return status is 0.)144 566.4 Q (If there is a redirection error)5 E 2.5(,t)-.4 G -(he return status is 1.)-2.5 E F1(exit)108 547.2 Q F0([)2.5 E F2(n)A F0 -(])A .096(Cause the shell to e)144 547.2 R .096(xit with a status of) --.15 F F2(n)2.596 E F0 5.096(.I)C(f)-5.096 E F2(n)2.955 E F0 .095 -(is omitted, the e)2.835 F .095(xit status is that of the last command) --.15 F -.15(exe)144 559.2 S 2.5(cuted. A).15 F(trap on)2.5 E F3(EXIT)2.5 +(he return status is 1.)-2.5 E F1(exit)108 583.2 Q F0([)2.5 E F2(n)A F0 +(])A .095(Cause the shell to e)144 583.2 R .095(xit with a status of) +-.15 F F2(n)2.595 E F0 5.095(.I)C(f)-5.095 E F2(n)2.955 E F0 .096 +(is omitted, the e)2.835 F .096(xit status is that of the last command) +-.15 F -.15(exe)144 595.2 S 2.5(cuted. A).15 F(trap on)2.5 E F3(EXIT)2.5 E F0(is e)2.25 E -.15(xe)-.15 G(cuted before the shell terminates.).15 E -F1(export)108 576 Q F0([)2.5 E F1(\255fn)A F0 2.5(][).833 G F2(name)-2.5 -E F0([=)A F2(wor)A(d)-.37 E F0(]] ...)A F1(export \255p)108 588 Q F0 -.256(The supplied)144 600 R F2(names)3.117 E F0 .257(are mark)3.027 F +F1(export)108 612 Q F0([)2.5 E F1(\255fn)A F0 2.5(][).833 G F2(name)-2.5 +E F0([=)A F2(wor)A(d)-.37 E F0(]] ...)A F1(export \255p)108 624 Q F0 +.257(The supplied)144 636 R F2(names)3.117 E F0 .257(are mark)3.027 F .257(ed for automatic e)-.1 F .257(xport to the en)-.15 F .257 -(vironment of subsequently e)-.4 F -.15(xe)-.15 G(cuted).15 E 2.627 -(commands. If)144 612 R(the)2.627 E F12.627 E F0 .127 +(vironment of subsequently e)-.4 F -.15(xe)-.15 G(cuted).15 E 2.626 +(commands. If)144 648 R(the)2.626 E F12.626 E F0 .127 (option is gi)2.627 F -.15(ve)-.25 G .127(n, the).15 F F2(names)2.987 E F0 .127(refer to functions.)2.897 F .127(If no)5.127 F F2(names)2.987 E -F0 .127(are gi)2.897 F -.15(ve)-.25 G .126(n, or if the).15 F F1 -144 624 Q F0 .048(option is supplied, a list of names of all e)2.547 F +F0 .127(are gi)2.897 F -.15(ve)-.25 G .127(n, or if the).15 F F1 +144 660 Q F0 .048(option is supplied, a list of names of all e)2.548 F .048(xported v)-.15 F .048(ariables is printed.)-.25 F(The)5.048 E F1 -2.548 E F0 .048(option causes the)2.548 F -.15(ex)144 636 S 1.447 +2.547 E F0 .047(option causes the)2.547 F -.15(ex)144 672 S 1.446 (port property to be remo).15 F -.15(ve)-.15 G 3.947(df).15 G 1.447 (rom each)-3.947 F F2(name)3.947 E F0 6.447(.I)C 3.947(fav)-6.447 G 1.447(ariable name is follo)-4.197 F 1.447(wed by =)-.25 F F2(wor)A(d) --.37 E F0 3.946(,t)C(he)-3.946 E -.25(va)144 648 S .741(lue of the v).25 -F .741(ariable is set to)-.25 F F2(wor)3.241 E(d)-.37 E F0(.)A F1 -(export)5.741 E F0 .742(returns an e)3.242 F .742 -(xit status of 0 unless an in)-.15 F -.25(va)-.4 G .742(lid option is) -.25 F .032(encountered, one of the)144 660 R F2(names)2.532 E F0 .032 -(is not a v)2.532 F .032(alid shell v)-.25 F .032(ariable name, or)-.25 -F F12.531 E F0 .031(is supplied with a)2.531 F F2(name)2.891 E F0 -(that)2.711 E(is not a function.)144 672 Q F1(fc)108 688.8 Q F0([)2.5 E -F1A F2(ename)2.5 E F0 2.5(][)C F1(\255lnr)-2.5 E F0 2.5(][)C F2 -<8c72>-2.5 E(st)-.1 E F0 2.5(][)C F2(last)-2.5 E F0(])A F1(fc \255s)108 -700.8 Q F0([)2.5 E F2(pat)A F0(=)A F2 -.37(re)C(p).37 E F0 2.5(][)C F2 -(cmd)-2.5 E F0(])A .431 -(The \214rst form selects a range of commands from)144 712.8 R F2<8c72> -4.842 E(st)-.1 E F0(to)3.612 E F2(last)3.022 E F0 .432 -(from the history list and displays or)3.612 F .142(edits and re-e)144 -724.8 R -.15(xe)-.15 G .142(cutes them.).15 F F2 -.45(Fi)5.141 G -.1(rs) -.45 G(t).1 E F0(and)3.321 E F2(last)2.731 E F0 .141 -(may be speci\214ed as a string \(to locate the last command)3.321 F -(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(8) -190.545 E 0 Cg EP +-.37 E F0 3.947(,t)C(he)-3.947 E -.25(va)144 684 S .742(lue of the v).25 +F .742(ariable is set to)-.25 F F2(wor)3.242 E(d)-.37 E F0(.)A F1 +(export)5.742 E F0 .742(returns an e)3.242 F .741 +(xit status of 0 unless an in)-.15 F -.25(va)-.4 G .741(lid option is) +.25 F .031(encountered, one of the)144 696 R F2(names)2.531 E F0 .031 +(is not a v)2.531 F .032(alid shell v)-.25 F .032(ariable name, or)-.25 +F F12.532 E F0 .032(is supplied with a)2.532 F F2(name)2.892 E F0 +(that)2.712 E(is not a function.)144 708 Q(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(8)195.95 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(be)144 84 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 .071(is used as an of)144 96 R -.071(fset from the current command number\).)-.25 F .071 -(When listing, a)5.071 F/F1 10/Times-Italic@0 SF<8c72>2.571 E(st)-.1 E -F0(or)2.571 E F1(last)2.571 E F0 .071(of 0 is equi)2.571 F -.25(va)-.25 -G(-).25 E .653(lent to \2551 and \2550 is equi)144 108 R -.25(va)-.25 G -.653(lent to the current command \(usually the).25 F/F2 10/Times-Bold@0 -SF(fc)3.153 E F0 .653(command\); otherwise 0 is)3.153 F(equi)144 120 Q --.25(va)-.25 G .242(lent to \2551 and \2550 is in).25 F -.25(va)-.4 G -2.742(lid. If).25 F F1(last)2.832 E F0 .242 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(fc)108 84 Q F0([)2.5 +E F1A/F2 10/Times-Italic@0 SF(ename)2.5 E F0 2.5(][)C F1(\255lnr) +-2.5 E F0 2.5(][)C F2<8c72>-2.5 E(st)-.1 E F0 2.5(][)C F2(last)-2.5 E F0 +(])A F1(fc \255s)108 96 Q F0([)2.5 E F2(pat)A F0(=)A F2 -.37(re)C(p).37 +E F0 2.5(][)C F2(cmd)-2.5 E F0(])A .432 +(The \214rst form selects a range of commands from)144 108 R F2<8c72> +4.842 E(st)-.1 E F0(to)3.612 E F2(last)3.022 E F0 .431 +(from the history list and displays or)3.612 F .141(edits and re-e)144 +120 R -.15(xe)-.15 G .141(cutes them.).15 F F2 -.45(Fi)5.141 G -.1(rs) +.45 G(t).1 E F0(and)3.321 E F2(last)2.731 E F0 .141 +(may be speci\214ed as a string \(to locate the last command)3.321 F(be) +144 132 Q .311(ginning with that string\) or as a number \(an inde)-.15 +F 2.811(xi)-.15 G .31(nto the history list, where a ne)-2.811 F -.05(ga) +-.15 G(ti).05 E .61 -.15(ve n)-.25 H(umber).15 E .071(is used as an of) +144 144 R .071(fset from the current command number\).)-.25 F .071 +(When listing, a)5.071 F F2<8c72>2.571 E(st)-.1 E F0(or)2.571 E F2(last) +2.571 E F0 .071(of 0 is equi)2.571 F -.25(va)-.25 G(-).25 E .653 +(lent to \2551 and \2550 is equi)144 156 R -.25(va)-.25 G .653 +(lent to the current command \(usually the).25 F F1(fc)3.153 E F0 .653 +(command\); otherwise 0 is)3.153 F(equi)144 168 Q -.25(va)-.25 G .242 +(lent to \2551 and \2550 is in).25 F -.25(va)-.4 G 2.742(lid. If).25 F +F2(last)2.832 E F0 .242 (is not speci\214ed, it is set to the current command for list-)3.422 F -.092(ing \(so that)144 132 R/F3 10/Courier@0 SF .092(fc \255l \25510) -2.592 F F0 .093(prints the last 10 commands\) and to)2.592 F F1<8c72> -4.503 E(st)-.1 E F0 2.593(otherwise. If)3.273 F F1<8c72>4.503 E(st)-.1 E -F0 .093(is not speci-)3.273 F(\214ed, it is set to the pre)144 144 Q -(vious command for editing and \25516 for listing.)-.25 E(The)144 168 Q -F22.522 E F0 .022 +.093(ing \(so that)144 180 R/F3 10/Courier@0 SF .093(fc \255l \25510) +2.593 F F0 .093(prints the last 10 commands\) and to)2.593 F F2<8c72> +4.502 E(st)-.1 E F0 2.592(otherwise. If)3.272 F F2<8c72>4.502 E(st)-.1 E +F0 .092(is not speci-)3.272 F(\214ed, it is set to the pre)144 192 Q +(vious command for editing and \25516 for listing.)-.25 E(The)144 216 Q +F12.522 E F0 .022 (option suppresses the command numbers when listing.)2.522 F(The)5.022 E -F22.522 E F0 .022(option re)2.522 F -.15(ve)-.25 G .022 -(rses the order of).15 F .438(the commands.)144 180 R .438(If the)5.438 -F F22.938 E F0 .438(option is gi)2.938 F -.15(ve)-.25 G .438 +F12.522 E F0 .022(option re)2.522 F -.15(ve)-.25 G .022 +(rses the order of).15 F .438(the commands.)144 228 R .438(If the)5.438 +F F12.938 E F0 .438(option is gi)2.938 F -.15(ve)-.25 G .438 (n, the commands are listed on standard output.).15 F(Otherwise,)5.438 E -.335(the editor gi)144 192 R -.15(ve)-.25 G 2.835(nb).15 G(y)-2.835 E F1 -(ename)3.025 E F0 .335(is in)3.015 F -.2(vo)-.4 G -.1(ke).2 G 2.835(do) +.334(the editor gi)144 240 R -.15(ve)-.25 G 2.834(nb).15 G(y)-2.834 E F2 +(ename)3.024 E F0 .335(is in)3.014 F -.2(vo)-.4 G -.1(ke).2 G 2.835(do) .1 G 2.835(na\214)-2.835 G .335(le containing those commands.)-2.835 F -(If)5.334 E F1(ename)3.024 E F0 .334(is not gi)3.014 F -.15(ve)-.25 G -(n,).15 E .63(the v)144 204 R .63(alue of the)-.25 F/F4 9/Times-Bold@0 -SF(FCEDIT)3.13 E F0 -.25(va)2.88 G .631(riable is used, and the v).25 F -.631(alue of)-.25 F F4(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F4(FCEDIT) -3.131 E F0 .631(is not set.)2.881 F .631(If nei-)5.631 F .006(ther v)144 -216 R .006(ariable is set,)-.25 F F1(vi)4.171 E F0 .005(is used.)4.171 F -.005(When editing is complete, the edited commands are echoed and e) -5.005 F(x-)-.15 E(ecuted.)144 228 Q .788(In the second form,)144 252 R -F1(command)3.288 E F0 .788(is re-e)3.288 F -.15(xe)-.15 G .788 -(cuted after each instance of).15 F F1(pat)3.288 E F0 .788 -(is replaced by)3.288 F F1 -.37(re)3.289 G(p).37 E F0(.)A F1(Com-)5.789 -E(mand)144 264 Q F0 .172(is interpreted the same as)2.672 F F1<8c72> -2.672 E(st)-.1 E F0(abo)2.672 E -.15(ve)-.15 G 5.172(.A).15 G .171 -(useful alias to use with this is)-2.5 F F3 .171(r='fc \255s')2.671 F F0 -2.671(,s)C 2.671(ot)-2.671 G(hat)-2.671 E(typing)144 276 Q F3 7.165(rc) -3.665 G(c)-7.165 E F0 1.165(runs the last command be)3.665 F 1.166 -(ginning with)-.15 F F3(cc)3.666 E F0 1.166(and typing)3.666 F F3(r) -3.666 E F0(re-e)3.666 E -.15(xe)-.15 G 1.166(cutes the last com-).15 F -(mand.)144 288 Q .142(If the \214rst form is used, the return v)144 312 +(If)5.335 E F2(ename)3.025 E F0 .335(is not gi)3.015 F -.15(ve)-.25 G +(n,).15 E .631(the v)144 252 R .631(alue of the)-.25 F/F4 9/Times-Bold@0 +SF(FCEDIT)3.131 E F0 -.25(va)2.881 G .631(riable is used, and the v).25 +F .631(alue of)-.25 F F4(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F4 +(FCEDIT)3.13 E F0 .63(is not set.)2.88 F .63(If nei-)5.63 F .005(ther v) +144 264 R .005(ariable is set,)-.25 F F2(vi)4.171 E F0 .005(is used.) +4.171 F .005 +(When editing is complete, the edited commands are echoed and e)5.005 F +(x-)-.15 E(ecuted.)144 276 Q .789(In the second form,)144 300 R F2 +(command)3.288 E F0 .788(is re-e)3.288 F -.15(xe)-.15 G .788 +(cuted after each instance of).15 F F2(pat)3.288 E F0 .788 +(is replaced by)3.288 F F2 -.37(re)3.288 G(p).37 E F0(.)A F2(Com-)5.788 +E(mand)144 312 Q F0 .171(is interpreted the same as)2.671 F F2<8c72> +2.671 E(st)-.1 E F0(abo)2.671 E -.15(ve)-.15 G 5.171(.A).15 G .172 +(useful alias to use with this is)-2.499 F F3 .172(r='fc \255s')2.672 F +F0 2.672(,s)C 2.672(ot)-2.672 G(hat)-2.672 E(typing)144 324 Q F3 7.166 +(rc)3.666 G(c)-7.166 E F0 1.166(runs the last command be)3.666 F 1.166 +(ginning with)-.15 F F3(cc)3.666 E F0 1.165(and typing)3.666 F F3(r) +3.665 E F0(re-e)3.665 E -.15(xe)-.15 G 1.165(cutes the last com-).15 F +(mand.)144 336 Q .142(If the \214rst form is used, the return v)144 360 R .142(alue is 0 unless an in)-.25 F -.25(va)-.4 G .142 -(lid option is encountered or).25 F F1<8c72>4.552 E(st)-.1 E F0(or)3.322 -E F1(last)2.732 E F0 .454(specify history lines out of range.)144 324 R -.454(If the)5.454 F F22.954 E F0 .454 -(option is supplied, the return v)2.954 F .455(alue is the v)-.25 F .455 -(alue of the)-.25 F .788(last command e)144 336 R -.15(xe)-.15 G .788 -(cuted or f).15 F .787 +(lid option is encountered or).25 F F2<8c72>4.552 E(st)-.1 E F0(or)3.322 +E F2(last)2.732 E F0 .455(specify history lines out of range.)144 372 R +.454(If the)5.454 F F12.954 E F0 .454 +(option is supplied, the return v)2.954 F .454(alue is the v)-.25 F .454 +(alue of the)-.25 F .787(last command e)144 384 R -.15(xe)-.15 G .787 +(cuted or f).15 F .788 (ailure if an error occurs with the temporary \214le of commands.)-.1 F -.787(If the)5.787 F 1.135 +.788(If the)5.788 F 1.136 (second form is used, the return status is that of the command re-e)144 -348 R -.15(xe)-.15 G 1.136(cuted, unless).15 F F1(cmd)3.836 E F0 1.136 -(does not)4.406 F(specify a v)144 360 Q -(alid history line, in which case)-.25 E F2(fc)2.5 E F0(returns f)2.5 E -(ailure.)-.1 E F2(fg)108 376.8 Q F0([)2.5 E F1(jobspec)A F0(])A(Resume) -144 388.8 Q F1(jobspec)5.654 E F0 1.413(in the fore)4.224 F 1.413 +396 R -.15(xe)-.15 G 1.135(cuted, unless).15 F F2(cmd)3.835 E F0 1.135 +(does not)4.405 F(specify a v)144 408 Q +(alid history line, in which case)-.25 E F1(fc)2.5 E F0(returns f)2.5 E +(ailure.)-.1 E F1(fg)108 424.8 Q F0([)2.5 E F2(jobspec)A F0(])A(Resume) +144 436.8 Q F2(jobspec)5.653 E F0 1.413(in the fore)4.223 F 1.413 (ground, and mak)-.15 F 3.913(ei)-.1 G 3.913(tt)-3.913 G 1.413 -(he current job)-3.913 F 6.413(.I)-.4 G(f)-6.413 E F1(jobspec)5.653 E F0 -1.413(is not present, the)4.223 F(shell')144 400.8 Q 3.116(sn)-.55 G -.616(otion of the)-3.116 F F1(curr)3.116 E .616(ent job)-.37 F F0 .617 -(is used.)3.116 F .617(The return v)5.617 F .617 -(alue is that of the command placed into the)-.25 F(fore)144 412.8 Q -.363(ground, or f)-.15 F .363 -(ailure if run when job control is disabled or)-.1 F 2.862(,w)-.4 G .362 -(hen run with job control enabled, if)-2.862 F F1(jobspec)145.74 424.8 Q -F0(does not specify a v)2.81 E(alid job or)-.25 E F1(jobspec)4.24 E F0 +(he current job)-3.913 F 6.413(.I)-.4 G(f)-6.413 E F2(jobspec)5.653 E F0 +1.414(is not present, the)4.223 F(shell')144 448.8 Q 3.117(sn)-.55 G +.617(otion of the)-3.117 F F2(curr)3.117 E .617(ent job)-.37 F F0 .617 +(is used.)3.117 F .617(The return v)5.617 F .616 +(alue is that of the command placed into the)-.25 F(fore)144 460.8 Q +.362(ground, or f)-.15 F .362 +(ailure if run when job control is disabled or)-.1 F 2.862(,w)-.4 G .363 +(hen run with job control enabled, if)-2.862 F F2(jobspec)145.74 472.8 Q +F0(does not specify a v)2.81 E(alid job or)-.25 E F2(jobspec)4.24 E F0 (speci\214es a job that w)2.81 E(as started without job control.)-.1 E -F2(getopts)108 441.6 Q F1(optstring name)2.5 E F0([)2.5 E F1(ar)A 2.5 -(g.)-.37 G(..)-2.5 E F0(])A F2(getopts)144 453.6 Q F0 .793 -(is used by shell procedures to parse positional parameters.)3.293 F F1 -(optstring)6.023 E F0 .793(contains the option)3.513 F .15 -(characters to be recognized; if a character is follo)144 465.6 R .149 -(wed by a colon, the option is e)-.25 F .149(xpected to ha)-.15 F .449 --.15(ve a)-.2 H(n).15 E(ar)144 477.6 Q .578 -(gument, which should be separated from it by white space.)-.18 F .579 +F1(getopts)108 489.6 Q F2(optstring name)2.5 E F0([)2.5 E F2(ar)A 2.5 +(g.)-.37 G(..)-2.5 E F0(])A F1(getopts)144 501.6 Q F0 .793 +(is used by shell procedures to parse positional parameters.)3.294 F F2 +(optstring)6.023 E F0 .793(contains the option)3.513 F .149 +(characters to be recognized; if a character is follo)144 513.6 R .15 +(wed by a colon, the option is e)-.25 F .15(xpected to ha)-.15 F .45 +-.15(ve a)-.2 H(n).15 E(ar)144 525.6 Q .579 +(gument, which should be separated from it by white space.)-.18 F .578 (The colon and question mark char)5.579 F(-)-.2 E .636 -(acters may not be used as option characters.)144 489.6 R .636 -(Each time it is in)5.636 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F2(getopts) -3.136 E F0 .636(places the ne)3.136 F .635(xt op-)-.15 F .029 -(tion in the shell v)144 501.6 R(ariable)-.25 E F1(name)2.889 E F0 2.529 -(,i).18 G(nitializing)-2.529 E F1(name)2.889 E F0 .029(if it does not e) -2.709 F .03(xist, and the inde)-.15 F 2.53(xo)-.15 G 2.53(ft)-2.53 G .03 -(he ne)-2.53 F .03(xt ar)-.15 F(gu-)-.18 E .066 -(ment to be processed into the v)144 513.6 R(ariable)-.25 E F4(OPTIND) -2.566 E/F5 9/Times-Roman@0 SF(.)A F4(OPTIND)4.566 E F0 .065 +(acters may not be used as option characters.)144 537.6 R .636 +(Each time it is in)5.636 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F1(getopts) +3.136 E F0 .636(places the ne)3.136 F .636(xt op-)-.15 F .03 +(tion in the shell v)144 549.6 R(ariable)-.25 E F2(name)2.89 E F0 2.53 +(,i).18 G(nitializing)-2.53 E F2(name)2.89 E F0 .029(if it does not e) +2.71 F .029(xist, and the inde)-.15 F 2.529(xo)-.15 G 2.529(ft)-2.529 G +.029(he ne)-2.529 F .029(xt ar)-.15 F(gu-)-.18 E .065 +(ment to be processed into the v)144 561.6 R(ariable)-.25 E F4(OPTIND) +2.565 E/F5 9/Times-Roman@0 SF(.)A F4(OPTIND)4.565 E F0 .066 (is initialized to 1 each time the shell or a)2.315 F .885 -(shell script is in)144 525.6 R -.2(vo)-.4 G -.1(ke).2 G 3.385(d. When) -.1 F .885(an option requires an ar)3.385 F(gument,)-.18 E F2(getopts) -3.385 E F0 .885(places that ar)3.385 F .885(gument into)-.18 F .567 -(the v)144 537.6 R(ariable)-.25 E F4(OPT)3.067 E(ARG)-.81 E F5(.)A F0 -.566(The shell does not reset)5.067 F F4(OPTIND)3.066 E F0 .566 -(automatically; it must be manually reset)2.816 F .389 -(between multiple calls to)144 549.6 R F2(getopts)2.889 E F0 .389 -(within the same shell in)2.889 F -.2(vo)-.4 G .39(cation if a ne).2 F -2.89(ws)-.25 G .39(et of parameters is to)-2.89 F(be used.)144 561.6 Q -2.044(When the end of options is encountered,)144 585.6 R F2(getopts) -4.543 E F0 -.15(ex)4.543 G 2.043(its with a return v).15 F 2.043 -(alue greater than zero.)-.25 F F4(OPTIND)144 597.6 Q F0 +(shell script is in)144 573.6 R -.2(vo)-.4 G -.1(ke).2 G 3.385(d. When) +.1 F .885(an option requires an ar)3.385 F(gument,)-.18 E F1(getopts) +3.385 E F0 .885(places that ar)3.385 F .885(gument into)-.18 F .566 +(the v)144 585.6 R(ariable)-.25 E F4(OPT)3.066 E(ARG)-.81 E F5(.)A F0 +.566(The shell does not reset)5.066 F F4(OPTIND)3.066 E F0 .567 +(automatically; it must be manually reset)2.816 F .39 +(between multiple calls to)144 597.6 R F1(getopts)2.89 E F0 .39 +(within the same shell in)2.89 F -.2(vo)-.4 G .389(cation if a ne).2 F +2.889(ws)-.25 G .389(et of parameters is to)-2.889 F(be used.)144 609.6 +Q 2.043(When the end of options is encountered,)144 633.6 R F1(getopts) +4.543 E F0 -.15(ex)4.543 G 2.043(its with a return v).15 F 2.044 +(alue greater than zero.)-.25 F F4(OPTIND)144 645.6 Q F0 (is set to the inde)2.25 E 2.5(xo)-.15 G 2.5(ft)-2.5 G -(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F1(name)2.5 E F0 -(is set to ?.)2.5 E F2(getopts)144 621.6 Q F0 .485 +(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F2(name)2.5 E F0 +(is set to ?.)2.5 E F1(getopts)144 669.6 Q F0 .485 (normally parses the positional parameters, b)2.985 F .485 -(ut if more ar)-.2 F .485(guments are supplied as)-.18 F F1(ar)3.315 E -(g)-.37 E F0 -.25(va)3.205 G(l-).25 E(ues,)144 633.6 Q F2(getopts)2.5 E -F0(parses those instead.)2.5 E F2(getopts)144 657.6 Q F0 .345 +(ut if more ar)-.2 F .485(guments are supplied as)-.18 F F2(ar)3.315 E +(g)-.37 E F0 -.25(va)3.205 G(l-).25 E(ues,)144 681.6 Q F1(getopts)2.5 E +F0(parses those instead.)2.5 E F1(getopts)144 705.6 Q F0 .345 (can report errors in tw)2.845 F 2.845(ow)-.1 G 2.845(ays. If)-2.945 F -.345(the \214rst character of)2.845 F F1(optstring)3.075 E F0 .345 -(is a colon,)3.065 F F1(silent)3.185 E F0 .345(error re-)3.525 F 1.668 -(porting is used.)144 669.6 R 1.668 -(In normal operation, diagnostic messages are printed when in)6.668 F --.25(va)-.4 G 1.669(lid options or).25 F .394(missing option ar)144 -681.6 R .394(guments are encountered.)-.18 F .394(If the v)5.394 F +.345(the \214rst character of)2.845 F F2(optstring)3.075 E F0 .345 +(is a colon,)3.065 F F2(silent)3.185 E F0 .345(error re-)3.525 F 1.669 +(porting is used.)144 717.6 R 1.668 +(In normal operation, diagnostic messages are printed when in)6.669 F +-.25(va)-.4 G 1.668(lid options or).25 F .393(missing option ar)144 +729.6 R .393(guments are encountered.)-.18 F .394(If the v)5.394 F (ariable)-.25 E F4(OPTERR)2.894 E F0 .394 -(is set to 0, no error messages)2.644 F(will be displayed, e)144 693.6 Q --.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214rst character of)-2.5 E -F1(optstring)2.73 E F0(is not a colon.)2.72 E .666(If an in)144 717.6 R --.25(va)-.4 G .666(lid option is seen,).25 F F2(getopts)3.166 E F0 .667 -(places ? into)3.167 F F1(name)3.527 E F0 .667 -(and, if not silent, prints an error message)3.347 F .4(and unsets)144 -729.6 R F4(OPT)2.9 E(ARG)-.81 E F5(.)A F0(If)4.899 E F2(getopts)2.899 E -F0 .399(is silent, the option character found is placed in)2.899 F F4 -(OPT)2.899 E(ARG)-.81 E F0 .399(and no)2.649 F(GNU Bash 5.2)72 768 Q -(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(9)190.545 E 0 Cg EP +(is set to 0, no error messages)2.644 F(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(9)195.95 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(diagnostic message is printed.)144 84 Q -1.241(If a required ar)144 108 R 1.241(gument is not found, and)-.18 F -/F1 10/Times-Bold@0 SF(getopts)3.741 E F0 1.241 -(is not silent, a question mark \()3.741 F F1(?).833 E F0 3.742(\)i).833 -G 3.742(sp)-3.742 G 1.242(laced in)-3.742 F/F2 10/Times-Italic@0 SF -(name)144.36 120 Q F0(,).18 E/F3 9/Times-Bold@0 SF(OPT)2.714 E(ARG)-.81 -E F0 .213(is unset, and a diagnostic message is printed.)2.463 F(If) -5.213 E F1(getopts)2.713 E F0 .213(is silent, then a colon \()2.713 F F1 -(:).833 E F0(\)).833 E(is placed in)144 132 Q F2(name)2.86 E F0(and)2.68 -E F3(OPT)2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 -E F1(getopts)144 156 Q F0 .902 +E(UIL)-.1 E(TINS\(1\))-.92 E(will be displayed, e)144 84 Q -.15(ve)-.25 +G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214rst character of)-2.5 E/F1 10 +/Times-Italic@0 SF(optstring)2.73 E F0(is not a colon.)2.72 E .667 +(If an in)144 108 R -.25(va)-.4 G .667(lid option is seen,).25 F/F2 10 +/Times-Bold@0 SF(getopts)3.167 E F0 .667(places ? into)3.167 F F1(name) +3.527 E F0 .666(and, if not silent, prints an error message)3.347 F .399 +(and unsets)144 120 R/F3 9/Times-Bold@0 SF(OPT)2.899 E(ARG)-.81 E/F4 9 +/Times-Roman@0 SF(.)A F0(If)4.899 E F2(getopts)2.899 E F0 .399 +(is silent, the option character found is placed in)2.899 F F3(OPT)2.899 +E(ARG)-.81 E F0 .4(and no)2.65 F(diagnostic message is printed.)144 132 +Q 1.242(If a required ar)144 156 R 1.242(gument is not found, and)-.18 F +F2(getopts)3.741 E F0 1.241(is not silent, a question mark \()3.741 F F2 +(?).833 E F0 3.741(\)i).833 G 3.741(sp)-3.741 G 1.241(laced in)-3.741 F +F1(name)144.36 168 Q F0(,).18 E F3(OPT)2.713 E(ARG)-.81 E F0 .213 +(is unset, and a diagnostic message is printed.)2.463 F(If)5.213 E F2 +(getopts)2.713 E F0 .213(is silent, then a colon \()2.713 F F2(:).833 E +F0(\)).833 E(is placed in)144 180 Q F1(name)2.86 E F0(and)2.68 E F3(OPT) +2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 E F2 +(getopts)144 204 Q F0 .902 (returns true if an option, speci\214ed or unspeci\214ed, is found.) -3.401 F .902(It returns f)5.902 F .902(alse if the end of)-.1 F -(options is encountered or an error occurs.)144 168 Q F1(hash)108 184.8 -Q F0([)2.5 E F1(\255lr)A F0 2.5(][)C F1-2.5 E F2(\214lename)2.5 E -F0 2.5(][)C F1(\255dt)-2.5 E F0 2.5(][)C F2(name)-2.5 E F0(])A .858 -(Each time)144 196.8 R F1(hash)3.358 E F0 .858(is in)3.358 F -.2(vo)-.4 -G -.1(ke).2 G .858(d, the full pathname of the command).1 F F2(name) +3.402 F .902(It returns f)5.902 F .901(alse if the end of)-.1 F +(options is encountered or an error occurs.)144 216 Q F2(hash)108 232.8 +Q F0([)2.5 E F2(\255lr)A F0 2.5(][)C F2-2.5 E F1(\214lename)2.5 E +F0 2.5(][)C F2(\255dt)-2.5 E F0 2.5(][)C F1(name)-2.5 E F0(])A .858 +(Each time)144 244.8 R F2(hash)3.358 E F0 .858(is in)3.358 F -.2(vo)-.4 +G -.1(ke).2 G .858(d, the full pathname of the command).1 F F1(name) 3.718 E F0 .858(is determined by searching)3.538 F .956 -(the directories in)144 208.8 R F1($P)3.456 E -.95(AT)-.74 G(H).95 E F0 +(the directories in)144 256.8 R F2($P)3.456 E -.95(AT)-.74 G(H).95 E F0 .956(and remembered.)3.456 F(An)5.956 E 3.456(yp)-.15 G(re)-3.456 E .956 -(viously-remembered pathname is discarded.)-.25 F .243(If the)144 220.8 -R F12.743 E F0 .243 -(option is supplied, no path search is performed, and)2.743 F F2 -(\214lename)4.653 E F0 .242(is used as the full \214lename)2.923 F .615 -(of the command.)144 232.8 R(The)5.615 E F13.115 E F0 .615 +(viously-remembered pathname is discarded.)-.25 F .242(If the)144 268.8 +R F22.742 E F0 .243 +(option is supplied, no path search is performed, and)2.742 F F1 +(\214lename)4.653 E F0 .243(is used as the full \214lename)2.923 F .615 +(of the command.)144 280.8 R(The)5.615 E F23.115 E F0 .615 (option causes the shell to for)3.115 F .615 -(get all remembered locations.)-.18 F(The)5.615 E F13.115 E F0 -(op-)3.115 E .294(tion causes the shell to for)144 244.8 R .294 -(get the remembered location of each)-.18 F F2(name)2.793 E F0 5.293(.I) -C 2.793(ft)-5.293 G(he)-2.793 E F12.793 E F0 .293 -(option is supplied,)2.793 F .028(the full pathname to which each)144 -256.8 R F2(name)2.528 E F0 .028(corresponds is printed.)2.528 F .028 -(If multiple)5.028 F F2(name)2.528 E F0(ar)2.528 E .028 -(guments are sup-)-.18 F .176(plied with)144 268.8 R F12.676 E F0 -2.676(,t)C(he)-2.676 E F2(name)2.676 E F0 .175 -(is printed before the hashed full pathname.)2.676 F(The)5.175 E F1 -2.675 E F0 .175(option causes output to)2.675 F .783 -(be displayed in a format that may be reused as input.)144 280.8 R .783 +(get all remembered locations.)-.18 F(The)5.615 E F23.115 E F0 +(op-)3.115 E .293(tion causes the shell to for)144 292.8 R .293 +(get the remembered location of each)-.18 F F1(name)2.794 E F0 5.294(.I) +C 2.794(ft)-5.294 G(he)-2.794 E F22.794 E F0 .294 +(option is supplied,)2.794 F .028(the full pathname to which each)144 +304.8 R F1(name)2.528 E F0 .028(corresponds is printed.)2.528 F .028 +(If multiple)5.028 F F1(name)2.528 E F0(ar)2.528 E .028 +(guments are sup-)-.18 F .175(plied with)144 316.8 R F22.675 E F0 +2.675(,t)C(he)-2.675 E F1(name)2.675 E F0 .175 +(is printed before the hashed full pathname.)2.675 F(The)5.175 E F2 +2.676 E F0 .176(option causes output to)2.676 F .783 +(be displayed in a format that may be reused as input.)144 328.8 R .783 (If no ar)5.783 F .783(guments are gi)-.18 F -.15(ve)-.25 G .783 -(n, or if only).15 F F13.283 E F0(is)3.283 E .807 -(supplied, information about remembered commands is printed.)144 292.8 R -.807(The return status is true unless a)5.807 F F2(name)144.36 304.8 Q +(n, or if only).15 F F23.283 E F0(is)3.283 E .807 +(supplied, information about remembered commands is printed.)144 340.8 R +.807(The return status is true unless a)5.807 F F1(name)144.36 352.8 Q F0(is not found or an in)2.68 E -.25(va)-.4 G(lid option is supplied.) -.25 E F1(help)108 321.6 Q F0([)2.5 E F1(\255dms)A F0 2.5(][)C F2 -(pattern)-2.5 E F0(])A .866(Display helpful information about b)144 -333.6 R .867(uiltin commands.)-.2 F(If)5.867 E F2(pattern)4.617 E F0 -.867(is speci\214ed,)3.607 F F1(help)3.367 E F0(gi)3.367 E -.15(ve)-.25 -G 3.367(sd).15 G(etailed)-3.367 E .224(help on all commands matching)144 -345.6 R F2(pattern)3.974 E F0 2.723(;o).24 G .223 -(therwise help for all the b)-2.723 F .223 -(uiltins and shell control struc-)-.2 F(tures is printed.)144 357.6 Q F1 -144 369.6 Q F0(Display a short description of each)180 369.6 Q F2 -(pattern)2.5 E F1144 381.6 Q F0(Display the description of each) -180 381.6 Q F2(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G -(ormat)-2.5 E F1144 393.6 Q F0 -(Display only a short usage synopsis for each)180 393.6 Q F2(pattern)2.5 -E F0(The return status is 0 unless no command matches)144 410.4 Q F2 -(pattern)3.75 E F0(.).24 E F1(history [)108 427.2 Q F2(n)A F1(])A -(history \255c)108 439.2 Q(history \255d)108 451.2 Q F2(of)2.5 E(fset) --.18 E F1(history \255d)108 463.2 Q F2(start)2.5 E F0A F2(end)A F1 -(history \255anrw)108 475.2 Q F0([)2.5 E F2(\214lename)A F0(])A F1 -(history \255p)108 487.2 Q F2(ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A 2.5 -(g.)-.37 G(..)-2.5 E F0(])A F1(history \255s)108 499.2 Q F2(ar)2.5 E(g) --.37 E F0([)2.5 E F2(ar)A 2.5(g.)-.37 G(..)-2.5 E F0(])A -.4(Wi)144 -511.2 S .752 +.25 E F2(help)108 369.6 Q F0([)2.5 E F2(\255dms)A F0 2.5(][)C F1 +(pattern)-2.5 E F0(])A .867(Display helpful information about b)144 +381.6 R .867(uiltin commands.)-.2 F(If)5.867 E F1(pattern)4.617 E F0 +.866(is speci\214ed,)3.607 F F2(help)3.366 E F0(gi)3.366 E -.15(ve)-.25 +G 3.366(sd).15 G(etailed)-3.366 E .223(help on all commands matching)144 +393.6 R F1(pattern)3.973 E F0 2.723(;o).24 G .223 +(therwise help for all the b)-2.723 F .224 +(uiltins and shell control struc-)-.2 F(tures is printed.)144 405.6 Q F2 +144 417.6 Q F0(Display a short description of each)180 417.6 Q F1 +(pattern)2.5 E F2144 429.6 Q F0(Display the description of each) +180 429.6 Q F1(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G +(ormat)-2.5 E F2144 441.6 Q F0 +(Display only a short usage synopsis for each)180 441.6 Q F1(pattern)2.5 +E F0(The return status is 0 unless no command matches)144 458.4 Q F1 +(pattern)3.75 E F0(.).24 E F2(history [)108 475.2 Q F1(n)A F2(])A +(history \255c)108 487.2 Q(history \255d)108 499.2 Q F1(of)2.5 E(fset) +-.18 E F2(history \255d)108 511.2 Q F1(start)2.5 E F0(-)A F1(end)A F2 +(history \255anrw)108 523.2 Q F0([)2.5 E F1(\214lename)A F0(])A F2 +(history \255p)108 535.2 Q F1(ar)2.5 E(g)-.37 E F0([)2.5 E F1(ar)A 2.5 +(g.)-.37 G(..)-2.5 E F0(])A F2(history \255s)108 547.2 Q F1(ar)2.5 E(g) +-.37 E F0([)2.5 E F1(ar)A 2.5(g.)-.37 G(..)-2.5 E F0(])A -.4(Wi)144 +559.2 S .752 (th no options, display the command history list with line numbers.).4 F -.752(Lines listed with a)5.752 F F1(*)3.252 E F0(ha)3.252 E -.15(ve)-.2 -G .381(been modi\214ed.)144 523.2 R .38(An ar)5.38 F .38(gument of)-.18 -F F2(n)3.24 E F0 .38(lists only the last)3.12 F F2(n)3.24 E F0 2.88 +.752(Lines listed with a)5.752 F F2(*)3.251 E F0(ha)3.251 E -.15(ve)-.2 +G .38(been modi\214ed.)144 571.2 R .38(An ar)5.38 F .38(gument of)-.18 F +F1(n)3.24 E F0 .38(lists only the last)3.12 F F1(n)3.24 E F0 2.88 (lines. If)3.12 F .38(the shell v)2.88 F(ariable)-.25 E F3(HISTTIMEFOR-) -2.88 E(MA)144 535.2 Q(T)-.855 E F0 .264 -(is set and not null, it is used as a format string for)2.514 F F2 -(strftime)2.765 E F0 .265(\(3\) to display the time stamp asso-)B 1.02 -(ciated with each displayed history entry)144 547.2 R 6.019(.N)-.65 G +2.881 E(MA)144 583.2 Q(T)-.855 E F0 .265 +(is set and not null, it is used as a format string for)2.515 F F1 +(strftime)2.764 E F0 .264(\(3\) to display the time stamp asso-)B 1.019 +(ciated with each displayed history entry)144 595.2 R 6.019(.N)-.65 G 3.519(oi)-6.019 G(nterv)-3.519 E 1.019 (ening blank is printed between the formatted)-.15 F .176 -(time stamp and the history line.)144 559.2 R(If)5.176 E F2(\214lename) +(time stamp and the history line.)144 607.2 R(If)5.176 E F1(\214lename) 2.676 E F0 .176 (is supplied, it is used as the name of the history \214le; if)2.676 F -(not, the v)144 571.2 Q(alue of)-.25 E F3(HISTFILE)2.5 E F0(is used.) +(not, the v)144 619.2 Q(alue of)-.25 E F3(HISTFILE)2.5 E F0(is used.) 2.25 E(Options, if supplied, ha)5 E .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F1144 583.2 Q F0 -(Clear the history list by deleting all the entries.)180 583.2 Q F1 -144 595.2 Q F2(of)2.5 E(fset)-.18 E F0 .39 -(Delete the history entry at position)180 607.2 R F2(of)2.889 E(fset) --.18 E F0 5.389(.I)C(f)-5.389 E F2(of)2.889 E(fset)-.18 E F0 .389(is ne) -2.889 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G 2.889(,i).15 G 2.889(ti) --2.889 G 2.889(si)-2.889 G .389(nterpreted as relati)-2.889 F -.15(ve) --.25 G .598(to one greater than the last history position, so ne)180 -619.2 R -.05(ga)-.15 G(ti).05 E .899 -.15(ve i)-.25 H .599 -(ndices count back from the end).15 F(of the history)180 631.2 Q 2.5(,a) +(wing meanings:)-.25 E F2144 631.2 Q F0 +(Clear the history list by deleting all the entries.)180 631.2 Q F2 +144 643.2 Q F1(of)2.5 E(fset)-.18 E F0 .389 +(Delete the history entry at position)180 655.2 R F1(of)2.889 E(fset) +-.18 E F0 5.389(.I)C(f)-5.389 E F1(of)2.889 E(fset)-.18 E F0 .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 667.2 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 679.2 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 F1(history -d)2.5 E F0(command.)2.5 E F1 -144 643.2 Q F2(start)2.5 E F0A F2(end)A F0 1.25 -(Delete the range of history entries between positions)180 655.2 R F2 -(start)3.75 E F0(and)3.75 E F2(end)3.75 E F0 3.75(,i)C(nclusi)-3.75 E +(efers to the current)-2.5 E F2(history -d)2.5 E F0(command.)2.5 E F2 +144 691.2 Q F1(start)2.5 E F0A F1(end)A F0 1.25 +(Delete the range of history entries between positions)180 703.2 R F1 +(start)3.75 E F0(and)3.75 E F1(end)3.75 E F0 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 -667.2 Q -.05(ga)-.15 G(ti).05 E .3 -.15(ve v)-.25 H(alues for)-.1 E F2 -(start)2.5 E F0(and)2.5 E F2(end)2.5 E F0 -(are interpreted as described abo)2.5 E -.15(ve)-.15 G(.).15 E F1 -144 679.2 Q F0 .564(Append the `)180 679.2 R(`ne)-.74 E(w')-.25 E 3.064 -('h)-.74 G .564(istory lines to the history \214le.)-3.064 F .565 -(These are history lines entered since)5.564 F(the be)180 691.2 Q -(ginning of the current)-.15 E F1(bash)2.5 E F0(session, b)2.5 E -(ut not already appended to the history \214le.)-.2 E F1144 703.2 -Q F0 .854(Read the history lines not already read from the history \214\ -le into the current history list.)180 703.2 R .772 -(These are lines appended to the history \214le since the be)180 715.2 R -.773(ginning of the current)-.15 F F1(bash)3.273 E F0(ses-)3.273 E -(sion.)180 727.2 Q(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 -G(mber 22).15 E(10)185.545 E 0 Cg EP +715.2 Q -.05(ga)-.15 G(ti).05 E .3 -.15(ve v)-.25 H(alues for)-.1 E F1 +(start)2.5 E F0(and)2.5 E F1(end)2.5 E F0 +(are interpreted as described abo)2.5 E -.15(ve)-.15 G(.).15 E +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(10)190.95 E 0 Cg EP %%Page: 11 11 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF144 84 Q F0(Rea\ -d the contents of the history \214le and append them to the current his\ -tory list.)180 84 Q F1144 96 Q F0 -(Write the current history list to the history \214le, o)180 96 Q -.15 -(ve)-.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G(ontents.) --2.5 E F1144 108 Q F0 .626 -(Perform history substitution on the follo)180 108 R(wing)-.25 E/F2 10 -/Times-Italic@0 SF(ar)3.125 E(gs)-.37 E F0 .625 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF144 84 Q F0 .565 +(Append the `)180 84 R(`ne)-.74 E(w')-.25 E 3.065('h)-.74 G .564 +(istory lines to the history \214le.)-3.065 F .564 +(These are history lines entered since)5.564 F(the be)180 96 Q +(ginning of the current)-.15 E F1(bash)2.5 E F0(session, b)2.5 E +(ut not already appended to the history \214le.)-.2 E F1144 108 Q +F0 .854(Read the history lines not already read from the history \214le\ + into the current history list.)180 108 R .773 +(These are lines appended to the history \214le since the be)180 120 R +.772(ginning of the current)-.15 F F1(bash)3.272 E F0(ses-)3.272 E +(sion.)180 132 Q F1144 144 Q F0(Read the contents of the history \ +\214le and append them to the current history list.)180 144 Q F1 +144 156 Q F0(Write the current history list to the history \214le, o)180 +156 Q -.15(ve)-.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G +(ontents.)-2.5 E F1144 168 Q F0 .625 +(Perform history substitution on the follo)180 168 R(wing)-.25 E/F2 10 +/Times-Italic@0 SF(ar)3.125 E(gs)-.37 E F0 .626 (and display the result on the standard)3.125 F 2.975(output. Does)180 -120 R .475(not store the results in the history list.)2.975 F(Each)5.475 +180 R .475(not store the results in the history list.)2.975 F(Each)5.475 E F2(ar)2.975 E(g)-.37 E F0 .475(must be quoted to disable)2.975 F -(normal history e)180 132 Q(xpansion.)-.15 E F1144 144 Q F0 .363 -(Store the)180 144 R F2(ar)3.193 E(gs)-.37 E F0 .363 -(in the history list as a single entry)3.133 F 5.363(.T)-.65 G .362 -(he last command in the history list is)-5.363 F(remo)180 156 Q -.15(ve) +(normal history e)180 192 Q(xpansion.)-.15 E F1144 204 Q F0 .362 +(Store the)180 204 R F2(ar)3.192 E(gs)-.37 E F0 .363 +(in the history list as a single entry)3.132 F 5.363(.T)-.65 G .363 +(he last command in the history list is)-5.363 F(remo)180 216 Q -.15(ve) -.15 G 2.5(db).15 G(efore the)-2.5 E F2(ar)2.83 E(gs)-.37 E F0 -(are added.)2.77 E .145(If the)144 172.8 R/F3 9/Times-Bold@0 SF +(are added.)2.77 E .146(If the)144 232.8 R/F3 9/Times-Bold@0 SF (HISTTIMEFORMA)2.645 E(T)-.855 E F0 -.25(va)2.395 G .145 (riable is set, the time stamp information associated with each history) -.25 F .669(entry is written to the history \214le, mark)144 184.8 R .669 -(ed with the history comment character)-.1 F 5.668(.W)-.55 G .668 -(hen the history)-5.668 F .955(\214le is read, lines be)144 196.8 R .956 -(ginning with the history comment character follo)-.15 F .956 -(wed immediately by a digit)-.25 F .833 -(are interpreted as timestamps for the follo)144 208.8 R .833 -(wing history entry)-.25 F 5.832(.T)-.65 G .832(he return v)-5.832 F -.832(alue is 0 unless an in-)-.25 F -.25(va)144 220.8 S .168(lid option\ +.25 F .668(entry is written to the history \214le, mark)144 244.8 R .669 +(ed with the history comment character)-.1 F 5.669(.W)-.55 G .669 +(hen the history)-5.669 F .956(\214le is read, lines be)144 256.8 R .956 +(ginning with the history comment character follo)-.15 F .955 +(wed immediately by a digit)-.25 F .832 +(are interpreted as timestamps for the follo)144 268.8 R .832 +(wing history entry)-.25 F 5.833(.T)-.65 G .833(he return v)-5.833 F +.833(alue is 0 unless an in-)-.25 F -.25(va)144 280.8 S .168(lid option\ is encountered, an error occurs while reading or writing the history \ -\214le, an in).25 F -.25(va)-.4 G(lid).25 E F2(of)2.669 E(f-)-.18 E(set) -144 232.8 Q F0 .341(or range is supplied as an ar)2.841 F .341 -(gument to)-.18 F F12.841 E F0 2.841(,o)C 2.84(rt)-2.841 G .34 -(he history e)-2.84 F .34(xpansion supplied as an ar)-.15 F .34 -(gument to)-.18 F F1144 244.8 Q F0 -.1(fa)2.5 G(ils.).1 E F1(jobs) -108 261.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5(][)C F2(jobspec)A F0(... ]) -2.5 E F1(jobs \255x)108 273.6 Q F2(command)2.5 E F0([)2.5 E F2(ar)2.5 E -(gs)-.37 E F0(... ])2.5 E(The \214rst form lists the acti)144 285.6 Q .3 +\214le, an in).25 F -.25(va)-.4 G(lid).25 E F2(of)2.668 E(f-)-.18 E(set) +144 292.8 Q F0 .34(or range is supplied as an ar)2.84 F .34(gument to) +-.18 F F12.841 E F0 2.841(,o)C 2.841(rt)-2.841 G .341 +(he history e)-2.841 F .341(xpansion supplied as an ar)-.15 F .341 +(gument to)-.18 F F1144 304.8 Q F0 -.1(fa)2.5 G(ils.).1 E F1(jobs) +108 321.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5(][)C F2(jobspec)A F0(... ]) +2.5 E F1(jobs \255x)108 333.6 Q F2(command)2.5 E F0([)2.5 E F2(ar)2.5 E +(gs)-.37 E F0(... ])2.5 E(The \214rst form lists the acti)144 345.6 Q .3 -.15(ve j)-.25 H 2.5(obs. The).15 F(options ha)2.5 E .3 -.15(ve t)-.2 H -(he follo).15 E(wing meanings:)-.25 E F1144 297.6 Q F0 -(List process IDs in addition to the normal information.)180 297.6 Q F1 -144 309.6 Q F0 .193(Display information only about jobs that ha) -180 309.6 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 321.6 Q F1 -144 333.6 Q F0(List only the process ID of the job')180 333.6 Q 2.5(sp) --.55 G(rocess group leader)-2.5 E(.)-.55 E F1144 345.6 Q F0 -(Display only running jobs.)180 345.6 Q F1144 357.6 Q F0 -(Display only stopped jobs.)180 357.6 Q(If)144 374.4 Q F2(jobspec)4.554 -E F0 .314(is gi)3.124 F -.15(ve)-.25 G .314 -(n, output is restricted to information about that job).15 F 5.313(.T) --.4 G .313(he return status is 0 unless)-5.313 F(an in)144 386.4 Q -.25 +(he follo).15 E(wing meanings:)-.25 E F1144 357.6 Q F0 +(List process IDs in addition to the normal information.)180 357.6 Q F1 +144 369.6 Q F0 .194(Display information only about jobs that ha) +180 369.6 R .494 -.15(ve c)-.2 H .193(hanged status since the user w).15 +F .193(as last noti-)-.1 F(\214ed of their status.)180 381.6 Q F1 +144 393.6 Q F0(List only the process ID of the job')180 393.6 Q 2.5(sp) +-.55 G(rocess group leader)-2.5 E(.)-.55 E F1144 405.6 Q F0 +(Display only running jobs.)180 405.6 Q F1144 417.6 Q F0 +(Display only stopped jobs.)180 417.6 Q(If)144 434.4 Q F2(jobspec)4.553 +E F0 .313(is gi)3.123 F -.15(ve)-.25 G .313 +(n, output is restricted to information about that job).15 F 5.314(.T) +-.4 G .314(he return status is 0 unless)-5.314 F(an in)144 446.4 Q -.25 (va)-.4 G(lid option is encountered or an in).25 E -.25(va)-.4 G(lid).25 -E F2(jobspec)4.24 E F0(is supplied.)2.81 E .394(If the)144 403.2 R F1 -2.894 E F0 .394(option is supplied,)2.894 F F1(jobs)2.894 E F0 +E F2(jobspec)4.24 E F0(is supplied.)2.81 E .395(If the)144 463.2 R F1 +2.895 E F0 .394(option is supplied,)2.894 F F1(jobs)2.894 E F0 .394(replaces an)2.894 F(y)-.15 E F2(jobspec)4.634 E F0 .394(found in) -3.204 F F2(command)3.094 E F0(or)3.664 E F2(ar)3.224 E(gs)-.37 E F0 .395 -(with the corre-)3.164 F(sponding process group ID, and e)144 415.2 Q +3.204 F F2(command)3.094 E F0(or)3.664 E F2(ar)3.224 E(gs)-.37 E F0 .394 +(with the corre-)3.164 F(sponding process group ID, and e)144 475.2 Q -.15(xe)-.15 G(cutes).15 E F2(command)2.7 E F0(passing it)3.27 E F2(ar) 2.83 E(gs)-.37 E F0 2.5(,r).27 G(eturning its e)-2.5 E(xit status.)-.15 -E F1(kill)108 432 Q F0([)2.5 E F1A F2(sigspec)2.5 E F0(|)2.5 E F1 +E F1(kill)108 492 Q F0([)2.5 E F1A F2(sigspec)2.5 E F0(|)2.5 E F1 2.5 E F2(signum)2.5 E F0(|)2.5 E F12.5 E F2(sigspec)A F0 2.5 (][)C F2(pid)-2.5 E F0(|)2.5 E F2(jobspec)2.5 E F0 2.5(].)C(..)-2.5 E F1 -(kill \255l)108 444 Q F0(|)A F1A F0([)2.5 E F2(sigspec)A F0(|)2.5 +(kill \255l)108 504 Q F0(|)A F1A F0([)2.5 E F2(sigspec)A F0(|)2.5 E F2 -.2(ex)2.5 G(it_status).2 E F0(])A .017(Send the signal named by) -144 456 R F2(sigspec)2.857 E F0(or)2.827 E F2(signum)2.857 E F0 .017 +144 516 R F2(sigspec)2.857 E F0(or)2.827 E F2(signum)2.857 E F0 .017 (to the processes named by)2.837 F F2(pid)3.767 E F0(or)3.287 E F2 -(jobspec)4.257 E F0(.).31 E F2(sigspec)5.357 E F0(is)2.827 E .318 -(either a case-insensiti)144 468 R .618 -.15(ve s)-.25 H .318 -(ignal name such as).15 F F3(SIGKILL)2.818 E F0 .319 -(\(with or without the)2.569 F F3(SIG)2.819 E F0 .319 -(pre\214x\) or a signal)2.569 F(number;)144 480 Q F2(signum)3.268 E F0 +(jobspec)4.257 E F0(.).31 E F2(sigspec)5.357 E F0(is)2.828 E .319 +(either a case-insensiti)144 528 R .619 -.15(ve s)-.25 H .319 +(ignal name such as).15 F F3(SIGKILL)2.819 E F0 .318 +(\(with or without the)2.569 F F3(SIG)2.818 E F0 .318 +(pre\214x\) or a signal)2.568 F(number;)144 540 Q F2(signum)3.267 E F0 .427(is a signal number)3.247 F 5.427(.I)-.55 G(f)-5.427 E F2(sigspec) 3.267 E F0 .427(is not present, then)3.237 F F3(SIGTERM)2.927 E F0 .427 -(is assumed.)2.677 F .427(An ar)5.427 F(-)-.2 E .313(gument of)144 492 R -F12.813 E F0 .314(lists the signal names.)2.814 F .314(If an)5.314 +(is assumed.)2.677 F .428(An ar)5.427 F(-)-.2 E .314(gument of)144 552 R +F12.814 E F0 .314(lists the signal names.)2.814 F .314(If an)5.314 F 2.814(ya)-.15 G -.18(rg)-2.814 G .314(uments are supplied when).18 F -F12.814 E F0 .314(is gi)2.814 F -.15(ve)-.25 G .314 -(n, the names of).15 F .12(the signals corresponding to the ar)144 504 R -.119(guments are listed, and the return status is 0.)-.18 F(The)5.119 E -F2 -.2(ex)2.619 G(it_status).2 E F0(ar)2.619 E(-)-.2 E .799(gument to) -144 516 R F13.299 E F0 .799 -(is a number specifying either a signal number or the e)3.299 F .8 -(xit status of a process termi-)-.15 F .963(nated by a signal.)144 528 R +F12.814 E F0 .314(is gi)2.814 F -.15(ve)-.25 G .313 +(n, the names of).15 F .119(the signals corresponding to the ar)144 564 +R .119(guments are listed, and the return status is 0.)-.18 F(The)5.12 E +F2 -.2(ex)2.62 G(it_status).2 E F0(ar)2.62 E(-)-.2 E .8(gument to)144 +576 R F13.3 E F0 .8 +(is a number specifying either a signal number or the e)3.3 F .799 +(xit status of a process termi-)-.15 F .962(nated by a signal.)144 588 R (The)5.962 E F13.462 E F0 .962(option is equi)3.462 F -.25(va)-.25 G .962(lent to).25 F F13.462 E F0(.)A F1(kill)5.962 E F0 .962 (returns true if at least one signal w)3.462 F(as)-.1 E -(successfully sent, or f)144 540 Q(alse if an error occurs or an in)-.1 -E -.25(va)-.4 G(lid option is encountered.).25 E F1(let)108 556.8 Q F2 +(successfully sent, or f)144 600 Q(alse if an error occurs or an in)-.1 +E -.25(va)-.4 G(lid option is encountered.).25 E F1(let)108 616.8 Q F2 (ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A(g)-.37 E F0(...])2.5 E(Each)144 -568.8 Q F2(ar)5.817 E(g)-.37 E F0 2.987(is an arithmetic e)5.707 F 2.987 +628.8 Q F2(ar)5.818 E(g)-.37 E F0 2.987(is an arithmetic e)5.707 F 2.987 (xpression to be e)-.15 F -.25(va)-.25 G 2.987(luated \(see).25 F F3 2.987(ARITHMETIC EV)5.487 F(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E F0 -(in)5.238 E F2(bash\(1\))144 580.8 Q F0 2.5(\). If)B(the last)2.5 E F2 +(in)5.237 E F2(bash\(1\))144 640.8 Q F0 2.5(\). If)B(the last)2.5 E F2 (ar)2.83 E(g)-.37 E F0 -.25(eva)2.72 G(luates to 0,).25 E F1(let)2.5 E -F0(returns 1; 0 is returned otherwise.)2.5 E F1(local)108 597.6 Q F0([) +F0(returns 1; 0 is returned otherwise.)2.5 E F1(local)108 657.6 Q F0([) 2.5 E F2(option)A F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 2.5 -(].)C(.. | \255 ])-2.5 E -.15(Fo)144 609.6 S 2.542(re).15 G .042(ach ar) --2.542 F .042(gument, a local v)-.18 F .042(ariable named)-.25 F F2 +(].)C(.. | \255 ])-2.5 E -.15(Fo)144 669.6 S 2.541(re).15 G .041(ach ar) +-2.541 F .042(gument, a local v)-.18 F .042(ariable named)-.25 F F2 (name)2.902 E F0 .042(is created, and assigned)2.722 F F2(value)2.832 E -F0 5.042(.T).18 G(he)-5.042 E F2(option)2.542 E F0 .041(can be)2.541 F -(an)144 621.6 Q 3.152(yo)-.15 G 3.152(ft)-3.152 G .652 -(he options accepted by)-3.152 F F1(declar)3.152 E(e)-.18 E F0 5.652(.W) -C(hen)-5.652 E F1(local)3.152 E F0 .653 +F0 5.042(.T).18 G(he)-5.042 E F2(option)2.542 E F0 .042(can be)2.542 F +(an)144 681.6 Q 3.153(yo)-.15 G 3.153(ft)-3.153 G .653 +(he options accepted by)-3.153 F F1(declar)3.153 E(e)-.18 E F0 5.652(.W) +C(hen)-5.652 E F1(local)3.152 E F0 .652 (is used within a function, it causes the v)3.152 F(ari-)-.25 E(able)144 -633.6 Q F2(name)3.282 E F0 .422(to ha)3.102 F .722 -.15(ve a v)-.2 H +693.6 Q F2(name)3.281 E F0 .421(to ha)3.101 F .721 -.15(ve a v)-.2 H .422(isible scope restricted to that function and its children.).15 F -(If)5.421 E F2(name)2.921 E F0 .421(is \255, the set)2.921 F .509 -(of shell options is made local to the function in which)144 645.6 R F1 -(local)3.01 E F0 .51(is in)3.01 F -.2(vo)-.4 G -.1(ke).2 G .51 -(d: shell options changed us-).1 F 1.171(ing the)144 657.6 R F1(set) -3.671 E F0 -.2(bu)3.671 G 1.171 -(iltin inside the function are restored to their original v).2 F 1.17 -(alues when the function re-)-.25 F 3.38(turns. The)144 669.6 R .88 -(restore is ef)3.38 F .88(fected as if a series of)-.25 F F1(set)3.381 E -F0 .881(commands were e)3.381 F -.15(xe)-.15 G .881 -(cuted to restore the v).15 F(alues)-.25 E .788 -(that were in place before the function.)144 681.6 R -.4(Wi)5.788 G .788 -(th no operands,).4 F F1(local)3.288 E F0 .787(writes a list of local v) -3.288 F .787(ariables to)-.25 F .654(the standard output.)144 693.6 R -.654(It is an error to use)5.654 F F1(local)3.154 E F0 .654 -(when not within a function.)3.154 F .655(The return status is 0)5.654 F -(unless)144 705.6 Q F1(local)2.5 E F0(is used outside a function, an in) -2.5 E -.25(va)-.4 G(lid).25 E F2(name)2.86 E F0(is supplied, or)2.68 E -F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E(GNU Bash 5.2)72 -768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(11)185.545 E 0 Cg -EP +(If)5.422 E F2(name)2.922 E F0 .422(is \255, the set)2.922 F .51 +(of shell options is made local to the function in which)144 705.6 R F1 +(local)3.009 E F0 .509(is in)3.009 F -.2(vo)-.4 G -.1(ke).2 G .509 +(d: shell options changed us-).1 F 1.281(ing the)144 717.6 R F1(set) +3.781 E F0 -.2(bu)3.781 G 1.281 +(iltin inside the function after the call to).2 F F1(local)3.781 E F0 +1.282(are restored to their original v)3.781 F(alues)-.25 E .278 +(when the function returns.)144 729.6 R .278(The restore is ef)5.278 F +.278(fected as if a series of)-.25 F F1(set)2.777 E F0 .277 +(commands were e)2.777 F -.15(xe)-.15 G .277(cuted to).15 F +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(11)190.95 E 0 Cg EP %%Page: 12 12 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(logout)108 84 Q F0 -(Exit a login shell.)144 84 Q F1(map\214le)108 100.8 Q F0([)2.5 E F1 -A/F2 10/Times-Italic@0 SF(delim)2.5 E F0 2.5(][)C F1-2.5 E -F2(count)2.5 E F0 2.5(][)C F1-2.5 E F2(origin)2.5 E F0 2.5(][)C F1 --2.5 E F2(count)2.5 E F0 2.5(][)C F1-2.5 E F0 2.5(][)C F1 +E(UIL)-.1 E(TINS\(1\))-.92 E .69(restore the v)144 84 R .69 +(alues that were in place before the function.)-.25 F -.4(Wi)5.69 G .69 +(th no operands,).4 F/F1 10/Times-Bold@0 SF(local)3.19 E F0 .69 +(writes a list of)3.19 F .567(local v)144 96 R .566 +(ariables to the standard output.)-.25 F .566(It is an error to use) +5.566 F F1(local)3.066 E F0 .566(when not within a function.)3.066 F +(The)5.566 E .425(return status is 0 unless)144 108 R F1(local)2.925 E +F0 .425(is used outside a function, an in)2.925 F -.25(va)-.4 G(lid).25 +E/F2 10/Times-Italic@0 SF(name)3.285 E F0 .426(is supplied, or)3.105 F +F2(name)2.926 E F0 .426(is a)2.926 F(readonly v)144 120 Q(ariable.)-.25 +E F1(logout)108 136.8 Q F0(Exit a login shell.)144 136.8 Q F1(map\214le) +108 153.6 Q F0([)2.5 E F1A F2(delim)2.5 E F0 2.5(][)C F1-2.5 +E F2(count)2.5 E F0 2.5(][)C F1-2.5 E F2(origin)2.5 E F0 2.5(][)C +F1-2.5 E F2(count)2.5 E F0 2.5(][)C F1-2.5 E F0 2.5(][)C F1 -2.5 E F2(fd)2.5 E F0 2.5(][)C F1-2.5 E F2(callbac)2.5 E(k) -.2 E F0 2.5(][)C F1-2.5 E F2(quantum)2.5 E F0 2.5(][)C F2(arr) --2.5 E(ay)-.15 E F0(])A F1 -.18(re)108 112.8 S(adarray).18 E F0([)2.5 E +-2.5 E(ay)-.15 E F0(])A F1 -.18(re)108 165.6 S(adarray).18 E F0([)2.5 E F1A F2(delim)2.5 E F0 2.5(][)C F1-2.5 E F2(count)2.5 E F0 2.5(][)C F1-2.5 E F2(origin)2.5 E F0 2.5(][)C F1-2.5 E F2 (count)2.5 E F0 2.5(][)C F1-2.5 E F0 2.5(][)C F1-2.5 E F2 (fd)2.5 E F0 2.5(][)C F1-2.5 E F2(callbac)2.5 E(k)-.2 E F0 2.5(][) C F1-2.5 E F2(quantum)2.5 E F0 2.5(][)C F2(arr)-2.5 E(ay)-.15 E F0 -(])A .159(Read lines from the standard input into the inde)144 124.8 R +(])A .159(Read lines from the standard input into the inde)144 177.6 R -.15(xe)-.15 G 2.659(da).15 G .159(rray v)-2.659 F(ariable)-.25 E F2 (arr)2.989 E(ay)-.15 E F0 2.659(,o).32 G 2.658(rf)-2.659 G .158 -(rom \214le descriptor)-2.658 F F2(fd)4.628 E F0 1.248(if the)144 136.8 +(rom \214le descriptor)-2.658 F F2(fd)4.628 E F0 1.248(if the)144 189.6 R F13.748 E F0 1.248(option is supplied.)3.748 F 1.249(The v)6.249 F(ariable)-.25 E/F3 9/Times-Bold@0 SF(MAPFILE)3.749 E F0 1.249 (is the def)3.499 F(ault)-.1 E F2(arr)3.749 E(ay)-.15 E F0 6.249(.O)C -1.249(ptions, if supplied,)-6.249 F(ha)144 148.8 Q .3 -.15(ve t)-.2 H -(he follo).15 E(wing meanings:)-.25 E F1144 160.8 Q F0 .911 -(The \214rst character of)180 160.8 R F2(delim)3.411 E F0 .911 +1.249(ptions, if supplied,)-6.249 F(ha)144 201.6 Q .3 -.15(ve t)-.2 H +(he follo).15 E(wing meanings:)-.25 E F1144 213.6 Q F0 .911 +(The \214rst character of)180 213.6 R F2(delim)3.411 E F0 .911 (is used to terminate each input line, rather than ne)3.411 F 3.41 -(wline. If)-.25 F F2(delim)180 172.8 Q F0(is the empty string,)2.5 E F1 +(wline. If)-.25 F F2(delim)180 225.6 Q F0(is the empty string,)2.5 E F1 (map\214le)2.5 E F0(will terminate a line when it reads a NUL character) -2.5 E(.)-.55 E F1144 184.8 Q F0(Cop)180 184.8 Q 2.5(ya)-.1 G 2.5 +2.5 E(.)-.55 E F1144 237.6 Q F0(Cop)180 237.6 Q 2.5(ya)-.1 G 2.5 (tm)-2.5 G(ost)-2.5 E F2(count)2.7 E F0 2.5(lines. If)3.18 F F2(count) -2.5 E F0(is 0, all lines are copied.)2.5 E F1144 196.8 Q F0(Be)180 -196.8 Q(gin assigning to)-.15 E F2(arr)2.83 E(ay)-.15 E F0(at inde)2.82 +2.5 E F0(is 0, all lines are copied.)2.5 E F1144 249.6 Q F0(Be)180 +249.6 Q(gin assigning to)-.15 E F2(arr)2.83 E(ay)-.15 E F0(at inde)2.82 E(x)-.15 E F2(origin)2.73 E F0 5(.T).24 G(he def)-5 E(ault inde)-.1 E -2.5(xi)-.15 G 2.5(s0)-2.5 G(.)-2.5 E F1144 208.8 Q F0 -(Discard the \214rst)180 208.8 Q F2(count)2.5 E F0(lines read.)2.5 E F1 -144 220.8 Q F0(Remo)180 220.8 Q .3 -.15(ve a t)-.15 H(railing).15 +2.5(xi)-.15 G 2.5(s0)-2.5 G(.)-2.5 E F1144 261.6 Q F0 +(Discard the \214rst)180 261.6 Q F2(count)2.5 E F0(lines read.)2.5 E F1 +144 273.6 Q F0(Remo)180 273.6 Q .3 -.15(ve a t)-.15 H(railing).15 E F2(delim)2.5 E F0(\(def)2.5 E(ault ne)-.1 E -(wline\) from each line read.)-.25 E F1144 232.8 Q F0 -(Read lines from \214le descriptor)180 232.8 Q F2(fd)2.5 E F0 -(instead of the standard input.)2.5 E F1144 244.8 Q F0(Ev)180 -244.8 Q(aluate)-.25 E F2(callbac)2.7 E(k)-.2 E F0(each time)3.17 E F2 +(wline\) from each line read.)-.25 E F1144 285.6 Q F0 +(Read lines from \214le descriptor)180 285.6 Q F2(fd)2.5 E F0 +(instead of the standard input.)2.5 E F1144 297.6 Q F0(Ev)180 +297.6 Q(aluate)-.25 E F2(callbac)2.7 E(k)-.2 E F0(each time)3.17 E F2 (quantum)2.5 E F0(lines are read.)2.5 E(The)5 E F12.5 E F0 -(option speci\214es)2.5 E F2(quantum)2.75 E F0(.).32 E F1144 256.8 -Q F0(Specify the number of lines read between each call to)180 256.8 Q -F2(callbac)2.7 E(k)-.2 E F0(.).67 E(If)144 273.6 Q F12.967 E F0 +(option speci\214es)2.5 E F2(quantum)2.75 E F0(.).32 E F1144 309.6 +Q F0(Specify the number of lines read between each call to)180 309.6 Q +F2(callbac)2.7 E(k)-.2 E F0(.).67 E(If)144 326.4 Q F12.967 E F0 .467(is speci\214ed without)2.967 F F12.967 E F0 2.967(,t)C .467 (he def)-2.967 F .467(ault quantum is 5000.)-.1 F(When)5.467 E F2 (callbac)2.967 E(k)-.2 E F0 .467(is e)2.967 F -.25(va)-.25 G .467 -(luated, it is sup-).25 F .262(plied the inde)144 285.6 R 2.762(xo)-.15 +(luated, it is sup-).25 F .262(plied the inde)144 338.4 R 2.762(xo)-.15 G 2.762(ft)-2.762 G .262(he ne)-2.762 F .261(xt array element to be ass\ igned and the line to be assigned to that element)-.15 F .274 -(as additional ar)144 297.6 R(guments.)-.18 E F2(callbac)5.274 E(k)-.2 E +(as additional ar)144 350.4 R(guments.)-.18 E F2(callbac)5.274 E(k)-.2 E F0 .274(is e)2.774 F -.25(va)-.25 G .274 (luated after the line is read b).25 F .275 -(ut before the array element is)-.2 F(assigned.)144 309.6 Q -(If not supplied with an e)144 326.4 Q(xplicit origin,)-.15 E F1 +(ut before the array element is)-.2 F(assigned.)144 362.4 Q +(If not supplied with an e)144 379.2 Q(xplicit origin,)-.15 E F1 (map\214le)2.5 E F0(will clear)2.5 E F2(arr)2.5 E(ay)-.15 E F0 -(before assigning to it.)2.5 E F1(map\214le)144 343.2 Q F0 .797 +(before assigning to it.)2.5 E F1(map\214le)144 396 Q F0 .797 (returns successfully unless an in)3.298 F -.25(va)-.4 G .797 (lid option or option ar).25 F .797(gument is supplied,)-.18 F F2(arr) -3.297 E(ay)-.15 E F0 .797(is in-)3.297 F -.25(va)144 355.2 S +3.297 E(ay)-.15 E F0 .797(is in-)3.297 F -.25(va)144 408 S (lid or unassignable, or if).25 E F2(arr)2.5 E(ay)-.15 E F0 (is not an inde)2.5 E -.15(xe)-.15 G 2.5(da).15 G(rray)-2.5 E(.)-.65 E -F1(popd)108 372 Q F0<5bad>2.5 E F1(n)A F0 2.5(][)C(+)-2.5 E F2(n)A F0 -2.5(][)C-2.5 E F2(n)A F0(])A(Remo)144 384 Q -.15(ve)-.15 G 3.091(se) -.15 G .591(ntries from the directory stack.)-3.091 F .592 +F1(popd)108 424.8 Q F0<5bad>2.5 E F1(n)A F0 2.5(][)C(+)-2.5 E F2(n)A F0 +2.5(][)C-2.5 E F2(n)A F0(])A(Remo)144 436.8 Q -.15(ve)-.15 G 3.091 +(se).15 G .591(ntries from the directory stack.)-3.091 F .592 (The elements are numbered from 0 starting at the \214rst)5.591 F .665 -(directory listed by)144 396 R F1(dirs)3.165 E F0 5.665(.W)C .665 +(directory listed by)144 448.8 R F1(dirs)3.165 E F0 5.665(.W)C .665 (ith no ar)-6.065 F(guments,)-.18 E F1(popd)3.165 E F0(remo)3.165 E -.15 (ve)-.15 G 3.165(st).15 G .664(he top directory from the stack, and) --3.165 F(changes to the ne)144 408 Q 2.5(wt)-.25 G(op directory)-2.5 E 5 -(.A)-.65 G -.18(rg)-5 G(uments, if supplied, ha).18 E .3 -.15(ve t)-.2 H -(he follo).15 E(wing meanings:)-.25 E F1144 420 Q F0 .551 -(Suppresses the normal change of directory when remo)180 420 R .551 +-3.165 F(changes to the ne)144 460.8 Q 2.5(wt)-.25 G(op directory)-2.5 E +5(.A)-.65 G -.18(rg)-5 G(uments, if supplied, ha).18 E .3 -.15(ve t)-.2 +H(he follo).15 E(wing meanings:)-.25 E F1144 472.8 Q F0 .551 +(Suppresses the normal change of directory when remo)180 472.8 R .551 (ving directories from the stack, so)-.15 F -(that only the stack is manipulated.)180 432 Q F1(+)144 444 Q F2(n)A F0 -(Remo)180 444 Q -.15(ve)-.15 G 2.64(st).15 G(he)-2.64 E F2(n)2.64 E F0 -.14(th entry counting from the left of the list sho)B .14(wn by)-.25 F -F1(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero,)-2.64 F .779 -(from the stack.)180 456 R -.15(Fo)5.779 G 3.279(re).15 G(xample:)-3.429 -E/F4 10/Courier@0 SF .779(popd +0)3.279 F F0(remo)3.279 E -.15(ve)-.15 G -3.279(st).15 G .779(he \214rst directory)-3.279 F(,)-.65 E F4 .78 -(popd +1)3.28 F F0 .78(the sec-)3.28 F(ond.)180 468 Q F1144 480 Q F2 -(n)A F0(Remo)180 480 Q -.15(ve)-.15 G 3.76(st).15 G(he)-3.76 E F2(n)3.76 -E F0 1.259(th entry counting from the right of the list sho)B 1.259 -(wn by)-.25 F F1(dirs)3.759 E F0 3.759(,s)C 1.259(tarting with)-3.759 F -2.5(zero. F)180 492 R(or e)-.15 E(xample:)-.15 E F4(popd -0)2.5 E F0 -(remo)2.5 E -.15(ve)-.15 G 2.5(st).15 G(he last directory)-2.5 E(,)-.65 -E F4(popd -1)2.5 E F0(the ne)2.5 E(xt to last.)-.15 E .093 +(that only the stack is manipulated.)180 484.8 Q F1(+)144 496.8 Q F2(n)A +F0(Remo)180 496.8 Q -.15(ve)-.15 G 2.64(st).15 G(he)-2.64 E F2(n)2.64 E +F0 .14(th entry counting from the left of the list sho)B .14(wn by)-.25 +F F1(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero,)-2.64 F .779 +(from the stack.)180 508.8 R -.15(Fo)5.779 G 3.279(re).15 G(xample:) +-3.429 E/F4 10/Courier@0 SF .779(popd +0)3.279 F F0(remo)3.279 E -.15 +(ve)-.15 G 3.279(st).15 G .779(he \214rst directory)-3.279 F(,)-.65 E F4 +.78(popd +1)3.28 F F0 .78(the sec-)3.28 F(ond.)180 520.8 Q F1144 +532.8 Q F2(n)A F0(Remo)180 532.8 Q -.15(ve)-.15 G 3.76(st).15 G(he)-3.76 +E F2(n)3.76 E F0 1.259(th entry counting from the right of the list sho) +B 1.259(wn by)-.25 F F1(dirs)3.759 E F0 3.759(,s)C 1.259(tarting with) +-3.759 F 2.5(zero. F)180 544.8 R(or e)-.15 E(xample:)-.15 E F4(popd -0) +2.5 E F0(remo)2.5 E -.15(ve)-.15 G 2.5(st).15 G(he last directory)-2.5 E +(,)-.65 E F4(popd -1)2.5 E F0(the ne)2.5 E(xt to last.)-.15 E .093 (If the top element of the directory stack is modi\214ed, and the)144 -508.8 R F2(-n)2.593 E F0 .094(option w)2.594 F .094(as not supplied,)-.1 -F F1(popd)2.594 E F0(uses)2.594 E(the)144 520.8 Q F1(cd)2.697 E F0 -.2 +561.6 R F2(-n)2.593 E F0 .094(option w)2.594 F .094(as not supplied,)-.1 +F F1(popd)2.594 E F0(uses)2.594 E(the)144 573.6 Q F1(cd)2.697 E F0 -.2 (bu)2.697 G .196 (iltin to change to the directory at the top of the stack.).2 F .196 (If the)5.196 F F1(cd)2.696 E F0 -.1(fa)2.696 G(ils,).1 E F1(popd)2.696 -E F0 .196(returns a non-)2.696 F(zero v)144 532.8 Q(alue.)-.25 E -(Otherwise,)144 549.6 Q F1(popd)2.67 E F0 .17(returns f)2.67 F .17 +E F0 .196(returns a non-)2.696 F(zero v)144 585.6 Q(alue.)-.25 E +(Otherwise,)144 602.4 Q F1(popd)2.67 E F0 .17(returns f)2.67 F .17 (alse if an in)-.1 F -.25(va)-.4 G .171 (lid option is encountered, the directory stack is empty).25 F 2.671(,o) --.65 G 2.671(ra)-2.671 G(non-e)144 561.6 Q +-.65 G 2.671(ra)-2.671 G(non-e)144 614.4 Q (xistent directory stack entry is speci\214ed.)-.15 E 1.556(If the)144 -578.4 R F1(popd)4.056 E F0 1.556(command is successful, bash runs)4.056 +631.2 R F1(popd)4.056 E F0 1.556(command is successful, bash runs)4.056 F F1(dirs)4.056 E F0 1.556(to sho)4.056 F 4.055(wt)-.25 G 1.555 (he \214nal contents of the directory)-4.055 F -(stack, and the return status is 0.)144 590.4 Q F1(printf)108 607.2 Q F0 +(stack, and the return status is 0.)144 643.2 Q F1(printf)108 660 Q F0 ([)2.5 E F1A F2(var)2.5 E F0(])A F2(format)2.5 E F0([)2.5 E F2(ar) -A(guments)-.37 E F0(])A .357(Write the formatted)144 619.2 R F2(ar)2.857 -E(guments)-.37 E F0 .357 -(to the standard output under the control of the)2.857 F F2(format)2.858 -E F0 5.358(.T)C(he)-5.358 E F12.858 E F0(op-)2.858 E .714 -(tion causes the output to be assigned to the v)144 631.2 R(ariable)-.25 -E F2(var)3.214 E F0 .714(rather than being printed to the standard)3.214 -F(output.)144 643.2 Q(The)144 667.2 Q F2(format)3.017 E F0 .517(is a ch\ -aracter string which contains three types of objects: plain characters,\ - which are)3.017 F .704(simply copied to standard output, character esc\ -ape sequences, which are con)144 679.2 R -.15(ve)-.4 G .703 -(rted and copied to).15 F .036(the standard output, and format speci\ -\214cations, each of which causes printing of the ne)144 691.2 R .037 -(xt successi)-.15 F -.15(ve)-.25 G F2(ar)144 703.2 Q(gument)-.37 E F0 -5.532(.I)C 3.032(na)-5.532 G .532(ddition to the standard)-3.032 F F2 -(printf)3.032 E F0 .532(\(1\) format speci\214cations,)B F1(printf)3.031 -E F0 .531(interprets the follo)3.031 F(w-)-.25 E(ing e)144 715.2 Q -(xtensions:)-.15 E(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 -G(mber 22).15 E(12)185.545 E 0 Cg EP +A(guments)-.37 E F0(])A .357(Write the formatted)144 672 R F2(ar)2.857 E +(guments)-.37 E F0 .357(to the standard output under the control of the) +2.857 F F2(format)2.858 E F0 5.358(.T)C(he)-5.358 E F12.858 E F0 +(op-)2.858 E .714(tion causes the output to be assigned to the v)144 684 +R(ariable)-.25 E F2(var)3.214 E F0 .714 +(rather than being printed to the standard)3.214 F(output.)144 696 Q +(The)144 720 Q F2(format)3.017 E F0 .517(is a character string which co\ +ntains three types of objects: plain characters, which are)3.017 F +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(12)190.95 E 0 Cg EP %%Page: 13 13 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(%b)144 84 Q F0 -(causes)180 84 Q F1(printf)2.595 E F0 .096(to e)2.595 F .096 -(xpand backslash escape sequences in the corresponding)-.15 F/F2 10 -/Times-Italic@0 SF(ar)2.596 E(gument)-.37 E F0 .096(in the)2.596 F -(same w)180 96 Q(ay as)-.1 E F1(echo \255e)2.5 E F0(.)A F1(%q)144 108 Q -F0(causes)180 108 Q F1(printf)2.51 E F0 .01(to output the corresponding) -2.51 F F2(ar)2.51 E(gument)-.37 E F0 .01 -(in a format that can be reused as shell)2.51 F(input.)180 120 Q F1(%Q) -144 132 Q F0(lik)180 132 Q(e)-.1 E F1(%q)2.5 E F0 2.5(,b)C -(ut applies an)-2.7 E 2.5(ys)-.15 G(upplied precision to the)-2.5 E F2 -(ar)2.5 E(gument)-.37 E F0(before quoting it.)2.5 E F1(%\()144 144 Q F2 -(datefmt)A F1(\)T)A F0(causes)180 156 Q F1(printf)4.403 E F0 1.904 -(to output the date-time string resulting from using)4.403 F F2(datefmt) -4.404 E F0 1.904(as a format)4.404 F .381(string for)180 168 R F2 -(strftime)2.881 E F0 2.881(\(3\). The)B(corresponding)2.881 E F2(ar) +E(UIL)-.1 E(TINS\(1\))-.92 E .704(simply copied to standard output, cha\ +racter escape sequences, which are con)144 84 R -.15(ve)-.4 G .703 +(rted and copied to).15 F .036(the standard output, and format speci\ +\214cations, each of which causes printing of the ne)144 96 R .037 +(xt successi)-.15 F -.15(ve)-.25 G/F1 10/Times-Italic@0 SF(ar)144 108 Q +(gument)-.37 E F0 5.028(.I)C 2.528(na)-5.028 G .027 +(ddition to the standard)-2.528 F F1(printf)2.527 E F0 .027 +(\(3\) format characters)B/F2 10/Times-Bold@0 SF(csndiouxXeEfFgGaA)2.527 +E F0(,)A F2(printf)2.527 E F0(in-)2.527 E(terprets the follo)144 120 Q +(wing additional format speci\214ers:)-.25 E F2(%b)144 132 Q F0(causes) +180 132 Q F2(printf)2.595 E F0 .096(to e)2.595 F .096 +(xpand backslash escape sequences in the corresponding)-.15 F F1(ar) +2.596 E(gument)-.37 E F0 .096(in the)2.596 F(same w)180 144 Q(ay as)-.1 +E F2(echo \255e)2.5 E F0(.)A F2(%q)144 156 Q F0(causes)180 156 Q F2 +(printf)2.51 E F0 .01(to output the corresponding)2.51 F F1(ar)2.51 E +(gument)-.37 E F0 .01(in a format that can be reused as shell)2.51 F +(input.)180 168 Q F2(%q)5.514 E F0(and)3.014 E F2(%Q)3.014 E F0 .514 +(use the)3.014 F F2($')3.014 E(')-.63 E F0 .514(quoting style if an) +3.014 F 3.015(yc)-.15 G .515(haracters in the ar)-3.015 F .515 +(gument string re-)-.18 F 1.286 +(quire it, and backslash quoting otherwise.)180 180 R 1.285 +(If the format string uses the)6.285 F F1(printf)3.785 E F0(alternate) +3.785 E(form, these tw)180 192 Q 2.5(of)-.1 G(ormats quote the ar)-2.5 E +(gument string using single quotes.)-.18 E F2(%Q)144 204 Q F0(lik)180 +204 Q(e)-.1 E F2(%q)2.5 E F0 2.5(,b)C(ut applies an)-2.7 E 2.5(ys)-.15 G +(upplied precision to the)-2.5 E F1(ar)2.5 E(gument)-.37 E F0 +(before quoting it.)2.5 E F2(%\()144 216 Q F1(datefmt)A F2(\)T)A F0 +(causes)180 228 Q F2(printf)4.403 E F0 1.904 +(to output the date-time string resulting from using)4.403 F F1(datefmt) +4.404 E F0 1.904(as a format)4.404 F .381(string for)180 240 R F1 +(strftime)2.881 E F0 2.881(\(3\). The)B(corresponding)2.881 E F1(ar) 2.881 E(gument)-.37 E F0 .381(is an inte)2.881 F .381 (ger representing the number)-.15 F .292(of seconds since the epoch.)180 -180 R -1 -.8(Tw o)5.293 H .293(special ar)3.593 F .293(gument v)-.18 F +252 R -1 -.8(Tw o)5.293 H .293(special ar)3.593 F .293(gument v)-.18 F .293(alues may be used: \2551 represents the)-.25 F .694 -(current time, and \2552 represents the time the shell w)180 192 R .693 +(current time, and \2552 represents the time the shell w)180 264 R .693 (as in)-.1 F -.2(vo)-.4 G -.1(ke).2 G 3.193(d. If).1 F .693(no ar)3.193 -F .693(gument is speci-)-.18 F .21(\214ed, con)180 204 R -.15(ve)-.4 G +F .693(gument is speci-)-.18 F .21(\214ed, con)180 276 R -.15(ve)-.4 G .21(rsion beha).15 F -.15(ve)-.2 G 2.71(sa).15 G 2.71(si)-2.71 G 2.71 <66ad>-2.71 G 2.71(1h)-2.71 G .21(ad been gi)-2.71 F -.15(ve)-.25 G 2.71 -(n. This).15 F .21(is an e)2.71 F .21(xception to the usual)-.15 F F1 -(printf)2.71 E F0(beha)180 216 Q(vior)-.2 E(.)-.55 E .902 -(The %b, %q, and %T directi)144 232.8 R -.15(ve)-.25 G 3.401(sa).15 G -.901(ll use the \214eld width and precision ar)-3.401 F .901 -(guments from the format)-.18 F .357(speci\214cation and write that man) -144 244.8 R 2.857(yb)-.15 G .358 -(ytes from \(or use that wide a \214eld for\) the e)-2.857 F .358 -(xpanded ar)-.15 F(gument,)-.18 E -(which usually contains more characters than the original.)144 256.8 Q -(Ar)144 273.6 Q .464(guments to non-string format speci\214ers are trea\ -ted as C constants, e)-.18 F .463(xcept that a leading plus or)-.15 F -1.258(minus sign is allo)144 285.6 R 1.259 +(n. This).15 F .21(is an e)2.71 F .21(xception to the usual)-.15 F F2 +(printf)2.71 E F0(beha)180 288 Q(vior)-.2 E(.)-.55 E .946(The %b, %q, a\ +nd %T format speci\214ers all use the \214eld width and precision ar)144 +304.8 R .945(guments from the)-.18 F .338 +(format speci\214cation and write that man)144 316.8 R 2.838(yb)-.15 G +.338(ytes from \(or use that wide a \214eld for\) the e)-2.838 F .339 +(xpanded ar)-.15 F(-)-.2 E +(gument, which usually contains more characters than the original.)144 +328.8 Q(The %n format speci\214er accepts a corresponding ar)144 345.6 Q +(gument that is treated as a shell v)-.18 E(ariable name.)-.25 E .394 +(The %s and %c format speci\214ers accept an l \(long\) modi\214er)144 +362.4 R 2.893(,w)-.4 G .393(hich forces them to con)-2.893 F -.15(ve)-.4 +G .393(rt the ar).15 F(-)-.2 E .32 +(gument string to a wide-character string and apply an)144 374.4 R 2.821 +(ys)-.15 G .321(upplied \214eld width and precision in terms)-2.821 F +(of characters, not bytes.)144 386.4 Q(Ar)144 403.2 Q .464(guments to n\ +on-string format speci\214ers are treated as C constants, e)-.18 F .463 +(xcept that a leading plus or)-.15 F 1.258(minus sign is allo)144 415.2 +R 1.259 (wed, and if the leading character is a single or double quote, the v) --.25 F 1.259(alue is the)-.25 F(ASCII v)144 297.6 Q(alue of the follo) --.25 E(wing character)-.25 E(.)-.55 E(The)144 314.4 Q F2(format)2.515 E -F0 .015(is reused as necessary to consume all of the)2.515 F F2(ar)2.515 -E(guments)-.37 E F0 5.015(.I)C 2.514(ft)-5.015 G(he)-2.514 E F2(format) -2.514 E F0 .014(requires more)2.514 F F2(ar)2.514 E(-)-.2 E(guments)144 -326.4 Q F0 .565(than are supplied, the e)3.065 F .566 +-.25 F 1.259(alue is the)-.25 F(ASCII v)144 427.2 Q(alue of the follo) +-.25 E(wing character)-.25 E(.)-.55 E(The)144 444 Q F1(format)2.515 E F0 +.015(is reused as necessary to consume all of the)2.515 F F1(ar)2.515 E +(guments)-.37 E F0 5.015(.I)C 2.514(ft)-5.015 G(he)-2.514 E F1(format) +2.514 E F0 .014(requires more)2.514 F F1(ar)2.514 E(-)-.2 E(guments)144 +456 Q F0 .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(as appropriate, had been supplied.)144 338.4 Q(The return v)5 E -(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F1(pushd) -108 355.2 Q F0([)2.5 E F1A F0 2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C --2.5 E F2(n)A F0(])A F1(pushd)108 367.2 Q F0([)2.5 E F1A F0 -2.5(][)C F2(dir)-2.5 E F0(])A .64(Adds a directory to the top of the di\ -rectory stack, or rotates the stack, making the ne)144 379.2 R 3.139(wt) --.25 G .639(op of the)-3.139 F .088(stack the current w)144 391.2 R .088 -(orking directory)-.1 F 5.088(.W)-.65 G .088(ith no ar)-5.488 F -(guments,)-.18 E F1(pushd)2.589 E F0 -.15(ex)2.589 G .089 -(changes the top tw).15 F 2.589(oe)-.1 G .089(lements of)-2.589 F -(the directory stack.)144 403.2 Q(Ar)5 E(guments, if supplied, ha)-.18 E -.3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 -415.2 Q F0 1.811(Suppresses the normal change of directory when rotatin\ -g or adding directories to the)180 415.2 R -(stack, so that only the stack is manipulated.)180 427.2 Q F1(+)144 -439.2 Q F2(n)A F0 1.267(Rotates the stack so that the)180 439.2 R F2(n) -3.767 E F0 1.268(th directory \(counting from the left of the list sho)B -1.268(wn by)-.25 F F1(dirs)180 451.2 Q F0 2.5(,s)C -(tarting with zero\) is at the top.)-2.5 E F1144 463.2 Q F2(n)A F0 -.92(Rotates the stack so that the)180 463.2 R F2(n)3.42 E F0 .92 +-.25 F .542(as appropriate, had been supplied.)144 468 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 480 Q F2 +(pushd)108 496.8 Q F0([)2.5 E F2A F0 2.5(][)C(+)-2.5 E F1(n)A F0 +2.5(][)C-2.5 E F1(n)A F0(])A F2(pushd)108 508.8 Q F0([)2.5 E F2 +A F0 2.5(][)C F1(dir)-2.5 E F0(])A .639(Adds a directory to the t\ +op of the directory stack, or rotates the stack, making the ne)144 520.8 +R 3.14(wt)-.25 G .64(op of the)-3.14 F .089(stack the current w)144 +532.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 F0 -.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 544.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 F2144 +556.8 Q F0 1.811(Suppresses the normal change of directory when rotatin\ +g or adding directories to the)180 556.8 R +(stack, so that only the stack is manipulated.)180 568.8 Q F2(+)144 +580.8 Q F1(n)A F0 1.268(Rotates the stack so that the)180 580.8 R F1(n) +3.768 E F0 1.267(th directory \(counting from the left of the list sho)B +1.267(wn by)-.25 F F2(dirs)180 592.8 Q F0 2.5(,s)C +(tarting with zero\) is at the top.)-2.5 E F2144 604.8 Q F1(n)A F0 +.92(Rotates the stack so that the)180 604.8 R F1(n)3.42 E F0 .92 (th directory \(counting from the right of the list sho)B .92(wn by)-.25 -F F1(dirs)180 475.2 Q F0 2.5(,s)C(tarting with zero\) is at the top.) --2.5 E F2(dir)144.35 487.2 Q F0(Adds)180 487.2 Q F2(dir)2.85 E F0 -(to the directory stack at the top)3.23 E .434 -(After the stack has been modi\214ed, if the)144 504 R F12.934 E -F0 .434(option w)2.934 F .435(as not supplied,)-.1 F F1(pushd)2.935 E F0 -.435(uses the)2.935 F F1(cd)2.935 E F0 -.2(bu)2.935 G .435(iltin to).2 F -(change to the directory at the top of the stack.)144 516 Q(If the)5 E -F1(cd)2.5 E F0 -.1(fa)2.5 G(ils,).1 E F1(pushd)2.5 E F0 +F F2(dirs)180 616.8 Q F0 2.5(,s)C(tarting with zero\) is at the top.) +-2.5 E F1(dir)144.35 628.8 Q F0(Adds)180 628.8 Q F1(dir)2.85 E F0 +(to the directory stack at the top)3.23 E .435 +(After the stack has been modi\214ed, if the)144 645.6 R F22.935 E +F0 .434(option w)2.934 F .434(as not supplied,)-.1 F F2(pushd)2.934 E F0 +.434(uses the)2.934 F F2(cd)2.934 E F0 -.2(bu)2.934 G .434(iltin to).2 F +(change to the directory at the top of the stack.)144 657.6 Q(If the)5 E +F2(cd)2.5 E F0 -.1(fa)2.5 G(ils,).1 E F2(pushd)2.5 E F0 (returns a non-zero v)2.5 E(alue.)-.25 E 1.78(Otherwise, if no ar)144 -532.8 R 1.78(guments are supplied,)-.18 F F1(pushd)4.28 E F0 1.78 -(returns 0 unless the directory stack is empty)4.28 F(.)-.65 E .092 -(When rotating the directory stack,)144 544.8 R F1(pushd)2.592 E F0 .093 -(returns 0 unless the directory stack is empty or a non-e)2.592 F(x-) --.15 E(istent directory stack element is speci\214ed.)144 556.8 Q 1.278 -(If the)144 573.6 R F1(pushd)3.778 E F0 1.278 -(command is successful, bash runs)3.778 F F1(dirs)3.778 E F0 1.277 -(to sho)3.777 F 3.777(wt)-.25 G 1.277 -(he \214nal contents of the directory)-3.777 F(stack.)144 585.6 Q F1 -(pwd)108 602.4 Q F0([)2.5 E F1(\255LP)A F0(])A .844 -(Print the absolute pathname of the current w)144 614.4 R .845 -(orking directory)-.1 F 5.845(.T)-.65 G .845 -(he pathname printed contains no)-5.845 F .182(symbolic links if the)144 -626.4 R F12.681 E F0 .181(option is supplied or the)2.681 F F1 -.181(\255o ph)2.681 F(ysical)-.15 E F0 .181(option to the)2.681 F F1 -(set)2.681 E F0 -.2(bu)2.681 G .181(iltin command is).2 F 3.263 -(enabled. If)144 638.4 R(the)3.263 E F13.263 E F0 .763 -(option is used, the pathname printed may contain symbolic links.)3.263 -F .764(The return)5.764 F .405(status is 0 unless an error occurs while\ - reading the name of the current directory or an in)144 650.4 R -.25(va) --.4 G .405(lid op-).25 F(tion is supplied.)144 662.4 Q F1 -.18(re)108 -679.2 S(ad).18 E F0([)3.816 E F1(\255ers)A F0 3.816(][)C F1-3.816 -E F2(aname)3.816 E F0 3.816(][)C F1-3.816 E F2(delim)3.816 E F0 -3.816(][)C F1-3.816 E F2(te)3.816 E(xt)-.2 E F0 3.816(][)C F1 --3.816 E F2(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.817(][)C F1 --3.817 E F2(nc)3.817 E(har)-.15 E(s)-.1 E F0 3.817(][)C F1-3.817 E -F2(pr)3.817 E(ompt)-.45 E F0 3.817(][)C F1-3.817 E F2(timeout) -3.817 E F0 3.817(][)C F1-3.817 E F2(fd)3.817 E F0(])A([)108 691.2 -Q F2(name)A F0(...])2.5 E .516(One line is read from the standard input\ -, or from the \214le descriptor)144 703.2 R F2(fd)3.016 E F0 .516 -(supplied as an ar)3.016 F .516(gument to)-.18 F(the)144 715.2 Q F1 -2.753 E F0 .253(option, split into w)2.753 F .253 -(ords as described in)-.1 F F2(bash\(1\))2.754 E F0(under)2.754 E F1 --.75(Wo)2.754 G .254(rd Splitting).75 F F0 2.754(,a)C .254 -(nd the \214rst w)-2.754 F .254(ord is)-.1 F 1.425 -(assigned to the \214rst)144 727.2 R F2(name)4.285 E F0 3.925(,t).18 G -1.425(he second w)-3.925 F 1.425(ord to the second)-.1 F F2(name)4.285 E -F0 3.925(,a).18 G 1.425(nd so on.)-3.925 F 1.425(If there are more)6.425 -F(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E -(13)185.545 E 0 Cg EP +674.4 R 1.78(guments are supplied,)-.18 F F2(pushd)4.28 E F0 1.78 +(returns 0 unless the directory stack is empty)4.28 F(.)-.65 E .093 +(When rotating the directory stack,)144 686.4 R F2(pushd)2.593 E F0 .092 +(returns 0 unless the directory stack is empty or a non-e)2.593 F(x-) +-.15 E(istent directory stack element is speci\214ed.)144 698.4 Q 1.277 +(If the)144 715.2 R F2(pushd)3.777 E F0 1.277 +(command is successful, bash runs)3.777 F F2(dirs)3.777 E F0 1.278 +(to sho)3.778 F 3.778(wt)-.25 G 1.278 +(he \214nal contents of the directory)-3.778 F(stack.)144 727.2 Q +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(13)190.95 E 0 Cg EP %%Page: 14 14 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E -.1(wo)144 84 S 1.112 -(rds than names, the remaining w).1 F 1.112(ords and their interv)-.1 F -1.112(ening delimiters are assigned to the last)-.15 F/F1 10 -/Times-Italic@0 SF(name)144.36 96 Q F0 5.7(.I).18 G 3.2(ft)-5.7 G .7 -(here are fe)-3.2 F .7(wer w)-.25 F .7 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(pwd)108 84 Q F0([)2.5 +E F1(\255LP)A F0(])A .845(Print the absolute pathname of the current w) +144 96 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 +108 R F12.681 E F0 .181(option is supplied or the)2.681 F F1 .181 +(\255o ph)2.681 F(ysical)-.15 E F0 .181(option to the)2.681 F F1(set) +2.681 E F0 -.2(bu)2.681 G .182(iltin command is).2 F 3.264(enabled. If) +144 120 R(the)3.264 E F13.264 E F0 .763 +(option is used, the pathname printed may contain symbolic links.)3.264 +F .763(The return)5.763 F .405(status is 0 unless an error occurs while\ + reading the name of the current directory or an in)144 132 R -.25(va) +-.4 G .405(lid op-).25 F(tion is supplied.)144 144 Q F1 -.18(re)108 +160.8 S(ad).18 E F0([)3.817 E F1(\255ers)A F0 3.817(][)C F1-3.817 +E/F2 10/Times-Italic@0 SF(aname)3.817 E F0 3.817(][)C F1-3.817 E +F2(delim)3.817 E F0 3.817(][)C F1-3.817 E F2(te)3.817 E(xt)-.2 E +F0 3.817(][)C F1-3.817 E F2(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.816 +(][)C F1-3.816 E F2(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F1 +-3.816 E F2(pr)3.816 E(ompt)-.45 E F0 3.816(][)C F1-3.816 E +F2(timeout)3.816 E F0 3.816(][)C F1-3.816 E F2(fd)3.816 E F0(])A +([)108 172.8 Q F2(name)A F0(...])2.5 E .516(One line is read from the s\ +tandard input, or from the \214le descriptor)144 184.8 R F2(fd)3.016 E +F0 .516(supplied as an ar)3.016 F .517(gument to)-.18 F(the)144 196.8 Q +F12.754 E F0 .254(option, split into w)2.754 F .254 +(ords as described in)-.1 F F2(bash\(1\))2.754 E F0(under)2.753 E F1 +-.75(Wo)2.753 G .253(rd Splitting).75 F F0 2.753(,a)C .253 +(nd the \214rst w)-2.753 F .253(ord is)-.1 F 1.425 +(assigned to the \214rst)144 208.8 R F2(name)4.285 E F0 3.925(,t).18 G +1.425(he second w)-3.925 F 1.425(ord to the second)-.1 F F2(name)4.285 E +F0 3.925(,a).18 G 1.425(nd so on.)-3.925 F 1.425(If there are more)6.425 +F -.1(wo)144 220.8 S 1.112(rds than names, the remaining w).1 F 1.112 +(ords and their interv)-.1 F 1.112 +(ening delimiters are assigned to the last)-.15 F F2(name)144.36 232.8 Q +F0 5.7(.I).18 G 3.2(ft)-5.7 G .7(here are fe)-3.2 F .7(wer w)-.25 F .7 (ords read from the input stream than names, the remaining names are)-.1 -F .531(assigned empty v)144 108 R 3.031(alues. The)-.25 F .531 -(characters in)3.031 F/F2 9/Times-Bold@0 SF(IFS)3.031 E F0 .532 -(are used to split the line into w)2.781 F .532(ords using the same)-.1 -F 1.326(rules the shell uses for e)144 120 R 1.325 -(xpansion \(described in)-.15 F F1(bash\(1\))3.825 E F0(under)3.825 E/F3 -10/Times-Bold@0 SF -.75(Wo)3.825 G 1.325(rd Splitting).75 F F0 3.825 -(\). The)B(backslash)3.825 E .738(character \()144 132 R F3(\\)A F0 -3.238(\)m)C .739(ay be used to remo)-3.238 F 1.039 -.15(ve a)-.15 H -1.039 -.15(ny s).15 H .739(pecial meaning for the ne).15 F .739 +F .532(assigned empty v)144 244.8 R 3.032(alues. The)-.25 F .532 +(characters in)3.032 F/F3 9/Times-Bold@0 SF(IFS)3.032 E F0 .531 +(are used to split the line into w)2.782 F .531(ords using the same)-.1 +F 1.325(rules the shell uses for e)144 256.8 R 1.325 +(xpansion \(described in)-.15 F F2(bash\(1\))3.825 E F0(under)3.826 E F1 +-.75(Wo)3.826 G 1.326(rd Splitting).75 F F0 3.826(\). The)B(backslash) +3.826 E .739(character \()144 268.8 R F1(\\)A F0 3.239(\)m)C .739 +(ay be used to remo)-3.239 F 1.039 -.15(ve a)-.15 H 1.039 -.15(ny s).15 +H .739(pecial meaning for the ne).15 F .738 (xt character read and for line)-.15 F 2.5(continuation. Options,)144 -144 R(if supplied, ha)2.5 E .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F3144 156 Q F1(aname)2.5 E F0 1.026(The w) -180 168 R 1.026(ords are assigned to sequential indices of the array v) --.1 F(ariable)-.25 E F1(aname)3.855 E F0 3.525(,s).18 G 1.025 -(tarting at 0.)-3.525 F F1(aname)180.33 180 Q F0(is unset before an)2.68 -E 2.5(yn)-.15 G .5 -.25(ew va)-2.5 H(lues are assigned.).25 E(Other)5 E -F1(name)2.5 E F0(ar)2.5 E(guments are ignored.)-.18 E F3144 192 Q -F1(delim)2.5 E F0 .28(The \214rst character of)180 204 R F1(delim)2.78 E -F0 .281(is used to terminate the input line, rather than ne)2.78 F 2.781 -(wline. If)-.25 F F1(de-)2.781 E(lim)180 216 Q F0(is the empty string,) -2.5 E F3 -.18(re)2.5 G(ad).18 E F0 -(will terminate a line when it reads a NUL character)2.5 E(.)-.55 E F3 -144 228 Q F0 .629 -(If the standard input is coming from a terminal,)180 228 R F3 -.18(re) -3.128 G(adline).18 E F0(\(see)3.128 E F2(READLINE)3.128 E F0(in)2.878 E -F1(bash\(1\))3.128 E F0 3.128(\)i)C(s)-3.128 E .048 -(used to obtain the line.)180 240 R .049 +280.8 R(if supplied, ha)2.5 E .3 -.15(ve t)-.2 H(he follo).15 E +(wing meanings:)-.25 E F1144 292.8 Q F2(aname)2.5 E F0 1.025 +(The w)180 304.8 R 1.026 +(ords are assigned to sequential indices of the array v)-.1 F(ariable) +-.25 E F2(aname)3.856 E F0 3.526(,s).18 G 1.026(tarting at 0.)-3.526 F +F2(aname)180.33 316.8 Q F0(is unset before an)2.68 E 2.5(yn)-.15 G .5 +-.25(ew va)-2.5 H(lues are assigned.).25 E(Other)5 E F2(name)2.5 E F0 +(ar)2.5 E(guments are ignored.)-.18 E F1144 328.8 Q F2(delim)2.5 E +F0 .281(The \214rst character of)180 340.8 R F2(delim)2.781 E F0 .281 +(is used to terminate the input line, rather than ne)2.781 F 2.78 +(wline. If)-.25 F F2(de-)2.78 E(lim)180 352.8 Q F0(is the empty string,) +2.5 E F1 -.18(re)2.5 G(ad).18 E F0 +(will terminate a line when it reads a NUL character)2.5 E(.)-.55 E F1 +144 364.8 Q F0 .628 +(If the standard input is coming from a terminal,)180 364.8 R F1 -.18 +(re)3.129 G(adline).18 E F0(\(see)3.129 E F3(READLINE)3.129 E F0(in) +2.879 E F2(bash\(1\))3.129 E F0 3.129(\)i)C(s)-3.129 E .049 +(used to obtain the line.)180 376.8 R .049 (Readline uses the current \(or def)5.049 F .049 -(ault, if line editing w)-.1 F .049(as not pre)-.1 F(vi-)-.25 E -(ously acti)180 252 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings, b) +(ault, if line editing w)-.1 F .048(as not pre)-.1 F(vi-)-.25 E +(ously acti)180 388.8 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings, b) -2.5 E(ut uses readline')-.2 E 2.5(sd)-.55 G(ef)-2.5 E -(ault \214lename completion.)-.1 E F3144 264 Q F1(te)2.5 E(xt)-.2 -E F0(If)180 264 Q F3 -.18(re)2.716 G(adline).18 E F0 .216 -(is being used to read the line,)2.716 F F1(te)2.716 E(xt)-.2 E F0 .216 -(is placed into the editing b)2.716 F(uf)-.2 E .215(fer before edit-) --.25 F(ing be)180 276 Q(gins.)-.15 E F3144 288 Q F1(nc)2.5 E(har) --.15 E(s)-.1 E F3 -.18(re)180 300 S(ad).18 E F0 .322 -(returns after reading)2.822 F F1(nc)2.823 E(har)-.15 E(s)-.1 E F0 .323 +(ault \214lename completion.)-.1 E F1144 400.8 Q F2(te)2.5 E(xt) +-.2 E F0(If)180 400.8 Q F1 -.18(re)2.715 G(adline).18 E F0 .216 +(is being used to read the line,)2.715 F F2(te)2.716 E(xt)-.2 E F0 .216 +(is placed into the editing b)2.716 F(uf)-.2 E .216(fer before edit-) +-.25 F(ing be)180 412.8 Q(gins.)-.15 E F1144 424.8 Q F2(nc)2.5 E +(har)-.15 E(s)-.1 E F1 -.18(re)180 436.8 S(ad).18 E F0 .323 +(returns after reading)2.823 F F2(nc)2.823 E(har)-.15 E(s)-.1 E F0 .323 (characters rather than w)2.823 F .323 -(aiting for a complete line of in-)-.1 F(put, b)180 312 Q -(ut honors a delimiter if fe)-.2 E(wer than)-.25 E F1(nc)2.5 E(har)-.15 -E(s)-.1 E F0(characters are read before the delimiter)2.5 E(.)-.55 E F3 -144 324 Q F1(nc)2.5 E(har)-.15 E(s)-.1 E F3 -.18(re)180 336 S(ad) -.18 E F0 1.269(returns after reading e)3.77 F(xactly)-.15 E F1(nc)3.769 -E(har)-.15 E(s)-.1 E F0 1.269(characters rather than w)3.769 F 1.269 -(aiting for a complete)-.1 F .274 -(line of input, unless EOF is encountered or)180 348 R F3 -.18(re)2.775 -G(ad).18 E F0 .275(times out.)2.775 F .275(Delimiter characters encoun-) -5.275 F 1.003 -(tered in the input are not treated specially and do not cause)180 360 R -F3 -.18(re)3.502 G(ad).18 E F0 1.002(to return until)3.502 F F1(nc)3.502 -E(har)-.15 E(s)-.1 E F0 .608(characters are read.)180 372 R .608 -(The result is not split on the characters in)5.608 F F3(IFS)3.108 E F0 -3.108(;t)C .609(he intent is that the)-3.108 F -.25(va)180 384 S .67 +(aiting for a complete line of in-)-.1 F(put, b)180 448.8 Q +(ut honors a delimiter if fe)-.2 E(wer than)-.25 E F2(nc)2.5 E(har)-.15 +E(s)-.1 E F0(characters are read before the delimiter)2.5 E(.)-.55 E F1 +144 460.8 Q F2(nc)2.5 E(har)-.15 E(s)-.1 E F1 -.18(re)180 472.8 S +(ad).18 E F0 1.269(returns after reading e)3.769 F(xactly)-.15 E F2(nc) +3.769 E(har)-.15 E(s)-.1 E F0 1.269(characters rather than w)3.769 F +1.27(aiting for a complete)-.1 F .275 +(line of input, unless EOF is encountered or)180 484.8 R F1 -.18(re) +2.775 G(ad).18 E F0 .274(times out.)2.774 F .274 +(Delimiter characters encoun-)5.274 F 1.002 +(tered in the input are not treated specially and do not cause)180 496.8 +R F1 -.18(re)3.503 G(ad).18 E F0 1.003(to return until)3.503 F F2(nc) +3.503 E(har)-.15 E(s)-.1 E F0 .609(characters are read.)180 508.8 R .608 +(The result is not split on the characters in)5.609 F F1(IFS)3.108 E F0 +3.108(;t)C .608(he intent is that the)-3.108 F -.25(va)180 520.8 S .669 (riable is assigned e).25 F .669 -(xactly the characters read \(with the e)-.15 F .669 -(xception of backslash; see the)-.15 F F3180 396 Q F0(option belo) -2.5 E(w\).)-.25 E F3144 408 Q F1(pr)2.5 E(ompt)-.45 E F0(Display) -180 420 Q F1(pr)3.66 E(ompt)-.45 E F0 1.161(on standard error)3.66 F -3.661(,w)-.4 G 1.161(ithout a trailing ne)-3.661 F 1.161 -(wline, before attempting to read)-.25 F(an)180 432 Q 2.5(yi)-.15 G 2.5 -(nput. The)-2.5 F -(prompt is displayed only if input is coming from a terminal.)2.5 E F3 -144 444 Q F0 .544(Backslash does not act as an escape character) -180 444 R 5.543(.T)-.55 G .543(he backslash is considered to be part of) --5.543 F .492(the line.)180 456 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 -468 Q F3144 480 Q F0(Silent mode.)180 480 Q -(If input is coming from a terminal, characters are not echoed.)5 E F3 -144 492 Q F1(timeout)2.5 E F0(Cause)180 504 Q F3 -.18(re)2.929 G -(ad).18 E F0 .428(to time out and return f)2.929 F .428 -(ailure if a complete line of input \(or a speci\214ed num-)-.1 F .56 -(ber of characters\) is not read within)180 516 R F1(timeout)3.061 E F0 -(seconds.)3.061 E F1(timeout)5.561 E F0 .561(may be a decimal number) -3.061 F(with a fractional portion follo)180 528 Q +(xactly the characters read \(with the e)-.15 F .67 +(xception of backslash; see the)-.15 F F1180 532.8 Q F0 +(option belo)2.5 E(w\).)-.25 E F1144 544.8 Q F2(pr)2.5 E(ompt)-.45 +E F0(Display)180 556.8 Q F2(pr)3.661 E(ompt)-.45 E F0 1.161 +(on standard error)3.661 F 3.661(,w)-.4 G 1.161(ithout a trailing ne) +-3.661 F 1.161(wline, before attempting to read)-.25 F(an)180 568.8 Q +2.5(yi)-.15 G 2.5(nput. The)-2.5 F +(prompt is displayed only if input is coming from a terminal.)2.5 E F1 +144 580.8 Q F0 .543(Backslash does not act as an escape character) +180 580.8 R 5.543(.T)-.55 G .544 +(he backslash is considered to be part of)-5.543 F .493(the line.)180 +592.8 R .493(In particular)5.493 F 2.993(,ab)-.4 G(ackslash-ne)-2.993 E +.493(wline pair may not then be used as a line continua-)-.25 F(tion.) +180 604.8 Q F1144 616.8 Q F0(Silent mode.)180 616.8 Q +(If input is coming from a terminal, characters are not echoed.)5 E F1 +144 628.8 Q F2(timeout)2.5 E F0(Cause)180 640.8 Q F1 -.18(re)2.928 +G(ad).18 E F0 .428(to time out and return f)2.928 F .428 +(ailure if a complete line of input \(or a speci\214ed num-)-.1 F .561 +(ber of characters\) is not read within)180 652.8 R F2(timeout)3.061 E +F0(seconds.)3.061 E F2(timeout)5.561 E F0 .56(may be a decimal number) +3.061 F(with a fractional portion follo)180 664.8 Q (wing the decimal point.)-.25 E(This option is only ef)5 E(fecti)-.25 E -.3 -.15(ve i)-.25 H(f).15 E F3 -.18(re)2.5 G(ad).18 E F0 .506(is readin\ +.3 -.15(ve i)-.25 H(f).15 E F1 -.18(re)2.5 G(ad).18 E F0 .506(is readin\ g input from a terminal, pipe, or other special \214le; it has no ef)180 -540 R .506(fect when reading)-.25 F .59(from re)180 552 R .59 -(gular \214les.)-.15 F(If)5.59 E F3 -.18(re)3.09 G(ad).18 E F0 .589 -(times out,)3.09 F F3 -.18(re)3.089 G(ad).18 E F0(sa)3.089 E -.15(ve)-.2 -G 3.089(sa).15 G .889 -.15(ny p)-3.089 H .589 -(artial input read into the speci\214ed).15 F -.25(va)180 564 S(riable) -.25 E F1(name)2.77 E F0 5.27(.I)C(f)-5.27 E F1(timeout)2.77 E F0 .27 -(is 0,)2.77 F F3 -.18(re)2.77 G(ad).18 E F0 .27(returns immediately)2.77 -F 2.77(,w)-.65 G .27(ithout trying to read an)-2.77 F 2.77(yd)-.15 G -(ata.)-2.77 E .228(The e)180 576 R .228(xit status is 0 if input is a) --.15 F -.25(va)-.2 G .228(ilable on the speci\214ed \214le descriptor) -.25 F 2.728(,o)-.4 G 2.727(rt)-2.728 G .227(he read will re-)-2.727 F -1.224(turn EOF)180 588 R 3.724(,n)-.8 G 1.224(on-zero otherwise.)-3.724 -F 1.224(The e)6.224 F 1.225 -(xit status is greater than 128 if the timeout is e)-.15 F(x-)-.15 E -(ceeded.)180 600 Q F3144 612 Q F1(fd)2.5 E F0 -(Read input from \214le descriptor)180 612 Q F1(fd)2.5 E F0(.)A .522 -(If no)144 628.8 R F1(names)3.382 E F0 .522 -(are supplied, the line read, without the ending delimiter b)3.292 F -.522(ut otherwise unmodi\214ed, is)-.2 F 1.186(assigned to the v)144 -640.8 R(ariable)-.25 E F2(REPL)3.686 E(Y)-.828 E/F4 9/Times-Roman@0 SF -(.)A F0 1.186(The e)5.686 F 1.186 -(xit status is zero, unless end-of-\214le is encountered,)-.15 F F3 -.18 -(re)3.687 G(ad).18 E F0 .961 -(times out \(in which case the status is greater than 128\), a v)144 -652.8 R .96(ariable assignment error \(such as as-)-.25 F .706 -(signing to a readonly v)144 664.8 R .706(ariable\) occurs, or an in) --.25 F -.25(va)-.4 G .706(lid \214le descriptor is supplied as the ar) -.25 F .707(gument to)-.18 F F3144 676.8 Q F0(.)A F3 -.18(re)108 -693.6 S(adonly).18 E F0([)2.5 E F3(\255aAf)A F0 2.5(][)C F3-2.5 E -F0 2.5(][)C F1(name)-2.5 E F0([=)A F1(wor)A(d)-.37 E F0 2.5(].)C(..]) --2.5 E .77(The gi)144 705.6 R -.15(ve)-.25 G(n).15 E F1(names)3.27 E F0 -.77(are mark)3.27 F .77(ed readonly; the v)-.1 F .77(alues of these)-.25 -F F1(names)3.63 E F0 .77(may not be changed by subse-)3.54 F 1.096 -(quent assignment.)144 717.6 R 1.096(If the)6.096 F F33.596 E F0 -1.097(option is supplied, the functions corresponding to the)3.596 F F1 -(names)3.597 E F0 1.097(are so)3.597 F(mark)144 729.6 Q 4.903(ed. The) --.1 F F34.903 E F0 2.403(option restricts the v)4.903 F 2.403 -(ariables to inde)-.25 F -.15(xe)-.15 G 4.903(da).15 G 2.403(rrays; the) --4.903 F F34.903 E F0 2.402(option restricts the)4.903 F -(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E -(14)185.545 E 0 Cg EP +676.8 R .505(fect when reading)-.25 F .589(from re)180 688.8 R .589 +(gular \214les.)-.15 F(If)5.589 E F1 -.18(re)3.089 G(ad).18 E F0 .589 +(times out,)3.089 F F1 -.18(re)3.089 G(ad).18 E F0(sa)3.089 E -.15(ve) +-.2 G 3.089(sa).15 G .889 -.15(ny p)-3.089 H .59 +(artial input read into the speci\214ed).15 F -.25(va)180 700.8 S +(riable).25 E F2(name)2.77 E F0 5.27(.I)C(f)-5.27 E F2(timeout)2.77 E F0 +.27(is 0,)2.77 F F1 -.18(re)2.77 G(ad).18 E F0 .27(returns immediately) +2.77 F 2.77(,w)-.65 G .27(ithout trying to read an)-2.77 F 2.77(yd)-.15 +G(ata.)-2.77 E .227(The e)180 712.8 R .228 +(xit status is 0 if input is a)-.15 F -.25(va)-.2 G .228 +(ilable on the speci\214ed \214le descriptor).25 F 2.728(,o)-.4 G 2.728 +(rt)-2.728 G .228(he read will re-)-2.728 F 2.393(turn EOF)180 724.8 R +4.893(,n)-.8 G 2.392(on-zero otherwise.)-4.893 F 2.392(The e)7.392 F +2.392(xit status is greater than 128 if the timeout is)-.15 F +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(14)190.95 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E -.25(va)144 84 S .424(riables to associati) -.25 F .724 -.15(ve a)-.25 H 2.924(rrays. If).15 F .425 -(both options are supplied,)2.924 F/F1 10/Times-Bold@0 SF2.925 E -F0(tak)2.925 E .425(es precedence.)-.1 F .425(If no)5.425 F/F2 10 -/Times-Italic@0 SF(name)3.285 E F0(ar)3.105 E(-)-.2 E 1.275 -(guments are gi)144 96 R -.15(ve)-.25 G 1.275(n, or if the).15 F F1 -3.775 E F0 1.275 -(option is supplied, a list of all readonly names is printed.)3.775 F -(The)6.275 E .559(other options may be used to restrict the output to a\ - subset of the set of readonly names.)144 108 R(The)5.559 E F1 -3.059 E F0 .201(option causes output to be displayed in a format that m\ -ay be reused as input.)144 120 R .2(If a v)5.2 F .2(ariable name is)-.25 -F(follo)144 132 Q .133(wed by =)-.25 F F2(wor)A(d)-.37 E F0 2.633(,t)C -.133(he v)-2.633 F .133(alue of the v)-.25 F .133(ariable is set to)-.25 -F F2(wor)2.633 E(d)-.37 E F0 5.133(.T)C .133 -(he return status is 0 unless an in)-5.133 F -.25(va)-.4 G(lid).25 E .26 -(option is encountered, one of the)144 144 R F2(names)3.12 E F0 .26 -(is not a v)3.03 F .26(alid shell v)-.25 F .26(ariable name, or)-.25 F -F12.76 E F0 .26(is supplied with a)2.76 F F2(name)144.36 156 Q F0 -(that is not a function.)2.68 E F1 -.18(re)108 172.8 S(tur).18 E(n)-.15 -E F0([)2.5 E F2(n)A F0(])A .02(Causes a function to stop e)144 184.8 R --.15(xe)-.15 G .02(cuting and return the v).15 F .021 -(alue speci\214ed by)-.25 F F2(n)2.881 E F0 .021(to its caller)2.761 F -5.021(.I)-.55 G(f)-5.021 E F2(n)2.881 E F0 .021(is omitted,)2.761 F .597 -(the return status is that of the last command e)144 196.8 R -.15(xe) --.15 G .596(cuted in the function body).15 F 5.596(.I)-.65 G(f)-5.596 E -F1 -.18(re)3.096 G(tur).18 E(n)-.15 E F0 .596(is e)3.096 F -.15(xe)-.15 -G(cuted).15 E .267(by a trap handler)144 208.8 R 2.767(,t)-.4 G .267 +E(UIL)-.1 E(TINS\(1\))-.92 E -.15(ex)180 84 S(ceeded.).15 E/F1 10 +/Times-Bold@0 SF144 96 Q/F2 10/Times-Italic@0 SF(fd)2.5 E F0 +(Read input from \214le descriptor)180 96 Q F2(fd)2.5 E F0(.)A .522 +(If no)144 112.8 R F2(names)3.382 E F0 .522 +(are supplied, the line read, without the ending delimiter b)3.292 F +.522(ut otherwise unmodi\214ed, is)-.2 F 1.187(assigned to the v)144 +124.8 R(ariable)-.25 E/F3 9/Times-Bold@0 SF(REPL)3.686 E(Y)-.828 E/F4 9 +/Times-Roman@0 SF(.)A F0 1.186(The e)5.686 F 1.186 +(xit status is zero, unless end-of-\214le is encountered,)-.15 F F1 -.18 +(re)3.686 G(ad).18 E F0 .96 +(times out \(in which case the status is greater than 128\), a v)144 +136.8 R .961(ariable assignment error \(such as as-)-.25 F .707 +(signing to a readonly v)144 148.8 R .706(ariable\) occurs, or an in) +-.25 F -.25(va)-.4 G .706(lid \214le descriptor is supplied as the ar) +.25 F .706(gument to)-.18 F F1144 160.8 Q F0(.)A F1 -.18(re)108 +177.6 S(adonly).18 E F0([)2.5 E F1(\255aAf)A F0 2.5(][)C F1-2.5 E +F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(wor)A(d)-.37 E F0 2.5(].)C(..]) +-2.5 E .77(The gi)144 189.6 R -.15(ve)-.25 G(n).15 E F2(names)3.27 E F0 +.77(are mark)3.27 F .77(ed readonly; the v)-.1 F .77(alues of these)-.25 +F F2(names)3.63 E F0 .77(may not be changed by subse-)3.54 F 1.097 +(quent assignment.)144 201.6 R 1.097(If the)6.097 F F13.597 E F0 +1.097(option is supplied, the functions corresponding to the)3.597 F F2 +(names)3.596 E F0 1.096(are so)3.596 F(mark)144 213.6 Q 3.334(ed. The) +-.1 F F13.334 E F0 .834(option restricts the v)3.334 F .834 +(ariables to inde)-.25 F -.15(xe)-.15 G 3.334(da).15 G .834(rrays; the) +-3.334 F F13.334 E F0 .834(option restricts the v)3.334 F(ari-) +-.25 E .777(ables to associati)144 225.6 R 1.077 -.15(ve a)-.25 H 3.277 +(rrays. If).15 F .777(both options are supplied,)3.277 F F13.277 E +F0(tak)3.277 E .776(es precedence.)-.1 F .776(If no)5.776 F F2(name) +3.636 E F0(ar)3.456 E(gu-)-.18 E .521(ments are gi)144 237.6 R -.15(ve) +-.25 G .521(n, or if the).15 F F13.021 E F0 .521 +(option is supplied, a list of all readonly names is printed.)3.021 F +.522(The other)5.521 F .295(options may be used to restrict the output \ +to a subset of the set of readonly names.)144 249.6 R(The)5.295 E F1 +2.795 E F0(option)2.795 E .786 +(causes output to be displayed in a format that may be reused as input.) +144 261.6 R .786(If a v)5.786 F .786(ariable name is fol-)-.25 F(lo)144 +273.6 Q .718(wed by =)-.25 F F2(wor)A(d)-.37 E F0 3.218(,t)C .718(he v) +-3.218 F .718(alue of the v)-.25 F .718(ariable is set to)-.25 F F2(wor) +3.218 E(d)-.37 E F0 5.718(.T)C .718(he return status is 0 unless an in) +-5.718 F -.25(va)-.4 G(lid).25 E .26(option is encountered, one of the) +144 285.6 R F2(names)3.12 E F0 .26(is not a v)3.03 F .26(alid shell v) +-.25 F .26(ariable name, or)-.25 F F12.76 E F0 .26 +(is supplied with a)2.76 F F2(name)144.36 297.6 Q F0 +(that is not a function.)2.68 E F1 -.18(re)108 314.4 S(tur).18 E(n)-.15 +E F0([)2.5 E F2(n)A F0(])A .021(Causes a function to stop e)144 326.4 R +-.15(xe)-.15 G .021(cuting and return the v).15 F .021 +(alue speci\214ed by)-.25 F F2(n)2.88 E F0 .02(to its caller)2.76 F 5.02 +(.I)-.55 G(f)-5.02 E F2(n)2.88 E F0 .02(is omitted,)2.76 F .596 +(the return status is that of the last command e)144 338.4 R -.15(xe) +-.15 G .597(cuted in the function body).15 F 5.597(.I)-.65 G(f)-5.597 E +F1 -.18(re)3.097 G(tur).18 E(n)-.15 E F0 .597(is e)3.097 F -.15(xe)-.15 +G(cuted).15 E .267(by a trap handler)144 350.4 R 2.767(,t)-.4 G .267 (he last command used to determine the status is the last command e) --2.767 F -.15(xe)-.15 G .268(cuted be-).15 F .02(fore the trap handler) -144 220.8 R 5.02(.I)-.55 G(f)-5.02 E F1 -.18(re)2.52 G(tur).18 E(n)-.15 +-2.767 F -.15(xe)-.15 G .267(cuted be-).15 F .02(fore the trap handler) +144 362.4 R 5.02(.I)-.55 G(f)-5.02 E F1 -.18(re)2.52 G(tur).18 E(n)-.15 E F0 .02(is e)2.52 F -.15(xe)-.15 G .02(cuted during a).15 F F1(DEB)2.52 E(UG)-.1 E F0 .02(trap, the last command used to deter)2.52 F(-)-.2 E -.885(mine the status is the last command e)144 232.8 R -.15(xe)-.15 G -.886(cuted by the trap handler before).15 F F1 -.18(re)3.386 G(tur).18 E -(n)-.15 E F0 -.1(wa)3.386 G 3.386(si).1 G -1.9 -.4(nv o)-3.386 H -.1(ke) -.4 G 3.386(d. If).1 F F1 -.18(re)144 244.8 S(tur).18 E(n)-.15 E F0 .628 -(is used outside a function, b)3.128 F .628(ut during e)-.2 F -.15(xe) --.15 G .628(cution of a script by the).15 F F1(.)3.127 E F0(\()5.627 E -F1(sour)A(ce)-.18 E F0 3.127(\)c)C .627(ommand, it)-3.127 F .588 -(causes the shell to stop e)144 256.8 R -.15(xe)-.15 G .588 -(cuting that script and return either).15 F F2(n)3.448 E F0 .589 -(or the e)3.329 F .589(xit status of the last com-)-.15 F .326(mand e) -144 268.8 R -.15(xe)-.15 G .326(cuted within the script as the e).15 F -.326(xit status of the script.)-.15 F(If)5.326 E F2(n)2.826 E F0 .325 -(is supplied, the return v)2.826 F .325(alue is)-.25 F .444 -(its least signi\214cant 8 bits.)144 280.8 R .444 -(The return status is non-zero if)5.444 F F1 -.18(re)2.945 G(tur).18 E -(n)-.15 E F0 .445(is supplied a non-numeric ar)2.945 F(gu-)-.18 E .381 -(ment, or is used outside a function and not during e)144 292.8 R -.15 +.886(mine the status is the last command e)144 374.4 R -.15(xe)-.15 G +.886(cuted by the trap handler before).15 F F1 -.18(re)3.385 G(tur).18 E +(n)-.15 E F0 -.1(wa)3.385 G 3.385(si).1 G -1.9 -.4(nv o)-3.385 H -.1(ke) +.4 G 3.385(d. If).1 F F1 -.18(re)144 386.4 S(tur).18 E(n)-.15 E F0 .627 +(is used outside a function, b)3.127 F .628(ut during e)-.2 F -.15(xe) +-.15 G .628(cution of a script by the).15 F F1(.)3.128 E F0(\()5.628 E +F1(sour)A(ce)-.18 E F0 3.128(\)c)C .628(ommand, it)-3.128 F .589 +(causes the shell to stop e)144 398.4 R -.15(xe)-.15 G .589 +(cuting that script and return either).15 F F2(n)3.448 E F0 .588 +(or the e)3.328 F .588(xit status of the last com-)-.15 F .325(mand e) +144 410.4 R -.15(xe)-.15 G .325(cuted within the script as the e).15 F +.326(xit status of the script.)-.15 F(If)5.326 E F2(n)2.826 E F0 .326 +(is supplied, the return v)2.826 F .326(alue is)-.25 F .445 +(its least signi\214cant 8 bits.)144 422.4 R .444 +(The return status is non-zero if)5.445 F F1 -.18(re)2.944 G(tur).18 E +(n)-.15 E F0 .444(is supplied a non-numeric ar)2.944 F(gu-)-.18 E .381 +(ment, or is used outside a function and not during e)144 434.4 R -.15 (xe)-.15 G .381(cution of a script by).15 F F1(.)2.881 E F0(or)3.714 E -F1(sour)2.881 E(ce)-.18 E F0 5.38(.A)C .68 -.15(ny c)-5.38 H(om-).15 E -.749(mand associated with the)144 304.8 R F1(RETURN)3.249 E F0 .749 +F1(sour)2.881 E(ce)-.18 E F0 5.381(.A)C .681 -.15(ny c)-5.381 H(om-).15 +E .75(mand associated with the)144 446.4 R F1(RETURN)3.249 E F0 .749 (trap is e)3.249 F -.15(xe)-.15 G .749(cuted before e).15 F -.15(xe)-.15 -G .75(cution resumes after the function).15 F(or script.)144 316.8 Q F1 -(set)108 333.6 Q F0([)2.5 E F1(\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1 +G .749(cution resumes after the function).15 F(or script.)144 458.4 Q F1 +(set)108 475.2 Q F0([)2.5 E F1(\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1 -2.5 E F2(option\255name)2.5 E F0 2.5(][)C F1-2.5 E F0 2.5 (][)C F1-2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1 -(set)108 345.6 Q F0([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1(+o) +(set)108 487.2 Q F0([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1(+o) -2.5 E F2(option\255name)2.5 E F0 2.5(][)C F1-2.5 E F0 2.5(][)C F1 -2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 -357.6 S .574(thout options, display the name and v).4 F .574 -(alue of each shell v)-.25 F .573 +499.2 S .573(thout options, display the name and v).4 F .573 +(alue of each shell v)-.25 F .574 (ariable in a format that can be reused)-.25 F .113 -(as input for setting or resetting the currently-set v)144 369.6 R 2.613 +(as input for setting or resetting the currently-set v)144 511.2 R 2.613 (ariables. Read-only)-.25 F -.25(va)2.613 G .113 -(riables cannot be reset.).25 F(In)5.113 E F2 1.032(posix mode)144 381.6 +(riables cannot be reset.).25 F(In)5.112 E F2 1.032(posix mode)144 523.2 R F0 3.532(,o)C 1.032(nly shell v)-3.532 F 1.032(ariables are listed.) -.25 F 1.032(The output is sorted according to the current locale.)6.032 -F .58(When options are speci\214ed, the)144 393.6 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 405.6 R .161 +F .581(When options are speci\214ed, the)144 535.2 R 3.081(ys)-.15 G +.581(et or unset shell attrib)-3.081 F 3.081(utes. An)-.2 F 3.08(ya)-.15 +G -.18(rg)-3.08 G .58(uments remaining after op-).18 F .16 +(tion processing are treated as v)144 547.2 R .161 (alues for the positional parameters and are assigned, in order)-.25 F -2.66(,t)-.4 G(o)-2.66 E F1($1)2.66 E F0(,)A F1($2)144 417.6 Q F0(,)A F1 -2.5(... $)2.5 F F2(n)A F0 5(.O)C(ptions, if speci\214ed, ha)-5 E .3 -.15 -(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 429.6 Q F0 -1.377(Each v)184 429.6 R 1.377 +2.661(,t)-.4 G(o)-2.661 E F1($1)2.661 E F0(,)A F1($2)144 559.2 Q F0(,)A +F1 2.5(... $)2.5 F F2(n)A F0 5(.O)C(ptions, if speci\214ed, ha)-5 E .3 +-.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1144 571.2 Q +F0 1.378(Each v)184 571.2 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 441.6 Q(ed for e)-.1 E(xport to the en)-.15 -E(vironment of subsequent commands.)-.4 E F1144 453.6 Q F0 .132 -(Report the status of terminated background jobs immediately)184 453.6 R -2.632(,r)-.65 G .131(ather than before the ne)-2.632 F(xt)-.15 E -(primary prompt.)184 465.6 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) --.25 H(nly when job control is enabled.).15 E F1144 477.6 Q F0 -.087(Exit immediately if a)184 477.6 R F2(pipeline)2.587 E F0 .087 -(\(which may consist of a single)2.587 F F2 .088(simple command)2.588 F -F0 .088(\), a)B F2(list)2.588 E F0 2.588(,o)C(r)-2.588 E(a)184 489.6 Q -F2 .86(compound command)3.36 F F0(\(see)3.36 E/F3 9/Times-Bold@0 SF .86 -(SHELL GRAMMAR)3.36 F F0(in)3.11 E F2(bash\(1\))3.36 E F0 .86(\), e)B -.86(xits with a non-zero sta-)-.15 F 2.852(tus. The)184 501.6 R .352 -(shell does not e)2.852 F .352(xit if the command that f)-.15 F .353 -(ails is part of the command list imme-)-.1 F 1.108(diately follo)184 -513.6 R 1.108(wing a)-.25 F F1(while)3.608 E F0(or)3.608 E F1(until) -3.608 E F0 -.1(ke)3.608 G(yw)-.05 E 1.107(ord, part of the test follo) --.1 F 1.107(wing the)-.25 F F1(if)3.607 E F0(or)3.607 E F1(elif)3.607 E -F0(re-)3.607 E(serv)184 525.6 Q .279(ed w)-.15 F .279(ords, part of an) --.1 F 2.779(yc)-.15 G .279(ommand e)-2.779 F -.15(xe)-.15 G .279 -(cuted in a).15 F F1(&&)2.779 E F0(or)2.779 E F1(||)2.78 E F0 .28 -(list e)2.78 F .28(xcept the command fol-)-.15 F(lo)184 537.6 Q .703 -(wing the \214nal)-.25 F F1(&&)3.203 E F0(or)3.203 E F1(||)3.203 E F0 -3.203(,a)C 1.003 -.15(ny c)-3.203 H .703(ommand in a pipeline b).15 F -.703(ut the last, or if the command')-.2 F(s)-.55 E .476(return v)184 -549.6 R .476(alue is being in)-.25 F -.15(ve)-.4 G .476(rted with).15 F -F1(!)2.976 E F0 5.476(.I)C 2.976(fac)-5.476 G .476 +-.25 G 3.877(nt).15 G 1.377(he e)-3.877 F 1.377(xport attrib)-.15 F +1.377(ute and)-.2 F(mark)184 583.2 Q(ed for e)-.1 E(xport to the en)-.15 +E(vironment of subsequent commands.)-.4 E F1144 595.2 Q F0 .131 +(Report the status of terminated background jobs immediately)184 595.2 R +2.632(,r)-.65 G .132(ather than before the ne)-2.632 F(xt)-.15 E +(primary prompt.)184 607.2 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) +-.25 H(nly when job control is enabled.).15 E F1144 619.2 Q F0 +.088(Exit immediately if a)184 619.2 R F2(pipeline)2.588 E F0 .087 +(\(which may consist of a single)2.588 F F2 .087(simple command)2.587 F +F0 .087(\), a)B F2(list)2.587 E F0 2.587(,o)C(r)-2.587 E(a)184 631.2 Q +F2 .86(compound command)3.359 F F0(\(see)3.36 E F3 .86(SHELL GRAMMAR) +3.36 F F0(in)3.11 E F2(bash\(1\))3.36 E F0 .86(\), e)B .86 +(xits with a non-zero sta-)-.15 F 2.853(tus. The)184 643.2 R .353 +(shell does not e)2.853 F .352(xit if the command that f)-.15 F .352 +(ails is part of the command list imme-)-.1 F 1.107(diately follo)184 +655.2 R 1.107(wing a)-.25 F F1(while)3.607 E F0(or)3.607 E F1(until) +3.607 E F0 -.1(ke)3.607 G(yw)-.05 E 1.108(ord, part of the test follo) +-.1 F 1.108(wing the)-.25 F F1(if)3.608 E F0(or)3.608 E F1(elif)3.608 E +F0(re-)3.608 E(serv)184 667.2 Q .28(ed w)-.15 F .28(ords, part of an)-.1 +F 2.78(yc)-.15 G .28(ommand e)-2.78 F -.15(xe)-.15 G .279(cuted in a).15 +F F1(&&)2.779 E F0(or)2.779 E F1(||)2.779 E F0 .279(list e)2.779 F .279 +(xcept the command fol-)-.15 F(lo)184 679.2 Q .702(wing the \214nal)-.25 +F F1(&&)3.203 E F0(or)3.203 E F1(||)3.203 E F0 3.203(,a)C 1.003 -.15 +(ny c)-3.203 H .703(ommand in a pipeline b).15 F .703 +(ut the last, or if the command')-.2 F(s)-.55 E .476(return v)184 691.2 +R .476(alue is being in)-.25 F -.15(ve)-.4 G .476(rted with).15 F F1(!) +2.976 E F0 5.476(.I)C 2.976(fac)-5.476 G .476 (ompound command other than a subshell re-)-2.976 F .418 -(turns a non-zero status because a command f)184 561.6 R .418 -(ailed while)-.1 F F12.918 E F0 -.1(wa)2.918 G 2.918(sb).1 G .417 -(eing ignored, the shell)-2.918 F .472(does not e)184 573.6 R 2.972 -(xit. A)-.15 F .472(trap on)2.972 F F1(ERR)2.972 E F0 2.972(,i)C 2.972 -(fs)-2.972 G .472(et, is e)-2.972 F -.15(xe)-.15 G .473 -(cuted before the shell e).15 F 2.973(xits. This)-.15 F .473(option ap-) -2.973 F 2.114(plies to the shell en)184 585.6 R 2.113 -(vironment and each subshell en)-.4 F 2.113(vironment separately \(see) --.4 F F3(COM-)4.613 E .675(MAND EXECUTION ENVIR)184 597.6 R(ONMENT)-.27 -E F0(in)2.925 E F2(bash\(1\))3.175 E F0 .675 -(\), and may cause subshells to e)B .676(xit be-)-.15 F(fore e)184 609.6 -Q -.15(xe)-.15 G(cuting all the commands in the subshell.).15 E .999 -(If a compound command or shell function e)184 627.6 R -.15(xe)-.15 G -.999(cutes in a conte).15 F .998(xt where)-.15 F F13.498 E F0 .998 -(is being ig-)3.498 F .089(nored, none of the commands e)184 639.6 R --.15(xe)-.15 G .089(cuted within the compound command or function body) -.15 F .503(will be af)184 651.6 R .503(fected by the)-.25 F F1 -3.002 E F0 .502(setting, e)3.002 F -.15(ve)-.25 G 3.002(ni).15 G(f) --3.002 E F13.002 E F0 .502(is set and a command returns a f)3.002 -F .502(ailure sta-)-.1 F 4.183(tus. If)184 663.6 R 4.183(ac)4.183 G -1.683(ompound command or shell function sets)-4.183 F F14.184 E F0 -1.684(while e)4.184 F -.15(xe)-.15 G 1.684(cuting in a conte).15 F(xt) --.15 E(where)184 675.6 Q F13.154 E F0 .654 -(is ignored, that setting will not ha)3.154 F .953 -.15(ve a)-.2 H .953 --.15(ny e).15 H -.25(ff).15 G .653(ect until the compound command).25 F -(or the command containing the function call completes.)184 687.6 Q F1 -144 699.6 Q F0(Disable pathname e)184 699.6 Q(xpansion.)-.15 E F1 -144 711.6 Q F0 .988(Remember the location of commands as the)184 -711.6 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 .988(is en-)3.488 F -(abled by def)184 723.6 Q(ault.)-.1 E(GNU Bash 5.2)72 768 Q(2021 No) -136.385 E -.15(ve)-.15 G(mber 22).15 E(15)185.545 E 0 Cg EP +(turns a non-zero status because a command f)184 703.2 R .418 +(ailed while)-.1 F F12.918 E F0 -.1(wa)2.918 G 2.918(sb).1 G .418 +(eing ignored, the shell)-2.918 F .473(does not e)184 715.2 R 2.973 +(xit. A)-.15 F .473(trap on)2.973 F F1(ERR)2.973 E F0 2.972(,i)C 2.972 +(fs)-2.972 G .472(et, is e)-2.972 F -.15(xe)-.15 G .472 +(cuted before the shell e).15 F 2.972(xits. This)-.15 F .472(option ap-) +2.972 F 5.074(plies to the shell en)184 727.2 R 5.074 +(vironment and each subshell en)-.4 F 5.074(vironment separately \(see) +-.4 F(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(15)190.95 E 0 Cg EP %%Page: 16 16 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF144 84 Q F0 .514 -(All ar)184 84 R .514 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 9/Times-Bold@0 SF .071 +(COMMAND EXECUTION ENVIR)184 84 R(ONMENT)-.27 E F0(in)2.32 E/F2 10 +/Times-Italic@0 SF(bash\(1\))2.57 E F0 .07 +(\), and may cause subshells to e)B(xit)-.15 E(before e)184 96 Q -.15 +(xe)-.15 G(cuting all the commands in the subshell.).15 E .998 +(If a compound command or shell function e)184 114 R -.15(xe)-.15 G .999 +(cutes in a conte).15 F .999(xt where)-.15 F/F3 10/Times-Bold@0 SF +3.499 E F0 .999(is being ig-)3.499 F .089(nored, none of the commands e) +184 126 R -.15(xe)-.15 G .089 +(cuted within the compound command or function body).15 F .502 +(will be af)184 138 R .502(fected by the)-.25 F F33.002 E F0 .502 +(setting, e)3.002 F -.15(ve)-.25 G 3.002(ni).15 G(f)-3.002 E F3 +3.002 E F0 .502(is set and a command returns a f)3.002 F .503 +(ailure sta-)-.1 F 4.184(tus. If)184 150 R 4.184(ac)4.184 G 1.684 +(ompound command or shell function sets)-4.184 F F34.183 E F0 +1.683(while e)4.183 F -.15(xe)-.15 G 1.683(cuting in a conte).15 F(xt) +-.15 E(where)184 162 Q F33.153 E F0 .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 174 Q F3 +144 186 Q F0(Disable pathname e)184 186 Q(xpansion.)-.15 E F3 +144 198 Q F0 .988(Remember the location of commands as the)184 198 +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 210 +Q(ault.)-.1 E F3144 222 Q F0 .513(All ar)184 222 R .514 (guments in the form of assignment statements are placed in the en)-.18 -F .513(vironment for a)-.4 F -(command, not just those that precede the command name.)184 96 Q F1 -144 108 Q F0 .148(Monitor mode.)184 108 R .148 -(Job control is enabled.)5.148 F .149(This option is on by def)5.148 F -.149(ault for interacti)-.1 F .449 -.15(ve s)-.25 H(hells).15 E .235 -(on systems that support it \(see)184 120 R/F2 9/Times-Bold@0 SF .235 -(JOB CONTR)2.735 F(OL)-.27 E F0(in)2.485 E/F3 10/Times-Italic@0 SF -(bash\(1\))2.735 E F0 2.735(\). All)B .234(processes run in a sepa-) -2.735 F .252(rate process group.)184 132 R .252 +F .514(vironment for a)-.4 F +(command, not just those that precede the command name.)184 234 Q F3 +144 246 Q F0 .149(Monitor mode.)184 246 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 .234 +(on systems that support it \(see)184 258 R F1 .235(JOB CONTR)2.735 F +(OL)-.27 E F0(in)2.485 E F2(bash\(1\))2.735 E F0 2.735(\). All)B .235 +(processes run in a sepa-)2.735 F .253(rate process group.)184 270 R +.252 (When a background job completes, the shell prints a line containing) -5.252 F(its e)184 144 Q(xit status.)-.15 E F1144 156 Q F0 .653 -(Read commands b)184 156 R .653(ut do not e)-.2 F -.15(xe)-.15 G .653 -(cute them.).15 F .652(This may be used to check a shell script for) -5.653 F(syntax errors.)184 168 Q(This is ignored by interacti)5 E .3 --.15(ve s)-.25 H(hells.).15 E F1144 180 Q F3(option\255name)2.5 E -F0(The)184 192 Q F3(option\255name)2.5 E F0(can be one of the follo)2.5 -E(wing:)-.25 E F1(allexport)184 204 Q F0(Same as)224 216 Q F12.5 E -F0(.)A F1(braceexpand)184 228 Q F0(Same as)224 240 Q F12.5 E F0(.) -A F1(emacs)184 252 Q F0 .089 -(Use an emacs-style command line editing interf)224 252 R 2.589 +5.253 F(its e)184 282 Q(xit status.)-.15 E F3144 294 Q F0 .652 +(Read commands b)184 294 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 306 Q(This is ignored by interacti)5 E .3 +-.15(ve s)-.25 H(hells.).15 E F3144 318 Q F2(option\255name)2.5 E +F0(The)184 330 Q F2(option\255name)2.5 E F0(can be one of the follo)2.5 +E(wing:)-.25 E F3(allexport)184 342 Q F0(Same as)224 354 Q F32.5 E +F0(.)A F3(braceexpand)184 366 Q F0(Same as)224 378 Q F32.5 E F0(.) +A F3(emacs)184 390 Q F0 .089 +(Use an emacs-style command line editing interf)224 390 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 264 R -.15(ve)-.25 G 3.45(,u).15 G .95 -(nless the shell is started with the)-3.45 F F1(\255\255noediting)3.45 E -F0 2.5(option. This)224 276 R(also af)2.5 E(fects the editing interf) --.25 E(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0(.)A F1(err) -184 288 Q(exit)-.18 E F0(Same as)224 288 Q F12.5 E F0(.)A F1 -(errtrace)184 300 Q F0(Same as)224 300 Q F12.5 E F0(.)A F1 -(functrace)184 312 Q F0(Same as)224 324 Q F12.5 E F0(.)A F1 -(hashall)184 336 Q F0(Same as)224 336 Q F12.5 E F0(.)A F1 -(histexpand)184 348 Q F0(Same as)224 360 Q F12.5 E F0(.)A F1 -(history)184 372 Q F0 1.001(Enable command history)224 372 R 3.502(,a) --.65 G 3.502(sd)-3.502 G 1.002(escribed in)-3.502 F F3(bash\(1\))3.502 E -F0(under)3.502 E F2(HIST)3.502 E(OR)-.162 E(Y)-.315 E/F4 9/Times-Roman@0 -SF(.)A F0 1.002(This op-)5.502 F(tion is on by def)224 384 Q -(ault in interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1(ignor)184 -396 Q(eeof)-.18 E F0 1.657(The ef)224 408 R 1.657 +(when the shell is interacti)224 402 R -.15(ve)-.25 G 3.45(,u).15 G .95 +(nless the shell is started with the)-3.45 F F3(\255\255noediting)3.45 E +F0 2.5(option. This)224 414 R(also af)2.5 E(fects the editing interf) +-.25 E(ace used for)-.1 E F3 -.18(re)2.5 G(ad \255e).18 E F0(.)A F3(err) +184 426 Q(exit)-.18 E F0(Same as)224 426 Q F32.5 E F0(.)A F3 +(errtrace)184 438 Q F0(Same as)224 438 Q F32.5 E F0(.)A F3 +(functrace)184 450 Q F0(Same as)224 462 Q F32.5 E F0(.)A F3 +(hashall)184 474 Q F0(Same as)224 474 Q F32.5 E F0(.)A F3 +(histexpand)184 486 Q F0(Same as)224 498 Q F32.5 E F0(.)A F3 +(history)184 510 Q F0 1.002(Enable command history)224 510 R 3.502(,a) +-.65 G 3.502(sd)-3.502 G 1.002(escribed in)-3.502 F F2(bash\(1\))3.502 E +F0(under)3.502 E F1(HIST)3.502 E(OR)-.162 E(Y)-.315 E/F4 9/Times-Roman@0 +SF(.)A F0 1.001(This op-)5.502 F(tion is on by def)224 522 Q +(ault in interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F3(ignor)184 +534 Q(eeof)-.18 E F0 1.656(The ef)224 546 R 1.656 (fect is as if the shell command)-.25 F/F5 10/Courier@0 SF(IGNOREEOF=10) -4.156 E F0 1.656(had been e)4.156 F -.15(xe)-.15 G(cuted).15 E(\(see)224 -420 Q F1(Shell V)2.5 E(ariables)-.92 E F0(in)2.5 E F3(bash\(1\))2.5 E F0 -(\).)A F1 -.1(ke)184 432 S(yw).1 E(ord)-.1 E F0(Same as)224 444 Q F1 -2.5 E F0(.)A F1(monitor)184 456 Q F0(Same as)224 456 Q F12.5 -E F0(.)A F1(noclob)184 468 Q(ber)-.1 E F0(Same as)224 480 Q F12.5 -E F0(.)A F1(noexec)184 492 Q F0(Same as)224 492 Q F12.5 E F0(.)A -F1(noglob)184 504 Q F0(Same as)224 504 Q F12.5 E F0(.)A F1(nolog) -184 516 Q F0(Currently ignored.)224 516 Q F1(notify)184 528 Q F0 -(Same as)224 528 Q F12.5 E F0(.)A F1(nounset)184 540 Q F0(Same as) -224 540 Q F12.5 E F0(.)A F1(onecmd)184 552 Q F0(Same as)224 552 Q -F12.5 E F0(.)A F1(ph)184 564 Q(ysical)-.15 E F0(Same as)224 564 Q -F12.5 E F0(.)A F1(pipefail)184 576 Q F0 1.029 -(If set, the return v)224 576 R 1.029(alue of a pipeline is the v)-.25 F -1.03(alue of the last \(rightmost\) com-)-.25 F 1.137(mand to e)224 588 -R 1.136 +4.157 E F0 1.657(had been e)4.157 F -.15(xe)-.15 G(cuted).15 E(\(see)224 +558 Q F3(Shell V)2.5 E(ariables)-.92 E F0(in)2.5 E F2(bash\(1\))2.5 E F0 +(\).)A F3 -.1(ke)184 570 S(yw).1 E(ord)-.1 E F0(Same as)224 582 Q F3 +2.5 E F0(.)A F3(monitor)184 594 Q F0(Same as)224 594 Q F32.5 +E F0(.)A F3(noclob)184 606 Q(ber)-.1 E F0(Same as)224 618 Q F32.5 +E F0(.)A F3(noexec)184 630 Q F0(Same as)224 630 Q F32.5 E F0(.)A +F3(noglob)184 642 Q F0(Same as)224 642 Q F32.5 E F0(.)A F3(nolog) +184 654 Q F0(Currently ignored.)224 654 Q F3(notify)184 666 Q F0 +(Same as)224 666 Q F32.5 E F0(.)A F3(nounset)184 678 Q F0(Same as) +224 678 Q F32.5 E F0(.)A F3(onecmd)184 690 Q F0(Same as)224 690 Q +F32.5 E F0(.)A F3(ph)184 702 Q(ysical)-.15 E F0(Same as)224 702 Q +F32.5 E F0(.)A F3(pipefail)184 714 Q F0 1.03(If set, the return v) +224 714 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 726 R +1.136 (xit with a non-zero status, or zero if all commands in the pipeline) --.15 F -.15(ex)224 600 S(it successfully).15 E 5(.T)-.65 G -(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 612 Q F0 -2.09(Change the beha)224 612 R 2.091(vior of)-.2 F F1(bash)4.591 E F0 -2.091(where the def)4.591 F 2.091(ault operation dif)-.1 F 2.091 -(fers from the)-.25 F 2.704(POSIX standard to match the standard \()224 -624 R F3 2.704(posix mode)B F0 5.204(\). See)B F2 2.704(SEE ALSO)5.204 F -F0(in)4.953 E F3(bash\(1\))224 636 Q F0 1.844 -(for a reference to a document that details ho)4.344 F 4.344(wp)-.25 G -1.845(osix mode af)-4.344 F(fects)-.25 E(bash')224 648 Q 2.5(sb)-.55 G -(eha)-2.5 E(vior)-.2 E(.)-.55 E F1(pri)184 660 Q(vileged)-.1 E F0 -(Same as)224 672 Q F12.5 E F0(.)A F1 -.1(ve)184 684 S(rbose).1 E -F0(Same as)224 684 Q F12.5 E F0(.)A F1(vi)184 696 Q F0 .209 -(Use a vi-style command line editing interf)224 696 R 2.709(ace. This) --.1 F .209(also af)2.709 F .209(fects the editing in-)-.25 F(terf)224 -708 Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0(.)A -(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E -(16)185.545 E 0 Cg EP +-.15 F(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(16)190.95 E 0 Cg +EP %%Page: 17 17 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(xtrace)184 84 Q F0 -(Same as)224 84 Q F12.5 E F0(.)A(If)184 102 Q F13.052 E F0 -.552(is supplied with no)3.052 F/F2 10/Times-Italic@0 SF(option\255name) -3.053 E F0 3.053(,t)C .553(he v)-3.053 F .553 -(alues of the current options are printed.)-.25 F(If)5.553 E F1(+o)184 -114 Q F0 1.072(is supplied with no)3.572 F F2(option\255name)3.572 E F0 -3.572(,a)C 1.071(series of)-.001 F F1(set)3.571 E F0 1.071 -(commands to recreate the current)3.571 F -(option settings is displayed on the standard output.)184 126 Q F1 -144 138 Q F0 -.45(Tu)184 138 S 1.071(rn on).45 F F2(privile)4.821 E -.1 -(ge)-.4 G(d).1 E F0 3.572(mode. In)4.341 F 1.072(this mode, the)3.572 F -/F3 9/Times-Bold@0 SF($ENV)3.572 E F0(and)3.322 E F3($B)3.572 E(ASH_ENV) --.27 E F0 1.072(\214les are not pro-)3.322 F 1.501 -(cessed, shell functions are not inherited from the en)184 150 R 1.5 -(vironment, and the)-.4 F F3(SHELLOPTS)4 E/F4 9/Times-Roman@0 SF(,)A F3 --.27(BA)184 162 S(SHOPTS).27 E F4(,)A F3(CDP)2.774 E -.855(AT)-.666 G(H) -.855 E F4(,)A F0(and)2.774 E F3(GLOBIGNORE)3.024 E F0 -.25(va)2.774 G -.524(riables, if the).25 F 3.025(ya)-.15 G .525(ppear in the en)-3.025 F -(vironment,)-.4 E .38(are ignored.)184 174 R .38 -(If the shell is started with the ef)5.38 F(fecti)-.25 E .679 -.15(ve u) --.25 H .379(ser \(group\) id not equal to the real).15 F .461 -(user \(group\) id, and the)184 186 R F12.961 E F0 .461 -(option is not supplied, these actions are tak)2.961 F .462 -(en and the ef)-.1 F(fec-)-.25 E(ti)184 198 Q .695 -.15(ve u)-.25 H .395 +E(UIL)-.1 E(TINS\(1\))-.92 E -.15(ex)224 84 S(it successfully).15 E 5 +(.T)-.65 G(his option is disabled by def)-5 E(ault.)-.1 E/F1 10 +/Times-Bold@0 SF(posix)184 96 Q F0 2.091(Change the beha)224 96 R 2.091 +(vior of)-.2 F F1(bash)4.591 E F0 2.091(where the def)4.591 F 2.091 +(ault operation dif)-.1 F 2.091(fers from the)-.25 F 2.704 +(POSIX standard to match the standard \()224 108 R/F2 10/Times-Italic@0 +SF 2.704(posix mode)B F0 5.204(\). See)B/F3 9/Times-Bold@0 SF 2.704 +(SEE ALSO)5.204 F F0(in)4.954 E F2(bash\(1\))224 120 Q F0 1.844 +(for a reference to a document that details ho)4.345 F 4.344(wp)-.25 G +1.844(osix mode af)-4.344 F(fects)-.25 E(bash')224 132 Q 2.5(sb)-.55 G +(eha)-2.5 E(vior)-.2 E(.)-.55 E F1(pri)184 144 Q(vileged)-.1 E F0 +(Same as)224 156 Q F12.5 E F0(.)A F1 -.1(ve)184 168 S(rbose).1 E +F0(Same as)224 168 Q F12.5 E F0(.)A F1(vi)184 180 Q F0 .209 +(Use a vi-style command line editing interf)224 180 R 2.709(ace. This) +-.1 F .209(also af)2.709 F .21(fects the editing in-)-.25 F(terf)224 192 +Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0(.)A F1(xtrace) +184 204 Q F0(Same as)224 204 Q F12.5 E F0(.)A(If)184 222 Q F1 +3.053 E F0 .553(is supplied with no)3.053 F F2(option\255name) +3.053 E F0 3.053(,t)C .553(he v)-3.053 F .552 +(alues of the current options are printed.)-.25 F(If)5.552 E F1(+o)184 +234 Q F0 1.071(is supplied with no)3.571 F F2(option\255name)3.571 E F0 +3.571(,as)C 1.071(eries of)-3.571 F F1(set)3.572 E F0 1.072 +(commands to recreate the current)3.572 F +(option settings is displayed on the standard output.)184 246 Q F1 +144 258 Q F0 -.45(Tu)184 258 S 1.072(rn on).45 F F2(privile)4.822 E -.1 +(ge)-.4 G(d).1 E F0 3.572(mode. In)4.342 F 1.072(this mode, the)3.572 F +F3($ENV)3.572 E F0(and)3.322 E F3($B)3.572 E(ASH_ENV)-.27 E F0 1.071 +(\214les are not pro-)3.322 F 1.5 +(cessed, shell functions are not inherited from the en)184 270 R 1.501 +(vironment, and the)-.4 F F3(SHELLOPTS)4.001 E/F4 9/Times-Roman@0 SF(,)A +F3 -.27(BA)184 282 S(SHOPTS).27 E F4(,)A F3(CDP)2.775 E -.855(AT)-.666 G +(H).855 E F4(,)A F0(and)2.775 E F3(GLOBIGNORE)3.025 E F0 -.25(va)2.775 G +.524(riables, if the).25 F 3.024(ya)-.15 G .524(ppear in the en)-3.024 F +(vironment,)-.4 E .379(are ignored.)184 294 R .379 +(If the shell is started with the ef)5.379 F(fecti)-.25 E .679 -.15 +(ve u)-.25 H .38(ser \(group\) id not equal to the real).15 F .462 +(user \(group\) id, and the)184 306 R F12.961 E F0 .461 +(option is not supplied, these actions are tak)2.961 F .461 +(en and the ef)-.1 F(fec-)-.25 E(ti)184 318 Q .694 -.15(ve u)-.25 H .394 (ser id is set to the real user id.).15 F .395(If the)5.395 F F1 -2.895 E F0 .394(option is supplied at startup, the ef)2.895 F(fecti)-.25 -E -.15(ve)-.25 G .386(user id is not reset.)184 210 R -.45(Tu)5.386 G -.386(rning this option of).45 F 2.886(fc)-.25 G .387(auses the ef)-2.886 -F(fecti)-.25 E .687 -.15(ve u)-.25 H .387(ser and group ids to be).15 F -(set to the real user and group ids.)184 222 Q F1144 234 Q F0 -(Enable restricted shell mode.)184 234 Q -(This option cannot be unset once it has been set.)5 E F1144 246 Q -F0(Exit after reading and e)184 246 Q -.15(xe)-.15 G -(cuting one command.).15 E F1144 258 Q F0 -.35(Tr)184 258 S .774 +2.895 E F0 .395(option is supplied at startup, the ef)2.895 F(fecti)-.25 +E -.15(ve)-.25 G .387(user id is not reset.)184 330 R -.45(Tu)5.387 G +.387(rning this option of).45 F 2.886(fc)-.25 G .386(auses the ef)-2.886 +F(fecti)-.25 E .686 -.15(ve u)-.25 H .386(ser and group ids to be).15 F +(set to the real user and group ids.)184 342 Q F1144 354 Q F0 +(Enable restricted shell mode.)184 354 Q +(This option cannot be unset once it has been set.)5 E F1144 366 Q +F0(Exit after reading and e)184 366 Q -.15(xe)-.15 G +(cuting one command.).15 E F1144 378 Q F0 -.35(Tr)184 378 S .773 (eat unset v).35 F .773(ariables and parameters other than the special \ -parameters "@" and "*", or)-.25 F .459(array v)184 270 R .459(ariables \ -subscripted with "@" or "*", as an error when performing parameter e) --.25 F(x-)-.15 E 2.891(pansion. If)184 282 R -.15(ex)2.891 G .391 +parameters "@" and "*", or)-.25 F .46(array v)184 390 R .459(ariables s\ +ubscripted with "@" or "*", as an error when performing parameter e)-.25 +F(x-)-.15 E 2.89(pansion. If)184 402 R -.15(ex)2.89 G .391 (pansion is attempted on an unset v).15 F .391(ariable or parameter)-.25 -F 2.89(,t)-.4 G .39(he shell prints an)-2.89 F -(error message, and, if not interacti)184 294 Q -.15(ve)-.25 G 2.5(,e) -.15 G(xits with a non-zero status.)-2.65 E F1144 306 Q F0 -(Print shell input lines as the)184 306 Q 2.5(ya)-.15 G(re read.)-2.5 E -F1144 318 Q F0 .315(After e)184 318 R .315(xpanding each)-.15 F F2 +F 2.891(,t)-.4 G .391(he shell prints an)-2.891 F +(error message, and, if not interacti)184 414 Q -.15(ve)-.25 G 2.5(,e) +.15 G(xits with a non-zero status.)-2.65 E F1144 426 Q F0 +(Print shell input lines as the)184 426 Q 2.5(ya)-.15 G(re read.)-2.5 E +F1144 438 Q F0 .315(After e)184 438 R .315(xpanding each)-.15 F F2 .315(simple command)2.815 F F0(,)A F1 -.25(fo)2.815 G(r).25 E F0 (command,)2.815 E F1(case)2.815 E F0(command,)2.815 E F1(select)2.815 E -F0(command,)2.815 E 1.236(or arithmetic)184 330 R F1 -.25(fo)3.736 G(r) +F0(command,)2.815 E 1.235(or arithmetic)184 450 R F1 -.25(fo)3.736 G(r) .25 E F0 1.236(command, display the e)3.736 F 1.236(xpanded v)-.15 F 1.236(alue of)-.25 F F3(PS4)3.736 E F4(,)A F0(follo)3.486 E 1.236 -(wed by the com-)-.25 F(mand and its e)184 342 Q(xpanded ar)-.15 E -(guments or associated w)-.18 E(ord list.)-.1 E F1144 354 Q F0 -1.053(The shell performs brace e)184 354 R 1.053(xpansion \(see)-.15 F -F1 1.053(Brace Expansion)3.553 F F0(in)3.553 E F2(bash\(1\))3.553 E F0 -3.553(\). This)B 1.053(is on by)3.553 F(def)184 366 Q(ault.)-.1 E F1 -144 378 Q F0 .214(If set,)184 378 R F1(bash)2.714 E F0 .214 -(does not o)2.714 F -.15(ve)-.15 G .214(rwrite an e).15 F .214 -(xisting \214le with the)-.15 F F1(>)2.714 E F0(,)A F1(>&)2.714 E F0 -2.713(,a)C(nd)-2.713 E F1(<>)2.713 E F0 .213(redirection opera-)2.713 F -3.053(tors. This)184 390 R .553(may be o)3.053 F -.15(ve)-.15 G .553 +(wed by the com-)-.25 F(mand and its e)184 462 Q(xpanded ar)-.15 E +(guments or associated w)-.18 E(ord list, to standard error)-.1 E(.)-.55 +E F1144 474 Q F0 1.053(The shell performs brace e)184 474 R 1.053 +(xpansion \(see)-.15 F F1 1.053(Brace Expansion)3.553 F F0(in)3.553 E F2 +(bash\(1\))3.553 E F0 3.553(\). This)B 1.053(is on by)3.553 F(def)184 +486 Q(ault.)-.1 E F1144 498 Q F0 .213(If set,)184 498 R F1(bash) +2.713 E F0 .213(does not o)2.713 F -.15(ve)-.15 G .214(rwrite an e).15 F +.214(xisting \214le with the)-.15 F F1(>)2.714 E F0(,)A F1(>&)2.714 E F0 +2.714(,a)C(nd)-2.714 E F1(<>)2.714 E F0 .214(redirection opera-)2.714 F +3.054(tors. This)184 510 R .553(may be o)3.053 F -.15(ve)-.15 G .553 (rridden when creating output \214les by using the redirection opera-) -.15 F(tor)184 402 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1 -144 414 Q F0 .104(If set, an)184 414 R 2.604(yt)-.15 G .104 -(rap on)-2.604 F F1(ERR)2.604 E F0 .103 -(is inherited by shell functions, command substitutions, and com-)2.604 -F .838(mands e)184 426 R -.15(xe)-.15 G .838(cuted in a subshell en).15 -F 3.338(vironment. The)-.4 F F1(ERR)3.338 E F0 .839 -(trap is normally not inherited in)3.339 F(such cases.)184 438 Q F1 -144 450 Q F0(Enable)184 450 Q F1(!)3.032 E F0 .532 -(style history substitution.)5.532 F .531(This option is on by def)5.532 -F .531(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 462 Q -.15 -(ve)-.25 G(.).15 E F1144 474 Q F0 .959 -(If set, the shell does not resolv)184 474 R 3.459(es)-.15 G .959 -(ymbolic links when e)-3.459 F -.15(xe)-.15 G .96 -(cuting commands such as).15 F F1(cd)3.46 E F0 1.453 -(that change the current w)184 486 R 1.453(orking directory)-.1 F 6.453 -(.I)-.65 G 3.952(tu)-6.453 G 1.452(ses the ph)-3.952 F 1.452 -(ysical directory structure in-)-.05 F 3.334(stead. By)184 498 R(def) -3.334 E(ault,)-.1 E F1(bash)3.334 E F0(follo)3.334 E .834 +.15 F(tor)184 522 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1 +144 534 Q F0 .103(If set, an)184 534 R 2.603(yt)-.15 G .103 +(rap on)-2.603 F F1(ERR)2.603 E F0 .104 +(is inherited by shell functions, command substitutions, and com-)2.603 +F .839(mands e)184 546 R -.15(xe)-.15 G .839(cuted in a subshell en).15 +F 3.339(vironment. The)-.4 F F1(ERR)3.338 E F0 .838 +(trap is normally not inherited in)3.338 F(such cases.)184 558 Q F1 +144 570 Q F0(Enable)184 570 Q F1(!)3.031 E F0 .531 +(style history substitution.)5.531 F .531(This option is on by def)5.531 +F .532(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 582 Q -.15 +(ve)-.25 G(.).15 E F1144 594 Q F0 .96 +(If set, the shell does not resolv)184 594 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 F1(cd)3.459 E F0 1.452 +(that change the current w)184 606 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 618 R(def) +3.335 E(ault,)-.1 E F1(bash)3.334 E F0(follo)3.334 E .834 (ws the logical chain of directories when performing com-)-.25 F -(mands which change the current directory)184 510 Q(.)-.65 E F1144 -522 Q F0 .89(If set, an)184 522 R 3.39(yt)-.15 G .89(raps on)-3.39 F F1 +(mands which change the current directory)184 630 Q(.)-.65 E F1144 +642 Q F0 .89(If set, an)184 642 R 3.39(yt)-.15 G .89(raps on)-3.39 F F1 (DEB)3.39 E(UG)-.1 E F0(and)3.39 E F1(RETURN)3.39 E F0 .89 (are inherited by shell functions, command)3.39 F 1.932 -(substitutions, and commands e)184 534 R -.15(xe)-.15 G 1.932 +(substitutions, and commands e)184 654 R -.15(xe)-.15 G 1.932 (cuted in a subshell en).15 F 4.432(vironment. The)-.4 F F1(DEB)4.432 E -(UG)-.1 E F0(and)4.432 E F1(RETURN)184 546 Q F0 -(traps are normally not inherited in such cases.)2.5 E F1144 558 Q -F0 .401(If no ar)184 558 R .401(guments follo)-.18 F 2.901(wt)-.25 G -.401(his option, then the positional parameters are unset.)-2.901 F -(Otherwise,)5.4 E(the positional parameters are set to the)184 570 Q F2 -(ar)2.5 E(g)-.37 E F0(s, e)A -.15(ve)-.25 G 2.5(ni).15 G 2.5(fs)-2.5 G +(UG)-.1 E F0(and)4.432 E F1(RETURN)184 666 Q F0 +(traps are normally not inherited in such cases.)2.5 E F1144 678 Q +F0 .4(If no ar)184 678 R .401(guments follo)-.18 F 2.901(wt)-.25 G .401 +(his option, then the positional parameters are unset.)-2.901 F +(Otherwise,)5.401 E(the positional parameters are set to the)184 690 Q +F2(ar)2.5 E(g)-.37 E F0(s, e)A -.15(ve)-.25 G 2.5(ni).15 G 2.5(fs)-2.5 G (ome of them be)-2.5 E(gin with a)-.15 E F12.5 E F0(.)A F1144 -582 Q F0 .796(Signal the end of options, cause all remaining)184 582 R -F2(ar)3.297 E(g)-.37 E F0 3.297(st)C 3.297(ob)-3.297 G 3.297(ea)-3.297 G -.797(ssigned to the positional pa-)-3.297 F 3.022(rameters. The)184 594 -R F13.022 E F0(and)3.022 E F13.022 E F0 .522 +702 Q F0 .797(Signal the end of options, cause all remaining)184 702 R +F2(ar)3.297 E(g)-.37 E F0 3.297(st)C 3.297(ob)-3.297 G 3.296(ea)-3.297 G +.796(ssigned to the positional pa-)-3.296 F 3.021(rameters. The)184 714 +R F13.021 E F0(and)3.022 E F13.022 E F0 .522 (options are turned of)3.022 F 3.022(f. If)-.25 F .522(there are no) -3.022 F F2(ar)3.022 E(g)-.37 E F0 .521(s, the positional pa-)B -(rameters remain unchanged.)184 606 Q .425(The options are of)144 622.8 -R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)-2.925 E .425 -(ault unless otherwise noted.)-.1 F .425 -(Using + rather than \255 causes these options)5.425 F .178 -(to be turned of)144 634.8 R 2.678(f. The)-.25 F .178 -(options can also be speci\214ed as ar)2.678 F .178(guments to an in) --.18 F -.2(vo)-.4 G .177(cation of the shell.).2 F(The)5.177 E .066 -(current set of options may be found in)144 646.8 R F1<24ad>2.566 E F0 -5.066(.T)C .066(he return status is al)-5.066 F -.1(wa)-.1 G .066 -(ys true unless an in).1 F -.25(va)-.4 G .067(lid option).25 F -(is encountered.)144 658.8 Q F1(shift)108 675.6 Q F0([)2.5 E F2(n)A F0 -(])A .429(The positional parameters from)144 687.6 R F2(n)2.929 E F0 -.429(+1 ... are renamed to)B F1 .429($1 ....)2.929 F F0 -.15(Pa)5.428 G -.428(rameters represented by the num-).15 F(bers)144 699.6 Q F1($#)2.582 -E F0(do)2.582 E .082(wn to)-.25 F F1($#)2.582 E F0A F2(n)A F0 .082 -(+1 are unset.)B F2(n)5.442 E F0 .082(must be a non-ne)2.822 F -.05(ga) --.15 G(ti).05 E .383 -.15(ve n)-.25 H .083(umber less than or equal to) -.15 F F1($#)2.583 E F0 5.083(.I)C(f)-5.083 E F2(n)2.943 E F0 .06 -(is 0, no parameters are changed.)144 711.6 R(If)5.06 E F2(n)2.92 E F0 -.06(is not gi)2.8 F -.15(ve)-.25 G .06(n, it is assumed to be 1.).15 F -(If)5.06 E F2(n)2.92 E F0 .06(is greater than)2.8 F F1($#)2.56 E F0 2.56 -(,t)C(he)-2.56 E .143(positional parameters are not changed.)144 723.6 R -.144(The return status is greater than zero if)5.143 F F2(n)3.004 E F0 -.144(is greater than)2.884 F F1($#)2.644 E F0(GNU Bash 5.2)72 768 Q -(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(17)185.545 E 0 Cg EP +3.022 F F2(ar)3.022 E(g)-.37 E F0 .522(s, the positional pa-)B +(rameters remain unchanged.)184 726 Q(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(17)190.95 E 0 Cg EP %%Page: 18 18 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(or less than zero; otherwise 0.)144 84 Q/F1 -10/Times-Bold@0 SF(shopt)108 100.8 Q F0([)2.5 E F1(\255pqsu)A F0 2.5(][) -C F1-2.5 E F0 2.5(][)C/F2 10/Times-Italic@0 SF(optname)-2.5 E F0 -(...])2.5 E -.8(To)144 112.8 S .64(ggle the v).8 F .639 +E(UIL)-.1 E(TINS\(1\))-.92 E .425(The options are of)144 84 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 96 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 .066 +(current set of options may be found in)144 108 R/F1 10/Times-Bold@0 SF +<24ad>2.566 E F0 5.066(.T)C .066(he return status is al)-5.066 F -.1(wa) +-.1 G .066(ys true unless an in).1 F -.25(va)-.4 G .066(lid option).25 F +(is encountered.)144 120 Q F1(shift)108 136.8 Q F0([)2.5 E/F2 10 +/Times-Italic@0 SF(n)A F0(])A .428(The positional parameters from)144 +148.8 R F2(n)2.928 E F0 .429(+1 ... are renamed to)B F1 .429($1 ....) +2.929 F F0 -.15(Pa)5.429 G .429(rameters represented by the num-).15 F +(bers)144 160.8 Q F1($#)2.583 E F0(do)2.583 E .083(wn to)-.25 F F1($#) +2.583 E F0A F2(n)A F0 .083(+1 are unset.)B F2(n)5.443 E F0 .083 +(must be a non-ne)2.823 F -.05(ga)-.15 G(ti).05 E .382 -.15(ve n)-.25 H +.082(umber less than or equal to).15 F F1($#)2.582 E F0 5.082(.I)C(f) +-5.082 E F2(n)2.942 E F0 .06(is 0, no parameters are changed.)144 172.8 +R(If)5.06 E F2(n)2.92 E F0 .06(is not gi)2.8 F -.15(ve)-.25 G .06 +(n, it is assumed to be 1.).15 F(If)5.06 E F2(n)2.92 E F0 .06 +(is greater than)2.8 F F1($#)2.56 E F0 2.56(,t)C(he)-2.56 E .144 +(positional parameters are not changed.)144 184.8 R .144 +(The return status is greater than zero if)5.144 F F2(n)3.003 E F0 .143 +(is greater than)2.883 F F1($#)2.643 E F0 +(or less than zero; otherwise 0.)144 196.8 Q F1(shopt)108 213.6 Q F0([) +2.5 E F1(\255pqsu)A F0 2.5(][)C F1-2.5 E F0 2.5(][)C F2(optname) +-2.5 E F0(...])2.5 E -.8(To)144 225.6 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 .639(he settings can be either those)-5.639 F .374 -(listed belo)144 124.8 R 1.674 -.65(w, o)-.25 H 1.174 -.4(r, i).65 H -2.874(ft).4 G(he)-2.874 E F12.874 E F0 .375 +5.639(.T)-.55 G .64(he settings can be either those)-5.639 F .375 +(listed belo)144 237.6 R 1.675 -.65(w, o)-.25 H 1.175 -.4(r, i).65 H +2.875(ft).4 G(he)-2.875 E F12.875 E F0 .375 (option is used, those a)2.875 F -.25(va)-.2 G .375(ilable with the).25 -F F12.875 E F0 .375(option to the)2.875 F F1(set)2.875 E F0 -.2 -(bu)2.875 G .375(iltin com-).2 F 2.566(mand. W)144 136.8 R .066 +F F12.875 E F0 .374(option to the)2.875 F F1(set)2.874 E F0 -.2 +(bu)2.874 G .374(iltin com-).2 F 2.565(mand. W)144 249.6 R .065 (ith no options, or with the)-.4 F F12.566 E F0 .066 (option, a list of all settable options is displayed, with an in-)2.566 -F .074(dication of whether or not each is set; if)144 148.8 R F2 +F .074(dication of whether or not each is set; if)144 261.6 R F2 (optnames)2.574 E F0 .074 (are supplied, the output is restricted to those op-)2.574 F 3.105 -(tions. The)144 160.8 R F13.105 E F0 .605(option causes output to\ +(tions. The)144 273.6 R F13.105 E F0 .605(option causes output to\ be displayed in a form that may be reused as input.)3.105 F(Other)5.605 -E(options ha)144 172.8 Q .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F1144 184.8 Q F0(Enable \(set\) each)180 -184.8 Q F2(optname)2.5 E F0(.)A F1144 196.8 Q F0 -(Disable \(unset\) each)180 196.8 Q F2(optname)2.5 E F0(.)A F1144 -208.8 Q F0 .003(Suppresses normal output \(quiet mode\); the return sta\ -tus indicates whether the)180 208.8 R F2(optname)2.504 E F0(is)2.504 E -.256(set or unset.)180 220.8 R .256(If multiple)5.256 F F2(optname)2.756 -E F0(ar)2.756 E .256(guments are gi)-.18 F -.15(ve)-.25 G 2.756(nw).15 G -(ith)-2.756 E F12.756 E F0 2.755(,t)C .255 -(he return status is zero if)-2.755 F(all)180 232.8 Q F2(optnames)2.5 E -F0(are enabled; non-zero otherwise.)2.5 E F1144 244.8 Q F0 -(Restricts the v)180 244.8 Q(alues of)-.25 E F2(optname)2.5 E F0 +E(options ha)144 285.6 Q .3 -.15(ve t)-.2 H(he follo).15 E +(wing meanings:)-.25 E F1144 297.6 Q F0(Enable \(set\) each)180 +297.6 Q F2(optname)2.5 E F0(.)A F1144 309.6 Q F0 +(Disable \(unset\) each)180 309.6 Q F2(optname)2.5 E F0(.)A F1144 +321.6 Q F0 .003(Suppresses normal output \(quiet mode\); the return sta\ +tus indicates whether the)180 321.6 R F2(optname)2.503 E F0(is)2.503 E +.255(set or unset.)180 333.6 R .255(If multiple)5.255 F F2(optname)2.755 +E F0(ar)2.755 E .256(guments are gi)-.18 F -.15(ve)-.25 G 2.756(nw).15 G +(ith)-2.756 E F12.756 E F0 2.756(,t)C .256 +(he return status is zero if)-2.756 F(all)180 345.6 Q F2(optnames)2.5 E +F0(are enabled; non-zero otherwise.)2.5 E F1144 357.6 Q F0 +(Restricts the v)180 357.6 Q(alues of)-.25 E F2(optname)2.5 E F0 (to be those de\214ned for the)2.5 E F12.5 E F0(option to the)2.5 -E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .624(If either)144 261.6 R F1 -3.124 E F0(or)3.124 E F13.124 E F0 .624(is used with no) +E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .625(If either)144 374.4 R F1 +3.125 E F0(or)3.124 E F13.124 E F0 .624(is used with no) 3.124 F F2(optname)3.124 E F0(ar)3.124 E(guments,)-.18 E F1(shopt)3.124 -E F0(sho)3.124 E .624(ws only those options which are)-.25 F .984 -(set or unset, respecti)144 273.6 R -.15(ve)-.25 G(ly).15 E 5.984(.U) --.65 G .984(nless otherwise noted, the)-5.984 F F1(shopt)3.484 E F0 .983 -(options are disabled \(unset\) by de-)3.483 F -.1(fa)144 285.6 S(ult.) +E F0(sho)3.124 E .624(ws only those options which are)-.25 F .983 +(set or unset, respecti)144 386.4 R -.15(ve)-.25 G(ly).15 E 5.983(.U) +-.65 G .983(nless otherwise noted, the)-5.983 F F1(shopt)3.484 E F0 .984 +(options are disabled \(unset\) by de-)3.484 F -.1(fa)144 398.4 S(ult.) .1 E 1.544(The return status when listing options is zero if all)144 -302.4 R F2(optnames)4.044 E F0 1.545(are enabled, non-zero otherwise.) -4.045 F .696 +415.2 R F2(optnames)4.044 E F0 1.544(are enabled, non-zero otherwise.) +4.044 F .696 (When setting or unsetting options, the return status is zero unless an) -144 314.4 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695 -(alid shell)-.25 F(option.)144 326.4 Q(The list of)144 343.2 Q F1(shopt) -2.5 E F0(options is:)2.5 E F1(assoc_expand_once)144 361.2 Q F0 1.944 -(If set, the shell suppresses multiple e)184 373.2 R -.25(va)-.25 G -1.945(luation of associati).25 F 2.245 -.15(ve a)-.25 H 1.945 -(rray subscripts during).15 F .885(arithmetic e)184 385.2 R .885 +144 427.2 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .696 +(alid shell)-.25 F(option.)144 439.2 Q(The list of)144 456 Q F1(shopt) +2.5 E F0(options is:)2.5 E F1(assoc_expand_once)144 474 Q F0 1.945 +(If set, the shell suppresses multiple e)184 486 R -.25(va)-.25 G 1.944 +(luation of associati).25 F 2.244 -.15(ve a)-.25 H 1.944 +(rray subscripts during).15 F .885(arithmetic e)184 498 R .885 (xpression e)-.15 F -.25(va)-.25 G .885(luation, while e).25 F -.15(xe) -.15 G .885(cuting b).15 F .885(uiltins that can perform v)-.2 F .885 -(ariable as-)-.25 F(signments, and while e)184 397.2 Q -.15(xe)-.15 G +(ariable as-)-.25 F(signments, and while e)184 510 Q -.15(xe)-.15 G (cuting b).15 E(uiltins that perform array dereferencing.)-.2 E F1 -(autocd)144 409.2 Q F0 .199 -(If set, a command name that is the name of a directory is e)184 409.2 R --.15(xe)-.15 G .2(cuted as if it were the ar).15 F(gu-)-.18 E -(ment to the)184 421.2 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F +(autocd)144 522 Q F0 .2 +(If set, a command name that is the name of a directory is e)184 522 R +-.15(xe)-.15 G .199(cuted as if it were the ar).15 F(gu-)-.18 E +(ment to the)184 534 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F (option is only used by interacti)2.5 E .3 -.15(ve s)-.25 H(hells.).15 E -F1(cdable_v)144 433.2 Q(ars)-.1 E F0 .156(If set, an ar)184 445.2 R .156 -(gument to the)-.18 F F1(cd)2.656 E F0 -.2(bu)2.656 G .155 +F1(cdable_v)144 546 Q(ars)-.1 E F0 .155(If set, an ar)184 558 R .155 +(gument to the)-.18 F F1(cd)2.655 E F0 -.2(bu)2.655 G .156 (iltin command that is not a directory is assumed to be the).2 F -(name of a v)184 457.2 Q(ariable whose v)-.25 E -(alue is the directory to change to.)-.25 E F1(cdspell)144 469.2 Q F0 +(name of a v)184 570 Q(ariable whose v)-.25 E +(alue is the directory to change to.)-.25 E F1(cdspell)144 582 Q F0 1.055 (If set, minor errors in the spelling of a directory component in a)184 -469.2 R F1(cd)3.555 E F0 1.055(command will be)3.555 F 3.988 -(corrected. The)184 481.2 R 1.488(errors check)3.988 F 1.487 -(ed for are transposed characters, a missing character)-.1 F 3.987(,a) --.4 G(nd)-3.987 E .77(one character too man)184 493.2 R 4.57 -.65(y. I) +582 R F1(cd)3.555 E F0 1.055(command will be)3.555 F 3.987 +(corrected. The)184 594 R 1.487(errors check)3.987 F 1.487 +(ed for are transposed characters, a missing character)-.1 F 3.988(,a) +-.4 G(nd)-3.988 E .77(one character too man)184 606 R 4.57 -.65(y. I) -.15 H 3.27(fac).65 G .77 (orrection is found, the corrected \214lename is printed, and)-3.27 F -(the command proceeds.)184 505.2 Q -(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.) -.15 E F1(checkhash)144 517.2 Q F0 .737(If set,)184 529.2 R F1(bash)3.237 -E F0 .736(checks that a command found in the hash table e)3.237 F .736 -(xists before trying to e)-.15 F -.15(xe)-.15 G(-).15 E(cute it.)184 -541.2 Q(If a hashed command no longer e)5 E -(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 553.2 -Q F0 .448(If set,)184 565.2 R F1(bash)2.948 E F0 .448 -(lists the status of an)2.948 F 2.949(ys)-.15 G .449 -(topped and running jobs before e)-2.949 F .449(xiting an interacti)-.15 -F -.15(ve)-.25 G 2.662(shell. If)184 577.2 R(an)2.662 E 2.661(yj)-.15 G +(the command proceeds.)184 618 Q(This option is only used by interacti)5 +E .3 -.15(ve s)-.25 H(hells.).15 E F1(checkhash)144 630 Q F0 .736 +(If set,)184 642 R F1(bash)3.236 E F0 .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 654 +Q(If a hashed command no longer e)5 E +(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 666 Q +F0 .449(If set,)184 678 R F1(bash)2.949 E F0 .449 +(lists the status of an)2.949 F 2.949(ys)-.15 G .448 +(topped and running jobs before e)-2.949 F .448(xiting an interacti)-.15 +F -.15(ve)-.25 G 2.661(shell. If)184 690 R(an)2.661 E 2.661(yj)-.15 G .161(obs are running, this causes the e)-2.661 F .161 -(xit to be deferred until a second e)-.15 F .161(xit is at-)-.15 F 1.091 -(tempted without an interv)184 589.2 R 1.091(ening command \(see)-.15 F -/F3 9/Times-Bold@0 SF 1.091(JOB CONTR)3.591 F(OL)-.27 E F0(in)3.341 E F2 -(bash\(1\))3.591 E F0 3.591(\). The)B(shell)3.591 E(al)184 601.2 Q -.1 -(wa)-.1 G(ys postpones e).1 E(xiting if an)-.15 E 2.5(yj)-.15 G -(obs are stopped.)-2.5 E F1(checkwinsize)144 613.2 Q F0 1.09(If set,)184 -625.2 R F1(bash)3.59 E F0 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 637.2 Q 3.35(,u)-.65 G .85 -(pdates the v)-3.35 F .85(alues of)-.25 F F3(LINES)3.35 E F0(and)3.1 E -F3(COLUMNS)3.35 E/F4 9/Times-Roman@0 SF(.)A F0 .85 -(This option is enabled by de-)5.35 F -.1(fa)184 649.2 S(ult.).1 E F1 -(cmdhist)144 661.2 Q F0 .173(If set,)184 661.2 R F1(bash)2.673 E F0 .173 -(attempts to sa)2.673 F .473 -.15(ve a)-.2 H .172 -(ll lines of a multiple-line command in the same history en-).15 F(try) -184 673.2 Q 5.596(.T)-.65 G .597(his allo)-5.596 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 685.2 S .052(ult, b).1 -F .052(ut only has an ef)-.2 F .052 -(fect if command history is enabled, as described in)-.25 F F2 -(bash\(1\))2.552 E F0(under)2.552 E F3(HIST)184 697.2 Q(OR)-.162 E(Y) --.315 E F4(.)A F0(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G -(mber 22).15 E(18)185.545 E 0 Cg EP +(xit to be deferred until a second e)-.15 F .162(xit is at-)-.15 F 1.091 +(tempted without an interv)184 702 R 1.091(ening command \(see)-.15 F/F3 +9/Times-Bold@0 SF 1.091(JOB CONTR)3.591 F(OL)-.27 E F0(in)3.341 E F2 +(bash\(1\))3.591 E F0 3.591(\). The)B(shell)3.591 E(al)184 714 Q -.1(wa) +-.1 G(ys postpones e).1 E(xiting if an)-.15 E 2.5(yj)-.15 G +(obs are stopped.)-2.5 E(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E +(18)190.95 E 0 Cg EP %%Page: 19 19 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(compat31)144 84 Q -(compat32)144 96 Q(compat40)144 108 Q(compat41)144 120 Q(compat42)144 -132 Q(compat43)144 144 Q(compat44)144 156 Q(compat50)144 168 Q F0 .889 -(These control aspects of the shell')184 180 R 3.389(sc)-.55 G .889 -(ompatibility mode \(see)-3.389 F/F2 9/Times-Bold@0 SF .889(SHELL COMP) -3.389 F -.855(AT)-.666 G(IBILITY).855 E(MODE)184 192 Q F0(in)2.25 E/F3 -10/Times-Italic@0 SF(bash\(1\))2.5 E F0(\).)A F1(complete_fullquote)144 -208.8 Q F0 .654(If set,)184 220.8 R F1(bash)3.153 E F0 .653(quotes all \ -shell metacharacters in \214lenames and directory names when per)3.153 F -(-)-.2 E 1.524(forming completion.)184 232.8 R 1.524(If not set,)6.524 F -F1(bash)4.024 E F0(remo)4.024 E -.15(ve)-.15 G 4.024(sm).15 G 1.524 -(etacharacters such as the dollar sign)-4.024 F 2.667(from the set of c\ -haracters that will be quoted in completed \214lenames when these)184 -244.8 R .028(metacharacters appear in shell v)184 256.8 R .028 -(ariable references in w)-.25 F .029(ords to be completed.)-.1 F .029 -(This means)5.029 F 1.073(that dollar signs in v)184 268.8 R 1.073 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(checkwinsize)144 84 Q +F0 1.09(If set,)184 96 R F1(bash)3.59 E F0 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 108 Q 3.351(,u)-.65 G +.851(pdates the v)-3.351 F .85(alues of)-.25 F/F2 9/Times-Bold@0 SF +(LINES)3.35 E F0(and)3.1 E F2(COLUMNS)3.35 E/F3 9/Times-Roman@0 SF(.)A +F0 .85(This option is enabled by de-)5.35 F -.1(fa)184 120 S(ult.).1 E +F1(cmdhist)144 132 Q F0 .172(If set,)184 132 R F1(bash)2.672 E F0 .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 144 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 156 S .052(ult, b).1 F +.052(ut only has an ef)-.2 F .052 +(fect if command history is enabled, as described in)-.25 F/F4 10 +/Times-Italic@0 SF(bash\(1\))2.552 E F0(under)2.552 E F2(HIST)184 168 Q +(OR)-.162 E(Y)-.315 E F3(.)A F1(compat31)144 180 Q(compat32)144 192 Q +(compat40)144 204 Q(compat41)144 216 Q(compat42)144 228 Q(compat43)144 +240 Q(compat44)144 252 Q(compat50)144 264 Q F0 .889 +(These control aspects of the shell')184 276 R 3.389(sc)-.55 G .889 +(ompatibility mode \(see)-3.389 F F2 .889(SHELL COMP)3.389 F -.855(AT) +-.666 G(IBILITY).855 E(MODE)184 288 Q F0(in)2.25 E F4(bash\(1\))2.5 E F0 +(\).)A F1(complete_fullquote)144 304.8 Q F0 .653(If set,)184 316.8 R F1 +(bash)3.153 E F0 .653(quotes all shell metacharacters in \214lenames an\ +d directory names when per)3.153 F(-)-.2 E 1.525(forming completion.)184 +328.8 R 1.524(If not set,)6.525 F F1(bash)4.024 E F0(remo)4.024 E -.15 +(ve)-.15 G 4.024(sm).15 G 1.524(etacharacters such as the dollar sign) +-4.024 F 2.667(from the set of characters that will be quoted in comple\ +ted \214lenames when these)184 340.8 R .029 +(metacharacters appear in shell v)184 352.8 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 364.8 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 280.8 T 1.922 -.4(r, a).25 H 1.422 -.15(ny d).4 H 1.123 +(ev e)184 376.8 T 1.923 -.4(r, a).25 H 1.423 -.15(ny d).4 H 1.123 (ollar signs appearing in \214lenames will not be quoted, either).15 F -6.123(.T)-.55 G 1.123(his is acti)-6.123 F -.15(ve)-.25 G .59 +6.123(.T)-.55 G 1.122(his is acti)-6.123 F -.15(ve)-.25 G .59 (only when bash is using backslashes to quote completed \214lenames.)184 -292.8 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 304.8 Q +388.8 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 400.8 Q (ault, which is the def)-.1 E(ault bash beha)-.1 E(vior in v)-.2 E -(ersions through 4.2.)-.15 E F1(dir)144 321.6 Q(expand)-.18 E F0 .486 -(If set,)184 333.6 R F1(bash)2.986 E F0 .486 +(ersions through 4.2.)-.15 E F1(dir)144 417.6 Q(expand)-.18 E F0 .487 +(If set,)184 429.6 R F1(bash)2.987 E F0 .486 (replaces directory names with the results of w)2.986 F .486(ord e)-.1 F -.487(xpansion when perform-)-.15 F .18(ing \214lename completion.)184 -345.6 R .179(This changes the contents of the readline editing b)5.18 F -(uf)-.2 E(fer)-.25 E 5.179(.I)-.55 G 2.679(fn)-5.179 G(ot)-2.679 E(set,) -184 357.6 Q F1(bash)2.5 E F0(attempts to preserv)2.5 E 2.5(ew)-.15 G -(hat the user typed.)-2.5 E F1(dirspell)144 374.4 Q F0 .858(If set,)184 -374.4 R F1(bash)3.358 E F0 .858 -(attempts spelling correction on directory names during w)3.358 F .859 +.486(xpansion when perform-)-.15 F .179(ing \214lename completion.)184 +441.6 R .179(This changes the contents of the readline editing b)5.179 F +(uf)-.2 E(fer)-.25 E 5.18(.I)-.55 G 2.68(fn)-5.18 G(ot)-2.68 E(set,)184 +453.6 Q F1(bash)2.5 E F0(attempts to preserv)2.5 E 2.5(ew)-.15 G +(hat the user typed.)-2.5 E F1(dirspell)144 470.4 Q F0 .859(If set,)184 +470.4 R F1(bash)3.359 E F0 .858 +(attempts spelling correction on directory names during w)3.359 F .858 (ord completion if)-.1 F -(the directory name initially supplied does not e)184 386.4 Q(xist.)-.15 -E F1(dotglob)144 403.2 Q F0 .165(If set,)184 403.2 R F1(bash)2.665 E F0 +(the directory name initially supplied does not e)184 482.4 Q(xist.)-.15 +E F1(dotglob)144 499.2 Q F0 .165(If set,)184 499.2 R F1(bash)2.665 E F0 .165(includes \214lenames be)2.665 F .165(ginning with a `.)-.15 F 2.665 ('i)-.7 G 2.665(nt)-2.665 G .165(he results of pathname e)-2.665 F -(xpansion.)-.15 E(The \214lenames)184 415.2 Q F1 -.63(``)2.5 G -.55(.') +(xpansion.)-.15 E(The \214lenames)184 511.2 Q F1 -.63(``)2.5 G -.55(.') .63 G(')-.08 E F0(and)5 E F1 -.63(``)2.5 G(..).63 E -.63('')-.55 G F0 (must al)5.63 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 F1(dotglob)2.5 E F0 -(is set.)2.5 E F1(execfail)144 432 Q F0 .516(If set, a non-interacti)184 -432 R .816 -.15(ve s)-.25 H .516(hell will not e).15 F .516 -(xit if it cannot e)-.15 F -.15(xe)-.15 G .517 +(is set.)2.5 E F1(execfail)144 528 Q F0 .517(If set, a non-interacti)184 +528 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 -444 Q F1(exec)2.5 E F0 -.2(bu)2.5 G(iltin command.).2 E(An interacti)5 E +540 Q F1(exec)2.5 E F0 -.2(bu)2.5 G(iltin command.).2 E(An interacti)5 E .3 -.15(ve s)-.25 H(hell does not e).15 E(xit if)-.15 E F1(exec)2.5 E F0 --.1(fa)2.5 G(ils.).1 E F1(expand_aliases)144 460.8 Q F0 .743 -(If set, aliases are e)184 472.8 R .743(xpanded as described in)-.15 F -F3(bash\(1\))3.243 E F0(under)3.243 E F2(ALIASES)3.243 E/F4 9 -/Times-Roman@0 SF(.)A F0 .742(This option is en-)5.243 F(abled by def) -184 484.8 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1 -(extdeb)144 501.6 Q(ug)-.2 E F0 .17(If set at shell in)184 513.6 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.082 -(before the shell starts, identical to the)184 525.6 R F1 -3.582 E(ugger)-.2 E F0 3.581(option. If)3.581 F 1.081(set after in)3.581 -F -.2(vo)-.4 G 1.081(cation, be-).2 F(ha)184 537.6 Q +-.1(fa)2.5 G(ils.).1 E F1(expand_aliases)144 556.8 Q F0 .742 +(If set, aliases are e)184 568.8 R .743(xpanded as described in)-.15 F +F4(bash\(1\))3.243 E F0(under)3.243 E F2(ALIASES)3.243 E F3(.)A F0 .743 +(This option is en-)5.243 F(abled by def)184 580.8 Q(ault for interacti) +-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1(extdeb)144 597.6 Q(ug)-.2 E F0 +.17(If set at shell in)184 609.6 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 621.6 R F1 +3.582 E(ugger)-.2 E F0 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 633.6 Q (vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F1(1.)184 -554.4 Q F0(The)220 554.4 Q F14.25 E F0 1.75(option to the)4.25 F -F1(declar)4.251 E(e)-.18 E F0 -.2(bu)4.251 G 1.751 +650.4 Q F0(The)220 650.4 Q F14.251 E F0 1.751(option to the)4.251 +F F1(declar)4.251 E(e)-.18 E F0 -.2(bu)4.251 G 1.751 (iltin displays the source \214le name and line).2 F -(number corresponding to each function name supplied as an ar)220 566.4 -Q(gument.)-.18 E F1(2.)184 583.2 Q F0 1.667(If the command run by the) -220 583.2 R F1(DEB)4.167 E(UG)-.1 E F0 1.667(trap returns a non-zero v) +(number corresponding to each function name supplied as an ar)220 662.4 +Q(gument.)-.18 E F1(2.)184 679.2 Q F0 1.667(If the command run by the) +220 679.2 R F1(DEB)4.167 E(UG)-.1 E F0 1.667(trap returns a non-zero v) 4.167 F 1.667(alue, the ne)-.25 F(xt)-.15 E -(command is skipped and not e)220 595.2 Q -.15(xe)-.15 G(cuted.).15 E F1 -(3.)184 612 Q F0 .84(If the command run by the)220 612 R F1(DEB)3.34 E -(UG)-.1 E F0 .841(trap returns a v)3.341 F .841 -(alue of 2, and the shell is)-.25 F -.15(exe)220 624 S .488 +(command is skipped and not e)220 691.2 Q -.15(xe)-.15 G(cuted.).15 E F1 +(3.)184 708 Q F0 .841(If the command run by the)220 708 R F1(DEB)3.341 E +(UG)-.1 E F0 .841(trap returns a v)3.341 F .84 +(alue of 2, and the shell is)-.25 F -.15(exe)220 720 S .488 (cuting in a subroutine \(a shell function or a shell script e).15 F --.15(xe)-.15 G .488(cuted by the).15 F F1(.)2.988 E F0(or)2.988 E F1 -(sour)220 636 Q(ce)-.18 E F0 -.2(bu)2.5 G -(iltins\), the shell simulates a call to).2 E F1 -.18(re)2.5 G(tur).18 E -(n)-.15 E F0(.)A F1(4.)184 652.8 Q F2 -.27(BA)220 652.8 S(SH_ARGC).27 E -F0(and)3.153 E F2 -.27(BA)3.403 G(SH_ARGV).27 E F0 .904 -(are updated as described in their descriptions)3.154 F(in)220 664.8 Q -F3(bash\(1\))2.5 E F0(\).)A F1(5.)184 681.6 Q F0 1.637(Function tracing\ - is enabled: command substitution, shell functions, and sub-)220 681.6 R -(shells in)220 693.6 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E -F1(\()2.5 E F3(command)2.5 E F1(\))2.5 E F0(inherit the)2.5 E F1(DEB)2.5 -E(UG)-.1 E F0(and)2.5 E F1(RETURN)2.5 E F0(traps.)2.5 E F1(6.)184 710.4 -Q F0 1.082(Error tracing is enabled: command substitution, shell functi\ -ons, and subshells)220 710.4 R(in)220 722.4 Q -.2(vo)-.4 G -.1(ke).2 G -2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E F3(command)2.5 E F1(\))2.5 E F0 -(inherit the)2.5 E F1(ERR)2.5 E F0(trap.)2.5 E(GNU Bash 5.2)72 768 Q -(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(19)185.545 E 0 Cg EP +-.15(xe)-.15 G .488(cuted by the).15 F F1(.)2.988 E F0(or)2.988 E +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(19)190.95 E 0 Cg EP %%Page: 20 20 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(extglob)144 84 Q F0 -.273(If set, the e)184 84 R .273 -(xtended pattern matching features described in)-.15 F/F2 10 -/Times-Italic@0 SF(bash\(1\))2.772 E F0(under)2.772 E F1 -.1(Pa)2.772 G -.272(thname Ex-).1 F(pansion)184 96 Q F0(are enabled.)2.5 E F1(extquote) -144 112.8 Q F0 .86(If set,)184 124.8 R F1($)3.36 E F0<08>A F2(string)A -F0 3.36<0861>C(nd)-3.36 E F1($)3.36 E F0(")A F2(string)A F0 3.36("q)C -.86(uoting is performed within)-3.36 F F1(${)3.36 E F2(par)A(ameter)-.15 -E F1(})A F0 -.15(ex)3.36 G .86(pansions en-).15 F -(closed in double quotes.)184 136.8 Q(This option is enabled by def)5 E -(ault.)-.1 E F1(failglob)144 153.6 Q F0 .243(If set, patterns which f) -184 153.6 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 165.6 Q(.) --.55 E F1 -.25(fo)144 182.4 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0 -.936(If set, the suf)184 194.4 R<8c78>-.25 E .936(es speci\214ed by the) --.15 F/F3 9/Times-Bold@0 SF(FIGNORE)3.436 E F0 .936(shell v)3.186 F .936 -(ariable cause w)-.25 F .937(ords to be ignored)-.1 F .32 -(when performing w)184 206.4 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.293(pletions. See)184 218.4 R -F3 .793(SHELL V)3.293 F(ARIABLES)-1.215 E F0(in)3.043 E F2(bash\(1\)) -3.293 E F0 .794(for a description of)3.293 F F3(FIGNORE)3.294 E/F4 9 -/Times-Roman@0 SF(.)A F0 .794(This op-)5.294 F(tion is enabled by def) -184 230.4 Q(ault.)-.1 E F1(globasciiranges)144 247.2 Q F0 2.519 -(If set, range e)184 259.2 R 2.519 -(xpressions used in pattern matching brack)-.15 F 2.518(et e)-.1 F 2.518 -(xpressions \(see)-.15 F F3 -.09(Pa)5.018 G(tter).09 E(n)-.135 E -(Matching)184 271.2 Q F0(in)3.115 E F2(bash\(1\))3.365 E F0 3.365(\)b)C -(eha)-3.365 E 1.165 -.15(ve a)-.2 H 3.365(si).15 G 3.365(fi)-3.365 G -3.365(nt)-3.365 G .866(he traditional C locale when performing compar) --3.365 F(-)-.2 E 2.668(isons. That)184 283.2 R .168 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(sour)220 84 Q(ce)-.18 +E F0 -.2(bu)2.5 G(iltins\), the shell simulates a call to).2 E F1 -.18 +(re)2.5 G(tur).18 E(n)-.15 E F0(.)A F1(4.)184 100.8 Q/F2 9/Times-Bold@0 +SF -.27(BA)220 100.8 S(SH_ARGC).27 E F0(and)3.154 E F2 -.27(BA)3.404 G +(SH_ARGV).27 E F0 .904(are updated as described in their descriptions) +3.154 F(in)220 112.8 Q/F3 10/Times-Italic@0 SF(bash\(1\))2.5 E F0(\).)A +F1(5.)184 129.6 Q F0 1.637(Function tracing is enabled: command substit\ +ution, shell functions, and sub-)220 129.6 R(shells in)220 141.6 Q -.2 +(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E F3(command)2.5 +E F1(\))2.5 E F0(inherit the)2.5 E F1(DEB)2.5 E(UG)-.1 E F0(and)2.5 E F1 +(RETURN)2.5 E F0(traps.)2.5 E F1(6.)184 158.4 Q F0 1.082(Error tracing \ +is enabled: command substitution, shell functions, and subshells)220 +158.4 R(in)220 170.4 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E +F1(\()2.5 E F3(command)2.5 E F1(\))2.5 E F0(inherit the)2.5 E F1(ERR)2.5 +E F0(trap.)2.5 E F1(extglob)144 187.2 Q F0 .272(If set, the e)184 187.2 +R .272(xtended pattern matching features described in)-.15 F F3 +(bash\(1\))2.773 E F0(under)2.773 E F1 -.1(Pa)2.773 G .273(thname Ex-).1 +F(pansion)184 199.2 Q F0(are enabled.)2.5 E F1(extquote)144 216 Q F0 .86 +(If set,)184 228 R F1($)3.36 E F0<08>A F3(string)A F0 3.36<0861>C(nd) +-3.36 E F1($)3.36 E F0(")A F3(string)A F0 3.36("q)C .86 +(uoting is performed within)-3.36 F F1(${)3.36 E F3(par)A(ameter)-.15 E +F1(})A F0 -.15(ex)3.36 G .86(pansions en-).15 F +(closed in double quotes.)184 240 Q(This option is enabled by def)5 E +(ault.)-.1 E F1(failglob)144 256.8 Q F0 .242(If set, patterns which f) +184 256.8 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 268.8 Q(.) +-.55 E F1 -.25(fo)144 285.6 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0 +.937(If set, the suf)184 297.6 R<8c78>-.25 E .936(es speci\214ed by the) +-.15 F F2(FIGNORE)3.436 E F0 .936(shell v)3.186 F .936(ariable cause w) +-.25 F .936(ords to be ignored)-.1 F .32(when performing w)184 309.6 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.294 +(pletions. See)184 321.6 R F2 .794(SHELL V)3.294 F(ARIABLES)-1.215 E F0 +(in)3.044 E F3(bash\(1\))3.294 E F0 .793(for a description of)3.293 F F2 +(FIGNORE)3.293 E/F4 9/Times-Roman@0 SF(.)A F0 .793(This op-)5.293 F +(tion is enabled by def)184 333.6 Q(ault.)-.1 E F1(globasciiranges)144 +350.4 Q F0 2.518(If set, range e)184 362.4 R 2.519 +(xpressions used in pattern matching brack)-.15 F 2.519(et e)-.1 F 2.519 +(xpressions \(see)-.15 F F2 -.09(Pa)5.019 G(tter).09 E(n)-.135 E +(Matching)184 374.4 Q F0(in)3.116 E F3(bash\(1\))3.366 E F0 3.366(\)b)C +(eha)-3.366 E 1.166 -.15(ve a)-.2 H 3.366(si).15 G 3.366(fi)-3.366 G +3.365(nt)-3.366 G .865(he traditional C locale when performing compar) +-3.365 F(-)-.2 E 2.668(isons. That)184 386.4 R .168 (is, the current locale')2.668 F 2.668(sc)-.55 G .168 (ollating sequence is not tak)-2.668 F .168(en into account, so)-.1 F F1 -(b)2.668 E F0(will)2.668 E .562(not collate between)184 295.2 R F1(A) -3.062 E F0(and)3.062 E F1(B)3.062 E F0 3.062(,a)C .562(nd upper)-3.062 F -.562(-case and lo)-.2 F(wer)-.25 E .563 -(-case ASCII characters will col-)-.2 F(late together)184 307.2 Q(.)-.55 -E F1(globskipdots)144 324 Q F0 .285(If set, pathname e)184 336 R .285 -(xpansion will ne)-.15 F -.15(ve)-.25 G 2.785(rm).15 G .285 +(b)2.668 E F0(will)2.668 E .563(not collate between)184 398.4 R F1(A) +3.063 E F0(and)3.063 E F1(B)3.062 E F0 3.062(,a)C .562(nd upper)-3.062 F +.562(-case and lo)-.2 F(wer)-.25 E .562 +(-case ASCII characters will col-)-.2 F(late together)184 410.4 Q(.)-.55 +E F1(globskipdots)144 427.2 Q F0 .284(If set, pathname e)184 439.2 R +.284(xpansion will ne)-.15 F -.15(ve)-.25 G 2.785(rm).15 G .285 (atch the \214lenames)-2.785 F F1 -.63(``)2.785 G -.55(.').63 G(')-.08 E -F0(and)5.285 E F1 -.63(``)2.784 G(..).63 E -.63('')-.55 G F0 2.784(,e) -.63 G -.15(ve)-3.034 G 2.784(ni).15 G 2.784(ft)-2.784 G .284(he pat-) --2.784 F(tern be)184 348 Q(gins with a)-.15 E F1 -.63(``)2.5 G -.55(.') -.63 G(')-.08 E F0 5(.T)C(his option is enabled by def)-5 E(ault.)-.1 E -F1(globstar)144 364.8 Q F0 .518(If set, the pattern)184 364.8 R F1(**) -3.018 E F0 .519(used in a pathname e)3.019 F .519(xpansion conte)-.15 F -.519(xt will match all \214les and zero)-.15 F .432 -(or more directories and subdirectories.)184 376.8 R .431 -(If the pattern is follo)5.432 F .431(wed by a)-.25 F F1(/)2.931 E F0 -2.931(,o)C .431(nly directories)-2.931 F(and subdirectories match.)184 -388.8 Q F1(gnu_errfmt)144 405.6 Q F0(If set, shell error messages are w\ -ritten in the standard GNU error message format.)184 417.6 Q F1 -(histappend)144 434.4 Q F0 .676 +F0(and)5.285 E F1 -.63(``)2.785 G(..).63 E -.63('')-.55 G F0 2.785(,e) +.63 G -.15(ve)-3.035 G 2.785(ni).15 G 2.785(ft)-2.785 G .285(he pat-) +-2.785 F(tern be)184 451.2 Q(gins with a)-.15 E F1 -.63(``)2.5 G -.55 +(.').63 G(')-.08 E F0 5(.T)C(his option is enabled by def)-5 E(ault.)-.1 +E F1(globstar)144 468 Q F0 .519(If set, the pattern)184 468 R F1(**) +3.019 E F0 .519(used in a pathname e)3.019 F .519(xpansion conte)-.15 F +.518(xt will match all \214les and zero)-.15 F .431 +(or more directories and subdirectories.)184 480 R .431 +(If the pattern is follo)5.431 F .432(wed by a)-.25 F F1(/)2.932 E F0 +2.932(,o)C .432(nly directories)-2.932 F(and subdirectories match.)184 +492 Q F1(gnu_errfmt)144 508.8 Q F0(If set, shell error messages are wri\ +tten in the standard GNU error message format.)184 520.8 Q F1 +(histappend)144 537.6 Q F0 .676 (If set, the history list is appended to the \214le named by the v)184 -446.4 R .676(alue of the)-.25 F F3(HISTFILE)3.177 E F0 -.25(va)2.927 G -(ri-).25 E(able when the shell e)184 458.4 Q(xits, rather than o)-.15 E --.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 475.2 Q(eedit) --.18 E F0 .576(If set, and)184 487.2 R F1 -.18(re)3.076 G(adline).18 E -F0 .575(is being used, a user is gi)3.076 F -.15(ve)-.25 G 3.075(nt).15 -G .575(he opportunity to re-edit a f)-3.075 F .575(ailed his-)-.1 F -(tory substitution.)184 499.2 Q F1(histv)144 516 Q(erify)-.1 E F0 .402 -(If set, and)184 528 R F1 -.18(re)2.903 G(adline).18 E F0 .403 +549.6 R .676(alue of the)-.25 F F2(HISTFILE)3.176 E F0 -.25(va)2.926 G +(ri-).25 E(able when the shell e)184 561.6 Q(xits, rather than o)-.15 E +-.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 578.4 Q(eedit) +-.18 E F0 .575(If set, and)184 590.4 R F1 -.18(re)3.075 G(adline).18 E +F0 .575(is being used, a user is gi)3.075 F -.15(ve)-.25 G 3.075(nt).15 +G .576(he opportunity to re-edit a f)-3.075 F .576(ailed his-)-.1 F +(tory substitution.)184 602.4 Q F1(histv)144 619.2 Q(erify)-.1 E F0 .403 +(If set, and)184 631.2 R F1 -.18(re)2.903 G(adline).18 E F0 .403 (is being used, the results of history substitution are not immediately) -2.903 F .662(passed to the shell parser)184 540 R 5.662(.I)-.55 G .661 -(nstead, the resulting line is loaded into the)-5.662 F F1 -.18(re)3.161 -G(adline).18 E F0(editing)3.161 E -.2(bu)184 552 S -.25(ff).2 G(er).25 E -2.5(,a)-.4 G(llo)-2.5 E(wing further modi\214cation.)-.25 E F1 -(hostcomplete)144 568.8 Q F0 1.181(If set, and)184 580.8 R F1 -.18(re) -3.681 G(adline).18 E F0 1.181(is being used,)3.681 F F1(bash)3.682 E F0 -1.182(will attempt to perform hostname completion)3.682 F .503(when a w) -184 592.8 R .503(ord containing a)-.1 F F1(@)3.003 E F0 .503 +2.903 F .661(passed to the shell parser)184 643.2 R 5.661(.I)-.55 G .662 +(nstead, the resulting line is loaded into the)-5.661 F F1 -.18(re)3.162 +G(adline).18 E F0(editing)3.162 E -.2(bu)184 655.2 S -.25(ff).2 G(er).25 +E 2.5(,a)-.4 G(llo)-2.5 E(wing further modi\214cation.)-.25 E F1 +(hostcomplete)144 672 Q F0 1.182(If set, and)184 684 R F1 -.18(re)3.682 +G(adline).18 E F0 1.182(is being used,)3.682 F F1(bash)3.682 E F0 1.181 +(will attempt to perform hostname completion)3.681 F .502(when a w)184 +696 R .503(ord containing a)-.1 F F1(@)3.003 E F0 .503 (is being completed \(see)3.003 F F1(Completing)3.003 E F0(under)3.003 E -F3(READLINE)3.003 E F0(in)2.752 E F2(bash\(1\))184 604.8 Q F0 2.5 -(\). This)B(is enabled by def)2.5 E(ault.)-.1 E F1(huponexit)144 621.6 Q -F0(If set,)184 633.6 Q F1(bash)2.5 E F0(will send)2.5 E F3(SIGHUP)2.5 E -F0(to all jobs when an interacti)2.25 E .3 -.15(ve l)-.25 H -(ogin shell e).15 E(xits.)-.15 E F1(inherit_err)144 650.4 Q(exit)-.18 E -F0 .219(If set, command substitution inherits the v)184 662.4 R .219 -(alue of the)-.25 F F1(err)2.719 E(exit)-.18 E F0 .22 -(option, instead of unsetting)2.719 F(it in the subshell en)184 674.4 Q -2.5(vironment. This)-.4 F(option is enabled when)2.5 E F2(posix mode)2.5 -E F0(is enabled.)2.5 E F1(interacti)144 691.2 Q -.1(ve)-.1 G(_comments) -.1 E F0 .33(If set, allo)184 703.2 R 2.83(waw)-.25 G .33(ord be)-2.93 F -.33(ginning with)-.15 F F1(#)2.83 E F0 .33(to cause that w)2.83 F .33 -(ord and all remaining characters on)-.1 F .39 -(that line to be ignored in an interacti)184 715.2 R .69 -.15(ve s)-.25 -H .39(hell \(see).15 F F3(COMMENTS)2.89 E F0(in)2.64 E F2(bash\(1\))2.89 -E F0 2.89(\). This)B(option)2.89 E(is enabled by def)184 727.2 Q(ault.) --.1 E(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 -E(20)185.545 E 0 Cg EP +F2(READLINE)3.003 E F0(in)2.753 E F3(bash\(1\))184 708 Q F0 2.5 +(\). This)B(is enabled by def)2.5 E(ault.)-.1 E(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(20)190.95 E 0 Cg EP %%Page: 21 21 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(lastpipe)144 84 Q F0 -.066(If set, and job control is not acti)184 84 R -.15(ve)-.25 G 2.566 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(huponexit)144 84 Q F0 +(If set,)184 96 Q F1(bash)2.5 E F0(will send)2.5 E/F2 9/Times-Bold@0 SF +(SIGHUP)2.5 E F0(to all jobs when an interacti)2.25 E .3 -.15(ve l)-.25 +H(ogin shell e).15 E(xits.)-.15 E F1(inherit_err)144 112.8 Q(exit)-.18 E +F0 .22(If set, command substitution inherits the v)184 124.8 R .219 +(alue of the)-.25 F F1(err)2.719 E(exit)-.18 E F0 .219 +(option, instead of unsetting)2.719 F(it in the subshell en)184 136.8 Q +2.5(vironment. This)-.4 F(option is enabled when)2.5 E/F3 10 +/Times-Italic@0 SF(posix mode)2.5 E F0(is enabled.)2.5 E F1(interacti) +144 153.6 Q -.1(ve)-.1 G(_comments).1 E F0 .33(If set, allo)184 165.6 R +2.83(waw)-.25 G .33(ord be)-2.93 F .33(ginning with)-.15 F F1(#)2.83 E +F0 .33(to cause that w)2.83 F .33(ord and all remaining characters on) +-.1 F .39(that line to be ignored in an interacti)184 177.6 R .69 -.15 +(ve s)-.25 H .39(hell \(see).15 F F2(COMMENTS)2.89 E F0(in)2.64 E F3 +(bash\(1\))2.89 E F0 2.89(\). This)B(option)2.89 E(is enabled by def)184 +189.6 Q(ault.)-.1 E F1(lastpipe)144 206.4 Q F0 .066 +(If set, and job control is not acti)184 206.4 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 96 Q(vironment.)-.4 -E F1(lithist)144 112.8 Q F0 .654(If set, and the)184 112.8 R F1(cmdhist) -3.154 E F0 .654(option is enabled, multi-line commands are sa)3.154 F --.15(ve)-.2 G 3.155(dt).15 G 3.155(ot)-3.155 G .655(he history)-3.155 F -(with embedded ne)184 124.8 Q +(cuted in the background in the current shell en)184 218.4 Q(vironment.) +-.4 E F1(lithist)144 235.2 Q F0 .655(If set, and the)184 235.2 R F1 +(cmdhist)3.155 E F0 .654(option is enabled, multi-line commands are sa) +3.154 F -.15(ve)-.2 G 3.154(dt).15 G 3.154(ot)-3.154 G .654(he history) +-3.154 F(with embedded ne)184 247.2 Q (wlines rather than using semicolon separators where possible.)-.25 E F1 -(localv)144 141.6 Q(ar_inherit)-.1 E F0 .422(If set, local v)184 153.6 R +(localv)144 264 Q(ar_inherit)-.1 E F0 .421(If set, local v)184 276 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 -165.6 S .173(ists at a pre).15 F .173(vious scope before an)-.25 F 2.673 -(yn)-.15 G .673 -.25(ew va)-2.673 H .173(lue is assigned.).25 F .174 -(The nameref attrib)5.174 F .174(ute is not)-.2 F(inherited.)184 177.6 Q -F1(localv)144 194.4 Q(ar_unset)-.1 E F0 .329(If set, calling)184 206.4 R -F1(unset)2.829 E F0 .329(on local v)2.829 F .329(ariables in pre)-.25 F -.328(vious function scopes marks them so subse-)-.25 F .543(quent looku\ +288 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 300 Q +F1(localv)144 316.8 Q(ar_unset)-.1 E F0 .328(If set, calling)184 328.8 R +F1(unset)2.828 E F0 .328(on local v)2.828 F .329(ariables in pre)-.25 F +.329(vious function scopes marks them so subse-)-.25 F .543(quent looku\ ps \214nd them unset until that function returns. This is identical to \ -the beha)184 218.4 R(v-)-.2 E(ior of unsetting local v)184 230.4 Q -(ariables at the current function scope.)-.25 E F1(login_shell)144 247.2 -Q F0 .693 +the beha)184 340.8 R(v-)-.2 E(ior of unsetting local v)184 352.8 Q +(ariables at the current function scope.)-.25 E F1(login_shell)144 369.6 +Q F0 .692 (The shell sets this option if it is started as a login shell \(see)184 -259.2 R/F2 9/Times-Bold@0 SF(INV)3.192 E(OCA)-.405 E(TION)-.855 E F0(in) -2.942 E/F3 10/Times-Italic@0 SF(bash\(1\))3.192 E F0(\).)A(The v)184 -271.2 Q(alue may not be changed.)-.25 E F1(mailwar)144 288 Q(n)-.15 E F0 -.814(If set, and a \214le that)184 300 R F1(bash)3.314 E F0 .815 -(is checking for mail has been accessed since the last time it)3.314 F --.1(wa)184 312 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E +381.6 R F2(INV)3.193 E(OCA)-.405 E(TION)-.855 E F0(in)2.943 E F3 +(bash\(1\))3.193 E F0(\).)A(The v)184 393.6 Q(alue may not be changed.) +-.25 E F1(mailwar)144 410.4 Q(n)-.15 E F0 .815 +(If set, and a \214le that)184 422.4 R F1(bash)3.315 E F0 .814 +(is checking for mail has been accessed since the last time it)3.315 F +-.1(wa)184 434.4 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E (`The mail in)-.74 E F3(mail\214le)2.5 E F0(has been read')2.5 E 2.5('i) -.74 G 2.5(sd)-2.5 G(isplayed.)-2.5 E F1(no_empty_cmd_completion)144 -328.8 Q F0 .325(If set, and)184 340.8 R F1 -.18(re)2.825 G(adline).18 E -F0 .325(is being used,)2.825 F F1(bash)2.824 E F0 .324 -(will not attempt to search the)2.824 F F2 -.666(PA)2.824 G(TH)-.189 E -F0 .324(for possible)2.574 F -(completions when completion is attempted on an empty line.)184 352.8 Q -F1(nocaseglob)144 369.6 Q F0 .436(If set,)184 381.6 R F1(bash)2.936 E F0 -.436(matches \214lenames in a case\255insensiti)2.936 F .737 -.15(ve f) --.25 H .437(ashion when performing pathname).05 F -.15(ex)184 393.6 S +451.2 Q F0 .324(If set, and)184 463.2 R F1 -.18(re)2.824 G(adline).18 E +F0 .324(is being used,)2.824 F F1(bash)2.824 E F0 .324 +(will not attempt to search the)2.824 F F2 -.666(PA)2.825 G(TH)-.189 E +F0 .325(for possible)2.575 F +(completions when completion is attempted on an empty line.)184 475.2 Q +F1(nocaseglob)144 492 Q F0 .437(If set,)184 504 R F1(bash)2.937 E F0 +.436(matches \214lenames in a case\255insensiti)2.937 F .736 -.15(ve f) +-.25 H .436(ashion when performing pathname).05 F -.15(ex)184 516 S (pansion \(see).15 E F1 -.1(Pa)2.5 G(thname Expansion).1 E F0(in)2.5 E -F3(bash\(1\))2.5 E F0(\).)A F1(nocasematch)144 410.4 Q F0 1.194(If set,) -184 422.4 R F1(bash)3.694 E F0 1.194 -(matches patterns in a case\255insensiti)3.694 F 1.493 -.15(ve f)-.25 H -1.193(ashion when performing matching).05 F .551(while e)184 434.4 R +F3(bash\(1\))2.5 E F0(\).)A F1(nocasematch)144 532.8 Q F0 1.193(If set,) +184 544.8 R F1(bash)3.693 E F0 1.194 +(matches patterns in a case\255insensiti)3.693 F 1.494 -.15(ve f)-.25 H +1.194(ashion when performing matching).05 F .551(while e)184 556.8 R -.15(xe)-.15 G(cuting).15 E F1(case)3.051 E F0(or)3.051 E F1([[)3.051 E F0 .551(conditional commands, when performing pattern substitution)3.051 -F -.1(wo)184 446.4 S .623(rd e).1 F .623(xpansions, or when \214ltering\ +F -.1(wo)184 568.8 S .622(rd e).1 F .623(xpansions, or when \214ltering\ possible completions as part of programmable com-)-.15 F(pletion.)184 -458.4 Q F1(noexpand_translation)144 475.2 Q F0 1.117(If set,)184 487.2 R -F1(bash)3.617 E F0 1.117(encloses the translated results of $"..." quot\ -ing in single quotes instead of)3.617 F(double quotes.)184 499.2 Q +580.8 Q F1(noexpand_translation)144 597.6 Q F0 1.118(If set,)184 609.6 R +F1(bash)3.618 E F0 1.117(encloses the translated results of $"..." quot\ +ing in single quotes instead of)3.617 F(double quotes.)184 621.6 Q (If the string is not translated, this has no ef)5 E(fect.)-.25 E F1 -(nullglob)144 516 Q F0 .319(If set,)184 528 R F1(bash)2.819 E F0(allo) -2.819 E .319(ws patterns which match no \214les \(see)-.25 F F1 -.1(Pa) -2.818 G .318(thname Expansion).1 F F0(in)2.818 E F3(bash\(1\))2.818 E F0 -(\))A(to e)184 540 Q(xpand to a null string, rather than themselv)-.15 E -(es.)-.15 E F1(patsub_r)144 556.8 Q(eplacement)-.18 E F0 .105(If set,) -184 568.8 R F1(bash)2.605 E F0 -.15(ex)2.605 G .105 -(pands occurrences of).15 F F1(&)2.606 E F0 .106 -(in the replacement string of pattern substitution to)2.606 F .989 -(the te)184 580.8 R .988(xt matched by the pattern, as described under) --.15 F F1 -.1(Pa)3.488 G .988(rameter Expansion).1 F F0(in)3.488 E F3 -(bash\(1\))3.488 E F0(.)A(This option is enabled by def)184 592.8 Q -(ault.)-.1 E F1(pr)144 609.6 Q(ogcomp)-.18 E F0 2.802 -(If set, the programmable completion f)184 621.6 R 2.802 -(acilities \(see)-.1 F F1(Pr)5.302 E 2.803(ogrammable Completion)-.18 F -F0(in)5.303 E F3(bash\(1\))184 633.6 Q F0 2.5(\)a)C(re enabled.)-2.5 E -(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 650.4 Q -(ogcomp_alias)-.18 E F0 2.124 -(If set, and programmable completion is enabled,)184 662.4 R F1(bash) -4.624 E F0 2.124(treats a command name that)4.624 F(doesn')184 674.4 Q -3.288(th)-.18 G -2.25 -.2(av e)-3.288 H(an)3.488 E 3.288(yc)-.15 G .789 -(ompletions as a possible alias and attempts alias e)-3.288 F .789 -(xpansion. If it has)-.15 F 1.473(an alias,)184 686.4 R F1(bash)3.973 E -F0 1.473(attempts programmable completion using the command w)3.973 F -1.473(ord resulting)-.1 F(from the e)184 698.4 Q(xpanded alias.)-.15 E -(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E -(21)185.545 E 0 Cg EP +(nullglob)144 638.4 Q F0 .318(If set,)184 650.4 R F1(bash)2.818 E F0 +(allo)2.818 E .318(ws patterns which match no \214les \(see)-.25 F F1 +-.1(Pa)2.819 G .319(thname Expansion).1 F F0(in)2.819 E F3(bash\(1\)) +2.819 E F0(\))A(to e)184 662.4 Q +(xpand to a null string, rather than themselv)-.15 E(es.)-.15 E F1 +(patsub_r)144 679.2 Q(eplacement)-.18 E F0 .106(If set,)184 691.2 R F1 +(bash)2.606 E F0 -.15(ex)2.606 G .106(pands occurrences of).15 F F1(&) +2.606 E F0 .105(in the replacement string of pattern substitution to) +2.606 F .988(the te)184 703.2 R .988 +(xt matched by the pattern, as described under)-.15 F F1 -.1(Pa)3.489 G +.989(rameter Expansion).1 F F0(in)3.489 E F3(bash\(1\))3.489 E F0(.)A +(This option is enabled by def)184 715.2 Q(ault.)-.1 E(GNU Bash 5.2)72 +768 Q(2023 January 27)141.79 E(21)190.95 E 0 Cg EP %%Page: 22 22 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(pr)144 84 Q(omptv) --.18 E(ars)-.1 E F0 1.447(If set, prompt strings under)184 96 R 1.448 -(go parameter e)-.18 F 1.448(xpansion, command substitution, arithmetic) --.15 F -.15(ex)184 108 S 1.834(pansion, and quote remo).15 F -.25(va) --.15 G 4.334(la).25 G 1.834(fter being e)-4.334 F 1.834 -(xpanded as described in)-.15 F/F2 9/Times-Bold@0 SF(PR)4.333 E(OMPTING) --.27 E F0(in)4.083 E/F3 10/Times-Italic@0 SF(bash\(1\))184 120 Q F0 5 -(.T)C(his option is enabled by def)-5 E(ault.)-.1 E F1 -.18(re)144 136.8 -S(stricted_shell).18 E F0 .329 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(pr)144 84 Q(ogcomp) +-.18 E F0 2.802(If set, the programmable completion f)184 96 R 2.802 +(acilities \(see)-.1 F F1(Pr)5.302 E 2.802(ogrammable Completion)-.18 F +F0(in)5.302 E/F2 10/Times-Italic@0 SF(bash\(1\))184 108 Q F0 2.5(\)a)C +(re enabled.)-2.5 E(This option is enabled by def)5 E(ault.)-.1 E F1(pr) +144 124.8 Q(ogcomp_alias)-.18 E F0 2.124 +(If set, and programmable completion is enabled,)184 136.8 R F1(bash) +4.624 E F0 2.124(treats a command name that)4.624 F(doesn')184 148.8 Q +3.289(th)-.18 G -2.25 -.2(av e)-3.289 H(an)3.489 E 3.289(yc)-.15 G .789 +(ompletions as a possible alias and attempts alias e)-3.289 F .788 +(xpansion. If it has)-.15 F 1.473(an alias,)184 160.8 R F1(bash)3.973 E +F0 1.473(attempts programmable completion using the command w)3.973 F +1.473(ord resulting)-.1 F(from the e)184 172.8 Q(xpanded alias.)-.15 E +F1(pr)144 189.6 Q(omptv)-.18 E(ars)-.1 E F0 1.448 +(If set, prompt strings under)184 201.6 R 1.448(go parameter e)-.18 F +1.447(xpansion, command substitution, arithmetic)-.15 F -.15(ex)184 +213.6 S 1.833(pansion, and quote remo).15 F -.25(va)-.15 G 4.334(la).25 +G 1.834(fter being e)-4.334 F 1.834(xpanded as described in)-.15 F/F3 9 +/Times-Bold@0 SF(PR)4.334 E(OMPTING)-.27 E F0(in)4.084 E F2(bash\(1\)) +184 225.6 Q F0 5(.T)C(his option is enabled by def)-5 E(ault.)-.1 E F1 +-.18(re)144 242.4 S(stricted_shell).18 E F0 .329 (The shell sets this option if it is started in restricted mode \(see) -184 148.8 R F2 .329(RESTRICTED SHELL)2.829 F F0(in)2.58 E F3(bash\(1\)) -184 160.8 Q F0 2.731(\). The)B -.25(va)2.731 G .231 -(lue may not be changed.).25 F .23 +184 254.4 R F3 .329(RESTRICTED SHELL)2.829 F F0(in)2.579 E F2(bash\(1\)) +184 266.4 Q F0 2.73(\). The)B -.25(va)2.73 G .23 +(lue may not be changed.).25 F .231 (This is not reset when the startup \214les are e)5.231 F(x-)-.15 E -(ecuted, allo)184 172.8 Q(wing the startup \214les to disco)-.25 E -.15 +(ecuted, allo)184 278.4 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 F1 -(shift_v)144 189.6 Q(erbose)-.1 E F0 .501(If set, the)184 201.6 R F1 -(shift)3.001 E F0 -.2(bu)3.001 G .501 -(iltin prints an error message when the shift count e).2 F .502 -(xceeds the number)-.15 F(of positional parameters.)184 213.6 Q F1(sour) -144 230.4 Q(cepath)-.18 E F0 .771(If set, the)184 242.4 R F1(.)3.271 E -F0(\()3.271 E F1(sour)A(ce)-.18 E F0 3.271(\)b)C .771(uiltin uses the v) --3.471 F .771(alue of)-.25 F F2 -.666(PA)3.27 G(TH)-.189 E F0 .77 -(to \214nd the directory containing the)3.02 F(\214le supplied as an ar) -184 254.4 Q 2.5(gument. This)-.18 F(option is enabled by def)2.5 E -(ault.)-.1 E F1 -.1(va)144 271.2 S(rr).1 E(edir_close)-.18 E F0 .74(If \ -set, the shell automatically closes \214le descriptors assigned using t\ -he)184 283.2 R F3({varname})3.24 E F0(redi-)3.24 E .908 -(rection syntax \(see)184 295.2 R F2(REDIRECTION)3.408 E F0(in)3.157 E -F3(bash\(1\))3.407 E F0 3.407(\)i)C .907(nstead of lea)-3.407 F .907 -(ving them open when the)-.2 F(command completes.)184 307.2 Q F1 -(xpg_echo)144 324 Q F0(If set, the)184 336 Q F1(echo)2.5 E F0 -.2(bu)2.5 -G(iltin e).2 E(xpands backslash-escape sequences by def)-.15 E(ault.)-.1 -E F1(suspend)108 352.8 Q F0([)2.5 E F1A F0(])A .909(Suspend the e) -144 364.8 R -.15(xe)-.15 G .909(cution of this shell until it recei).15 -F -.15(ve)-.25 G 3.41(sa).15 G F2(SIGCONT)A F0 3.41(signal. A)3.16 F .91 -(login shell, or a shell)3.41 F .753 -(without job control enabled, cannot be suspended; the)144 376.8 R F1 -3.253 E F0 .752(option can be used to o)3.252 F -.15(ve)-.15 G -.752(rride this and).15 F .107(force the suspension.)144 388.8 R .107(T\ +(shift_v)144 295.2 Q(erbose)-.1 E F0 .502(If set, the)184 307.2 R F1 +(shift)3.002 E F0 -.2(bu)3.002 G .501 +(iltin prints an error message when the shift count e).2 F .501 +(xceeds the number)-.15 F(of positional parameters.)184 319.2 Q F1(sour) +144 336 Q(cepath)-.18 E F0 .77(If set, the)184 348 R F1(.)3.27 E F0(\() +3.27 E F1(sour)A(ce)-.18 E F0 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 F0 .771 +(to \214nd the directory containing the)3.021 F +(\214le supplied as an ar)184 360 Q 2.5(gument. This)-.18 F +(option is enabled by def)2.5 E(ault.)-.1 E F1 -.1(va)144 376.8 S(rr).1 +E(edir_close)-.18 E F0 .74(If set, the shell automatically closes \214l\ +e descriptors assigned using the)184 388.8 R F2({varname})3.24 E F0 +(redi-)3.24 E .907(rection syntax \(see)184 400.8 R F3(REDIRECTION)3.407 +E F0(in)3.157 E F2(bash\(1\))3.407 E F0 3.407(\)i)C .907(nstead of lea) +-3.407 F .908(ving them open when the)-.2 F(command completes.)184 412.8 +Q F1(xpg_echo)144 429.6 Q F0(If set, the)184 441.6 Q F1(echo)2.5 E F0 +-.2(bu)2.5 G(iltin e).2 E(xpands backslash-escape sequences by def)-.15 +E(ault.)-.1 E F1(suspend)108 458.4 Q F0([)2.5 E F1A F0(])A .91 +(Suspend the e)144 470.4 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 F0 3.409(signal. A)3.159 F .909 +(login shell, or a shell)3.409 F .752 +(without job control enabled, cannot be suspended; the)144 482.4 R F1 +3.252 E F0 .753(option can be used to o)3.253 F -.15(ve)-.15 G +.753(rride this and).15 F .107(force the suspension.)144 494.4 R .107(T\ he return status is 0 unless the shell is a login shell or job control \ -is not en-)5.107 F(abled and)144 400.8 Q F12.5 E F0 -(is not supplied.)2.5 E F1(test)108 417.6 Q F3 -.2(ex)2.5 G(pr).2 E F1 -([)108 429.6 Q F3 -.2(ex)2.5 G(pr).2 E F1(])2.5 E F0 .878 -(Return a status of 0 \(true\) or 1 \(f)144 429.6 R .877 -(alse\) depending on the e)-.1 F -.25(va)-.25 G .877 -(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)144 441.6 +is not en-)5.107 F(abled and)144 506.4 Q F12.5 E F0 +(is not supplied.)2.5 E F1(test)108 523.2 Q F2 -.2(ex)2.5 G(pr).2 E F1 +([)108 535.2 Q F2 -.2(ex)2.5 G(pr).2 E F1(])2.5 E F0 .877 +(Return a status of 0 \(true\) or 1 \(f)144 535.2 R .878 +(alse\) depending on the e)-.1 F -.25(va)-.25 G .878 +(luation of the conditional e).25 F(xpression)-.15 E F2 -.2(ex)144 547.2 S(pr).2 E F0 5.53(.E).73 G .53 (ach operator and operand must be a separate ar)-5.53 F 3.03 -(gument. Expressions)-.18 F .53(are composed of the)3.03 F 1.232 -(primaries described in)144 453.6 R F3(bash\(1\))3.732 E F0(under)3.731 -E F2(CONDITION)3.731 E 1.231(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF -(.)A F1(test)5.731 E F0 1.231(does not accept an)3.731 F(y)-.15 E -(options, nor does it accept and ignore an ar)144 465.6 Q(gument of)-.18 -E F12.5 E F0(as signifying the end of options.)2.5 E .785 -(Expressions may be combined using the follo)144 483.6 R .786 -(wing operators, listed in decreasing order of prece-)-.25 F 3.412 -(dence. The)144 495.6 R -.25(eva)3.412 G .912 -(luation depends on the number of ar).25 F .911(guments; see belo)-.18 F -4.711 -.65(w. O)-.25 H .911(perator precedence is).65 F -(used when there are \214v)144 507.6 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G -(ore ar)-2.5 E(guments.)-.18 E F1(!)144 519.6 Q F3 -.2(ex)2.5 G(pr).2 E -F0 -.35(Tr)180 519.6 S(ue if).35 E F3 -.2(ex)2.5 G(pr).2 E F0(is f)3.23 -E(alse.)-.1 E F1(\()144 531.6 Q F3 -.2(ex)2.5 G(pr).2 E F1(\))2.5 E F0 -.26(Returns the v)180 531.6 R .26(alue of)-.25 F F3 -.2(ex)2.76 G(pr).2 +(gument. Expressions)-.18 F .53(are composed of the)3.03 F 1.231 +(primaries described in)144 559.2 R F2(bash\(1\))3.731 E F0(under)3.731 +E F3(CONDITION)3.731 E 1.231(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF +(.)A F1(test)5.731 E F0 1.232(does not accept an)3.731 F(y)-.15 E +(options, nor does it accept and ignore an ar)144 571.2 Q(gument of)-.18 +E F12.5 E F0(as signifying the end of options.)2.5 E .786 +(Expressions may be combined using the follo)144 589.2 R .785 +(wing operators, listed in decreasing order of prece-)-.25 F 3.411 +(dence. The)144 601.2 R -.25(eva)3.411 G .911 +(luation depends on the number of ar).25 F .912(guments; see belo)-.18 F +4.712 -.65(w. O)-.25 H .912(perator precedence is).65 F +(used when there are \214v)144 613.2 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G +(ore ar)-2.5 E(guments.)-.18 E F1(!)144 625.2 Q F2 -.2(ex)2.5 G(pr).2 E +F0 -.35(Tr)180 625.2 S(ue if).35 E F2 -.2(ex)2.5 G(pr).2 E F0(is f)3.23 +E(alse.)-.1 E F1(\()144 637.2 Q F2 -.2(ex)2.5 G(pr).2 E F1(\))2.5 E F0 +.26(Returns the v)180 637.2 R .26(alue of)-.25 F F2 -.2(ex)2.76 G(pr).2 E F0 5.26(.T)C .26(his may be used to o)-5.26 F -.15(ve)-.15 G .26 -(rride the normal precedence of opera-).15 F(tors.)180 543.6 Q F3 -.2 -(ex)144 555.6 S(pr1).2 E F02.5 E F1(a)A F3 -.2(ex)2.5 G(pr2).2 E F0 --.35(Tr)180 567.6 S(ue if both).35 E F3 -.2(ex)2.5 G(pr1).2 E F0(and)2.5 -E F3 -.2(ex)2.5 G(pr2).2 E F0(are true.)2.52 E F3 -.2(ex)144 579.6 S -(pr1).2 E F02.5 E F1(o)A F3 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 -591.6 S(ue if either).35 E F3 -.2(ex)2.5 G(pr1).2 E F0(or)2.5 E F3 -.2 -(ex)2.5 G(pr2).2 E F0(is true.)2.52 E F1(test)144 608.4 Q F0(and)2.5 E -F1([)2.5 E F0 -.25(eva)2.5 G(luate conditional e).25 E +(rride the normal precedence of opera-).15 F(tors.)180 649.2 Q F2 -.2 +(ex)144 661.2 S(pr1).2 E F02.5 E F1(a)A F2 -.2(ex)2.5 G(pr2).2 E F0 +-.35(Tr)180 673.2 S(ue if both).35 E F2 -.2(ex)2.5 G(pr1).2 E F0(and)2.5 +E F2 -.2(ex)2.5 G(pr2).2 E F0(are true.)2.52 E F2 -.2(ex)144 685.2 S +(pr1).2 E F02.5 E F1(o)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 +697.2 S(ue if either).35 E F2 -.2(ex)2.5 G(pr1).2 E F0(or)2.5 E F2 -.2 +(ex)2.5 G(pr2).2 E F0(is true.)2.52 E F1(test)144 714 Q F0(and)2.5 E F1 +([)2.5 E F0 -.25(eva)2.5 G(luate conditional e).25 E (xpressions using a set of rules based on the number of ar)-.15 E -(guments.)-.18 E 2.5(0a)144 626.4 S -.18(rg)-2.5 G(uments).18 E(The e) -180 638.4 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 650.4 S -.18 -(rg)-2.5 G(ument).18 E(The e)180 662.4 Q -(xpression is true if and only if the ar)-.15 E(gument is not null.)-.18 -E 2.5(2a)144 674.4 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) -180 686.4 R .37(gument is)-.18 F F1(!)2.87 E F0 2.87(,t)C .37(he e)-2.87 -F .37(xpression is true if and only if the second ar)-.15 F .37 -(gument is null.)-.18 F 1.682(If the \214rst ar)180 698.4 R 1.683 -(gument is one of the unary conditional operators listed in)-.18 F F3 -(bash\(1\))4.183 E F0(under)4.183 E F2(CONDITION)180 710.4 Q .122 -(AL EXPRESSIONS)-.18 F F4(,)A F0 .122(the e)2.372 F .122 -(xpression is true if the unary test is true.)-.15 F .121 -(If the \214rst)5.121 F(ar)180 722.4 Q(gument is not a v)-.18 E -(alid unary conditional operator)-.25 E 2.5(,t)-.4 G(he e)-2.5 E -(xpression is f)-.15 E(alse.)-.1 E(GNU Bash 5.2)72 768 Q(2021 No)136.385 -E -.15(ve)-.15 G(mber 22).15 E(22)185.545 E 0 Cg EP +(guments.)-.18 E(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(22) +190.95 E 0 Cg EP %%Page: 23 23 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E 2.5(3a)144 84 S -.18(rg)-2.5 G(uments).18 E -.236(The follo)180 96 R .236 +E(UIL)-.1 E(TINS\(1\))-.92 E 2.5(0a)144 84 S -.18(rg)-2.5 G(uments).18 E +(The e)180 96 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 108 S -.18 +(rg)-2.5 G(ument).18 E(The e)180 120 Q +(xpression is true if and only if the ar)-.15 E(gument is not null.)-.18 +E 2.5(2a)144 132 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar)180 +144 R .37(gument is)-.18 F/F1 10/Times-Bold@0 SF(!)2.87 E F0 2.87(,t)C +.37(he e)-2.87 F .37(xpression is true if and only if the second ar)-.15 +F .37(gument is null.)-.18 F 1.683(If the \214rst ar)180 156 R 1.683 +(gument is one of the unary conditional operators listed in)-.18 F/F2 10 +/Times-Italic@0 SF(bash\(1\))4.182 E F0(under)4.182 E/F3 9/Times-Bold@0 +SF(CONDITION)180 168 Q .121(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF +(,)A F0 .121(the e)2.371 F .122 +(xpression is true if the unary test is true.)-.15 F .122 +(If the \214rst)5.122 F(ar)180 180 Q(gument is not a v)-.18 E +(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 192 S -.18(rg)-2.5 G +(uments).18 E .236(The follo)180 204 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 .546 -(the binary conditional operators listed in)180 108 R/F1 10 -/Times-Italic@0 SF(bash\(1\))3.046 E F0(under)3.046 E/F2 9/Times-Bold@0 -SF(CONDITION)3.046 E .546(AL EXPRESSIONS)-.18 F/F3 9/Times-Roman@0 SF(,) -A F0 .887(the result of the e)180 120 R .888(xpression is the result of\ - the binary test using the \214rst and third ar)-.15 F(gu-)-.18 E .434 -(ments as operands.)180 132 R(The)5.434 E/F4 10/Times-Bold@0 SF -2.934 E F0(and)2.934 E F42.934 E F0 .434 -(operators are considered binary operators when there)2.934 F .645 -(are three ar)180 144 R 3.145(guments. If)-.18 F .645(the \214rst ar) -3.145 F .646(gument is)-.18 F F4(!)3.146 E F0 3.146(,t)C .646(he v) --3.146 F .646(alue is the ne)-.25 F -.05(ga)-.15 G .646(tion of the tw) -.05 F(o-ar)-.1 E(gu-)-.18 E .452 -(ment test using the second and third ar)180 156 R 2.951(guments. If) +(the binary conditional operators listed in)180 216 R F2(bash\(1\))3.046 +E F0(under)3.046 E F3(CONDITION)3.046 E .546(AL EXPRESSIONS)-.18 F F4(,) +A F0 .888(the result of the e)180 228 R .888(xpression is the result of\ + the binary test using the \214rst and third ar)-.15 F(gu-)-.18 E .433 +(ments as operands.)180 240 R(The)5.434 E F12.934 E F0(and)2.934 E +F12.934 E F0 .434 +(operators are considered binary operators when there)2.934 F .646 +(are three ar)180 252 R 3.146(guments. If)-.18 F .646(the \214rst ar) +3.146 F .646(gument is)-.18 F F1(!)3.146 E F0 3.146(,t)C .646(he v) +-3.146 F .645(alue is the ne)-.25 F -.05(ga)-.15 G .645(tion of the tw) +.05 F(o-ar)-.1 E(gu-)-.18 E .451 +(ment test using the second and third ar)180 264 R 2.951(guments. If) -.18 F .451(the \214rst ar)2.951 F .451(gument is e)-.18 F(xactly)-.15 E -F4(\()2.951 E F0 .451(and the)2.951 F 1.164(third ar)180 168 R 1.164 -(gument is e)-.18 F(xactly)-.15 E F4(\))3.664 E F0 3.664(,t)C 1.164 -(he result is the one-ar)-3.664 F 1.165(gument test of the second ar) --.18 F(gument.)-.18 E(Otherwise, the e)180 180 Q(xpression is f)-.15 E -(alse.)-.1 E 2.5(4a)144 192 S -.18(rg)-2.5 G(uments).18 E .43(The follo) -180 204 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 F4(!)2.929 E F0 -2.929(,t)C .429(he re-)-2.929 F 1.314(sult is the ne)180 216 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.745 -(ments. the)180 228 R(tw)2.745 E(o-ar)-.1 E .245 -(gument test using the second and third ar)-.18 F 2.744(guments. If)-.18 -F .244(the \214rst ar)2.744 F(gument)-.18 E .309(is e)180 240 R(xactly) --.15 E F4(\()2.809 E F0 .309(and the fourth ar)2.809 F .309(gument is e) --.18 F(xactly)-.15 E F4(\))2.809 E F0 2.809(,t)C .31 -(he result is the tw)-2.809 F(o-ar)-.1 E .31(gument test of the)-.18 F -.184(second and third ar)180 252 R 2.684(guments. Otherwise,)-.18 F .184 -(the e)2.684 F .183(xpression is parsed and e)-.15 F -.25(va)-.25 G .183 -(luated according).25 F(to precedence using the rules listed abo)180 264 -Q -.15(ve)-.15 G(.).15 E 2.5(5o)144 276 S 2.5(rm)-2.5 G(ore ar)-2.5 E -(guments)-.18 E 1.635(The e)180 288 R 1.635(xpression is parsed and e) +F1(\()2.952 E F0 .452(and the)2.952 F 1.165(third ar)180 276 R 1.165 +(gument is e)-.18 F(xactly)-.15 E F1(\))3.665 E F0 3.664(,t)C 1.164 +(he result is the one-ar)-3.664 F 1.164(gument test of the second ar) +-.18 F(gument.)-.18 E(Otherwise, the e)180 288 Q(xpression is f)-.15 E +(alse.)-.1 E 2.5(4a)144 300 S -.18(rg)-2.5 G(uments).18 E .429 +(The follo)180 312 R .429 +(wing conditions are applied in the order listed.)-.25 F .43 +(If the \214rst ar)5.429 F .43(gument is)-.18 F F1(!)2.93 E F0 2.93(,t)C +.43(he re-)-2.93 F 1.315(sult is the ne)180 324 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.744 +(ments. the)180 336 R(tw)2.744 E(o-ar)-.1 E .245 +(gument test using the second and third ar)-.18 F 2.745(guments. If)-.18 +F .245(the \214rst ar)2.745 F(gument)-.18 E .31(is e)180 348 R(xactly) +-.15 E F1(\()2.81 E F0 .31(and the fourth ar)2.81 F .31(gument is e)-.18 +F(xactly)-.15 E F1(\))2.809 E F0 2.809(,t)C .309(he result is the tw) +-2.809 F(o-ar)-.1 E .309(gument test of the)-.18 F .183 +(second and third ar)180 360 R 2.683(guments. Otherwise,)-.18 F .184 +(the e)2.684 F .184(xpression is parsed and e)-.15 F -.25(va)-.25 G .184 +(luated according).25 F(to precedence using the rules listed abo)180 372 +Q -.15(ve)-.15 G(.).15 E 2.5(5o)144 384 S 2.5(rm)-2.5 G(ore ar)-2.5 E +(guments)-.18 E 1.635(The e)180 396 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 300 -Q -.15(ve)-.15 G(.).15 E(When used with)144 318 Q F4(test)2.5 E F0(or) -2.5 E F4([)2.5 E F0 2.5(,t)C(he)-2.5 E F4(<)2.5 E F0(and)2.5 E F4(>)2.5 +(luated according to precedence using the rules listed).25 F(abo)180 408 +Q -.15(ve)-.15 G(.).15 E(When used with)144 426 Q F1(test)2.5 E F0(or) +2.5 E F1([)2.5 E F0 2.5(,t)C(he)-2.5 E F1(<)2.5 E F0(and)2.5 E F1(>)2.5 E F0(operators sort le)2.5 E(xicographically using ASCII ordering.)-.15 -E F4(times)108 334.8 Q F0 1.229(Print the accumulated user and system t\ -imes for the shell and for processes run from the shell.)144 334.8 R -(The return status is 0.)144 346.8 Q F4(trap)108 363.6 Q F0([)2.5 E F4 -(\255lp)A F0 2.5(][)C([)-2.5 E F1(action)A F0(])A F1(sigspec)2.5 E F0 -(...])2.5 E(The)144 375.6 Q F1(action)3.733 E F0 .903 -(is a command that is read and e)3.643 F -.15(xe)-.15 G .903 +E F1(times)108 442.8 Q F0 1.229(Print the accumulated user and system t\ +imes for the shell and for processes run from the shell.)144 442.8 R +(The return status is 0.)144 454.8 Q F1(trap)108 471.6 Q F0([)2.5 E F1 +(\255lp)A F0 2.5(][)C([)-2.5 E F2(action)A F0(])A F2(sigspec)2.5 E F0 +(...])2.5 E(The)144 483.6 Q F2(action)3.734 E F0 .903 +(is a command that is read and e)3.644 F -.15(xe)-.15 G .903 (cuted when the shell recei).15 F -.15(ve)-.25 G 3.403(ss).15 G -(ignal\(s\))-3.403 E F1(sigspec)3.744 E F0 5.904(.I).31 G(f)-5.904 E F1 -(action)144.33 387.6 Q F0 .106(is absent \(and there is a single)2.846 F -F1(sigspec)2.605 E F0 2.605(\)o)C(r)-2.605 E F42.605 E F0 2.605(,e)C -.105(ach speci\214ed signal is reset to its original dis-)-2.605 F .626 -(position \(the v)144 399.6 R .626 -(alue it had upon entrance to the shell\).)-.25 F(If)5.626 E F1(action) +(ignal\(s\))-3.403 E F2(sigspec)3.743 E F0 5.903(.I).31 G(f)-5.903 E F2 +(action)144.33 495.6 Q F0 .105(is absent \(and there is a single)2.845 F +F2(sigspec)2.605 E F0 2.605(\)o)C(r)-2.605 E F12.605 E F0 2.605(,e)C +.106(ach speci\214ed signal is reset to its original dis-)-2.605 F .627 +(position \(the v)144 507.6 R .626 +(alue it had upon entrance to the shell\).)-.25 F(If)5.626 E F2(action) 3.456 E F0 .626(is the null string the signal speci-)3.366 F -(\214ed by each)144 411.6 Q F1(sigspec)2.84 E F0 +(\214ed by each)144 519.6 Q F2(sigspec)2.84 E F0 (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 429.6 R .165 -(guments are supplied,)-.18 F F4(trap)2.665 E F0 .165 +-.1(ke).2 G(s.).1 E .165(If no ar)144 537.6 R .165 +(guments are supplied,)-.18 F F1(trap)2.665 E F0 .165 (displays the actions associated with each trapped signal as a set)2.665 -F(of)144 441.6 Q F4(trap)2.569 E F0 .069(commands that can be reused as\ - shell input to restore the current signal dispositions.)2.569 F(If)5.07 -E F42.57 E F0 .474(is gi)144 453.6 R -.15(ve)-.25 G .474(n, and) -.15 F F1(action)3.303 E F0 .473(is not present, then)3.213 F F4(trap) -2.973 E F0 .473(displays the actions associated with each)2.973 F F1 -(sigspec)3.313 E F0(or)3.283 E(,)-.4 E .363 -(if none are supplied, for all trapped signals, as a set of)144 465.6 R -F4(trap)2.864 E F0 .364(commands that can be reused as shell)2.864 F -(input to restore the current signal dispositions.)144 477.6 Q(The)144 -495.6 Q F43.217 E F0 .717(option causes)3.217 F F4(trap)3.217 E F0 +F(of)144 549.6 Q F1(trap)2.57 E F0 .069(commands that can be reused as \ +shell input to restore the current signal dispositions.)2.57 F(If)5.069 +E F12.569 E F0 .473(is gi)144 561.6 R -.15(ve)-.25 G .473(n, and) +.15 F F2(action)3.303 E F0 .473(is not present, then)3.213 F F1(trap) +2.973 E F0 .473(displays the actions associated with each)2.973 F F2 +(sigspec)3.314 E F0(or)3.284 E(,)-.4 E .364 +(if none are supplied, for all trapped signals, as a set of)144 573.6 R +F1(trap)2.864 E F0 .363(commands that can be reused as shell)2.864 F +.207(input to restore the current signal dispositions.)144 585.6 R(The) +5.207 E F12.707 E F0 .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 597.6 R F2(sigspec)4.052 E +F0(ar)4.052 E(gument.)-.18 E F16.552 E F0 1.552 +(requires at least one)4.052 F F2(sigspec)4.052 E F0(ar)4.052 E(gument.) +-.18 E(The)144 609.6 Q F12.726 E F0(or)2.726 E F12.727 E F0 +.227(options to)2.727 F F1(trap)2.727 E F0 .227 +(may be used in a subshell en)2.727 F .227 +(vironment \(e.g., command substitution\))-.4 F .993 +(and, as long as the)144 621.6 R 3.493(ya)-.15 G .993(re used before) +-3.493 F F1(trap)3.493 E F0 .993(is used to change a signal')3.493 F +3.492(sh)-.55 G .992(andling, will display the)-3.492 F +(state of its parent')144 633.6 Q 2.5(st)-.55 G(raps.)-2.5 E(The)144 +651.6 Q F13.216 E F0 .716(option causes)3.216 F F1(trap)3.216 E F0 .716(to print a list of signal names and their corresponding numbers.) -3.216 F(Each)5.716 E F1(sigspec)144.34 507.6 Q F0 .709 -(is either a signal name de\214ned in <)3.518 F F1(signal.h)A F0 .709 -(>, or a signal number)B 5.709(.S)-.55 G .709(ignal names are case) --5.709 F(insensiti)144 519.6 Q .3 -.15(ve a)-.25 H(nd the).15 E F2(SIG) -2.5 E F0(pre\214x is optional.)2.25 E .092(If a)144 537.6 R F1(sigspec) -2.932 E F0(is)2.902 E F2(EXIT)2.592 E F0 .092(\(0\) the command)2.342 F -F1(action)2.921 E F0 .091(is e)2.831 F -.15(xe)-.15 G .091(cuted on e) -.15 F .091(xit from the shell.)-.15 F .091(If a)5.091 F F1(sigspec)2.931 -E F0(is)2.901 E F2(DE-)2.591 E -.09(BU)144 549.6 S(G).09 E F3(,)A F0 -1.244(the command)3.494 F F1(action)4.074 E F0 1.244(is e)3.984 F -.15 -(xe)-.15 G 1.244(cuted before e).15 F -.15(ve)-.25 G(ry).15 E F1 1.245 -(simple command)3.744 F F0(,)A F1(for)3.745 E F0(command,)3.745 E F1 -(case)3.745 E F0(com-)3.745 E(mand,)144 561.6 Q F1(select)2.697 E F0 +3.216 F(Each)5.717 E F2(sigspec)144.34 663.6 Q F0 .709 +(is either a signal name de\214ned in <)3.519 F F2(signal.h)A F0 .709 +(>, or a signal number)B 5.708(.S)-.55 G .708(ignal names are case) +-5.708 F(insensiti)144 675.6 Q .3 -.15(ve a)-.25 H(nd the).15 E F3(SIG) +2.5 E F0(pre\214x is optional.)2.25 E .091(If a)144 693.6 R F2(sigspec) +2.931 E F0(is)2.901 E F3(EXIT)2.591 E F0 .091(\(0\) the command)2.341 F +F2(action)2.921 E F0 .091(is e)2.831 F -.15(xe)-.15 G .091(cuted on e) +.15 F .092(xit from the shell.)-.15 F .092(If a)5.092 F F2(sigspec)2.932 +E F0(is)2.902 E F3(DE-)2.592 E -.09(BU)144 705.6 S(G).09 E F4(,)A F0 +1.245(the command)3.495 F F2(action)4.075 E F0 1.245(is e)3.985 F -.15 +(xe)-.15 G 1.244(cuted before e).15 F -.15(ve)-.25 G(ry).15 E F2 1.244 +(simple command)3.744 F F0(,)A F2(for)3.744 E F0(command,)3.744 E F2 +(case)3.744 E F0(com-)3.744 E(mand,)144 717.6 Q F2(select)2.696 E F0 .196 (command, \(\( arithmetic command, [[ conditional command, arithmetic) -2.697 F F1(for)2.696 E F0(command,)2.696 E 1.105 -(and before the \214rst command e)144 573.6 R -.15(xe)-.15 G 1.105 -(cutes in a shell function \(see).15 F F2 1.105(SHELL GRAMMAR)3.605 F F0 -(in)3.355 E F1(bash\(1\))3.605 E F0(\).)A .556 -(Refer to the description of the)144 585.6 R F4(extdeb)3.056 E(ug)-.2 E -F0 .556(option to the)3.056 F F4(shopt)3.056 E F0 -.2(bu)3.056 G .556 -(iltin for details of its ef).2 F .556(fect on the)-.25 F F4(DEB)144 -597.6 Q(UG)-.1 E F0 2.514(trap. If)2.514 F(a)2.514 E F1(sigspec)2.854 E -F0(is)2.824 E F2(RETURN)2.514 E F3(,)A F0 .014(the command)2.264 F F1 -(action)2.845 E F0 .015(is e)2.755 F -.15(xe)-.15 G .015 -(cuted each time a shell function).15 F(or a script e)144 609.6 Q -.15 -(xe)-.15 G(cuted with the).15 E F4(.)2.5 E F0(or)2.5 E F4(sour)2.5 E(ce) --.18 E F0 -.2(bu)2.5 G(iltins \214nishes e).2 E -.15(xe)-.15 G(cuting.) -.15 E .285(If a)144 627.6 R F1(sigspec)3.125 E F0(is)3.095 E F2(ERR) -2.784 E F3(,)A F0 .284(the command)2.534 F F1(action)3.114 E F0 .284 -(is e)3.024 F -.15(xe)-.15 G .284(cuted whene).15 F -.15(ve)-.25 G 2.784 -(rap).15 G .284(ipeline \(which may consist of a)-2.784 F .185(single s\ -imple command\), a list, or a compound command returns a non\255zero e) -144 639.6 R .185(xit status, subject to)-.15 F .452(the follo)144 651.6 -R .452(wing conditions.)-.25 F(The)5.452 E F2(ERR)2.952 E F0 .451 -(trap is not e)2.701 F -.15(xe)-.15 G .451(cuted if the f).15 F .451 -(ailed command is part of the com-)-.1 F .387 -(mand list immediately follo)144 663.6 R .387(wing a)-.25 F F4(while) -2.887 E F0(or)2.887 E F4(until)2.888 E F0 -.1(ke)2.888 G(yw)-.05 E .388 -(ord, part of the test in an)-.1 F F1(if)2.898 E F0 .388 -(statement, part)4.848 F .778(of a command e)144 675.6 R -.15(xe)-.15 G -.778(cuted in a).15 F F4(&&)3.278 E F0(or)3.278 E F4(||)3.278 E F0 .778 -(list e)3.278 F .778(xcept the command follo)-.15 F .778 -(wing the \214nal)-.25 F F4(&&)3.278 E F0(or)3.278 E F4(||)3.277 E F0 -3.277(,a)C -.15(ny)-3.277 G 1.28(command in a pipeline b)144 687.6 R -1.28(ut the last, or if the command')-.2 F 3.78(sr)-.55 G 1.28(eturn v) --3.78 F 1.28(alue is being in)-.25 F -.15(ve)-.4 G 1.28(rted using).15 F -F4(!)3.78 E F0(.)A(These are the same conditions obe)144 699.6 Q -(yed by the)-.15 E F4(err)2.5 E(exit)-.18 E F0(\()2.5 E F4A F0 2.5 -(\)o)C(ption.)-2.5 E .07(When the shell is not interacti)144 717.6 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 729.6 Q 2.048 -.15(ve s)-.25 H 1.748 -(hells permit trapping signals ignored on entry).15 F 6.749(.T)-.65 G -1.749(rapped signals that are not being)-7.099 F(GNU Bash 5.2)72 768 Q -(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(23)185.545 E 0 Cg EP +2.696 F F2(for)2.697 E F0(command,)2.697 E 1.105 +(and before the \214rst command e)144 729.6 R -.15(xe)-.15 G 1.105 +(cutes in a shell function \(see).15 F F3 1.105(SHELL GRAMMAR)3.605 F F0 +(in)3.355 E F2(bash\(1\))3.604 E F0(\).)A(GNU Bash 5.2)72 768 Q +(2023 January 27)141.79 E(23)190.95 E 0 Cg EP %%Page: 24 24 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E .09(ignored are reset to their original v) -144 84 R .09(alues in a subshell or subshell en)-.25 F .09 -(vironment when one is created.)-.4 F(The return status is f)144 96 Q -(alse if an)-.1 E(y)-.15 E/F1 10/Times-Italic@0 SF(sigspec)2.84 E F0 -(is in)2.81 E -.25(va)-.4 G(lid; otherwise).25 E/F2 10/Times-Bold@0 SF -(trap)2.5 E F0(returns true.)2.5 E F2(type)108 112.8 Q F0([)2.5 E F2 -(\255aftpP)A F0(])A F1(name)2.5 E F0([)2.5 E F1(name)A F0(...])2.5 E -.4 -(Wi)144 124.8 S .173(th no options, indicate ho).4 F 2.673(we)-.25 G -(ach)-2.673 E F1(name)3.033 E F0 -.1(wo)2.853 G .174 -(uld be interpreted if used as a command name.).1 F .174(If the)5.174 F -F2144 136.8 Q F0 .715(option is used,)3.215 F F2(type)3.215 E F0 -.715(prints a string which is one of)3.215 F F1(alias)3.545 E F0(,).27 E -F1 -.1(ke)3.215 G(ywor)-.2 E(d)-.37 E F0(,).77 E F1(function)5.185 E F0 -(,).24 E F1 -.2(bu)3.215 G(iltin).2 E F0 3.215(,o).24 G(r)-3.215 E F1 -(\214le)5.125 E F0(if)3.395 E F1(name)144.36 148.8 Q F0 .086 -(is an alias, shell reserv)2.766 F .086(ed w)-.15 F .086 -(ord, function, b)-.1 F .087(uiltin, or disk \214le, respecti)-.2 F -.15 -(ve)-.25 G(ly).15 E 5.087(.I)-.65 G 2.587(ft)-5.087 G(he)-2.587 E F1 -(name)2.947 E F0 .087(is not)2.767 F .119 -(found, then nothing is printed, and an e)144 160.8 R .118 -(xit status of f)-.15 F .118(alse is returned.)-.1 F .118(If the)5.118 F -F22.618 E F0 .118(option is used,)2.618 F F2(type)2.618 E F0 .855 -(either returns the name of the disk \214le that w)144 172.8 R .855 -(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F1(name)3.715 E F0 -.855(were speci\214ed as a com-)3.535 F .529(mand name, or nothing if) -144 184.8 R/F3 10/Courier@0 SF .528(type -t name)3.028 F F0 -.1(wo)3.028 -G .528(uld not return).1 F F1(\214le)4.938 E F0 5.528(.T).18 G(he)-5.528 -E F23.028 E F0 .528(option forces a)3.028 F/F4 9/Times-Bold@0 SF --.666(PA)3.028 G(TH)-.189 E F0 .006(search for each)144 196.8 R F1(name) -2.506 E F0 2.506(,e)C -.15(ve)-2.756 G 2.506(ni).15 G(f)-2.506 E F3 .007 -(type -t name)2.506 F F0 -.1(wo)2.507 G .007(uld not return).1 F F1 -(\214le)4.417 E F0 5.007(.I).18 G 2.507(fac)-5.007 G .007 -(ommand is hashed,)-2.507 F F22.507 E F0(and)144 208.8 Q F2 -3.231 E F0 .731(print the hashed v)3.231 F .73 -(alue, which is not necessarily the \214le that appears \214rst in)-.25 -F F4 -.666(PA)3.23 G(TH)-.189 E/F5 9/Times-Roman@0 SF(.)A F0 .73(If the) -5.23 F F2144 220.8 Q F0 .823(option is used,)3.323 F F2(type)3.323 -E F0 .824(prints all of the places that contain an e)3.323 F -.15(xe) --.15 G .824(cutable named).15 F F1(name)3.684 E F0 5.824(.T).18 G .824 -(his in-)-5.824 F 1.176 -(cludes aliases and functions, if and only if the)144 232.8 R F2 -3.676 E F0 1.176(option is not also used.)3.676 F 1.176 -(The table of hashed)6.176 F 1.223(commands is not consulted when using) -144 244.8 R F23.723 E F0 6.223(.T)C(he)-6.223 E F23.723 E F0 -1.223(option suppresses shell function lookup, as)3.723 F .326(with the) -144 256.8 R F2(command)2.826 E F0 -.2(bu)2.826 G(iltin.).2 E F2(type) -5.326 E F0 .326(returns true if all of the ar)2.826 F .325 -(guments are found, f)-.18 F .325(alse if an)-.1 F 2.825(ya)-.15 G .325 -(re not)-2.825 F(found.)144 268.8 Q F2(ulimit)108 285.6 Q F0([)2.5 E F2 -(\255HS)A F0(])A F22.5 E(ulimit)108 297.6 Q F0([)2.5 E F2(\255HS)A -F0 2.5(][)C F2(\255bcde\214klmnpqrstuvxPR)-2.5 E(T)-.4 E F0([)2.5 E F1 -(limit)A F0(]])A(Pro)144 309.6 Q .243(vides control o)-.15 F -.15(ve) --.15 G 2.743(rt).15 G .243(he resources a)-2.743 F -.25(va)-.2 G .244 +E(UIL)-.1 E(TINS\(1\))-.92 E .556(Refer to the description of the)144 84 +R/F1 10/Times-Bold@0 SF(extdeb)3.056 E(ug)-.2 E F0 .556(option to the) +3.056 F F1(shopt)3.056 E F0 -.2(bu)3.056 G .556 +(iltin for details of its ef).2 F .557(fect on the)-.25 F F1(DEB)144 96 +Q(UG)-.1 E F0 2.515(trap. If)2.515 F(a)2.515 E/F2 10/Times-Italic@0 SF +(sigspec)2.855 E F0(is)2.825 E/F3 9/Times-Bold@0 SF(RETURN)2.515 E/F4 9 +/Times-Roman@0 SF(,)A F0 .015(the command)2.265 F F2(action)2.844 E F0 +.014(is e)2.754 F -.15(xe)-.15 G .014(cuted each time a shell function) +.15 F(or a script e)144 108 Q -.15(xe)-.15 G(cuted with the).15 E F1(.) +2.5 E F0(or)2.5 E F1(sour)2.5 E(ce)-.18 E F0 -.2(bu)2.5 G +(iltins \214nishes e).2 E -.15(xe)-.15 G(cuting.).15 E .284(If a)144 126 +R F2(sigspec)3.124 E F0(is)3.094 E F3(ERR)2.784 E F4(,)A F0 .284 +(the command)2.534 F F2(action)3.114 E F0 .284(is e)3.024 F -.15(xe)-.15 +G .284(cuted whene).15 F -.15(ve)-.25 G 2.784(rap).15 G .285 +(ipeline \(which may consist of a)-2.784 F .185(single simple command\)\ +, a list, or a compound command returns a non\255zero e)144 138 R .184 +(xit status, subject to)-.15 F .451(the follo)144 150 R .451 +(wing conditions.)-.25 F(The)5.451 E F3(ERR)2.951 E F0 .451 +(trap is not e)2.701 F -.15(xe)-.15 G .451(cuted if the f).15 F .452 +(ailed command is part of the com-)-.1 F .388 +(mand list immediately follo)144 162 R .388(wing a)-.25 F F1(while)2.888 +E F0(or)2.888 E F1(until)2.888 E F0 -.1(ke)2.888 G(yw)-.05 E .388 +(ord, part of the test in an)-.1 F F2(if)2.897 E F0 .387 +(statement, part)4.847 F .777(of a command e)144 174 R -.15(xe)-.15 G +.778(cuted in a).15 F F1(&&)3.278 E F0(or)3.278 E F1(||)3.278 E F0 .778 +(list e)3.278 F .778(xcept the command follo)-.15 F .778 +(wing the \214nal)-.25 F F1(&&)3.278 E F0(or)3.278 E F1(||)3.278 E F0 +3.278(,a)C -.15(ny)-3.278 G 1.28(command in a pipeline b)144 186 R 1.28 +(ut the last, or if the command')-.2 F 3.78(sr)-.55 G 1.28(eturn v)-3.78 +F 1.28(alue is being in)-.25 F -.15(ve)-.4 G 1.28(rted using).15 F F1(!) +3.78 E F0(.)A(These are the same conditions obe)144 198 Q(yed by the) +-.15 E F1(err)2.5 E(exit)-.18 E F0(\()2.5 E F1A F0 2.5(\)o)C +(ption.)-2.5 E .069(When the shell is not interacti)144 216 R -.15(ve) +-.25 G 2.569(,s).15 G .07 +(ignals ignored upon entry to the shell cannot be trapped or reset.) +-2.569 F(Interacti)144 228 Q .952 -.15(ve s)-.25 H .652 +(hells permit trapping signals ignored on entry).15 F 5.651(.T)-.65 G +.651(rapped signals that are not being ig-)-6.001 F .576 +(nored are reset to their original v)144 240 R .576 +(alues in a subshell or subshell en)-.25 F .577 +(vironment when one is created.)-.4 F(The return status is f)144 252 Q +(alse if an)-.1 E(y)-.15 E F2(sigspec)2.84 E F0(is in)2.81 E -.25(va)-.4 +G(lid; otherwise).25 E F1(trap)2.5 E F0(returns true.)2.5 E F1(type)108 +268.8 Q F0([)2.5 E F1(\255aftpP)A F0(])A F2(name)2.5 E F0([)2.5 E F2 +(name)A F0(...])2.5 E -.4(Wi)144 280.8 S .174 +(th no options, indicate ho).4 F 2.674(we)-.25 G(ach)-2.674 E F2(name) +3.034 E F0 -.1(wo)2.854 G .173 +(uld be interpreted if used as a command name.).1 F .173(If the)5.173 F +F1144 292.8 Q F0 .715(option is used,)3.215 F F1(type)3.215 E F0 +.715(prints a string which is one of)3.215 F F2(alias)3.545 E F0(,).27 E +F2 -.1(ke)3.215 G(ywor)-.2 E(d)-.37 E F0(,).77 E F2(function)5.185 E F0 +(,).24 E F2 -.2(bu)3.215 G(iltin).2 E F0 3.215(,o).24 G(r)-3.215 E F2 +(\214le)5.125 E F0(if)3.395 E F2(name)144.36 304.8 Q F0 .378 +(is an alias, shell reserv)3.058 F .377(ed w)-.15 F .377 +(ord, function, b)-.1 F .377(uiltin, or e)-.2 F -.15(xe)-.15 G .377 +(cutable disk \214le, respecti).15 F -.15(ve)-.25 G(ly).15 E 5.377(.I) +-.65 G 2.877(ft)-5.377 G(he)-2.877 E F2(name)144.36 316.8 Q F0 .645 +(is not found, then nothing is printed, and)3.325 F F1(type)3.146 E F0 +.646(returns a non-zero e)3.146 F .646(xit status.)-.15 F .646(If the) +5.646 F F13.146 E F0(op-)3.146 E .642(tion is used,)144 328.8 R F1 +(type)3.142 E F0 .642(either returns the name of the e)3.142 F -.15(xe) +-.15 G .642(cutable \214le that w).15 F .641(ould be found by searching) +-.1 F F1($P)144 340.8 Q -.95(AT)-.74 G(H).95 E F0(if)2.615 E F2(name) +2.975 E F0 .116(were speci\214ed as a command name, or nothing if)2.796 +F/F5 10/Courier@0 SF .116(type -t name)2.616 F F0 -.1(wo)2.616 G .116 +(uld not re-).1 F(turn)144 352.8 Q F2(\214le)4.5 E F0 5.09(.T).18 G(he) +-5.09 E F12.59 E F0 .09(option forces a)2.59 F F3 -.666(PA)2.59 G +(TH)-.189 E F0 .089(search for each)2.339 F F2(name)2.589 E F0 2.589(,e) +C -.15(ve)-2.839 G 2.589(ni).15 G(f)-2.589 E F5 .089(type -t name)2.589 +F F0 -.1(wo)2.589 G .089(uld not).1 F(return)144 364.8 Q F2(\214le)5.245 +E F0 5.835(.I).18 G 3.336(fac)-5.835 G .836(ommand is hashed,)-3.336 F +F13.336 E F0(and)3.336 E F13.336 E F0 .836 +(print the hashed v)3.336 F .836(alue, which is not necessarily)-.25 F +.033(the \214le that appears \214rst in)144 376.8 R F3 -.666(PA)2.533 G +(TH)-.189 E F4(.)A F0 .033(If the)4.533 F F12.533 E F0 .033 +(option is used,)2.533 F F1(type)2.533 E F0 .033 +(prints all of the places that contain)2.533 F 3.55(ac)144 388.8 S 1.05 +(ommand named)-3.55 F F2(name)3.91 E F0 6.051(.T).18 G 1.051 +(his includes aliases, reserv)-6.051 F 1.051(ed w)-.15 F 1.051 +(ords, functions, and b)-.1 F 1.051(uiltins, b)-.2 F 1.051(ut the)-.2 F +1.178(path search options \()144 400.8 R F1A F0(and)3.678 E F1 +3.678 E F0 3.678(\)c)C 1.177 +(an be supplied to restrict the output to e)-3.678 F -.15(xe)-.15 G +1.177(cutable \214les.).15 F F1(type)6.177 E F0 .035 +(does not consult the table of hashed commands when using)144 412.8 R F1 +2.535 E F0(with)2.535 E F12.535 E F0 2.535(,a)C .036 +(nd only performs a)-2.535 F F3 -.666(PA)2.536 G(TH)-.189 E F0 .912 +(search for)144 424.8 R F2(name)3.412 E F0 5.912(.T)C(he)-5.912 E F1 +3.412 E F0 .911 +(option suppresses shell function lookup, as with the)3.412 F F1 +(command)3.411 E F0 -.2(bu)3.411 G(iltin.).2 E F1(type)144 436.8 Q F0 +(returns true if all of the ar)2.5 E(guments are found, f)-.18 E +(alse if an)-.1 E 2.5(ya)-.15 G(re not found.)-2.5 E F1(ulimit)108 453.6 +Q F0([)2.5 E F1(\255HS)A F0(])A F12.5 E(ulimit)108 465.6 Q F0([) +2.5 E F1(\255HS)A F0 2.5(][)C F1(\255bcde\214klmnpqrstuvxPR)-2.5 E(T)-.4 +E F0([)2.5 E F2(limit)A F0(]])A(Pro)144 477.6 Q .243(vides control o) +-.15 F -.15(ve)-.15 G 2.743(rt).15 G .243(he resources a)-2.743 F -.25 +(va)-.2 G .244 (ilable to the shell and to processes started by it, on systems).25 F -.944(that allo)144 321.6 R 3.444(ws)-.25 G .944(uch control.)-3.444 F -(The)5.944 E F23.444 E F0(and)3.444 E F23.444 E F0 .943 +.944(that allo)144 489.6 R 3.444(ws)-.25 G .944(uch control.)-3.444 F +(The)5.944 E F13.444 E F0(and)3.444 E F13.444 E F0 .943 (options specify that the hard or soft limit is set for the)3.444 F(gi) -144 333.6 Q -.15(ve)-.25 G 2.708(nr).15 G 2.708(esource. A)-2.708 F .208 +144 501.6 Q -.15(ve)-.25 G 2.708(nr).15 G 2.708(esource. A)-2.708 F .208 (hard limit cannot be increased by a non-root user once it is set; a so\ -ft limit may)2.708 F .426(be increased up to the v)144 345.6 R .426 -(alue of the hard limit.)-.25 F .425(If neither)5.426 F F22.925 E -F0(nor)2.925 E F22.925 E F0 .425 +ft limit may)2.708 F .426(be increased up to the v)144 513.6 R .426 +(alue of the hard limit.)-.25 F .425(If neither)5.426 F F12.925 E +F0(nor)2.925 E F12.925 E F0 .425 (is speci\214ed, both the soft and)2.925 F .139(hard limits are set.)144 -357.6 R .139(The v)5.139 F .139(alue of)-.25 F F1(limit)2.729 E F0 .139 +525.6 R .139(The v)5.139 F .139(alue of)-.25 F F2(limit)2.729 E F0 .139 (can be a number in the unit speci\214ed for the resource or one)3.319 F -.742(of the special v)144 369.6 R(alues)-.25 E F2(hard)3.242 E F0(,)A F2 -(soft)3.241 E F0 3.241(,o)C(r)-3.241 E F2(unlimited)3.241 E F0 3.241(,w) +.742(of the special v)144 537.6 R(alues)-.25 E F1(hard)3.242 E F0(,)A F1 +(soft)3.241 E F0 3.241(,o)C(r)-3.241 E F1(unlimited)3.241 E F0 3.241(,w) C .741(hich stand for the current hard limit, the current)-3.241 F .023 -(soft limit, and no limit, respecti)144 381.6 R -.15(ve)-.25 G(ly).15 E -5.023(.I)-.65 G(f)-5.023 E F1(limit)2.613 E F0 .023 +(soft limit, and no limit, respecti)144 549.6 R -.15(ve)-.25 G(ly).15 E +5.023(.I)-.65 G(f)-5.023 E F2(limit)2.613 E F0 .023 (is omitted, the current v)3.203 F .023 (alue of the soft limit of the re-)-.25 F .985 -(source is printed, unless the)144 393.6 R F23.485 E F0 .984 +(source is printed, unless the)144 561.6 R F13.485 E F0 .984 (option is gi)3.485 F -.15(ve)-.25 G 3.484(n. When).15 F .984 (more than one resource is speci\214ed, the)3.484 F .7 -(limit name and unit, if appropriate, are printed before the v)144 405.6 +(limit name and unit, if appropriate, are printed before the v)144 573.6 R 3.2(alue. Other)-.25 F .7(options are interpreted as)3.2 F(follo)144 -417.6 Q(ws:)-.25 E F2144 429.6 Q F0 -(All current limits are reported; no limits are set)180 429.6 Q F2 -144 441.6 Q F0(The maximum sock)180 441.6 Q(et b)-.1 E(uf)-.2 E -(fer size)-.25 E F2144 453.6 Q F0 -(The maximum size of core \214les created)180 453.6 Q F2144 465.6 -Q F0(The maximum size of a process')180 465.6 Q 2.5(sd)-.55 G(ata se) --2.5 E(gment)-.15 E F2144 477.6 Q F0 -(The maximum scheduling priority \("nice"\))180 477.6 Q F2144 -489.6 Q F0 +585.6 Q(ws:)-.25 E F1144 597.6 Q F0 +(All current limits are reported; no limits are set)180 597.6 Q F1 +144 609.6 Q F0(The maximum sock)180 609.6 Q(et b)-.1 E(uf)-.2 E +(fer size)-.25 E F1144 621.6 Q F0 +(The maximum size of core \214les created)180 621.6 Q F1144 633.6 +Q F0(The maximum size of a process')180 633.6 Q 2.5(sd)-.55 G(ata se) +-2.5 E(gment)-.15 E F1144 645.6 Q F0 +(The maximum scheduling priority \("nice"\))180 645.6 Q F1144 +657.6 Q F0 (The maximum size of \214les written by the shell and its children)180 -489.6 Q F2144 501.6 Q F0(The maximum number of pending signals)180 -501.6 Q F2144 513.6 Q F0 -(The maximum number of kqueues that may be allocated)180 513.6 Q F2 -144 525.6 Q F0(The maximum size that may be lock)180 525.6 Q -(ed into memory)-.1 E F2144 537.6 Q F0 -(The maximum resident set size \(man)180 537.6 Q 2.5(ys)-.15 G -(ystems do not honor this limit\))-2.5 E F2144 549.6 Q F0 .791(Th\ +657.6 Q F1144 669.6 Q F0(The maximum number of pending signals)180 +669.6 Q F1144 681.6 Q F0 +(The maximum number of kqueues that may be allocated)180 681.6 Q F1 +144 693.6 Q F0(The maximum size that may be lock)180 693.6 Q +(ed into memory)-.1 E F1144 705.6 Q F0 +(The maximum resident set size \(man)180 705.6 Q 2.5(ys)-.15 G +(ystems do not honor this limit\))-2.5 E F1144 717.6 Q F0 .791(Th\ e maximum number of open \214le descriptors \(most systems do not allo) -180 549.6 R 3.29(wt)-.25 G .79(his v)-3.29 F .79(alue to)-.25 F -(be set\))180 561.6 Q F2144 573.6 Q F0 -(The pipe size in 512-byte blocks \(this may not be set\))180 573.6 Q F2 -144 585.6 Q F0 -(The maximum number of bytes in POSIX message queues)180 585.6 Q F2 -144 597.6 Q F0(The maximum real-time scheduling priority)180 597.6 -Q F2144 609.6 Q F0(The maximum stack size)180 609.6 Q F2144 -621.6 Q F0(The maximum amount of cpu time in seconds)180 621.6 Q F2 -144 633.6 Q F0(The maximum number of processes a)180 633.6 Q -.25 -(va)-.2 G(ilable to a single user).25 E F2144 645.6 Q F0 .47 -(The maximum amount of virtual memory a)180 645.6 R -.25(va)-.2 G .47 -(ilable to the shell and, on some systems, to).25 F(its children)180 -657.6 Q F2144 669.6 Q F0(The maximum number of \214le locks)180 -669.6 Q F2144 681.6 Q F0(The maximum number of pseudoterminals)180 -681.6 Q F2144 693.6 Q F0(The maximum time a real-time process can\ - run before blocking, in microseconds)180 693.6 Q F2144 705.6 Q F0 -(The maximum number of threads)180 705.6 Q(If)144 722.4 Q F1(limit)3.058 -E F0 .468(is gi)3.648 F -.15(ve)-.25 G .468(n, and the).15 F F2 -2.968 E F0 .468(option is not used,)2.968 F F1(limit)2.968 E F0 .468 -(is the ne)2.968 F 2.968(wv)-.25 G .468 -(alue of the speci\214ed resource.)-3.218 F(If)5.468 E(GNU Bash 5.2)72 -768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E(24)185.545 E 0 Cg -EP +180 717.6 R 3.29(wt)-.25 G .79(his v)-3.29 F .79(alue to)-.25 F +(be set\))180 729.6 Q(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(24) +190.95 E 0 Cg EP %%Page: 25 25 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E .044(no option is gi)144 84 R -.15(ve)-.25 -G .044(n, then).15 F/F1 10/Times-Bold@0 SF2.544 E F0 .045 -(is assumed.)2.545 F -1.11(Va)5.045 G .045 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF144 84 Q F0 +(The pipe size in 512-byte blocks \(this may not be set\))180 84 Q F1 +144 96 Q F0(The maximum number of bytes in POSIX message queues) +180 96 Q F1144 108 Q F0(The maximum real-time scheduling priority) +180 108 Q F1144 120 Q F0(The maximum stack size)180 120 Q F1 +144 132 Q F0(The maximum amount of cpu time in seconds)180 132 Q F1 +144 144 Q F0(The maximum number of processes a)180 144 Q -.25(va) +-.2 G(ilable to a single user).25 E F1144 156 Q F0 .47 +(The maximum amount of virtual memory a)180 156 R -.25(va)-.2 G .47 +(ilable to the shell and, on some systems, to).25 F(its children)180 168 +Q F1144 180 Q F0(The maximum number of \214le locks)180 180 Q F1 +144 192 Q F0(The maximum number of pseudoterminals)180 192 Q F1 +144 204 Q F0(The maximum time a real-time process can run before \ +blocking, in microseconds)180 204 Q F1144 216 Q F0 +(The maximum number of threads)180 216 Q(If)144 232.8 Q/F2 10 +/Times-Italic@0 SF(limit)3.058 E F0 .468(is gi)3.648 F -.15(ve)-.25 G +.468(n, and the).15 F F12.968 E F0 .468(option is not used,)2.968 +F F2(limit)2.968 E F0 .468(is the ne)2.968 F 2.968(wv)-.25 G .468 +(alue of the speci\214ed resource.)-3.218 F(If)5.468 E .044 +(no option is gi)144 244.8 R -.15(ve)-.25 G .044(n, then).15 F F1 +2.544 E F0 .045(is assumed.)2.545 F -1.11(Va)5.045 G .045 (lues are in 1024-byte increments, e)1.11 F .045(xcept for)-.15 F F1 -2.545 E F0 2.545(,w)C .045(hich is)-2.545 F .67(in seconds;)144 96 -R F13.17 E F0 3.17(,w)C .67(hich is in microseconds;)-3.17 F F1 -3.17 E F0 3.17(,w)C .67(hich is in units of 512-byte blocks;)-3.17 -F F13.17 E F0(,)A F13.17 E F0(,)A F13.17 E F0(,)A F1 -144 108 Q F0(,)A F13.736 E F0 3.736(,a)C(nd)-3.736 E F1 -3.736 E F0 3.736(,w)C 1.236(hich are unscaled v)-3.736 F 1.236 +2.545 E F0 2.545(,w)C .045(hich is)-2.545 F .67(in seconds;)144 +256.8 R F13.17 E F0 3.17(,w)C .67(hich is in microseconds;)-3.17 F +F13.17 E F0 3.17(,w)C .67(hich is in units of 512-byte blocks;) +-3.17 F F13.17 E F0(,)A F13.17 E F0(,)A F13.17 E F0(,) +A F1144 268.8 Q F0(,)A F13.736 E F0 3.736(,a)C(nd)-3.736 E +F13.736 E F0 3.736(,w)C 1.236(hich are unscaled v)-3.736 F 1.236 (alues; and, when in posix mode,)-.25 F F13.736 E F0(and)3.736 E F13.736 E F0 3.736(,w)C 1.237(hich are in)-3.736 F .239 -(512-byte increments.)144 120 R .238 +(512-byte increments.)144 280.8 R .238 (The return status is 0 unless an in)5.239 F -.25(va)-.4 G .238 (lid option or ar).25 F .238(gument is supplied, or an)-.18 F -(error occurs while setting a ne)144 132 Q 2.5(wl)-.25 G(imit.)-2.5 E F1 -(umask)108 148.8 Q F0([)2.5 E F1A F0 2.5(][)C F1-2.5 E F0 -2.5(][)C/F2 10/Times-Italic@0 SF(mode)-2.5 E F0(])A .18 -(The user \214le-creation mask is set to)144 160.8 R F2(mode)3.06 E F0 +(error occurs while setting a ne)144 292.8 Q 2.5(wl)-.25 G(imit.)-2.5 E +F1(umask)108 309.6 Q F0([)2.5 E F1A F0 2.5(][)C F1-2.5 E F0 +2.5(][)C F2(mode)-2.5 E F0(])A .18 +(The user \214le-creation mask is set to)144 321.6 R F2(mode)3.06 E F0 5.18(.I).18 G(f)-5.18 E F2(mode)3.06 E F0(be)2.86 E .18 (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 172.8 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 -184.8 Q F2(mode)3.262 E F0 .382(is omitted, the current v)3.062 F .382 +pted by)144 333.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 +345.6 Q F2(mode)3.262 E F0 .382(is omitted, the current v)3.062 F .382 (alue of the mask is printed.)-.25 F(The)5.382 E F12.882 E F0 .382 (option causes the mask to be)2.882 F .547 -(printed in symbolic form; the def)144 196.8 R .547 +(printed in symbolic form; the def)144 357.6 R .547 (ault output is an octal number)-.1 F 5.547(.I)-.55 G 3.047(ft)-5.547 G (he)-3.047 E F13.047 E F0 .547(option is supplied, and)3.047 F F2 -(mode)144.38 208.8 Q F0 .551 +(mode)144.38 369.6 Q F0 .551 (is omitted, the output is in a form that may be reused as input.)3.231 -F .552(The return status is 0 if the)5.552 F(mode w)144 220.8 Q +F .552(The return status is 0 if the)5.552 F(mode w)144 381.6 Q (as successfully changed or if no)-.1 E F2(mode)2.5 E F0(ar)2.5 E (gument w)-.18 E(as supplied, and f)-.1 E(alse otherwise.)-.1 E F1 -(unalias)108 237.6 Q F0<5bad>2.5 E F1(a)A F0 2.5(][)C F2(name)-2.5 E F0 -(...])2.5 E(Remo)144 249.6 Q 1.058 -.15(ve e)-.15 H(ach).15 E F2(name) +(unalias)108 398.4 Q F0<5bad>2.5 E F1(a)A F0 2.5(][)C F2(name)-2.5 E F0 +(...])2.5 E(Remo)144 410.4 Q 1.058 -.15(ve e)-.15 H(ach).15 E F2(name) 3.258 E F0 .758(from the list of de\214ned aliases.)3.258 F(If)5.758 E F13.258 E F0 .757(is supplied, all alias de\214nitions are re-) -3.258 F(mo)144 261.6 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E +3.258 F(mo)144 422.4 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E (alue is true unless a supplied)-.25 E F2(name)2.86 E F0 -(is not a de\214ned alias.)2.68 E F1(unset)108 278.4 Q F0<5bad>2.5 E F1 +(is not a de\214ned alias.)2.68 E F1(unset)108 439.2 Q F0<5bad>2.5 E F1 (fv)A F0 2.5(][)C-2.5 E F1(n)A F0 2.5(][)C F2(name)-2.5 E F0(...]) -2.5 E -.15(Fo)144 290.4 S 3.803(re).15 G(ach)-3.803 E F2(name)4.163 E F0 +2.5 E -.15(Fo)144 451.2 S 3.803(re).15 G(ach)-3.803 E F2(name)4.163 E F0 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 F13.804 E F0 1.304(option is gi)3.804 F -.15(ve) --.25 G 1.304(n, each).15 F F2(name)144.36 302.4 Q F0 .465 +-.25 G 1.304(n, each).15 F F2(name)144.36 463.2 Q F0 .465 (refers to a shell v)3.145 F .464(ariable, and that v)-.25 F .464 (ariable is remo)-.25 F -.15(ve)-.15 G 2.964(d. Read-only).15 F -.25(va) -2.964 G .464(riables may not be un-).25 F 2.768(set. If)144 314.4 R F1 +2.964 G .464(riables may not be un-).25 F 2.768(set. If)144 475.2 R F1 2.768 E F0 .269(is speci\214ed, each)2.768 F F2(name)3.129 E F0 .269(refers to a shell function, and the function de\214nition is remo) -2.949 F -.15(ve)-.15 G(d.).15 E .404(If the)144 326.4 R F12.904 E +2.949 F -.15(ve)-.15 G(d.).15 E .404(If the)144 487.2 R F12.904 E F0 .404(option is supplied, and)2.904 F F2(name)2.904 E F0 .404(is a v) 2.904 F .404(ariable with the)-.25 F F2(namer)2.904 E(ef)-.37 E F0 (attrib)2.904 E(ute,)-.2 E F2(name)2.904 E F0 .403(will be unset)2.904 F -.719(rather than the v)144 338.4 R .719(ariable it references.)-.25 F F1 +.719(rather than the v)144 499.2 R .719(ariable it references.)-.25 F F1 5.719 E F0 .719(has no ef)3.219 F .719(fect if the)-.25 F F1 3.22 E F0 .72(option is supplied.)3.22 F .72(If no options)5.72 F .737 -(are supplied, each)144 350.4 R F2(name)3.237 E F0 .737(refers to a v) +(are supplied, each)144 511.2 R F2(name)3.237 E F0 .737(refers to a v) 3.237 F .737(ariable; if there is no v)-.25 F .736 (ariable by that name, a function with)-.25 F 1.761(that name, if an)144 -362.4 R 3.061 -.65(y, i)-.15 H 4.261(su).65 G 4.261(nset. Each)-4.261 F +523.2 R 3.061 -.65(y, i)-.15 H 4.261(su).65 G 4.261(nset. Each)-4.261 F 1.761(unset v)4.261 F 1.761(ariable or function is remo)-.25 F -.15(ve) -.15 G 4.262(df).15 G 1.762(rom the en)-4.262 F(vironment)-.4 E 3.172 -(passed to subsequent commands.)144 374.4 R 3.172(If an)8.172 F 5.672 +(passed to subsequent commands.)144 535.2 R 3.172(If an)8.172 F 5.672 (yo)-.15 G(f)-5.672 E/F3 9/Times-Bold@0 SF -.27(BA)5.672 G(SH_ALIASES) .27 E/F4 9/Times-Roman@0 SF(,)A F3 -.27(BA)5.421 G(SH_ARGV0).27 E F4(,)A -F3 -.27(BA)5.421 G(SH_CMDS).27 E F4(,)A F3 -.27(BA)144 386.4 S +F3 -.27(BA)5.421 G(SH_CMDS).27 E F4(,)A F3 -.27(BA)144 547.2 S (SH_COMMAND).27 E F4(,)A F3 -.27(BA)11.481 G(SH_SUBSHELL).27 E F4(,)A F3 -.27(BA)11.482 G(SHPID).27 E F4(,)A F3(COMP_W)11.482 E(ORDBREAKS)-.09 E F4(,)A F3(DIRST)11.482 E -.495(AC)-.81 G(K).495 E F4(,)A F3(EPOCHREAL) -144 398.4 Q(TIME)-.828 E F4(,)A F3(EPOCHSECONDS)2.67 E F4(,)A F3(FUNCN) +144 559.2 Q(TIME)-.828 E F4(,)A F3(EPOCHSECONDS)2.67 E F4(,)A F3(FUNCN) 2.67 E(AME)-.18 E F4(,)A F3(GR)2.67 E(OUPS)-.27 E F4(,)A F3(HISTCMD)2.67 E F4(,)A F3(LINENO)2.67 E F4(,)A F3(RANDOM)2.67 E F4(,)A F3(SECONDS)144 -410.4 Q F4(,)A F0(or)4.029 E F3(SRANDOM)4.279 E F0 1.779(are unset, the) +571.2 Q F4(,)A F0(or)4.029 E F3(SRANDOM)4.279 E F0 1.779(are unset, the) 4.029 F 4.279(yl)-.15 G 1.779(ose their special properties, e)-4.279 F -.15(ve)-.25 G 4.279(ni).15 G 4.28(ft)-4.279 G(he)-4.28 E 4.28(ya)-.15 G -1.78(re subse-)-4.28 F(quently reset.)144 422.4 Q(The e)5 E +1.78(re subse-)-4.28 F(quently reset.)144 583.2 Q(The e)5 E (xit status is true unless a)-.15 E F2(name)2.86 E F0 -(is readonly or may not be unset.)2.68 E F1(wait)108 439.2 Q F0([)2.5 E -F1(\255fn)A F0 2.5(][)C F1-2.5 E F2(varname)2.5 E F0 2.5(][)C F2 -(id ...)-2.5 E F0(])A -.8(Wa)144 451.2 S .659(it for each speci\214ed c\ -hild process and return its termination status.).8 F(Each)5.659 E F2(id) +(is readonly or may not be unset.)2.68 E F1(wait)108 600 Q F0([)2.5 E F1 +(\255fn)A F0 2.5(][)C F1-2.5 E F2(varname)2.5 E F0 2.5(][)C F2 +(id ...)-2.5 E F0(])A -.8(Wa)144 612 S .659(it for each speci\214ed chi\ +ld process and return its termination status.).8 F(Each)5.659 E F2(id) 3.169 E F0 .658(may be a process)3.928 F .008 -(ID or a job speci\214cation; if a job spec is gi)144 463.2 R -.15(ve) --.25 G .009(n, all processes in that job').15 F 2.509(sp)-.55 G .009 +(ID or a job speci\214cation; if a job spec is gi)144 624 R -.15(ve)-.25 +G .009(n, all processes in that job').15 F 2.509(sp)-.55 G .009 (ipeline are w)-2.509 F .009(aited for)-.1 F 5.009(.I)-.55 G(f)-5.009 E -F2(id)144.01 475.2 Q F0 .442(is not gi)3.712 F -.15(ve)-.25 G(n,).15 E -F1(wait)2.942 E F0 -.1(wa)2.942 G .441 +F2(id)144.01 636 Q F0 .442(is not gi)3.712 F -.15(ve)-.25 G(n,).15 E F1 +(wait)2.942 E F0 -.1(wa)2.942 G .441 (its for all running background jobs and the last-e).1 F -.15(xe)-.15 G .441(cuted process substitu-).15 F .597 -(tion, if its process id is the same as)144 487.2 R F1($!)3.098 E F0 -3.098(,a)C .598(nd the return status is zero.)-3.098 F .598(If the)5.598 -F F13.098 E F0 .598(option is supplied,)3.098 F F1(wait)144 499.2 -Q F0 -.1(wa)3.083 G .583(its for a single job from the list of).1 F F2 -(id)3.083 E F0 3.083(so)C 1.383 -.4(r, i)-3.083 H 3.083(fn).4 G(o)-3.083 -E F2(id)3.083 E F0 3.083(sa)C .583(re supplied, an)-3.083 F 3.083(yj) --.15 G .582(ob, to complete and)-3.083 F .403(returns its e)144 511.2 R -.403(xit status.)-.15 F .403(If none of the supplied ar)5.403 F .403 +(tion, if its process id is the same as)144 648 R F1($!)3.098 E F0 3.098 +(,a)C .598(nd the return status is zero.)-3.098 F .598(If the)5.598 F F1 +3.098 E F0 .598(option is supplied,)3.098 F F1(wait)144 660 Q F0 +-.1(wa)3.083 G .583(its for a single job from the list of).1 F F2(id) +3.083 E F0 3.083(so)C 1.383 -.4(r, i)-3.083 H 3.083(fn).4 G(o)-3.083 E +F2(id)3.083 E F0 3.083(sa)C .583(re supplied, an)-3.083 F 3.083(yj)-.15 +G .582(ob, to complete and)-3.083 F .403(returns its e)144 672 R .403 +(xit status.)-.15 F .403(If none of the supplied ar)5.403 F .403 (guments is a child of the shell, or if no ar)-.18 F(guments)-.18 E .573 -(are supplied and the shell has no unw)144 523.2 R .573 +(are supplied and the shell has no unw)144 684 R .573 (aited-for children, the e)-.1 F .573(xit status is 127.)-.15 F .572 (If the)5.573 F F13.072 E F0 .572(option is)3.072 F .39 (supplied, the process or job identi\214er of the job for which the e) -144 535.2 R .39(xit status is returned is assigned to)-.15 F .905(the v) -144 547.2 R(ariable)-.25 E F2(varname)3.405 E F0 .905 +144 696 R .39(xit status is returned is assigned to)-.15 F .905(the v) +144 708 R(ariable)-.25 E F2(varname)3.405 E F0 .905 (named by the option ar)3.405 F 3.405(gument. The)-.18 F -.25(va)3.405 G .905(riable will be unset initially).25 F 3.405(,b)-.65 G(efore)-3.405 E -(an)144 559.2 Q 3.89(ya)-.15 G 3.89(ssignment. This)-3.89 F 1.39 +(an)144 720 Q 3.89(ya)-.15 G 3.89(ssignment. This)-3.89 F 1.39 (is useful only when the)3.89 F F13.89 E F0 1.39 (option is supplied.)3.89 F 1.39(Supplying the)6.39 F F13.89 E F0 -(option,)3.89 E .575(when job control is enabled, forces)144 571.2 R F1 -(wait)3.075 E F0 .575(to w)3.075 F .575(ait for)-.1 F F2(id)3.075 E F0 -.574(to terminate before returning its status, in-)3.075 F .635 -(stead of returning when it changes status.)144 583.2 R(If)5.635 E F2 -(id)3.145 E F0 .635(speci\214es a non-e)3.905 F .635 -(xistent process or job, the return)-.15 F .802(status is 127.)144 595.2 -R(If)5.801 E F1(wait)3.301 E F0 .801(is interrupted by a signal, the re\ -turn status will be greater than 128, as de-)3.301 F 1.758 -(scribed under)144 607.2 R F1(SIGN)4.258 E(ALS)-.2 E F0(in)4.258 E F2 -(bash\(1\))4.258 E F0 6.758(.O)C 1.759 -(therwise, the return status is the e)-6.758 F 1.759 -(xit status of the last)-.15 F(process or job w)144 619.2 Q(aited for) --.1 E(.)-.55 E/F5 10.95/Times-Bold@0 SF(SHELL COMP)72 636 Q -1.04(AT) --.81 G(IBILITY MODE)1.04 E F0 1.355 -(Bash-4.0 introduced the concept of a)108 648 R F2 1.355 -(shell compatibility le)3.855 F(vel)-.15 E F0 3.855(,s)C 1.354 -(peci\214ed as a set of options to the shopt)-3.855 F -.2(bu)108 660 S -.398(iltin \().2 F F1(compat31)2.898 E F0(,)A F1(compat32)2.898 E F0(,)A -F1(compat40)2.898 E F0(,)A F1(compat41)2.898 E F0 2.898(,a)C .399 -(nd so on\).)-2.898 F .399(There is only one current compatibility)5.399 -F(le)108 672 Q -.15(ve)-.25 G 3.254(l-).15 G 3.254(-e)-3.254 G .754 -(ach option is mutually e)-3.254 F(xclusi)-.15 E -.15(ve)-.25 G 5.754 -(.T).15 G .754(he compatibility le)-5.754 F -.15(ve)-.25 G 3.253(li).15 -G 3.253(si)-3.253 G .753(ntended to allo)-3.253 F 3.253(wu)-.25 G .753 -(sers to select be-)-3.253 F(ha)108 684 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 696 Q -(vior)-.2 E 2.5(.I)-.55 G(t')-2.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 712.8 R 1.457 -(vior that is standard for a particular v)-.2 F 1.456 -(ersion \(e.g., setting)-.15 F F1(compat32)3.956 E F0 .886 -(means that quoting the rhs of the re)108 724.8 R(ge)-.15 E .886 -(xp matching operator quotes special re)-.15 F(ge)-.15 E .887 -(xp characters in the w)-.15 F(ord,)-.1 E(GNU Bash 5.2)72 768 Q(2021 No) -136.385 E -.15(ve)-.15 G(mber 22).15 E(25)185.545 E 0 Cg EP +(option,)3.89 E(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(25)190.95 +E 0 Cg EP %%Page: 26 26 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 (TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(which is def)108 84 Q(ault beha)-.1 E -(vior in bash-3.2 and subsequent v)-.2 E(ersions\).)-.15 E .523 -(If a user enables, say)108 100.8 R(,)-.65 E/F1 10/Times-Bold@0 SF -(compat32)3.023 E F0 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 112.8 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 124.8 R 1.646(ersion of)-.15 F F1(bash)4.146 E F0 -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 136.8 R F1([[)3.261 +E(UIL)-.1 E(TINS\(1\))-.92 E .575(when job control is enabled, forces) +144 84 R/F1 10/Times-Bold@0 SF(wait)3.075 E F0 .575(to w)3.075 F .575 +(ait for)-.1 F/F2 10/Times-Italic@0 SF(id)3.075 E F0 .574 +(to terminate before returning its status, in-)3.075 F .635 +(stead of returning when it changes status.)144 96 R(If)5.635 E F2(id) +3.145 E F0 .635(speci\214es a non-e)3.905 F .635 +(xistent process or job, the return)-.15 F .802(status is 127.)144 108 R +(If)5.801 E F1(wait)3.301 E F0 .801(is interrupted by a signal, the ret\ +urn status will be greater than 128, as de-)3.301 F 1.758(scribed under) +144 120 R F1(SIGN)4.258 E(ALS)-.2 E F0(in)4.258 E F2(bash\(1\))4.258 E +F0 6.758(.O)C 1.759(therwise, the return status is the e)-6.758 F 1.759 +(xit status of the last)-.15 F(process or job w)144 132 Q(aited for)-.1 +E(.)-.55 E/F3 10.95/Times-Bold@0 SF(SHELL COMP)72 148.8 Q -1.04(AT)-.81 +G(IBILITY MODE)1.04 E F0 1.355(Bash-4.0 introduced the concept of a)108 +160.8 R F2 1.355(shell compatibility le)3.855 F(vel)-.15 E F0 3.855(,s)C +1.354(peci\214ed as a set of options to the shopt)-3.855 F -.2(bu)108 +172.8 S .398(iltin \().2 F F1(compat31)2.898 E F0(,)A F1(compat32)2.898 +E F0(,)A F1(compat40)2.898 E F0(,)A F1(compat41)2.898 E F0 2.898(,a)C +.399(nd so on\).)-2.898 F .399(There is only one current compatibility) +5.399 F(le)108 184.8 Q -.15(ve)-.25 G 3.254(l-).15 G 3.254(-e)-3.254 G +.754(ach option is mutually e)-3.254 F(xclusi)-.15 E -.15(ve)-.25 G +5.754(.T).15 G .754(he compatibility le)-5.754 F -.15(ve)-.25 G 3.253 +(li).15 G 3.253(si)-3.253 G .753(ntended to allo)-3.253 F 3.253(wu)-.25 +G .753(sers to select be-)-3.253 F(ha)108 196.8 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 208.8 +Q(vior)-.2 E 2.5(.I)-.55 G(t')-2.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 225.6 R 1.457 +(vior that is standard for a particular v)-.2 F 1.456 +(ersion \(e.g., setting)-.15 F F1(compat32)3.956 E F0 .886 +(means that quoting the rhs of the re)108 237.6 R(ge)-.15 E .886 +(xp matching operator quotes special re)-.15 F(ge)-.15 E .887 +(xp characters in the w)-.15 F(ord,)-.1 E(which is def)108 249.6 Q +(ault beha)-.1 E(vior in bash-3.2 and subsequent v)-.2 E(ersions\).)-.15 +E .523(If a user enables, say)108 266.4 R(,)-.65 E F1(compat32)3.023 E +F0 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 +278.4 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 +290.4 R 1.646(ersion of)-.15 F F1(bash)4.146 E F0 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 302.4 R F1([[)3.261 E F0 .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 -148.8 R F1(compat32)4.405 E F0 1.904 +314.4 R F1(compat32)4.405 E F0 1.904 (will enable ASCII-based comparisons as well.)4.405 F(That)6.904 E .295 -(granularity may not be suf)108 160.8 R .296 +(granularity may not be suf)108 326.4 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 172.8 Q 5(.R)-.65 G(ead the documentation for a particular \ +F(fully)108 338.4 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 189.6 R 3.032(ws)-.25 G .531(hell v)-3.032 -F(ariable:)-.25 E/F2 9/Times-Bold@0 SF -.27(BA)3.031 G(SH_COMP).27 E --.855(AT)-.666 G/F3 9/Times-Roman@0 SF(.).855 E F0 .531(The v)5.031 F +(Bash-4.3 introduced a ne)108 355.2 R 3.032(ws)-.25 G .531(hell v)-3.032 +F(ariable:)-.25 E/F4 9/Times-Bold@0 SF -.27(BA)3.031 G(SH_COMP).27 E +-.855(AT)-.666 G/F5 9/Times-Roman@0 SF(.).855 E F0 .531(The v)5.031 F .531(alue assigned to this v)-.25 F .531(ariable \(a decimal)-.25 F -.15 -(ve)108 201.6 S .107(rsion number lik).15 F 2.607(e4)-.1 G .107 +(ve)108 367.2 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 F1(compat) -2.608 E/F4 10/Times-Italic@0 SF(NN)A F0 .108(option, lik)2.608 F 2.608 -(e4)-.1 G .108(2\) determines the com-)-2.608 F(patibility le)108 213.6 -Q -.15(ve)-.25 G(l.).15 E .388(Starting with bash-4.4, Bash has be)108 -230.4 R .388(gun deprecating older compatibility le)-.15 F -.15(ve)-.25 -G 2.887(ls. Ev).15 F(entually)-.15 E 2.887(,t)-.65 G .387 -(he options will)-2.887 F(be remo)108 242.4 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 F2 -.27(BA)2.5 G -(SH_COMP).27 E -.855(AT)-.666 G F3(.).855 E F0 1.163 -(Bash-5.0 is the \214nal v)108 259.2 R 1.163 -(ersion for which there will be an indi)-.15 F 1.164 +2.608 E F2(NN)A F0 .108(option, lik)2.608 F 2.608(e4)-.1 G .108 +(2\) determines the com-)-2.608 F(patibility le)108 379.2 Q -.15(ve)-.25 +G(l.).15 E .388(Starting with bash-4.4, Bash has be)108 396 R .388 +(gun deprecating older compatibility le)-.15 F -.15(ve)-.25 G 2.887 +(ls. Ev).15 F(entually)-.15 E 2.887(,t)-.65 G .387(he options will) +-2.887 F(be remo)108 408 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 F4 -.27(BA)2.5 G(SH_COMP).27 E -.855 +(AT)-.666 G F5(.).855 E F0 1.163(Bash-5.0 is the \214nal v)108 424.8 R +1.163(ersion for which there will be an indi)-.15 F 1.164 (vidual shopt option for the pre)-.25 F 1.164(vious v)-.25 F(ersion.) --.15 E(Users should use)108 271.2 Q F2 -.27(BA)2.5 G(SH_COMP).27 E -.855 +-.15 E(Users should use)108 436.8 Q F4 -.27(BA)2.5 G(SH_COMP).27 E -.855 (AT)-.666 G F0(on bash-5.0 and later v)3.105 E(ersions.)-.15 E 1.614 -(The follo)108 288 R 1.613(wing table describes the beha)-.25 F 1.613 +(The follo)108 453.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 F1(compat)108 300 Q F4(NN)A F0 -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 F4(NN)3.686 E F0 1.186 -(using one of the follo)3.686 F(wing)-.25 E 3.807(mechanisms. F)108 312 -R 1.307(or v)-.15 F 1.307 +4.113(ls).15 G 4.113(etting. The)-4.113 F F1(compat)108 465.6 Q F2(NN)A +F0 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 F2(NN)3.686 E F0 1.186 +(using one of the follo)3.686 F(wing)-.25 E 3.807(mechanisms. F)108 +477.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 F1 -(compat)108 324 Q F4(NN)A F0 .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 F2 -.27(BA)3.002 G(SH_COMP).27 E -.855(AT)-.666 G F0 -.25(va)3.607 G -.502(riable is preferred, and it).25 F -(is required for bash-5.1 and later v)108 336 Q(ersions.)-.15 E F1 -(compat31)108 352.8 Q F0<83>144 364.8 Q(quoting the rhs of the)180 364.8 +(compat)108 489.6 Q F2(NN)A F0 .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 F4 -.27(BA)3.002 G(SH_COMP).27 E -.855(AT)-.666 G F0 -.25(va) +3.607 G .502(riable is preferred, and it).25 F +(is required for bash-5.1 and later v)108 501.6 Q(ersions.)-.15 E F1 +(compat31)108 518.4 Q F0<83>144 530.4 Q(quoting the rhs of the)180 530.4 Q F1([[)2.5 E F0(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 \(=~\) has no special ef)-2.5 E(fect) --.25 E F1(compat32)108 381.6 Q F0<83>144 393.6 Q .35 -(interrupting a command list such as "a ; b ; c" causes the e)180 393.6 +-.25 E F1(compat32)108 547.2 Q F0<83>144 559.2 Q .35 +(interrupting a command list such as "a ; b ; c" causes the e)180 559.2 R -.15(xe)-.15 G .35(cution of the ne).15 F .35(xt command)-.15 F .017 -(in the list \(in bash-4.0 and later v)180 405.6 R .018 +(in the list \(in bash-4.0 and later v)180 571.2 R .018 (ersions, the shell acts as if it recei)-.15 F -.15(ve)-.25 G 2.518(dt) .15 G .018(he interrupt, so in-)-2.518 F -(terrupting one command in a list aborts the e)180 417.6 Q -.15(xe)-.15 -G(cution of the entire list\)).15 E F1(compat40)108 434.4 Q F0<83>144 -446.4 Q(the)180 446.4 Q F1(<)2.674 E F0(and)2.674 E F1(>)2.673 E F0 .173 +(terrupting one command in a list aborts the e)180 583.2 Q -.15(xe)-.15 +G(cution of the entire list\)).15 E F1(compat40)108 600 Q F0<83>144 612 +Q(the)180 612 Q F1(<)2.674 E F0(and)2.674 E F1(>)2.673 E F0 .173 (operators to the)2.673 F F1([[)2.673 E F0 .173 (command do not consider the current locale when compar)2.673 F(-)-.2 E -.067(ing strings; the)180 458.4 R 2.567(yu)-.15 G .067 -(se ASCII ordering.)-2.567 F .068(Bash v)5.068 F .068 -(ersions prior to bash-4.1 use ASCII collation)-.15 F(and)180 470.4 Q F4 +.067(ing strings; the)180 624 R 2.567(yu)-.15 G .067(se ASCII ordering.) +-2.567 F .068(Bash v)5.068 F .068 +(ersions prior to bash-4.1 use ASCII collation)-.15 F(and)180 636 Q F2 (str)4.743 E(cmp)-.37 E F0 1.903 (\(3\); bash-4.1 and later use the current locale').19 F 4.402(sc)-.55 G -1.902(ollation sequence and)-4.402 F F4(str)4.742 E(-)-.2 E(coll)180 -482.4 Q F0(\(3\).).51 E F1(compat41)108 499.2 Q F0<83>144 511.2 Q(in)180 -511.2 Q F4(posix)3.79 E F0(mode,)3.79 E F1(time)3.79 E F0 1.29 -(may be follo)3.79 F 1.29 -(wed by options and still be recognized as a reserv)-.25 F(ed)-.15 E -.1 -(wo)180 523.2 S(rd \(this is POSIX interpretation 267\)).1 E<83>144 -535.2 Q(in)180 535.2 Q F4(posix)2.709 E F0 .208 +1.902(ollation sequence and)-4.402 F F2(str)4.742 E(-)-.2 E(coll)180 648 +Q F0(\(3\).).51 E F1(compat41)108 664.8 Q F0<83>144 676.8 Q(in)180 676.8 +Q F2(posix)3.79 E F0(mode,)3.79 E F1(time)3.79 E F0 1.29(may be follo) +3.79 F 1.29(wed by options and still be recognized as a reserv)-.25 F +(ed)-.15 E -.1(wo)180 688.8 S(rd \(this is POSIX interpretation 267\)).1 +E<83>144 700.8 Q(in)180 700.8 Q F2(posix)2.709 E F0 .208 (mode, the parser requires that an e)2.709 F -.15(ve)-.25 G 2.708(nn).15 -G .208(umber of single quotes occur in the)-2.708 F F4(wor)2.708 E(d) --.37 E F0 .281(portion of a double-quoted parameter e)180 547.2 R .282 +G .208(umber of single quotes occur in the)-2.708 F F2(wor)2.708 E(d) +-.37 E F0 .281(portion of a double-quoted parameter e)180 712.8 R .282 (xpansion and treats them specially)-.15 F 2.782(,s)-.65 G 2.782(ot) -2.782 G .282(hat charac-)-2.782 F(ters within the single quotes are co\ -nsidered quoted \(this is POSIX interpretation 221\))180 559.2 Q F1 -(compat42)108 576 Q F0<83>144 588 Q 1.056(the replacement string in dou\ -ble-quoted pattern substitution does not under)180 588 R 1.055 -(go quote re-)-.18 F(mo)180 600 Q -.25(va)-.15 G(l, as it does in v).25 -E(ersions after bash-4.2)-.15 E<83>144 612 Q .021 -(in posix mode, single quotes are considered special when e)180 612 R -.021(xpanding the)-.15 F F4(wor)2.521 E(d)-.37 E F0 .021(portion of a) -2.521 F .018(double-quoted parameter e)180 624 R .017 +nsidered quoted \(this is POSIX interpretation 221\))180 724.8 Q +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(26)190.95 E 0 Cg EP +%%Page: 27 27 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 +(TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 +E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10/Times-Bold@0 SF(compat42)108 84 Q F0 +<83>144 96 Q 1.056(the replacement string in double-quoted pattern subs\ +titution does not under)180 96 R 1.055(go quote re-)-.18 F(mo)180 108 Q +-.25(va)-.15 G(l, as it does in v).25 E(ersions after bash-4.2)-.15 E +<83>144 120 Q .021 +(in posix mode, single quotes are considered special when e)180 120 R +.021(xpanding the)-.15 F/F2 10/Times-Italic@0 SF(wor)2.521 E(d)-.37 E F0 +.021(portion of a)2.521 F .018(double-quoted parameter e)180 132 R .017 (xpansion and can be used to quote a closing brace or other spe-)-.15 F .998(cial character \(this is part of POSIX interpretation 221\); in la\ -ter v)180 636 R .999(ersions, single quotes)-.15 F -(are not special within double-quoted w)180 648 Q(ord e)-.1 E(xpansions) --.15 E F1(compat43)108 664.8 Q F0<83>144 676.8 Q 1.071 -(the shell does not print a w)180 676.8 R 1.07 +ter v)180 144 R .999(ersions, single quotes)-.15 F +(are not special within double-quoted w)180 156 Q(ord e)-.1 E(xpansions) +-.15 E F1(compat43)108 172.8 Q F0<83>144 184.8 Q 1.071 +(the shell does not print a w)180 184.8 R 1.07 (arning message if an attempt is made to use a quoted com-)-.1 F .71 -(pound assignment as an ar)180 688.8 R .711 +(pound assignment as an ar)180 196.8 R .711 (gument to declare \(e.g., declare -a foo=\010\(1 2\)\010\). Later v) --.18 F(ersions)-.15 E -.1(wa)180 700.8 S -(rn that this usage is deprecated).1 E<83>144 712.8 Q -.1(wo)180 712.8 S +-.18 F(ersions)-.15 E -.1(wa)180 208.8 S +(rn that this usage is deprecated).1 E<83>144 220.8 Q -.1(wo)180 220.8 S .501(rd e).1 F .501(xpansion errors are considered non-f)-.15 F .501 -(atal errors that cause the current command to)-.1 F -.1(fa)180 724.8 S +(atal errors that cause the current command to)-.1 F -.1(fa)180 232.8 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(GNU Bash 5.2)72 768 Q(2021 No)136.385 -E -.15(ve)-.15 G(mber 22).15 E(26)185.545 E 0 Cg EP -%%Page: 27 27 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 87.61 -(TINS\(1\) General)-.92 F(Commands Manual)2.5 E -.35(BA)90.11 G(SH_B).35 -E(UIL)-.1 E(TINS\(1\))-.92 E(shell to e)180 84 Q(xit\))-.15 E<83>144 96 -Q .355(when e)180 96 R -.15(xe)-.15 G .354 +(atal errors that cause the)-.1 F(shell to e)180 244.8 Q(xit\))-.15 E +<83>144 256.8 Q .355(when e)180 256.8 R -.15(xe)-.15 G .354 (cuting a shell function, the loop state \(while/until/etc.\)).15 F .354 -(is not reset, so)5.354 F/F1 10/Times-Bold@0 SF(br)2.854 E(eak)-.18 E F0 -(or)2.854 E F1(continue)180 108 Q F0 .052 +(is not reset, so)5.354 F F1(br)2.854 E(eak)-.18 E F0(or)2.854 E F1 +(continue)180 268.8 Q F0 .052 (in that function will break or continue loops in the calling conte) 2.552 F .053(xt. Bash-4.4 and)-.15 F(later reset the loop state to pre) -180 120 Q -.15(ve)-.25 G(nt this).15 E F1(compat44)108 136.8 Q F0<83>144 -148.8 Q .719(the shell sets up the v)180 148.8 R .719(alues used by)-.25 -F/F2 9/Times-Bold@0 SF -.27(BA)3.219 G(SH_ARGV).27 E F0(and)2.969 E F2 --.27(BA)3.219 G(SH_ARGC).27 E F0 .719(so the)2.969 F 3.218(yc)-.15 G -.718(an e)-3.218 F(xpand)-.15 E(to the shell')180 160.8 Q 2.5(sp)-.55 G +180 280.8 Q -.15(ve)-.25 G(nt this).15 E F1(compat44)108 297.6 Q F0<83> +144 309.6 Q .719(the shell sets up the v)180 309.6 R .719(alues used by) +-.25 F/F3 9/Times-Bold@0 SF -.27(BA)3.219 G(SH_ARGV).27 E F0(and)2.969 E +F3 -.27(BA)3.219 G(SH_ARGC).27 E F0 .719(so the)2.969 F 3.218(yc)-.15 G +.718(an e)-3.218 F(xpand)-.15 E(to the shell')180 321.6 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 172.8 Q -2.634(as)180 172.8 S .134(ubshell inherits loops from its parent conte) +(xtended deb)-2.65 E(ugging mode is not enabled)-.2 E<83>144 333.6 Q +2.634(as)180 333.6 S .134(ubshell inherits loops from its parent conte) -2.634 F .135(xt, so)-.15 F F1(br)2.635 E(eak)-.18 E F0(or)2.635 E F1 (continue)2.635 E F0 .135(will cause the sub-)2.635 F(shell to e)180 -184.8 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 196.8 Q -.25(va) -180 196.8 S .619(riable assignments preceding b).25 F .618(uiltins lik) +345.6 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 357.6 Q -.25(va) +180 357.6 S .619(riable assignments preceding b).25 F .618(uiltins lik) -.2 F(e)-.1 E F1(export)3.118 E F0(and)3.118 E F1 -.18(re)3.118 G (adonly).18 E F0 .618(that set attrib)3.118 F .618(utes con-)-.2 F .119 -(tinue to af)180 208.8 R .119(fect v)-.25 F .119 +(tinue to af)180 369.6 R .119(fect v)-.25 F .119 (ariables with the same name in the calling en)-.25 F .12(vironment e) -.4 F -.15(ve)-.25 G 2.62(ni).15 G 2.62(ft)-2.62 G .12(he shell is)-2.62 -F(not in posix mode)180 220.8 Q F1(compat50)108 237.6 Q F0<83>144 249.6 -Q 1.209(Bash-5.1 changed the w)180 249.6 R(ay)-.1 E F2($RANDOM)3.709 E +F(not in posix mode)180 381.6 Q F1(compat50)108 398.4 Q F0<83>144 410.4 +Q 1.209(Bash-5.1 changed the w)180 410.4 R(ay)-.1 E F3($RANDOM)3.709 E F0 1.209(is generated to introduce slightly more random-)3.459 F 1.018 -(ness. If the shell compatibility le)180 261.6 R -.15(ve)-.25 G 3.518 +(ness. If the shell compatibility le)180 422.4 R -.15(ve)-.25 G 3.518 (li).15 G 3.518(ss)-3.518 G 1.018(et to 50 or lo)-3.518 F(wer)-.25 E 3.518(,i)-.4 G 3.518(tr)-3.518 G -2.15 -.25(ev e)-3.518 H 1.019 -(rts to the method from).25 F .733(bash-5.0 and pre)180 273.6 R .733 +(rts to the method from).25 F .733(bash-5.0 and pre)180 434.4 R .733 (vious v)-.25 F .732 (ersions, so seeding the random number generator by assigning a)-.15 F --.25(va)180 285.6 S(lue to).25 E F2(RANDOM)2.5 E F0 -(will produce the same sequence as in bash-5.0)2.25 E<83>144 297.6 Q -.695(If the command hash table is empty)180 297.6 R 3.196(,b)-.65 G .696 +-.25(va)180 446.4 S(lue to).25 E F3(RANDOM)2.5 E F0 +(will produce the same sequence as in bash-5.0)2.25 E<83>144 458.4 Q +.695(If the command hash table is empty)180 458.4 R 3.196(,b)-.65 G .696 (ash v)-3.196 F .696(ersions prior to bash-5.1 printed an informa-)-.15 -F 1.321(tional message to that ef)180 309.6 R 1.321(fect, e)-.25 F -.15 +F 1.321(tional message to that ef)180 470.4 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 321.6 Q F12.5 E F0 -(option is supplied.)2.5 E F1(compat51)108 338.4 Q F0<83>144 350.4 Q -(The)180 350.4 Q F1(unset)2.954 E F0 -.2(bu)2.954 G .454 +(Bash-5.1 suppresses that message when the)180 482.4 Q F12.5 E F0 +(option is supplied.)2.5 E F1(compat51)108 499.2 Q F0<83>144 511.2 Q +(The)180 511.2 Q F1(unset)2.954 E F0 -.2(bu)2.954 G .454 (iltin treats attempts to unset array subscripts).2 F F1(@)2.955 E F0 (and)2.955 E F1(*)2.955 E F0(dif)2.955 E .455(ferently depending)-.25 F -(on whether the array is inde)180 362.4 Q -.15(xe)-.15 G 2.5(do).15 G +(on whether the array is inde)180 523.2 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/F3 10.95 -/Times-Bold@0 SF(SEE ALSO)72 379.2 Q F0(bash\(1\), sh\(1\))108 391.2 Q -(GNU Bash 5.2)72 768 Q(2021 No)136.385 E -.15(ve)-.15 G(mber 22).15 E -(27)185.545 E 0 Cg EP +(ferently than in pre)-.25 E(vious v)-.25 E(ersions.)-.15 E/F4 10.95 +/Times-Bold@0 SF(SEE ALSO)72 540 Q F0(bash\(1\), sh\(1\))108 552 Q +(GNU Bash 5.2)72 768 Q(2023 January 27)141.79 E(27)190.95 E 0 Cg EP %%Trailer end %%EOF diff --git a/doc/rbash.ps b/doc/rbash.ps index feacbd55e..89567bb4b 100644 --- a/doc/rbash.ps +++ b/doc/rbash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 -%%CreationDate: Fri Dec 2 17:01:16 2022 +%%CreationDate: Tue Apr 18 10:26:00 2023 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%DocumentSuppliedResources: procset grops 1.22 4 diff --git a/execute_cmd.c b/execute_cmd.c index bfc76dea3..2a81a037c 100644 --- a/execute_cmd.c +++ b/execute_cmd.c @@ -239,6 +239,8 @@ int executing_builtin = 0; /* Non-zero if we are executing a command list (a;b;c, etc.) */ int executing_list = 0; +int executing_loop = 0; + /* Non-zero if we should defer closing process substitution FDs. */ int retain_fifos = 0; diff --git a/lib/readline/display.c b/lib/readline/display.c index fb10c60a3..bed86490b 100644 --- a/lib/readline/display.c +++ b/lib/readline/display.c @@ -1126,19 +1126,6 @@ rl_redisplay (void) olen = sprintf (obuf, "\\%o", c); - if (lpos + olen >= _rl_screenwidth) - { - temp = _rl_screenwidth - lpos; - CHECK_INV_LBREAKS (); - inv_lbreaks[++newlines] = out + temp; -#if defined (HANDLE_MULTIBYTE) - line_state_invisible->wrapped_line[newlines] = _rl_wrapped_multicolumn; -#endif - lpos = olen - temp; - } - else - lpos += olen; - for (temp = 0; temp < olen; temp++) { invis_addc (&out, obuf[temp], cur_face); @@ -2043,6 +2030,8 @@ update_line (char *old, char *old_face, char *new, char *new_face, int current_l #if defined (HANDLE_MULTIBYTE) /* Find the last character that is the same between the two lines. This bounds the region that needs to change. */ + /* In this case, `last character' means the one farthest from the end of + the line. */ if (mb_cur_max > 1 && rl_byte_oriented == 0) { ols = old + _rl_find_prev_mbchar (old, oe - old, MB_FIND_ANY); @@ -2059,7 +2048,7 @@ update_line (char *old, char *old_face, char *new, char *new_face, int current_l *olsf != *nlsf) break; - if (*ols == ' ') + if (*ols != ' ') wsatend = 0; ols = old + _rl_find_prev_mbchar (old, ols - old, MB_FIND_ANY); @@ -2128,7 +2117,23 @@ update_line (char *old, char *old_face, char *new, char *new_face, int current_l /* We have moved up to a new screen line. This line may or may not have invisible characters on it, but we do our best to recalculate visible_wrap_offset based on what we know. */ - if (current_line == 0) + /* This first clause handles the case where the prompt has been + recalculated (e.g., by rl_message) but the old prompt is still on + the visible line because we haven't overwritten it yet. We want + to somehow use the old prompt information, but we only want to do + this once. */ + if (current_line == 0 && saved_local_prompt && old[0] == saved_local_prompt[0] && memcmp (old, saved_local_prompt, saved_local_length) == 0) + visible_wrap_offset = saved_invis_chars_first_line; + /* This clause handles the opposite: the prompt has been restored (e.g., + by rl_clear_message) but the old saved_local_prompt (now NULL, so we + can't directly check it) is still on the visible line because we + haven't overwritten it yet. We guess that there aren't any invisible + characters in any of the prompts we put in with rl_message */ + else if (current_line == 0 && local_prompt && new[0] == local_prompt[0] && + (memcmp (new, local_prompt, local_prompt_len) == 0) && + (memcmp (old, local_prompt, local_prompt_len) != 0)) + visible_wrap_offset = 0; + else if (current_line == 0) visible_wrap_offset = prompt_invis_chars_first_line; /* XXX */ #if 0 /* XXX - not yet */ else if (current_line == prompt_last_screen_line && wrap_offset > prompt_invis_chars_first_line) diff --git a/lib/readline/doc/rltech.texi b/lib/readline/doc/rltech.texi index 52f444a61..5aa045326 100644 --- a/lib/readline/doc/rltech.texi +++ b/lib/readline/doc/rltech.texi @@ -2643,7 +2643,7 @@ com_list (char *arg) if (!arg) arg = ""; - sprintf (syscom, "ls -FClg %s", arg); + snprintf (syscom, sizeof (syscom), "ls -FClg %s", arg); return (system (syscom)); @} @@ -2655,9 +2655,9 @@ com_view (char *arg) #if defined (__MSDOS__) /* more.com doesn't grok slashes in pathnames */ - sprintf (syscom, "less %s", arg); + snprintf (syscom, sizeof (syscom), "less %s", arg); #else - sprintf (syscom, "more %s", arg); + snprintf (syscom, sizeof (syscom), "more %s", arg); #endif return (system (syscom)); @} diff --git a/lib/readline/examples/fileman.c b/lib/readline/examples/fileman.c index c14fe3bf5..df579450d 100644 --- a/lib/readline/examples/fileman.c +++ b/lib/readline/examples/fileman.c @@ -292,7 +292,7 @@ com_list (arg) if (!arg) arg = ""; - sprintf (syscom, "ls -FClg %s", arg); + snprintf (syscom, sizeof (syscom), "ls -FClg %s", arg); return (system (syscom)); } @@ -305,9 +305,9 @@ com_view (arg) #if defined (__MSDOS__) /* more.com doesn't grok slashes in pathnames */ - sprintf (syscom, "less %s", arg); + snprintf (syscom, sizeof (syscom), "less %s", arg); #else - sprintf (syscom, "more %s", arg); + snprintf (syscom, sizeof (syscom), "more %s", arg); #endif return (system (syscom)); } diff --git a/lib/readline/histexpand.c b/lib/readline/histexpand.c index f2eb18f64..db344b497 100644 --- a/lib/readline/histexpand.c +++ b/lib/readline/histexpand.c @@ -730,7 +730,7 @@ history_expand_internal (const char *string, int start, int qc, int *end_index_p /* If `&' appears in the rhs, it's supposed to be replaced with the lhs. */ - if (member ('&', subst_rhs)) + if (subst_lhs && member ('&', subst_rhs)) postproc_subst_rhs (); } else diff --git a/lib/readline/rlprivate.h b/lib/readline/rlprivate.h index 5c0592b9c..573724df7 100644 --- a/lib/readline/rlprivate.h +++ b/lib/readline/rlprivate.h @@ -526,6 +526,7 @@ extern int _rl_menu_complete_prefix_first; /* display.c */ extern int _rl_vis_botlin; extern int _rl_last_c_pos; +extern int _rl_last_v_pos; extern int _rl_suppress_redisplay; extern int _rl_want_redisplay; diff --git a/lib/readline/text.c b/lib/readline/text.c index 62e4da2a7..356cac5f2 100644 --- a/lib/readline/text.c +++ b/lib/readline/text.c @@ -1229,11 +1229,12 @@ _rl_rubout_char (int count, int key) c = rl_line_buffer[--rl_point]; rl_delete_text (rl_point, orig_point); /* The erase-at-end-of-line hack is of questionable merit now. */ - if (rl_point == rl_end && ISPRINT ((unsigned char)c) && _rl_last_c_pos) + if (rl_point == rl_end && ISPRINT ((unsigned char)c) && _rl_last_c_pos && _rl_last_v_pos == 0) { int l; l = rl_character_len (c, rl_point); - _rl_erase_at_end_of_line (l); + if (_rl_last_c_pos >= l) + _rl_erase_at_end_of_line (l); } } else diff --git a/lib/readline/vi_mode.c b/lib/readline/vi_mode.c index 7396e316a..a49edaae0 100644 --- a/lib/readline/vi_mode.c +++ b/lib/readline/vi_mode.c @@ -1090,6 +1090,7 @@ _rl_vi_arg_dispatch (int c) } else { + rl_restore_prompt (); rl_clear_message (); rl_stuff_char (key); return 0; /* done */ @@ -1320,7 +1321,7 @@ rl_domove_read_callback (_rl_vimotion_cxt *m) /* Readine vi motion char starting numeric argument */ else if (_rl_digit_p (c) && RL_ISSTATE (RL_STATE_CALLBACK) && RL_ISSTATE (RL_STATE_VIMOTION) && (RL_ISSTATE (RL_STATE_NUMERICARG) == 0)) { - RL_SETSTATE (RL_STATE_NUMERICARG); + _rl_arg_init (); return (_rl_vi_arg_dispatch (c)); } #endif @@ -1330,7 +1331,7 @@ rl_domove_read_callback (_rl_vimotion_cxt *m) save = rl_numeric_arg; rl_numeric_arg = _rl_digit_value (c); rl_explicit_arg = 1; - RL_SETSTATE (RL_STATE_NUMERICARG); + _rl_arg_init (); rl_digit_loop1 (); rl_numeric_arg *= save; c = rl_vi_domove_getchar (m); diff --git a/lib/sh/strlcpy.c b/lib/sh/strlcpy.c index 9781c3f40..787e4c36e 100644 --- a/lib/sh/strlcpy.c +++ b/lib/sh/strlcpy.c @@ -23,7 +23,7 @@ #include size_t -strlcpy(const char *dest, const const char *src, size_t size) +strlcpy(char *dest, const const char *src, size_t size) { size_t ret; -- 2.47.2