一、臨時生效
export PATH=$PATH:/root/.config/composer/vendor/bin
使用 export 設置的變量,只對當前終端 Shell 有效,也就是說如果新打開一個終端,那這個 export 設置的變量在新終端中是無法讀取到的。適合設置一些臨時變量。
二、通過修改配置文件
1、首先是設置全局環境變量,對所有用戶都會生效
1)/etc/profile
此文件爲系統的每個用戶設置環境信息。當用戶登錄時,該文件被執行一次,並從/etc/profile.d目錄的配置文件中搜集shell 的設置。一般用於設置所有用戶使用的全局變量。
2)/etc/bashrc
當 bash shell 被打開時,該文件被讀取。也就是說,每次新打開一個終端 shell,該文件就會被讀取。
2、對單個用戶生效
1)~/.bash_profile 或 ~/.profile
只對單個用戶生效,當用戶登錄時該文件僅執行一次。用戶可使用該文件添加自己使用的 shell 變量信息。另外在不同的LINUX操作系統下,這個文件可能是不同的,可能是 ~/.bash_profile, ~/.bash_login 或 ~/.profile 其中的一種或幾種,如果存在幾種的話,那麼執行的順序便是:~/.bash_profile、 ~/.bash_login、 ~/.profile。比如 Ubuntu 系統一般是 ~/.profile 文件。
2)~/.bashrc
只對單個用戶生效,當登錄以及每次打開新的 shell 時,該文件被讀取。
3)此外,修改 /etc/environment 這個文件也能實現環境變量的設置。
/etc/environment是設置整個系統的環境,而/etc/profile是設置所有用戶的環境,前者與登錄用戶無關,後者與登錄用戶有關。
注:系統是先執行/etc/environment,再執行/etc/profile
修改示例
以修改/etc/profile 爲例:
PATH="$PATH:/root/.config/composer/vendor/bin"
export PATH
修改後執行如下命令使其立即生效:
source /etc/profile
如果想多加個路徑yourpath1,在將“:yourpath1” 加載path後面,如:
PATH=”$PATH:/root/.config/composer/vendor/bin:yourpath1”
export作用說明:
- export用於聲明一個環境變量:
- export variable=value
- 該環境變量只在本進程和其子進程中可以訪問。
- 如果是在系統級的配置文件中,如/etc/profile中export 一個變量,那麼這個變量就會在整個系統運行期間都起作用。
- 如果在用戶級~/.bash_profile之類的文件中,則每次啓動shell都會去讀這個文件,所以每次打開shell也是可以取到這個值的。
- 如果在某一次運行中,手動export一個變量,則只在這次shell的使用中,才能訪問這個變量,或者在該shell啓動的其他程序中,也是可以訪問這個變量的,因爲它們是這個shell的子進程。
- PATH=xxx相當於定義一個變量PATH=XXX,而通過exprot命令將其聲明成一個環境變量