CentOS7配置文件/etc/profile与/etc/profile.d的区别
系统配置文件的区别
/etc/profile 文件介绍
-
/etc/profile
是一个系统级别的配置文件
- 当用户登录或者切换用户时, 首先就会有一个
login shell
的动作, 此时就会执行/etc/profile
文件
-
/etc/profile
文件中设置的是全局变量
- 一次重要的变量在此文件中设置
PATH: 预设可执行文件或命令的搜索路径
USER: 用户登录时使用的用户名
LOGNAME: 其值为$USER
HOSTNAME: 所使用的主机名
MAIL: 存放用户电子邮件的邮箱(实际上是一个ASCII码文件)
HISTSIZE: 历史记录的行数
INPUTRC: 存放的是针对键盘热键的信息(也是一个ASCII码文件)
/etc/profile.d目录中的脚本文件介绍
-
/etc/profile.d
是一个目录, 此目录中有很多脚本文件
-
在/etc/profile.d 目录中存放的是一些应用程序所需的启动脚本,其中包括了颜色、语言、less、vim及which等命令的一些附加设置。
-
这些脚本文件之所以能够 被自动执行,是因为在/etc/profile 中使用一个for循环语句来调用这些脚本。而这些脚本文件是用来设置一些变量和运行一些初始化过程的。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190704144611791.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NTIyMzA2,size_16,color_FFFFFF,t_70)
-
这是我配置了java环境后
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190704145821516.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2NTIyMzA2,size_16,color_FFFFFF,t_70)
区别介绍
- 两个文件都是设置环境变量文件的,/etc/profile是永久性的环境变量,是全局变量,/etc/profile.d/设置所有 用户生效
- /etc/profile.d/比/etc/profile好维护,不想要什么变量直接删除/etc/profile.d/下对应的shell脚本即可,不用 像/etc/profile需要改动此文件