一、环境配置文件读取优先级

其中~/.bash_profile,~/.bash_login,~/.profile三个文件只有一个有效,查找优先级从左至右降低。
bash会一直检查是否有~/.bashrc,一旦发现有就立即执行。
在ubuntu 10.04中, /etc/profile存在,用户主目录下有.bashrc文件。

二、环境配置文件简介

1、/etc/profile

由系统管理程序建立的一个全系统(sytstem-wide)的初始化文件,Shell提示符出现在屏幕上之前,该文件就被读取了。
功能是检查收件箱是否收到邮件,从/etc/motd调出当前日期等信息加以显示,等。
/etc/motd: 在login成功登录之后且执行登录shell之前,它显示/etc/motd文件中的内容。motd-message of the day。

2、~/.bash_profile

BASH_ENV(或ENV)在该文件中设置,若它被赋值为一个文件名,则在其后每次启动一个新的交互式bash shell或bash脚本的时候都会执行该变量指定的文件。
BASH_ENV指定的文件里包含着特定的bash变量、别名和函数定义,通常是~/.bashrc文件。
当-norc命令行选项打开时, BASH_ENV文件不执行。

3、~/.bashrc

BASH_ENV变量指定的文件,包含用户定义的变量、别名和函数。

4、/etc/bashrc

系统范围的变量、函数和别名定义、主提示符PS1在该文件中设置。

5、~/.profile

用户定义的初始化文件,当.bash_profile和.bash_login没有时,就会读取该文件。
在该文件中定制自己的shell环境、终端设置、初始化窗口应用程序和数据库应用程序。

6、~/.bash_logout

当用户退出登录shell时,若存在该文件,就执行它。
该文件通常包含有清除临时文件、截断历史文件和记录退出登录时间等作用的命令。

三、防止执行启动文件

1、带-noprofile选项执行bash时

/etc/profile, ~/.bash_login或~/.profile不会被执行。

2、带-p或-norc选项执行bash时

~/.profile或BASH_ENV文件(~/.bashrc)不执行。

Bash环境配置文件的更多相关文章

  1. 第6天【egrep、bash环境配置及脚本、vim编辑器】

    bash环境配置及脚本(02)_recv bash环境配置及脚本(02)_recv bash环境配置文件: 按生效范围划分,存在两类: 全局配置: /etc/profile /etc/bashrc 个 ...

  2. Bash Shell的环境配置文件

    login shell:取得bash时需要完整的登录流程 non-login shell:取得bash接口的方法不需要重复登录,举例来说,你以x window登录Linux后,再以x的图形界面启动终端 ...

  3. bash 的环境配置文件

    http://www.cnblogs.com/ggjucheng/archive/2012/11/01/2750179.html bash 的环境配置文件 你是否会觉得奇怪,怎么我们什么动作都没有进行 ...

  4. 学习bash——环境配置

    一.环境配置文件的重要性 Bash在启动时直接读取这些配置文件,以规划好bash的操作环境. 即使注销bash,我们的设置仍然保存. 二.login shell 通过完整的登录流程取得的bash,称为 ...

  5. 菜鸟学Linux - bash的配置文件

    bash是各大Linux发行版都支持的shell.当我们登陆bash的时候,虽然我们什么都没做,但是我们已经可以在bash中调用各种各样的环境变量了.这是因为,系统中已经定义了一系列的配置文件,以及加 ...

  6. Linux的环境配置文件----.bashrc文件(转)

    Linux的环境配置文件----.bashrc文件   .bashrc文件主要保存个人的一些个性化设置,如命令别名.路径等.也即在同一个服务器上,只对某个用户的个性化设置相关.它是一个隐藏文件,需要使 ...

  7. [转帖]linux bash环境变量简单总结

    linux bash环境变量简单总结 来源链接:http://www.178linux.com/8005 原创文章,如有转载,请注明原文地址 需要简单学习一下. 其实 我都是直接放一个 .sh文件到 ...

  8. linux bash环境变量简单总结

    来源链接:http://www.178linux.com/8005 原创文章,如有转载,请注明原文地址 一.环境变量简介 Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境 ...

  9. Linux系列(10):入门之bash基础与bash环境设置

    了解什么是shell吗? 知道如何查询当前系统支持的shell版本吗? 了解如何判断某个指令是否是bash的内置指令吗? 了解Linux的变量吗,知道如何定义与删除变量吗,知道如何赋值吗,知道如何获取 ...

随机推荐

  1. git 设置不需要输入密码, 去除 fetch / pull 代码每次都需要输入密码的烦恼

    https方式每次都要输入密码,按照如下设置即可输入一次就不用再手输入密码的困扰而且又享受https带来的极速 设置记住密码(默认15分钟): git config --global credenti ...

  2. 系统启动 之 Linux系统启动概述(2)

    博客:http://blog.csdn.net/younger_china/article/details/51615916 Linu系统启动是一个"冗长乏味"的过程,那么我们现就 ...

  3. 基于header的一些常用指令详解

     header常用指令 header分为三部分: 第一部分为HTTP协议的版本(HTTP-Version): 第二部分为状态代码(Status): 第三部分为原因短语(Reason-Phrase) ...

  4. linux 下 启动oracle

    [root@csyang ~]# su - oracle #首先su到oracle用户 [oracle@csyang ~]$ sqlplus sys/passwd as sysdba #使用sys用户 ...

  5. Linux学习之竿头直上

    今天第二讲昨天我们讲解了10基础命令,今早上我继续为大家讲解10个linux常见命令 今天主要讲解与网络相关的命令和软件安装的命名 NetworkManager 与rpm 在windows中我们查看网 ...

  6. cmd 命令行模式操作数据库 添加查询 修改 删除 ( 表 字段 数据)

    一 查看数据库.表.数据字段.数据 1 首先配置环境变量 进入mysql  或者通过一键集成工具 打开mysql命令行  或者mysql 可视化工具 打开命令行 进入这样的界面   不同的机器操作不同 ...

  7. bootstrap+masonry.js写瀑布流

    最近在用bootstrap写一个网站,其中有个图文展示的页面要用到瀑布流的效果.因为项目要求,项目要以bootstrap为基准,不准私自添加内联样式.内部样式,所以,自己写瀑布流就不行了,所以,根据要 ...

  8. grep与正则表达式

    grep的作用:文本搜索工具,根据用户指定的"模式"对目标文件逐行进行匹配检查:打印匹配到的行. 模式:正则表达式编写的过滤条件. 正则表达式(REGEXP):由一类特殊字符及文本 ...

  9. Power Pivot表属性无法切换回表预览模式的问题

    近期Office365用户升级后解决了在Power Pivot中输入中文的问题,但是同时也带来了一个新的问题就是表属性窗口默认为“查询编辑器”模式,且无法切换回“表预览”模式. 本文和您分享在这种情况 ...

  10. 从源码来理解slf4j的绑定,以及logback对配置文件的加载

    项目中的日志系统使用的是slf4j + logback.slf4j作为一个简单日志门面,为各种loging APIs(像java.util.logging, logback, log4j)提供一个简单 ...