命令"工作"不适用于终端(shell,bash)

时间:2012-12-05 17:52:28

标签: bash shell command jobs

我只是想制作一个涉及命令“工作”的简单脚本,但它似乎不起作用,它甚至不被“男人”识别......不知道发生了什么:S。

6 个答案:

答案 0 :(得分:1)

您需要运行交互式shell以使jobs命令起作用 - 以这种方式进行的作业控制由用户使用,而不是由脚本使用。

您应该能够使用jobs -p命令来获取运行后台任务(作业)的pids,这可能会完成您正在尝试执行的操作。这应该显示所有子过程的pid,可以单独检查/监控。

答案 1 :(得分:1)

jobs是一个内置的bash(如果你想到它,实际上没有一个系统命令来控制从shell启动的作业进程)。您可以通过以下方式找到有关该命令的更多信息:

答案 2 :(得分:1)

jobs仅报告由运行jobs的shell实例生成的后台和/或暂停进程。因此,在脚本中使用它将具有有限的用途(但仅适用于报告脚本用户正在发生的事情),因为只有在脚本中先前生成并且以其他方式后台或暂停的内容才会知道到运行脚本的shell实例。

答案 3 :(得分:0)

安装POSIX手册页。该软件包应命名为“manpages-posix-dev”或类似名称。

答案 4 :(得分:0)

我认为没有名为jobs的linux / unix命令。

ubuntu上的which jobssudo apt-get jobs都找不到任何内容。

如果是本地二进制文件,请检查$PATH以确保其已包含在内。

答案 5 :(得分:0)

使用ps命令从shell脚本

中查找进程