Jak przywrócić zmienną środowiskową Path, którą usunąłem?
Przypadkowo usunąłem zmienną środowiskową Path, tworząc nową o nazwie Path. Jak mogę przywrócić moją starą zmienną środowiskową Path?
Przypadkowo usunąłem zmienną środowiskową Path, tworząc nową o nazwie Path. Jak mogę przywrócić moją starą zmienną środowiskową Path?
Straciłem dziś PATH podczas instalacji programu, ale dzięki temu, że wszystkie istniejące programy były już uruchomione, łatwo było je odzyskać. Jeśli masz otwarte okno poleceń, uruchom:
echo %PATH%
Jeśli nie masz, możesz spojrzeć na zmienne środowiskowe aktualnie uruchomionych programów za pomocą Process Explorer (procexp) .
Zastosowałem się do porady w odpowiedzi na powiązane pytanie tutaj i odzyskałem moje poprzednie ustawienie ścieżki od dziś rano za pomocą regedit. Rozszerzając nieco na tę odpowiedź, oto jak to zrobiłem. (Przeczytaj połączoną odpowiedź, aby uzyskać pełne instrukcje, nie podaję wszystkich szczegółów tutaj. )
Wybrałem moją najwcześniejszą kopię zapasową z dzisiaj (11:43 AM timestamp w sekcji ‘Today’)
i zbadałem najwcześniejszy ControlSet w węźle HKEY_MACHINE/System tej kopii pliku rejestru, ControlSet002:
i skopiowałem poprzednią wartość mojej zmiennej ścieżki z klucza ControlSession Manager\Environment\Path w obrębie tego poziomu.
Twoja droga może się różnić, ponieważ nie wiem dokładnie, co wyzwala tworzenie kopii zapasowej rejestru.
Możesz wykonać przywracanie systemu.
Aby przywrócić komputer za pomocą Przywracania systemu
Przeciągnij palcem od prawej krawędzi ekranu, a następnie dotknij Szukaj. (Jeśli korzystasz z myszy, wskaż prawy górny róg ekranu, przesuń wskaźnik myszy w dół, a następnie kliknij Szukaj). W polu wyszukiwania wpisz Odzyskiwanie, stuknij lub kliknij Ustawienia, a następnie stuknij lub kliknij Odzyskiwanie.
Stuknij lub kliknij polecenie Otwórz przywracanie systemu, a następnie postępuj zgodnie z wyświetlanymi monitami.
regedit
HKEY_LOCAL_MACHINE folder
SYSTEM folder
ControlSet002
Control
Session Manager
Environment
kliknij dwukrotnie Environment
Powinna tam być poprzednia Ścieżka.
Problem ze zmiennymi środowiskowymi odkryłem dopiero kilka dni po tym, jak zostały one zniszczone przez instalację przestarzałej aplikacji. Ale wciąż miałem pełną kopię zapasową rejestru. Tam można znaleźć wszystkie zmienne środowiskowe systemu na dzień wykonania kopii zapasowej. Można je następnie porównać z obecną sytuacją w System / Zaawansowane ustawienia systemu / Zmienne środowiskowe. W zależności od tego, jak aktualna jest kopia zapasowa i zakładając, że od tego czasu nie zmieniły się żadne zmienne środowiskowe, jesteś w porządku. W najgorszym przypadku będziesz musiał ponownie zainstalować aplikacje, które zostały zainstalowane po wykonaniu kopii zapasowej rejestru i przed utratą danych ścieżki, co jest zazwyczaj mniej pracochłonne niż przywracanie. Poniżej wyjaśnię, jak można to zrobić.
Otwórz plik backup.reg za pomocą Notepad++ (darmowy i doskonały edytor). Znajdź HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Control/Session Manager/Environment. Jeśli to nie zadziała, spróbuj ControlSet002 lub wyższy.
Skopiuj i wklej dane hex(2) hash dla PATH do nowego okna Notepad++. Znajdź/zastąp wszystkie ‘,’ (przecinki bez cudzysłowów) przez ‘ ’ i wszystkie ‘00’ przez “, a wszystkie podwójne spacje ‘ ’ przez pojedynczą spację ‘ ’. Teraz powinieneś otrzymać "czysty heks” bez przecinków i zer jako separatorów.
Otwórz http://www.rapidtables.com/convert/number/hex-to-ascii.htm . To jest konwerter hex na ascii. Skopiuj i wklej dane “czystego heksa” do okna heksów i kliknij convert. Możesz teraz zobaczyć dane swojej ścieżki, i skopiować je do Notatnika, porównać z aktualną wersją i dodać brakujące dane. Wracasz do pracy!
Jako bonus możesz również sprawdzić inne zmienne środowiskowe, porównując dane w pliku Notepad++ backup.reg z aktualnymi wartościami. Brakujące dane można odzyskać w ten sam sposób, jak opisano powyżej.
Przypadkowo usunąłem zmienną środowiskową Path
Tak też zrobiłem i wiele komend, które kiedyś działały, nagle zaczęły generować błąd:
The term '<command>' is not recognized as the name of a cmdlet, function, script file, or operable program.
Inne odpowiedzi na ten problem nie działały dla mnie, więc
Musiałem odzyskać zmienną środowiskową Path po trochu na raz:
where <command>
, np. “Przywracanie” z domyślnego zestawu jest inną opcją, z ryzykiem, że niektóre zainstalowane aplikacje będą narzekać, dopóki nie zostaną naprawione.
Tło: Zdarzało się podczas uruchamiania WLM po restarcie. Jedyny wątek z informacją o brakującym WLDcore.dll sugerował brak zmiennej środowiskowej PATH
.
Przed wspomnianym restartem, była otwarta konsola administratora PS w próba sprawienia, aby Curl przyjmował komendy. Musiała ona jakoś wybić zmienną PATH
wraz z nią.
Na szczęście, i niestety, Brink’s domyślne wartości PATH zostały skopiowane doSystem Properties\Environment Variables przed uzyskaniem dostępu do wartości z ControlSet001 (brak ControlSet002 tutaj), o których mowa w innych odpowiedziach w tym wątku. Tak więc jedyną opcją odzyskania oryginalnych wartości było z przywracanie systemu również wspomniane w tym wątku. Dobrą rzeczą jest to, że aplikacje, które używają PATH
na tej maszynie, dokumentują swoje wymagania dotyczące tego, więc łatwo je naprawić.
Dla tych, którzy doświadczyli podobnych, tutaj Brink’s Windows 10 wartości:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows Live\Shared
I jego gołe minimum dla poprzednich OS-ów:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
```.
Właśnie go odzyskałem, wykonując następujące czynności: Moje poprzednie ustawienia ścieżki wciąż były na ekranie zachęty dos cmd. Więc kliknij na nim prawym przyciskiem myszy. Wybierz ‘Wybierz wszystko’. To skopiuje twój ekran. Otwórz Notatnik, i wklej. Teraz podświetl definicję Path w notatniku, kliknij prawym przyciskiem myszy i skopiuj. Wróć do ekranu dos cmd prompt. kliknij prawym przyciskiem myszy i wklej To zadziałało dla mnie, więc powodzenia!