Pergunta

Como posso recarregar .bash_profile Da linha de comando? Eu posso fazer com que a concha reconheça mudanças para .bash_profile Ao sair e fazer logon, mas eu gostaria de poder fazê -lo sob demanda.

Foi útil?

Solução

Simplesmente digite source ~/.bash_profile

Como alternativa, se você gosta de salvar as teclas que você pode digitar . ~/.bash_profile

Outras dicas

. ~/.bash_profile

Apenas certifique -se de não ter nenhuma dependência do estado atual lá.

Simplesmente digite:

. ~/.bash_profile

No entanto, se você deseja obtê -lo para executar automaticamente quando o terminal inicia em vez de executá -lo toda vez que você abrir o terminal, você pode adicionar . ~/.bash_profile para ~/.bashrc Arquivo.

Observação:

Quando você abre um terminal, o terminal inicia o modo interativo (não logina), o que significa que ele será ~/.bashrc.

~/.bash_profile só é proveniente de Bash quando iniciado Modo de login interativo. Isso normalmente é apenas quando você faz login no console (Ctrl+Alt+F1..F6), ou conectar via ssh.

Você também pode usar este comando para recarregar o ~/.bash_profile para esse usuário. Certifique -se de usar o painel.

su - username

Gosto do fato de que, depois de ter acabado de editar o arquivo, tudo o que você precisa fazer é digitar:

. !$

Isso obtém o arquivo que você acabou de editar na história. Ver O que é Bang Dollar em Bash.

  1. Salvar .bash_profile Arquivo
  2. Diretório doméstico do usuário do Goto digitando cd
  3. Recarregue o perfil com . .bash_profile

Se você não se importa de perder a história do seu terminal de shell atual, você também pode fazer

bash -l

Isso bifurcaria sua concha e abriria outro processo infantil de Bash. o -l O parâmetro diz ao BASH para executar como um shell de login, isso é necessário porque .bash_profile não será executado como um shell não login, para obter mais informações sobre isso Leia aqui

Se você deseja substituir completamente o shell atual, também pode fazer:

exec bash -l

O exposto acima não vai bifurcar seu shell atual, mas substitui -o completamente, então quando você digita exit Ele será encerrado completamente, em vez de deixá -lo no shell anterior.

Adicionar alias bashs="source ~/.bash_profile" no seu arquivo Bash. Então você pode ligar bashs da próxima vez

você só precisa digitar . ~/.bash_profile

referir: https://superuser.com/questions/46139/what-does-source-go

Se o .bash_profile não existir, você poderá tentar executar o seguinte comando:

. ~/.bashrc 

ou

 source ~/.bashrc

em vez de .bash_profile. Você pode encontrar mais informações sobre Bashrc

Eu queria postar uma resposta rápida que enquanto usava source ~/.bash_profile Ou as respostas mencionadas acima funcionam, uma coisa a mencionar é que isso apenas recarrega seu perfil de bash na guia ou sessão atual que você está visualizando. Se você deseja recarregar seu perfil Bash em cada guia/shell, precisa inserir este comando manualmente em cada um deles.

Se você usar item, você pode usar Cmd⌘+Mudança+EU Para inserir um comando em todas as guias atuais. Para o terminal, pode ser útil fazer referência a isso questão;

Eu uso o Debian e posso simplesmente digitar exec bash Para alcançar isto. Não posso dizer se funcionará em todas as outras distribuições.

Estou executando a Sierra e estou trabalhando nisso por um tempo (tentando todas as soluções recomendadas). Fiquei confuso, então tentei reiniciar meu computador! Funcionou

Minha conclusão é que às vezes é necessária uma redefinição difícil

alias reload!=". ~/.bash_profile"

ou se quiser adicionar logs via funções

function reload! () {
    echo "Reloading bash profile...!"
    source ~/.bash_profile
    echo "Reloaded!!!"
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top