En variabel omtales ofte som en boks, der indeholder et navn og indholdet. En simpel kommando, f.eks. 'echo Hello $Var_Name' vil udskrive 'Hej...værdien af variablen som defineret'. Bash udskriver intet, hvis boksen er tom eller ikke oprettet. Derfor er det vigtigt at sikre sig, om en variabel er indstillet korrekt eller ej, mens du opretter et bash-script.
Variabler kan kategoriseres i to dele:
Variabler, som er korrekt oprettet eller initialiseret, er kendt som definerede variabler. Disse kan have nulværdi eller en tom streng.
Variabler, som aldrig oprettes eller initialiseres, er kendt som udefinerede variabler.
For at bekræfte, om en variabel er indstillet eller ej i Bash Scripting, kan vi bruge -v var eller -z ${var} muligheder som et udtryk med kombinationen af 'hvis' betinget kommando.
Syntaks
Følgende er syntakserne for boolesk udtryk, som kan bruges til at kontrollere, om variablen er indstillet:
[[ -v Variable_Name ]] [[ -z Variable_Name ]]
Det booleske udtryk returnerer 'True', hvis variablen er indstillet, og 'False', hvis variablen ikke er angivet.
hvor gammel er kylie jenner
Følgende er eksempler for at kontrollere, om en variabel er indstillet eller ej:
Brug af -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
Produktion
Her er variabel 'A' defineret og tildelt en værdi på 100 og betragtes derfor som 'sæt variabel'. For variabel 'B' har vi ikke defineret eller tildelt nogen værdi. Som følge heraf betragtes variablen 'B' ikke som 'sætvariabel'.
Brug af -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
Produktion
Bemærk:Der er forskel på en ikke indstillet variabel og en variabel med en nulværdi.
Tjek følgende eksempel, der viser, at variablen med en nulværdi kan være en indstillet variabel.
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
Produktion
Dette er de almindeligt anvendte metoder, der kan bruges til at kontrollere, om en variabel er indstillet eller ej.
database