telnet程序的作業控制
在telnet程序中,包含了很多功能。我們在之前的文章中也介紹了一部分,例如它的安裝和測試,命令控制等等方面。今天我們將要為大家介紹一下telnet程序的作業控制,什么是作業控制呢?現在就讓我們來詳細看一下吧。
作業控制
Unix系統支持一種叫做“作業控制”的功能。它可使你暫停一個程序而工作另一程序,然后再返到第一個程序。這里我們不再詳細討論Unix的功能,但我們將介紹,若你的系統內有作業控制,telnet是如何配合其工作的。 在telnet提示符下錄入z命令(后面再解釋命令名的含義)。 它將告訴telnet暫停工作而返回到“shell”(即讀入并處理你的命令的程序)。這樣你就可以在遠程對話過程中錄入常規命令了。
只有當你的shell支持作業控制,z命令才能工作。若你所用的是一種現代shell,如C Shell或者Korn shell,它都可以工作。但假如你用的是較陳舊的Bourne shell,它沒有作業控制,z命令也就不能工作。 事實上,telnet程序自己也“凍結”(freeze)。 你當前正在運行的程序被稱為放在“前臺”。當你退出一個程序時,我們稱將其放在“后臺”。
當你錄入 z 命令,telnet程序將自己置于后臺而讓你返回到本地 shell(local shell),這樣你就可以隨意錄入常規的Unix命令。例如,你可以檢查你的郵件,顯示時間、日期等等。當你想恢復遠程連接時,錄入命令:
fg
該命令告訴Unix系統重新啟用被中斷的最后一個程序,將其置于前臺。現在你就可以恢復遠程連接了。 你可能會想,為什么telnet作業控制命令名是z? 這是因為, 在支持作業控制的Unix系統中,你可以按下susp(暫停)鍵來將當前程序置于后臺。通常該鍵是CTRL-Z。因此,該telnet命令是以Unix的鍵命名的。 若在一段規定的時間內沒有進行任何操作,許多主機會自動讓你退出。例如, 在某系統中,若你在15分鐘內未錄入任何東西, 該系統即讓你退出。 當你使用Z命令中斷telnet對話時應注意這一點。若在規定時間之內你未能恢復遠程對話,連接將被自動切斷。
在例子的開始,我們在一臺叫nipper 的計算機上登錄。 你可以看到 shell提示符:
nipper
在該提示符下我們錄入一條telnet命令,與一臺地址名為 fuzzball .ucsb.edu的遠程計算機連接:
telnetfuzzball.ucsb.edu
一旦連接確定,fuzzball即顯示標準的Unix登錄提示符。我們采用用戶標識harley 來登錄。注意,為了保密我們錄入的口令字并未顯示出來。登錄完成后,遠程機顯示一些信息,并后附一個shell提示符:
fuzzball
我們現在錄入data命令來顯示時間及日期。
- nippertelnetfuzzball.ucsb.edu
- Trying...
- Connected to fuzzball.ucsb.edu
- Escape character is '^]'。
- ULTRIX V4.2A (Rev.47) (fuzzball)
- Welcome to the Fuzzball System
- login: harley
- Password:
- Last login: Sun Apr 18 00:09:58 from nipper.com
- fuzzball date
- Sun Apr 18 00:24:54 CDT 1993
- fuzzball CTRL-]
- telnet> z
- Stopped
- nipper mail
- No mail for harley
- nipper fg
- telnetfuzzball.ucsb.edu
- fuzzball logout
- Connection closed by foreign host。
- nipper
接下來我們想暫時返回到nipper機上檢查有無郵件。首先,我們按下 CTRL-], 將遠程連接中斷并返回到telnet。你將看到提示符:
telnet>
接著我們錄入z命令,它把telnet程序置于后臺。 現在我們就看到 nipper的shell
提示符。再使用mail命令來檢查有無電子郵政信息。 現在錄入fg命令。 shell的響應是顯示被置于后臺的最后一條命令(例子中是telnet命令)。然后shell將該程序放回前臺, 即自動恢復遠程連接。我們將再次看到fuzzball的shell提示符。
最后,我們錄入logout命令從 fuzzball上退出。遠程連接自動關閉, telnet程序退出。我們又返回到開始的nipper shell提示符下。在Unix系統中,shell是讀入并處理你的命令的程序。有許多種Unix shell,你可以任選一種。 當shell準備接收命令時它將顯示一提示符。 若你在多臺計算機有帳戶,最好能按一定格式規定提示符,使它能包含計算機的名字(這里不作詳細闡述)。這樣,你的shell 提示符可以隨時告訴你正在使用的是哪一個shell。 依照慣例,提示符的最后一個字符表示你所用shell的類型。 字符(如本例)表明是C—Shell。$字符是表明Korn shell或Bourne shell。

















