在一个shell中查看管理 任务(前台和后台)/工作jobs 的命令

jobs是在同一个shell环境而言, 才有意义的.

为什么有jobs这个命令?

是因为, 如果从cmd line运行gui程序时, shell会收到hup(hang up挂起信号)信号, 这时shell会被阻塞,那么

后面的命令就无法继续输入.

所以, 要使用同一个shell运行多个gui程序时, 要将某些命令放到后台去执行。这就是jobs管理任务的来由:

cockpit: n. 驾驶舱; 战场.

The Middle East has been the cockpit of modern history.

a new cockpit of superpower rivalry.

  1. 将一个任务转到后台的方法有:

    &: geidt &

    如果已经在运行了, 那么用ctrl+z强行停止, 并转到后台.

  2. 如何用jobs查看:

    命令: jobs -lprs %number
jobs -l (list 列表列出所有的后台任务)
jobs -p (显示进程好pid)
jobs -r (只显示正在运行的后台任务)
jobs -s (只显示已经停止的..)
格式是: [%number] state command args
state: running, stop, terminated.
其中+表示当前任务, - 号表示最近的当前任务 jobs + : 显示当前任务;
jobs -: 显示最近的当前任务 还有两个命令: bg, fg: fg: 是将后台的任务转到前台来执行;
bg: 是将后台停止的任务运行起来...

使用bg 主要针对的 是服务, 可以用bg使 后台停止的服务 运行起来! 如果是vi等 程序通常在后台 是stopped.

05-12 20:29