jobs

显示作业的状态。

概要

1jobs [-lnprs] [jobspec ...]
2jobs -x command [args]

主要用途

  • 显示作业的状态。
  • 列出活动的作业。
  • 列出停止的作业。

选项

1-l	在作业信息中额外的列出PID。
2-n	只列出最近一次通知以来状态变更的作业。
3-p	只列出PID。
4-r	只输出处于运行状态的作业。
5-s	只输出处于停止状态的作业。

返回值

返回状态为成功除非给出了非法选项、执行出现错误。

如果使用jobs -x command [args]形式执行,那么返回值为command的退出状态。

例子

 1[user2@pc] ssh 192.168.1.4
 2pc@192.168.1.4's password:
 3# 此时按下ctrl+z使得交互停止。
 4[1]+  Stopped                 ssh 192.168.1.4
 5
 6[user2@pc] sleep 60 &
 7[2] 13338
 8
 9[user2@pc] jobs
10[1]-  Stopped                 ssh 192.168.1.4
11[2]   Running                 sleep 60 &
12
13[user2@pc] jobs -l
14[1]- 12927 Stopped                 ssh 192.168.1.4
15[2]  13338 Running                 sleep 60 &
16
17[user2@pc] jobs -p
1812927
1913338
20
21[user2@pc] jobs -s
22[1]-  Stopped                 ssh 192.168.1.4
23
24[user2@pc] jobs -r
25[2]   Running                 sleep 60 &
26
27[user2@pc] kill -9 12927
28[2]   Done                    sleep 60
29
30[user2@pc] jobs -n -l
31[1]+ 12927 Killed             ssh 192.168.1.4
32
33[user2@pc] jobs -n -l

注意

  1. bash的作业控制命令包括bg fg kill wait disown suspend
  2. 该命令需要set选项monitor处于开启状态时才能执行;查看作业控制状态:输入set -o查看monitor行;执行set -o monitorset -m开启该选项。
  3. 该命令是bash内建命令,相关的帮助信息请查看help命令。

来源:https://github.com/jaywcjlove/linux-command

最后修改于: Wednesday, January 31, 2024
欢迎关注微信公众号,留言交流。

相关文章:

翻译: