Jaka jest różnica między
SETX
iSET
?
Według mojego zrozumienia:
Oba są używane do ustawiania zmiennych środowiskowych
SETX
dla zmiennych użytkownika.
SET
jest dla zmiennych powłoki.
Jaka jest różnica między
SETX
iSET
?
Według mojego zrozumienia:
Oba są używane do ustawiania zmiennych środowiskowych
SETX
dla zmiennych użytkownika.
SET
jest dla zmiennych powłoki.
Odpowiedzi:
Obawiam się, że to nie jest takie proste. Jak sugerujesz, zmienne środowiskowe nie są ograniczone zakresem, ale masz rację, że czas życia wartości w zmiennej jest inny podczas porównywania czasowników.
Set
modyfikuje wartości środowiska bieżącej powłoki (okna), a zmiana jest dostępna natychmiast, ale jest tymczasowa. Zmiana nie wpłynie na inne uruchomione powłoki, a jak tylko zamkniesz powłokę, nowa wartość zostanie utracona do czasu ponownego uruchomienia zestawu.
setx
modyfikuje wartość na stałe, co wpływa na wszystkie przyszłe powłoki, ale nie modyfikuje środowiska uruchomionych już powłok. Musisz opuścić powłokę i ponownie ją otworzyć, zanim zmiana będzie dostępna, ale wartość pozostanie zmodyfikowana, dopóki nie zmienisz jej ponownie.
Zobacz tutaj przykład: http://batcheero.blogspot.com/2008/02/set-and-setx.html
Właściwie możemy ustawić zmienną w trzech zakresach:
1. Powłoka
2. Użytkownik
3. System (Maszyna) lub Globalny
C:\Users\977246>set /?
Displays, sets, or removes cmd.exe environment variables.
SET [variable=[string]]
variable Specifies the environment-variable name.
string Specifies a series of characters to assign to the variable.
Type SET without parameters to display the current environment variables.
C:\Users\977246>setx /?
SetX has three ways of working:
Syntax 1:
SETX [/S system [/U [domain\]user [/P [password]]]] var value [/M]
Syntax 2:
SETX [/S system [/U [domain\]user [/P [password]]]] var /K regpath [/M]
Syntax 3:
SETX [/S system [/U [domain\]user [/P [password]]]]
/F file {var {/A x,y | /R x,y string}[/M] | /X} [/D delimiters]
Description:
Creates or modifies environment variables in the user or system
environment. Can set variables based on arguments, regkeys or
file input.
To remove the variable set value to empty string as follows
Example: setx path ""
W GUI Zmienne środowiskowe użytkownika i systemu.
Dodanie punktu, który został pominięty przez innych użytkowników.
Aby ustawić zmienną środowiska systemowego zamiast zmiennej środowiska użytkownika, wystarczy użyć opcji / mw poleceniu setx i uruchomić ją z wiersza polecenia z podwyższonym poziomem uprawnień (administratora).
setx variable value /m
Przykład: Otwórz wiersz polecenia jako administrator i uruchom
setx Path "%Path%;C:\Users\User\Libs" /m
Objaśnienie: Powyższe polecenie doda „C: \ Users \ User \ Libs” do już istniejącej zmiennej ścieżki (zmiennej środowiska systemowego).
Bez argumentu / m wprowadzi zmiany lub utworzy tylko zmienną ścieżki na poziomie użytkownika.
Z instrukcji obsługi setx
/ M Określa, że zmienna powinna być ustawiona w środowisku systemowym (HKEY_LOCAL_MACHINE). Domyślnie ustawia się zmienną w środowisku HKEY_CURRENT_USER.
SET /?
iSETX /?
- to powinno dać ci kilka pomysłów.