2007年10月21日 星期日

shell 的設定檔

shell 的設定檔

在 bash shell 中,在系統登入的期間,會執行 4 個 shell 設定檔案,以下為他們執行順序
  1. /etc/profile
  2. /etc/bashrc
  3. ~/.bash_profile (red hat 3 與 4 相反)
  4. ~/.bashrc
在此說明各個設定檔

檔案

說明

/etc/profile

這是一個在登入時才執行的系統初始化設定檔,它通常包含一些環境變數,包括最初的 PATH 變數,和一些啟動程式。

/etc/bashrc

這是另一個系統端初始化檔案,當一個 bash shell 被啟動時,/etc/bashrc 通常會被 ~/.bashrc 呼叫執行,它通常包含一些 functions 和 aliases 。

~/.bash_profile

如果此檔案存在,它會在登入 Shell 期間,自動執行於 /etc/profile 之後。

~/.bash_login

如果 ~/.bash_profile 檔案不存在,此檔案會在登入 Shell 期間自動執行。

~/.profile

如果 .bash_profile.bash_login 皆不存在,此檔案會在登入 Shell 期間自動執行。此檔案是 Bourne shell 原始的設定檔。

~/.bashrc

此檔案會在啟動 Shell 時自動執行(包含xterm 和一般 Shell),通常包含一些環境變數與 aliases。

~/.bash_logout

此檔案會在 Shell 登出時自動執行。

~/.inputrc

此檔包含一些敲擊鍵盤的反應, Bash 預設反應設定與 Emacs 相同。

~/.bashrc 與 ~/.bash_profile 的差異
.bash_profile 只有在登入的時候才會啟用,原本設計的目的是為了讓你可以將交談方式操作的 shell 程式與非交談程式的(背景程式)shell 程式區分開來。但在目前的 X 視窗系統卻沒多大作用,主要原因為執行 xterm 視窗時,只有 .bashrc 會執行而 ~/.bash_profile 並不執行,因為 xterm 不需登入即可啟動。

沒有留言: