iTerm / zsh nie czyta .bashrc LUB .bash_profile


22

W ~/.bash_profile mam:

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

W ~/.bashrcMam kilka aliasów

Kiedy ładuję nowe okno iTerm, moje aliasy nie działają. Jeśli źródła, ~/.bashrcone działają. Jeśli źródła, ~.bash_profileone działają.

Czy przynajmniej jeden z nich nie powinien być pozyskiwany automatycznie?

Co może być przyczyną nieprawidłowego działania?

Odpowiedzi:


41

Odpowiedź jest prosta, prawie oczywista w pytaniu. Dlatego:

Skorupa zshnie jest bash, to inna skorupa. zshnie będzie używać domyślnych plików zbudowanych dla bash: .bashrclub .bash_profile. Te dwa pliki są plikami konfiguracyjnymi uruchamiania dla bash. zshma własne pliki konfiguracyjne uruchamiania.

Możesz dowiedzieć się więcej o nich tutaj na stronie zsh wprowadzenia :

Istnieje pięć plików startowych, z których Zsh będzie czytał polecenia:

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

Wspomniałeś, że twoje aliasy nie działają, aby to naprawić, zastosuj tutaj swoje aliasy w następujący sposób:

~/.zshrc

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

Dziękuję Ci. Zauważ, że ls --colordał mi illegal optionw obu bashi zshna OSX 10.10, ale nie na Linuksie - Zajrzę do niego. Twoje zdrowie.
Bradley Flood,

Nie mam Maca do przetestowania, ale myślę, że ma to związek z implementacją ls w OS X, nie sądzę, że ma argument - -color. Jeśli pamiętam, sprawdzę to.
projectdp

„... zsh ma własne pliki konfiguracyjne uruchamiania.” o to prawdopodobnie prosi, prawda? po prostu powiedz „koleś, to ~ / .zshrc”.
eyurdakul

2

Jeśli używasz zsh, to wymuś źródło .bash_profile

w ~/.zshrcdodaj wiersz poniżej

source ~/.bash_profile

PS - Nie sprawdziłem, czy może to powodować jakiś problem.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.