¿Cuál es la diferencia entre
SETX
ySET
?
Según tengo entendido:
ambos se utilizan para establecer variables de entorno
SETX
para las variables de usuario.
SET
es para variables de shell.
windows
environment-variables
Premraj
fuente
fuente
SET /?
ySETX /?
, eso debería darte algunas ideas.Respuestas:
Me temo que no es tan simple. Las variables de entorno no están limitadas por el alcance, como sugiere, pero tiene razón en que la vida útil del valor en la variable es diferente al comparar los verbos.
Set
modifica los valores de entorno del shell actual (la ventana) y el cambio está disponible de inmediato, pero es temporal. El cambio no afectará a otros shells que se están ejecutando, y tan pronto como cierre el shell, el nuevo valor se perderá hasta el momento en que ejecute set de nuevo.setx
modifica el valor de forma permanente, lo que afecta a todos los shells futuros, pero no modifica el entorno de los shells que ya se están ejecutando. Debe salir del shell y volver a abrirlo antes de que el cambio esté disponible, pero el valor permanecerá modificado hasta que lo cambie nuevamente.Vea aquí un ejemplo: http://batcheero.blogspot.com/2008/02/set-and-setx.html
fuente
En realidad, podemos establecer variables en tres ámbitos:
1. Shell
2. Usuario
3. Sistema (Máquina) o Global
SET: Crear o actualizar el alcance actual del shell para temporal.
SETX: crea o actualiza las variables de entorno de usuario actuales para permanente.
En usuario GUI y variables de entorno del sistema.
fuente
Añadiendo un punto que otros respondedores no vieron.
Para establecer una Variable de entorno del sistema en lugar de una Variable de entorno del usuario, solo necesitamos usar la opción / m en el comando setx y ejecutarla desde un Símbolo del sistema elevado (Administrador).
Ejemplo: abrir el símbolo del sistema como administrador y ejecutar
Explicación: El comando anterior agregará "C: \ Users \ User \ Libs" a la variable de ruta ya existente (variable de entorno del sistema).
Sin el argumento / m , solo hará cambios o creará una variable de ruta de nivel de usuario.
Del manual de usuario de setx,
fuente