Kako provjeriti je li varijabla postavljena ili prazna u bash -u

How Check Variable Is Set

Varijabla može biti definirana ili nedefinirana. Kada bilo koja varijabla nije deklarirana ili deklarirana, ali nije dodijeljena vrijednost, tada varijabla nije postavljena ili nedefinirana. Kada se bilo koja varijabla deklarira i dodijeli joj vrijednost, tada se varijabla postavlja. Mnogo puta je potrebno znati da je određena varijabla postavljena ili ne za potrebe programiranja. Jedna od važnih svrha provjere je li varijabla postavljena ili nije je provjera valjanosti podataka. Bash nema ugrađenu funkciju kao drugi standardni programski jezici za provjeru je li varijabla postavljena ili nije. Ali bash ima značajku za obavljanje ovog zadatka. Kako možete provjeriti je li varijabla postavljena ili nije u bash prikazano je u ovom vodiču.

Sintaksa:

[[ -vpromjenjivo]]Ili[[ -Spromjenjivo]]

Opcija '-v' ili '-z' koristi se za provjeru je li varijabla postavljena ili poništena. Gornji Booleov izraz vratit će vrijednost true ako je varijabla postavljena i vratiti vrijednost false ako varijabla nije postavljena ili prazna.



$ {varijabla+niz}

Zamjena parametra je još jedan način provjere je li varijabla postavljena ili poništena. Ako je varijabla postavljena, tada će se vrijednost niza vratiti, u suprotnom će se vratiti null.



Primjer-1: Provjerite je li varijabla postavljena ili poništena pomoću opcije '-z'

Napravite bash datoteku pod nazivom check_var1.sh sa sljedećom skriptom. Evo, prvi ` ako` stanje će se vratiti istinito i Num varijabla nije postavljena ispisat će. U sljedećoj izjavi, 20 je dodijeljeno varijabli, $ num . Drugi uvjet `if` vraća false i Num je postavljen, a vrijednost Num = 20 ispisat će.

check_var1.sh

#!/bin/bash
#Provjerite je li varijabla postavljena ili nije
ako [ -S $ {Num} ];zatim
izbaciti 'Varijabla' Num 'nije postavljena'
drugo
izbaciti 'Num' varijabla je postavljena '
biti
#Dodijelite vrijednost
na jedan=dvadeset
#Provjerite je li varijabla postavljena ili ne nakon dodjeljivanja vrijednosti
ako [ -S $ {Num} ];zatim
izbaciti '' Num 'varijabla nije postavljena' '
drugo
izbaciti '' Num je postavljen, a vrijednost Num =$ num'
biti

Pokrenite skriptu.



$bashcheckvar1.sh

Primjer-2: Provjerite je li varijabla postavljena ili poništena pomoću zamjene parametara

Napravite bash datoteku pod nazivom check_var2.sh i dodajte sljedeću skriptu. Ovdje se varijabli dodjeljuje vrijednost niza, $ str prije provjere je li varijabla postavljena ili poništena. Uvjet „ako“ će vratiti istinu, a poruka, Promijenjena je varijabla 'str', a vrijednost je Hello ispisat će.

check_var2.sh

#!/bin/bash
#Postavi varijablu
str= Pozdrav
#Dodijelite vrijednost World za checkval ako je varijabla str postavljena
checkval=$ {str+Svijet}
#Provjerite je li varijabla postavljena ili poništena
ako [ $ checkval -ekvSvijet];zatim
izbaciti Varijabla '' str 'je postavljena, a vrijednost je$ str'
drugo
izbaciti 'Str' varijabla nije postavljena '
biti

Pokrenite skriptu.

$bashcheckvar2.sh

Primjer-3: Provjerite je li varijabla prazna ili nije

Napravite bash datoteku pod nazivom check_var3.sh i dodajte sljedeću skriptu. Skripta će pohraniti prvi argument naredbenog retka u varijablu, $ argv to se provjerava u sljedećoj izjavi. Izlaz će biti Prvi argument je prazan ako nijedan argument nije proslijeđen, vrijednost prvog argumenta bit će ispisana.

check_var3.sh

#!/bin/sh
#Pročitajte prvu vrijednost argumenta naredbenog retka
argv='1 USD'
#Provjerite je li prva vrijednost argumenta navedena ili nije
[ -v '$ argv' ] && izbaciti 'Prvi argument je prazan' ||
izbaciti 'Vrijednost prvog argumenta je$ argv'

Pokrenite skriptu bez ikakvih argumenata.

$bashcheckvar3.sh

Pokrenite skriptu s argumentom.

$bashcheckvar3.shtest

Zaključak

U ovom vodiču prikazani su različiti načini provjere varijable je li postavljena ili poništena ili prazna pomoću različitih primjera. Nadam se da će ovaj vodič pomoći korisnicima da nauče načine testiranja bilo koje bash varijable.