Tämä opetusohjelma näyttää, kuinka ehdollisten lausekkeiden avulla voit tarkistaa, onko muuttuja tyhjä, ja suorittaa sitten toiminto jälkikäteen. Tällaisia toimia voivat olla koodilohkon silmukointi, kunnes muuttuja ei ole tyhjä, sulje tai yksinkertaisesti varoittaa käyttäjää muuttujan tyhjyydestä.
Ennen kuin aloitamme, on hyödyllistä, jos olet perehtynyt Bash -komentosarjoihin.
Bash Basic - Muuttujat 101
Muuttujat ovat minkä tahansa todellisen ohjelmointikielen perusrakenteita, ja Bash käyttää muuttujia. Muuttujat ovat tietovarastoja, joita käytetään arvojen tallentamiseen ohjelman myöhempiin osiin.
Yksinkertaisen muuttujan luomiseksi Bashissa käytämme muuttujan nimeä.
Esimerkiksi:
#!/bin/bash$ i_am
Kun muuttuja on alustettu, voit määrittää sen arvon käyttämällä yhtäläisyysmerkkiä seuraavasti:
#!/bin/bash
olen= ubuntu
Kun se on ilmoitettu ja määritetty, voit kutsua sitä yksinkertaisesti viittaamalla siihen nimellä:
#!/bin/bashheitti pois $ i_am
Tämä palauttaa muuttujaan tallennetun arvon, kuten alla olevassa kuvakaappauksessa näkyy.
HUOMAUTUS: Muuttujan viittaaminen sekä lainaus- että lainausmerkkeihin palauttaa erilaisia tuloksia. Yksittäisten lainausmerkkien sisällä olevasta muuttujasta tulee merkkijono, kun taas lainausmerkissä se käsittelee muuttujan nimeä.
Tässä on esimerkki:
Nyt kun meillä on Bashin muuttujien perusteet, voimme siirtyä ehdoihin ja tarkistaa tyhjän muuttujan.
Katso yksityiskohtainen opas bash -muuttujien luomisesta alla olevasta resurssista:
https://linuxhint.com/variables_bash/
Bashin perusteet - jos lausunnot
Jos lausumat ovat toinen perusohjelmointilohko ja Bash olisi vammainen ilman niitä. Niiden avulla voimme suorittaa toiminnon, jos ehto on tosi tai epätosi.
Otetaan lyhyt yhteenveto siitä, miten Bashia käytetään, jos, jos… muut ja jos… elif… muu
Jos S tatement
Yleinen syntaksi if -lauseen käyttämiselle Bashissa on seuraavanlainen:
#!/bin/bashjos {kunto}
sitten
tehdä
olla
Aloitamme if -lauseen kutsumalla if -avainsanan. Seuraavaksi määritämme tarkistettavan ehdon. Ehto voi olla yksinkertainen tai monimutkainen lauseke, kunhan sen arvioidaan olevan tosi tai epätosi.
Seuraavaksi asetamme avainsanan, joka määrittää koodilohkon suoritettavaksi, jos ehto on tosi.
Lopuksi suljemme if -lauseen fi -avainsanalla.
Jos… muita lausuntoja
Bash if… else -lauseke määrittää lisätoiminnon, jos ehto on epätosi. Yleinen syntaksi on:
#!/bin/bashjos {kunto}
sitten
tehdä
muu
tehdä
olla
Esimerkki käyttötapauksesta
Sallikaa minun käyttää yksinkertaista esimerkkiä havainnollistamaan if -lauseiden käyttöä.
If -lause on seuraavanlainen:
#!/bin/bashyhdellä=1
jos [[ $ numero -gt5 ]]
sitten
heitti pois ''$ numeroon suurempi kuin 5 '
muu
heitti pois ''$ numeroon alle 5 '
olla
Lähtö on seuraavanlainen:
Koska meillä on nyt perusasiat, jos lausunnot on tasoitettu, jatkakaamme tätä opetusohjelmaa.
Tarkista, ovatko alla olevat tiedot yksityiskohtaisia:
https://linuxhint.com/bash_conditional_statement/
Kuinka tarkistaa, onko muuttuja tyhjä
Suosittu ja yksinkertainen tapa tarkistaa, onko muuttuja tyhjä, on käyttää ehtolausekkeen -z -vaihtoehtoa.
-Z $ var palauttaa arvon true, jos muuttuja on tyhjä, ja epätosi, jos ei.
Tällaisen testin yleinen syntaksi on:
#!/bin/bashjos [[ -Kanssa $ var ]]
sitten
tehdä
muu
tehdä
olla
Esimerkki komentosarjasta
Tarkastellaan yksinkertaista komentosarjaa, joka emuloi cd -komennon ja navigoi määritetyssä hakemistossa.
Harkitse alla olevaa skriptiä:
#!/bin/bashheitti pois 'Anna polku navigoidaksesi:'
lukea_polku
sillä aikaa [[ -Kanssa $ _polku ]];tehdä
heitti pois 'Anna polku'
tehty
heitti pois 'Navigointi kohteeseen$ _polku''
CD $ _polku
Kun suoritamme yllä olevan kyselyn, saamme tuloksen alla esitetyllä tavalla.
Skripti alkaa pyytämällä käyttäjää siirtymään hakemistoon, johon navigoida. Sitten se tarkistaa, onko muuttuja tyhjä. Jos se on tyhjä, se pyytää rekursiivisesti käyttäjältä polkua, kunnes muuttuja ei ole tyhjä.
Kun polku on käytettävissä, se siirtyy asetettuun hakemistoon ja tulostaa tilan.
Johtopäätös
Tämä lyhyt opetusohjelma näytti, kuinka voit tarkistaa, onko muuttuja tyhjä -z -lipun avulla. Tämä tarkistaa, onko muuttujan pituus 0 ja jos 0, muuttuja on tyhjä. Tämä voi olla erittäin tehokasta, kun tarvitset muuttujan arvon olevan totta ennen kuin jatkat.
Voit myös yhdistää yllä olevan lauseen muihin lausekkeisiin monimutkaisen työkalun luomiseksi, jos muuttuja on tyhjä tai ei.
Kiitos ja hyvää käsikirjoituksen aikaa !!