Android

Kuinka kasvattaa ja pienentää muuttujaa bashissa (laskuri)

Yli 20 km kävelyt tänään.

Yli 20 km kävelyt tänään.

Sisällysluettelo:

Anonim

Yksi yleisimmistä aritmeettisista toimista Bash-skriptejä kirjoitettaessa on muuttujien lisääminen ja pienentäminen. Tätä käytetään useimmiten silmukoissa laskurina, mutta se voi tapahtua myös muualla komentosarjassa.

Lisääminen ja pienentäminen tarkoittaa arvon (yleensä 1 ) lisäämistä tai vähentämistä numeerisen muuttujan arvosta. Aritmeettinen laajennus voidaan suorittaa käyttämällä kaksoissulkoja ((…)) ja $((…)) tai käyttämällä let rakentaa -komentoa.

Bash-versiossa on useita tapoja lisätä / pienentää muuttujaa. Tämä artikkeli selittää joitain niistä.

+ Ja - operaattoreiden käyttö

Yksinkertaisin tapa suurentaa / pienentää muuttujaa on käyttää + ja - operaattoreita.

i=$((i+1)) ((i=i+1)) let "i=i+1"

i=$((i-1)) ((i=i-1)) let "i=i-1"

Tämän menetelmän avulla voit lisätä / pienentää muuttujaa millä tahansa haluamallasi arvolla.

Tässä on esimerkki muuttujan kasvattamisesta silmukkaan until :

i=0 until do echo i: $i ((i=i+1)) done

i: 0 i: 1 i: 2 i: 3

+= Ja -= operaattorit

Edellä selitettyjen perusoperaattoreiden lisäksi bash tarjoaa myös operaattorit += ja -= . Näitä operaattoreita käytetään lisäämään / pienentämään vasemman operandin arvoa operaattorin jälkeen määritetyn arvon kanssa.

((i+=1)) let "i+=1"

((i-=1)) let "i-=1"

Seuraavassa silmukassa pienennämme i muuttujan arvoa 5 .

i=20 while do echo Number: $i let "i-=5" done

Number: 20 Number: 15 Number: 10 Number: 5

++ ja -- Operaattorien käyttö

++ ja -- operaattorit kasvavat ja vähentävät vastaavasti sen operandia 1 ja palauttavat arvon.

((i++)) ((++i)) let "i++" let "++i"

((i--)) ((--i)) let "i--" let "--i"

Operaattoreita voidaan käyttää ennen operandia tai sen jälkeen. Ne tunnetaan myös nimellä:

  • etuliitteen lisäys: ++i etuliitteen --i : --i jälkiliitteen lisäys: i++ lisäyksen --i : i--

Etuliiteoperaattorit lisäävät / pienentävät ensin operaattoreita 1 ja palauttavat sitten operaattorien uuden arvon. Toisaalta postfix-operaattorit palauttavat operaattorien arvon ennen kuin sitä on kasvatettu / pienennetty.

Seuraavat esimerkit osoittavat, kuinka ++ -operaattori toimii, kun sitä käytetään ennen ja jälkeen operaattorin:

x=5 y=$((x++)) echo x: $x echo y: $y

x: 6 y: 5

x=5 y=$((++x)) echo x: $x echo y: $y

x: 6 y: 6

Alla on esimerkki siitä, kuinka postfix-lisäosaa käytetään bash-komentosarjoissa:

#!/bin/bash i=0 while true; do if]; then exit 1 fi echo i: $i ((i++)) done

Näiden operaattoreiden käytön haittana on, että muuttujaa voidaan lisätä tai pienentää vain 1 .

johtopäätös

Bash-muuttujien lisääminen ja vähentäminen voidaan suorittaa monella eri tavalla. Mitä tahansa menetelmää käytätkin, tulos on sama.

Jos sinulla on kysyttävää tai palautetta, jätä kommentti.

bash loop -pääte