世界快看:設置及查看Linux的環境變量詳細教程

2022-12-22 16:13:38 來源:51CTO博客

Linux 操作系統廣泛用于服務器,以承載復雜的應用程序,這些應用程序具有非常具體的系統設置。當您啟動一個新的 Linux shell 會話時,會讀取某個系統配置并相應地設置您的計算機。這些配置和設置由環境變量控制。

我們將了解如何在 Linux 系統中列出和設置環境變量。

目錄


(資料圖片)

先決條件Linux中的環境變量是什么列出當前環境變量設置環境變量設置環境變量持久化取消設置環境變量結論

?主要分享低代碼、微服務、容器化、SAAS?、系統架構方面的的?內容??,希望?大家?點贊?,評論,關注?。

先決條件

具有終端訪問權限的 Linux 計算機。熟悉 Linux 命令行界面。

Linux中的環境變量是什么

Linux 操作系統支持兩種類型的變量——環境變量和 shell 變量。這些變量會影響您的應用程序和程序的工作方式。

環境變量是影響整個系統的系統范圍的變量。它們被所有 shell 和衍生的子進程使用,并且在命令行和 GUI 上都可用。Linux 環境變量是為程序和進程提供必要信息的動態系統值。這些變量控制默認 Web 瀏覽器、默認文件編輯器或默認文本編輯器、可執行文件、鍵盤布局設置、目錄路徑和系統區域設置等內容。基本上,這些是具有分配給它們的值的名稱。例如,我們使用 JAVA_HOME 變量來設置安裝 JDK 或 JRE 的目錄位置。

Shell 變量是特定 shell 實例的本機變量,僅影響 shell 函數。每個 Linux 操作系統 shell,例如 Bash 和 Korn,都有自己的內部 shell 變量。這有助于跟蹤當前會話中的數據——主要用于交互式 shell 會話或將變量保持在本地的腳本。Bash 特定變量通常以 BASH_ 為前綴,例如 BASH_VERSION。

環境變量和 shell 變量具有相同的格式:

VAR_NAME=value

在使用 shell 和環境變量時,您必須牢記以下變量要求:

按照慣例,變量名總是大寫的,例如 PATH。區分大小寫 - 可以使用小寫字母。= 符號前后不應有空格。始終用冒號 (:) 分隔多個值,例如 value1:value2:value3。

下表列出了一些最常見的環境變量。

變量的名稱

描述

PATH

Linux 在執行命令時搜索的以冒號分隔的目錄列表。

USER

當前登錄用戶的用戶名。

HOME

當前用戶的主目錄。

UID

當前用戶的唯一標識符。

EDITOR

用于編輯文件的默認編輯器。

SHELL

當前用戶的 shell 的名稱。

TERM

當前終端仿真。

PWD

當前工作目錄。

TEMP

臨時目錄的路徑。

其中一些變量的值在每臺 Linux 計算機上可能不同。

列出當前環境變量

Linux 有幾個變量,了解它們的值非常重要,因為它們會影響系統的行為。有幾個命令可用于列出 Linux 中的環境變量。

要打印所有環境變量的列表,請鍵入:

printenv

您還可以使用 env 命令列出所有 Linux 變量:

env

變量列表可能很長,因此難以閱讀。您可以將 more 或 less 命令與 printenv 命令一起使用,一次一屏地列出環境變量:

printenv | more

上述所有命令一次列出多個變量。要查找有關指定變量的信息,請使用以下命令:

printenv HOME

此命令打印用戶的主目錄。

您也可以使用 echo 命令打印環境變量值。以下示例打印 PATH 環境變量的值:

echo $PATH

PATH 變量有多個值,它們用冒號分隔。

設置環境變量

Linux 提供了兩種設置環境變量的方法。可以先設置一個shell變量,然后將shell變量導出為環境變量,第二種方式是直接導出環境變量。

要為當前 shell 會話創建新的環境變量并設置它們的值,請使用以下命令:

MYVAR=foo

此時,僅為 shell 創建新的環境變量。您可以使用 echo 命令確認是否設置了變量。此變量不是環境變量,如果您使用 printenv 命令,其輸出將為空:

printenv MYVAR

現在我們可以使用 export 命令將此 shell 變量轉換為單個環境變量:

export MYVAR

現在 MYVAR 是一個環境變量,這會影響當前 shell 以及從當前 shell 啟動的所有進程。

您不必總是遵循這個漫長的過程來設置環境變量。您可以在單個命令中直接導出環境變量:

export MYENV=bar

您必須注意,通過這些命令設置的變量僅適用于當前會話。一旦關閉會話,這些變量就會丟失。要永久設置環境變量,您必須使用文本編輯器編輯 /etc/profile.d 目錄、~/.bashrc、/etc/environment 或 /etc/profile 文件。

設置環境變量持久化

持久意味著當您關閉 shell 會話或重新啟動時,您不需要重置環境變量的值。如果您希望環境變量可用于所有 shell 會話,甚至跨用戶,那么您必須在配置文件中添加環境變量。

使用/etc/environment文件為命令行和圖形界面添加整個系統(即所有用戶、所有進程)都可用的環境變量。該文件只接受 VAR_NAME="value" 格式的變量,不要使用導出。例如,使用您喜歡的編輯器打開 /etc/environment 文件,并使用以下格式添加環境變量:

VARIABLE_NAME=value

設置從當前用戶注銷并再次登錄以進行更改后。

使用/etc/profile配置文件設置在啟動登錄 shell 時為所有用戶自動加載的環境變量。使用 export 命令在用戶配置文件中聲明環境變量,如下所示:

export PATH=$PATH:/place/with/the/file

在~/.bashrc文件或~/.profile文件中設置一個用戶特定的環境變量,使用如下:

export JAVA_HOME=/opt/jdk/11export PATH="$JAVA_HOME/bin:$PATH"

運行source ~/.bashrcbash shell 命令以加載當前 shell 會話中的環境變量。

取消設置環境變量

使用 unset 命令取消設置或刪除變量。

unset NAME

unset 命令刪除使用終端命令導出的變量。但是,您存儲在配置文件中的變量只會從當前 shell 會話中刪除。當您創建一個新的終端會話時,它們會自動重新設置。

您可以通過從配置文件中刪除變量來從 Linux 計算機中永久刪除變量。

結論

我們學習了如何在 Linux 中列出和創建環境變量。我們還看到了如何通過編輯 bash 配置文件使變量在重啟后保持不變。

環境變量是設置常用值的好方法,只需使用變量而不是一次又一次地手動輸入值。本教程中列出的常用環境變量可用于場景 Linux 發行版,例如 Ubuntu、Debian、Redhat 。

主要分享低代碼、微服務、容器化、SAAS?、系統架構方面的的?內容??,希望?大家?點贊?,評論,關注?。

標簽: 環境變量 設置環境變量 配置文件

上一篇:SpringBoot入門三十一,多數據源的使用
下一篇:#yyds干貨盤點# react筆記之學習之完成刪除功能