Odpowiedzi:
tmuxUruchamia shell logowania domyślnie, więc ~/.bashrcnie będzie wykonywany (które następnie kolejno źródła ~/.bash_aliases. Trzeba źródła ~/.bashrcz listy ~/.bash_profile. Patrz INVOCATIONsekcja man bash.
(Odpowiedź Chrisa Downa zawiera właściwe wyjaśnienie, ale nie dobre obejście)
Twój problem wynika z połączenia błędu projektowania basha i błędu projektowania tmux.
Domyślnie tmux uruchamia powłokę logowania w każdym oknie. To nie ma sensu: jeśli ustawiłeś tmux jako powłokę logowania, musisz ustawić default-commandopcję na coś innego niż tmux; a jeśli nie ustawiłeś tmux jako powłoki logowania, musisz ustawić default-commandopcję unikania uruchamiania powłoki logowania w tmuxie. Więc wypowiedz to w swoim, ~/.tmux.confaby powiedzieć Tmuxowi, aby uruchomił zwykłą powłokę:
set-option -g default-command $SHELL
Wtedy .bashrczostaniesz przeczytany. Jest jeszcze jeden problem z bash, który nie ma tutaj znaczenia, jeśli skonfigurujesz tmux zgodnie z zaleceniami powyżej, ale który pojawi się ponownie, jeśli zalogujesz się w trybie tekstowym (na konsoli tekstowej lub przez SSH). Bash czyta ~/.bash_profilew powłokach logowania i ~/.bashrcw interaktywnych powłokach, ale tylko wtedy, gdy nie są one powłokami logowania. Aby czytać ~/.bashrcrównież w powłokach logowania, jeśli są interaktywne, dodaj to do ~/.bash_profile:
case $- in *i*) . ~/.bashrc;; esac
tmux? Korzystam z tmuxa około roku i nie widziałem żadnych problemów z aliasami. Spróbuj dodaćset -xna początku.bashrci uruchomtmuxpoleceniesource ~/.bashrc. Być może znajdziesz jakieś błędy, a to rozwiąże twój problem.