我们之前已经写过如何在Windows中杀死一个无响应的程序(参见我们的帖子,如何使用命令行终止程序 )。如果您是Ubuntu用户,则有类似的方法可以终止无响应的程序。
您可以在终端窗口中使用几个命令,而不是注销或重新启动以结束程序。杀死没有响应的程序。还有一种使用系统监视器来杀死程序的图形方式。
注意:前两种方法也适用于其他Linux发行版。这些方法中使用的命令是常规Linux命令。第三种方法中讨论的系统监视器特定于Gnome桌面环境,但不适用于Ubuntu。如果您在其他Linux发行版中运行Gnome,则应该可以访问系统监视器。其他桌面环境中有相同的工具,例如KDE中的KSysGuard。
在终端窗口中使用killall命令
使用杀死程序的killall命令,选择附件|打开终端窗口来自应用程序菜单的终端。
注意:您可以也可以通过按Alt + F2打开终端窗口,以访问运行应用程序对话框。在编辑框中输入“gnome-terminal”(不带引号),然后点击运行。
要查看正在运行的流程列表,请在提示符处输入以下文本,然后按Enter。
$ ps -A
显示进程列表及其关联的PID(进程ID)。查看列表以查找与要杀死的程序匹配的进程的名称。该程序很可能列在列表的末尾,其中显示最近运行的程序。对于我们的示例,我们使用Firefox作为杀死进程。 firefox-bin进程可以杀死,PID5039。
要使用PID终止进程,请在提示符下输入“killall”命令(不带引号),然后输入空格,然后从生成的列表中找到相应的PID。按输入。
使用PID终止进程并不总是有效。如果它不适合您,您可以使用进程名称来终止进程。要执行此操作,请在提示符处输入“killall”命令(不带引号),然后输入空格,然后在生成的列表中输入相应的进程名称。对于Firefox,进程名称为firefox-bin。
注意:使用其进程名称杀死程序,仅适用于可执行文件(即,在执行期间保持打开的可运行程序。无法使用进程名称终止在后台运行的程序。
使用killall而不指定信号作为参数,如上例所示,允许程序在终止前清理,默认情况下使用SIGTERM信号。如果这不起作用,您可以指定-9(SIGKILL)信号。这会强制程序终止,并且在执行此操作之前不允许它进行清理。建议你首先尝试杀死没有-9信号的程序,以便让它有机会彻底退出。
如果你需要使用-9 信号,在“killall”命令和进程名称(或PID)之间输入killall之后和-9信号之后的空格,如下所示。
$ killall -9 firefox-bin
注意:在9之前有一个破折号。
要关闭终端窗口,请在提示符下键入退出,然后按Enter。
在程序窗口中使用xkill命令
您还可以在终端窗口中运行xkill命令。此命令允许您通过单击其窗口来终止任何程序。
要使用xkill命令,请打开终端窗口,如本文前面所述。在提示符处输入“xkill”(不带引号),然后按Enter。光标变为X。要杀死程序,只需单击程序窗口或窗口标题栏上的任意位置。
使用Gnome系统监视器
如果您使用的是Gnome桌面环境,则可以使用名为系统监视器的图形工具来终止程序。选择管理|系统监控从系统菜单。在较新版本的Ubuntu中,您需要点击活动并输入系统监视器。
注意:您也可以通过按Alt + F2打开运行应用程序>来打开系统监视器strong>对话框。在编辑框中输入“gnome-system-monitor”(不带引号),然后点击运行。
在系统监视器对话框中,单击进程选项卡。显示所有正在运行的进程的列表。要终止程序,请在列表中找到程序的进程(Firefox的firefox-bin)并选择它。右键单击该过程,然后从弹出菜单中选择Kill Process。
将显示确认对话框。如果您确定要杀死所选流程,请单击终止流程。
关闭系统监视器,从监视器菜单中选择退出。
注意:如果你需要杀死使用root权限运行的程序,请使用前两种杀死程序的方法之一并输入“sudo”(不带引号)在killall命令或xkill命令之前。享受!