it-swarm.com.de

iTerm / zsh liest nicht .bashrc OR .bash_profile

In ~/.bash_profile habe ich:

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

In ~/.bashrc habe ich einige Aliase

Wenn ich ein neues iTerm-Fenster lade, funktionieren meine Aliase nicht. Wenn ich ~/.bashrc beschaffe, funktionieren sie. Wenn ich ~.bash_profile beschaffe, funktionieren sie.

Soll nicht mindestens einer automatisch beschafft werden?

Was könnte dazu führen, dass es nicht richtig funktioniert?

22
Damon

Die Antwort ist einfach und in der Frage fast offensichtlich. Hier ist der Grund:

Die Shell zsh ist keine bash, sondern eine andere Shell. zsh verwendet nicht die Standarddateien, die für bash erstellt wurden: .bashrc oder .bash_profile. Diese beiden Dateien sind Startkonfigurationsdateien für bash. zsh hat seine eigenen Startkonfigurationsdateien.

Mehr darüber erfahren Sie hier auf der Einführungsseite zu zsh :

Es gibt fünf Startdateien, aus denen zsh Befehle liest:

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

Sie hatten erwähnt, dass Ihre Aliase nicht funktionieren. Um dies zu beheben, wenden Sie Ihre Aliase hier wie folgt an:

~/.zshrc

alias sz='source ~/.zshrc'     # Easily source your ~/.zshrc file.
alias ls='pwd; ls --color'     # Alias 'ls' to: pwd + ls + color.
41
projectdp

Wenn Sie zsh verwenden, um den Quellcode zu erzwingen, .bash_profile

fügen Sie in ~/.zshrc die folgende Zeile hinzu

source ~/.bash_profile

P.S - Ich habe nicht untersucht, ob dies ein Problem verursachen kann.

2
Alok Swain