.bash_profile 只有在bash作为登录shell时使用 (即需要输入用户名、密码才能进入的时候)
.bashrc 只在bash ‘不’作为登录shell 时使用。
举个例子,如果你的linux 默认进入字符界面,当你输入完用户名、密码后进入bash时,.bash_profile被执行,此时定义在 .bash_profile的别名有效。
如果你在图形界面,打开一个终端(比如 gnome-terminal),进入bash,此时则是 .bashrc 被执行,定义在 .bashrc的别名有效。
由于现在我们大都都只用图形界面,一般来说都只是配置 .bashrc。 或者通过符号链接的方法让 .bash_profile 和 .bashrc 保持一致。
其实区别已经在相应的文件中已经标明请看如下:
".bash_profile" # User specific environment and startup programs
.bashrc # User specific aliases and functions
他俩是调用关系 都一样,但是添加的别名有冲突的话会调用后一个