如何使用 Windows CMD 環境變量


使用命令提示符 (CMD) 添加或更改環境變量很容易,但刪除環境變量要復雜得多。有幾種方法可以做到這一點。

目錄

如何添加或更改環境變量
臨時設置環境變量
永久設置環境變量
如何刪除環境變量
暫時刪除環境變量
完全刪除環境變量

如何添加或更改環境變量

首先,您需要以管理員身份啟動命令提示符或 CMD。[スタート],在搜索框中輸入“cmd”,然後單擊[管理者として実行]點擊。

筆記: 可以在常規命令提示符窗口中設置或更改用戶環境變量,但需要提升的命令提示符才能更改系統範圍的環境變量。

設置環境變量有兩種不同的方法。

臨時設置環境變量

第一個使用 set 命令。 Set 只在定義它的進程中定義環境變量。換句話說,變量僅在打開的窗口或包含它的腳本中有效。

一個例子如下所示。 假設您創建了一個名為 LifeAnswerVar 的環境變量並將值設置為 42。命令是 set LifeAnswerVar=42.

當窗口打開時,LifeAnswerVar 的值為 42。

lifevar=42 的命令提示符


關閉時會刪除環境變量及其值。

未定義 LifeAnswerVar 的新 CMD 窗口。

如果您想臨時更改現有的 Windows 系統變量,則完全相同的方法也適用。 只需將 LifeAnswerVar 替換為您要更改的系統變量,並將 42 替換為您要分配的值。

例如,要將 TMP 文件夾移動到 C:Example 文件夾,請輸入命令: set TMP=C:"Example Folder".

將 TMP 文件夾移動到示例文件夾中。

第一行, set TMP, 顯示 TMP 的當前值。 第二行為 TMP 分配一個新值。 第三行確認它已經改變。

永久設置環境變量

第二種方法使用 setx。 Setx 永久定義 Windows 環境變量。它們在 Windows 和重新啟動之間持續存在,並被寫入 Windows 註冊表。可以為特定用戶或系統範圍的使用定義這些環境變量。

命令 setx ExVar1 Tomato /m 創建了一個名為 ExVar1 的新環境變量,並將其賦值為“Tomato”。 /m 參數指定新變量適用於系統範圍,而不僅僅是當前用戶。

在命令提示符下定義的 ExVar1


使用完全相同的命令修改現有環境變量,將 ExVar1 替換為您要修改的變量的名稱。

筆記: 如果您使用 setx 更改變量並將其設置為顯示該變量的值,則 set 將不會顯示正確的值,直到打開一個新的命令提示符窗口。

添加或修改用戶環境變量時,請省略命令中的 /m 參數。

如何刪除環境變量

刪除環境變量比添加或更改它們要困難一些。

筆記: 與添加變量一樣,可以在常規命令提示符窗口中刪除用戶環境變量,但刪除系統範圍的環境變量需要提升的命令提示符。

暫時刪除環境變量

如果要臨時移除當前進程的環境變量,如腳本、PowerShell窗口、命令提示符窗口等,可以使用set命令。您不僅需要為變量賦值。

例如,如果我有一個變量定義怎麼辦 ExVar1=Tomato 它是系統範圍的環境變量,您想對特定進程忽略它嗎?您可以輸入 set ExVar1=   轉到命令提示符或在腳本中包含此行。在運行腳本或打開新的命令提示符窗口之前,該變量設置為空。

ExVar1 暫時設置為空白。

完全刪除環境變量

完全刪除環境變量有點複雜 – 你應該使用 reg 請。

溫暖的: Reg 是註冊表編輯器的命令行版本。鍵入錯誤可能會導致意外刪除重要內容。備份您正在編輯的註冊表部分也是安全的。


個人用戶的環境變量是 HKEY_CURRENT_USEREnvironment. 系統範圍的環境變量存儲在別處。 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment.

讓我們用 ExVar1=Tomato 例子。 ExVar1 環境變量在系統範圍內定義。也就是說,它將被放置在 HKEY_LOCAL_MACHINE 目錄中,而不是 HKEY_CURRENT_USER 目錄中。具體來說,子鍵的路徑是:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironmentExVar1

筆記: 路徑包含空格。只要在命令行界面中輸入的路徑包含空格,該路徑必須用引號引起來。否則,它很可能無法正常運行。

現在我們必須使用 reg delete 用命令刪除請注意,您需要在以下命令中將變量名稱替換為 ExVar1。

reg delete "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" /f /v ExVar1

它們有很多,所以讓我們將它們分開。

  • reg delete — 定義您正在使用的應用程序 (reg) 和命令 (delete)
  • "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" — 告訴 reg delete 在哪裡尋找密鑰
  • /f – 告訴 reg delete 刪除密鑰而不要求確認
  • /v – 告訴 reg delete 分配要刪除的特定子項
  • ExVar1 — 您要刪除的孩子的名字

刪除一個用戶的環境變量與刪除系統範圍的變量完全相同,只是路徑不同。 如果 ExVar1 是用戶環境變量,刪除它的命令是:

reg delete HKEY_CURRENT_USEREnvironment /f /v ExVar1

如果刪除環境變量的命令成功,命令提示符會顯示“操作成功完成”。

Reg delete 用於從用戶環境變量中刪除 ExVar1


每次刪除此類環境變量時,都必須重新啟動 explorer.exe。 您可以手動重新啟動 Explorer.exe 或重新啟動整個計算機。重新啟動後,工作和更改都會立即生效。