Testar a string vazia com test -z
Nesta etapa, você aprenderá como verificar se uma string está vazia no Linux usando o comando test com a opção -z. Esta é uma operação fundamental ao trabalhar com strings em scripts de shell.
O comando test é usado para avaliar expressões condicionais. A opção -z verifica especificamente se o comprimento de uma string é zero. Se a string estiver vazia, o teste é verdadeiro; caso contrário, é falso.
Vamos experimentar no terminal. Primeiro, definiremos uma variável de string vazia. Em scripts de shell, você define uma variável digitando seu nome, seguido por um sinal de igual (=) e, em seguida, o valor. Não deve haver espaços em volta do sinal de igual.
Digite o seguinte comando para definir uma variável de string vazia chamada my_string:
my_string=""
Agora, vamos usar o comando test -z para verificar se my_string está vazia. O próprio comando test não produz saída; seu resultado é usado para controlar o fluxo de um script (o que você aprenderá mais tarde). No entanto, podemos ver seu resultado verificando o status de saída do comando anterior usando echo $?. Um status de saída de 0 indica sucesso (verdadeiro), e um status diferente de zero indica falha (falso).
Digite o seguinte comando para testar se my_string está vazia:
test -z "$my_string"
Após executar o comando test, verifique seu status de saída:
echo $?
Como my_string está vazia, o comando test -z deve ser avaliado como verdadeiro, e o comando echo $? deve gerar 0.
Agora, vamos definir uma string não vazia:
another_string="Hello"
E testar se ela está vazia:
test -z "$another_string"
Verifique o status de saída:
echo $?
Desta vez, como another_string não está vazia, o comando test -z deve ser avaliado como falso, e o comando echo $? deve gerar 1.
Compreender como testar strings vazias é crucial para escrever scripts de shell robustos que lidam com diferentes entradas corretamente.