如何通过标题杀死进程?

如何通过标题杀死进程?

在 Windows 上,这会杀死任何标题为“这是进程标题”的进程。

taskkill /FI "WINDOWTITLE eq This is a process title"

我进行了全面搜索,但没有找到任何关于如何在 Linux 上执行此操作的内容。

在 Linux 上怎么做呢?

那是:不是二进制名称/命令——进程/窗口标题。

答案1

在 X11 中,不存在单一明确的“进程标题”。最接近的等价物可能是WM_NAME属性(“窗口名称”)。然而,可能有多个窗口具有相同的名称。

如果使用 X11,您可以尝试:

xprop -name "This is a window title" _NET_WM_PID

尝试通过窗口标题获取进程的 PID。但根据进程本身和/或您使用的窗口管理器,它可能会也可能不会起作用:窗口标题栏中的文本可能与 X11 协议级别的 WM_NAME 属性完全无关。 。 (窗口管理器决定如果首先甚至会有一个标题栏!)

xprop即使有多个匹配的窗口,它看起来也只会返回找到的第一个窗口。

如果您似乎获得了正确的 PID,则可以终止它,例如:

kill $(xprop -name "This is a window title" _NET_WM_PID)

如果你使用 Wayland,这些 X11 工具和技巧很可能根本不适用。 (如果您对 Wayland 有更多了解,请随意写下您自己的答案或编辑此答案!)

答案2

现在很多 Linux 发行版也有杀戮安装。例如pkill evolution

相关内容