一、临时生效
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命令将其声明成一个环境变量