差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 | ||
windowsbatch:edit_env_variable [2013/09/12 16:45] tony |
windowsbatch:edit_env_variable [2023/06/25 09:48] (目前版本) |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | {{tag>WindowsBatch}} | ||
====== 修改環境變數 ====== | ====== 修改環境變數 ====== | ||
===== Introduction ===== | ===== Introduction ===== | ||
行 4: | 行 5: | ||
===== Methods ===== | ===== Methods ===== | ||
==== registry ==== | ==== registry ==== | ||
- | 目前使用者環境變數修改HKEY_CURRENT_USER/Environment;系統環境變數修改KEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Environment。 | + | 輸入regedit打開註冊檔編輯器。修改目前使用者環境變數: |
+ | <code> | ||
+ | HKEY_CURRENT_USER\Environment | ||
+ | </code> | ||
+ | 修改系統環境變數: | ||
+ | <code> | ||
+ | KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment | ||
+ | </code> | ||
+ | Command line: | ||
+ | <code bash> | ||
+ | REM 設定環境變數TEST為%PATH%的內容 | ||
+ | reg add "HKEY_CURRENT_USER/Environment" /v TEST /t REG_EXPAND_SZ /d "%PATH%" /f | ||
+ | REM 設定環境變數TEST為%PATH% | ||
+ | reg add "HKEY_CURRENT_USER/Environment" /v TEST /t REG_EXPAND_SZ /d ^%PATH^% /f | ||
+ | REM 刪除環境變數TEST | ||
+ | reg delete "HKEY_CURRENT_USER/Environment" /v TEST /f | ||
+ | </code> | ||
+ | 修改後不會立即生效。 | ||
==== setx.exe ==== | ==== setx.exe ==== | ||
微軟提供修改環境變數的程式。可以直接參考命令說明: [[http://technet.microsoft.com/en-us/library/cc755104(v=ws.10).aspx|link]]。修改完後效果與直接修改系統>進階系統設定>系統環境變數的效果相同。 | 微軟提供修改環境變數的程式。可以直接參考命令說明: [[http://technet.microsoft.com/en-us/library/cc755104(v=ws.10).aspx|link]]。修改完後效果與直接修改系統>進階系統設定>系統環境變數的效果相同。 | ||
==== wmic ==== | ==== wmic ==== | ||
- | 操作WMI介面的Command line工具。根據網路上人家所說使用這個方法可以讓各個正在執行的程式立即取到最新的環境變數,但經過我測試是不行的,除非也是透過wmi去取得環境變數內容。 | + | 操作WMI介面的Command line工具。根據網路上人家所說使用這個方法可以讓各個正在執行的程式立即取到最新的環境變數,但經過我測試僅WinXP可以,其餘是不行的,除非也是透過wmi去取得環境變數內容。(測試過XP, 2003, 2008, Win7, 2012) |
=== Create === | === Create === | ||
建立變數%VAR%值%VALUE%到系統環境變數中: | 建立變數%VAR%值%VALUE%到系統環境變數中: |