返回

变量无处不在,在Linux基础里也是同样重要:Path是个变量名

后端

理解 Linux 环境变量:基础概念和操作

什么是环境变量?

环境变量就像系统环境中的仓库,存储着各种变量,这些变量在不同的操作系统环境中可能有不同的值。就像在 Windows 系统中,变量名 "USERNAME" 输出 "Administrator",而在 Linux 系统中,则输出 "root"。环境变量是系统运行的基础,在许多操作中都扮演着至关重要的角色。

Linux 环境变量的定义

Linux 环境变量本质上就是可以赋值的字符串,内容可以是数字、文本甚至文件名。值得注意的是,环境变量不能为空值,因为空值不是变量,我们称之为空字符串。有趣的是,环境变量的赋值范围没有限制,理论上,只要内存足够,你可以将整个《哈利·波特》系列装进一个环境变量中。

PATH:环境变量的容器

环境变量可以保存在名为 PATH 的变量中。PATH 不是环境变量本身,而是一个存储和管理环境变量的容器。将其视为一个篮子,环境变量就是其中的鸡蛋,方便系统运行时调用和使用。

不过,并不是 PATH 中的所有内容都是环境变量。只有以冒号 ":" 分隔的才是环境变量。例如,如果 PATH 的值为 "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/games:/usr/local/games",那么 "/usr/local/bin", "/usr/bin", "/bin" 等才是环境变量,而冒号的作用就是将它们分隔开来,以便系统识别和使用。

查看和设置环境变量

要查看当前环境变量的设置,可以使用 "env" 命令。它会打印出所有环境变量及其值。

设置或修改环境变量则需要使用 "export" 命令,后跟环境变量名和值。例如,要将 "LANG" 环境变量设置为 "en_US.UTF-8",可在终端中输入 "export LANG=en_US.UTF-8"。

环境变量的应用

环境变量在 Linux 系统中无处不在,发挥着重要作用。例如,输入命令时,系统会通过 PATH 查找命令的具体位置。切换目录时,系统也会通过 PATH 查找目录位置。

深入了解

要深入了解 Linux 环境变量,可以参考以下资源:

常见问题解答

  1. 什么是空字符串?

空字符串是一个空的环境变量值。它不是一个变量,因为它没有实际内容。

  1. 为什么 PATH 中只有以冒号分隔的内容才是环境变量?

冒号的作用是将 PATH 值中的不同路径分隔开来,以便系统可以识别和使用它们。

  1. 如何删除环境变量?

使用 "unset" 命令可以删除环境变量。例如,要删除 "LANG" 环境变量,可输入 "unset LANG"。

  1. 环境变量是否对所有用户可用?

否,环境变量可以是全局的,对所有用户可用,也可以是本地的,仅对当前用户可用。全局环境变量存储在 "/etc/environment" 文件中,而本地环境变量存储在用户的主目录中的 ".bashrc" 文件中。

  1. 环境变量与命令行参数有什么区别?

命令行参数是传递给程序的特定于该程序的变量,而环境变量是系统范围内的变量,适用于所有程序。