Linux 如何设置环境变量
仅在本shell中使用
使用命令行输入:export PATH=$PATH:/usr/local/go/bin
永久保存环境变量
在相应的配置文件中加入:export PATH=$PATH:/usr/local/go/bin
然后使用命令source 相应的配置文件
或者重新登录。
shell调用配置文件的流程
login shell 配置文件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
实线的方向是主线流程,虚线的方向是被呼出的配置文件!
non-login shell配置文件
首先被读取的配置文件是~/.bashrc
然后会呼出/etc/bash.bashrc
(肯能不同linux版本下的名字稍有不同)。
各个配置文件的不同
~/.bash_profile: 用来设置一些环境变量,功能和/etc/profile 类似,但是这个是针对用户来设定的,也就是说,你
~/.bashrc: 作用类似于/etc/bashrc, 只是针对用户自己而言,不对其他用户生效。
另外/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
~/.bash_profile 是交互式、login 方式进入 bash 运行的,意思是只有用户登录时才会生效。
~/.bashrc 是交互式 non-login 方式进入 bash 运行的,用户不一定登录,只要以该用户身份运行命令行就会读取该文件。
对系统下所有用户修改
由上面的配置流程可知,对所有用户修改,可以在/etc/profile,/etc/bash.bashrc中修改分别对应了login shell和non-login shell。
在/etc/profile中修改后需要重新登录才能配置成功,使用source命令也只在当前的shell中有效
对单用户修改
由上面的配置流程可知,对单用户修改,可以在/.bash_profile|/.bash_login|~/.profile 和 ~/.bashrc中修改,问题如上。