关于PATH的作用:
PATH说简单点就是一个字符串变量,当输入命令的时候LINUX会去查找PATH里面记录的路径。比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls这个命令根本不在这个两个目录下,事实上当你输入命令的时候LINUX会去/bin,/usr/bin,/sbin等目录下面去找你此时输入的命令,而PATH的值恰恰就是/bin:/sbin:/usr/bin:……。其中的冒号使目录与目录之间隔开。

关于新增自定义路径:
现在假设你新安装了一个命令在/usr/locar/new/bin下面,而你又想像ls一样在任何地方都使用这个命令,你就需要修改环境变量PATH了,准确的说就是给PATH增加一个值/usr/locar/new/bin。你只需要一行bash命令export PATH=$PATH:/usr/locar/new/bin。这条命令的意思太清楚不过了,使PATH自增:/usr/locar/new/bin,既PATH=PATH+":/usr/locar/new/bin";通常的做法是把这行bash命令写到/root/.bashrc的末尾,然后当你重新登陆LINUX的时候(应该是linux启动时就会执行这个文件),新的默认路径就添加进去了。当然这里你直接用source /root/.bashrc执行这个文件重新登陆了。你可以用echo $PATH命令查看PATH的值。

关于删除自定义路径:
当某天你发现你新增的路径/usr/locar/new/bin已经没用了的话,你可以修改/root/.bashrc文件里面你新增的路径。或者你可以修改/etc/profile文件删除你不需要的路径.

一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量。例如我的mips-linux-gcc编译器在“/opt/au1200_rm/build_tools/bin”目录下,build_tools就是我的编译工具,则有如下三种方法来设置环境变量:
--------------------------------------------
临时环境变量(重启后消失)
-----------------------------------------------------
1、直接用export命令:
#export PATH=$PATH:/opt/au1200_rm/build_tools/bin
查看是否已经设好,可用命令export查看:
[root@localhost bin]# export

Console终端输出很多环境变量的值,限于篇幅就不再copy展示了,请谅解。

永久环境变量
--------------------------------------------------------
2、修改profile文件:
 所有用户(不安全)
 修 改/etc/profile(对所有用户都是有效的)
#vi /etc/profile
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

3. 修改.bashrc文件:
# vi /~/.bashrc
 (单独用户)
 修改~/.bashrc文件。 htt(74)p://www.icwin.net/bbs http://www.wantso.com (每个用户目录下都有,ls -all)
 cd ~
 vi .bashrc
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

后两种方法一般需要重新注销系统才能生效,最后可以通过echo命令测试一下:
# echo $PATH
看看输出里面是不是已经有了/my_new_path这个路径了。

-----------------------------------------------------------------------------------------------------------------------

“/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路径已经在系统环境变量中了,如果可执行文件在这几个标准位置,在终端命令行输入该软件可执行文件的文件名和参数(若需参数),回车即可。

  如果不在标准位置,文件名前面需要加上完整的路径。不过每次都这样跑就太麻烦了,一个“一劳永逸”的办法是把这个路径加入环境变量。命令 “PATH=$PATH:路径”可以把这个路径加入环境变量,但是退出这个命令行就失效了。要想永久生效,需要把这行添加到环境变量文件里。有两个文件可选:“/etc/profile”和用户主目录下的“.bash_profile”,“/etc/profile”对系统里所有用户都有效,用户主目录下的“.bash_profile”只对这个用户有效。

  “PATH=$PATH:路径1:路径2:...:路径n”,意思是可执行文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。那个“$PATH”表示原先设定的路径仍然有效,注意不要漏掉。某些软件可能还有“PATH”以外类型的环境变量需要添加,但方法与此相同,并且也需要注意“$”。

  注意,与DOS/Window不同,UNIX类系统环境变量中路径名用冒号分隔,不是分号。另外,软件越装越多,环境变量越添越多,为了避免造成混乱,建议所有语句都添加在文件结尾,按软件的安装顺序添加。

  格式如下():

  # 软件名-版本号

  PATH=$PATH:路径1:路径2:...:路径n

  其他环境变量=$其他环境变量:...

  在“profile”和“.bash_profile”中,“#”是注释符号,写在这里除了视觉分隔外没有任何效果。

  设置完毕,注销并重新登录,设置就生效了。如果不注销,直接在shell里执行这些语句,也能生效,但是作用范围只限于执行了这些语句的shell。

  相关的环境变量生效后,就不必老跑到软件的可执行文件目录。

引文链接:

1、linux中PATH环境变量的作用和使用方法

2、Linux系统修改PATH环境变量方法

Linux中PATH环境变量的作用和使用方法的更多相关文章

  1. Linux PATH环境变量及作用(初学者必读)

    Linux PATH环境变量及作用(初学者必读) < 什么是环境变量,Linux环境变量有哪些?Linux打包(归档)和压缩 > <Linux就该这么学>是一本基于最新Linu ...

  2. Linux有问必答:如何在Linux中修改环境变量PATH

    提问: 当我试着运行一个程序时,它提示“command not found”. 但这个程序就在/usr/local/bin下.我该如何添加/usr/local/bin到我的PATH变量下,这样我就可以 ...

  3. LINUX修改path环境变量

    PATH用作运行某个命令的时候,本地查找不到某个命令或文件,会到这个声明的目录中去查找. 例如一般设定java的时候为了在任何目录下都可以运行bin文件夹下的命令.就将java的bin目录声明到pat ...

  4. MySQL基础之 path环境变量的作用 (科普)

    在谈mysql配置环境变量之前,先谈一下windows环境变量的作用,有时候在windows cmd窗口运行命令时,经常会出现“XXX不是内部或外部命令的提示” 原因是系统没有找到执行相应命令的文件( ...

  5. linux 下PATH环境变量

    环境变量简介 什么是环境变量呢?简要的说,就是指定一个目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件. 在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现&quo ...

  6. Windows系统中path环境变量详解

    在学习JAVA的过程中,涉及到多个环境变量(environment variable)的概念,如PATH.正确地配置这些环境变量,是能够顺利学习.开发的前提.而经常出现的问题是:有的学习者能够按照提示 ...

  7. linux中添加环境变量(python为例)

    最近想用Django搭建个人博客,之前学了些python基础语法,准备边学习Django边实战操作.自己有一个阿里云服务器,用的centOS,自带的是python2.7版本,我直接安装了python3 ...

  8. Linux中的环境变量PATH

    一.介绍 在讲环境变量之前,先介绍一下命令which,它用于查找某个命令的绝对路径,示例如下: 在上面的示例中,用which查到rm命令的绝对路径为/usr/bin/rm. 那么问题来了:为什么我们使 ...

  9. linux之PATH环境变量

    在linux中,我们发现一些命令在任何目录都能执行,并不会出现找不到这个命令文件的提示,这其中就是PATH变量帮我们定位的!首先我们来查看一下PATH变量 [root@localhost /]# ec ...

随机推荐

  1. 获取java根目录,加载根目录下的文件

    就两句代码 String filepath = System.getProperty("user.dir")+"/a.xlsx"; File file=new ...

  2. MongoDB 更改数据库位置

    MongoDB在Windows中默认的数据库目录是 C:\data.如果在没有该目录的情况下,执行命令mongod,则会报如下错误: 如果我们不想把mongoDB的数据库放在C盘,可以使用如下两种方法 ...

  3. JavaScript : Array assignment creates reference not copy

    JavaScript : Array assignment creates reference not copy 29 May 2015 Consider we have an array var a ...

  4. 八、angularjs 中 filter在controller中的使用--避免多次遍历

    filter在html页面的使用司空见惯,比如: filter在controller中使用可以避免多次使用angular.foreach,来进行遍历.例如: 如果使用filter,则会让代码简洁而且明 ...

  5. Selenium对浏览器的支持

    1.火狐浏览器 优点:FireFox Dirver对页面的自动化测试支持得比较好,很直观地模拟页面的操作,对JavaScript的支持也非常完善,基本上页面上做的所有操作FireFox Driver都 ...

  6. python中的特殊数据类型

    一.python中的特殊数据类型 对于python,一切事物都是对象,对象基于类创建.像是“wangming”,38,[11,12,22]均可以视为对象,并且是根据不同的类生成的对象. 参照:http ...

  7. 【 PostgreSQL】十条实用数据库SQL优化建议

    基于PostgreSQL,总结几条常用的查询操作的优化建议,部分也适用于Oracle等数据库. 1.选择合适的分布键 分布键选择不当会导致重分布.数据分布不均等,而数据分布不均会使SQL集中在一个se ...

  8. 用CALayer实现下载进度条控件

    用CALayer实现下载进度条 效果: 源码: // // ViewController.m // ProgressView // // Created by YouXianMing on 14/11 ...

  9. Java代码实现对Azkaban的Flow进行设置定时

    代码如下: public class CurlToAzkaban{ public static void scheduleExecute(String flow, String cronExpress ...

  10. 计算机作业(Excel课程表) 物联网 王罗红