CSH是一種計算機中的Linux、unix命令,用來調(diào)用C shell。C shell是Unix shell的一種,由威廉·喬伊在BSD系統(tǒng)上開發(fā)。C shell脫胎于Unix第六版的/bin/sh,也是Bourne shell的前身。C shell的語法類似于c語言,與Bourne shell相比,C shell有不少特別的功能,比如aliases(別名)、command history(命令的歷史)。C shell在交互模式中引入許多開創(chuàng)性功能的同時,C shell的腳本執(zhí)行能力受到了不少批評。目前C shell已不再被廣泛使用,后繼者包括Tenex C shell(tcsh)、Korn shell(ksh)、GNU Bourne-Again shell(bash)。雖然C shell有其獨特的功能,但由于在所有的單一UNIX規(guī)范相容系統(tǒng)中都放了標(biāo)準(zhǔn)的Bourne shell,所以大部分人都建議使用sh來進行腳本編寫。
語法
csh [ -v | -V ] [ -x | -X ] [ -e ] [ -f ] [ -i ] [ -n ] [ -c String | -s | -t ] [ -b ] [ File [ Parameter ] ]
描述
C shell 是一個交互式命令解釋器和一種命令編程語言,采用的語法類似于 C 編程語言。殼層 是交互式地從終端鍵盤或者是從一個文件來執(zhí)行命令的。這個 csh 命令調(diào)用了 C shell。
當(dāng)調(diào)用 csh 命令時就會執(zhí)行,這是通過查找根目錄和執(zhí)行命令從 .cshrc 文件(用來存儲用戶化的用戶信息)中,執(zhí)行的條件是命令存在。如果 csh 命令作為一個登錄 shell 運行,就會從 .cshrc 和 .login 文件中執(zhí)行命令。
當(dāng) Shell 處理完標(biāo)志參數(shù)后,如果 -i、-c、-s和 -t 標(biāo)志都未被指定,并且 File [Parameter] 被指定,那么 Shell 就會執(zhí)行腳本文件,此文件指定于 File [Parameter],包含了任何指定的參數(shù)。指定的腳本文件必須擁有讀取權(quán)限;shell 忽略了任何 setuid 和 setgid 設(shè)置。
注意:不應(yīng)指定一個腳本文件如果采用的 csh 命令含有 -c 或 -s 標(biāo)志。
如果指定一個腳本文件,這個命令打開文件和保存腳本文件,可能的再置命名是換通過 $0 (美元符號,0)。腳本的執(zhí)行是通過 csh。保持參數(shù)初始化 argv 變量。
注意
1. 如果 C shell 已經(jīng)運行,.cshrc 文件可被再次讀取通過輸入 源 路徑名,其中路徑名參數(shù)是一個路徑,此路徑通向 .cshrc 文件。
2. 為避免遠程操作出現(xiàn)問題, .cshrc 文件不應(yīng)包含任何功能,這些功能返回輸出,如果它們沒有測試 $prompt 變量,此變量說明 shell 是交互式的。否則,每當(dāng)一個遠程系統(tǒng)使用 exec 命令在本地系統(tǒng)進行命令發(fā)送,命令和 殼層 均被執(zhí)行。示例, exec csh rcp -t 文件名執(zhí)行 .cshrc 文件和處理返回的輸出作為所期望的響應(yīng)。一個 if 句子可用來檢查 $prompt 變量。
標(biāo)志
如果最初的 shell 的參數(shù)是一個 -(負號),此 shell 就是一個登錄 shell。C shell 標(biāo)志被解釋如下:
-b 強迫選項處理中斷,會引起任何增進 shell 參數(shù)被處理為無選項參數(shù)。這個標(biāo)志可用來傳送選項到一個 shell 腳本,而不會引起混淆和可能的欺騙。此 殼層 不能運行真實和有效用戶和組標(biāo)識與這個標(biāo)志不同的腳本。
-c 從以下單個自變量中讀取命令,此參數(shù)必須出現(xiàn)。任一剩余的參數(shù)放在 argv 變量中。
-e 如果任一受調(diào)用命令異常結(jié)束或產(chǎn)生非零退出狀態(tài)則退出。
-f 啟動 C shell 不需要從位于主目錄下的 .cshrc 文件搜索或運行命令。
-i 提示它的最高層輸入(一個交互式 shell),甚至如果輸入并不是來自于工作站。如果 shell 的輸入、輸出與工作站連接,shell 是交互的,不需要此標(biāo)志。
-n 語法分析命令但并不運行它們。這個標(biāo)志幫助進行 殼層 步驟的語法檢查。
-s 以標(biāo)準(zhǔn)輸入執(zhí)行命令輸入。
-t 讀取和處理輸入的單行。在當(dāng)前行的末尾并繼續(xù)到下一行時,可以采用一個 \ (反斜杠) 轉(zhuǎn)義新一行的字符。
-V 序變量在 .cshrc 文件運行以前設(shè)置 verbose 外殼程。
-v 設(shè)置 verbose shell 變量,使命令輸入在歷史置換后被返回。
-X 即使在 .cshrc 文件運行以前也設(shè)置 echo shell 變量。
-x 設(shè)置 echo shell 變量,使命令在所有置換后和立即運行以前被返回。
文件
$HOME/.cshrc 在執(zhí)行開始時由每個 shell 讀取。.cshrc 文件是用戶定義的。
$HOME/.login 登錄時在 .cshrc 文件之后由登錄 shell 讀取。
$HOME/.logout 在注銷時由登錄 shell 讀取。
/usr/bin/sh 包含缺省 shell 的路徑。
/tmp/sh* 包含臨時文件用于。
/etc/passwd 包含主目錄的源,此源用于 ~File 參數(shù)。
后綴
Adobe photoshop軟件中“形狀”的后綴名是*.csh
草珊瑚含片
江中藥業(yè)股份有限公司生產(chǎn),每片含片正反面上印有“CSH”字樣。
鶴鳴堂
CSH同樣是歌手后弦的一個音樂品牌,
CSH是鶴鳴堂的縮寫。
CSH是代表鶴:Crane 鳴:Sing 堂:Hall
參考資料 >