Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Qual seria arquivo correto para inserir um variável de ambiente?

Eu estava mexendo nos arquivos em meu sistema linux e encontrei o seguinte arquino .bash_profile

# .bash_profile 

# Get the aliases and functions

if [-f ~/.bashrc]; then
    ~/.bashrc
fi

#User specific environment and startup programs 

PATH = $PATCH : $HOME /.local/bin : $HOME/bin 

export PATH

Segundo o livro do Christopher Negus - Linux A Biblia na pagina 86. O melhor lugar para adicionar variáveis de ambiente é nesse arquivo (.bash_profile). Sendo o arquivo .bashrc o melhor lugar para se configurar aliases.

Ambos são inicializados quando um shell novo é aberto. Mas por questões de boas práticas não seria melhor colocá-lo no arquivo .bash_profile ?

Como eu uso a distribuição Fedora acho que não há muita diferença entre o Ubuntu. O mesmo se trata do livro de Cristopher Negus.

3 respostas

Interessante, mas qual é a argumentação dele para considerar isso uma boa prática? É uma convenção ou algo em relação a performance? Visto que ambos são inicializados quando um shell novo é aberto.

Steimntz Machado de Figueiredo na verdade o autor do livro não argumenta nada sobre. Na página onde ele fala sobre os arquivos de configuração do shell ele aponta em uma tabela o arquivo .bash_profile e o descreve desta maneira.

solução!

Achei a citação do Cristopher Negus, realmente ele não dá detalhes do porque.

TABELA 3.6 Arquivos de Configuração do Bash

* /etc/profile 

Configura as informações de ambiente do usuário para cada usuário.
É executado quando você faz login pela primeira vez. Esse arquivo
fornece valores para seu caminho, além de definir as variáveis de
ambiente para coisas como o local de sua caixa de correio e o tamanho
dos arquivos de seu histórico. Por fim, o arquivo /etc/profile reúne
as configurações do shell de arquivos de configuração no diretório
/etc/profile.d.

* /etc/bashrc

Executa para cada usuário que roda o shell bash, sempre que um shell 
bash é aberto. Ele configura o prompt padrão e pode adicionar um ou
mais aliases. Valores nesse arquivo podem ser substituídos por
informações no arquivo ~/.bashrc de cada usuário.

* ~/bash_profile

Utilizado por cada usuário para inserir informações que são específicas
do seu uso do shell. É executado apenas uma vez: quando o usuário faz
login. Por padrão, configura algumas variáveis de ambiente e executa o
arquivo .bashrc do usuário. Esse é um bom lugar para adicionar
variáveis de ambiente, porque, uma vez configuradas, elas são herdadas
por shells futuros.

* ~/.bashrc

Contém informações específicas dos shells bash do usuário. Ele é lido
quando você efetua o login e também todas as vezes que abre um novo
shell bash. Esse é o melhor local para adicionar aliases para o shell
usar.

* ~/. bash_logout

Executa cada vez que você faz logout (sai do último shell bash). Por
padrão, ele simplesmente limpa sua tela.