再编译程序时有些配置文件要写入到~/.bash_profile中,并设置环境变量。以前并不知道家目中这些文件是作什么的找了一下。 html
~/.bash_profile 确实是 当登陆时会自动执行,好比在里面写上一句 printf 9999 linux
在登陆系统显示用户前会输出9999 shell
/etc/profile:此文件为系统的每一个用户设置环境信息,当用户第一次登陆时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. bash
~/.bash_profile:每一个用户均可使用该文件输入专用于本身使用的shell信息,当用户登陆时,该文件仅仅执行一次!默认状况下,他设置一些环境变量,执行用户的.bashrc文件. .net
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登陆时以及每次打开新的shell时,该该文件被读取. unix
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
另外,/etc/profile中设定的变量(全局)的能够做用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
一般两者设置大体相同,因此一般前者会调用后者。 htm
.bash_history 是历史记录 history 继承
引用 http://linux.chinaunix.net/doc/system/2005-02-03/1084.shtml .bash_profile和.bashrc的什么区别 get