Como verificar a variável está definida ou vazia em bash

Como verificar a variável está definida ou vazia em bash
Uma variável pode ser definida ou indefinida. Quando qualquer variável não é declarada ou declarada, mas nenhum valor é atribuído, a variável não é definida ou indefinida. Quando qualquer variável é declarada e atribuída com um valor, a variável é definida. Muitas vezes é necessário saber que a variável específica é definida ou não para os fins de programação. Um dos propósitos importantes de verificar a variável é definido ou não é a validação de dados. Bash não tem função interna como outras linguagens de programação padrão para verificar uma variável está definida ou não. Mas Bash tem um recurso para fazer esta tarefa. Como você pode verificar se a variável está definida ou não no bash é mostrada neste tutorial.

Sintaxe:

[[-v variável]] ou [[-z variável]]

A opção '-v' ou '-z' é usada para verificar se a variável é definida ou desmembrada. A expressão booleana acima retornará verdadeira se a variável for definida e retornar falsa se a variável não estiver definida ou vazia.

$ variável+string

O parâmetro substituto é outra maneira de verificar se a variável é definida ou não. Se a variável estiver definida, o valor da string retornará, caso contrário, o nulo retornará.

Exemplo 1: Verifique se a variável é definida ou não definida usando a opção '-z'

Crie um arquivo bash chamado check_var1.sh com o seguinte script. Aqui, o primeiro 'se' a condição retornará verdadeira e “Variável num não está definido”Irá imprimir. Na próxima declaração, 20 é atribuído à variável, $ Num. A segunda condição 'se' retornará falsa e “Num está definido e o valor de num = 20”Irá imprimir.

check_var1.sh

#!/BIN/BASH
#Verifique a variável está definida ou não
if [-z $ num]; então
eco "'num' variável não está definido"
outro
eco "'num' variável está definido"
fi
#Assign Um valor
Num = 20
#Verifique a variável está definida ou não após atribuir o valor
if [-z $ num]; então
eco "'num' variável não está definido"
outro
eco "'num está definido e o valor de num = $ num"
fi

Execute o script.

$ Bash checkVar1.sh

Exemplo-2: Verifique se a variável é definida ou não definida usando o Substituto de Parâmetro

Crie um arquivo bash chamado “check_var2.sh”E adicione o seguinte script. Aqui, um valor de string é atribuído à variável, $ STR antes de verificar a variável é definido ou não. A condição 'se' retornará verdadeira e a mensagem, “A variável 'str' está definida e o valor é olá”Irá imprimir.

check_var2.sh

#!/BIN/BASH
#Set a variável
str = "Olá"
#Assign O valor “mundo” para checar se a variável str for definida
checkVal = $ str+”mundo”
#Verifique a variável está definida ou não
se [$ checkval -eq “mundo”]; então
eco "'str' variável está definido e o valor é $ str"
outro
eco "'str' variável não está definido"
fi

Execute o script.

$ Bash checkVar2.sh

Exemplo 3: Verifique se a variável está vazia ou não

Crie um arquivo bash chamado “check_var3.sh”E adicione o seguinte script. O script armazenará o primeiro argumento da linha de comando em uma variável, $ argv que é testado na próxima declaração. A saída será “O primeiro argumento está vazio“Se nenhum argumento for passado, caso contrário, o valor do primeiro argumento será impresso.

check_var3.sh

#!/bin/sh
#Leia o primeiro valor de argumento da linha de comando
argv = "$ 1"
#Verifique o primeiro valor de argumento é fornecido ou não
[-v "$ argv"] && echo "O primeiro argumento está vazio" ||
eco "O valor do primeiro argumento é $ argv"

Execute o script sem nenhum argumento.

$ Bash checkVar3.sh

Execute o script com um argumento.

$ Bash checkVar3.Teste SH

Conclusão

Diferentes maneiras de verificar se a variável é definida ou não definida ou vazia são mostradas neste tutorial usando vários exemplos. Esperança, este tutorial ajudará os usuários a aprender as maneiras de testar qualquer variável Bash.