#### profile
```
1.为交互式登录的shell进程提供配置
2./etc/profile, /etc/profile.d/*sh,对所有用户都生效
3.~/.bash_profile 仅对当前用户生效
4.定义环境变量
5.运行命令或脚本
```
#### bashrc
```
1.非交互式登录的shell进程提供配置
2./etc/bashrc 对所有用户生效
3.~/.bashrc 仅对当前用户生效
4.定义本地变量
5.定义命令别名
```
#### 区别
```
交互式登录
直接通过某终端输入账号和密码后登录打开的shell进程称为交互式登录
非交互式登录
su USERNAME 执行的登录切换
图形界面下打开的终端
运行脚本
读取顺序:
交互式登录
/etc/profile ---> /etc/profile.d/* ---> ~/.bash_profile ---> ~/.bashrc ---> /etc/bashrc
非交互式登录
~/.bashrc ---> /etc/bashrc ---> /etc/profile.d/*
命令行中定义的例如变量和别名作用域为当前shell进程的生命周期
配置文件定义的特性只对随后新启动的shell进程有效
如何让通过配置文件定义的特性立即生效?
1. 通过命令行重复定义一次
2. 让shell进程重读配置文件
source 配置文件
```
#### 测试
```
在/etc/profile.d/新建文件welcome.sh
echo welcome
然后保存文件
退出重新登录
```
- web服务器
- nginx
- 简介
- 安装
- apt
- 源码安装
- 虚拟主机
- 基于域名
- 基于端口
- 反向代理
- 简介
- 配置
- Location正则表达式
- 作用
- 语法
- 负载均衡
- 简介
- 配置
- 算法
- http动态负载均衡
- rewrite
- 简介
- 全局变量
- 判断ip涞源
- 限制浏览器访问
- 其他
- 故障转移
- 防盗链
- lvs
- Docker
- 安装
- 日志
- 镜像
- 容器
- 创建容器
- 自启动
- 容器信息
- Dockerfile
- 基础
- 常见
- java
- nginx
- activemq
- node
- rabbitmq
- redis
- 私有仓库
- 插件
- Maven
- 常见问题
- Rancher
- 安装
- 主机
- 应用
- 容器
- 扩缩容
- Linux
- 版本号
- 开启启动
- 命令
- 常用命令
- touch
- mkdir
- rm
- tree
- cp
- mv
- cat
- more
- grep
- echo 和 重定向
- 远程管理命令
- 关机重启
- ifconfig
- ss
- shell
- bash变量
- 多命令
- 脚本
- bash配置文件
- 正则表达式
- 计划任务
- at
- 时间
- 微服务
- influxDB
- 安装
- cAdvisor
- 安装
- keepalived
- lvs
- Linux
- shell
- 启动shell
- 常用命令
- 帮助
- 创建
- 复制
- 链接
- 移动
- 删除
- 文件
- 高级命令
- 监测程序
- 进程
- ps
- top
- 结束进程
- 硬盘
- 挂载
- df
- du
- 搜索数据
- 搜索数据
- 压缩数据
- 归档数据
- 内建命令
- 外部命令
- 内建命令
- 环境变量
- 全局
- 局部
- PATH
- 文件权限
- Linux的安全性
- /etc/passwd
- /etc/shadow
- 添加用户
- 删除用户
- 修改用户
- 中间件
- ActiveMQ
- 安装
- Linux
- Windows