Arithmetic eBash

Indlela yokongeza izibalo kwiSkripthi seBash

Nangona i-Bash yintetho yeskripthi, inamathuba amaninzi kuwo onke amanqanaba okusetyenziswa kolwimi lwenkqubo jikelele. Oku kubandakanya imisebenzi ye-arithmetic. Kukho iinketho ze- syntax ongazisebenzisayo ukuvandlakanya ukuhlolwa kwe-arithmetic yegama. Mhlawumbi ofundeka kakhulu ngumyalelo wokuvumela. Umzekelo

vumela "m = 4 * 1024"

Uya kuqulunqa amaxesha angama-4 1024 kwaye anike umphumo kwi-variable "m".

Ungaprintela umphumo ngokufaka ingxelo ye- echo :

vumela "m = 4 * 1024" i-$ m

Unokuvavanya oku ukusuka kumgca womyalelo ngokufaka ikhowudi elandelayo:

vumela "m = 4 * 1024"; u-$ m

Unokwenza kwakhona ifayile equlethe imiyalelo yeBash, kwimeko apho kufuneka udibanise umgca phezulu kwefayili ecacisa inkqubo ekufuneka iyenze ikhowudi. Umzekelo:

#! / bin / bash bashhi "m = 4 * 1024" u-$ m

Ukucinga ukuba i-Bash ephumelelayo ikhona kwi / bin / bash . Kwakhona kufuneka ubeke iimvume zefayili yakho yeskripthi ukuze iphumeze. Ukucinga ukuba igama lefayile yeskripthi script1.sh , ungasetha iimvume ukwenza ifayile isebenze ngomyalelo:

chmod 777 script1.sh

Emva koko unokwenza ngayo umyalelo:

./script1.sh

Imisebenzi ye-arithmetic ekhoyo ifana nalawo kwiilwimi eziqhelekileyo zokusetyenziswa njengeJava kunye noCC Ngaphandle kokuphindaphinda, njengoko kuboniswe ngasentla, usebenzisa okubongeziweyo:

vumela "m = a + 7"

okanye ukususa:

vumela "m = a-7"

okanye ukwahlula:

vumela "m = a / 2"

okanye i-modulo (intsalela emva kwesahlulo se-integer):

vumela "m = i% 100"

Xa usebenziso lusetyenziselwa kwisitshixo esifanayo apho isiphumo sinikwe khona ungasebenzisa i-arithematic standard shorthand operators, ekubhekiselwe kuzo njengabasebenzi abenzileyo. Umzekelo, ukongeza, sinakho:

vumela "m + = 15"

elilingana ne "m = m + 15". Ukukhupha sinakho:

vumela "m - = 3"

elilingana ne "m = m-3". Ukwahlukana esinalo:

vumela "m / = 5"

elilingana ne "m = m / 5". Kwaye nge-modulo, sinakho:

vumela "m% = 10"

elilingana ne "m = m% 10".

Ukongezelela, unokusebenzisa abasebenzisi bokunyusa kunye nokunciphisa :

vumela "m ++"

lilingana ne "m = m + 1". Kwaye

vumela "m--"

lilingana ne "m = m - 1".

Kwaye kukho i-ternary "mark mark-colon" yomsebenzisi wee-ternary, ebuyisela enye yexabiso elibini kuxhomekeke ekubeni ingaba imeko echanileyo iyinyani okanye iyinyani. Umzekelo

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

Icandelo lesandla sokunene sesitatimende sabelo sihlola "0" ukuba iinguqulelo "m" ingaphantsi kwe-9. Ngaphandle koko, ivavanya kwi-1. Oku kuthetha ukuba inguquko "k" ibelwe "0" ukuba "m" ingaphantsi ngaphaya kwe-9 kwaye "1" kungenjalo.

Ifom ejwayelekile yomqhubi-umbuzo we-colon ngu:

imeko? xabiso-xa-yinyaniso: xabiso-xa-inkohliso

I-Arithmetic ye-Floating Point eBash

Umsebenzisi ovumelekileyo usebenza kuphela kwi-arithmetic eninzi. I-arithmetic enefuthe enokuthi ungayisebenzisa umzekelo i-calculator ye-GNU bc njengoko kuboniswe kulo mzekelo:

phendula "32.0 + 1.4" | bc

Umqhubi "umbhobho" "|" idlula igama elithi "32.0 + 1.4" kwi-calculator ye-bc, ebuyisela inombolo yangempela. Umyalelo we- echo uprinsa umphumo kwisiphumo esisezantsi.

I-Syntax enye yeArithmetic

Iimbuyiselo (izicatshulwa ezingasemva) zingasetyenziselwa ukuphonononga ibinzana le-arithmetic njengale mzekelo:

phendula i-expr $ m + 18`

Oku kuya kwandisa 18 kwixabiso le variable "m" uze uprinte umphumo.

Ukunika ixabiso lokubala kwi-variable ukuba ungasebenzisa uphawu olulinganayo ngaphandle kweendawo ezikujikelezile:

m = `expr $ m + 18`

Enye indlela yokuvavanya amagama ase-arithmetic ukusebenzisa abazali ababini. Umzekelo:

((m * = 4))

Oku kuya kukhangela ixabiso le-variable "m".

Ngaphandle kokuvavanya i-arithmetic, igobolondo yeBash inikeza ezinye iinkqubo zokwakha, ezifana ne -loops , ngelixa-loops , iimeko kunye nemisebenzi kunye neenkomfa .