logo

Bash Verifique se a variável está definida

Uma variável costuma ser chamada de caixa que contém um nome e o conteúdo. Um comando simples, por exemplo, 'echo Hello $Var_Name' imprimirá 'Hello...o valor da variável conforme definido'. O Bash não imprimirá nada se a caixa estiver vazia ou não criada. É por isso que é importante ter certeza se uma variável está definida corretamente ou não ao criar qualquer script bash.

As variáveis ​​podem ser categorizadas em duas partes:

    Variáveis ​​Definidas
    Variáveis ​​que são criadas ou inicializadas corretamente são conhecidas como Variáveis ​​Definidas. Eles podem ter valor zero ou uma string vazia.Variáveis ​​indefinidas
    Variáveis ​​que nunca são criadas ou inicializadas são conhecidas como Variáveis ​​Indefinidas.

Para confirmar se uma variável está definida ou não no Bash Scripting, podemos usar -v var ou -z ${var} opções como uma expressão com a combinação do comando condicional 'if'.

Sintaxe

A seguir estão as sintaxes da expressão booleana que podem ser usadas para verificar se a variável está definida:

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

A expressão booleana retorna 'True' se a variável estiver definida e 'False' se a variável não estiver definida.

xor cpp

A seguir estão os exemplos para verificar se uma variável está definida ou não:

Usando a opção -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 

Saída

Bash Verifique se a variável está definida

Aqui, a variável 'A' é definida e recebe um valor de 100 e, portanto, é considerada como 'variável definida'. Para a variável 'B', não definimos ou atribuímos nenhum valor. Como resultado, a variável 'B' não é considerada como 'variável definida'.

Usando a opção -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 

Saída

Bash Verifique se a variável está definida

Observação:Há uma diferença entre uma variável não definida e uma variável com valor nulo.

Confira o exemplo a seguir demonstrando que a variável com valor nulo pode ser uma variável definida.

Exemplo

 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 

Saída

Bash Verifique se a variável está definida

Estes são os métodos comumente usados ​​que podem ser usados ​​para verificar se uma variável está definida ou não.

espalhar árvores