一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Linux - linux下設定環境變量的方法介紹

linux下設定環境變量的方法介紹

2019-12-19 16:08Linux教程網 Linux

在linux下設定環境變量時,如果只是臨時用一下,可以直接在shell下用set或export命令設定環境變量,如果希望此環境變量每次開機或打開 shell時自動設定而無須每次都手動設定

那么需要將export命令寫入某個系統文件中,擁有這種功能的文件常見的有如下幾個:

/etc/environment 或 /etc/profile 或 ~/.profile 或 /etc/bash.bashrc 或 ~/.bashrc等。

有這么多可以用,到底它們有什么區別,誰先誰后呢?

首先,來看看這幾個文件都是干什么的:

1./etc/environment–>是系統在登錄時讀取的第一個文件,用于為所有進程設置環境變量。系統使用此文件時并不是執行此文件中的命 令,而是根據KEY=VALUE模式的代碼,對KEY賦值以VALUE,因此文件中如果要定義PATH環境變量,只需加入一行形如 PATH=$PATH:/xxx/bin的代碼即可。

2./etc/profile–>是系統登錄時執行的第二個文件,可以用于設定針對全系統所有用戶的環境變量。

3.~/.profile–>是對應當前登錄用戶的profile文件,用于定制當前用戶的個人工作環境。

4./etc/bash.bashrc–>是針對所有用戶的bash初始化文件,在此中設定的環境變量將應用于所有用戶的shell中,此文件會在用戶每次打開shell時執行一次。

5.~/.bashrc–>是對應當前登錄用戶的bash初始化文件,當用戶每次打開shell時,系統都會執行此文件一次。

那么根據以上描述,這幾個文件的執行先后順序應當是:

/etc/enviroment –>/etc/profile –>~/.profile –>/etc/bash.bashrc–> ~/.bashrc

為了驗證此順序是否正確,這里可以做一個小試驗,假定我們登錄的用戶名為xyz。在/etc/environment中加入一行:

ENV_MSG=”this is /etc/environment”

這樣也就是添加了一個環境變量ENV_MSG,然后在/etc/profile中加入兩行代碼:

echo $ENV_MSG >> /home/xyz/log.txt

echo “this is /etc/profile” >> /home/xyz/log.txt

這樣,如果/etc/environment在profile之前被系統讀取,則在/home/xyz/log.txt 中會先后打印出EVN_MSG的值和 this is /etc/profile這兩條消息。

在/home/xyz/.profile中加入一行代碼:

echo “this is .profile” >> /home/xyz/log.txt

在/etc/bash.bashrc中加入一行代碼:

echo “this is /etc/bash.bashrc” >> /home/xyz/log.txt

在/home/xyz/.bashrc中加入一行代碼:

echo “this is .bashrc” >> /home/xyz/log.txt

然后,重啟計算機,看看log.txt文件中會是什么樣子。

啟動計算機后以xyz用戶登錄并立即打開/home/xyz/log.txt,可以看到文件中有如下三行消息:

this is /etc/environment

this is /etc/profile

this is .profile

這說明系統在啟動登錄的過程中依次讀取執行了/etc/enviroment 、/etc/profile和~/.profile中的內容。

然后打開一個shell窗口,log文件中就會增加兩行消息:

this is /etc/bash.bashrc

this is .bashrc

這說明在打開shell過程中,系統又依次執行/etc/bash.bashrc和~/.bashrc。如果關閉shell窗口后再次打開一個新的 shell窗口,則log文件中會又增加兩行同樣的消息。由此可以獲知,每次打開一個新shell,系統都會重復執行這兩個文件,而不會再動那頭三個文件 的內容。

接下來我們再打開/etc/environment ,把剛才寫入的那行改成ENV_MSG=”this is not /etc/environment”,然后注銷,重新以xyz登錄,結果會發現log文件中會又多了三行:

this is not /etc/environment

this is /etc/profile

this is .profile

這也就看出來,注銷重登錄也會引發系統對這三個文件的讀取與執行。

不過,如果按下Ctrl+Alt+F1,然后登錄xyz,那么log文件中會多出來如下幾行,這又是怎么回事呢?

this is /etc/bash.bashrc

this is /etc/environment

this is /etc/profile

this is .bashrc

this is .profile

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 999久久久免费精品国产牛牛 | yellow视频在线观看免费 | 好爽好紧小雪别夹小说 | 日韩欧美亚洲天堂 | 国产精品久久久久久久久ktv | 电车痴汉中文字幕 | 91制片厂制作传媒免费版樱花 | 猥琐对着美女飞机喷到脸上 | 久久精品亚洲牛牛影视 | 欧美cosplay极品video | 国产一级一级一级成人毛片 | 日本高清二三四本2021 | 日本www色视频成人免费 | 久久国产综合精品欧美 | 亚洲va欧美va国产综合久久 | 小草观看免费高清视频 | 日本五十路六十30人8时间 | 色老板影视 | 久久综合给会久久狠狠狠 | 狠狠色综合久久久久尤物 | 免费特黄一级欧美大片 | 色婷婷综合缴情综六月 | 日本高清免费中文字幕不卡 | 男人狂躁女人下面狂叫图片 | 男人的天堂久久爱 | 国产福利在线观看第二区 | 草草免费观看视频在线 | 91aaa免费免费国产在线观看 | 青青色在线观看 | 色天天综合网色鬼综合 | 全彩孕交漫画福利啪啪吧 | 免费一级欧美片片线观看 | 免费视频精品一区二区 | 国产免费小视频在线观看 | 亚洲羞羞裸色私人影院 | 亚洲国产精品牛在线 | 精品日韩一区二区三区 | 摸进老太婆的裤裆小说 | 91色爱| 桃子视频www | 亚洲不卡视频在线观看 |