使用啟動腳本,可以讓自定義的環境一勞永逸。
這些腳本在shell被創建時運行
根據shell是登入shell還是非登入shell,所運行的啟動腳本也會不一樣
我們“su - ”是登入shell;“su ”是非登入shell
放在啟動腳本中典型的包括:
① 本地變量設置,特別是PS1
比如,我的:
[Oracle@10gR2 ~ $]tail -f .bash_profile | grep -n --color=auto 'PS1'
10:export PS1='[\u@10gR2 \W \$]'
② 環境變量 例如 PATH
③ 別名
④ umask
㈠ 登入shell
/etc/profile 是登入shell啟動後運行的第一個啟動腳本
它只為登入shell運行;非登入shell不會引發這個腳本
登入shell加載啟動腳本的順序為:
/etc/profile → /etc/profile.d → .bash_profile → .bashrc → /etc/bashrc
每個調用的腳本會依次撤銷前一個調用腳本中的改變
在退出登入shell時,我們還可以執行某些任務,如創建自動備份、清除臨時文件
把這些任務放在.bash_logout文件中
㈡ 非登入shell
非登入shell加載啟動腳本的順序:
.bashrc → /etc/bashrc → /etc/profile.d