[BAT] SetX 永久設置環境變量



SetX 有三種使用方式:

語法 1:
    SETX [/S system [/U [domain\]user [/P [password]]]] var value [/M]

語法 2:
    SETX [/S system [/U [domain\]user [/P [password]]]] var /K regpath [/M]

語法 3:
    SETX [/S system [/U [domain\]user [/P [password]]]]
         /F file {var {/A x,y | /R x,y string}[/M] | /X} [/D delimiters]

描述:
    在用戶或系統環境創建或修改環境變量。能基於參數、注冊表項或文件輸
    入設置變量。

參數列表:
    /S     system          指定要連接到的遠程系統。

    /U     [domain\]user   指定應該在哪個用戶上下文執行命令。

    /P     [password]      指定給定用戶上下文的密碼。如果省略則
                           提示輸入。

    var                    指定要設置的環境變量。

    value                  指定分配給環境變量的值。

    /K     regpath         指定變量是基於注冊表項的信息而設置的。

                           路徑的格式應該是 hive\key\...\value。例如
                           HKEY_LOCAL_MACHINE\System\CurrentControlSet\
                           Control\TimeZoneInformation\StandardName。

    /F     file            指定要使用的文本文件的文件名。

    /A     x,y             指定絕對文件坐標(線 X,項目 Y)作為在此文件
                           里搜索的參數。

    /R     x,y string      指定有關“字符串”作為搜索參數的相對文件坐標。

    /M                     指定應該在系統 (HKEY_LOCAL_MACHINE) 環境中設
                           置此變量。在 HKEY_CURRENT_USER 環境下,默認
                           將設置此變量。

    /X                     用 x,y 坐標顯示文件內容。

    /D     delimiters      指定其他限定符,如 "," 或 "\"。
                           內置分隔符是空格、制表符、回車和換行符。所有
                           ASCII 字符都可作為限定符。限定符的最大數量,
                           包括內置分隔符,是 15。

    /?                     顯示此幫助消息。

注意: 1) SETX 在注冊表中將變量寫入主機環境。

      2) 在本地系統,用此工具創建或修改的變量將在以后的命令窗口可用,但
         在當前的 CMD.exe 命令窗口。

      3) 在遠程系統,用此工具創建或修改的變量在下次登錄會話可用。

      4) 有效的注冊表項數據類型是 REG_DWORD,REG_EXPAND_SZ,REG_SZ
         和 REG_MULTI_SZ。

      5) 受支持的配置單元:  HKEY_LOCAL_MACHINE (HKLM),
         HKEY_CURRENT_USER (HKCU)。

      6) 限定符區分大小寫。

      7) REG_DWORD 的值是從注冊表里以十進制格式提取出來的。

示例:
    SETX MACHINE COMPAQ
    SETX MACHINE "COMPAQ COMPUTER" /M
    SETX MYPATH "%PATH%"
    SETX MYPATH ~PATH~
    SETX /S system /U user /P password  MACHINE COMPAQ
    SETX /S system /U user /P password MYPATH ^%PATH^%
    SETX TZONE /K HKEY_LOCAL_MACHINE\System\CurrentControlSet\
         Control\TimeZoneInformation\StandardName
    SETX BUILD /K "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows
         NT\CurrentVersion\CurrentBuildNumber" /M
    SETX /S system /U user /P password TZONE /K HKEY_LOCAL_MACHINE\
         System\CurrentControlSet\Control\TimeZoneInformation\
         StandardName
    SETX /S system /U user /P password  BUILD /K
         "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\
         CurrentVersion\CurrentBuildNumber" /M
    SETX /F ipconfig.out /X
    SETX IPADDR /F ipconfig.out /A 5,11
    SETX OCTET1 /F ipconfig.out /A 5,3 /D "#$*."
    SETX IPGATEWAY /F ipconfig.out /R 0,7 Gateway
    SETX /S system /U user /P password  /F c:\ipconfig.out /X

使用也很簡單,例如我設置幾個用戶環境變量:

setx MICRO_REGISTRY_ADDRESS "192.168.0.111:8500"
setx GB_SERVICE_LOCAL_ID "34020000002000000001"
setx GB_SERVICE_LOCAL_IP "192.168.0.111"
setx DEVICE_MANAGEMENT_SERVICE_ADDRESS "192.168.0.111:8080"
setx SYSTEM_CONFIGURATION_SERVICE_ADDRESS "192.168.0.111:8080"

最常用的應該是設置 PATH,永久設置 PATH

setx PATH "%PATH%;D:\Program Files\"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM