面试题答案
一键面试用途
.bashrc
:主要用于定义个人的bash shell配置,比如自定义别名(alias)、设置环境变量(仅在当前bash shell有效)、定义函数等,这些设置会影响bash的交互行为。.bash_profile
:主要用于设置环境变量,这些环境变量会影响用户登录后的整个会话环境,例如设置PATH
变量,确保系统能找到特定的可执行文件。它还常用来启动一些用户特定的程序或脚本。
加载时机
.bashrc
:当一个新的交互式bash shell启动时,就会加载.bashrc
文件。如果是通过ssh登录,或者在已有的bash shell中再开启一个子bash shell,都会加载.bashrc
。另外,执行source ~/.bashrc
命令也能手动加载。.bash_profile
:在用户登录系统时加载,且仅在登录时加载一次。当用户通过终端登录,或者在图形界面下通过启动器启动一个登录shell时,.bash_profile
会被读取。
适用场景
.bashrc
:适用于对bash shell的个性化配置,这些配置只影响当前的bash会话。例如,开发人员可能会在.bashrc
中定义一些开发相关的别名,方便在开发过程中快速执行命令,这些别名不需要在整个登录会话中都生效。.bash_profile
:适用于设置那些在整个登录会话期间都需要生效的环境变量和启动程序。例如,设置Java开发环境的JAVA_HOME
变量,这样在整个登录会话中,所有相关的Java程序都能正确找到Java的安装路径。