注:本教程以Ubuntu16.04操作婶芭,請(qǐng)細(xì)看。如果看完還不明白着饥,聯(lián)系我犀农,我給你發(fā)紅包。
一宰掉、查看環(huán)境變量:
- 方法1:直接用$PATH命令:
wafa@ubuntu:~$ $PATH
bash: /home/king/bin:/home/king/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/go-gtk/gtk:/snap/bin:.:/usr/local/go/bin: No such file or directory
- 方法2:用export命令呵哨。如終端命令行輸入export后,結(jié)果中的PATH就是環(huán)境變量:
king@ubuntu:~$ export
declare -x CLUTTER_IM_MODULE="ibus"
declare -x COMPIZ_BIN_PATH="/usr/bin/"
declare -x COMPIZ_CONFIG_PROFILE="ubuntu"
declare -x DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-BQwiluABuc"
declare -x PATH="/home/wafa/bin:/home/wafa/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/go-gtk/gtk:/snap/bin:.:/usr/local/go/bin"
declare -x PWD="/home/wafa"
declare -x DEFAULTS_PATH="/usr/share/gconf/ubuntu.default.path"
...
- 方法3:使用env 命令打印所有的環(huán)境變量
wafa@ubuntu:~$ env
XDG_VTNR=7
LC_PAPER=en_US.UTF-8
LC_ADDRESS=en_US.UTF-8
XDG_SESSION_ID=c2
PATH=/home/wafa/bin:/home/wafa/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/go-gtk/gtk:/snap/bin:.:/usr/local/go/bin
- 方法4:用echo $PATH(同法一)
二轨奄、了解環(huán)境變量
???? 環(huán)境變量一般是指在操作系統(tǒng)中用來(lái)指定操作系統(tǒng)運(yùn)行環(huán)境的一些參數(shù)孟害。
???? 個(gè)人理解(比較通俗):你輸入命令時(shí),系統(tǒng)會(huì)自動(dòng)的去指定的路徑下去尋找你輸入的指令文件挪拟。因此挨务,配置好環(huán)境變量 后只要輸入程序的名稱(chēng),系統(tǒng)就會(huì)自動(dòng)搜索到你程序的位置舞丛,而不會(huì)再出現(xiàn)command not found這樣的問(wèn)題了耘子。
三、和環(huán)境變量有關(guān)的文件:
- /etc/profile —— 此文件為系統(tǒng)的每個(gè)用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時(shí),該文件被執(zhí)行.并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置球切;
- /etc/environment —— 在登錄時(shí)操作系統(tǒng)使用的第二個(gè)文件,系統(tǒng)在讀取你自己的profile前,設(shè)置環(huán)境文件的環(huán)境變量谷誓;
- /etc/bashrc —— 為每一個(gè)運(yùn)行bash shell的用戶執(zhí)行此文件.當(dāng)bash shell被打開(kāi)時(shí),該文件被讀取吨凑;
- /home/king/.profile —— 用戶king的shell信息捍歪,當(dāng)用戶登錄時(shí)户辱,該文件僅僅執(zhí)行一次,默認(rèn)情況下,它設(shè)置一些環(huán)境變量糙臼,執(zhí)行用戶的.bashrc文件庐镐;(注:king為當(dāng)然登錄的用戶,每個(gè)用戶都有自己的家目錄变逃,即在/home文件夾下必逆。)
- /home/king/.bashrc —— 用戶king的bash shell的bash信息,當(dāng)?shù)卿洉r(shí)以及每次打開(kāi)新的shell時(shí),該文件被讀取揽乱;
認(rèn)識(shí)以上5個(gè)文件之后名眉,我們?cè)O(shè)置環(huán)境變量的方法也就有了。
注:前3個(gè)針對(duì)所有的用戶凰棉,需要sudo權(quán)限設(shè)置损拢,后兩個(gè)針對(duì)當(dāng)前用戶。
四撒犀、環(huán)境變量的添加與刪除
請(qǐng)認(rèn)真閱讀以上步驟及5個(gè)文件福压,這樣后面就很好理解了。
1. 對(duì)所有用戶都生效:
1). 方法一:直接sudo權(quán)限編輯/etc/enviroment文件或舞,
/etc/environment文件荆姆,其內(nèi)容如下:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
注:作用域:全局的,永久性的嚷那。在環(huán)境變量PATH中添加你要添加的路徑即可胞枕,注意以“:”分隔分個(gè)路徑。
2). 方法二:修改/etc/profile文件魏宽。此文件不保存環(huán)境變量信息,但在登錄時(shí)决乎,系統(tǒng)會(huì)根據(jù)此文件內(nèi)容對(duì)環(huán)境變量進(jìn)行設(shè)置队询。
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:
export PATH=/usr/local/share:$PATH
注:$PATH指代添加your path前的環(huán)境變量。即在第一行的基礎(chǔ)上再另外添加的環(huán)境變量构诚。作用域:全局的蚌斩,永久性的。
3). 方法三:修改/etc/bashrc范嘱。這個(gè)文件同樣不是為了保存環(huán)境變量送膳,只是在使用bash shell時(shí)進(jìn)行設(shè)置而已,所以設(shè)置方法和二中一樣:
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:
export PATH=/usr/local/share:$PATH
注:作用域:全局的丑蛤,永久性的叠聋。
對(duì)于/etc/bashrc文件,修改的作用于用戶受裹,但對(duì)于~/.bashrc文件碌补,修改的僅僅作用于當(dāng)前用戶虏束。這種修改的作用也是永久性的。
2.僅對(duì)當(dāng)前用戶生效
1). 方法一:修改~/.profile文件厦章。本質(zhì)和修改/etc/profile一樣镇匀,但這種僅僅修改了當(dāng)前用戶自己的配置文件。作用域:當(dāng)前用戶袜啃,永久性的汗侵。
2). 方法二:修改~/.bashrc文件。本質(zhì)和修改/etc/bashrc一樣群发。不保存環(huán)境變量晰韵,只是在當(dāng)前用戶使用bash shell時(shí)進(jìn)行設(shè)置而已。作用域:當(dāng)前用戶也物,永久性的宫屠。設(shè)置同修改/etc/bashrc一樣。
3. 臨時(shí)生效
1). 方法一:在Terminal中使用shell命令
export PATH=$PATH:[your path1]:[your path2]:[...]
2). 方法一:在Terminal中使用shell命令
export PATH=[your path1]:[your path2]:[...]:$PATH
注:上面兩種方法是暫時(shí)的生效滑蚯。關(guān)閉終端設(shè)置也就失效了浪蹂。作用域:僅限于當(dāng)前終端,其他終端中這個(gè)設(shè)置不會(huì)啟作用告材。
五坤次、設(shè)置生效
輸入env命令查看所有環(huán)境變量。
輸入echo $PATH 命令查看PATH環(huán)境變量
這時(shí)我們就可以在PATH變量后看到相關(guān)的修改了斥赋。是否發(fā)現(xiàn)有的設(shè)置后設(shè)置并沒(méi)有及時(shí)生效缰猴??疤剑?
你猜的對(duì)滑绒,這樣就可以生效了:
法一:你需要考慮重啟或者注銷(xiāo)后重新登錄了(請(qǐng)思考:哪個(gè)需要重啟,哪個(gè)需要重新登錄隘膘?等我后續(xù)閑了再給你答案疑故。)
法二:使用source命令。在命令行輸入:
source [file name]
注:
1弯菊、[file name]為你修改的文件名字的路徑纵势,絕對(duì)路徑和相關(guān)路徑都可以。
2管钳、以上方法只需要一種即可钦铁,但要根據(jù)個(gè)人需要選擇適用的方法。
3才漆、使用export命令設(shè)置的環(huán)境變量是臨時(shí)性質(zhì)且局部的牛曹,因此只需要關(guān)閉這個(gè)Terminal就好了。
是不是沒(méi)有你想象的那么難栽烂?躏仇?恋脚?