iTerm / zsh não está lendo .bashrc OU .bash_profile

16

Em ~/.bash_profile Eu tenho:

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

Em ~/.bashrc , tenho alguns aliases

Quando carrego uma nova janela iTerm, meus aliases não funcionam. Se eu source ~/.bashrc eles funcionam. Se eu fonte ~.bash_profile eles funcionam.

Não é pelo menos um deles que deve ser originado automaticamente?

O que pode estar causando o problema de não funcionar corretamente?

    
por Damon 19.01.2015 / 16:50

1 resposta

32

A resposta é simples, quase evidente na pergunta. Aqui está o porquê:

O shell zsh não é bash , é um shell diferente. zsh não usará os arquivos padrão criados para bash : .bashrc ou .bash_profile . Esses dois arquivos são arquivos de configuração de inicialização para bash . zsh tem seus próprios arquivos de configuração de inicialização.

Você pode encontrar mais informações sobre eles aqui na zsh página de introdução :

There are five startup files that zsh will read commands from:

$ZDOTDIR/.zshenv
$ZDOTDIR/.zprofile
$ZDOTDIR/.zshrc
$ZDOTDIR/.zlogin
$ZDOTDIR/.zlogout

Você mencionou que seus aliases não funcionam, para corrigir isso, aplique seus aliases aqui assim:

~/.zshrc

alias sz='source ~/.zshrc'     # Easily source your ~/.zshrc file.
alias ls='pwd; ls --color'     # Alias 'ls' to: pwd + ls + color.
    
por 19.01.2015 / 19:54