分类: BSD
2008-06-14 07:36:52
FreeBSD 給 root 預設使用的 shell 是 /bin/csh (也可說是 tcsh) ,當我們第一次登入後只看得到一個井字號,為了讓操作環境使用起來更方便,我們可以稍作調整,更改幾個基本設定。
當我們登入後, csh 會先去讀取 /etc/csh.cshrc 中的設定,然後再去讀取使用者個人目錄中的 .cshrc 中的設定 ,利用這個特性,我們可以將要給所有人的設定寫入 /etc/csh.cshrc ,而要給 root 的設定則寫入 /root/.cshrc 中。
我們可以利用文書編輯工具修改 root 的 shell (預設為 csh = tcsh) 環境變數設定檔,執行底下的指令:
# ee /root/.cshrc
然後修改裡面的這兩行:
1.將 setenv EDITOR vi 這行改成:
setenv EDITOR ee
2.將 set prompt = "`hostname -s`# " 這行改成:
set prompt = "%B%n@%m [%/] # "
確定改完後,按 Esc 鍵,按 Enter 鍵存檔並離開 ee
上面的設定可以幫 root 修改:
- 將預設的編輯軟體改為 ee ,當我們在使用像 vipw , edquota , ...... 等工具時,它會去呼叫 EDITOR 這個變數所指定的指令來當編輯器,對不熟悉 vi 的人,FreeBSD 的 ee (Easy Editor) 可能比較像 DOS 中的文字編輯軟體,操作起來容易些,如果習慣用 vi 就不用修改 EDITOR 。
- prompt 這個環境變數可以改變提示符號,DOS也有類似的指令 ,至於前例所使用的參數意義如下:
%B(粗體字)
%n(UserName)
%m(HostName)
%/(目前所在的路徑)這樣 set prompt = "%B%n@%m [%/] # " 的提示符號就可變成 :
root@host [/path] #
會顯示帳號、主機名稱、目前所在路徑和一個井字號。
/etc/csh.cshrc 是所有使用 csh (tcsh) 的帳號登入時會載入的設定檔,所以我們可以在這裡加入共同的設定,例如執行:
# ee /etc/csh.cshrc
然後將下面的三行加在該檔案的最後面:
setenv LC_CTYPE en_US.ISO_8859-1
set prompt = "%B%n@%m [%/] $ "
set autolist
上面的設定可以達到以下效果:
- 幫所有使用者設定 LC_CTYPE ,使遠端登入時,中文檔名可以正常顯示。
- 把所有使用者的提示符號變成顯示:帳號@主機名稱 [目前所在路徑] $ (錢字號)
- 加強按自動補字的 Tab 鍵時會顯示檔名開頭相同的檔案/目錄名稱清單,便於選擇下個要打的字,而不用盲目猜測。
輸入時要注意,上面錢字號 $ 的前後各有一個空白,如果和別的字元連在一起會被當成變數名稱,登入時會有 "Illegal variable
name." 的錯誤訊息。
說明:
- 上面修改的 *.cshrc 內容並不會馬上生效,如果立即要使用就執行 csh 的內部指令 source:
source /etc/csh.cshrc
source ~/.cshrc
否則必須等下次登入後才會自動執行,所以我們也可以執行 exit 或是 logout 的指令,先登出系統以後再重新登入。- 前述設定是當使用者的 shell 是 csh 或 tcsh 的設定,想設定更多功能可以用 man csh 來查詢。