Pregunta Establecer y obtener variables de entorno de Windows desde el símbolo del sistema?


Quiero establecer una variable de entorno desde el símbolo del sistema y luego poder acceder a ella globalmente (por ejemplo, debería verla yendo a Sistema -> Variables de entorno).

Cuando uso el comando set, no es accesible en una nueva sesión de cmd.

set NEWVAR=SOMETHING
echo %NEWVAR%

Preguntas relacionadas:


182


origen


valor de la variable setx - luego reiniciar Símbolo del sistema - Andrew


Respuestas:


Para hacer que la variable de entorno sea accesible globalmente, debe configurarla en el registro. Como te has dado cuenta con solo usar:

establecer NEWVAR = ALGO

solo lo está configurando en el espacio de proceso actual.

De acuerdo a esta página puedes usar el setx mando:

setx NEWVAR ALGO

setx está integrado en Windows 7, pero para versiones anteriores solo puede estar disponible si instala Kit de recursos de Windows


196



Resulta que setx también está integrado en Windows 7. - Shane
Tenga en cuenta que debe especificar la cuota, por ejemplo: setx JAVA_HOME "C:\Program Files\Java\jdk1.7.0_45" trabajará. Pero setx JAVA_HOME C:\Program Files\Java\jdk1.7.0_45te dará errores de sintaxis - MD. Mohiuddin Ahmed
@ MD.MohiuddinAhmed Eso es porque hay espacios en el camino. - ChrisF
Oops! ¡No me di cuenta de eso! ... Todavía es un buen punto a tener en cuenta :) Gracias @ChrisF! - MD. Mohiuddin Ahmed
es una cita, no una cuota - phuclv


También podemos usar "setx var variable / M" para establecer el nivel variable de entorno de sistema var en lugar de nivel de usuario.

Nota: Este comando debe ejecutarse como administrador.


29





setx program "C:\Program Files" /M

/ M para establecer el nivel variable del entorno del sistema en lugar del nivel de usuario como respuesta @Minh Chau

Prueba enter image description here

REINICIAR línea de comando (si no reinicia la línea de comando, la variable de entorno no funcionará)

enter image description here


7



Esto duplica otra respuesta y no agrega contenido nuevo. Por favor, no publique una respuesta a menos que realmente tenga algo nuevo para contribuir. - DavidPostill♦
@DavidPostill mi respuesta tiene una nueva es que necesitamos reiniciar la línea de comando. Creo que es importante - Phan Van Linh


Las variables del sistema se pueden configurar mediante CMD y registro Por ej. consulta reg "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" / v RUTA

Todos los códigos CMD comúnmente utilizados y las variables del sistema se dan aquí: Establecer las variables de entorno del sistema de Windows utilizando CMD.

Abra CMD y escriba Conjunto

Obtendrá todos los valores de la variable del sistema.

Tipo establecer java para conocer los detalles de la ruta de java instalada en su sistema operativo de ventana.


1



Por favor, lea la pregunta nuevamente con cuidado. Tu respuesta no no responde la pregunta original - DavidPostill♦
Está cerca, sin embargo. El uso de REG ADD puede lograr esto? - TOOGAM


Viejo hilo con el que tropecé,

Como se menciona en @ChrisF respuesta puede establecer la variable usando set o setx mando.

Y para obtener los valores que puede usar

>set variable_name

Y puedes volcar toda la variable del entorno con valores usando set command como este sin dar ningún parámetro.

>set

Y para desarmar la variable, podemos usar

>set variable_name=

Al no dar ningún valor, podemos eliminar la variable del espacio actual.


1



Eso debería ser set variable_name= (cuidado con los espacios después de los nombres de las variables). - DavidPostill♦


Deseo agregar que si está utilizando el parámetro / s con setx para establecer variables de entorno en una computadora remota, el servicio "Remote Registry" debe ejecutarse en la máquina de destino o recibirá un "ERROR: la operación especificada no pudo ser completada ".

(Le pedí a Microsoft que actualice su Artículo de TechNet sobre setx para incluir esta información)


0