zoukankan      html  css  js  c++  java
  • 环境变量之执行文件路径的变量PATH

    当我们执行一个命令时,系统会依据PATH的设置去PATH定义的每个目录下查寻该命令的可执行文件,如果在PATH定义的目录中含有多个文件名为我们要执行的命令的可执行文件时,那么先查询到的同名命令先被执行。

      #echo  $PATH    查看PATH定义了哪些目录

      PATH(一定是大写),这个变量的内容是由一堆目录所组成的,每个目录中间用冒号(:)隔开,每个目录是有顺序之分的。

      #PATH=$PATH:/root  将/root加入PATH当中

      不通身份用户默认的PATH不同,默认能够随意执行的命令也不同

      PATH是可以修改的

      使用绝对路径或相对路径直接指定某个命令的文件名来执行,会比查询PATH来的正确

      命令应该放到正确的目录下,执行才会比较方便

      本目录(.)最好不要放到PATH当中  

    以下内容转自:http://blog.sina.com.cn/s/blog_4b1e4fe90100pnpp.html

    比如要把/etc/apache/bin目录添加到PATH中,方法有三:

    1.#PATH=$PATH:/etc/apache/bin
           使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效

    2.#vi /etc/profile
           在适当位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等号两边不能有任何空格)这种方法最好,除非你手动强制修改PATH的值,否则将不会被改变

    3.#vi ~/.bash_profile
           修改PATH行,把/etc/apache/bin添加进去这种方法是针对用户起作用的

    注意:想改变PATH,必须重新登陆才能生效,以下方法可以简化工作:

    如果修改了/etc/profile,那么编辑结束后执行source profile 或 执行点命令 ./profile,PATH的值就会立即生效了。这个方法的原理就是再执行一次/etc/profile shell脚本,注意如果用sh /etc/profile是不行的,因为sh是在子shell进程中执行的,即使PATH改变了也不会反应到当前环境中,但是source是在当前 shell进程中执行的,所以我们能看到PATH的改变。

    一般情况下在用户工作目录下的bin目录会包含在PATH路径中,所以只要把用户自己写的shell脚本放在用户的bin目录下就可以了,不需要修改配置文件。

    关于/etc/profile和~/.bash_profile的介绍可参考http://www.cnblogs.com/nufangrensheng/p/3478393.html。

  • 相关阅读:
    CodeForces 722C 题解
    ubuntu自带神奇文本编辑器-gedit使用入门
    My new Blog on cnblogs
    kaldi语音识别技术
    BUAA-OO-第三单元作业-JML之图论
    C++面向对象编程思想
    软件工程-设计模式
    BUAA-OO-第二单元作业-电梯调度
    操作系统make命令与Makefile文件编写
    操作系统启动过程分析(Linux-OS启动优化)
  • 原文地址:https://www.cnblogs.com/nufangrensheng/p/3426949.html
Copyright © 2011-2022 走看看