12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239 |
- # SOME DESCRIPTIVE TITLE
- # Copyright (C) YEAR Free Software Foundation, Inc.
- # This file is distributed under the same license as the PACKAGE package.
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
- #
- #, fuzzy
- msgid ""
- msgstr ""
- "Project-Id-Version: PACKAGE VERSION\n"
- "POT-Creation-Date: 2018-01-24 17:11+0100\n"
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
- "Language-Team: LANGUAGE <LL@li.org>\n"
- "Language: \n"
- "MIME-Version: 1.0\n"
- "Content-Type: text/plain; charset=CHARSET\n"
- "Content-Transfer-Encoding: 8bit\n"
- #. type: title
- #: ./bashref.texi:4 ./bashref.texi:41
- #, no-wrap
- msgid "Bash Reference Manual"
- msgstr ""
- #. type: include
- #: ./bashref.texi:6
- #, no-wrap
- msgid "version.texi"
- msgstr ""
- #. type: copying
- #: ./bashref.texi:12
- msgid ""
- "This text is a brief description of the features that are present in the "
- "Bash shell (version @value{VERSION}, @value{UPDATED})."
- msgstr ""
- #. type: ifnottex
- #: ./bashref.texi:16 ./bashref.texi:67
- msgid ""
- "This is Edition @value{EDITION}, last updated @value{UPDATED}, of @cite{The "
- "GNU Bash Reference Manual}, for @code{Bash}, Version @value{VERSION}."
- msgstr ""
- #. type: copying
- #: ./bashref.texi:18
- msgid "Copyright @copyright{} 1988--2016 Free Software Foundation, Inc."
- msgstr ""
- #. type: quotation
- #: ./bashref.texi:26
- msgid ""
- "Permission is granted to copy, distribute and/or modify this document under "
- "the terms of the GNU Free Documentation License, Version 1.3 or any later "
- "version published by the Free Software Foundation; with no Invariant "
- "Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the "
- "license is included in the section entitled ``GNU Free Documentation "
- "License''."
- msgstr ""
- #. type: dircategory
- #: ./bashref.texi:33
- #, no-wrap
- msgid "Basics"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:36
- msgid "Bash: (bash)"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:36
- msgid "The GNU Bourne-Again SHell."
- msgstr ""
- #. type: subtitle
- #: ./bashref.texi:42
- #, no-wrap
- msgid "Reference Documentation for Bash"
- msgstr ""
- #. type: subtitle
- #: ./bashref.texi:43
- #, no-wrap
- msgid "Edition @value{EDITION}, for @code{Bash} Version @value{VERSION}."
- msgstr ""
- #. type: subtitle
- #: ./bashref.texi:44
- #, no-wrap
- msgid "@value{UPDATED-MONTH}"
- msgstr ""
- #. type: author
- #: ./bashref.texi:45
- #, no-wrap
- msgid "Chet Ramey, Case Western Reserve University"
- msgstr ""
- #. type: author
- #: ./bashref.texi:46
- #, no-wrap
- msgid "Brian Fox, Free Software Foundation"
- msgstr ""
- #. type: node
- #: ./bashref.texi:57
- #, no-wrap
- msgid "Top"
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:57 ./bashref.texi:100 ./bashref.texi:103 ./bashref.texi:104
- #, no-wrap
- msgid "Introduction"
- msgstr ""
- #. type: node
- #: ./bashref.texi:57 ./bashref.texi:57
- #, no-wrap
- msgid "(dir)"
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:58 ./bashref.texi:100 ./bashref.texi:6157 ./bashref.texi:6158
- #, no-wrap
- msgid "Bash Features"
- msgstr ""
- #. type: ifnottex
- #: ./bashref.texi:63
- msgid ""
- "This text is a brief description of the features that are present in the "
- "Bash shell (version @value{VERSION}, @value{UPDATED}). The Bash home page "
- "is @url{http://www.gnu.org/software/bash/}."
- msgstr ""
- #. type: ifnottex
- #: ./bashref.texi:75
- msgid ""
- "Bash contains features that appear in other popular shells, and some "
- "features that only appear in Bash. Some of the shells that Bash has "
- "borrowed concepts from are the Bourne Shell (@file{sh}), the Korn Shell "
- "(@file{ksh}), and the C-shell (@file{csh} and its successor, @file{tcsh}). "
- "The following menu breaks the features up into categories, noting which "
- "features were inspired by other shells and which are specific to Bash."
- msgstr ""
- #. type: ifnottex
- #: ./bashref.texi:79
- msgid ""
- "This manual is meant as a brief introduction to features found in Bash. The "
- "Bash manual page should be used as the definitive reference on shell "
- "behavior."
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "An introduction to the shell."
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:100 ./bashref.texi:191 ./bashref.texi:192
- #, no-wrap
- msgid "Definitions"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Some definitions used in the rest of this manual."
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:100 ./bashref.texi:305 ./bashref.texi:306
- #, no-wrap
- msgid "Basic Shell Features"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "The shell \"building blocks\"."
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:100 ./bashref.texi:3229 ./bashref.texi:3230
- #, no-wrap
- msgid "Shell Builtin Commands"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Commands that are a part of the shell."
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:100 ./bashref.texi:5377 ./bashref.texi:5378
- #, no-wrap
- msgid "Shell Variables"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Variables used or set by Bash."
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Features found only in Bash."
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:100 ./bashref.texi:7622 ./bashref.texi:7623
- #, no-wrap
- msgid "Job Control"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "What job control is and how Bash allows you to use it."
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Command Line Editing"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Chapter describing the command line editing features."
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Using History Interactively"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Command History Expansion"
- msgstr ""
- #. type: chapter
- #: ./bashref.texi:100 ./bashref.texi:7918 ./bashref.texi:7919
- #, no-wrap
- msgid "Installing Bash"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "How to build and install Bash on your system."
- msgstr ""
- #. type: appendix
- #: ./bashref.texi:100 ./bashref.texi:8427 ./bashref.texi:8428
- #, no-wrap
- msgid "Reporting Bugs"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "How to report bugs in Bash."
- msgstr ""
- #. type: appendix
- #: ./bashref.texi:100 ./bashref.texi:8466 ./bashref.texi:8467
- #, no-wrap
- msgid "Major Differences From The Bourne Shell"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid ""
- "A terse list of the differences between Bash and historical versions of "
- "/bin/sh."
- msgstr ""
- #. type: appendix
- #: ./bashref.texi:100 ./bashref.texi:8934 ./bashref.texi:8935
- #, no-wrap
- msgid "GNU Free Documentation License"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Copying and sharing this documentation."
- msgstr ""
- #. type: appendix
- #: ./bashref.texi:100 ./bashref.texi:8939 ./bashref.texi:8940
- #, no-wrap
- msgid "Indexes"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:100
- msgid "Various indexes for this manual."
- msgstr ""
- #. type: section
- #: ./bashref.texi:108 ./bashref.texi:110 ./bashref.texi:111
- #, no-wrap
- msgid "What is Bash?"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:108
- msgid "A short description of Bash."
- msgstr ""
- #. type: section
- #: ./bashref.texi:108 ./bashref.texi:136 ./bashref.texi:137
- #, no-wrap
- msgid "What is a shell?"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:108
- msgid "A brief introduction to shells."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:120
- msgid ""
- "Bash is the shell, or command language interpreter, for the @sc{gnu} "
- "operating system. The name is an acronym for the @samp{Bourne-Again SHell}, "
- "a pun on Stephen Bourne, the author of the direct ancestor of the current "
- "Unix shell @code{sh}, which appeared in the Seventh Edition Bell Labs "
- "Research version of Unix."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:128
- msgid ""
- "Bash is largely compatible with @code{sh} and incorporates useful features "
- "from the Korn shell @code{ksh} and the C shell @code{csh}. It is intended "
- "to be a conformant implementation of the @sc{ieee} @sc{posix} Shell and "
- "Tools portion of the @sc{ieee} @sc{posix} specification (@sc{ieee} Standard "
- "1003.1). It offers functional improvements over @code{sh} for both "
- "interactive and programming use."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:135
- msgid ""
- "While the @sc{gnu} operating system provides other shells, including a "
- "version of @code{csh}, Bash is the default shell. Like other @sc{gnu} "
- "software, Bash is quite portable. It currently runs on nearly every version "
- "of Unix and a few other operating systems @minus{} independently-supported "
- "ports exist for @sc{ms-dos}, @sc{os/2}, and Windows platforms."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:142
- msgid ""
- "At its base, a shell is simply a macro processor that executes commands. "
- "The term macro processor means functionality where text and symbols are "
- "expanded to create larger expressions."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:152
- msgid ""
- "A Unix shell is both a command interpreter and a programming language. As a "
- "command interpreter, the shell provides the user interface to the rich set "
- "of @sc{gnu} utilities. The programming language features allow these "
- "utilities to be combined. Files containing commands can be created, and "
- "become commands themselves. These new commands have the same status as "
- "system commands in directories such as @file{/bin}, allowing users or groups "
- "to establish custom environments to automate their common tasks."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:157
- msgid ""
- "Shells may be used interactively or non-interactively. In interactive mode, "
- "they accept input typed from the keyboard. When executing "
- "non-interactively, shells execute commands read from a file."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:167
- msgid ""
- "A shell allows execution of @sc{gnu} commands, both synchronously and "
- "asynchronously. The shell waits for synchronous commands to complete before "
- "accepting more input; asynchronous commands continue to execute in parallel "
- "with the shell while it reads and executes additional commands. The "
- "@dfn{redirection} constructs permit fine-grained control of the input and "
- "output of those commands. Moreover, the shell allows control over the "
- "contents of commands' environments."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:179
- msgid ""
- "Shells also provide a small set of built-in commands (@dfn{builtins}) "
- "implementing functionality impossible or inconvenient to obtain via separate "
- "utilities. For example, @code{cd}, @code{break}, @code{continue}, and "
- "@code{exec} cannot be implemented outside of the shell because they directly "
- "manipulate the shell itself. The @code{history}, @code{getopts}, "
- "@code{kill}, or @code{pwd} builtins, among others, could be implemented in "
- "separate utilities, but they are more convenient to use as builtin "
- "commands. All of the shell builtins are described in subsequent sections."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:184
- msgid ""
- "While executing commands is essential, most of the power (and complexity) of "
- "shells is due to their embedded programming languages. Like any high-level "
- "language, the shell provides variables, flow control constructs, quoting, "
- "and functions."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:190
- msgid ""
- "Shells offer features geared specifically for interactive use rather than to "
- "augment the programming language. These interactive features include job "
- "control, command line editing, command history and aliases. Each of these "
- "features is described in this manual."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:194
- msgid "These definitions are used throughout the remainder of this manual."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:197 ./bashref.texi:198
- #, no-wrap
- msgid "POSIX"
- msgstr ""
- #. type: table
- #: ./bashref.texi:202
- msgid ""
- "A family of open system standards based on Unix. Bash is primarily "
- "concerned with the Shell and Utilities portion of the @sc{posix} 1003.1 "
- "standard."
- msgstr ""
- #. type: item
- #: ./bashref.texi:203
- #, no-wrap
- msgid "blank"
- msgstr ""
- #. type: table
- #: ./bashref.texi:205
- msgid "A space or tab character."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:206 ./bashref.texi:207 ./bashref.texi:3943 ./bashref.texi:3944
- #, no-wrap
- msgid "builtin"
- msgstr ""
- #. type: table
- #: ./bashref.texi:210
- msgid ""
- "A command that is implemented internally by the shell itself, rather than by "
- "an executable program somewhere in the file system."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:211 ./bashref.texi:212
- #, no-wrap
- msgid "control operator"
- msgstr ""
- #. type: table
- #: ./bashref.texi:217
- msgid ""
- "A @code{token} that performs a control function. It is a @code{newline} or "
- "one of the following: @samp{||}, @samp{&&}, @samp{&}, @samp{;}, @samp{;;}, "
- "@samp{;&}, @samp{;;&}, @samp{|}, @samp{|&}, @samp{(}, or @samp{)}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:218 ./bashref.texi:219 ./bashref.texi:3086
- #, no-wrap
- msgid "exit status"
- msgstr ""
- #. type: table
- #: ./bashref.texi:222
- msgid ""
- "The value returned by a command to its caller. The value is restricted to "
- "eight bits, so the maximum value is 255."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:223 ./bashref.texi:224
- #, no-wrap
- msgid "field"
- msgstr ""
- #. type: table
- #: ./bashref.texi:228
- msgid ""
- "A unit of text that is the result of one of the shell expansions. After "
- "expansion, when executing a command, the resulting fields are used as the "
- "command name and arguments."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:229 ./bashref.texi:230
- #, no-wrap
- msgid "filename"
- msgstr ""
- #. type: table
- #: ./bashref.texi:232
- msgid "A string of characters used to identify a file."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:233 ./bashref.texi:234
- #, no-wrap
- msgid "job"
- msgstr ""
- #. type: table
- #: ./bashref.texi:237
- msgid ""
- "A set of processes comprising a pipeline, and any processes descended from "
- "it, that are all in the same process group."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:238 ./bashref.texi:239 ./bashref.texi:7638
- #, no-wrap
- msgid "job control"
- msgstr ""
- #. type: table
- #: ./bashref.texi:242
- msgid ""
- "A mechanism by which users can selectively stop (suspend) and restart "
- "(resume) execution of processes."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:243 ./bashref.texi:244
- #, no-wrap
- msgid "metacharacter"
- msgstr ""
- #. type: table
- #: ./bashref.texi:249
- msgid ""
- "A character that, when unquoted, separates words. A metacharacter is a "
- "@code{space}, @code{tab}, @code{newline}, or one of the following "
- "characters: @samp{|}, @samp{&}, @samp{;}, @samp{(}, @samp{)}, @samp{<}, or "
- "@samp{>}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:250 ./bashref.texi:251
- #, no-wrap
- msgid "name"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:252
- #, no-wrap
- msgid "identifier"
- msgstr ""
- #. type: table
- #: ./bashref.texi:257
- msgid ""
- "A @code{word} consisting solely of letters, numbers, and underscores, and "
- "beginning with a letter or underscore. @code{Name}s are used as shell "
- "variable and function names. Also referred to as an @code{identifier}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:258
- #, no-wrap
- msgid "operator"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:259
- #, no-wrap
- msgid "operator, shell"
- msgstr ""
- #. type: table
- #: ./bashref.texi:263
- msgid ""
- "A @code{control operator} or a @code{redirection operator}. "
- "@xref{Redirections}, for a list of redirection operators. Operators contain "
- "at least one unquoted @code{metacharacter}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:264 ./bashref.texi:265
- #, no-wrap
- msgid "process group"
- msgstr ""
- #. type: table
- #: ./bashref.texi:268
- msgid ""
- "A collection of related processes each having the same process group "
- "@sc{id}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:269 ./bashref.texi:270
- #, no-wrap
- msgid "process group ID"
- msgstr ""
- #. type: table
- #: ./bashref.texi:273
- msgid ""
- "A unique identifier that represents a @code{process group} during its "
- "lifetime."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:274 ./bashref.texi:275
- #, no-wrap
- msgid "reserved word"
- msgstr ""
- #. type: table
- #: ./bashref.texi:279
- msgid ""
- "A @code{word} that has a special meaning to the shell. Most reserved words "
- "introduce shell flow control constructs, such as @code{for} and "
- "@code{while}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:280 ./bashref.texi:281
- #, no-wrap
- msgid "return status"
- msgstr ""
- #. type: table
- #: ./bashref.texi:283
- msgid "A synonym for @code{exit status}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:284 ./bashref.texi:285
- #, no-wrap
- msgid "signal"
- msgstr ""
- #. type: table
- #: ./bashref.texi:288
- msgid ""
- "A mechanism by which a process may be notified by the kernel of an event "
- "occurring in the system."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:289 ./bashref.texi:290 ./bashref.texi:5348
- #, no-wrap
- msgid "special builtin"
- msgstr ""
- #. type: table
- #: ./bashref.texi:293
- msgid ""
- "A shell builtin command that has been classified as special by the "
- "@sc{posix} standard."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:294 ./bashref.texi:295
- #, no-wrap
- msgid "token"
- msgstr ""
- #. type: table
- #: ./bashref.texi:298
- msgid ""
- "A sequence of characters considered a single unit by the shell. It is "
- "either a @code{word} or an @code{operator}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:299 ./bashref.texi:300
- #, no-wrap
- msgid "word"
- msgstr ""
- #. type: table
- #: ./bashref.texi:303
- msgid ""
- "A sequence of characters treated as a unit by the shell. Words may not "
- "include unquoted @code{metacharacters}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:307
- #, no-wrap
- msgid "Bourne shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:315
- msgid ""
- "Bash is an acronym for @samp{Bourne-Again SHell}. The Bourne shell is the "
- "traditional Unix shell originally written by Stephen Bourne. All of the "
- "Bourne shell builtin commands are available in Bash, The rules for "
- "evaluation and quoting are taken from the @sc{posix} specification for the "
- "`standard' Unix shell."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:321
- msgid ""
- "This chapter briefly summarizes the shell's `building blocks': commands, "
- "control structures, shell functions, shell @i{parameters}, shell expansions, "
- "@i{redirections}, which are a way to direct input and output from and to "
- "named files, and how the shell executes commands."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:334 ./bashref.texi:335
- #, no-wrap
- msgid "Shell Syntax"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "What your input means to the shell."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:570 ./bashref.texi:571
- #, no-wrap
- msgid "Shell Commands"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "The types of commands you can use."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:1323 ./bashref.texi:1324
- #, no-wrap
- msgid "Shell Functions"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "Grouping commands by name."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:1450 ./bashref.texi:1451
- #, no-wrap
- msgid "Shell Parameters"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "How the shell stores values."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:1661 ./bashref.texi:1662
- #, no-wrap
- msgid "Shell Expansions"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "How Bash expands parameters and the various expansions available."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:2543 ./bashref.texi:2544
- #, no-wrap
- msgid "Redirections"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "A way to control where input and output go."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:2832 ./bashref.texi:2833
- #, no-wrap
- msgid "Executing Commands"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "What happens when you run a command."
- msgstr ""
- #. type: section
- #: ./bashref.texi:332 ./bashref.texi:3168 ./bashref.texi:3169
- #, no-wrap
- msgid "Shell Scripts"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:332
- msgid "Executing files of shell commands."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:340 ./bashref.texi:357 ./bashref.texi:358
- #, no-wrap
- msgid "Shell Operation"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:340
- msgid "The basic operation of the shell."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:340 ./bashref.texi:398 ./bashref.texi:399
- #, no-wrap
- msgid "Quoting"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:340
- msgid "How to remove the special meaning from characters."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:340 ./bashref.texi:555 ./bashref.texi:556
- #, no-wrap
- msgid "Comments"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:340
- msgid "How to specify comments."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:346
- msgid ""
- "When the shell reads input, it proceeds through a sequence of operations. "
- "If the input indicates the beginning of a comment, the shell ignores the "
- "comment symbol (@samp{#}), and the rest of that line."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:350
- msgid ""
- "Otherwise, roughly speaking, the shell reads its input and divides the input "
- "into words and operators, employing the quoting rules to select which "
- "meanings to assign various words and characters."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:356
- msgid ""
- "The shell then parses these tokens into commands and other constructs, "
- "removes the special meaning of certain words or characters, expands others, "
- "redirects input and output as needed, executes the specified command, waits "
- "for the command's exit status, and makes that exit status available for "
- "further inspection or processing."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:363
- msgid ""
- "The following is a brief description of the shell's operation when it reads "
- "and executes a command. Basically, the shell does the following:"
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:369
- msgid ""
- "Reads its input from a file (@pxref{Shell Scripts}), from a string supplied "
- "as an argument to the @option{-c} invocation option (@pxref{Invoking Bash}), "
- "or from the user's terminal."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:375
- msgid ""
- "Breaks the input into words and operators, obeying the quoting rules "
- "described in @ref{Quoting}. These tokens are separated by "
- "@code{metacharacters}. Alias expansion is performed by this step "
- "(@pxref{Aliases})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:379
- msgid ""
- "Parses the tokens into simple and compound commands (@pxref{Shell "
- "Commands})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:384
- msgid ""
- "Performs the various shell expansions (@pxref{Shell Expansions}), breaking "
- "the expanded tokens into lists of filenames (@pxref{Filename Expansion}) "
- "and commands and arguments."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:388
- msgid ""
- "Performs any necessary redirections (@pxref{Redirections}) and removes the "
- "redirection operators and their operands from the argument list."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:391
- msgid "Executes the command (@pxref{Executing Commands})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:395
- msgid ""
- "Optionally waits for the command to complete and collects its exit status "
- "(@pxref{Exit Status})."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:400
- #, no-wrap
- msgid "quoting"
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:410 ./bashref.texi:430 ./bashref.texi:431
- #, no-wrap
- msgid "Escape Character"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:410
- msgid "How to remove the special meaning from a single character."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:410 ./bashref.texi:439 ./bashref.texi:440
- #, no-wrap
- msgid "Single Quotes"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:410
- msgid "How to inhibit all interpretation of a sequence of characters."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:410 ./bashref.texi:446 ./bashref.texi:447
- #, no-wrap
- msgid "Double Quotes"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:410
- msgid "How to suppress most of the interpretation of a sequence of characters."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:410 ./bashref.texi:474 ./bashref.texi:475
- #, no-wrap
- msgid "ANSI-C Quoting"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:410
- msgid "How to expand ANSI-C sequences in quoted strings."
- msgstr ""
- #. type: node
- #: ./bashref.texi:410 ./bashref.texi:529
- #, no-wrap
- msgid "Locale Translation"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:410
- msgid "How to translate strings into different languages."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:417
- msgid ""
- "Quoting is used to remove the special meaning of certain characters or words "
- "to the shell. Quoting can be used to disable special treatment for special "
- "characters, to prevent reserved words from being recognized as such, and to "
- "prevent parameter expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:426
- msgid ""
- "Each of the shell metacharacters (@pxref{Definitions}) has special meaning "
- "to the shell and must be quoted if it is to represent itself. When the "
- "command history expansion facilities are being used (@pxref{History "
- "Interaction}), the @var{history expansion} character, usually @samp{!}, must "
- "be quoted to prevent history expansion. @xref{Bash History Facilities}, for "
- "more details concerning history expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:429
- msgid ""
- "There are three quoting mechanisms: the @var{escape character}, single "
- "quotes, and double quotes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:438
- msgid ""
- "A non-quoted backslash @samp{\\} is the Bash escape character. It preserves "
- "the literal value of the next character that follows, with the exception of "
- "@code{newline}. If a @code{\\newline} pair appears, and the backslash "
- "itself is not quoted, the @code{\\newline} is treated as a line continuation "
- "(that is, it is removed from the input stream and effectively ignored)."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:445
- msgid ""
- "Enclosing characters in single quotes (@samp{'}) preserves the literal value "
- "of each character within the quotes. A single quote may not occur between "
- "single quotes, even when preceded by a backslash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:470
- msgid ""
- "Enclosing characters in double quotes (@samp{\"}) preserves the literal "
- "value of all characters within the quotes, with the exception of @samp{$}, "
- "@samp{`}, @samp{\\}, and, when history expansion is enabled, @samp{!}. When "
- "the shell is in @sc{posix} mode (@pxref{Bash POSIX Mode}), the @samp{!} has "
- "no special meaning within double quotes, even when history expansion is "
- "enabled. The characters @samp{$} and @samp{`} retain their special meaning "
- "within double quotes (@pxref{Shell Expansions}). The backslash retains its "
- "special meaning only when followed by one of the following characters: "
- "@samp{$}, @samp{`}, @samp{\"}, @samp{\\}, or @code{newline}. Within double "
- "quotes, backslashes that are followed by one of these characters are "
- "removed. Backslashes preceding characters without a special meaning are "
- "left unmodified. A double quote may be quoted within double quotes by "
- "preceding it with a backslash. If enabled, history expansion will be "
- "performed unless an @samp{!} appearing in double quotes is escaped using a "
- "backslash. The backslash preceding the @samp{!} is not removed."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:473
- msgid ""
- "The special parameters @samp{*} and @samp{@@} have special meaning when in "
- "double quotes (@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:476
- #, no-wrap
- msgid "quoting, ANSI"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:482
- msgid ""
- "Words of the form @code{$'@var{string}'} are treated specially. The word "
- "expands to @var{string}, with backslash-escaped characters replaced as "
- "specified by the ANSI C standard. Backslash escape sequences, if present, "
- "are decoded as follows:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:484 ./bashref.texi:4132 ./bashref.texi:7192
- #, no-wrap
- msgid "\\a"
- msgstr ""
- #. type: table
- #: ./bashref.texi:486 ./bashref.texi:4134
- msgid "alert (bell)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:486 ./bashref.texi:4134
- #, no-wrap
- msgid "\\b"
- msgstr ""
- #. type: table
- #: ./bashref.texi:488 ./bashref.texi:4136
- msgid "backspace"
- msgstr ""
- #. type: item
- #: ./bashref.texi:488 ./bashref.texi:4138 ./bashref.texi:7200
- #, no-wrap
- msgid "\\e"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:489 ./bashref.texi:4139
- #, no-wrap
- msgid "\\E"
- msgstr ""
- #. type: table
- #: ./bashref.texi:491
- msgid "an escape character (not ANSI C)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:491 ./bashref.texi:4141
- #, no-wrap
- msgid "\\f"
- msgstr ""
- #. type: table
- #: ./bashref.texi:493 ./bashref.texi:4143
- msgid "form feed"
- msgstr ""
- #. type: item
- #: ./bashref.texi:493 ./bashref.texi:4143 ./bashref.texi:7210
- #, no-wrap
- msgid "\\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:495
- msgid "newline"
- msgstr ""
- #. type: item
- #: ./bashref.texi:495 ./bashref.texi:4145 ./bashref.texi:7212
- #, no-wrap
- msgid "\\r"
- msgstr ""
- #. type: table
- #: ./bashref.texi:497 ./bashref.texi:4147
- msgid "carriage return"
- msgstr ""
- #. type: item
- #: ./bashref.texi:497 ./bashref.texi:4147 ./bashref.texi:7217
- #, no-wrap
- msgid "\\t"
- msgstr ""
- #. type: table
- #: ./bashref.texi:499 ./bashref.texi:4149
- msgid "horizontal tab"
- msgstr ""
- #. type: item
- #: ./bashref.texi:499 ./bashref.texi:4149 ./bashref.texi:7227
- #, no-wrap
- msgid "\\v"
- msgstr ""
- #. type: table
- #: ./bashref.texi:501 ./bashref.texi:4151
- msgid "vertical tab"
- msgstr ""
- #. type: item
- #: ./bashref.texi:501 ./bashref.texi:4151 ./bashref.texi:7244
- #, no-wrap
- msgid "\\\\"
- msgstr ""
- #. type: table
- #: ./bashref.texi:503 ./bashref.texi:4153
- msgid "backslash"
- msgstr ""
- #. type: item
- #: ./bashref.texi:503
- #, no-wrap
- msgid "\\'"
- msgstr ""
- #. type: table
- #: ./bashref.texi:505
- msgid "single quote"
- msgstr ""
- #. type: item
- #: ./bashref.texi:505
- #, no-wrap
- msgid "\\\""
- msgstr ""
- #. type: table
- #: ./bashref.texi:507
- msgid "double quote"
- msgstr ""
- #. type: item
- #: ./bashref.texi:507
- #, no-wrap
- msgid "\\?"
- msgstr ""
- #. type: table
- #: ./bashref.texi:509
- msgid "question mark"
- msgstr ""
- #. type: item
- #: ./bashref.texi:509 ./bashref.texi:7242
- #, no-wrap
- msgid "\\@var{nnn}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:512
- msgid ""
- "the eight-bit character whose value is the octal value @var{nnn} (one to "
- "three digits)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:512 ./bashref.texi:4156
- #, no-wrap
- msgid "\\x@var{HH}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:515 ./bashref.texi:4159
- msgid ""
- "the eight-bit character whose value is the hexadecimal value @var{HH} (one "
- "or two hex digits)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:515 ./bashref.texi:4159
- #, no-wrap
- msgid "\\u@var{HHHH}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:518 ./bashref.texi:4162
- msgid ""
- "the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value "
- "@var{HHHH} (one to four hex digits)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:518 ./bashref.texi:4162
- #, no-wrap
- msgid "\\U@var{HHHHHHHH}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:521 ./bashref.texi:4165
- msgid ""
- "the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value "
- "@var{HHHHHHHH} (one to eight hex digits)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:521
- #, no-wrap
- msgid "\\c@var{x}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:523
- msgid "a control-@var{x} character"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:528
- msgid ""
- "The expanded result is single-quoted, as if the dollar sign had not been "
- "present."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:530
- #, no-wrap
- msgid "Locale-Specific Translation"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:531
- #, no-wrap
- msgid "localization"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:532
- #, no-wrap
- msgid "internationalization"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:533
- #, no-wrap
- msgid "native languages"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:534
- #, no-wrap
- msgid "translation, native languages"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:542
- msgid ""
- "A double-quoted string preceded by a dollar sign (@samp{$}) will cause the "
- "string to be translated according to the current locale. If the current "
- "locale is @code{C} or @code{POSIX}, the dollar sign is ignored. If the "
- "string is translated and replaced, the replacement is double-quoted."
- msgstr ""
- #. type: item
- #: ./bashref.texi:543 ./bashref.texi:5947
- #, no-wrap
- msgid "LC_MESSAGES"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:544
- #, no-wrap
- msgid "TEXTDOMAIN"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:545
- #, no-wrap
- msgid "TEXTDOMAINDIR"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:554
- msgid ""
- "Some systems use the message catalog selected by the @env{LC_MESSAGES} shell "
- "variable. Others create the name of the message catalog from the value of "
- "the @env{TEXTDOMAIN} shell variable, possibly adding a suffix of "
- "@samp{.mo}. If you use the @env{TEXTDOMAIN} variable, you may need to set "
- "the @env{TEXTDOMAINDIR} variable to the location of the message catalog "
- "files. Still others use both variables in this fashion: "
- "@env{TEXTDOMAINDIR}/@env{LC_MESSAGES}/LC_MESSAGES/@env{TEXTDOMAIN}.mo."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:557
- #, no-wrap
- msgid "comments, shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:569
- msgid ""
- "In a non-interactive shell, or an interactive shell in which the "
- "@code{interactive_comments} option to the @code{shopt} builtin is enabled "
- "(@pxref{The Shopt Builtin}), a word beginning with @samp{#} causes that word "
- "and all remaining characters on that line to be ignored. An interactive "
- "shell without the @code{interactive_comments} option enabled does not allow "
- "comments. The @code{interactive_comments} option is on by default in "
- "interactive shells. @xref{Interactive Shells}, for a description of what "
- "makes a shell interactive."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:572
- #, no-wrap
- msgid "commands, shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:576
- msgid ""
- "A simple shell command such as @code{echo a b c} consists of the command "
- "itself followed by arguments, separated by spaces."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:581
- msgid ""
- "More complex shell commands are composed of simple commands arranged "
- "together in a variety of ways: in a pipeline in which the output of one "
- "command becomes the input of a second, in a loop or conditional construct, "
- "or in some other grouping."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:590 ./bashref.texi:592 ./bashref.texi:593
- #, no-wrap
- msgid "Simple Commands"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:590
- msgid "The most common type of command."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:590 ./bashref.texi:607 ./bashref.texi:608
- #, no-wrap
- msgid "Pipelines"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:590
- msgid "Connecting the input and output of several commands."
- msgstr ""
- #. type: node
- #: ./bashref.texi:590 ./bashref.texi:676
- #, no-wrap
- msgid "Lists"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:590
- msgid "How to execute commands sequentially."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:590 ./bashref.texi:732 ./bashref.texi:733
- #, no-wrap
- msgid "Compound Commands"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:590
- msgid "Shell commands for control flow."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:590 ./bashref.texi:1165 ./bashref.texi:1166
- #, no-wrap
- msgid "Coprocesses"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:590
- msgid "Two-way communication between commands."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:590 ./bashref.texi:1211 ./bashref.texi:1212
- #, no-wrap
- msgid "GNU Parallel"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:590
- msgid "Running commands in parallel."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:594
- #, no-wrap
- msgid "commands, simple"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:601
- msgid ""
- "A simple command is the kind of command encountered most often. It's just a "
- "sequence of words separated by @code{blank}s, terminated by one of the "
- "shell's control operators (@pxref{Definitions}). The first word generally "
- "specifies a command to be executed, with the rest of the words being that "
- "command's arguments."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:606
- msgid ""
- "The return status (@pxref{Exit Status}) of a simple command is its exit "
- "status as provided by the @sc{posix} 1003.1 @code{waitpid} function, or "
- "128+@var{n} if the command was terminated by signal @var{n}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:609
- #, no-wrap
- msgid "pipeline"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:610
- #, no-wrap
- msgid "commands, pipelines"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:614
- msgid ""
- "A @code{pipeline} is a sequence of one or more commands separated by one of "
- "the control operators @samp{|} or @samp{|&}."
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:615
- #, no-wrap
- msgid "time"
- msgstr ""
- #. type: item
- #: ./bashref.texi:616 ./bashref.texi:1632
- #, no-wrap
- msgid "!"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:617
- #, no-wrap
- msgid "command timing"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:619
- msgid "The format for a pipeline is"
- msgstr ""
- #. type: example
- #: ./bashref.texi:621
- #, no-wrap
- msgid "[time [-p]] [!] @var{command1} [ | or |& @var{command2} ] @dots{}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:629
- msgid ""
- "The output of each command in the pipeline is connected via a pipe to the "
- "input of the next command. That is, each command reads the previous "
- "command's output. This connection is performed before any redirections "
- "specified by the command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:636
- msgid ""
- "If @samp{|&} is used, @var{command1}'s standard error, in addition to its "
- "standard output, is connected to @var{command2}'s standard input through the "
- "pipe; it is shorthand for @code{2>&1 |}. This implicit redirection of the "
- "standard error to the standard output is performed after any redirections "
- "specified by the command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:652
- msgid ""
- "The reserved word @code{time} causes timing statistics to be printed for the "
- "pipeline once it finishes. The statistics currently consist of elapsed "
- "(wall-clock) time and user and system time consumed by the command's "
- "execution. The @option{-p} option changes the output format to that "
- "specified by @sc{posix}. When the shell is in @sc{posix} mode (@pxref{Bash "
- "POSIX Mode}), it does not recognize @code{time} as a reserved word if the "
- "next token begins with a @samp{-}. The @env{TIMEFORMAT} variable may be set "
- "to a format string that specifies how the timing information should be "
- "displayed. @xref{Bash Variables}, for a description of the available "
- "formats. The use of @code{time} as a reserved word permits the timing of "
- "shell builtins, shell functions, and pipelines. An external @code{time} "
- "command cannot time these easily."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:658
- msgid ""
- "When the shell is in @sc{posix} mode (@pxref{Bash POSIX Mode}), @code{time} "
- "may be followed by a newline. In this case, the shell displays the total "
- "user and system time consumed by the shell and its children. The "
- "@env{TIMEFORMAT} variable may be used to specify the format of the time "
- "information."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:661
- msgid ""
- "If the pipeline is not executed asynchronously (@pxref{Lists}), the shell "
- "waits for all commands in the pipeline to complete."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:675
- msgid ""
- "Each command in a pipeline is executed in its own subshell (@pxref{Command "
- "Execution Environment}). The exit status of a pipeline is the exit status "
- "of the last command in the pipeline, unless the @code{pipefail} option is "
- "enabled (@pxref{The Set Builtin}). If @code{pipefail} is enabled, the "
- "pipeline's return status is the value of the last (rightmost) command to "
- "exit with a non-zero status, or zero if all commands exit successfully. If "
- "the reserved word @samp{!} precedes the pipeline, the exit status is the "
- "logical negation of the exit status as described above. The shell waits for "
- "all commands in the pipeline to terminate before returning a value."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:677
- #, no-wrap
- msgid "Lists of Commands"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:678
- #, no-wrap
- msgid "commands, lists"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:684
- msgid ""
- "A @code{list} is a sequence of one or more pipelines separated by one of the "
- "operators @samp{;}, @samp{&}, @samp{&&}, or @samp{||}, and optionally "
- "terminated by one of @samp{;}, @samp{&}, or a @code{newline}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:688
- msgid ""
- "Of these list operators, @samp{&&} and @samp{||} have equal precedence, "
- "followed by @samp{;} and @samp{&}, which have equal precedence."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:691
- msgid ""
- "A sequence of one or more newlines may appear in a @code{list} to delimit "
- "commands, equivalent to a semicolon."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:700
- msgid ""
- "If a command is terminated by the control operator @samp{&}, the shell "
- "executes the command asynchronously in a subshell. This is known as "
- "executing the command in the @var{background}. The shell does not wait for "
- "the command to finish, and the return status is 0 (true). When job control "
- "is not active (@pxref{Job Control}), the standard input for asynchronous "
- "commands, in the absence of any explicit redirections, is redirected from "
- "@code{/dev/null}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:704
- msgid ""
- "Commands separated by a @samp{;} are executed sequentially; the shell waits "
- "for each command to terminate in turn. The return status is the exit status "
- "of the last command executed."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:709
- msgid ""
- "@sc{and} and @sc{or} lists are sequences of one or more pipelines separated "
- "by the control operators @samp{&&} and @samp{||}, respectively. @sc{and} "
- "and @sc{or} lists are executed with left associativity."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:711
- msgid "An @sc{and} list has the form"
- msgstr ""
- #. type: example
- #: ./bashref.texi:713
- #, no-wrap
- msgid "@var{command1} && @var{command2}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:718
- msgid ""
- "@var{command2} is executed if, and only if, @var{command1} returns an exit "
- "status of zero."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:720
- msgid "An @sc{or} list has the form"
- msgstr ""
- #. type: example
- #: ./bashref.texi:722
- #, no-wrap
- msgid "@var{command1} || @var{command2}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:727
- msgid ""
- "@var{command2} is executed if, and only if, @var{command1} returns a "
- "non-zero exit status."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:731
- msgid ""
- "The return status of @sc{and} and @sc{or} lists is the exit status of the "
- "last command executed in the list."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:734
- #, no-wrap
- msgid "commands, compound"
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:740 ./bashref.texi:755 ./bashref.texi:756
- #, no-wrap
- msgid "Looping Constructs"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:740
- msgid "Shell commands for iterative action."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:740 ./bashref.texi:831 ./bashref.texi:832
- #, no-wrap
- msgid "Conditional Constructs"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:740
- msgid "Shell commands for conditional execution."
- msgstr ""
- #. type: node
- #: ./bashref.texi:740 ./bashref.texi:1121
- #, no-wrap
- msgid "Command Grouping"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:740
- msgid "Ways to group commands."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:747
- msgid ""
- "Compound commands are the shell programming constructs. Each construct "
- "begins with a reserved word or control operator and is terminated by a "
- "corresponding reserved word or operator. Any redirections "
- "(@pxref{Redirections}) associated with a compound command apply to all "
- "commands within that compound command unless explicitly overridden."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:751
- msgid ""
- "In most cases a list of commands in a compound command's description may be "
- "separated from the rest of the command by one or more newlines, and may be "
- "followed by a newline in place of a semicolon."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:754
- msgid ""
- "Bash provides looping constructs, conditional commands, and mechanisms to "
- "group commands and execute them as a unit."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:757
- #, no-wrap
- msgid "commands, looping"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:760
- msgid "Bash supports the following looping constructs."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:763
- msgid ""
- "Note that wherever a @samp{;} appears in the description of a command's "
- "syntax, it may be replaced with one or more newlines."
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:765 ./bashref.texi:766
- #, no-wrap
- msgid "until"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:767
- #, no-wrap
- msgid "do"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:768
- #, no-wrap
- msgid "done"
- msgstr ""
- #. type: table
- #: ./bashref.texi:770
- msgid "The syntax of the @code{until} command is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:773
- #, no-wrap
- msgid "until @var{test-commands}; do @var{consequent-commands}; done\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:779
- msgid ""
- "Execute @var{consequent-commands} as long as @var{test-commands} has an exit "
- "status which is not zero. The return status is the exit status of the last "
- "command executed in @var{consequent-commands}, or zero if none was executed."
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:780 ./bashref.texi:781
- #, no-wrap
- msgid "while"
- msgstr ""
- #. type: table
- #: ./bashref.texi:783
- msgid "The syntax of the @code{while} command is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:786
- #, no-wrap
- msgid "while @var{test-commands}; do @var{consequent-commands}; done\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:792
- msgid ""
- "Execute @var{consequent-commands} as long as @var{test-commands} has an exit "
- "status of zero. The return status is the exit status of the last command "
- "executed in @var{consequent-commands}, or zero if none was executed."
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:793 ./bashref.texi:794
- #, no-wrap
- msgid "for"
- msgstr ""
- #. type: table
- #: ./bashref.texi:796
- msgid "The syntax of the @code{for} command is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:799
- #, no-wrap
- msgid "for @var{name} [ [in [@var{words} @dots{}] ] ; ] do @var{commands}; done\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:810
- msgid ""
- "Expand @var{words}, and execute @var{commands} once for each member in the "
- "resultant list, with @var{name} bound to the current member. If @samp{in "
- "@var{words}} is not present, the @code{for} command executes the "
- "@var{commands} once for each positional parameter that is set, as if "
- "@samp{in \"$@@\"} had been specified (@pxref{Special Parameters}). The "
- "return status is the exit status of the last command that executes. If "
- "there are no items in the expansion of @var{words}, no commands are "
- "executed, and the return status is zero."
- msgstr ""
- #. type: table
- #: ./bashref.texi:812
- msgid "An alternate form of the @code{for} command is also supported:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:815
- #, no-wrap
- msgid ""
- "for (( @var{expr1} ; @var{expr2} ; @var{expr3} )) ; do @var{commands} ; "
- "done\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:826
- msgid ""
- "First, the arithmetic expression @var{expr1} is evaluated according to the "
- "rules described below (@pxref{Shell Arithmetic}). The arithmetic expression "
- "@var{expr2} is then evaluated repeatedly until it evaluates to zero. Each "
- "time @var{expr2} evaluates to a non-zero value, @var{commands} are executed "
- "and the arithmetic expression @var{expr3} is evaluated. If any expression "
- "is omitted, it behaves as if it evaluates to 1. The return value is the "
- "exit status of the last command in @var{commands} that is executed, or false "
- "if any of the expressions is invalid."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:830
- msgid ""
- "The @code{break} and @code{continue} builtins (@pxref{Bourne Shell "
- "Builtins}) may be used to control loop execution."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:833
- #, no-wrap
- msgid "commands, conditional"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:836 ./bashref.texi:837
- #, no-wrap
- msgid "if"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:838
- #, no-wrap
- msgid "then"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:839
- #, no-wrap
- msgid "else"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:840
- #, no-wrap
- msgid "elif"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:841
- #, no-wrap
- msgid "fi"
- msgstr ""
- #. type: table
- #: ./bashref.texi:843
- msgid "The syntax of the @code{if} command is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:851
- #, no-wrap
- msgid ""
- "if @var{test-commands}; then\n"
- " @var{consequent-commands};\n"
- "[elif @var{more-test-commands}; then\n"
- " @var{more-consequents};]\n"
- "[else @var{alternate-consequents};]\n"
- "fi\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:864
- msgid ""
- "The @var{test-commands} list is executed, and if its return status is zero, "
- "the @var{consequent-commands} list is executed. If @var{test-commands} "
- "returns a non-zero status, each @code{elif} list is executed in turn, and if "
- "its exit status is zero, the corresponding @var{more-consequents} is "
- "executed and the command completes. If @samp{else "
- "@var{alternate-consequents}} is present, and the final command in the final "
- "@code{if} or @code{elif} clause has a non-zero exit status, then "
- "@var{alternate-consequents} is executed. The return status is the exit "
- "status of the last command executed, or zero if no condition tested true."
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:865 ./bashref.texi:866
- #, no-wrap
- msgid "case"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:867
- #, no-wrap
- msgid "in"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:868
- #, no-wrap
- msgid "esac"
- msgstr ""
- #. type: table
- #: ./bashref.texi:870
- msgid "The syntax of the @code{case} command is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:873
- #, no-wrap
- msgid ""
- "case @var{word} in [ [(] @var{pattern} [| @var{pattern}]@dots{}) "
- "@var{command-list} ;;]@dots{} esac\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:885
- msgid ""
- "@code{case} will selectively execute the @var{command-list} corresponding to "
- "the first @var{pattern} that matches @var{word}. If the @code{nocasematch} "
- "shell option (see the description of @code{shopt} in @ref{The Shopt "
- "Builtin}) is enabled, the match is performed without regard to the case of "
- "alphabetic characters. The @samp{|} is used to separate multiple patterns, "
- "and the @samp{)} operator terminates a pattern list. A list of patterns and "
- "an associated command-list is known as a @var{clause}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:891
- msgid ""
- "Each clause must be terminated with @samp{;;}, @samp{;&}, or @samp{;;&}. "
- "The @var{word} undergoes tilde expansion, parameter expansion, command "
- "substitution, arithmetic expansion, and quote removal before matching is "
- "attempted. Each @var{pattern} undergoes tilde expansion, parameter "
- "expansion, command substitution, and arithmetic expansion."
- msgstr ""
- #. type: table
- #: ./bashref.texi:898
- msgid ""
- "There may be an arbitrary number of @code{case} clauses, each terminated by "
- "a @samp{;;}, @samp{;&}, or @samp{;;&}. The first pattern that matches "
- "determines the command-list that is executed. It's a common idiom to use "
- "@samp{*} as the final pattern to define the default case, since that pattern "
- "will always match."
- msgstr ""
- #. type: table
- #: ./bashref.texi:901
- msgid ""
- "Here is an example using @code{case} in a script that could be used to "
- "describe one interesting feature of an animal:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:912
- #, no-wrap
- msgid ""
- "echo -n \"Enter the name of an animal: \"\n"
- "read ANIMAL\n"
- "echo -n \"The $ANIMAL has \"\n"
- "case $ANIMAL in\n"
- " horse | dog | cat) echo -n \"four\";;\n"
- " man | kangaroo ) echo -n \"two\";;\n"
- " *) echo -n \"an unknown number of\";;\n"
- "esac\n"
- "echo \" legs.\"\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:923
- msgid ""
- "If the @samp{;;} operator is used, no subsequent matches are attempted after "
- "the first pattern match. Using @samp{;&} in place of @samp{;;} causes "
- "execution to continue with the @var{command-list} associated with the next "
- "clause, if any. Using @samp{;;&} in place of @samp{;;} causes the shell to "
- "test the patterns in the next clause, if any, and execute any associated "
- "@var{command-list} on a successful match."
- msgstr ""
- #. type: table
- #: ./bashref.texi:926
- msgid ""
- "The return status is zero if no @var{pattern} is matched. Otherwise, the "
- "return status is the exit status of the @var{command-list} executed."
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:927 ./bashref.texi:928
- #, no-wrap
- msgid "select"
- msgstr ""
- #. type: table
- #: ./bashref.texi:932
- msgid ""
- "The @code{select} construct allows the easy generation of menus. It has "
- "almost the same syntax as the @code{for} command:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:935
- #, no-wrap
- msgid "select @var{name} [in @var{words} @dots{}]; do @var{commands}; done\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:950
- msgid ""
- "The list of words following @code{in} is expanded, generating a list of "
- "items. The set of expanded words is printed on the standard error output "
- "stream, each preceded by a number. If the @samp{in @var{words}} is omitted, "
- "the positional parameters are printed, as if @samp{in \"$@@\"} had been "
- "specified. The @env{PS3} prompt is then displayed and a line is read from "
- "the standard input. If the line consists of a number corresponding to one "
- "of the displayed words, then the value of @var{name} is set to that word. "
- "If the line is empty, the words and prompt are displayed again. If "
- "@code{EOF} is read, the @code{select} command completes. Any other value "
- "read causes @var{name} to be set to null. The line read is saved in the "
- "variable @env{REPLY}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:954
- msgid ""
- "The @var{commands} are executed after each selection until a @code{break} "
- "command is executed, at which point the @code{select} command completes."
- msgstr ""
- #. type: table
- #: ./bashref.texi:958
- msgid ""
- "Here is an example that allows the user to pick a filename from the current "
- "directory, and displays the name and index of the file selected."
- msgstr ""
- #. type: example
- #: ./bashref.texi:965
- #, no-wrap
- msgid ""
- "select fname in *;\n"
- "do\n"
- "\techo you picked $fname \\($REPLY\\)\n"
- "\tbreak;\n"
- "done\n"
- msgstr ""
- #. type: item
- #: ./bashref.texi:967
- #, no-wrap
- msgid "((@dots{}))"
- msgstr ""
- #. type: example
- #: ./bashref.texi:970
- #, no-wrap
- msgid "(( @var{expression} ))\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:976
- msgid ""
- "The arithmetic @var{expression} is evaluated according to the rules "
- "described below (@pxref{Shell Arithmetic}). If the value of the expression "
- "is non-zero, the return status is 0; otherwise the return status is 1. This "
- "is exactly equivalent to"
- msgstr ""
- #. type: example
- #: ./bashref.texi:978
- #, no-wrap
- msgid "let \"@var{expression}\"\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:981
- msgid "@xref{Bash Builtins}, for a full description of the @code{let} builtin."
- msgstr ""
- #. type: item
- #: ./bashref.texi:982
- #, no-wrap
- msgid "[[@dots{}]]"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:983
- #, no-wrap
- msgid "[["
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:984
- #, no-wrap
- msgid "]]"
- msgstr ""
- #. type: example
- #: ./bashref.texi:987
- #, no-wrap
- msgid "[[ @var{expression} ]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:999
- msgid ""
- "Return a status of 0 or 1 depending on the evaluation of the conditional "
- "expression @var{expression}. Expressions are composed of the primaries "
- "described below in @ref{Bash Conditional Expressions}. Word splitting and "
- "filename expansion are not performed on the words between the @code{[[} and "
- "@code{]]}; tilde expansion, parameter and variable expansion, arithmetic "
- "expansion, command substitution, process substitution, and quote removal are "
- "performed. Conditional operators such as @samp{-f} must be unquoted to be "
- "recognized as primaries."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1002
- msgid ""
- "When used with @code{[[}, the @samp{<} and @samp{>} operators sort "
- "lexicographically using the current locale."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1016
- msgid ""
- "When the @samp{==} and @samp{!=} operators are used, the string to the right "
- "of the operator is considered a pattern and matched according to the rules "
- "described below in @ref{Pattern Matching}, as if the @code{extglob} shell "
- "option were enabled. The @samp{=} operator is identical to @samp{==}. If "
- "the @code{nocasematch} shell option (see the description of @code{shopt} in "
- "@ref{The Shopt Builtin}) is enabled, the match is performed without regard "
- "to the case of alphabetic characters. The return value is 0 if the string "
- "matches (@samp{==}) or does not match (@samp{!=})the pattern, and 1 "
- "otherwise. Any part of the pattern may be quoted to force the quoted "
- "portion to be matched as a string."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1041
- msgid ""
- "An additional binary operator, @samp{=~}, is available, with the same "
- "precedence as @samp{==} and @samp{!=}. When it is used, the string to the "
- "right of the operator is considered an extended regular expression and "
- "matched accordingly (as in @i{regex}3)). The return value is 0 if the "
- "string matches the pattern, and 1 otherwise. If the regular expression is "
- "syntactically incorrect, the conditional expression's return value is 2. If "
- "the @code{nocasematch} shell option (see the description of @code{shopt} in "
- "@ref{The Shopt Builtin}) is enabled, the match is performed without regard "
- "to the case of alphabetic characters. Any part of the pattern may be quoted "
- "to force the quoted portion to be matched as a string. Bracket expressions "
- "in regular expressions must be treated carefully, since normal quoting "
- "characters lose their meanings between brackets. If the pattern is stored "
- "in a shell variable, quoting the variable expansion forces the entire "
- "pattern to be matched as a string. Substrings matched by parenthesized "
- "subexpressions within the regular expression are saved in the array variable "
- "@code{BASH_REMATCH}. The element of @code{BASH_REMATCH} with index 0 is the "
- "portion of the string matching the entire regular expression. The element "
- "of @code{BASH_REMATCH} with index @var{n} is the portion of the string "
- "matching the @var{n}th parenthesized subexpression."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1047
- msgid ""
- "For example, the following will match a line (stored in the shell variable "
- "@var{line}) if there is a sequence of characters in the value consisting of "
- "any number, including zero, of space characters, zero or one instances of "
- "@samp{a}, then a @samp{b}:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1049
- #, no-wrap
- msgid "[[ $line =~ [[:space:]]*(a)?b ]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1054
- msgid ""
- "That means values like @samp{aab} and @samp{ aaaaaab} will match, as will a "
- "line containing a @samp{b} anywhere in its value."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1063
- msgid ""
- "Storing the regular expression in a shell variable is often a useful way to "
- "avoid problems with quoting characters that are special to the shell. It is "
- "sometimes difficult to specify a regular expression literally without using "
- "quotes, or to keep track of the quoting used by regular expressions while "
- "paying attention to the shell's quote removal. Using a shell variable to "
- "store the pattern decreases these problems. For example, the following is "
- "equivalent to the above:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1066
- #, no-wrap
- msgid ""
- "pattern='[[:space:]]*(a)?b'\n"
- "[[ $line =~ $pattern ]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1078
- msgid ""
- "If you want to match a character that's special to the regular expression "
- "grammar, it has to be quoted to remove its special meaning. This means that "
- "in the pattern @samp{xxx.txt}, the @samp{.} matches any character in the "
- "string (its usual regular expression meaning), but in the pattern "
- "@samp{\"xxx.txt\"} it can only match a literal @samp{.}. Shell programmers "
- "should take special care with backslashes, since backslashes are used both "
- "by the shell and regular expressions to remove the special meaning from the "
- "following character. The following two sets of commands are @emph{not} "
- "equivalent:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1080
- #, no-wrap
- msgid ""
- "pattern='\\.'\n"
- "\n"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1083
- #, no-wrap
- msgid ""
- "[[ . =~ $pattern ]]\n"
- "[[ . =~ \\. ]]\n"
- "\n"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1086
- #, no-wrap
- msgid ""
- "[[ . =~ \"$pattern\" ]]\n"
- "[[ . =~ '\\.' ]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1096
- msgid ""
- "The first two matches will succeed, but the second two will not, because in "
- "the second two the backslash will be part of the pattern to be matched. In "
- "the first two examples, the backslash removes the special meaning from "
- "@samp{.}, so the literal @samp{.} matches. If the string in the first "
- "examples were anything other than @samp{.}, say @samp{a}, the pattern would "
- "not match, because the quoted @samp{.} in the pattern loses its special "
- "meaning of matching any single character."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1099
- msgid ""
- "Expressions may be combined using the following operators, listed in "
- "decreasing order of precedence:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1101
- #, no-wrap
- msgid "( @var{expression} )"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1104
- msgid ""
- "Returns the value of @var{expression}. This may be used to override the "
- "normal precedence of operators."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1105
- #, no-wrap
- msgid "! @var{expression}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1107
- msgid "True if @var{expression} is false."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1108
- #, no-wrap
- msgid "@var{expression1} && @var{expression2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1110
- msgid "True if both @var{expression1} and @var{expression2} are true."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1111
- #, no-wrap
- msgid "@var{expression1} || @var{expression2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1113
- msgid "True if either @var{expression1} or @var{expression2} is true."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1119
- msgid ""
- "The @code{&&} and @code{||} operators do not evaluate @var{expression2} if "
- "the value of @var{expression1} is sufficient to determine the return value "
- "of the entire conditional expression."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:1122
- #, no-wrap
- msgid "Grouping Commands"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1123
- #, no-wrap
- msgid "commands, grouping"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1129
- msgid ""
- "Bash provides two ways to group a list of commands to be executed as a "
- "unit. When commands are grouped, redirections may be applied to the entire "
- "command list. For example, the output of all the commands in the list may "
- "be redirected to a single stream."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1131
- #, no-wrap
- msgid "()"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1134
- #, no-wrap
- msgid "( @var{list} )\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1141
- msgid ""
- "Placing a list of commands between parentheses causes a subshell environment "
- "to be created (@pxref{Command Execution Environment}), and each of the "
- "commands in @var{list} to be executed in that subshell. Since the "
- "@var{list} is executed in a subshell, variable assignments do not remain in "
- "effect after the subshell completes."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1142
- #, no-wrap
- msgid "@{@}"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:1143
- #, no-wrap
- msgid "@{"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:1144
- #, no-wrap
- msgid "@}"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1147
- #, no-wrap
- msgid "@{ @var{list}; @}\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1152
- msgid ""
- "Placing a list of commands between curly braces causes the list to be "
- "executed in the current shell context. No subshell is created. The "
- "semicolon (or newline) following @var{list} is required."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1161
- msgid ""
- "In addition to the creation of a subshell, there is a subtle difference "
- "between these two constructs due to historical reasons. The braces are "
- "@code{reserved words}, so they must be separated from the @var{list} by "
- "@code{blank}s or other shell metacharacters. The parentheses are "
- "@code{operators}, and are recognized as separate tokens by the shell even if "
- "they are not separated from the @var{list} by whitespace."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1164
- msgid ""
- "The exit status of both of these constructs is the exit status of "
- "@var{list}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1167
- #, no-wrap
- msgid "coprocess"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1174
- msgid ""
- "A @code{coprocess} is a shell command preceded by the @code{coproc} reserved "
- "word. A coprocess is executed asynchronously in a subshell, as if the "
- "command had been terminated with the @samp{&} control operator, with a "
- "two-way pipe established between the executing shell and the coprocess."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1176
- msgid "The format for a coprocess is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1178
- #, no-wrap
- msgid "coproc [@var{NAME}] @var{command} [@var{redirections}]\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1186
- msgid ""
- "This creates a coprocess named @var{NAME}. If @var{NAME} is not supplied, "
- "the default name is @var{COPROC}. @var{NAME} must not be supplied if "
- "@var{command} is a simple command (@pxref{Simple Commands}); otherwise, it "
- "is interpreted as the first word of the simple command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1201
- msgid ""
- "When the coprocess is executed, the shell creates an array variable "
- "(@pxref{Arrays}) named @env{NAME} in the context of the executing shell. "
- "The standard output of @var{command} is connected via a pipe to a file "
- "descriptor in the executing shell, and that file descriptor is assigned to "
- "@env{NAME}[0]. The standard input of @var{command} is connected via a pipe "
- "to a file descriptor in the executing shell, and that file descriptor is "
- "assigned to @env{NAME}[1]. This pipe is established before any redirections "
- "specified by the command (@pxref{Redirections}). The file descriptors can "
- "be utilized as arguments to shell commands and redirections using standard "
- "word expansions. The file descriptors are not available in subshells."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1206
- msgid ""
- "The process ID of the shell spawned to execute the coprocess is available as "
- "the value of the variable @env{NAME}_PID. The @code{wait} builtin command "
- "may be used to wait for the coprocess to terminate."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1210
- msgid ""
- "Since the coprocess is created as an asynchronous command, the @code{coproc} "
- "command always returns success. The return status of a coprocess is the "
- "exit status of @var{command}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1216
- msgid ""
- "There are ways to run commands in parallel that are not built into Bash. "
- "GNU Parallel is a tool to do just that."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1224
- msgid ""
- "GNU Parallel, as its name suggests, can be used to build and run commands in "
- "parallel. You may run the same command with different arguments, whether "
- "they are filenames, usernames, hostnames, or lines read from files. GNU "
- "Parallel provides shorthand references to many of the most common operations "
- "(input lines, various portions of the input line, different ways to specify "
- "the input source, and so on). Parallel can replace @code{xargs} or feed "
- "commands from its input sources to several different instances of Bash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1227
- msgid ""
- "For a complete description, refer to the GNU Parallel documentation. A few "
- "examples should provide a brief introduction to its use."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1230
- msgid ""
- "For example, it is easy to replace @code{xargs} to gzip all html files in "
- "the current directory and its subdirectories:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1232
- #, no-wrap
- msgid "find . -type f -name '*.html' -print | parallel gzip\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1236
- msgid ""
- "If you need to protect special characters such as newlines in file names, "
- "use find's @option{-print0} option and parallel's @option{-0} option."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1239
- msgid ""
- "You can use Parallel to move files from the current directory when the "
- "number of files is too large to process with one @code{mv} invocation:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1241
- #, no-wrap
- msgid "ls | parallel mv @{@} destdir\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1247
- msgid ""
- "As you can see, the @{@} is replaced with each line read from standard "
- "input. While using @code{ls} will work in most instances, it is not "
- "sufficient to deal with all filenames. If you need to accommodate special "
- "characters in filenames, you can use"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1250
- #, no-wrap
- msgid "find . -depth 1 \\! -name '.*' -print0 | parallel -0 mv @{@} destdir\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1254
- msgid "as alluded to above."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1258
- msgid ""
- "This will run as many @code{mv} commands as there are files in the current "
- "directory. You can emulate a parallel @code{xargs} by adding the "
- "@option{-X} option:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1260
- #, no-wrap
- msgid "find . -depth 1 \\! -name '.*' -print0 | parallel -0 -X mv @{@} destdir\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1264
- msgid ""
- "GNU Parallel can replace certain common idioms that operate on lines read "
- "from a file (in this case, filenames listed one per line):"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1269
- #, no-wrap
- msgid ""
- "\twhile IFS= read -r x; do\n"
- "\t\tdo-something1 \"$x\" \"config-$x\"\n"
- "\t\tdo-something2 < \"$x\"\n"
- "\tdone < file | process-output\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1273
- msgid "with a more compact syntax reminiscent of lambdas:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1275
- #, no-wrap
- msgid ""
- "cat list | parallel \"do-something1 @{@} config-@{@} ; do-something2 < "
- "@{@}\" | process-output\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1279
- msgid ""
- "Parallel provides a built-in mechanism to remove filename extensions, which "
- "lends itself to batch file transformations or renaming:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1281
- #, no-wrap
- msgid "ls *.gz | parallel -j+0 \"zcat @{@} | bzip2 >@{.@}.bz2 && rm @{@}\"\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1289
- msgid ""
- "This will recompress all files in the current directory with names ending in "
- ".gz using bzip2, running one job per CPU (-j+0) in parallel. (We use "
- "@code{ls} for brevity here; using @code{find} as above is more robust in the "
- "face of filenames containing unexpected characters.) Parallel can take "
- "arguments from the command line; the above can also be written as"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1292
- #, no-wrap
- msgid "parallel \"zcat @{@} | bzip2 >@{.@}.bz2 && rm @{@}\" ::: *.gz\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1296
- msgid ""
- "If a command generates output, you may want to preserve the input order in "
- "the output. For instance, the following command"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1298
- #, no-wrap
- msgid ""
- "@{ echo foss.org.my ; echo debian.org; echo freenetproject.org; @} | "
- "parallel traceroute\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1302
- msgid ""
- "will display as output the traceroute invocation that finishes first. "
- "Adding the @option{-k} option"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1304
- #, no-wrap
- msgid ""
- "@{ echo foss.org.my ; echo debian.org; echo freenetproject.org; @} | "
- "parallel -k traceroute\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1307
- msgid ""
- "will ensure that the output of @code{traceroute foss.org.my} is displayed "
- "first."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1314
- msgid ""
- "Finally, Parallel can be used to run a sequence of shell commands in "
- "parallel, similar to @samp{cat file | bash}. It is not uncommon to take a "
- "list of filenames, create a series of shell commands to operate on them, and "
- "feed that list of commnds to a shell. Parallel can speed this up. Assuming "
- "that @file{file} contains a list of shell commands, one per line,"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1317
- #, no-wrap
- msgid "parallel -j 10 < file\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1322
- msgid ""
- "will evaluate the commands using the shell (since no explicit command is "
- "supplied as an argument), in blocks of ten shell jobs at a time."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1325
- #, no-wrap
- msgid "shell function"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1326
- #, no-wrap
- msgid "functions, shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1335
- msgid ""
- "Shell functions are a way to group commands for later execution using a "
- "single name for the group. They are executed just like a \"regular\" "
- "command. When the name of a shell function is used as a simple command "
- "name, the list of commands associated with that function name is executed. "
- "Shell functions are executed in the current shell context; no new process is "
- "created to interpret them."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1337
- msgid "Functions are declared using this syntax:"
- msgstr ""
- #. type: rwindex
- #: ./bashref.texi:1337
- #, no-wrap
- msgid "function"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1340
- #, no-wrap
- msgid "@var{name} () @var{compound-command} [ @var{redirections} ]\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1343 ./bashref.texi:1788 ./bashref.texi:2253 ./bashref.texi:2316
- msgid "or"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1346
- #, no-wrap
- msgid "function @var{name} [()] @var{compound-command} [ @var{redirections} ]\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1365
- msgid ""
- "This defines a shell function named @var{name}. The reserved word "
- "@code{function} is optional. If the @code{function} reserved word is "
- "supplied, the parentheses are optional. The @var{body} of the function is "
- "the compound command @var{compound-command} (@pxref{Compound Commands}). "
- "That command is usually a @var{list} enclosed between @{ and @}, but may be "
- "any compound command listed above, with one exception: If the "
- "@code{function} reserved word is used, but the parentheses are not supplied, "
- "the braces are required. @var{compound-command} is executed whenever "
- "@var{name} is specified as the name of a command. When the shell is in "
- "@sc{posix} mode (@pxref{Bash POSIX Mode}), @var{name} may not be the same as "
- "one of the special builtins (@pxref{Special Builtins}). Any redirections "
- "(@pxref{Redirections}) associated with the shell function are performed when "
- "the function is executed."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1368
- msgid ""
- "A function definition may be deleted using the @option{-f} option to the "
- "@code{unset} builtin (@pxref{Bourne Shell Builtins})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1373
- msgid ""
- "The exit status of a function definition is zero unless a syntax error "
- "occurs or a readonly function with the same name already exists. When "
- "executed, the exit status of a function is the exit status of the last "
- "command executed in the body."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1382
- msgid ""
- "Note that for historical reasons, in the most common usage the curly braces "
- "that surround the body of the function must be separated from the body by "
- "@code{blank}s or newlines. This is because the braces are reserved words "
- "and are only recognized as such when they are separated from the command "
- "list by whitespace or another shell metacharacter. Also, when using the "
- "braces, the @var{list} must be terminated by a semicolon, a @samp{&}, or a "
- "newline."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1391
- msgid ""
- "When a function is executed, the arguments to the function become the "
- "positional parameters during its execution (@pxref{Positional Parameters}). "
- "The special parameter @samp{#} that expands to the number of positional "
- "parameters is updated to reflect the change. Special parameter @code{0} is "
- "unchanged. The first element of the @env{FUNCNAME} variable is set to the "
- "name of the function while the function is executing."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1405
- msgid ""
- "All other aspects of the shell execution environment are identical between a "
- "function and its caller with these exceptions: the @env{DEBUG} and "
- "@env{RETURN} traps are not inherited unless the function has been given the "
- "@code{trace} attribute using the @code{declare} builtin or the @code{-o "
- "functrace} option has been enabled with the @code{set} builtin, (in which "
- "case all functions inherit the @env{DEBUG} and @env{RETURN} traps), and the "
- "@env{ERR} trap is not inherited unless the @code{-o errtrace} shell option "
- "has been enabled. @xref{Bourne Shell Builtins}, for the description of the "
- "@code{trap} builtin."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1410
- msgid ""
- "The @env{FUNCNEST} variable, if set to a numeric value greater than 0, "
- "defines a maximum function nesting level. Function invocations that exceed "
- "the limit cause the entire command to abort."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1424
- msgid ""
- "If the builtin command @code{return} is executed in a function, the function "
- "completes and execution resumes with the next command after the function "
- "call. Any command associated with the @code{RETURN} trap is executed before "
- "execution resumes. When a function completes, the values of the positional "
- "parameters and the special parameter @samp{#} are restored to the values "
- "they had prior to the function's execution. If a numeric argument is given "
- "to @code{return}, that is the function's return status; otherwise the "
- "function's return status is the exit status of the last command executed "
- "before the @code{return}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1428
- msgid ""
- "Variables local to the function may be declared with the @code{local} "
- "builtin. These variables are visible only to the function and the commands "
- "it invokes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1444
- msgid ""
- "Function names and definitions may be listed with the @option{-f} option to "
- "the @code{declare} (@code{typeset}) builtin command (@pxref{Bash "
- "Builtins}). The @option{-F} option to @code{declare} or @code{typeset} will "
- "list the function names only (and optionally the source file and line "
- "number, if the @code{extdebug} shell option is enabled). Functions may be "
- "exported so that subshells automatically have them defined with the "
- "@option{-f} option to the @code{export} builtin (@pxref{Bourne Shell "
- "Builtins}). Note that shell functions and variables with the same name may "
- "result in multiple identically-named entries in the environment passed to "
- "the shell's children. Care should be taken in cases where this may cause a "
- "problem."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1449
- msgid ""
- "Functions may be recursive. The @code{FUNCNEST} variable may be used to "
- "limit the depth of the function call stack and restrict the number of "
- "function invocations. By default, no limit is placed on the number of "
- "recursive calls."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1452
- #, no-wrap
- msgid "parameters"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1453
- #, no-wrap
- msgid "variable, shell"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1454
- #, no-wrap
- msgid "shell variable"
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1459 ./bashref.texi:1551 ./bashref.texi:1552
- #, no-wrap
- msgid "Positional Parameters"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1459
- msgid "The shell's command-line arguments."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1459 ./bashref.texi:1571 ./bashref.texi:1572
- #, no-wrap
- msgid "Special Parameters"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1459
- msgid "Parameters denoted by special characters."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1468
- msgid ""
- "A @var{parameter} is an entity that stores values. It can be a @code{name}, "
- "a number, or one of the special characters listed below. A @var{variable} "
- "is a parameter denoted by a @code{name}. A variable has a @var{value} and "
- "zero or more @var{attributes}. Attributes are assigned using the "
- "@code{declare} builtin command (see the description of the @code{declare} "
- "builtin in @ref{Bash Builtins})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1472
- msgid ""
- "A parameter is set if it has been assigned a value. The null string is a "
- "valid value. Once a variable is set, it may be unset only by using the "
- "@code{unset} builtin command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1474
- msgid "A variable may be assigned to by a statement of the form"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1476
- #, no-wrap
- msgid "@var{name}=[@var{value}]\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1496
- msgid ""
- "If @var{value} is not given, the variable is assigned the null string. All "
- "@var{value}s undergo tilde expansion, parameter and variable expansion, "
- "command substitution, arithmetic expansion, and quote removal (detailed "
- "below). If the variable has its @code{integer} attribute set, then "
- "@var{value} is evaluated as an arithmetic expression even if the "
- "@code{$((@dots{}))} expansion is not used (@pxref{Arithmetic Expansion}). "
- "Word splitting is not performed, with the exception of @code{\"$@@\"} as "
- "explained below. Filename expansion is not performed. Assignment "
- "statements may also appear as arguments to the @code{alias}, @code{declare}, "
- "@code{typeset}, @code{export}, @code{readonly}, and @code{local} builtin "
- "commands (@var{declaration} commands). When in @sc{posix} mode (@pxref{Bash "
- "POSIX Mode}), these builtins may appear in a command after one or more "
- "instances of the @code{command} builtin and retain these assignment "
- "statement properties."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1514
- msgid ""
- "In the context where an assignment statement is assigning a value to a shell "
- "variable or array index (@pxref{Arrays}), the @samp{+=} operator can be used "
- "to append to or add to the variable's previous value. This includes "
- "arguments to builtin commands such as @code{declare} that accept assignment "
- "statements (@var{declaration} commands). When @samp{+=} is applied to a "
- "variable for which the @var{integer} attribute has been set, @var{value} is "
- "evaluated as an arithmetic expression and added to the variable's current "
- "value, which is also evaluated. When @samp{+=} is applied to an array "
- "variable using compound assignment (@pxref{Arrays}), the variable's value is "
- "not unset (as it is when using @samp{=}), and new values are appended to the "
- "array beginning at one greater than the array's maximum index (for indexed "
- "arrays), or added as additional key-value pairs in an associative array. "
- "When applied to a string-valued variable, @var{value} is expanded and "
- "appended to the variable's value."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1529
- msgid ""
- "A variable can be assigned the @var{nameref} attribute using the @option{-n} "
- "option to the @code{declare} or @code{local} builtin commands (@pxref{Bash "
- "Builtins}) to create a @var{nameref}, or a reference to another variable. "
- "This allows variables to be manipulated indirectly. Whenever the nameref "
- "variable is referenced, assigned to, unset, or has its attributes modified "
- "(other than using or changing the nameref attribute itself), the operation "
- "is actually performed on the variable specified by the nameref variable's "
- "value. A nameref is commonly used within shell functions to refer to a "
- "variable whose name is passed as an argument to the function. For instance, "
- "if a variable name is passed to a shell function as its first argument, "
- "running"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1531
- #, no-wrap
- msgid "declare -n ref=$1\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1538
- msgid ""
- "inside the function creates a nameref variable @var{ref} whose value is the "
- "variable name passed as the first argument. References and assignments to "
- "@var{ref}, and changes to its attributes, are treated as references, "
- "assignments, and attribute modifications to the variable whose name was "
- "passed as @code{$1}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1550
- msgid ""
- "If the control variable in a @code{for} loop has the nameref attribute, the "
- "list of words can be a list of shell variables, and a name reference will be "
- "established for each word in the list, in turn, when the loop is executed. "
- "Array variables cannot be given the nameref attribute. However, nameref "
- "variables can reference array variables and subscripted array variables. "
- "Namerefs can be unset using the @option{-n} option to the @code{unset} "
- "builtin (@pxref{Bourne Shell Builtins}). Otherwise, if @code{unset} is "
- "executed with the name of a nameref variable as an argument, the variable "
- "referenced by the nameref variable will be unset."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1553
- #, no-wrap
- msgid "parameters, positional"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1567
- msgid ""
- "A @var{positional parameter} is a parameter denoted by one or more digits, "
- "other than the single digit @code{0}. Positional parameters are assigned "
- "from the shell's arguments when it is invoked, and may be reassigned using "
- "the @code{set} builtin command. Positional parameter @code{N} may be "
- "referenced as @code{$@{N@}}, or as @code{$N} when @code{N} consists of a "
- "single digit. Positional parameters may not be assigned to with assignment "
- "statements. The @code{set} and @code{shift} builtins are used to set and "
- "unset them (@pxref{Shell Builtin Commands}). The positional parameters are "
- "temporarily replaced when a shell function is executed (@pxref{Shell "
- "Functions})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1570
- msgid ""
- "When a positional parameter consisting of more than a single digit is "
- "expanded, it must be enclosed in braces."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1573
- #, no-wrap
- msgid "parameters, special"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1577
- msgid ""
- "The shell treats several parameters specially. These parameters may only be "
- "referenced; assignment to them is not allowed."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1579 ./bashref.texi:5396 ./bashref.texi:5461 ./bashref.texi:7888
- msgid "@vtable @code"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1580 ./bashref.texi:2456
- #, no-wrap
- msgid "*"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1581
- #, no-wrap
- msgid "$*"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1596
- msgid ""
- "($*) Expands to the positional parameters, starting from one. When the "
- "expansion is not within double quotes, each positional parameter expands to "
- "a separate word. In contexts where it is performed, those words are subject "
- "to further word splitting and pathname expansion. When the expansion occurs "
- "within double quotes, it expands to a single word with the value of each "
- "parameter separated by the first character of the @env{IFS} special "
- "variable. That is, @code{\"$*\"} is equivalent to "
- "@code{\"$1@var{c}$2@var{c}@dots{}\"}, where @var{c} is the first character "
- "of the value of the @code{IFS} variable. If @env{IFS} is unset, the "
- "parameters are separated by spaces. If @env{IFS} is null, the parameters "
- "are joined without intervening separators."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1597
- #, no-wrap
- msgid "@@"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1598
- #, no-wrap
- msgid "$@@"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1610
- msgid ""
- "($@@) Expands to the positional parameters, starting from one. When the "
- "expansion occurs within double quotes, each parameter expands to a separate "
- "word. That is, @code{\"$@@\"} is equivalent to @code{\"$1\" \"$2\" "
- "@dots{}}. If the double-quoted expansion occurs within a word, the "
- "expansion of the first parameter is joined with the beginning part of the "
- "original word, and the expansion of the last parameter is joined with the "
- "last part of the original word. When there are no positional parameters, "
- "@code{\"$@@\"} and @code{$@@} expand to nothing (i.e., they are removed)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1611
- #, no-wrap
- msgid "#"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1612
- #, no-wrap
- msgid "$#"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1614
- msgid "($#) Expands to the number of positional parameters in decimal."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1615 ./bashref.texi:2464
- #, no-wrap
- msgid "?"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1616
- #, no-wrap
- msgid "$?"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1619
- msgid ""
- "($?) Expands to the exit status of the most recently executed foreground "
- "pipeline."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1620 ./bashref.texi:4939
- #, no-wrap
- msgid "-"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1621
- #, no-wrap
- msgid "$-"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1626
- msgid ""
- "($-, a hyphen.) Expands to the current option flags as specified upon "
- "invocation, by the @code{set} builtin command, or those set by the shell "
- "itself (such as the @option{-i} option)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1627
- #, no-wrap
- msgid "$"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1628
- #, no-wrap
- msgid "$$"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1631
- msgid ""
- "($$) Expands to the process @sc{id} of the shell. In a @code{()} subshell, "
- "it expands to the process @sc{id} of the invoking shell, not the subshell."
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1633
- #, no-wrap
- msgid "$!"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1637
- msgid ""
- "($!) Expands to the process @sc{id} of the job most recently placed into the "
- "background, whether executed as an asynchronous command or using the "
- "@code{bg} builtin (@pxref{Job Control Builtins})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1638
- #, no-wrap
- msgid "0"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1639
- #, no-wrap
- msgid "$0"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1647
- msgid ""
- "($0) Expands to the name of the shell or shell script. This is set at shell "
- "initialization. If Bash is invoked with a file of commands (@pxref{Shell "
- "Scripts}), @code{$0} is set to the name of that file. If Bash is started "
- "with the @option{-c} option (@pxref{Invoking Bash}), then @code{$0} is set "
- "to the first argument after the string to be executed, if one is present. "
- "Otherwise, it is set to the filename used to invoke Bash, as given by "
- "argument zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1648
- #, no-wrap
- msgid "_"
- msgstr ""
- #. type: vindex
- #: ./bashref.texi:1649
- #, no-wrap
- msgid "$_"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1659
- msgid ""
- "($_, an underscore.) At shell startup, set to the absolute pathname used to "
- "invoke the shell or shell script being executed as passed in the environment "
- "or argument list. Subsequently, expands to the last argument to the "
- "previous command, after expansion. Also set to the full pathname used to "
- "invoke each command executed and placed in the environment exported to that "
- "command. When checking mail, this parameter holds the name of the mail "
- "file."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1663
- #, no-wrap
- msgid "expansion"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1667
- msgid ""
- "Expansion is performed on the command line after it has been split into "
- "@code{token}s. There are seven kinds of expansion performed:"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1669 ./bashref.texi:1722
- #, no-wrap
- msgid "brace expansion"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1670 ./bashref.texi:1794
- #, no-wrap
- msgid "tilde expansion"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1671
- #, no-wrap
- msgid "parameter and variable expansion"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1672 ./bashref.texi:2243
- #, no-wrap
- msgid "command substitution"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1673 ./bashref.texi:2283
- #, no-wrap
- msgid "arithmetic expansion"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1674 ./bashref.texi:2341
- #, no-wrap
- msgid "word splitting"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1675 ./bashref.texi:2390
- #, no-wrap
- msgid "filename expansion"
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:1720 ./bashref.texi:1721
- #, no-wrap
- msgid "Brace Expansion"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "Expansion of expressions within braces."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:1792 ./bashref.texi:1793
- #, no-wrap
- msgid "Tilde Expansion"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "Expansion of the ~ character."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:1862 ./bashref.texi:1863
- #, no-wrap
- msgid "Shell Parameter Expansion"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "How Bash expands variables to their values."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:2241 ./bashref.texi:2242
- #, no-wrap
- msgid "Command Substitution"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "Using the output of a command as an argument."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:2280 ./bashref.texi:2281
- #, no-wrap
- msgid "Arithmetic Expansion"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "How to use arithmetic in shell expansions."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:2304 ./bashref.texi:2305
- #, no-wrap
- msgid "Process Substitution"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "A way to write and read to and from a command."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:2339 ./bashref.texi:2340
- #, no-wrap
- msgid "Word Splitting"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "How the results of expansion are split into separate arguments."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:2383 ./bashref.texi:2384
- #, no-wrap
- msgid "Filename Expansion"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "A shorthand for specifying filenames matching patterns."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:1691 ./bashref.texi:2536 ./bashref.texi:2537
- #, no-wrap
- msgid "Quote Removal"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:1691
- msgid "How and when quote characters are removed from words."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1699
- msgid ""
- "The order of expansions is: brace expansion; tilde expansion, parameter and "
- "variable expansion, arithmetic expansion, and command substitution (done in "
- "a left-to-right fashion); word splitting; and filename expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1705
- msgid ""
- "On systems that can support it, there is an additional expansion available: "
- "@var{process substitution}. This is performed at the same time as tilde, "
- "parameter, variable, and arithmetic expansion and command substitution."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1709
- msgid ""
- "After these expansions are performed, quote characters present in the "
- "original word are removed unless they have been quoted themselves "
- "(@var{quote removal})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1716
- msgid ""
- "Only brace expansion, word splitting, and filename expansion can change the "
- "number of words of the expansion; other expansions expand a single word to a "
- "single word. The only exceptions to this are the expansions of "
- "@code{\"$@@\"} (@pxref{Special Parameters}) and "
- "@code{\"$@{@var{name}[@@]@}\"} (@pxref{Arrays})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1719
- msgid ""
- "After all expansions, @code{quote removal} (@pxref{Quote Removal}) is "
- "performed."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1723
- #, no-wrap
- msgid "expansion, brace"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1736
- msgid ""
- "Brace expansion is a mechanism by which arbitrary strings may be generated. "
- "This mechanism is similar to @var{filename expansion} (@pxref{Filename "
- "Expansion}), but the filenames generated need not exist. Patterns to be "
- "brace expanded take the form of an optional @var{preamble}, followed by "
- "either a series of comma-separated strings or a sequence expression between "
- "a pair of braces, followed by an optional @var{postscript}. The preamble is "
- "prefixed to each string contained within the braces, and the postscript is "
- "then appended to each resulting string, expanding left to right."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1741
- msgid ""
- "Brace expansions may be nested. The results of each expanded string are not "
- "sorted; left to right order is preserved. For example,"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1744
- #, no-wrap
- msgid ""
- "bash$ echo a@{d,c,b@}e\n"
- "ade ace abe\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1762
- msgid ""
- "A sequence expression takes the form "
- "@code{@{@var{x}..@var{y}[..@var{incr}]@}}, where @var{x} and @var{y} are "
- "either integers or single characters, and @var{incr}, an optional increment, "
- "is an integer. When integers are supplied, the expression expands to each "
- "number between @var{x} and @var{y}, inclusive. Supplied integers may be "
- "prefixed with @samp{0} to force each term to have the same width. When "
- "either @var{x} or @var{y} begins with a zero, the shell attempts to force "
- "all generated terms to contain the same number of digits, zero-padding where "
- "necessary. When characters are supplied, the expression expands to each "
- "character lexicographically between @var{x} and @var{y}, inclusive, using "
- "the default C locale. Note that both @var{x} and @var{y} must be of the "
- "same type. When the increment is supplied, it is used as the difference "
- "between each term. The default increment is 1 or -1 as appropriate."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1770
- msgid ""
- "Brace expansion is performed before any other expansions, and any characters "
- "special to other expansions are preserved in the result. It is strictly "
- "textual. Bash does not apply any syntactic interpretation to the context of "
- "the expansion or the text between the braces. To avoid conflicts with "
- "parameter expansion, the string @samp{$@{} is not considered eligible for "
- "brace expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1775
- msgid ""
- "A correctly-formed brace expansion must contain unquoted opening and closing "
- "braces, and at least one unquoted comma or a valid sequence expression. Any "
- "incorrectly formed brace expansion is left unchanged."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1780
- msgid ""
- "A @{ or @samp{,} may be quoted with a backslash to prevent its being "
- "considered part of a brace expression. To avoid conflicts with parameter "
- "expansion, the string @samp{$@{} is not considered eligible for brace "
- "expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1784
- msgid ""
- "This construct is typically used as shorthand when the common prefix of the "
- "strings to be generated is longer than in the above example:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1786
- #, no-wrap
- msgid "mkdir /usr/local/src/bash/@{old,new,dist,bugs@}\n"
- msgstr ""
- #. type: example
- #: ./bashref.texi:1790
- #, no-wrap
- msgid "chown root /usr/@{ucb/@{ex,edit@},lib/@{ex?.?*,how_ex@}@}\n"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1795
- #, no-wrap
- msgid "expansion, tilde"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1809
- msgid ""
- "If a word begins with an unquoted tilde character (@samp{~}), all of the "
- "characters up to the first unquoted slash (or all characters, if there is no "
- "unquoted slash) are considered a @var{tilde-prefix}. If none of the "
- "characters in the tilde-prefix are quoted, the characters in the "
- "tilde-prefix following the tilde are treated as a possible @var{login "
- "name}. If this login name is the null string, the tilde is replaced with "
- "the value of the @env{HOME} shell variable. If @env{HOME} is unset, the "
- "home directory of the user executing the shell is substituted instead. "
- "Otherwise, the tilde-prefix is replaced with the home directory associated "
- "with the specified login name."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1814
- msgid ""
- "If the tilde-prefix is @samp{~+}, the value of the shell variable @env{PWD} "
- "replaces the tilde-prefix. If the tilde-prefix is @samp{~-}, the value of "
- "the shell variable @env{OLDPWD}, if it is set, is substituted."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1823
- msgid ""
- "If the characters following the tilde in the tilde-prefix consist of a "
- "number @var{N}, optionally prefixed by a @samp{+} or a @samp{-}, the "
- "tilde-prefix is replaced with the corresponding element from the directory "
- "stack, as it would be displayed by the @code{dirs} builtin invoked with the "
- "characters following tilde in the tilde-prefix as an argument (@pxref{The "
- "Directory Stack}). If the tilde-prefix, sans the tilde, consists of a "
- "number without a leading @samp{+} or @samp{-}, @samp{+} is assumed."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1826
- msgid ""
- "If the login name is invalid, or the tilde expansion fails, the word is left "
- "unchanged."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1833
- msgid ""
- "Each variable assignment is checked for unquoted tilde-prefixes immediately "
- "following a @samp{:} or the first @samp{=}. In these cases, tilde expansion "
- "is also performed. Consequently, one may use filenames with tildes in "
- "assignments to @env{PATH}, @env{MAILPATH}, and @env{CDPATH}, and the shell "
- "assigns the expanded value."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1835
- msgid "The following table shows how Bash treats unquoted tilde-prefixes:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1837
- #, no-wrap
- msgid "~"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1839
- msgid "The value of @code{$HOME}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1839
- #, no-wrap
- msgid "~/foo"
- msgstr ""
- #. type: file{#1}
- #: ./bashref.texi:1841
- msgid "$HOME/foo"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1842
- #, no-wrap
- msgid "~fred/foo"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1845
- msgid "The subdirectory @code{foo} of the home directory of the user @code{fred}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1846
- #, no-wrap
- msgid "~+/foo"
- msgstr ""
- #. type: file{#1}
- #: ./bashref.texi:1848
- msgid "$PWD/foo"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1849
- #, no-wrap
- msgid "~-/foo"
- msgstr ""
- #. type: file{#1}
- #: ./bashref.texi:1851
- msgid "$@{OLDPWD-'~-'@}/foo"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1852
- #, no-wrap
- msgid "~@var{N}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1854 ./bashref.texi:1857
- msgid "The string that would be displayed by @samp{dirs +@var{N}}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1855
- #, no-wrap
- msgid "~+@var{N}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:1858
- #, no-wrap
- msgid "~-@var{N}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1860
- msgid "The string that would be displayed by @samp{dirs -@var{N}}"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1864
- #, no-wrap
- msgid "parameter expansion"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:1865
- #, no-wrap
- msgid "expansion, parameter"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1873
- msgid ""
- "The @samp{$} character introduces parameter expansion, command substitution, "
- "or arithmetic expansion. The parameter name or symbol to be expanded may be "
- "enclosed in braces, which are optional but serve to protect the variable to "
- "be expanded from characters immediately following it which could be "
- "interpreted as part of the name."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1878
- msgid ""
- "When braces are used, the matching ending brace is the first @samp{@}} not "
- "escaped by a backslash or within a quoted string, and not within an embedded "
- "arithmetic expansion, command substitution, or parameter expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1887
- msgid ""
- "The basic form of parameter expansion is $@{@var{parameter}@}. The value of "
- "@var{parameter} is substituted. The @var{parameter} is a shell parameter as "
- "described above (@pxref{Shell Parameters}) or an array reference "
- "(@pxref{Arrays}). The braces are required when @var{parameter} is a "
- "positional parameter with more than one digit, or when @var{parameter} is "
- "followed by a character that is not to be interpreted as part of its name."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1904
- msgid ""
- "If the first character of @var{parameter} is an exclamation point (!), and "
- "@var{parameter} is not a @var{nameref}, it introduces a level of variable "
- "indirection. Bash uses the value of the variable formed from the rest of "
- "@var{parameter} as the name of the variable; this variable is then expanded "
- "and that value is used in the rest of the substitution, rather than the "
- "value of @var{parameter} itself. This is known as @code{indirect "
- "expansion}. If @var{parameter} is a nameref, this expands to the name of "
- "the variable referenced by @var{parameter} instead of performing the "
- "complete indirect expansion. The exceptions to this are the expansions of "
- "$@{!@var{prefix}*@} and $@{!@var{name}[@@]@} described below. The "
- "exclamation point must immediately follow the left brace in order to "
- "introduce indirection."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1907
- msgid ""
- "In each of the cases below, @var{word} is subject to tilde expansion, "
- "parameter expansion, command substitution, and arithmetic expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:1914
- msgid ""
- "When not performing substring expansion, using the form described below "
- "(e.g., @samp{:-}), Bash tests for a parameter that is unset or null. "
- "Omitting the colon results in a test only for a parameter that is unset. "
- "Put another way, if the colon is included, the operator tests for both "
- "@var{parameter}'s existence and that its value is not null; if the colon is "
- "omitted, the operator tests only for existence."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1917
- #, no-wrap
- msgid "$@{@var{parameter}:@minus{}@var{word}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1921
- msgid ""
- "If @var{parameter} is unset or null, the expansion of @var{word} is "
- "substituted. Otherwise, the value of @var{parameter} is substituted."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1922
- #, no-wrap
- msgid "$@{@var{parameter}:=@var{word}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1929
- msgid ""
- "If @var{parameter} is unset or null, the expansion of @var{word} is assigned "
- "to @var{parameter}. The value of @var{parameter} is then substituted. "
- "Positional parameters and special parameters may not be assigned to in this "
- "way."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1930
- #, no-wrap
- msgid "$@{@var{parameter}:?@var{word}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1937
- msgid ""
- "If @var{parameter} is null or unset, the expansion of @var{word} (or a "
- "message to that effect if @var{word} is not present) is written to the "
- "standard error and the shell, if it is not interactive, exits. Otherwise, "
- "the value of @var{parameter} is substituted."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1938
- #, no-wrap
- msgid "$@{@var{parameter}:+@var{word}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1942
- msgid ""
- "If @var{parameter} is null or unset, nothing is substituted, otherwise the "
- "expansion of @var{word} is substituted."
- msgstr ""
- #. type: item
- #: ./bashref.texi:1943
- #, no-wrap
- msgid "$@{@var{parameter}:@var{offset}@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:1944
- #, no-wrap
- msgid "$@{@var{parameter}:@var{offset}:@var{length}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:1956
- msgid ""
- "This is referred to as Substring Expansion. It expands to up to "
- "@var{length} characters of the value of @var{parameter} starting at the "
- "character specified by @var{offset}. If @var{parameter} is @samp{@@}, an "
- "indexed array subscripted by @samp{@@} or @samp{*}, or an associative array "
- "name, the results differ as described below. If @var{length} is omitted, it "
- "expands to the substring of the value of @var{parameter} starting at the "
- "character specified by @var{offset} and extending to the end of the value. "
- "@var{length} and @var{offset} are arithmetic expressions (@pxref{Shell "
- "Arithmetic})."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1967
- msgid ""
- "If @var{offset} evaluates to a number less than zero, the value is used as "
- "an offset in characters from the end of the value of @var{parameter}. If "
- "@var{length} evaluates to a number less than zero, it is interpreted as an "
- "offset in characters from the end of the value of @var{parameter} rather "
- "than a number of characters, and the expansion is the characters between "
- "@var{offset} and that result. Note that a negative offset must be separated "
- "from the colon by at least one space to avoid being confused with the "
- "@samp{:-} expansion."
- msgstr ""
- #. type: table
- #: ./bashref.texi:1970
- msgid ""
- "Here are some examples illustrating substring expansion on parameters and "
- "subscripted arrays:"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:1976
- #, no-wrap
- msgid ""
- "$ string=01234567890abcdefgh\n"
- "$ echo ${string:7}\n"
- "7890abcdefgh\n"
- "$ echo ${string:7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:1984
- #, no-wrap
- msgid ""
- "$ echo ${string:7:2}\n"
- "78\n"
- "$ echo ${string:7:-2}\n"
- "7890abcdef\n"
- "$ echo ${string: -7}\n"
- "bcdefgh\n"
- "$ echo ${string: -7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:1993
- #, no-wrap
- msgid ""
- "$ echo ${string: -7:2}\n"
- "bc\n"
- "$ echo ${string: -7:-2}\n"
- "bcdef\n"
- "$ set -- 01234567890abcdefgh\n"
- "$ echo ${1:7}\n"
- "7890abcdefgh\n"
- "$ echo ${1:7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2001
- #, no-wrap
- msgid ""
- "$ echo ${1:7:2}\n"
- "78\n"
- "$ echo ${1:7:-2}\n"
- "7890abcdef\n"
- "$ echo ${1: -7}\n"
- "bcdefgh\n"
- "$ echo ${1: -7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2010
- #, no-wrap
- msgid ""
- "$ echo ${1: -7:2}\n"
- "bc\n"
- "$ echo ${1: -7:-2}\n"
- "bcdef\n"
- "$ array[0]=01234567890abcdefgh\n"
- "$ echo ${array[0]:7}\n"
- "7890abcdefgh\n"
- "$ echo ${array[0]:7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2018
- #, no-wrap
- msgid ""
- "$ echo ${array[0]:7:2}\n"
- "78\n"
- "$ echo ${array[0]:7:-2}\n"
- "7890abcdef\n"
- "$ echo ${array[0]: -7}\n"
- "bcdefgh\n"
- "$ echo ${array[0]: -7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2023
- #, no-wrap
- msgid ""
- "$ echo ${array[0]: -7:2}\n"
- "bc\n"
- "$ echo ${array[0]: -7:-2}\n"
- "bcdef\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2031
- msgid ""
- "If @var{parameter} is @samp{@@}, the result is @var{length} positional "
- "parameters beginning at @var{offset}. A negative @var{offset} is taken "
- "relative to one greater than the greatest positional parameter, so an offset "
- "of -1 evaluates to the last positional parameter. It is an expansion error "
- "if @var{length} evaluates to a number less than zero."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2034
- msgid ""
- "The following examples illustrate substring expansion using positional "
- "parameters:"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2040
- #, no-wrap
- msgid ""
- "$ set -- 1 2 3 4 5 6 7 8 9 0 a b c d e f g h\n"
- "$ echo ${@:7}\n"
- "7 8 9 0 a b c d e f g h\n"
- "$ echo ${@:7:0}\n"
- "\n"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2052
- #, no-wrap
- msgid ""
- "$ echo ${@:7:2}\n"
- "7 8\n"
- "$ echo ${@:7:-2}\n"
- "bash: -2: substring expression < 0\n"
- "$ echo ${@: -7:2}\n"
- "b c\n"
- "$ echo ${@:0}\n"
- "./bash 1 2 3 4 5 6 7 8 9 0 a b c d e f g h\n"
- "$ echo ${@:0:2}\n"
- "./bash 1\n"
- "$ echo ${@: -7:0}\n"
- "\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2061
- msgid ""
- "If @var{parameter} is an indexed array name subscripted by @samp{@@} or "
- "@samp{*}, the result is the @var{length} members of the array beginning with "
- "@code{$@{@var{parameter}[@var{offset}]@}}. A negative @var{offset} is taken "
- "relative to one greater than the maximum index of the specified array. It "
- "is an expansion error if @var{length} evaluates to a number less than zero."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2064
- msgid "These examples show how you can use substring expansion with indexed arrays:"
- msgstr ""
- #. type: verbatim
- #: ./bashref.texi:2080
- #, no-wrap
- msgid ""
- "$ array=(0 1 2 3 4 5 6 7 8 9 0 a b c d e f g h)\n"
- "$ echo ${array[@]:7}\n"
- "7 8 9 0 a b c d e f g h\n"
- "$ echo ${array[@]:7:2}\n"
- "7 8\n"
- "$ echo ${array[@]: -7:2}\n"
- "b c\n"
- "$ echo ${array[@]: -7:-2}\n"
- "bash: -2: substring expression < 0\n"
- "$ echo ${array[@]:0}\n"
- "0 1 2 3 4 5 6 7 8 9 0 a b c d e f g h\n"
- "$ echo ${array[@]:0:2}\n"
- "0 1\n"
- "$ echo ${array[@]: -7:0}\n"
- "\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2085
- msgid ""
- "Substring expansion applied to an associative array produces undefined "
- "results."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2090
- msgid ""
- "Substring indexing is zero-based unless the positional parameters are used, "
- "in which case the indexing starts at 1 by default. If @var{offset} is 0, "
- "and the positional parameters are used, @code{$@@} is prefixed to the list."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2091
- #, no-wrap
- msgid "$@{!@var{prefix}*@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2092
- #, no-wrap
- msgid "$@{!@var{prefix}@@@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2097
- msgid ""
- "Expands to the names of variables whose names begin with @var{prefix}, "
- "separated by the first character of the @env{IFS} special variable. When "
- "@samp{@@} is used and the expansion appears within double quotes, each "
- "variable name expands to a separate word."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2098
- #, no-wrap
- msgid "$@{!@var{name}[@@]@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2099
- #, no-wrap
- msgid "$@{!@var{name}[*]@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2106
- msgid ""
- "If @var{name} is an array variable, expands to the list of array indices "
- "(keys) assigned in @var{name}. If @var{name} is not an array, expands to 0 "
- "if @var{name} is set and null otherwise. When @samp{@@} is used and the "
- "expansion appears within double quotes, each key expands to a separate word."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2107
- #, no-wrap
- msgid "$@{#@var{parameter}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2119
- msgid ""
- "The length in characters of the expanded value of @var{parameter} is "
- "substituted. If @var{parameter} is @samp{*} or @samp{@@}, the value "
- "substituted is the number of positional parameters. If @var{parameter} is "
- "an array name subscripted by @samp{*} or @samp{@@}, the value substituted is "
- "the number of elements in the array. If @var{parameter} is an indexed array "
- "name subscripted by a negative number, that number is interpreted as "
- "relative to one greater than the maximum index of @var{parameter}, so "
- "negative indices count back from the end of the array, and an index of -1 "
- "references the last element."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2120
- #, no-wrap
- msgid "$@{@var{parameter}#@var{word}@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2121
- #, no-wrap
- msgid "$@{@var{parameter}##@var{word}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2136
- msgid ""
- "The @var{word} is expanded to produce a pattern just as in filename "
- "expansion (@pxref{Filename Expansion}). If the pattern matches the "
- "beginning of the expanded value of @var{parameter}, then the result of the "
- "expansion is the expanded value of @var{parameter} with the shortest "
- "matching pattern (the @samp{#} case) or the longest matching pattern (the "
- "@samp{##} case) deleted. If @var{parameter} is @samp{@@} or @samp{*}, the "
- "pattern removal operation is applied to each positional parameter in turn, "
- "and the expansion is the resultant list. If @var{parameter} is an array "
- "variable subscripted with @samp{@@} or @samp{*}, the pattern removal "
- "operation is applied to each member of the array in turn, and the expansion "
- "is the resultant list."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2137
- #, no-wrap
- msgid "$@{@var{parameter}%@var{word}@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2138
- #, no-wrap
- msgid "$@{@var{parameter}%%@var{word}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2152
- msgid ""
- "The @var{word} is expanded to produce a pattern just as in filename "
- "expansion. If the pattern matches a trailing portion of the expanded value "
- "of @var{parameter}, then the result of the expansion is the value of "
- "@var{parameter} with the shortest matching pattern (the @samp{%} case) or "
- "the longest matching pattern (the @samp{%%} case) deleted. If "
- "@var{parameter} is @samp{@@} or @samp{*}, the pattern removal operation is "
- "applied to each positional parameter in turn, and the expansion is the "
- "resultant list. If @var{parameter} is an array variable subscripted with "
- "@samp{@@} or @samp{*}, the pattern removal operation is applied to each "
- "member of the array in turn, and the expansion is the resultant list."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2153
- #, no-wrap
- msgid "$@{@var{parameter}/@var{pattern}/@var{string}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2178
- msgid ""
- "The @var{pattern} is expanded to produce a pattern just as in filename "
- "expansion. @var{Parameter} is expanded and the longest match of "
- "@var{pattern} against its value is replaced with @var{string}. If "
- "@var{pattern} begins with @samp{/}, all matches of @var{pattern} are "
- "replaced with @var{string}. Normally only the first match is replaced. If "
- "@var{pattern} begins with @samp{#}, it must match at the beginning of the "
- "expanded value of @var{parameter}. If @var{pattern} begins with @samp{%}, "
- "it must match at the end of the expanded value of @var{parameter}. If "
- "@var{string} is null, matches of @var{pattern} are deleted and the @code{/} "
- "following @var{pattern} may be omitted. If the @code{nocasematch} shell "
- "option (see the description of @code{shopt} in @ref{The Shopt Builtin}) is "
- "enabled, the match is performed without regard to the case of alphabetic "
- "characters. If @var{parameter} is @samp{@@} or @samp{*}, the substitution "
- "operation is applied to each positional parameter in turn, and the expansion "
- "is the resultant list. If @var{parameter} is an array variable subscripted "
- "with @samp{@@} or @samp{*}, the substitution operation is applied to each "
- "member of the array in turn, and the expansion is the resultant list."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2179
- #, no-wrap
- msgid "$@{@var{parameter}^@var{pattern}@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2180
- #, no-wrap
- msgid "$@{@var{parameter}^^@var{pattern}@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2181
- #, no-wrap
- msgid "$@{@var{parameter},@var{pattern}@}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:2182
- #, no-wrap
- msgid "$@{@var{parameter},,@var{pattern}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2204
- msgid ""
- "This expansion modifies the case of alphabetic characters in "
- "@var{parameter}. The @var{pattern} is expanded to produce a pattern just as "
- "in filename expansion. Each character in the expanded value of "
- "@var{parameter} is tested against @var{pattern}, and, if it matches the "
- "pattern, its case is converted. The pattern should not attempt to match "
- "more than one character. The @samp{^} operator converts lowercase letters "
- "matching @var{pattern} to uppercase; the @samp{,} operator converts matching "
- "uppercase letters to lowercase. The @samp{^^} and @samp{,,} expansions "
- "convert each matched character in the expanded value; the @samp{^} and "
- "@samp{,} expansions match and convert only the first character in the "
- "expanded value. If @var{pattern} is omitted, it is treated like a @samp{?}, "
- "which matches every character. If @var{parameter} is @samp{@@} or @samp{*}, "
- "the case modification operation is applied to each positional parameter in "
- "turn, and the expansion is the resultant list. If @var{parameter} is an "
- "array variable subscripted with @samp{@@} or @samp{*}, the case modification "
- "operation is applied to each member of the array in turn, and the expansion "
- "is the resultant list."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2205
- #, no-wrap
- msgid "$@{@var{parameter}@@@var{operator}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2209
- msgid ""
- "The expansion is either a transformation of the value of @var{parameter} or "
- "information about @var{parameter} itself, depending on the value of "
- "@var{operator}. Each @var{operator} is a single letter:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:2211
- #, no-wrap
- msgid "Q"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2214
- msgid ""
- "The expansion is a string that is the value of @var{parameter} quoted in a "
- "format that can be reused as input."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2214
- #, no-wrap
- msgid "E"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2217
- msgid ""
- "The expansion is a string that is the value of @var{parameter} with "
- "backslash escape sequences expanded as with the @code{$'@dots{}'} quoting "
- "mechansim."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2217
- #, no-wrap
- msgid "P"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2220
- msgid ""
- "The expansion is a string that is the result of expanding the value of "
- "@var{parameter} as if it were a prompt string (@pxref{Controlling the "
- "Prompt})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2220
- #, no-wrap
- msgid "A"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2224
- msgid ""
- "The expansion is a string in the form of an assignment statement or "
- "@code{declare} command that, if evaluated, will recreate @var{parameter} "
- "with its attributes and value."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2224
- #, no-wrap
- msgid "a"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2227
- msgid ""
- "The expansion is a string consisting of flag values representing "
- "@var{parameter}'s attributes."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2236
- msgid ""
- "If @var{parameter} is @samp{@@} or @samp{*}, the operation is applied to "
- "each positional parameter in turn, and the expansion is the resultant list. "
- "If @var{parameter} is an array variable subscripted with @samp{@@} or "
- "@samp{*}, the operation is applied to each member of the array in turn, and "
- "the expansion is the resultant list."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2239
- msgid ""
- "The result of the expansion is subject to word splitting and pathname "
- "expansion as described below."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2248
- msgid ""
- "Command substitution allows the output of a command to replace the command "
- "itself. Command substitution occurs when a command is enclosed as follows:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2250
- #, no-wrap
- msgid "$(@var{command})\n"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2255
- #, no-wrap
- msgid "`@var{command}`\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2265
- msgid ""
- "Bash performs the expansion by executing @var{command} in a subshell "
- "environment and replacing the command substitution with the standard output "
- "of the command, with any trailing newlines deleted. Embedded newlines are "
- "not deleted, but they may be removed during word splitting. The command "
- "substitution @code{$(cat @var{file})} can be replaced by the equivalent but "
- "faster @code{$(< @var{file})}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2273
- msgid ""
- "When the old-style backquote form of substitution is used, backslash retains "
- "its literal meaning except when followed by @samp{$}, @samp{`}, or "
- "@samp{\\}. The first backquote not preceded by a backslash terminates the "
- "command substitution. When using the @code{$(@var{command})} form, all "
- "characters between the parentheses make up the command; none are treated "
- "specially."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2276
- msgid ""
- "Command substitutions may be nested. To nest when using the backquoted "
- "form, escape the inner backquotes with backslashes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2279
- msgid ""
- "If the substitution appears within double quotes, word splitting and "
- "filename expansion are not performed on the results."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2282
- #, no-wrap
- msgid "expansion, arithmetic"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2287
- msgid ""
- "Arithmetic expansion allows the evaluation of an arithmetic expression and "
- "the substitution of the result. The format for arithmetic expansion is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2290
- #, no-wrap
- msgid "$(( @var{expression} ))\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2298
- msgid ""
- "The expression is treated as if it were within double quotes, but a double "
- "quote inside the parentheses is not treated specially. All tokens in the "
- "expression undergo parameter and variable expansion, command substitution, "
- "and quote removal. The result is treated as the arithmetic expression to be "
- "evaluated. Arithmetic expansions may be nested."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2303
- msgid ""
- "The evaluation is performed according to the rules listed below "
- "(@pxref{Shell Arithmetic}). If the expression is invalid, Bash prints a "
- "message indicating failure to the standard error and no substitution occurs."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2306
- #, no-wrap
- msgid "process substitution"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2311
- msgid ""
- "Process substitution allows a process's input or output to be referred to "
- "using a filename. It takes the form of"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2313
- #, no-wrap
- msgid "<(@var{list})\n"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2318
- #, no-wrap
- msgid ">(@var{list})\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2334
- msgid ""
- "The process @var{list} is run asynchronously, and its input or output "
- "appears as a filename. This filename is passed as an argument to the "
- "current command as the result of the expansion. If the @code{>(@var{list})} "
- "form is used, writing to the file will provide input for @var{list}. If the "
- "@code{<(@var{list})} form is used, the file passed as an argument should be "
- "read to obtain the output of @var{list}. Note that no space may appear "
- "between the @code{<} or @code{>} and the left parenthesis, otherwise the "
- "construct would be interpreted as a redirection. Process substitution is "
- "supported on systems that support named pipes (@sc{fifo}s) or the "
- "@file{/dev/fd} method of naming open files."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2338
- msgid ""
- "When available, process substitution is performed simultaneously with "
- "parameter and variable expansion, command substitution, and arithmetic "
- "expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2346
- msgid ""
- "The shell scans the results of parameter expansion, command substitution, "
- "and arithmetic expansion that did not occur within double quotes for word "
- "splitting."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2366
- msgid ""
- "The shell treats each character of @env{$IFS} as a delimiter, and splits the "
- "results of the other expansions into words using these characters as field "
- "terminators. If @env{IFS} is unset, or its value is exactly "
- "@code{<space><tab><newline>}, the default, then sequences of @code{ "
- "<space>}, @code{<tab>}, and @code{<newline>} at the beginning and end of the "
- "results of the previous expansions are ignored, and any sequence of "
- "@env{IFS} characters not at the beginning or end serves to delimit words. "
- "If @env{IFS} has a value other than the default, then sequences of the "
- "whitespace characters @code{space}, @code{tab}, and @code{newline} are "
- "ignored at the beginning and end of the word, as long as the whitespace "
- "character is in the value of @env{IFS} (an @env{IFS} whitespace character). "
- "Any character in @env{IFS} that is not @env{IFS} whitespace, along with any "
- "adjacent @env{IFS} whitespace characters, delimits a field. A sequence of "
- "@env{IFS} whitespace characters is also treated as a delimiter. If the "
- "value of @env{IFS} is null, no word splitting occurs."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2379
- msgid ""
- "Explicit null arguments (@code{\"\"} or @code{''}) are retained and passed "
- "to commands as empty strings. Unquoted implicit null arguments, resulting "
- "from the expansion of parameters that have no values, are removed. If a "
- "parameter with no value is expanded within double quotes, a null argument "
- "results and is retained and passed to a command as an empty string. When a "
- "quoted null argument appears as part of a word whose expansion is non-null, "
- "the null argument is removed. That is, the word @code{-d''} becomes "
- "@code{-d} after word splitting and null argument removal."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2382
- msgid "Note that if no expansion occurs, no splitting is performed."
- msgstr ""
- #. type: subsubsection
- #: ./bashref.texi:2387 ./bashref.texi:2441 ./bashref.texi:2442
- #, no-wrap
- msgid "Pattern Matching"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2387
- msgid "How the shell matches patterns."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2388
- #, no-wrap
- msgid "expansion, filename"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2389
- #, no-wrap
- msgid "expansion, pathname"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2391
- #, no-wrap
- msgid "pathname expansion"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2409
- msgid ""
- "After word splitting, unless the @option{-f} option has been set (@pxref{The "
- "Set Builtin}), Bash scans each word for the characters @samp{*}, @samp{?}, "
- "and @samp{[}. If one of these characters appears, then the word is regarded "
- "as a @var{pattern}, and replaced with an alphabetically sorted list of "
- "filenames matching the pattern (@pxref{Pattern Matching}). If no matching "
- "filenames are found, and the shell option @code{nullglob} is disabled, the "
- "word is left unchanged. If the @code{nullglob} option is set, and no "
- "matches are found, the word is removed. If the @code{failglob} shell option "
- "is set, and no matches are found, an error message is printed and the "
- "command is not executed. If the shell option @code{nocaseglob} is enabled, "
- "the match is performed without regard to the case of alphabetic characters."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2416
- msgid ""
- "When a pattern is used for filename expansion, the character @samp{.} at the "
- "start of a filename or immediately following a slash must be matched "
- "explicitly, unless the shell option @code{dotglob} is set. When matching a "
- "filename, the slash character must always be matched explicitly. In other "
- "cases, the @samp{.} character is not treated specially."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2420
- msgid ""
- "See the description of @code{shopt} in @ref{The Shopt Builtin}, for a "
- "description of the @code{nocaseglob}, @code{nullglob}, @code{failglob}, and "
- "@code{dotglob} options."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2440
- msgid ""
- "The @env{GLOBIGNORE} shell variable may be used to restrict the set of "
- "filenames matching a pattern. If @env{GLOBIGNORE} is set, each matching "
- "filename that also matches one of the patterns in @env{GLOBIGNORE} is "
- "removed from the list of matches. If the @code{nocaseglob} option is set, "
- "the matching against the patterns in @env{GLOBIGNORE} is performed without "
- "regard to case. The filenames @file{.} and @file{..} are always ignored "
- "when @env{GLOBIGNORE} is set and not null. However, setting "
- "@env{GLOBIGNORE} to a non-null value has the effect of enabling the "
- "@code{dotglob} shell option, so all other filenames beginning with a "
- "@samp{.} will match. To get the old behavior of ignoring filenames "
- "beginning with a @samp{.}, make @samp{.*} one of the patterns in "
- "@env{GLOBIGNORE}. The @code{dotglob} option is disabled when "
- "@env{GLOBIGNORE} is unset."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2443
- #, no-wrap
- msgid "pattern matching"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2444
- #, no-wrap
- msgid "matching, pattern"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2453
- msgid ""
- "Any character that appears in a pattern, other than the special pattern "
- "characters described below, matches itself. The @sc{nul} character may not "
- "occur in a pattern. A backslash escapes the following character; the "
- "escaping backslash is discarded when matching. The special pattern "
- "characters must be quoted if they are to be matched literally."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2455
- msgid "The special pattern characters have the following meanings:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2464
- msgid ""
- "Matches any string, including the null string. When the @code{globstar} "
- "shell option is enabled, and @samp{*} is used in a filename expansion "
- "context, two adjacent @samp{*}s used as a single pattern will match all "
- "files and zero or more directories and subdirectories. If followed by a "
- "@samp{/}, two adjacent @samp{*}s will match only directories and "
- "subdirectories."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2466
- msgid "Matches any single character."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2466
- #, no-wrap
- msgid "[@dots{}]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2480
- msgid ""
- "Matches any one of the enclosed characters. A pair of characters separated "
- "by a hyphen denotes a @var{range expression}; any character that falls "
- "between those two characters, inclusive, using the current locale's "
- "collating sequence and character set, is matched. If the first character "
- "following the @samp{[} is a @samp{!} or a @samp{^} then any character not "
- "enclosed is matched. A @samp{@minus{}} may be matched by including it as "
- "the first or last character in the set. A @samp{]} may be matched by "
- "including it as the first character in the set. The sorting order of "
- "characters in range expressions is determined by the current locale and the "
- "values of the @env{LC_COLLATE} and @env{LC_ALL} shell variables, if set."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2489
- msgid ""
- "For example, in the default C locale, @samp{[a-dx-z]} is equivalent to "
- "@samp{[abcdxyz]}. Many locales sort characters in dictionary order, and in "
- "these locales @samp{[a-dx-z]} is typically not equivalent to "
- "@samp{[abcdxyz]}; it might be equivalent to @samp{[aBbCcDdxXyYz]}, for "
- "example. To obtain the traditional interpretation of ranges in bracket "
- "expressions, you can force the use of the C locale by setting the "
- "@env{LC_COLLATE} or @env{LC_ALL} environment variable to the value @samp{C}, "
- "or enable the @code{globasciiranges} shell option."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2494
- msgid ""
- "Within @samp{[} and @samp{]}, @var{character classes} can be specified using "
- "the syntax @code{[:}@var{class}@code{:]}, where @var{class} is one of the "
- "following classes defined in the @sc{posix} standard:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2497
- #, no-wrap
- msgid ""
- "alnum alpha ascii blank cntrl digit graph lower\n"
- "print punct space upper word xdigit\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2502
- msgid ""
- "A character class matches any character belonging to that class. The "
- "@code{word} character class matches letters, digits, and the character "
- "@samp{_}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2507
- msgid ""
- "Within @samp{[} and @samp{]}, an @var{equivalence class} can be specified "
- "using the syntax @code{[=}@var{c}@code{=]}, which matches all characters "
- "with the same collation weight (as defined by the current locale) as the "
- "character @var{c}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:2510
- msgid ""
- "Within @samp{[} and @samp{]}, the syntax @code{[.}@var{symbol}@code{.]} "
- "matches the collating symbol @var{symbol}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2518
- msgid ""
- "If the @code{extglob} shell option is enabled using the @code{shopt} "
- "builtin, several extended pattern matching operators are recognized. In the "
- "following description, a @var{pattern-list} is a list of one or more "
- "patterns separated by a @samp{|}. Composite patterns may be formed using "
- "one or more of the following sub-patterns:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:2520
- #, no-wrap
- msgid "?(@var{pattern-list})"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2522
- msgid "Matches zero or one occurrence of the given patterns."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2523
- #, no-wrap
- msgid "*(@var{pattern-list})"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2525
- msgid "Matches zero or more occurrences of the given patterns."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2526
- #, no-wrap
- msgid "+(@var{pattern-list})"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2528
- msgid "Matches one or more occurrences of the given patterns."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2529
- #, no-wrap
- msgid "@@(@var{pattern-list})"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2531
- msgid "Matches one of the given patterns."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2532
- #, no-wrap
- msgid "!(@var{pattern-list})"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2534
- msgid "Matches anything except one of the given patterns."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2542
- msgid ""
- "After the preceding expansions, all unquoted occurrences of the characters "
- "@samp{\\}, @samp{'}, and @samp{\"} that did not result from one of the above "
- "expansions are removed."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2545
- #, no-wrap
- msgid "redirection"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2560
- msgid ""
- "Before a command is executed, its input and output may be @var{redirected} "
- "using a special notation interpreted by the shell. Redirection allows "
- "commands' file handles to be duplicated, opened, closed, made to refer to "
- "different files, and can change the files the command reads from and writes "
- "to. Redirection may also be used to modify file handles in the current "
- "shell execution environment. The following redirection operators may "
- "precede or appear anywhere within a simple command or may follow a command. "
- "Redirections are processed in the order they appear, from left to right."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2568
- msgid ""
- "Each redirection that may be preceded by a file descriptor number may "
- "instead be preceded by a word of the form @{@var{varname}@}. In this case, "
- "for each redirection operator except >&- and <&-, the shell will allocate a "
- "file descriptor greater than 10 and assign it to @{@var{varname}@}. If >&- "
- "or <&- is preceded by @{@var{varname}@}, the value of @var{varname} defines "
- "the file descriptor to close."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2575
- msgid ""
- "In the following descriptions, if the file descriptor number is omitted, and "
- "the first character of the redirection operator is @samp{<}, the redirection "
- "refers to the standard input (file descriptor 0). If the first character of "
- "the redirection operator is @samp{>}, the redirection refers to the standard "
- "output (file descriptor 1)."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2581
- msgid ""
- "The word following the redirection operator in the following descriptions, "
- "unless otherwise noted, is subjected to brace expansion, tilde expansion, "
- "parameter expansion, command substitution, arithmetic expansion, quote "
- "removal, filename expansion, and word splitting. If it expands to more than "
- "one word, Bash reports an error."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2584
- msgid ""
- "Note that the order of redirections is significant. For example, the "
- "command"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2586
- #, no-wrap
- msgid "ls > @var{dirlist} 2>&1\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2590
- msgid ""
- "directs both standard output (file descriptor 1) and standard error (file "
- "descriptor 2) to the file @var{dirlist}, while the command"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2592
- #, no-wrap
- msgid "ls 2>&1 > @var{dirlist}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2597
- msgid ""
- "directs only the standard output to file @var{dirlist}, because the standard "
- "error was made a copy of the standard output before the standard output was "
- "redirected to @var{dirlist}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2603
- msgid ""
- "Bash handles several filenames specially when they are used in redirections, "
- "as described in the following table. If the operating system on which Bash "
- "is running provides these special files, bash will use them; otherwise it "
- "will emulate them internally with the behavior described below."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2605
- #, no-wrap
- msgid "/dev/fd/@var{fd}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2607
- msgid "If @var{fd} is a valid integer, file descriptor @var{fd} is duplicated."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2608
- #, no-wrap
- msgid "/dev/stdin"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2610
- msgid "File descriptor 0 is duplicated."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2611
- #, no-wrap
- msgid "/dev/stdout"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2613
- msgid "File descriptor 1 is duplicated."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2614
- #, no-wrap
- msgid "/dev/stderr"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2616
- msgid "File descriptor 2 is duplicated."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2617
- #, no-wrap
- msgid "/dev/tcp/@var{host}/@var{port}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2621
- msgid ""
- "If @var{host} is a valid hostname or Internet address, and @var{port} is an "
- "integer port number or service name, Bash attempts to open the corresponding "
- "TCP socket."
- msgstr ""
- #. type: item
- #: ./bashref.texi:2622
- #, no-wrap
- msgid "/dev/udp/@var{host}/@var{port}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:2626
- msgid ""
- "If @var{host} is a valid hostname or Internet address, and @var{port} is an "
- "integer port number or service name, Bash attempts to open the corresponding "
- "UDP socket."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2629
- msgid "A failure to open or create a file causes the redirection to fail."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2633
- msgid ""
- "Redirections using file descriptors greater than 9 should be used with care, "
- "as they may conflict with file descriptors the shell uses internally."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2634
- #, no-wrap
- msgid "Redirecting Input"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2640
- msgid ""
- "Redirection of input causes the file whose name results from the expansion "
- "of @var{word} to be opened for reading on file descriptor @code{n}, or the "
- "standard input (file descriptor 0) if @code{n} is not specified."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2642
- msgid "The general format for redirecting input is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2644
- #, no-wrap
- msgid "[@var{n}]<@var{word}\n"
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2646
- #, no-wrap
- msgid "Redirecting Output"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2653
- msgid ""
- "Redirection of output causes the file whose name results from the expansion "
- "of @var{word} to be opened for writing on file descriptor @var{n}, or the "
- "standard output (file descriptor 1) if @var{n} is not specified. If the "
- "file does not exist it is created; if it does exist it is truncated to zero "
- "size."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2655
- msgid "The general format for redirecting output is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2657
- #, no-wrap
- msgid "[@var{n}]>[|]@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2666
- msgid ""
- "If the redirection operator is @samp{>}, and the @code{noclobber} option to "
- "the @code{set} builtin has been enabled, the redirection will fail if the "
- "file whose name results from the expansion of @var{word} exists and is a "
- "regular file. If the redirection operator is @samp{>|}, or the redirection "
- "operator is @samp{>} and the @code{noclobber} option is not enabled, the "
- "redirection is attempted even if the file named by @var{word} exists."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2667
- #, no-wrap
- msgid "Appending Redirected Output"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2674
- msgid ""
- "Redirection of output in this fashion causes the file whose name results "
- "from the expansion of @var{word} to be opened for appending on file "
- "descriptor @var{n}, or the standard output (file descriptor 1) if @var{n} is "
- "not specified. If the file does not exist it is created."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2676
- msgid "The general format for appending output is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2678
- #, no-wrap
- msgid "[@var{n}]>>@var{word}\n"
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2680
- #, no-wrap
- msgid "Redirecting Standard Output and Standard Error"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2686
- msgid ""
- "This construct allows both the standard output (file descriptor 1) and the "
- "standard error output (file descriptor 2) to be redirected to the file "
- "whose name is the expansion of @var{word}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2689
- msgid "There are two formats for redirecting standard output and standard error:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2691
- #, no-wrap
- msgid "&>@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2694
- msgid "and"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2696
- #, no-wrap
- msgid ">&@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2700
- msgid ""
- "Of the two forms, the first is preferred. This is semantically equivalent "
- "to"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2702
- #, no-wrap
- msgid ">@var{word} 2>&1\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2706
- msgid ""
- "When using the second form, @var{word} may not expand to a number or "
- "@samp{-}. If it does, other redirection operators apply (see Duplicating "
- "File Descriptors below) for compatibility reasons."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2707
- #, no-wrap
- msgid "Appending Standard Output and Standard Error"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2713
- msgid ""
- "This construct allows both the standard output (file descriptor 1) and the "
- "standard error output (file descriptor 2) to be appended to the file whose "
- "name is the expansion of @var{word}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2715
- msgid "The format for appending standard output and standard error is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2717
- #, no-wrap
- msgid "&>>@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2720
- msgid "This is semantically equivalent to"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2722
- #, no-wrap
- msgid ">>@var{word} 2>&1\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2724
- msgid "(see Duplicating File Descriptors below)."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2725
- #, no-wrap
- msgid "Here Documents"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2731
- msgid ""
- "This type of redirection instructs the shell to read input from the current "
- "source until a line containing only @var{word} (with no trailing blanks) is "
- "seen. All of the lines read up to that point are then used as the standard "
- "input (or file descriptor @var{n} if @var{n} is specified) for a command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2733
- msgid "The format of here-documents is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2737
- #, no-wrap
- msgid ""
- "[@var{n}]<<[@minus{}]@var{word}\n"
- " @var{here-document}\n"
- "@var{delimiter}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2750
- msgid ""
- "No parameter and variable expansion, command substitution, arithmetic "
- "expansion, or filename expansion is performed on @var{word}. If any part of "
- "@var{word} is quoted, the @var{delimiter} is the result of quote removal on "
- "@var{word}, and the lines in the here-document are not expanded. If "
- "@var{word} is unquoted, all lines of the here-document are subjected to "
- "parameter expansion, command substitution, and arithmetic expansion, the "
- "character sequence @code{\\newline} is ignored, and @samp{\\} must be used "
- "to quote the characters @samp{\\}, @samp{$}, and @samp{`}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2756
- msgid ""
- "If the redirection operator is @samp{<<-}, then all leading tab characters "
- "are stripped from input lines and the line containing @var{delimiter}. This "
- "allows here-documents within shell scripts to be indented in a natural "
- "fashion."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2757
- #, no-wrap
- msgid "Here Strings"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2759
- msgid "A variant of here documents, the format is:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2761
- #, no-wrap
- msgid "[@var{n}]<<< @var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2771
- msgid ""
- "The @var{word} undergoes brace expansion, tilde expansion, parameter and "
- "variable expansion, command substitution, arithmetic expansion, and quote "
- "removal. Pathname expansion and word splitting are not performed. The "
- "result is supplied as a single string, with a newline appended, to the "
- "command on its standard input (or file descriptor @var{n} if @var{n} is "
- "specified)."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2772
- #, no-wrap
- msgid "Duplicating File Descriptors"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2774 ./bashref.texi:2805 ./bashref.texi:2823
- msgid "The redirection operator"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2776
- #, no-wrap
- msgid "[@var{n}]<&@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2787
- msgid ""
- "is used to duplicate input file descriptors. If @var{word} expands to one "
- "or more digits, the file descriptor denoted by @var{n} is made to be a copy "
- "of that file descriptor. If the digits in @var{word} do not specify a file "
- "descriptor open for input, a redirection error occurs. If @var{word} "
- "evaluates to @samp{-}, file descriptor @var{n} is closed. If @var{n} is not "
- "specified, the standard input (file descriptor 0) is used."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2789
- msgid "The operator"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2791
- #, no-wrap
- msgid "[@var{n}]>&@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2802
- msgid ""
- "is used similarly to duplicate output file descriptors. If @var{n} is not "
- "specified, the standard output (file descriptor 1) is used. If the digits "
- "in @var{word} do not specify a file descriptor open for output, a "
- "redirection error occurs. If @var{word} evaluates to @samp{-}, file "
- "descriptor @var{n} is closed. As a special case, if @var{n} is omitted, and "
- "@var{word} does not expand to one or more digits or @samp{-}, the standard "
- "output and standard error are redirected as described previously."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2803
- #, no-wrap
- msgid "Moving File Descriptors"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2807
- #, no-wrap
- msgid "[@var{n}]<&@var{digit}-\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2812
- msgid ""
- "moves the file descriptor @var{digit} to file descriptor @var{n}, or the "
- "standard input (file descriptor 0) if @var{n} is not specified. @var{digit} "
- "is closed after being duplicated to @var{n}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2814
- msgid "Similarly, the redirection operator"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2816
- #, no-wrap
- msgid "[@var{n}]>&@var{digit}-\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2820
- msgid ""
- "moves the file descriptor @var{digit} to file descriptor @var{n}, or the "
- "standard output (file descriptor 1) if @var{n} is not specified."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2821
- #, no-wrap
- msgid "Opening File Descriptors for Reading and Writing"
- msgstr ""
- #. type: example
- #: ./bashref.texi:2825
- #, no-wrap
- msgid "[@var{n}]<>@var{word}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2831
- msgid ""
- "causes the file whose name is the expansion of @var{word} to be opened for "
- "both reading and writing on file descriptor @var{n}, or on file descriptor 0 "
- "if @var{n} is not specified. If the file does not exist, it is created."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2847 ./bashref.texi:2849 ./bashref.texi:2850
- #, no-wrap
- msgid "Simple Command Expansion"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2847
- msgid "How Bash expands simple commands before executing them."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2847 ./bashref.texi:2894 ./bashref.texi:2895
- #, no-wrap
- msgid "Command Search and Execution"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2847
- msgid "How Bash finds commands and runs them."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2847 ./bashref.texi:2950 ./bashref.texi:2951
- #, no-wrap
- msgid "Command Execution Environment"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2847
- msgid "The environment in which Bash executes commands that are not shell builtins."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2847 ./bashref.texi:3046 ./bashref.texi:3047
- #, no-wrap
- msgid "Environment"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2847
- msgid "The environment given to a command."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2847 ./bashref.texi:3084 ./bashref.texi:3085
- #, no-wrap
- msgid "Exit Status"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2847
- msgid "The status returned by commands and how Bash interprets it."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:2847 ./bashref.texi:3122 ./bashref.texi:3123
- #, no-wrap
- msgid "Signals"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:2847
- msgid "What happens when Bash or a command it runs receives a signal."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2851
- #, no-wrap
- msgid "command expansion"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2855
- msgid ""
- "When a simple command is executed, the shell performs the following "
- "expansions, assignments, and redirections, from left to right."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2861
- msgid ""
- "The words that the parser has marked as variable assignments (those "
- "preceding the command name) and redirections are saved for later processing."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2868
- msgid ""
- "The words that are not variable assignments or redirections are expanded "
- "(@pxref{Shell Expansions}). If any words remain after expansion, the first "
- "word is taken to be the name of the command and the remaining words are the "
- "arguments."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2871
- msgid "Redirections are performed as described above (@pxref{Redirections})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2876
- msgid ""
- "The text after the @samp{=} in each variable assignment undergoes tilde "
- "expansion, parameter expansion, command substitution, arithmetic expansion, "
- "and quote removal before being assigned to the variable."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2883
- msgid ""
- "If no command name results, the variable assignments affect the current "
- "shell environment. Otherwise, the variables are added to the environment of "
- "the executed command and do not affect the current shell environment. If "
- "any of the assignments attempts to assign a value to a readonly variable, an "
- "error occurs, and the command exits with a non-zero status."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2887
- msgid ""
- "If no command name results, redirections are performed, but do not affect "
- "the current shell environment. A redirection error causes the command to "
- "exit with a non-zero status."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2893
- msgid ""
- "If there is a command name left after expansion, execution proceeds as "
- "described below. Otherwise, the command exits. If one of the expansions "
- "contained a command substitution, the exit status of the command is the exit "
- "status of the last command substitution performed. If there were no command "
- "substitutions, the command exits with a status of zero."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2896
- #, no-wrap
- msgid "command execution"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2897
- #, no-wrap
- msgid "command search"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2902
- msgid ""
- "After a command has been split into words, if it results in a simple command "
- "and an optional list of arguments, the following actions are taken."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2908
- msgid ""
- "If the command name contains no slashes, the shell attempts to locate it. "
- "If there exists a shell function by that name, that function is invoked as "
- "described in @ref{Shell Functions}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2913
- msgid ""
- "If the name does not match a function, the shell searches for it in the list "
- "of shell builtins. If a match is found, that builtin is invoked."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2930
- msgid ""
- "If the name is neither a shell function nor a builtin, and contains no "
- "slashes, Bash searches each element of @env{$PATH} for a directory "
- "containing an executable file by that name. Bash uses a hash table to "
- "remember the full pathnames of executable files to avoid multiple @env{PATH} "
- "searches (see the description of @code{hash} in @ref{Bourne Shell "
- "Builtins}). A full search of the directories in @env{$PATH} is performed "
- "only if the command is not found in the hash table. If the search is "
- "unsuccessful, the shell searches for a defined shell function named "
- "@code{command_not_found_handle}. If that function exists, it is invoked "
- "with the original command and the original command's arguments as its "
- "arguments, and the function's exit status becomes the exit status of the "
- "shell. If that function is not defined, the shell prints an error message "
- "and returns an exit status of 127."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2937
- msgid ""
- "If the search is successful, or if the command name contains one or more "
- "slashes, the shell executes the named program in a separate execution "
- "environment. Argument 0 is set to the name given, and the remaining "
- "arguments to the command are set to the arguments supplied, if any."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2943
- msgid ""
- "If this execution fails because the file is not in executable format, and "
- "the file is not a directory, it is assumed to be a @var{shell script} and "
- "the shell executes it as described in @ref{Shell Scripts}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:2947
- msgid ""
- "If the command was not begun asynchronously, the shell waits for the command "
- "to complete and collects its exit status."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:2952
- #, no-wrap
- msgid "execution environment"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:2956
- msgid ""
- "The shell has an @var{execution environment}, which consists of the "
- "following:"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2961
- msgid ""
- "open files inherited by the shell at invocation, as modified by redirections "
- "supplied to the @code{exec} builtin"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2965
- msgid ""
- "the current working directory as set by @code{cd}, @code{pushd}, or "
- "@code{popd}, or inherited by the shell at invocation"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2969
- msgid ""
- "the file creation mode mask as set by @code{umask} or inherited from the "
- "shell's parent"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2972
- msgid "current traps set by @code{trap}"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2976
- msgid ""
- "shell parameters that are set by variable assignment or with @code{set} or "
- "inherited from the shell's parent in the environment"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2980
- msgid ""
- "shell functions defined during execution or inherited from the shell's "
- "parent in the environment"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2984
- msgid ""
- "options enabled at invocation (either by default or with command-line "
- "arguments) or by @code{set}"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2987
- msgid "options enabled by @code{shopt} (@pxref{The Shopt Builtin})"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2990
- msgid "shell aliases defined with @code{alias} (@pxref{Aliases})"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:2995
- msgid ""
- "various process @sc{id}s, including those of background jobs "
- "(@pxref{Lists}), the value of @code{$$}, and the value of @env{$PPID}"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3003
- msgid ""
- "When a simple command other than a builtin or shell function is to be "
- "executed, it is invoked in a separate execution environment that consists of "
- "the following. Unless otherwise noted, the values are inherited from the "
- "shell."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:3008
- msgid ""
- "the shell's open files, plus any modifications and additions specified by "
- "redirections to the command"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:3011
- msgid "the current working directory"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:3014
- msgid "the file creation mode mask"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:3018
- msgid ""
- "shell variables and functions marked for export, along with variables "
- "exported for the command, passed in the environment (@pxref{Environment})"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:3022
- msgid ""
- "traps caught by the shell are reset to the values inherited from the shell's "
- "parent, and traps ignored by the shell are ignored"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3027
- msgid ""
- "A command invoked in this separate environment cannot affect the shell's "
- "execution environment."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3036
- msgid ""
- "Command substitution, commands grouped with parentheses, and asynchronous "
- "commands are invoked in a subshell environment that is a duplicate of the "
- "shell environment, except that traps caught by the shell are reset to the "
- "values that the shell inherited from its parent at invocation. Builtin "
- "commands that are invoked as part of a pipeline are also executed in a "
- "subshell environment. Changes made to the subshell environment cannot "
- "affect the shell's execution environment."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3040
- msgid ""
- "Subshells spawned to execute command substitutions inherit the value of the "
- "@option{-e} option from the parent shell. When not in @sc{posix} mode, Bash "
- "clears the @option{-e} option in such subshells."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3045
- msgid ""
- "If a command is followed by a @samp{&} and job control is not active, the "
- "default standard input for the command is the empty file @file{/dev/null}. "
- "Otherwise, the invoked command inherits the file descriptors of the calling "
- "shell as modified by redirections."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:3048
- #, no-wrap
- msgid "environment"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3053
- msgid ""
- "When a program is invoked it is given an array of strings called the "
- "@var{environment}. This is a list of name-value pairs, of the form "
- "@code{name=value}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3069
- msgid ""
- "Bash provides several ways to manipulate the environment. On invocation, "
- "the shell scans its own environment and creates a parameter for each name "
- "found, automatically marking it for @var{export} to child processes. "
- "Executed commands inherit the environment. The @code{export} and "
- "@samp{declare -x} commands allow parameters and functions to be added to and "
- "deleted from the environment. If the value of a parameter in the "
- "environment is modified, the new value becomes part of the environment, "
- "replacing the old. The environment inherited by any executed command "
- "consists of the shell's initial environment, whose values may be modified in "
- "the shell, less any pairs removed by the @code{unset} and @samp{export -n} "
- "commands, plus any additions via the @code{export} and @samp{declare -x} "
- "commands."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3075
- msgid ""
- "The environment for any simple command or function may be augmented "
- "temporarily by prefixing it with parameter assignments, as described in "
- "@ref{Shell Parameters}. These assignment statements affect only the "
- "environment seen by that command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3079
- msgid ""
- "If the @option{-k} option is set (@pxref{The Set Builtin}), then all "
- "parameter assignments are placed in the environment for a command, not just "
- "those that precede the command name."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3083
- msgid ""
- "When Bash invokes an external command, the variable @samp{$_} is set to the "
- "full pathname of the command and passed to that command in its environment."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3095
- msgid ""
- "The exit status of an executed command is the value returned by the "
- "@var{waitpid} system call or equivalent function. Exit statuses fall "
- "between 0 and 255, though, as explained below, the shell may use values "
- "above 125 specially. Exit statuses from shell builtins and compound "
- "commands are also limited to this range. Under certain circumstances, the "
- "shell will use special values to indicate specific failure modes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3104
- msgid ""
- "For the shell's purposes, a command which exits with a zero exit status has "
- "succeeded. A non-zero exit status indicates failure. This seemingly "
- "counter-intuitive scheme is used so there is one well-defined way to "
- "indicate success and a variety of ways to indicate various failure modes. "
- "When a command terminates on a fatal signal whose number is @var{N}, Bash "
- "uses the value 128+@var{N} as the exit status."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3108
- msgid ""
- "If a command is not found, the child process created to execute it returns a "
- "status of 127. If a command is found but is not executable, the return "
- "status is 126."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3111
- msgid ""
- "If a command fails because of an error during expansion or redirection, the "
- "exit status is greater than zero."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3115
- msgid ""
- "The exit status is used by the Bash conditional commands (@pxref{Conditional "
- "Constructs}) and some of the list constructs (@pxref{Lists})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3121
- msgid ""
- "All of the Bash builtins return an exit status of zero if they succeed and a "
- "non-zero status on failure, so they may be used by the conditional and list "
- "constructs. All builtins return an exit status of 2 to indicate incorrect "
- "usage, generally invalid options or missing arguments."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:3124
- #, no-wrap
- msgid "signal handling"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3134
- msgid ""
- "When Bash is interactive, in the absence of any traps, it ignores "
- "@code{SIGTERM} (so that @samp{kill 0} does not kill an interactive shell), "
- "and @code{SIGINT} is caught and handled (so that the @code{wait} builtin is "
- "interruptible). When Bash receives a @code{SIGINT}, it breaks out of any "
- "executing loops. In all cases, Bash ignores @code{SIGQUIT}. If job control "
- "is in effect (@pxref{Job Control}), Bash ignores @code{SIGTTIN}, "
- "@code{SIGTTOU}, and @code{SIGTSTP}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3143
- msgid ""
- "Non-builtin commands started by Bash have signal handlers set to the values "
- "inherited by the shell from its parent. When job control is not in effect, "
- "asynchronous commands ignore @code{SIGINT} and @code{SIGQUIT} in addition to "
- "these inherited handlers. Commands run as a result of command substitution "
- "ignore the keyboard-generated job control signals @code{SIGTTIN}, "
- "@code{SIGTTOU}, and @code{SIGTSTP}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3154
- msgid ""
- "The shell exits by default upon receipt of a @code{SIGHUP}. Before exiting, "
- "an interactive shell resends the @code{SIGHUP} to all jobs, running or "
- "stopped. Stopped jobs are sent @code{SIGCONT} to ensure that they receive "
- "the @code{SIGHUP}. To prevent the shell from sending the @code{SIGHUP} "
- "signal to a particular job, it should be removed from the jobs table with "
- "the @code{disown} builtin (@pxref{Job Control Builtins}) or marked to not "
- "receive @code{SIGHUP} using @code{disown -h}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3158
- msgid ""
- "If the @code{huponexit} shell option has been set with @code{shopt} "
- "(@pxref{The Shopt Builtin}), Bash sends a @code{SIGHUP} to all jobs when an "
- "interactive login shell exits."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3167
- msgid ""
- "If Bash is waiting for a command to complete and receives a signal for which "
- "a trap has been set, the trap will not be executed until the command "
- "completes. When Bash is waiting for an asynchronous command via the "
- "@code{wait} builtin, the reception of a signal for which a trap has been set "
- "will cause the @code{wait} builtin to return immediately with an exit status "
- "greater than 128, immediately after which the trap is executed."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:3170
- #, no-wrap
- msgid "shell script"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3180
- msgid ""
- "A shell script is a text file containing shell commands. When such a file "
- "is used as the first non-option argument when invoking Bash, and neither the "
- "@option{-c} nor @option{-s} option is supplied (@pxref{Invoking Bash}), Bash "
- "reads and executes commands from the file, then exits. This mode of "
- "operation creates a non-interactive shell. The shell first searches for the "
- "file in the current directory, and looks in the directories in @env{$PATH} "
- "if not found there."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3187
- msgid ""
- "When Bash runs a shell script, it sets the special parameter @code{0} to the "
- "name of the file, rather than the name of the shell, and the positional "
- "parameters are set to the remaining arguments, if any are given. If no "
- "additional arguments are supplied, the positional parameters are unset."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3192
- msgid ""
- "A shell script may be made executable by using the @code{chmod} command to "
- "turn on the execute bit. When Bash finds such a file while searching the "
- "@env{$PATH} for a command, it spawns a subshell to execute it. In other "
- "words, executing"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3194
- #, no-wrap
- msgid "filename @var{arguments}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3197
- msgid "is equivalent to executing"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3199
- #, no-wrap
- msgid "bash filename @var{arguments}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3208
- msgid ""
- "if @code{filename} is an executable shell script. This subshell "
- "reinitializes itself, so that the effect is as if a new shell had been "
- "invoked to interpret the script, with the exception that the locations of "
- "commands remembered by the parent (see the description of @code{hash} in "
- "@ref{Bourne Shell Builtins}) are retained by the child."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3215
- msgid ""
- "Most versions of Unix make this a part of the operating system's command "
- "execution mechanism. If the first line of a script begins with the two "
- "characters @samp{#!}, the remainder of the line specifies an interpreter for "
- "the program. Thus, you can specify Bash, @code{awk}, Perl, or some other "
- "interpreter and write the rest of the script file in that language."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3223
- msgid ""
- "The arguments to the interpreter consist of a single optional argument "
- "following the interpreter name on the first line of the script file, "
- "followed by the name of the script file, followed by the rest of the "
- "arguments. Bash will perform this action on operating systems that do not "
- "handle it themselves. Note that some older versions of Unix limit the "
- "interpreter name and argument to a maximum of 32 characters."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3228
- msgid ""
- "Bash scripts often begin with @code{#! /bin/bash} (assuming that Bash has "
- "been installed in @file{/bin}), since this ensures that Bash will be used to "
- "interpret the script, even if it is executed under another shell."
- msgstr ""
- #. type: section
- #: ./bashref.texi:3240 ./bashref.texi:3275 ./bashref.texi:3276
- #, no-wrap
- msgid "Bourne Shell Builtins"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:3240
- msgid "Builtin commands inherited from the Bourne Shell."
- msgstr ""
- #. type: node
- #: ./bashref.texi:3240 ./bashref.texi:3825
- #, no-wrap
- msgid "Bash Builtins"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:3240
- msgid "Table of builtins specific to Bash."
- msgstr ""
- #. type: section
- #: ./bashref.texi:3240 ./bashref.texi:4657 ./bashref.texi:4658
- #, no-wrap
- msgid "Modifying Shell Behavior"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:3240
- msgid "Builtins to modify shell attributes and optional behavior."
- msgstr ""
- #. type: section
- #: ./bashref.texi:3240 ./bashref.texi:5346 ./bashref.texi:5347
- #, no-wrap
- msgid "Special Builtins"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:3240
- msgid "Builtin commands classified specially by POSIX."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3248
- msgid ""
- "Builtin commands are contained within the shell itself. When the name of a "
- "builtin command is used as the first word of a simple command (@pxref{Simple "
- "Commands}), the shell executes the command directly, without invoking "
- "another program. Builtin commands are necessary to implement functionality "
- "impossible or inconvenient to obtain with separate utilities."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3252
- msgid ""
- "This section briefly describes the builtins which Bash inherits from the "
- "Bourne Shell, as well as the builtin commands which are unique to or have "
- "been extended in Bash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3259
- msgid ""
- "Several builtin commands are described in other chapters: builtin commands "
- "which provide the Bash interface to the job control facilities (@pxref{Job "
- "Control Builtins}), the directory stack (@pxref{Directory Stack Builtins}), "
- "the command history (@pxref{Bash History Builtins}), and the programmable "
- "completion facilities (@pxref{Programmable Completion Builtins})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3261
- msgid "Many of the builtins have been extended by @sc{posix} or Bash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3274
- msgid ""
- "Unless otherwise noted, each builtin command documented as accepting options "
- "preceded by @samp{-} accepts @samp{--} to signify the end of the options. "
- "The @code{:}, @code{true}, @code{false}, and @code{test} builtins do not "
- "accept options and do not treat @samp{--} specially. The @code{exit}, "
- "@code{logout}, @code{return}, @code{break}, @code{continue}, @code{let}, and "
- "@code{shift} builtins accept and process arguments beginning with @samp{-} "
- "without requiring @samp{--}. Other builtins that accept arguments but are "
- "not specified as accepting options interpret arguments beginning with "
- "@samp{-} as invalid options and require @samp{--} to prevent this "
- "interpretation."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3280
- msgid ""
- "The following shell builtin commands are inherited from the Bourne Shell. "
- "These commands are implemented as specified by the @sc{posix} standard."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3282
- #, no-wrap
- msgid ": @r{(a colon)}"
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3283
- #, no-wrap
- msgid ":"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3286
- #, no-wrap
- msgid ": [@var{arguments}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3290
- msgid ""
- "Do nothing beyond expanding @var{arguments} and performing redirections. "
- "The return status is zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3291
- #, no-wrap
- msgid ". @r{(a period)}"
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3292
- #, no-wrap
- msgid "."
- msgstr ""
- #. type: example
- #: ./bashref.texi:3295
- #, no-wrap
- msgid ". @var{filename} [@var{arguments}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3315
- msgid ""
- "Read and execute commands from the @var{filename} argument in the current "
- "shell context. If @var{filename} does not contain a slash, the @env{PATH} "
- "variable is used to find @var{filename}. When Bash is not in @sc{posix} "
- "mode, the current directory is searched if @var{filename} is not found in "
- "@env{$PATH}. If any @var{arguments} are supplied, they become the "
- "positional parameters when @var{filename} is executed. Otherwise the "
- "positional parameters are unchanged. If the @option{-T} option is enabled, "
- "@code{source} inherits any trap on @code{DEBUG}; if it is not, any "
- "@code{DEBUG} trap string is saved and restored around the call to "
- "@code{source}, and @code{source} unsets the @code{DEBUG} trap while it "
- "executes. If @option{-T} is not set, and the sourced file changes the "
- "@code{DEBUG} trap, the new value is retained when @code{source} completes. "
- "The return status is the exit status of the last command executed, or zero "
- "if no commands are executed. If @var{filename} is not found, or cannot be "
- "read, the return status is non-zero. This builtin is equivalent to "
- "@code{source}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3316 ./bashref.texi:3317
- #, no-wrap
- msgid "break"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3320
- #, no-wrap
- msgid "break [@var{n}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3326
- msgid ""
- "Exit from a @code{for}, @code{while}, @code{until}, or @code{select} loop. "
- "If @var{n} is supplied, the @var{n}th enclosing loop is exited. @var{n} "
- "must be greater than or equal to 1. The return status is zero unless "
- "@var{n} is not greater than or equal to 1."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3327 ./bashref.texi:3328
- #, no-wrap
- msgid "cd"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3331
- #, no-wrap
- msgid "cd [-L|[-P [-e]] [-@@] [@var{directory}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3343
- msgid ""
- "Change the current working directory to @var{directory}. If @var{directory} "
- "is not supplied, the value of the @env{HOME} shell variable is used. Any "
- "additional arguments following @var{directory} are ignored. If the shell "
- "variable @env{CDPATH} exists, it is used as a search path: each directory "
- "name in @env{CDPATH} is searched for @var{directory}, with alternative "
- "directory names in @env{CDPATH} separated by a colon (@samp{:}). If "
- "@var{directory} begins with a slash, @env{CDPATH} is not used."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3347
- msgid ""
- "The @option{-P} option means to not follow symbolic links: symbolic links "
- "are resolved while @code{cd} is traversing @var{directory} and before "
- "processing an instance of @samp{..} in @var{directory}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3351
- msgid ""
- "By default, or when the @option{-L} option is supplied, symbolic links in "
- "@var{directory} are resolved after @code{cd} processes an instance of "
- "@samp{..} in @var{directory}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3355
- msgid ""
- "If @samp{..} appears in @var{directory}, it is processed by removing the "
- "immediately preceding pathname component, back to a slash or the beginning "
- "of @var{directory}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3360
- msgid ""
- "If the @option{-e} option is supplied with @option{-P} and the current "
- "working directory cannot be successfully determined after a successful "
- "directory change, @code{cd} will return an unsuccessful status."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3363
- msgid ""
- "On systems that support it, the @option{-@@} option presents the extended "
- "attributes associated with a file as a directory."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3366
- msgid ""
- "If @var{directory} is @samp{-}, it is converted to @env{$OLDPWD} before the "
- "directory change is attempted."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3371
- msgid ""
- "If a non-empty directory name from @env{CDPATH} is used, or if @samp{-} is "
- "the first argument, and the directory change is successful, the absolute "
- "pathname of the new working directory is written to the standard output."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3374
- msgid ""
- "The return status is zero if the directory is successfully changed, non-zero "
- "otherwise."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3375 ./bashref.texi:3376
- #, no-wrap
- msgid "continue"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3379
- #, no-wrap
- msgid "continue [@var{n}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3387
- msgid ""
- "Resume the next iteration of an enclosing @code{for}, @code{while}, "
- "@code{until}, or @code{select} loop. If @var{n} is supplied, the execution "
- "of the @var{n}th enclosing loop is resumed. @var{n} must be greater than or "
- "equal to 1. The return status is zero unless @var{n} is not greater than or "
- "equal to 1."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3388 ./bashref.texi:3389
- #, no-wrap
- msgid "eval"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3392
- #, no-wrap
- msgid "eval [@var{arguments}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3399
- msgid ""
- "The arguments are concatenated together into a single command, which is then "
- "read and executed, and its exit status returned as the exit status of "
- "@code{eval}. If there are no arguments or only empty arguments, the return "
- "status is zero."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3400 ./bashref.texi:3401
- #, no-wrap
- msgid "exec"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3404
- #, no-wrap
- msgid "exec [-cl] [-a @var{name}] [@var{command} [@var{arguments}]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3423
- msgid ""
- "If @var{command} is supplied, it replaces the shell without creating a new "
- "process. If the @option{-l} option is supplied, the shell places a dash at "
- "the beginning of the zeroth argument passed to @var{command}. This is what "
- "the @code{login} program does. The @option{-c} option causes @var{command} "
- "to be executed with an empty environment. If @option{-a} is supplied, the "
- "shell passes @var{name} as the zeroth argument to @var{command}. If "
- "@var{command} cannot be executed for some reason, a non-interactive shell "
- "exits, unless the @code{execfail} shell option is enabled. In that case, it "
- "returns failure. An interactive shell returns failure if the file cannot be "
- "executed. If no @var{command} is specified, redirections may be used to "
- "affect the current shell environment. If there are no redirection errors, "
- "the return status is zero; otherwise the return status is non-zero."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3424 ./bashref.texi:3425
- #, no-wrap
- msgid "exit"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3428
- #, no-wrap
- msgid "exit [@var{n}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3433
- msgid ""
- "Exit the shell, returning a status of @var{n} to the shell's parent. If "
- "@var{n} is omitted, the exit status is that of the last command executed. "
- "Any trap on @code{EXIT} is executed before the shell terminates."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3434 ./bashref.texi:3435
- #, no-wrap
- msgid "export"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3438
- #, no-wrap
- msgid "export [-fn] [-p] [@var{name}[=@var{value}]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3449
- msgid ""
- "Mark each @var{name} to be passed to child processes in the environment. If "
- "the @option{-f} option is supplied, the @var{name}s refer to shell "
- "functions; otherwise the names refer to shell variables. The @option{-n} "
- "option means to no longer mark each @var{name} for export. If no "
- "@var{names} are supplied, or if the @option{-p} option is given, a list of "
- "names of all exported variables is displayed. The @option{-p} option "
- "displays output in a form that may be reused as input. If a variable name "
- "is followed by =@var{value}, the value of the variable is set to "
- "@var{value}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3453
- msgid ""
- "The return status is zero unless an invalid option is supplied, one of the "
- "names is not a valid shell variable name, or @option{-f} is supplied with a "
- "name that is not a shell function."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3454 ./bashref.texi:3455
- #, no-wrap
- msgid "getopts"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3458
- #, no-wrap
- msgid "getopts @var{optstring} @var{name} [@var{args}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3478
- msgid ""
- "@code{getopts} is used by shell scripts to parse positional parameters. "
- "@var{optstring} contains the option characters to be recognized; if a "
- "character is followed by a colon, the option is expected to have an "
- "argument, which should be separated from it by whitespace. The colon "
- "(@samp{:}) and question mark (@samp{?}) may not be used as option "
- "characters. Each time it is invoked, @code{getopts} places the next option "
- "in the shell variable @var{name}, initializing @var{name} if it does not "
- "exist, and the index of the next argument to be processed into the variable "
- "@env{OPTIND}. @env{OPTIND} is initialized to 1 each time the shell or a "
- "shell script is invoked. When an option requires an argument, "
- "@code{getopts} places that argument into the variable @env{OPTARG}. The "
- "shell does not reset @env{OPTIND} automatically; it must be manually reset "
- "between multiple calls to @code{getopts} within the same shell invocation if "
- "a new set of parameters is to be used."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3483
- msgid ""
- "When the end of options is encountered, @code{getopts} exits with a return "
- "value greater than zero. @env{OPTIND} is set to the index of the first "
- "non-option argument, and @var{name} is set to @samp{?}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3487
- msgid ""
- "@code{getopts} normally parses the positional parameters, but if more "
- "arguments are given in @var{args}, @code{getopts} parses those instead."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3496
- msgid ""
- "@code{getopts} can report errors in two ways. If the first character of "
- "@var{optstring} is a colon, @var{silent} error reporting is used. In normal "
- "operation, diagnostic messages are printed when invalid options or missing "
- "option arguments are encountered. If the variable @env{OPTERR} is set to 0, "
- "no error messages will be displayed, even if the first character of "
- "@code{optstring} is not a colon."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3502
- msgid ""
- "If an invalid option is seen, @code{getopts} places @samp{?} into @var{name} "
- "and, if not silent, prints an error message and unsets @env{OPTARG}. If "
- "@code{getopts} is silent, the option character found is placed in "
- "@env{OPTARG} and no diagnostic message is printed."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3508
- msgid ""
- "If a required argument is not found, and @code{getopts} is not silent, a "
- "question mark (@samp{?}) is placed in @var{name}, @code{OPTARG} is unset, "
- "and a diagnostic message is printed. If @code{getopts} is silent, then a "
- "colon (@samp{:}) is placed in @var{name} and @env{OPTARG} is set to the "
- "option character found."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3509 ./bashref.texi:3510
- #, no-wrap
- msgid "hash"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3513
- #, no-wrap
- msgid "hash [-r] [-p @var{filename}] [-dt] [@var{name}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3536
- msgid ""
- "Each time @code{hash} is invoked, it remembers the full pathnames of the "
- "commands specified as @var{name} arguments, so they need not be searched for "
- "on subsequent invocations. The commands are found by searching through the "
- "directories listed in @env{$PATH}. Any previously-remembered pathname is "
- "discarded. The @option{-p} option inhibits the path search, and "
- "@var{filename} is used as the location of @var{name}. The @option{-r} "
- "option causes the shell to forget all remembered locations. The @option{-d} "
- "option causes the shell to forget the remembered location of each "
- "@var{name}. If the @option{-t} option is supplied, the full pathname to "
- "which each @var{name} corresponds is printed. If multiple @var{name} "
- "arguments are supplied with @option{-t} the @var{name} is printed before the "
- "hashed full pathname. The @option{-l} option causes output to be displayed "
- "in a format that may be reused as input. If no arguments are given, or if "
- "only @option{-l} is supplied, information about remembered commands is "
- "printed. The return status is zero unless a @var{name} is not found or an "
- "invalid option is supplied."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3537 ./bashref.texi:3538
- #, no-wrap
- msgid "pwd"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3541
- #, no-wrap
- msgid "pwd [-LP]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3551
- msgid ""
- "Print the absolute pathname of the current working directory. If the "
- "@option{-P} option is supplied, the pathname printed will not contain "
- "symbolic links. If the @option{-L} option is supplied, the pathname printed "
- "may contain symbolic links. The return status is zero unless an error is "
- "encountered while determining the name of the current directory or an "
- "invalid option is supplied."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3552 ./bashref.texi:3553
- #, no-wrap
- msgid "readonly"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3556
- #, no-wrap
- msgid "readonly [-aAf] [-p] [@var{name}[=@var{value}]] @dots{}\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3577
- msgid ""
- "Mark each @var{name} as readonly. The values of these names may not be "
- "changed by subsequent assignment. If the @option{-f} option is supplied, "
- "each @var{name} refers to a shell function. The @option{-a} option means "
- "each @var{name} refers to an indexed array variable; the @option{-A} option "
- "means each @var{name} refers to an associative array variable. If both "
- "options are supplied, @option{-A} takes precedence. If no @var{name} "
- "arguments are given, or if the @option{-p} option is supplied, a list of all "
- "readonly names is printed. The other options may be used to restrict the "
- "output to a subset of the set of readonly names. The @option{-p} option "
- "causes output to be displayed in a format that may be reused as input. If a "
- "variable name is followed by =@var{value}, the value of the variable is set "
- "to @var{value}. The return status is zero unless an invalid option is "
- "supplied, one of the @var{name} arguments is not a valid shell variable or "
- "function name, or the @option{-f} option is supplied with a name that is not "
- "a shell function."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3578 ./bashref.texi:3579
- #, no-wrap
- msgid "return"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3582
- #, no-wrap
- msgid "return [@var{n}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3605
- msgid ""
- "Cause a shell function to stop executing and return the value @var{n} to its "
- "caller. If @var{n} is not supplied, the return value is the exit status of "
- "the last command executed in the function. If @code{return} is executed by "
- "a trap handler, the last command used to determine the status is the last "
- "command executed before the trap handler. if @code{return} is executed "
- "during a @code{DEBUG} trap, the last command used to determine the status is "
- "the last command executed by the trap handler before @code{return} was "
- "invoked. @code{return} may also be used to terminate execution of a script "
- "being executed with the @code{.} (@code{source}) builtin, returning either "
- "@var{n} or the exit status of the last command executed within the script as "
- "the exit status of the script. If @var{n} is supplied, the return value is "
- "its least significant 8 bits. Any command associated with the @code{RETURN} "
- "trap is executed before execution resumes after the function or script. The "
- "return status is non-zero if @code{return} is supplied a non-numeric "
- "argument or is used outside a function and not during the execution of a "
- "script by @code{.} or @code{source}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3606 ./bashref.texi:3607
- #, no-wrap
- msgid "shift"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3610
- #, no-wrap
- msgid "shift [@var{n}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3623
- msgid ""
- "Shift the positional parameters to the left by @var{n}. The positional "
- "parameters from @var{n}+1 @dots{} @code{$#} are renamed to @code{$1} @dots{} "
- "@code{$#}-@var{n}. Parameters represented by the numbers @code{$#} to "
- "@code{$#}-@var{n}+1 are unset. @var{n} must be a non-negative number less "
- "than or equal to @code{$#}. If @var{n} is zero or greater than @code{$#}, "
- "the positional parameters are not changed. If @var{n} is not supplied, it "
- "is assumed to be 1. The return status is zero unless @var{n} is greater "
- "than @code{$#} or less than zero, non-zero otherwise."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3624 ./bashref.texi:3626
- #, no-wrap
- msgid "test"
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3625 ./bashref.texi:3627
- #, no-wrap
- msgid "["
- msgstr ""
- #. type: example
- #: ./bashref.texi:3630
- #, no-wrap
- msgid "test @var{expr}\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3639
- msgid ""
- "Evaluate a conditional expression @var{expr} and return a status of 0 (true) "
- "or 1 (false). Each operator and operand must be a separate argument. "
- "Expressions are composed of the primaries described below in @ref{Bash "
- "Conditional Expressions}. @code{test} does not accept any options, nor does "
- "it accept and ignore an argument of @option{--} as signifying the end of "
- "options."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3642
- msgid ""
- "When the @code{[} form is used, the last argument to the command must be a "
- "@code{]}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3647
- msgid ""
- "Expressions may be combined using the following operators, listed in "
- "decreasing order of precedence. The evaluation depends on the number of "
- "arguments; see below. Operator precedence is used when there are five or "
- "more arguments."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3649
- #, no-wrap
- msgid "! @var{expr}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3651
- msgid "True if @var{expr} is false."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3652
- #, no-wrap
- msgid "( @var{expr} )"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3655
- msgid ""
- "Returns the value of @var{expr}. This may be used to override the normal "
- "precedence of operators."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3656
- #, no-wrap
- msgid "@var{expr1} -a @var{expr2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3658
- msgid "True if both @var{expr1} and @var{expr2} are true."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3659
- #, no-wrap
- msgid "@var{expr1} -o @var{expr2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3661
- msgid "True if either @var{expr1} or @var{expr2} is true."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3665
- msgid ""
- "The @code{test} and @code{[} builtins evaluate conditional expressions using "
- "a set of rules based on the number of arguments."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3667
- #, no-wrap
- msgid "0 arguments"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3669
- msgid "The expression is false."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3670
- #, no-wrap
- msgid "1 argument"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3672
- msgid "The expression is true if and only if the argument is not null."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3673
- #, no-wrap
- msgid "2 arguments"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3681
- msgid ""
- "If the first argument is @samp{!}, the expression is true if and only if the "
- "second argument is null. If the first argument is one of the unary "
- "conditional operators (@pxref{Bash Conditional Expressions}), the expression "
- "is true if the unary test is true. If the first argument is not a valid "
- "unary operator, the expression is false."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3682
- #, no-wrap
- msgid "3 arguments"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3696
- msgid ""
- "The following conditions are applied in the order listed. If the second "
- "argument is one of the binary conditional operators (@pxref{Bash Conditional "
- "Expressions}), the result of the expression is the result of the binary test "
- "using the first and third arguments as operands. The @samp{-a} and "
- "@samp{-o} operators are considered binary operators when there are three "
- "arguments. If the first argument is @samp{!}, the value is the negation of "
- "the two-argument test using the second and third arguments. If the first "
- "argument is exactly @samp{(} and the third argument is exactly @samp{)}, the "
- "result is the one-argument test of the second argument. Otherwise, the "
- "expression is false."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3697
- #, no-wrap
- msgid "4 arguments"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3702
- msgid ""
- "If the first argument is @samp{!}, the result is the negation of the "
- "three-argument expression composed of the remaining arguments. Otherwise, "
- "the expression is parsed and evaluated according to precedence using the "
- "rules listed above."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3703
- #, no-wrap
- msgid "5 or more arguments"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3706
- msgid ""
- "The expression is parsed and evaluated according to precedence using the "
- "rules listed above."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3710
- msgid ""
- "When used with @code{test} or @samp{[}, the @samp{<} and @samp{>} operators "
- "sort lexicographically using ASCII ordering."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3711 ./bashref.texi:3712
- #, no-wrap
- msgid "times"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3715
- #, no-wrap
- msgid "times\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3719
- msgid ""
- "Print out the user and system times used by the shell and its children. The "
- "return status is zero."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3720 ./bashref.texi:3721
- #, no-wrap
- msgid "trap"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3724
- #, no-wrap
- msgid "trap [-lp] [@var{arg}] [@var{sigspec} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3743
- msgid ""
- "The commands in @var{arg} are to be read and executed when the shell "
- "receives signal @var{sigspec}. If @var{arg} is absent (and there is a "
- "single @var{sigspec}) or equal to @samp{-}, each specified signal's "
- "disposition is reset to the value it had when the shell was started. If "
- "@var{arg} is the null string, then the signal specified by each "
- "@var{sigspec} is ignored by the shell and commands it invokes. If @var{arg} "
- "is not present and @option{-p} has been supplied, the shell displays the "
- "trap commands associated with each @var{sigspec}. If no arguments are "
- "supplied, or only @option{-p} is given, @code{trap} prints the list of "
- "commands associated with each signal number in a form that may be reused as "
- "shell input. The @option{-l} option causes the shell to print a list of "
- "signal names and their corresponding numbers. Each @var{sigspec} is either "
- "a signal name or a signal number. Signal names are case insensitive and the "
- "@code{SIG} prefix is optional."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3756
- msgid ""
- "If a @var{sigspec} is @code{0} or @code{EXIT}, @var{arg} is executed when "
- "the shell exits. If a @var{sigspec} is @code{DEBUG}, the command @var{arg} "
- "is executed before every simple command, @code{for} command, @code{case} "
- "command, @code{select} command, every arithmetic @code{for} command, and "
- "before the first command executes in a shell function. Refer to the "
- "description of the @code{extdebug} option to the @code{shopt} builtin "
- "(@pxref{The Shopt Builtin}) for details of its effect on the @code{DEBUG} "
- "trap. If a @var{sigspec} is @code{RETURN}, the command @var{arg} is "
- "executed each time a shell function or a script executed with the @code{.} "
- "or @code{source} builtins finishes executing."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3773
- msgid ""
- "If a @var{sigspec} is @code{ERR}, the command @var{arg} is executed whenever "
- "a pipeline (which may consist of a single simple command), a list, or a "
- "compound command returns a non-zero exit status, subject to the following "
- "conditions. The @code{ERR} trap is not executed if the failed command is "
- "part of the command list immediately following an @code{until} or "
- "@code{while} keyword, part of the test following the @code{if} or "
- "@code{elif} reserved words, part of a command executed in a @code{&&} or "
- "@code{||} list except the command following the final @code{&&} or "
- "@code{||}, any command in a pipeline but the last, or if the command's "
- "return status is being inverted using @code{!}. These are the same "
- "conditions obeyed by the @code{errexit} (@option{-e}) option."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3777
- msgid ""
- "Signals ignored upon entry to the shell cannot be trapped or reset. Trapped "
- "signals that are not being ignored are reset to their original values in a "
- "subshell or subshell environment when one is created."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3780
- msgid ""
- "The return status is zero unless a @var{sigspec} does not specify a valid "
- "signal."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3781 ./bashref.texi:3782
- #, no-wrap
- msgid "umask"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3785
- #, no-wrap
- msgid "umask [-p] [-S] [@var{mode}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3798
- msgid ""
- "Set the shell process's file creation mask to @var{mode}. If @var{mode} "
- "begins with a digit, it is interpreted as an octal number; if not, it is "
- "interpreted as a symbolic mode mask similar to that accepted by the "
- "@code{chmod} command. If @var{mode} is omitted, the current value of the "
- "mask is printed. If the @option{-S} option is supplied without a @var{mode} "
- "argument, the mask is printed in a symbolic format. If the @option{-p} "
- "option is supplied, and @var{mode} is omitted, the output is in a form that "
- "may be reused as input. The return status is zero if the mode is "
- "successfully changed or if no @var{mode} argument is supplied, and non-zero "
- "otherwise."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3802
- msgid ""
- "Note that when the mode is interpreted as an octal number, each number of "
- "the umask is subtracted from @code{7}. Thus, a umask of @code{022} results "
- "in permissions of @code{755}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3803 ./bashref.texi:3804
- #, no-wrap
- msgid "unset"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3807
- #, no-wrap
- msgid "unset [-fnv] [@var{name}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3823
- msgid ""
- "Remove each variable or function @var{name}. If the @option{-v} option is "
- "given, each @var{name} refers to a shell variable and that variable is "
- "removed. If the @option{-f} option is given, the @var{name}s refer to shell "
- "functions, and the function definition is removed. If the @option{-n} "
- "option is supplied, and @var{name} is a variable with the @var{nameref} "
- "attribute, @var{name} will be unset rather than the variable it references. "
- "@option{-n} has no effect if the @option{-f} option is supplied. If no "
- "options are supplied, each @var{name} refers to a variable; if there is no "
- "variable by that name, any function with that name is unset. Readonly "
- "variables and functions may not be unset. The return status is zero unless "
- "a @var{name} is readonly."
- msgstr ""
- #. type: section
- #: ./bashref.texi:3826
- #, no-wrap
- msgid "Bash Builtin Commands"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:3831
- msgid ""
- "This section describes builtin commands which are unique to or have been "
- "extended in Bash. Some of these commands are specified in the @sc{posix} "
- "standard."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3834 ./bashref.texi:3835
- #, no-wrap
- msgid "alias"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3838
- #, no-wrap
- msgid "alias [-p] [@var{name}[=@var{value}] @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3847
- msgid ""
- "Without arguments or with the @option{-p} option, @code{alias} prints the "
- "list of aliases on the standard output in a form that allows them to be "
- "reused as input. If arguments are supplied, an alias is defined for each "
- "@var{name} whose @var{value} is given. If no @var{value} is given, the name "
- "and value of the alias is printed. Aliases are described in @ref{Aliases}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3848 ./bashref.texi:3849
- #, no-wrap
- msgid "bind"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3857
- #, no-wrap
- msgid ""
- "bind [-m @var{keymap}] [-lpsvPSVX]\n"
- "bind [-m @var{keymap}] [-q @var{function}] [-u @var{function}] [-r "
- "@var{keyseq}]\n"
- "bind [-m @var{keymap}] -f @var{filename}\n"
- "bind [-m @var{keymap}] -x @var{keyseq:shell-command}\n"
- "bind [-m @var{keymap}] @var{keyseq:function-name}\n"
- "bind [-m @var{keymap}] @var{keyseq:readline-command}\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3867
- msgid ""
- "Display current Readline (@pxref{Command Line Editing}) key and function "
- "bindings, bind a key sequence to a Readline function or macro, or set a "
- "Readline variable. Each non-option argument is a command as it would appear "
- "in a Readline initialization file (@pxref{Readline Init File}), but each "
- "binding or command must be passed as a separate argument; e.g., "
- "@samp{\"\\C-x\\C-r\":re-read-init-file}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3869 ./bashref.texi:4212 ./bashref.texi:4397
- msgid "Options, if supplied, have the following meanings:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:3871
- #, no-wrap
- msgid "-m @var{keymap}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3885
- msgid ""
- "Use @var{keymap} as the keymap to be affected by the subsequent bindings. "
- "Acceptable @var{keymap} names are @code{emacs}, @code{emacs-standard}, "
- "@code{emacs-meta}, @code{emacs-ctlx}, @code{vi}, @code{vi-move}, "
- "@code{vi-command}, and @code{vi-insert}. @code{vi} is equivalent to "
- "@code{vi-command} (@code{vi-move} is also a synonym); @code{emacs} is "
- "equivalent to @code{emacs-standard}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3886 ./bashref.texi:4053 ./bashref.texi:4579 ./bashref.texi:6271 ./bashref.texi:7106 ./bashref.texi:7784
- #, no-wrap
- msgid "-l"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3888
- msgid "List the names of all Readline functions."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3889 ./bashref.texi:4589 ./bashref.texi:4851 ./bashref.texi:7109 ./bashref.texi:7791
- #, no-wrap
- msgid "-p"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3892
- msgid ""
- "Display Readline function names and bindings in such a way that they can be "
- "used as input or in a Readline initialization file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3893 ./bashref.texi:4614 ./bashref.texi:4902
- #, no-wrap
- msgid "-P"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3895
- msgid "List current Readline function names and bindings."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3896 ./bashref.texi:4607 ./bashref.texi:4874 ./bashref.texi:7112
- #, no-wrap
- msgid "-v"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3899
- msgid ""
- "Display Readline variable names and values in such a way that they can be "
- "used as input or in a Readline initialization file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3900
- #, no-wrap
- msgid "-V"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3902
- msgid "List current Readline variable names and values."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3903 ./bashref.texi:4218 ./bashref.texi:4288 ./bashref.texi:4445 ./bashref.texi:4598 ./bashref.texi:4981 ./bashref.texi:6285 ./bashref.texi:7797
- #, no-wrap
- msgid "-s"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3907
- msgid ""
- "Display Readline key sequences bound to macros and the strings they output "
- "in such a way that they can be used as input or in a Readline initialization "
- "file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3908 ./bashref.texi:4549
- #, no-wrap
- msgid "-S"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3910
- msgid "Display Readline key sequences bound to macros and the strings they output."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3911
- #, no-wrap
- msgid "-f @var{filename}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3913
- msgid "Read key bindings from @var{filename}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3914
- #, no-wrap
- msgid "-q @var{function}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3916
- msgid "Query about which keys invoke the named @var{function}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3917
- #, no-wrap
- msgid "-u @var{function}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3919
- msgid "Unbind all keys bound to the named @var{function}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3920
- #, no-wrap
- msgid "-r @var{keyseq}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3922
- msgid "Remove any current binding for @var{keyseq}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3923
- #, no-wrap
- msgid "-x @var{keyseq:shell-command}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3933
- msgid ""
- "Cause @var{shell-command} to be executed whenever @var{keyseq} is entered. "
- "When @var{shell-command} is executed, the shell sets the "
- "@code{READLINE_LINE} variable to the contents of the Readline line buffer "
- "and the @code{READLINE_POINT} variable to the current location of the "
- "insertion point. If the executed command changes the value of "
- "@code{READLINE_LINE} or @code{READLINE_POINT}, those new values will be "
- "reflected in the editing state."
- msgstr ""
- #. type: item
- #: ./bashref.texi:3934
- #, no-wrap
- msgid "-X"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3937
- msgid ""
- "List all key sequences bound to shell commands and the associated commands "
- "in a format that can be reused as input."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3942
- msgid ""
- "The return status is zero unless an invalid option is supplied or an error "
- "occurs."
- msgstr ""
- #. type: example
- #: ./bashref.texi:3947
- #, no-wrap
- msgid "builtin [@var{shell-builtin} [@var{args}]]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3955
- msgid ""
- "Run a shell builtin, passing it @var{args}, and return its exit status. "
- "This is useful when defining a shell function with the same name as a shell "
- "builtin, retaining the functionality of the builtin within the function. "
- "The return status is non-zero if @var{shell-builtin} is not a shell builtin "
- "command."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3956 ./bashref.texi:3957
- #, no-wrap
- msgid "caller"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3960
- #, no-wrap
- msgid "caller [@var{expr}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3964
- msgid ""
- "Returns the context of any active subroutine call (a shell function or a "
- "script executed with the @code{.} or @code{source} builtins)."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3972
- msgid ""
- "Without @var{expr}, @code{caller} displays the line number and source "
- "filename of the current subroutine call. If a non-negative integer is "
- "supplied as @var{expr}, @code{caller} displays the line number, subroutine "
- "name, and source file corresponding to that position in the current "
- "execution call stack. This extra information may be used, for example, to "
- "print a stack trace. The current frame is frame 0."
- msgstr ""
- #. type: table
- #: ./bashref.texi:3976
- msgid ""
- "The return value is 0 unless the shell is not executing a subroutine call or "
- "@var{expr} does not correspond to a valid position in the call stack."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:3977 ./bashref.texi:3978
- #, no-wrap
- msgid "command"
- msgstr ""
- #. type: example
- #: ./bashref.texi:3981
- #, no-wrap
- msgid "command [-pVv] @var{command} [@var{arguments} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:3995
- msgid ""
- "Runs @var{command} with @var{arguments} ignoring any shell function named "
- "@var{command}. Only shell builtin commands or commands found by searching "
- "the @env{PATH} are executed. If there is a shell function named @code{ls}, "
- "running @samp{command ls} within the function will execute the external "
- "command @code{ls} instead of calling the function recursively. The "
- "@option{-p} option means to use a default value for @env{PATH} that is "
- "guaranteed to find all of the standard utilities. The return status in this "
- "case is 127 if @var{command} cannot be found or an error occurred, and the "
- "exit status of @var{command} otherwise."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4002
- msgid ""
- "If either the @option{-V} or @option{-v} option is supplied, a description "
- "of @var{command} is printed. The @option{-v} option causes a single word "
- "indicating the command or file name used to invoke @var{command} to be "
- "displayed; the @option{-V} option produces a more verbose description. In "
- "this case, the return status is zero if @var{command} is found, and non-zero "
- "if not."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4003 ./bashref.texi:4004
- #, no-wrap
- msgid "declare"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4007
- #, no-wrap
- msgid "declare [-aAfFgilnrtux] [-p] [@var{name}[=@var{value}] @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4011
- msgid ""
- "Declare variables and give them attributes. If no @var{name}s are given, "
- "then display the values of variables instead."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4016
- msgid ""
- "The @option{-p} option will display the attributes and values of each "
- "@var{name}. When @option{-p} is used with @var{name} arguments, additional "
- "options, other than @option{-f} and @option{-F}, are ignored."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4023
- msgid ""
- "When @option{-p} is supplied without @var{name} arguments, @code{declare} "
- "will display the attributes and values of all variables having the "
- "attributes specified by the additional options. If no other options are "
- "supplied with @option{-p}, @code{declare} will display the attributes and "
- "values of all shell variables. The @option{-f} option will restrict the "
- "display to shell functions."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4030
- msgid ""
- "The @option{-F} option inhibits the display of function definitions; only "
- "the function name and attributes are printed. If the @code{extdebug} shell "
- "option is enabled using @code{shopt} (@pxref{The Shopt Builtin}), the source "
- "file name and line number where each @var{name} is defined are displayed as "
- "well. @option{-F} implies @option{-f}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4034
- msgid ""
- "The @option{-g} option forces variables to be created or modified at the "
- "global scope, even when @code{declare} is executed in a shell function. It "
- "is ignored in all other cases."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4037
- msgid ""
- "The following options can be used to restrict output to variables with the "
- "specified attributes or to give variables attributes:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:4039 ./bashref.texi:4555 ./bashref.texi:4692
- #, no-wrap
- msgid "-a"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4041
- msgid "Each @var{name} is an indexed array variable (@pxref{Arrays})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4042
- #, no-wrap
- msgid "-A"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4044
- msgid "Each @var{name} is an associative array variable (@pxref{Arrays})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4045 ./bashref.texi:4570 ./bashref.texi:4734
- #, no-wrap
- msgid "-f"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4047
- msgid "Use function names only."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4048 ./bashref.texi:4573 ./bashref.texi:6267
- #, no-wrap
- msgid "-i"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4052
- msgid ""
- "The variable is to be treated as an integer; arithmetic evaluation "
- "(@pxref{Shell Arithmetic}) is performed when the variable is assigned a "
- "value."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4057
- msgid ""
- "When the variable is assigned a value, all upper-case characters are "
- "converted to lower-case. The upper-case attribute is disabled."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4058 ./bashref.texi:4283 ./bashref.texi:4585 ./bashref.texi:4752 ./bashref.texi:7138 ./bashref.texi:7161 ./bashref.texi:7787
- #, no-wrap
- msgid "-n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4067
- msgid ""
- "Give each @var{name} the @var{nameref} attribute, making it a name reference "
- "to another variable. That other variable is defined by the value of "
- "@var{name}. All references, assignments, and attribute modifications to "
- "@var{name}, except for those using or changing the @option{-n} attribute "
- "itself, are performed on the variable referenced by @var{name}'s value. The "
- "nameref attribute cannot be applied to array variables."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4068 ./bashref.texi:4439 ./bashref.texi:4595 ./bashref.texi:6282 ./bashref.texi:7794
- #, no-wrap
- msgid "-r"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4071
- msgid ""
- "Make @var{name}s readonly. These names cannot then be assigned values by "
- "subsequent assignment statements or unset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4072 ./bashref.texi:4290 ./bashref.texi:4601 ./bashref.texi:4865
- #, no-wrap
- msgid "-t"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4077
- msgid ""
- "Give each @var{name} the @code{trace} attribute. Traced functions inherit "
- "the @code{DEBUG} and @code{RETURN} traps from the calling shell. The trace "
- "attribute has no special meaning for variables."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4078 ./bashref.texi:4292 ./bashref.texi:4604 ./bashref.texi:4868 ./bashref.texi:4984
- #, no-wrap
- msgid "-u"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4082
- msgid ""
- "When the variable is assigned a value, all lower-case characters are "
- "converted to upper-case. The lower-case attribute is disabled."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4083 ./bashref.texi:4611 ./bashref.texi:4877
- #, no-wrap
- msgid "-x"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4086
- msgid "Mark each @var{name} for export to subsequent commands via the environment."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4096
- msgid ""
- "Using @samp{+} instead of @samp{-} turns off the attribute instead, with the "
- "exceptions that @samp{+a} may not be used to destroy an array variable and "
- "@samp{+r} will not remove the readonly attribute. When used in a function, "
- "@code{declare} makes each @var{name} local, as with the @code{local} "
- "command, unless the @option{-g} option is used. If a variable name is "
- "followed by =@var{value}, the value of the variable is set to @var{value}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4100
- msgid ""
- "When using @option{-a} or @option{-A} and the compound assignment syntax to "
- "create array variables, additional attributes do not take effect until "
- "subsequent assignments."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4110
- msgid ""
- "The return status is zero unless an invalid option is encountered, an "
- "attempt is made to define a function using @samp{-f foo=bar}, an attempt is "
- "made to assign a value to a readonly variable, an attempt is made to assign "
- "a value to an array variable without using the compound assignment syntax "
- "(@pxref{Arrays}), one of the @var{names} is not a valid shell variable name, "
- "an attempt is made to turn off readonly status for a readonly variable, an "
- "attempt is made to turn off array status for an array variable, or an "
- "attempt is made to display a non-existent function with @option{-f}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4111 ./bashref.texi:4112
- #, no-wrap
- msgid "echo"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4115
- #, no-wrap
- msgid "echo [-neE] [@var{arg} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4129
- msgid ""
- "Output the @var{arg}s, separated by spaces, terminated with a newline. The "
- "return status is 0 unless a write error occurs. If @option{-n} is "
- "specified, the trailing newline is suppressed. If the @option{-e} option is "
- "given, interpretation of the following backslash-escaped characters is "
- "enabled. The @option{-E} option disables the interpretation of these escape "
- "characters, even on systems where they are interpreted by default. The "
- "@code{xpg_echo} shell option may be used to dynamically determine whether or "
- "not @code{echo} expands these escape characters by default. @code{echo} "
- "does not interpret @option{--} to mean the end of options."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4131
- msgid "@code{echo} interprets the following escape sequences:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:4136
- #, no-wrap
- msgid "\\c"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4138
- msgid "suppress further output"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4141
- msgid "escape"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4145
- msgid "new line"
- msgstr ""
- #. type: item
- #: ./bashref.texi:4153
- #, no-wrap
- msgid "\\0@var{nnn}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4156
- msgid ""
- "the eight-bit character whose value is the octal value @var{nnn} (zero to "
- "three octal digits)"
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4167 ./bashref.texi:4168
- #, no-wrap
- msgid "enable"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4171
- #, no-wrap
- msgid "enable [-a] [-dnps] [-f @var{filename}] [@var{name} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4181
- msgid ""
- "Enable and disable builtin shell commands. Disabling a builtin allows a "
- "disk command which has the same name as a shell builtin to be executed "
- "without specifying a full pathname, even though the shell normally searches "
- "for builtins before disk commands. If @option{-n} is used, the @var{name}s "
- "become disabled. Otherwise @var{name}s are enabled. For example, to use "
- "the @code{test} binary found via @env{$PATH} instead of the shell builtin "
- "version, type @samp{enable -n test}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4187
- msgid ""
- "If the @option{-p} option is supplied, or no @var{name} arguments appear, a "
- "list of shell builtins is printed. With no other arguments, the list "
- "consists of all enabled shell builtins. The @option{-a} option means to "
- "list each builtin with an indication of whether or not it is enabled."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4191
- msgid ""
- "The @option{-f} option means to load the new builtin command @var{name} from "
- "shared object @var{filename}, on systems that support dynamic loading. The "
- "@option{-d} option will delete a builtin loaded with @option{-f}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4196
- msgid ""
- "If there are no options, a list of the shell builtins is displayed. The "
- "@option{-s} option restricts @code{enable} to the @sc{posix} special "
- "builtins. If @option{-s} is used with @option{-f}, the new builtin becomes "
- "a special builtin (@pxref{Special Builtins})."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4199
- msgid ""
- "The return status is zero unless a @var{name} is not a shell builtin or "
- "there is an error loading a new builtin from a shared object."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4200 ./bashref.texi:4201
- #, no-wrap
- msgid "help"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4204
- #, no-wrap
- msgid "help [-dms] [@var{pattern}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4210
- msgid ""
- "Display helpful information about builtin commands. If @var{pattern} is "
- "specified, @code{help} gives detailed help on all commands matching "
- "@var{pattern}, otherwise a list of the builtins is printed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4214 ./bashref.texi:4280 ./bashref.texi:4564
- #, no-wrap
- msgid "-d"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4216
- msgid "Display a short description of each @var{pattern}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:4216 ./bashref.texi:4582 ./bashref.texi:4746
- #, no-wrap
- msgid "-m"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4218
- msgid "Display the description of each @var{pattern} in a manpage-like format"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4220
- msgid "Display only a short usage synopsis for each @var{pattern}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4223
- msgid "The return status is zero unless no command matches @var{pattern}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4224 ./bashref.texi:4225
- #, no-wrap
- msgid "let"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4228
- #, no-wrap
- msgid "let @var{expression} [@var{expression} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4235
- msgid ""
- "The @code{let} builtin allows arithmetic to be performed on shell "
- "variables. Each @var{expression} is evaluated according to the rules given "
- "below in @ref{Shell Arithmetic}. If the last @var{expression} evaluates to "
- "0, @code{let} returns 1; otherwise 0 is returned."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4236 ./bashref.texi:4237
- #, no-wrap
- msgid "local"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4240
- #, no-wrap
- msgid "local [@var{option}] @var{name}[=@var{value}] @dots{}\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4255
- msgid ""
- "For each argument, a local variable named @var{name} is created, and "
- "assigned @var{value}. The @var{option} can be any of the options accepted "
- "by @code{declare}. @code{local} can only be used within a function; it "
- "makes the variable @var{name} have a visible scope restricted to that "
- "function and its children. If @var{name} is @samp{-}, the set of shell "
- "options is made local to the function in which @code{local} is invoked: "
- "shell options changed using the @code{set} builtin inside the function are "
- "restored to their original values when the function returns. The return "
- "status is zero unless @code{local} is used outside a function, an invalid "
- "@var{name} is supplied, or @var{name} is a readonly variable."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4256 ./bashref.texi:4257
- #, no-wrap
- msgid "logout"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4260
- #, no-wrap
- msgid "logout [@var{n}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4264
- msgid "Exit a login shell, returning a status of @var{n} to the shell's parent."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4265 ./bashref.texi:4266
- #, no-wrap
- msgid "mapfile"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4270
- #, no-wrap
- msgid ""
- "mapfile [-d @var{delim}] [-n @var{count}] [-O @var{origin}] [-s @var{count}] "
- "[-t] [-u @var{fd}]\n"
- " [-C @var{callback}] [-c @var{quantum}] [@var{array}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4277
- msgid ""
- "Read lines from the standard input into the indexed array variable "
- "@var{array}, or from file descriptor @var{fd} if the @option{-u} option is "
- "supplied. The variable @code{MAPFILE} is the default @var{array}. Options, "
- "if supplied, have the following meanings:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4283
- msgid ""
- "The first character of @var{delim} is used to terminate each input line, "
- "rather than newline."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4285
- msgid "Copy at most @var{count} lines. If @var{count} is 0, all lines are copied."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4285
- #, no-wrap
- msgid "-O"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4288
- msgid ""
- "Begin assigning to @var{array} at index @var{origin}. The default index is "
- "0."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4290
- msgid "Discard the first @var{count} lines read."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4292
- msgid "Remove a trailing @var{delim} (default newline) from each line read."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4294
- msgid "Read lines from file descriptor @var{fd} instead of the standard input."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4294 ./bashref.texi:4889
- #, no-wrap
- msgid "-C"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4297
- msgid ""
- "Evaluate @var{callback} each time @var{quantum}P lines are read. The "
- "@option{-c} option specifies @var{quantum}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4297 ./bashref.texi:4561 ./bashref.texi:6258 ./bashref.texi:7104
- #, no-wrap
- msgid "-c"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4299
- msgid "Specify the number of lines read between each call to @var{callback}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4308
- msgid ""
- "If @option{-C} is specified without @option{-c}, the default quantum is "
- "5000. When @var{callback} is evaluated, it is supplied the index of the "
- "next array element to be assigned and the line to be assigned to that "
- "element as additional arguments. @var{callback} is evaluated after the line "
- "is read but before the array element is assigned."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4311
- msgid ""
- "If not supplied with an explicit origin, @code{mapfile} will clear "
- "@var{array} before assigning to it."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4315
- msgid ""
- "@code{mapfile} returns successfully unless an invalid option or option "
- "argument is supplied, @var{array} is invalid or unassignable, or @var{array} "
- "is not an indexed array."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4316 ./bashref.texi:4317
- #, no-wrap
- msgid "printf"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4320
- #, no-wrap
- msgid "printf [-v @var{var}] @var{format} [@var{arguments}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4326
- msgid ""
- "Write the formatted @var{arguments} to the standard output under the control "
- "of the @var{format}. The @option{-v} option causes the output to be "
- "assigned to the variable @var{var} rather than being printed to the standard "
- "output."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4334
- msgid ""
- "The @var{format} is a character string which contains three types of "
- "objects: plain characters, which are simply copied to standard output, "
- "character escape sequences, which are converted and copied to the standard "
- "output, and format specifications, each of which causes printing of the next "
- "successive @var{argument}. In addition to the standard @code{printf(1)} "
- "formats, @code{printf} interprets the following extensions:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:4336
- #, no-wrap
- msgid "%b"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4340
- msgid ""
- "Causes @code{printf} to expand backslash escape sequences in the "
- "corresponding @var{argument} in the same way as @code{echo -e} (@pxref{Bash "
- "Builtins})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4340
- #, no-wrap
- msgid "%q"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4343
- msgid ""
- "Causes @code{printf} to output the corresponding @var{argument} in a format "
- "that can be reused as shell input."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4343
- #, no-wrap
- msgid "%(@var{datefmt})T"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4352
- msgid ""
- "Causes @code{printf} to output the date-time string resulting from using "
- "@var{datefmt} as a format string for @code{strftime}(3). The corresponding "
- "@var{argument} is an integer representing the number of seconds since the "
- "epoch. Two special argument values may be used: -1 represents the current "
- "time, and -2 represents the time the shell was invoked. If no argument is "
- "specified, conversion behaves as if -1 had been given. This is an exception "
- "to the usual @code{printf} behavior."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4359
- msgid ""
- "Arguments to non-string format specifiers are treated as C language "
- "constants, except that a leading plus or minus sign is allowed, and if the "
- "leading character is a single or double quote, the value is the ASCII value "
- "of the following character."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4365
- msgid ""
- "The @var{format} is reused as necessary to consume all of the "
- "@var{arguments}. If the @var{format} requires more @var{arguments} than are "
- "supplied, the extra format specifications behave as if a zero value or null "
- "string, as appropriate, had been supplied. The return value is zero on "
- "success, non-zero on failure."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4366 ./bashref.texi:4367
- #, no-wrap
- msgid "read"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4371
- #, no-wrap
- msgid ""
- "read [-ers] [-a @var{aname}] [-d @var{delim}] [-i @var{text}] [-n "
- "@var{nchars}]\n"
- " [-N @var{nchars}] [-p @var{prompt}] [-t @var{timeout}] [-u @var{fd}] "
- "[@var{name} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4395
- msgid ""
- "One line is read from the standard input, or from the file descriptor "
- "@var{fd} supplied as an argument to the @option{-u} option, split into words "
- "as described above in @ref{Word Splitting}, and the first word is assigned "
- "to the first @var{name}, the second word to the second @var{name}, and so "
- "on. If there are more words than names, the remaining words and their "
- "intervening delimiters are assigned to the last @var{name}. If there are "
- "fewer words read from the input stream than names, the remaining names are "
- "assigned empty values. The characters in the value of the @env{IFS} "
- "variable are used to split the line into words using the same rules the "
- "shell uses for expansion (described above in @ref{Word Splitting}). The "
- "backslash character @samp{\\} may be used to remove any special meaning for "
- "the next character read and for line continuation. If no names are "
- "supplied, the line read is assigned to the variable @env{REPLY}. The exit "
- "status is zero, unless end-of-file is encountered, @code{read} times out (in "
- "which case the status is greater than 128), a variable assignment error "
- "(such as assigning to a readonly variable) occurs, or an invalid file "
- "descriptor is supplied as the argument to @option{-u}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4399
- #, no-wrap
- msgid "-a @var{aname}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4404
- msgid ""
- "The words are assigned to sequential indices of the array variable "
- "@var{aname}, starting at 0. All elements are removed from @var{aname} "
- "before the assignment. Other @var{name} arguments are ignored."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4405
- #, no-wrap
- msgid "-d @var{delim}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4408
- msgid ""
- "The first character of @var{delim} is used to terminate the input line, "
- "rather than newline."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4409 ./bashref.texi:4567 ./bashref.texi:4701
- #, no-wrap
- msgid "-e"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4413
- msgid ""
- "Readline (@pxref{Command Line Editing}) is used to obtain the line. "
- "Readline uses the current (or default, if line editing was not previously "
- "active) editing settings."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4414
- #, no-wrap
- msgid "-i @var{text}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4417
- msgid ""
- "If Readline is being used to read the line, @var{text} is placed into the "
- "editing buffer before editing begins."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4418
- #, no-wrap
- msgid "-n @var{nchars}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4422
- msgid ""
- "@code{read} returns after reading @var{nchars} characters rather than "
- "waiting for a complete line of input, but honors a delimiter if fewer than "
- "@var{nchars} characters are read before the delimiter."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4423
- #, no-wrap
- msgid "-N @var{nchars}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4433
- msgid ""
- "@code{read} returns after reading exactly @var{nchars} characters rather "
- "than waiting for a complete line of input, unless EOF is encountered or "
- "@code{read} times out. Delimiter characters encountered in the input are "
- "not treated specially and do not cause @code{read} to return until "
- "@var{nchars} characters are read. The result is not split on the characters "
- "in @code{IFS}; the intent is that the variable is assigned exactly the "
- "characters read (with the exception of backslash; see the @option{-r} option "
- "below)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4434
- #, no-wrap
- msgid "-p @var{prompt}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4438
- msgid ""
- "Display @var{prompt}, without a trailing newline, before attempting to read "
- "any input. The prompt is displayed only if input is coming from a terminal."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4444
- msgid ""
- "If this option is given, backslash does not act as an escape character. The "
- "backslash is considered to be part of the line. In particular, a "
- "backslash-newline pair may not be used as a line continuation."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4448
- msgid "Silent mode. If input is coming from a terminal, characters are not echoed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4449
- #, no-wrap
- msgid "-t @var{timeout}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4464
- msgid ""
- "Cause @code{read} to time out and return failure if a complete line of input "
- "(or a specified number of characters) is not read within @var{timeout} "
- "seconds. @var{timeout} may be a decimal number with a fractional portion "
- "following the decimal point. This option is only effective if @code{read} "
- "is reading input from a terminal, pipe, or other special file; it has no "
- "effect when reading from regular files. If @code{read} times out, "
- "@code{read} saves any partial input read into the specified variable "
- "@var{name}. If @var{timeout} is 0, @code{read} returns immediately, without "
- "trying to read and data. The exit status is 0 if input is available on the "
- "specified file descriptor, non-zero otherwise. The exit status is greater "
- "than 128 if the timeout is exceeded."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4465
- #, no-wrap
- msgid "-u @var{fd}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4467
- msgid "Read input from file descriptor @var{fd}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4469 ./bashref.texi:4470
- #, no-wrap
- msgid "readarray"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4474
- #, no-wrap
- msgid ""
- "readarray [-d @var{delim}] [-n @var{count}] [-O @var{origin}] [-s "
- "@var{count}] [-t] [-u @var{fd}]\n"
- " [-C @var{callback}] [-c @var{quantum}] [@var{array}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4479
- msgid ""
- "Read lines from the standard input into the indexed array variable "
- "@var{array}, or from file descriptor @var{fd} if the @option{-u} option is "
- "supplied."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4481
- msgid "A synonym for @code{mapfile}."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4482 ./bashref.texi:4483
- #, no-wrap
- msgid "source"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4486
- #, no-wrap
- msgid "source @var{filename}\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4489
- msgid "A synonym for @code{.} (@pxref{Bourne Shell Builtins})."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4490 ./bashref.texi:4491
- #, no-wrap
- msgid "type"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4494
- #, no-wrap
- msgid "type [-afptP] [@var{name} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4498
- msgid ""
- "For each @var{name}, indicate how it would be interpreted if used as a "
- "command name."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4506
- msgid ""
- "If the @option{-t} option is used, @code{type} prints a single word which is "
- "one of @samp{alias}, @samp{function}, @samp{builtin}, @samp{file} or "
- "@samp{keyword}, if @var{name} is an alias, shell function, shell builtin, "
- "disk file, or shell reserved word, respectively. If the @var{name} is not "
- "found, then nothing is printed, and @code{type} returns a failure status."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4510
- msgid ""
- "If the @option{-p} option is used, @code{type} either returns the name of "
- "the disk file that would be executed, or nothing if @option{-t} would not "
- "return @samp{file}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4513
- msgid ""
- "The @option{-P} option forces a path search for each @var{name}, even if "
- "@option{-t} would not return @samp{file}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4516
- msgid ""
- "If a command is hashed, @option{-p} and @option{-P} print the hashed value, "
- "which is not necessarily the file that appears first in @code{$PATH}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4521
- msgid ""
- "If the @option{-a} option is used, @code{type} returns all of the places "
- "that contain an executable named @var{file}. This includes aliases and "
- "functions, if and only if the @option{-p} option is not also used."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4524
- msgid ""
- "If the @option{-f} option is used, @code{type} does not attempt to find "
- "shell functions, as with the @code{command} builtin."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4527
- msgid ""
- "The return status is zero if all of the @var{names} are found, non-zero if "
- "any are not found."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4528 ./bashref.texi:4529
- #, no-wrap
- msgid "typeset"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4532
- #, no-wrap
- msgid "typeset [-afFgrxilnrtux] [-p] [@var{name}[=@var{value}] @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4537
- msgid ""
- "The @code{typeset} command is supplied for compatibility with the Korn "
- "shell. It is a synonym for the @code{declare} builtin command."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4538 ./bashref.texi:4539
- #, no-wrap
- msgid "ulimit"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4542
- #, no-wrap
- msgid "ulimit [-HSabcdefiklmnpqrstuvxPT] [@var{limit}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4547
- msgid ""
- "@code{ulimit} provides control over the resources available to processes "
- "started by the shell, on systems that allow such control. If an option is "
- "given, it is interpreted as follows:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4551
- msgid "Change and report the soft limit associated with a resource."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4552 ./bashref.texi:4898
- #, no-wrap
- msgid "-H"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4554
- msgid "Change and report the hard limit associated with a resource."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4557
- msgid "All current limits are reported."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4558 ./bashref.texi:4697
- #, no-wrap
- msgid "-b"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4560
- msgid "The maximum socket buffer size."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4563
- msgid "The maximum size of core files created."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4566
- msgid "The maximum size of a process's data segment."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4569
- msgid "The maximum scheduling priority (\"nice\")."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4572
- msgid "The maximum size of files written by the shell and its children."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4575
- msgid "The maximum number of pending signals."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4576 ./bashref.texi:4741
- #, no-wrap
- msgid "-k"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4578
- msgid "The maximum number of kqueues that may be allocated."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4581
- msgid "The maximum size that may be locked into memory."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4584
- msgid "The maximum resident set size (many systems do not honor this limit)."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4588
- msgid ""
- "The maximum number of open file descriptors (most systems do not allow this "
- "value to be set)."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4591
- msgid "The pipe buffer size."
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:4592 ./bashref.texi:4987 ./bashref.texi:8145
- #, no-wrap
- msgid "-q"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4594
- msgid "The maximum number of bytes in POSIX message queues."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4597
- msgid "The maximum real-time scheduling priority."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4600
- msgid "The maximum stack size."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4603
- msgid "The maximum amount of cpu time in seconds."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4606
- msgid "The maximum number of processes available to a single user."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4610
- msgid ""
- "The maximum amount of virtual memory available to the shell, and, on some "
- "systems, to its children."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4613
- msgid "The maximum number of file locks."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4616
- msgid "The maximum number of pseudoterminals."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4617 ./bashref.texi:4927
- #, no-wrap
- msgid "-T"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4619
- msgid "The maximum number of threads."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4642
- msgid ""
- "If @var{limit} is given, and the @option{-a} option is not used, @var{limit} "
- "is the new value of the specified resource. The special @var{limit} values "
- "@code{hard}, @code{soft}, and @code{unlimited} stand for the current hard "
- "limit, the current soft limit, and no limit, respectively. A hard limit "
- "cannot be increased by a non-root user once it is set; a soft limit may be "
- "increased up to the value of the hard limit. Otherwise, the current value "
- "of the soft limit for the specified resource is printed, unless the "
- "@option{-H} option is supplied. When setting new limits, if neither "
- "@option{-H} nor @option{-S} is supplied, both the hard and soft limits are "
- "set. If no option is given, then @option{-f} is assumed. Values are in "
- "1024-byte increments, except for @option{-t}, which is in seconds; "
- "@option{-p}, which is in units of 512-byte blocks; @option{-P}, @option{-T}, "
- "@option{-b}, @option{-k}, @option{-n} and @option{-u}, which are unscaled "
- "values; and, when in @sc{posix} Mode (@pxref{Bash POSIX Mode}), @option{-c} "
- "and @option{-f}, which are in 512-byte increments."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4645
- msgid ""
- "The return status is zero unless an invalid option or argument is supplied, "
- "or an error occurs while setting a new limit."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4646 ./bashref.texi:4647
- #, no-wrap
- msgid "unalias"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4650
- #, no-wrap
- msgid "unalias [-a] [@var{name} @dots{} ]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4655
- msgid ""
- "Remove each @var{name} from the list of aliases. If @option{-a} is "
- "supplied, all aliases are removed. Aliases are described in @ref{Aliases}."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:4664 ./bashref.texi:4666 ./bashref.texi:4667
- #, no-wrap
- msgid "The Set Builtin"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:4664
- msgid "Change the values of shell attributes and positional parameters."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:4664 ./bashref.texi:4957 ./bashref.texi:4958
- #, no-wrap
- msgid "The Shopt Builtin"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:4664
- msgid "Modify shell optional behavior."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:4672
- msgid ""
- "This builtin is so complicated that it deserves its own section. @code{set} "
- "allows you to change the values of shell options and set the positional "
- "parameters, or to display the names and values of shell variables."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4674 ./bashref.texi:4675
- #, no-wrap
- msgid "set"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4679
- #, no-wrap
- msgid ""
- "set [--abefhkmnptuvxBCEHPT] [-o @var{option-name}] [@var{argument} "
- "@dots{}]\n"
- "set [+abefhkmnptuvxBCEHPT] [+o @var{option-name}] [@var{argument} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4687
- msgid ""
- "If no options or arguments are supplied, @code{set} displays the names and "
- "values of all shell variables and functions, sorted according to the current "
- "locale, in a format that may be reused as input for setting or resetting the "
- "currently-set variables. Read-only variables cannot be reset. In "
- "@sc{posix} mode, only shell variables are listed."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4690
- msgid ""
- "When options are supplied, they set or unset shell attributes. Options, if "
- "specified, have the following meanings:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4696
- msgid ""
- "Each variable or function that is created or modified is given the export "
- "attribute and marked for export to the environment of subsequent commands."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4700
- msgid ""
- "Cause the status of terminated background jobs to be reported immediately, "
- "rather than before printing the next primary prompt."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4719
- msgid ""
- "Exit immediately if a pipeline (@pxref{Pipelines}), which may consist of a "
- "single simple command (@pxref{Simple Commands}), a list (@pxref{Lists}), or "
- "a compound command (@pxref{Compound Commands}) returns a non-zero status. "
- "The shell does not exit if the command that fails is part of the command "
- "list immediately following a @code{while} or @code{until} keyword, part of "
- "the test in an @code{if} statement, part of any command executed in a "
- "@code{&&} or @code{||} list except the command following the final @code{&&} "
- "or @code{||}, any command in a pipeline but the last, or if the command's "
- "return status is being inverted with @code{!}. If a compound command other "
- "than a subshell returns a non-zero status because a command failed while "
- "@option{-e} was being ignored, the shell does not exit. A trap on "
- "@code{ERR}, if set, is executed before the shell exits."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4723
- msgid ""
- "This option applies to the shell environment and each subshell environment "
- "separately (@pxref{Command Execution Environment}), and may cause subshells "
- "to exit before executing all the commands in the subshell."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4733
- msgid ""
- "If a compound command or shell function executes in a context where "
- "@option{-e} is being ignored, none of the commands executed within the "
- "compound command or function body will be affected by the @option{-e} "
- "setting, even if @option{-e} is set and a command returns a failure status. "
- "If a compound command or shell function sets @option{-e} while executing in "
- "a context where @option{-e} is ignored, that setting will not have any "
- "effect until the compound command or the command containing the function "
- "call completes."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4736
- msgid "Disable filename expansion (globbing)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4737
- #, no-wrap
- msgid "-h"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4740
- msgid ""
- "Locate and remember (hash) commands as they are looked up for execution. "
- "This option is enabled by default."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4745
- msgid ""
- "All arguments in the form of assignment statements are placed in the "
- "environment for a command, not just those that precede the command name."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4751
- msgid ""
- "Job control is enabled (@pxref{Job Control}). All processes run in a "
- "separate process group. When a background job completes, the shell prints a "
- "line containing its exit status."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4756
- msgid ""
- "Read commands but do not execute them. This may be used to check a script "
- "for syntax errors. This option is ignored by interactive shells."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4757
- #, no-wrap
- msgid "-o @var{option-name}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4760
- msgid "Set the option corresponding to @var{option-name}:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:4762
- #, no-wrap
- msgid "allexport"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4764
- msgid "Same as @code{-a}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4765
- #, no-wrap
- msgid "braceexpand"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4767
- msgid "Same as @code{-B}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4768
- #, no-wrap
- msgid "emacs"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4771
- msgid ""
- "Use an @code{emacs}-style line editing interface (@pxref{Command Line "
- "Editing}). This also affects the editing interface used for @code{read -e}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4772
- #, no-wrap
- msgid "errexit"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4774
- msgid "Same as @code{-e}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4775
- #, no-wrap
- msgid "errtrace"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4777
- msgid "Same as @code{-E}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4778
- #, no-wrap
- msgid "functrace"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4780
- msgid "Same as @code{-T}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4781
- #, no-wrap
- msgid "hashall"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4783
- msgid "Same as @code{-h}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4784
- #, no-wrap
- msgid "histexpand"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4786
- msgid "Same as @code{-H}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4787
- #, no-wrap
- msgid "history"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4790
- msgid ""
- "Enable command history, as described in @ref{Bash History Facilities}. This "
- "option is on by default in interactive shells."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4791
- #, no-wrap
- msgid "ignoreeof"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4793
- msgid "An interactive shell will not exit upon reading EOF."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4794
- #, no-wrap
- msgid "keyword"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4796
- msgid "Same as @code{-k}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4797
- #, no-wrap
- msgid "monitor"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4799
- msgid "Same as @code{-m}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4800
- #, no-wrap
- msgid "noclobber"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4802
- msgid "Same as @code{-C}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4803
- #, no-wrap
- msgid "noexec"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4805
- msgid "Same as @code{-n}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4806
- #, no-wrap
- msgid "noglob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4808
- msgid "Same as @code{-f}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4809
- #, no-wrap
- msgid "nolog"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4811
- msgid "Currently ignored."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4812
- #, no-wrap
- msgid "notify"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4814
- msgid "Same as @code{-b}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4815
- #, no-wrap
- msgid "nounset"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4817
- msgid "Same as @code{-u}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4818
- #, no-wrap
- msgid "onecmd"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4820
- msgid "Same as @code{-t}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4821
- #, no-wrap
- msgid "physical"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4823
- msgid "Same as @code{-P}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4824
- #, no-wrap
- msgid "pipefail"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4829
- msgid ""
- "If set, the return value of a pipeline is the value of the last (rightmost) "
- "command to exit with a non-zero status, or zero if all commands in the "
- "pipeline exit successfully. This option is disabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4830
- #, no-wrap
- msgid "posix"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4836
- msgid ""
- "Change the behavior of Bash where the default operation differs from the "
- "@sc{posix} standard to match the standard (@pxref{Bash POSIX Mode}). This "
- "is intended to make Bash behave as a strict superset of that standard."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4837
- #, no-wrap
- msgid "privileged"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4839
- msgid "Same as @code{-p}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4840
- #, no-wrap
- msgid "verbose"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4842
- msgid "Same as @code{-v}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4843
- #, no-wrap
- msgid "vi"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4846
- msgid ""
- "Use a @code{vi}-style line editing interface. This also affects the editing "
- "interface used for @code{read -e}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4847
- #, no-wrap
- msgid "xtrace"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4849
- msgid "Same as @code{-x}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4864
- msgid ""
- "Turn on privileged mode. In this mode, the @env{$BASH_ENV} and @env{$ENV} "
- "files are not processed, shell functions are not inherited from the "
- "environment, and the @env{SHELLOPTS}, @env{BASHOPTS}, @env{CDPATH} and "
- "@env{GLOBIGNORE} variables, if they appear in the environment, are ignored. "
- "If the shell is started with the effective user (group) id not equal to the "
- "real user (group) id, and the @option{-p} option is not supplied, these "
- "actions are taken and the effective user id is set to the real user id. If "
- "the @option{-p} option is supplied at startup, the effective user id is not "
- "reset. Turning this option off causes the effective user and group ids to "
- "be set to the real user and group ids."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4867
- msgid "Exit after reading and executing one command."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4873
- msgid ""
- "Treat unset variables and parameters other than the special parameters "
- "@samp{@@} or @samp{*} as an error when performing parameter expansion. An "
- "error message will be written to the standard error, and a non-interactive "
- "shell will exit."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4876
- msgid "Print shell input lines as they are read."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4884
- msgid ""
- "Print a trace of simple commands, @code{for} commands, @code{case} commands, "
- "@code{select} commands, and arithmetic @code{for} commands and their "
- "arguments or associated word lists after they are expanded and before they "
- "are executed. The value of the @env{PS4} variable is expanded and the "
- "resultant value is printed before the command and its expanded arguments."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4885
- #, no-wrap
- msgid "-B"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4888
- msgid ""
- "The shell will perform brace expansion (@pxref{Brace Expansion}). This "
- "option is on by default."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4892
- msgid ""
- "Prevent output redirection using @samp{>}, @samp{>&}, and @samp{<>} from "
- "overwriting existing files."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4893
- #, no-wrap
- msgid "-E"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4897
- msgid ""
- "If set, any trap on @code{ERR} is inherited by shell functions, command "
- "substitutions, and commands executed in a subshell environment. The "
- "@code{ERR} trap is normally not inherited in such cases."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4901
- msgid ""
- "Enable @samp{!} style history substitution (@pxref{History Interaction}). "
- "This option is on by default for interactive shells."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4908
- msgid ""
- "If set, do not resolve symbolic links when performing commands such as "
- "@code{cd} which change the current directory. The physical directory is "
- "used instead. By default, Bash follows the logical chain of directories "
- "when performing commands which change the current directory."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4911
- msgid ""
- "For example, if @file{/usr/sys} is a symbolic link to @file{/usr/local/sys} "
- "then:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4916
- #, no-wrap
- msgid ""
- "$ cd /usr/sys; echo $PWD\n"
- "/usr/sys\n"
- "$ cd ..; pwd\n"
- "/usr\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4920
- msgid "If @code{set -P} is on, then:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4925
- #, no-wrap
- msgid ""
- "$ cd /usr/sys; echo $PWD\n"
- "/usr/local/sys\n"
- "$ cd ..; pwd\n"
- "/usr/local\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4933
- msgid ""
- "If set, any trap on @code{DEBUG} and @code{RETURN} are inherited by shell "
- "functions, command substitutions, and commands executed in a subshell "
- "environment. The @code{DEBUG} and @code{RETURN} traps are normally not "
- "inherited in such cases."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4934 ./bashref.texi:6309
- #, no-wrap
- msgid "--"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4938
- msgid ""
- "If no arguments follow this option, then the positional parameters are "
- "unset. Otherwise, the positional parameters are set to the @var{arguments}, "
- "even if some of them begin with a @samp{-}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4944
- msgid ""
- "Signal the end of options, cause all remaining @var{arguments} to be "
- "assigned to the positional parameters. The @option{-x} and @option{-v} "
- "options are turned off. If there are no arguments, the positional "
- "parameters remain unchanged."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4949
- msgid ""
- "Using @samp{+} rather than @samp{-} causes these options to be turned off. "
- "The options can also be used upon invocation of the shell. The current set "
- "of options may be found in @code{$-}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4953
- msgid ""
- "The remaining N @var{arguments} are positional parameters and are assigned, "
- "in order, to @code{$1}, @code{$2}, @dots{} @code{$N}. The special parameter "
- "@code{#} is set to N."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4955
- msgid "The return status is always zero unless an invalid option is supplied."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:4961
- msgid "This builtin allows you to change additional shell optional behavior."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:4964 ./bashref.texi:4965
- #, no-wrap
- msgid "shopt"
- msgstr ""
- #. type: example
- #: ./bashref.texi:4968
- #, no-wrap
- msgid "shopt [-pqsu] [-o] [@var{optname} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4979
- msgid ""
- "Toggle the values of settings controlling optional shell behavior. The "
- "settings can be either those listed below, or, if the @option{-o} option is "
- "used, those available with the @option{-o} option to the @code{set} builtin "
- "command (@pxref{The Set Builtin}). With no options, or with the @option{-p} "
- "option, a list of all settable options is displayed, with an indication of "
- "whether or not each is set. The @option{-p} option causes output to be "
- "displayed in a form that may be reused as input. Other options have the "
- "following meanings:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4983
- msgid "Enable (set) each @var{optname}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4986
- msgid "Disable (unset) each @var{optname}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:4993
- msgid ""
- "Suppresses normal output; the return status indicates whether the "
- "@var{optname} is set or unset. If multiple @var{optname} arguments are "
- "given with @option{-q}, the return status is zero if all @var{optnames} are "
- "enabled; non-zero otherwise."
- msgstr ""
- #. type: item
- #: ./bashref.texi:4994
- #, no-wrap
- msgid "-o"
- msgstr ""
- #. type: table
- #: ./bashref.texi:4998
- msgid ""
- "Restricts the values of @var{optname} to be those defined for the "
- "@option{-o} option to the @code{set} builtin (@pxref{The Set Builtin})."
- msgstr ""
- #. type: table
- #: ./bashref.texi:5003
- msgid ""
- "If either @option{-s} or @option{-u} is used with no @var{optname} "
- "arguments, @code{shopt} shows only those options which are set or unset, "
- "respectively."
- msgstr ""
- #. type: table
- #: ./bashref.texi:5006
- msgid ""
- "Unless otherwise noted, the @code{shopt} options are disabled (off) by "
- "default."
- msgstr ""
- #. type: table
- #: ./bashref.texi:5011 ./bashref.texi:5344
- msgid ""
- "The return status when listing options is zero if all @var{optnames} are "
- "enabled, non-zero otherwise. When setting or unsetting options, the return "
- "status is zero unless an @var{optname} is not a valid shell option."
- msgstr ""
- #. type: table
- #: ./bashref.texi:5013
- msgid "The list of @code{shopt} options is:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:5015
- #, no-wrap
- msgid "autocd"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5019
- msgid ""
- "If set, a command name that is the name of a directory is executed as if it "
- "were the argument to the @code{cd} command. This option is only used by "
- "interactive shells."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5020
- #, no-wrap
- msgid "cdable_vars"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5024
- msgid ""
- "If this is set, an argument to the @code{cd} builtin command that is not a "
- "directory is assumed to be the name of a variable whose value is the "
- "directory to change to."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5025
- #, no-wrap
- msgid "cdspell"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5033
- msgid ""
- "If set, minor errors in the spelling of a directory component in a @code{cd} "
- "command will be corrected. The errors checked for are transposed "
- "characters, a missing character, and a character too many. If a correction "
- "is found, the corrected path is printed, and the command proceeds. This "
- "option is only used by interactive shells."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5034
- #, no-wrap
- msgid "checkhash"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5038
- msgid ""
- "If this is set, Bash checks that a command found in the hash table exists "
- "before trying to execute it. If a hashed command no longer exists, a normal "
- "path search is performed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5039
- #, no-wrap
- msgid "checkjobs"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5045
- msgid ""
- "If set, Bash lists the status of any stopped and running jobs before exiting "
- "an interactive shell. If any jobs are running, this causes the exit to be "
- "deferred until a second exit is attempted without an intervening command "
- "(@pxref{Job Control}). The shell always postpones exiting if any jobs are "
- "stopped."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5046
- #, no-wrap
- msgid "checkwinsize"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5050
- msgid ""
- "If set, Bash checks the window size after each command and, if necessary, "
- "updates the values of @env{LINES} and @env{COLUMNS}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5051
- #, no-wrap
- msgid "cmdhist"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5056
- msgid ""
- "If set, Bash attempts to save all lines of a multiple-line command in the "
- "same history entry. This allows easy re-editing of multi-line commands."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5057
- #, no-wrap
- msgid "compat31"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5066
- msgid ""
- "If set, Bash changes its behavior to that of version 3.1 with respect to "
- "quoted arguments to the conditional command's @samp{=~} operator and with "
- "respect to locale-specific string comparison when using the @code{[[} "
- "conditional command's @samp{<} and @samp{>} operators. Bash versions prior "
- "to bash-4.1 use ASCII collation and strcmp(3); bash-4.1 and later use the "
- "current locale's collation sequence and strcoll(3)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5067
- #, no-wrap
- msgid "compat32"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5075
- msgid ""
- "If set, Bash changes its behavior to that of version 3.2 with respect to "
- "locale-specific string comparison when using the @code{[[} conditional "
- "command's @samp{<} and @samp{>} operators (see previous item) and the "
- "effect of interrupting a command list. Bash versions 3.2 and earlier "
- "continue with the next command in the list after one terminates due to an "
- "interrupt."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5076
- #, no-wrap
- msgid "compat40"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5085
- msgid ""
- "If set, Bash changes its behavior to that of version 4.0 with respect to "
- "locale-specific string comparison when using the @code{[[} conditional "
- "command's @samp{<} and @samp{>} operators (see description of "
- "@code{compat31}) and the effect of interrupting a command list. Bash "
- "versions 4.0 and later interrupt the list as if the shell received the "
- "interrupt; previous versions continue with the next command in the list."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5086
- #, no-wrap
- msgid "compat41"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5092
- msgid ""
- "If set, Bash, when in @sc{posix} mode, treats a single quote in a "
- "double-quoted parameter expansion as a special character. The single quotes "
- "must match (an even number) and the characters between the single quotes are "
- "considered quoted. This is the behavior of @sc{posix} mode through version "
- "4.1. The default Bash behavior remains as in previous versions."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5093
- #, no-wrap
- msgid "compat42"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5097
- msgid ""
- "If set, Bash does not process the replacement string in the pattern "
- "substitution word expansion using quote removal."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5098
- #, no-wrap
- msgid "compat43"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5108
- msgid ""
- "If set, Bash does not print a warning message if an attempt is made to use a "
- "quoted compound array assignment as an argument to @code{declare}, makes "
- "word expansion errors non-fatal errors that cause the current command to "
- "fail (the default behavior is to make them fatal errors that cause the shell "
- "to exit), and does not reset the loop state when a shell function is "
- "executed (this allows @code{break} or @code{continue} in a shell function to "
- "affect loops in the caller's context)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5109
- #, no-wrap
- msgid "complete_fullquote"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5125
- msgid ""
- "If set, Bash quotes all shell metacharacters in filenames and directory "
- "names when performing completion. If not set, Bash removes metacharacters "
- "such as the dollar sign from the set of characters that will be quoted in "
- "completed filenames when these metacharacters appear in shell variable "
- "references in words to be completed. This means that dollar signs in "
- "variable names that expand to directories will not be quoted; however, any "
- "dollar signs appearing in filenames will not be quoted, either. This is "
- "active only when bash is using backslashes to quote completed filenames. "
- "This variable is set by default, which is the default Bash behavior in "
- "versions through 4.2."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5126
- #, no-wrap
- msgid "direxpand"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5132
- msgid ""
- "If set, Bash replaces directory names with the results of word expansion "
- "when performing filename completion. This changes the contents of the "
- "readline editing buffer. If not set, Bash attempts to preserve what the "
- "user typed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5133
- #, no-wrap
- msgid "dirspell"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5137
- msgid ""
- "If set, Bash attempts spelling correction on directory names during word "
- "completion if the directory name initially supplied does not exist."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5138
- #, no-wrap
- msgid "dotglob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5141
- msgid ""
- "If set, Bash includes filenames beginning with a `.' in the results of "
- "filename expansion."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5142
- #, no-wrap
- msgid "execfail"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5147
- msgid ""
- "If this is set, a non-interactive shell will not exit if it cannot execute "
- "the file specified as an argument to the @code{exec} builtin command. An "
- "interactive shell does not exit if @code{exec} fails."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5148
- #, no-wrap
- msgid "expand_aliases"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5152
- msgid ""
- "If set, aliases are expanded as described below under Aliases, "
- "@ref{Aliases}. This option is enabled by default for interactive shells."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5153
- #, no-wrap
- msgid "extdebug"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5157
- msgid ""
- "If set at shell invocation, arrange to execute the debugger profile before "
- "the shell starts, identical to the @option{--debugger} option. If set after "
- "invocation, behavior intended for use by debuggers is enabled:"
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5163
- msgid ""
- "The @option{-F} option to the @code{declare} builtin (@pxref{Bash Builtins}) "
- "displays the source file name and line number corresponding to each function "
- "name supplied as an argument."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5167
- msgid ""
- "If the command run by the @code{DEBUG} trap returns a non-zero value, the "
- "next command is skipped and not executed."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5173
- msgid ""
- "If the command run by the @code{DEBUG} trap returns a value of 2, and the "
- "shell is executing in a subroutine (a shell function or a shell script "
- "executed by the @code{.} or @code{source} builtins), the shell simulates a "
- "call to @code{return}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5177
- msgid ""
- "@code{BASH_ARGC} and @code{BASH_ARGV} are updated as described in their "
- "descriptions (@pxref{Bash Variables})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5182
- msgid ""
- "Function tracing is enabled: command substitution, shell functions, and "
- "subshells invoked with @code{( @var{command} )} inherit the @code{DEBUG} and "
- "@code{RETURN} traps."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5187
- msgid ""
- "Error tracing is enabled: command substitution, shell functions, and "
- "subshells invoked with @code{( @var{command} )} inherit the @code{ERR} trap."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5189
- #, no-wrap
- msgid "extglob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5192
- msgid ""
- "If set, the extended pattern matching features described above "
- "(@pxref{Pattern Matching}) are enabled."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5193
- #, no-wrap
- msgid "extquote"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5197
- msgid ""
- "If set, @code{$'@var{string}'} and @code{$\"@var{string}\"} quoting is "
- "performed within @code{$@{@var{parameter}@}} expansions enclosed in double "
- "quotes. This option is enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5198
- #, no-wrap
- msgid "failglob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5201
- msgid ""
- "If set, patterns which fail to match filenames during filename expansion "
- "result in an expansion error."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5202
- #, no-wrap
- msgid "force_fignore"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5208
- msgid ""
- "If set, the suffixes specified by the @env{FIGNORE} shell variable cause "
- "words to be ignored when performing word completion even if the ignored "
- "words are the only possible completions. @xref{Bash Variables}, for a "
- "description of @env{FIGNORE}. This option is enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5209
- #, no-wrap
- msgid "globasciiranges"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5217
- msgid ""
- "If set, range expressions used in pattern matching bracket expressions "
- "(@pxref{Pattern Matching}) behave as if in the traditional C locale when "
- "performing comparisons. That is, the current locale's collating sequence is "
- "not taken into account, so @samp{b} will not collate between @samp{A} and "
- "@samp{B}, and upper-case and lower-case ASCII characters will collate "
- "together."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5218
- #, no-wrap
- msgid "globstar"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5223
- msgid ""
- "If set, the pattern @samp{**} used in a filename expansion context will "
- "match all files and zero or more directories and subdirectories. If the "
- "pattern is followed by a @samp{/}, only directories and subdirectories "
- "match."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5224
- #, no-wrap
- msgid "gnu_errfmt"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5227
- msgid ""
- "If set, shell error messages are written in the standard @sc{gnu} error "
- "message format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5228
- #, no-wrap
- msgid "histappend"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5232
- msgid ""
- "If set, the history list is appended to the file named by the value of the "
- "@env{HISTFILE} variable when the shell exits, rather than overwriting the "
- "file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5233
- #, no-wrap
- msgid "histreedit"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5237
- msgid ""
- "If set, and Readline is being used, a user is given the opportunity to "
- "re-edit a failed history substitution."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5238
- #, no-wrap
- msgid "histverify"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5243
- msgid ""
- "If set, and Readline is being used, the results of history substitution are "
- "not immediately passed to the shell parser. Instead, the resulting line is "
- "loaded into the Readline editing buffer, allowing further modification."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5244
- #, no-wrap
- msgid "hostcomplete"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5249
- msgid ""
- "If set, and Readline is being used, Bash will attempt to perform hostname "
- "completion when a word containing a @samp{@@} is being completed "
- "(@pxref{Commands For Completion}). This option is enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5250
- #, no-wrap
- msgid "huponexit"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5253
- msgid ""
- "If set, Bash will send @code{SIGHUP} to all jobs when an interactive login "
- "shell exits (@pxref{Signals})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5254
- #, no-wrap
- msgid "inherit_errexit"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5258
- msgid ""
- "If set, command substitution inherits the value of the @code{errexit} "
- "option, instead of unsetting it in the subshell environment. This option is "
- "enabled when @sc{posix} mode is enabled."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5259
- #, no-wrap
- msgid "interactive_comments"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5264
- msgid ""
- "Allow a word beginning with @samp{#} to cause that word and all remaining "
- "characters on that line to be ignored in an interactive shell. This option "
- "is enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5265
- #, no-wrap
- msgid "lastpipe"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5268
- msgid ""
- "If set, and job control is not active, the shell runs the last command of a "
- "pipeline not executed in the background in the current shell environment."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5269
- #, no-wrap
- msgid "lithist"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5273
- msgid ""
- "If enabled, and the @code{cmdhist} option is enabled, multi-line commands "
- "are saved to the history with embedded newlines rather than using semicolon "
- "separators where possible."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5274
- #, no-wrap
- msgid "login_shell"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5278
- msgid ""
- "The shell sets this option if it is started as a login shell "
- "(@pxref{Invoking Bash}). The value may not be changed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5279
- #, no-wrap
- msgid "mailwarn"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5283
- msgid ""
- "If set, and a file that Bash is checking for mail has been accessed since "
- "the last time it was checked, the message @code{\"The mail in @var{mailfile} "
- "has been read\"} is displayed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5284
- #, no-wrap
- msgid "no_empty_cmd_completion"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5288
- msgid ""
- "If set, and Readline is being used, Bash will not attempt to search the "
- "@env{PATH} for possible completions when completion is attempted on an empty "
- "line."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5289
- #, no-wrap
- msgid "nocaseglob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5292
- msgid ""
- "If set, Bash matches filenames in a case-insensitive fashion when performing "
- "filename expansion."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5293
- #, no-wrap
- msgid "nocasematch"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5299
- msgid ""
- "If set, Bash matches patterns in a case-insensitive fashion when performing "
- "matching while executing @code{case} or @code{[[} conditional commands, when "
- "performing pattern substitution word expansions, or when filtering possible "
- "completions as part of programmable completion."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5300
- #, no-wrap
- msgid "nullglob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5303
- msgid ""
- "If set, Bash allows filename patterns which match no files to expand to a "
- "null string, rather than themselves."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5304
- #, no-wrap
- msgid "progcomp"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5308
- msgid ""
- "If set, the programmable completion facilities (@pxref{Programmable "
- "Completion}) are enabled. This option is enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5309
- #, no-wrap
- msgid "promptvars"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5315
- msgid ""
- "If set, prompt strings undergo parameter expansion, command substitution, "
- "arithmetic expansion, and quote removal after being expanded as described "
- "below (@pxref{Controlling the Prompt}). This option is enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5316
- #, no-wrap
- msgid "restricted_shell"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5322
- msgid ""
- "The shell sets this option if it is started in restricted mode (@pxref{The "
- "Restricted Shell}). The value may not be changed. This is not reset when "
- "the startup files are executed, allowing the startup files to discover "
- "whether or not a shell is restricted."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5323
- #, no-wrap
- msgid "shift_verbose"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5327
- msgid ""
- "If this is set, the @code{shift} builtin prints an error message when the "
- "shift count exceeds the number of positional parameters."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5328
- #, no-wrap
- msgid "sourcepath"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5332
- msgid ""
- "If set, the @code{source} builtin uses the value of @env{PATH} to find the "
- "directory containing the file supplied as an argument. This option is "
- "enabled by default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5333
- #, no-wrap
- msgid "xpg_echo"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5336
- msgid ""
- "If set, the @code{echo} builtin expands backslash-escape sequences by "
- "default."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5354
- msgid ""
- "For historical reasons, the @sc{posix} standard has classified several "
- "builtin commands as @emph{special}. When Bash is executing in @sc{posix} "
- "mode, the special builtins differ from other builtin commands in three "
- "respects:"
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5358
- msgid "Special builtins are found before shell functions during command lookup."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5361
- msgid "If a special builtin returns an error status, a non-interactive shell exits."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:5365
- msgid ""
- "Assignment statements preceding the command stay in effect in the shell "
- "environment after the command completes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5370
- msgid ""
- "When Bash is not executing in @sc{posix} mode, these builtins behave no "
- "differently than the rest of the Bash builtin commands. The Bash @sc{posix} "
- "mode is described in @ref{Bash POSIX Mode}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5372
- msgid "These are the @sc{posix} special builtins:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:5375
- #, no-wrap
- msgid ""
- "@w{break : . continue eval exec exit export readonly return set}\n"
- "@w{shift trap unset}\n"
- msgstr ""
- #. type: section
- #: ./bashref.texi:5384 ./bashref.texi:5389 ./bashref.texi:5390
- #, no-wrap
- msgid "Bourne Shell Variables"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:5384
- msgid "Variables which Bash uses in the same way as the Bourne Shell."
- msgstr ""
- #. type: section
- #: ./bashref.texi:5384 ./bashref.texi:5450 ./bashref.texi:5451
- #, no-wrap
- msgid "Bash Variables"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:5384
- msgid "List of variables that exist in Bash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5388
- msgid ""
- "This chapter describes the shell variables that Bash uses. Bash "
- "automatically assigns default values to a number of variables."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5394
- msgid ""
- "Bash uses certain shell variables in the same way as the Bourne shell. In "
- "some cases, Bash assigns a default value to the variable."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5397
- #, no-wrap
- msgid "CDPATH"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5400
- msgid ""
- "A colon-separated list of directories used as a search path for the "
- "@code{cd} builtin command."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5401
- #, no-wrap
- msgid "HOME"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5406
- msgid ""
- "The current user's home directory; the default for the @code{cd} builtin "
- "command. The value of this variable is also used by tilde expansion "
- "(@pxref{Tilde Expansion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5407
- #, no-wrap
- msgid "IFS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5410
- msgid ""
- "A list of characters that separate fields; used when the shell splits words "
- "as part of expansion."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5411
- #, no-wrap
- msgid "MAIL"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5416
- msgid ""
- "If this parameter is set to a filename or directory name and the "
- "@env{MAILPATH} variable is not set, Bash informs the user of the arrival of "
- "mail in the specified file or Maildir-format directory."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5417
- #, no-wrap
- msgid "MAILPATH"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5425
- msgid ""
- "A colon-separated list of filenames which the shell periodically checks for "
- "new mail. Each list entry can specify the message that is printed when new "
- "mail arrives in the mail file by separating the filename from the message "
- "with a @samp{?}. When used in the text of the message, @code{$_} expands to "
- "the name of the current mail file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5426
- #, no-wrap
- msgid "OPTARG"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5428
- msgid ""
- "The value of the last option argument processed by the @code{getopts} "
- "builtin."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5429
- #, no-wrap
- msgid "OPTIND"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5431
- msgid ""
- "The index of the last option argument processed by the @code{getopts} "
- "builtin."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5432
- #, no-wrap
- msgid "PATH"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5439
- msgid ""
- "A colon-separated list of directories in which the shell looks for "
- "commands. A zero-length (null) directory name in the value of @code{PATH} "
- "indicates the current directory. A null directory name may appear as two "
- "adjacent colons, or as an initial or trailing colon."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5440
- #, no-wrap
- msgid "PS1"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5444
- msgid ""
- "The primary prompt string. The default value is @samp{\\s-\\v\\$ }. "
- "@xref{Controlling the Prompt}, for the complete list of escape sequences "
- "that are expanded before @env{PS1} is displayed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5445
- #, no-wrap
- msgid "PS2"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5447
- msgid "The secondary prompt string. The default value is @samp{> }."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5455
- msgid ""
- "These variables are set or used by Bash, but other shells do not normally "
- "treat them specially."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5459
- msgid ""
- "A few variables used by Bash are described in different chapters: variables "
- "for controlling the job control facilities (@pxref{Job Control Variables})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5462
- #, no-wrap
- msgid "BASH"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5464
- msgid "The full pathname used to execute the current instance of Bash."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5465
- #, no-wrap
- msgid "BASHOPTS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5474
- msgid ""
- "A colon-separated list of enabled shell options. Each word in the list is a "
- "valid argument for the @option{-s} option to the @code{shopt} builtin "
- "command (@pxref{The Shopt Builtin}). The options appearing in "
- "@env{BASHOPTS} are those reported as @samp{on} by @samp{shopt}. If this "
- "variable is in the environment when Bash starts up, each shell option in the "
- "list will be enabled before reading any startup files. This variable is "
- "readonly."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5475
- #, no-wrap
- msgid "BASHPID"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5479
- msgid ""
- "Expands to the process ID of the current Bash process. This differs from "
- "@code{$$} under certain circumstances, such as subshells that do not require "
- "Bash to be re-initialized."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5480
- #, no-wrap
- msgid "BASH_ALIASES"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5490
- msgid ""
- "An associative array variable whose members correspond to the internal list "
- "of aliases as maintained by the @code{alias} builtin. (@pxref{Bourne Shell "
- "Builtins}). Elements added to this array appear in the alias list; however, "
- "unsetting array elements currently does not cause aliases to be removed from "
- "the alias list. If @code{BASH_ALIASES} is unset, it loses its special "
- "properties, even if it is subsequently reset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5491
- #, no-wrap
- msgid "BASH_ARGC"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5502
- msgid ""
- "An array variable whose values are the number of parameters in each frame of "
- "the current bash execution call stack. The number of parameters to the "
- "current subroutine (shell function or script executed with @code{.} or "
- "@code{source}) is at the top of the stack. When a subroutine is executed, "
- "the number of parameters passed is pushed onto @code{BASH_ARGC}. The shell "
- "sets @code{BASH_ARGC} only when in extended debugging mode (see @ref{The "
- "Shopt Builtin} for a description of the @code{extdebug} option to the "
- "@code{shopt} builtin)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5503
- #, no-wrap
- msgid "BASH_ARGV"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5513
- msgid ""
- "An array variable containing all of the parameters in the current bash "
- "execution call stack. The final parameter of the last subroutine call is at "
- "the top of the stack; the first parameter of the initial call is at the "
- "bottom. When a subroutine is executed, the parameters supplied are pushed "
- "onto @code{BASH_ARGV}. The shell sets @code{BASH_ARGV} only when in "
- "extended debugging mode (see @ref{The Shopt Builtin} for a description of "
- "the @code{extdebug} option to the @code{shopt} builtin)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5514
- #, no-wrap
- msgid "BASH_CMDS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5524
- msgid ""
- "An associative array variable whose members correspond to the internal hash "
- "table of commands as maintained by the @code{hash} builtin (@pxref{Bourne "
- "Shell Builtins}). Elements added to this array appear in the hash table; "
- "however, unsetting array elements currently does not cause command names to "
- "be removed from the hash table. If @code{BASH_CMDS} is unset, it loses its "
- "special properties, even if it is subsequently reset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5525
- #, no-wrap
- msgid "BASH_COMMAND"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5529
- msgid ""
- "The command currently being executed or about to be executed, unless the "
- "shell is executing a command as the result of a trap, in which case it is "
- "the command executing at the time of the trap."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5530
- #, no-wrap
- msgid "BASH_COMPAT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5545
- msgid ""
- "The value is used to set the shell's compatibility level. @xref{The Shopt "
- "Builtin}, for a description of the various compatibility levels and their "
- "effects. The value may be a decimal number (e.g., 4.2) or an integer (e.g., "
- "42) corresponding to the desired compatibility level. If "
- "@code{BASH_COMPAT} is unset or set to the empty string, the compatibility "
- "level is set to the default for the current version. If @code{BASH_COMPAT} "
- "is set to a value that is not one of the valid compatibility levels, the "
- "shell prints an error message and sets the compatibility level to the "
- "default for the current version. The valid compatibility levels correspond "
- "to the compatibility options accepted by the @code{shopt} builtin described "
- "above (for example, @var{compat42} means that 4.2 and 42 are valid values). "
- "The current version is also a valid value."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5546
- #, no-wrap
- msgid "BASH_ENV"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5550
- msgid ""
- "If this variable is set when Bash is invoked to execute a shell script, its "
- "value is expanded and used as the name of a startup file to read before "
- "executing the script. @xref{Bash Startup Files}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5551
- #, no-wrap
- msgid "BASH_EXECUTION_STRING"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5553
- msgid "The command argument to the @option{-c} invocation option."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5554
- #, no-wrap
- msgid "BASH_LINENO"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5562
- msgid ""
- "An array variable whose members are the line numbers in source files where "
- "each corresponding member of @var{FUNCNAME} was invoked. "
- "@code{$@{BASH_LINENO[$i]@}} is the line number in the source file "
- "(@code{$@{BASH_SOURCE[$i+1]@}}) where @code{$@{FUNCNAME[$i]@}} was called "
- "(or @code{$@{BASH_LINENO[$i-1]@}} if referenced within another shell "
- "function). Use @code{LINENO} to obtain the current line number."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5563
- #, no-wrap
- msgid "BASH_LOADABLES_PATH"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5567
- msgid ""
- "A colon-separated list of directories in which the shell looks for "
- "dynamically loadable builtins specified by the @code{enable} command."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5568
- #, no-wrap
- msgid "BASH_REMATCH"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5577
- msgid ""
- "An array variable whose members are assigned by the @samp{=~} binary "
- "operator to the @code{[[} conditional command (@pxref{Conditional "
- "Constructs}). The element with index 0 is the portion of the string "
- "matching the entire regular expression. The element with index @var{n} is "
- "the portion of the string matching the @var{n}th parenthesized "
- "subexpression. This variable is read-only."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5578
- #, no-wrap
- msgid "BASH_SOURCE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5584
- msgid ""
- "An array variable whose members are the source filenames where the "
- "corresponding shell function names in the @code{FUNCNAME} array variable are "
- "defined. The shell function @code{$@{FUNCNAME[$i]@}} is defined in the file "
- "@code{$@{BASH_SOURCE[$i]@}} and called from @code{$@{BASH_SOURCE[$i+1]@}}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:5585
- #, no-wrap
- msgid "BASH_SUBSHELL"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5589
- msgid ""
- "Incremented by one within each subshell or subshell environment when the "
- "shell begins executing in that environment. The initial value is 0."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5590
- #, no-wrap
- msgid "BASH_VERSINFO"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5594
- msgid ""
- "A readonly array variable (@pxref{Arrays}) whose members hold version "
- "information for this instance of Bash. The values assigned to the array "
- "members are as follows:"
- msgstr ""
- #. type: item
- #: ./bashref.texi:5597
- #, no-wrap
- msgid "BASH_VERSINFO[0]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5599
- msgid "The major version number (the @var{release})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5600
- #, no-wrap
- msgid "BASH_VERSINFO[1]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5602
- msgid "The minor version number (the @var{version})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5603
- #, no-wrap
- msgid "BASH_VERSINFO[2]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5605
- msgid "The patch level."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5606
- #, no-wrap
- msgid "BASH_VERSINFO[3]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5608
- msgid "The build version."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5609
- #, no-wrap
- msgid "BASH_VERSINFO[4]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5611
- msgid "The release status (e.g., @var{beta1})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5612
- #, no-wrap
- msgid "BASH_VERSINFO[5]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:5614
- msgid "The value of @env{MACHTYPE}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5616
- #, no-wrap
- msgid "BASH_VERSION"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5618
- msgid "The version number of the current instance of Bash."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5619
- #, no-wrap
- msgid "BASH_XTRACEFD"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5632
- msgid ""
- "If set to an integer corresponding to a valid file descriptor, Bash will "
- "write the trace output generated when @samp{set -x} is enabled to that file "
- "descriptor. This allows tracing output to be separated from diagnostic and "
- "error messages. The file descriptor is closed when @code{BASH_XTRACEFD} is "
- "unset or assigned a new value. Unsetting @code{BASH_XTRACEFD} or assigning "
- "it the empty string causes the trace output to be sent to the standard "
- "error. Note that setting @code{BASH_XTRACEFD} to 2 (the standard error file "
- "descriptor) and then unsetting it will result in the standard error being "
- "closed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5633
- #, no-wrap
- msgid "CHILD_MAX"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5639
- msgid ""
- "Set the number of exited child status values for the shell to remember. "
- "Bash will not allow this value to be decreased below a @sc{posix}-mandated "
- "minimum, and there is a maximum value (currently 8192) that this may not "
- "exceed. The minimum value is system-dependent."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5640
- #, no-wrap
- msgid "COLUMNS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5646
- msgid ""
- "Used by the @code{select} command to determine the terminal width when "
- "printing selection lists. Automatically set if the @code{checkwinsize} "
- "option is enabled (@pxref{The Shopt Builtin}), or in an interactive shell "
- "upon receipt of a @code{SIGWINCH}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5647
- #, no-wrap
- msgid "COMP_CWORD"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5652
- msgid ""
- "An index into @env{$@{COMP_WORDS@}} of the word containing the current "
- "cursor position. This variable is available only in shell functions invoked "
- "by the programmable completion facilities (@pxref{Programmable Completion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5653
- #, no-wrap
- msgid "COMP_LINE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5658
- msgid ""
- "The current command line. This variable is available only in shell "
- "functions and external commands invoked by the programmable completion "
- "facilities (@pxref{Programmable Completion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5659
- #, no-wrap
- msgid "COMP_POINT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5667
- msgid ""
- "The index of the current cursor position relative to the beginning of the "
- "current command. If the current cursor position is at the end of the "
- "current command, the value of this variable is equal to "
- "@code{$@{#COMP_LINE@}}. This variable is available only in shell functions "
- "and external commands invoked by the programmable completion facilities "
- "(@pxref{Programmable Completion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5668
- #, no-wrap
- msgid "COMP_TYPE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5680
- msgid ""
- "Set to an integer value corresponding to the type of completion attempted "
- "that caused a completion function to be called: @var{TAB}, for normal "
- "completion, @samp{?}, for listing completions after successive tabs, "
- "@samp{!}, for listing alternatives on partial word completion, @samp{@@}, to "
- "list completions if the word is not unmodified, or @samp{%}, for menu "
- "completion. This variable is available only in shell functions and external "
- "commands invoked by the programmable completion facilities "
- "(@pxref{Programmable Completion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5681
- #, no-wrap
- msgid "COMP_KEY"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5684
- msgid ""
- "The key (or final key of a key sequence) used to invoke the current "
- "completion function."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5685
- #, no-wrap
- msgid "COMP_WORDBREAKS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5690
- msgid ""
- "The set of characters that the Readline library treats as word separators "
- "when performing word completion. If @code{COMP_WORDBREAKS} is unset, it "
- "loses its special properties, even if it is subsequently reset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5691
- #, no-wrap
- msgid "COMP_WORDS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5698
- msgid ""
- "An array variable consisting of the individual words in the current command "
- "line. The line is split into words as Readline would split it, using "
- "@code{COMP_WORDBREAKS} as described above. This variable is available only "
- "in shell functions invoked by the programmable completion facilities "
- "(@pxref{Programmable Completion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5699
- #, no-wrap
- msgid "COMPREPLY"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5704
- msgid ""
- "An array variable from which Bash reads the possible completions generated "
- "by a shell function invoked by the programmable completion facility "
- "(@pxref{Programmable Completion}). Each array element contains one possible "
- "completion."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5705
- #, no-wrap
- msgid "COPROC"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5708
- msgid ""
- "An array variable created to hold the file descriptors for output from and "
- "input to an unnamed coprocess (@pxref{Coprocesses})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5709
- #, no-wrap
- msgid "DIRSTACK"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5719
- msgid ""
- "An array variable containing the current contents of the directory stack. "
- "Directories appear in the stack in the order they are displayed by the "
- "@code{dirs} builtin. Assigning to members of this array variable may be "
- "used to modify directories already in the stack, but the @code{pushd} and "
- "@code{popd} builtins must be used to add and remove directories. Assignment "
- "to this variable will not change the current directory. If @env{DIRSTACK} "
- "is unset, it loses its special properties, even if it is subsequently reset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5720
- #, no-wrap
- msgid "EMACS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5724
- msgid ""
- "If Bash finds this variable in the environment when the shell starts with "
- "value @samp{t}, it assumes that the shell is running in an Emacs shell "
- "buffer and disables line editing."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5725
- #, no-wrap
- msgid "ENV"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5728
- msgid ""
- "Similar to @code{BASH_ENV}; used when the shell is invoked in @sc{posix} "
- "Mode (@pxref{Bash POSIX Mode})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5729
- #, no-wrap
- msgid "EUID"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5732
- msgid ""
- "The numeric effective user id of the current user. This variable is "
- "readonly."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5733
- #, no-wrap
- msgid "EXECIGNORE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5747
- msgid ""
- "A colon-separated list of shell patterns (@pxref{Pattern Matching}) "
- "defining the list of filenames to be ignored by command search using "
- "@code{PATH}. Files whose full pathnames match one of these patterns are not "
- "considered executable files for the purposes of completion and command "
- "execution via @code{PATH} lookup. This does not affect the behavior of the "
- "@code{[}, @code{test}, and @code{[[} commands. Full pathnames in the "
- "command hash table are not subject to @code{EXECIGNORE}. Use this variable "
- "to ignore shared library files that have the executable bit set, but are not "
- "executable files. The pattern matching honors the setting of the "
- "@code{extglob} shell option."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5748
- #, no-wrap
- msgid "FCEDIT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5751
- msgid ""
- "The editor used as a default by the @option{-e} option to the @code{fc} "
- "builtin command."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5752
- #, no-wrap
- msgid "FIGNORE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5759
- msgid ""
- "A colon-separated list of suffixes to ignore when performing filename "
- "completion. A filename whose suffix matches one of the entries in "
- "@env{FIGNORE} is excluded from the list of matched filenames. A sample "
- "value is @samp{.o:~}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:5760
- #, no-wrap
- msgid "FUNCNAME"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5771
- msgid ""
- "An array variable containing the names of all shell functions currently in "
- "the execution call stack. The element with index 0 is the name of any "
- "currently-executing shell function. The bottom-most element (the one with "
- "the highest index) is @code{\"main\"}. This variable exists only when a "
- "shell function is executing. Assignments to @env{FUNCNAME} have no effect. "
- "If @env{FUNCNAME} is unset, it loses its special properties, even if it is "
- "subsequently reset."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5779
- msgid ""
- "This variable can be used with @code{BASH_LINENO} and @code{BASH_SOURCE}. "
- "Each element of @code{FUNCNAME} has corresponding elements in "
- "@code{BASH_LINENO} and @code{BASH_SOURCE} to describe the call stack. For "
- "instance, @code{$@{FUNCNAME[$i]@}} was called from the file "
- "@code{$@{BASH_SOURCE[$i+1]@}} at line number @code{$@{BASH_LINENO[$i]@}}. "
- "The @code{caller} builtin displays the current call stack using this "
- "information."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5780
- #, no-wrap
- msgid "FUNCNEST"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5784
- msgid ""
- "If set to a numeric value greater than 0, defines a maximum function nesting "
- "level. Function invocations that exceed this nesting level will cause the "
- "current command to abort."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5785
- #, no-wrap
- msgid "GLOBIGNORE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5793
- msgid ""
- "A colon-separated list of patterns defining the set of filenames to be "
- "ignored by filename expansion. If a filename matched by a filename "
- "expansion pattern also matches one of the patterns in @env{GLOBIGNORE}, it "
- "is removed from the list of matches. The pattern matching honors the "
- "setting of the @code{extglob} shell option."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5794
- #, no-wrap
- msgid "GROUPS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5800
- msgid ""
- "An array variable containing the list of groups of which the current user is "
- "a member. Assignments to @env{GROUPS} have no effect. If @env{GROUPS} is "
- "unset, it loses its special properties, even if it is subsequently reset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5801
- #, no-wrap
- msgid "histchars"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5814
- msgid ""
- "Up to three characters which control history expansion, quick substitution, "
- "and tokenization (@pxref{History Interaction}). The first character is the "
- "@var{history expansion} character, that is, the character which signifies "
- "the start of a history expansion, normally @samp{!}. The second character "
- "is the character which signifies `quick substitution' when seen as the first "
- "character on a line, normally @samp{^}. The optional third character is the "
- "character which indicates that the remainder of the line is a comment when "
- "found as the first character of a word, usually @samp{#}. The history "
- "comment character causes history substitution to be skipped for the "
- "remaining words on the line. It does not necessarily cause the shell parser "
- "to treat the rest of the line as a comment."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5815
- #, no-wrap
- msgid "HISTCMD"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5819
- msgid ""
- "The history number, or index in the history list, of the current command. "
- "If @env{HISTCMD} is unset, it loses its special properties, even if it is "
- "subsequently reset."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5820
- #, no-wrap
- msgid "HISTCONTROL"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5839
- msgid ""
- "A colon-separated list of values controlling how commands are saved on the "
- "history list. If the list of values includes @samp{ignorespace}, lines "
- "which begin with a space character are not saved in the history list. A "
- "value of @samp{ignoredups} causes lines which match the previous history "
- "entry to not be saved. A value of @samp{ignoreboth} is shorthand for "
- "@samp{ignorespace} and @samp{ignoredups}. A value of @samp{erasedups} "
- "causes all previous lines matching the current line to be removed from the "
- "history list before that line is saved. Any value not in the above list is "
- "ignored. If @env{HISTCONTROL} is unset, or does not include a valid value, "
- "all lines read by the shell parser are saved on the history list, subject to "
- "the value of @env{HISTIGNORE}. The second and subsequent lines of a "
- "multi-line compound command are not tested, and are added to the history "
- "regardless of the value of @env{HISTCONTROL}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5840
- #, no-wrap
- msgid "HISTFILE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5843
- msgid ""
- "The name of the file to which the command history is saved. The default "
- "value is @file{~/.bash_history}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5844
- #, no-wrap
- msgid "HISTFILESIZE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5855
- msgid ""
- "The maximum number of lines contained in the history file. When this "
- "variable is assigned a value, the history file is truncated, if necessary, "
- "to contain no more than that number of lines by removing the oldest "
- "entries. The history file is also truncated to this size after writing it "
- "when a shell exits. If the value is 0, the history file is truncated to "
- "zero size. Non-numeric values and numeric values less than zero inhibit "
- "truncation. The shell sets the default value to the value of @env{HISTSIZE} "
- "after reading any startup files."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5856
- #, no-wrap
- msgid "HISTIGNORE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5871
- msgid ""
- "A colon-separated list of patterns used to decide which command lines should "
- "be saved on the history list. Each pattern is anchored at the beginning of "
- "the line and must match the complete line (no implicit @samp{*} is "
- "appended). Each pattern is tested against the line after the checks "
- "specified by @env{HISTCONTROL} are applied. In addition to the normal shell "
- "pattern matching characters, @samp{&} matches the previous history line. "
- "@samp{&} may be escaped using a backslash; the backslash is removed before "
- "attempting a match. The second and subsequent lines of a multi-line "
- "compound command are not tested, and are added to the history regardless of "
- "the value of @env{HISTIGNORE}. The pattern matching honors the setting of "
- "the @code{extglob} shell option."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5877
- msgid ""
- "@env{HISTIGNORE} subsumes the function of @env{HISTCONTROL}. A pattern of "
- "@samp{&} is identical to @code{ignoredups}, and a pattern of @samp{[ ]*} is "
- "identical to @code{ignorespace}. Combining these two patterns, separating "
- "them with a colon, provides the functionality of @code{ignoreboth}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5878
- #, no-wrap
- msgid "HISTSIZE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5884
- msgid ""
- "The maximum number of commands to remember on the history list. If the "
- "value is 0, commands are not saved in the history list. Numeric values less "
- "than zero result in every command being saved on the history list (there is "
- "no limit). The shell sets the default value to 500 after reading any "
- "startup files."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5885
- #, no-wrap
- msgid "HISTTIMEFORMAT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5893
- msgid ""
- "If this variable is set and not null, its value is used as a format string "
- "for @var{strftime} to print the time stamp associated with each history "
- "entry displayed by the @code{history} builtin. If this variable is set, "
- "time stamps are written to the history file so they may be preserved across "
- "shell sessions. This uses the history comment character to distinguish "
- "timestamps from other history lines."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5894
- #, no-wrap
- msgid "HOSTFILE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5906
- msgid ""
- "Contains the name of a file in the same format as @file{/etc/hosts} that "
- "should be read when the shell needs to complete a hostname. The list of "
- "possible hostname completions may be changed while the shell is running; the "
- "next time hostname completion is attempted after the value is changed, Bash "
- "adds the contents of the new file to the existing list. If @env{HOSTFILE} "
- "is set, but has no value, or does not name a readable file, Bash attempts to "
- "read @file{/etc/hosts} to obtain the list of possible hostname completions. "
- "When @env{HOSTFILE} is unset, the hostname list is cleared."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5907
- #, no-wrap
- msgid "HOSTNAME"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5909
- msgid "The name of the current host."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5910
- #, no-wrap
- msgid "HOSTTYPE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5912
- msgid "A string describing the machine Bash is running on."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5913
- #, no-wrap
- msgid "IGNOREEOF"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5922
- msgid ""
- "Controls the action of the shell on receipt of an @code{EOF} character as "
- "the sole input. If set, the value denotes the number of consecutive "
- "@code{EOF} characters that can be read as the first character on an input "
- "line before the shell will exit. If the variable exists but does not have a "
- "numeric value (or has no value) then the default is 10. If the variable "
- "does not exist, then @code{EOF} signifies the end of input to the shell. "
- "This is only in effect for interactive shells."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5923
- #, no-wrap
- msgid "INPUTRC"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5926
- msgid ""
- "The name of the Readline initialization file, overriding the default of "
- "@file{~/.inputrc}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5927
- #, no-wrap
- msgid "LANG"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5930
- msgid ""
- "Used to determine the locale category for any category not specifically "
- "selected with a variable starting with @code{LC_}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5931
- #, no-wrap
- msgid "LC_ALL"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5934
- msgid ""
- "This variable overrides the value of @env{LANG} and any other @code{LC_} "
- "variable specifying a locale category."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5935
- #, no-wrap
- msgid "LC_COLLATE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5941
- msgid ""
- "This variable determines the collation order used when sorting the results "
- "of filename expansion, and determines the behavior of range expressions, "
- "equivalence classes, and collating sequences within filename expansion and "
- "pattern matching (@pxref{Filename Expansion})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5942
- #, no-wrap
- msgid "LC_CTYPE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5946
- msgid ""
- "This variable determines the interpretation of characters and the behavior "
- "of character classes within filename expansion and pattern matching "
- "(@pxref{Filename Expansion})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5950
- msgid ""
- "This variable determines the locale used to translate double-quoted strings "
- "preceded by a @samp{$} (@pxref{Locale Translation})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5951
- #, no-wrap
- msgid "LC_NUMERIC"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5953
- msgid "This variable determines the locale category used for number formatting."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5954
- #, no-wrap
- msgid "LC_TIME"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5957
- msgid ""
- "This variable determines the locale category used for data and time "
- "formatting."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5958
- #, no-wrap
- msgid "LINENO"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5960
- msgid "The line number in the script or shell function currently executing."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5961
- #, no-wrap
- msgid "LINES"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5967
- msgid ""
- "Used by the @code{select} command to determine the column length for "
- "printing selection lists. Automatically set if the @code{checkwinsize} "
- "option is enabled (@pxref{The Shopt Builtin}), or in an interactive shell "
- "upon receipt of a @code{SIGWINCH}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5968
- #, no-wrap
- msgid "MACHTYPE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5971
- msgid ""
- "A string that fully describes the system type on which Bash is executing, in "
- "the standard @sc{gnu} @var{cpu-company-system} format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5972
- #, no-wrap
- msgid "MAILCHECK"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5979
- msgid ""
- "How often (in seconds) that the shell should check for mail in the files "
- "specified in the @env{MAILPATH} or @env{MAIL} variables. The default is 60 "
- "seconds. When it is time to check for mail, the shell does so before "
- "displaying the primary prompt. If this variable is unset, or set to a value "
- "that is not a number greater than or equal to zero, the shell disables mail "
- "checking."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5980
- #, no-wrap
- msgid "MAPFILE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5983
- msgid ""
- "An array variable created to hold the text read by the @code{mapfile} "
- "builtin when no variable name is supplied."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5984
- #, no-wrap
- msgid "OLDPWD"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5986
- msgid "The previous working directory as set by the @code{cd} builtin."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5987
- #, no-wrap
- msgid "OPTERR"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5990
- msgid ""
- "If set to the value 1, Bash displays error messages generated by the "
- "@code{getopts} builtin command."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5991
- #, no-wrap
- msgid "OSTYPE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5993
- msgid "A string describing the operating system Bash is running on."
- msgstr ""
- #. type: item
- #: ./bashref.texi:5994
- #, no-wrap
- msgid "PIPESTATUS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:5999
- msgid ""
- "An array variable (@pxref{Arrays}) containing a list of exit status values "
- "from the processes in the most-recently-executed foreground pipeline (which "
- "may contain only a single command)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6000
- #, no-wrap
- msgid "POSIXLY_CORRECT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6006
- msgid ""
- "If this variable is in the environment when Bash starts, the shell enters "
- "@sc{posix} mode (@pxref{Bash POSIX Mode}) before reading the startup files, "
- "as if the @option{--posix} invocation option had been supplied. If it is "
- "set while the shell is running, Bash enables @sc{posix} mode, as if the "
- "command"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6008
- #, no-wrap
- msgid "@code{set -o posix}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6011
- msgid "had been executed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6012
- #, no-wrap
- msgid "PPID"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6015
- msgid ""
- "The process @sc{id} of the shell's parent process. This variable is "
- "readonly."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6016
- #, no-wrap
- msgid "PROMPT_COMMAND"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6019
- msgid ""
- "If set, the value is interpreted as a command to execute before the printing "
- "of each primary prompt (@env{$PS1})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6020
- #, no-wrap
- msgid "PROMPT_DIRTRIM"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6025
- msgid ""
- "If set to a number greater than zero, the value is used as the number of "
- "trailing directory components to retain when expanding the @code{\\w} and "
- "@code{\\W} prompt string escapes (@pxref{Controlling the Prompt}). "
- "Characters removed are replaced with an ellipsis."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6026
- #, no-wrap
- msgid "PS0"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6030
- msgid ""
- "The value of this parameter is expanded like @var{PS1} and displayed by "
- "interactive shells after reading a command and before the command is "
- "executed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6031
- #, no-wrap
- msgid "PS3"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6035
- msgid ""
- "The value of this variable is used as the prompt for the @code{select} "
- "command. If this variable is not set, the @code{select} command prompts "
- "with @samp{#? }"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6036
- #, no-wrap
- msgid "PS4"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6042
- msgid ""
- "The value is the prompt printed before the command line is echoed when the "
- "@option{-x} option is set (@pxref{The Set Builtin}). The first character of "
- "@env{PS4} is replicated multiple times, as necessary, to indicate multiple "
- "levels of indirection. The default is @samp{+ }."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6043
- #, no-wrap
- msgid "PWD"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6045
- msgid "The current working directory as set by the @code{cd} builtin."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6046
- #, no-wrap
- msgid "RANDOM"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6050
- msgid ""
- "Each time this parameter is referenced, a random integer between 0 and 32767 "
- "is generated. Assigning a value to this variable seeds the random number "
- "generator."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6051
- #, no-wrap
- msgid "READLINE_LINE"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6054
- msgid ""
- "The contents of the Readline line buffer, for use with @samp{bind -x} "
- "(@pxref{Bash Builtins})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6055
- #, no-wrap
- msgid "READLINE_POINT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6058
- msgid ""
- "The position of the insertion point in the Readline line buffer, for use "
- "with @samp{bind -x} (@pxref{Bash Builtins})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6059
- #, no-wrap
- msgid "REPLY"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6061
- msgid "The default variable for the @code{read} builtin."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6062
- #, no-wrap
- msgid "SECONDS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6068
- msgid ""
- "This variable expands to the number of seconds since the shell was started. "
- "Assignment to this variable resets the count to the value assigned, and the "
- "expanded value becomes the value assigned plus the number of seconds since "
- "the assignment."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6069
- #, no-wrap
- msgid "SHELL"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6073
- msgid ""
- "The full pathname to the shell is kept in this environment variable. If it "
- "is not set when the shell starts, Bash assigns to it the full pathname of "
- "the current user's login shell."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6074
- #, no-wrap
- msgid "SHELLOPTS"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6083
- msgid ""
- "A colon-separated list of enabled shell options. Each word in the list is a "
- "valid argument for the @option{-o} option to the @code{set} builtin command "
- "(@pxref{The Set Builtin}). The options appearing in @env{SHELLOPTS} are "
- "those reported as @samp{on} by @samp{set -o}. If this variable is in the "
- "environment when Bash starts up, each shell option in the list will be "
- "enabled before reading any startup files. This variable is readonly."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6084
- #, no-wrap
- msgid "SHLVL"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6087
- msgid ""
- "Incremented by one each time a new instance of Bash is started. This is "
- "intended to be a count of how deeply your Bash shells are nested."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6088
- #, no-wrap
- msgid "TIMEFORMAT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6097
- msgid ""
- "The value of this parameter is used as a format string specifying how the "
- "timing information for pipelines prefixed with the @code{time} reserved word "
- "should be displayed. The @samp{%} character introduces an escape sequence "
- "that is expanded to a time value or other information. The escape sequences "
- "and their meanings are as follows; the braces denote optional portions."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6100
- #, no-wrap
- msgid "%%"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6102
- msgid "A literal @samp{%}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6103
- #, no-wrap
- msgid "%[@var{p}][l]R"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6105
- msgid "The elapsed time in seconds."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6106
- #, no-wrap
- msgid "%[@var{p}][l]U"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6108
- msgid "The number of CPU seconds spent in user mode."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6109
- #, no-wrap
- msgid "%[@var{p}][l]S"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6111
- msgid "The number of CPU seconds spent in system mode."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6112
- #, no-wrap
- msgid "%P"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6114
- msgid "The CPU percentage, computed as (%U + %S) / %R."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6122
- msgid ""
- "The optional @var{p} is a digit specifying the precision, the number of "
- "fractional digits after a decimal point. A value of 0 causes no decimal "
- "point or fraction to be output. At most three places after the decimal "
- "point may be specified; values of @var{p} greater than 3 are changed to 3. "
- "If @var{p} is not specified, the value 3 is used."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6126
- msgid ""
- "The optional @code{l} specifies a longer format, including minutes, of the "
- "form @var{MM}m@var{SS}.@var{FF}s. The value of @var{p} determines whether "
- "or not the fraction is included."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6128
- msgid "If this variable is not set, Bash acts as if it had the value"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6130
- #, no-wrap
- msgid "@code{$'\\nreal\\t%3lR\\nuser\\t%3lU\\nsys\\t%3lS'}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6133
- msgid ""
- "If the value is null, no timing information is displayed. A trailing "
- "newline is added when the format string is displayed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6134
- #, no-wrap
- msgid "TMOUT"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6140
- msgid ""
- "If set to a value greater than zero, @code{TMOUT} is treated as the default "
- "timeout for the @code{read} builtin (@pxref{Bash Builtins}). The "
- "@code{select} command (@pxref{Conditional Constructs}) terminates if input "
- "does not arrive after @code{TMOUT} seconds when input is coming from a "
- "terminal."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6147
- msgid ""
- "In an interactive shell, the value is interpreted as the number of seconds "
- "to wait for a line of input after issuing the primary prompt. Bash "
- "terminates after waiting for that number of seconds if a complete line of "
- "input does not arrive."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6148
- #, no-wrap
- msgid "TMPDIR"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6151
- msgid ""
- "If set, Bash uses its value as the name of a directory in which Bash creates "
- "temporary files for the shell's use."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6152
- #, no-wrap
- msgid "UID"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6154
- msgid "The numeric real user id of the current user. This variable is readonly."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6161
- msgid "This chapter describes features unique to Bash."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6179 ./bashref.texi:6180
- #, no-wrap
- msgid "Invoking Bash"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Command line options that you can give to Bash."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6338 ./bashref.texi:6339
- #, no-wrap
- msgid "Bash Startup Files"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "When and how Bash executes scripts."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6456 ./bashref.texi:6457
- #, no-wrap
- msgid "Interactive Shells"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "What an interactive shell is."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6614 ./bashref.texi:6615
- #, no-wrap
- msgid "Bash Conditional Expressions"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Primitives used in composing expressions for the @code{test} builtin."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6763 ./bashref.texi:6764
- #, no-wrap
- msgid "Shell Arithmetic"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Arithmetic on shell variables."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6870 ./bashref.texi:6871
- #, no-wrap
- msgid "Aliases"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Substituting one command for another."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:6930 ./bashref.texi:6931
- #, no-wrap
- msgid "Arrays"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Array Variables."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:7067 ./bashref.texi:7068
- #, no-wrap
- msgid "The Directory Stack"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "History of visited directories."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:7179 ./bashref.texi:7180
- #, no-wrap
- msgid "Controlling the Prompt"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Customizing the various prompt strings."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:7265 ./bashref.texi:7266
- #, no-wrap
- msgid "The Restricted Shell"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "A more controlled mode of shell execution."
- msgstr ""
- #. type: section
- #: ./bashref.texi:6177 ./bashref.texi:7319 ./bashref.texi:7320
- #, no-wrap
- msgid "Bash POSIX Mode"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6177
- msgid "Making Bash behave more closely to what the POSIX standard specifies."
- msgstr ""
- #. type: example
- #: ./bashref.texi:6186
- #, no-wrap
- msgid ""
- "bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o @var{option}] [-O "
- "@var{shopt_option}] [@var{argument} @dots{}]\n"
- "bash [long-opt] [-abefhkmnptuvxdBCDHP] [-o @var{option}] [-O "
- "@var{shopt_option}] -c @var{string} [@var{argument} @dots{}]\n"
- "bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o @var{option}] [-O "
- "@var{shopt_option}] [@var{argument} @dots{}]\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6193
- msgid ""
- "All of the single-character options used with the @code{set} builtin "
- "(@pxref{The Set Builtin}) can be used as options when the shell is invoked. "
- "In addition, there are several multi-character options that you can use. "
- "These options must appear on the command line before the single-character "
- "options to be recognized."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6195
- #, no-wrap
- msgid "--debugger"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6200
- msgid ""
- "Arrange for the debugger profile to be executed before the shell starts. "
- "Turns on extended debugging mode (see @ref{The Shopt Builtin} for a "
- "description of the @code{extdebug} option to the @code{shopt} builtin)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6201
- #, no-wrap
- msgid "--dump-po-strings"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6206
- msgid ""
- "A list of all double-quoted strings preceded by @samp{$} is printed on the "
- "standard output in the @sc{gnu} @code{gettext} PO (portable object) file "
- "format. Equivalent to @option{-D} except for the output format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6207
- #, no-wrap
- msgid "--dump-strings"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6209
- msgid "Equivalent to @option{-D}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6210 ./bashref.texi:8140
- #, no-wrap
- msgid "--help"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6212
- msgid "Display a usage message on standard output and exit successfully."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6213
- #, no-wrap
- msgid "--init-file @var{filename}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:6214
- #, no-wrap
- msgid "--rcfile @var{filename}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6217
- msgid ""
- "Execute commands from @var{filename} (instead of @file{~/.bashrc}) in an "
- "interactive shell."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6218
- #, no-wrap
- msgid "--login"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6220
- msgid "Equivalent to @option{-l}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6221
- #, no-wrap
- msgid "--noediting"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6224
- msgid ""
- "Do not use the @sc{gnu} Readline library (@pxref{Command Line Editing}) to "
- "read command lines when the shell is interactive."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6225
- #, no-wrap
- msgid "--noprofile"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6230
- msgid ""
- "Don't load the system-wide startup file @file{/etc/profile} or any of the "
- "personal initialization files @file{~/.bash_profile}, @file{~/.bash_login}, "
- "or @file{~/.profile} when Bash is invoked as a login shell."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6231
- #, no-wrap
- msgid "--norc"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6235
- msgid ""
- "Don't read the @file{~/.bashrc} initialization file in an interactive "
- "shell. This is on by default if the shell is invoked as @code{sh}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6236
- #, no-wrap
- msgid "--posix"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6242
- msgid ""
- "Change the behavior of Bash where the default operation differs from the "
- "@sc{posix} standard to match the standard. This is intended to make Bash "
- "behave as a strict superset of that standard. @xref{Bash POSIX Mode}, for a "
- "description of the Bash @sc{posix} mode."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6243
- #, no-wrap
- msgid "--restricted"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6245 ./bashref.texi:6284
- msgid "Make the shell a restricted shell (@pxref{The Restricted Shell})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6246
- #, no-wrap
- msgid "--verbose"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6248
- msgid "Equivalent to @option{-v}. Print shell input lines as they're read."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6249 ./bashref.texi:8152
- #, no-wrap
- msgid "--version"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6252
- msgid ""
- "Show version information for this instance of Bash on the standard output "
- "and exit successfully."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6256
- msgid ""
- "There are several single-character options that may be supplied at "
- "invocation which are not available with the @code{set} builtin."
- msgstr ""
- #. type: table
- #: ./bashref.texi:6266
- msgid ""
- "Read and execute commands from the first non-option argument "
- "@var{command_string}, then exit. If there are arguments after the "
- "@var{command_string}, the first argument is assigned to @code{$0} and any "
- "remaining arguments are assigned to the positional parameters. The "
- "assignment to @code{$0} sets the name of the shell, which is used in warning "
- "and error messages."
- msgstr ""
- #. type: table
- #: ./bashref.texi:6270
- msgid ""
- "Force the shell to run interactively. Interactive shells are described in "
- "@ref{Interactive Shells}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:6281
- msgid ""
- "Make this shell act as if it had been directly invoked by login. When the "
- "shell is interactive, this is equivalent to starting a login shell with "
- "@samp{exec -l bash}. When the shell is not interactive, the login shell "
- "startup files will be executed. @samp{exec bash -l} or @samp{exec bash "
- "--login} will replace the current shell with a Bash login shell. @xref{Bash "
- "Startup Files}, for a description of the special behavior of a login shell."
- msgstr ""
- #. type: table
- #: ./bashref.texi:6290
- msgid ""
- "If this option is present, or if no arguments remain after option "
- "processing, then commands are read from the standard input. This option "
- "allows the positional parameters to be set when invoking an interactive "
- "shell."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6291
- #, no-wrap
- msgid "-D"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6298
- msgid ""
- "A list of all double-quoted strings preceded by @samp{$} is printed on the "
- "standard output. These are the strings that are subject to language "
- "translation when the current locale is not @code{C} or @code{POSIX} "
- "(@pxref{Locale Translation}). This implies the @option{-n} option; no "
- "commands will be executed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6299
- #, no-wrap
- msgid "[-+]O [@var{shopt_option}]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6308
- msgid ""
- "@var{shopt_option} is one of the shell options accepted by the @code{shopt} "
- "builtin (@pxref{The Shopt Builtin}). If @var{shopt_option} is present, "
- "@option{-O} sets the value of that option; @option{+O} unsets it. If "
- "@var{shopt_option} is not supplied, the names and values of the shell "
- "options accepted by @code{shopt} are printed on the standard output. If the "
- "invocation option is @option{+O}, the output is displayed in a format that "
- "may be reused as input."
- msgstr ""
- #. type: table
- #: ./bashref.texi:6313
- msgid ""
- "A @code{--} signals the end of options and disables further option "
- "processing. Any arguments after the @code{--} are treated as filenames and "
- "arguments."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6315
- #, no-wrap
- msgid "login shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6318
- msgid ""
- "A @emph{login} shell is one whose first character of argument zero is "
- "@samp{-}, or one invoked with the @option{--login} option."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6319 ./bashref.texi:6458
- #, no-wrap
- msgid "interactive shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6326
- msgid ""
- "An @emph{interactive} shell is one started without non-option arguments, "
- "unless @option{-s} is specified, without specifying the @option{-c} option, "
- "and whose input and output are both connected to terminals (as determined by "
- "@code{isatty(3)}), or one started with the @option{-i} option. "
- "@xref{Interactive Shells}, for more information."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6337
- msgid ""
- "If arguments remain after option processing, and neither the @option{-c} nor "
- "the @option{-s} option has been supplied, the first argument is assumed to "
- "be the name of a file containing shell commands (@pxref{Shell Scripts}). "
- "When Bash is invoked in this fashion, @code{$0} is set to the name of the "
- "file, and the positional parameters are set to the remaining arguments. "
- "Bash reads and executes commands from this file, then exits. Bash's exit "
- "status is the exit status of the last command executed in the script. If no "
- "commands are executed, the exit status is 0."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6340
- #, no-wrap
- msgid "startup files"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6346
- msgid ""
- "This section describes how Bash executes its startup files. If any of the "
- "files exist but cannot be read, Bash reports an error. Tildes are expanded "
- "in filenames as described above under Tilde Expansion (@pxref{Tilde "
- "Expansion})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6348
- msgid "Interactive shells are described in @ref{Interactive Shells}."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6349
- #, no-wrap
- msgid "Invoked as an interactive login shell, or with @option{--login}"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6359
- msgid ""
- "When Bash is invoked as an interactive login shell, or as a non-interactive "
- "shell with the @option{--login} option, it first reads and executes commands "
- "from the file @file{/etc/profile}, if that file exists. After reading that "
- "file, it looks for @file{~/.bash_profile}, @file{~/.bash_login}, and "
- "@file{~/.profile}, in that order, and reads and executes commands from the "
- "first one that exists and is readable. The @option{--noprofile} option may "
- "be used when the shell is started to inhibit this behavior."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6364
- msgid ""
- "When an interactive login shell exits, or a non-interactive login shell "
- "executes the @code{exit} builtin command, Bash reads and executes commands "
- "from the file @file{~/.bash_logout}, if it exists."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6365
- #, no-wrap
- msgid "Invoked as an interactive non-login shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6372
- msgid ""
- "When an interactive shell that is not a login shell is started, Bash reads "
- "and executes commands from @file{~/.bashrc}, if that file exists. This may "
- "be inhibited by using the @option{--norc} option. The @option{--rcfile "
- "@var{file}} option will force Bash to read and execute commands from "
- "@var{file} instead of @file{~/.bashrc}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6374
- msgid "So, typically, your @file{~/.bash_profile} contains the line"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6376
- #, no-wrap
- msgid "@code{if [ -f ~/.bashrc ]; then . ~/.bashrc; fi}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6379
- msgid "after (or before) any login-specific initializations."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6380
- #, no-wrap
- msgid "Invoked non-interactively"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6387
- msgid ""
- "When Bash is started non-interactively, to run a shell script, for example, "
- "it looks for the variable @env{BASH_ENV} in the environment, expands its "
- "value if it appears there, and uses the expanded value as the name of a file "
- "to read and execute. Bash behaves as if the following command were "
- "executed:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6389
- #, no-wrap
- msgid "@code{if [ -n \"$BASH_ENV\" ]; then . \"$BASH_ENV\"; fi}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6393
- msgid ""
- "but the value of the @env{PATH} variable is not used to search for the "
- "filename."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6397
- msgid ""
- "As noted above, if a non-interactive shell is invoked with the "
- "@option{--login} option, Bash attempts to read and execute commands from the "
- "login shell startup files."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6398
- #, no-wrap
- msgid "Invoked with name @code{sh}"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6403
- msgid ""
- "If Bash is invoked with the name @code{sh}, it tries to mimic the startup "
- "behavior of historical versions of @code{sh} as closely as possible, while "
- "conforming to the @sc{posix} standard as well."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6417
- msgid ""
- "When invoked as an interactive login shell, or as a non-interactive shell "
- "with the @option{--login} option, it first attempts to read and execute "
- "commands from @file{/etc/profile} and @file{~/.profile}, in that order. The "
- "@option{--noprofile} option may be used to inhibit this behavior. When "
- "invoked as an interactive shell with the name @code{sh}, Bash looks for the "
- "variable @env{ENV}, expands its value if it is defined, and uses the "
- "expanded value as the name of a file to read and execute. Since a shell "
- "invoked as @code{sh} does not attempt to read and execute commands from any "
- "other startup files, the @option{--rcfile} option has no effect. A "
- "non-interactive shell invoked with the name @code{sh} does not attempt to "
- "read any other startup files."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6420
- msgid ""
- "When invoked as @code{sh}, Bash enters @sc{posix} mode after the startup "
- "files are read."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6421
- #, no-wrap
- msgid "Invoked in @sc{posix} mode"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6430
- msgid ""
- "When Bash is started in @sc{posix} mode, as with the @option{--posix} "
- "command line option, it follows the @sc{posix} standard for startup files. "
- "In this mode, interactive shells expand the @env{ENV} variable and commands "
- "are read and executed from the file whose name is the expanded value. No "
- "other startup files are read."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6431
- #, no-wrap
- msgid "Invoked by remote shell daemon"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6444
- msgid ""
- "Bash attempts to determine when it is being run with its standard input "
- "connected to a network connection, as when executed by the remote shell "
- "daemon, usually @code{rshd}, or the secure shell daemon @code{sshd}. If "
- "Bash determines it is being run in this fashion, it reads and executes "
- "commands from @file{~/.bashrc}, if that file exists and is readable. It "
- "will not do this if invoked as @code{sh}. The @option{--norc} option may be "
- "used to inhibit this behavior, and the @option{--rcfile} option may be used "
- "to force another file to be read, but neither @code{rshd} nor @code{sshd} "
- "generally invoke the shell with those options or allow them to be specified."
- msgstr ""
- #. type: subsubheading
- #: ./bashref.texi:6445
- #, no-wrap
- msgid "Invoked with unequal effective and real @sc{uid/gid}s"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6455
- msgid ""
- "If Bash is started with the effective user (group) id not equal to the real "
- "user (group) id, and the @option{-p} option is not supplied, no startup "
- "files are read, shell functions are not inherited from the environment, the "
- "@env{SHELLOPTS}, @env{BASHOPTS}, @env{CDPATH}, and @env{GLOBIGNORE} "
- "variables, if they appear in the environment, are ignored, and the effective "
- "user id is set to the real user id. If the @option{-p} option is supplied "
- "at invocation, the startup behavior is the same, but the effective user id "
- "is not reset."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6459
- #, no-wrap
- msgid "shell, interactive"
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:6465 ./bashref.texi:6467 ./bashref.texi:6468
- #, no-wrap
- msgid "What is an Interactive Shell?"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6465
- msgid "What determines whether a shell is Interactive."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:6465 ./bashref.texi:6483 ./bashref.texi:6484
- #, no-wrap
- msgid "Is this Shell Interactive?"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6465
- msgid "How to tell if a shell is interactive."
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:6465 ./bashref.texi:6510 ./bashref.texi:6511
- #, no-wrap
- msgid "Interactive Shell Behavior"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:6465
- msgid "What changes in a interactive shell?"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6476
- msgid ""
- "An interactive shell is one started without non-option arguments, unless "
- "@option{-s} is specified, without specifying the @option{-c} option, and "
- "whose input and error output are both connected to terminals (as determined "
- "by @code{isatty(3)}), or one started with the @option{-i} option."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6479
- msgid "An interactive shell generally reads from and writes to a user's terminal."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6482
- msgid ""
- "The @option{-s} invocation option may be used to set the positional "
- "parameters when an interactive shell is started."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6490
- msgid ""
- "To determine within a startup script whether or not Bash is running "
- "interactively, test the value of the @samp{-} special parameter. It "
- "contains @code{i} when the shell is interactive. For example:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6496
- #, no-wrap
- msgid ""
- "case \"$-\" in\n"
- "*i*)\techo This shell is interactive ;;\n"
- "*)\techo This shell is not interactive ;;\n"
- "esac\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6501
- msgid ""
- "Alternatively, startup scripts may examine the variable @env{PS1}; it is "
- "unset in non-interactive shells, and set in interactive shells. Thus:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6508
- #, no-wrap
- msgid ""
- "if [ -z \"$PS1\" ]; then\n"
- " echo This shell is not interactive\n"
- "else\n"
- " echo This shell is interactive\n"
- "fi\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6515
- msgid ""
- "When the shell is running interactively, it changes its behavior in several "
- "ways."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6519
- msgid ""
- "Startup files are read and executed as described in @ref{Bash Startup "
- "Files}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6524
- msgid ""
- "Job Control (@pxref{Job Control}) is enabled by default. When job control "
- "is in effect, Bash ignores the keyboard-generated job control signals "
- "@code{SIGTTIN}, @code{SIGTTOU}, and @code{SIGTSTP}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6530
- msgid ""
- "Bash expands and displays @env{PS1} before reading the first line of a "
- "command, and expands and displays @env{PS2} before reading the second and "
- "subsequent lines of a multi-line command. Bash displays @env{PS0} after it "
- "reads a command but before executing it."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6535
- msgid ""
- "Bash executes the value of the @env{PROMPT_COMMAND} variable as a command "
- "before printing the primary prompt, @env{$PS1} (@pxref{Bash Variables})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6539
- msgid ""
- "Readline (@pxref{Command Line Editing}) is used to read commands from the "
- "user's terminal."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6544
- msgid ""
- "Bash inspects the value of the @code{ignoreeof} option to @code{set -o} "
- "instead of exiting immediately when it receives an @code{EOF} on its "
- "standard input when reading a command (@pxref{The Set Builtin})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6551
- msgid ""
- "Command history (@pxref{Bash History Facilities}) and history expansion "
- "(@pxref{History Interaction}) are enabled by default. Bash will save the "
- "command history to the file named by @env{$HISTFILE} when a shell with "
- "history enabled exits."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6554
- msgid "Alias expansion (@pxref{Aliases}) is performed by default."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6558
- msgid "In the absence of any traps, Bash ignores @code{SIGTERM} (@pxref{Signals})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6563
- msgid ""
- "In the absence of any traps, @code{SIGINT} is caught and handled "
- "((@pxref{Signals}). @code{SIGINT} will interrupt some shell builtins."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6567
- msgid ""
- "An interactive login shell sends a @code{SIGHUP} to all jobs on exit if the "
- "@code{huponexit} shell option has been enabled (@pxref{Signals})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6571
- msgid ""
- "The @option{-n} invocation option is ignored, and @samp{set -n} has no "
- "effect (@pxref{The Set Builtin})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6576
- msgid ""
- "Bash will check for mail periodically, depending on the values of the "
- "@env{MAIL}, @env{MAILPATH}, and @env{MAILCHECK} shell variables (@pxref{Bash "
- "Variables})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6581
- msgid ""
- "Expansion errors due to references to unbound shell variables after "
- "@samp{set -u} has been enabled will not cause the shell to exit (@pxref{The "
- "Set Builtin})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6586
- msgid ""
- "The shell will not exit on expansion errors caused by @var{var} being unset "
- "or null in @code{$@{@var{var}:?@var{word}@}} expansions (@pxref{Shell "
- "Parameter Expansion})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6590
- msgid ""
- "Redirection errors encountered by shell builtins will not cause the shell to "
- "exit."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6594
- msgid ""
- "When running in @sc{posix} mode, a special builtin returning an error status "
- "will not cause the shell to exit (@pxref{Bash POSIX Mode})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6598
- msgid ""
- "A failed @code{exec} will not cause the shell to exit (@pxref{Bourne Shell "
- "Builtins})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6601
- msgid "Parser syntax errors will not cause the shell to exit."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6606
- msgid ""
- "Simple spelling correction for directory arguments to the @code{cd} builtin "
- "is enabled by default (see the description of the @code{cdspell} option to "
- "the @code{shopt} builtin in @ref{The Shopt Builtin})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:6611
- msgid ""
- "The shell will check the value of the @env{TMOUT} variable and exit if a "
- "command is not read within the specified number of seconds after printing "
- "@env{$PS1} (@pxref{Bash Variables})."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6616
- #, no-wrap
- msgid "expressions, conditional"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6620
- msgid ""
- "Conditional expressions are used by the @code{[[} compound command and the "
- "@code{test} and @code{[} builtin commands."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6634
- msgid ""
- "Expressions may be unary or binary. Unary expressions are often used to "
- "examine the status of a file. There are string operators and numeric "
- "comparison operators as well. Bash handles several filenames specially when "
- "they are used in expressions. If the operating system on which Bash is "
- "running provides these special files, Bash will use them; otherwise it will "
- "emulate them internally with this behavior: If the @var{file} argument to "
- "one of the primaries is of the form @file{/dev/fd/@var{N}}, then file "
- "descriptor @var{N} is checked. If the @var{file} argument to one of the "
- "primaries is one of @file{/dev/stdin}, @file{/dev/stdout}, or "
- "@file{/dev/stderr}, file descriptor 0, 1, or 2, respectively, is checked."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6638
- msgid ""
- "When used with @code{[[}, the @samp{<} and @samp{>} operators sort "
- "lexicographically using the current locale. The @code{test} command uses "
- "ASCII ordering."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6641
- msgid ""
- "Unless otherwise specified, primaries that operate on files follow symbolic "
- "links and operate on the target of the link, rather than the link itself."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6643
- #, no-wrap
- msgid "-a @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6645 ./bashref.texi:6657
- msgid "True if @var{file} exists."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6646
- #, no-wrap
- msgid "-b @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6648
- msgid "True if @var{file} exists and is a block special file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6649
- #, no-wrap
- msgid "-c @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6651
- msgid "True if @var{file} exists and is a character special file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6652
- #, no-wrap
- msgid "-d @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6654
- msgid "True if @var{file} exists and is a directory."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6655
- #, no-wrap
- msgid "-e @var{file}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6658
- #, no-wrap
- msgid "-f @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6660
- msgid "True if @var{file} exists and is a regular file."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6661
- #, no-wrap
- msgid "-g @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6663
- msgid "True if @var{file} exists and its set-group-id bit is set."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6664
- #, no-wrap
- msgid "-h @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6666 ./bashref.texi:6696
- msgid "True if @var{file} exists and is a symbolic link."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6667
- #, no-wrap
- msgid "-k @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6669
- msgid "True if @var{file} exists and its \"sticky\" bit is set."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6670
- #, no-wrap
- msgid "-p @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6672
- msgid "True if @var{file} exists and is a named pipe (FIFO)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6673
- #, no-wrap
- msgid "-r @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6675
- msgid "True if @var{file} exists and is readable."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6676
- #, no-wrap
- msgid "-s @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6678
- msgid "True if @var{file} exists and has a size greater than zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6679
- #, no-wrap
- msgid "-t @var{fd}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6681
- msgid "True if file descriptor @var{fd} is open and refers to a terminal."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6682
- #, no-wrap
- msgid "-u @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6684
- msgid "True if @var{file} exists and its set-user-id bit is set."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6685
- #, no-wrap
- msgid "-w @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6687
- msgid "True if @var{file} exists and is writable."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6688
- #, no-wrap
- msgid "-x @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6690
- msgid "True if @var{file} exists and is executable."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6691
- #, no-wrap
- msgid "-G @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6693
- msgid "True if @var{file} exists and is owned by the effective group id."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6694
- #, no-wrap
- msgid "-L @var{file}"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6697
- #, no-wrap
- msgid "-N @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6699
- msgid "True if @var{file} exists and has been modified since it was last read."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6700
- #, no-wrap
- msgid "-O @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6702
- msgid "True if @var{file} exists and is owned by the effective user id."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6703
- #, no-wrap
- msgid "-S @var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6705
- msgid "True if @var{file} exists and is a socket."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6706
- #, no-wrap
- msgid "@var{file1} -ef @var{file2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6709
- msgid ""
- "True if @var{file1} and @var{file2} refer to the same device and inode "
- "numbers."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6710
- #, no-wrap
- msgid "@var{file1} -nt @var{file2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6713
- msgid ""
- "True if @var{file1} is newer (according to modification date) than "
- "@var{file2}, or if @var{file1} exists and @var{file2} does not."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6714
- #, no-wrap
- msgid "@var{file1} -ot @var{file2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6717
- msgid ""
- "True if @var{file1} is older than @var{file2}, or if @var{file2} exists and "
- "@var{file1} does not."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6718
- #, no-wrap
- msgid "-o @var{optname}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6722
- msgid ""
- "True if the shell option @var{optname} is enabled. The list of options "
- "appears in the description of the @option{-o} option to the @code{set} "
- "builtin (@pxref{The Set Builtin})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6723
- #, no-wrap
- msgid "-v @var{varname}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6725
- msgid "True if the shell variable @var{varname} is set (has been assigned a value)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6726
- #, no-wrap
- msgid "-R @var{varname}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6728
- msgid "True if the shell variable @var{varname} is set and is a name reference."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6729
- #, no-wrap
- msgid "-z @var{string}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6731
- msgid "True if the length of @var{string} is zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6732
- #, no-wrap
- msgid "-n @var{string}"
- msgstr ""
- #. type: var{#1}
- #: ./bashref.texi:6733
- #, no-wrap
- msgid "string"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6735
- msgid "True if the length of @var{string} is non-zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6736
- #, no-wrap
- msgid "@var{string1} == @var{string2}"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:6737
- #, no-wrap
- msgid "@var{string1} = @var{string2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6741
- msgid ""
- "True if the strings are equal. When used with the @code{[[} command, this "
- "performs pattern matching as described above (@pxref{Conditional "
- "Constructs})."
- msgstr ""
- #. type: table
- #: ./bashref.texi:6743
- msgid ""
- "@samp{=} should be used with the @code{test} command for @sc{posix} "
- "conformance."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6744
- #, no-wrap
- msgid "@var{string1} != @var{string2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6746
- msgid "True if the strings are not equal."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6747
- #, no-wrap
- msgid "@var{string1} < @var{string2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6749
- msgid "True if @var{string1} sorts before @var{string2} lexicographically."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6750
- #, no-wrap
- msgid "@var{string1} > @var{string2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6752
- msgid "True if @var{string1} sorts after @var{string2} lexicographically."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6753
- #, no-wrap
- msgid "@var{arg1} OP @var{arg2}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6761
- msgid ""
- "@code{OP} is one of @samp{-eq}, @samp{-ne}, @samp{-lt}, @samp{-le}, "
- "@samp{-gt}, or @samp{-ge}. These arithmetic binary operators return true if "
- "@var{arg1} is equal to, not equal to, less than, less than or equal to, "
- "greater than, or greater than or equal to @var{arg2}, respectively. "
- "@var{Arg1} and @var{arg2} may be positive or negative integers."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6765
- #, no-wrap
- msgid "arithmetic, shell"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6766
- #, no-wrap
- msgid "shell arithmetic"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6767
- #, no-wrap
- msgid "expressions, arithmetic"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6768
- #, no-wrap
- msgid "evaluation, arithmetic"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6769
- #, no-wrap
- msgid "arithmetic evaluation"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6774
- msgid ""
- "The shell allows arithmetic expressions to be evaluated, as one of the shell "
- "expansions or by using the @code{((} compound command, the @code{let} "
- "builtin, or the @option{-i} option to the @code{declare} builtin."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6782
- msgid ""
- "Evaluation is done in fixed-width integers with no check for overflow, "
- "though division by 0 is trapped and flagged as an error. The operators and "
- "their precedence, associativity, and values are the same as in the C "
- "language. The following list of operators is grouped into levels of "
- "equal-precedence operators. The levels are listed in order of decreasing "
- "precedence."
- msgstr ""
- #. type: item
- #: ./bashref.texi:6785
- #, no-wrap
- msgid "@var{id}++ @var{id}--"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6787
- msgid "variable post-increment and post-decrement"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6788
- #, no-wrap
- msgid "++@var{id} --@var{id}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6790
- msgid "variable pre-increment and pre-decrement"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6791
- #, no-wrap
- msgid "- +"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6793
- msgid "unary minus and plus"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6794
- #, no-wrap
- msgid "! ~"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6796
- msgid "logical and bitwise negation"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6797
- #, no-wrap
- msgid "**"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6799
- msgid "exponentiation"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6800
- #, no-wrap
- msgid "* / %"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6802
- msgid "multiplication, division, remainder"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6803
- #, no-wrap
- msgid "+ -"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6805
- msgid "addition, subtraction"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6806
- #, no-wrap
- msgid "<< >>"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6808
- msgid "left and right bitwise shifts"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6809
- #, no-wrap
- msgid "<= >= < >"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6811
- msgid "comparison"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6812
- #, no-wrap
- msgid "== !="
- msgstr ""
- #. type: table
- #: ./bashref.texi:6814
- msgid "equality and inequality"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6815
- #, no-wrap
- msgid "&"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6817
- msgid "bitwise AND"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6818
- #, no-wrap
- msgid "^"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6820
- msgid "bitwise exclusive OR"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6821
- #, no-wrap
- msgid "|"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6823
- msgid "bitwise OR"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6824
- #, no-wrap
- msgid "&&"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6826
- msgid "logical AND"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6827
- #, no-wrap
- msgid "||"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6829
- msgid "logical OR"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6830
- #, no-wrap
- msgid "expr ? expr : expr"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6832
- msgid "conditional operator"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6833
- #, no-wrap
- msgid "= *= /= %= += -= <<= >>= &= ^= |="
- msgstr ""
- #. type: table
- #: ./bashref.texi:6835
- msgid "assignment"
- msgstr ""
- #. type: item
- #: ./bashref.texi:6836
- #, no-wrap
- msgid "expr1 , expr2"
- msgstr ""
- #. type: table
- #: ./bashref.texi:6838
- msgid "comma"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6852
- msgid ""
- "Shell variables are allowed as operands; parameter expansion is performed "
- "before the expression is evaluated. Within an expression, shell variables "
- "may also be referenced by name without using the parameter expansion "
- "syntax. A shell variable that is null or unset evaluates to 0 when "
- "referenced by name without using the parameter expansion syntax. The value "
- "of a variable is evaluated as an arithmetic expression when it is "
- "referenced, or when a variable which has been given the @var{integer} "
- "attribute using @samp{declare -i} is assigned a value. A null value "
- "evaluates to 0. A shell variable need not have its @var{integer} attribute "
- "turned on to be used in an expression."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6865
- msgid ""
- "Constants with a leading 0 are interpreted as octal numbers. A leading "
- "@samp{0x} or @samp{0X} denotes hexadecimal. Otherwise, numbers take the "
- "form [@var{base}@code{#}]@var{n}, where the optional @var{base} is a decimal "
- "number between 2 and 64 representing the arithmetic base, and @var{n} is a "
- "number in that base. If @var{base}@code{#} is omitted, then base 10 is "
- "used. When specifying @var{n}, the digits greater than 9 are represented by "
- "the lowercase letters, the uppercase letters, @samp{@@}, and @samp{_}, in "
- "that order. If @var{base} is less than or equal to 36, lowercase and "
- "uppercase letters may be used interchangeably to represent numbers between "
- "10 and 35."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6869
- msgid ""
- "Operators are evaluated in order of precedence. Sub-expressions in "
- "parentheses are evaluated first and may override the precedence rules above."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6872
- #, no-wrap
- msgid "alias expansion"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6878
- msgid ""
- "@var{Aliases} allow a string to be substituted for a word when it is used as "
- "the first word of a simple command. The shell maintains a list of aliases "
- "that may be set and unset with the @code{alias} and @code{unalias} builtin "
- "commands."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6896
- msgid ""
- "The first word of each simple command, if unquoted, is checked to see if it "
- "has an alias. If so, that word is replaced by the text of the alias. The "
- "characters @samp{/}, @samp{$}, @samp{`}, @samp{=} and any of the shell "
- "metacharacters or quoting characters listed above may not appear in an alias "
- "name. The replacement text may contain any valid shell input, including "
- "shell metacharacters. The first word of the replacement text is tested for "
- "aliases, but a word that is identical to an alias being expanded is not "
- "expanded a second time. This means that one may alias @code{ls} to "
- "@code{\"ls -F\"}, for instance, and Bash does not try to recursively expand "
- "the replacement text. If the last character of the alias value is a "
- "@var{blank}, then the next command word following the alias is also checked "
- "for alias expansion."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6899
- msgid ""
- "Aliases are created and listed with the @code{alias} command, and removed "
- "with the @code{unalias} command."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6904
- msgid ""
- "There is no mechanism for using arguments in the replacement text, as in "
- "@code{csh}. If arguments are needed, a shell function should be used "
- "(@pxref{Shell Functions})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6908
- msgid ""
- "Aliases are not expanded when the shell is not interactive, unless the "
- "@code{expand_aliases} shell option is set using @code{shopt} (@pxref{The "
- "Shopt Builtin})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6927
- msgid ""
- "The rules concerning the definition and use of aliases are somewhat "
- "confusing. Bash always reads at least one complete line of input before "
- "executing any of the commands on that line. Aliases are expanded when a "
- "command is read, not when it is executed. Therefore, an alias definition "
- "appearing on the same line as another command does not take effect until the "
- "next line of input is read. The commands following the alias definition on "
- "that line are not affected by the new alias. This behavior is also an issue "
- "when functions are executed. Aliases are expanded when a function "
- "definition is read, not when the function is executed, because a function "
- "definition is itself a command. As a consequence, aliases defined in a "
- "function are not available until after that function is executed. To be "
- "safe, always put alias definitions on a separate line, and do not use "
- "@code{alias} in compound commands."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6929
- msgid "For almost every purpose, shell functions are preferred over aliases."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:6932
- #, no-wrap
- msgid "arrays"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6944
- msgid ""
- "Bash provides one-dimensional indexed and associative array variables. Any "
- "variable may be used as an indexed array; the @code{declare} builtin will "
- "explicitly declare an array. There is no maximum limit on the size of an "
- "array, nor any requirement that members be indexed or assigned "
- "contiguously. Indexed arrays are referenced using integers (including "
- "arithmetic expressions (@pxref{Shell Arithmetic})) and are zero-based; "
- "associative arrays use arbitrary strings. Unless otherwise noted, indexed "
- "array indices must be non-negative integers."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6947
- msgid ""
- "An indexed array is created automatically if any variable is assigned to "
- "using the syntax"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6949
- #, no-wrap
- msgid "@var{name}[@var{subscript}]=@var{value}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6955
- msgid ""
- "The @var{subscript} is treated as an arithmetic expression that must "
- "evaluate to a number. To explicitly declare an array, use"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6957
- #, no-wrap
- msgid "declare -a @var{name}\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6960
- msgid "The syntax"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6962
- #, no-wrap
- msgid "declare -a @var{name}[@var{subscript}]\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6965
- msgid "is also accepted; the @var{subscript} is ignored."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6968
- msgid "Associative arrays are created using"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6970
- #, no-wrap
- msgid "declare -A @var{name}.\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6976
- msgid ""
- "Attributes may be specified for an array variable using the @code{declare} "
- "and @code{readonly} builtins. Each attribute applies to all members of an "
- "array."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6978
- msgid "Arrays are assigned to using compound assignments of the form"
- msgstr ""
- #. type: example
- #: ./bashref.texi:6980
- #, no-wrap
- msgid "@var{name}=(@var{value1} @var{value2} @dots{} )\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6989
- msgid ""
- "where each @var{value} is of the form "
- "@code{[@var{subscript}]=}@var{string}. Indexed array assignments do not "
- "require anything but @var{string}. When assigning to indexed arrays, if the "
- "optional subscript is supplied, that index is assigned to; otherwise the "
- "index of the element assigned is the last index assigned to by the statement "
- "plus one. Indexing starts at zero."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6991
- msgid "When assigning to an associative array, the subscript is required."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:6995
- msgid ""
- "This syntax is also accepted by the @code{declare} builtin. Individual "
- "array elements may be assigned to using the "
- "@code{@var{name}[@var{subscript}]=@var{value}} syntax introduced above."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7001
- msgid ""
- "When assigning to an indexed array, if @var{name} is subscripted by a "
- "negative number, that number is interpreted as relative to one greater than "
- "the maximum index of @var{name}, so negative indices count back from the end "
- "of the array, and an index of -1 references the last element."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7031
- msgid ""
- "Any element of an array may be referenced using "
- "@code{$@{@var{name}[@var{subscript}]@}}. The braces are required to avoid "
- "conflicts with the shell's filename expansion operators. If the "
- "@var{subscript} is @samp{@@} or @samp{*}, the word expands to all members of "
- "the array @var{name}. These subscripts differ only when the word appears "
- "within double quotes. If the word is double-quoted, "
- "@code{$@{@var{name}[*]@}} expands to a single word with the value of each "
- "array member separated by the first character of the @env{IFS} variable, and "
- "@code{$@{@var{name}[@@]@}} expands each element of @var{name} to a separate "
- "word. When there are no array members, @code{$@{@var{name}[@@]@}} expands "
- "to nothing. If the double-quoted expansion occurs within a word, the "
- "expansion of the first parameter is joined with the beginning part of the "
- "original word, and the expansion of the last parameter is joined with the "
- "last part of the original word. This is analogous to the expansion of the "
- "special parameters @samp{@@} and @samp{*}. "
- "@code{$@{#@var{name}[@var{subscript}]@}} expands to the length of "
- "@code{$@{@var{name}[@var{subscript}]@}}. If @var{subscript} is @samp{@@} or "
- "@samp{*}, the expansion is the number of elements in the array. If the "
- "@var{subscript} used to reference an element of an indexed array evaluates "
- "to a number less than zero, it is interpreted as relative to one greater "
- "than the maximum index of the array, so negative indices count back from the "
- "end of the array, and an index of -1 refers to the last element."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7036
- msgid ""
- "Referencing an array variable without a subscript is equivalent to "
- "referencing with a subscript of 0. Any reference to a variable using a "
- "valid subscript is legal, and @code{bash} will create an array if necessary."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7039
- msgid ""
- "An array variable is considered set if a subscript has been assigned a "
- "value. The null string is a valid value."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7045
- msgid ""
- "It is possible to obtain the keys (indices) of an array as well as the "
- "values. $@{!@var{name}[@@]@} and $@{!@var{name}[*]@} expand to the indices "
- "assigned in array variable @var{name}. The treatment when in double quotes "
- "is similar to the expansion of the special parameters @samp{@@} and @samp{*} "
- "within double quotes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7055
- msgid ""
- "The @code{unset} builtin is used to destroy arrays. @code{unset "
- "@var{name}[@var{subscript}]} destroys the array element at index "
- "@var{subscript}. Negative subscripts to indexed arrays are interpreted as "
- "described above. Care must be taken to avoid unwanted side effects caused "
- "by filename expansion. @code{unset @var{name}}, where @var{name} is an "
- "array, removes the entire array. A subscript of @samp{*} or @samp{@@} also "
- "removes the entire array."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7066
- msgid ""
- "The @code{declare}, @code{local}, and @code{readonly} builtins each accept a "
- "@option{-a} option to specify an indexed array and a @option{-A} option to "
- "specify an associative array. If both options are supplied, @option{-A} "
- "takes precedence. The @code{read} builtin accepts a @option{-a} option to "
- "assign a list of words read from the standard input to an array, and can "
- "read values from the standard input into individual array elements. The "
- "@code{set} and @code{declare} builtins display array values in a way that "
- "allows them to be reused as input."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7069
- #, no-wrap
- msgid "directory stack"
- msgstr ""
- #. type: subsection
- #: ./bashref.texi:7074 ./bashref.texi:7087 ./bashref.texi:7088
- #, no-wrap
- msgid "Directory Stack Builtins"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7074
- msgid "Bash builtin commands to manipulate the directory stack."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7083
- msgid ""
- "The directory stack is a list of recently-visited directories. The "
- "@code{pushd} builtin adds directories to the stack as it changes the current "
- "directory, and the @code{popd} builtin removes specified directories from "
- "the stack and changes the current directory to the directory removed. The "
- "@code{dirs} builtin displays the contents of the directory stack. The "
- "current directory is always the \"top\" of the directory stack."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7086
- msgid ""
- "The contents of the directory stack are also visible as the value of the "
- "@env{DIRSTACK} shell variable."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7092 ./bashref.texi:7093
- #, no-wrap
- msgid "dirs"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7096
- #, no-wrap
- msgid "dirs [-clpv] [+@var{N} | -@var{N}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7102
- msgid ""
- "Display the list of currently remembered directories. Directories are added "
- "to the list with the @code{pushd} command; the @code{popd} command removes "
- "directories from the list. The current directory is always the first "
- "directory in the stack."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7106
- msgid "Clears the directory stack by deleting all of the elements."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7109
- msgid ""
- "Produces a listing using full pathnames; the default listing format uses a "
- "tilde to denote the home directory."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7112
- msgid "Causes @code{dirs} to print the directory stack with one entry per line."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7115
- msgid ""
- "Causes @code{dirs} to print the directory stack with one entry per line, "
- "prefixing each entry with its index in the stack."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7115 ./bashref.texi:7141 ./bashref.texi:7164
- #, no-wrap
- msgid "+@var{N}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7119
- msgid ""
- "Displays the @var{N}th directory (counting from the left of the list printed "
- "by @code{dirs} when invoked without options), starting with zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7119 ./bashref.texi:7144 ./bashref.texi:7168
- #, no-wrap
- msgid "-@var{N}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7123
- msgid ""
- "Displays the @var{N}th directory (counting from the right of the list "
- "printed by @code{dirs} when invoked without options), starting with zero."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7125 ./bashref.texi:7126
- #, no-wrap
- msgid "popd"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7129
- #, no-wrap
- msgid "popd [-n] [+@var{N} | -@var{N}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7136
- msgid ""
- "When no arguments are given, @code{popd} removes the top directory from the "
- "stack and performs a @code{cd} to the new top directory. The elements are "
- "numbered from 0 starting at the first directory listed with @code{dirs}; "
- "that is, @code{popd} is equivalent to @code{popd +0}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7141
- msgid ""
- "Suppresses the normal change of directory when removing directories from the "
- "stack, so that only the stack is manipulated."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7144
- msgid ""
- "Removes the @var{N}th directory (counting from the left of the list printed "
- "by @code{dirs}), starting with zero."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7147
- msgid ""
- "Removes the @var{N}th directory (counting from the right of the list printed "
- "by @code{dirs}), starting with zero."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7149 ./bashref.texi:7150
- #, no-wrap
- msgid "pushd"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7153
- #, no-wrap
- msgid "pushd [-n] [@var{+N} | @var{-N} | @var{dir}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7159
- msgid ""
- "Save the current directory on the top of the directory stack and then "
- "@code{cd} to @var{dir}. With no arguments, @code{pushd} exchanges the top "
- "two directories and makes the new top the current directory."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7164
- msgid ""
- "Suppresses the normal change of directory when rotating or adding "
- "directories to the stack, so that only the stack is manipulated."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7168
- msgid ""
- "Brings the @var{N}th directory (counting from the left of the list printed "
- "by @code{dirs}, starting with zero) to the top of the list by rotating the "
- "stack."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7172
- msgid ""
- "Brings the @var{N}th directory (counting from the right of the list printed "
- "by @code{dirs}, starting with zero) to the top of the list by rotating the "
- "stack."
- msgstr ""
- #. type: var{#1}
- #: ./bashref.texi:7172
- #, no-wrap
- msgid "dir"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7176
- msgid ""
- "Makes @var{dir} be the top of the stack, making it the new current directory "
- "as if it had been supplied as an argument to the @code{cd} builtin."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7181
- #, no-wrap
- msgid "prompting"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7187
- msgid ""
- "The value of the variable @env{PROMPT_COMMAND} is examined just before Bash "
- "prints each primary prompt. If @env{PROMPT_COMMAND} is set and has a "
- "non-null value, then the value is executed just as if it had been typed on "
- "the command line."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7190
- msgid ""
- "In addition, the following table describes the special characters which can "
- "appear in the prompt variables @env{PS1} to @env{PS4}:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7194
- msgid "A bell character."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7194
- #, no-wrap
- msgid "\\d"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7196
- msgid "The date, in \"Weekday Month Date\" format (e.g., \"Tue May 26\")."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7196
- #, no-wrap
- msgid "\\D@{@var{format}@}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7200
- msgid ""
- "The @var{format} is passed to @code{strftime}(3) and the result is inserted "
- "into the prompt string; an empty @var{format} results in a locale-specific "
- "time representation. The braces are required."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7202
- msgid "An escape character."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7202
- #, no-wrap
- msgid "\\h"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7204
- msgid "The hostname, up to the first `.'."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7204
- #, no-wrap
- msgid "\\H"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7206
- msgid "The hostname."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7206
- #, no-wrap
- msgid "\\j"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7208
- msgid "The number of jobs currently managed by the shell."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7208
- #, no-wrap
- msgid "\\l"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7210
- msgid "The basename of the shell's terminal device name."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7212
- msgid "A newline."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7214
- msgid "A carriage return."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7214
- #, no-wrap
- msgid "\\s"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7217
- msgid ""
- "The name of the shell, the basename of @code{$0} (the portion following the "
- "final slash)."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7219
- msgid "The time, in 24-hour HH:MM:SS format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7219
- #, no-wrap
- msgid "\\T"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7221
- msgid "The time, in 12-hour HH:MM:SS format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7221
- #, no-wrap
- msgid "\\@@"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7223
- msgid "The time, in 12-hour am/pm format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7223
- #, no-wrap
- msgid "\\A"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7225
- msgid "The time, in 24-hour HH:MM format."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7225
- #, no-wrap
- msgid "\\u"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7227
- msgid "The username of the current user."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7229
- msgid "The version of Bash (e.g., 2.00)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:7229
- #, no-wrap
- msgid "\\V"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7231
- msgid "The release of Bash, version + patchlevel (e.g., 2.00.0)"
- msgstr ""
- #. type: item
- #: ./bashref.texi:7231
- #, no-wrap
- msgid "\\w"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7234
- msgid ""
- "The current working directory, with @env{$HOME} abbreviated with a tilde "
- "(uses the @env{$PROMPT_DIRTRIM} variable)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7234
- #, no-wrap
- msgid "\\W"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7236
- msgid "The basename of @env{$PWD}, with @env{$HOME} abbreviated with a tilde."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7236
- #, no-wrap
- msgid "\\!"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7238
- msgid "The history number of this command."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7238
- #, no-wrap
- msgid "\\#"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7240
- msgid "The command number of this command."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7240
- #, no-wrap
- msgid "\\$"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7242
- msgid "If the effective uid is 0, @code{#}, otherwise @code{$}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7244
- msgid "The character whose ASCII code is the octal value @var{nnn}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7246
- msgid "A backslash."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7246
- #, no-wrap
- msgid "\\["
- msgstr ""
- #. type: table
- #: ./bashref.texi:7249
- msgid ""
- "Begin a sequence of non-printing characters. This could be used to embed a "
- "terminal control sequence into the prompt."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7249
- #, no-wrap
- msgid "\\]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7251
- msgid "End a sequence of non-printing characters."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7259
- msgid ""
- "The command number and the history number are usually different: the history "
- "number of a command is its position in the history list, which may include "
- "commands restored from the history file (@pxref{Bash History Facilities}), "
- "while the command number is the position in the sequence of commands "
- "executed during the current shell session."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7264
- msgid ""
- "After the string is decoded, it is expanded via parameter expansion, command "
- "substitution, arithmetic expansion, and quote removal, subject to the value "
- "of the @code{promptvars} shell option (@pxref{Bash Builtins})."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7267
- #, no-wrap
- msgid "restricted shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7278
- msgid ""
- "If Bash is started with the name @code{rbash}, or the @option{--restricted} "
- "or @option{-r} option is supplied at invocation, the shell becomes "
- "restricted. A restricted shell is used to set up an environment more "
- "controlled than the standard shell. A restricted shell behaves identically "
- "to @code{bash} with the exception that the following are disallowed or not "
- "performed:"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7282
- msgid "Changing directories with the @code{cd} builtin."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7285
- msgid ""
- "Setting or unsetting the values of the @env{SHELL}, @env{PATH}, @env{ENV}, "
- "or @env{BASH_ENV} variables."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7287
- msgid "Specifying command names containing slashes."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7290
- msgid ""
- "Specifying a filename containing a slash as an argument to the @code{.} "
- "builtin command."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7293
- msgid ""
- "Specifying a filename containing a slash as an argument to the @option{-p} "
- "option to the @code{hash} builtin command."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7295
- msgid "Importing function definitions from the shell environment at startup."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7297
- msgid "Parsing the value of @env{SHELLOPTS} from the shell environment at startup."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7300
- msgid ""
- "Redirecting output using the @samp{>}, @samp{>|}, @samp{<>}, @samp{>&}, "
- "@samp{&>}, and @samp{>>} redirection operators."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7302
- msgid "Using the @code{exec} builtin to replace the shell with another command."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7305
- msgid ""
- "Adding or deleting builtin commands with the @option{-f} and @option{-d} "
- "options to the @code{enable} builtin."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7307
- msgid "Using the @code{enable} builtin command to enable disabled shell builtins."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7309
- msgid "Specifying the @option{-p} option to the @code{command} builtin."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:7311
- msgid "Turning off restricted mode with @samp{set +r} or @samp{set +o restricted}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7314
- msgid "These restrictions are enforced after any startup files are read."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7318
- msgid ""
- "When a command that is found to be a shell script is executed (@pxref{Shell "
- "Scripts}), @code{rbash} turns off any restrictions in the shell spawned to "
- "execute the script."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7321
- #, no-wrap
- msgid "POSIX Mode"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7327
- msgid ""
- "Starting Bash with the @option{--posix} command-line option or executing "
- "@samp{set -o posix} while Bash is running will cause Bash to conform more "
- "closely to the @sc{posix} standard by changing the behavior to match that "
- "specified by @sc{posix} in areas where the Bash default differs."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7330
- msgid ""
- "When invoked as @code{sh}, Bash enters @sc{posix} mode after reading the "
- "startup files."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7332
- msgid "The following list is what's changed when `@sc{posix} mode' is in effect:"
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7338
- msgid ""
- "When a command in the hash table no longer exists, Bash will re-search "
- "@env{$PATH} to find the new location. This is also available with "
- "@samp{shopt -s checkhash}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7342
- msgid ""
- "The message printed by the job control code and builtins when a job exits "
- "with a non-zero status is `Done(status)'."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7347
- msgid ""
- "The message printed by the job control code and builtins when a job is "
- "stopped is `Stopped(@var{signame})', where @var{signame} is, for example, "
- "@code{SIGTSTP}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7350
- msgid "Alias expansion is always enabled, even in non-interactive shells."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7354
- msgid ""
- "Reserved words appearing in a context where reserved words are recognized do "
- "not undergo alias expansion."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7360
- msgid ""
- "The @sc{posix} @env{PS1} and @env{PS2} expansions of @samp{!} to the history "
- "number and @samp{!!} to @samp{!} are enabled, and parameter expansion is "
- "performed on the values of @env{PS1} and @env{PS2} regardless of the setting "
- "of the @code{promptvars} option."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7364
- msgid ""
- "The @sc{posix} startup files are executed (@env{$ENV}) rather than the "
- "normal Bash files."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7368
- msgid ""
- "Tilde expansion is only performed on assignments preceding a command name, "
- "rather than on all assignment statements on the line."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7372
- msgid ""
- "The default history file is @file{~/.sh_history} (this is the default value "
- "of @env{$HISTFILE})."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7376
- msgid ""
- "Redirection operators do not perform filename expansion on the word in the "
- "redirection unless the shell is interactive."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7380
- msgid ""
- "Redirection operators do not perform word splitting on the word in the "
- "redirection."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7386
- msgid ""
- "Function names must be valid shell @code{name}s. That is, they may not "
- "contain characters other than letters, digits, and underscores, and may not "
- "start with a digit. Declaring a function with an invalid name causes a "
- "fatal syntax error in non-interactive shells."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7390
- msgid ""
- "Function names may not be the same as one of the @sc{posix} special "
- "builtins."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7394
- msgid ""
- "@sc{posix} special builtins are found before shell functions during command "
- "lookup."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7398
- msgid ""
- "When printing shell function definitions (e.g., by @code{type}), Bash does "
- "not print the @code{function} keyword."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7403
- msgid ""
- "Literal tildes that appear as the first character in elements of the "
- "@env{PATH} variable are not expanded as described above under @ref{Tilde "
- "Expansion}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7409
- msgid ""
- "The @code{time} reserved word may be used by itself as a command. When used "
- "in this way, it displays timing statistics for the shell and its completed "
- "children. The @env{TIMEFORMAT} variable controls the format of the timing "
- "information."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7416
- msgid ""
- "When parsing and expanding a $@{@dots{}@} expansion that appears within "
- "double quotes, single quotes are no longer special and cannot be used to "
- "quote a closing brace or other special character, unless the operator is one "
- "of those defined to perform pattern removal. In this case, they do not have "
- "to appear as matched pairs."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7420
- msgid ""
- "The parser does not recognize @code{time} as a reserved word if the next "
- "token begins with a @samp{-}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7424
- msgid ""
- "The @samp{!} character does not introduce history expansion within a "
- "double-quoted string, even if the @code{histexpand} option is enabled."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7431
- msgid ""
- "If a @sc{posix} special builtin returns an error status, a non-interactive "
- "shell exits. The fatal errors are those listed in the @sc{posix} standard, "
- "and include things like passing incorrect options, redirection errors, "
- "variable assignment errors for assignments preceding the command name, and "
- "so on."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7438
- msgid ""
- "A non-interactive shell exits with an error status if a variable assignment "
- "error occurs when no command name follows the assignment statements. A "
- "variable assignment error occurs, for example, when trying to assign a value "
- "to a readonly variable."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7443
- msgid ""
- "A non-interactive shell exits with an error status if a variable assignment "
- "error occurs in an assignment statement preceding a special builtin, but not "
- "with any other simple command."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7448
- msgid ""
- "A non-interactive shell exits with an error status if the iteration variable "
- "in a @code{for} statement or the selection variable in a @code{select} "
- "statement is a readonly variable."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7452
- msgid ""
- "Non-interactive shells exit if @var{filename} in @code{.} @var{filename} is "
- "not found."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7456
- msgid ""
- "Non-interactive shells exit if a syntax error in an arithmetic expansion "
- "results in an invalid expression."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7459
- msgid "Non-interactive shells exit if a parameter expansion error occurs."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7464
- msgid ""
- "Non-interactive shells exit if there is a syntax error in a script read with "
- "the @code{.} or @code{source} builtins, or in a string processed by the "
- "@code{eval} builtin."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7467
- msgid "Process substitution is not available."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7471
- msgid ""
- "While variable indirection is available, it may not be applied to the "
- "@samp{#} and @samp{?} special parameters."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7476
- msgid ""
- "When expanding the @samp{*} special parameter in a pattern context where the "
- "expansion is double-quoted does not treat the @code{$*} as if it were "
- "double-quoted."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7480
- msgid ""
- "Assignment statements preceding @sc{posix} special builtins persist in the "
- "shell environment after the builtin completes."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7485
- msgid ""
- "Assignment statements preceding shell function calls persist in the shell "
- "environment after the function returns, as if a @sc{posix} special builtin "
- "command had been executed."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7491
- msgid ""
- "The @code{command} builtin does not prevent builtins that take assignment "
- "statements as arguments from expanding them as assignment statements; when "
- "not in @sc{posix} mode, assignment builtins lose their assignment statement "
- "expansion properties when preceded by @code{command}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7496
- msgid ""
- "The @code{bg} builtin uses the required format to describe each job placed "
- "in the background, which does not include an indication of whether the job "
- "is the current or previous job."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7500
- msgid ""
- "The output of @samp{kill -l} prints all the signal names on a single line, "
- "separated by spaces, without the @samp{SIG} prefix."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7504
- msgid ""
- "The @code{kill} builtin does not accept signal names with a @samp{SIG} "
- "prefix."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7508
- msgid ""
- "The @code{export} and @code{readonly} builtin commands display their output "
- "in the format required by @sc{posix}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7512
- msgid ""
- "The @code{trap} builtin displays signal names without the leading "
- "@code{SIG}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7520
- msgid ""
- "The @code{trap} builtin doesn't check the first argument for a possible "
- "signal specification and revert the signal handling to the original "
- "disposition if it is, unless that argument consists solely of digits and is "
- "a valid signal number. If users want to reset the handler for a given "
- "signal to the original disposition, they should use @samp{-} as the first "
- "argument."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7524
- msgid ""
- "The @code{.} and @code{source} builtins do not search the current directory "
- "for the filename argument if it is not found by searching @env{PATH}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7532
- msgid ""
- "Enabling @sc{posix} mode has the effect of setting the "
- "@code{inherit_errexit} option, so subshells spawned to execute command "
- "substitutions inherit the value of the @option{-e} option from the parent "
- "shell. When the @code{inherit_errexit} option is not enabled, Bash clears "
- "the @option{-e} option in such subshells."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7537
- msgid ""
- "When the @code{alias} builtin displays alias definitions, it does not "
- "display them with a leading @samp{alias } unless the @option{-p} option is "
- "supplied."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7541
- msgid ""
- "When the @code{set} builtin is invoked without options, it does not display "
- "shell function names and definitions."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7546
- msgid ""
- "When the @code{set} builtin is invoked without options, it displays variable "
- "values without quotes, unless they contain shell metacharacters, even if the "
- "result contains nonprinting characters."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7552
- msgid ""
- "When the @code{cd} builtin is invoked in @var{logical} mode, and the "
- "pathname constructed from @code{$PWD} and the directory name supplied as an "
- "argument does not refer to an existing directory, @code{cd} will fail "
- "instead of falling back to @var{physical} mode."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7557
- msgid ""
- "The @code{pwd} builtin verifies that the value it prints is the same as the "
- "current directory, even if it is not asked to check the file system with the "
- "@option{-P} option."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7561
- msgid ""
- "When listing the history, the @code{fc} builtin does not include an "
- "indication of whether or not a history entry has been modified."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7564
- msgid "The default editor used by @code{fc} is @code{ed}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7569
- msgid ""
- "The @code{type} and @code{command} builtins will not report a non-executable "
- "file as having been found, though the shell will attempt to execute such a "
- "file if it is the only so-named file found in @code{$PATH}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7574
- msgid ""
- "The @code{vi} editing mode will invoke the @code{vi} editor directly when "
- "the @samp{v} command is run, instead of checking @code{$VISUAL} and "
- "@code{$EDITOR}."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7579
- msgid ""
- "When the @code{xpg_echo} option is enabled, Bash does not attempt to "
- "interpret any arguments to @code{echo} as options. Each argument is "
- "displayed, after escape characters are converted."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7583
- msgid ""
- "The @code{ulimit} builtin uses a block size of 512 bytes for the @option{-c} "
- "and @option{-f} options."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7588
- msgid ""
- "The arrival of @code{SIGCHLD} when a trap is set on @code{SIGCHLD} does not "
- "interrupt the @code{wait} builtin and cause it to return immediately. The "
- "trap command is run once for each child that exits."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7594
- msgid ""
- "The @code{read} builtin may be interrupted by a signal for which a trap has "
- "been set. If Bash receives a trapped signal while executing @code{read}, "
- "the trap handler executes and @code{read} returns an exit status greater "
- "than 128."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7598
- msgid ""
- "Bash removes an exited background process's status from the list of such "
- "statuses after the @code{wait} builtin is used to obtain it."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7604
- msgid ""
- "There is other @sc{posix} behavior that Bash does not implement by default "
- "even when in @sc{posix} mode. Specifically:"
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7611
- msgid ""
- "The @code{fc} builtin checks @code{$EDITOR} as a program to edit history "
- "entries if @code{FCEDIT} is unset, rather than defaulting directly to "
- "@code{ed}. @code{fc} uses @code{ed} if @code{EDITOR} is unset."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7615
- msgid ""
- "As noted above, Bash requires the @code{xpg_echo} option to be enabled for "
- "the @code{echo} builtin to be fully conformant."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7621
- msgid ""
- "Bash can be configured to be @sc{posix}-conformant by default, by specifying "
- "the @option{--enable-strict-posix-default} to @code{configure} when building "
- "(@pxref{Optional Features})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7627
- msgid ""
- "This chapter discusses what job control is, how it works, and how Bash "
- "allows you to access its facilities."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7634 ./bashref.texi:7636 ./bashref.texi:7637
- #, no-wrap
- msgid "Job Control Basics"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7634
- msgid "How job control works."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7634 ./bashref.texi:7741 ./bashref.texi:7742
- #, no-wrap
- msgid "Job Control Builtins"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7634
- msgid "Bash builtin commands used to interact with job control."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7634 ./bashref.texi:7884 ./bashref.texi:7885
- #, no-wrap
- msgid "Job Control Variables"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7634
- msgid "Variables Bash uses to customize job control."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7639
- #, no-wrap
- msgid "foreground"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7640
- #, no-wrap
- msgid "background"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7641
- #, no-wrap
- msgid "suspending jobs"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7649
- msgid ""
- "Job control refers to the ability to selectively stop (suspend) the "
- "execution of processes and continue (resume) their execution at a later "
- "point. A user typically employs this facility via an interactive interface "
- "supplied jointly by the operating system kernel's terminal driver and Bash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7655
- msgid ""
- "The shell associates a @var{job} with each pipeline. It keeps a table of "
- "currently executing jobs, which may be listed with the @code{jobs} command. "
- "When Bash starts a job asynchronously, it prints a line that looks like:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7657
- #, no-wrap
- msgid "[1] 25647\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7664
- msgid ""
- "indicating that this job is job number 1 and that the process @sc{id} of the "
- "last process in the pipeline associated with this job is 25647. All of the "
- "processes in a single pipeline are members of the same job. Bash uses the "
- "@var{job} abstraction as the basis for job control."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7680
- msgid ""
- "To facilitate the implementation of the user interface to job control, the "
- "operating system maintains the notion of a current terminal process group "
- "@sc{id}. Members of this process group (processes whose process group "
- "@sc{id} is equal to the current terminal process group @sc{id}) receive "
- "keyboard-generated signals such as @code{SIGINT}. These processes are said "
- "to be in the foreground. Background processes are those whose process group "
- "@sc{id} differs from the terminal's; such processes are immune to "
- "keyboard-generated signals. Only foreground processes are allowed to read "
- "from or, if the user so specifies with @code{stty tostop}, write to the "
- "terminal. Background processes which attempt to read from (write to when "
- "@code{stty tostop} is in effect) the terminal are sent a @code{SIGTTIN} "
- "(@code{SIGTTOU}) signal by the kernel's terminal driver, which, unless "
- "caught, suspends the process."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7694
- msgid ""
- "If the operating system on which Bash is running supports job control, Bash "
- "contains facilities to use it. Typing the @var{suspend} character "
- "(typically @samp{^Z}, Control-Z) while a process is running causes that "
- "process to be stopped and returns control to Bash. Typing the @var{delayed "
- "suspend} character (typically @samp{^Y}, Control-Y) causes the process to be "
- "stopped when it attempts to read input from the terminal, and control to be "
- "returned to Bash. The user then manipulates the state of this job, using "
- "the @code{bg} command to continue it in the background, the @code{fg} "
- "command to continue it in the foreground, or the @code{kill} command to kill "
- "it. A @samp{^Z} takes effect immediately, and has the additional side "
- "effect of causing pending output and typeahead to be discarded."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7697
- msgid ""
- "There are a number of ways to refer to a job in the shell. The character "
- "@samp{%} introduces a job specification (@var{jobspec})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7710
- msgid ""
- "Job number @code{n} may be referred to as @samp{%n}. The symbols @samp{%%} "
- "and @samp{%+} refer to the shell's notion of the current job, which is the "
- "last job stopped while it was in the foreground or started in the "
- "background. A single @samp{%} (with no accompanying job specification) also "
- "refers to the current job. The previous job may be referenced using "
- "@samp{%-}. If there is only a single job, @samp{%+} and @samp{%-} can both "
- "be used to refer to that job. In output pertaining to jobs (e.g., the "
- "output of the @code{jobs} command), the current job is always flagged with a "
- "@samp{+}, and the previous job with a @samp{-}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7718
- msgid ""
- "A job may also be referred to using a prefix of the name used to start it, "
- "or using a substring that appears in its command line. For example, "
- "@samp{%ce} refers to a stopped @code{ce} job. Using @samp{%?ce}, on the "
- "other hand, refers to any job containing the string @samp{ce} in its command "
- "line. If the prefix or substring matches more than one job, Bash reports an "
- "error."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7723
- msgid ""
- "Simply naming a job can be used to bring it into the foreground: @samp{%1} "
- "is a synonym for @samp{fg %1}, bringing job 1 from the background into the "
- "foreground. Similarly, @samp{%1 &} resumes job 1 in the background, "
- "equivalent to @samp{bg %1}"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7732
- msgid ""
- "The shell learns immediately whenever a job changes state. Normally, Bash "
- "waits until it is about to print a prompt before reporting changes in a "
- "job's status so as to not interrupt any other output. If the @option{-b} "
- "option to the @code{set} builtin is enabled, Bash reports such changes "
- "immediately (@pxref{The Set Builtin}). Any trap on @code{SIGCHLD} is "
- "executed for each child process that exits."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7740
- msgid ""
- "If an attempt to exit Bash is made while jobs are stopped, (or running, if "
- "the @code{checkjobs} option is enabled -- see @ref{The Shopt Builtin}), the "
- "shell prints a warning message, and if the @code{checkjobs} option is "
- "enabled, lists the jobs and their statuses. The @code{jobs} command may "
- "then be used to inspect their status. If a second attempt to exit is made "
- "without an intervening command, Bash does not print another warning, and any "
- "stopped jobs are terminated."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7746 ./bashref.texi:7747
- #, no-wrap
- msgid "bg"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7750
- #, no-wrap
- msgid "bg [@var{jobspec} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7759
- msgid ""
- "Resume each suspended job @var{jobspec} in the background, as if it had been "
- "started with @samp{&}. If @var{jobspec} is not supplied, the current job is "
- "used. The return status is zero unless it is run when job control is not "
- "enabled, or, when run with job control enabled, any @var{jobspec} was not "
- "found or specifies a job that was started without job control."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7760 ./bashref.texi:7761
- #, no-wrap
- msgid "fg"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7764
- #, no-wrap
- msgid "fg [@var{jobspec}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7772
- msgid ""
- "Resume the job @var{jobspec} in the foreground and make it the current job. "
- "If @var{jobspec} is not supplied, the current job is used. The return "
- "status is that of the command placed into the foreground, or non-zero if run "
- "when job control is disabled or, when run with job control enabled, "
- "@var{jobspec} does not specify a valid job or @var{jobspec} specifies a job "
- "that was started without job control."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7773 ./bashref.texi:7774
- #, no-wrap
- msgid "jobs"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7778
- #, no-wrap
- msgid ""
- "jobs [-lnprs] [@var{jobspec}]\n"
- "jobs -x @var{command} [@var{arguments}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7782
- msgid ""
- "The first form lists the active jobs. The options have the following "
- "meanings:"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7786
- msgid "List process @sc{id}s in addition to the normal information."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7790
- msgid ""
- "Display information only about jobs that have changed status since the user "
- "was last notified of their status."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7793
- msgid "List only the process @sc{id} of the job's process group leader."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7796
- msgid "Display only running jobs."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7799
- msgid "Display only stopped jobs."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7805
- msgid ""
- "If @var{jobspec} is given, output is restricted to information about that "
- "job. If @var{jobspec} is not supplied, the status of all jobs is listed."
- msgstr ""
- #. type: table
- #: ./bashref.texi:7810
- msgid ""
- "If the @option{-x} option is supplied, @code{jobs} replaces any "
- "@var{jobspec} found in @var{command} or @var{arguments} with the "
- "corresponding process group @sc{id}, and executes @var{command}, passing it "
- "@var{argument}s, returning its exit status."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7811 ./bashref.texi:7812
- #, no-wrap
- msgid "kill"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7816
- #, no-wrap
- msgid ""
- "kill [-s @var{sigspec}] [-n @var{signum}] [-@var{sigspec}] @var{jobspec} or "
- "@var{pid}\n"
- "kill -l|-L [@var{exit_status}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7833
- msgid ""
- "Send a signal specified by @var{sigspec} or @var{signum} to the process "
- "named by job specification @var{jobspec} or process @sc{id} @var{pid}. "
- "@var{sigspec} is either a case-insensitive signal name such as @code{SIGINT} "
- "(with or without the @code{SIG} prefix) or a signal number; @var{signum} is "
- "a signal number. If @var{sigspec} and @var{signum} are not present, "
- "@code{SIGTERM} is used. The @option{-l} option lists the signal names. If "
- "any arguments are supplied when @option{-l} is given, the names of the "
- "signals corresponding to the arguments are listed, and the return status is "
- "zero. @var{exit_status} is a number specifying a signal number or the exit "
- "status of a process terminated by a signal. The @option{-L} option is "
- "equivalent to @option{-l}. The return status is zero if at least one signal "
- "was successfully sent, or non-zero if an error occurs or an invalid option "
- "is encountered."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7834 ./bashref.texi:7835
- #, no-wrap
- msgid "wait"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7838
- #, no-wrap
- msgid "wait [-n] [@var{jobspec} or @var{pid} @dots{}]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7850
- msgid ""
- "Wait until the child process specified by each process @sc{id} @var{pid} or "
- "job specification @var{jobspec} exits and return the exit status of the last "
- "command waited for. If a job spec is given, all processes in the job are "
- "waited for. If no arguments are given, all currently active child processes "
- "are waited for, and the return status is zero. If the @option{-n} option is "
- "supplied, @code{wait} waits for any job to terminate and returns its exit "
- "status. If neither @var{jobspec} nor @var{pid} specifies an active child "
- "process of the shell, the return status is 127."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7851 ./bashref.texi:7852
- #, no-wrap
- msgid "disown"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7855
- #, no-wrap
- msgid "disown [-ar] [-h] [@var{jobspec} @dots{} | @var{pid} @dots{} ]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7867
- msgid ""
- "Without options, remove each @var{jobspec} from the table of active jobs. "
- "If the @option{-h} option is given, the job is not removed from the table, "
- "but is marked so that @code{SIGHUP} is not sent to the job if the shell "
- "receives a @code{SIGHUP}. If @var{jobspec} is not present, and neither the "
- "@option{-a} nor the @option{-r} option is supplied, the current job is "
- "used. If no @var{jobspec} is supplied, the @option{-a} option means to "
- "remove or mark all jobs; the @option{-r} option without a @var{jobspec} "
- "argument restricts operation to running jobs."
- msgstr ""
- #. type: btindex
- #: ./bashref.texi:7868 ./bashref.texi:7869
- #, no-wrap
- msgid "suspend"
- msgstr ""
- #. type: example
- #: ./bashref.texi:7872
- #, no-wrap
- msgid "suspend [-f]\n"
- msgstr ""
- #. type: table
- #: ./bashref.texi:7878
- msgid ""
- "Suspend the execution of this shell until it receives a @code{SIGCONT} "
- "signal. A login shell cannot be suspended; the @option{-f} option can be "
- "used to override this and force the suspension."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7883
- msgid ""
- "When job control is not active, the @code{kill} and @code{wait} builtins do "
- "not accept @var{jobspec} arguments. They must be supplied process @sc{id}s."
- msgstr ""
- #. type: item
- #: ./bashref.texi:7889
- #, no-wrap
- msgid "auto_resume"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7906
- msgid ""
- "This variable controls how the shell interacts with the user and job "
- "control. If this variable exists then single word simple commands without "
- "redirections are treated as candidates for resumption of an existing job. "
- "There is no ambiguity allowed; if there is more than one job beginning with "
- "the string typed, then the most recently accessed job will be selected. The "
- "name of a stopped job, in this context, is the command line used to start "
- "it. If this variable is set to the value @samp{exact}, the string supplied "
- "must match the name of a stopped job exactly; if set to @samp{substring}, "
- "the string supplied needs to match a substring of the name of a stopped "
- "job. The @samp{substring} value provides functionality analogous to the "
- "@samp{%?} job @sc{id} (@pxref{Job Control Basics}). If set to any other "
- "value, the supplied string must be a prefix of a stopped job's name; this "
- "provides functionality analogous to the @samp{%} job @sc{id}."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7911
- #, no-wrap
- msgid "Readline, how to use"
- msgstr ""
- #. type: include
- #: ./bashref.texi:7912
- #, no-wrap
- msgid "rluser.texi"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7913
- #, no-wrap
- msgid "History, how to use"
- msgstr ""
- #. type: include
- #: ./bashref.texi:7914
- #, no-wrap
- msgid "hsuser.texi"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7927
- msgid ""
- "This chapter provides basic instructions for installing Bash on the various "
- "supported platforms. The distribution supports the @sc{gnu} operating "
- "systems, nearly every version of Unix, and several non-Unix systems such as "
- "BeOS and Interix. Other independent ports exist for @sc{ms-dos}, @sc{os/2}, "
- "and Windows platforms."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:7944 ./bashref.texi:7945
- #, no-wrap
- msgid "Basic Installation"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "Installation instructions."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8024 ./bashref.texi:8025
- #, no-wrap
- msgid "Compilers and Options"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "How to set special options for various systems."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8046 ./bashref.texi:8047
- #, no-wrap
- msgid "Compiling For Multiple Architectures"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid ""
- "How to compile Bash for more than one kind of system from the same source "
- "tree."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8081 ./bashref.texi:8082
- #, no-wrap
- msgid "Installation Names"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "How to set the various paths used by the installation."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8098 ./bashref.texi:8099
- #, no-wrap
- msgid "Specifying the System Type"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "How to configure Bash for a particular system."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8113 ./bashref.texi:8114
- #, no-wrap
- msgid "Sharing Defaults"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "How to share default configuration values among GNU programs."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8126 ./bashref.texi:8127
- #, no-wrap
- msgid "Operation Controls"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "Options recognized by the configuration program."
- msgstr ""
- #. type: section
- #: ./bashref.texi:7942 ./bashref.texi:8160 ./bashref.texi:8161
- #, no-wrap
- msgid "Optional Features"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:7942
- msgid "How to enable and disable optional features when building Bash."
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7946
- #, no-wrap
- msgid "installation"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7947
- #, no-wrap
- msgid "configuration"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7948
- #, no-wrap
- msgid "Bash installation"
- msgstr ""
- #. type: cindex
- #: ./bashref.texi:7949
- #, no-wrap
- msgid "Bash configuration"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7952
- msgid "These are installation instructions for Bash."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7954
- msgid "The simplest way to compile Bash is:"
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7962
- msgid ""
- "@code{cd} to the directory containing the source code and type "
- "@samp{./configure} to configure Bash for your system. If you're using "
- "@code{csh} on an old version of System V, you might need to type @samp{sh "
- "./configure} instead to prevent @code{csh} from trying to execute "
- "@code{configure} itself."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7966
- msgid ""
- "Running @code{configure} takes some time. While running, it prints messages "
- "telling which features it is checking for."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7970
- msgid ""
- "Type @samp{make} to compile Bash and build the @code{bashbug} bug reporting "
- "script."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7973
- msgid "Optionally, type @samp{make tests} to run the Bash test suite."
- msgstr ""
- #. type: enumerate
- #: ./bashref.texi:7977
- msgid ""
- "Type @samp{make install} to install @code{bash} and @code{bashbug}. This "
- "will also install the manual pages and Info file."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7995
- msgid ""
- "The @code{configure} shell script attempts to guess correct values for "
- "various system-dependent variables used during compilation. It uses those "
- "values to create a @file{Makefile} in each directory of the package (the top "
- "directory, the @file{builtins}, @file{doc}, and @file{support} directories, "
- "each directory under @file{lib}, and several others). It also creates a "
- "@file{config.h} file containing system-dependent definitions. Finally, it "
- "creates a shell script named @code{config.status} that you can run in the "
- "future to recreate the current configuration, a file @file{config.cache} "
- "that saves the results of its tests to speed up reconfiguring, and a file "
- "@file{config.log} containing compiler output (useful mainly for debugging "
- "@code{configure}). If at some point @file{config.cache} contains results "
- "you don't want to keep, you may remove or edit it."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:7998
- msgid ""
- "To find out more about the options and arguments that the @code{configure} "
- "script understands, type"
- msgstr ""
- #. type: example
- #: ./bashref.texi:8001
- #, no-wrap
- msgid "bash-2.04$ ./configure --help\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8005
- msgid "at the Bash prompt in your Bash source directory."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8011
- msgid ""
- "If you need to do unusual things to compile Bash, please try to figure out "
- "how @code{configure} could check whether or not to do them, and mail diffs "
- "or instructions to @email{bash-maintainers@@gnu.org} so they can be "
- "considered for the next release."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8018
- msgid ""
- "The file @file{configure.ac} is used to create @code{configure} by a program "
- "called Autoconf. You only need @file{configure.ac} if you want to change it "
- "or regenerate @code{configure} using a newer version of Autoconf. If you do "
- "this, make sure you are using Autoconf version 2.50 or newer."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8023
- msgid ""
- "You can remove the program binaries and object files from the source code "
- "directory by typing @samp{make clean}. To also remove the files that "
- "@code{configure} created (so you can compile Bash for a different kind of "
- "computer), type @samp{make distclean}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8032
- msgid ""
- "Some systems require unusual options for compilation or linking that the "
- "@code{configure} script does not know about. You can give @code{configure} "
- "initial values for variables by setting them in the environment. Using a "
- "Bourne-compatible shell, you can do that on the command line like this:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:8035
- #, no-wrap
- msgid "CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8038
- msgid "On systems that have the @code{env} program, you can do it like this:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:8041
- #, no-wrap
- msgid "env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8045
- msgid "The configuration process uses GCC to build Bash if it is available."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8059
- msgid ""
- "You can compile Bash for more than one kind of computer at the same time, by "
- "placing the object files for each architecture in their own directory. To "
- "do this, you must use a version of @code{make} that supports the "
- "@code{VPATH} variable, such as GNU @code{make}. @code{cd} to the directory "
- "where you want the object files and executables to go and run the "
- "@code{configure} script from the source directory. You may need to supply "
- "the @option{--srcdir=PATH} argument to tell @code{configure} where the "
- "source files are. @code{configure} automatically checks for the source code "
- "in the directory that @code{configure} is in and in `..'."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8065
- msgid ""
- "If you have to use a @code{make} that does not supports the @code{VPATH} "
- "variable, you can compile Bash for one architecture at a time in the source "
- "code directory. After you have installed Bash for one architecture, use "
- "@samp{make distclean} before reconfiguring for another architecture."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8071
- msgid ""
- "Alternatively, if your system supports symbolic links, you can use the "
- "@file{support/mkclone} script to create a build tree which has symbolic "
- "links back to each file in the source directory. Here's an example that "
- "creates a build directory in the current directory from a source directory "
- "@file{/usr/gnu/src/bash-2.0}:"
- msgstr ""
- #. type: example
- #: ./bashref.texi:8074
- #, no-wrap
- msgid "bash /usr/gnu/src/bash-2.0/support/mkclone -s /usr/gnu/src/bash-2.0 .\n"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8080
- msgid ""
- "The @code{mkclone} script requires Bash, so you must have already built Bash "
- "for at least one architecture before you can create build directories for "
- "other architectures."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8090
- msgid ""
- "By default, @samp{make install} will install into @file{/usr/local/bin}, "
- "@file{/usr/local/man}, etc. You can specify an installation prefix other "
- "than @file{/usr/local} by giving @code{configure} the option "
- "@option{--prefix=@var{PATH}}, or by specifying a value for the "
- "@code{DESTDIR} @samp{make} variable when running @samp{make install}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8097
- msgid ""
- "You can specify separate installation prefixes for architecture-specific "
- "files and architecture-independent files. If you give @code{configure} the "
- "option @option{--exec-prefix=@var{PATH}}, @samp{make install} will use "
- "@var{PATH} as the prefix for installing programs and libraries. "
- "Documentation and other data files will still use the regular prefix."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8109
- msgid ""
- "There may be some features @code{configure} can not figure out "
- "automatically, but need to determine by the type of host Bash will run on. "
- "Usually @code{configure} can figure that out, but if it prints a message "
- "saying it can not guess the host type, give it the @option{--host=TYPE} "
- "option. @samp{TYPE} can either be a short name for the system type, such as "
- "@samp{sun4}, or a canonical name with three fields: "
- "@samp{CPU-COMPANY-SYSTEM} (e.g., @samp{i386-unknown-freebsd4.2})."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8112
- msgid ""
- "See the file @file{support/config.sub} for the possible values of each "
- "field."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8125
- msgid ""
- "If you want to set default values for @code{configure} scripts to share, you "
- "can create a site shell script called @code{config.site} that gives default "
- "values for variables like @code{CC}, @code{cache_file}, and @code{prefix}. "
- "@code{configure} looks for @file{PREFIX/share/config.site} if it exists, "
- "then @file{PREFIX/etc/config.site} if it exists. Or, you can set the "
- "@code{CONFIG_SITE} environment variable to the location of the site script. "
- "A warning: the Bash @code{configure} looks for a site script, but not all "
- "@code{configure} scripts do."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8131
- msgid ""
- "@code{configure} recognizes the following options to control how it "
- "operates."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8134
- #, no-wrap
- msgid "--cache-file=@var{file}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8139
- msgid ""
- "Use and save the results of the tests in @var{file} instead of "
- "@file{./config.cache}. Set @var{file} to @file{/dev/null} to disable "
- "caching, for debugging @code{configure}."
- msgstr ""
- #. type: table
- #: ./bashref.texi:8142
- msgid "Print a summary of the options to @code{configure}, and exit."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8143
- #, no-wrap
- msgid "--quiet"
- msgstr ""
- #. type: itemx
- #: ./bashref.texi:8144
- #, no-wrap
- msgid "--silent"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8147
- msgid "Do not print messages saying which checks are being made."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8148
- #, no-wrap
- msgid "--srcdir=@var{dir}"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8151
- msgid ""
- "Look for the Bash source code in directory @var{dir}. Usually "
- "@code{configure} can determine that directory automatically."
- msgstr ""
- #. type: table
- #: ./bashref.texi:8155
- msgid ""
- "Print the version of Autoconf used to generate the @code{configure} script, "
- "and exit."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8159
- msgid ""
- "@code{configure} also accepts some other, not widely used, boilerplate "
- "options. @samp{configure --help} prints the complete list."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8170
- msgid ""
- "The Bash @code{configure} has a number of @option{--enable-@var{feature}} "
- "options, where @var{feature} indicates an optional part of Bash. There are "
- "also several @option{--with-@var{package}} options, where @var{package} is "
- "something like @samp{bash-malloc} or @samp{purify}. To turn off the default "
- "use of a package, use @option{--without-@var{package}}. To configure Bash "
- "without a feature that is enabled by default, use "
- "@option{--disable-@var{feature}}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8173
- msgid ""
- "Here is a complete list of the @option{--enable-} and @option{--with-} "
- "options that the Bash @code{configure} recognizes."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8175
- #, no-wrap
- msgid "--with-afs"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8177
- msgid "Define if you are using the Andrew File System from Transarc."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8178
- #, no-wrap
- msgid "--with-bash-malloc"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8188
- msgid ""
- "Use the Bash version of @code{malloc} in the directory @file{lib/malloc}. "
- "This is not the same @code{malloc} that appears in @sc{gnu} libc, but an "
- "older version originally derived from the 4.2 @sc{bsd} @code{malloc}. This "
- "@code{malloc} is very fast, but wastes some space on each allocation. This "
- "option is enabled by default. The @file{NOTES} file contains a list of "
- "systems for which this should be turned off, and @code{configure} disables "
- "this option automatically for a number of systems."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8189
- #, no-wrap
- msgid "--with-curses"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8193
- msgid ""
- "Use the curses library instead of the termcap library. This should be "
- "supplied if your system has an inadequate or incomplete termcap database."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8194
- #, no-wrap
- msgid "--with-gnu-malloc"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8196
- msgid "A synonym for @code{--with-bash-malloc}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8197
- #, no-wrap
- msgid "--with-installed-readline[=@var{PREFIX}]"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8212
- msgid ""
- "Define this to make Bash link with a locally-installed version of Readline "
- "rather than the version in @file{lib/readline}. This works only with "
- "Readline 5.0 and later versions. If @var{PREFIX} is @code{yes} or not "
- "supplied, @code{configure} uses the values of the make variables "
- "@code{includedir} and @code{libdir}, which are subdirectories of "
- "@code{prefix} by default, to find the installed version of Readline if it is "
- "not in the standard system include and library directories. If @var{PREFIX} "
- "is @code{no}, Bash links with the version in @file{lib/readline}. If "
- "@var{PREFIX} is set to any other value, @code{configure} treats it as a "
- "directory pathname and looks for the installed version of Readline in "
- "subdirectories of that directory (include files in "
- "@var{PREFIX}/@code{include} and the library in @var{PREFIX}/@code{lib})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8213
- #, no-wrap
- msgid "--with-purify"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8216
- msgid ""
- "Define this to use the Purify memory allocation checker from Rational "
- "Software."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8217
- #, no-wrap
- msgid "--enable-minimal-config"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8220
- msgid ""
- "This produces a shell with minimal features, close to the historical Bourne "
- "shell."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8224
- msgid ""
- "There are several @option{--enable-} options that alter how Bash is compiled "
- "and linked, rather than changing run-time features."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8226
- #, no-wrap
- msgid "--enable-largefile"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8231
- msgid ""
- "Enable support for "
- "@uref{http://www.sas.com/standards/large_file/x_open.20Mar96.html, large "
- "files} if the operating system requires special compiler options to build "
- "programs which can access large files. This is enabled by default, if the "
- "operating system provides large file support."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8232
- #, no-wrap
- msgid "--enable-profiling"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8235
- msgid ""
- "This builds a Bash binary that produces profiling information to be "
- "processed by @code{gprof} each time it is executed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8236
- #, no-wrap
- msgid "--enable-static-link"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8239
- msgid ""
- "This causes Bash to be linked statically, if @code{gcc} is being used. This "
- "could be used to build a version to use as root's shell."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8244
- msgid ""
- "The @samp{minimal-config} option can be used to disable all of the following "
- "options, but it is processed first, so individual options may be enabled "
- "using @samp{enable-@var{feature}}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8250
- msgid ""
- "All of the following options except for @samp{disabled-builtins}, "
- "@samp{direxpand-default}, and @samp{xpg-echo-default} are enabled by "
- "default, unless the operating system does not provide the necessary support."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8252
- #, no-wrap
- msgid "--enable-alias"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8255
- msgid ""
- "Allow alias expansion and include the @code{alias} and @code{unalias} "
- "builtins (@pxref{Aliases})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8256
- #, no-wrap
- msgid "--enable-arith-for-command"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8260
- msgid ""
- "Include support for the alternate form of the @code{for} command that "
- "behaves like the C language @code{for} statement (@pxref{Looping "
- "Constructs})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8261
- #, no-wrap
- msgid "--enable-array-variables"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8264
- msgid "Include support for one-dimensional array shell variables (@pxref{Arrays})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8265
- #, no-wrap
- msgid "--enable-bang-history"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8268
- msgid ""
- "Include support for @code{csh}-like history substitution (@pxref{History "
- "Interaction})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8269
- #, no-wrap
- msgid "--enable-brace-expansion"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8273
- msgid ""
- "Include @code{csh}-like brace expansion ( @code{b@{a,b@}c} @expansion{} "
- "@code{bac bbc} ). See @ref{Brace Expansion}, for a complete description."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8274
- #, no-wrap
- msgid "--enable-casemod-attributes"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8278
- msgid ""
- "Include support for case-modifying attributes in the @code{declare} builtin "
- "and assignment statements. Variables with the @var{uppercase} attribute, "
- "for example, will have their values converted to uppercase upon assignment."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8279
- #, no-wrap
- msgid "--enable-casemod-expansion"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8281
- msgid "Include support for case-modifying word expansions."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8282
- #, no-wrap
- msgid "--enable-command-timing"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8287
- msgid ""
- "Include support for recognizing @code{time} as a reserved word and for "
- "displaying timing statistics for the pipeline following @code{time} "
- "(@pxref{Pipelines}). This allows pipelines as well as shell builtins and "
- "functions to be timed."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8288
- #, no-wrap
- msgid "--enable-cond-command"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8291
- msgid ""
- "Include support for the @code{[[} conditional command. (@pxref{Conditional "
- "Constructs})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8292
- #, no-wrap
- msgid "--enable-cond-regexp"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8296
- msgid ""
- "Include support for matching @sc{posix} regular expressions using the "
- "@samp{=~} binary operator in the @code{[[} conditional command. "
- "(@pxref{Conditional Constructs})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8297
- #, no-wrap
- msgid "--enable-coprocesses"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8300
- msgid ""
- "Include support for coprocesses and the @code{coproc} reserved word "
- "(@pxref{Pipelines})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8301
- #, no-wrap
- msgid "--enable-debugger"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8303
- msgid "Include support for the bash debugger (distributed separately)."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8304
- #, no-wrap
- msgid "--enable-direxpand-default"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8308
- msgid ""
- "Cause the @code{direxpand} shell option (@pxref{The Shopt Builtin}) to be "
- "enabled by default when the shell starts. It is normally disabled by "
- "default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8309
- #, no-wrap
- msgid "--enable-directory-stack"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8313
- msgid ""
- "Include support for a @code{csh}-like directory stack and the @code{pushd}, "
- "@code{popd}, and @code{dirs} builtins (@pxref{The Directory Stack})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8314
- #, no-wrap
- msgid "--enable-disabled-builtins"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8319
- msgid ""
- "Allow builtin commands to be invoked via @samp{builtin xxx} even after "
- "@code{xxx} has been disabled using @samp{enable -n xxx}. See @ref{Bash "
- "Builtins}, for details of the @code{builtin} and @code{enable} builtin "
- "commands."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8320
- #, no-wrap
- msgid "--enable-dparen-arithmetic"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8323
- msgid ""
- "Include support for the @code{((@dots{}))} command (@pxref{Conditional "
- "Constructs})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8324
- #, no-wrap
- msgid "--enable-extended-glob"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8327
- msgid ""
- "Include support for the extended pattern matching features described above "
- "under @ref{Pattern Matching}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8328
- #, no-wrap
- msgid "--enable-extended-glob-default"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8331
- msgid ""
- "Set the default value of the @var{extglob} shell option described above "
- "under @ref{The Shopt Builtin} to be enabled."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8332
- #, no-wrap
- msgid "--enable-function-import"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8336
- msgid ""
- "Include support for importing function definitions exported by another "
- "instance of the shell from the environment. This option is enabled by "
- "default."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8337
- #, no-wrap
- msgid "--enable-glob-asciirange-default"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8342
- msgid ""
- "Set the default value of the @var{globasciiranges} shell option described "
- "above under @ref{The Shopt Builtin} to be enabled. This controls the "
- "behavior of character ranges when used in pattern matching bracket "
- "expressions."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8343
- #, no-wrap
- msgid "--enable-help-builtin"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8346
- msgid ""
- "Include the @code{help} builtin, which displays help on shell builtins and "
- "variables (@pxref{Bash Builtins})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8347
- #, no-wrap
- msgid "--enable-history"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8350
- msgid ""
- "Include command history and the @code{fc} and @code{history} builtin "
- "commands (@pxref{Bash History Facilities})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8351
- #, no-wrap
- msgid "--enable-job-control"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8354
- msgid ""
- "This enables the job control features (@pxref{Job Control}), if the "
- "operating system supports them."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8355
- #, no-wrap
- msgid "--enable-multibyte"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8358
- msgid ""
- "This enables support for multibyte characters if the operating system "
- "provides the necessary support."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8359
- #, no-wrap
- msgid "--enable-net-redirections"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8364
- msgid ""
- "This enables the special handling of filenames of the form "
- "@code{/dev/tcp/@var{host}/@var{port}} and "
- "@code{/dev/udp/@var{host}/@var{port}} when used in redirections "
- "(@pxref{Redirections})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8365
- #, no-wrap
- msgid "--enable-process-substitution"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8368
- msgid ""
- "This enables process substitution (@pxref{Process Substitution}) if the "
- "operating system provides the necessary support."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8369
- #, no-wrap
- msgid "--enable-progcomp"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8373
- msgid ""
- "Enable the programmable completion facilities (@pxref{Programmable "
- "Completion}). If Readline is not enabled, this option has no effect."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8374
- #, no-wrap
- msgid "--enable-prompt-string-decoding"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8379
- msgid ""
- "Turn on the interpretation of a number of backslash-escaped characters in "
- "the @env{$PS1}, @env{$PS2}, @env{$PS3}, and @env{$PS4} prompt strings. See "
- "@ref{Controlling the Prompt}, for a complete list of prompt string escape "
- "sequences."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8380
- #, no-wrap
- msgid "--enable-readline"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8383
- msgid ""
- "Include support for command-line editing and history with the Bash version "
- "of the Readline library (@pxref{Command Line Editing})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8384
- #, no-wrap
- msgid "--enable-restricted"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8388
- msgid ""
- "Include support for a @dfn{restricted shell}. If this is enabled, Bash, "
- "when called as @code{rbash}, enters a restricted mode. See @ref{The "
- "Restricted Shell}, for a description of restricted mode."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8389
- #, no-wrap
- msgid "--enable-select"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8392
- msgid ""
- "Include the @code{select} compound command, which allows the generation of "
- "simple menus (@pxref{Conditional Constructs})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8393
- #, no-wrap
- msgid "--enable-separate-helpfiles"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8396
- msgid ""
- "Use external files for the documentation displayed by the @code{help} "
- "builtin instead of storing the text internally."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8397
- #, no-wrap
- msgid "--enable-single-help-strings"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8402
- msgid ""
- "Store the text displayed by the @code{help} builtin as a single string for "
- "each help topic. This aids in translating the text to different languages. "
- "You may need to disable this if your compiler cannot handle very long string "
- "literals."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8403
- #, no-wrap
- msgid "--enable-strict-posix-default"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8405
- msgid "Make Bash @sc{posix}-conformant by default (@pxref{Bash POSIX Mode})."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8406
- #, no-wrap
- msgid "--enable-usg-echo-default"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8408
- msgid "A synonym for @code{--enable-xpg-echo-default}."
- msgstr ""
- #. type: item
- #: ./bashref.texi:8409
- #, no-wrap
- msgid "--enable-xpg-echo-default"
- msgstr ""
- #. type: table
- #: ./bashref.texi:8417
- msgid ""
- "Make the @code{echo} builtin expand backslash-escaped characters by default, "
- "without requiring the @option{-e} option. This sets the default value of "
- "the @code{xpg_echo} shell option to @code{on}, which makes the Bash "
- "@code{echo} behave more like the version specified in the Single Unix "
- "Specification, version 3. @xref{Bash Builtins}, for a description of the "
- "escape sequences that @code{echo} recognizes."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8426
- msgid ""
- "The file @file{config-top.h} contains C Preprocessor @samp{#define} "
- "statements for options which are not settable from @code{configure}. Some "
- "of these are not meant to be changed; beware of the consequences if you do. "
- "Read the comments associated with each definition for more information about "
- "its effect."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8436
- msgid ""
- "Please report all bugs you find in Bash. But first, you should make sure "
- "that it really is a bug, and that it appears in the latest version of Bash. "
- "The latest version of Bash is always available for FTP from "
- "@uref{ftp://ftp.gnu.org/pub/gnu/bash/}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8443
- msgid ""
- "Once you have determined that a bug actually exists, use the @code{bashbug} "
- "command to submit a bug report. If you have a fix, you are encouraged to "
- "mail that as well! Suggestions and `philosophical' bug reports may be mailed "
- "to @email{bug-bash@@gnu.org} or posted to the Usenet newsgroup "
- "@code{gnu.bash.bug}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8445
- msgid "All bug reports should include:"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8448
- msgid "The version number of Bash."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8450
- msgid "The hardware and operating system."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8452
- msgid "The compiler used to compile Bash."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8454
- msgid "A description of the bug behaviour."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8457
- msgid ""
- "A short script or `recipe' which exercises the bug and may be used to "
- "reproduce it."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8462
- msgid ""
- "@code{bashbug} inserts the first three items automatically into the template "
- "it provides for filing a bug report."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8465
- msgid "Please send all reports concerning this manual to @email{bug-bash@@gnu.org}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8479
- msgid ""
- "Bash implements essentially the same grammar, parameter and variable "
- "expansion, redirection, and quoting as the Bourne Shell. Bash uses the "
- "@sc{posix} standard as the specification of how these features are to be "
- "implemented. There are some differences between the traditional Bourne "
- "shell and Bash; this section quickly details the differences of "
- "significance. A number of these differences are explained in greater depth "
- "in previous sections. This section uses the version of @code{sh} included "
- "in SVR4.2 (the last version of the historical Bourne shell) as the baseline "
- "reference."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8485
- msgid ""
- "Bash is @sc{posix}-conformant, even where the @sc{posix} specification "
- "differs from traditional @code{sh} behavior (@pxref{Bash POSIX Mode})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8488
- msgid "Bash has multi-character invocation options (@pxref{Invoking Bash})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8492
- msgid ""
- "Bash has command-line editing (@pxref{Command Line Editing}) and the "
- "@code{bind} builtin."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8498
- msgid ""
- "Bash provides a programmable word completion mechanism (@pxref{Programmable "
- "Completion}), and builtin commands @code{complete}, @code{compgen}, and "
- "@code{compopt}, to manipulate it."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8504
- msgid ""
- "Bash has command history (@pxref{Bash History Facilities}) and the "
- "@code{history} and @code{fc} builtins to manipulate it. The Bash history "
- "list maintains timestamp information and uses the value of the "
- "@code{HISTTIMEFORMAT} variable to display it."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8508
- msgid ""
- "Bash implements @code{csh}-like history expansion (@pxref{History "
- "Interaction})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8514
- msgid ""
- "Bash has one-dimensional array variables (@pxref{Arrays}), and the "
- "appropriate variable expansions and assignment syntax to use them. Several "
- "of the Bash builtins take options to act on arrays. Bash provides a number "
- "of built-in array variables."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8519
- msgid ""
- "The @code{$'@dots{}'} quoting syntax, which expands ANSI-C backslash-escaped "
- "characters in the text between the single quotes, is supported "
- "(@pxref{ANSI-C Quoting})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8526
- msgid ""
- "Bash supports the @code{$\"@dots{}\"} quoting syntax to do locale-specific "
- "translation of the characters between the double quotes. The @option{-D}, "
- "@option{--dump-strings}, and @option{--dump-po-strings} invocation options "
- "list the translatable strings found in a script (@pxref{Locale "
- "Translation})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8533
- msgid ""
- "Bash implements the @code{!} keyword to negate the return value of a "
- "pipeline (@pxref{Pipelines}). Very useful when an @code{if} statement needs "
- "to act only if a test fails. The Bash @samp{-o pipefail} option to "
- "@code{set} will cause a pipeline to return a failure status if any command "
- "fails."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8538
- msgid ""
- "Bash has the @code{time} reserved word and command timing "
- "(@pxref{Pipelines}). The display of the timing statistics may be controlled "
- "with the @env{TIMEFORMAT} variable."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8542
- msgid ""
- "Bash implements the @code{for (( @var{expr1} ; @var{expr2} ; @var{expr3} ))} "
- "arithmetic for command, similar to the C language (@pxref{Looping "
- "Constructs})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8546
- msgid ""
- "Bash includes the @code{select} compound command, which allows the "
- "generation of simple menus (@pxref{Conditional Constructs})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8551
- msgid ""
- "Bash includes the @code{[[} compound command, which makes conditional "
- "testing part of the shell grammar (@pxref{Conditional Constructs}), "
- "including optional regular expression matching."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8555
- msgid ""
- "Bash provides optional case-insensitive matching for the @code{case} and "
- "@code{[[} constructs."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8559
- msgid ""
- "Bash includes brace expansion (@pxref{Brace Expansion}) and tilde expansion "
- "(@pxref{Tilde Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8563
- msgid ""
- "Bash implements command aliases and the @code{alias} and @code{unalias} "
- "builtins (@pxref{Aliases})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8568
- msgid ""
- "Bash provides shell arithmetic, the @code{((} compound command "
- "(@pxref{Conditional Constructs}), and arithmetic expansion (@pxref{Shell "
- "Arithmetic})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8574
- msgid ""
- "Variables present in the shell's initial environment are automatically "
- "exported to child processes. The Bourne shell does not normally do this "
- "unless the variables are explicitly marked using the @code{export} command."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8578
- msgid ""
- "Bash supports the @samp{+=} assignment operator, which appends to the value "
- "of the variable named on the left hand side."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8583
- msgid ""
- "Bash includes the @sc{posix} pattern removal @samp{%}, @samp{#}, @samp{%%} "
- "and @samp{##} expansions to remove leading or trailing substrings from "
- "variable values (@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8587
- msgid ""
- "The expansion @code{$@{#xx@}}, which returns the length of @code{$@{xx@}}, "
- "is supported (@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8593
- msgid ""
- "The expansion @code{$@{var:}@var{offset}@code{[:}@var{length}@code{]@}}, "
- "which expands to the substring of @code{var}'s value of length @var{length}, "
- "beginning at @var{offset}, is present (@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8599
- msgid ""
- "The expansion "
- "@code{$@{var/[/]}@var{pattern}@code{[/}@var{replacement}@code{]@}}, which "
- "matches @var{pattern} and replaces it with @var{replacement} in the value of "
- "@code{var}, is available (@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8604
- msgid ""
- "The expansion @code{$@{!@var{prefix}*@}} expansion, which expands to the "
- "names of all shell variables whose names begin with @var{prefix}, is "
- "available (@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8608
- msgid ""
- "Bash has @var{indirect} variable expansion using @code{$@{!word@}} "
- "(@pxref{Shell Parameter Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8612
- msgid ""
- "Bash can expand positional parameters beyond @code{$9} using "
- "@code{$@{@var{num}@}}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8618
- msgid ""
- "The @sc{posix} @code{$()} form of command substitution is implemented "
- "(@pxref{Command Substitution}), and preferred to the Bourne shell's "
- "@code{``} (which is also implemented for backwards compatibility)."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8621
- msgid "Bash has process substitution (@pxref{Process Substitution})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8629
- msgid ""
- "Bash automatically assigns variables that provide information about the "
- "current user (@env{UID}, @env{EUID}, and @env{GROUPS}), the current host "
- "(@env{HOSTTYPE}, @env{OSTYPE}, @env{MACHTYPE}, and @env{HOSTNAME}), and the "
- "instance of Bash that is running (@env{BASH}, @env{BASH_VERSION}, and "
- "@env{BASH_VERSINFO}). @xref{Bash Variables}, for details."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8634
- msgid ""
- "The @env{IFS} variable is used to split only the results of expansion, not "
- "all words (@pxref{Word Splitting}). This closes a longstanding shell "
- "security hole."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8639
- msgid ""
- "The filename expansion bracket expression code uses @samp{!} and @samp{^} to "
- "negate the set of characters between the brackets. The Bourne shell uses "
- "only @samp{!}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8644
- msgid ""
- "Bash implements the full set of @sc{posix} filename expansion operators, "
- "including @var{character classes}, @var{equivalence classes}, and "
- "@var{collating symbols} (@pxref{Filename Expansion})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8648
- msgid ""
- "Bash implements extended pattern matching features when the @code{extglob} "
- "shell option is enabled (@pxref{Pattern Matching})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8652
- msgid ""
- "It is possible to have a variable and a function with the same name; "
- "@code{sh} does not separate the two name spaces."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8657
- msgid ""
- "Bash functions are permitted to have local variables using the @code{local} "
- "builtin, and thus useful recursive functions may be written (@pxref{Bash "
- "Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8664
- msgid ""
- "Variable assignments preceding commands affect only that command, even "
- "builtins and functions (@pxref{Environment}). In @code{sh}, all variable "
- "assignments preceding commands are global unless the command is executed "
- "from the file system."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8668
- msgid ""
- "Bash performs filename expansion on filenames specified as operands to input "
- "and output redirection operators (@pxref{Redirections})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8674
- msgid ""
- "Bash contains the @samp{<>} redirection operator, allowing a file to be "
- "opened for both reading and writing, and the @samp{&>} redirection operator, "
- "for directing standard output and standard error to the same file "
- "(@pxref{Redirections})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8678
- msgid ""
- "Bash includes the @samp{<<<} redirection operator, allowing a string to be "
- "used as the standard input to a command."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8682
- msgid ""
- "Bash implements the @samp{[n]<&@var{word}} and @samp{[n]>&@var{word}} "
- "redirection operators, which move one file descriptor to another."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8686
- msgid ""
- "Bash treats a number of filenames specially when they are used in "
- "redirection operators (@pxref{Redirections})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8690
- msgid ""
- "Bash can open network connections to arbitrary machines and services with "
- "the redirection operators (@pxref{Redirections})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8695
- msgid ""
- "The @code{noclobber} option is available to avoid overwriting existing files "
- "with output redirection (@pxref{The Set Builtin}). The @samp{>|} "
- "redirection operator may be used to override @code{noclobber}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8700
- msgid ""
- "The Bash @code{cd} and @code{pwd} builtins (@pxref{Bourne Shell Builtins}) "
- "each take @option{-L} and @option{-P} options to switch between logical and "
- "physical modes."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8705
- msgid ""
- "Bash allows a function to override a builtin with the same name, and "
- "provides access to that builtin's functionality within the function via the "
- "@code{builtin} and @code{command} builtins (@pxref{Bash Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8709
- msgid ""
- "The @code{command} builtin allows selective disabling of functions when "
- "command lookup is performed (@pxref{Bash Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8713
- msgid ""
- "Individual builtins may be enabled or disabled using the @code{enable} "
- "builtin (@pxref{Bash Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8719
- msgid ""
- "The Bash @code{exec} builtin takes additional options that allow users to "
- "control the contents of the environment passed to the executed command, and "
- "what the zeroth argument to the command is to be (@pxref{Bourne Shell "
- "Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8723
- msgid ""
- "Shell functions may be exported to children via the environment using "
- "@code{export -f} (@pxref{Shell Functions})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8731
- msgid ""
- "The Bash @code{export}, @code{readonly}, and @code{declare} builtins can "
- "take a @option{-f} option to act on shell functions, a @option{-p} option to "
- "display variables with various attributes set in a format that can be used "
- "as shell input, a @option{-n} option to remove various variable attributes, "
- "and @samp{name=value} arguments to set variable attributes and values "
- "simultaneously."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8737
- msgid ""
- "The Bash @code{hash} builtin allows a name to be associated with an "
- "arbitrary filename, even when that filename cannot be found by searching the "
- "@env{$PATH}, using @samp{hash -p} (@pxref{Bourne Shell Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8741
- msgid ""
- "Bash includes a @code{help} builtin for quick reference to shell facilities "
- "(@pxref{Bash Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8745
- msgid ""
- "The @code{printf} builtin is available to display formatted output "
- "(@pxref{Bash Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8761
- msgid ""
- "The Bash @code{read} builtin (@pxref{Bash Builtins}) will read a line "
- "ending in @samp{\\} with the @option{-r} option, and will use the "
- "@env{REPLY} variable as a default if no non-option arguments are supplied. "
- "The Bash @code{read} builtin also accepts a prompt string with the "
- "@option{-p} option and will use Readline to obtain the line when given the "
- "@option{-e} option. The @code{read} builtin also has additional options to "
- "control input: the @option{-s} option will turn off echoing of input "
- "characters as they are read, the @option{-t} option will allow @code{read} "
- "to time out if input does not arrive within a specified number of seconds, "
- "the @option{-n} option will allow reading only a specified number of "
- "characters rather than a full line, and the @option{-d} option will read "
- "until a particular character rather than newline."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8766
- msgid ""
- "The @code{return} builtin may be used to abort execution of scripts executed "
- "with the @code{.} or @code{source} builtins (@pxref{Bourne Shell Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8771
- msgid ""
- "Bash includes the @code{shopt} builtin, for finer control of shell optional "
- "capabilities (@pxref{The Shopt Builtin}), and allows these options to be set "
- "and unset at shell invocation (@pxref{Invoking Bash})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8775
- msgid ""
- "Bash has much more optional behavior controllable with the @code{set} "
- "builtin (@pxref{The Set Builtin})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8780
- msgid ""
- "The @samp{-x} (@option{xtrace}) option displays commands other than simple "
- "commands when performing an execution trace (@pxref{The Set Builtin})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8785
- msgid ""
- "The @code{test} builtin (@pxref{Bourne Shell Builtins}) is slightly "
- "different, as it implements the @sc{posix} algorithm, which specifies the "
- "behavior based on the number of arguments."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8791
- msgid ""
- "Bash includes the @code{caller} builtin, which displays the context of any "
- "active subroutine call (a shell function or a script executed with the "
- "@code{.} or @code{source} builtins). This supports the bash debugger."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8804
- msgid ""
- "The @code{trap} builtin (@pxref{Bourne Shell Builtins}) allows a "
- "@code{DEBUG} pseudo-signal specification, similar to @code{EXIT}. Commands "
- "specified with a @code{DEBUG} trap are executed before every simple command, "
- "@code{for} command, @code{case} command, @code{select} command, every "
- "arithmetic @code{for} command, and before the first command executes in a "
- "shell function. The @code{DEBUG} trap is not inherited by shell functions "
- "unless the function has been given the @code{trace} attribute or the "
- "@code{functrace} option has been enabled using the @code{shopt} builtin. "
- "The @code{extdebug} shell option has additional effects on the @code{DEBUG} "
- "trap."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8811
- msgid ""
- "The @code{trap} builtin (@pxref{Bourne Shell Builtins}) allows an @code{ERR} "
- "pseudo-signal specification, similar to @code{EXIT} and @code{DEBUG}. "
- "Commands specified with an @code{ERR} trap are executed after a simple "
- "command fails, with a few exceptions. The @code{ERR} trap is not inherited "
- "by shell functions unless the @code{-o errtrace} option to the @code{set} "
- "builtin is enabled."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8821
- msgid ""
- "The @code{trap} builtin (@pxref{Bourne Shell Builtins}) allows a "
- "@code{RETURN} pseudo-signal specification, similar to @code{EXIT} and "
- "@code{DEBUG}. Commands specified with an @code{RETURN} trap are executed "
- "before execution resumes after a shell function or a shell script executed "
- "with @code{.} or @code{source} returns. The @code{RETURN} trap is not "
- "inherited by shell functions unless the function has been given the "
- "@code{trace} attribute or the @code{functrace} option has been enabled using "
- "the @code{shopt} builtin."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8825
- msgid ""
- "The Bash @code{type} builtin is more extensive and gives more information "
- "about the names it finds (@pxref{Bash Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8830
- msgid ""
- "The Bash @code{umask} builtin permits a @option{-p} option to cause the "
- "output to be displayed in the form of a @code{umask} command that may be "
- "reused as input (@pxref{Bourne Shell Builtins})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8837
- msgid ""
- "Bash implements a @code{csh}-like directory stack, and provides the "
- "@code{pushd}, @code{popd}, and @code{dirs} builtins to manipulate it "
- "(@pxref{The Directory Stack}). Bash also makes the directory stack visible "
- "as the value of the @env{DIRSTACK} shell variable."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8841
- msgid ""
- "Bash interprets special backslash-escaped characters in the prompt strings "
- "when interactive (@pxref{Controlling the Prompt})."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8845
- msgid ""
- "The Bash restricted mode is more useful (@pxref{The Restricted Shell}); the "
- "SVR4.2 shell restricted mode is too limited."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8851
- msgid ""
- "The @code{disown} builtin can remove a job from the internal shell job table "
- "(@pxref{Job Control Builtins}) or suppress the sending of @code{SIGHUP} to a "
- "job when the shell exits as the result of a @code{SIGHUP}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8855
- msgid ""
- "Bash includes a number of features to support a separate debugger for shell "
- "scripts."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8859
- msgid ""
- "The SVR4.2 shell has two privilege-related builtins (@code{mldmode} and "
- "@code{priv}) not present in Bash."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8862
- msgid "Bash does not have the @code{stop} or @code{newgrp} builtins."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8865
- msgid "Bash does not use the @env{SHACCT} variable or perform shell accounting."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8869
- msgid ""
- "The SVR4.2 @code{sh} uses a @env{TIMEOUT} variable like Bash uses "
- "@env{TMOUT}."
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8874
- msgid "More features unique to Bash may be found in @ref{Bash Features}."
- msgstr ""
- #. type: appendixsec
- #: ./bashref.texi:8876
- #, no-wrap
- msgid "Implementation Differences From The SVR4.2 Shell"
- msgstr ""
- #. type: Plain text
- #: ./bashref.texi:8880
- msgid ""
- "Since Bash is a completely new implementation, it does not suffer from many "
- "of the limitations of the SVR4.2 shell. For instance:"
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8887
- msgid ""
- "Bash does not fork a subshell when redirecting into or out of a shell "
- "control structure such as an @code{if} or @code{while} statement."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8892
- msgid ""
- "Bash does not allow unbalanced quotes. The SVR4.2 shell will silently "
- "insert a needed closing quote at @code{EOF} under certain circumstances. "
- "This can be the cause of some hard-to-find errors."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8898
- msgid ""
- "The SVR4.2 shell uses a baroque memory management scheme based on trapping "
- "@code{SIGSEGV}. If the shell is started from a process with @code{SIGSEGV} "
- "blocked (e.g., by using the @code{system()} C library function call), it "
- "misbehaves badly."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8905
- msgid ""
- "In a questionable attempt at security, the SVR4.2 shell, when invoked "
- "without the @option{-p} option, will alter its real and effective @sc{uid} "
- "and @sc{gid} if they are less than some magic threshold value, commonly "
- "100. This can lead to unexpected results."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8909
- msgid ""
- "The SVR4.2 shell does not allow users to trap @code{SIGSEGV}, "
- "@code{SIGALRM}, or @code{SIGCHLD}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8913
- msgid ""
- "The SVR4.2 shell does not allow the @env{IFS}, @env{MAILCHECK}, @env{PATH}, "
- "@env{PS1}, or @env{PS2} variables to be unset."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8917
- msgid "The SVR4.2 shell treats @samp{^} as the undocumented equivalent of @samp{|}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8923
- msgid ""
- "Bash allows multiple option arguments when it is invoked (@code{-x -v}); the "
- "SVR4.2 shell allows only one option argument (@code{-xv}). In fact, some "
- "versions of the shell dump core if the second argument begins with a "
- "@samp{-}."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8928
- msgid ""
- "The SVR4.2 shell exits a script if any builtin fails; Bash exits a script "
- "only if one of the @sc{posix} special builtins fails, and only for certain "
- "failures, as enumerated in the @sc{posix} standard."
- msgstr ""
- #. type: itemize
- #: ./bashref.texi:8932
- msgid ""
- "The SVR4.2 shell behaves differently when invoked as @code{jsh} (it turns on "
- "job control)."
- msgstr ""
- #. type: include
- #: ./bashref.texi:8937
- #, no-wrap
- msgid "fdl.texi"
- msgstr ""
- #. type: node
- #: ./bashref.texi:8950 ./bashref.texi:8952
- #, no-wrap
- msgid "Builtin Index"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:8950
- msgid "Index of Bash builtin commands."
- msgstr ""
- #. type: node
- #: ./bashref.texi:8950 ./bashref.texi:8956
- #, no-wrap
- msgid "Reserved Word Index"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:8950
- msgid "Index of Bash reserved words."
- msgstr ""
- #. type: node
- #: ./bashref.texi:8950 ./bashref.texi:8960
- #, no-wrap
- msgid "Variable Index"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:8950
- msgid "Quick reference helps you find the variable you want."
- msgstr ""
- #. type: appendixsec
- #: ./bashref.texi:8950 ./bashref.texi:8964 ./bashref.texi:8965
- #, no-wrap
- msgid "Function Index"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:8950
- msgid "Index of bindable Readline functions."
- msgstr ""
- #. type: appendixsec
- #: ./bashref.texi:8950 ./bashref.texi:8968 ./bashref.texi:8969
- #, no-wrap
- msgid "Concept Index"
- msgstr ""
- #. type: menuentry
- #: ./bashref.texi:8950
- msgid "General index for concepts described in this manual."
- msgstr ""
- #. type: appendixsec
- #: ./bashref.texi:8953
- #, no-wrap
- msgid "Index of Shell Builtin Commands"
- msgstr ""
- #. type: appendixsec
- #: ./bashref.texi:8957
- #, no-wrap
- msgid "Index of Shell Reserved Words"
- msgstr ""
- #. type: appendixsec
- #: ./bashref.texi:8961
- #, no-wrap
- msgid "Parameter and Variable Index"
- msgstr ""
|