Arithmetic a Bash

Yadda za a Ƙara Ƙididdiga zuwa Lissafin Bash

Kodayake Bash shine harshen rubutun, yana da kyawawan abubuwan da ke tattare da ma'anar manufofin shirin. Wannan ya hada da ayyuka na lissafi. Akwai wasu zaɓuɓɓukan haɓakawa da za ku iya amfani da su don tayar da lissafin lissafi na magana. Wataƙila mafi yawan abin da za a iya karantawa shi ne umarnin bari . Misali

bari "m = 4 * 1024"

zai lissafta sau 4 1024 kuma ya sanya sakamakon zuwa m "m".

Kuna iya buga sakamakon ta hanyar ƙara bayanin sanarwa:

bari "m = 4 * 1024" ya dawo $ m

Zaka iya jarraba wannan daga layin umarni ta shigar da code mai zuwa:

bari "m = 4 * 1024"; Kashe $ m

Zaka kuma iya ƙirƙirar fayil wanda ya ƙunshi dokokin Bash, wanda ya kamata ka ƙara layin a saman fayil ɗin wanda ya ƙayyade shirin da ya kamata a kashe lambar. Misali:

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

yana zaton Bash yana iya samuwa a / bin / bash . Har ila yau kana buƙatar saita izini na fayilolin rubutun don haka yana iya aiwatarwa. Da alama cewa sunan fayil ɗin rubutun na script1.sh , za ka iya saita izini don yin fayil ɗin da zai iya aiwatar da umurnin:

kod 777 script1.sh

Bayan haka zaka iya aiwatar da shi tare da umurnin:

./script1.sh

Ayyukan lissafi na samuwa suna kama da waɗanda suke cikin harsunan shirye-shiryen daidaitawa kamar Java da C. Bayan ƙaddarawa, kamar yadda aka kwatanta a sama, zaku yi amfani da ƙarin:

bari "m = a + 7"

ko raguwa:

bari "m = a - 7"

ko rarraba:

bari "m = a / 2"

ko modulo (saura bayan bayanan mahaɗi):

bari "m = a% 100"

Lokacin da ake amfani da aiki akan irin wannan ma'auni wanda aka sanya sakamakon haka za ka iya amfani da ma'aunin lissafi na ɗan gajeren lokaci na aiki, wanda aka kira shi a matsayin masu aikin aiki. Misali, don ƙarin bayani, muna da:

bari "m + = 15"

wanda yake daidai da "m = m + 15". Don ragewar muna da:

bari "m - = 3"

wanda yake daidai da "m = m - 3". Don rarraba muna da:

bari "m / = 5"

wanda yake daidai da "m = m / 5". Kuma ga modulo, muna da:

bari "m% = 10"

wanda yake daidai da "m = m% 10".

Bugu da ƙari, za ka iya amfani da haɓakawa da ƙwaƙwalwa:

bari "m ++"

daidai ne da "m = m + 1". Kuma

bari "m-"

daidai ne da "m = m - 1".

Kuma a sa'an nan kuma akwai mai aiki na "tambaya-colon" mai tambaya, wanda ya dawo daya daga dabi'u biyu dangane da ko ƙayyadadden yanayin gaskiya ne ko ƙarya. Misali

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

Hannun dama na wannan bayanin aiki yana kimantawa zuwa "0" idan m "m" ya kasance kasa da 9. In ba haka ba, yana kimantawa 1. Wannan yana nufin an sanya m "k" "0" idan "m" ba shi da ƙasa fiye da 9 da "1" in ba haka ba.

Babban nau'i na mai amfani da alamar mark-colon shine:

yanayin? darajar-idan-gaskiya: darajar-idan-ƙarya

Tsarin Gida mai Rufi a Bash

Da bari adarewa ke aiki kawai don lissafi. Don mahimmin lissafi mai zurfi za ka iya amfani da misalin GTU bc calculator kamar yadda aka kwatanta a cikin wannan misali:

Kira "32.0 + 1.4" | bc

Kamfanin "mai tuƙi" "|" ya wuce kalman lissafi "32.0 + 1.4" zuwa ƙirar ƙwaƙwalwar bc, wanda ya dawo da ainihin lambar. Umurnin saɓo yana buga sakamakon zuwa gagarumin fitarwa.

Ƙari madaidaiciya don ilimin lissafi

Backticks (koma baya) zasu iya amfani dasu don kimanta bayanin maganganu kamar yadda a wannan misali:

Kashewa $ m + 18`

Wannan zai ƙara 18 zuwa darajar "m" mai mahimmanci sannan kuma buga fitar da sakamakon.

Don sanya ƙimar lissafi zuwa madaidaici zaka iya amfani da daidaitattun alamar ba tare da wurare a kusa da shi ba:

m = "expr $ m + 18`

Wata hanyar da za a tantance maganganun lissafi shine a yi amfani da iyaye biyu. Misali:

((m * = 4))

Wannan zai rage darajar m "m" m.

Bayan nazarin ilimin lissafi, Bash harshe yana samar da wasu ƙera shirye-shiryen shirye-shiryen, irin su tsalle-tsalle , yayin da haɗe-haɗe, kwakwalwa , da ayyuka da kuma kayan aiki .