Reputation: 1428
I have serveral customized environment variables and functions in my ~/.bash_profile which I would like to be called automatically when I start my screen session with screen -D -R
, but apparently adding source ~/.bash_profile
in ~/.screenrc
doesn't solve my issue.
On every new screen I have to manually source the bash_profile.
I have noticed that this file can't be found while creating a new screen (when you create new screen there is the the line in the bottom showing what commands are executing and it returns that the file can't be found.)
Upvotes: 4
Views: 5312
Reputation: 361
You can try configuring screen
to run a login-shell by default.
Screen runs a sub-shell, unless told otherwise (See "shell" .screenrc command). Example .screenrc
entry to run a login-shell:
shell -$SHELL
Upvotes: 4
Reputation: 123480
~/.bash_profile
is only run by login shells.
~/.bashrc
is run by other interactive shells, such as those started by screen
.
~/.screenrc
is a screen configuration file, and is not used to configure bash.
Put things that should be set up per shell in ~/.bashrc
, and add source ~/.bashrc
to your ~/.bash_profile
.
Upvotes: 6