zoukankan      html  css  js  c++  java
  • linux PATH环境变量

    $PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接

    shell下输出path值:

    echo $PATH:

    windows是%PATH%;

    PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>用分号分隔。

    需要一行bash命令:
    export PATH=$PATH:/usr/locar/new/bin
    这条命令的意思为: 使PATH自增:/usr/locar/new/bin,
    既PATH=PATH+":/usr/locar/new/bin";
     上述方法的PATH 在终端关闭 后就会消失。所以还是建议通过编辑/etc/profile来改PATH,也可以改家目录下的.bashrc(即:~/.bashrc)。
     
     
    通常的做法是:
    把这行bash命令写到/root/.bashrc的末尾,
    然后当你重新登陆LINUX的时候(应该是linux启动时就会执行这个文件),
    新的默认路径就添加进去了。
    当然,
    也可以直接用命令:
    source /root/.bashrc
    执行这个文件重新登陆了。

    linux中/etc/profile 与/etc/environment文件的区别?

    本文转载:http://andy136566.iteye.com/blog/1025338

    先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文。将/etc/profile 中的export LANG=zh_CN删除,将LNAG=zh_CN加入/etc/environment,退出系统重新登录,登录提示显示中文。用户环境建立的过程中总是先执行/etc/profile然后在读取/etc/environment。为什么会有如上所叙的不同呢?


            应该是先执行/etc/environment,后执行/etc/profile。
            /etc/environment是设置整个系统的环境,而/etc/profile是设置所有用户的环境,前者与登录用户无关,后者与登录用户有关。
           系统应用程序的执行与用户环境可以是无关的,但与系统环境是相关的,所以当你登录时,你看到的提示信息,象日期、时间信息的显示格式与系统环境的LANG是相关的,缺省LANG=en_US,如果系统环境LANG=zh_CN,则提示信息是中文的,否则是英文的。


           对于用户的SHELL初始化而言是先执行/etc/profile,再读取文件/etc/environment.对整个系统而言是先执行/etc/environment。这样理解正确吗?
           /etc/enviroment --> /etc/profile --> $HOME/.profile   -->$HOME/.env (如果存在)


           /etc/profile 是所有用户的环境变量
           /etc/enviroment是系统的环境变量
           登陆系统时shell读取的顺序应该是 
                 /etc/profile ->/etc/enviroment -->$HOME/.profile   -->$HOME/.env
           原因应该是jtw所说的用户环境和系统环境的区别了
    (unbutnu下.profile默认内容为:

    root@iZ23onhpqvwZ:~# cat .profile
    # ~/.profile: executed by Bourne-compatible login shells.

    if [ "$BASH" ]; then
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi
    fi

    mesg n


           如果同一个变量在用户环境(/etc/profile)和系统环境(/etc/environment)有不同的值那应该是以用户环境为准了。


    (1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
    (2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
    (3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
    (4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
    (5) ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。
    (6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

    工作环境设置文件
    环境设置文件有两种:系统环境设置文件 和 个人环境设置文件
     
    1.系统中的用户工作环境设置文件
      登录环境设置文件:/etc/profile     
      非登录环境设置文件:/etc/bashrc
     
    2.用户个人设置的环境设置文件:
      登录环境设置文件: $HOME/.bash_profile   //这个是环境变量设置的地方
      非登录环境设置文件:$HOME/.bashrc       //这个是定义别名的地方
     
    登录环境:指用户登录系统后的工作环境
    非登录环境:指用户再调用子shell时所使用的用户环境
     

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

  • 相关阅读:

    k
    通过类名调用类方法
    类Area的getArea方法是一个重载方法
    构造cry
    两个lader对象共享bottom
    向一个方法的基本数据类型参数传值
    Circle
    常量的用法
    显示本机时间
  • 原文地址:https://www.cnblogs.com/youxin/p/4019681.html
Copyright © 2011-2022 走看看