Linux jobs命令详解

在 Linux 中,当在终端或 shell 中运行一个命令时,该命令的进程会被启动并运行在后台。使用 jobs 命令可以查看在当前 shell 中启动的作业列表。

jobs 命令的使用格式为:

jobs [options] [job_spec ...]

其中,job_spec 是一个或多个作业的标识符。如果没有指定 job_spec,jobs 命令将显示所有当前 shell 中的作业。

常用的选项包括:
-l:显示作业号、PID、状态、命令行等详细信息;
-p:仅显示作业的 PID;
-n:仅显示状态为运行中或挂起的作业;
-r:仅显示状态为运行中的作业;
-s:仅显示状态为挂起的作业。
以下是 jobs 命令的一些示例:

$ jobs
[1]-  Running                 sleep 100 &
[2]+  Stopped                 vim

显示所有运行中的作业:

$ jobs -r
[1]-  Running                 sleep 100 &

显示作业详细信息:

$ jobs -l
[1]-  2038 Running                 sleep 100 &
[2]+  2103 Stopped                 vim

杀死指定作业:

$ kill %1

在上面的示例中,%1 表示作业编号为 1 的作业,kill %1 命令会杀死该作业。