Bash - Linux Command - Unix Command

ENW

bash - GNU Bourne-Again SHell

SYNOPSIS

bash [opsiynau] [ffeil]

DISGRIFIAD

Mae Bash yn gyfieithydd iaith gorchymyn anghydnaws sy'n gwneud gorchmynion yn darllen o'r mewnbwn safonol neu o ffeil. Mae Bash hefyd yn cynnwys nodweddion defnyddiol o'r cregyn Korn a C ( ksh a csh ).

Bwriedir i Bash fod yn weithrediad cydymffurfio o fanyleb IEEE POSIX Shell and Tools (Gweithgor IEEE 1003.2).

OPSIYNAU

Yn ogystal â'r opsiynau gragen sengl-gymeriad a ddogfennir yn y disgrifiad o'r gorchymyn adeiledig set , mae Bash yn dehongli'r opsiynau canlynol pan gaiff ei weithredu:

-c llinyn

Os yw'r opsiwn -c yn bresennol, yna darllenir gorchmynion o linyn . Os oes dadleuon ar ôl y llinyn , fe'u rhoddir i'r paramedrau gosodiadol, gan ddechrau gyda $ 0 .

-i

Os yw'r opsiwn -i yn bresennol, mae'r gragen yn rhyngweithiol .

-l

Gwnewch bash weithredu fel pe bai wedi cael ei ddefnyddio fel cragen mewngofnodi (gweler INVOCATION isod).

-r

Os yw'r opsiwn -r yn bresennol, bydd y gragen yn dod yn gyfyngedig (gweler y SHELL CYFYNGEDIG isod).

-s

Os yw'r opsiwn -s yn bresennol, neu os nad oes dadleuon yn parhau ar ôl prosesu opsiynau, yna darllenir gorchmynion o'r mewnbwn safonol. Mae'r opsiwn hwn yn caniatáu gosod y paramedrau positif wrth ymosod ar gragen rhyngweithiol.

-D

Mae rhestr o'r holl linellau a ddyfynnwyd yn ddwbl a ragwelwyd gan $ yn cael eu hargraffu ar y allbwn safonol. Dyma'r tannau sy'n destun cyfieithu iaith pan nad yw'r lleoliad presennol C neu POSIX . Mae hyn yn awgrymu yr opsiwn -n ; ni fydd unrhyw orchmynion yn cael eu gweithredu.

[- +] O [ shopt_option ]

shopt_option yw un o'r opsiynau cregyn a dderbynnir gan y siop a adeiladwyd (gweler SHELL BUILTIN COMMANDS isod). Os yw shopt_option yn bresennol, -O gosodwch werth yr opsiwn hwnnw; + O diystyru ef. Os na chyflenwir shopt_option , mae enwau a gwerthoedd yr opsiynau cragen a dderbynnir gan siop yn cael eu hargraffu ar yr allbwn safonol. Os yw'r opsiwn invocation yn + O , mae'r allbwn wedi'i arddangos mewn fformat y gellir ei ailddefnyddio fel mewnbwn.

-

A - yn nodi diwedd yr opsiynau ac yn analluogi prosesu opsiynau pellach. Unrhyw ddadleuon ar ôl - yn cael eu trin fel enwau ffeiliau a dadleuon. Mae dadl o - yn gyfwerth â - .

Mae Bash hefyd yn dehongli nifer o opsiynau aml-gymeriad. Rhaid i'r opsiynau hyn ymddangos ar y llinell orchymyn cyn i'r opsiynau un-gymeriad gael eu cydnabod.

--dump-po-strings

Cyfwerth â -D , ond mae'r allbwn yn y ffeil GNU gettext po (gwrthrych cludadwy) fformat.

--dump-llinynnau

Cyfwerth â -D .

- help

Dangos neges defnydd ar allbwn safonol ac ymadael yn llwyddiannus.

- ffeil-ffeil ffeil

- ffeil ffeil

Gwneud gorchmynion o ffeil yn lle'r ffeil cychwynnol personol safonol ~ / .bashrc os yw'r gragen yn rhyngweithiol (gweler ENVOCATION isod).

--Mewngofnodi

Cyfwerth â -l .

- nythu

Peidiwch â defnyddio llyfrgell readline GNU i ddarllen llinellau gorchymyn pan fo'r gragen yn rhyngweithiol.

--noprofile

Peidiwch â darllen naill ai'r ffeil cychwyn / etc / proffil system neu unrhyw un o'r ffeiliau cychwynnol personol ~ / .bash_profile , ~ / .bash_login , neu ~ / .profile . Yn anffodus, mae bash yn darllen y ffeiliau hyn pan gaiff ei ddefnyddio fel cragen mewngofnodi (gweler ENVOCATION isod).

--norc

Peidiwch â darllen a gweithredu'r ffeil cychwynnol personol ~ / .bashrc os yw'r gragen yn rhyngweithiol. Mae'r opsiwn hwn ymlaen yn ddiofyn os yw'r gragen yn cael ei ddefnyddio fel s .

--posix

Newid ymddygiad bash lle mae'r gweithrediad diofyn yn wahanol i safon POSIX 1003.2 i gyd-fynd â'r safon ( modd posix ).

- wedi'i restru

Daw'r cragen yn gyfyngedig (gweler SHELL RESTRICTED isod).

--rpm-angen

Cynhyrchwch y rhestr o ffeiliau sydd eu hangen ar gyfer y sgript gragen i redeg. Mae hyn yn awgrymu '-n' ac mae'n ddarostyngedig i'r un cyfyngiadau wrth lunio gwirio gwall amser yn gwirio; Ni cheir parsurau cefn, [] profion, ac evalau er mwyn colli rhai dibyniaethau. --verbose Cyfwerth â -v .

- gwrthwynebiad

Dangoswch fersiwn o wybodaeth ar gyfer yr enghraifft hon o bash ar yr allbwn safonol ac ymadael yn llwyddiannus.

ARGUMENTS

Os bydd dadleuon yn parhau ar ôl prosesu opsiynau, ac nid yw'r opsiwn -c na'r -s wedi ei ddarparu, tybir mai dadl gyntaf yw enw ffeil sy'n cynnwys gorchmynion cregyn. Os defnyddir bash yn y ffasiwn hon, gosodir $ 0 i enw'r ffeil, a gosodir y paramedrau positional i'r dadleuon sy'n weddill. Mae Bash yn darllen ac yn gorchmynion gorchmynion o'r ffeil hwn, ac yna'n dod allan. Statws ymadael Bash yw statws ymadael y gorchymyn olaf a weithredir yn y sgript. Os nad oes unrhyw orchmynion yn cael eu gweithredu, y statws ymadael yw 0. Ymgais i agor y ffeil yn y cyfeiriadur cyfredol, ac os na ddarganfyddir ffeil, yna mae'r gragen yn chwilio'r cyfeirlyfrau yn PATH ar gyfer y sgript.

GORCHYMYN

Mae cragen mewngofnodi yn un sydd â chymeriad cyntaf sero yw - neu un a ddechreuodd gyda'r opsiwn --login .

Dechreuwyd gragen rhyngweithiol heb ddadleuon nad ydynt yn opsiwn ac heb yr opsiwn -c y mae ei fewnbwn a'i allbwn safonol yn gysylltiedig â therfynellau (fel y penderfynir gan isatty (3)), neu dechreuodd un gyda'r opsiwn -i . Pennir PS1 a $ - yn cynnwys fi os yw bash yn rhyngweithiol, gan ganiatáu sgript cregyn neu ffeil cychwyn i brofi'r cyflwr hwn.

Mae'r paragraffau canlynol yn disgrifio sut mae bash yn gweithredu ei ffeiliau cychwyn. Os oes unrhyw un o'r ffeiliau yn bodoli ond na ellir eu darllen, mae adroddiadau bash yn gamgymeriad. Caiff Tildes eu hehangu mewn enwau ffeiliau fel y disgrifir isod o dan Ehangu Tilde yn yr adran EXPANSION .

Pan gaiff bash ei ddefnyddio fel cragen mewngofnodi rhyngweithiol, neu fel gragen nad yw'n rhyngweithiol gyda'r opsiwn --login , mae'n darllen yn gyntaf ac yn gorchmynion gorchmynion o'r ffeil / etc / proffil , os yw'r ffeil yn bodoli. Ar ôl darllen y ffeil honno, mae'n edrych am ~ / .bash_profile , ~ / .bash_login , a ~ / .profile , yn y drefn honno, ac yn darllen ac yn gweithredu gorchmynion o'r un cyntaf sy'n bodoli ac yn ddarllenadwy. Gall yr opsiwn --noprofile gael ei ddefnyddio pan fydd y gragen yn dechrau atal yr ymddygiad hwn.

Pan fydd cragen mewngofnodi yn dod allan, bash yn darllen ac yn gorchmynion gorchmynion o'r ffeil ~ / .bash_logout , os yw'n bodoli.

Pan ddechreuwyd gragen rhyngweithiol nad yw'n gregen mewngofnodi, mae bash yn darllen ac yn gorchmynion gorchmynion o ~ / .bashrc , os yw'r ffeil honno'n bodoli. Gellid atal hyn rhag defnyddio'r opsiwn --norc . Bydd yr opsiwn ffeil - rcfile yn gorfodi bash i ddarllen a gweithredu gorchmynion o ffeil yn hytrach na ~ / .bashrc .

Pan ddechreuir bash yn rhyngweithiol, i redeg sgript cregyn, er enghraifft, mae'n edrych am y newid BASH_ENV yn yr amgylchedd, yn ehangu ei werth os yw'n ymddangos yno, ac yn defnyddio'r gwerth ehangedig fel enw ffeil i'w ddarllen a'i weithredu . Mae Bash yn ymddwyn fel pe bai'r gorchymyn canlynol yn cael ei weithredu:

os [-n "$ BASH_ENV"]; yna. "$ BASH_ENV"; fi

ond nid yw gwerth newidyn PATH yn cael ei ddefnyddio i chwilio am enw'r ffeil.

Os defnyddir bash gyda'r enw sh , mae'n ceisio dynwared ymddygiad cychwynol fersiynau hanesyddol o sh mor agos â phosibl, tra'n cydymffurfio â safon POSIX hefyd. Pan gaiff ei ddefnyddio fel cragen mewngofnodi rhyngweithiol, neu gragen nad yw'n rhyngweithiol gyda'r opsiwn --login , mae'n gyntaf yn ceisio darllen a gweithredu gorchmynion o / etc / proffil a ~ / .profile , yn y drefn honno. Gellir defnyddio'r opsiwn - noprofile i atal yr ymddygiad hwn. Pan gaiff ei galw fel cregyn rhyngweithiol gyda'r enw sh , bash yn edrych ar yr ENV amrywiol, yn ehangu ei werth os yw'n cael ei ddiffinio, ac yn defnyddio'r gwerth ehangedig fel enw ffeil i'w ddarllen a'i weithredu. Gan fod cragen wedi'i ddefnyddio gan nad yw sh yn ceisio darllen a gweithredu gorchmynion o unrhyw ffeiliau cychwyn eraill, nid yw'r opsiwn --rcfile yn cael unrhyw effaith. Nid yw gragen nad yw'n rhyngweithiol sy'n cael ei ddefnyddio gyda'r enw sh yn ceisio darllen unrhyw ffeiliau cychwyn eraill. Pan gaiff ei ddefnyddio fel sh , mae bash yn mynd i mewn i'r modd posix ar ôl darllen y ffeiliau cychwyn.

Pan ddechreuwyd bash yn y modd posix , fel gyda'r opsiwn llinell orchymyn --posix , mae'n dilyn safon POSIX ar gyfer ffeiliau cychwyn. Yn y modd hwn, mae cregyn rhyngweithiol yn ehangu'r newidyn ENV ac mae'r gorchmynion yn cael eu darllen a'u gweithredu o'r ffeil y mae ei enw yn y gwerth ehangedig. Ni ddarllenir unrhyw ffeiliau cychwyn eraill.

Mae Bash yn ceisio penderfynu pa bryd y mae'n cael ei redeg gan y daemon cragen anghysbell, fel arfer rshd . Os yw Bash yn penderfynu ei fod yn cael ei redeg gan rshd , mae'n darllen ac yn gweithredu gorchmynion o ~ / .bashrc , os yw'r ffeil yn bodoli ac y gellir ei darllen. Ni fydd yn gwneud hyn os bydd yn cael ei weithredu fel s . Gellir defnyddio'r opsiwn --norc i atal yr ymddygiad hwn, a gellir defnyddio'r opsiwn - rcfile i orfodi ffeil arall i'w ddarllen, ond nid yw rshd yn gyffredinol yn galw'r gragen gyda'r opsiynau hynny neu yn caniatáu iddynt gael eu penodi.

Os dechreuir y gragen gyda'r iddefnydd defnyddiwr (grŵp) effeithiol ddim yn gyfartal â'r iddi defnyddiwr go iawn (grŵp), ac nid yw'r opsiwn -p yn cael ei gyflenwi, ni ddarllenir ffeiliau cychwyn, ni chaiff swyddogaethau cregyn eu hetifeddu o'r amgylchedd, mae'r SHELLOPTS yn anwybydd, os yw'n ymddangos yn yr amgylchedd, yn cael ei anwybyddu, ac mae'r defnyddiwr defnyddiwr effeithiol yn cael ei osod i'r rhif defnyddiwr go iawn. Os yw'r opsiwn -p yn cael ei gyflenwi wrth oruchwylio, mae'r ymddygiad cychwyn yn yr un peth, ond nid yw'r rhif defnyddiwr effeithiol yn cael ei ailosod.

DIFFINIADAU

Defnyddir y diffiniadau canlynol trwy weddill y ddogfen hon.

yn wag

Lle neu dab.

gair

Dilyniant o gymeriadau a ystyrir fel un uned gan y gragen. Hefyd yn cael ei adnabod fel token .

enw

Gair sy'n cynnwys dim ond o gymeriadau alffaniwmerig ac mae'n tanlinellu, ac yn dechrau gyda chymeriad albabetig neu dan bwysau. Cyfeirir ato hefyd fel dynodwr .

metacharacter

Cymeriad sydd, pan na'i dyfynnir, yn gwahanu geiriau. Un o'r canlynol:

| &; () <> tab

gweithredwr rheoli

Tocyn sy'n perfformio swyddogaeth reoli. Dyma un o'r symbolau canlynol:

| & &&; ;; () |

GEIRIAU ARIANNOL

Mae geiriau a gedwir yn eiriau sydd ag ystyr arbennig i'r gragen. Cydnabyddir y geiriau canlynol fel rhai sydd wedi'u neilltuo pan nad ydynt wedi'u dyfynnu a naill ai gair cyntaf gorchymyn syml (gweler SHELL GRAMMAR isod) neu drydydd gair achos neu ar gyfer gorchymyn:

! mae achos yn gwneud elif arall esac fi ar gyfer swyddogaeth os yn ddethol yna hyd nes bod {} amser [[]]

SHELL GRAMAR

Rheolau Syml

Mae gorchymyn syml yn ddilyniant o aseiniadau newidiol dewisol, a dilynir geiriau gwag ac ailgyfeiriadau, a'u terfynu gan weithredwr rheoli . Mae'r gair cyntaf yn pennu'r gorchymyn i gael ei weithredu, ac fe'i pasiwyd fel dadl sero. Mae'r geiriau sy'n weddill yn cael eu pasio fel dadleuon i'r gorchymyn dan sylw.

Gwerth dychwelyd gorchymyn syml yw ei statws ymadael, neu 128+ n os yw'r gorchymyn yn cael ei derfynu gan signal n .

Piblinellau

Mae piblinell yn ddilyniant o un neu fwy o orchmynion wedi'u gwahanu gan y cymeriad | . Y fformat ar gyfer piblinell yw:

[ amser [ -p ]] [! ] gorchymyn [ | command2 ...]

Mae allbwn safonol gorchymyn wedi'i gysylltu trwy bibell i mewnbwn safonol command2 . Mae'r cysylltiad hwn yn cael ei berfformio cyn unrhyw ailgyfeiriadau a bennir gan y gorchymyn (gweler REDIRECTION isod).

Os yw'r gair a gadwyd yn ôl ! yn rhagflaenu piblinell, statws gadael y bibell honno yw'r NID rhesymegol o statws ymadael y gorchymyn olaf. Fel arall, statws y biblinell yw statws ymadael y gorchymyn olaf. Mae'r cragen yn aros i bob gorchymyn yn y biblinell ddod i ben cyn dychwelyd gwerth.

Os yw'r gair a gadwyd yn ôl cyn blaen bibell, rhoddir gwybod i'r amser a ddaw heibio yn ogystal â'r defnyddiwr a'r amser y mae'r system yn ei ddefnyddio wrth iddo gael ei weithredu pan fydd y biblinell yn dod i ben. Mae'r opsiwn -p yn newid y fformat allbwn i'r hyn a bennwyd gan POSIX. Gellid gosod y newidyn TIMEFORMAT i llinyn fformat sy'n nodi sut y dylid arddangos y wybodaeth amseru; gweler y disgrifiad o TIMEFORMAT o dan Shell Variables isod.

Mae pob gorchymyn mewn biblinell yn cael ei weithredu fel proses ar wahân (hy, mewn isgell).

Rhestrau

Rhestr yw dilyniant o un neu ragor o bibellau sy'n cael eu gwahanu gan un o'r gweithredwyr ; , & , && , neu || , ac yn cael ei derfynu'n ddewisol gan un o'r canlynol ; , & , neu .

O'r rheiny gweithredwyr rhestr, && a || cael blaenoriaeth gyfartal, ac yna ; a &, sydd â blaenoriaeth gyfartal.

Efallai y bydd dilyniant o un neu fwy o linellau newydd yn ymddangos mewn rhestr yn hytrach na lled pen-blwydd i ddileu gorchmynion.

Os caiff y gorchymyn ei derfynu gan y gweithredwr rheoli ac , mae'r gragen yn gwneud y gorchymyn yn y cefndir mewn isgell. Nid yw'r gragen yn disgwyl i'r gorchymyn orffen, ac mae'r statws dychwelyd yn 0. Gorchmynion wedi'u gwahanu gan a ; yn cael eu gweithredu yn ddilyniannol; mae'r cragen yn aros am bob gorchymyn i ddod i ben yn ei dro. Y statws dychwelyd yw statws ymadael y gorchymyn olaf a weithredwyd.

Y gweithredwyr rheoli && a || yn dynodi A rhestrau a Rhestrau NEU, yn y drefn honno. Mae gan ffurflen A AND y ffurflen

command1 && command2

gweithredir command2 os, a dim ond os, command1 yn dychwelyd statws gadael o sero.

Mae gan restr NEU y ffurflen

gorchymyn1 || gorchymyn2

gweithredir command2 os a dim ond os yw command1 yn dychwelyd statws ymadael nad yw'n sero. Y statws dychwelyd rhestrau A a NEU yw statws ymadael y gorchymyn olaf a weithredir yn y rhestr.

Gorchmynion Cyfansawdd

Mae gorchymyn cyfansawdd yn un o'r canlynol:

( rhestr )

rhestr yn cael ei weithredu mewn subhell. Nid yw aseiniadau amrywiol a gorchmynion adeiledig sy'n effeithio ar amgylchedd y gragen yn parhau i fod yn effeithiol ar ôl i'r gorchymyn gwblhau. Y statws dychwelyd yw statws gadael y rhestr .

{ rhestr ; }

rhestrir yn syml yn yr amgylchedd cregyn presennol. mae'n rhaid terfynu rhestr gyda llinell newydd neu unwynt. Gelwir hyn yn orchymyn grŵp . Y statws dychwelyd yw statws gadael y rhestr . Sylwch fod yn wahanol i'r metacharacters ( a ) , { a } yn eiriau a gadwyd yn ôl ac mae'n rhaid iddynt ddigwydd lle caniateir adnabod gair a gadwyd yn ôl. Gan nad ydynt yn achosi toriad gair, mae'n rhaid eu gwahanu o'r rhestr trwy'r gofod gwyn.

(( mynegiant ))

Mae'r mynegiant yn cael ei werthuso yn ôl y rheolau a ddisgrifir isod o dan AROLYGIAD ARITHMETIG . Os yw gwerth yr ymadrodd yn ddim yn sero, mae'r statws dychwelyd yn 0; fel arall mae'r statws dychwelyd yn 1. Mae hyn yn union gyfatebol â gadael " mynegiant ".

[[ mynegiant ]]

Dychwelwch statws 0 neu 1 yn dibynnu ar werthusiad yr ymadrodd mynegiant amodol. Mae'r mynegiadau yn cynnwys yr ysgolion cynradd a ddisgrifir isod o dan EXPRESSIONS CYDCHODDOL . Ni chaiff ymrannu geiriau ac ehangu enw'r llwybr eu pherfformio ar y geiriau rhwng [[ a ]] ; ehangu tilde, paramedr ac ehangu amrywiol, ehangu rhifedd, ailosod gorchymyn, amnewid prosesau, a chael gwared ar ddyfynbrisiau.

Pan ddefnyddir y gweithredwyr == a ! = , Mae'r llinyn i'r dde i'r gweithredwr yn cael ei ystyried yn batrwm a'i gyfateb yn ôl y rheolau a ddisgrifir isod o dan Mathemateg . Mae'r gwerth yn ôl yn 0 os yw'r llinyn yn cyd-fynd neu'n cydweddu â'r patrwm, yn y drefn honno, ac 1 fel arall. Gellir dyfynnu unrhyw ran o'r patrwm i orfodi ei gyfateb fel llinyn.

Gellir cyfuno mynegiadau gan ddefnyddio'r gweithredwyr canlynol, a restrwyd yn nhrefn gynyddol flaenoriaeth:

( mynegiant )

Yn dychwelyd gwerth mynegiant . Gellir defnyddio hyn i orchuddio blaenoriaeth arferol gweithredwyr.

! mynegiant

Gwir os yw mynegiant yn ffug.

mynegiant1 && expression2

Gwir os yw'r ddau expression1 a expression2 yn wir.

mynegiant1 || mynegiant2 Gwir os yw mynegiant1 neu fynegiant2 yn wir.

Y && a || nid yw gweithredwyr yn gwerthuso mynegiant2 os yw gwerth mynegiant1 yn ddigonol i bennu gwerth dychwelyd yr ymadroddiad amodol cyfan.

am enw [ mewn gair ]; rhestrwch ; wedi'i wneud

Mae'r rhestr o eiriau sy'n dilyn yn cael ei ehangu, gan greu rhestr o eitemau. Mae'r enw amrywiol yn cael ei osod i bob elfen o'r rhestr hon yn ei dro, ac mae'r rhestr yn cael ei gweithredu bob tro. Os na chaiff y gair ei hepgor, bydd y gorchymyn yn rhestru unwaith unwaith ar gyfer pob paramedr positif sydd wedi'i osod (gweler PARAMETRAU isod). Y statws dychwelyd yw statws ymadael y gorchymyn olaf sy'n gweithredu. Os yw ehangu'r eitemau sy'n dilyn yn y canlyniadau mewn rhestr wag, nid oes unrhyw orchmynion yn cael eu gweithredu, ac mae'r statws dychwelyd yn 0.

am (( expr1 ; expr2 ; expr3 )); rhestrwch ; wedi'i wneud

Yn gyntaf, caiff y mynegiant rhifyddol expr1 ei werthuso yn ôl y rheolau a ddisgrifir isod o dan AROLYGIAD ARITHMETIG . Yna caiff y mynegiant rhifyddol expr2 ei werthuso dro ar ôl tro nes ei fod yn gwerthuso i sero. Bob tro mae expr2 yn arfarnu i werth di-sero, caiff y rhestr ei gweithredu a gwerthfawrogir mynegiant rhifyddol expr3 . Os yw unrhyw ymadrodd yn cael ei hepgor, mae'n ymddwyn fel pe bai'n gwerthuso 1. Y gwerth dychwelyd yw statws ymadael y gorchymyn olaf mewn rhestr a weithredir, neu ffug os yw unrhyw un o'r ymadroddion yn annilys.

dewis enw [ mewn gair ]; rhestrwch ; wedi'i wneud

Mae'r rhestr o eiriau sy'n dilyn yn cael ei ehangu, gan greu rhestr o eitemau. Mae'r set o eiriau estynedig yn cael ei argraffu ar y gwall safonol, pob un a gynhyrchwyd gan nifer. Os na chaiff y gair ei hepgor, caiff y paramedrau gosod eu hargraffu (gweler PARAMETRAU isod). Yna caiff arddangosfa PS3 ei arddangos a darllenir llinell o'r mewnbwn safonol. Os yw'r llinell yn cynnwys rhif sy'n cyfateb i un o'r geiriau a ddangosir, yna mae gwerth yr enw wedi'i osod ar y gair honno. Os yw'r llinell yn wag, mae'r geiriau a'r prydlon yn cael eu harddangos eto. Os darllenir EOF, mae'r gorchymyn yn cwblhau. Mae unrhyw werth arall yn darllen yn achosi i enw gael ei osod i null. Mae'r llinell ddarllen yn cael ei gadw yn y REPLY amrywiol. Mae'r rhestr yn cael ei gweithredu ar ôl pob dewis hyd nes bydd gorchymyn torri yn cael ei weithredu. Y statws gadael ar gyfer dewis yw statws gadael y gorchymyn olaf a weithredir yn y rhestr , neu sero os na chyflwynwyd unrhyw orchmynion.

achos achos yn [[(] patrwm [ | patrwm ]

Yn gyntaf, mae gorchymyn achos yn ehangu gair , ac mae'n ceisio ei gysoni yn erbyn pob patrwm yn eu tro, gan ddefnyddio'r un rheolau cyfatebol ag ar gyfer ehangu enw'r llwybr (gweler Ehangu Pathname isod). Pan ddarganfyddir gêm, gweithredir y rhestr gyfatebol. Ar ôl y gêm gyntaf, ni cheisir unrhyw gemau dilynol. Mae'r statws ymadael yn sero os nad oes patrwm yn cyfateb. Fel arall, dyma statws ymadael y gorchymyn olaf a weithredir yn y rhestr .

os rhestr ; yna rhestrwch; [ rhestr elif ; yna rhestrwch ; ] ... [ rhestr arall ; ] fi

Os caiff y rhestr ei chyflawni. Os yw ei statws ymadael yn sero, gweithredir y rhestr yna . Fel arall, mae pob rhestr elif yn cael ei weithredu yn ei dro, ac os yw ei statws ymadael yn sero, mae'r rhestr gyfatebol wedyn yn cael ei weithredu ac mae'r gorchymyn yn cwblhau. Fel arall, gweithredir y rhestr arall , os yw'n bresennol. Y statws ymadael yw statws ymadael y gorchymyn olaf a weithredir, neu sero os na chafwyd unrhyw amod yn wir.

tra'n rhestru ; rhestrwch ; wedi'i wneud

tan restr ; rhestrwch ; wedi'i wneud

Mae'r gorchymyn tra'n gwneud y rhestr wneud yn barhaus cyn belled â bod y gorchymyn olaf yn y rhestr yn dychwelyd statws gadael o sero. Mae'r gorchymyn hyd yn union yr un fath â'r gorchymyn tra bod y prawf yn cael ei negyddu; gweithredir y rhestr wneud cyhyd â bod y gorchymyn olaf yn y rhestr yn dychwelyd statws ymadael nad yw'n sero. Statws gadael yr amser a hyd at orchmynion yw statws gadael y gorchymyn rhestr ddiwethaf a weithredwyd, neu sero os na chafodd yr un ei weithredu.

[ swyddogaeth ] enw () { rhestr ; }

Mae hyn yn diffinio swyddogaeth a enwir. Corff y swyddogaeth yw'r rhestr o orchmynion rhwng {a}. Mae'r rhestr hon yn cael ei gweithredu pan fo enw wedi'i bennu fel enw gorchymyn syml. Statws ymadael swyddogaeth yw statws ymadael y gorchymyn olaf a weithredir yn y corff. (Gweler SWYDDOGAETHAU isod.)

SYLWADAU

Mewn cregyn di-rhyngweithiol, neu gregyn rhyngweithiol lle mae'r opsiwn rhyngweithiol / cymhleth i'r siop a adeiladwyd yn cael ei alluogi (gweler SHELL BUILTIN COMMANDS isod), mae gair sy'n dechrau gyda # yn achosi anwybyddu'r gair hwnnw a phob cymeriad sy'n weddill ar y llinell honno. Nid yw cragen rhyngweithiol heb yr opsiwn rhyngweithiol / galluogi yn galluogi sylwadau. Mae'r opsiwn rhyngweithiol_comments yn digwydd yn ddi-rym mewn cregyn rhyngweithiol.

CYFLWYNO

Defnyddir dyfynnu i ddileu ystyr arbennig rhai cymeriadau neu eiriau i'r gragen. Gellir defnyddio dyfyniadau i analluogi triniaeth arbennig ar gyfer cymeriadau arbennig, er mwyn atal geiriau neilltuedig rhag cael eu cydnabod fel y cyfryw, ac i atal ehangu paramedr.

Mae gan bob un o'r metacharacters a restrir uchod o dan DIFFINIADAU ystyr arbennig i'r gragen a rhaid eu dyfynnu os yw'n cynrychioli ei hun.

Pan fydd y cyfleusterau ehangu hanes gorchymyn yn cael eu defnyddio, mae'r cymeriad ehangu hanes , fel arfer ! , yn cael ei ddyfynnu i atal ehangu hanes.

Mae yna dair mecanwaith dyfynnu: y cymeriad dianc , dyfyniadau sengl, a dyfynbrisiau dwbl.

Mae rhwystr heb ei ddyfynnu ( \ ) yn gymeriad dianc . Mae'n cadw gwerth llythrennol y cymeriad nesaf sy'n dilyn, ac eithrio . Os yw pâr \ yn ymddangos, ac nid yw'r backslash wedi'i ddyfynnu ei hun, mae'r \ yn cael ei drin fel parhad llinell (hynny yw, caiff ei dynnu o'r ffrwd mewnbwn a'i anwybyddu'n effeithiol).

Mae cau cymeriadau mewn dyfynbrisiau sengl yn cadw gwerth llythrennol pob cymeriad o fewn y dyfynbrisiau. Efallai na fydd dyfynbris unigol yn digwydd rhwng dyfynbrisiau sengl, hyd yn oed pan gynhwysir backslash.

Mae dileu cymeriadau mewn dyfynbrisiau dwbl yn cadw gwerth llythrennol pob cymeriad o fewn y dyfynbrisiau, ac eithrio $ , ` , a \ . Mae'r cymeriadau $ ac `yn cadw eu hystyr arbennig o fewn dyfynbrisiau dwbl. Mae'r backslash yn cadw ei ystyr arbennig yn unig pan ddilynir un o'r cymeriadau canlynol: $ , ` , ' , \ , or . Gellir dyfynnu dyfynbris dwbl o fewn dyfynbrisiau dwbl trwy ei roi yn flaenorol.

Mae gan y paramedrau arbennig * a @ ystyr arbennig pan fyddant mewn dyfynbrisiau dwbl (gweler PARAMETRAU isod).

Mae geiriau'r ffurflen $ ' string ' yn cael eu trin yn arbennig. Mae'r gair yn ymestyn i llinyn , gyda chymeriadau sydd wedi'u dianc rhag cefn yn cael eu disodli fel y nodir gan safon ANSI C. Mae dilyniannau dianc backslash, os ydynt yn bresennol, wedi'u dadgodio fel a ganlyn:

\ a

rhybudd (cloch)

\ b

backspace

\ e

cymeriad dianc

\ f

ffurfiwch fwydo

\ n

llinell newydd

\ r

dychwelyd cerbyd

\ t

tab llorweddol

\ v

tab fertigol

\\

cefn

\ '

dyfynbris sengl

\ nnn

y cymeriad wyth-darn y mae ei werth yn y gwerth octal nnn (un i dri digid)

\ x HH

y cymeriad wyth-darn y mae ei werth yn werth hecsadegol HH (un neu ddau ddigid hecs)

\ c x

cymeriad rheoli x

Mae'r canlyniad estynedig wedi'i ddyfynnu'n unigol, fel petai'r arwydd doler wedi bod yn bresennol.

Bydd llinyn dwbl a ragnodwyd gan arwydd doler ( $ ) yn peri bod y llinyn yn cael ei gyfieithu yn ôl y lleoliad presennol. Os yw'r lleoliad presennol yn C neu POSIX , anwybyddir yr arwydd doler. Os caiff y llinyn ei gyfieithu a'i ddisodli, caiff y lle cyntaf ei ddyfynnu'n ddwbl.

PARAMETRADAU

Mae paramedr yn endid sy'n storio gwerthoedd. Gall fod yn enw , rhif, neu un o'r cymeriadau arbennig a restrir isod o dan Paramedrau Arbennig . Ar gyfer dibenion y gragen, mae newidyn yn baramedr a ddynodir gan enw . Mae gan newidyn werth a dim neu fwy o nodweddion . Mae nodweddion yn cael eu neilltuo gan ddefnyddio'r gorchymyn adeiledig datgan (gweler y datganiad isod yn COMMAND BUILTIN COMMANDS ).

Pennir paramedr os yw gwerth wedi ei neilltuo. Mae'r llinyn null yn werth dilys. Unwaith y bydd newidyn wedi'i osod, efallai na fydd yn rhwystro dim ond trwy ddefnyddio'r gorchymyn adeiledig annisgwyl (gweler SHAND BUILTIN COMMANDS isod).

Efallai y bydd datganiad o'r ffurflen wedi'i neilltuo i newidyn

enw = [ gwerth ]

Os na roddir gwerth , rhoddir y llinyn null i'r newidyn. Mae pob gwerth yn cael ei ehangu, paramedr ac ehangu amrywiol, newid gorchymyn, ehangu rhifedd, a dileu dyfynbris (gweler EXPANSION isod). Os oes gan y newidydd ei phriodoledd cyfanrif , yna mae gwerth yn ddarostyngedig i ehangu rhifyddeg hyd yn oed os na ddefnyddir yr ehangiad $ ((...)) (gweler Ehangu Arithmetig isod). Ni rhennir geiriau, ac eithrio "$ @" fel yr eglurir isod o dan Paramedrau Arbennig . Nid yw ehangu enw'r llwybr yn cael ei berfformio. Efallai y bydd datganiadau aseiniadau hefyd yn ymddangos fel dadleuon i'r gorchmynion datgelu , cysodi , allforio , darllen , a adeiledig lleol .

Paramedrau Posodol

Mae paramedr gosodiadol yn barafedr a ddynodir gan un neu fwy o ddigidiau, heblaw'r un digid 0. Mae paramedrau sefyllfaol yn cael eu neilltuo o ddadleuon y gragen pan gaiff ei ddefnyddio, a gellir eu hail-lofnodi gan ddefnyddio'r gorchymyn adeiledig set . Efallai na chaiff paramedrau sefyllfaol eu neilltuo gyda datganiadau aseiniad. Mae'r paramedrau positional yn cael eu disodli dros dro pan fydd swyddogaeth gragen yn cael ei weithredu (gweler SWYDDOGAETHAU isod).

Pan fo paramedr gosodiadol sy'n cynnwys mwy nag un digid wedi'i ehangu, mae'n rhaid ei amgáu mewn braces (gweler EXPANSION isod).

Paramedrau Arbennig

Mae'r gragen yn trin sawl paramedr yn arbennig. Dim ond y cyfeirir at y paramedrau hyn; nid yw aseiniad iddynt yn cael ei ganiatáu.

*

Ehangu at y paramedrau positional, gan ddechrau o un. Pan fo'r ehangiad yn digwydd o fewn dyfynbrisiau dwbl, mae'n ymestyn i un gair gyda gwerth pob paramedr wedi'i wahanu gan gymeriad cyntaf y newidyn arbennig IFS . Hynny yw, mae " $ * " yn cyfateb i " $ 1 c $ 2 c ... ", lle c yw cymeriad cyntaf gwerth y newidydd IFS . Os yw IFS yn anfodlon, mae'r gofodau wedi'u gwahanu gan fannau. Os yw IFS yn null, mae'r paramedrau wedi'u ymuno heb wahanwyr ymyrryd.

@

Ehangu at y paramedrau positional, gan ddechrau o un. Pan fo'r ehangiad yn digwydd o fewn dyfynbrisiau dwbl, mae pob paramedr yn ymestyn i air ar wahân. Hynny yw, mae " $ @ " yn cyfateb i " $ 1 " " $ 2 " ... Pan nad oes paramedrau positif, " $ @ " a $ @ expand i ddim (hy, maen nhw'n cael eu tynnu).

#

Yn ehangu i nifer y paramedrau positif mewn degol.

?

Yn ehangu i statws y biblinell flaenllaw a gynhaliwyd yn ddiweddar.

-

Yn ehangu i'r baneri dewis cyfredol fel y nodwyd ar orchymyn, gan y gorchymyn adeiledig set , neu'r rhai a osodwyd gan y gragen ei hun (megis yr opsiwn -i ).

$

Ehangu at ID y broses o'r gragen. Mewn (subshell), mae'n ymestyn i ID y broses o'r gragen presennol, nid y subhell.

!

Yn ymestyn i ID y broses o'r gorchymyn cefndir a gynhyrchwyd yn ddiweddar (asyncronous).

0

Ehangu at enw'r sgript cragen neu gragen. Mae hyn wedi'i osod ar gychwyniad cregyn. Os caiff bash ei ddefnyddio gyda ffeil o orchmynion, gosodir $ 0 i enw'r ffeil honno. Os dechreuwyd bash gyda'r opsiwn -c , yna gosodir $ 0 i'r ddadl gyntaf ar ôl i'r llinyn gael ei weithredu, os oes un yn bresennol. Fel arall, mae'n rhaid i'r enw ffeil a ddefnyddir i ymosod ar bash , fel y rhoddir yn ôl dadl sero.

_

Ar gychwyn cregyn, gosodir enw ffeil absoliwt y sgript cragen neu gragen sy'n cael ei weithredu fel y'i pasiwyd yn y rhestr ddadlau. Yn dilyn hynny, mae'n ymestyn i'r ddadl olaf i'r gorchymyn blaenorol, ar ôl ehangu. Yn ogystal, gosodir enw ffeil lawn pob gorchymyn a weithredir a'i osod yn yr amgylchedd a allforir i'r gorchymyn hwnnw. Wrth wirio post, mae'r paramedr hwn yn dal enw'r ffeil post sy'n cael ei gwirio ar hyn o bryd.

Amrywioliadau Shell

Mae'r newidynnau canlynol wedi'u gosod gan y gragen:

BASH

Ehangu at yr enw ffeil llawn a ddefnyddir i ymosod ar yr enghraifft hon o bash .

BASH_VERSINFO

Amrywiaeth amrywiol ar gyfer darllen y mae ei aelodau yn dal gwybodaeth fersiwn ar gyfer yr enghraifft hon o bash . Mae'r gwerthoedd a neilltuwyd ar gyfer aelodau'r grŵp fel a ganlyn:

BASH_VERSINFO [ 0]

Y rhif fersiwn fawr (y datganiad ).

BASH_VERSINFO [ 1]

Rhif fân fach (y fersiwn ).

BASH_VERSINFO [ 2]

Y lefel patch.

BASH_VERSINFO [ 3]

Y fersiwn adeiladu.

BASH_VERSINFO [ 4]

Y statws rhyddhau (ee, beta1 ).

BASH_VERSINFO [ 5]

Gwerth MACHTYPE .

BASH_VERSION

Yn ehangu i linyn sy'n disgrifio'r fersiwn o'r enghraifft hon o bash .

COMP_CWORD

COMP_LINE

Y llinell orchymyn gyfredol. Mae'r newidyn hwn ar gael yn unig mewn swyddogaethau cregyn a gorchmynion allanol sy'n cael eu galw gan y cyfleusterau cwblhau rhaglenadwy (gweler y Cwblhau Rhaglenadwy isod).

COMP_POINT

COMP_WORDS

Amrywioldeb amrywiol (gweler yr Arrays isod) sy'n cynnwys y geiriau unigol yn y llinell orchymyn bresennol. Mae'r newidyn hwn ar gael yn unig mewn swyddogaethau cregyn sy'n cael eu galw gan y cyfleusterau cwblhau rhaglenadwy (gweler y Cwblhau Rhaglenadwy isod).

DIRSTACK

Newid amrywiol (gweler yr Arrays isod) sy'n cynnwys cynnwys cyfredol y stack cyfeiriadur. Mae cyfeirlyfrau'n ymddangos yn y stack yn y drefn y maen nhw'n cael eu harddangos gan y diriau a adeiladwyd. Gellid defnyddio aseiniadau i aelodau'r amrywiad hwn o amrywiaeth i addasu cyfeirlyfrau sydd eisoes yn y stack, ond mae'n rhaid defnyddio'r adeileddau pushd a popd i ychwanegu a dileu cyfeirlyfrau. Ni fydd aseiniad i'r newidyn hwn yn newid y cyfeiriadur cyfredol. Os yw DIRSTACK yn anfodlon, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailsefydlu wedyn.

EUID

Yn ehangu i adnabod defnyddiwr effeithiol y defnyddiwr presennol, wedi'i gychwyn ar ddechrau'r gragen. Mae'r newidyn hwn yn ddarllenadwy.

FUNCNAME

Enw unrhyw swyddogaeth gragen sy'n gweithredu ar hyn o bryd. Mae'r newidyn hwn yn bodoli dim ond pan fydd swyddogaeth gragen yn gweithredu. Nid yw aseiniadau i FUNCNAME yn cael unrhyw effaith ac yn dychwelyd statws gwall. Os nad yw FUNCNAME yn gwrthod, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailsefydlu wedyn.

GRWPIAU

Mae amrywiaeth amrywiol sy'n cynnwys y rhestr o grwpiau y mae'r defnyddiwr presennol yn aelod ohoni. Nid yw aseiniadau i GRWPIAU yn cael unrhyw effaith ac yn dychwelyd statws gwall. Os yw GRWPIAU yn anfodlon, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailsefydlu wedyn.

HISTCMD

Rhif hanes, neu fynegai yn y rhestr hanes, o'r gorchymyn cyfredol. Os yw HISTCMD yn anghyfreithlon, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailsefydlu wedyn.

HOSTNAME

Wedi'i osod yn awtomatig i enw'r gwesteiwr presennol.

HOSTTYPE

Wedi'i osod yn awtomatig i linyn sy'n disgrifio'n unigryw y math o beiriant y mae bash yn ei weithredu. Mae'r rhagosodiad yn ddibynnol ar system.

LINENO

Bob tro y cyfeirir at y paramedr hwn, mae'r gragen yn disodli rhif degol sy'n cynrychioli'r rhif llinell ddilyniannol cyfredol (gan ddechrau gydag 1) o fewn sgript neu swyddogaeth. Pan nad yw mewn sgript neu swyddogaeth, nid yw'r gwerth a amnewidiwyd yn sicr o fod yn ystyrlon. Os yw LINENO yn anfodlon, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailosod wedyn.

MACHTYPE

Wedi'i osod yn awtomatig i linyn sy'n disgrifio'n llawn y math o system y mae bash yn ei weithredu, yn y fformat safonol GNU cpu-cwmni-system . Mae'r rhagosodiad yn ddibynnol ar system.

OLDPWD

Y cyfeiriadur gwaith blaenorol fel y'i gosodwyd gan y gorchymyn cd .

OPTARG

Gwerth yr argraff opsiwn olaf a broseswyd gan orchymyn getopts builtin (gweler SHELL BUILTIN COMMANDS isod).

GWEITHREDU

Y mynegai o'r ddadl nesaf i'w phrosesu gan yr orchymyn getopts builtin (gweler SHELL BUILTIN COMMANDS isod).

OSTYPE

Wedi'i osod yn awtomatig i linyn sy'n disgrifio'r system weithredu y mae bash yn ei weithredu arno. Mae'r rhagosodiad yn ddibynnol ar system.

PIPESTATUS

Amrywioldeb amrywiol (gweler yr Arrays isod) sy'n cynnwys rhestr o werthoedd statws ymadael o'r prosesau yn y pibell y blaendir a gynhaliwyd yn ddiweddar (a all gynnwys dim ond un gorchymyn).

PPID

ID y broses o riant y gragen. Mae'r newidyn hwn yn ddarllenadwy.

PWD

Y cyfeiriadur gwaith cyfredol fel y'i gosodir gan y gorchymyn cd .

RANDOM

Bob tro y cyfeirir at y paramedr hwn, cynhyrchir cyfanrif ar hap rhwng 0 a 32767. Gellir cychwynnol y dilyniant o rifau hap trwy neilltuo gwerth i RANDOM . Os yw RANDOM yn anghyfreithlon, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailsefydlu wedyn.

Atebwch

Gosodwch at y llinell mewnbwn a ddarllenir gan y gorchymyn adeiledig darllen pan na chyflwynir unrhyw ddadleuon.

AILAU

Bob tro y cyfeirir at y paramedr hwn, dychwelir nifer yr eiliadau ers i ymosodiad y gragen. Os caiff gwerth ei neilltuo i SECONDS , y gwerth a ddychwelir ar y cyfeiriadau dilynol yw nifer yr eiliadau ers yr aseiniad ynghyd â'r gwerth a neilltuwyd. Os yw SECONDS yn anghyfreithlon, mae'n colli ei eiddo arbennig, hyd yn oed os caiff ei ailsefydlu wedyn.

SHELLOPTS

Rhestr wedi'i wahanu gan y colon o ddewisiadau cregyn galluogedig. Mae pob gair yn y rhestr yn ddadl ddilys ar gyfer yr opsiwn -o i'r gorchymyn adeiledig set (gweler SHELL BUILTIN COMMANDS isod). Yr opsiynau sy'n ymddangos yn SHELLOPTS yw'r rhai yr adroddir arnynt yn ôl set -o . Os yw'r newidyn hwn yn yr amgylchedd pan fydd y bash yn cychwyn, bydd pob opsiwn o gregyn yn y rhestr yn cael ei alluogi cyn darllen unrhyw ffeiliau cychwyn. Mae'r newidyn hwn yn ddarllen yn unig.

SHLVL

Wedi'i gynyddu gan un bob tro mae enghraifft o bash yn dechrau.

IDU

Yn ehangu i ID defnyddiwr y defnyddiwr presennol, wedi'i gychwyn ar ddechrau'r gragen. Mae'r newidyn hwn yn ddarllenadwy.

Defnyddir y newidynnau canlynol gan y gragen. Mewn rhai achosion, mae bash yn aseinio gwerth diofyn i newidyn; nodir yr achosion hyn isod.

BASH_ENV

Os gosodir y paramedr hwn pan fydd bash yn gweithredu sgript cregyn, caiff ei werth ei ddehongli fel enw ffeil sy'n cynnwys gorchmynion i gychwyn y gragen, fel yn ~ / .bashrc . Mae gwerth BASH_ENV yn destun ehangu paramedr, amnewid gorchymyn, ac ehangu rhifedd cyn ei ddehongli fel enw ffeil. Nid yw LLWYBR yn cael ei ddefnyddio i chwilio am yr enw ffeil canlyniadol.

CDPATH

Y llwybr chwilio ar gyfer y gorchymyn cd . Dyma restr o gyfeirlyfrau sydd wedi'u gwahanu gan y colon lle mae'r cregyn yn chwilio am gyfeirlyfrau cyrchfan a bennir gan y gorchymyn cd . Gwerth sampl yw ".: ~: / Usr".

COLUMNS

Wedi'i ddefnyddio gan y gorchymyn adeiledig dethol i bennu lled y derfynell wrth argraffu rhestrau dethol. Wedi'i osod yn awtomatig ar ôl derbyn SIGWINCH.

CYFRIFOLAETH

Mae amrywiaeth amrywiol o'r bash yn darllen y posibilrwydd y caiff y gwaith ei gwblhau a gynhyrchir gan swyddogaeth gragen sy'n cael ei galw gan y cyfleuster cwblhau rhaglenadwy (gweler y Cwblhau Rhaglenadwy isod).

FCEDIT

Y golygydd diofyn ar gyfer y gorchymyn fc a adeiladwyd.

FIGNORE

Rhestr wedi'i wahanu gan y colon o bysgodion i'w anwybyddu wrth berfformio cwblhau'r ffeil (gweler DARLLENWCH isod). Mae enw ffeil y mae ei hapchwanegiad yn cyfateb i un o'r cofnodion yn FIGNORE wedi'i eithrio o'r rhestr o enwau ffeiliau cyfatebol. Gwerth sampl yw ".o: ~".

GLOBIGNORE

Rhestr o batrymau wedi'u gwahanu gan y colon sy'n diffinio'r set o enwau ffeiliau i'w hanwybyddu gan ehangu enw'r llwybr. Os yw enw ffeil sy'n cyfateb i batrwm ehangu llwybr enwog hefyd yn cyfateb i un o'r patrymau yn GLOBIGNORE , caiff ei dynnu o'r rhestr o gemau.

HISTCONTROL

Os yw wedi'i osod i werth anwybyddiad , nid yw llinellau sy'n dechrau gyda chymeriad gofod yn cael eu cofnodi ar y rhestr hanes. Os yw wedi'i osod i werth anwybyddu , nid yw llinellau sy'n cyfateb i'r llinell hanes olaf yn cael eu cofnodi. Mae gwerth anwybyddu yn cyfuno'r ddau opsiwn. Os na fyddwch yn gwrthod, neu os ydych yn gosod unrhyw werth arall na'r rhai uchod, caiff pob llinellau a ddarllenir gan y parser eu cadw ar y rhestr hanes, yn amodol ar werth HISTIGNORE . Mae HISTIGNORE yn disodli swyddogaeth y newidyn hwn. Nid yw'r ail linellau dilynol o orchymyn cyfansawdd aml-linell yn cael eu profi, ac fe'uchwanegir at yr hanes waeth beth yw gwerth HISTCONTROL .

HISTFILE

Enw'r ffeil lle cedwir hanes y gorchymyn (gweler yr HANES isod). Y gwerth diofyn yw ~ / .bash_history . Os na ellir, nid yw'r hanes gorchymyn yn cael ei gadw pan fydd cregyn rhyngweithiol yn dod allan.

GWEITHREDU

Y nifer uchaf o linellau sydd wedi'u cynnwys yn y ffeil hanes. Pan roddir gwerth at y newidyn hwn, caiff y ffeil hanes ei dynnu, os oes angen, i gynnwys dim mwy na nifer y llinellau hynny. Y gwerth diofyn yw 500. Mae'r ffeil hanes hefyd wedi'i dynnu ar y maint hwn ar ôl ei ysgrifennu pan fydd cregyn rhyngweithiol yn dod allan.

HISTIGNORE

Rhestr o batrymau wedi'u gwahanu gan y colon a ddefnyddiwyd i benderfynu pa llinellau gorchymyn y dylid eu cadw ar y rhestr hanes. Mae pob patrwm wedi'i angoru ar ddechrau'r llinell a rhaid iddo gyd-fynd â'r llinell gyflawn (nid yw 'implicite' * wedi'i atodi). Caiff pob patrwm ei brofi yn erbyn y llinell ar ôl i'r gwiriadau a bennir gan HISTCONTROL gael eu cymhwyso. Yn ychwanegol at y cymeriadau arferol sy'n cydweddu patrwm cregyn, ` & 'yn cydweddu â llinell hanes blaenorol. `Gall ' a ' gael ei ddianc gan ddefnyddio backslash; caiff y backslash ei dynnu cyn ceisio gêm. Nid yw'r ail linellau dilynol o orchymyn cyfansawdd aml-linell yn cael eu profi, ac fe'uchwanegir at yr hanes waeth beth yw gwerth HISTIGNORE .

HANES

Y nifer o orchmynion i'w cofio yn hanes y gorchymyn (gweler HANES isod). Y gwerth diofyn yw 500.

CARTREF

Cyfeiriadur cartref y defnyddiwr presennol; y ddadl ddiffygiol ar gyfer y gorchymyn cd adeiledig. Defnyddir gwerth y newidyn hwn hefyd wrth berfformio ehangiad tilde.

HOSTFILE

Yn cynnwys enw ffeil yn yr un fformat â / etc / hosts y dylid eu darllen pan fydd angen i'r gragen gwblhau enw host. Efallai y bydd y rhestr o gwblhau gwefannau posibl yn cael ei newid tra bod y gragen yn rhedeg; Ymdrinnir â chwblhau'r enw gwesteiwr y tro nesaf ar ôl i'r gwerth gael ei newid, mae Bash yn ychwanegu cynnwys y ffeil newydd i'r rhestr bresennol. Os gosodir HOSTFILE , ond nid oes ganddi unrhyw werth, ymdrechion bash i ddarllen / etc / hosts i gael y rhestr o gwblhau enwau gwesteiwr posibl. Pan nad yw HOSTFILE yn anfodlon, mae rhestr enw'r gwesteiwr yn cael ei glirio.

IFS

Y Separadwr Maes Mewnol sy'n cael ei ddefnyddio ar gyfer rhannu geiriau ar ôl ehangu ac i rannu llinellau yn eiriau gyda'r gorchymyn adeiledig darllen . Y gwerth diofyn yw `` ''.

IGNOREEOF

Yn rheoli gweithrediad gragen rhyngweithiol ar ôl derbyn cymeriad EOF fel yr unig fewnbwn. Os caiff ei osod, y gwerth yw nifer y cymeriadau EOF olynol y mae'n rhaid eu teipio fel y cymeriadau cyntaf ar linell fewnbwn cyn allanfeydd bash . Os yw'r newidyn yn bodoli ond nad oes ganddi werth rhifol, neu os nad oes ganddo werth, y gwerth diofyn yw 10. Os nad yw'n bodoli, mae EOF yn nodi diwedd y mewnbwn i'r gragen.

INPUTRC

Y ffeil enw ar gyfer y ffeil cychwyn llinell ddarllen , sy'n gorchymyn rhagosodiad ~ / .inputrc (gweler DARLLENWCH isod).

LANG

Wedi'i ddefnyddio i benderfynu ar y categori lleol ar gyfer unrhyw gategori na chafodd ei ddewis yn benodol gyda newidyn sy'n dechrau gyda LC_ .

LC_ALL

Mae'r newidyn hwn yn goresgyn gwerth LANG ac unrhyw newidyn LC_ arall sy'n nodi categori lleol.

LC_COLLATE

Mae'r newidyn hwn yn pennu'r orchymyn casglu a ddefnyddir wrth ddidoli canlyniadau ehangu enw'r llwybr, ac yn pennu ymddygiad mynegiant amrediad, dosbarthiadau cywerthedd, a choladu dilyniannau o fewn ehangu enwau llwybr a chyfateb patrwm.

LC_CTYPE

Mae'r newidyn hwn yn pennu'r dehongliad o gymeriadau ac ymddygiad y dosbarthiadau cymeriad o fewn ehangu enw'r llwybr a chyfateb patrwm.

LC_MESSAGES

Mae'r newidyn hwn yn pennu'r locale a ddefnyddir i gyfieithu llinynnau dyfynbris dwbl a ragwelwyd gan $ .

LC_NUMERIC

Mae'r newidyn hwn yn pennu'r categori locale a ddefnyddir ar gyfer fformatio rhifau.

LINES

Wedi'i ddefnyddio gan y gorchymyn adeiledig dethol i bennu hyd y golofn ar gyfer argraffu rhestrau dethol. Wedi'i osod yn awtomatig ar ôl derbyn SIGWINCH.

BOST

Os yw'r paramedr hwn yn cael ei osod i enw ffeil ac ni chaiff newidydd MAILPATH ei osod, mae bash yn hysbysu'r defnyddiwr o gyrraedd y post yn y ffeil benodol.

MAILCHECK

Yn dynodi pa mor aml y mae gwiriadau bash (mewn eiliadau) ar gyfer post. Mae'r rhagosodiad yn 60 eiliad. Pan fydd hi'n amser i wirio am bost, mae'r gragen yn gwneud hynny cyn arddangos yr anifail cynradd. Os yw'r newidyn hwn yn anghytuno, neu'n gosod gwerth nad yw'n fwy na sero neu'n gyfartal â sero, mae'r cregyn yn analluogi gwirio post.

MAILPATH

Rhestr o enwau ffeiliau wedi'u gwahanu gan y colon i gael eu gwirio drwy'r post. Gellir nodi'r neges sydd i'w argraffu pan fydd post yn cyrraedd ffeil benodol trwy wahanu'r enw ffeil o'r neges gyda `? '. Pan gaiff ei ddefnyddio yn nhestun y neges, mae $ _ yn ehangu i enw'r ffeil bost gyfredol. Enghraifft:

MAILPATH = '/ var / mail / bfox? "Mae gennych bost": ~ / shell-mail? "$ _ Has mail!"

Mae Bash yn cyflenwi gwerth diofyn ar gyfer y newidyn hwn, ond mae lleoliad y ffeiliau post defnyddiwr y mae'n eu defnyddio yn ddibynnol ar y system (ee, / var / mail / $ USER ).

OPTERR

Os gosodir at negeseuon gwall dangosyddion gwerth 1, bash a gynhyrchir gan y gorchymyn getopts builtin (gweler SHELL BUILTIN COMMANDS isod). Caiff OPTERR ei gychwyn i 1 bob tro y caiff y gragen ei ddefnyddio neu sgript cragen yn cael ei weithredu.

LLWYBR

Y llwybr chwilio ar gyfer gorchmynion. Mae'n restr o gyfeirlyfrau sy'n cael eu gwahanu gan y colon gan fod y gragen yn edrych am orchmynion (gweler y GWEITHREDIAD TRAN isod). Mae'r llwybr diofyn yn ddibynnol ar system, ac fe'i gosodir gan y gweinyddwr sy'n gosod bash . Gwerth cyffredin yw `` / usr / gnu / bin: / usr / local / bin: / usr / ucb: / bin: / usr / bin :. ''.

POSIXLY_CORRECT

Os yw'r newidyn hwn yn yr amgylchedd pan ddechreuodd y bash , mae'r gragen yn mynd i mewn i'r modd posix cyn darllen y ffeiliau cychwyn, fel pe bai'r opsiwn goruchwylio --posix wedi'i gyflenwi. Os caiff ei osod tra bod y gragen yn rhedeg, mae bash yn galluogi modd posix , fel pe bai'r set gorchymyn -o posix wedi'i weithredu.

PROMPT_COMMAND

Os caiff ei osod, gweithredir y gwerth fel gorchymyn cyn cyhoeddi pob pryder gynradd.

PS1

Mae gwerth y paramedr hwn wedi'i ehangu (gweler YR HADW isod) a'i ddefnyddio fel y llinyn prydlon cynradd. Y gwerth diofyn yw `` \ s- \ v \ $ ''.

PS2

Mae gwerth y paramedr hwn wedi'i ehangu fel gyda PS1 ac fe'i defnyddir fel y llinyn prydlon uwchradd. Y rhagosod yw `` > ''.

PS3

Defnyddir gwerth y paramedr hwn fel yr anogwr ar gyfer y gorchymyn dethol (gweler SHELL GRAMMAR uchod).

PS4

Mae gwerth y paramedr hwn wedi'i ehangu fel gyda PS1 ac mae'r gwerth wedi'i argraffu cyn pob dangosiad bash gorchymyn yn ystod olrhain gweithredu. Mae cymeriad cyntaf PS4 yn cael ei hailadrodd sawl gwaith, fel bo'r angen, i nodi lefelau lluosog o anadlwyth. Y rhagosod yw `` + ''.

TIMEFORMAT

Defnyddir gwerth y paramedr hwn fel llinyn fformat sy'n nodi sut y dylid arddangos y wybodaeth amseru ar gyfer piblinellau a ragnodwyd gyda'r gair amser a gadwyd yn ôl. Mae'r % cymeriad yn cyflwyno dilyniant dianc sy'n cael ei ehangu i werth amser neu wybodaeth arall. Mae'r dilyniannau dianc a'u hystyron fel a ganlyn; mae'r braces yn dynodi cyfrannau dewisol.

%%

% Llythrennol.

% [ p ] [l] R

Yr amser sydd wedi mynd heibio mewn eiliadau.

% [ p ] [l] U

Nifer yr eiliadau CPU a wariwyd yn y modd defnyddwyr.

% [ p ] [l] S

Nifer yr eiliadau CPU a wariwyd yn y modd system.

% P

Canran CPU, wedi'i gyfrifo fel (% U +% S) /% R.

Mae'r p dewisol yn ddigidol sy'n nodi'r uniondeb , nifer yr arwyddion ffracsiynol ar ôl pwynt degol. Mae gwerth 0 yn achosi dim pwynt degol neu ffracsiwn i fod yn allbwn. Yn y rhan fwyaf o dri lle ar ôl i'r pwynt degol gael ei bennu; mae gwerthoedd p mwy na 3 yn cael eu newid i 3. Os nad yw p wedi'i nodi, defnyddir gwerth 3.

Mae'r opsiynol l yn pennu fformat hirach, gan gynnwys cofnodion, o'r ffurflen MM m SS . FF s. Mae gwerth p yn penderfynu a yw'r ffracsiwn wedi'i gynnwys ai peidio.

Os na chaiff y newidyn hwn ei osod, mae bash yn gweithredu fel pe bai ganddo'r gwerth $ '\ nreal \ t% 3lR \ nuser \ t% 3lU \ nsys% 3lS' . Os yw'r gwerth yn null, ni chaiff unrhyw wybodaeth amseru ei harddangos. Mae llinell newydd yn cael ei ychwanegu pan ddangosir y llinyn fformat.

CYFRIFIAD

Os gosodir gwerth mwy na sero, caiff TMOUT ei drin fel y cyfnod amser rhagosodedig ar gyfer yr adeilad adeiledig. Mae'r gorchymyn dethol yn dod i ben os na fydd mewnbwn yn cyrraedd ar ôl TMOUT eiliadau pan ddaw mewnbwn o derfynell. Mewn cregyn rhyngweithiol, caiff y gwerth ei ddehongli fel nifer yr eiliadau i aros am fewnbwn ar ôl cyhoeddi'r prif brydlon. Mae Bash yn dod i ben ar ôl aros am y nifer honno o eiliadau os na fydd mewnbwn yn cyrraedd.

auto_resume

Mae'r newidyn hwn yn rheoli sut mae'r gragen yn rhyngweithio gyda'r defnyddiwr a rheolaeth swyddi. Os caiff y newidyn hwn ei osod, caiff gorchmynion syml gair sengl heb ailgyfeiriadau eu trin fel ymgeiswyr i ailddechrau swydd sydd wedi'i stopio ar hyn o bryd. Nid oes unrhyw amwysedd yn cael ei ganiatáu; os oes mwy nag un swydd yn dechrau gyda'r llinyn wedi'i deipio, dewisir y swydd a fynychwyd yn fwyaf diweddar. Enw'r swydd sydd wedi'i stopio, yn y cyd-destun hwn, yw'r llinell orchymyn a ddefnyddir i'w gychwyn. Os gosodir y gwerth yn union , mae'n rhaid i'r llinyn a gyflenwir gydweddu enw swydd sydd wedi'i stopio yn union; os yw wedi'i osod i is - orsaf , mae'n rhaid i'r llinyn a gyflenwyd gydweddu is-orsaf o enw swydd rhoi'r gorau iddi. Mae gwerth y swpstor yn darparu ymarferoldeb tebyg i'r %? dynodwr swydd (gweler RHEOLAETH SWYDD isod). Os caiff ei osod i unrhyw werth arall, rhaid i'r llinyn a gyflenwir fod yn rhagddodiad enw'r swydd a roddwyd; mae hyn yn darparu ymarferoldeb yn gyfateb i'r dynodwr swydd % .

haneswyr

Y ddau neu dri chymeriad sy'n rheoli ehangu hanes a tokenization (gweler Ehangu HANES isod). Y cymeriad cyntaf yw'r cymeriad ehangu hanes , y cymeriad sy'n arwydd o ddechrau ehangiad hanes, fel arfer ` ! '. Yr ail gymeriad yw'r cymeriad amnewid cyflym , a ddefnyddir fel llaw fer ar gyfer ail-redeg y gorchymyn blaenorol a gofnodwyd, gan roi un llinyn ar gyfer un arall yn y gorchymyn. Y rhagosod yw ` ^ '. Y trydydd cymeriad dewisol yw'r cymeriad sy'n dangos bod gweddill y llinell yn sylw pan gaiff ei ganfod fel cymeriad cyntaf gair, fel arfer ` # '. Mae'r cymeriad sylwadau hanes yn peri bod amnewidiad hanes yn cael ei hepgor ar gyfer y geiriau sy'n weddill ar y llinell. Nid yw o reidrwydd yn achosi'r parser cragen i drin gweddill y llinell fel sylw.

Arrays

Mae Bash yn darparu newidynnau setiau un-dimensiwn. Gellir defnyddio unrhyw newidyn fel amrywiaeth; bydd y datganiad adeiladedig yn datgan yn benodol amrywiaeth. Nid oes terfyn uchaf ar faint o gyfres, nac unrhyw ofyniad bod aelodau'n cael eu mynegeio neu eu neilltuo'n gyfochrog. Mae mynegeion yn cael eu mynegeio gan ddefnyddio cyfanrif ac yn seiliedig ar sero.

Crëir amrywiaeth yn awtomatig os caiff unrhyw newidyn ei neilltuo i ddefnyddio'r enw cystrawen [ subscript ] = value . Caiff yr isysgrif ei drin fel mynegiant rhifydd y mae'n rhaid iddo ei werthuso i rif mwy na neu gyfartal â sero. I ddatgan amrywiaeth yn benodol, defnyddiwch ddatganiad -a enw (gweler SHELL BUILTIN COMMANDS isod). datgan-mae enw [ isysgrif ] hefyd yn cael ei dderbyn; anwybyddir yr isysgrifiad . Gellir nodi'r nodweddion ar gyfer newid amrywiol gan ddefnyddio'r adeileddau datgan a darllen . Mae pob priodoldeb yn berthnasol i bob aelod o gyfres.

Rhoddir anrhegion i ddefnyddio aseiniadau cyfansawdd o'r ffurflen enw = ( gwerth 1 ... gwerth n ) , lle mae pob gwerth o'r ffurf [ subscript ] = string . Dim ond llinyn sydd ei angen. Os yw'r cromfachau a'r subysgrif dewisol yn cael eu cyflenwi, caiff y mynegai hwnnw ei neilltuo; fel arall mynegai'r elfen a bennwyd yw'r mynegai olaf a bennir gan y datganiad ynghyd ag un. Mynegai yn dechrau ar sero. Mae'r gystrawen hon hefyd yn cael ei dderbyn gan y datganiad adeiledig. Gall elfennau lluosog unigol gael eu neilltuo i ddefnyddio'r cystrawen enw [ subscript ] = value a gyflwynwyd uchod.

Defnyddir yr anheddiad anghyffredin i ddinistrio arrays. mae enw diystyru [ isysgrif ] yn dinistrio'r elfen ar ffurf yn yr is-ragnod mynegai. nodwch enw , lle mae enw yn gyfres, neu osgoi enw [ isysgrifiad ], lle mae tanysgrif yn * neu @ , yn dileu'r holl gyfres.

Mae'r adeileddau datgan , lleol , a darllen pob un yn derbyn opsiwn -a i nodi amrywiaeth. Mae'r adeilad wedi'i ddarllen yn derbyn opsiwn -a i neilltuo rhestr o eiriau a ddarllenir o'r mewnbwn safonol i gyfres. Mae'r set a datgan bod adeiledig yn dangos gwerthoedd lluosog mewn modd sy'n caniatáu iddynt gael eu hailddefnyddio fel aseiniadau.

EXPANSION

Perfformir ehangu ar y llinell orchymyn ar ôl iddo gael ei rannu'n eiriau. Mae saith math o ehangiad yn cael eu perfformio: ehangiad brace , ehangu tilde , paramedr ac ehangu amrywiol , newid gorchymyn , ehangu rhifedd , rhannu geiriau , ac ehangu enw'r llwybr .

Y gorchymyn ehangu yw: ehangiad brace, ehangu tilde, paramedr, ehangu amrywiol a rhifyddol ac amnewid gorchymyn (wedi'i wneud mewn ffasiwn i'r chwith i'r dde), rhannu geiriau, ac ehangu enw'r llwybr.

O ran systemau sy'n gallu ei gefnogi, mae yna ehangiad ychwanegol ar gael: ail- brosesu'r broses .

Ehangu Brace

Mae ehangiad Brace yn fecanwaith y gellir creu lllinellau mympwyol. Mae'r mecanwaith hwn yn debyg i ehangu enw'r llwybr , ond nid oes angen i'r enwau ffeiliau a gynhyrchir fodoli. Mae'r patrwm i'w ehangu yn cynnwys ffurf rhagolwg dewisol, ac yna cyfres o llinynnau wedi'u cymalau rhwng pâr o bracs, ac yna postnod opsiynol. Mae'r rhagolwg wedi'i ragnodi ar gyfer pob llinyn sydd wedi'i gynnwys yn y braces, ac yna mae'r atodiad yn cael ei atodi i bob llinyn sy'n deillio, gan ymestyn i'r chwith i'r dde.

Efallai y bydd ehangiadau brace yn cael eu nythu. Ni chaniateir canlyniadau pob llinyn estynedig; Mae'r chwith i'r dde yn cael ei gadw. Er enghraifft, mae { d, c, b } e yn ehangu i `ade ace abe '.

Caiff ehangiad brace ei berfformio cyn unrhyw ehangiadau eraill, ac mae unrhyw gymeriadau sy'n arbennig i ehangiadau eraill yn cael eu cadw yn y canlyniad. Mae'n hollol destunol. Nid yw Bash yn defnyddio unrhyw ddehongliad cystrawenol i gyd-destun yr ehangiad neu'r testun rhwng y braces.

Fel rheol, defnyddir yr adeilad hwn fel llaw fer pan fo rhagddodiad cyffredin y lllinynnau i'w cynhyrchu yn hwy nag yn yr enghraifft uchod:

mkdir / usr / local / src / bash / {old, new, dist, bugs}

neu

chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}

Mae ehangiad Brace yn cyflwyno anghydnaws bach gyda fersiynau hanesyddol o sh . Nid yw sh yn trin agoriadau neu gau braces yn arbennig pan fyddant yn ymddangos fel rhan o air, ac yn eu cadw yn yr allbwn. Mae Bash yn tynnu braces o eiriau o ganlyniad i ehangiad brace. Er enghraifft, mae gair wedi mynd i mewn i'r s fel ffeil {1,2} yn ymddangos yn yr un modd yn yr un modd. Mae'r un gair yn allbwn fel ffeil1 file2 ar ôl ehangu gan bash . Os oes angen cydweddiad llym â sh , dechreuwch yr opsiwn + B neu analluoga'r ehangiad brace gyda'r opsiwn + B i'r gorchymyn gosod (gweler SHELL BUILTIN COMMANDS isod).

Ehangu Tilde

Os yw gair yn dechrau gyda chymeriad tilde heb ei dyfynnu (` ~ '), mae'r holl gymeriadau sy'n rhagweld â'r slash cyntaf heb eu dyfynnu (neu os nad oes slash heb eu dyfynnu) yn cael eu hystyried yn rhagddodiad tilde . Os na ddyfynnir unrhyw un o'r cymeriadau yn y tilde-prefix, caiff y cymeriadau yn y rhagddodiad tilde sy'n dilyn y tilde eu trin fel enw mewngofnodi posibl. Os yw'r enw mewngofnodi hwn yn y llinyn null, caiff y tilde ei ddisodli gan werth y paramedr cragen CARTREF . Os nad yw CARTREF yn dod i ben, caiff cyfeiriadur cartref y defnyddiwr sy'n gweithredu'r gragen ei ddisodli yn lle hynny. Fel arall, caiff y tilde-prefix ei ddisodli gan y cyfeiriadur cartref sy'n gysylltiedig â'r enw mewngofnodi penodedig.

Os yw'r rhagddodiad tilde yn `~ + ', mae gwerth y newidyn cragen PWD yn disodli'r tilde-prefix. Os yw'r rhagddodiad tilde yn `~ - ', rhoddir gwerth y newidyn cragen OLDPWD , os yw'n cael ei osod ,. Os yw'r cymeriadau sy'n dilyn y tilde yn y tilde-prefix yn cynnwys rhif N , wedi'i prefixio yn ddewisol gan `+ 'neu` -', caiff y rhagddodiad tilde ei ddisodli gan yr elfen gyfatebol o'r stack cyfeiriadur, gan y byddai'n cael ei arddangos gan y dirs a adeiladwyd a ymosodwyd gyda'r rhagddodiad tilde fel dadl. Os tybir bod y cymeriadau sy'n dilyn y tilde yn y rhagddodiad tilde yn cynnwys rhif heb `` 'blaenllaw neu `-',` + '.

Os yw'r enw mewngofnodi yn annilys, neu os bydd yr ehangiad tilde yn methu, nid yw'r gair wedi newid.

Mae pob aseiniad amrywiol yn cael ei wirio ar gyfer tilde-prefixes heb eu dyfynnu yn syth ar ôl : neu = . Yn yr achosion hyn, mae ehangu tilde hefyd yn cael ei berfformio. O ganlyniad, gall un ddefnyddio enwau ffeiliau gyda thaflenni mewn aseiniadau i PATH , MAILPATH , a CDPATH , ac mae'r gragen yn aseinio'r gwerth ehangedig.

Ehangu Paramedr

Mae'r cymeriad ` $ 'yn cyflwyno ehangiad paramedr, amnewid gorchymyn, neu ehangu rhifyddeg. Mae'n bosib y bydd yr enw neu'r symbol paramedr i'w ehangu yn frasau, sy'n ddewisol ond yn gwarchod y newidyn sydd i'w ehangu o gymeriadau yn syth yn dilyn y gellid ei ddehongli fel rhan o'r enw.

Pan gaiff braces eu defnyddio, y brace terfynu cyfatebol yw'r '`' cyntaf heb ei ddianc gan rwystr neu mewn llinyn a ddyfynnwyd, ac nid o fewn ehangiad rhifedd mewnosod, amnewid gorchymyn, neu ehangu paramad.

Mae gwerth y paramedr yn cael ei roi yn lle. Mae'r braces yn ofynnol pan fo'r paramedr yn bara paramedr gyda mwy nag un digid, neu pan fydd cymeriad yn dilyn paramedr nad yw i'w ddehongli fel rhan o'i enw.

Ym mhob un o'r achosion isod, mae'r gair yn destun ehangu tilde, ehangu paramedr, newid gorchymyn, ac ehangu rhifyddeg. Wrth beidio â pherfformio ehangu is-orsedd, profion bash ar gyfer paramedr sy'n anniben neu'n null; gan hepgor y colon yn arwain at brawf yn unig ar gyfer paramedr sy'n anghyfreithlon.

Defnyddio Gwerthoedd Diofyn . Os yw'r paramedr yn ddigyfnewid neu'n annilys, caiff ehangiad y geiriau ei ddisodli. Fel arall, caiff gwerth y paramedr ei roi yn lle.

Aseinio'r Gwerthoedd Diofyn . Os yw'r paramedr yn unset neu null, rhoddir ehangu gair i'r paramedr . Mae gwerth y paramedr yn cael ei roi yn lle hynny. Efallai na fydd paramedrau sefyllfaol a pharamedrau arbennig yn cael eu neilltuo fel hyn.

Gwall Arddangos os Naw neu Ddileu . Os yw'r paramedr yn null neu'n anghyfreithlon, mae ehangu geiriau (neu neges at yr effaith honno os nad yw geiriau yn bresennol) wedi'i ysgrifennu at y gwall safonol ac os nad yw'n rhyngweithiol, bydd y cragen yn ymadael. Fel arall, caiff gwerth y paramedr ei roi yn lle.

Defnyddio Gwerth Amgen . Os yw'r paramedr yn null neu'n anghyfreithlon, ni chaiff unrhyw beth ei roi yn lle, neu fel arall caiff ehangu gair ei roi yn lle.

Yn ymestyn i enwau newidynnau y mae eu henwau'n dechrau gyda'r rhagddodiad , wedi'u gwahanu gan gymeriad cyntaf y newidyn arbennig IFS .

Rhoddir y hyd yn y cymeriadau o werth y paramedr . Os yw'r paramedr yn * neu @ , y gwerth a amnewidiwyd yw nifer y paramedrau gosodiadol. Os yw paramedr yn enw llu o danysgrifiad * neu @ , y gwerth a amnewidiwyd yw nifer yr elfennau yn y set.

Mae'r gair wedi'i ehangu i gynhyrchu patrwm yn union fel yn ehangu enw'r llwybr. Os yw'r patrwm yn cyfateb i ddechrau gwerth y paramedr , yna canlyniad yr ehangiad yw gwerth ehangedig y paramedr gyda'r patrwm cyfatebu byrraf (yr achos `` # ') neu'r patrwm cyfatebu hiraf (y `` ## ' 'achos) wedi'i ddileu. Os yw'r paramedr yn @ neu * , mae'r gweithrediad symud patrwm yn cael ei gymhwyso i bob paramedr safle yn ei dro, ac mae'r ehangiad yn y rhestr ganlynol. Os yw'r paramedr yn amrywiad o amrywiaeth wedi'i danysgrifio gyda @ neu * , caiff y gweithrediad symud patrwm ei gymhwyso i bob aelod o'r gyfres yn eu tro, ac mae'r ehangiad yn y rhestr ganlynol.

Mae'r gair wedi'i ehangu i gynhyrchu patrwm yn union fel yn ehangu enw'r llwybr. Os yw'r patrwm yn cyd-fynd â chyfran olrhain gwerth ehangedig y paramedr , yna canlyniad yr ehangiad yw gwerth ehangedig y paramedr gyda'r patrwm cyfatebu byrraf (yr achos `` % ') neu'r patrwm cyfatebu hiraf (y `` % % '' achos) wedi'i ddileu. Os yw'r paramedr yn @ neu * , mae'r gweithrediad symud patrwm yn cael ei gymhwyso i bob paramedr safle yn ei dro, ac mae'r ehangiad yn y rhestr ganlynol. Os yw'r paramedr yn amrywiad o amrywiaeth wedi'i danysgrifio gyda @ neu * , caiff y gweithrediad symud patrwm ei gymhwyso i bob aelod o'r gyfres yn eu tro, ac mae'r ehangiad yn y rhestr ganlynol.

Mae'r patrwm wedi'i ehangu i gynhyrchu patrwm yn union fel yn ehangu enw'r llwybr. Mae'r paramedr wedi'i ehangu ac mae llinyn yn disodli'r gêm hiraf o batrwm yn erbyn ei werth. Yn y ffurflen gyntaf, dim ond y gêm gyntaf sy'n cael ei ddisodli. Mae'r ail ffurflen yn achosi pob llinyn o batrwm i'w llinyn . Os yw'r patrwm yn dechrau gyda # , mae'n rhaid iddo gydweddu ar ddechrau gwerth ehangedig y paramedr . Os yw'r patrwm yn dechrau gyda % , mae'n rhaid iddo gydweddu ar ddiwedd gwerth ehangedig y paramedr . Os yw llinyn yn null, caiff gemau patrwm eu dileu a gellir gadael y patrwm / dilynol. Os yw'r paramedr yn @ neu * , caiff y llawdriniaeth amnewid ei gymhwyso i bob paramedr safle yn ei dro, ac mae'r ehangiad yn y rhestr ganlynol. Os yw'r paramedr yn amrywiad o amrywiaeth wedi'i danysgrifio gyda @ neu * , caiff y llawdriniaeth amnewid ei gymhwyso i bob aelod o'r gyfres yn eu tro, ac mae'r ehangiad yn y rhestr ganlynol.

Aildrefnu Gorchymyn

Mae amnewid gorchymyn yn caniatáu allbwn gorchymyn i ddisodli'r enw gorchymyn. Mae dwy ffurf:

$ ( gorchymyn )

neu

` gorchymyn`

Mae Bash yn cyflawni'r ehangiad trwy weithredu gorchymyn ac yn disodli'r disodli gorchymyn gydag allbwn safonol y gorchymyn, gydag unrhyw linellau newydd yn cael eu dileu. Ni chaiff llinellau newydd ymgorffori eu dileu, ond efallai y byddant yn cael eu tynnu'n ôl wrth rannu geiriau. Gall y cyfnewidiad cyfatebol $ ( ffeil cat ) gael ei ddisodli gan y $ cyfatebol ond cyflymach (< file ).

Pan ddefnyddir y ffurflen wrth gefn hen-arddull amnewid, mae backslash yn cadw ei ystyr llythrennol ac eithrio pan ddilynir $ , ` , neu \ . Mae'r backquote cyntaf nad oedd wedi'i ragflaenu gan backslash yn terfynu'r newid yn y gorchymyn. Wrth ddefnyddio'r ffurflen $ ( command ), mae pob cymeriad rhwng y rhosynnau yn ffurfio'r gorchymyn; ni chaiff neb eu trin yn arbennig.

Efallai y bydd dirprwyon yn cael eu nythu. I nythu wrth ddefnyddio'r ffurflen wedi'i neilltuo, diancwch y backquotes mewnol gyda backslashes.

Os nad yw'r newid yn ymddangos o fewn dyfynbrisiau dwbl, nid yw rhannu geiriau ac ehangu enw'r llwybr yn cael ei berfformio ar y canlyniadau.

Ehangu Rhifeg

Mae ehangu rhifydd yn caniatáu gwerthuso mynegiant rhifyddol a rhoi amnewidiad o'r canlyniad. Y fformat ar gyfer ehangu rhifedd yw:

$ (( mynegiant ))

Caiff yr ymadrodd ei drin fel pe bai o fewn dyfynbrisiau dwbl, ond ni chaiff dyfynbris dwbl y tu mewn i'r rhosynnau ei drin yn arbennig. Mae pob tocyn yn yr ymadrodd yn cael ei ehangu paramedr, ehangu llinyn, disodli gorchymyn, a dileu dyfynbris. Gellid nythu rhifau rhifyddol.

Mae'r gwerthusiad yn cael ei berfformio yn unol â'r rheolau a restrir isod o dan AROLYGIAD ARITHMETIG . Os yw mynegiant yn annilys, mae bash yn argraffu neges sy'n nodi methiant a dim newid yn digwydd.

Ail-drefnu'r Broses

Cefnogir amnewid prosesau ar systemau sy'n cefnogi pibellau a enwir ( FIFOs ) neu'r dull / dev / fd o enwi ffeiliau agored. Mae'n cymryd ffurf <( rhestr ) neu > ( rhestr ) . Caiff y rhestr broses ei rhedeg gyda'i fewnbwn neu allbwn sy'n gysylltiedig â FIFO neu ryw ffeil yn / dev / fd . Mae enw'r ffeil hon yn cael ei basio fel dadl i'r gorchymyn presennol o ganlyniad i'r ehangiad. Os defnyddir y ffurflen > ( rhestr ) , bydd ysgrifennu at y ffeil yn rhoi mewnbwn ar gyfer y rhestr . Os defnyddir y ffurflen <( rhestr ) , dylid darllen y ffeil fel dadl i gael allbwn y rhestr .

Pan fyddant ar gael, perfformir amnewid proses ar yr un pryd â pharamedr ac ehangu amrywiol, amnewid gorchymyn, ac ehangu rhifyddeg.

Rhannu Gair

Mae'r gragen yn sganio canlyniadau ehangu paramedr, disodli gorchymyn, ac ehangu rhifedd nad oedd yn digwydd o fewn dyfynbrisiau dwbl ar gyfer rhannu geiriau .

Mae'r gragen yn trin pob cymeriad o IFS fel delimydd, ac yn rhannu canlyniadau'r ehangiadau eraill i mewn i eiriau ar y cymeriadau hyn. Os yw IFS yn anghyfreithlon, neu ei werth yn union , y rhagosodedig, yna mae unrhyw ddilyniant o gymeriadau IFS yn golygu delimio geiriau. Os oes gan IFS werth heblaw am y rhagosodiad, yna anwybyddir dilyniannau o'r gofod a'r tab cymeriadau gofod gwag ar ddechrau a diwedd y gair, cyn belled â bod y cymeriad lle gwag yng ngwerth IFS (cymeriad gofod gwag IFS ). Mae unrhyw gymeriad yn IFS nad yw gofod gwag IFS , ynghyd ag unrhyw gymeriadau gofod gwag IFS cyfagos, yn delio â maes. Mae dilyniant o gymeriadau gofod gwag IFS hefyd yn cael ei drin fel delimydd. Os yw gwerth IFS yn null, ni chaiff unrhyw rannu geiriau ddigwydd.

Mae dadleuon null eglur ( "" neu " ) yn cael eu cadw. Mae dadleuon null mewnbwn heb eu dyfynnu, sy'n deillio o ehangu paramedrau heb unrhyw werthoedd, yn cael eu tynnu. Os yw paramedr heb unrhyw werth wedi'i ehangu o fewn dyfynbrisiau dwbl, canlyniadau dadl null ac yn cael ei gadw.

Sylwch, os na fydd unrhyw ehangu yn digwydd, peidio â rhannu unrhyw wahanu.

Ehangu Llwybr Enw

Ar ôl rhannu geiriau, oni bai fod yr opsiwn -f wedi'i osod, sganiau bash bob gair ar gyfer y cymeriadau * ,? , a [ . Os yw un o'r cymeriadau hyn yn ymddangos, yna ystyrir bod y gair yn batrwm , ac yn cael ei ddisodli gan restr wedi'i didoli yn nhrefn yr wyddor o enwau ffeiliau sy'n cyfateb i'r patrwm. Os na chanfyddir unrhyw enwau ffeiliau cyfatebol, ac os yw'r opsiwn cryno nullglob yn analluog, mae'r gair wedi'i adael heb ei newid. Os yw'r opsiwn nullglob wedi'i osod, ac ni chanfyddir unrhyw gyfateb, mae'r gair yn cael ei dynnu. Os caiff y opsiwn nocaseglob opsiwn cragen ei alluogi, mae'r gêm yn cael ei berfformio heb ystyried achos o gymeriadau i'r wyddor. Pan ddefnyddir patrwm ar gyfer ehangu enw'r llwybr, rhaid cyfatebu'r cymeriad ``. '' Ar ddechrau enw neu yn syth ar ôl slash yn eglur, oni bai bod yr opsiwn crai dotreg yn cael ei osod. Wrth gyfateb enw'r llwybr, rhaid i'r cymeriad slash bob amser gael ei gydweddu'n eglur. Mewn achosion eraill, ni chaiff y cymeriad ``. '' Ei drin yn arbennig. Gweler y disgrifiad o siopt isod o dan BELLAU BUILTIN SHELL am ddisgrifiad o'r opsiynau nocaseglob , nullglob , a chregyn dotglob .

Gellir defnyddio'r newidyn gragen GLOBIGNORE i gyfyngu ar y set o enwau ffeiliau sy'n cyfateb patrwm . Os caiff GLOBIGNORE ei osod, caiff pob enw ffeil sy'n cydweddu un o'r patrymau yn GLOBIGNORE ei dynnu o'r rhestr o gemau. Mae'r enwau ffeil ``. '' A `` .. ' yn cael eu hanwybyddu bob amser, hyd yn oed pan osodir GLOBIGNORE . Fodd bynnag, mae gosod GLOBIGNORE yn golygu yr opsiwn o alluogi'r opsiwn cregyn dotglob , felly bydd yr holl enwau ffeiliau eraill sy'n dechrau gyda ``. '' Yn cyfateb. Er mwyn cael yr hen ymddygiad o anwybyddu enwau ffeiliau yn dechrau gyda ``. '' , Gwnewch ``. * '' Un o'r patrymau yn GLOBIGNORE . Mae'r opsiwn dotglob yn anabl pan nad yw GLOBIGNORE yn anfodlon.

Cydweddu Patrwm

Mae unrhyw gymeriad sy'n ymddangos mewn patrwm, heblaw'r cymeriadau patrwm arbennig a ddisgrifir isod, yn cydweddu ei hun. Efallai na fydd cymeriad NUL yn digwydd mewn patrwm. Rhaid dyfynnu'r cymeriadau patrwm arbennig os oes angen eu cyfateb yn llythrennol.

Mae gan y cymeriadau patrwm arbennig yr ystyron canlynol:

*

Yn cydweddu unrhyw llinyn, gan gynnwys y llinyn null.

?

Yn cydweddu unrhyw gymeriad unigol.

[...]

Yn cydweddu unrhyw un o'r cymeriadau amgaeëdig. Mae pâr o gymeriadau a wahanir gan gysylltnod yn dynodi mynegiant amrediad ; cyfatebir unrhyw gymeriad sy'n trefnu rhwng y ddau gymeriad hynny, yn gynhwysol, gan ddefnyddio dilyniant coladu a chymeriad y lleoliad presennol. Os yw'r cymeriad cyntaf yn dilyn [ yn a ! neu a ^ yna cymerir unrhyw gymeriad nad yw'n amgaeëdig. Pennir gorchymyn didoli cymeriadau mewn ymadroddion amrediad gan y lleoliad presennol a gwerth y newidyn cregyn LC_COLLATE , os caiff ei osod. A - gellir ei gyfateb gan ei gynnwys fel y cymeriad cyntaf neu olaf yn y set. A ] gael ei gyfateb gan ei gynnwys fel y cymeriad cyntaf yn y set.

O fewn [ a ] , gellir nodi dosbarthiadau cymeriad gan ddefnyddio'r cystrawen [[ dosbarth :] , lle mae dosbarth yn un o'r dosbarthiadau canlynol a ddiffiniwyd yn safon POSIX.2:

alnum alpha ascii blank cntrl digit graph lower print punct space gair uchaf xdigit
Mae dosbarth cymeriad yn cyfateb i unrhyw gymeriad sy'n perthyn i'r dosbarth hwnnw. Mae'r dosbarth cymeriad geiriau yn cyfateb i lythyrau, digidau, a'r cymeriad _.

O fewn [ a ] , gellir pennu dosbarth cyfwerth gan ddefnyddio'r cystrawen [= c =] , sy'n cyfateb i bob cymeriad gyda'r un pwysau casglu (fel y'i diffinnir gan y lleoliad presennol) fel y cymeriad c .

O fewn [ a ] , y cystrawen [. symbol .] yn cydweddu â'r symbol symbol coladu.

Os yw opsiwn y gragen extglob yn cael ei alluogi gan ddefnyddio'r siop a adeiladwyd, cydnabyddir sawl gweithredwr paru estynedig. Yn y disgrifiad canlynol, mae rhestr patrwm yn rhestr o un neu ragor o batrymau sy'n cael eu gwahanu gan | . Gellir ffurfio patrymau cyfansawdd gan ddefnyddio un neu ragor o'r is-batrymau canlynol:

( rhestr patrwm )

Yn cyd-fynd sero neu un o'r patrymau a roddir

* ( rhestr patrwm )

Yn cyfateb i ddigwyddiadau sero neu fwy o'r patrymau a roddwyd

+ ( rhestr patrwm )

Yn cyd-fynd un neu ragor o ddigwyddiadau o'r patrymau a roddwyd

@ ( patrwm-rhestr )

Yn cydweddu'n union un o'r patrymau a roddir

( rhestr patrwm )

Yn cydweddu unrhyw beth ac eithrio un o'r patrymau a roddir

Tynnu Dyfyniad

Ar ôl yr ehangiadau blaenorol, tynnir pob digwyddiad heb ei nodi o'r cymeriadau \ , ' , a ' nad oedd yn deillio o un o'r ehangiadau uchod.

REDIRECTION

Cyn i orchymyn gael ei weithredu, gellir ailgyfeirio ei fewnbwn a'i allbwn gan ddefnyddio nodiant arbennig a ddehonglir gan y gragen. Gellid defnyddio ailgyfeirio hefyd i agor a chau ffeiliau ar gyfer yr amgylchedd gweithredu cregyn presennol. Gall y gweithredwyr ailgyfeirio dilynol fynd rhagddo neu ymddangos yn unrhyw le o fewn gorchymyn syml neu efallai y byddant yn dilyn gorchymyn . Caiff ailgyfeiriadau eu prosesu yn y drefn y maent yn ymddangos, o'r chwith i'r dde.

Yn y disgrifiadau canlynol, os hepgorir y rhif disgrifydd ffeil, a chymeriad cyntaf y gweithredydd ailgyfeirio yw < , mae'r ailgyfeirio yn cyfeirio at y mewnbwn safonol (disgrifydd ffeil 0). Os mai cymeriad cyntaf y gweithredydd ailgyfeirio yw > , mae'r ailgyfeirio yn cyfeirio at yr allbwn safonol (disgrifydd ffeil 1).

Mae'r gair yn dilyn y gweithredydd ailgyfeirio yn y disgrifiadau canlynol, oni nodir fel arall, yn destun ehangiad brace, ehangu tilde, ehangu paramedr, newid yn y lle, ehangu rhifedd, dileu dyfynbrisiau, ehangu enw'r llwybr, a rhannu geiriau. Os yw'n ymestyn i fwy nag un gair, mae adroddiadau bash yn gamgymeriad.

Sylwch fod y drefn ailgyfeirio yn arwyddocaol. Er enghraifft, y gorchymyn

ls > dirlist 2 > ac 1

yn cyfeirio at allbwn safonol a gwall safonol i'r dirlist ffeil, tra bod y gorchymyn

ls 2 > & 1 > dirlist

yn cyfarwyddo'r allbwn safonol yn unig i ffeilyddydd ffeiliau, oherwydd dychwelwyd y gwall safonol fel allbwn safonol cyn i'r allbwn safonol gael ei ailgyfeirio i dirlist .

Mae Bash yn trin nifer o enwau ffeiliau yn arbennig pan gaiff eu defnyddio mewn ailgyfeiriadau, fel y disgrifir yn y tabl canlynol:

/ dev / fd / fd

Os yw fd yn gyfan gwbl ddilys, mae disgrifydd ffeil fd yn cael ei ddyblygu.

/ dev / stdin

Disgrifydd ffeil 0 yn cael ei ddyblygu.

/ dev / stdout

Mae disgrifiad 1 File wedi'i dyblygu.

/ dev / stderr

Mae disgrifydd ffeil 2 yn cael ei dyblygu.

/ dev / tcp / host / port

Os yw gweinydd yn enw gwesteiwr dilys neu gyfeiriad Rhyngrwyd, ac mae'r porthladd yn rif porthladd cyfanrif neu enw'r gwasanaeth, ymdrechion bash i agor cysylltiad TCP â'r soced cyfatebol.

/ dev / udp / host / port

Os yw host yn enw gwesteiwr dilys neu gyfeiriad Rhyngrwyd, ac mae'r porthladd yn rif porthladd cyfanrif neu enw'r gwasanaeth, ymdrechion bash i agor cysylltiad CDU â'r soced cyfatebol.

Mae methiant i agor neu greu ffeil yn achosi i'r ailgyfeirio fethu.

Mewnbwn Ailgyfeirio

Mae ailgyfeirio mewnbwn yn achosi'r ffeil y mae ei enw yn deillio o ehangu gair i gael ei agor ar gyfer darllen ar ddisgrifydd ffeil n , neu'r mewnbwn safonol (disgrifydd ffeil 0) os nad yw wedi'i nodi.

Y fformat cyffredinol ar gyfer ailgyfeirio mewnbwn yw:

[ n ] < word

Ailgyfeirio Allbwn

Mae ailgyfeirio allbwn yn achosi'r ffeil y mae ei enw yn deillio o ehangu gair i gael ei hagor i ysgrifennu ar ddisgrifydd ffeil n , neu'r allbwn safonol (disgrifydd ffeil 1) os nad yw wedi'i nodi. Os nad yw'r ffeil yn bodoli fe'i crëir; os yw'n bodoli, caiff ei dorri i faint sero.

Y fformat cyffredinol ar gyfer ailgyfeirio allbwn yw:

[ n ] > gair

Os yw'r gweithredydd ailgyfeirio >> , a'r opsiwn noclobber wedi ei alluogi, bydd y ailgyfeirio yn methu os yw'r ffeil y mae ei enw yn deillio o ehangu gair yn bodoli ac yn ffeil reolaidd. Os yw'r gweithredydd ailgyfeirio yn > | , neu'r gweithredydd ailgyfeirio yw > ac ni chaniateir yr opsiwn noclobber i'r gorchymyn adeiledig set , mae'r ailgyfeirio yn cael ei wneud hyd yn oed os yw'r ffeil a enwir yn ôl gair yn bodoli.

Atodi Allbwn Ailgyfeiriedig

Mae ailgyfeirio allbwn yn y ffasiwn hon yn achosi'r ffeil y mae ei enw yn deillio o ehangu gair i gael ei agor i'w osod ar ddisgrifiad ffeil n , neu'r allbwn safonol (disgrifydd ffeil 1) os nad yw wedi'i nodi. Os nad yw'r ffeil yn bodoli, fe'i crëir.

Y fformat cyffredinol ar gyfer cyflwyno allbwn yw:

[ n ] >> gair

Ailgyfeirio Allbwn Safonol a Gwall Safonol

Mae Bash yn caniatáu i'r allbwn safonol (disgrifydd ffeil 1) a'r allbwn gwall safonol (disgrifydd ffeil 2) gael ei ailgyfeirio i'r ffeil y mae ei enw yn ehangu gair gyda'r adeilad hwn.

Mae dau fformat ar gyfer ailgyfeirio allbwn safonol a gwall safonol:

&> gair

a

> a gair

O'r ddwy ffurf, mae'n well gan y cyntaf. Mae hyn yn gyfwerth â'i gilydd

> gair 2 > ac 1

Dogfennau Yma

Mae'r math hwn o ailgyfeirio yn cyfarwyddo'r gragen i ddarllen mewnbwn o'r ffynhonnell gyfredol nes bod llinell sy'n cynnwys gair yn unig (heb unrhyw eiriau trawiadol) yn cael ei weld. Yna, defnyddir yr holl linellau a ddarllenir hyd at y pwynt hwnnw fel y mewnbwn safonol ar gyfer gorchymyn.

Fformat y dogfennau yma yw:

<< [ - ] gair yma-ddogfen delimiter

Ni chaiff unrhyw ehangu paramedr, disodli gorchymyn, ehangu rhifedd, neu ehangu enw'r llwybr ar y gair . Os dyfynnir unrhyw gymeriadau mewn gair , mae'r delimydd yn ganlyniad i gael gwared ar ddyfynbris ar eiriau , ac nid yw'r llinellau yn y ddogfen yma wedi'u hehangu. Os nad yw'r gair wedi'i nodi, mae holl linellau y ddogfen yma yn destun ehangu paramedr, newid gorchymyn, ac ehangu rhifedd. Yn yr achos olaf, anwybyddir y dilyniant cymeriad \ , a \ ' i ddyfynnu'r cymeriadau \ , $ , a ` .

Os yw'r gweithredydd ailgyfeirio yn << - , yna mae'r holl gymeriadau tab blaenllaw yn cael eu tynnu oddi wrth linellau mewnbynnu a'r llinell sy'n cynnwys delimydd . Mae hyn yn caniatáu yma - dogfennau o fewn sgriptiau cregyn i'w rhoi mewn ffasiwn naturiol.

Cynteddau Yma

Mae amrywiad o ddogfennau yma, y ​​fformat yw:

<<< gair

Mae'r gair wedi'i ehangu a'i gyflenwi i'r gorchymyn ar ei fewnbwn safonol.

Disgrifwyr Ffeil Dyblygu

Y gweithredydd ailgyfeirio

[ n ] <& word

yn cael ei ddefnyddio i ddyblygu disgrifwyr ffeiliau mewnbwn. Os yw geiriau'n ymestyn i un neu fwy o ddigidau, gwneir y disgrifydd ffeil a ddynodir gan n yn gopi o'r disgrifydd ffeil hwnnw. Os nad yw'r digidau mewn gair yn nodi disgrifydd ffeil ar agor i'w fewnbwn, mae gwall ailgyfeirio yn digwydd. Os yw geiriau'n gwerthuso - mae disgrifiad ffeil n ar gau. Os na nodir n , defnyddir y mewnbwn safonol (disgrifydd ffeil 0).

Y gweithredwr

[ n ] > a gair

yn cael ei ddefnyddio yn debyg i ddisgrifwyr ffeiliau allbwn dyblyg. Os na nodir n , defnyddir yr allbwn safonol (disgrifydd ffeil 1). Os nad yw'r digidau mewn gair yn nodi disgrifydd ffeil ar agor ar gyfer allbwn, mae gwall ailgyfeirio yn digwydd. Fel achos arbennig, os na chaiff n ei hepgor, ac nid yw geir yn ymestyn i un neu fwy o ddigidau, mae'r allbwn safonol a'r gwall safonol yn cael eu hailgyfeirio fel y disgrifiwyd yn flaenorol.

Disgrifwyr Ffeil Symud

Y gweithredydd ailgyfeirio

[ n ] <& digid -

yn symud y disgrifydd ffeil digid i ddisgrifydd ffeil n , neu'r mewnbwn safonol (disgrifydd ffeil 0) os nad yw wedi'i nodi. digid ar gau ar ôl cael ei ddyblygu i n .

Yn yr un modd, mae'r gweithredydd ailgyfeirio

[ n ] > & digid -

yn symud y disgrifydd ffeil digid i ddisgrifydd ffeil n , neu'r allbwn safonol (disgrifydd ffeil 1) os nad yw wedi'i nodi.

Disgrifwyr Ffeil Agor ar gyfer Darllen ac Ysgrifennu

Y gweithredydd ailgyfeirio

[ n ] <> gair

yn achosi'r ffeil y mae ei enw yn ehangu gair i gael ei agor ar gyfer darllen ac ysgrifennu ar ddisgrifydd ffeil n , neu ar ddisgrifydd ffeil 0 os nad yw n wedi ei nodi. Os nad yw'r ffeil yn bodoli, fe'i crëir.

ALIASES

Mae aliasau yn caniatáu gosod llinyn ar gyfer gair pan gaiff ei ddefnyddio fel gair cyntaf gorchymyn syml. Mae'r gragen yn cadw rhestr o aliasau y gellir eu gosod a'u gwrthod gyda'r gorchmynion alias ac unalias a adeiladwyd (gweler SHAND BUILTIN COMMANDS isod). Caiff gair cyntaf pob gorchymyn, os nad yw wedi'i ddyfynnu, ei wirio i weld a oes ganddo alias. Os felly, caiff y gair hwnnw ei ddisodli gan destun yr alias. Gall yr enw alias a'r testun newydd gynnwys unrhyw fewnbwn cregyn dilys, gan gynnwys y metacharacters a restrir uchod, ac eithrio na all yr enw alias gynnwys = . Mae gair gyntaf y testun newydd yn cael ei brofi ar gyfer aliasau, ond nid yw gair sy'n union yr un fath ag ehangu alias yn cael ei ehangu yn ail amser. Mae hyn yn golygu y gall un alias ls - l , -F , er enghraifft, ac nid yw bash yn ceisio ehangu'r testun newydd yn ailadroddus. Os yw cymeriad olaf y gwerth alias yn wag , yna mae'r gair gorchymyn nesaf yn dilyn yr alias hefyd yn cael ei wirio am ehangu alias.

Mae aliasau yn cael eu creu a'u rhestru gyda'r gorchymyn alias , a'u tynnu gyda'r gorchymyn unalias .

Nid oes mecanwaith ar gyfer defnyddio dadleuon yn y testun newydd. Os oes angen dadleuon, dylid defnyddio swyddogaeth gragen (gweler SWYDDOGAETHAU isod).

Ni chaiff aliasau eu hehangu pan nad yw'r gragen yn rhyngweithiol, oni bai bod yr opsiwn cregyn expand_aliases yn cael ei osod gan ddefnyddio siop (gweler y disgrifiad o siopt o dan BWYSAU BUILTIN SHELL isod).

Mae'r rheolau sy'n ymwneud â diffinio a defnyddio aliasau ychydig yn ddryslyd. Mae Bash bob amser yn darllen o leiaf un llinell gyflawn o fewnbwn cyn gweithredu unrhyw un o'r gorchmynion ar y llinell honno. Caiff aliasau eu hehangu pan ddarllenir gorchymyn, nid pan fydd yn cael ei weithredu. Felly, nid yw diffiniad alias sy'n ymddangos ar yr un llinell â gorchymyn arall yn dod i rym nes darllenir y llinell nesaf o fewnbwn. Nid yw'r alias newydd yn effeithio ar y gorchmynion sy'n dilyn diffiniad alias ar y llinell honno. Mae'r ymddygiad hwn hefyd yn broblem pan fo swyddogaethau'n cael eu gweithredu. Mae aliases yn cael eu hehangu pan ddarllenir diffiniad swyddogaeth, nid pan fo'r swyddogaeth yn cael ei gweithredu, oherwydd bod diffiniad swyddogaeth ei hun yn orchymyn cyfansawdd. O ganlyniad, nid yw aliasau a ddiffinir mewn swyddogaeth ar gael hyd nes y caiff y swyddogaeth honno ei gweithredu. I fod yn ddiogel, rhowch ddiffiniadau alias bob amser ar linell ar wahân, a pheidiwch â defnyddio alias mewn gorchmynion cyfansawdd.

Ar gyfer bron pob pwrpas, mae aliasau yn cael eu disodli gan swyddogaethau cregyn.

SWYDDOGAETHAU

Mae swyddogaeth gragen, a ddiffinnir fel y disgrifir uchod o dan SHELL GRAMMAR , yn storio cyfres o orchmynion i'w gweithredu yn ddiweddarach. Pan ddefnyddir enw swyddogaeth gragen fel enw gorchymyn syml, gweithredir y rhestr o orchmynion sy'n gysylltiedig â'r enw swyddogaeth honno. Mae swyddogaethau'n cael eu gweithredu yng nghyd-destun y gragen presennol; nid oes proses newydd yn cael ei greu i'w dehongli (cyferbynnwch hyn â gweithredu sgript cregyn). Pan fydd swyddogaeth yn cael ei weithredu, mae'r dadleuon i'r swyddogaeth yn dod yn y paramedrau safle yn ystod ei weithredu. Mae'r paramedr arbennig # yn cael ei ddiweddaru i adlewyrchu'r newid. Mae paramedr sefyllfa 0 yn ddigyfnewid. Mae'r newidyn FUNCNAME wedi'i osod i enw'r swyddogaeth tra bod y swyddogaeth yn gweithredu. Mae pob agwedd arall ar yr amgylchedd gweithredu cregyn yn union yr un fath rhwng swyddogaeth a'i galwr gyda'r eithriad nad yw trap DEBUG (gweler disgrifiad y trap a adeiladwyd o dan BWYNAU BUILTIN SHELL isod) yn cael ei etifeddu oni bai bod y swyddogaeth wedi cael y priodoldeb olrhain ( gweler y disgrifiad o'r datganiad a adeiladwyd isod).

Gellir datgan newidynnau lleol i'r swyddogaeth gyda'r gorchymyn adeiledig lleol . Yn arferol, caiff y newidynnau a'u gwerthoedd eu rhannu rhwng y swyddogaeth a'i alw.

Os gweithredir y dychweliad gorchymyn adeiledig mewn swyddogaeth, mae'r swyddogaeth yn cwblhau ac yn ailddechrau gyda'r gorchymyn nesaf ar ôl yr alwad swyddogaeth. Pan fydd swyddogaeth yn cwblhau, caiff gwerthoedd y paramedrau positional a'r paramedr arbennig # eu hadfer i'r gwerthoedd a oedd ganddynt cyn gweithredu'r swyddogaeth.

Mae'n bosibl y bydd enwau a diffiniadau swyddogaeth yn cael eu rhestru gyda'r opsiwn -f i'r gorchmynion datgelu neu gysyniad a adeiladwyd. Bydd yr opsiwn -F i ddatgan neu gysodi yn rhestru enwau'r swyddogaeth yn unig. Mae'n bosib y bydd swyddogaethau'n cael eu hallforio fel bod yr is-gyllau wedi eu diffinio'n awtomatig gyda'r opsiwn -f i'r adeiledig allforio .

Gall swyddogaethau fod yn ail-weithredol. Ni osodir unrhyw gyfyngiad ar nifer y galwadau adfywio.

GWERTHUSIAD ARITHMETIG

Mae'r gragen yn caniatáu i ymadroddion rhifydd gael eu gwerthuso, o dan rai amgylchiadau (gweler y gorchymyn adeilad a osodwyd ac Ymestyn Rhifeg ). Gwneir y gwerthusiad mewn cyfanrif lled sefydlog heb unrhyw wiriad dros orlif, er bod rhaniad 0 yn cael ei gipio a'i nodi fel camgymeriad. Mae'r gweithredwyr a'u blaenoriaeth a'u cysylltedd yr un fath ag yn iaith C. Mae'r rhestr ganlynol o weithredwyr wedi'i grwpio i lefelau o weithredwyr blaenoriaeth cyfartal. Rhestrir y lefelau er mwyn lleihau cynsail.

id ++ id -

amrywiad ôl-gynyddu ac ôl-gostyngiad

++ id - id

cyn-gynyddu a chyn-gostyngiad amrywiol

- +

unary minus a mwy

! ~

negyddol rhesymegol a bitwise

**

exponentiation

* /%

lluosi, rhannu, gweddill

+ -

adio, tynnu

<< >>

sifftiau chwith a chywir

<=> = <>

cymhariaeth

==! =

cydraddoldeb ac anghydraddoldeb

&

bitwise AC

^

NEWYDD yn unigryw

|

bitwise NEU

&&

rhesymegol A

|

NEU resymegol

expr ? expr : expr

gwerthusiad amodol

= * = / =% = + = - = << = >> = & = ^ = | =

aseiniad

expr1 , expr2

coma

Caniateir newidynnau Shell fel operands; caiff ehangu paramedr ei berfformio cyn i'r arfarniad gael ei werthuso. Mewn mynegiant, efallai y bydd cyfeiriadau cregyn hefyd yn cael eu cyfeirio yn ôl enw heb ddefnyddio'r cystrawen ehangu paramedr. Gwerthfawrogir gwerth newidyn fel mynegiant rhifydd pan gyfeirir ato. Nid oes angen i newidyn cregyn gael ei ddefnyddio ar gyfer ei briodoldeb cyfanrif mewn mynegiant.

Mae cwnstabl â blaenllaw 0 yn cael eu dehongli fel rhifau octal. Mae 0x neu 0X blaenllaw yn dynodi hecsadegol. Fel arall, mae'r niferoedd yn cymryd y ffurflen [ base # ] n, lle mae'r sylfaen yn rhif degol rhwng 2 a 64 sy'n cynrychioli'r sylfaen rifyddeg, ac mae n yn nifer yn y sylfaen honno. Os yw sylfaen # yn cael ei hepgor, yna defnyddir sylfaen 10. Mae'r digidau sy'n fwy na 9 yn cael eu cynrychioli gan y llythrennau isaf, y llythrennau uchaf, @, ac _, yn y gorchymyn hwnnw. Os yw'r sylfaen yn llai na neu'n gyfartal â 36, gellir defnyddio llythrennau isaf a llythyrau uwchradd yn gyfnewidiol i gynrychioli rhifau rhwng 10 a 35.

Gwerthusir gweithredwyr yn nhrefn blaenoriaeth. Gwerthusir is-ymadroddion mewn rhyfeloedd yn gyntaf a gallant orchymyn y rheolau blaenoriaeth uchod.

EXPRESSIONS CYDYNNOL

Defnyddir ymadroddion amodol gan yr [[ gorchymyn cyfansawdd a'r prawf a gorchmynion [ adeiledig i brofi nodweddion ffeiliau a pherfformio cymariaethau llinynnol a rhifyddeg. Mae mynegiantau yn cael eu ffurfio gan yr unary neu'r primaries deuaidd canlynol. Os oes unrhyw ddadl ffeil i un o'r ysgolion cynradd o'r ffurflen / dev / fd / n , yna caiff disgrifydd ffeil n ei wirio. Os yw'r ddadl ffeil i un o'r cynraddau yn un o / dev / stdin , / dev / stdout , neu / dev / stderr , disgrifydd ffeil 0, 1, neu 2, yn y drefn honno, yn cael ei wirio.

-a ffeil

Gwir os oes ffeil yn bodoli.

-b ffeil

Gwir os oes ffeil yn bodoli ac yn ffeil bloc arbennig.

-c ffeil

Gwir os oes ffeil yn bodoli ac yn ffeil arbennig o gymeriad.

-d ffeil

Gwir os oes ffeil yn bodoli ac yn gyfeiriadur.

-e ffeil

Gwir os oes ffeil yn bodoli.

-f ffeil

Gwir os oes ffeil yn bodoli ac yn ffeil reolaidd.

-g ffeil

Gwir os oes ffeil yn bodoli ac yn set-group-id.

-h ffeil

Gwir os oes ffeil yn bodoli ac mae'n gyswllt symbolaidd.

-k ffeil

Gwir os oes ffeil yn bodoli ac mae ei '`styli' yn cael ei osod.

-p ffeil

Gwir os oes ffeil yn bodoli ac mae'n bibell a enwir (FIFO).

-r ffeil

Gwir os oes ffeil yn bodoli ac y gellir ei ddarllen.

-s ffeil

Gwir os oes ffeil yn bodoli ac mae ganddo faint yn fwy na sero.

-t fd

Gwir os yw disgrifydd ffeil fd ar agor ac yn cyfeirio at derfynell.

-u ffeil

Gwir os oes ffeil yn bodoli ac y gosodir ei bit set-user-id.

-w ffeil

Gwir os oes ffeil yn bodoli ac yn ysgrifennu.

-x ffeil

Gwir os oes ffeil yn bodoli ac yn weithredadwy.

-O ffeil

Gwir os oes ffeil yn bodoli ac yn eiddo i'r defnyddiwr defnyddiwr effeithiol.

-G ffeil

Gwir os oes ffeil yn bodoli ac yn eiddo i'r grŵp grŵp effeithiol.

-L ffeil

Gwir os oes ffeil yn bodoli ac mae'n gyswllt symbolaidd.

-S ffeil

Gwir os oes ffeil yn bodoli ac yn soced.

-N ffeil

Gwir os oes ffeil yn bodoli ac wedi ei addasu ers iddo gael ei ddarllen ddiwethaf.

ffeil1 - nt file2

Gwir os yw file1 yn newyddach (yn ôl y dyddiad diwygio) na file2 , neu os oes file1 yn bodoli a does file2 ddim.

ffeil1 - ot file2

Gwir os yw file1 yn hŷn na file2 , neu os oes file2 yn bodoli a does file1 ddim.

ffeil- ffeil e2

Gwir os yw file1 a file2 yn cyfeirio at yr un ddyfais a rhifau inode.

-o enw gorau

Gwir os yw'r opsiwn dewis opsiwn cregyn wedi'i alluogi. Gweler y rhestr o opsiynau o dan y disgrifiad o'r opsiwn -o i'r adeilad adeiledig isod.

-z llinyn

Gwir os yw hyd y llinyn yn sero.

-n llinyn

llinyn

Gwir os nad yw hyd y llinyn yn sero.

string1 == string2

Gwir os yw'r llinynnau'n gyfartal. = gellir ei ddefnyddio yn lle == am gydymffurfiad pOSIX llym.

string1 ! = string2

Gwir os nad yw'r llinynnau'n gyfartal.

string1 < string2

Gwir os yw string1 yn didoli cyn string2 yn wenwynig yn y lleoliad presennol.

string1 > string2

Gwir os yw string1 yn trefnu ar ôl string2 yn wenwynig yn y lleoliad presennol.

arg1 OP arg2

Mae OP yn un o -eq , -ne , -lt , -le , -gt , or -ge . Mae'r gweithredwyr deuaidd rhifyddol hyn yn dychwelyd wir os yw arg1 yn gyfartal, yn gyfartal, yn llai na, yn llai na neu'n gyfartal, yn fwy na, neu'n fwy na neu'n hafal i arg2 , yn y drefn honno. Gall Arg1 a arg2 fod yn gyfan gwbl bositif neu negyddol.

EXPANSION SWYDDOGOL

Pan fydd gorchymyn syml yn cael ei weithredu, mae'r gragen yn perfformio yr ehangiadau, yr aseiniadau a'r ailgyfeiriadau canlynol, o'r chwith i'r dde.

1. Mae'r geiriau y mae'r parser wedi eu marcio fel aseiniadau amrywiol (y rhai sy'n rhagflaenu'r enw gorchymyn) ac ailgyfeiriadau yn cael eu cadw ar gyfer prosesu yn ddiweddarach.

2. Mae'r geiriau nad ydynt yn aseiniadau amrywiol neu ailgyfeiriadau wedi'u hehangu. Os bydd unrhyw eiriau'n parhau ar ôl ehangu, cymerir y gair cyntaf i fod yn enw'r gorchymyn a'r geiriau sy'n weddill yw'r dadleuon.

3. Perfformir atgyfeiriadau fel y disgrifir uchod o dan REDIRECTION .

4. Y testun ar ôl y = ymhob aseiniad amrywiol yn cael ei ehangu, ehangu paramedr, newid gorchymyn, ehangu rhifedd, a dileu dyfynbris cyn cael ei neilltuo i'r newidyn.

Os nad oes canlyniadau enw gorchymyn, mae'r aseiniadau amrywiol yn effeithio ar yr amgylchedd cregyn presennol. Fel arall, caiff y newidynnau eu hychwanegu at amgylchedd y gorchymyn a weithredir ac nid ydynt yn effeithio ar yr amgylchedd cregyn presennol. Os yw unrhyw un o'r aseiniadau'n ceisio neilltuo gwerth i newid yn ddarllenadwy, mae gwall yn digwydd, ac mae'r gorchymyn yn dod allan gyda statws di-sero.

Os nad oes canlyniadau enw gorchymyn, perfformir ailgyfeiriadau, ond nid ydynt yn effeithio ar yr amgylchedd cregyn presennol. Mae gwall ailgyfeirio yn achosi'r gorchymyn i adael gyda statws di-sero.

Os oes enw gorchymyn ar ôl ar ôl ehangu, bydd enillion gweithredu fel y disgrifir isod. Fel arall, mae'r gorchymyn yn ymestyn. Os yw un o'r ehangiadau yn cynnwys newid gorchymyn, statws gadael y gorchymyn yw statws ymadael yr eiliad gorchymyn olaf a berfformiwyd. Os nad oedd unrhyw ddisodlioedd gorchymyn, mae'r gorchymyn yn dod i ben gyda statws sero.

GWEITHREDIAD CYFAN

Ar ôl i orchymyn gael ei rannu'n eiriau, os yw'n arwain at orchymyn syml a rhestr opsiynol o ddadleuon, cymerir y camau canlynol.

Os nad yw'r enw gorchymyn yn cynnwys dim slashes, mae'r gragen yn ceisio ei leoli. Os oes swyddogaeth gragen yn bodoli gan yr enw hwnnw, caiff y swyddogaeth honno ei galw fel y disgrifir uchod yn SWYDDOGAETHAU . Os nad yw'r enw'n cyd-fynd â swyddogaeth, mae'r gragen yn chwilio amdano yn y rhestr o adeiledigau cregyn. Os darganfyddir gêm, defnyddir yr adeilad hwnnw.

Os nad yw'r enw yn swyddogaeth gragen nac adeiledig, ac nad oes ganddo slashes, chwiliwch bash bob elfen o'r PATH ar gyfer cyfeiriadur sy'n cynnwys ffeil cyflawnadwy gan yr enw hwnnw. Mae Bash yn defnyddio bwrdd hash i gofio enwau llwybr llawn y ffeiliau gweithredadwy (gweler hash o dan GORAU ADEILADAU SHELL isod). Mae chwiliad llawn o'r cyfeirlyfrau yn PATH yn cael ei berfformio dim ond os na chafwyd y gorchymyn yn y tabl hash. Os yw'r chwiliad yn aflwyddiannus, mae'r gragen yn argraffu neges gwall ac yn dychwelyd statws ymadael o 127.

Os yw'r chwiliad yn llwyddiannus, neu os yw'r enw gorchymyn yn cynnwys un neu fwy o slashes, mae'r gragen yn gwneud y rhaglen a enwir mewn amgylchedd gweithredu ar wahân. Mae Argument 0 wedi'i osod i'r enw a roddir, ac mae'r dadleuon sy'n weddill i'r gorchymyn wedi'u gosod i'r dadleuon a roddir, os o gwbl.

Os bydd y gweithrediad hwn yn methu oherwydd nad yw'r ffeil mewn fformat cyflawnadwy, ac nad yw'r ffeil yn gyfeiriadur, tybir ei fod yn sgript cregyn , ffeil sy'n cynnwys gorchmynion cregyn. Wedi'i greu i weithredu. Mae'r is-gellwr hwn yn ailsefydlu ei hun, fel bod yr effaith fel pe bai cragen newydd wedi'i ddefnyddio i drin y sgript, ac eithrio bod y lleoliadau o orchmynion a gofnodir gan y rhiant (gweler hash isod o dan BELLAU BUILTIN SHELL ) yn cael eu cadw gan y plentyn.

Os yw'r rhaglen yn ffeil sy'n dechrau gyda #! , mae gweddill y llinell gyntaf yn pennu cyfieithydd ar gyfer y rhaglen. Mae'r gragen yn gweithredu'r cyfieithydd penodedig ar systemau gweithredu nad ydynt yn trin y fformat gweithredadwy hwn eu hunain. Mae'r dadleuon i'r dehonglydd yn cynnwys dadl ddewisol unigol yn dilyn enw'r cyfieithydd ar linell gyntaf y rhaglen, ac yna enw'r rhaglen, ac yna'r dadleuon gorchymyn, os oes un.

GWEITHREDU'R AMGYLCHEDD

Mae gan y gragen amgylchedd gweithredu , sy'n cynnwys y canlynol:

* ffeiliau agored a etifeddwyd gan y gragen wrth oruchwylio, fel y'u haddaswyd gan ailgyfeiriadau a gyflenwir i'r adeilad adeiledig

* y cyfeiriadur gwaith cyfredol fel y'i gosodir gan cd , pushd , neu popd , neu a etifeddwyd gan y gragen wrth oruchwylio

* y fformat creu ffeil yn mwgwd fel a osodir gan umask neu etifeddwyd gan riant y graig

* trapiau cyfredol a osodwyd gan drap

* paramedrau cregyn sy'n cael eu gosod gan aseiniad amrywiol neu gyda set neu etifeddwyd gan riant y cregyn yn yr amgylchedd

* swyddogaethau cregyn * a ddiffiniwyd yn ystod eu gweithredu neu a etifeddwyd gan riant y cregyn yn yr amgylchedd

* dewiswyd dewisiadau wrth oruchwylio (naill ai yn ddiofyn neu gyda dadleuon llinell-orchymyn) neu yn ôl set

* opsiynau wedi'u galluogi gan siop

* aliases cregyn wedi'u diffinio ag alias

* IDau gwahanol brosesau, gan gynnwys rhai swyddi cefndir, gwerth $ $ , a gwerth $ PPID

Pan fydd gorchymyn syml heblaw swyddogaeth adeiledig neu gragen i'w gweithredu, caiff ei ddefnyddio mewn amgylchedd gweithredu ar wahân sy'n cynnwys y canlynol. Oni nodir fel arall, caiff y gwerthoedd eu hetifeddu o'r gragen.

* ffeiliau agored y gragen, ynghyd ag unrhyw addasiadau ac ychwanegiadau a bennir gan ailgyfeiriadau i'r gorchymyn

* y cyfeiriadur gwaith cyfredol

* y modd creu ffeil yn mwgwd

* newidynnau cregyn * wedi'u marcio i'w hallforio, ynghyd â newidynnau a allforir ar gyfer y gorchymyn, a basiwyd yn yr amgylchedd

* caiff trapiau a ddaliwyd gan y gragen eu hailosod at y gwerthoedd a etifeddwyd gan riant y graig, ac anwybyddir trapiau a anwybyddir gan y gragen

Ni all gorchymyn sy'n cael ei ddefnyddio yn yr amgylchedd ar wahân hwn effeithio ar amgylchedd gweithredu'r gragen.

Mae gorchymyn amnewid a gorchmynion asyncronig yn cael eu galw mewn amgylchedd is-gwmni sy'n ddyblyg i'r amgylchedd cregyn, ac eithrio bod y trapiau sy'n cael eu dal gan y gragen yn cael eu hailosod at y gwerthoedd a etifeddodd y gragen oddi wrth ei riant wrth oruchwylio. Mae gorchmynion Builtin sy'n cael eu galw fel rhan o biblinell hefyd yn cael eu gweithredu mewn amgylchedd isgell. Ni all y newidiadau a wneir i'r amgylchedd subshell effeithio ar amgylchedd gweithredu'r gragen.

Os bydd rheoliad swydd yn cael ei ddilyn gan orchymyn, nid yw'r mewnbwn safonol am y gorchymyn yn ffeil / dev / null gwag. Fel arall, mae'r gorchymyn gorfodol yn etifeddu disgrifiadau ffeil y gragen galw fel y'i haddaswyd gan ailgyfeiriadau.