一、交互式登陸:
(1)直接經過終端輸入帳號密碼登陸
(2)使用「su - UserName」 或「su -l Username」切換的用戶
執行順序:/etc/profile --> /etc/profile.d/*.sh (全部文件)--> ~/.bash_profile(用戶家目錄下的) --> ~/.bashrc --> /etc/bashrcshell
二、非交互式登陸:
(1)su UserName
(2)圖形界面下打開的終端
(3)執行腳本
(4)任何其它的bash實例
執行順序: ~/.bashrc(用戶家目錄下的) --> /etc/bashrc --> /etc/profile.d/*.shapache
一、按生效範圍劃分,有兩類:vim
二、按功能劃分,存在兩類:bash
(1) 用於定義環境變量函數
(2) 運行命令或腳本字體
(1) 定義命令別名和函數spa
(2) 定義本地變量code
3.修改profile和bashrc文件後需生效
兩種方法:
1從新啓動shell進程
2 . 或source(注:反作用,任何一個變量被從新賦值就表示讀取現有的值再加上新有的值)
例:
. ~/.bashrccdn
注意:(1) . 或source 是在當前shell中生效;bash file 是開一個子進程去生效。
(2) 腳本中不支持別名blog
退出時運行的腳本
保存在~/.bash_logout文件中(用戶)
在退出登陸shell時運行,經常使用於:
一、讓全部用戶的PATH環境變量的值多出一個路徑,例如:/usr/local/apache/bin
在 /etc/profile.d/env. sh 文件,從新添加PATH變量。
PS1="\[\e[1;36m\][\u@\h \W]\\$\[\e[0m\]" PATH=/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
二、用戶root登陸時,將命令指示符變成紅色,並自動啓用以下別名:
rm=‘rm –i’ cdnet=‘cd /etc/sysconfig/network-scripts/’ editnet=‘vim /etc/sysconfig/network-scripts/ifcfg-eth0’ editnet=‘vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 或 ifcfg-ens33 ’ (若是系統是CentOS7)
命令符紅色:
在/etc/profile.d/env.sh中定義 PS1="\[\e[1;31m22\][\u@\h \W]\\$\[\e[0m\]"
定義別名:
在 ~/.bashrc中將放入如下命令: alias rm=‘rm –i’ alias cdnet=‘cd /etc/sysconfig/network-scripts/’ alias editnet=‘vim /etc/sysconfig/network-scripts/ifcfg-eth0’ alias editnet=‘vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 或 ifcfg-ens33 ’
三、任意用戶登陸系統時,顯示紅色字體的警示提醒信息「Hi,dangerous !」
在/etc/profile.d/env.sh 中添加
echo -e "\e[1;31mHi,dangerous ! \e[0m"