Question: I have ~/.bash\_profile which I would like to be invoked every single time a new GNU screen is created so that all my aliases work in GNU screen as they work in terminal.

At this time this is what my ~/.screenrc looks like.

```
hardstatus on
hardstatus alwayslastline
hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %m/%d %C%a "

```

Answer: 
Some Mac applications rely on .bash\_profile and some on .bashrc. I have not figured out any particular rule for knowning which one is getting loaded but for consistency this is my .bash\_profile:

```
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

```
> 
> I solved this problem by moving all the contents of ~/.bash\_profile to ~/.bashrc. Apparently screen invokes ~/.bashrc before each window. – Nadal May 6 '10 at 21:22
> 
> 
> 

This comment is the right answer.