回答編集履歴

1

mpyw

mpyw score 4964

2016/03/31 09:17  投稿

めっちゃ簡潔に書くと
- `source`コマンドを使えば任意のファイルを読み込める.但しシェル再起動時には環境変数はリセットされてしまう.
- `~/.zshrc`はzsh起動時に自動で読み込まれるファイル.
- `~/.bashrc`はbash起動時に自動で読み込まれるファイル.
- `~/.zshrc`はzsh起動時に自動で読み込まれるファイル.シェル再起動時には環境変数はリセットされるが,毎回読み込まれるので恒久的に内容が反映される.
- `~/.bashrc`はbash起動時に自動で読み込まれるファイル.シェル再起動時には環境変数はリセットされるが,毎回読み込まれるので恒久的に内容が反映される.
ということです.`source`が導入チュートリアルなどに書かれていることがあるのは,**シェルを再起動せずとも**すぐ新しい環境変数を使えるようにするためです.もし再起動するなら`source`は実行しなくていいです.
ということです.`source ~/.zshrc`が`~/.zshrc`を編集したあとに読み込む感じで何かの導入チュートリアルなどに書かれていることがあるのは,**シェルを再起動せずとも**すぐ新しい環境変数を使えるようにするためです.もし再起動するなら`source`は実行しなくていいです.
 
【余談】
zshとbashの両方で読み込みたい内容は`~/.sharedrc`のようなファイルに分離しておき,`~/.zshrc`と`~/.bashrc`の両者でそれぞれ`source ~/.sharedrc`と書いておくといいです.

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る