En variabel blir ofte referert til som en boks som inneholder et navn og innholdet. En enkel kommando, for eksempel 'echo Hello $Var_Name' vil skrive ut 'Hei...verdien til variabelen som definert'. Bash vil ikke skrive ut noe hvis boksen er tom eller ikke opprettet. Det er derfor det er viktig å forsikre seg om om en variabel er satt riktig eller ikke mens du lager et bash-skript.
Variabler kan kategoriseres i to deler:
Variabler som er riktig opprettet eller initialisert, er kjent som definerte variabler. Disse kan ha null verdi eller en tom streng.
Variabler som aldri blir opprettet eller initialisert, er kjent som udefinerte variabler.
For å bekrefte om en variabel er satt eller ikke i Bash Scripting, kan vi bruke -v var eller -z ${var} alternativer som et uttrykk med kombinasjonen av 'hvis' betinget kommando.
Syntaks
Følgende er syntaksene til boolsk uttrykk som kan brukes til å sjekke om variabelen er satt:
[[ -v Variable_Name ]] [[ -z Variable_Name ]]
Det boolske uttrykket returnerer 'True' hvis variabelen er satt og 'False' hvis variabelen ikke er satt.
cout
Følgende er eksemplene for å sjekke om en variabel er satt eller ikke:
Bruke -v Option
#!/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
Produksjon
Her er variabel 'A' definert og tildelt en verdi på 100 og anses derfor som 'settvariabel'. For variabel 'B' har vi ikke definert eller tildelt noen verdi. Som et resultat blir ikke variabelen 'B' betraktet som 'settvariabel'.
Bruker -z Option
#!/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
Produksjon
Merk:Det er en forskjell mellom en ikke-innstilt variabel og en variabel med en nullverdi.
Sjekk ut følgende eksempel som viser at variabelen med en nullverdi kan være en settvariabel.
Eksempel
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
Produksjon
Dette er de mest brukte metodene som kan brukes til å sjekke om en variabel er satt eller ikke.
hvor gammel er kylie jenner