1. 程式人生 > >哪裏學Linux開發?作業怎麽控制Jobs?

哪裏學Linux開發?作業怎麽控制Jobs?

雲計算 Linux 開發

使用Ctrl+Z組合鍵停止shell運行中的作業。停止作業後,Linux系統會讓用戶終止或重啟它。可以使用kill命令終止進程。重啟停止的進程需要向它發送SIGCONT信號。

重啟、停止、終止和恢復作業的操作稱為作業控制(job control)。使用作業控制可以完全控制進程以shell環境中運行的方式。

1查看作業

作業控制的關鍵命令是jobs命令。jobs命令可以查看shell處理的當前作業:

腳本使用$$變量顯示linux系統分配給腳本的PID,然後進入循環,每次叠代間隔5秒。通過命令行節目啟動第一個腳本,然後使用Ctrl+Z組合鍵停止它。接下來,使用&符號以後臺進程方式啟動另一個作業,並將該腳本的輸出重定向到一個文件,以便不會在監視器上顯示。

作業啟動之後,使用jobs命令查看分配給shell的作業。jobs命令即可以顯示停止的作業也可以顯示作業狀態,還包括作業編號以及作業中使用的命令。jobs命令使用的一些不同參數:

輸出中的加號和減號。帶有加號的作業被視為默認作業。如果命令行沒有指定作業編號,則它應該是任何作業控制命令引用的作業。帶有減號的作業實在處理完當前默認作業之後將成為默認作業的作業。某一時間點,只能有一個帶有加號的作業,也只能有一個帶有減號的作業,無論shell中運行了多少作業。在kill掉當前默認作業,之前帶有減號的作業,變成了默認作業。

2重新啟動停止的作業

在bash作業控制下,能夠以後臺進程或前臺進程的形式重新啟動任何停止的作業。前臺進程將控制正在處理的終端,因此謹慎使用特性。要以後臺模式重新啟動作業,可以使用帶有作業編號的bg命令。bg命令格式:bg 作業編號

以後臺模式重新啟動作業,出現命令行界面提示符,能夠繼續處理其他命令。要以前臺模式重新啟動,可以使用帶有作業編號的fg命令:fg 作業編號。

fg操作實例:

作業現在以前臺模式運行,在作業完成無法使用命令行界面提示符。

哪裏學Linux開發?作業怎麽控制Jobs?