Lo que necesito hacer:
- Agregue una carpeta a la
%PATH%
variable de entorno a nivel de SISTEMA. - Haz el cambio permanente.
Cómo necesito hacerlo:
- Usando el símbolo del sistema u otro método por el cual todos los comandos necesarios se pueden escribir en un
.BAT
archivo. - Usando solo herramientas que estarían disponibles en una instalación simple de Windows XP SP3, sin conectividad a Internet.
- Prefiero ejecutar el script localmente, pero también tengo acceso remoto a los sistemas de destino. Sin embargo, tenga en cuenta que no puedo suponer que los servicios no predeterminados (es decir: Registro remoto) estén habilitados en los sistemas.
Sistemas en los que el script necesita trabajar:
- Windows XP SP3
- Windows Server 2003 SP2
- Windows 7 SP1
- Windows Server 2008 R2 SP1
Estoy bastante familiarizado con el SET
comando, pero también soy consciente de que generalmente sobrescribirá la variable existente en lugar de agregarla. Eso no es aceptable. ¿Hay SET
alguna otra herramienta (u opción para la que no tenga conocimiento) que se agregará a la variable? O, ¿necesito poner una solución alternativa en el script que incluya copiar temporalmente la variable existente a otra variable o archivo de texto?
Además, tengo entendido que SET
no alterará permanentemente la variable. He visto mención de SETX
eso, pero eso no parece estar integrado en Windows XP SP3 (o, al menos, no parece estar disponible en el sistema en el que estoy trabajando). ¿Hay otra forma de hacer que el cambio sea permanente, mediante la edición del registro o algo así?
He echado un vistazo y he aprendido un poco sobre cómo configurar variables de entorno en Windows. Sin embargo, todavía no he encontrado una pregunta duplicada exacta que se ajuste a mis necesidades. Si hay uno, por favor hágamelo saber.
REG
para hacer cambios en el registro. Si desea publicar eso como respuesta, con sugerencias sobre cómo conservar el camino existente, al menos le daré un voto positivo.Respuestas:
Lo siguiente agrega 'C: \ bin' a su ruta y luego guarda la nueva ruta en el Registro:
Solo probé esto en XP SP3, pero también debería funcionar en una versión más nueva.
Supongo que un nuevo usuario que inicia sesión antes de que la máquina se reinicie puede no obtener la nueva ruta.
Harry tiene razón con su comentario sobre% SystemRoot%, si desea conservar estos, primero debe extraer el valor anterior para la ruta del registro:
fuente
fuente