1. 程式人生 > >Linux Bash Shell 載入檔案

Linux Bash Shell 載入檔案

bash shell可分為3種類型:
1 login shell:需要輸入使用者名稱和密碼才能登陸的shell
2 可互動的非login shell:不用登陸,但可以同用戶進行互動的shell,比如在父shell當中執行bash命令產生的子shell
3 不可互動的非login shell:系統使用

在這裡插入圖片描述
login shell讀取檔案如上圖,login shell首先讀取/etc/profile檔案,/etc/profile會呼叫執行/etc/profile.d目錄下的.sh檔案,然後shell讀取$HOME目錄下的.bash_profile、.bash_login、.profile(搜尋順序按照順序進行,找到一個就不會在找下一個),然後.bash_profile、.bash_login、.profile會呼叫.bashrc,.bashrc會呼叫/etc/bashrc,/etc/bashrc會呼叫執行/etc/profile.d目錄下的.sh檔案

而非登入shell僅僅會讀取 ~/.bashrc。首先讀取.bashrc,同上面一樣,.bashrc呼叫/etc/bashrc,/etc/bashrc呼叫執行/etc/profile.d目錄下面的.sh檔案。

Linux環境變數設定檔案:
/etc/profile
全域性使用者,應用於所有的Shell。

/$HOME/.profile
當前使用者,應用於所有的Shell。

/etc/bash_bashrc
全域性使用者,應用於Bash Shell。

~/.bashrc
區域性當前,應用於Bash Sell。

檢視bash載入順序: man bash
手動載入檔案:source .bashrc  //當我們修改了/etc/profile檔案,並想讓它立刻生效,而不用重新登入,就可以使用source命令,如source /etc/profile。