📅  最后修改于: 2023-12-03 15:24:16.462000             🧑  作者: Mango
在 Linux 中,环境变量是一个极其重要的概念。它是用于在 shell 中传递信息的一种机制,也是许多应用程序所依赖的基础。本文将介绍如何在 Linux 的 shell 中设置和管理环境变量。
环境变量是在 shell 进程中定义的、存储系统状态信息和运行过程数据的一种特殊变量。环境变量可用于控制 shell 进程的行为、指定系统和用户配置信息等,也可用于应用程序中。每个环境变量由一个名称和一个值组成。
在 Linux 中,环境变量可以通过以下命令查看:
$ env
输出结果类似于:
SHELL=/bin/bash
USER=username
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
HOME=/home/username
在上面的输出结果中,SHELL、USER、PATH、HOME 等就是环境变量的名称。而“=/bin/bash”、“=username”、“=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin”、“=/home/username” 则是环境变量的值。
要查看某个特定的环境变量,可以使用以下命令:
$ echo $<变量名>
其中<变量名>是环境变量的名称,例如:
$ echo $HOME
/home/username
这将输出环境变量 $HOME 的值。如果要查看所有的环境变量,可以使用 env 命令:
$ env
临时设置环境变量的方法如下所示:
$ export <变量名>=<变量值>
例如,要设置一个名为 $MY_VAR 的环境变量,其值为“hello”:
$ export MY_VAR=hello
$ echo $MY_VAR
hello
这个变量只在当前 shell 中有效。如果要在其他的 shell 中使用该变量,需要再次设置。
修改 ~/.bashrc 或 ~/.profile 文件,添加以下代码:
export <变量名>=<变量值>
例如:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
其中 ~/.bashrc 是针对每个 shell 会话,而 ~/.profile 是针对每个用户。修改这些文件后,需执行以下命令以使其生效:
$ source ~/.bashrc
或
$ source ~/.profile
如果想在系统中全局的设置环境变量,则需要修改 /etc/environment 文件。
$ sudo nano /etc/environment
在文件中添加如下内容:
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
退出并保存该文件后,执行以下命令以使其生效:
$ source /etc/environment
要删除一个环境变量,可以使用以下命令:
$ unset <变量名>
例如:
$ unset MY_VAR
这将从环境变量中删除变量 $MY_VAR。
本文介绍了在 Linux 中如何设置和管理环境变量。要设置临时环境变量,使用 export 命令;要设置永久的环境变量,可以修改 .bashrc、.profile 或 /etc/environment 文件;要查看环境变量,使用 echo 命令。要删除环境变量,使用 unset 命令。