【Linux】环境变量是什么?如何配置?详解

在这里插入图片描述

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 :阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹C语言进阶🔹C++🔹Liunx
🚩 不能则学,不知则问,耻于问人,决无长进
🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍

文章目录

  • 一、 什么是环境变量?
  • 二、为什么要配置环境变量?
  • 三、Linux中如何查看当前环境变量?
  • 四、配置环境变量

一、 什么是环境变量?

环境变量(environment variables):一般是指在操作系统在开机的时候帮我们维护系统运行时的一些动态参数

在Windows中,打开高级选项–环境变量便可以看到如下

在这里插入图片描述
但是有没有注意过,你每次配置环境变量,你是往系统变量的Path中加呢?还是用户变量。


环境变量的用户变量与系统变量的区别

  • 我也是刚注意到这个问题哈哈,下面就是环境变量的用户变量与系统变量的区别

1、环境变量没有区分大小写,例如path跟PATH是一样的
2、系统变量对所有用户有效
3、用户变量只对当前用户有效
4、用户变量与系统变量,名称是变量,值是里面的内容,也就是通过变量存储了想要存储的内容,方便调用
5、系统变量与用户变量的PATH:告诉系统可执行文件放在什么路径(平常执行程序的路径,要放在PATH里面,不能建一个变量,cmd会提示“不是内部或外部命令,或者不是可执行程序”)
6、windows系统在执行用户命令时,若用户未给出文件的绝对路径,则首先在当前目录下寻找相应的可执行文件、批处理文件等;
7、若果当前目录找不到对应文件名的程序,在系统变量的PATH的路径中,依次寻找对应的可执行程序文件(查找顺序是按照路径的录入顺序从左往右寻找的,最前面一条的优先级最高,如果找到程序就停止寻找,后面的路径不再执行)
8、如果系统变量的PATH的路径找不到,再到用户变量的PATH路径中寻找(如果系统变量和用户变量的PATH中同时包含了同一个命令,则优先执行系统变量PATH中的命令)
9、每次新加了命令以后,要确定保存了。再重启CMD,否则命令不生效的。
10、在CMD里要输出环境变量 ECHO %变量名%

环境变量的本质其实还是变量,系统自己需要开辟空间,里面存放文件名和文件目录。开机时,自动启动


二、为什么要配置环境变量?

在Windows中:

在Windows命令行中,我们输入git,便会显示相关信息,那系统如何找到git所在位置的呢?

首先,我们知道git肯定是一个可执行文件,在windows下可执行文件都是以.exe结尾的,那么我们就要找到它的路径在哪。然后将它的路径添加到系统环境变量中。这样,下次你直接输入git,系统也能找到git所在位置并执行。

如果不配置呢,就需要输入整个路径,同样可以执行。
在这里插入图片描述

在这里插入图片描述

在Linux中也是同理:
在Linux的学习中,我们make编译文件后,执行这个可执行文件时【./可执行文件 】。那你有没有想过为什么要加个./呢?

  • 这个./其实就是相对路径的意思,加上后也就相当于补全了路径去执行。
  • 也可以将你的可执行文件路径加入到环境变量中,就只需要一个名字即可执行。

三、Linux中如何查看当前环境变量?

使用指令,查看当前环境变量

echo $PATH

系统中的环境变量有很多,以[:]来进行分割。其中便有/usr/bin
在这里插入图片描述

这个路径下就存在着我们经常使用的指令【ls】

在这里插入图片描述
所以,这下就懂了,为什么这些指令可以直接使用了吧。

四、配置环境变量

那要怎么去将一个系统路径添加到【环境变量】中呢

  • 这里要使用到一个关键字叫做export,然后将我们所要添加的路径放到其中即可
export PATH=/路径

🚩这里一定要主要覆盖问题,解决方法:
下图所示操作就会覆盖环境变量,导致ls指令找不到了
🔸解决重启Xshell就恢复了
在这里插入图片描述

1️⃣方法一:【>>】使用追加重定向

2️⃣方法二:使用【export PATH=$PATH:/路径】(推荐)

关键字:export

  • 例如:我添加我的myproccess的路径到环境变量中
  • 输入:
export PATH=$PATH:/home/lesson1/dir2

在这里插入图片描述
按照这个方法来运行的话再去查看环境变量就可以发现,这个路径被添加进去了,🌈而且并没有覆盖掉其他的内容

  • 再来执行一下看看
    在这里插入图片描述
  • 但是呢,当我们再去将服务器重启之后,再度运行这个可执行程序的时候,便可以发现我们之前添加的路径不见了。该怎么解决? 后续在说

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

相同的树——java

给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p [1,2,3], q [1,2,3] 输出:true示例 2&…

C#高级编程笔记-泛型

本章的主要内容如下: ● 泛型概述 ● 创建泛型类 ● 泛型类的特性 ● 泛型接口 ● 泛型结构 ● 泛型方法 目录 1.1 泛型概述 1.1.1 性能 1.1.2 类型安全 1.1.3 二进制代码的重用 1.1.4 代码的扩展 1.1.5 命名…

SpringBootWeb 篇-深入了解请求响应(服务端接收不同类型的请求参数的方式)

🔥博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞👍收藏⭐评论✍ 文章目录 1.0 请求响应概述 1.1 简单参数 1.2 实体参数 2.3 数组集合参数 2.4 日期参数 2.5 json 参数 2.6 路径参数 3.0 完整代码 1.0 请求响应概述 当客户端发送不同的请求参…

【驱动】SPI

1、简介 SPI(Serial Peripheral interface)串行外设接口。 特点: 高速:最大几十M,比如,AD9361的SPI总线速度可以达到40MHz以上全双工:主机在MOSI线上发送一位数据,从机读取它,而从机在MISO线上发送一位数据,主机读取它一主多从:主机产生时钟信号,通过片选引脚选择…

微火全域外卖城市合伙人究竟是什么?详细介绍

随着外卖市场的蓬勃发展,微火全域外卖团购业务正逐渐崭露头角,成为商家与消费者之间的新桥梁。这种业务模式,也被称为全域合伙人,其魅力在于其独特的多平台销售策略和简便的管理系统。那么,这种全域外卖城市合伙人&…

N1077B keysight 是德 光/电时钟恢复设备,参数

Keysight N1077B是一款光/电时钟恢复设备,支持115 MBd至24 GBd的数据速率范围,适用于多模和单模光信号以及电信号。该设备能够处理PAM4和NRZ两种类型的数据信号,并提供符合标准的时钟恢复功能。 型 号:N1077B/A 名 称&#xff1a…

【教程向】从零开始创建浏览器插件(四)探索Chrome扩展的更多常用API

探索Chrome扩展的更多常用API 在Chrome扩展开发中,除了最基础的API外,Chrome还提供了一系列强大的API,允许开发者与浏览器的各种功能进行交互。本文将介绍其中几个常用的API,并提供详细的示例代码帮助您开始利用这些API。 书签…

【Spring】初识 Spring AOP(面向切面编程)

目录 1、介绍AOP 1.1、AOP的定义 1.2、AOP的作用 1.3、AOP的核心概念及术语 2、AOP实现示例 3、EnableAspectJAutoProxy注解 1、介绍AOP 1.1、AOP的定义 AOP(Aspect Orient Programming),直译过来就是面向切面编程,AOP 是一…

大型模型技术构建本地知识库

使用大型模型技术构建本地知识库是一个复杂的过程,涉及到数据科学、机器学习和软件工程等多个领域的知识。以下是构建本地知识库的一般步骤。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.需求分析: 确定知…

软件工程经济学--期末复习资料

软件工程经济学--期末复习资料 前言第一章 绪论第二章 软件工程经济学基础第三章 软件的成本管理与定价分析第四章 软件工程项目评价方法与经济效果评价第五章 软件生产函数、效益分析及不确定性分析第六章 软件工程项目进度计划的制定结尾总结 前言 软件工程经济学&#xff0…

书生作业:XTuner

作业链接: https://github.com/InternLM/Tutorial/blob/camp2/xtuner/homework.md xtuner: https://github.com/InternLM/xtuner 环境配置 首先,按照xtuner的指令依次完成conda环境安装,以及xtuner库的安装。 然后,我们开始尝试…

VBA信息获取与处理第四节:获取唯一非重复值返回数组的代码

《VBA信息获取与处理》教程(版权10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互…

scanf留下的那一片云彩

【题目描述】 给出一个由O和X组成的串(长度为1~80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0。例如,OOXXOXXOOO的得分为1200100123。 输入第一行表示有n个字符串,后续是n行字…

【matlab基础知识代码】(十八)无约束最优化问题

min下面的x称为优化向量或者是决策变量 匿名函数法 >> f(x)(x(1)^2-2*x(1))*exp(-x(1)^2-x(2)^2-x(1)*x(2)); x0[0; 0]; [x,b,c,d]fminsearch(f,x0), x 0.6111 -0.3056 b -0.6414 c 1 d 包含以下字段的 struct: iterations: 72 funcCount: 137 algor…

Hive SQL-DML-insert插入数据

Hive SQL-DML-insert插入数据 1. 插入静态数据 可以直接插入具体的值到Hive表中: INSERT INTO TABLE tablename (column1, column2, column3) VALUES (value1, value2, value3),(value4, value5, value6),...;2. 插入查询结果 将一条查询的结果直接插入到另一个表中…

软件工程基础知识,软考选择题的重点

本篇知识来自:软件设计师考试同步辅导 ---考点。。。。。,钟彩华 博伟玉 清华出版社,那本书。仅供学习。以下理解都是本人自己认为的。仅供参考。 本书的第132页,第五章知识。 目录 软件工程叙述 软件的生命周期 软件过程 软…

android studio配置Http Proxy

1、问题描述: Error:Unable to tunnel through proxy. Proxy returns “HTTP/1.1 400 Bad Request” 解决:HTTP Proxy设置 1.File→Settings…→System Settings → HTTP Proxy → Auto-detect proxy settings”; 2.勾选下方“Automatic prox…

Codigger:Vim的革新者,提升开发体验和功能性

深知Vim在编程和文本编辑领域的卓越地位,因此,在设计和开发过程中,Codigger始终将保留Vim的核心功能和高度定制能力作为首要任务。然而,Vim的复杂性和高度定制性也让很多新用户望而却步。为了降低这种使用门槛,Codigge…

常用Linux命令详细总结

一、文档编辑、过滤、查看命令 1、cp 复制文件和目录 -a 复制文件并保持文件属性 -d 若源文件为链接文件,则复制链接文件属性而非文件本身 -i 覆盖文件前提示,如果不要提示,在命令前加上\ -r 递归复制,通常用于目录的复制 …

【bug记录】清除僵尸进程,释放GPU显存

目录 1. 为什么会出现这种情况?2. 解决方案方法一:使用 fuser 命令方法二: 3. 小贴士 在进行深度学习或其他需要GPU支持的任务时,我们有时会发现虽然没有可见的进程在执行,但GPU资源却意外地被占用。这种情况往往会阻碍…