那么,Windows中的環境變量是什么?簡而言之,環境變量是描述應用程序和程序運行環境的變量。所有類型的程序都使用環境變量來回答以下問題:我安裝的計算機的名稱是什么?運行我的用戶帳戶的名稱是什么?我當前的工作目錄是什么? Windows 安裝在哪里?這臺計算機上的臨時文件存儲在哪里?此用戶帳戶的 OneDrive 文件夾在哪里?
在 Windows 中,環境變量有名稱和值。例如,變量windir(“Windows 目錄”的縮寫)的值可能是“C:\Windows”或安裝Windows 的其他路徑。
另一個標準變量名為 PATH。許多程序需要知道在哪里可以找到特定的文件,而 PATH 變量告訴它們在哪里可以找到所需的文件。這些程序會自動查找 PATH 變量,因此您不必在每次運行該應用程序時都輸入所有內容。該變量的值由許多用戶目錄組成。這些目錄是由計算機上安裝的不同應用程序設置的,并且它們因系統而異。
環境變量的概念存在于大多數操作系統中,從 Linux 到 macOS 再到 Windows。原則上,它們的含義相同,但實現和使用的方式不同。
有兩種類型的變量:特定于每個用戶帳戶的用戶變量和適用于所有用戶帳戶的系統變量。
用戶環境變量的值因用戶而異。顧名思義,它們特定于您的用戶帳戶。它們存儲特定于用戶的數據,例如用戶配置文件的位置、存儲帳戶臨時文件的文件夾或 OneDrive 文件夾的位置。該用戶帳戶可以編輯它們,但其他用戶帳戶則不能。這些變量可以由用戶、Windows 或使用用戶特定位置的不同程序創建和編輯。
系統變量是全局的,任何用戶都不能更改。它們的值對于所有用戶帳戶都是相同的。它們指的是關鍵系統資源位置,例如安裝 Windows 的文件夾或 Program Files 的位置。這些變量由 Windows、不同的程序和驅動程序設置。
有幾種不同的方法可以查看 Windows 環境變量列表。盡管非常相似,但 Windows 11 和 Windows 10 之間存在一些細微的差異,因此根據您的操作系統,請閱讀下面適用于您的子章節:
如果您使用的是 Windows 11,訪問環境變量的快速方法是使用搜索。在任務欄上的搜索框中,鍵入環境。結果顯示后,單擊或點擊“編輯系統環境變量”。
作為替代方案,您還可以使用“設置”應用程序訪問 Windows 11 的環境變量。打開它 (Windows + I),在應用程序的側欄中選擇“系統”,然后單擊或點擊右側窗格中的“關于”。然后,單擊或點擊相關鏈接旁邊的“高級系統設置”。這將打開“系統屬性”窗口,您可以在其中通過按“高級”選項卡中的同名按鈕“環境變量”來訪問環境變量。
檢查 Windows 11 環境變量的第三種簡單方法是在運行窗口 (Win + R) 中運行以下命令:
rundll32.exe sysdm.cpl,EditEnvironmentVariables
無論您決定使用哪種方法,Windows 11 都應該打開“環境變量”窗口。它分為兩部分:頂部的部分列出僅適用于您的用戶帳戶的用戶變量,而底部的部分列出由 Windows 11 計算機上的所有用戶帳戶設置和使用的系統環境變量。
提示:您是否知道您還可以在 Windows 11 和 Windows 10 中創建新的環境變量?有關詳細信息,請閱讀本指南:如何在 Windows 中創建用戶變量和系統環境變量。
在 Windows 10 中,使用任務欄上的搜索框來查找環境。然后,單擊或點擊“編輯系統環境變量”搜索結果。
或者,您可以使用“設置”應用程序訪問環境用戶和系統變量。在“設置”應用程序中,轉到“系統”并選擇左側邊欄中的“關于”。然后,單擊或點擊右側窗格中的“高級系統設置”鏈接。它會打開“系統屬性”窗口,您可以在其中按“高級”選項卡中的“環境變量”按鈕。
查看 Windows 10 環境變量的第三種方法是通過運行窗口 (Win + R)。在此窗口中,執行以下命令:
rundll32.exe sysdm.cpl,EditEnvironmentVariables
無論您選擇使用哪種方法,“環境變量”窗口現在都應該打開。在頂部,環境變量顯示您的用戶變量,在底部,它顯示系統變量,對 Windows 中的所有現有用戶帳戶有效。
提示:Windows 11 和 Windows 10 還允許您編輯環境變量。如果您想知道如何執行此操作,您應該閱讀本教程:如何在 Windows 中編輯、清除和刪除環境變量。
Windows 11 和 Windows 10 還允許您從命令行查看環境變量。如果這是您的首選方式,請啟動 Windows 終端并在其中打開 PowerShell 或命令提示符選項卡,具體取決于您喜歡哪一種。或者,如果您需要的話,只需打開 PowerShell 或命令提示符的單獨實例。無論哪種方式,一旦完成,請運行本指南下一章中的命令之一,具體取決于您打開的應用程序。
如果您喜歡命令提示符,則可以使用以下簡單命令查看環境變量:
set
該命令的輸出列出了所有環境變量,包括系統變量和用戶變量。
如果您更喜歡 PowerShell,則必須執行以下命令才能獲取 Windows 環境變量列表:
Get-ChildItem Env:
正如您所看到的,該命令依次列出了所有環境變量,就像在命令提示符中一樣。但是,PowerShell 還允許您根據您感興趣的環境變量的類型(用戶或系統變量)拆分輸出:
如果您只想查看系統變量,請使用以下命令:
[Environment]::GetEnvironmentVariables("Machine")
如果您只想列出用戶變量,請運行以下命令:
[Environment]::GetEnvironmentVariables("User")
與在命令提示符中獲得的結果相比,這些結果更簡潔,不是嗎?
變量(Variable),在編程語言中,通常是一個易于記憶的,用于存儲計算結果的概念。
在操作系統中,有一種變量,我們叫環境變量,可以在進程之間傳遞信息,而且這些環境變量我們是可以定義的。環境變量是我們使用操作系統時,非常重要的一個概念,有的軟件在安裝時,需要我們去配置改變環境變量才可以正常使用,如經典的JAVA_HOME。
Windows系統中,有兩個層次的環境變量:用戶環境變量和系統環境變量。用戶環境變量中定義的內容,只對當前登錄用戶有效,更換登錄用戶后即失效。而系統環境變量是對所有用戶都有效的。
圖形界面下,環境變量配置的入口。Windows11為設置、關于、高級系統設置。在這個系統屬性對話框中,打開“高級”標簽,我們就可以看到環境變量按鈕了。
我們點擊【環境變量…】按鈕,打開環境變量配置對話框。
從這個對話框我們可以看到,上部分是用戶環境變量,下部分是系統環境變量。
列表中就是變量名稱和值對,選中可以編輯或刪除,還可以【新增】。
對于非專業人員,我們不要輕易更改環境變量的名稱和值。這里我們來認識兩個重要的環境變量。
Path
Path的值,是以分號分割的路徑組合。當我們在命令窗口,或者開始的運行中輸入一個不帶路徑的命令時,系統首先在當前目錄下尋找命令,如果沒有找到,就會到Path指定的這些 路徑下去尋找。
所以,當你需要在運行中可以快速執行自己的命令式,只需要把命令路徑加入到Path路徑中即可。
TEMP/TMP
這是temporary的縮寫,在用戶環境變量中,指定的是用戶的臨時目錄位置;而系統環境變量中,指定的是系統臨時文件的位置。
我們可以看到,我們的臨時文件保存位置通常在”c:\users\登錄用戶名\AppData\local\temp“下面。臨時文件夾下的內容是可以隨便刪除的,尤其是在占用了大量磁盤空間的時候,有必要刪除。
在PowerShell環境下,獲取所有環境變量的命令是:
get-childitem env:
獲取某個環境變量值的方法為(如獲取系統根目錄):
get-childitem env:systemroot
在cmd命令控制臺下,獲取所有環境變量的命令是 set。
顯示某個環境變量的命令是 echo %systemroot%,變量名需要使用%包起來。
有沒有發現,有的環境變量,只有在PowerShell或命令提示符下才可以看到的?因為系統是不希望普通用戶去關系這些內容的。
對于專業人士,如運維工程師,我們經常需要使用環境變量去配置我們的腳步。比如獲取系統所在目錄,千萬不要寫死為c:\windows,而是使用systemroot這個環境變量。