Linux etc profile是什麼時候載入

2021-10-23 04:18:35 字數 1284 閱讀 2764

在登入linux時要執行檔案的過程如下:

在剛登入linux時,首先啟動 /etc/profile 檔案,然後再啟動使用者目錄下的 ~/.bash_profile、

~/.bash_login或 /.profile檔案中的其中乙個,執行的順序為:/.bash_profile、 ~/.bash_login、

~/.profile。如果 ~/.bash_profile檔案存在的話,一般還會執行 ~/.bashrc檔案。因為在

~/.bash_profile檔案中一般會有下面的**:

if [ -f ~/.bashrc ] ; then

. ./bashrc

fi~/.bashrc中,一般還會有以下**:

if [ -f /etc/bashrc ] ; then

. /bashrc

fi所以,~/.bashrc會呼叫 /etc/bashrc檔案。最後,在退出shell時,還會執行 ~/.bash_logout檔案。

執行順序為:

/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout

關於各個檔案的作用域,在網上找到了以下說明:

(1)/etc/profile: 此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行. 並從/etc/profile.d目錄的配置檔案中蒐集shell的設定。

(2)/etc/bashrc: 為每乙個執行bash shell的使用者執行此檔案.當bash shell被開啟時,該檔案被讀取。

(3)~/.bash_profile: 每個使用者都可使用該檔案輸入專用於自己使用的shell資訊,當使用者登入時,該檔案僅僅執行一次!預設情況下,他設定一些環境變數,執行使用者的.bashrc檔案。

(4)~/.bashrc: 該檔案包含專用於你的bash shell的bash資訊,當登入時以及每次開啟新的shell時,該該檔案被讀取。

(5)~/.bash_logout:

當每次退出系統(退出bash shell)時,執行該檔案.

另外,/etc/profile中設定的變數(全域性)的可以作用於任何使用者,而~/.bashrc等中設定的變數(區域性)只能繼承/etc

/profile中的變數,他們是"父子"關係。

(6)~/.bash_profile 是互動式login 方式進入 bash 執行的~/.bashrc ,~/.bashrc是互動式 non-login 方式進入 bash 執行的通常二者設定大致相同,所以通常前者會呼叫後者。

水是什麼時候形成的

4.火山噴發釋放出大量的水。從現代火山活動情況看,幾乎每次火山噴發都有約75 以上的水汽噴出。1906年維蘇威火山噴發的純水蒸氣柱高達13,000公尺,一直噴發了20個h。阿拉斯加卡特邁火山區的萬煙谷,有成千上萬個天然水蒸氣噴出孔,平均每秒種可噴出97 6450c的水蒸汽和熱水約23,000m3。據...

什麼時候加volatiel關鍵字

1.volatiel只保證可見性,不保證原子性。2.涉及多執行緒修改的共享變數,那麼修改這個變數的 區域需要保證同步。3.乙個函式內,例如有5句 其中2 4是對共享變數的修改,如果第一句有使用共享變數,那麼共享變數的值可能已經被載入到某執行緒的棧記憶體,而另外執行緒對共享變數已經做了修改,如果不加v...

什麼時候用exists 什麼時候用in

in not in exists not exists 使用exists,oracle會首先檢查主查詢,然後執行子查詢直到它找到第乙個匹配項,這就節省了時間。oracle在執行in子查詢時,首先執行 子查詢,並將獲得的結果列表存放在乙個加了索引的臨時表中。在執行子查詢之前,系統先將主查詢掛起 待子查...