Como verificar se uma variável está definida no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá técnicas fundamentais para trabalhar com variáveis na linha de comando Linux. Começará dominando como exibir os valores das variáveis usando o comando echo, uma habilidade crucial para inspecionar as configurações do ambiente e outras informações armazenadas.

Em seguida, explorará como verificar a existência ou o vazio de variáveis usando o comando test com a opção -z, essencial para a lógica condicional em scripts. Finalmente, descobrirá como listar todas as variáveis de ambiente atualmente definidas usando o comando env, fornecendo uma visão abrangente do ambiente do seu shell.

Exibir o valor da variável com echo

Nesta etapa, você aprenderá como exibir o valor de uma variável usando o comando echo. Variáveis no Linux são usadas para armazenar informações que podem ser acessadas e utilizadas pelo shell e outros programas.

Um tipo comum de variável é uma variável de ambiente, que armazena informações sobre o ambiente do usuário, como o usuário atual, o diretório home e o tipo de terminal.

Para exibir o valor de uma variável, você usa o comando echo seguido por um sinal de dólar ($) e o nome da variável. O sinal de dólar informa ao shell que você deseja ver o valor da variável, e não o próprio nome da variável.

Vamos exibir o valor da variável de ambiente USER, que armazena o nome do usuário atualmente logado.

Digite o seguinte comando no seu terminal e pressione Enter:

echo $USER

Você deve ver a saída:

labex

Isso mostra que o valor da variável USER é labex, que é seu nome de usuário atual no ambiente LabEx.

Agora, vamos exibir o valor da variável de ambiente HOME, que armazena o caminho para o seu diretório home.

Digite o seguinte comando e pressione Enter:

echo $HOME

Você deve ver a saída:

/home/labex

Isso confirma que seu diretório home é /home/labex.

Você também pode exibir o valor da variável de ambiente SHELL, que mostra o caminho para o programa shell que você está usando atualmente.

Digite o seguinte comando e pressione Enter:

echo $SHELL

Você deve ver a saída:

/usr/bin/zsh

Isso indica que você está usando o shell zsh no momento.

Usar echo com o sinal de dólar é uma maneira fundamental de acessar e exibir os valores das variáveis no terminal Linux.

Testar a existência de variáveis com test -z

Nesta etapa, você aprenderá como verificar se uma variável está vazia ou não definida usando o comando test com a opção -z. Isso é útil em scripts para tomar decisões com base em se uma variável possui um valor.

O comando test é usado para avaliar expressões condicionais. A opção -z verifica se o comprimento de uma string é zero. Se a string estiver vazia (ou a variável não estiver definida), o teste é verdadeiro.

Vamos testar se uma variável chamada MY_VARIABLE está definida. Primeiro, vamos garantir que ela não esteja definida.

Digite o seguinte comando e pressione Enter:

unset MY_VARIABLE

O comando unset remove uma variável. Agora, vamos usar test -z para verificar se MY_VARIABLE está vazia. Vamos combiná-lo com echo para ver o resultado do teste. O operador && executa o segundo comando somente se o primeiro comando for bem-sucedido (retorna um valor verdadeiro, o que para test significa que a condição foi atendida).

Digite o seguinte comando e pressione Enter:

test -z "$MY_VARIABLE" && echo "MY_VARIABLE is empty or not set"

Como acabamos de desfazer a definição de MY_VARIABLE, a condição test -z "$MY_VARIABLE" é verdadeira (a variável está vazia), então o comando echo será executado.

Você deve ver a saída:

MY_VARIABLE is empty or not set

Agora, vamos definir um valor para MY_VARIABLE.

Digite o seguinte comando e pressione Enter:

MY_VARIABLE="Hello"

Agora, vamos executar o mesmo comando test -z novamente.

Digite o seguinte comando e pressione Enter:

test -z "$MY_VARIABLE" && echo "MY_VARIABLE is empty or not set"

Desta vez, MY_VARIABLE tem o valor "Hello", então não está vazia. A condição test -z "$MY_VARIABLE" é falsa, e o comando echo não será executado.

Você não deve ver nenhuma saída do comando echo desta vez.

Isso demonstra como test -z pode ser usado para verificar se uma variável está vazia ou não definida. Este é um conceito fundamental usado em scripts de shell para lógica condicional.

Listar todas as variáveis de ambiente com env

Nesta etapa, você aprenderá como listar todas as variáveis de ambiente que estão atualmente definidas em sua sessão de shell usando o comando env.

As variáveis de ambiente são cruciais para o comportamento do seu shell e dos programas. Elas armazenam informações de configuração, caminhos para arquivos executáveis e outras configurações.

O comando env, quando executado sem nenhum argumento, imprime uma lista de todas as variáveis de ambiente e seus valores.

Digite o seguinte comando no seu terminal e pressione Enter:

env

Você verá uma longa lista de saída, semelhante a esta (a saída exata variará dependendo do seu sistema e configuração):

SHELL=/usr/bin/zsh
COLORTERM=truecolor
...
USER=labex
...
HOME=/home/labex
...
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
...
PWD=/home/labex/project
...

Cada linha na saída representa uma variável de ambiente no formato NOME_DA_VARIÁVEL=valor.

Você pode ver algumas das variáveis que exploramos nas etapas anteriores, como USER, HOME e SHELL. Você também verá muitas outras, como PATH, que informa ao shell onde procurar comandos executáveis, e PWD, que mostra seu diretório de trabalho atual.

O comando env é uma ferramenta simples, mas poderosa, para inspecionar o ambiente do seu shell. Ele é frequentemente usado para depuração ou para entender como um programa pode se comportar com base em seu ambiente.

Como a saída pode ser bastante longa, você pode redirecionar a saída de env para um paginador como less para visualizá-la uma tela por vez.

Digite o seguinte comando e pressione Enter:

env | less

Use as setas do teclado para rolar para cima e para baixo e pressione q para sair do less.

Esta etapa apresentou a listagem de todas as variáveis de ambiente. Nas próximas etapas, você aprenderá mais sobre como essas variáveis são usadas e como você pode interagir com elas.

Resumo

Neste laboratório, você aprendeu técnicas fundamentais para trabalhar com variáveis no Linux. Você praticou o uso do comando echo com o sinal de dólar ($) para exibir os valores de variáveis de ambiente como USER, HOME e SHELL, compreendendo como este comando recupera as informações armazenadas.

Além disso, você explorou como verificar a existência ou o vazio de uma variável usando o comando test com a opção -z, uma habilidade crucial para a lógica condicional em scripts. Finalmente, você aprendeu como listar todas as variáveis de ambiente atualmente definidas usando o comando env, fornecendo uma visão abrangente do ambiente do shell.