linux 中用户级的环境变量设置

原创
2017/11/21 17:08
阅读数 1.4K

闲不多说直接上干货:

下图是我自己的服务器设置,就用java的环境变量为例子:

其中将设置生效需要用 :

方法1:
 . ~/.bashrc
方法2:
source ~/.bashrc
通过这两种方法不需要重新启动bash环境

注意:  在设置中,我碰到了设置用户环境变量并不生效的问题,这里要重点说明下:

            在设置中不要有冲突的配置,下列说明下linux配置文件的相关及作用;

profile和bashrc文件的区别

/与~的区别:

符号 ~ 在Linux中表示当前用户目录:

/是目录分隔符。 
~是一个代位符,表明的是个人目录的地址。

/是根节点, 
~是 home 
如果以root账号登陆 ~ 是 /root/ 
如果以普通用户登陆 ~ 是 /home/name/

/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc四个文件在环境变量中的区别与作用:

1、/etc/profile 用来设置系统环境(参)变(数)量,比如$PATH. 这里面的环境变量是对系统内所有用户生效的。

2、/etc/bashrc  这个文件设置系统-bash shell相关的,对系统内所有用户生效。只要用户运行bash命令,那么这里面的东西就在起作用。

3、~/.bash_profile: 用来设置一些环境变量,功能和/etc/profile 类似,但是这个是用户级别来设定的,也就是说,你在/home/{username}/.bash_profile 中设定了环境变量,那么这个环境变量只针对这个用户生效.

4、~/.bashrc: 作用类似于/etc/bashrc, 只是针对当前用户有效,不对其他用户生效。 

另外/etc/profile中设定的变量是全局的可以作用于任何用户,

而~/.bashrc等中设定的变量是局部只能继承/etc/profile中的变量,他们是"父子"关系。

~/.bash_profile 是交互式、login 方式进入 bash 运行的意思是只有用户登录时才会生效。

~/.bashrc 是交互式 non-login 方式进入 bash 运行的,用户不一定登录,只要以该用户身份运行命令行就会读取该文件。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部