Delen via


setx

Hiermee maakt of wijzigt u omgevingsvariabelen in de gebruikers- of systeemomgeving, zonder dat er programmeer- of scripting nodig is. De opdracht Setx haalt ook de waarden van registersleutels op en schrijft deze naar tekstbestanden.

Note

Deze opdracht biedt de enige opdrachtregel of programmatische manier om systeemomgevingswaarden rechtstreeks en permanent in te stellen. Systeemomgevingsvariabelen kunnen handmatig worden geconfigureerd via het Configuratiescherm of via een register-editor. De opdracht set , die intern is voor de opdrachtinterpreter (Cmd.exe), stelt alleen gebruikersomgevingsvariabelen in voor het huidige consolevenster.

Syntax

setx [/s <computer> [/u [<domain>\]<user name> [/p [<password>]]]] <variable> <value> [/m]
setx [/s <computer> [/u [<domain>\]<user name> [/p [<password>]]]] <variable>] /k <path> [/m]
setx [/s <computer> [/u [<domain>\]<user name> [/p [<password>]]]] /f <filename> {[<variable>] {/a <X>,<Y> | /r <X>,<Y> <String>} [/m] | /x} [/d <delimiters>]

Parameters

Parameter Description
/s <computer> Hiermee geeft u de naam of het IP-adres van een externe computer. Gebruik geen backslashes. De standaardwaarde is de naam van de lokale computer.
/u [<domain>\]<user name> Voert het script uit met de referenties van het opgegeven gebruikersaccount. De standaardwaarde is de systeemmachtigingen.
/p [<password>] Hiermee geeft u het wachtwoord op van het gebruikersaccount dat is opgegeven in de parameter /u .
<variable> Hiermee geeft u de naam van de omgevingsvariabele die u wilt instellen.
<value> Hiermee geeft u de waarde op waarop u de omgevingsvariabele wilt instellen.
/k <path> Hiermee geeft u op dat de variabele is ingesteld op basis van gegevens uit een registersleutel. Het pad gebruikt de volgende syntaxis: \\<HIVE>\<KEY>\...\<Value>. U kunt bijvoorbeeld het volgende pad opgeven: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName
/f <filename> Hiermee geeft u het bestand dat u wilt gebruiken.
/een <X>,<Y> Hiermee geeft u absolute coördinaten en verschuiving als zoekparameters.
/r <X>,<Y> <String> Hiermee geeft u relatieve coördinaten en offset van String op als zoekparameters.
/m Hiermee geeft u de variabele in de systeemomgeving in. De standaardinstelling is de lokale omgeving.
/x Geeft bestandscoördinaten weer, waarbij de opdrachtregelopties /a, /r en /d worden genegeerd.
/d <delimiters> Specificeert scheidingstekens zoals , of \ die moeten worden gebruikt naast de vier ingebouwde scheidingstekens: SPATIEBALK, TAB, ENTER en LINEFEED. Geldige scheidingstekens bevatten een ASCII-teken. Het maximum aantal scheidingstekens is 15, inclusief ingebouwde scheidingstekens.
/? Geeft hulp weer in de opdrachtprompt.

Remarks

  • Deze opdracht is vergelijkbaar met het UNIX-hulpprogramma SETENV.

  • U kunt deze opdracht gebruiken om waarden in te stellen voor omgevingsvariabelen van gebruikers en systemen uit een van de drie bronnen (modi): Opdrachtregelmodus, Registermodus of Bestandsmodus.

  • Met deze opdracht worden variabelen naar de hoofdomgeving in het register geschreven. Variabelen die zijn ingesteld met setx-variabelen zijn alleen beschikbaar in toekomstige opdrachtvensters, niet in het huidige opdrachtvenster.

  • HKEY_CURRENT_USER en HKEY_LOCAL_MACHINE zijn de enige ondersteunde bijenkorven. REG_DWORD, REG_EXPAND_SZ, REG_SZ en REG_MULTI_SZ zijn de geldige RegKey-gegevenstypen .

  • Als u toegang krijgt tot REG_MULTI_SZ waarden in het register, wordt alleen het eerste item geëxtraheerd en gebruikt.

  • U kunt deze opdracht niet gebruiken om waarden te verwijderen die zijn toegevoegd aan de lokale of systeemomgevingen. U kunt deze opdracht gebruiken met een variabelenaam en geen waarde om een bijbehorende waarde uit de lokale omgeving te verwijderen.

  • REG_DWORD registerwaarden worden geëxtraheerd en gebruikt in de hexadecimale modus.

  • De bestandsmodus biedt alleen ondersteuning voor het parseren van crlf-tekstbestanden (regelterugloop en regelinvoer).

  • Als u deze opdracht uitvoert op een bestaande variabele, worden eventuele verwijzingen naar variabelen verwijderd en worden uitgebreide waarden gebruikt.

    Als de variabele %PATH% bijvoorbeeld een verwijzing naar %JAVADIR%heeft en %PATH% wordt gemanipuleerd met behulp van setx, wordt %JAVADIR% uitgebreid en wordt de waarde rechtstreeks toegewezen aan de doelvariabele %PATH%. Dit betekent dat toekomstige updates van %JAVADIR% niet worden weerspiegeld in de variabele %PATH%.

  • Houd er rekening mee dat er een limiet van 1024 tekens is bij het toewijzen van inhoud aan een variabele met behulp van setx.

    Dit betekent dat de inhoud wordt bijgesneden als u meer dan 1024 tekens gebruikt en dat de bijgesneden tekst wordt toegepast op de doelvariabele. Als deze bijgesneden tekst wordt toegepast op een bestaande variabele, kan dit leiden tot verlies van gegevens die eerder door de doelvariabele zijn opgeslagen.

Examples

Als u de omgevingsvariabele MACHINE in de lokale omgeving wilt instellen op de waarde Brand1, typt u:

setx MACHINE Brand1

Als u de omgevingsvariabele MACHINE in de systeemomgeving wilt instellen op de waarde Brand1 Computer, typt u:

setx MACHINE Brand1 Computer /m

Typ het volgende als u de omgevingsvariabele MYPATH in de lokale omgeving wilt instellen op het zoekpad dat is gedefinieerd in de omgevingsvariabele PATH :

setx MYPATH %PATH%

Als u de MYPATH-omgevingsvariabele in de lokale omgeving wilt instellen op het zoekpad dat is gedefinieerd in de PATH-omgevingsvariabele na vervanging ~ door %, typt u:

setx MYPATH ~PATH~

Als u de omgevingsvariabele MACHINE in de lokale omgeving wilt instellen op Brand1 op een externe computer met de naam computer1, typt u:

setx /s computer1 /u maindom\hiropln /p p@ssW23 MACHINE Brand1

Als u de MYPATH-omgevingsvariabele in de lokale omgeving wilt instellen op het gebruik van het zoekpad dat is gedefinieerd in de PATH-omgevingsvariabele op een externe computer met de naam computer1, typt u:

setx /s computer1 /u maindom\hiropln /p p@ssW23 MYPATH %PATH%

Als u de TZONE-omgevingsvariabele in de lokale omgeving wilt instellen op de waarde die wordt gevonden in de registersleutel van deHKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName , typt u:

setx TZONE /k HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName

Als u de TZONE-omgevingsvariabele in de lokale omgeving van een externe computer met de naam computer1 wilt instellen op de waarde die wordt gevonden in de registersleutel vanHKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName , typt u:

setx /s computer1 /u maindom\hiropln /p p@ssW23 TZONE /k HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName

Als u de variabele BUILD-omgeving in de systeemomgeving wilt instellen op de waarde die wordt gevonden in de registersleutel van HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\CurrentBuildNumber , typt u:

setx BUILD /k HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\CurrentBuildNumber /m

Als u de variabele BUILD-omgeving in de systeemomgeving van een externe computer met de naam Computer1 wilt instellen op de waarde die wordt gevonden in de registersleutel vanHKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\CurrentBuildNumber , typt u:

setx /s computer1 /u maindom\hiropln /p p@ssW23  BUILD /k HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\CurrentBuildNumber /m

Typ het volgende om de inhoud van een bestand met de naam Ipconfig.out weer te geven, samen met de bijbehorende coördinaten van de inhoud:

setx /f ipconfig.out /x

Typ het volgende om de IPADDR-omgevingsvariabele in de lokale omgeving in te stellen op de waarde die wordt gevonden bij de coördinaat 5,11 in het bestand Ipconfig.out :

setx IPADDR /f ipconfig.out /a 5,11

Typ het volgende om de OCTET1-omgevingsvariabele in de lokale omgeving in te stellen op de waarde die wordt gevonden bij de coördinaat 5,3 in het Ipconfig.out-bestand met scheidingstekens #$*.:

setx OCTET1 /f ipconfig.out /a 5,3 /d #$*.

Typ het volgende om de IPGATEWAY-omgevingsvariabele in de lokale omgeving in te stellen op de waarde die wordt gevonden op de coördinaat 0,7 met betrekking tot de coördinaat van de gateway in het bestand Ipconfig.out :

setx IPGATEWAY /f ipconfig.out /r 0,7 Gateway

Als u de inhoud van het bestand Ipconfig.out , samen met de bijbehorende coördinaten van de inhoud, wilt weergeven op een computer met de naam computer1, typt u:

setx /s computer1 /u maindom\hiropln /p p@ssW23 /f ipconfig.out /x