Variáveis no Shell
Os shells gerenciam um conjunto de informações de status persistentes ao longo das sessões. Esses dados de tempo de execução são dinâmicos e podem ser modificados durante a execução, afetando diretamente o comportamento do shell. Além disso, essas informações são acessadas por programas para determinar parâmetros da execução do sistema. A maior parte desses dados é mantida por meio de variáveis, que serão detalhadas neste tópico.
Variáveis
Section titled “Variáveis”As variáveis são espaços de armazenamento para dados, como texto e números. Uma vez definido, o valor da variável pode ser acessado posteriormente.
Na maioria dos shells do Linux, existem 02 tipos de variáveis:
Variáveis locais
Section titled “Variáveis locais”São variáveis que estão disponíveis somente para o processo atual do shell. Se você criar uma variável local e, em seguida, iniciar outro programa nesse shell, a variável não poderá mais ser acessada por esse programa.
Variáveis de ambiente
Section titled “Variáveis de ambiente”São variáveis que estão disponíveis tanto em uma sessão de shell específica quanto em subprocessos gerados a partir dessa sessão de shell. A maioria das variáveis de ambiente aparece em letras maiúsculas.
NOTA
As variáveis não são persistentes. Quando o shell em que foram configuradas é fechado, todas as variáveis e seus conteúdos são perdidos. A maioria dos shells oferece arquivos de configuração que contêm variáveis definidas sempre que um novo shell é criado.
Manipulação de variáveis
Section titled “Manipulação de variáveis”Como criar, modificar ou remover variáveis locais e de ambiente.
Trabalhando com variáveis locais
Section titled “Trabalhando com variáveis locais”Uma variável local pode ser configurada usando o operador = (igual).
saudacao=olaO comando echo pode exibir o valor de qualquer variável.
echo $saudacao
# Saída do comandoolaObs.: Para acessar o valor da variável, tem que usar o $ antes do nome da variável
Para remover uma variável, usamos o comando unset:
unset saudacaoObs.: Quando usar o comando unset, não utilize o $ no nome da variável.
Trabalhando com variáveis globais
Section titled “Trabalhando com variáveis globais”Para disponibilizar uma variável local para subprocessos, podemos transformá-la em variável de ambiente. Usamos para isso o comando export. Quando o comando export é usado junto ao nome da variável, essa variável é adicionada ao ambiente do shell:
saudacao=olaexport saudacaoexport saudacao=olaOutra forma de usar variáveis de ambiente é colocá-las na frente dos comandos.
TZ=EST date
# Saída do comandoqui 28 ago 2025 19:39:50 ESTTZ=GMT date
# Saída do comandoqui 28 ago 2025 19:39:50 GMTUse o comando env para exibir todas as variáveis de ambiente.
Variável PATH
A variável armazena uma lista diretórios, separados por :, que contêm programas executáveis que funcionam como comandos do shell Linux.
echo $PATH
# Saída do comando/home/fernando/.local/share/pnpm:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/gamesPara adicionar um novo diretório à variável, usamos o sinal :.
PATH=$PATH:/novo_diretorioUse o comando which para descobrir onde o executável de um comando está armazenado:
which nano
# Saída do comando/usr/bin/nano