Skip to content

环境变量分类

在 Linux 系统中,环境变量可以分为三类:

  • 全局环境变量(系统变量)
  • 用户环境变量(用户变量)
  • 以及当前 Shell 进程的临时变量

让我们分别介绍它们的概念和使用方法。

1. 系统变量(全局环境变量)

系统变量是对整个系统(所有用户)可见的变量,通常由系统管理员设置。这些变量对所有用户和进程都有效。

在 Linux 中,系统变量通常存储在 /etc/environment 文件中,或者在 /etc/profile 文件和 /etc/profile.d/ 目录下的脚本中设置。它们可以包括系统范围内需要的路径、库路径等信息。

2. 用户变量(用户环境变量)

用户变量是每个用户可以自定义的变量,它们只对当前用户有效,不影响其他用户的环境。这些变量通常在用户的登录配置文件(如 .bashrc, .profile, .bash_profile 等)中设置。

例如,在 Bash Shell 中,可以使用以下方式定义和设置用户变量:

  • 在 .bashrc 文件中添加:

    sh
    export MY_VAR="my_value"
  • 然后使用 source 命令使其立即生效:

    sh
    source ~/.bashrc

用户变量通常用于存储用户个性化的路径、自定义命令别名、默认编辑器等设置。

3. 当前 Shell 进程的临时变量

当前 Shell 进程的临时变量只在当前 Shell 会话中有效,当会话结束时这些变量也会被销毁。这些变量通常通过命令行直接设置,例如:

sh
TEMP_VAR="temporary_value"

这样设置的变量只在当前 Shell 中有效,并不会影响其他 Shell 会话或用户的环境。

查看和管理环境变量

  • 查看环境变量:使用 env 命令可以列出当前 Shell 的所有环境变量。

    sh
    env

    或者使用 printenv 命令:

    sh
    printenv
  • 设置环境变量:可以使用 export 命令来设置环境变量,例如:

    sh
    export PATH=$PATH:/new/directory
  • 永久性设置:为了永久保存环境变量的设置,可以将其添加到用户的配置文件中,如 .bashrc.profile 文件,并使用 source 命令使其立即生效。

Linux 环境变量的灵活性和可配置性使其成为管理系统和用户环境的重要工具,可以根据需要灵活调整和配置