首页 Linux jobs 命令
文章
取消

Linux jobs 命令

jobs 命令用于显示系统中的任务列表和其运行状态。

我们挂起三个前台任务,一个让后台运行

1
2
3
4
5
6
7
8
9
10
11
[root@centos uphie]# python sleep1.py
^Z
[1]+  已停止               python sleep1.py
[root@centos uphie]# python sleep2.py
^Z
[2]+  已停止               python sleep2.py
[root@centos uphie]# python sleep3.py
^Z
[3]+  已停止               python sleep3.py
[root@centos uphie]# python sleep4.py &
[4] 23375

不使用命令行选项时查询任务:

1
2
3
4
5
[root@centos uphie]# jobs
[1]   已停止               python sleep1.py
[2]-  已停止               python sleep2.py
[3]+  已停止               python sleep3.py
[4]   运行中               python sleep4.py &

上面输出中,

  • 第一列是作业号,可以通过 fg 和 bg 命令后面附加作业号操纵相应作业;
  • 作业号旁边的+- 标识符,+ 表示当前作业会被 fg 和 bg 命令当做缺省作业;
  • 第二列是作业运行状态;
  • 第三列是执行作业的命令;

选项

-l

在显示作业列表时增加显示进程号。

1
2
3
4
5
[root@centos uphie]# jobs -l
[1]  23366 停止                  python sleep1.py
[2]- 23369 停止                  python sleep2.py
[3]+ 23370 停止                  python sleep3.py
[4]  23375 运行中               python sleep4.py &

如上,在作业号和作业状态之间,增加显示了进程号。

-n

显示上次使用 jobs 命令后状态发生变化的作业。

1
2
3
4
5
6
7
8
9
[root@centos uphie]# jobs
[2]-  运行中               python sleep2.py &
[3]+  已停止               python sleep3.py
[root@centos uphie]#
[root@centos uphie]#
[root@centos uphie]# bg 3
[3]+ python sleep3.py &
[root@centos uphie]# jobs -n
[3]+  运行中               python sleep3.py &

-p

仅显示作业对应的进程号。

1
2
3
4
5
[root@centos uphie]# jobs -p
23366
23369
23370
23375

-r

仅显示运行中的作业。

1
2
[root@centos uphie]# jobs -r
[4]   运行中               python sleep4.py &

-s

仅显示暂停的作业。

[root@centos uphie]# jobs -s
[1]   已停止               python sleep1.py
[2]-  已停止               python sleep2.py
[3]+  已停止               python sleep3.py
本文由作者按照 CC BY 4.0 进行授权