Muuttujien käyttäminen bash -ohjelmoinnissa

How Use Variables Bash Programming



Muuttujat toimivat väliaikaisena tallennustilana mille tahansa ohjelmointikielelle. Kooderilla on oltava selkeä käsitys eri muuttujien käyttämisestä koodissa. Muuttujia käytetään tiettyjen tietojen tallentamiseen. Yleisimmin käytetyt tietotyypit ovat kokonaisluku, merkkijono, float, double ja Boolean. Minkä tahansa muuttujan tietotyyppi on määriteltävä muuttujan ilmoituksen yhteydessä vahvasti tyyppisille ohjelmointikielille. Mutta BASH on heikosti kirjoitettu ohjelmointikieli, joka ei edellytä tietotyypin määrittämistä muuttujan ilmoituksen yhteydessä. Joten kun mikä tahansa numeerinen arvo määrittää muuttujalle, se toimii kokonaislukuna ja kun mikä tahansa tekstiarvo määrittää muuttujalle, se on merkkijono. BASH -muuttujia voidaan käyttää päätelaitteesta tai mistä tahansa BASH -tiedostosta. Eri tyyppisten BASH -muuttujien käyttöä kuvataan tässä opetusohjelmassa käyttämällä monia esimerkkejä.

Muuttujan käyttäminen komentoriviltä tai päätelaitteesta

Sinun ei tarvitse käyttää erikoismerkkejä muuttujan nimen edessä, kun asetat arvon BASH: ssa, kuten muutkin ohjelmointikielet. Mutta sinun on käytettävä $ -merkkiä muuttujan nimen edessä, kun haluat lukea muuttujan tietoja. Voit asettaa ja hakea muuttujan tietoja päätelaitteesta seuraavalla tavalla.







Esimerkki 1: Merkkijonotietojen ilmoittaminen ja lukeminen muuttujan avulla

Suorita seuraavat komennot päätelaitteesta.



$myvar='BASH -ohjelmointi'
$heitti pois $ myvar

Lähtö:



Muuttujat Bash -ohjelmointi





Esimerkki 2: Kahden merkkijonomuuttujan yhdistäminen

Sinun ei tarvitse käyttää mitään operaattoria kahden tai useamman merkkijonon yhdistämiseen, kuten muut kielet. Tässä, $ var1 käytetään merkkijonon ja $ var2 käytetään numeerisen arvon tallentamiseen. Suorita seuraavat komennot päätelaitteesta yhdistääksesi kaksi muuttujaa $ var1 ja $ var2 .

$var1='Tämän lipun hinta on $'
$var2=viisikymmentä
$heitti pois $ var1$ var2

Lähtö:



** Huomaa: Voit tulostaa muuttujan arvon ilman lainausmerkkejä, mutta jos käytät lainausmerkkejä, sinun on käytettävä lainausmerkkejä.

Esimerkki 3: Merkkijonojen liittäminen muuttujiin

Lainausmerkkiä voidaan käyttää muuttujan arvon lukemiseen. Tässä esimerkissä yksittäistä lainausta käytetään yhdessä kaikulauseessa ja lainausmerkkiä toisessa kaikulausekkeessa. Tarkista tulostus suorittamalla seuraavat komennot päätelaitteesta.

$missä='LYÖDÄ'
$heitti pois ''$ varOhjelmointi'
$heitti pois '$ var -ohjelmointi'

Lähtö:

Esimerkki 4: Numeerisen datan ilmoittaminen ja lukeminen muuttujan avulla s

Yksi Bash -ohjelmoinnin suurimmista rajoituksista on se, että se ei voi suorittaa aritmeettisia toimintoja kuten muut ohjelmointikielet. Numeeriset arvot otetaan merkkijonoina BASH: ssa. Joten mitään aritmeettista operaatiota ei voida suorittaa normaalilla lausekkeella ja se yhdistää vain numeeriset arvot. Jos kirjoitat lausekkeen kahdella ensimmäisellä hakasulkeella, aritmeettinen toiminto toimii oikein. Suorita seuraavat komennot päätelaitteesta.

$n=100
$heitti pois $ n
$heitti pois $ n+kaksikymmentä
$((n= n+kaksikymmentä))
$heitti pois $ n

Lähtö:

Esimerkki 5: Aritmeettisen operaation suorittaminen bc-komennolla

bc komento on toinen tapa suorittaa aritmeettinen operaatio BASH: ssa. Suorita seuraavat komennot päätelaitteesta. Kun käytät bc komento vain mitä tahansa aritmeettista operaatiota varten, murto -osat jätetään pois tuloksesta. Sinun on käytettävä -he vaihtoehto kanssa bc komento saada tulos murto -arvolla.

$n=55
$heitti pois $ n/10 | bc
$heitti pois $ n/10 | bc -he

Lähtö:

Muuttujien käyttäminen bash -tiedostossa

Voit määrittää muuttujan bash -tiedostossa samalla tavalla kuin edellä mainituissa esimerkeissä. Sinun on luotava tiedosto .sh tai .lyödä laajennus bash -komentosarjan suorittamiseksi.

Esimerkki 6: Yksinkertaisen bash-komentosarjan luominen

Kopioi seuraava koodi tekstieditorissa ja tallenna tiedosto bash -tunnisteella. Tässä skriptissä ilmoitetaan yksi merkkijono ja yksi numeerinen muuttuja.

s='Opi BASH -ohjelmointi'

#print merkkijonon arvo
heitti pois $ str

yhdellä=120

#vähennä 20 numeerisesta muuttujasta
(( tulos=$ numero-kaksikymmentä))

#tulosta numeerinen arvo
heitti pois $ tulos

Lähtö:

Esimerkki 7: Yleisten ja paikallisten muuttujien käyttäminen

Seuraavassa skriptissä käytetään yhtä globaalia muuttujaa n ja kahta paikallista muuttujaa n ja m.
Kun funktiota add () kutsutaan, paikallisen muuttujan n arvo lasketaan, mutta globaali muuttuja n pysyy muuttumattomana.

#!/bin/bash
n=5
toimintolisäys()
{
paikallinen n=6
paikallinen m=4
(( n= n+m))
heitti pois $ n

}
lisäys
heitti pois $ n

Lähtö:

Esimerkki-8: Matriisimuuttujan käyttö

Matriisimuuttujaa käytetään tietoluettelon tallentamiseen. Seuraava esimerkki näyttää kuinka käytät taulukkomuuttujaa bash -komentosarjassa. Minkä tahansa taulukon elementit erotetaan välilyönnillä BASH: ssa. Tässä ilmoitetaan 6 elementin ryhmä. Ei ole sisäänrakennettua funktiota tai ominaisuutta, joka laskee taulukon kokonaisosat. # kanssa * käytetään elementtien kokonaismäärän laskemiseen. Kaikki elementit on merkitty *: llä. For silmukkaa käytetään tässä taulukon arvojen iterointiin. Taulukon arvojen ja taulukon arvojen lukeminen avaimella esitetään tämän komentosarjan seuraavassa osassa.

#!/bin/bash

myarr=(HTML JavaScript PHP jQuery AngularJS CodeIgniter)

#Laske taulukon elementtien kokonaismäärä
kaikki yhteensä=$ {#myarr [*]}
heitti pois '' Elementtejä yhteensä:$ yhteensä''

#Tulosta taulukon jokainen elementin arvo
heitti pois 'Array -arvot:'
vartentuntiasisään $ {myarr [*]}
tehdä
printf ' %s n'' $ tuntia
tehty

#Tulosta taulukon jokainen elementin arvo avaimella

heitti pois 'Array -arvot avaimella:'
vartennäppäintäsisään $ {! myarr [*]}
tehdä
printf ' %4d: %s n'' $ -avain $ {myarr [$ key]}
tehty

Lähtö:

Jotta voit käyttää BASH -muuttujia oikein, tarvitset selkeän käsitteen muuttujien ilmoittamisesta ja käytöstä. Tämä opetusohjelma auttaa sinua saamaan selkeän käsityksen BASH -muuttujista. Kun olet käyttänyt yllä olevia esimerkkejä oikein, voit käyttää muuttujia tehokkaammin bash -komentosarjoissasi.