Odśwież zmienne env po edycji pliku bashrc


59

Często edytowałem .bashrcplik, aby wyeksportować nowe zmienne środowiskowe.

Czy zamiast wygodniej odświeżyć konsolę i zamknąć nową i odświeżyć zmienne env?

Odpowiedzi:


78

W tym samym oknie możesz po prostu wpisać, bashaby rozpocząć nowe. Jest to równoważne z zamknięciem okna i ponownym otwarciem nowego.

Możesz też wpisać source ~/.bashrcźródło .bashrcpliku.


7
Nie ma potrzeby wykonywania innej powłoki. sourcejest właściwy sposób
Matteo,

2
nie ma też potrzeby wpisywania długiego słowa source. można po prostu wpisać kropkę zamiast niego: . ~/.bashrc.
pędzi

4
Wpisywanie @Rush sourcepokazuje użytkownikowi, które polecenie jest wywoływane. Nie wierzę w pokazywanie skróconych poleceń nowym użytkownikom, dopóki nie zrozumieją, co robi kod.
n0pe

10
zwróć uwagę, że samo pozyskiwanie bashrc niekoniecznie oznacza ponowne uruchomienie bash. zdefiniowane zmienne nie są automatycznie niezdefiniowane. opcje powłoki nie są automatycznie cofane. sourcing bashrc wykonuje tylko to, co jest napisane w bashrc. nie przywraca żadnych innych zmian w środowisku. rozpoczęcie nowej sesji bash wewnątrz starego niekoniecznie oznacza ponowne uruchomienie bash, ponieważ nowy proces dziedziczy środowisko po starym.
lesmana

2
@MaxMackie Biorąc pod uwagę, w jaki sourcesposób bashizm, który wymaga dłuższego pisania, nie oferuje żadnych korzyści w stosunku do swojego przenośnego we wszystkich odpowiednikach powłok, .nie widzę sensu zachęcania nikogo, nowego lub doświadczonego, do korzystania z niego.
jw013,


3

Oprócz tego, co sugerowali inni, odkryłem, że sourcenie rozbroi wcześniej przypisanych zmiennych środowiskowych. Jeśli więc chcesz rozbroić zmienne środowiskowe, musisz to zrobić ręcznie.

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.