Básicamente, sé que puedo pasar por mi panel de control y modificar la variable de ruta. Pero, me pregunto si hay una manera de incluir la ruta temporal a través de la programación por lotes. De esa manera solo se usa durante la ejecución de ese archivo por lotes. No quiero que la gente entre y modifique sus variables de ruta solo para usar mi archivo por lotes.
fuente
setlocal
a su archivo por lotes, la ruta solo es visible en el archivoSET
es realmente algo que debe saber y comprender antes de realizar cualquier secuencia de comandos.SETLOCAL
eso, a lo sumo, solo será para esa sesión de símbolo del sistema individual: si está haciendo esto desde más de un archivo por lotes y está usandoEXIT /B %N%
, entoncesSETLOCAL
básicamente va a volcar sus cambios cuando salga el script. : - /Hay un detalle importante:
no funciona, mientras
trabajos. La diferencia son las citas!
UPD también ve el comentario de venimus
fuente
SET "PATH=...%PATH%"
contrario, los espacios existentes en la ruta causarán errores o mal comportamiento. Ajustar comillas como esta no las incluirá, pero establecerá correctamente la variable. Lo mismo funciona para cualquier otra variable env.Así es, pero no lo cambia permanentemente, pero solo para el símbolo del sistema actual, si desea cambiarlo permanentemente, debe usar, por ejemplo, esto:
Esto lo cambiará permanentemente y sí, puede sobrescribirlo con otro script por lotes.
fuente
/m
necesita ser despuéssetx
?/m
al final,DESIRED_PATH
se agregó con / m al final solo para el usuario actual.echo %path%
y obtendrá la ruta actual cargada. Debe distinguir las variables de entorno Usuario y Sistema entre sí. Luego puede aplicarlos manualmente en el lugar correcto.