linux环境变量配错怎么还原,linux下环境变量配错的解决

朋友在linux下配置环境变量的时候敲错了命令,导致新添加的环境变量覆盖了原先的环境变量,直接导致的结果就是Linux下大部分命令不可以使用,这个可吓坏了我的朋友,他从来没有遇到过这种问题,经过我的帮助和讲解,他发现这个问题并不可怕,现在已经解决,写篇博文贴出来,希望犯同样失误的人快速解决这个问题。

在linux中,按变量的生存周期来划分,Linux变量可分为两类,它们的修改方法如下:

(1)永久的:需要修改配置文件,变量永久生效。

常见的配置文件包括:

(1-1)/etc/profile:对所有用户生效;此文件为系统的每个用户设置环境信息,当用户第

一次登录时,该文件被执行;并从/etc/profile.d目录的配置文件中搜集shell的设置

例如:编辑/etc/profile文件,添加CLASSPATH变量

# vi /etc/profile

添加一行:

export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

修改后需要执行重新登录才能生效,也可以执行命令source /etc/profile来生效

(1-2)/etc/bashrc:对所有用户生效;为每一个运行bash shell的用户执行此文件.当bash

shell被打开时,该文件被读取。

编辑方法如上,不再赘述。

(1-3)~/.bash_profile:仅会对当前用户有效;每个用户都可使用该文件输入专用于自己

使用的shell信息,当用户登录时,该文件仅仅执行一次

例如:编辑guok用户目录(/home/guok)下的.bash_profile

$ vi /home/guok/.bash_profile

添加如下内容:

export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

修改后需要执行重新登录才能生效,也可以执行命令source /etc/profile来生效

(1-4)~/.bashrc:仅会对当前用户有效;该文件包含专用于你的bash shell的bash信息,当

登录时以及每次打开新的shell时,该该文件被读取.

编辑方法同上,不再赘述

另外,~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"

关系。

综述,对上述文件修改,添加你需要的变量,在启动一个shell(终端,terminal)时,你所

定义的变量均会生效的。

(2)临时的:使用export命令声明即可,变量只在当前的shell(BASH)或其子shell(BASH)下是有

效的,在关闭shell后失效,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。

定义方法:在shell的命令行下直接使用[export 变量名=变量值] 定义变量

问题现象:

c770c48bcc78ee74bce28c5dbf7d0d3e.png

解决办法:

直接解决方法:在命令行中输入export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin后Enter

8d9e5fcbf3099a6c709b63142e6dfe3f.png

这一句执行后,只是临时生效,需要把这句保存到/etc/profile里才能永久生效。

#source  /etc/profile

这时候所有的环境变量就恢复回来了,通过echo $PATH 可以查看。

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值