Bash, če je spremenljivka prazna, naredite dejanja

Bash If Variable Is Empty Do Actions



Bash skriptiranje je ena od prednosti uporabe Linuxa. Omogoča nam ustvarjanje prilagojenih ukazov in orodij za avtomatizacijo vsakodnevnih opravil. Tako kot večina programskih jezikov nam Bash daje pogojne izjave za preverjanje posebnih pogojev in izvajanje dejanj na podlagi rezultata.

Ta vadnica vam bo pokazala, kako s pogojnimi stavki preverite, ali je spremenljivka prazna, in nato izvedite dejanje za dejstvom. Taka dejanja lahko vključujejo zanko bloka kode, dokler spremenljivka ni prazna, zapustite ali preprosto opozorite uporabnika, da je spremenljivka prazna.







Preden začnemo, bo koristno, če poznate osnovno skriptiranje Bash.



Bash Basic - spremenljivke 101

Spremenljivke so temeljni gradniki katerega koli pravega programskega jezika, Bash pa uporablja spremenljivke. Spremenljivke so vsebniki podatkov, ki se uporabljajo za shranjevanje vrednosti za uporabo v kasnejših razdelkih programa.



Za ustvarjanje preproste spremenljivke v Bashu uporabimo ime spremenljivke.





Na primer:

#!/bin/bash

$ i_am

Ko imate spremenljivko inicializirano, ji lahko vrednost dodelite z znakom enako:



#!/bin/bash

Jaz sem= ubuntu

Ko je razglašen in dodeljen, ga lahko pokličete tako, da ga preprosto poimenujete kot:

#!/bin/bash

vrgel ven $ i_am

To bo vrnilo vrednost, shranjeno v spremenljivki, kot je prikazano na spodnjem posnetku zaslona.

OPOMBA: Sklicevanje na spremenljivko v enojnih in dvojnih narekovajih vrne različne rezultate. Spremenljivka znotraj enojnih narekovajev bo postala nizovni zapis, medtem ko v dvojnih narekovajih dobi obravnavo imena spremenljivke.

Tukaj je primer:

Zdaj, ko imamo osnove spremenljivk v Bashu, lahko nadaljujemo s pogoji in preverjanjem, ali je prazna spremenljivka.

Za podroben vodnik o tem, kako ustvariti spremenljivke bash, si oglejte spodnji vir:

https://linuxhint.com/variables_bash/

Baskove osnove - Izjave If

Če so izjave še en temeljni programski blok in bi bil Bash brez njih hrom. Omogočajo nam, da izvedemo dejanje, če je pogoj resničen ali napačen.

Na kratko povzemimo, kako uporabljati Bash, če, če ... drugače in če ... elif ... drugo

Če S tatement

Splošna skladnja za uporabo stavka if v bashu je prikazana spodaj:

#!/bin/bash

če {stanje}

potem

naredi

biti

Stavek if začnemo s klicem ključne besede if. Nato določimo pogoj za preverjanje. Pogoj je lahko preprost ali kompleksen izraz, dokler je ocenjen na true ali false.

Nato nastavimo ključno besedo, ki določa kodni blok, da se izvaja, če je pogoj resničen.

Na koncu zaključimo stavek if z uporabo ključne besede fi.

Če… drugače izjave

Stavek bash if… else podaja dodatno dejanje, če je pogoj neveljaven. Splošna sintaksa je:

#!/bin/bash

če {stanje}

potem

naredi

drugače

naredi

biti

Primer uporabe

Dovolite mi, da uporabim preprost primer za ponazoritev uporabe stavkov if.

Stavek if je prikazan spodaj:

#!/bin/bash
na enem=1
če [[ $ št -gt5 ]]
potem
vrgel ven '$ štje več kot 5 '
drugače
vrgel ven '$ štje manj kot 5 '
biti

Izhod je prikazan spodaj:

Ker imamo zdaj osnove, če so izjave zglajene, nadaljujmo s to vadnico.

Preverite, ali spodaj podrobno navajate izjave:

https://linuxhint.com/bash_conditional_statement/

Kako preveriti, ali je spremenljivka prazna

Priljubljen in preprost način, da preverite, ali je spremenljivka prazna, je, da v stavku pogoja uporabite možnost -z.

-Z $ var vrne true, če je spremenljivka prazna, in false, če ne.

Splošna skladnja takega testa je:

#!/bin/bash
če [[ -Z $ var ]]
potem
naredi
drugače
naredi
biti

Primer skripta

Naj ponazorimo preprost skript, ki posnema ukaz cd in krmari po podanem imeniku.

Razmislite o spodnjem scenariju:

#!/bin/bash
vrgel ven 'Vnesite pot za navigacijo do:'

prebrati_pot

medtem [[ -Z $ _path ]];naredi
vrgel ven 'Prosim za pot'
Končano
vrgel ven 'Navigacija do$ _path'
CD $ _path

Ko izvedemo zgornjo poizvedbo, dobimo rezultat, kot je prikazano spodaj.

Skript se začne tako, da uporabnika prosi, da vstopi v imenik za navigacijo. Nato preveri, ali je spremenljivka prazna. Če je prazno, uporabnik rekurzivno zahteva pot, dokler spremenljivka ni prazna.

Ko je pot na voljo, se pomakne v nastavljeni imenik in natisne stanje.

Zaključek

Ta kratka vadnica vam je pokazala, kako z zastavico -z preverite, ali je spremenljivka prazna. S tem se preveri, ali je dolžina spremenljivke 0 in če je 0, je spremenljivka prazna. To je lahko zelo močno, če potrebujete, da je vrednost spremenljivke resnična, preden nadaljujete.

Zgornji stavek lahko kombinirate tudi z drugimi izrazi, da ustvarite zapleteno orodje, če je spremenljivka prazna ali ne.

Hvala in lep čas za skriptiranje !!