作业分为前台作业和后台作业

前台作业(foreground) 通过终端启动,且启动会一直占据终端。比如vim、cp

后台作业(background)可以通过终端启动,


如何让作业运行于后台?

1、如果作业已经运行,可以使用ctl+z,但是这个命令会使得作业停止。使用kill -s 18 命令让进程恢复运行

2、如果作业没有运行,在启动作业时,使用&符号。

注意:如果作业与终端有关,一旦终端断开,那么作业也就停止了,不论作业运行于前台还是后台。如果希望把送往后台的作业撤销与终端的关系,可以使用nohup COMMAND &命令。

Linux 进程管理命令之jobs_简单操作

kill -s 18 可以继续让停止的进程运行,但是运行的结果会显示到前台,需要将进程先调度到前台,再ctl+z停止。


jobs

查看所有作业

Linux 进程管理命令之jobs_简单操作_02


fg

将后台作业调度到前台

fg可以接作业号

1 2 就是作业号,+号表示被fg默认调度的作业。-号表示比+号少一个优先级。+号的作业处理完,默认就开始处理-号的作业。

bg

让后台的作业继续运行

敲了bg后,进程是在后台运行,但是运行结果显示到了前台,这个时候敲ctl+z没任何作用。需要先用fg将进程调度到前台,再ctl+z

     跟kill -s 18 PID 的效果一样。

kill 中断作业进程

Linux 进程管理命令之jobs_命令_03

Linux 进程管理命令之jobs_简单操作_04

这个现象过一会儿就没了。Terminated

Linux 进程管理命令之jobs_ jobs_05