• 技术文章 >运维 >linux运维

    linux中环境变量在哪个文件

    青灯夜游青灯夜游2022-06-10 19:02:00原创459

    linux中包含环境变量的配置文件有多个:1、“/etc/profile”文件,该文件配置的环境变量将应用于登录到系统的每一个用户;2、“/etc/bashrc”,修改该文件配置的环境变量将会影响所有用户使用的bash shell;3、“/etc/environment”,该文件包含与系统运行相关但与用户无关的环境变量;4、“~/.profile”;5、“~/.bashrc”。

    本教程操作环境:linux7.3系统、Dell G3电脑。

    一、环境变量介绍:

     在Linux系统中,环境变量按照其作用范围不同大致可以分为系统级环境变量和用户级环境变量。

      自然而然地,环境变量的配置文件也相应的被分成了系统级和用户级两种。

    二、系统级:

    1、/etc/profile

    在系统启动后第一个用户登录时运行,并从/etc/profile.d目录的配置文件中搜集shell的设置,使用该文件配置的环境变量将应用于登录到系统的每一个用户。

    提示:在Linux系统中,使用以下命令可以使配置文件立刻生效。

      source /etc/profile
      echo $PATH

    2、/etc/bashrc(Ubuntu和Debian中是/etc/bash.bashrc)

    在 bash shell 打开时运行,修改该文件配置的环境变量将会影响所有用户使用的bash shell。

    注意:这里的bash shell有不同的类别,不同的类别所使用的环境变量配置文件也有所不同。

    一般情况下,非登录shell不会执行任何profile文件,非交互shell模式不会执行任何bashrc文件。

    3、/etc/environment

    在系统启动时运行,用于配置与系统运行相关但与用户无关的环境变量,修改该文件配置的环境变量将影响全局。

    三、用户级:

    1、~/.profile(推荐首选)

    ~/.profile: executed by Bourne-compatible login shells.

    当用户登录时执行,每个用户都可以使用该文件来配置专属于自己使用的shell信息。

    2、~/.bashrc

    ~/.bashrc: executed by bash(1) for non-login shells.

    当用户登录时以及每次打开新的shell时该文件都将被读取,不推荐在这里配置用户专用的环境变量,因为每开一个shell,该文件都会被读取一次,效率肯定受影响。
    生效用:source
    bashrc和profile的差异
    从上面的英文描述可以知道,bashrc和profile的差异在于:

      注意:通常我们修改bashrc,有些linux的发行版本不一定有profile这个文件;

    3、~/.bash_profile 或 ~./bash_login

    ~/.bash_profile or ~./bash_login - If one of these file exist, bash executes it rather then "~/.profile"
    when it is started as a login shell. (Bash will prefer "~/.bash_profile" to "~/.bash_login").
    However, these files won't influence a graphical session by default.

    以上是ubuntu官网给出的关于~/.bash_profile 和 ~./bash_login 的说明,翻译为中文:
    ~/.bash_profile 或 ~./bash_login -
    如果有其中的一个文件存在的话, 当启动的是一个登录shell时,Bash 会执行该文件而不会执行~/.profile ;
    如果两个文件都存在的话,Bash 将会优先执行~/.bash_profile 而不是~/.bash_login ;
    然而, 默认情况下,这些文件不会影响图形会话。

    4、~/.bash_logout

    当每次退出系统(退出bash shell)时执行该文件。

    注意:Linux系统使用 $VARIABLE_NAME 访问环境变量,多个环境变量之间使用 “:”分隔,Windows系统使用 %VARIABLE_NAME% 访问环境变量,多个环境变量之间使用 ; 分隔。

    相关推荐:《Linux视频教程

    以上就是linux中环境变量在哪个文件的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    广告:Linux视频教程零基础入门到精通

    专题推荐:linux
    上一篇:linux netmask是什么 下一篇:linux创建文件失败的原因有哪些
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• Linux中自带emacs吗• 什么是嵌入式linux系统• linux怎么判断网络是百兆还是千兆• linux中的500错误是什么• linux挂起是什么意思• linux netmask是什么
    1/1

    PHP中文网