Linux 中的環境變數列表

在本教程中,你將學習 -

  • 什麼是變數?
  • 什麼是環境變數?
  • 訪問變數值
  • 設定新環境變數

什麼是變數?

在計算機中,變數是用於儲存值的位置,其可以是檔名、文字、數字或任何其他資料。它通常用它的字串來表示。可以顯示、刪除、編輯重寫這樣儲存的值。

變數在計算機程式設計中起著重要作用,因為它們使程式設計師能夠編寫靈活的程式。由於它們與我們所處理的作業系統相關,因此我們需要了解其中的一些以及我們如何使用它們。

什麼是環境變數?

環境變數是影響計算機上的程序或程式的動態值。它們存在於每個作業系統中,但型別可能不同。可以建立、編輯、儲存和刪除環境變數,並提供有關係統行為的資訊。

環境變數可以改變軟體/程式的行為方式。

例如,$LANG 環境變數儲存使用者理解的語言的值。該值由應用程式讀取,使得中國使用者顯示中文介面,而美國使用者顯示英語介面。

讓我們研究一些常見的環境變數 -

變數 描述
PATH 此變數包含用冒號 : 分隔的目錄列表,系統在其中查詢可執行檔案。在終端上輸入命令時,shell 會在 $ PATH 變數中提到的不同目錄中查詢該命令。如果找到該命令,則執行該命令。否則,它將返回錯誤 command not found
USER 使用者名稱
HOME 使用者主目錄的預設路徑
EDITOR 編輯檔案內容的程式的路徑
UID 使用者的唯一 ID
TERM 預設終端模擬器
SHELL 使用者正在使用的 Shell

訪問變數值

要確定變數的值,請使用該命令

echo $VARIABLE

變數是 - 區分大小寫。確保在右側字母大小寫中鍵入變數名稱,否則可能無法獲得所需的結果。

$ echo $PATH
/home/username/.local/bin:/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

env 命令顯示所有環境變數。

LS_COLORS=rs=0:di=01
SSH_CONNECTION=158.116.250.16 52806 80.240.31.244 22
LESSCLOSE=/usr/bin/lesspipe %s %s
LANG=en_US.UTF-8
XDG_SESSION_ID=38
USER=username
PWD=/home/username
HOME=/home/username
SSH_CLIENT=158.116.250.16 52806 22
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
SSH_TTY=/dev/pts/0
MAIL=/var/mail/username
TERM=xterm
SHELL=/bin/bash
SHLVL=1
LOGNAME=username
XDG_RUNTIME_DIR=/run/user/1000
PATH=/home/username/.local/bin:/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
LESSOPEN=| /usr/bin/lesspipe %s
_=/usr/bin/env

設定新環境變數

你可以使用語法建立自己的使用者定義變數

VARIABLE_NAME=variable_value

請注意變數是區分大小寫的,通常變數的名稱是大寫,而且賦值的時候 = 兩端不要有空格,否則會報錯。

刪除變數

可以使用以下語法從系統中刪除變數。

unset variablename

這將永久刪除變數及其數值。

總結:

  • 環境變數控制作業系統中程式的行為。
命令 說明
echo $VARIABLE 顯示變數的值
echo $PATH 顯示所有環境變數
VARIABLE_NAME=value 建立一個新變數
unset 刪除變數
export Variable=value 設定環境變數的值