每个不同的UNIX / Linux shell启动文件的目的是什么?

以前,当第一次设置* NIX环境时,我会把所有的shell定制放到.bashrc中,并使用下面的.bash_profile:

if [ -f $HOME/.bashrc ]; then . $HOME/.bashrc fi 

但是,基于这个答案及其相关的评论,我最近把我的PATH重定义移动到.bash_profile。

你觉得什么types的命令应该进入.profile,.bash_profile,.bashrc(和其他的dotfiles),为什么?

根据shell的调用方式,读取或不按特定的顺序读取。 “男人bash”的调用部分将给出命令和读取时间。 这取决于shell是否被调用为交互式和/或loginshell。

这个链接会告诉你'为什么'

我对其他类似问题的回答可能会有所帮助:

“login”和“交互式”bash shell之间有什么区别?