用Export指令可以設定環境變量,但是如果每回進入系統之後都要重新設定一遍環境變數就很煩人。 Linux提供了給大家自動設定環境變數的方法,那就是更改.bashrc 檔案。 一般說來,有兩個檔案可以提供這種「進入系統時自動設定」的功能,一個是/etc/bashrc,另一個是~/.bashrc。其中/etc/bashrc是由每個使用者執行的,而~/.bashrc只被目前使用者執行。所以/etc/bashrc只有root用戶能更改,而~/.bashrc是各個用戶私有的檔案。 "~"指的是使用者的home目錄。
在建立使用者時,Linux會為其指派一個目錄以供該使用者使用。例如對"hjk41",該目錄就是"/home/hjk41"。一般使用者只能更改這個目錄裡的文件,這樣各個使用者之間不會互相干擾。因而~/.bashrc檔案在這裡就是"/home/hjk41/.bashrc",如果有另外一名叫"hjk42"的用戶,那麼他的.bashrc檔案就是"/home/hjk42/.bashrc"。
這樣,各個使用者有自己獨立的".bashrc"文件,可以根據需要自行更改,而不會互相干擾。 /etc/bashrc檔案則是共用的,整個Linux中只有一份。一般來說,用戶的"~/.bashrc"開頭都會呼叫/etc/bashrc,因此更改/etc/bashrc會影響所有用戶,這個檔案一般是root用戶管理的。
總之,Linux在使用者登入時,會執行對應的.bashrc文件,例如我登入時,就會執行/home/hjk41/.bashrc ,而這個檔案先呼叫/etc/bashrc。下面是一個簡單的.bashrc:if [ -f /etc/bashrc ]; then . /etc/bashrc fi export PATH=$PATH:/home/hjk41/bin 前面三行的意思是「如果這個文件存在,那麼就執行它”,最後一行是我自己加的,用於修改PATH變數。這樣每次登入時,環境變數PATH都會自動修改成我需要的樣子。 "env" 列出所有環境變數"source ~/.bashrc" 在變更.bashrc檔案後,執行條指令可以使變更立即生效(否則要等到下次登入才能看到效果)。