1. 程式人生 > >Bash Shell啟動配置腳本的順序

Bash Shell啟動配置腳本的順序

文件中 腳本 配置 默認 inux profile lin clas 系統用戶

1、Bash檢查環境變量文件的方式,取決於系統運行Shell的方式,通常系統運行Shell有3種方式:

1)通過系統用戶登陸後默認運行的Shell
2)非登陸交互式運行Shell
3)執行腳本運行非交互式Shell

2、第一種情況下,當用戶登錄Linux系統時,Shell會作為登陸Shell啟動,此時Shell加載配置文件的順序:

1)首先加載/etc/profile,這是linux系統默認的Shell主配置文件,每個登陸用戶都會加載。
2)加載1後,才會執行/etc/profile.d目錄下的腳本文件,這個目錄下有很多腳本,都是需要用戶登陸後立即運行的腳本。
3)之後運行$HOME/.bash_profile,這個文件裏會調用$HOME/.bashrc(如果有,則執行,如果沒有,則不執行),在$HOME/.bashrc文件中又會去找/etc/bashrc(同樣是如果有,就執行,沒有,就不執行)。

3、如果用戶的Shell不是登陸時啟動的,如:手動敲下bash時啟動的,或者其他不需要輸入密碼的登陸,遠程SSH連接等情況,這種非登陸Shell只會加載$HOME/.bashrc,並會去找/etc/bashrc,情況如2.3所示。

4、如果希望在非登陸Shell中也可以讀到設置的環境變量等內容,就需要將變量設定等寫入$HOME/.bashrc或者/etc/bashrc,而不是HOME/.bash_profile或者/etc/profile

5、配置文件中,常用export來定義環境變量,export的作用是將變量輸出到Shell的所有進程中。

Bash Shell啟動配置腳本的順序