共計(jì) 2217 個(gè)字符,預(yù)計(jì)需要花費(fèi) 6 分鐘才能閱讀完成。
這篇文章主要介紹“l(fā)inux 中環(huán)境變量配置在什么文件”,在日常操作中,相信很多人在 linux 中環(huán)境變量配置在什么文件問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”linux 中環(huán)境變量配置在什么文件”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學(xué)習(xí)吧!
linux 中包含環(huán)境變量的配置文件有多個(gè):1、“/etc/profile”文件,該文件配置的環(huán)境變量將應(yīng)用于登錄到系統(tǒng)的每一個(gè)用戶;2、“/etc/bashrc”,修改該文件配置的環(huán)境變量將會影響所有用戶使用的 bash shell;3、“/etc/environment”,該文件包含與系統(tǒng)運(yùn)行相關(guān)但與用戶無關(guān)的環(huán)境變量;4、“~/.profile”;5、“~/.bashrc”。
本教程操作環(huán)境:linux7.3 系統(tǒng)、Dell G3 電腦。
一、環(huán)境變量介紹:
在 Linux 系統(tǒng)中,環(huán)境變量按照其作用范圍不同大致可以分為系統(tǒng)級環(huán)境變量和用戶級環(huán)境變量。
系統(tǒng)級環(huán)境變量:每一個(gè)登錄到系統(tǒng)的用戶都能夠讀取到系統(tǒng)級的環(huán)境變量;
用戶級環(huán)境變量:每一個(gè)登錄到系統(tǒng)的用戶只能夠讀取屬于自己的用戶級的環(huán)境變量;
自然而然地,環(huán)境變量的配置文件也相應(yīng)的被分成了系統(tǒng)級和用戶級兩種。
二、系統(tǒng)級:
1、/etc/profile
在系統(tǒng)啟動后第一個(gè)用戶登錄時(shí)運(yùn)行,并從 /etc/profile.d 目錄的配置文件中搜集 shell 的設(shè)置,使用該文件配置的環(huán)境變量將應(yīng)用于登錄到系統(tǒng)的每一個(gè)用戶。
提示:在 Linux 系統(tǒng)中,使用以下命令可以使配置文件立刻生效。
source /etc/profile
echo $PATH
2、/etc/bashrc(Ubuntu 和 Debian 中是 /etc/bash.bashrc)
在 bash shell 打開時(shí)運(yùn)行,修改該文件配置的環(huán)境變量將會影響所有用戶使用的 bash shell。
注意:這里的 bash shell 有不同的類別,不同的類別所使用的環(huán)境變量配置文件也有所不同。
一般情況下,非登錄 shell 不會執(zhí)行任何 profile 文件,非交互 shell 模式不會執(zhí)行任何 bashrc 文件。
3、/etc/environment
在系統(tǒng)啟動時(shí)運(yùn)行,用于配置與系統(tǒng)運(yùn)行相關(guān)但與用戶無關(guān)的環(huán)境變量,修改該文件配置的環(huán)境變量將影響全局。
三、用戶級:
1、~/.profile(推薦首選)
~/.profile: executed by Bourne-compatible login shells.
當(dāng)用戶登錄時(shí)執(zhí)行,每個(gè)用戶都可以使用該文件來配置專屬于自己使用的 shell 信息。
2、~/.bashrc
~/.bashrc: executed by bash(1) for non-login shells.
當(dāng)用戶登錄時(shí)以及每次打開新的 shell 時(shí)該文件都將被讀取,不推薦在這里配置用戶專用的環(huán)境變量,因?yàn)槊块_一個(gè) shell,該文件都會被讀取一次,效率肯定受影響。
生效用:source
bashrc 和 profile 的差異
從上面的英文描述可以知道,bashrc 和 profile 的差異在于:
注意:通常我們修改 bashrc, 有些 linux 的發(fā)行版本不一定有 profile 這個(gè)文件;
1. bashrc 是在系統(tǒng)啟動后就會自動運(yùn)行。
2. profile 是在用戶登錄后才會運(yùn)行。
3. 進(jìn)行設(shè)置后,可運(yùn)用 source bashrc 命令更新 bashrc,也可運(yùn)用 source profile 命令更新 profile。
4. /etc/profile 中設(shè)定的變量 (全局) 的可以作用于任何用戶,而~/.bashrc 等中設(shè)定的變量 (局部) 只能繼承 /etc/profile 中的變量,他們是 父子 關(guān)系。
3、~/.bash_profile 或 ~./bash_login
~/.bash_profile or ~./bash_login – If one of these file exist, bash executes it rather then ~/.profile
when it is started as a login shell. (Bash will prefer ~/.bash_profile to ~/.bash_login).
However, these files won t influence a graphical session by default.
以上是 ubuntu 官網(wǎng)給出的關(guān)于~/.bash_profile 和 ~./bash_login 的說明,翻譯為中文:
~/.bash_profile 或 ~./bash_login –
如果有其中的一個(gè)文件存在的話, 當(dāng)啟動的是一個(gè)登錄 shell 時(shí),Bash 會執(zhí)行該文件而不會執(zhí)行~/.profile;
如果兩個(gè)文件都存在的話,Bash 將會優(yōu)先執(zhí)行~/.bash_profile 而不是~/.bash_login;
然而, 默認(rèn)情況下,這些文件不會影響圖形會話。
4、~/.bash_logout
當(dāng)每次退出系統(tǒng) (退出 bash shell) 時(shí)執(zhí)行該文件。
注意:Linux 系統(tǒng)使用 $VARIABLE_NAME 訪問環(huán)境變量,多個(gè)環(huán)境變量之間使用“:”分隔,Windows 系統(tǒng)使用 %VARIABLE_NAME% 訪問環(huán)境變量,多個(gè)環(huán)境變量之間使用 ; 分隔。
到此,關(guān)于“l(fā)inux 中環(huán)境變量配置在什么文件”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!