设置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,注意变量名不要有美元 符$,赋值语句中才需要有:

python 复制代码
export PATH=$PATH:/usr/local/hadoop/bin

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

3 修改Linux环境变量实例

以Ubuntu为例,修改~/.profile

在最后加上代码

python 复制代码
PATH="$PATH:/usr/local/hadoop/bin"

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

相关推荐
Johny_Zhao3 小时前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
小毛驴8503 小时前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
一心0924 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上4 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
tan180°5 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
典学长编程6 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9986 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
DuelCode6 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
snoopyfly~8 小时前
Ubuntu 24.04 LTS 服务器配置:安装 JDK、Nginx、Redis。
java·服务器·ubuntu
独行soc9 小时前
#渗透测试#批量漏洞挖掘#HSC Mailinspector 任意文件读取漏洞(CVE-2024-34470)
linux·科技·安全·网络安全·面试·渗透测试