iTerm / zsh không đọc .bashrc HOẶC .bash_profile


39

Trong ~/.bash_profile tôi có:

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

Trong ~/.bashrctôi có một số bí danh

Khi tôi tải một cửa sổ iTerm mới, các bí danh của tôi không hoạt động. Nếu tôi nguồn ~/.bashrchọ làm việc. Nếu tôi nguồn ~.bash_profilehọ làm việc.

Không phải ít nhất một trong số này được cho là có nguồn gốc tự động sao?

Điều gì có thể khiến nó không hoạt động đúng?

Câu trả lời:


56

Câu trả lời rất đơn giản, gần như hiển nhiên trong câu hỏi. Đây là lý do tại sao:

Vỏ zshkhông phải bash, nó là vỏ khác. zshsẽ không sử dụng các tệp mặc định được xây dựng cho bash: .bashrchoặc .bash_profile. Hai tập tin này là tập tin cấu hình khởi động cho bash. zshcó tập tin cấu hình khởi động riêng.

Bạn có thể tìm hiểu thêm về họ ở đây trên zsh trang giới thiệu :

Có năm tệp khởi động mà zsh sẽ đọc các lệnh từ:

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

Bạn đã đề cập các bí danh của bạn không hoạt động, để khắc phục điều này, hãy áp dụng các bí danh của bạn ở đây như sau:

~/.zshrc

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

Cảm ơn bạn. Lưu ý rằng ls --colorđã cho tôi illegal optioncả trong bashzshtrên OSX 10.10, nhưng không phải trên Linux - tôi sẽ xem xét nó. Chúc mừng.
Lũ Bradley

Tôi không có máy Mac để thử nghiệm nhưng tôi nghĩ điều này có liên quan đến việc triển khai ls trên OS X, tôi không nghĩ rằng nó có đối số - màu. Nếu tôi nhớ tôi sẽ tìm nó.
dự án

1
"... zsh có tập tin cấu hình khởi động riêng." đây là những gì anh ấy có thể yêu cầu hả? chỉ cần nói "anh bạn, đó là ~ / .zshrc".
Eyurdakul

+1 lời khuyên tuyệt vời trong câu trả lời cho macOS Catalina hiện đang sử dụng zsh chính thức. Cảm ơn bạn.
trị liệu

18

Nếu bạn đang sử dụng zsh thì để buộc nguồn .bash_profile

trong ~/.zshrcthêm dòng dưới đây

source ~/.bash_profile

Tái bút - Tôi chưa điều tra liệu điều này có thể gây ra vấn đề gì không.


2
Tôi đoán câu trả lời này sẽ hữu ích sau khi phát hành macOS 10.5 Catalina để chuyển bash_profile từ bash sang zsh.
Oleksii Kyslytsyn

Nhanh chóng và hiệu quả!
Roberto Manfreda

0

Sao chép các dòng từ ~ / .bash_profile sang ~ / .zshrc

cat ~/.bash_profile > ~/.zshrc

Và mở một tab / cửa sổ đầu cuối mới hoặc sử dụng source ~/.zshrc

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.