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)不执行。
Bash环境配置文件的更多相关文章
- 第6天【egrep、bash环境配置及脚本、vim编辑器】
bash环境配置及脚本(02)_recv bash环境配置及脚本(02)_recv bash环境配置文件: 按生效范围划分,存在两类: 全局配置: /etc/profile /etc/bashrc 个 ...
- Bash Shell的环境配置文件
login shell:取得bash时需要完整的登录流程 non-login shell:取得bash接口的方法不需要重复登录,举例来说,你以x window登录Linux后,再以x的图形界面启动终端 ...
- bash 的环境配置文件
http://www.cnblogs.com/ggjucheng/archive/2012/11/01/2750179.html bash 的环境配置文件 你是否会觉得奇怪,怎么我们什么动作都没有进行 ...
- 学习bash——环境配置
一.环境配置文件的重要性 Bash在启动时直接读取这些配置文件,以规划好bash的操作环境. 即使注销bash,我们的设置仍然保存. 二.login shell 通过完整的登录流程取得的bash,称为 ...
- 菜鸟学Linux - bash的配置文件
bash是各大Linux发行版都支持的shell.当我们登陆bash的时候,虽然我们什么都没做,但是我们已经可以在bash中调用各种各样的环境变量了.这是因为,系统中已经定义了一系列的配置文件,以及加 ...
- Linux的环境配置文件----.bashrc文件(转)
Linux的环境配置文件----.bashrc文件 .bashrc文件主要保存个人的一些个性化设置,如命令别名.路径等.也即在同一个服务器上,只对某个用户的个性化设置相关.它是一个隐藏文件,需要使 ...
- [转帖]linux bash环境变量简单总结
linux bash环境变量简单总结 来源链接:http://www.178linux.com/8005 原创文章,如有转载,请注明原文地址 需要简单学习一下. 其实 我都是直接放一个 .sh文件到 ...
- linux bash环境变量简单总结
来源链接:http://www.178linux.com/8005 原创文章,如有转载,请注明原文地址 一.环境变量简介 Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境 ...
- Linux系列(10):入门之bash基础与bash环境设置
了解什么是shell吗? 知道如何查询当前系统支持的shell版本吗? 了解如何判断某个指令是否是bash的内置指令吗? 了解Linux的变量吗,知道如何定义与删除变量吗,知道如何赋值吗,知道如何获取 ...
随机推荐
- python之基础中的基础(一)
python是一个效率极高的语言,现在市面上的机器学习大部分是由python和R语言完成,所以在不久之前小仙心中便种下了学习python的想法.下面是这一个月多月以来学习的总结,都是基础中基础了. 1 ...
- mysql获取当前日期的周一和周日的日期
,,date_format(curdate(),)//获取当前日期 在本周的周一 的日期 ,,date_format(curdate(),)//获取当前日期 在本周的周日 的日期
- XSS攻击及预防
跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者往Web页面里插 ...
- PipedInputStream和PipedOutputStream详解
PipedInputStream类与PipedOutputStream类用于在应用程序中创建管道通信.一个PipedInputStream实例对象必须和一个PipedOutputStream实例对象进 ...
- 使用java对文件批量重命名
有时候从网络上下载的电视剧或者动漫,名字上都会被该网站加上前缀或者后缀,如图: 那么处女座的同学就不同意了,不行,我就是想让它按照我的习惯方式命名!但是呢,一个个修改是不是特别麻烦,如果是上百个呢?如 ...
- CentOS系统搭建gitolite服务
1.安装相关支持软件 a.$yum install perl-Time-HiRes openssh-server perl -y b.$yum -y install git 2.服务端操作:创建git ...
- FiddlerScript高级技巧---自定义Fiddler菜单
Tips 书接上回, Fiddler插件 在团队内部试用后,效果很不错,小伙伴们也提出了很多改进的建议: 最近一段Fiddler使用的仍较为频繁,以前碰到一些特殊测试需求时,总是自己在FiddlerS ...
- Node.js入门以及第一个helloworld程序
1.概念:简单的说 Node.js 就是运行在服务端的 JavaScript.学之前需要明白Node.js是无法挑战jsp.php或者asp这种老牌网站的地位的,是永远不会出现在证券.金融这种领域的. ...
- Hibernate中遇到的一个Exception
做项目的时候遇到一个很头疼的报错:Illegal attempt to associate a collection with two opensessions 出错原因: 一个Object Ver ...
- ReentrantLock深入学习
ReentrankLock 分为 非公平锁及公平锁 首先我们看一下它里面有哪些属性: private final Sync sync;Sync 这个类是 ReentrantLock的 一个静态内部类 ...