Kako preveriti, ali je spremenljivka nastavljena ali prazna v bash

How Check Variable Is Set



Spremenljivka je lahko definirana ali nedefinirana. Če nobena spremenljivka ni deklarirana ali deklarirana, vendar ni dodeljena nobena vrednost, potem spremenljivka ni nastavljena ali nedefinirana. Ko je katera koli spremenljivka deklarirana in ji dodeljena vrednost, se spremenljivka nastavi. Velikokrat je potrebno vedeti, da je določena spremenljivka nastavljena ali ne za namene programiranja. Eden od pomembnih namenov preverjanja, ali je spremenljivka nastavljena ali ne, je preverjanje podatkov. Bash nima vgrajene funkcije kot drugi standardni programski jeziki za preverjanje, ali je spremenljivka nastavljena ali ne. Toda bash ima funkcijo za to nalogo. Kako lahko preverite, ali je spremenljivka nastavljena ali ne v bash, je prikazano v tej vadnici.

Sintaksa:







[[ -vspremenljivka]]Or[[ -Zspremenljivka]]

Možnost '-v' ali '-z' se uporablja za preverjanje, ali je spremenljivka nastavljena ali ne. Zgornji logični izraz bo vrnil true, če je spremenljivka nastavljena, in vrnil false, če spremenljivka ni nastavljena ali prazna.



$ {spremenljivka+niz}

Nadomestitev parametra je še en način preverjanja, ali je spremenljivka nastavljena ali ne. Če je spremenljivka nastavljena, se vrednost niza vrne, sicer se vrne vrednost null.



Primer-1: Preverite, ali je spremenljivka nastavljena ali izklopljena z možnostjo '-z'

Ustvarite bash datoteko z imenom check_var1.sh z naslednjo pisavo. Tukaj, prvi ` če ` se bo stanje vrnilo in Številka spremenljivka ni nastavljena bo natisnil. V naslednji izjavi je spremenljivki dodeljeno 20, $ št . Drugi pogoj 'if' vrne false in Num je nastavljen in vrednost Num = 20 bo natisnil.





check_var1.sh

#!/bin/bash
#Preverite, ali je spremenljivka nastavljena ali ne
če [ -Z $ {Num} ];potem
vrgel ven 'Spremenljivka' Num 'ni nastavljena'
drugače
vrgel ven 'Spremenljivka' Num 'je nastavljena'
biti
#Dodelite vrednost
na enem=dvajset
#Preverite, ali je spremenljivka nastavljena ali ne po dodelitvi vrednosti
če [ -Z $ {Num} ];potem
vrgel ven 'Spremenljivka' Num 'ni nastavljena'
drugače
vrgel ven '' Num je nastavljen in vrednost Num =$ št'
biti

Zaženite skript.



$bashcheckvar1.sh

Primer 2: Preverite, ali je spremenljivka nastavljena ali izključena z nadomestkom parametra

Ustvarite bash datoteko z imenom check_var2.sh in dodajte naslednji skript. Tukaj je spremenljivki dodeljena vrednost niza, $ str, preden preverite, ali je spremenljivka nastavljena ali ne. Pogoj 'če' bo vrnil resnico in sporočilo, Spremenljivka 'str' je nastavljena in vrednost je Hello bo natisnil.

check_var2.sh

#!/bin/bash
#Nastavite spremenljivko
str= Pozdravljeni
#Če je spremenljivka str nastavljena, vrednosti World dodelite checkval
checkval=$ {str+svet}
#Preverite, ali je spremenljivka nastavljena ali ne
če [ $ checkval -ekvSvet];potem
vrgel ven Spremenljivka '' str 'je nastavljena in vrednost je$ str'
drugače
vrgel ven Spremenljivka 'str' ni nastavljena '
biti

Zaženite skript.

$bashcheckvar2.sh

Primer 3: Preverite, ali je spremenljivka prazna ali ne

Ustvarite bash datoteko z imenom check_var3.sh in dodajte naslednji skript. Skript bo prvi argument ukazne vrstice shranil v spremenljivko, $ argv to je preizkušeno v naslednji izjavi. Izhod bo Prvi argument je prazen če ne posredujete nobenega argumenta, bo drugače natisnjena vrednost prvega argumenta.

check_var3.sh

#!/bin/sh
#Preberite prvo vrednost argumenta ukazne vrstice
argv='1 USD'
#Preverite, ali je navedena prva vrednost argumenta ali ne
[ -v '$ argv' ] && vrgel ven 'Prvi argument je prazen' ||
vrgel ven „Vrednost prvega argumenta je$ argv'

Zaženite skript brez argumentov.

$bashcheckvar3.sh

Zaženite skript z argumentom.

$bashcheckvar3.shpreskus

Zaključek

V tej vadnici so z različnimi primeri prikazani različni načini preverjanja, ali je spremenljivka nastavljena ali nastavljena ali prazna. Upam, da bo ta vadnica pomagala uporabnikom, da se naučijo načinov testiranja katere koli spremenljivke bash.