Jak zresetować $ PATH?


14

Próbowałem dodać coś do $ PATH i wszystko poszło nie tak. Nie mogę teraz uruchomić żadnych poleceń, takich jak ls. Przejrzałem tę odpowiedź i użyłem następujących wierszy:

PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
PATH=$PATH:~/bin

Te linie tymczasowo naprawiają problem; jednak po ponownym uruchomieniu terminalu wydaje się, że zapominam o tych zmianach.

Jak mogę trwale zresetować moją $ PATH?

Korzystam z najnowszej wersji Mountain Lion.


5
Naprawiono:/bin/rm ~/.bash_profile
Nosrettap,

2
Dobre pytanie. Zawsze możesz podać poprawkę w odpowiedzi.
bassplayer7

Zapytany również o superużytkownika
glenn jackman

1
Zdając sobie sprawę, że już rozwiązałeś problem, użytkownicy z podobnym problemem mogą również znaleźć pomoc pod adresem/etc/paths
David Smith

Odpowiedzi:


16

Sugerowana odpowiedź na usunięcie .bash_profilenie jest ogólnie dobrym pomysłem. Istnieją inne rzeczy, które można ustawić w tym pliku oprócz PATHdefinicji.

Jeśli chcesz cofnąć efekty eksperymentu, po prostu usuń lub skomentuj ten PATHwiersz za pomocą #.

Nie chcesz edytować PATHod zera, ale dołącz do niego, tak jak w przypadku drugiego wiersza. Preferowaną metodą dodawania czegoś do ścieżki byłoby:

export PATH=$PATH:$HOME/bin

EDYCJA Ponieważ twój PATHjest popsuty, nie masz dostępu do zwykłych poleceń, aby dokonać tych zmian. Jako tymczasową poprawkę możesz zdefiniować nową minimalną ścieżkę w oknie terminala (nie w twoim .bash_profile), wpisując:

PATH=/bin:/usr/bin

To będzie chwilowo daje dostęp do nano ls mv vi cati rm- podstawowe narzędzia, by sprawdzić i edytować .bash_profilei usunąć problem ...

Powtórz, nie umieszczaj tej PATHdefinicji nigdzie poza czasem trwania sesji podczas dokonywania poprawek.


5

Polecam:

source /etc/profile

Właśnie tego używa Mac, aby ustawić początkową ścieżkę, i przywróci wszystko z powrotem, z wyjątkiem elementów dodawanych dla użytkownika.

Dokonuję przyzwoitej modyfikacji ścieżki w moim ~ / .bash_profile i umieściłem to na górze pliku, ponieważ miałem problemy z przeładowaniem mojego profilu podczas pracy po tym, jak poprawiłem tam alias lub coś i dodawało do mojej ścieżki zduplikowane odniesienia. Zamiast sprawdzać, czy jest już dodany, po prostu resetuję ścieżkę do wersji scratch i ponownie dołączam elementy, które chcę.


3

Usuń swój profil bash, aby przywrócić domyślny $PATH. Wpisz następujące polecenie w Terminal.app :

/bin/rm ~/.bash_profile

Zmiana nastąpi w następnej sesji powłoki lub sesji terminalowej.


Odpowiedzi na podstawie oryginalnych komentarzy pytającego, aby usunąć pytanie z kolejki bez odpowiedzi.
Graham Miln

4
Cóż, jeśli chcesz zachować inną zawartość swojego profilu, prosta /bin/mv ~/.bash_profile ~/bash_profilemoże być lepsza
nohillside

1
To najprostsza odpowiedź, jaką znalazłem na wszystkich stronach SE. Dzięki!
mr5

0

Domyślne OSX $PATHjest generowane z zawartości /etc/pathspliku, jego modyfikacja jest dość prosta.


1
Modyfikacja /etc/pathsniesie ryzyko zastąpienia zmian przez następną aktualizację OS X, nie działa to również w przypadku ścieżek specyficznych dla użytkownika, takich jak ~/bin.
nohillside

To prawda, chociaż zwykle radzę sobie z tymi w moim pliku .rc później. Nie miałem /etc/pathsjeszcze resetu przez aktualizację (kilka lat od kiedy zacząłem używać brew).
Chris Keele,

Obecnie hakuję obsługę administracyjną boxen, która - mam nadzieję - sprawi, że będę odporna na przyszłe aktualizacje nadpisujące.
Chris Keele,

0

Te metody są świetne! Jeśli masz ten problem z zsh, usuń ~/.zshrcTo jednak pozbędzie się twoich ustawień zsh.


/bin/mv ~/.bash_profile{,.bck}
Wolisz
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.