記得以前用Linux的時候,只要把設定寫在 .bashrc
裡面,系統就會自己讀入。
怎麼在MacOS上,寫一些設定在 .bashrc
裡面,都不理我,我不想每次都 source ~/.bashrc
好煩!
原來MacOS裡面有個檔案 .bash_profile,那他和 .bashrc
有什麼不一樣呢?
看這個說明
bash_profile is executed for login shells, while .bashrc is executed for interactive non-login shells
.bash_profile
是給 login 過的 shells 吃的,.bashrc
是給沒有 Login 過的 shell 吃的。
問題來了,如何定義登入,我用 MacOS,都有登入,怎麼沒有把 .bashrc
吃進來?
如果你在 MacOS 打開你的Terminal(iTerm),他都是吃 .bash_profile 的!
所以建議是在.bash_profile加下面幾行:
1 | if [ -f ~/.bashrc ]; then |
然後一些設定還是寫在.bashrc,維持習慣!