Macos – initialize the environment when the shell loads

bashmacosterminal

I am using bash shell and have content in my .bashrc.

When Terminal app opens (on my mac), this file however is not initialized.

I am always able to manually . ./.bashrc, however i'd rather not have to do it.

What is the name of the file which, would either initialize my environment for me, or the file where i can put my customization options in?

Best Answer

In the general case you can use ~/.profile


Also note (from the bash manpage):

When bash is invoked as an interactive login shell, or as a non-interactive shell with the --login option, it first reads and executes commands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable.

and:

When an interactive shell that is not a login shell is started, bash reads and executes commands from /etc/bash.bashrc and ~/.bashrc, if these files exist. This may be inhibited by using the --norc option. The --rcfile file option will force bash to read and execute commands from file instead of /etc/bash.bashrc and ~/.bashrc.

For a more complete question/answer, see:

Related Question