记一次PATH环境变量设置不生效的问题
问题:卸载原有版本jdk后,如下图在/etc/profile中配置新的环境变量且source /etc/profile 生效配置后,JAVA_HOME值都正确,但PATH变量值还是不对
echo $PATH环境变量的值如下图:还保留了之前jdk版本的路径/usr/java/jdk1.8.0_171/bin
($PATH的默认值应该是.:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/bin:/sbin),但楼主这却是停留在/usr/java/jdk1.8.0_171/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/share/apache-maven/bin:/root/bin;由此可见必有某处对PATH进行了设置,下面开始找问题咯~
1,检查.bash_profile是否对PATH值有设置
2,检查.bashrc是否对PATH值有设置
3,/etc/environment是否对PATH值有设置 楼主以上三个里面都没有对PATH值进行设置
4,核查/etc/profile文件中有没有设置错,楼主此处还是没有设置错,转5
5, 检查/etc/profile.d/ 这个目录下面有地方设置PATH环境变量没:转折来了
maven.sh文件很可疑,vim maven.sh
果不其然其中对PATH值进行了设置,修改为初始值(如下图)或者删掉该设置
resource /etc/profile.d/maven.sh 和/etc/profile
再次echo $PATH 或者export -p发现PATH变量就变正确了,以上问题就解决了
ps:画外音,当PATH命令没设置对的时候,可能会遇到除cd,source命令外很多系统命令不可用,此时加上指令存放的位置就能执行了~ 例如:/usr/bin/vim /etc/profile.d/maven.sh 按此方法将PATH设置正确后,问题就能解决啦~
最后:一般来说,比较友好的方式是不会直接设置在 /etc/profile 里面,可以设置在 /etc/profile.d 这个目录下,或者 .bashrc 和 .bash_profile这几个文件里面
以上~