zoukankan      html  css  js  c++  java
  • linux设置变量的三种方法

    1在/etc/profile文件中添加变量对所有用户生效(永久的)

    用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久生效”。

    例如:编辑/etc/profile文件,添加CLASSPATH变量

    # vi /etc/profile

    export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

    注1:profile文件在系统启动时将被运行。大家可以在里面加入其他命令,但是一定要加正确,不然的话系统会启动不起来的。

    2在用户目录下的.bash_profile文件中增加变量对单一用户生效(永久的)

    用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。

    例如:编辑guok用户目录(/home/guok)下的.bash_profile

    # vi /home/guok/.bash.profile

    添加如下内容:

    export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

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

    注3:变量重复定义时,以后面的设置为先。

      例如:在peofile文件默认对PATH变量都有设置PATH=¥¥¥¥¥¥¥,在以后可能在对PATH设置,一般都加在profile文件的最后PATH=······(打个比方)。而系统之中认定的PATH=·······¥¥¥¥¥¥¥¥¥,也就是说相同名字的环境变量,后写入的先起作用(通俗地讲)。

    注4、特殊字符介绍。

      例如在profile中有如下内容,通过以下内容说明特殊符号的用法。

      export A=/q/jing:aaa/cc/ld

      export B=.:/liheng/wang export A=/cd/cdr:$A

      : 表示并列含义,例如A变量值有多个,用:符号进行分离。

      . 表示你操作的当前目录。例如pap命令会查找B环境变量。

    在/home键入B命令,系统首先在/home目录下(即当前路径)查找关于 B 的内容,如果没有在/liheng/wang目录下查找关于B的内容。 $ 表示该变量本次定义之前的值,例如$A代表/q/jing:aaa/cc/ld。也就是说 A=/cd/cdr:/q/jing:aaa/cc/ld

    注5、常见的环境变量

    PATH:决定了shell将到哪些目录中寻找命令或程序

      HOME:当前用户主目录

        MAIL:是指当前用户的邮件存放目录。

        SHELL:是指当前用户用的是哪种Shell。

      HISTSIZE:是指保存历史命令记录的条数。

      LOGNAME:是指当前用户的登录名。

    HOSTNAME:是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。

      LANG/LANGUGE:是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。

      PS1:是基本提示符,对于root用户是#,对于普通用户是$。

      PS2:是附属提示符,默认是“>”。可以通过修改此环境变量来修改当前的命令符,比如下列命令会将提示符修改成字符串“Hello,My NewPrompt :) ”。

      # PS1=" Hello,My NewPrompt :) "

    3直接运行export命令定义变量【只对当前shell(BASH)有效(临时的)】

    在shell的命令行下直接使用[export变量名=变量值]定义变量,该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。

     

  • 相关阅读:
    畅通工程(hdu1232)并查集
    qsort函数的用法
    二叉搜索树(hdu3791)
    Binary Tree Traversals(HDU1710)二叉树的简单应用
    Safe Or Unsafe(hdu2527)哈弗曼VS优先队列
    山东省第四届acm解题报告(部分)
    Points on Cycle (hdu1700,几何)
    A计划 hdu2102(bfs一般题)
    杀人游戏(hdu2211)插入法
    hdu1518 Square(dfs)
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11109258.html
Copyright © 2011-2022 走看看