如何使用 Windows CMD 環境變量
已發表: 2022-06-28使用命令提示符 (CMD) 添加或修改環境變量很容易,但刪除環境變量要復雜得多。 這裡有幾種不同的方法可以做到這一點。
如何添加或修改環境變量
臨時設置環境變量
永久設置環境變量
如何刪除環境變量
臨時刪除環境變量
永久刪除環境變量
如何添加或修改環境變量
首先,您需要以管理員身份啟動命令提示符或 CMD。 單擊開始,在搜索框中鍵入“cmd”,然後單擊“以管理員身份運行”。
注意:可以在常規命令提示符窗口中設置或修改任何用戶環境變量,但更改系統範圍的環境變量需要提升的命令提示符。
設置環境變量有兩種不同的方法。
臨時設置環境變量
第一個使用 set 命令。 Set 僅在定義它的進程中定義環境變量——換句話說,該變量僅在您打開的窗口或包含它的腳本中有效。
下面是一個示例:假設您要創建一個名為 LifeAnswerVar 的環境變量並將值設置為 42。命令將set LifeAnswerVar=42
。
當該窗口打開時,LifeAnswerVar 的值為 42。
當它關閉時,環境變量及其值將被刪除。
如果您想臨時修改現有的 Windows 系統變量,完全相同的方法也適用。 您需要做的就是用您要更改的系統變量代替 LifeAnswerVar,並用您要分配的值代替 42。
例如,如果您想將 TMP 文件夾移動到 C:\Example Folder,您需要輸入命令set TMP=C:\"Example Folder"
。
第一行set TMP
顯示了 TMP 的當前值。 第二行為 TMP 分配了一個新值。 第三行確認它已經改變。
永久設置環境變量
第二種方式使用 setx。 Setx 永久定義 Windows 環境變量。 它們在窗口之間和重新啟動之間持續存在,並被寫入 Windows 註冊表。 這些環境變量可以為特定用戶定義,也可以為系統範圍的使用定義。
命令setx ExVar1 Tomato /m
將創建一個名為 ExVar1 的新環境變量並將值“Tomato”分配給它。 /m 參數指定新變量應該是系統範圍的,而不僅僅是當前用戶。
使用完全相同的命令修改現有環境變量,將 ExVar1 替換為您要更改的變量的名稱。
注意:如果您使用 setx 修改變量並設置查看變量的值,set 將不會顯示正確的值,直到打開一個新的命令提示符窗口。
如果要添加或修改用戶環境變量,只需從命令中省略 /m 參數。
如何刪除環境變量
刪除環境變量比添加或修改環境變量要困難一些。
注意:與添加變量一樣,可以在常規命令提示符窗口中刪除任何用戶環境變量,但刪除系統範圍的環境變量需要提升的命令提示符。
臨時刪除環境變量
如果要臨時刪除當前進程的環境變量,例如腳本、PowerShell 窗口或命令提示符窗口,可以使用 set 命令。 您需要做的就是不為變量賦值。
例如,如果您在系統範圍的環境變量中有變量定義ExVar1=Tomato
,但想在某個特定進程中忽略它,該怎麼辦? 您可以在命令提示符中鍵入set ExVar1=
或在腳本中包含該行。 在腳本執行或打開新的命令提示符窗口之前,該變量將設置為空。
永久刪除環境變量
永久刪除環境變量有點複雜——你必須使用reg
來完成。
警告: Reg 是註冊表編輯器的命令行版本。 你應該謹慎行事——一個錯字可能會導致你不小心刪除了一些重要的東西。 備份您正在編輯的註冊表部分也沒有什麼壞處。
各個用戶的環境變量存儲在HKEY_CURRENT_USER\Environment
中。 系統範圍的環境變量存儲在其他地方,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
中。
讓我們使用ExVar1=Tomato
示例。 ExVar1 環境變量是在系統範圍內定義的,這意味著它位於 HKEY_LOCAL_MACHINE 目錄而不是 HKEY_CURRENT_USER 目錄中。 具體來說,子鍵的路徑是:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\ExVar1
注意:此路徑包含一個空格。 任何時候在命令行界面中輸入的路徑中有空格,必須在路徑兩邊加上引號,否則極有可能無法正確執行。
現在我們需要使用reg delete
命令來刪除它。 請記住,您需要在下面的命令中將變量名替換為 ExVar1。
reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\" /f /v ExVar1
那裡有很多,所以讓我們分解一下。
- reg delete — 定義我們正在使用的應用程序 (reg) 和命令 (delete)
-
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\"
— 告訴 reg delete 在哪裡查找密鑰 - /f - 告訴 reg delete 刪除密鑰而不提示確認
- /v - 告訴 reg delete 它將被賦予一個特定的子鍵來刪除
- ExVar1 — 我們要刪除的子項的名稱
刪除單個用戶的環境變量與刪除系統範圍的變量完全相同,只是路徑不同。 如果 ExVar1 是用戶環境變量,刪除它的命令是:
reg delete HKEY_CURRENT_USER\Environment /f /v ExVar1
如果刪除環境變量的命令成功,您應該在命令提示符中看到“操作成功完成”。
任何時候刪除這樣的環境變量,都需要重新啟動 explorer.exe。 您可以手動重新啟動 Explorer.exe,也可以只重新啟動整個計算機。 兩者都可以,並且更改應在重新啟動後立即生效。