Linux 系统修改环境变量的方法

news/2025/2/11 21:49:29/

1. Linux 系统修改环境变量

正常情况下改变环境变量可以修改的文件有两类:
第一类是 “系统的全局环境变量”,修改之后可作用于整个系统包含的所有用户都会生效;(文件:/etc/profile)

第二类是 “局部环境变量”,也就是每个用户独有的一份环境变量,修改后仅对当前用户生效,每个用户之间相互独立;(文件:/home/<username>/.bashrc)

1.1. 几个常见的环境变量

PATH:包含可执行程序的绝对路径
HISTSIZE:保存历史命令的记录条数
SHELL:当前所使用的 shell 类型
HOME:指定用户的主工作目录

1.2. 常见修改环境变量方法

一般修改环境变量几乎是添加一些程序的运行目录或者环境变量值,下面是几个常用的几个添加环境变量的用法:

添加临时的环境变量

# 使用 export 命令可设置临时的环境变量,仅作用于当前 shell (即当前窗口)export <环境变量名> = <路径>

清除环境变量

unset <环境变量名>

在这里插入图片描述

添加永久的环境变量
修改 /etc/.bashrc 文件或者 /etc/porfile 文件:

# 一般在文件末尾处添加# 追加可执行程序路径,系统查找时会在 $PATH 包含的路径中查找
export PATH=<路径>:$PATH# 添加环境变量
export <环境变量名>=<路径>

修改完成保存退出后,需要执行 source 命令使其生效:

# 若修改的文件是 /etc/profile,则执行
source /etc/profile# 若修改的是其它文件,则对应 source 其它文件即可生效

2. 修改环境变量可能会遇到的几个问题

当修改完 .bashrc 文件后,执行 source 命令使其生效时,可能会遇到如下错误。

2.1. command not found: shopt…command not found: complete…

这样类似的错误原因是由于并未修改对应的 shell 环境变量配置文件所导致的,其中文的错误信息如下:

┌──(imaginemiracle㉿Kali-IM)-[~]
└─$ source .bashrc
找不到命令 “shopt”,您的意思是:“shout” 命令来自 Debian 软件包 libshout-tools
尝试 sudo apt install <deb name>
找不到命令 “shopt”,您的意思是:“shout” 命令来自 Debian 软件包 libshout-tools
尝试 sudo apt install <deb name>
找不到命令 “shopt”,您的意思是:“shout” 命令来自 Debian 软件包 libshout-tools
尝试 sudo apt install <deb name>
找不到命令 “shopt”,您的意思是:“shout” 命令来自 Debian 软件包 libshout-tools
尝试 sudo apt install <deb name>
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
complete:未找到命令
/usr/share/bash-completion/bash_completion:1596: parse error near `|'\[\e]0;\u@\h: \w\a\]\[\033[;32m\]┌──(\[\033[1;34m\]\u㉿\h\[\033[;32m\])-[\[\033[0;1m\]\w\[\033[;32m\]]\n\[\033[;32m\]└─\[\033[1;34m\]$\[\033[0m\] 

在这里插入图片描述

2.2. 解决 command not found: shopt 报错问题

上文提到出现该错误的原因是由于没有修改正确对应的配置文件所导致的。下面看看如何知道正确的配置文件。

2.2.1. 查看当前系统的 shell

查看系统当前所有的 shell

cat /etc/shells


查看正在使用的 shell

echo &SHELL

在这里插入图片描述

2.2.2. 修改对应 shell 的配置文件

这里看到笔者系统使用的是 zsh,那么其对应的配置文件应该是 .zshrc

在这里插入图片描述
那么修改 .zshrc 并执行 source 就不会出现任何报错信息了。

#完


http://www.ppmy.cn/news/71741.html

相关文章

【HTTPS加密】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔&#x1f93a;&#x1f93a;&#x1f93a; 目录 1.HTTPS 是什么 1.1 运营商劫持 1.2 关于加密…

网络安全自学误区

一、怎么入门&#xff1f; 如果你把每周要学的内容精细化到这种程度&#xff0c;你还会担心学不会&#xff0c;入不了门吗&#xff0c;其实说到底就是学了两个月&#xff0c;但都是东学一下&#xff0c;西学一下&#xff0c;什么内容都是浅尝辄止&#xff0c;没有深入进去&…

java依赖注入

依赖注入是一种设计模式&#xff0c;它允许我们将依赖项从一个对象传递到另一个对象&#xff0c;从而使代码更加灵活和可测试。在 Java 中&#xff0c;通常使用依赖注入容器来管理对象之间的依赖关系。 下面是一个简单的例子来说明依赖注入在 Java 中的用法&#xff1a; 假设…

Python程序员职业现状分析,想提高竞争力,就要做到这六点

现今程序员群体数量已经高达几百万&#xff0c;学历和收入双高&#xff0c;月薪普遍过万。今天&#xff0c;我们就围绕90后程序员人群分析、职业现状、Python程序员分析等&#xff0c;进行较为全面的报告分析和观点论述。 一、程序员人群分析 人数规模上&#xff1a;截当前程…

传输时延和传播时延(补充:频段,信道带宽,数据速率的区别,以及帧大小和帧长)

先来看例题&#xff0c;看是否能区分 例题1&#xff1a; 在相隔400km的两地间通过电缆以4800b/s的速率传送3000比特长的数据包&#xff0c;从开始发送到接收完数据需要的时间是(13)。 (13)A.480ms B.607ms C.612ms D.627ms 【答案】D 【解析】 一个数据包从开始发送到接收…

ChatGPT与深度学习的完美融合:打造智能化推荐系统新时代

PNN | AutoRec | 推荐算法 NFM | ChatGPT | 深度学习 新技术如ChatGPT、LLM、AIGC等的兴起&#xff0c;使推荐系统拥有更强的学习和预测能力。然而&#xff0c;推荐算法仍然是深度学习推荐系统中不可或缺的关键技术。推荐算法和这些技术应相辅相成&#xff0c;相互补充。推荐…

Spring 5 笔记 - 新功能

1. Spring 5 框架新功能 整个Spring 5 框架的代码基于Java8&#xff0c;运行时兼容JDK9&#xff0c;许多不建议使用的类和方法在代码库中删除。Spring 5.0 框架自带了通用的日志封装 &#xff08;1&#xff09;Spring 5 已经移除 Log4jConfigListener&#xff0c;官方建议使用…

IMX6ULL裸机篇之DDR3初始化

一. DDR3L初始化简介 I.MX6U-ALPHA 开发板上带有一个 256MB/512MB 的 DDR3 内存芯片&#xff0c;16 位宽&#xff0c;型号为 NT5CC128M16JR/MT5CC256M16EP&#xff0c;nanya 公司出品的&#xff0c;分为对应 256MB 和 512MB 容量。 我自己用的开发板上 DDR3L内存芯片型号为…