• Linux环境变量


    一、基本概念

      环境变量的含义:程序(操作系统命令和应用程序)的执行都需要运行环境,这个环境是由多个环境变量组成的。
      按变量的周期划为永久变量和临时性变量2种:
      永久变量:通过修改配置文件,配置之后变量永久生效。
      临时性变量:使用命令如export等命令设置,设置之后马上生效。当关闭shell的时候失效(这种主要用于测试比较多)。
      按照影响范围分为用户变量和系统变量2种:
      用户变量(局部变量):修改的设置只对某个用户的路径或执行起作用;
      系统变量(全局变量):影响范围是整个系统;

    二、查看环境变量

    2.1、env命令

      在Shell下,用env命令查看当前用户全部的环境变量。
    在这里插入图片描述

    2.2、export命令

      export命令显示当前系统定义的所有环境变量
    在这里插入图片描述

    2.3、env|grep 环境变量名

      env|grep 环境变量名可以筛选包含的环境变量。
      例如查看环境变量名中包含PATH的环境变量。
      env|grep PATH
    在这里插入图片描述

    2.4、echo命令

      echo 环 境 变 量 名 : 查 看 特 定 的 环 境 变 量 的 值 。 注 意 , 符 号 环境变量名:查看特定的环境变量的值。注意,符号 不能缺少,这是语法规定。
      例如:输出当前的PATH环境变量的值
      echo $PATH
    在这里插入图片描述

    三、设置环境量

    3.1、用户环境变量

      用户环境变量只对当前用户生效,设置用户环境变量也有多种方法。在用户的主目录,有几个特别的文件,用ls是看不见的(可以用ll)。
      1).bash_profile(推荐首选)
      当用户登录时执行,每个用户都可以使用该文件来配置专属于自己的环境变量。
      2).bashrc
      当用户登录时以及每次打开新的Shell时该文件都将被读取,不推荐在里面配置用户专用的环境变量,因为每开一个Shell,该文件都会被读取一次,效率肯定受影响。
      3).bash_logout
      当每次退出系统(退出bash shell)时执行该文件。
      4).bash_history
      保存了当前用户使用过的历史命令。

    3.1.1、配置临时环境变量export命令

    export PATH
    
    • 1

      使用export命令直接修改PATH的值,配置gcc进入环境变量的方法:

    export PATH=/home/zhou/gcc/bin:$PATH
    #或者把PATH放在前面
    export PATH=$PATH:/home/zhou/gcc/bin
    
    • 1
    • 2
    • 3

      注意事项:
      生效时间:立即生效
      生效期限:当前终端有效,窗口关闭后无效
      生效范围:仅对当前用户有效
      配置的环境变量中不要忘了加上原来的配置,即$PATH部分,避免覆盖原来配置

    3.1.2、配置用户环境变量.bashrc文件

      通过修改用户目录下的~/.bashrc文件进行配置:

    vim ~/.bashrc
    # 在最后一行加上
    export PATH=$PATH:/home/zhou/gcc/bin
    
    • 1
    • 2
    • 3

      注意事项:
      生效时间:使用相同的用户打开新的终端时生效,或者手动source ~/.bashrc生效
      生效期限:永久有效
      生效范围:仅对当前用户有效
      如果有后续的环境变量加载文件覆盖了PATH定义,则可能不生效

    3.1.3、配置用户环境变量.bash_profile文件

      和修改~/.bashrc文件类似,也是要在文件最后加上新的路径即可:

    vim ~/.bash_profile
    # 在最后一行加上
    export PATH=$PATH:/home/zhou/gcc/bin
    
    • 1
    • 2
    • 3

      注意事项:
      生效时间:使用相同的用户打开新的终端时生效,或者手动source ~/.bash_profile生效
      生效期限:永久有效
      生效范围:仅对当前用户有效
      如果没有/.bash_profile文件,则可以编辑/.profile文件或者新建一个

    3.2、系统环境变量

      系统环境变量对全部的用户生效,设置系统环境变量有三种方法

    3.2.1、配置系统环境变量/etc/bashrc文件

    vim /etc/bashrc
    
    • 1

      该方法是修改系统配置,需要管理员权限(如root)或者对该文件的写入权限:

    # 如果/etc/bashrc文件不可编辑,需要修改为可编辑
    chmod -v u+w /etc/bashrc
     
    vim /etc/bashrc
    # 在最后一行加上
    export PATH=$PATH:/home/zhou/gcc/bin
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

      注意事项:
      生效时间:新开终端生效,或者手动source /etc/bashrc生效
      生效期限:永久有效
      生效范围:对所有用户有效

    3.2.2、配置系统环境变量/etc/profile文件

    vim /etc/profile
    
    • 1

      该方法修改系统配置,需要管理员权限或者对该文件的写入权限,和vim /etc/bashrc类似:

    # 如果/etc/profile文件不可编辑,需要修改为可编辑
    chmod -v u+w /etc/profile
     
    vim /etc/profile
     
    # 在最后一行加上
    export PATH=$PATH:/home/zhou/gcc/bin
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3.2.3、配置系统环境变量 在/etc/profile.d目录中增加环境变量脚本文件

      /etc/profile在每次启动时会执行 /etc/profile.d下全部的脚本文件。/etc/profile.d比/etc/profile好维护,不想要什么变量直接删除 /etc/profile.d下对应的 shell 脚本即可。
      /etc/profile.d目录下有很多脚本文件,例如:
    在这里插入图片描述

  • 相关阅读:
    Tetrate万凯:SkyWalking MAL的监控虚拟机和Kubernetes实践
    【面试系列】Ruby 高频面试题
    SpringBoot3集成PostgreSQL
    最小生成树Boruvka算法
    WinForm,可能是Windows上手最快的图形框架了
    Abp vNext 模块加载机制
    【算法优选】 二分查找专题——壹
    【技术分享】Ubuntu20.04 LTS安装RTX-3060显卡驱动
    java毕业设计巢院小区疫情管控系统Mybatis+系统+数据库+调试部署
    手把手教你搭建 Ceph+JuiceFS
  • 原文地址:https://blog.csdn.net/xxxx123041/article/details/125368462