使用终端ssh登录到Linux操作系统的控制台后,会出现一个提示符号(例如:#或~)。在这个提示符号之后,您可以输入命令。会响应,这一系列动作是由一个所谓的Shell来处理的。Shell是一种程序,最常用的是Bash,也是默认用于登录系统的shell。bashrc和profile都是shell启动设置文件(其实这两个文件也是shell脚本),可以为当前shell初始化环境变量,类似于MicrosoftDOS/Windows下的autoexec.bat文件。下面详细介绍bashrc和profile的用途和区别:forindividualusers.bashrc#~/.bashrc:executedbybash(1)fornon-loginshells..profile#~/.profile:executedbyBourne-compatibleloginshells.forallusers/etc/庆典。bashrc#System-wide.bashrcfileforinteractivebash(1)shells./etc/profile#/etc/profile:system-wide.profilefilefortheBourneshell(sh(1)bashrc和profile的区别从上面的英文描述我们可以知道两者的区别bashrc和profile因为:1.bashrc会在系统启动后自动运行2.profile只有在用户登录后才会运行3.设置完成后可以使用sourcebashrc命令更新bashrc,也可以使用sourceprofile命令更新profilePS:通常我们修改bashrc,有些linux发行版不一定有profile文件4./etc/profile中设置的变量(全局)可以应用于任何用户,而变量设置在~/.bashrc等(本地)只能继承/etc/profile中的变量,它们是“父子”关系。补充介绍另外,有必要补充介绍几个与bashrc相关的文件:~/.bash_profile:每个用户都可以通过这个文件来输入自己专用的shell信息。当用户登录时,该文件只执行一次!默认情况下,他会设置一些环境变量并执行用户的.bashrc文件。~/.bash_logout:每次退出系统(退出bashshell)时执行该文件。~/.bash_profile是交互登录模式进入bash运行,~/.bashrc是交互非登录模式进入bash运行,通常两者的设置大致相同,所以通常前者会调用后者。
