Concept Flow - .bashrc and .bash_profile
.bash_profile starts
Is it a login shell?
No→Skip .bash_profile
Yes
Run commands in .bash_profile
Does .bash_profile call .bashrc?
Yes→Run .bashrc
Shell ready for user
Open new terminal (non-login)
Run .bashrc only
Shell ready for user
When you start a login shell, .bash_profile runs first and may call .bashrc. For non-login shells, only .bashrc runs.