命令在Xshell中的运行结果截图在这里插入图片描述
在这里插入图片描述

一、什么是环境变量
1.环境变量是操作系统在内存中存储的一组“键值对”(名称=值),用于记录系统和用户的工作环境信息。任何程序或脚本都可以随时读取这些变量,从而实现灵活配置。例如,HOME变量记录了当前用户的家目录,PATH变量定义了命令的搜索路径。
2.环境变量的最大优势是数据持久且访问快速,它让程序无需硬编码路径或配置,而是通过变量名动态获取所需信息。
二、全局变量与局部变量的区别
1.全局环境变量:对当前Shell及其启动的所有子Shell均可见。通常系统预设的变量(如HOME、PATH)都是全局的。
2.局部环境变量:只在定义它的那个Shell进程中有效,子Shell无法继承。用户自己创建的变量默认属于局部变量。
3.查看方式:
查看全部全局变量可用 env 或 printenv。
查看所有变量(含局部)可用 set。
查看单个变量值可用 echo 变量名。三、用户自定义变量的创建、修改与删除1.创建局部变量:直接使用变量名=值的格式,注意等号两边不能有空格。若值包含空格,需用引号括起来。2.升级为全局变量:通过export变量名将局部变量导出为全局,使其对子Shell可见。3.修改变量值:重新赋值即可,新值会覆盖旧值。4.删除变量:使用unset变量名,注意引用变量时用变量名。 三、用户自定义变量的创建、修改与删除 1.创建局部变量:直接使用 变量名=值 的格式,注意等号两边不能有空格。若值包含空格,需用引号括起来。 2.升级为全局变量:通过 export 变量名 将局部变量导出为全局,使其对子Shell可见。 3.修改变量值:重新赋值即可,新值会覆盖旧值。 4.删除变量:使用 unset 变量名,注意引用变量时用变量名。三、用户自定义变量的创建、修改与删除1.创建局部变量:直接使用变量名=值的格式,注意等号两边不能有空格。若值包含空格,需用引号括起来。2.升级为全局变量:通过export变量名将局部变量导出为全局,使其对子Shell可见。3.修改变量值:重新赋值即可,新值会覆盖旧值。4.删除变量:使用unset变量名,注意引用变量时用,操作变量时不用。注意事项:用户自定义的变量仅在当前Shell会话中有效,退出或重启Shell后会丢失。若希望永久生效,需将export命令写入启动文件(如 /.bashrc),并通过source命令立即加载。四、PATH环境变量的作用与设置1.PATH是一个特殊的全局变量,它定义了Shell在输入命令时去哪些目录查找可执行程序。目录之间用冒号(:)分隔。系统默认已包含/usr/bin等常用目录,因此大多数命令可以直接输入名称执行。2.若用户自己安装的程序位于其他目录,想直接通过名称调用,有两种方式:每次输入完整路径(如/opt/myapp/bin/程序)。3.将程序所在目录追加到PATH中:exportPATH=。 注意事项:用户自定义的变量仅在当前Shell会话中有效,退出或重启Shell后会丢失。若希望永久生效,需将 export 命令写入启动文件(如 ~/.bashrc),并通过 source 命令立即加载。 四、PATH环境变量的作用与设置 1.PATH 是一个特殊的全局变量,它定义了Shell在输入命令时去哪些目录查找可执行程序。目录之间用冒号(:)分隔。 系统默认已包含 /usr/bin 等常用目录,因此大多数命令可以直接输入名称执行。 2.若用户自己安装的程序位于其他目录,想直接通过名称调用,有两种方式: 每次输入完整路径(如 /opt/myapp/bin/程序)。 3.将程序所在目录追加到 PATH 中:export PATH=。注意事项:用户自定义的变量仅在当前Shell会话中有效,退出或重启Shell后会丢失。若希望永久生效,需将export命令写入启动文件(如 /.bashrc),并通过source命令立即加载。四、PATH环境变量的作用与设置1.PATH是一个特殊的全局变量,它定义了Shell在输入命令时去哪些目录查找可执行程序。目录之间用冒号(:)分隔。系统默认已包含/usr/bin等常用目录,因此大多数命令可以直接输入名称执行。2.若用户自己安装的程序位于其他目录,想直接通过名称调用,有两种方式:每次输入完整路径(如/opt/myapp/bin/程序)。3.将程序所在目录追加到PATH中:exportPATH=PATH:新目录。这样便可在任意位置直接输入程序名。
4.同样,这种修改仅在当前会话有效,若需永久生效,也应写入 ~/.bashrc。
五、系统环境变量的配置文件
1.Linux启动一个登录Shell时,会依次读取多个启动文件来初始化环境:
(1)系统级文件:/etc/profile,所有用户登录时都会执行。
(2)用户级文件(按顺序查找,只执行最先存在的):
~/.bash_profile
~/.bash_login
~/.profile
每次打开新Shell(非登录)都会执行:~/.bashrc,这也是最常用的用户自定义环境变量存放位置。
这些文件让每个用户可以定制自己专属的环境,而系统级文件则为所有用户提供公共基础设置。
六、数组变量
Bash支持一维数组,能够在一个变量中存储多个值。数组用括号定义,元素以空格分隔,索引从0开始。
1.定义:数组名=(值1 值2 值3 …)
2.引用单个元素:数组名[索引]3.引用全部元素:{数组名[索引]} 3.引用全部元素:数组名[索引]3.引用全部元素:{数组名[*]}
4.修改元素:直接对指定索引赋值。
5.删除元素或整个数组:使用 unset 命令。
数组为批量数据管理提供了便利,但需注意删除某个索引后,该位置会被留空,索引顺序不会自动重排。
七、知识框架体系
Linux环境变量
├── 基本概念(键值对、内存存储、快速访问)
├── 分类
│ ├── 全局变量(所有Shell可见)
│ └── 局部变量(仅当前Shell可见)
├── 操作与管理
│ ├── 创建(局部→export→全局)
│ ├── 修改(直接赋值)
│ ├── 删除(unset)
│ └── 持久化(写入 ~/.bashrc + source)
├── PATH变量(命令搜索路径,追加方式修改,可持久化)
├── 启动文件(系统级 /etc/profile,用户级 ~/.bashrc 等)
└── 数组变量(多值存储,索引访问,删除操作)

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐