Skip to content

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.

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:

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.

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.

Como criar, modificar ou remover variáveis locais e de ambiente.

Uma variável local pode ser configurada usando o operador = (igual).

Criar uma variável
saudacao=ola

O comando echo pode exibir o valor de qualquer variável.

Exibir valor de uma variável
echo $saudacao
# Saída do comando
ola

Obs.: 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:

Remover uma variável
unset saudacao

Obs.: Quando usar o comando unset, não utilize o $ no nome da variável.


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:

Exemplo 01
saudacao=ola
export saudacao

Outra forma de usar variáveis de ambiente é colocá-las na frente dos comandos.

Exemplo 01
TZ=EST date
# Saída do comando
qui 28 ago 2025 19:39:50 EST

Use 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.

Variável PATH
echo $PATH
# Saída do comando
/home/fernando/.local/share/pnpm:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

Para adicionar um novo diretório à variável, usamos o sinal :.

Adicionar novo diretório à variável PATH
PATH=$PATH:/novo_diretorio

Use o comando which para descobrir onde o executável de um comando está armazenado:

Comando which
which nano
# Saída do comando
/usr/bin/nano