Ka helu helu ma Bash

Pehea e hoʻouka ai i nā helu i kahi papa inoa Bash

ʻOiaiʻo Bash he 'ōlelo papaʻi, ua nui loa nā hiki a pau o ka'ōlelo hoʻolālā papahana. Loaʻa kēia i nā hana helu. Aia kekahi mau koho hōʻailona hiki iāʻoe ke hoʻohana e hoʻolālā i ka loiloiʻana o kaʻike. ʻO ka meaʻoi loa i hiki ke kauʻia ke kauoha. ʻo kahi laʻana

e "m = 4 * 1024"

e helu i nā manawa 424 1024 a hāʻawi i ka hopena i ka "m" alapili.

Hiki iāʻoe ke paʻi i ka hualoaʻa ma ka hoʻonuiʻana i kahi'ōlelo kuʻuna:

e "m = 4 * 1024" echo $ m

Hiki iāʻoe ke hōʻoia i kēia mai ke kauoha kauoha ma o ka hoʻokomoʻana i kēia code:

e "m = 4 * 1024"; echo $ m

Hiki iāʻoe ke hana i kahi pūnaewele e pili ana i nā kauoha Bash, i ia manawa e ponoʻoe e hōʻoia i kahi laina ma ka luna o ka pūnaewele e ho'ākāka ana i ka papahana e kūpono ana e hoʻokō i ka code. ʻo kahi laʻana:

#! / bin / bash "m = 4 * 1024" echo $ m

me ka manaʻo e hoʻokomoʻia ka Bash wānana ma / bin / bash . Ponoʻoe e hoʻonoho i nāʻaeʻana o kāu pūnaewele hōʻoia i hiki ke hoʻohanaʻia. Ke manaʻo nei i ka inoa o ka inoa script script, he script1.sh , hiki iāʻoe ke hoʻonohonoho i nāʻaeʻana e hana i ka faila me ke kauoha:

kle 777 script1.sh

A laila e hiki iāʻoe ke hana ia me ke kauoha:

./script1.sh

ʻO nā hana helu helu e like me ka mea ma nā papahana hoʻolālā papahana e like me Java a me C. Ma muli o ka hoʻonuiʻana, e like me ka mea i hōʻikeʻia ma luna, hoʻohanaʻoe i ka waihona:

e "m = a + 7"

ole ka unuhi:

e "m = a - 7"

ole mahele:

e "m = a / 2"

aiʻole modulo (ke koena i hope o kekahi maheleʻoihana):

e "m = a% 100"

Ke hoʻohanaʻia ka hoʻohanaʻana i ka hoʻololi like i ka hopena i hāʻawiʻia ai, hiki iāʻoe ke hoʻohana i nā hōʻailona hōʻailona hana pōkole, i kapaʻia he mau pūnaehana hoʻonohonoho pūnaewele. Eia kekahi laʻana, no ka hōʻuluʻuluʻana, ua loaʻa iā mākou:

e "m + = 15"

e like me "m = m + 15". No ka hoʻohālike a mākou:

e "m - = 3"

e like me "m = m - 3". No ka māhele, loaʻa iā mākou:

e "m / = 5"

e like me "m = m / 5". A no modulo, ua loaʻa iā mākou:

e "m% = 10"

e like me "m = m% 10".

Eia hou, hiki iāʻoe ke hoʻohana i nā mea hoʻokumu a me nāʻoihana hoʻopiʻi:

e "m ++"

e like me "m = m + 1". A

e "m-"

e like me "m = m - 1".

A laila, aia ka "mark-colon" o ka nīnau, e hoʻihoʻi mai ana i kahi o nā helu waiwaiʻelua ma muli o ka pololei a iʻoleʻole ka'ōlelo i'ōleloʻia. ʻo kahi laʻana

e "k = (m <9)? 0: 1"

Ke helu nei kaʻaoʻao'ākau o kēia 'ōlelo i ka "0" ināʻaʻole emi ka "m" i kēia mau mea. ma mua o 9 a me "1" iʻole.

ʻO kaʻaoʻao nui o ka meaʻoihana mark colon'ī:

kūlana? pono-inā-pono:ʻo ka value-if-false

ʻO ka helu helu lolo ma Bash

Eʻae i ka mea hoʻohana wale nō e hana no ka helu heluʻana. No ka heluʻana o ka pehiʻauʻau e hiki iāʻoe ke hoʻohana e like me ka helu helu GNU bc e like me ia i hōʻikeʻia i kēia hiʻohiʻona:

e hoʻopiʻi hou "32.0 + 1.4" | b

ʻO ka "pipe" operator "|" hele i ka huahelu helu "32.0 + 1.4" i ka calculator bc, e hoʻihoʻi i ka helu maoli. Hoʻopuka ke kiko hua'ōlelo i ka hopena i ka pukaʻoihana.

Ke Kuhikuhina'ē aʻe no ka hōʻailona

Hiki ke hoʻohanaʻia nā Backticks (back quotes) e loiloi i kahi hua'ōlelo helu e like me kēia hiʻohiʻona:

echo 'expr $ m + 18`

E hoʻonuiʻia kēia i 18 i ke kumukūʻai o ka mea "variable" a hoʻololi i ka hopena.

No ka hoʻoili i ke kumukūʻai helu i kekahi mea'ililoli hiki iāʻoe ke hoʻohana i ka hōʻailona like me nāʻole āpau a puni:

m = "expr $ m + 18`

ʻO kekahiʻano'ē aʻe e loiloi i ka'ōlelo heluʻikepili, e hoʻohana i ka kinakoki lua. ʻo kahi laʻana:

((m * = 4))

E hoʻohālike kēia i ka waiwai o ka mea "variable".

Ma waho aʻe o ka hoʻonuiʻana i ka helu helu, hoʻolālā ka Bash shell i nā papa hana hoʻolālā, e like me nā loops , nā loops , nā conditional , a me nā hana a me nā subroutines .