ubuntu环境变量设置(转)

来源:互联网 发布:千兆有线端口什么意思 编辑:程序博客网 时间:2024/06/04 01:27

1)etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.

并从/etc/profile.d目录的配置文件中搜集shell的设置.
注:在这里我们设定是为所有用户可使用的全局变量。

2)/etc/bashrc:
为每一个运行bash shell的用户执行此文件.bashshell被打开时,该文件被读取.

3)~/.bash_profile:
每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
注:~LINUX下面是代表HOME这个变量的。
另外在不同的LINUX操作系统下,这个文件可能是不同的,可能是~/.bash_profile ~/.bash_login ~/.profile其中的一种或几种,如果存在几种的话,那么执行的顺序便是:~/.bash_profile ~/.bash_login ~/.profile。比如我用的是Ubuntu,我的用户文件夹下默认的就只有~/.profile文件。


4)~/.bashrc:
该文件包含专用于你的bash shellbash信息,当登录时以及每次打开新的shell,该文件被读取.
(
注:这个文件是 .开头的,所以在文件夹中被隐藏了)
那么我们如何添加自己定义的环境变量呢?
用记事本打开这个文件,然后在里面最后写上:
export xiaokang=xiaokang


然后保存,这样每次打开一个新的terminal的时候,我们这个变量就生效了。记住,如果你已经打开一个terminal,然后你修改了这个文件,那么在这个terminal下是不会生效的。一般情况用户最好在这里进行修改,但是有时候会覆盖父级的变量,比如PATHROOT设定的,但是如果你在这个文件里面写了PATH=xx,那么将来所有的PATH都成了xx了,所以我们应该在这个文件中写为:  
PATH
$PATH:xx
这样就把原来的和你自己的一起加上了。而且注意在LINUX系统下用:分割表示并列,而不是windo的;



我再补充一些测试:

比如往~/.bashrc最后添加环境变量jat:

 

nano ~/.bashrc(不要忘了bashrc前面的点,如果忘了名字,只需记住带有bash字样,ls -al ~ | grep bash查找即可)

 

# this, if it'salready enabled in /etc/bash.bashrc and /etc/profile

# sources/etc/bash.bashrc).

if [ -f/etc/bash_completion ] && ! shopt -oq posix; then

   . /etc/bash_completion

fi

exportXMODIFIERS="@im=ibus"

export QT_IM_MODULE=ibus

我这里已经有设置过一些环境变量了,跟ibus相关的。

我在后面添加:

export jat=jat1

保存后,另开一个shell验证(因为这个文件是在新开shell时读取的,对于当前shell并不生效)

验证方法有三种:

1,执行echo $jat

2,执行export | grep -i jat

可以看到有一行:

declare -xjat="jat1"

3,或者也可以通过env | grep -i jat查看,结果是一样的。

 

 

如果要使用临时的环境变量,那么在当前shell使用export key=value就可以了,关闭shell之后这些变量就不存在了。

 

需要注意的是,有时候系统变量在脚本中也不起作用,这时可能需要自己手动修改脚本,加上相应变量声明。

 

原创粉丝点击