当前位置: 首页 > news >正文

Ubuntu/linux系统环境变量配置详解

一 环境变量配置文件解释

  • /etc/profile

    在登录时,操作系统定制用户环境时使用的第一个文件 ,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。

  • /etc /environment

    在登录时操作系统使用的第二个文件, 系统在读取你自己的profile前,设置环境文件的环境变量。

  • ~/.profile

    在登录时用到的第三个文件 是.profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

  • /etc/bashrc

    为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

  • ~/.bashrc

    该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

  • ~/.bash_profile
    每个用户都可使用该文件输入专用于自己 使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。~/.bash_profile 是交互式、login 方式进入 bash 运行的;~/.bashrc是交互式 non-login 方式进入 bash 运行的。通常二者设置大致相同,所以通常前者会调用后者。

  • ~./bash_login
    不推荐使用这个,这些不会影响图形界面。而且.bash_profile优先级比bash_login高。当它们存在时,登录shell启动时会读取它们。

  • ~/.bash_logout
    当每次退出系统(退出bash shell)时,执行该文件.

  • ~/.pam_environment
    用户级的环境变量设置文件。

    另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。

二 查看环境变量

查看环境变量有三个命令

  • env
    env命令是environment的缩写,用于列出所有的环境变量,查看Ubuntu用户级环境变量
    printenv查看系统级环境变量
  • export
    单独使用export命令也可以像env列出所有的环境变量,不过export命令还有其他额外的功能
  • echo $PATH
    echo $PATH用于列出变量PATH的值,里面包含了已添加的目录

三 设置方式

设置环境变量通常有两种设置方式

3.1 把你的路径加入PATH

可以直接添加到环境变量PATH中。$PATH表示变量PATH的值,包含已有的目录
这种方法需要注意路径的顺序,如果遇到有同名的命令,那么PATH里面哪个目录先被查询,则那个目录下的命令就会被先执行

# 加到PATH末尾
export PATH=$PATH:/path/to/your/dir# 加到PATH开头
export PATH=/path/to/your/dir:$PATH

3.2 命名一个新的环境变量

也可以直接命名一个新的环境变量,用于其它程序引用

export VAR_NAME=value

四 作用域

环境变量的作用域通常有三个

4.1 用于当前终端

打开一个终端,输入添加环境变量的语句

export CLASS_PATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib

终端所添加的环境变量是临时的,只适用于当前终端,关闭当前终端或在另一个终端中,添加的环境变量无效

4.2 用于当前用户

如果只需要添加的环境变量对当前用户有效,可以写入用户主目录下的.bashrc文件

vim ~/.bashrc

添加语句

export CLASS_PATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib

注销或者重启可以使修改生效,如果要使添加的环境变量马上生效

source ~/.bashrc
4.3 用于所有用户

要使环境变量对所有用户有效,可以修改profile文件

sudo vim /etc/profile 

添加语句

export CLASS_PATH=./JAVA_HOME/lib:$JAVA_HOME/jre/lib

注销或者重启可以使修改生效,如果要使添加的环境变量马上生效

source /etc/profile
4.4 从文件中导入环境变量
# 在Ubuntu系统中,可以将环境变量定义存储在单独的文件中,然后从该文件中导入环境变量。可以使用如下命令:
source /path/to/your/env/file# 例如,以下命令将从/home/user/env.sh文件中导入所有定义的环境变量:
source /home/user/env.sh

在Ubuntu中,还可以将别名和函数定义保存在环境变量文件中,并从该文件中加载它们。

相关文章:

Ubuntu/linux系统环境变量配置详解

一 环境变量配置文件解释 /etc/profile 在登录时,操作系统定制用户环境时使用的第一个文件 ,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。 /etc /environment 在登录时操作系统使用的第二个文件, 系统在读取你自己的profile前,设置环境文件的环境变…...

kafka配置SASL/PLAIN 安全认证

1 zookeeper配置启动 1.1 zookeeper添加SASL支持 为zookeeper添加SASL支持,在配置文件zoo.cfg添加 authProvider.1org.apache.zookeeper.server.auth.SASLAuthenticationProvider requireClientAuthSchemesasl jaasLoginRenew36000001.2 zk_server_jaas.conf文件…...

pdf加密如何解除?这样解除加密很简单

pdf加密如何解除?有时,我们可能会收到一些加密的PDF文件,它们不允许我们对其进行编辑或打印。这时,我们需要使用PDF解密工具,以便能够轻松地解除PDF加密并对其进行编辑。那么接下来就给大家介绍一下pdf加密解除的方法。…...

Ubuntu18.04使用Systemback制作系统镜像并还原

系列文章目录 文章目录 系列文章目录前言一、下载Systemback工具二、制作系统镜像到U盘三、安装制作系统 前言 在Ubuntu系统中开发项目时,有时会希望将项目移植到另外一台计算机(如工控机等)上进行部署,通常会在新计算机中安装Ub…...

OpenCV(十五):拷贝图像

在OpenCV中,拷贝图像数据时有两种方式:深拷贝(Deep Copy)和浅拷贝(Shallow Copy)。这两种拷贝方式的主要区别在于是否创建新的图像副本。 浅拷贝(Shallow Copy)是指将图像对象的指针…...

原神世界中的顺序表:派蒙的趣味数据结构讲解

派蒙,那个总是带着疑问眼神的小家伙,是原神世界中的小精灵。他总是充满好奇心,无论是对新的冒险者,还是对各种奇妙的现象。而他的另一个身份,则是原神世界中的数据结构大师。 一天,派蒙遇到了旅行者小森&a…...

电脑入门:路由器 基本设置操作说明

路由器 基本设置操作说明 首先我们我设置路由器,就需要先登录路由器, 那么怎样登路由器啊? 登录路由器的方法是 在ie的地址栏输入:http://192.168.1.1 输入完成以后直接回车 那么如果你输入正确 这个时候就应该听到有用户名的提示 呵呵 这是怎么回事啊? 不要召集 首…...

搜索与图论-拓扑序列

为什么记录呢 因为不记录全忘了 虽然记了也不一定会看 有向无环图一定有拓扑序列邮箱无环图 - 拓扑图 入度为0的点作为起点入度为0的点入队列枚举出边 t->j删掉当前边,t->j . j的入度减1判断j的入度是否为0,来判断是否加入队列 有环: …...

「MySQL-05」MySQL Workbench的下载和使用

目录 一、MySQL workbench的下载和安装 1. MySQL workbench介绍 2. 到MySQL官网下载mysql workbench 3. 安装workbench 二、创建能远程登录的用户并授权 1. 创建用户oj_client 2. 创建oj数据库 3. 给用户授权 4. 在Linux上登录用户oj_client检查其是否能操作oj数据库 三、使用…...

编译期jni类型转换成字符串

背景: 例如android jni 方法的签名, 这个需要每个用户都要知道具体类型,转化成签名, 要想写好签名, 必须很熟悉 类型对应的签名, 尤其java类对象要加个L, 本文将介绍怎么在编译期过程把类型转化成字符, 多个类型在尽性拼接. 定义基础数据结构 template<char ... ch> str…...

优秀的ui设计作品(合集)

UI设计师需要了解的九个Tips 1.图片类APP排版突破 规则是死的&#xff0c;人是活的。很多时候&#xff0c;如果需求是比较宽要尝试突破原则&#xff0c;用一些另类的排版方式&#xff0c;其实也是做好设计的本质。在图片类app中&#xff0c;错落一些的排版会使你的作品更有魅力…...

【c/c++】c和cpp混合编译

c和cpp混合编译 #ifdef __cplusplus extern "C" { #endifextern int test(int, int);#ifdef __cplusplus } #endif在这段代码中&#xff0c;#ifdef __cplusplus 和 #endif 之间的代码是为了在 C 中使用 C 语言的函数声明和定义时&#xff0c;确保编译器正确地处理 C…...

springboot定制banner

这里有几个定制banner的网站 Text to ASCII Art Generator (TAAG) ASCII Generator IMG2TXT: ASCII Art Made Easy!...

Qt 入门实战教程(目录)

为何我要写Qt入门教程 前置课程 《C自学精简实践教程》 教程特点 1 面向企业开发&#xff0c;你在这里学到的任何一步操作&#xff0c;都会直接在企业里用到。 2 注重设计思路训练&#xff0c;抽象分析问题的能力。 Qt 安装 1.1 Windows Qt 5.12.10下载与安装 1.2 我们…...

Ceph入门到精通-Lunix性能分析工具汇总

出于对Linux操作系统的兴趣&#xff0c;以及对底层知识的强烈欲望&#xff0c;因此整理了这篇文章。本文也可以作为检验基础知识的指标&#xff0c;另外文章涵盖了一个系统的方方面面。如果没有完善的计算机系统知识&#xff0c;网络知识和操作系统知识&#xff0c;文档中的工具…...

服务器端使用django websocket,客户端使用uniapp 请问服务端和客户端群组互发消息的代码怎么写的参考笔记

2023/8/29 19:21:11 服务器端使用django websocket,客户端使用uniapp 请问服务端和客户端群组互发消息的代码怎么写 2023/8/29 19:22:25 在服务器端使用Django WebSocket和客户端使用Uniapp的情况下&#xff0c;以下是代码示例来实现服务器端和客户端之间的群组互发消息。 …...

【考研数学】线性代数第四章 —— 线性方程组(2,线性方程组的通解 | 理论延伸)

文章目录 引言四、线性方程组的通解4.1 齐次线性方程组4.2 非齐次线性方程组 五、方程组解的理论延伸 引言 承接前文&#xff0c;继续学习线性方程组的内容&#xff0c;从方程组的通解开始。 四、线性方程组的通解 4.1 齐次线性方程组 &#xff08;1&#xff09;基础解系 —…...

go读取文件的几种方法

一. 整个文件读入内存 直接将数据直接读取入内存&#xff0c;是效率最高的一种方式&#xff0c;但此种方式&#xff0c;仅适用于小文件&#xff0c;对于大文件&#xff0c;则不适合&#xff0c;因为比较浪费内存 1.直接指定文化名读取 在 Go 1.16 开始&#xff0c;ioutil.Rea…...

ChatGPT癌症治疗“困难重重”,真假混讲难辨真假,准确有待提高

近年来&#xff0c;人工智能在医疗领域的应用逐渐增多&#xff0c;其中自然语言处理模型如ChatGPT在提供医疗建议和信息方面引起了广泛关注。然而&#xff0c;最新的研究表明&#xff0c;尽管ChatGPT在许多领域取得了成功&#xff0c;但它在癌症治疗方案上的准确性仍有待提高。…...

docker打包vue vite前端项目

打包vue vite 前端项目 1.打包时将测试删除 2.修改配置 3.打包项目 npm run build 显示成功&#xff08;黄的也不知道是啥&#xff09; 打包好的前端文件放入 4.配置 default.conf upstream wms-app {server 你自己的ip加端口 ;server 192.168.xx.xx:8080 ; } server { …...

2026免费在线去水印软件对比推荐|五款工具测评,快速去掉各平台水印

在日常内容创作和素材整理中&#xff0c;很多人都会遇到水印的问题。无论是从抖音、快手、小红书还是B站保存视频&#xff0c;亦或是收集网络图片素材&#xff0c;几乎所有平台的内容都会附带水印。这些水印虽然有利于版权保护&#xff0c;但对于正常的个人使用、内容再创作或学…...

【项目实训】法律文书智能摘要系统6

本开发周期内&#xff0c;团队围绕系统的核心业务能力与底层技术架构取得了重大进展。我们不仅完成了面向用户的批量处理、法规知识库等关键功能模块&#xff0c;还从底层重构了AI助手的长程记忆机制&#xff0c;并夯实了文本处理管线与用户认证体系。各项开发工作均按计划推进…...

紧急通知:Claude文档解析API响应延迟突增300%?立即启用这3个异步缓存+增量摘要策略保生产可用性

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Claude复杂文档分析工作流的稳定性危机本质 当处理百页PDF、嵌套Markdown表格、多语言混合注释及跨页公式引用的法律合同时&#xff0c;Claude模型常在推理链中出现非确定性断裂——并非简单“超时”或…...

智能驾驶系统场景下的自动化仿真测试评价技术【附仿真】

✨ 长期致力于智能驾驶系统、有效性评价、测试用例生成、测试场景优化、自动化仿真测试平台研究工作&#xff0c;擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;点击《获取方式》 &#xff08;1&#xff09;基于复杂度…...

2026年免费照片去水印软件App排行榜|去水印App推荐和评测指南

照片被水印困扰是很多用户的常见问题。无论是保存网络上的精美图片、处理工作资料&#xff0c;还是制作个人素材库&#xff0c;去水印都是一个实用的需求。本篇文章根据2026年最新的工具体验&#xff0c;为你梳理免费照片去水印软件app有哪些、各类去水印App怎么选择&#xff0…...

0602光刻机 第六篇:EUV超精密光学系统(S级 长期死磕突破)超精密反射镜技术壁垒

第2小节&#xff1a;超精密反射镜技术壁垒&#xff08;基底加工镀膜检测&#xff0c;全量化死磕&#xff09;前置硬核声明EUV整机90%的成像误差、波像差、良率波动&#xff0c;最终全部归因于超精密反射镜的制造壁垒。EUV不是“普通光学抛光”&#xff0c;是原子级表面重构、皮…...

文档分析准确率从61%跃升至98.7%的关键转折点(附2024Q2最新Claude-3.5 Sonnet文档理解基准测试对比表)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;文档分析准确率跃升至98.7%的里程碑意义 当文档智能系统在真实业务场景中将结构化识别准确率稳定提升至98.7%&#xff0c;这不仅是一个数字的突破&#xff0c;更是文档理解能力从“可用”迈向“可信”的关键分…...

如何免费获取百度文库文档:三步实现纯净打印保存的实用技巧

如何免费获取百度文库文档&#xff1a;三步实现纯净打印保存的实用技巧 【免费下载链接】baidu-wenku fetch the document for free 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wenku 你是否经常在百度文库找到完美的学习资料或工作报告&#xff0c;却因为需要…...

【Spring】 AOP 核心原理,与声明式事务传播机制

一、什么是 AOPAOP&#xff08;Aspect Oriented Programming&#xff0c;面向切面编程&#xff09;核心思想在不修改原有业务代码的情况下&#xff0c;对方法进行统一增强。例如&#xff1a;日志记录&#xff1b;权限校验&#xff1b;事务管理&#xff1b;性能统计&#xff1b;…...

国密 TLCP 实战:GmSSL / OCL / Nginx 版本选型与全部调试修改说明

本文面向发布到 CSDN&#xff0c;汇总本人在 Windows WSL2 编译、Docker 部署、CentOS 生产环境跑通 Nginx 国密 HTTPS&#xff08;TLCP&#xff09; 时使用的源码版本、目录布局&#xff0c;以及为调通而做的全部修改&#xff08;含配置、脚本、证书处理&#xff1b;不含对 N…...