国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

活學活用Linux操作系統的后臺任務

2024-07-26 00:34:40
字體:
來源:轉載
供稿:網友

  linux作為一個多任務環境,允許用戶同時執行多項任務,例如查看系統情況、備份資料、編輯文件和打印文件等。

  對于耗時長的任務不應該讓它在前臺任務中執行,而應該交給后臺任務去執行。這樣前臺任務可繼續正常運作其它的操作,不用等待。示例如下:


  # find / -name testing & 
  # fg


  如果想要讓上面例子中的任務轉為后臺執行,就使用“& ”。不過,由于是后臺執行的,所以該程序的輸出并不會出現在屏幕上。當用戶將數個任務放到后臺任務執行時,要如何去管理這些后臺任務?怎么知道后臺任務的執行情況?如何終止或暫時停止后臺任務的執行?下面就來逐一說明。
  控制管理

  舉例如下:


  # du -a /user > user.data &
  [1] 237
  # find / -name core -type f -ls > core.data &
  [2] 238

  如上通過“&”命令將三個任務放到后臺中執行。用命令“jobs -l”顯示后臺任務的執行情況,舉例如下:


  #jobs -l
  [1] + 237 Running du -a /user > user.data
  [2] - 238 Running find / -name core -type f -ls > core.data

  首先介紹一個任務控制特有的名詞:當前任務。上面的當前任務是“du -a /user > user.data”,因為后臺任務號碼是“[1]”。如果當第一個后臺任務順利執行完畢,第二個后臺任務還在執行中時,當前任務便會自動變成后臺任務號碼“[2]”的后臺任務。所以可以得出一點,即當前任務是會變動的。當用戶輸入“fg”、“bg”和“stop”等命令時,如果不加任何引號,則所變動的均是當前任務。

  終止后臺任務

  命令總是有出錯的時候。當出現這種情況時,用戶可用Shell的內置命令“kill”來結束任務。假如想要結束后臺任務“du -a /user > user.data”,可以用下面的命令:


  # kill 237 
  # kill %1

  其中,237為第一個后臺任務的PID號碼。如果想終止第二個后臺任務,以下兩種方法均可:

  方法一:#kill %2

  方法二:# kill %-

  執行暫停任務

  Shell的內置命令“stop”可用來暫停后臺任務。示例如下:


  stop % (停止第一個后臺任務的執行)
  stop %n (停止第n個后臺任務的執行)

  了解命令“stop”的使用后,便可將想要停止的后臺任務暫停執行。例如用戶要將一個年度報表用 “nroff”命令整理,因為文件量十分龐大,所以將它放到后臺中執行。命令如下:


  #nroff -ms moonth[1-12].acct > year2003.acct &
  [4] 240

  當命令處理到一半的時候發覺moonth12.acct文件是舊的需要更新,這時用“jobs”命令查看到后臺任務“[4]”還在執行中,但無法知道命令已經處理到哪一個月份。此時可輸入下面的命令,將后臺任務“[4]”先暫停執行:


  #stop %4

  然后查看文件year2003.acct的尾部判斷是否已經處理到12月。如果還沒有執行到,那么可以將moonth12.acct文件的資料更新,再用命令“bg”將已被暫時停止執行的后臺任務“[4]”接著繼續執行下去。這樣不但可更正錯誤文件,而且不用將已處理完的任務重新再執行一次。

  方便之處

  前臺、后臺任務確實可以給日常操作帶來方便。因為,我們在日常操作中肯定會遇到同一時間要進行多個操作。這個時候如果不使用前臺任務和后臺任務,那么將要花費很多時間。熟練運用前臺和后臺任務能達到“時”半功倍。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 梁河县| 神池县| 城步| 霍州市| 沿河| 黄大仙区| 饶平县| 武邑县| 杭锦后旗| 北流市| 冀州市| 蒲城县| 朝阳市| 台中市| 财经| 江川县| 新巴尔虎右旗| 河北省| 西畴县| 定兴县| 邯郸市| 庄浪县| 雷州市| 嘉祥县| 遂平县| 灯塔市| 平乡县| 长乐市| 师宗县| 桑日县| 湖口县| 新余市| 渑池县| 锡林郭勒盟| 香河县| 平远县| 宁河县| 朝阳市| 宜城市| 十堰市| 安化县|