活用Linux的後臺任務(轉)
活用Linux的後臺任務(轉)[@more@]作者:鍾雲霄來源:賽迪網-開放系統世界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]”接著繼續執行下去。這樣不但可更正錯誤檔案,而且不用將已處理完的任務重新再執行一次。方便之處前臺、後臺任務確實可以給日常操作帶來方便。因為,我們在日常操作中肯定會遇到同一時間要進行多個操作。這個時候如果不使用前臺任務和後臺任務,那麼將要花費很多時間。熟練運用前臺和後臺任務能達到“時”半功倍。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-945477/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 活用Linux作業系統的後臺任務(轉)Linux作業系統
- 用Linux作業系統的後臺任務(轉)Linux作業系統
- Linux任務的前後臺管理Linux
- 後臺任務
- linux後臺執行和關閉、檢視後臺任務Linux
- iOS App 後臺任務的坑iOSAPP
- [轉載]iOS 後臺任務設計指導iOS
- 大資料開發-linux後臺執行,關閉,檢視後臺任務大資料Linux
- 使用screen後臺執行任務
- php後臺定時執行任務PHP
- ASP.NET 網站後臺任務ASP.NET網站
- 建立後臺任務的兩種程式碼模式模式
- 【轉】linux定時任務的設定Linux
- Linux Crontab 定時任務[轉]Linux
- Android Jetpack – 使用 WorkManager 管理後臺任務AndroidJetpack
- Android後臺任務(HandlerThread、AsyncTask、IntentService)AndroidthreadIntent
- 如何在 Flutter 建立一個後臺任務Flutter
- 如何使用WorkManager執行後臺任務(上)
- netcore後臺任務注意事項NetCore
- Android Jetpack - 使用 WorkManager 管理後臺任務AndroidJetpack
- 在 JS 中如何排程後臺任務?JS
- Linux 任務後臺執行軟體【即:終端複用器】之---screenLinux
- 一文說通Dotnet Core的後臺任務
- 使用Python RQ的Python執行後臺任務Python
- HarmonyOS 後臺任務管理開發指南上線!
- Android後臺排程任務與省電Android
- 例項後臺執行訓練或任務
- Linux已可勝任實時任務應用(轉)Linux
- Android開發 - Runnable 類任務介面定義與後臺任務待辦解析Android
- .NET寶藏API之:IHostedService,後臺任務執行API
- IOS 後臺掛起程式 當程式到後臺後,繼續完成Long Running Task 任務iOS
- dotnet core系列之Background tasks with hosted services (後臺任務)
- 不可能的任務?(轉)
- linux的定時任務crontabLinux
- Linux定時任務系統 Cron 入門(轉)Linux
- Linux | 定時任務Linux
- Linux 定時任務Linux
- Linux at 定時任務Linux