Linux环境变量文件介绍[通俗易懂]

Linux环境变量文件介绍[通俗易懂]在Linux系统中,环境变量按照其作用范围不同大致可以分为系统级环境变量和用户级环境变量。      系统级环境变量:每一个登录到系统的用户都能够读取到系统级的环境变量      用户级环境变量:每一个登录到系统的用户只能够读取属于自己的用户级的环境变量 自然而然地,环境变量的配置文件也相应的被分成了系统级和用户级两种。系统级/etc/profile在…

大家好,又见面了,我是你们的朋友全栈君。

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

            系统级环境变量:每一个登录到系统的用户都能够读取到系统级的环境变量
            用户级环境变量:每一个登录到系统的用户只能够读取属于自己的用户级的环境变量 

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

系统级

/etc/profile

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

Linux环境变量文件介绍[通俗易懂]

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

source /etc/profile
echo $PATH

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

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

Linux环境变量文件介绍[通俗易懂]

注意:这里的bash shell有不同的类别,不同的类别所使用的环境变量配置文件也有所不同。一般情况下,非登录shell不会执行任何profile文件,非交互shell模式不会执行任何bashrc文件。

# 登录shell和非登陆shell:
登录shell # 需要输入用户密码,例如 ssh 登录或者 su - 命令提权都会启动login shell模式
非登陆shell # 无需输入用户密码;

# 交互shell和非交互shell:
交互shell # 提供命令提示符等待用户输入命令的是交互shell模式
非交互shell # 直接运行脚本文件是非交互shell模式

/etc/environment

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

用户级

~/.profile(推荐首选)

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

~/.bashrc

当用户登录时以及每次打开新的shell时该文件都将被读取,不推荐在这里配置用户专用的环境变量,因为每开一个shell,该文件都会被读取一次,效率肯定受影响。

~/.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 ; 
然而, 默认情况下,这些文件不会影响图形会话。

~/.bash_logout

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

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

一般情况下,Linux加载环境变量配置文件的执行顺序为:

==> /etc/profile
==> ~/.bash_profile | ~/.bash_login | ~/.profile
==> ~/.bashrc
==> /etc/bashrc
==> ~/.bash_logout

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139358.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python—正则表达式建议收藏

    1.re包常用函数match(pattern,string,flags=0)search(pattern,string,flags=0)区别:match从头开始匹配,若不符合则匹配失败

    2021年12月18日
    49
  • flowerplus鲜花官网_花艺大师作品

    flowerplus鲜花官网_花艺大师作品题目描述 Description花匠栋栋种了一排花,每株花都有自己的高度。花儿越长越大,也越来越挤。栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花排列得比较别致。具体而言,栋栋的花的高度可以看成一列整数h_1,h_2,…,h_n。设当一部分花被移走后,剩下的花的高度依次为g_1,g_2,…,g_m,则栋栋希望下

    2022年8月22日
    7
  • 函数指针的用法

    函数指针的用法

    2021年11月20日
    47
  • Kali Linux更新及配置更新源

    Kali Linux更新及配置更新源默认状态下查看更新源root@kali2019:~#cat/etc/apt/sources.list更改Kali的更新源root@kali2019:~#vim/etc/apt/sources.list若更新源不可用,在执行apt-getupdate之后如下所示:更改为中科大更新源执行获取更新命令执行安装更新命令apt-getupdradekali官方源以…

    2022年5月28日
    40
  • 浦发银行 信息科技岗 大数据方向 面经

    浦发银行 信息科技岗 大数据方向 面经浦发银行总行信息科技部(大数据方向)面试浦发银行总行信息科技部(大数据方向)面试8.6面试大家的面经浦发银行总行(上海)大数据岗8月6号面经一、综合面二、机试三、专业面试浦发面经即兴演讲上机测试结构化面试浦发银行大数据创新岗上海打卡第一部分综合面试第二部分专业面试第三部分上机考试(只有开发和测试岗需要,别的岗可选)浦发总行信息岗校招面经(上海…

    2022年5月5日
    163
  • matlab三个自变量拟合函数_matlab拟合二元函数

    matlab三个自变量拟合函数_matlab拟合二元函数如何用matlab数据拟合函数?用matlab求解多元线性方程www.zhiqu.org时间:2020-12-08Matlab有一个功能强大的曲线拟合工具箱cftool,使用方便,能实现多种类型的线性、非线性曲线拟合。下面结合我使用的MatlabR2007b来简单介绍如何使用这个工具箱。假设我们要拟合的函数形式是y=A*x*x+B*x,且A>0,B>0…

    2025年9月26日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号