Файл .bash_profile (а також файл .profile) завантажується для оболонок входу, а оболонки без входу використовують .bashrc (немає символу). У файлі .screenrc є рядок, який повідомляє екрану, яку оболонку потрібно породити при запуску вікна екрана (коли не запускає конкретну програму як вікно програми). У моєму .screenrc файлі це як таке (включаючи також коментарі):
# 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
Перевірте свій .screenrc файл і переконайтеся, що лінія оболонки має тире перед ним. Маючи цей символ тире і примушуючи оболонку входу, ви отримаєте свій .bash_profile. Змінна $ SHELL в моєму .screenrc використовує значення оболонки, передбачене оболонкою, яка запускає екран (як правило, для мене це bash).
У випадку, якщо вам цікаво, найбільша різниця, яку мені вдалося виявити між реєстраційними оболонками та оболонками без входу, полягає в тому, що оболонка без входу, як правило, викликається виконанням сценаріїв.