问题还原: 咱们都知道,要修改centos的全局配置,能够在/etc/profile这个文件里面修改,好比,我须要修改JAVA_HOME变量 ,那么通常来讲咱们只要在其中修改,source 一下就好了。linux
可是我此次遇到的状况是:查看 /etc/profile里,JAVA_HOME的路径,与我修改的新的路径是一致的,centos
使用$JAVA_HOME 查看,以下图:bash
可是问题来了,过了一下子,又跳到了另一个类似但不一样的目录:服务器
通过排查,发现问题出如今:./bashrc 这个文件里,blog
.bashrc:这个文件主要保存我的的一些个性化设置,如命令别名、路径等。也即在同一个服务器上,只对某个用户的个性化设置相关。变量
通常会在.bash_profile文件中显式调用.bashrc。登录linux启动bash时首先会去读取~/.bash_profile文件,这样~/.bashrc也就获得执行了,你的个性化设置也就生效。配置
个人理解是这样的: 你在bashrc里面定义优先级应该是高于 profile里面的内容的,因此若是两个文件profile和bashrc里面对同一个 设置、路径进行了定义,那么系统则会优先选择bashrc的内容。file
因此,针对我遇到的这个JAVA_HOME路径问题,我采起的解决方法是:直接bashrc里面的定义。方法
固然你也能够留下bashrc里面的定义,删掉profile的定义。im