Linux作為一個多任務(wù)環(huán)境,允許用戶同時執(zhí)行多項任務(wù),例如查看系統(tǒng)情況、備份資料、編輯文件和打印文件等。
對于耗時長的任務(wù)不應(yīng)該讓它在前臺任務(wù)中執(zhí)行,而應(yīng)該交給后臺任務(wù)去執(zhí)行。這樣前臺任務(wù)可繼續(xù)正常運作其它的操作,不用等待。示例如下:
|
如果想要讓上面例子中的任務(wù)轉(zhuǎn)為后臺執(zhí)行,就使用“& ”。不過,由于是后臺執(zhí)行的,所以該程序的輸出并不會出現(xiàn)在屏幕上。當(dāng)用戶將數(shù)個任務(wù)放到后臺任務(wù)執(zhí)行時,要如何去管理這些后臺任務(wù)?怎么知道后臺任務(wù)的執(zhí)行情況?如何終止或暫時停止后臺任務(wù)的執(zhí)行?下面就來逐一說明。
控制管理
舉例如下:
|
如上通過“&”命令將三個任務(wù)放到后臺中執(zhí)行。用命令“jobs -l”顯示后臺任務(wù)的執(zhí)行情況,舉例如下:
|
首先介紹一個任務(wù)控制特有的名詞:當(dāng)前任務(wù)。上面的當(dāng)前任務(wù)是“du -a /user > user.data”,因為后臺任務(wù)號碼是“[1]”。如果當(dāng)?shù)谝粋€后臺任務(wù)順利執(zhí)行完畢,第二個后臺任務(wù)還在執(zhí)行中時,當(dāng)前任務(wù)便會自動變成后臺任務(wù)號碼“[2]”的后臺任務(wù)。所以可以得出一點,即當(dāng)前任務(wù)是會變動的。當(dāng)用戶輸入“fg”、“bg”和“stop”等命令時,如果不加任何引號,則所變動的均是當(dāng)前任務(wù)。
終止后臺任務(wù)
命令總是有出錯的時候。當(dāng)出現(xiàn)這種情況時,用戶可用Shell的內(nèi)置命令“kill”來結(jié)束任務(wù)。假如想要結(jié)束后臺任務(wù)“du -a /user > user.data”,可以用下面的命令:
新聞熱點
疑難解答
圖片精選