linux的環(huán)境變量
按變量的生存周期來劃分,Linux變量可分為兩類,它們的修改方法如下:
1.永久的:
需要修改配置文件,變量永久生效。
常見的配置文件包括:
1-1.
/etc/profile:
對所有用戶生效;此文件為系統(tǒng)的每個用戶設(shè)置環(huán)境信息,當用戶第一次登錄時,該文件被執(zhí)行;并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置
例如:編輯/etc/profile文件,添加CLASSPATH變量
# vi /etc/profile
添加一行:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
修改后需要執(zhí)行重新登錄才能生效,也可以執(zhí)行命令source /etc/profile來生效
1-2.
/etc/bashrc:對所有用戶生效;為每一個運行bash shell的用戶執(zhí)行此文件.當bash shell被打開時,該文件被讀取.
編輯方法如上,不再贅述
1-3.
~/.bash_profile:僅會對當前用戶有效;每個用戶都可使用該文件輸入專用于自己使用的shell信息,當用戶登錄時,該文件僅僅執(zhí)行一次
例如:編輯guok用戶目錄(/home/guok)下的.bash_profile
$ vi /home/guok/.bash.profile```
添加如下內(nèi)容:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib修改后需要執(zhí)行重新登錄才能生效,也可以執(zhí)行命令source /etc/profile```來生效
1-4.
~/.bashrc:僅會對當前用戶有效;該文件包含專用于你的bash shell的bash信息,當?shù)卿洉r以及每次打開新的shell時,該該文件被讀取
編輯方法如上,不再贅述
另外,~/.bashrc等中設(shè)定的變量(局部)只能繼承/etc/profile中的變量,他們是"父子"關(guān)系
綜述,對上述文件修改,添加你需要的變量,在啟動一個shell(終端,terminal)時,你所定義的變量均會生效的。
2.臨時的:
使用export命令聲明即可,變量只在當前的shell(BASH)或其子shell(BASH)下是有效的,在關(guān)閉shell后失效,再打開新shell時就沒有這個變量,需要使用的話還需要重新定義
在shell的命令行下直接使用
[export 變量名=變量值] 定義變量
環(huán)境變量的查看
(1)使用echo命令查看單個環(huán)境變量。例如:
echo $PATH
(2)使用env查看所有環(huán)境變量。例如:
env
(3)使用set查看所有本地定義的環(huán)境變量。例如:
set
另外,unset可以刪除指定的環(huán)境變量。
常用的環(huán)境變量
PATH決定了shell將到哪些目錄中尋找命令或程序
HOME當前用戶主目錄
HISTSIZE歷史記錄數(shù)
LOGNAME當前用戶的登錄名
HOSTNAME指主機的名稱
SHELL當前用戶Shell類型
LANGUGE語言相關(guān)的環(huán)境變量,多語言可以修改此環(huán)境變量
PS1基本提示符,對于root用戶是#,對于普通用戶是$