.profile
和之间有什么区别.bash_profile
,何时配置哪个?
即,如果我配置.bash_profile
,是否还需要配置.profile
?
.profile
和之间有什么区别.bash_profile
,何时配置哪个?
即,如果我配置.bash_profile
,是否还需要配置.profile
?
Answers:
假设bash
是您的默认外壳,则在bash
手册页(man bash
)中描述了差异:
When bash is invoked as an interactive login shell, or as a non-interac-
tive 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. The --noprofile option may be used when the shell is started
to inhibit this behavior.
手册页中提供了更多详细信息,该手册介绍了POSIX-shell兼容模式.profile
。阅读整个手册页部分以获取所有详细信息。
.profile在正常的shell进程(例如,打开终端工具)时由bash执行。.bash_profile是由bash用于登录shell的-举例来说,这是当您远程telnet / ssh进入计算机时。例如,如果您远程SSH到计算机中(例如您打开X终端),则最初将执行.bash_profile。如果在该XTerminal中键入“ xterm”并生成另一个X终端,则将为XTerminal的第二个实例执行.profile。这些文件位于您的主目录(〜)中。如果默认情况下我没有记错的话,它们都执行〜/ .bashrc,因此您可以对其进行编辑以配置登录和非登录Shell的通用设置/变量(例如,设置PATH,某些别名/快捷方式等)。
.profile
?
.profile
不仅.bashrc
:(