🧌
.zshrcと.zprofile って何が違うの?
anaconda や pyenv などの環境設定を行う際に .zshrc と .zprofile の違いについて忘れてしまっていたので,自分の備忘録として残しておきます。
TD;LR
-
.zshrc:シェルが起動するたびに実行したい設定を書く -
.zprofile:ログイン時に 1 回だけ実行したい設定を書く
もう少し詳しく
一応,bash_profile についても簡単に記述しておきます。
macOS Catalina 以降では,デフォルトのシェルが zsh に変更されたみたいです。
| ファイル名 | Shell | 読み込みタイミング | 主な用途 |
|---|---|---|---|
| .zshrc | Zsh | シェルが起動されるたび | インタラクティブなシェルの設定(プロンプト、エイリアスなど) |
| .zprofile | Zsh | ログインシェルとして起動されたとき | ログイン時に 1 回だけ実行したい設定(環境変数など) |
| .bash_profile | Bash | ログインシェルとして起動されたとき | ログイン時に 1 回だけ実行したい設定(環境変数など) |
最後に
export などの環境変数を設定する際には,.zprofile に書くことが多いイメージです 🤔
.zshrc に書いてもいいのですが,シェルが起動するたびに実行されるため,シェルの起動が遅くなる可能性があるので注意してください ⚠️
Discussion