¿Existe alguna herramienta de línea de comando que pueda usarse para editar variables de entorno en Windows?
Sería bueno si esta fuera una herramienta inteligente, por ejemplo:
- Al agregar alguna ruta a la variable PATH y esta ruta ya está allí, no debería duplicar esta entrada.
- La inserción de una nueva ruta a la variable PATH debería ser posible antes / después de alguna otra ruta o en un orden específico (el primero, el séptimo, el último, etc.).
- Debería ser posible cambiar solo una parte del valor de la variable (en el caso de la RUTA, una ruta dada de una lista de todas las rutas).
Y lo último, pero no menos importante: quiero que mis cambios persistan entre sesiones, por lo que SET simple está fuera de discusión ...
Hay una herramienta GUI muy buena para esto llamada Path Editor y necesito algo como esto pero para la línea de comandos.
windows
command-line
environment-variables
Piotr Dobrogost
fuente
fuente
Respuestas:
No conozco ninguna herramienta que haga esto, pero tal vez puedas usar el
reg
comando:para leer la ruta actual, y
para escribir tu nuevo valor.
Necesita derechos de administrador para acceder correctamente a HKLM. Si eso es un problema, considere modificar la configuración de ruta específica del usuario en su
HKCU\Environment
lugar.fuente
Si necesita una forma genérica de establecer cualquier variable de entorno y hacer que los cambios persistan, entonces setx.exe sería la herramienta a utilizar. Sin embargo, no puede hacer las cosas "inteligentes" que está pidiendo ...
setx.exe se incluye con Windows Vista o posterior; si usa una versión anterior de Windows, puede usar el enlace de descarga anterior para obtenerlo.
fuente
Para el programa actual, hay
path
:Sin embargo, esto es más o menos lo mismo que
set PATH
.Para que las variables de entorno persistan, debe editar el registro o usarlo
setx
.fuente
Acabo de descubrir la capacidad de permitir a los usuarios ejecutar el diálogo de edición de Variables de entorno sin privilegios elevados.
Desde el menú Inicio, ejecute lo siguiente:
fuente
establecer RUTA
(conjunto de ayuda)
fuente
Puede consultar la colección de gtools: http://www.p-nand-q.com/gtools.html
Proporciona un conjunto de comandos para la solicitud de comando como
para agregar la ruta actual, por ejemplo. Realmente no lo he verificado para ser honesto, ya que estoy totalmente de acuerdo con el uso de una GUI.
Otras opciones son:
Junto con cuál de la misma colección, obtuviste algunas buenas herramientas, supongo. Que "localiza archivos ejecutables en la RUTA".
Fuente: http://op111.net/82/
fuente
Escribí un conjunto de scripts por lotes para esto. addpath.bat agrega elementos a la ruta, rmpath.bat elimina elementos de la ruta y lpath.bat solo enumera la ruta. Pero luego necesitaba algunos scripts de soporte, por lo que también hay chkpath.bat.
Terminó no siendo trivial y requirió tr.exe y cat.exe, un par de utilidades de estilo unix. La razón no es trivial: no hay backticks en cmd.exe (aunque puede usar bucles para esto), y nombres cortos versus nombres largos.
addpath.bat:
ChkPath.bat:
lpath.bat:
fuente
for
bucle podría usarse en lugar detr
/cat
también.Path Manager (pathman.exe) de Windows Server 2003 Resource Kit Tools es la coincidencia más cercana que pude encontrar. Ya estaba disponible en NT Resource Kit.
fuente
setx.exe
setx
es para variables de entorno generales;pathman
es específicamente para manipular (es decir, analizar ) el camino.¿Cómo verificar si el directorio existe en% PATH%? on Stack Overflow tiene una descripción sobresaliente de lo que dificulta la edición de Windows PATH junto con un archivo por lotes para superarlos. Descubrir cómo usarlo correctamente
addpath.bat
requirió un poco de práctica, ya que su estructura de llamadas era nueva para mí, pero esto funciona:y los disparos repetidos no agregarán el nuevo directorio si ya está presente. Esto no aborda hacer que las ediciones sean persistentes en todas las sesiones.
fuente