- O que são variáveis?
As variáveis podem ser separadas em 2 "categorias", as variáveis comuns e as variáveis ambientais.
- Variáveis comuns
As variáveis comuns são as variáveis voláteis, criadas por qualquer um, elas são armazenadas em memória e apagadas conforme limpeza da memória ou troca de sessão, as variáveis comuns são válidas apenas para a sessão do usuário que está usando-a, para permitir que ela esteja disponível para todos os usuários, é necessário que ela seja exportada, mas logo chegaremos nessa parte.
- Variáveis ambientais
As variáveis ambientais são variáveis utilizadas pelo próprio sistema operacional, são conhecidas também como variáveis globais, qualquer variável criada pode se tornar uma variável ambiental, mas por padrão o sistema operacional já tem diversas variáveis ambientais.
Para ficar mais claro vamos tomar como exemplo a variável $HOME, a variável $HOME é uma variável ambiental e representa o diretório "home" do usuário corrente, ou seja, se o João executar echo $HOME o conteúdo à ser exibido deve ser o diretório home de joão, que por padrão seria: /home/joao/ - Se o mesmo comando for executado com o usuário root o resultado será o diretório home de root, que será: /root/
- Como criar uma variável?
# NOME="joaopedefeijao"
Para visualizar o conteúdo da variável digite
# echo $NOME
Observe que antes do nome da variável utilizamos o $, ele é que atribui que o nome atrelado é uma variável.
Um exemplo prático com está variável:
- Suponha que deseja fazer uma cópia de tudo que está em /tmp/ para o diretório home do usuário corrente, ao invés de digitarmos o comando completo:
# cp /tmp/* /home/joao/
podemos usar a variável:
# cp /tmp/* $HOME
Podemos também criar uma variável com um valor resultado de um comando, por exemplo:
Temos o comando ifconfig, ele só pode ser executado pelo usuário root e exibe suas configurações de rede, executando-o sozinho é possível visualizar as configurações dos adaptadores de rede, queremos que o resultado dele fique armazenado dentro da variável $RESULTADO, então usamos:
# RESULTADO=`ifconfig`
# echo $RESULTADO
A saída não estará indentada nem formatada, trata-se de uma tripa com o conteúdo do comando ifconfig
Para tornar a sua variável em uma variável de ambiente, usamos o comando export, conforme exemplo:
#export NOME="joaopedefeijao"
Agora sua variável estará disponível para todo o ambiente do terminal.
Para que sua variável esteja disponível em todas as sessões sempre, adicione ela no arquivo /etc/bash.bashrc
Abra o arquivo com o editor de texto da sua preferência:
# nano /etc/bash.bashrc
e insira sua variável lá:
# NOME="joaopedefeijao"
Ainda há a opção de colocar ela no arquivo profile, assim todas as vezes os usuários iniciarem o SO ele carrega a variável:
# nano /etc/profile
insira a variável lá:
# NOME="joaopedefeijao"
- Como ver variáveis ambientais no Linux?
env
set
- Principais variáveis de ambiente no Linux
$SHELL - exibe o interpretador de comandos utilizado
$USER - exibe o usuário corrente (igual o comando whoami)
$HOME - exibe a home do usuário corrente
$HOSTNAME - exibe o nome do computador
$HOSTTYPE - exibe a arquitetura do sistema operacional
Nenhum comentário:
Postar um comentário