Linux系统环境变量

news2024/11/27 0:28:28

Linux系统环境变量

    • 1. 环境变量
      • 1.1 定义环境变量
      • 1.2 使用环境变量
    • 2. 环境变量作用
      • 2.1 PATH
    • 3. 设置环境变量
      • 3.1 设置系统级环境变量
      • 3.2 设置用户级环境变量
      • 3.3 设置临时环境变量

1. 环境变量

在这里插入图片描述

在Linux系统中,常用的关键信息以键值对(Key=Value)的形式(例如:name=“buddha”)存储在环境变量配置文件中,随着系统启动用户登录加载到进程中,该进程及子进程都可以使用该全局变量,这称为环境变量。可以用env或printenv命令查看环境变量。

用户环境变量配置文件配置文件加载顺序
root、普通用户/etc/environment1
/etc/profile2
/etc/profile.d/*.sh3
/etc/bashrc4
root~/.bash_profile5
~/.bashrc6
普通用户~/.bash_profile5
~/.bashrc6

**注意:**配置文件中存在同名环境变量,后面的变量会覆盖前面的变量。

1.1 定义环境变量

环境变量就是在全局变量的基础上用export命令导出。通常环境变量应该大写。

语法:

export 变量名=变量值

示例:

export MYNAME="buddha"

1.2 使用环境变量

语法:

$变量名

${变量名}

示例:

echo $MYNAME

echo ${MYNAME}helloworld

2. 环境变量作用

以PATH环境变量为例

2.1 PATH

记录了系统执行任何命令的搜索路径

[root@hecs-141089 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

路径之间以:隔开,path变量里记录了以下搜索路径:

  • /usr/local/sbin
  • /usr/local/bin
  • /usr/sbin
  • /usr/bin
  • /root/bin

命令本质上是一个有可执行权限(x)的普通文件

[root@hecs-141089 ~]# which pwd
/usr/bin/pwd
[root@hecs-141089 ~]# ll /usr/bin | grep pwd
-rwxr-xr-x  1 root root   38280 Jul 14  2021 pwd
-rwxr-xr-x  1 root root   12992 Feb  2  2021 pwdx

普通文件的执行,需要定位到该文件才能够执行

[root@hecs-141089 ~]# /usr/bin/pwd
/root

但是为什么pwd命令没有用相对路径或绝对路径定位pwd就可以在任意目录去执行呢?

[root@hecs-141089 ~]# pwd
/root
[root@hecs-141089 home]# pwd
/home
[root@hecs-141089 profile.d]# /usr/bin/pwd
/etc/profile.d

那是因为执行任何命令的时候,都会从path环境变量所记录的搜索路径中按顺序查找有可执行权限的pwd文件,找到了就拼上路径执行该文件。

/usr/local/sbin
/usr/local/bin
/usr/sbin
# /user/bin + /pwd
/usr/bin/pwd
/root/bin

所以安装的程序可执行普通文件(命令),需要在PATH环境变量里。或者修改PATH环境里搜索路径。

**备注:**命令本质是一个有可执行权限的普通文件,把命令文件全路径补齐,一样哪里都可以执行。例如:/usr/bin/pwd

3. 设置环境变量

3.1 设置系统级环境变量

系统级环境变量,作用域是整个系统

# /etc/profile.d/{文件名.sh} 新建并打开配置文件
vim /etc/profile.d/python.sh

# 文件末尾加变量定义
export MYNAME="buddha"

# 重载配置文件
source /etc/profile.d/python.sh

# 终端使用变量
echo $MYNAME

3.2 设置用户级环境变量

用户级环境变量,作用域是当前用户

# 打开配置文件
vim ~/.bash_profile

# 文件末尾加变量定义
export MYNAME="buddha"

# 重载配置文件
source ~/.bash_profile

# 终端使用变量
echo $MYNAME

3.3 设置临时环境变量

临时环境变量,作用域只在当前shell会话窗口

# 定义变量
export MYNAME="buddha"

# 使用变量
echo $MYNAME

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1190568.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第四章:人工智能深度学习教程-激活函数(第二节-ANN 中激活函数的类型)

生物神经网络以人工神经网络的形式建模, 其中人工神经元模拟生物神经元的功能。人工神经元如下图所示: 人工神经元的结构 每个神经元由三个主要部分组成: 一组“i”个突触,其权重为 w i。信号 x i形成具有权重 w i的第 i 个突触的…

关于稳定扩散最详细的介绍

推荐基于稳定扩散(stable diffusion) AI 模型开发的自动纹理工具: DreamTexture.js自动纹理化开发包 - NSDT Stable Diffusion 用途广泛,因为它可以以多种不同的方式使用。首先,让我们关注仅从文本 (text2img) 生成图像…

“箭在弦上”的边缘计算,更需要冷静和智慧

AI大模型、云游戏、自动驾驶、工业互联网等新一代数字技术,会给各行各业和社会经济生活带来巨大改善,这是大家都知道的。 要实现我们所期待的产业变化,一个完整的AI计算架构应该是:云侧端侧边缘侧,进行高效有序的协同。…

Mysql数据库 12.SQL语言 触发器

一、触发器&#xff08;操作日志表&#xff09; 1.介绍 不需要主动调用的一种储存过程&#xff0c;是一个能够完成特定过程&#xff0c;存储在数据库服务器上的SQL片段。 对当前表中数据增删改查的一种记录<日志表>&#xff0c;根据触发器自动执行&#xff0c;记录当前…

【阿里云】任务2-OSS对象存储教程(找我参加活动可获得京东卡奖励)

目录 前言说明第一步第二步第三步&#xff1a;开通并使用OSS传输加速三、清理第四步-提交作品第五步-提交记录到小程序 前言 本次任务是阿里云官方发出的&#xff0c;每个任务30软妹币&#xff0c;欢迎大家加入我的活动群&#xff0c;门槛很低&#xff0c;所有人都可以参加&…

kkFileView getCorsFile 任意文件读取漏洞(CVE-2021-43734)

kkFileView getCorsFile 任意文件读取漏洞 &#xff08;CVE-2021-43734&#xff09; 免责声明漏洞描述漏洞影响漏洞危害网络测绘Fofa: body"kkFileView" 漏洞复现1. 构造poc2. 读取文件 免责声明 仅用于技术交流,目的是向相关安全人员展示漏洞利用方式,以便更好地提…

用于汽车主驱逆变器的NVVR26A120M1WST、NVVR26A120M1WSS、NVVR26A120M1WSB 1200V、碳化硅(SiC)模块

碳化硅&#xff08;SiC&#xff09;模块 – EliteSiC主驱逆变器功率模块 1200V&#xff0c;半桥&#xff0c;介绍 1、&#xff08;NVVR26A120M1WST&#xff09;功率模块是用于混合动力车&#xff08;HEV&#xff09;和电动车&#xff08;EV&#xff09;主驱逆变器应用的VE-Tra…

​​​​​​​​​​​​​​汽车网络信息安全分析方法论

目录 1.典型信息安全分析方法 1.1 HEAVENS威胁分析模型 1.2 OCTAVE威胁分析方法 1.3 Attack Trees分析方法 2. 功能安全与信息安全的关系讨论 与Safety的典型分析方法一样&#xff0c;Security也有一些典型的信息安全威胁分析方法(TARA分析)&#xff0c;根据SAE J3061、I…

C++: 类和对象(下) (初始化列表, 隐式类型转换, static成员, 友元, 内部类, 匿名对象)

文章目录 一. 再谈构造函数1. 构造函数体赋值2. 初始化列表3. explitcit 关键字 二. static 成员1. 概念2. 特性声明静态成员使用类的静态成员定义静态成员 三. 友元1. 友元函数2. 友元类 四. 内部类五. 匿名对象 一. 再谈构造函数 1. 构造函数体赋值 在创建对象时, 编译器通过…

一张数学地图带你尽览数学分支

我们在学校学习的数学可能也只是数学领域的冰山一角&#xff0c;作为庞大而多样的学科&#xff0c;我今天将通过一张数学地图带你尽览数学分支。 本数学地图对应的视频讲解地址如下&#xff1a; https://www.youtube.com/watch?vOmJ-4B-mS-Y 另外&#xff0c;由于图片较大&a…

STM32中断简介

中断系统 中断&#xff1a;在主程序运行过程中&#xff0c;出现了特定的中断触发条件&#xff08;中断源&#xff09;&#xff0c;使得CPU暂停当前正在运行的程序&#xff0c;转而去处理中断程序&#xff0c;处理完成后又返回原来被暂停的位置继续运行&#xff1b; 以上是中断的…

【Linux】JREE项目部署与发布

目录 一.jdk安装配置 1.1.传入资源 1.2. 解压 1.3. 配置 二.Tomcat安装 2.1.解压开启 2.2. 开放端口 三.MySQL安装 3.1.解压安装 3.2.登入配置 四.后端部署 今天就到这里了哦&#xff01;&#xff01;希望能帮到你哦&#xff01;&#xff01;&#xff01; 一.jdk…

半导体(芯片)制造工艺流程简单说

半导体行业是国民经济支柱性行业之一&#xff0c;是信息技术产业的重要组成部分&#xff0c;是支撑经济社会发展和保障国家安全的战略性、基础性和先导性产业&#xff0c;其发展程度是衡量一个国家科技发展水平的核心指标之一&#xff0c;属于国家高度重视和鼓励发展的行业。 …

ant design pro of vue怎么使用阿里iconfont

一 使用离线iconfont 首先需要生成图所有图标对应的js文件。如下图所示&#xff0c;将生成的js代码复制&#xff0c;在项目中创建一个js文件&#xff0c;将代码粘贴进去。这里我将js文件放在了src/assets/iconfont下面 然后&#xff0c;在main.js中引入文件&#xff0c;并进…

强化IP地址管理措施:确保网络安全与高效性

IP地址管理是网络安全和性能管理的关键组成部分。有效的IP地址管理可以帮助企业确保网络的可用性、安全性和高效性。本文将介绍一些强化IP地址管理的关键措施&#xff0c;以帮助企业提高其网络的安全性和效率。 1. IP地址规划 良好的IP地址规划是强化IP地址管理的基础。它涉及…

【操作系统】考研真题攻克与重点知识点剖析 - 第 2 篇:进程与线程

前言 本文基础知识部分来自于b站&#xff1a;分享笔记的好人儿的思维导图与王道考研课程&#xff0c;感谢大佬的开源精神&#xff0c;习题来自老师划的重点以及考研真题。此前我尝试了完全使用Python或是结合大语言模型对考研真题进行数据清洗与可视化分析&#xff0c;本人技术…

基于SSM框架的管理系统-计算机毕设 附源码 23402

基于SSM框架的管理系统 摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。在目前的形势下&#xff0c;无论是从国家到企业再到家庭&#xff0c;计算机都发挥着其不可替代的作用&#xff0c;可以说…

【洛谷 P1012】[NOIP1998 提高组] 拼数 题解(贪心算法+字典序排序)

[NOIP1998 提高组] 拼数 题目描述 设有 n n n 个正整数 a 1 … a n a_1 \dots a_n a1​…an​&#xff0c;将它们联接成一排&#xff0c;相邻数字首尾相接&#xff0c;组成一个最大的整数。 输入格式 第一行有一个整数&#xff0c;表示数字个数 n n n。 第二行有 n n …

mac 安装 selenium + chrome driver

前言 使用 selenium 模拟浏览器渲染数据&#xff0c;需要依赖各浏览器的驱动才能完成&#xff0c;因此需要单独安装chrome driver 查看本地 chrome 浏览器的版本 可以看到我这里已经是 arm 架构下最新的版本了 下载对应的 chrome driver 访问下面的地址&#xff1a; Chrome…

集合贴3——智能客服系统

基础课17——智能客服系统-CSDN博客文章浏览阅读56次。近年来&#xff0c;实体客服机器人开始出现在银行办公厅、电信商务厅等场合&#xff0c;形成了网络智能客服、电话智能客服、实体客服机器人综合智能客服系统&#xff0c;这初步形成了一种新的产业形式。https://blog.csdn…