Atualizar variáveis ​​env após editar o arquivo bashrc


59

Eu editei frequentemente o .bashrcarquivo para exportar novas variáveis ​​de ambiente.

Em vez de fechar o console e iniciar um novo para atualizar as variáveis ​​env, existe uma maneira conveniente de atualizar?

Respostas:


78

Dentro da mesma janela, você pode simplesmente digitar bashpara iniciar uma nova. Isso é equivalente a fechar a janela e reabrir uma nova.

Como alternativa, você pode digitar source ~/.bashrca origem do .bashrcarquivo.


7
Não há necessidade de executar outro shell. sourceé a maneira correta
Matteo

2
também não há necessidade de digitar palavra longa source. você pode simplesmente digitar ponto no lugar dele: . ~/.bashrc.
rush

4
A digitação @Rush sourcemostra ao usuário qual comando é chamado. Não acredito em mostrar os comandos abreviados para novos usuários até que eles entendam o que o código está fazendo.
n0pe

10
note que o simples fornecimento de bashrc não é necessariamente igual a um reinício do bash. variáveis ​​definidas não são automaticamente indefinidas. as opções de shell não são desabilitadas automaticamente. o fornecimento de bashrc somente executa o que está escrito em bashrc. ele não reverte nenhuma outra alteração no ambiente. iniciar uma nova sessão do bash dentro do antigo também não é necessariamente igual a uma reinicialização do bash, pois o novo processo herda o ambiente do antigo.
Lesmana

2
@MaxMackie Considerando como sourceé um bashismo que é mais longo para digitar e não oferece vantagens sobre o portátil em todos os shells equivalentes, .não vejo o ponto de incentivar alguém, novo ou experiente, a usá-lo.
jw013


3

Além do que outros sugeriram, descobri que sourcenão desabilita as variáveis ​​de ambiente atribuídas anteriormente. Portanto, se você quiser desconfigurar variáveis ​​de ambiente, precisará fazê-lo manualmente.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.