【Linux】Linux环境设置环境变量操作步骤

Linux环境设置环境变量操作步骤

在一些开发过程中本地调试经常需要依赖环境变量的参数,但是怎么设置对小白来说有点困难,今天就介绍下具体的操作步骤,跟着实战去学习,更好的检验自己的技术水平,做技术还是那句话:积跬步,至千里,积小流,成江河;

需求:

1.创建一个环境变量,名称为debug,值为True;
2.删除已创建名为debug的环境变量;

在Linux系统中设置环境变量有几种不同的方法,具体取决于您希望环境变量在何时何处生效。

临时设置环境变量(仅对当前会话有效)

方法

在当前终端会话中设置环境变量,可以使用以下命令:

export VAR_NAME=value

例如,设置一个名为MY_VAR的环境变量:

export debug="True"

您可以通过下面的命令查看是否设置成功:

echo $debug
实战
wsw@mdwsw:~$ echo $debugwsw@mdwsw:~$
wsw@mdwsw:~$ export debug="True"
wsw@mdwsw:~$ echo $debug
True

永久设置环境变量

若要使环境变量在每次登录时自动设置,您需要将其添加到启动文件中。

对于所有用户:

打开/etc/profile文件:

sudo vi /etc/profile

在文件末尾添加您的环境变量:

export debug1="True"

保存并退出编辑器,然后运行以下命令使更改生效:

source /etc/profile
实战
sudo vi /etc/profile

在这里插入图片描述

source /etc/profile

参考

wsw@mdwsw:~$ echo $debug1
True
对于单个用户:

打开~/.bashrc~/.profile文件:

vi ~/.bashrc
# 或者
vi ~/.profile

在文件末尾添加您的环境变量:

export debug="True"

保存并退出编辑器,然后运行以下命令使更改生效:

source ~/.bashrc
# 或者
source ~/.profile

取决于您的shell,可能需要使用不同的文件。例如,如果您使用的是zsh,那么应该是~/.zshrc

注意事项

  • 使用sudo设置的环境变量可能不会在非root用户的会话中生效。
  • 使用export设置的变量只在当前shell会话中有效,若开启新的终端或会话则需要重新设置。
  • 在修改了配置文件后,通常需要重新加载配置文件或者重启系统,更改才能生效。
    以上就是设置Linux环境变量的基本方法。希望对您有所帮助。

在Linux系统中删除环境变量,可以通过取消设置(unset)该变量或从配置文件中移除相应的行来实现。

临时删除环境变量(仅对当前会话有效)

要删除当前会话中的环境变量,可以使用unset命令:

unset VAR_NAME

例如,删除名为MY_VAR的环境变量:

unset MY_VAR

您可以通过下面的命令确认变量是否已被删除:

echo $MY_VAR

如果变量已经被删除,上述命令将不会输出任何内容。

永久删除环境变量

要从配置文件中永久删除环境变量,您需要编辑相应的启动文件。

对于所有用户:

编辑/etc/profile文件:

sudo vi /etc/profile

找到并删除设置环境变量的行(例如export VAR_NAME=value),然后保存并退出编辑器。
为了使更改生效,您可能需要重新启动系统或运行以下命令:

source /etc/profile
对于单个用户:

编辑~/.bashrc~/.profile或相应的shell配置文件:

vi ~/.bashrc
# 或者
vi ~/.profile

找到并删除设置环境变量的行,然后保存并退出编辑器。
为了使更改生效,运行以下命令:

source ~/.bashrc
# 或者
source ~/.profile

如果您使用的是其他shell(如zsh),请相应地编辑~/.zshrc

注意事项

  • 删除环境变量后,可能需要重新启动应用程序或打开新的终端会话,以便它们不会使用已删除的变量。
  • 如果您不确定变量设置在哪个配置文件中,可以使用grep命令搜索:
    grep 'VAR_NAME=' ~/.bashrc
    # 或者
    grep 'VAR_NAME=' ~/.profile
    # 等等...
    

使用上述方法,您可以从Linux系统中删除环境变量。

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

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

相关文章

【python】OpenCV—Scanner

文章目录 1、需求描述2、代码实现3、涉及到的库函数cv2.arcLengthcv2.approxPolyDPskimage.filters.threshold_localimutils.grab_contours 4、完整代码5、参考 1、需求描述 输入图片 扫描得到如下的结果 用OpenCV构建文档扫描仪只需三个简单步骤: 1.边缘检测 2.使用图像中…

HarmonyOS NEXT零基础入门到实战-第一部分

构建节页面思路: 1、排版 (分析布局) 2、内容(基础组件) 3、美化(属性方法) 设计资源-svg图标 界面中展示图标 ->可以使用svg图标(任意放大缩小不失真,可以改颜色) 使用方式&a…

Floyd 算法 求最短路

推荐阅读:最短路 - OI Wiki 练习题目:力扣 - 1334 简介: 初始化:我们先把题目给的,两点直接相连的边的加入初始存在连接中。更新:然后每次只加入一个点对已有合法连接进行“拓展”更多的连接。结果&#…

【python】OpenCV—Coordinates Sorted Clockwise

文章目录 1、需求介绍2、算法实现3、完整代码 1、需求介绍 调用 opencv 库,绘制轮廓的矩形边框,坐标顺序为右下→左下→左上→右上,我们实现一下转化为熟悉的 左上→右上→右下→左下 形式 按照这样的顺序组织边界框坐标是执行透视转换或匹…

数学基础【俗说矩阵】:矩阵相乘

矩阵乘法 矩阵乘法推导过程 一、两个线性方程复合代入 二、X1和X2合并同类项 三、复合后方程组结果 四、线性方程组矩阵表示 五、线性方程组矩阵映射表示 复合映射表示 六、矩阵乘法导出 矩阵乘法法则 1、规则一推导过程 左取行,右取列,对应相乘后…

第122天:内网安全-域信息收集应用网络凭据CS 插件AdfindBloodHound

目录 前置知识 背景和思路 判断是否在域内 案例一:架构信息类收集-网络&用户&域控等 案例二:自动化工具探针-插件&Adfind&BloodHound Adfind(域信息收集工具) ​BloodHound(自动化域渗透工具) 前置知识 本…

初阶数据结构的实现1 顺序表和链表

顺序表和链表 1.线性表1.1顺序表1.1.1静态顺序表(不去实现)1.1.2动态顺序表1.1.2.1 定义程序目标1.1.2.2 设计程序1.1.2.3编写代码1.1.2.3测试和调试代码 1.1.2 顺序表的问题与思考 1.2链表1.2.1链表的概念及结构1.2.1.1 定义程序目标1.2.1.2 设计程序1.…

专题四:设计模式总览

前面三篇我们通过从一些零散的例子,和简单应用来模糊的感受了下设计模式在编程中的智慧,从现在开始正式进入设计模式介绍,本篇将从设计模式的7大原则、设计模式的三大类型、与23种设计模式的进行总结,和描述具体意义。 设计模式体…

<数据集>木材缺陷检测数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:4000张 标注数量(xml文件个数):4000 标注数量(txt文件个数):4000 标注类别数:8 标注类别名称:[Quartzity,Live_Knot,Marrow,resin,Dead_Knot,knot_with_crack,Knot_m…

彻底解决idea的编解码问题

一、打开idea,找到Setting,点击File Encoding编解码设置,将以下标红的三个部分全部设置为UTF-8.同理如果你的项目使用的是GBK或者其他编码格式,那么也设置为统一。 二、点击Java Compiler设置补齐-encoding utf-8参数 三、如果你的项目使用到…

HiFi-GAN——基于 GAN 的声码器,能在单 GPU 上生成 22 KHz 音频

拟议的 HiFiGAN 可从中间表征生成原始波形 源码地址:https://github.com/NVIDIA/DeepLearningExamples 论文地址:https://arxiv.org/pdf/2010.05646.pdf 研究要点包括 **挑战:**基于 GAN 的语音波形生成方法在质量上不及自回归模型和基于流…

linux中list的基本用法

内核链表 1 list_head 结构 为了使用链表机制&#xff0c;驱动程序需要包含<linux/types.h>头文件&#xff0c;该文件定义了如下结构体实现双向链&#xff1a; struct list_head {struct list_head *next, *prev; };2 链表的初始化 2.1 链表宏定义和初始化 可使用以…

MongoDB教程(十二):MongoDB数据库索引

&#x1f49d;&#x1f49d;&#x1f49d;首先&#xff0c;欢迎各位来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里不仅可以有所收获&#xff0c;同时也能感受到一份轻松欢乐的氛围&#xff0c;祝你生活愉快&#xff01; 文章目录 引言一、MongoD…

Vue封装文件上传组件(支持图片、PDF、Excel、word预览下载)

一、准备工作 安装预览依赖包&#xff1a;exceljs、mammoth、vue-pdf 二、封装组件 文件上传组件 fileUploadPro.vue。默认预览、下载是true,可通过isPreView、isDownLoad控制 <template><div style"display: flex"><el-uploadmultipleaction&qu…

SSM 整合(Spring + MyBatis;Spring + Spring MVC)

1. SSM 整合(Spring MyBatis&#xff1b;Spring Spring MVC) 文章目录 1. SSM 整合(Spring MyBatis&#xff1b;Spring Spring MVC)2. 引入相关依赖3. SSM 整合3.1 创建包结构 4. Spring 整合 MyBatis4.1 编写 jdbc.properties4.2 编写 DataSourceConfig 数据源配置4.3 编…

大数减法c++

这里写目录标题 key key 检查减数和被减数的大小&#xff0c;大的放前&#xff0c;小的放后确定结果是正数&#xff0c;还是负数&#xff0c;即符号位从低位开始减如果a[i]<b[i]&#xff0c;则向高位借1当10&#xff0c;a[i1]–;a[i]10 #include <iostream> #include…

[MySQL][索引][下][理解索引]详细讲解

目录 0.前期准备1.为何IO交互要是Page&#xff1f;2.理解单个Page3.理解多个Page4.页目录5.单页情况6.多页情况7.总结复盘8.InnoDB 在建立索引结构来管理数据的时候&#xff0c;其他数据结构为何不行&#xff1f;9.聚簇索引 vs 非聚簇索引 0.前期准备 建立测试表 create table …

云手机结合自主ADB命令接口 提升海外营销效率

现在&#xff0c;跨境电商直播已经成为在线零售的重要渠道&#xff0c;在大环境下&#xff0c;确保直播应用的稳定性和用户体验至关重要。 云手机支持自主ADB命令接口&#xff0c;为电商直播营销提供了技术支持&#xff0c;使得应用开发、测试、优化和运维更加高效。 什么是A…

Linux-交换空间(Swap)管理

引入概念 在计算机中&#xff0c;硬盘的容量一般比内存大&#xff0c;内存&#xff08;4GB 8GB 16GB 32GB 64GB…&#xff09;&#xff0c;硬盘&#xff08;512GB 1T 2T…&#xff09;。 冯诺依曼的现代计算机结构体系里面的存储器就是内存 内存是一种易失性存储器&#xff0c…

0718,TCP协议,三次握手,四次挥手

爬东西只能明天了喵 上课喵&#xff1a; TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;的状态迁移图 这图别看&#xff0c;会瞎 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;的状态迁移图描述…