美文网首页
第6章 使用Linux环境变量

第6章 使用Linux环境变量

作者: daifee | 来源:发表于2017-05-05 15:58 被阅读0次

    [TOC]

    什么是环境变量

    为了方便管理系统,在shell会话过程定义了存储数据的变量。

    环境变量有两种:

    • 全局环境变量(所有shell可见)
    • 局部环境变量(只有创建的shell才可见)

    提醒:

    • 全局变量命名习惯全大写,局部变量名不全大写
    • 局部变量可以暴露到全局,用export命令
    • 无法用export修改已存在的全局变量

    设置环境变量

    定义局部变量语法

    # 等于号之间不能存在空格
    NAME="张家泳"
    age=23
    

    使用变量

    echo $NAME
    

    定义全局变量

    NAME="daifee"
    export NAME
    

    删除环境变量

    unset NAME
    

    默认环境变量

    • 系统设置的环境变量
    • shell程序设置的环境变量

    设置持久化环境变量

    bash shell启动时会执行几个启动文件。具体执行哪几个,由bash shell的启动方式决定。bash shell有3种启动方式:

    登录shell

    登录时启动的shell

    启动文件:

    1. /etc/profile 默认的主启动文件
    2. $HOME/.bash_profile
    3. $HOME/.bashrc 一般被其他启动文件引用
    4. $HOME/.bash_login
    5. $HOME/.profile

    启动文件2、4、5,按顺序查找,只执行第一个被查找到的。

    交互式shell进程

    登录后再在终端启动的shell

    只会执行$HOME/.bashrc启动文件

    非交互式shell进程

    系统执行shell script启动的shell

    执行BASH_ENV指定的启动文件,如果没有,则不执行启动文件(主要靠继承父shell获取变量数据)。

    环境变量持久化

    将环境变量定义在上面提到的文件中,最好是下面两个文件:

    • /etc/profile.d/文件名.sh 所有用户可用
    • $HOME/.bashrc 自己可用

    相关文章

      网友评论

          本文标题:第6章 使用Linux环境变量

          本文链接:https://www.haomeiwen.com/subject/jzmktxtx.html