Linux:终止后台任务

2024-11-06 08:34:00
admin
原创
138
摘要:问题描述:如何在 Linux 中终止最后生成的后台任务?例子:doSomething doAnotherThing doB & doC doD #kill doB ???? 解决方案 1:你可以通过任务号来终止任务。当你将任务放入后台时,你会看到类似以下内容:$ ./script & [1] ...

问题描述:

如何在 Linux 中终止最后生成的后台任务?

例子:

doSomething
doAnotherThing
doB &
doC
doD
#kill doB
????

解决方案 1:

你可以通过任务号来终止任务。当你将任务放入后台时,你会看到类似以下内容:

$ ./script &
[1] 35341

[1]是工作编号,可以这样引用:

$ kill %1
$ kill %%  # Most recent background job

要查看作业编号列表,请使用jobs命令。更多来自man bash

在 shell 中有多种方式来引用作业。字符%引入作业名称。作业号n可以用 来引用%n。还可以使用启动作业的名称的前缀或使用出现在其命令行中的子字符串来引用作业。例如,%ce引用已停止的ce作业。如果前缀与多个作业匹配,bash 会报告错误。%?ce另一方面,使用 引用任何ce在其命令行中包含字符串的作业。如果子字符串与多个作业匹配,bash 会报告错误。符号%%%+指的是 shell 对当前作业的概念,它是在前台运行或在后台启动时最后停止的作业。可以使用 来引用前一个作业%-。在与作业有关的输出中(例如,jobs 命令的输出),当前作业始终用 标记+,而前一个作业用 标记-。单个%(没有附带作业规范)也指当前作业。

解决方案 2:

Bash 中有一个特殊变量用于此目的:

kill $!

$! 扩展为后台执行的最后一个进程的 PID。

解决方案 3:

以下命令将列出会话中的所有后台进程以及 pid。然后您可以使用它来终止进程。

jobs -l

使用示例:

$ sleep 300 &
$ jobs -l
[1]+ 31139 Running                 sleep 300 &
$ kill 31139

解决方案 4:

这应该会终止所有后台进程:

jobs -p | xargs kill -9

解决方案 5:

skill doB

skill是 kill 命令的一个版本,可让您根据给定的条件选择一个或多个进程。

解决方案 6:

您需要它的 pid...使用“ps -A”来找到它。

解决方案 7:

正如John Kugelman 的回答一样,%这与工作规范有关。

我们如何才能高效地找到它?使用less的 &pattern 命令。似乎man使用了less分页器(我不太确定)。在 'man' Bash 中,输入&%,然后输入Enter。它只会显示包含“%”的行。要重新显示全部,请输入&。然后输入Enter

解决方案 8:

只需使用 killall 命令:

killall 任务名

要了解更多信息和更多高级选项,请输入“man killall”。

相关推荐
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1136  
  IPD(Integrated Product Development,集成产品开发)流程是一种广泛应用于高科技和制造业的产品开发方法论。它通过跨职能团队的紧密协作,将产品开发周期缩短,同时提高产品质量和市场成功率。在IPD流程中,CDCP(Concept Decision Checkpoint,概念决策检查点)是一个关...
IPD培训课程   90  
  研发IPD(集成产品开发)流程作为一种系统化的产品开发方法,已经在许多行业中得到广泛应用。它不仅能够提升产品开发的效率和质量,还能够通过优化流程和资源分配,显著提高客户满意度。客户满意度是企业长期成功的关键因素之一,而IPD流程通过其独特的结构和机制,能够确保产品从概念到市场交付的每个环节都围绕客户需求展开。本文将深入...
IPD流程   84  
  IPD(Integrated Product Development,集成产品开发)流程是一种以跨职能团队协作为核心的产品开发方法,旨在通过优化资源分配、提高沟通效率以及减少返工,从而缩短项目周期并提升产品质量。随着企业对产品上市速度的要求越来越高,IPD流程的应用价值愈发凸显。通过整合产品开发过程中的各个环节,IPD...
IPD项目管理咨询   92  
  跨部门沟通是企业运营中不可或缺的一环,尤其在复杂的产品开发过程中,不同部门之间的协作效率直接影响项目的成败。集成产品开发(IPD)作为一种系统化的项目管理方法,旨在通过优化流程和增强团队协作来提升产品开发的效率和质量。然而,跨部门沟通的复杂性往往成为IPD实施中的一大挑战。部门之间的目标差异、信息不对称以及沟通渠道不畅...
IPD是什么意思   89  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用