¿Cómo restaurar la variable de entorno Path que eliminé?

26

Accidentalmente eliminé la variable de entorno Ruta creando una nueva con el nombre Ruta. ¿Cómo puedo restaurar mi antigua variable de entorno Path?

deno
fuente
Recuerde que cada sesión de la consola de Windows tiene su propia variable de entorno PATH, que se puede mostrar o cambiar con el comando PATH. Pero si cierra la consola y abre una nueva, se restaurará la RUTA original del sistema. No estoy seguro de si este es el caso con una sesión de consola elevada.
Baodad el

Respuestas:

52

Perdí mi PATH con una instalación de programa hoy, pero con todos los programas existentes que ya se estaban ejecutando, fue fácil recuperarlo. Si tiene una ventana de comando abierta, ejecute:

echo %PATH%

Si no lo hace, puede ver las variables de entorno de los programas que se ejecutan actualmente con Process Explorer (procexp) .

Tom Mayfield
fuente
3
SANTO CIELO. No sé por qué esto no se me ocurrió, pero me acabas de salvar un gran dolor de cabeza. TY.
dudewad
2
El "¡Ajá!" momento para mí cuando publiqué esto fue bastante gratificante.
Tom Mayfield
2
Oh, tu del pasado. Muchas gracias por desenroscar mi error total. Estaba perdido pero gracias a ti vi la luz y volví a encontrar el camino.
Sage Pourpre
8
Excelente respuesta Me salvó de restaurar una copia de seguridad. ¿Puedo compartir un truco potencialmente no tan obvio de cómo abrir una ventana de comandos si no tiene uno abierto? Si tiene un programa que tiene un cuadro de diálogo abierto (utilicé Chrome porque estaba abierto antes de perder la ruta), presione Ctrl-O para abrir un sitio web. Navegue a C: \ Windows \ system32 \ y busque cmd.exe. Haga clic derecho en cmd.exe y haga clic en Abrir. Aparecerá un símbolo del sistema con las variables de entorno del software (Chrome en este caso) y puede hacer eco de% path% para obtener sus antiguas variables de env.
triadiktyo
2
USTEDES SON UN GENIO, si pudiera votarlo más de una vez, seguramente lo haría. Después de instalar un poco de software que borró toda la ruta del sistema hace 2 días, miré mi barra de tareas y me di cuenta de que tenía un cmd que había estado abierto durante aproximadamente una semana, y su "echo% PATH%" no solo salvé mi tocino, pero me salvó de varias horas de dolorosa reconstrucción de caminos para VIsual Studio, Dotnet, Office y muchas otras aplicaciones grandes. ¡TODOS POR FAVOR VOTEN A ESTE INDIVIDUO!
Shawty
21

Seguí el consejo en la respuesta a una pregunta relacionada aquí y recuperé mi configuración de ruta anterior a partir de esta mañana usando regedit. Ampliando un poco esa respuesta, así es como lo hice. (Lea la respuesta vinculada para obtener las instrucciones completas, no proporciono todos los detalles aquí).

Seleccioné mi primer respaldo de hoy (marca de tiempo 11:43 AM en la sección 'Hoy')

Ejemplo de versiones anteriores de RegBack

y examinó el ControlSet más antiguo dentro del nodo HKEY_LOCAL_MACHINE/ Systemde esa copia del archivo de registro, ControlSet002:

ingrese la descripción de la imagen aquí

y copié el valor anterior de mi variable de ruta de la clave Control\ Session Manager\ Environment\ Pathdentro de ese nivel.

ingrese la descripción de la imagen aquí

Su kilometraje puede variar, ya que no sé exactamente qué desencadena la copia de seguridad del registro.

marfarma
fuente
1
Aún más fácil, una nota de la antigua pregunta "Tenga en cuenta que para el Sistema, dependiendo de cuánto tiempo hace que esto fuera así, puede volver a HKLM (versión anterior del conjunto de control) \ Control \ Session Manager \ Environment sin cargar una vieja colmena"
Jahmic
¿Qué es el moho? Cuando voy a las versiones anteriores de Regback, veo una carpeta anterior y, a pesar de la profundidad de la respuesta vinculada, todavía no sé qué hacer. Además, ¿cómo logró abrir el nodo HKEY_LOCAL_MACHINE / System de cualquier carpeta Regback?
Ungeheuer
¿Dónde se almacenan esas copias de seguridad?
Shimmy el
8

Podrías hacer una restauración del sistema.

Para restaurar su PC usando Restaurar sistema

Deslice el dedo desde el borde derecho de la pantalla y luego toque Buscar. (Si está usando un mouse, apunte a la esquina superior derecha de la pantalla, mueva el puntero del mouse hacia abajo y luego haga clic en Buscar). Ingrese Recovery en el cuadro de búsqueda, toque o haga clic en Configuración, y luego toque o haga clic en Recovery .

Toque o haga clic en Abrir Restaurar sistema y siga las indicaciones.

Dave
fuente
3
  • Desde el menú de inicio, abra Ejecutar (o presione ⊞ Win+ R).
  • Tipo regedit
    • Encontrar HKEY_LOCAL_MACHINE folder
    • Ve a la SYSTEM folder
    • Ir a la ControlSet002carpeta
    • Ir a la Controlcarpeta
    • Ir Session Manager
    • Ir a la Environmentcarpeta
    • Luego, dentro de la Environmentcarpeta, haga doble clicPath

El camino anterior debería estar allí.

Joramie Mier
fuente
1
Esta debería ser la respuesta aceptada. El elegido funciona para variables cortas y no permite copiar y pegar. Aquí puedes hacerlo según sea necesario.
javydreamercsw
3
Muestra la ruta actual. No el viejo.
Shimmy el
no me muestra el camino en absoluto :(
Ayyash
El instalador de WinAVR golpeó mi variable PATH en lugar de agregarla ... Funcionó para mí, ¡gracias por guardar!
shadowtalker
0

Solo descubrí el problema con las variables de entorno días después de que se arruinaran por la instalación de una aplicación desactualizada. Pero todavía tenía una copia de seguridad completa del registro. Allí se pueden encontrar todas las variables de entorno del sistema como fuera de la fecha de la copia de seguridad. Estos se pueden comparar con la situación actual según Sistema / Configuración avanzada del sistema / Variables de entorno. Dependiendo de cuán reciente sea la copia de seguridad y suponiendo que no haya cambios en la variable de entorno desde entonces, está bien. El peor de los casos es que tendrá que reinstalar las aplicaciones que había instalado después de la copia de seguridad del registro y antes de perder sus datos de ruta, que generalmente es menos trabajo que una restauración. A continuación explicaré cómo se puede hacer esto.

  1. Abra el archivo backup.reg con Notepad ++ (editor gratuito y excelente). Busque HKEY_LOCAL_MACHINE / SYSTEM / ControlSet001 / Control / Session Manager / Environment. Si eso no funciona, intente ControlSet002 o superior.

  2. Copie y pegue los datos hash hexadecimales (2) para la RUTA en una nueva ventana de Notepad ++. Busque / reemplace todos ',' (comas sin las comillas) con '' y todos '00' con '', y todos los espacios dobles '' con un solo espacio ''. Ahora debería quedar con "hexadecimal puro" sin comas o ceros como separador.

  3. Abra http://www.rapidtables.com/convert/number/hex-to-ascii.htm . Este es un convertidor hexadecimal a ascii. Copie y pegue los datos "hexadecimales puros" en la ventana hexadecimal y haga clic en convertir. Ahora puede ver los datos de su ruta y copiarlos y pegarlos en el Bloc de notas, compararlos con la versión actual y agregar los datos que faltan. Estás de vuelta en el negocio!

  4. Como beneficio adicional, es posible que también desee verificar las otras variables de entorno comparando los datos en Notepad ++ backup.reg con los valores actuales. Los datos faltantes se pueden recuperar de la misma manera que se explicó anteriormente.

Marco Polo
fuente
0

Eliminé accidentalmente la variable de entorno Path


Yo también, y muchos comandos que solían funcionar de repente produjeron un error:

The term '<command>' is not recognized as the name of a cmdlet, function, script file, or operable program. 


Las otras respuestas a este problema no me funcionaron, así que

Tuve que recuperar la variable de entorno Path poco a poco:

  1. Desde un símbolo del sistema normal, no PowerShell, escriba where <command>, por ejemplo, where npm.
  2. Ingrese "variables de entorno" en Cortana para editar las variables de entorno del sistema.
  3. En Variables del sistema, busque la variable Ruta y haga clic en Editar.
  4. Agregue cada ruta de archivo desde el paso 1.
  5. Reinicia tu computadora.
  6. Repita para cada comando que produce el error.
  7. Disfruta usando comandos que funcionan. :-)

ingrese la descripción de la imagen aquí

Súper jade
fuente
0

"Restaurar" de un conjunto predeterminado es otra opción, con el riesgo de que algunas aplicaciones instaladas se quejen hasta que se arreglen.
Antecedentes: sucedió al iniciar WLM después de un reinicio. El único hilo con información sobre el WLDcore.dll faltante sugirió una PATHvariable de entorno faltante .
Antes de dicho reinicio, había una consola PS administrativa abierta en el intento de hacer que Curl aceptara comandos. Debe haber eliminado la PATHvariable de alguna manera.

Afortunadamente, y desafortunadamente, los valores de RUTA predeterminados de Brink se copiaron en Propiedades del sistema \ Variables de entorno antes de acceder a los valores desde ControlSet001 (sin ControlSet002aquí) mencionado en otras respuestas en este hilo. Entonces, la única opción para recuperar los valores originales era con la restauración del sistema también mencionada en este hilo. Lo bueno es que las aplicaciones que usan PATHen esta máquina documentan sus requisitos, por lo que son fáciles de reparar.

Para aquellos que experimentaron algo similar, aquí están los valores de Windows 10 de Brink:

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows Live\Shared

Y su mínimo para sistemas operativos anteriores:

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
Laurie Stearn
fuente
-1

Lo acabo de recuperar haciendo lo siguiente: Mi configuración de ruta anterior todavía estaba en la pantalla de solicitud de dos cmd. Así que haz clic derecho sobre él con el mouse. Tome 'Seleccionar todo'. Esto copia tu pantalla. Abra el Bloc de notas y péguelo. Ahora resalte la definición de Ruta en el bloc de notas, haga clic derecho y copie. Vuelva a la pantalla de solicitud de dos cmd. haga clic derecho y pegue ¡Esto me ha funcionado muy bien!

JosieDoherty
fuente
Esto duplica la información ya presente en otra respuesta , y supone que uno tiene un símbolo del sistema abierto en esta situación.
bertieb