程序员 云计算 linux 编程 shell nginx php Python wordpress java Firefox Android Windows centos Ubuntu mysql google apache 开源 微软

Linux中進程前後臺切換相關命令

我們使用Linux時大多數是用Shell命令行。一個命令窗口是無法直接執行多任務的。我們可以把某個任務先切到後臺,再切別的任務到前臺來操作。這個帖子整理一下這些常用的命令。
後臺進程查看:

jobs是用於後臺進程查看的很方便的命令。

jobs -l 可以顯示出進程的pid。

註意一點:shell收到了SIGHUP信號後在退出前將SIGHUP轉發給所有的作業(jobs)。jobs由於收到SIGHUP而終止運行。(這取決於shell的)

將前臺任務放到後臺:

按下ctrl + z ,就將任務移到後臺。暫停。

註意,ctrl+z後,任務會被暫停的。此時想讓它繼續在後臺運行的話,就需要下一個命令。

讓後暫停的任務繼續執行:

bg命令能將一個在後臺暫停的命令,變成繼續執行

如果後臺中有多個命令,可以用bg %jobnumber將選中的命令調出,%jobnumber是通過jobs命令查到的後臺正在執行的命令的序號(不是pid)

將後臺任務搬到前臺運行:

fg命令和bg命令是一對兄弟。一個是讓任務後臺繼續執行,一個是讓任務移動到前臺。

fg也支持類似bg的做法,有多個任務時可以用fg %jobnumber選擇性調動。

讓任務直接在後臺啟動:

我們只需要在命令後面加上一個&就能讓任務啟動後直接在後臺跑。

等於用了ctrl+z再來個bg。

延伸阅读

评论