1、Bash检查环境变量文件的方式,取决于系统运行Shell的方式,通常系统运行Shell有3种方式:

)通过系统用户登陆后默认运行的Shell
)非登陆交互式运行Shell
)执行脚本运行非交互式Shell

2、第一种情况下,当用户登录Linux系统时,Shell会作为登陆Shell启动,此时Shell加载配置文件的顺序:

)首先加载/etc/profile,这是linux系统默认的Shell主配置文件,每个登陆用户都会加载。
)加载1后,才会执行/etc/profile.d目录下的脚本文件,这个目录下有很多脚本,都是需要用户登陆后立即运行的脚本。
)之后运行$HOME/.bash_profile,这个文件里会调用$HOME/.bashrc(如果有,则执行,如果没有,则不执行),在$HOME/.bashrc文件中又会去找/etc/bashrc(同样是如果有,就执行,没有,就不执行)。

3、如果用户的Shell不是登陆时启动的,如:手动敲下bash时启动的,或者其他不需要输入密码的登陆,远程SSH连接等情况,这种非登陆Shell只会加载$HOME/.bashrc,并会去找/etc/bashrc,情况如2.3所示。

4、如果希望在非登陆Shell中也可以读到设置的环境变量等内容,就需要将变量设定等写入$HOME/.bashrc或者/etc/bashrc,而不是HOME/.bash_profile或者/etc/profile

5、配置文件中,常用export来定义环境变量,export的作用是将变量输出到Shell的所有进程中。

最新文章

  1. A - Ice_cream’s world III
  2. SQL Server performance tips
  3. 转换Excel表格到MarkDown:exceltk
  4. sentence patterns
  5. hadooop2.6 job pending research
  6. Review of Segmentation for Medical image analysis
  7. 快速掌握grep命令及正则表达式
  8. 线程间操作无效: 从不是创建控件“label4”的线程访问它。
  9. C#学习日志 day 5 plus------ interface 数组及stringBuilder相关
  10. 解决warning: incompatible implicit declaration of built-in function 'malloc'
  11. .Net中批量添加数据的几种实现方法比较
  12. ECMAScript 5 新特性
  13. 【Jmeter基础知识】Jmeter响应断言和断言结果
  14. selenium报错
  15. Ubuntu:编译Linux内核源代码和内核模块
  16. electron 截图为空
  17. vuejs实现数据驱动视图原理
  18. django网页的分页功能,大家如果有疑问请留言
  19. RabbitMQ - exchange
  20. WC2018 滚粗记

热门文章

  1. UE如何将某些字符替换成换行
  2. 把普通java项目转换成maven项目
  3. AS3的反编译
  4. 使用Android编写录制视频小程序演示样例
  5. 使用Python创建MySQL数据库实现字段动态添加以及动态的插入数据
  6. Android Studio经常使用配置及使用技巧(二)
  7. eclipse javaWeb项目如何引入jar包
  8. win10下Visual Studio 2015,C++ x64编译zlib
  9. Java任务调度框架Quartz
  10. 【LeetCode】19. Remove Nth Node From End of List (2 solutions)