如何使用xkill命令杀掉Linux进程/未响应的程序

我们如何在Linux中杀掉一个资源/进程?很明显我们会找出资源的pid然后用kill命令。

说的更明白一点,我们可以找到某个资源(比如terminal)的PID:


  1. $ ps -A | grep -i terminal
  2. 6228 ? 00:00:00 gnome-terminal

上面的输出中,‘6288’就是进程(gnome-terminal)的pid, 使用下面的命令来杀掉进程。


  1. $ kill 6228

kill命令会发送一个信号给该pid的进程。

另外一个方法是我们可以使用pkill命令,它可以基于进程的名字或者其他的属性来杀掉进程。同样我们要杀掉一个叫terminal的进程可以这么做:


  1. $ pkill terminal

注意: pkill命令后面进程名的长度不大于15个字符

pkill看上去更加容易上手,因为你你不用找出进程的pid。但是如果你要对系统做更好的控制,那么没有什么可以打败'kill'。使用kill命令可以更好地审视你要杀掉的进程。

我们已经有一篇覆盖了kill、pkill和killall命令细节的指导了。

对于那些运行X Server的人而言,有另外一个工具称为xkill可以将进程从X Window中杀掉而不必传递它的名字或者pid。

xkill工具强制X server关闭与它的客户程序之间的联系,其结果就是X resource关闭了这个客户程序。xkill是X11工具集中一个非常容易上手的杀掉无用窗口的工具。

它支持的选项如在同时运行多个X Server时使用-display选项后面跟上显示号连接到指定的X server,使用-all(并不建议)杀掉所有在屏幕上的所有顶层窗口,以及帧(-frame)参数。

要列出所有的客户程序你可以运行:


  1. $ xlsclients

示例输出


  1. ' ' /usr/lib/libreoffice/program/soffice
  2. deb gnome-shell
  3. deb Docky
  4. deb google-chrome-stable
  5. deb soffice
  6. deb gnome-settings-daemon
  7. deb gnome-terminal-server

如果后面没有跟上资源id,xkill会将鼠标指针变成一个特殊符号,类似于“X”。只需在你要杀掉的窗口上点击,它就会杀掉它与server端的通信,这个程序就被杀掉了。


  1. $ xkill

使用xkill杀掉进程

需要注意的是xkill并不能保证它的通信会被成功杀掉/退出。大多数程序会在与服务端的通信被关闭后杀掉。然而仍有少部分会继续运行。

需要指出的点是:

  • 这个工具只能在X11 server运行的时候才能使用,因为这是X11工具的一部分。
  • 不要在你杀掉一个资源而它没有完全退出时而困惑。
  • 这不是kill的替代品

我需要在linux命令行中使用xkill么

不是,你不必非在命令行中运行xkill。你可以设置一个快捷键,并用它来调用xkill。

下面是如何在典型的gnome3桌面中设置键盘快捷键。

进入设置-> 选择键盘。点击'+'并添加一个名字和命令。点击点击新条目并按下你想要的组合键。我的是Ctrl+Alt+Shift+x。

Gnome 设置

添加快捷键

下次你要杀掉一个X资源只要用组合键就行了(Ctrl+Alt+Shift+x),你看到你的鼠标变成x了。点击想要杀掉的x资源就行了。

原文发布时间为:2015-06-11

本文来自合作伙伴“Linux中国”

时间: 2024-09-16 09:31:05

如何使用xkill命令杀掉Linux进程/未响应的程序的相关文章

在Linux系统中使用xkill命令杀掉未响应的进程

  我们如何在Linux中杀掉一个资源/进程?很明显我们会找出资源的pid然后用kill命令. 说的更明白一点,我们可以找到某个资源(比如terminal)的PID: 代码如下: $ ps -A | grep -i terminal 6228 ? 00:00:00 gnome-terminal 上面的输出中,'6288'就是进程(gnome-terminal)的pid, 使用下面的命令来杀掉进程. 代码如下: $ kill 6228 kill命令会发送一个信号给该pid的进程. 另外一个方法是我

Windows如何强行关闭未响应的程序

  第1步:打开任务管理器,用鼠标右键单击在您的Windows的任务栏上显示的时间,然后选择"任务管理器". 或者,您也可以通过按 Ctrl + Shift + Esc键的键盘组合打开任务管理器. 第2步:任务管理器打开时,单击" 应用程序 "选项卡,看看你想关闭的程序,选中此项,然后单击结束进程. 如果程序处于运行状态,程序将关闭,如果你在应用程序中点击"X"按钮. 另一方面,如果程序没有响应,你会看到另一个对话框出现,询问您是否确定要关闭的程

Win7系统关闭任务管理器中进程未响应怎么解决

  我们在win7旗舰版系统的电脑中常常都会使用的一个功能就是任务管理器,是我们电脑在运行的时候一些电脑性能的运行信息,我们在上网使用电脑的时候就会有很多的程序可以直接用我们的任务管理器来关闭,但是有时候我们在关闭的过程中会发现没有响应是怎么回事,如果说我们Win7系统关闭程序无法响应怎么解决来看看教程吧! 操作方法:win764位纯净版系统 第一.我们直接点击"开始菜单"选择程序中的运行命令选项,然后直接写入命令:ntsd -c q -p PID(把最后那个PID,写成我们需要结束的

Linux进程管理的4个常用命令

Linux是一个多用户.多任务的操作系统.在这样的系统中,各种计算机资源(如文件.内存.CPU等)的分配和管理都以进程为单位.为了协调多个进程对这些共享资源的访问,操作系统要跟踪所有进程的活动,以及它们对系统资源的使用情况,从而实施对进程和资源的动态管理.进程在一定条件下可以对诸如文件.数据库等客体进行操作.如果进程用作其他不法用途,将给系统带来重大危害.在现实生活当中,许多网络黑客都是通过种植"木马"的办法来达到破坏计算机系统和入侵的目的,而这些"木马"程序无一例

关于Linux进程你所需要知道的一切

在这篇指南中,我们会逐步对进程做基本的了解,然后简要看看如何用特定命令管理 Linux 进程. 进程(process)是指正在执行的程序;是程序正在运行的一个实例.它由程序指令,和从文件.其它程序中读取的数据或系统用户的输入组成. 进程的类型 在 Linux 中主要有两种类型的进程: 前台进程(也称为交互式进程) - 这些进程由终端会话初始化和控制.换句话说,需要有一个连接到系统中的用户来启动这样的进程;它们不是作为系统功能/服务的一部分自动启动. 后台进程(也称为非交互式/自动进程) - 这些

如何自动或手动关闭未响应程序

本文介绍Windows XP/Vista/Win7中设置关闭未响应程序方法,尽管Windows 7在程序容错性方面做了很大改进,但未响应程序及死机情况还是会经常遇到,这类问题各有原因,系统.软件和硬件都有责任,遇到未响应程序时,耐心先等待一下,实在不行就想办法咔嚓掉,但要注意先备份好数据,因为结束进程还可能导致系统死机.自动重启等现象,尤其是些跟硬件关联的程序. 一.如何自动关闭未响应程序 自动关闭未响应程序是系统自动完成的,由于Vista/Windows 7在程序执行效率的缘故,很多未响应的程

windows7中如何自动或手动关闭未响应程序

一.如何自动关闭未响应程序 自动关闭未响应程序是系统自动完成的,由于Vista/Windows 7在程序执行效率的缘故,很多未响应的程序其实并没死,而完全是因为操作系统的调度引起的"暂停"状态,尤其是很多电脑老手,鼠标操作太快,程序运行和切换已经完全超出操作系统的响应速度,那样很容易造成暂时的假死状态. 比如系统繁忙时运行某些程序.光驱由于光盘质量问题的频繁读写等等情况,一般只需要耐心等待一下,程序就会恢复状态,而在恢复之前,系统则是一直报告未响应的程序(因为线程或进程超时).所以还是

Win7系统程序假死未响应的解决办法

  应用程序出现假死未响应这样的原因可能是因为这个程序在运行时向系统请求资源,但一直处在资源不足的状态下,久而久之就会出现未响应现象.下面小编就为大家介绍一下Win7系统程序假死未响应的常见处理办法. 1.首先,我们可以将鼠标移动的任务栏,右键点击假死程序图标,选择关闭窗口,一般情况下这样就可以解决问题了. 2.如果还不行,我们就打开任务管理器(按下Ctrl+Alt+Delete,Win8以上用户请按下Ctrl+Alt+Esc),选择假死未响应的程序或进程,点击结束任务. 3.再不行,我们就要搬

如何在后台运行Linux命令并且将进程脱离终端

在本指南中,我们将会阐明一个在 Linux 系统中进程管理的简单但是重要的概念,那就是如何从它的控制终端完全脱离一个进程. 当一个进程与终端关联在一起时,可能会出现两种问题: 你的控制终端充满了很多输出数据或者错误及诊断信息 如果发生终端关闭的情况,进程连同它的子进程都将会终止 为了解决上面两个问题,你需要从一个控制终端完全脱离一个进程.在我们实际上解决这个问题之前,让我们先简要的介绍一下,如何在后台运行一个进程. 如何在后台开始一个 Linux 进程或者命令行 如果一个进程已经运行,例如下面的