• Bash环境配置文件


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

    其中~/.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)不执行。 

  • 相关阅读:
    在可变字符串类型varchar建立索引时有什么要注意的吗?
    单表行数多少时适合分库分表?
    存储字符串时怎么设计或者考量那?
    小数类型选择float、double正确吗?
    解决mysql java.sql.SQLException: The server time zone value‘XXXXXX' is unrecognized or represents...
    阿里云 Windows Server 2012 密码过期设置
    规则引擎 drools
    day-06
    微信小程序前端开发踩坑(一)
    CornerStone使用跳坑总结(陆续更新)
  • 原文地址:https://www.cnblogs.com/pandachen/p/5037321.html
Copyright © 2020-2023  润新知