Linux 作业控制

暂停当前的前台进程

1
ctrl + z

查看当前被暂停的作业列表

1
jobs

输出的每一个作业都有一个序号,可以被 bgfg 使用。

将暂停的进程放到后台继续运行(bg)

1
bg

默认是将最近一个被暂停的进程恢复运行并放到后台。

可以加作业序号,指定操作哪个作业。

例如将序号为 2 的作业放到后台继续执行:

1
bg %2

将暂停的进程放到前台继续运行(fg)

使用方式和 bg 同理。

1
fg

默认是将最近一个被暂停的进程恢复运行并放到前台。

可以加作业序号,指定操作哪个作业。

例如将序号为 2 的作业放到前台继续执行:

1
fg %2

disown 的使用

默认情况下,当前会话终端后,所有的作业都会被释放。

可以使用 disown 命令将一个进程从当前的 shell 会话中分离出来,使其不再受该会话的控制。首先将进程放到后台,然后执行:

1
disown %1

%1 是作业号,可以用 jobs 命令查看并确认作业号。

直接在启动时将命令放在后台运行(nohup)

1
nohup some_cmd &