Spremenljivka se pogosto imenuje polje, ki vsebuje ime in vsebino. Preprost ukaz, npr. 'echo Hello $Var_Name' bo natisnil 'Hello ... vrednost spremenljivke, kot je definirana'. Bash ne bo natisnil ničesar, če je polje prazno ali ni ustvarjeno. Zato je pomembno, da se med ustvarjanjem bash skripta prepričate, ali je spremenljivka pravilno nastavljena ali ne.
Spremenljivke lahko razvrstimo v dva dela:
Spremenljivke, ki so pravilno ustvarjene ali inicializirane, so znane kot definirane spremenljivke. Ti imajo lahko vrednost nič ali prazen niz.
Spremenljivke, ki niso nikoli ustvarjene ali inicializirane, so znane kot nedefinirane spremenljivke.
Za potrditev, ali je spremenljivka nastavljena ali ne v Bash Scripting, lahko uporabimo -v var ali -z ${var} možnosti kot izraz s kombinacijo pogojnega ukaza 'if'.
Sintaksa
Sledijo sintakse logičnih izrazov, ki jih je mogoče uporabiti za preverjanje, ali je spremenljivka nastavljena:
[[ -v Variable_Name ]] [[ -z Variable_Name ]]
Logični izraz vrne »True«, če je spremenljivka nastavljena, in »False«, če spremenljivka ni nastavljena.
java programska polja
Sledijo primeri za preverjanje, ali je spremenljivka nastavljena ali ne:
Uporaba možnosti -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
Izhod
Tukaj je spremenljivka 'A' definirana in ji je dodeljena vrednost 100 in se zato obravnava kot 'nastavljena spremenljivka'. Za spremenljivko 'B' nismo definirali ali dodelili nobene vrednosti. Posledično se spremenljivka 'B' ne šteje za 'nastavljeno spremenljivko'.
Uporaba možnosti -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
Izhod
Opomba:Obstaja razlika med nenastavljeno spremenljivko in spremenljivko z ničelno vrednostjo.
Oglejte si naslednji primer, ki prikazuje, da je spremenljivka z ničelno vrednostjo lahko nastavljena spremenljivka.
Primer
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
Izhod
To so pogosto uporabljene metode, s katerimi lahko preverite, ali je spremenljivka nastavljena ali ne.
java trim niz