Entendendo variáveis de ambiente
- Lucas Akira
- Sem categoria
- abr 17, 2022
Algo que uma hora ou outra teremos que nos deparar em algum ponto como desenvolvedores são variáveis de ambiente. Se você já tentou instalar algum comando para que ele fique disponível na sua linha de comando, muito provavelmente se deparou com a parte de definir as variáveis de ambiente.
Elas são variáveis que como o nome sugerem ficam disponíveis para que você possa usar no seu ambiente, no caso do windows por exemplo você pode definir elas a nível de usuário ou globalmente para todos os usuários do windows.
Tem várias delas que são nossas conhecidas como a mais famosa de todas PATH, ou para os programadores java a JAVA_HOME (que indica onde a jdk está instalada no computador da pessoa) por exemplo.
Geralmente elas são necessárias para que os programas que dependem delas no seu computador possam se configurar de acordo com o sistema operacional em que elas estão rodando, seja pelas variáveis de ambiente do sistema operacional (como a JAVA_HOME ou a PATH) ou por variáveis de ambiente localizadas em arquivos do tipo .env (muito utilizados para guardarmos coisas como chaves de API, senhas de bancos de dados e etc).
As variáveis de ambiente são sempre armazenadas em estruturas de chave-valor, ex:
DATABASE_PASSWORD=my_secret_pass123456
Manipulando variáveis de ambiente
Agora que já entendemos o que são e para que servem as variáveis de ambiente, vamos dar uma olhada em como podemos saber e definir/criar os valores delas nos nossos sistemas operacionais favoritos.
Windows
Lendo
Para ler o valor de uma variável de ambiente no windows podemos utilizar o comando echo no cmd e $Env no powershell. Ex:
echo %PATH%
Se nós executarmos o comando echo, semelhante ao PHP, vamos imprimir na tela o que for passado para ele, então para imprimirmos o valor da variável PATH e não o texto PATH na tela, precisamos colocar o nome da variável de ambiente entre %.
No powershell o comando é um pouco mais simples:
$Env:PATH
Você digita $Env: e depois dos dois pontos você digita o nome da variável de ambiente.
Escrevendo
Agora vamos ver como definir uma variável de ambiente pelo windows, o jeito mais simples é irmos pelo painel de controle do windows.
O primeiro passo seria ir na barra de pesquisa do windows e digitar “Variáveis de ambiente” (ou environment variables se o seu sistema estiver em inglês) na barra de pesquisa do windows:
Clique em “Editar as variáveis de ambiente do sistema”, e uma janela semelhante a essa irá aparecer:
Então nós clicamos nesse botão “Variáveis de Ambiente…” como indicado na imagem e vai aparecer uma tela mostrando as variáveis de ambiente disponíveis no nosso sistema tanto para o usuário atual quanto global:
Ai para editar uma variável podemos selecionar ela clicando nela, e dai apertamos no botão editar correspondente e preenchemos o campo de formulário com o valor da variável que queremos editar.
Sistemas baseados em UNIX (MacOS e Linux)
Lendo
No terminal de sistemas baseados em UNIX para lermos é muito semelhante ao PHP, nós utilizamos o comando echo e depois colocamos o nome da variável precedido de um $ (exatamente como no PHP). Ex:
echo $PATH
Escrevendo
E para criarmos uma nova variável nós podemos usar o comando export NOME_DA_VARIAVEL=”Valor da variável”
. Ex:
export banana="prata"
Lembrando que para salvar elas no seu shell, você deve ir no arquivo de configuração dele (no caso do bash, fica em $HOME/.bash_profile
ou $HOME/.bashrc
, e se você usa o zsh as localizações seriam ~/.zprofile
ou ~/.zshrc
) e adicionar os comandos export nesses arquivos de configuração.
Ai para atualizar o seu shell com as novas configurações definidas, você utiliza o comando source
seguido do caminho para o seu arquivo de configuração. Ex:
source $HOME/.bash_profil
Conclusão
Hoje aprendemos um pouco mais sobre variáveis de ambiente, como podemos ler e escrever nelas e alguns usos comuns para elas, você já sabia disso tudo? Conta para gente aqui nos comentários.