Plik .bash_profile (a także plik .profile) jest ładowany dla powłok logowania, powłoki nie zalogowane używają .bashrc (bez symbolu _). W pliku .screenrc znajduje się wiersz, który mówi screenowi, jaką powłokę ma się odrodzić podczas uruchamiania okna ekranowego (gdy nie uruchamia określonego programu jako aplikacji okienkowej). W moim pliku .screenrc jest to jako takie (łącznie z komentarzami):
# shell: Default process started in screen's windows.
# Makes it possible to use a different shell inside screen
# than is set as the default login shell.
# If begins with a '-' character, the shell will be started as a login shell.
shell -$SHELL
Sprawdź plik .screenrc i sprawdź, czy linia powłoki ma przed nim myślnik. Mając ten symbol myślnika i wymuszając powłokę logowania, otrzymasz swój .bash_profile. Zmienna $ SHELL w moim .screenrc używa wartości powłoki podanej przez powłokę, która uruchamia ekran (ogólnie dla mnie to bash).
W przypadku, gdy się zastanawiasz, największą różnicą, którą udało mi się odkryć między powłokami logowania a powłokami niezalogowanymi jest to, że powłoka niezalogowana jest zwykle wywoływana do wykonywania skryptów.
Pozyskiwanie
.bash_profile
jest w rzeczywistości czymś innym niż aplikacja terminalowa na komputery Mac, czego nie robi większość aplikacji terminalowych. Screen czyta~/.bashrc
jednak za każdym razem, gdy odradzasz nową powłokę.Jeśli zmienisz nazwę
~/.bash_profile
na~/.bashrc
(bez podkreślenia między bash i rc, jak w twoim pytaniu), to będzie to źródło.Moją preferowaną strategią jest jednak umieszczenie wszystkich moich ustawień w
bashrc
, a następnie źródło tego wbash_profile
ten sposób:źródło
Nie musisz zmieniać żadnego pliku konfiguracyjnego, jeśli zapiszesz wszystkie ustawienia
.bash_profile
, jak zwykle, aby skonfigurować terminal, i utworzysz łącze o nazwie.bashrc
skierowanej do twojej.bash_profile
sesji ekranowej poprzez:$ ln -s ~/.bash_profile ~/.bashrc
Wszelkie zmiany dokonane w jednym z plików są przechowywane w,
.bash_profile
ale również dostępne przez.bashrc
.Jedyną wadą jest to, że nie można dodawać ustawień tylko do jednego z plików konfiguracyjnych.
źródło
Powłoki logowania do Linuksa źródłują te, które się nie logują, dodając następujący wiersz w przypadku plików użytkownika:
źródło