Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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?

share|improve this question
up vote 5 down vote accepted

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.


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:

share|improve this answer
Thank you. This works! :) – Jam May 14 '11 at 22:21

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.