Muutujaid kasutatakse erinevat tüüpi väärtuste salvestamiseks programmi täitmise ajal. Bashi skriptimisel on kahte tüüpi muutujaid: globaalne ja kohalik.
Globaalseid muutujaid saavad kasutada kõik teie süsteemi Bashi skriptid, samas kui kohalikke muutujaid saab kasutada ainult skriptis (või kestas), milles need on määratletud.
Globaalsed muutujad on üldiselt süsteemis vaikimisi ette nähtud ja need on peamiselt keskkonna- ja konfiguratsioonimuutujad. Kohalikud muutujad seevastu on kasutaja määratud ja neil on suvaline kasutusala.
Bash kohalikud muutujad
Muutuja loomiseks peate oma muutuja nimele määrama väärtuse. Bash on tüpimata keel, nii et te ei pea muutujate määratlemisel andmetüüpi märkima.
var1=Tere
Bash võimaldab ka mitu määramist ühel real:
a=6 b=8 c=9
Nagu paljud teised programmeerimiskeeled, kasutab Bash määramisoperaatorit = muutujatele väärtuste määramiseks. Oluline on märkida, et määramisoperaatori kummalgi küljel ei tohiks olla tühikuid. Vastasel juhul kuvatakse kompileerimisviga.
Seotud: Mida tähendab "Bash" Linuxis?
Veel üks oluline märkus: Bash ei luba teil kõigepealt määratleda muutujat ja seejärel määrata sellele väärtust. Peate määrama muutujale loomisel väärtuse.
var2 # koostamise viga
var2=Maailm
Mõnikord peate võib-olla määrama muutujale stringi, milles on tühik. Sel juhul lisage string jutumärkidesse.
# var3=Tere maailm
# ülaltoodud ülesanne ei tööta
var3='Tere maailm'
Pange tähele üksikute jutumärkide kasutamist. Neid tsitaate nimetatakse ka tugevateks jutumärkideks, kuna need määravad väärtuse täpselt nii, nagu see on kirjutatud, arvestamata erimärke.
Ülaltoodud näites oleksite võinud kasutada ka topeltjutumärke (nõrgad jutumärgid), kuigi see ei tähenda, et neid saaks alati vaheldumisi kasutada. Selle põhjuseks on asjaolu, et topeltjutumärgid asendavad erimärgid (nt need, millel on $), selle asemel, et neid sõna-sõnalt tõlgendada.
Vaadake allolevat näidet:
var4=89
echo "Arv on $var4"
echo 'number on $var4'
# Esimesed väljatrükid: 89
# Teine väljund jätab "$var4" selliseks, nagu see on
Kui soovite oma muutujale määrata käsurea väljundi, kasutage tagasimärke (``). Nad käsitlevad nendes sisalduvat stringi terminalikäsuna ja tagastavad selle tulemuse.
var5="Te töötate praegu selles kataloogis: `pwd`"
Parameetrite laiendamine Bashis
Parameetri laiendamine viitab lihtsalt muutuja väärtusele juurdepääsule. Lihtsamal kujul kasutab see erimärki $ millele järgneb muutuja nimi (ilma tühikuteta):
var6=Jack
echo Minu nimi on $var6
Võite kasutada ka süntaksit ${variableName} muutuja väärtusele juurdepääsuks. See vorm on sobivam, kui muutuja nime ümber võib tekkida segadus.
m = Med
echo Med tähistab ${m}ical
Kui jätate lokkis sulud välja, ${m}ical tõlgendatakse liitmuutujana (seda pole olemas). Seda muutujatega lokkis sulgude kasutamist nimetatakse "asenduseks".
Globaalsed muutujad
Nagu varem mainitud, on teie Linuxi süsteemil mõned sisseehitatud muutujad, millele pääseb juurde kõigi teie skriptide (või kestade) kaudu. Nendele muutujatele pääseb juurde sama süntaksi abil kui kohalikele muutujatele.
Seotud: Bash-skriptide loomine ja käivitamine Linuxis
Enamik neist muutujatest on PLOKITtähtedega. Mõned neist on aga üksikud märgid, mis pole isegi tähtnumbrilised märgid.
Siin on mõned levinumad kasulikud globaalsed muutujad.
KODU: pakub kasutaja kodukataloogi
SHELL: Esitab kasutatava kesta tüübi (nt Bash, csh.. jne)
?: Annab eelmise käsu väljumisoleku
Süsteemi globaalsete muutujate loendi vaatamiseks käivitage printenv (või env) käsk:
$ printenv
Silmused Bash-skriptimisel
Nüüd teate, mis on muutujad, kuidas neid määrata ja kuidas neid kasutades Bashi põhiloogikat teostada.
Silmused võimaldavad teil korrata mitut avaldust. Bash majutab jaoks silmuseid ja samas lihtsa süntaksiga silmuseid kõigi teie silmusvajaduste jaoks.
Kui valdate Bashi arendamise kunsti, jaoks silmused peaksid olema teie loendis järgmised.
Miks käivitada shelliskriptis ikka ja jälle sama koodi, kui saate lasta seda enda eest teha tsüklil for?
Loe edasi
- Programmeerimine
- Linux Bash Shell
- Kodeerimise näpunäited
![](/f/833571f617c8789387a2415e0bfc11d6.jpg)
Jerome on MakeUseOfi personalikirjanik. Ta käsitleb artikleid programmeerimise ja Linuxi kohta. Ta on ka krüptoentusiast ja hoiab alati krüptotööstusel silma peal.
Liituge meie uudiskirjaga
Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!
Tellimiseks klõpsake siin