linux环境变量设置

Ubuntu环境变量的添加和删除

添加环境变量的位置

  • /etc/profile 该文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置。
  • /etc/environment 登录操作系统使用的第二个文件,系统在读取自己的profile之前,设置环境文件的环境变量
  • /etc/bashrc 为每一个运行bash shell的用户执行该文件。当bash shell被打开时,该文件被读取
  • ~/.profile 每个用户都可以使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次。默认情况下设置一些环境变量,执行用户的.bashrc文件
  • ~/.bashrc 该文件包含专用的bash shell的bash信息,当登录以及每次打开新的shell时,该文件被读取。

添加方法

  • 方法一:直接修改/etc/enviroment文件,这种方法的作用域是全局的,永久性的。
1
2
3
#打开/etc/environment文件,其内容如下:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
#在环境变量PATH中添加你要添加的路径即可。
  • 方法二:修改/etc/profile文件,这种方法的作用域是全局的,永久性的。
1
2
3
#这个文件不是保存环境变量信息的文件,在登录时,系统只是根据它的内容对环境变量进行设置。
export PATH=$PATH:[your path1]:[your path2]:[...]
export PATH=[your path1]:[your path2]:[...]:$PATH #其中,各个PATH之间用冒号分隔,$PATH指代添加your path前的环境变量。
  • 方法三:修改/etc/bashrc或者~/.bashrc文件,这两个文件不是为了保存环境变量,只是在使用bash shell时进行设置而已,所以设置方法和二中一样。对于/etc/bashrc文件,修改的作用于所有用户,但对于~/.bashrc文件,修改的仅仅作用于当前用户。这种修改的作用也是永久性的。

  • 方法四:修改~/.profile文件,作用仅限于当前用户,但同样也是永久性的。这种方法和修改/etc/profile本质上是一样的,这种之不过是仅仅修改了当前用户自己的配置文件。所以作用仅限于当前用户,但同样也是永久性的。

  • 方法五:在Terminal中使用shell命令,只在当前Terminal中起作用,关闭了当前Terminal就无效了。对其他Terminal也无效

显示环境变量

  • 显示所有环境变量
1
env #打印所有的环境变量
  • 显示指定环境变量
1
echo $PATH #打印PATH环境变量

让修改生效

使用source命令也可以让修改立即生效。使用方法为:

1
source [file name]  # file name 指的是上面修改过的文件的file name

删除对环境变量的修改

将以上方法中对配置文件的修改还原回去即可。另外,由于第五种方法由于是临时性质的且局部的,只需要关闭这个Terminal就好了。