BASH Shell的配置文件
1、系统设定值
所谓的系统设定值,也就是每个用户进入到bash
shell之后先读取的配置文件.默
认有以下几个:
(1)、/etc/profile:
这个文件设定了几个重要的变量,如
PATH,USER,MAIL,HOSTNAME等,也同时规划出/etc/inputrc这个针对键盘热键设
定的文件数据内容.它还规化出/etc/profile.d这个目录.
(2)、/etc/bashrc:
此文件用于规化umask,同时规化提示符的内容(就是PS1)
(3)、/etc/man.config: 此文件的内容规范了使用man时man
page的路径在哪
里.
2、个人设定值
个人设定值就是存在个人根目录的那几个隐藏文件.
(1)、~/.bash_profile:
定义了个人路径(PATH)与环境变量的文件名称.
(2)、~/.bashrc:
对于个人喜好的bash设定是最重要的,在这里设定个人变量.
(3)、~/.bash_history: 此文件用于记录曾经用过的命令.
(4)、~/.bash_logout:
此文件是在注销shell时bash要为你做的事情.
【鸟哥的私房菜】
详情请看:
在開始介紹 bash 的設定檔前,我們一定要先知道的就是 login shell 與 non-login shell!
重點在於有沒有登入 (login) 啦!
- login shell:取得 bash 時需要完整的登入流程的,就稱為 login shell。舉例來說,你要由 tty1 ~
tty6
登入,需要輸入使用者的帳號與密碼,此時取得的 bash 就稱為『 login shell 』囉;
- non-login shell:取得 bash 介面的方法不需要重複登入的舉動,舉例來說,(1)你以 X window 登入
Linux 後,
再以 X 的圖形化介面啟動終端機,此時那個終端介面並沒有需要再次的輸入帳號與密碼,那個 bash 的環境就稱為
non-login shell了。(2)你在原本的 bash 環境下再次下達 bash 這個指令,同樣的也沒有輸入帳號密碼,
那第二個 bash (子程序) 也是 non-login shell 。
為什麼要介紹 login, non-login shell 呢?這是因為這兩個取得 bash 的情況中,讀取的設定檔資料並不一樣所致。
由於我們需要登入系統,所以先談談 login shell 會讀取哪些設定檔?一般來說,login shell 其實只會讀取這兩個設定檔:
- /etc/profile:這是系統整體的設定,你最好不要修改這個檔案;
- ~/.bash_profile 或 ~/.bash_login 或
~/.profile:屬於使用者個人設定,你要改自己的資料,就寫入這裡!
【一】/etc/profile (login shell 才會讀)
/etc/inputrc
/etc/profile.d/*.sh
/etc/sysconfig/i18n
【二】~/.bash_profile (login shell 才會讀)
- ~/.bash_profile
- ~/.bash_login
- ~/.profile
login shell 設定只會讀取上面三個檔案的其中一個,
而讀取的順序則是依照上面的順序
【三】~/.bashrc (non-login shell 會讀)
启动顺序图:
阅读(3188) | 评论(0) | 转发(0) |