Pehea e kākau Bash WHILE-Loop

Nā kauoha, Syntax, a me nā lālā

Hiki iāʻoe ke hana i ka papa o nā kauoha ma ke kākauʻana iā lākou i kahi pūnaewele a laila e holo ana.

ʻO kahi pūnaewele kikokikona wale nō ia he waihona kikokikona, i ka manawa me ka extension file SH, i loko o ka papa o nā kuhikuhi i hiki ke hoʻokōʻia mai ke laina kauoha ( shell ).

ʻOiaiʻo Loop Examples

Ma lalo iho nei he hiʻohiʻona o kahi manawa loop. Ke hoʻokōʻia, e paʻi kēia pūnaewele i nā helu 1 a hiki i ka 9 ma ka pakuhi. ʻO ka'ōlelo manawa e hāʻawi iāʻoe i ka maʻalahi no ka ho'ākākaʻana i ka hopena hope ma mua o ka lālā .

#! / bin / bash count = 1 oiai [$ count -le 9] e pane i "$ helu" moe 1 ((count ++)) i hanaʻia

Eia kekahi laʻana, hiki iāʻoe ke hana i ka'ōkuhi mua i kahi panui pauʻole ma ka hoʻokuʻuʻana i ka helu hoʻohui "((count ++))":

#! / bin / bash count = 1 oiai [$ count -le 9] e pane i "$ count" moe 1 i hanaʻia

ʻO ka'ōlelo "moe 1" e hoʻomaha i ka palapala no ka 1ʻakahi ma kēlā me kēia hōʻike. E hoʻohana i ka pakuhiʻaoʻao Ctrl + C e hoʻopau ai i ke kaʻina hana.

Hiki iāʻoe ke hana i kahi loop loop i ke kauʻana i kahi kolonā e like me keʻano:

#! / bin / bash count = 1 oiai: hana echo "$ helu" moe 1 ((count ++)) i hanaʻia

I mea e hoʻohana ai i nā kūlana he nui i loko o ka lālā āpau, ponoʻoe e hoʻohana i ka hōʻailona kūpanapuni lua:

helu = 1 hana = 0 oiai [[$ count -le 9] & [$ made == 0]] e pane "$ helu" moe 1 ((count ++)) inā [$ count == 5]; a laila $ a = 1 fi

Ma kēia palapala, ua hoʻomakaʻia ka "make" i ka helu 0 a laila hoʻonoho i ka 1 i ka wā e hiki ai ke helu 5. Ua'ōleloʻia ka loop loop while the loop will continue as long as "count" is less than nine and "done" is equal aiʻole. No laila, puka ka puka puka i ka manawa i heluʻia ka heluhelu 5.

ʻO ka "&&" keʻanoʻo "a" a me "|| " 'o ia hoʻi, ka loiloi "a" paha.

ʻO kekahi papa helu'ē aʻe no nā paʻi "a" a "aiʻole" ma nāʻano "-a" a me "-o" me nā pale kīkoʻo hoʻokahi. ʻO ke kumu i luna nei:

[[count -le 9] & [$ made == 0]]

... hiki ke hoʻololi hou penei:

[$ count -le 9] -a [$ made == 0]

ʻO ka heluheluʻana i kahi pūnaewele ke hanaʻia me ka wā o ka loop. Ma kēiaʻano hiʻohiʻona, ua heluhelu ka papa haʻawina i nā laina helu ma o laina o kahi faila i kapaʻia "inventory.txt:"

FILE = moʻomehana .xt exec 6

Hāʻawi ka laina mua i ka inoa inoa pūnaewele i ka "FILE" kōloli. Hoʻopakele ka lālaniʻelua i ka "hōʻailona maʻamau" ma ka mea kākau palapala "6" (hiki ke kohoʻia ma waena o 3 a me 9). Ua hanaʻia kēia i mea e hiki ai ke hoihoiʻia i "ka" palapala "palapala" i ka hopena o ka palapala (e nānā i ka hua'ōlelo "exec 0 Ma ka laina 3 ke hoʻoiliʻia ka waihona hoʻokomo i ka palapala" 0, "i hoʻohanaʻia ʻO ka heluhelu "heluhelu" e heluhelu i kahi laina mai ka faila ma kēlā me kēia hoʻopaʻaʻia a hāʻawi iā ia i keʻano "line1".

No ka heleʻana i kahi manawa i ka manawa kūpono, hiki iāʻoe ke hoʻohana i ka'ōlelo haʻi hāʻule penei:

helu = 1 hana = 0 oiai [$ count -le 9] e hoʻohoho i ka "$ count" moe 1 ((count ++)) inā [$ count == 5] e wāwahi i kahi i hoʻopauʻia

Hiki i ka 'ōlelo hōʻeha ke hoʻolālā i ka hopena o ka polokalamu i ka hopena i ka manawa o ka loop a hana i kekahi mau'ōlelo e pili ana. I kēia hihia, hiki i ka hua'ōlelo "hoʻopiʻi hoʻopauʻia."

ʻO ka'ōlelo hoʻomau, ma kekahiʻaoʻao, e'ōkuhi wale i ke koena o ka manawa o ka'ōlelo loop o kaʻike kuhi nei a lele pololei i ka hoʻomaopopo houʻana:

helu = 1 hana = 0 i [$ count -le 9] moe i ka moe 1 ((count ++)) inā [$ count == 5] a laila hoʻomau i ka echo "$ count" i hanaʻia echo Finished

I kēia hihia, hoʻokōʻia ka'ōlelo "hoʻomau" i ka wā e heluʻia ai ka "helu" helu.ʻO kēia keʻano o ka helu o ka helu (ʻo "helu helu" 5).