欢迎光临
一个有态度、有温度的分享型博客

Linux中设置环境变量的方法和区别

在Linux中设置环境变量的方法大体分为三种,一种是在shell脚本中使用export命令实现,其他两种是通过修改bashrc和profile文件实现(不同Linux操作系统中这两种文件的区别参见这里),下面就通过CentOs操作系统为例,对这三种方式的具体配置方法及区别进行说明。

首先,明确一下CentOs中的跟环境变量有关的配置文件:

/etc/profile
/etc/bashrc

~/.bashrc
~/.bash_profile

接下来,再说具体配置方式。

1.通过Shell命令export修改Linux环境变量

使用shell命令export方式设置环境变量的示例如下:

export PATH=$PATH:/usr/local/hadoop/bin

需要注意的是:

使用 export 设置的变量,只对当前终端 Shell 有效,也就是说如果新打开一个终端,那这个 export 设置的变量在新终端中使无法读取到的。适合设置一些临时变量。

2.通过~/.bashrc或~/.bash_profile修改Linux环境变量

1) 修改~/.bash_profile

这种方式,只对单个用户生效,当用户登录时该文件仅执行一次,用户可使用该文件添加自己使用的 shell 变量信息。

此外,在不同的操作系统中,这个文件可能是不同的,可能是 ~/.bash_profile、 ~/.bash_login 、 ~/.profile中的一种,甚至是几种。比如在Ubuntu系统中,一般是~/.profile文件;如果存在多种的话,那么执行的顺序便是:~/.bash_profile、 ~/.bash_login、 ~/.profile。

2) 修改~/.bashrc

只对单个用户生效,当登录以及每次打开新的 shell 时,该文件被读取。

3.通过/etc/profile或/etc/bashrc修改Linux环境变量

1) 修改etc/profile

此文件为系统的每个用户设置环境信息。当用户登录时,该文件被执行一次,并从 /etc/profile.d 目录的配置文件中搜集shell 的设置。一般用于设置所有用户使用的全局变量。

2) 修改/etc/bashrc

当 bash shell 被打开时,该文件被读取。也就是说,每次新打开一个终端 shell,该文件就会被读取。

此外,在不同的操作系统中,这个文件可能是不同的,比如在Ubuntu系统中,一般是:/etc/bash.bashrc。

4.补充

修改 /etc/environment 这个文件也能实现环境变量的设置。/etc/environment 设置的也是全局变量,从文件本身的作用上来说, /etc/environment 设置的是整个系统的环境,而/etc/profile是设置所有用户的环境。

参考文章:

  1. http://www.powerxing.com/linux-environment-variable/ ;
  2. http://www.cnblogs.com/amboyna/archive/2008/03/08/1096024.html ;

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址