最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

Linux Centos 設(shè)置環(huán)境變量

2022-11-11 11:59 作者:限量版范兒  | 我要投稿

一、環(huán)境變量的概念

1、環(huán)境變量的含義

程序(操作系統(tǒng)命令和應(yīng)用程序)的執(zhí)行都需要運(yùn)行環(huán)境,這個(gè)環(huán)境是由多個(gè)環(huán)境變量組成的。

2、環(huán)境變量的分類

1)按生效的范圍分類。

系統(tǒng)環(huán)境變量:公共的,對全部的用戶都生效。

用戶環(huán)境變量:用戶私有的、自定義的個(gè)性化設(shè)置,只對該用戶生效。

2)按生存周期分類。

永久環(huán)境變量:在環(huán)境變量腳本文件中配置,用戶每次登錄時(shí)會(huì)自動(dòng)執(zhí)行這些腳本,相當(dāng)于永久生效。

臨時(shí)環(huán)境變量:使用時(shí)在Shell中臨時(shí)定義,退出Shell后失效。

3、Linux環(huán)境變量

Linux環(huán)境變量也稱之為Shell環(huán)境量變,以下劃線和字母打頭,由下劃線、字母(區(qū)分大小寫)和數(shù)字組成,習(xí)慣上使用大寫字母,例如PATH、HOSTNAME、LANG等。

二、常用的環(huán)境變量

1、查看環(huán)境變量

1)env命令

在Shell下,用env命令查看當(dāng)前用戶全部的環(huán)境變量。

上圖只截取了部分環(huán)境變量,并非全部。

用env命令的時(shí)候,滿屏顯示了很多環(huán)境變量,不方便查看,可以用grep篩選。

env|grep?環(huán)境變量名

例如查看環(huán)境變量名中包含PATH的環(huán)境變量。

env|grep PATH

2)echo命令

echo $環(huán)境變量名

注意,符號$不能缺少,這是語法規(guī)定。

2、常用的環(huán)境變量

1)PATH

可執(zhí)行程序的搜索目錄,可執(zhí)行程序包括Linux系統(tǒng)命令和用戶的應(yīng)用程序,PATH變量的具體用法本文后面的章節(jié)中有詳細(xì)的介紹。

2)LANG

Linux系統(tǒng)的語言、地區(qū)、字符集,LANG變量的具體用法本文后面的章節(jié)中有詳細(xì)的介紹。

3)HOSTNAME

服務(wù)器的主機(jī)名。

4)SHELL

用戶當(dāng)前使用的Shell解析器。

5)HISTSIZE

保存歷史命令的數(shù)目。

6)USER

當(dāng)前登錄用戶的用戶名。

7)HOME

當(dāng)前登錄用戶的主目錄。

8)PWD

當(dāng)前工作目錄。

9)LD_LIBRARY_PATH

C/C++語言動(dòng)態(tài)鏈接庫文件搜索的目錄,它不是Linux缺省的環(huán)境變量,但對C/C++程序員來說非常重要,具體用法本文后面的章節(jié)中有詳細(xì)的介紹。

10)CLASSPATH

JAVA語言庫文件搜索的目錄,它也不是Linux缺省的環(huán)境變量,但對JAVA程序員來說非常重要,具體用法本文后面的章節(jié)中有詳細(xì)的介紹。

三、設(shè)置環(huán)境量

變量名='值' export?變量名

export?變量名='值'

如果環(huán)境變量的值沒有空格等特殊符號,可以不用單引號包含。

示例:

export?ORACLE_HOME=/oracle/home export?ORACLE_BASE=/oracle/base export?ORACLE_SID=snorcl11g export?NLS_LANG='Simplified?Chinese_China.ZHS16GBK' export?PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:. export?LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:.

采用export設(shè)置的環(huán)境變量,在退出Shell后就會(huì)失效,下次登錄時(shí)需要重新設(shè)置。如果希望環(huán)境變量永久生效,需要在登錄腳本文件中配置。

1、系統(tǒng)環(huán)境變量

系統(tǒng)環(huán)境變量對全部的用戶生效,設(shè)置系統(tǒng)環(huán)境變量有三種方法。

1)在/etc/profile文件中設(shè)置。

用戶登錄時(shí)執(zhí)行/etc/profile文件中設(shè)置系統(tǒng)的環(huán)境變量。但是,Linux不建議在/etc/profile文件中設(shè)置系統(tǒng)環(huán)境變量。

2)在/etc/profile.d目錄中增加環(huán)境變量腳本文件,這是Linux推薦的方法。

/etc/profile在每次啟動(dòng)時(shí)會(huì)執(zhí)行 /etc/profile.d下全部的腳本文件。/etc/profile.d比/etc/profile好維護(hù),不想要什么變量直接刪除 /etc/profile.d下對應(yīng)的 shell 腳本即可。

/etc/profile.d目錄下有很多腳本文件,例如:

在以上示例中,/etc/profile.d目錄中的oracle.sh是Oracle數(shù)據(jù)庫的環(huán)境變量配置文件,內(nèi)容如下:

3)在/etc/bashrc文件中設(shè)置環(huán)境變量。

該文件配置的環(huán)境變量將會(huì)影響全部用戶使用的bash shell。但是,Linux也不建議在/etc/bashrc文件中設(shè)置系統(tǒng)環(huán)境變量。

2、用戶環(huán)境變量

用戶環(huán)境變量只對當(dāng)前用戶生效,設(shè)置用戶環(huán)境變量也有多種方法。

在用戶的主目錄,有幾個(gè)特別的文件,用ls是看不見的,用ls .bash_*可以看見。

1).bash_profile(推薦首選)

當(dāng)用戶登錄時(shí)執(zhí)行,每個(gè)用戶都可以使用該文件來配置專屬于自己的環(huán)境變量。

2).bashrc

當(dāng)用戶登錄時(shí)以及每次打開新的Shell時(shí)該文件都將被讀取,不推薦在里面配置用戶專用的環(huán)境變量,因?yàn)槊块_一個(gè)Shell,該文件都會(huì)被讀取一次,效率肯定受影響。

3).bash_logout

當(dāng)每次退出系統(tǒng)(退出bash shell)時(shí)執(zhí)行該文件。

4).bash_history

保存了當(dāng)前用戶使用過的歷史命令。

3、環(huán)境變量腳本文件的執(zhí)行順序

環(huán)境變量腳本文件的執(zhí)行順序如下:

/etc/profile->/etc/profile.d->/etc/bashrc->用戶的.bash_profile->用戶的.bashrc

同名的環(huán)境變量,如果在多個(gè)腳本中有配置,以最后執(zhí)行的腳本中的配置為準(zhǔn)。

還有一個(gè)問題需要注意,在/etc/profile中執(zhí)行了/etc/profile.d的腳本,代碼如下:

for?i?in?/etc/profile.d/*.sh?;?do ????if?[?-r?"$i"?];?then ????????if?[?"${-#*i}"?!=?"$-"?];?then ????????????.?"$i" ????????else ????????????.?"$i"?>/dev/null ????????fi ????fi done

所以,/etc/profile.d和/etc/profile的執(zhí)行順序還要看代碼怎么寫。

四、重要環(huán)境變量的詳解

1、PATH環(huán)境變量

可執(zhí)行程序的搜索目錄,可執(zhí)行程序包括Linux系統(tǒng)命令和用戶的應(yīng)用程序。如果可執(zhí)行程序的目錄不在PATH指定的目錄中,執(zhí)行時(shí)需要指定目錄。

1)PATH環(huán)境變量存放的是目錄列表,目錄之間用冒號:分隔,最后的圓點(diǎn).表示當(dāng)前目錄。

export PATH=目錄1:目錄2:目錄3:......目錄n:.

2)PATH缺省包含了Linux系統(tǒng)命令所在的目錄(/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin),如果不包含這些目錄,Linux的常用命令也無法執(zhí)行(要輸入絕對路徑才能執(zhí)行)。

示例:

3)在用戶的.bash_profile文件中,會(huì)對PATH進(jìn)行擴(kuò)充,如下:

export PATH=$PATH:$HOME/bin

4)如果PATH變量中沒有包含圓點(diǎn).,執(zhí)行當(dāng)前目錄下的程序需要加./或使用絕對路徑。

示例:

2、LANG環(huán)境變量

LANG環(huán)境變量存放的是Linux系統(tǒng)的語言、地區(qū)、字符集,它不需要系統(tǒng)管理員手工設(shè)置,/etc/profile會(huì)調(diào)用/etc/profile.d/lang.sh腳本完成對LANG的設(shè)置。

CentOS6.x?字符集配置文件在/etc/syscconfig/i18n文件中。

CentOS7.x?字符集配置文件在/etc/locale.conf文件中,內(nèi)容如下:

3、LD_LIBRARY_PATH環(huán)境變量

C/C++語言動(dòng)態(tài)鏈接庫文件搜索的目錄,它不是Linux缺省的環(huán)境變量,但對C/C++程序員來說非常重要。

LD_LIBRARY_PATH環(huán)境變量存放的也是目錄列表,目錄之間用冒號:分隔,最后的圓點(diǎn).表示當(dāng)前目錄,與PATH的格式相同。

export LD_LIBRARY_PATH=目錄1:目錄2:目錄3:......目錄n:.

4、CLASSPATH

JAVA語言庫文件搜索的目錄,它也不是Linux缺省的環(huán)境變量,但對JAVA程序員來說非常重要。

CLASSPATH環(huán)境變量存放的也是目錄列表,目錄之間用冒號:分隔,最后的圓點(diǎn).表示當(dāng)前目錄,與PATH的格式相同。

五、環(huán)境變量的生效

1)在Shell下,用export設(shè)置的環(huán)境變量對當(dāng)前Shell立即生效,Shell退出后失效。

2)在腳本文件中設(shè)置的環(huán)境變量不會(huì)立即生效,退出Shell后重新登錄時(shí)才生效,或者用source命令讓它立即生效,例如:

source /etc/profile

六、應(yīng)用經(jīng)驗(yàn)

雖然設(shè)置環(huán)境變量的方法有多種,但是建議系統(tǒng)環(huán)境變量建議在/etc/profile.d目錄中配置,用戶環(huán)境變量在用戶的.bash_profile中配置,不建議在其它腳本文件中配置環(huán)境變,會(huì)增加運(yùn)維的麻煩,容易出錯(cuò)。

七、版權(quán)聲明

C語言技術(shù)網(wǎng)原創(chuàng)文章,轉(zhuǎn)載請說明文章的來源、作者和原文的鏈接。

來源:C語言技術(shù)網(wǎng)(www.freecplus.net)

鏈接:https://www.dianjilingqu.com/608600.html


Linux Centos 設(shè)置環(huán)境變量的評論 (共 條)

分享到微博請遵守國家法律
稻城县| 德格县| 九龙城区| 慈利县| 敦化市| 同德县| 阿克陶县| 治多县| 西贡区| 东至县| 遵化市| 咸阳市| 新宾| 团风县| 阳信县| 平邑县| 邹城市| 邓州市| 松滋市| 南宫市| 红河县| 徐州市| 汉阴县| 霞浦县| 银川市| 方山县| 杭锦后旗| 庆元县| 延长县| 平江县| 小金县| 泽普县| 奉节县| 会理县| 东海县| 柳州市| 尉犁县| 井冈山市| 安宁市| 宜章县| 托克逊县|