Arithmetic in Bash

Nola gehitu Kalkuluak Bash Script-ekin

Bash scripting hizkuntza da, baina helburu orokorreko programazio-lengoaiaren gaitasun guztiak ditu. Honek funtzio aritmetikoak ditu. Hainbat adierazpen-aritmetika ebaluatzeko erabil ditzaketen sintaxi- aukerak daude. Beharbada irakur daitekeen komandoa da. Adibidez

utzi "m = 4 * 1024"

4 aldiz 1024 kalkulatuko ditu eta emaitza "m" aldagaiari esleituko dio.

Emaitza inprimatu dezakezu echoaren adierazpena gehituz:

utzi "m = 4 * 1024" echo $ m

Komando-lerrotik probatu dezakezu ondorengo kodea sartuz:

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

Bash komandoak dituzten fitxategiak ere sor ditzakezu, kasu horretan kode bat exekutatuko den programa zehazten duen fitxategiaren goiko aldean lerro bat gehitu beharko zenuke. Adibidez:

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

Bash exekutagarria / bin / bash- en dago. Zure script fitxategiaren baimenak ere ezarri behar dituzu, exekutagarria izan dadin. Script-en fitxategi-izena script1.sh dela suposatuz , baimenak konfigura ditzakezu fitxategi exekutagarria komandoarekin egiteko:

chmod 777 script1.sh

Ondoren, exekutatu dezakezu komandoarekin:

./script1.sh

Eskura dauden aritmetika-eragiketak Java eta C. programazioko programazio estandarren antzekoak dira. Biderketa gain, gainetik agertzen den bezala, gain erabiltzen duzu:

Utzi "m = a + 7"

edo kenketa:

dezagun "m = a - 7"

edo zatiketa:

utzi "m = a / 2"

edo modulua (gainerako osoko zatiketa baten ondoren):

Utzi "m =% 100"

Eragiketa bat esleitzen zaion aldagai berberari aplikatzen zaionean, aritmetika estandarraren esleipen operadore estandarrak erabil ditzakezu, esleitutako operadore konposatuei ere deitzen zaie. Adibidez, gainera, honako hauek ditugu:

dezagun "m + = 15"

"m = m + 15" baliokidea. Kaltetzeagatik honako hauek ditugu:

utzi "m - = 3"

hau da "m = m - 3" baliokidea. Zatiketa egiteko dugu:

utzi "m / = 5"

"m = m / 5" baliokidea da. Eta moduluan, honako hauek ditugu:

Utzi "m% = 10"

"m = m 10%" baliokidea da.

Gainera, gehikuntza eta murrizketa operadoreak erabil ditzakezu:

utzi "m ++"

"m = m + 1" baliokidea da. eta

utzi "m--"

"m = m - 1" baliokidea da.

Eta gero "galdera marken kolon" hiruhilekoan operadorea da, eta bi balio bat itzultzen du zehaztutako baldintza egiazkoa edo faltsua den arabera. Adibidez

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

Esleitzeko adierazpen honen eskuinaldean "0" ebaluatzen da "m" aldagaia 9.etik beherakoa bada. Bestela, 1. ebaluatzen da. Hau "0" aldagaia "0" esleituta badago, "m" gutxiago badago 9 baino eta "1" bestela.

Galderaren marka-koloneko operadorearen forma orokorra honako hau da:

baldintza? value-if-true: value-if-false

Puntuko puntu flotatzailea Bash-en

Utzi operadorea aritmetika osoarentzat bakarrik funtzionatzen du. Parametro aritmetikoetarako, adibidez, GNU bc kalkulagailua erabil dezakezu Adibide honetan ilustratzen den bezala:

echo "32.0 + 1.4" | bc

"Tutu" operadorea "|" "32.0 + 1.4" aritmetika-adierazpena bc kalkulagailura pasatzen du, eta horrek zenbaki erreala itzultzen du. Echo aginduak irteera estandarrari emaitza ematen dio.

Sintaxi alternatiboa aritmetikarako

Backticks (itzuli komatxo bakunak) adibide honetan aritmetika-adierazpen bat ebaluatzeko erabil daiteke:

echo `expr $ m + 18`

Honek 18 "m" aldagaiaren balioa gehituko du eta emaitza inprimatu.

Kalkulu-balioa aldagai bati esleitzeko, berdin-berdina ikurra erabil dezakezu inguruan:

m = `expr $ m + 18`

Aritmetika esamoldeak ebaluatzeko beste modu bat parentesi bikoitza erabiltzea da. Adibidez:

((m * = 4))

Hau "m" aldagaiaren balioa laukoitzen da.

Ebaluazio aritmetikoaz gain, Bash shell-ek beste programazio-eraikuntza batzuk eskaintzen ditu, hala nola begiztak , begiztak , baldintzak , funtzioak eta azpiegiturak .