【zsh】.zshrcと.zprofileの違い

zshのタイトル画像 ターミナル操作
  • ~/.zshrc
  • ~/.zprofile

どちらもzshの設定ファイルだが、読み込まれるタイミングが異なる。

.zshrc(bashの場合は.bashrc)

これはシェル起動時に1回読み込まれる。

例:ターミナルでzshと入力してzshを起動した時

.zprofile(bashの場合は.bash_profile)

これはログイン時に1回読み込まれる。

例:iTermで新しいタブやウィンドウを開いた時

使い分け

個人的には、迷うなら.zprofileに書いておけば良いと思っている。

  • .zprofile:ログイン時に読み込みなので、複数回読み込む可能性が低い
  • .zshrc:シェル起動時読み込みなので、複数回読み込む可能性が高い

特にパスを通す記述は.zprofileに書いておいた方が良い。

下記のような記述を.zshrcに書いてしまうと、2回読み込まれたときにパスを重複して設定してしまう可能性がある。

export PATH="$PATH:$HOME/.rd/bin"

もししっかりと使い分けたいなら、参考までに以下に記載する。

.zprofileの使い所

ログイン時に起動するので、ユーザー単位で設定しておきたいものを書く。

  • 環境変数(exportなど)
  • 色や初期設定に関する記述

.zshrcの使い所

  • 環境変数ではない変数を定義する
  • エイリアス
  • 独自のシェル関数
タイトルとURLをコピーしました