命令行管理终端进程, How to Manage Processes from the Linux Terminal

 

命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

Linux 终端有许多有用的命令,可以显示正在运行的进程、杀死它们并更改它们的优先级。这篇文章列出了经典的传统命令,以及一些更有用的现代命令。

这里的许多命令执行一个单一的功能并且可以组合起来——这就是 Unix 设计程序的哲学。其他程序,如 htop,在命令之上提供了一个友好的界面。

 

最佳

top命令是查看系统资源使用情况和查看占用系统资源最多的进程的传统方式。Top 显示进程列表,使用最多 CPU 的进程位于顶部。

命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

要退出 top 或 htop,请使用Ctrl-C键盘快捷键。此键盘快捷键通常会终止终端中当前正在运行的进程。

 

htop

htop命令是一个改进的 top 。大多数 Linux 发行版默认不安装它——这是在 Ubuntu 上安装它所需的命令:

sudo apt-get install htop
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

htop 以更易于理解的布局显示相同的信息。它还允许您使用箭头键选择进程并使用 F 键执行操作,例如杀死它们或更改它们的优先级。

 

ps

ps命令列出正在运行的进程。以下命令列出了系统上运行的所有进程:

ps -A
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

这可能是一次读取的进程太多,因此您可以通过less命令管道输出以按照自己的步调滚动它们:

ps -A | less

完成后按q退出。

您还可以通过grep管道输出以搜索特定进程,而无需使用任何其他命令。以下命令将搜索 Firefox 进程:

ps -A | grep firefox
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

 

pstree

pstree命令是可视化进程的另一种方式。它以树格式显示它们。因此,例如,您的 X 服务器和图形环境将出现在生成它们的显示管理器下。

命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

 

kill

给定进程 ID,kill 命令可以杀死一个进程您可以从ps -Atoppgrep命令获取此信息。

kill PID
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

从技术上讲,kill 命令可以向进程发送任何信号。您可以使用kill -KILLkill -9来杀死顽固的进程。

 

pgrep

给定一个搜索词,pgrep返回与其匹配的进程 ID。例如,您可以使用以下命令来查找 Firefox 的 PID:

pgrep firefox
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

您也可以将此命令与 kill 结合使用以终止特定进程。不过,使用 pkill 或 killall 更简单。

 

pkill & killall

pkillkillall命令可以杀死一个进程,给定它的名字。使用任一命令杀死 Firefox:

pkill firefox
killall firefox
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

 

renice

renice命令更改已运行进程的nice 值。nice 值确定进程运行的优先级。-19的值是非常高的优先级,而19的值是非常低的优先级。值0是默认优先级。

renice 命令需要进程的 PID。以下命令使进程以非常低的优先级运行:

renice 19 PID
命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

您也可以将上面的pgrep技巧与 renice 一起使用。

如果您要让进程以更高的优先级运行,则需要 root 权限。在 Ubuntu 上,为此使用sudo

sudo renice -19 #

 

xkill

xkill命令是一种轻松杀死图形程序的方法。运行它,您的光标将变成一个x符号。单击程序的窗口以终止该程序。如果您不想杀死程序,您可以通过右键单击退出 xkill。

命令行管理终端进程, How to Manage Processes from the Linux Terminal
命令行管理终端进程, How to Manage Processes from the Linux Terminal

您不必从终端运行此命令 – 您也可以按 Alt-F2,键入xkill并按 Enter 以从图形桌面使用它。

 

 

本文:命令行管理终端进程, How to Manage Processes from the Linux Terminal

 

 

 

Add a Comment

Your email address will not be published.

Time limit is exhausted. Please reload CAPTCHA.