Varijabla se često naziva okvir koji sadrži naziv i sadržaj. Jednostavna naredba, npr. 'echo Hello $Var_Name' ispisat će 'Hello...vrijednost varijable kako je definirana'. Bash neće ništa ispisati ako je okvir prazan ili nije kreiran. Zato je važno provjeriti je li varijabla ispravno postavljena ili ne tijekom izrade bash skripte.
Varijable se mogu kategorizirati u dva dijela:
Varijable koje su ispravno kreirane ili inicijalizirane poznate su kao definirane varijable. Oni mogu imati nultu vrijednost ili prazan niz.
Varijable koje se nikad ne kreiraju ili inicijaliziraju poznate su kao nedefinirane varijable.
Da bismo potvrdili je li varijabla postavljena ili ne u Bash skriptiranju, možemo koristiti -v var ili -z ${var} opcije kao izraz s kombinacijom uvjetne naredbe 'if'.
Sintaksa
Slijede sintakse Booleovog izraza koji se mogu koristiti za provjeru je li varijabla postavljena:
[[ -v Variable_Name ]] [[ -z Variable_Name ]]
Booleov izraz vraća 'True' ako je varijabla postavljena i 'False' ako varijabla nije postavljena.
js onload
Slijede primjeri za provjeru je li varijabla postavljena ili ne:
Korištenje opcije -v
#!/bin/bash #Script to check whether a variable is set or not using -v option A=100 #A: variable is set. if [[ -v A ]]; then echo 'Variable having name 'A' is already set.' else echo 'Variable having name 'A' is not set.' fi #B: variable is not set if [[ -v B ]]; then echo 'Variable having name 'B' is already set.' else echo 'Variable having name 'B' is not set.' fi
Izlaz
Ovdje je varijabla 'A' definirana i dodijeljena joj je vrijednost 100 te se stoga smatra 'postavljenom varijablom'. Za varijablu 'B' nismo definirali niti dodijelili nikakvu vrijednost. Kao rezultat toga, varijabla 'B' se ne smatra 'varijablom skupa'.
Korištenje opcije -z
#!/bin/bash #Script to check whether a variable is set or not using -z option A=100 #A: variable is set. if [[ -z ${A} ]]; then echo 'Variable having name 'A' is not set.' else echo 'Variable having name 'A' is already set.' fi #B: variable is not set if [[ -z ${B} ]]; then echo 'Variable having name 'B' is not set.' else echo 'Variable having name 'B' is already set.' fi
Izlaz
Bilješka:Postoji razlika između nepostavljene varijable i varijable s nultom vrijednošću.
Pogledajte sljedeći primjer koji pokazuje da varijabla s nultom vrijednošću može biti varijabla skupa.
Primjer
VAR='' #VAR is set if [ -z ${VAR+x} ]; then echo ''VAR' is unset'; else echo ''VAR' is set, its content is '$VAR''; fi #Var is not set if [ -z ${Var+x} ]; then echo ''Var' is unset'; else echo ''Var' is set, its content is '$Var''; fi
Izlaz
Ovo su najčešće korištene metode koje se mogu koristiti za provjeru je li varijabla postavljena ili ne.
pothineni ovan