#### 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