farmer-logo.gif (14959 bytes) cshell-logo.gif (19625 bytes)
ch-3.gif (10141 bytes)
main-b.gif (271 bytes)
 

 

3-8-2 exit [status value] 指令

這個指令會終止 C shell 的執行,並退出該 C shell。如果你 login shell 中執行,則功能便相當於 logout。如果在 subshell 中執行則回到其 parent shell,並且可以在退出 subshell 時,給於一個執行狀態變數的參數值。在不指定的情況下退出的執行狀態變數為“0”。這個功能在 C Shell 程式設計時,常用來設定程式不正常結束的狀態值,以供我們做執行狀態的查詢使用,是一個非常有用的功能。請讀者特別注意之。

下例中,我們在 login shell 中下指令 csh,其作用便是產生一個 subshell,如此一來我們的執行環境便由 login shell 轉移到 subshell 中了。然後我們執行指令“exit 1” 來結束這個 subshell 的執行,並且設定 $status 變數的值為“1”。當我們回到 login shell 中以指令“echo $status”顯示該 subshell 的執行狀態時,所得的結果便是我們執行指令 exit 時所傳回的設定值“1”。在最後使用指令 exit,我們將會退出系統。

7 % csh
8 % ps
PID TT STAT TIME COMMAND
293 p0 S 0:01 -csh (csh)
361 p0 S 0:00 -sh (csh)
362 p0 R 0:00 ps
1 % exit 1
9 % echo $status
1
10 % ps
PID TT STAT TIME COMMAND
293 p0 S 0:01 -csh (csh)
364 p0 R 0:00 ps
11 % exit


mail.gif (2925 bytes)

b-line.gif (2092 bytes)