jobs - 显示作业的状态。

显示作业的状态。

概要

  1. jobs [-lnprs] [jobspec ...]
  2. jobs -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
  2. pc@192.168.1.4's password:
  3. # 此时按下ctrl+z使得交互停止。
  4. [1]+ Stopped ssh 192.168.1.4
  5. [user2@pc] sleep 60 &
  6. [2] 13338
  7. [user2@pc] jobs
  8. [1]- Stopped ssh 192.168.1.4
  9. [2] Running sleep 60 &
  10. [user2@pc] jobs -l
  11. [1]- 12927 Stopped ssh 192.168.1.4
  12. [2] 13338 Running sleep 60 &
  13. [user2@pc] jobs -p
  14. 12927
  15. 13338
  16. [user2@pc] jobs -s
  17. [1]- Stopped ssh 192.168.1.4
  18. [user2@pc] jobs -r
  19. [2] Running sleep 60 &
  20. [user2@pc] kill -9 12927
  21. [2] Done sleep 60
  22. [user2@pc] jobs -n -l
  23. [1]+ 12927 Killed ssh 192.168.1.4
  24. [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命令。