Linux環(huán)境變量

環(huán)境變量是一些已經(jīng)賦了值的變量,在bash shell中柿估,環(huán)境變量分為兩類:
* 全局變量
* 局部變量

查看變量

set

set命令會(huì)顯示出全局變量循未、局部變量以及用戶定義變量。

env

[root@zzz ~]# env
XDG_SESSION_ID=18849
TERM=xterm
SHELL=/bin/bash
HISTSIZE=1000
SSH_TTY=/dev/pts/2
USER=root
_=/usr/bin/env
...

printenv

[root@zzz ~]# printenv
XDG_SESSION_ID=18849
TERM=xterm
SHELL=/bin/bash
HISTSIZE=1000
SSH_TTY=/dev/pts/2
USER=root
_=/usr/bin/env
...

[root@zzz ~]# printenv USER
root

printenv與env一樣官份,printenv多了可以顯示單個(gè)變量的功能

設(shè)置變量

局部變量

#變量名只厘、等號(hào)和值之間沒有空格
 my_variable=Hello
 echo $my_variable
#Hello

全局變量

 my_variable="I am Global now"
 export my_variable
 echo $my_variable
#I am Global now

可見性

全局環(huán)境變量對(duì)于shell會(huì)話和所有生成的子shell都是可見的。局部變量則只對(duì)創(chuàng)建它們的
shell可見舅巷。

[root@zzz ~]# var1=5
[root@zzz ~]# echo $var1
5
[root@zzz ~]# bash
[root@zzz ~]# echo $var1

[root@zzz ~]

全局環(huán)境變量修改只對(duì)當(dāng)前shell有效

[root@zzz ~]# printenv GOROOT
/usr/local/go1
[root@zzz ~]# GOROOT=/usr/local/go
[root@zzz ~]# printenv GOROOT
/usr/local/go
[root@zzz ~]# GOROOT=/usr/local/go1
[root@zzz ~]# printenv GOROOT
/usr/local/go1
[root@zzz ~]# bash
[root@zzz ~]# printenv GOROOT
/usr/local/go

刪除變量unset

如果你是在子進(jìn)程中刪除了一個(gè)全局環(huán)境變量羔味,這只對(duì)子進(jìn)程有效。該全局環(huán)境變量在父進(jìn)程中依然可用

[root@zzz ~]# globle_var=5
[root@zzz ~]# export globle_var
[root@zzz ~]# echo $globle_var
5
[root@zzz ~]# bash
[root@zzz ~]# echo $globle_var
5
[root@zzz ~]# unset globle_var
[root@zzz ~]# echo $globle_var

[root@zzz ~]# exit
exit
[root@zzz ~]# echo $globle_var
5

系統(tǒng)環(huán)境變量初始化

Linux系統(tǒng)中有很多默認(rèn)環(huán)境變量钠右,我們需要了解變量的加載過程赋元。
啟動(dòng)bash shell有3種方式:

  • 登錄時(shí)作為默認(rèn)登錄shell(賬號(hào)密碼登錄)
  • 作為非登錄shell的交互式shell(界面系統(tǒng)打開終端,子shell)
  • 作為運(yùn)行腳本的非交互shell(腳本啟動(dòng)shell)

登錄 shell

登錄shell會(huì)從5個(gè)不同的啟動(dòng)文件里讀取命令:

  • /etc/profile
  • $HOME/.bash_profile
  • $HOME/.bashrc
  • $HOME/.bash_login
  • $HOME/.profile

交互式 shell 進(jìn)程

如果bash是作為交互式shell啟動(dòng)的,它就不會(huì)訪問/etc/profile文件飒房,只會(huì)檢查用戶HOME目錄
中的.bashrc文件搁凸。

非交互式 shell

bash shell提供了BASH_ENV環(huán)境變量。當(dāng)shell啟動(dòng)一個(gè)非交互式shell進(jìn)
程時(shí)狠毯,它會(huì)檢查這個(gè)環(huán)境變量來查看要執(zhí)行的啟動(dòng)文件护糖。如果有指定的文件,shell會(huì)執(zhí)行該文件
里的命令嚼松,這通常包括shell腳本變量設(shè)置

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末嫡良,一起剝皮案震驚了整個(gè)濱河市锰扶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌寝受,老刑警劉巖坷牛,帶你破解...
    沈念sama閱讀 211,348評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異很澄,居然都是意外死亡京闰,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門甩苛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蹂楣,“玉大人,你說我怎么就攤上這事浪藻【杵龋” “怎么了乾翔?”我有些...
    開封第一講書人閱讀 156,936評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵爱葵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我反浓,道長(zhǎng)萌丈,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,427評(píng)論 1 283
  • 正文 為了忘掉前任雷则,我火速辦了婚禮辆雾,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘月劈。我一直安慰自己度迂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,467評(píng)論 6 385
  • 文/花漫 我一把揭開白布猜揪。 她就那樣靜靜地躺著惭墓,像睡著了一般。 火紅的嫁衣襯著肌膚如雪而姐。 梳的紋絲不亂的頭發(fā)上腊凶,一...
    開封第一講書人閱讀 49,785評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音拴念,去河邊找鬼钧萍。 笑死,一個(gè)胖子當(dāng)著我的面吹牛政鼠,可吹牛的內(nèi)容都是我干的风瘦。 我是一名探鬼主播,決...
    沈念sama閱讀 38,931評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼公般,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼万搔!你這毒婦竟也來了器躏?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,696評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤蟹略,失蹤者是張志新(化名)和其女友劉穎登失,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體挖炬,經(jīng)...
    沈念sama閱讀 44,141評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡遍尺,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,483評(píng)論 2 327
  • 正文 我和宋清朗相戀三年砍鸠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,625評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡知押,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出溪椎,到底是詐尸還是另有隱情氛改,我是刑警寧澤,帶...
    沈念sama閱讀 34,291評(píng)論 4 329
  • 正文 年R本政府宣布撩独,位于F島的核電站敞曹,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏综膀。R本人自食惡果不足惜澳迫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,892評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望剧劝。 院中可真熱鬧橄登,春花似錦、人聲如沸讥此。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽萄喳。三九已至卒稳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間取胎,已是汗流浹背展哭。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留闻蛀,地道東北人匪傍。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像觉痛,于是被迫代替她去往敵國和親役衡。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,492評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容