setx
Crea o modifica le variabili di ambiente nell'ambiente utente o di sistema, senza richiedere la programmazione o lo scripting. Il comando Setx recupera anche i valori delle chiavi del Registro di sistema e li scrive in file di testo.
Nota
Questo comando fornisce l'unico modo da riga di comando o programmatico per impostare direttamente e in modo permanente i valori dell'ambiente di sistema. Le variabili di ambiente di sistema sono configurabili manualmente tramite Pannello di controllo o tramite un editor del Registro di sistema. Il comando impostato, interno all'interprete dei comandi (Cmd.exe), imposta le variabili di ambiente utente solo per la finestra della console corrente.
Sintassi
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>]
Parametri
Parametro | Descrizione |
---|---|
/s <computer> |
Specifica il nome o l'indirizzo IP di un computer remoto. Non utilizzare barre rovesciata. Il valore predefinito è il nome del computer locale. |
/u [<domain>\]<user name> |
Esegue lo script con le credenziali dell'account utente specificato. Il valore predefinito è le autorizzazioni di sistema. |
/p [<password> ] |
Specifica la password dell'account utente specificato nel parametro /u. |
<variable> |
Specifica il nome della variabile di ambiente da impostare. |
<value> |
Specifica il valore a cui si desidera impostare la variabile di ambiente. |
/k <path> |
Specifica che la variabile viene impostata in base alle informazioni di una chiave del Registro di sistema. Il percorso usa la sintassi seguente: \\<HIVE>\<KEY>\...\<Value> . Ad esempio, è possibile specificare il percorso seguente: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName |
/f <filename> |
Specifica il file che si desidera utilizzare. |
/a <X>,<Y> |
Specifica le coordinate assolute e l'offset come parametri di ricerca. |
/r <X>,<Y> <String> |
Specifica le coordinate relative e l'offset da string come parametri di ricerca. |
/m | Specifica di impostare la variabile nell'ambiente di sistema. L'impostazione predefinita è l'ambiente locale. |
/x | Visualizza le coordinate dei file ignorando le opzioni della riga di comando /a, /re /d. |
/d <delimiters> |
Specifica delimitatori, ad esempio , o \ da usare oltre ai quattro delimitatori predefiniti, ovvero SPACE, TAB, INVIO e LINEFEED. I delimitatori validi includono qualsiasi carattere ASCII. Il numero massimo di delimitatori è 15, inclusi i delimitatori predefiniti. |
/? | Visualizza la Guida al prompt dei comandi. |
Osservazioni:
Questo comando è simile all'utilità UNIX SETENV.
È possibile usare questo comando per impostare i valori per le variabili di ambiente utente e di sistema da una delle tre origini (modalità): modalità riga di comando, modalità Registro di sistema o modalità file.
Questo comando scrive le variabili nell'ambiente master nel Registro di sistema. Le variabili impostate con setx variabili sono disponibili solo nelle finestre dei comandi future, non nella finestra di comando corrente.
HKEY_CURRENT_USER e HKEY_LOCAL_MACHINE sono gli unici hive supportati. REG_DWORD, REG_EXPAND_SZ, REG_SZ e REG_MULTI_SZ sono i tipi di dati RegKey validi.
Se si ottiene l'accesso ai valori REG_MULTI_SZ nel Registro di sistema, viene estratto e usato solo il primo elemento.
Non è possibile usare questo comando per rimuovere i valori aggiunti agli ambienti locali o di sistema. È possibile usare questo comando con un nome di variabile e nessun valore per rimuovere un valore corrispondente dall'ambiente locale.
REG_DWORD i valori del Registro di sistema vengono estratti e usati in modalità esadecimale.
La modalità file supporta l'analisi solo dei file di testo ritorno a capo e di avanzamento riga (CRLF).
L'esecuzione di questo comando in una variabile esistente rimuove i riferimenti a qualsiasi variabile e usa valori espansi.
Ad esempio, se la variabile %PATH% ha un riferimento a %JAVADIR%e %PATH% viene modificato usando setx, %JAVADIR% viene espanso e il relativo valore viene assegnato direttamente alla variabile di destinazione %PATH%. Ciò significa che gli aggiornamenti futuri di %JAVADIR% non verranno riflesse nella variabile %PATH%.
Tenere presente che è previsto un limite di 1024 caratteri quando si assegna il contenuto a una variabile usando setx.
Ciò significa che il contenuto viene ritagliato se si superano i 1024 caratteri e che il testo ritagliato è quello applicato alla variabile di destinazione. Se questo testo ritagliato viene applicato a una variabile esistente, può comportare la perdita di dati precedentemente contenuti nella variabile di destinazione.
Esempi
Per impostare la variabile di ambiente MACHINE nell'ambiente locale sul valore Brand1, digitare:
setx MACHINE Brand1
Per impostare la variabile di ambiente MACHINE nell'ambiente di sistema sul valore Brand1 Computer, digitare:
setx MACHINE Brand1 Computer /m
Per impostare la variabile di ambiente MYPATH nell'ambiente locale per usare il percorso di ricerca definito nella variabile di ambiente PATH, digitare:
setx MYPATH %PATH%
Per impostare la variabile di ambiente MYPATH nell'ambiente locale per usare il percorso di ricerca definito nella variabile di ambiente PATH dopo aver sostituito ~ con %, digitare:
setx MYPATH ~PATH~
Per impostare la variabile di ambiente MACHINE nell'ambiente locale su Brand1 in un computer remoto denominato computer computer1, digitare:
setx /s computer1 /u maindom\hiropln /p p@ssW23 MACHINE Brand1
Per impostare la variabile di ambiente MYPATH nell'ambiente locale per usare il percorso di ricerca definito nella variabile di ambiente PATH in un computer remoto denominato computer1, digitare:
setx /s computer1 /u maindom\hiropln /p p@ssW23 MYPATH %PATH%
Per impostare la variabile di ambiente TZONE nell'ambiente locale sul valore trovato nella chiave del Registro di sistema HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName, digitare:
setx TZONE /k HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName
Per impostare la variabile di ambiente TZONE nell'ambiente locale di un computer remoto denominato computer1 sul valore trovato nella chiave del Registro di sistema HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName, digitare:
setx /s computer1 /u maindom\hiropln /p p@ssW23 TZONE /k HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation\StandardName
Per impostare la variabile di ambiente BUILD nell'ambiente di sistema sul valore trovato nella chiave del Registro di sistema HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\CurrentBuildNumber, digitare:
setx BUILD /k HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\CurrentBuildNumber /m
Per impostare la variabile di ambiente BUILD nell'ambiente di sistema di un computer remoto denominato Computer1 sul valore trovato nella chiave del Registro di sistema HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\CurrentBuildNumber, digitare:
setx /s computer1 /u maindom\hiropln /p p@ssW23 BUILD /k HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\CurrentBuildNumber /m
Per visualizzare il contenuto di un file denominato Ipconfig.out, insieme alle coordinate corrispondenti del contenuto, digitare:
setx /f ipconfig.out /x
Per impostare la variabile di ambiente IPADDR nell'ambiente locale sul valore trovato nella coordinata 5.11 nel file Ipconfig.out digitare:
setx IPADDR /f ipconfig.out /a 5,11
Per impostare la variabile di ambiente OCTET1 nell'ambiente locale sul valore trovato nella coordinata 5,3 nel file Ipconfig.out con delimitatori #$*., digitare:
setx OCTET1 /f ipconfig.out /a 5,3 /d #$*.
Per impostare la variabile di ambiente IPGATEWAY nell'ambiente locale sul valore trovato nella coordinata 0,7 rispetto alla coordinata di Gateway nel file Ipconfig.out, digitare:
setx IPGATEWAY /f ipconfig.out /r 0,7 Gateway
Per visualizzare il contenuto del file Ipconfig.out, insieme alle coordinate corrispondenti del contenuto, in un computer denominato computer1, digitare:
setx /s computer1 /u maindom\hiropln /p p@ssW23 /f ipconfig.out /x