您的位置:首页 > 运维架构 > Linux

Linux 下如何设置环境变量

2014-06-09 09:59 567 查看
假如你安装了一个软件,安装好后,输入命令时,提示“command not found”, 这涉及到环境变量的PATH问题。PATH设置是linux下定制环境变量的一个组成部分。

linux中每个用户都有一个专门的运行环境,这个环境就是一组环境变量的定义,用户可以对自己的运行环境进行定制。环境和Shell紧密相关,用户登录系统后就启动了一个Shell,一般是bash,bash有两个系统级配置文件,/etc/bashrc 和 /etc/profile。

1, echo 显示环境变量。

echo $HOME #环境变量一般是大写

2,export 设置一个环境变量

export MYNAME=cmiao #这个环境变量是暂时的,你推出shell后,就消失了。

3,修改一个环境变量

MYNAME=miaoc

4,显示所有环境变量

env

5,使用set命令显示所有本地定义的Shell变量。

set

6,使用unset来清楚环境变量

unset MYNAME

7, 通过修改环境变量定义文件来修改环境变量

在自己的家目录下,执行vi .bash_profile

例如编辑你的PATH声明,PATH=$PAEH:<PATH1>:<PATH2>:<PATH3>:<PATH4> 每个路径用:隔开,保存后关闭。

执行source .bash_profile

注意:假如你开了两个终端,你在一个终端上执行source .bash_profile, 在这个终端echo $PATH 可以生效,但是在别的终端并不会生效,你还要到那个终端上执行soruce ~/.bash_profile然后在这个终端上才会生效。

用echo $PATH来查看当前的搜索路径。只要你的命令在这个路径里面,就可以被搜索到了。

通过修改配置文件修改的变量是永久的,而用export声明的变量是暂时的,关闭shell后会失效。

修改/etc/profile , source /etc/profile 。对所有用户有效。

有个专门修改环境变量的文件,比修改/etc/profile方便很多.

vi /etc/profile.d/soft.sh

source /etc/profile.d/soft.sh

修改个人目录下的.bash_profile 仅对当前用户有效。

如果你安装了python的不同版本分别在不同目录,这两个目录都加入到了环境变量,当时执行python的时候,会执行优先搜到的那一个python。

如果老版本的先搜到,那要先将老版本的删掉。

有一次改了python的path, 执行source .bash_profile 后并没有生效,重启了putty才生效

查看python的环境变量,只有在变量里面的包才能够导入

[cmiao@melon ~]$ python
Python 2.7.6 (default, May 10 2015, 05:17:24)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/usr/local/lib/python2.7/site-packages/reportlab-3.1.44-py2.7-linux-x86_64.egg', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']

如何添加python环境变量:



这种方法只是暂时的,当你退出当前环境,刚才所添加的目录就没了

永久的方法:

修改自己的配置文件

vi ~/.bash_profile

PYTHONPATH=$PYTHONPATH:/share/workplace/software/python-packages/:/share/home/cmiao/forpythonpathtests

export PYTHONPATH

如果全局修改:

vi /etc/profile

export PYTHONPATH=$PYTHONPATH:/home/workspace/iaas/

source /etc/profile

这样所有用户的pythopath都将这个目录加进去了!

如果是集群,想应用到所有计算节点

用root的身份执行:

pscp /etc/profile blade:/etc/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: