Tcsh 的環境設定
登入系統後,您會發現在光標之前有一個井字號 "#",這個井字號我們稱之為提示符號 (prompt)。在 tcsh 及 csh 中,當以 root 登入時,預設的提示符號是 "#",而以一般使用者登入時,提示符號為 "%"。
FreeBSD 安裝好後,我們必須做一些設定讓 FreeBSD 使用起來更順手。在預設的況狀下,系統並不支持中文文件名,對於使用中文的人不太方便。另外,命令列提示符號的樣子也不符合我們的需求。如果你想要客制化一些指令,也可以在這裡加上去。所以在開始進行其它設定之前,我們先建立一個良好的使用環境。
在使用者登入後,Tcsh 會先去讀取 /etc/csh.cshrc 及 /etc/csh.login 的設定,接著會讀取該使用者家目錄下的 .cshrc 及 .login。因此,我們可以經由設定這幾個檔案讓設定使用者一登入時就生效。
首先編輯 /etc/csh.cshrc 加入下列設定:
setenv EDITOR ee
alias ls ls -F
set prompt = "%B%m [%~] -%n-> "
第一行設定是將預設的文書編輯器改成 ee。第二行是要將指令 ls 變成 ls -F,就是每次打 ls 時,系統會出現 ls -F 的效果。而第三行是將命令列的提示符號改成下面這樣:
mydomain [/home/john] -john->
就是開頭是機器名稱,再來是路徑名稱,最後是使用者名稱。修改完 csh.cshrc 或 ~/.cshrc 後,您必須注銷再登入才會看到修改後的效果。或者,您也可以使用下列指令來讓修改立即生效:
# source ~/.cshrc
由於在 /etc 下的 csh.cshrc 是通用的設定,但如果使用者自己的設定和通用設定一樣時,會以使用者的設定為主。例如,在一般使用者的家目錄下的 .cshrc 也有一行編輯器的設定,當設定不同時,會以使用者目錄下的設定為主。因此,我們必須再編輯 ~/.cshrc,將 EDITOR 從 vi 改 ee,如此一來設定才會生效。
如果您希望日後每個新增的使用者的設定都是這樣,則必須修改 /usr/share/skel/dot.cshrc 檔案,該檔內容的修改和修改 ~/.cshrc 一樣,把 vi 換成 ee ,並加入 「alias ls ls -F」。因為在使用 adduser 指令新增使用者時,它會問你是否要將 /usr/share/skel/dot.file 復制到使用者目錄下,因此我們就修改這裡,讓日後新增使用者時能使用該設定。
/etc/csh.cshrc 和 /etc/csh.login 的差別在於如果是使用者登入,二個檔案都會被執行,如果是 scripts 則只會去讀取 csh.cshrc。我們接下來要讓使用者登入後可以支持中文的 console 環境,所以我們編輯 /etc/csh.login 並在最後面加入以下的設定:
# 支持中文的環境,讓我們可以在 console 下或 telnet 中使用中文。
setenv LANG zh_TW.Big5
上述的環境變量設定會在使用者登入時自動被加載,一些程序 (例如 date) 會自動讀取這些變量,並產生中文的訊息。