jobs 命令不起作用。whereis jobs?

jobs 命令不起作用。whereis jobs?

我尝试在 Ubuntu 16.04 上测试“jobs”命令。我的系统上似乎没有“jobs”命令。我按照我学到的方法做了,比如“whereis jobs”、“whatis jobs”、“which jobs”,但 Ubuntu 分别回复“jobs:”、“jobs: nothing appropriate”、“””。我还尝试了“sudo apt-get install jobs”。没有成功。我应该怎么做才能使 jobs 命令在我的 Ubuntu 16.04 系统上运行。谢谢阅读。

答案1

您只能在您的 shell 在后台运行进程时使用“jobs”(使用 ctrl+z 或在命令后使用与号 [&]。即 top &)。如果您的 shell 没有相应的后台进程运行,则命令“jobs”不会显示任何内容。

“jobs” 将显示正在运行的“完整”命令以及作业编号。您还可以使用“ps”命令查看在后台运行的 shell 作业及其 PID。“ps”命令仅显示正在运行的命令关键字(而不是参数)或作业编号(仅显示 PID)。您通常无法使用“ps”命令区分前台和后台进程,因为它会显示使用当前活动 shell 运行的所有进程。

答案2

根据手动的,监视选项“在支持它的系统上,对于交互式 shell 默认处于开启状态”。

set -m      Monitor mode.  Job control is enabled.  This option is
                           on by default for interactive shells on systems that
                           support it (see JOB CONTROL above).  All processes run
                           in a separate process group.  When a background job
                           completes, the shell prints a line containing its exit
                           status.

要查看它是否已打开,请键入set -o并查找该monitor行。如果设置为off,则作业控制被禁用。尝试键入set -m(或set -o monitor) 以启用它。如果这不起作用,则您的系统可能不支持后台作业。

相关内容