login-shell 和 non-login shell 对环境配置文件的读取
来源:互联网 发布:淘宝实体店怎么认证 编辑:程序博客网 时间:2024/05/17 06:30
当我们进入bash,我们会发现我们已经有了很多变量可以用了,即使我们还什么都没操作。
为什么?
这就不得不提到系统的几个环境配置文件了。
其实,在bash启动的时候,它会去读取一些环境配置文件,这些配置文件又可以分为全局系统的配置文件和用户个人偏好配置文件。
好了,继续我们的话题。
我们先来看一看当我们登录后,login-shell 会读取哪些配置文件。
1. /etc/profile :系统整体的设置
2. ~/.bash_profile 或 ~/.bash_login 或 ~/.profile,其中需要注意的是这三个文件里面只会读一个:按照这个顺序哪个存在就读哪个。(我的ubuntu里只有.profile)
这里有两个方面需要注意
1. bash 读取 /etc/profile 时会调用另外一些文件,
如 /etc/inputrc 和 /etc/profile.d/*sh 和 /etc/sysconfig/i18n。
2. ~/.profile 会调用 ~/.bashrc
事实上还有一些配置文件会影响到你的 bash 操作:
~/.bash_history
我们的历史命令所在地。
每次读取bash 时,bash会先读取这个文件,把历史命令读入内存,所以每次我们登录bash时都能查看一些历史命令。
~/.bash_logout
这个文件记录了当我注销bash后系统帮我做完什么操作后才离开
默认情况下只是帮我们清掉屏幕的信息而已
后记:
'source'和'.'是与环境配置文件有关的两个命令。
当我们修改了 /etc/profile 或是 ~/.profile后,要想使修改生效,往往不得不注销然后重新登录,而通过这两个命令我们就可以省去这一步。
source ~/.profile 或 . ~/.profile
作用:将不同的环境变量写在不同的文件中,在不同的情境下执行不同的文件,这样就会使变量的设置简洁化。
为什么?
这就不得不提到系统的几个环境配置文件了。
其实,在bash启动的时候,它会去读取一些环境配置文件,这些配置文件又可以分为全局系统的配置文件和用户个人偏好配置文件。
在介绍这些配置文件与bash两者的作用机制之前,我们得先来了解一下 login-shell 和 non-login shell。
这是因为两种的shell读取的环境配置文件不一样。
login-shell:
取得bash时需要完整的登录流程的,就称为login-shell.比如,你用tty1~tty6登录时,需要输入用户的帐号与密码,此时取得的bash就称为login-shell。non-login shell:
取得bash时不需要登录。你在gnome桌面环境中打开了一个bash,不需要输入用户名和密码进行验证,这样你取得的bash就是non-login shell.
好了,继续我们的话题。
我们先来看一看当我们登录后,login-shell 会读取哪些配置文件。
一般来说,login-shell 会读取两个文件:
1. /etc/profile :系统整体的设置
2. ~/.bash_profile 或 ~/.bash_login 或 ~/.profile,其中需要注意的是这三个文件里面只会读一个:按照这个顺序哪个存在就读哪个。(我的ubuntu里只有.profile)
这里有两个方面需要注意
1. bash 读取 /etc/profile 时会调用另外一些文件,
如 /etc/inputrc 和 /etc/profile.d/*sh 和 /etc/sysconfig/i18n。
2. ~/.profile 会调用 ~/.bashrc
事实上还有一些配置文件会影响到你的 bash 操作:
~/.bash_history
我们的历史命令所在地。
每次读取bash 时,bash会先读取这个文件,把历史命令读入内存,所以每次我们登录bash时都能查看一些历史命令。
~/.bash_logout
这个文件记录了当我注销bash后系统帮我做完什么操作后才离开
默认情况下只是帮我们清掉屏幕的信息而已
后记:
'source'和'.'是与环境配置文件有关的两个命令。
当我们修改了 /etc/profile 或是 ~/.profile后,要想使修改生效,往往不得不注销然后重新登录,而通过这两个命令我们就可以省去这一步。
source ~/.profile 或 . ~/.profile
作用:将不同的环境变量写在不同的文件中,在不同的情境下执行不同的文件,这样就会使变量的设置简洁化。
- login-shell 和 non-login shell 对环境配置文件的读取
- login shell和non-login shell环境配置
- login shell和non-login shell
- login shell 和 non-login shell
- login shell 和 non-login shell
- login shell和non-login shell
- login shell和non-login shell
- login shell和non-login shell
- login shell和non-login shell
- login shell 和non-login shell的区别
- login shell和non-login shell的区别:
- login shell和non-login shell环境配置、 环境变量的设置、查看
- login shell non-login shell
- login shell 的配置文件读取流程
- Login and non-login shell
- login-shell和non login-shell区别 & bash配置文件实验报告
- 如何理解login shell 和non-login shell
- 环境配置文件: login, non-login shell, /etc/profile, ~/.bash_profile, source, ~/.bashrc
- Listview控件使用技巧大汇总
- Spring框架中整合Hessian开发WebService
- u盘安装linux,将grub安装到了u盘,导致没U盘系统无法引导启动的解决方法
- ScrollView的代理方法 scrollViewDidEndDecelerating和scrollViewDidEndDragging
- 第十一周项目2-6-都要学c
- login-shell 和 non-login shell 对环境配置文件的读取
- mysql存储过程语法及实例
- tableView判断model中的表格是否为空
- 正则表达式和sed的基础知识
- MFC中列表控件的使用
- 身份证前6位与省市对应关系
- setInterval定时器
- linux 中断
- UITableView中的visibleCells的用法(visibleCells帮上大忙了)