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

设置LInux环境变量的方法和区别_Ubuntu/Centos

Linux环境变量可以通过export实现,也可以通过修改几个文件来实现

1 通过文件设置LInux环境变量

首先是设置全局环境变量,对所有用户都会生效

/etc/profile:该文件为系统的每个用户设置环境信息,当用户登录时,该文件被执行一次,并从/etc/profile.d目录的配置文件中搜索shell的设置,一般用于设置所有用户使用的全局变量

/etc/bashrc:当bash shell被打开时,该文件被读取,也就是说每次新打开一个终端shell,该文件就会被读取

接着是与上述两个文件对应,但是只对单个用户生效

~/.bash_profile~/.profile:只对单个用户生效,当用户登录时该文件仅执行一次,用户可以使用该文件添加自己使用的shell变量信息,另外在不同的linux操作系统下,这个文件可能是不同的,可能是~/.bash_profile~/.bash_login或者~/.profile,比如Ubuntu系统一般是~/.profile文件

~/.bashrc:只对单个用户生效,当登录以及每次打开新的shell时,该文件被读取

此外,修改/etc/environment这个文件也能实现环境变量的设置,/etc/environment设置的也是全局变量,从文件本身的作用上来说,/etc/environment设置的是整个系统的环境,而/etc/profile是设置所有用户的环境

注意:

  1. 使用source /etc/environment可以使变量设置在当前窗口立即生效,需注销/重启之后,才能对每个新的终端窗口都生效
  2. /etc/environment中不能包含命令,即直接通过VAR="…"的方式设置,不使用export

2 通过Shell命令export方式修改Linux环境变量

另外一种修改Linux环境变量的方式就是通过Shell命令export,注意变量名不要有美元 符$,赋值语句中才需要有:

export PATH=$PATH:/usr/local/hadoop/bin

在这里插入图片描述

export方式只对当前终端Shell有效,使用export设置的变量,只对当前终端Shell有效,也就是说如果新打开一个终端,那这个export设置的变量在新终端中是无法读取到的,适合设置一些临时变量

3 修改Linux环境变量实例

以Ubuntu为例,修改~/.profile

在这里插入图片描述
在最后加上代码

PATH="$PATH:/usr/local/hadoop/bin"

在这里插入图片描述
由于这个文件是在用户登录时才读取一次的,所以需要重启才会生效(修改/etc/profile/etc/environment也是如此),但也可以使用命令source ~/.profile使其立即生效

在这里插入图片描述

http://www.dtcms.com/a/267971.html

相关文章:

  • 网页怎么不使用工具截图和长图
  • 《Spring AI实战:Java智能开发速成指南》
  • D435i + ROS2
  • 利用selenium获取网页数据,脚本加载慢问题的解决办法
  • CentOS环境搭建-快速升级G++版本
  • 【CSS样式】有趣的滑块开关
  • 深入理解 classnames:React 动态类名管理的最佳实践
  • 20250706-6-Docker 快速入门(上)-镜像是什么?_笔记
  • TNNLS期刊接受后,最终版提交说明
  • QT - QCustomPlot
  • Next.js面试常问内容详解
  • 【网络安全基础】第八章---电子邮件安全
  • 5种高效解决Maven依赖冲突的方法
  • 基于SpringBoot和Leaflet集成在线天气服务的区县当前天气WebGIS实战
  • 手机电工仿真软件更新了
  • Typecho主题开发指南:现代框架布局与SEO优化实践
  • 基于SSM和JSP开发的旅游系统
  • [论文阅读] 人工智能 + 软件工程 | 自然语言驱动结构代码搜索:突破DSL学习壁垒的创新方法
  • HRDNet: High-resolution Detection Network for Small Objects论文阅读
  • 7.6 hash | rust
  • 408第三季part2 - 计算机网络 - 传输层II
  • 前端开发问题:TypeError: records is not iterable
  • Gin Web 层集成 Viper 配置文件和 Zap 日志文件指南(下)
  • Spring Cloud Alibaba/Spring Boot整合华为云存储实例(REST API方式)
  • 记一次JVM问题排查
  • 字节二面:进程,线程,协程区别
  • K8s系列之:Kubernetes 的 OLM
  • 一些共识协议与算法
  • docker 无法拉取镜像解决方法
  • 【机器学习深度学习】混淆矩阵解读