Šī apmācība parādīs, kā izmantot nosacījumus, lai pārbaudītu, vai mainīgais ir tukšs, un pēc tam veikt darbību pēc fakta. Šādas darbības var ietvert koda bloka atkārtošanu, līdz mainīgais nav tukšs, aizveriet to vai vienkārši brīdiniet lietotāju, ka mainīgais ir tukšs.
Pirms sākam darbu, tas būs noderīgi, ja esat iepazinies ar Bash pamata skriptu rakstīšanu.
Bash Basic - mainīgie 101
Mainīgie ir jebkuras reālas programmēšanas valodas pamatelementi, un Bash izmanto mainīgos. Mainīgie ir datu konteineri, ko izmanto vērtību glabāšanai, lai tos izmantotu vēlākās programmas sadaļās.
Lai izveidotu vienkāršu mainīgo Bash, mēs izmantojam mainīgā nosaukumu.
Piemēram:
#!/bin/bash$ i_am
Kad mainīgais ir inicializēts, varat tam piešķirt vērtību, izmantojot vienādības zīmi kā:
#!/bin/bash
ES esmu= ubuntu
Kad tas ir deklarēts un piešķirts, varat to izsaukt, vienkārši norādot to pēc nosaukuma:
#!/bin/bashizmest ārā $ i_am
Tas atgriezīs mainīgajā saglabāto vērtību, kā parādīts zemāk esošajā ekrānuzņēmumā.
PIEZĪME: Atsaucoties uz mainīgo gan atsevišķās pēdiņās, gan pēdiņās, tiek iegūti dažādi rezultāti. Mainīgais, kas atrodas citātu iekšpusē, kļūs par virknes burtu, bet divkāršā citātā - mainīgā nosaukuma apstrāde.
Šeit ir piemērs:
Tagad, kad mums ir Bash mainīgo pamati, mēs varam turpināt nosacījumus un pārbaudīt tukšu mainīgo.
Lai iegūtu detalizētu rokasgrāmatu par bash mainīgo izveidi, apsveriet tālāk norādīto resursu.
https://linuxhint.com/variables_bash/
Bash Basics - If paziņojumi
Ja paziņojumi ir vēl viens fundamentāls programmēšanas bloks, un Bašs bez tiem būtu kroplis. Tie ļauj mums veikt darbību, ja nosacījums ir patiess vai nepatiess.
Ātri apkoposim, kā lietot Bash, ja, ja… citādi un ja… elif… citādi
Ja S tatement
Vispārējā sintakse if paziņojuma izmantošanai Bash ir šāda:
#!/bin/bashja {stāvoklis}
tad
darīt
būt
Mēs sākam paziņojumu if, izsaucot atslēgvārdu if. Pēc tam mēs sekojam, norādot pārbaudāmo nosacījumu. Nosacījums var būt vienkārša vai sarežģīta izteiksme, ja vien tā tiek novērtēta kā patiesa vai nepatiesa.
Tālāk mēs iestatām atslēgvārdu, kas norāda koda bloku, lai tas tiktu izpildīts, ja nosacījums tiek novērtēts kā patiess.
Visbeidzot, mēs aizveram paziņojumu if, izmantojot fi atslēgvārdu.
Ja… citi paziņojumi
Paziņojums bash if… else norāda papildu darbību, ja nosacījuma vērtība ir nepatiesa. Vispārējā sintakse ir šāda:
#!/bin/bashja {stāvoklis}
tad
darīt
citādi
darīt
būt
Lietošanas piemērs
Ļaujiet man izmantot vienkāršu piemēru, lai ilustrētu paziņojumu if izmantošanu.
Ja paziņojums ir tāds, kā parādīts zemāk:
#!/bin/bashuz vienu=1
ja [[ $ num -gt5 ]]
tad
izmest ārā '$ numir lielāks par 5 '
citādi
izmest ārā '$ numir mazāks par 5 '
būt
Rezultāts ir parādīts zemāk:
Tā kā mums tagad ir pamati, ja paziņojumi ir izlīdzināti, turpināsim šo apmācību.
Pārbaudiet, vai paziņojumi ir sniegti tālāk:
https://linuxhint.com/bash_conditional_statement/
Kā pārbaudīt, vai mainīgais ir tukšs
Populārs un vienkāršs veids, kā pārbaudīt, vai mainīgais nav tukšs, ir nosacījuma paziņojumā izmantot opciju -z.
-Z $ var atgriež patiesu, ja mainīgais ir tukšs, un nepatiesu, ja nē.
Šāda testa vispārējā sintakse ir šāda:
#!/bin/bashja [[ -Ar $ var ]]
tad
darīt
citādi
darīt
būt
Skripta piemērs
Ilustrēsim vienkāršu skriptu, kas emulē cd komandu un pārvietojas norādītajā direktorijā.
Apsveriet zemāk esošo skriptu:
#!/bin/bashizmest ārā 'Ievadiet ceļu, lai pārietu uz:'
lasīt_ceļš
kamēr [[ -Ar $ _path ]];darīt
izmest ārā 'Lūdzu, norādiet ceļu'
darīts
izmest ārā 'Navigācija uz$ _path'
CD $ _path
Kad mēs izpildām iepriekš minēto vaicājumu, mēs iegūstam rezultātu, kā parādīts zemāk.
Skripts sākas, lūdzot lietotājam ievadīt direktoriju, uz kuru doties. Pēc tam tiek pārbaudīts, vai mainīgais nav tukšs. Ja tas ir tukšs, tas rekursīvi lūdz lietotājam ceļu, līdz mainīgais nav tukšs.
Kad ceļš ir pieejams, tas pāriet uz iestatīto direktoriju un izdrukā statusu.
Secinājums
Šī īsa apmācība parādīja, kā pārbaudīt, vai mainīgais nav tukšs, izmantojot karodziņu -z. Tas pārbauda, vai mainīgā garums ir 0 un ja 0, mainīgais ir tukšs. Tas var būt ļoti spēcīgi, ja jums ir nepieciešama mainīgā vērtība, lai tā būtu patiesa, pirms turpināt.
Varat arī apvienot iepriekš minēto paziņojumu ar citām izteiksmēm, lai izveidotu sarežģītu rīku, ja mainīgais ir tukšs vai nav.
Paldies, un laimīgu skriptu rakstīšanas laiku !!