标签: kill

如果“kill -9”不起作用怎么办?

我有一个无法杀死的进程kill -9 <pid>。在这种情况下有什么问题,特别是因为我是该流程的所有者。我认为没有什么可以逃避这个kill选择。

process kill

556
推荐指数
13
解决办法
65万
查看次数

我什么时候不应该杀死 -9 进程?

我总是很犹豫要不要跑kill -9,但我看到其他管理员几乎是例行公事。

我认为可能有一个明智的中间立场,所以:

  1. 何时以及为何应kill -9使用?什么时候,为什么不呢?
  2. 在做之前应该尝试什么?
  3. 什么样的调试“挂起”进程会导致进一步的问题?

linux command-line kill process-management

419
推荐指数
9
解决办法
19万
查看次数

如何终止后台进程?

我已经在后台使用&. 突然停止下载。我想终止它的进程,然后重新运行命令。我怎样才能终止它?

我还没有关闭它的外壳窗口。但正如你所知,它不会停止使用Ctrl+CCtrl+ Z

command-line process kill job-control background-process

264
推荐指数
7
解决办法
73万
查看次数

如何杀死一只逃跑的猫?

很多时候,我不小心cat在内容多达几千行的文件上运行了该命令。

我尝试catCtrl+CCtrl+终止命令Z,但两者都只cat在终端中显示的总输出后生效,所以我必须等到cat完全执行。

有没有更好的解决方案来避免等待?因为有时文件的大小高达 100MB,等待它会很烦人。

我正在使用tcsh.

shell kill tcsh terminal cat

138
推荐指数
1
解决办法
3万
查看次数

如何杀死所有屏幕?

我不小心创建了 1000 多个屏幕。我如何用一个命令将它们全部杀死?(或几个)

linux bash kill gnu-screen

117
推荐指数
5
解决办法
27万
查看次数

使用一个命令杀死多个正在运行的进程实例

假设我有任何进程(例如,vi)的一千个或更多实例正在运行。我如何在一次射击/一行命令/一个命令中将它们全部杀死?

process kill

97
推荐指数
5
解决办法
24万
查看次数

杀死所有后代进程

我正在写一个应用程序。它能够产生各种外部进程。当应用程序关闭时,我希望它产生的任何进程都被杀死。

听起来很容易,对吧?查找我的 PID,并递归地遍历进程树,以自下而上的方式杀死所有可见的东西。

不同之处在于,这并不正常工作。在一种特定情况下,我 spawn foo,但foo只是spawn ,bar然后立即退出,继续bar运行。现在没有关于bar曾经是应用程序进程树一部分的事实的记录。因此,应用程序无法知道它应该杀死bar.

我很确定我不能成为地球上第一个尝试这样做的人。那么标准的解决方案是什么?我想我真的在寻找某种方式来“标记”一个进程,这样它产生的任何进程都将无条件地继承相同的标签。

(到目前为止,我能想到的最好的方法是以不同的用户身份运行应用程序。这样,您就可以随意终止属于该用户的所有进程。但这有各种访问权限问题......)

process kill

95
推荐指数
4
解决办法
16万
查看次数

Linux 如何“杀死”一个进程?

我常常感到困惑的是,尽管我从事计算机专业工作几十年,Linux 工作十年,但我实际上将操作系统的大部分功能视为黑匣子,与魔术没什么两样。

今天我想到了这个kill命令,虽然我每天多次使用它(无论是“正常”还是-9风格),我必须承认我完全不知道它在幕后是如何工作的。

在我看来,如果一个正在运行的进程被“挂起”,我会调用kill它的 PID,然后它突然不再运行了。魔法!

那里到底发生了什么?联机帮助页谈论“信号”,但这肯定只是一种抽象。发送kill -9到进程不需要进程的合作(如处理信号),它只是将其杀死。

  • Linux 如何阻止进程继续占用 CPU 时间?
  • 是否从调度中删除?
  • 它是否断开进程与其打开的文件句柄的连接?
  • 进程的虚拟内存是如何释放的?
  • 内存中是否有一个全局表之类的东西,Linux 保留对进程占用的所有资源的引用,当我“杀死”一个进程时,Linux 只是简单地遍历该表并一个一个地释放资源?

我真的很想知道这一切!

process kill process-management

94
推荐指数
1
解决办法
2万
查看次数

`kill -0` 有什么作用?

我最近在 shell 脚本中遇到了这个问题。

if ! kill -0 $(cat /path/to/file.pid); then
    ... do something ...
fi
Run Code Online (Sandbox Code Playgroud)

有什么作用kill -0 ...

shell process kill

84
推荐指数
2
解决办法
4万
查看次数

Linux 是否会在不询问我内存是否不足的情况下开始杀死我的进程?

我正在运行一个带有命令的 shell 脚本来连续运行几个内存密集型程序(2-5 GB)。当我回去检查我的脚本的进度时,我惊讶地发现我的一些进程是Killed,正如我的终端向我报告的那样。在后来Killed启动的程序之前已经连续完成了几个程序,但是之后的所有程序都因分段错误而失败(这可能是由于我的代码中的错误,也可能不是由于我的代码中的错误,请继续阅读)。

我查看了我正在使用的特定集群的使用历史记录,发现有人开始同时运行多个内存密集型进程,这样做耗尽了集群可用的实际内存(甚至可能是交换空间)。尽我所能,这些内存密集型进程在我的程序出现问题的同时开始运行。

一旦开始耗尽内存,Linux 是否有可能杀死我的程序?我后来遇到的分段错误是否可能是由于缺少可用于运行我的程序的内存(而不是我的代码中的错误)?

linux kill memory segmentation-fault

75
推荐指数
2
解决办法
4万
查看次数