logo

Bash Comproveu si la variable està establerta

Sovint s'anomena una variable com una caixa que conté un nom i el contingut. Una ordre senzilla, per exemple, 'echo Hello $Var_Name' imprimirà 'Hola... el valor de la variable tal com es defineix'. Bash no imprimirà res si el quadre està buit o no s'ha creat. És per això que és important assegurar-se si una variable està configurada correctament o no mentre es crea un script bash.

Les variables es poden classificar en dues parts:

    Variables definides
    Les variables creades o inicialitzades correctament es coneixen com a variables definides. Aquests poden tenir un valor zero o una cadena buida.Variables no definides
    Les variables que mai es creen o inicialitzen, es coneixen com a variables no definides.

Per confirmar si una variable està establerta o no a Bash Scripting, podem utilitzar -v var o -z ${var} opcions com una expressió amb la combinació de l'ordre condicional 'si'.

Sintaxi

A continuació es mostren les sintaxis de l'expressió booleana que es poden utilitzar per comprovar si la variable està establerta:

 [[ -v Variable_Name ]] [[ -z Variable_Name ]] 

L'expressió booleana retorna 'True' si la variable està establerta i 'False' si la variable no està establerta.

np std

A continuació es mostren els exemples per comprovar si una variable està establerta o no:

Utilitzant l'opció -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 

Sortida

Bash Comproveu si la variable està establerta

Aquí, la variable 'A' es defineix i s'assigna un valor de 100 i, per tant, es considera 'variable conjunta'. Per a la variable 'B', no hem definit ni assignat cap valor. Com a resultat, la variable 'B' no es considera com a 'variable conjunta'.

Utilitzant l'opció -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 

Sortida

Bash Comproveu si la variable està establerta

Nota:Hi ha una diferència entre una variable sense definir i una variable amb un valor nul.

Consulteu l'exemple següent que demostra que la variable amb un valor nul pot ser una variable establerta.

Exemple

 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 

Sortida

Bash Comproveu si la variable està establerta

Aquests són els mètodes d'ús habitual que es poden utilitzar per comprovar si una variable està establerta o no.

operador de resta de python