(1)linux環境變數初始化與對應檔案的生效順序

2021-08-04 05:25:36 字數 828 閱讀 8868

在登入linux系統並啟動乙個bash shell時,預設情況下bash會在若干個檔案中查詢環境變數的設定。這些檔案可統稱為系統環境變數。bash檢查的環境變數檔案的情況取決於系統執行shell的方式。

系統執行shell的方式一般有三種:

一、通過系統使用者登入後預設執行的shell

二、非登入互動式執行shell

三、執行指令碼執行非互動式shell

當使用者登入linux系統時,shell會作為登入shell啟動。此時的登入shell載入環境變數的順序如下

使用者登入系統後首先會載入/etc/profile全域性變數檔案,這是linux系統上預設的shell主環境變數檔案。系統上每個使用者登入都會載入這個檔案。

當載入完/etc/profile檔案後,才會執行/etc/profile.d目錄下的指令碼檔案。

之後開始執行$home/.bash_profile(使用者環境變數檔案),在這個檔案中,又會去找$home/.bashrc(使用者環境變數檔案),如果有則執行,如果沒有則不執行。在$home/.bashrc檔案中又會去找/etc/bashrc(全域性環境變數檔案),如果有則執行,如果沒有則不執行。

如果使用者的shell不是登入時啟動的,非登入shell只會載入$home/.bashrc(使用者環境變數檔案),並會去找/etc/bashrc(全域性環境變數檔案)。如果希望在登入shell下也可以讀到設定的環境變數等內容,就需要將變數設定等寫入$home/.bashrc或者/etc/bashrc,而不是$home/.bash_profile或/etc/profile。

初始化linux環境

1.新建使用者組 addgroup admin 假定為admin使用者組 2.新建使用者 useradd d home work s bin bash m work 此命令建立了乙個使用者work,其中 d選項用來為登入名work產生乙個主目錄 home work。引數s指定使用者的shell。引數...

教訓1 變數的初始化

在專案的尾期遇到了乙個問題,程式編譯出的release版本,交給測試人員,總是出現一些莫名其妙的錯誤,而且這些錯誤沒有規律可循,十分詭異。而且錯誤之間沒有規律。剛開始我總是在本機的debug版本下試圖重現,可怎麼都重現不了。試圖從邏輯上發現bug,確實修改了一些bug,明明沒有問題了,可是一到測試那...

tensorflow變數建立與初始化

import tensorflow as tf v tf.get variable v shape 1 initializer tf.constant initializer 1.0 或者 v tf.variable tf.constant 1.0,shape 1 name v 上述兩種變數建立的區...