Linux變量按照存在的周期去區(qū)分的話,分為兩類,即為:永久的和臨時的。
修改的方法分別如下:
1.永久的:需要修改配置文件,變量永久生效。常見的配置文件包括:
1)/etc/profile:對所有用戶生效;此文件為系統(tǒng)的每個用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時,該文件被執(zhí)行;并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置。
例如:編輯/etc/profile文件,添加CLASSPATH變量,
#vi/etc/profile
添加一行:
exportCLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
修改后需要執(zhí)行重新登錄才能生效,也可以執(zhí)行命令source/etc/profile來生效。
2)/etc/bashrc:對所有用戶生效;為每一個運行bashshell的用戶執(zhí)行此文件當(dāng)bashshell被打開時,該文件被讀取。
編輯方法如上,不再贅述。
3)~/.bash_profile:僅會對當(dāng)前用戶有效;每個用戶都可使用該文件輸入專用于自己使用的shell信息,當(dāng)用戶登錄時,該文件僅僅執(zhí)行一次。
例如:編輯guok用戶目錄(/home/guok)下的.bash_profile
$vi/home/guok/.bash.profile
添加如下內(nèi)容:
exportCLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
修改后需要執(zhí)行重新登錄才能生效,也可以執(zhí)行命令source/etc/profile來生效。
4)~/.bashrc:僅會對當(dāng)前用戶有效;該文件包含專用于你的bashshell的bash信息,當(dāng)?shù)卿洉r以及每次打開新的shell時,該文件被讀取編輯方法如上,不再贅述。
另外,~/.bashrc等中設(shè)定的變量(局部)只能繼承/etc/profile中的變量,他們是"父子"關(guān)系。
綜述,對上述文件修改,添加你需要的變量,在啟動一個shell(終端,terminal)時,你所定義的變量均會生效的。
2.臨時的:使用export命令聲明即可,變量只在當(dāng)前的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)境變量。