top

在 Linux 服务器上,或类 Unix 的机器上,一般我们想查看每个进程的 CPU 使用率、内存使用情况以及其他相关信息时会使用 top 命令。

打开网易新闻 查看精彩图片

top 是一个标准的 Linux/Unix 工具,实际上我从一开始接触 Linux 就一直使用 top , 一般是两种场景:

  • Linux 服务器上用

  • 自己的 Mac 电脑上用

top 有一些常用的功能,比如可以动态的显示进程的情况,按照 CPU 、内存使用率排序等。说实话,这么多年了,使用最多的还就是 top ,一来是因为习惯了,工具用惯了很多操作都是肌肉记忆。二来是 top 一般系统自带不用安装,省事儿。

htop

top 挺好的,但 top 对于初学者和小白用户不太友好,尤其是它的用户界面和操作。于是后来有了 htop

打开网易新闻 查看精彩图片

htop 是 top 的一个增强替代品,提供了更加友好的用户界面和更多的功能。与 top 相比,htop 默认以颜色区分不同的信息,并且支持水平滚动查看更多的进程信息。

htop 还允许用户使用方向键来选择进程,并可以直接发送信号给进程(如 SIGKILL)。htop 支持多种视图和配置选项,使得用户可以根据自己的喜好定制显示的内容。

htop 我也用了几年,确实舒服一些,但由于需要安装和我对 top 的肌肉记忆 ,htop 在我的使用中并未完全替代 top。直到 btop 的出现

btop

现在,我本机使用的是 btop,有了 btop,top 和 htop 一点儿都不想用了,哈哈。

在服务器上有时候因为懒不想安装,一部分时间还是 top,一部分用 btop。

打开网易新闻 查看精彩图片

第一印象是真漂亮啊,然而它不止好看,功能也是很实用,操作还很简单,你说能不喜欢它吗?

说是 btop ,实际上人家真正的名字是 btop++ , 用 C++ 开发的

安装
打开网易新闻 查看精彩图片
安装

btop 支持各种类 Unix 系统,你可以在它的文档中找到对应系统的安装方法 https://github.com/aristocratos/btop

打开网易新闻 查看精彩图片

本文演示,我是用我自己的 Mac 笔记本电脑,用 Mac 安装很简单,用 brew 一行搞定

brew install btop

我的系统情况是这样的:

打开网易新闻 查看精彩图片

安装完成后,直接运行btop就可以看到如上图的界面了。

功能界面

打开 btop 后不要被它的界面唬住了,其实非常的简单,我们来介绍一下。

打开 btop 后,其实显示的是它给你的 “预置” 界面。默认有 4 个预置界面,你可以按p键进行切换。命令行界面上会分别显示:

  • preset 0

  • preset 1

  • preset 2

  • preset 3

打开网易新闻 查看精彩图片

你可能注意到了,这 4 个预置界面中有很多内容是重复的,没错,其实 btop 一共就 4 个模块,预置界面只是把不同的模块拼在一起显示罢了。这 4 个模块分别是:

  • CPU 模块

  • 存储 模块

  • 网络 模块

  • 进程 模块

这 4 个模块对应的快捷键分别就是1234你按一下模块显示,再按一下模块隐藏。

打开网易新闻 查看精彩图片

所以如果你对预置界面的内容想立刻调整,就可以按快捷键来显示/隐藏 你想要的模块,当然预置界面也是可以通过配置文件调整的,这个我们后面说。

CPU 模块

CPU 模块可以显示 CPU 型号、各内核的使用率、温度,CPU 整体的负载,以及一个直观的图象,所有数据都是实时显示的。

存储 模块
打开网易新闻 查看精彩图片
存储 模块

存储模块包括两部分,一个是内存使用情况,一个是磁盘使用情况:

打开网易新闻 查看精彩图片

因为比较直观,具体内容我就不解释了。

网络模块

网络模块可以看下网络的整体负载和吞吐情况,主要包括上行和下行数据汇总,你可以通过按快捷键bn来切换看不同的网卡。

进程模块
打开网易新闻 查看精彩图片
进程模块

初始的进程模块可以看到:

  • pid

  • Program: 进程名称

  • Command: 执行命令的路径

  • Threads: 进程包含的线程数

  • User: 启动进程的用户

  • MemB: 进程所占用内存

  • Cpu%: 进程所占用 CPU 百分比

打开网易新闻 查看精彩图片

你可以按快捷键e显示树状视图:

打开网易新闻 查看精彩图片

可以按快捷键r对进行排序,按一下是倒序,再按一下是正序。具体排序列可以按左右箭头,根据界面显示进行选择,比如我要按照内存使用排序,那么右上角就是这样的:

打开网易新闻 查看精彩图片

f键输入你想过滤的内容然后回车,可以过滤一下界面显示的内容,比如我只想看 chrome 的进程情况:

打开网易新闻 查看精彩图片

还可以通过 上下箭头选中某一个进程按回车查看进程详情,再次按回车可以隐藏详情:

打开网易新闻 查看精彩图片

显示进程详情后可以对进程进行操作,比如Kill只需要按快捷键k就可以了,然后会弹出提示:

打开网易新闻 查看精彩图片

主题

怎么样,是不是很方便,操作简单,上手容易,还好看。关于 btop 的主要操作就这些了,剩下的可以参考helpmenu中显示的内容自行操作和设置都很简单。

btop 的配置文件默认在这里:$HOME/.config/btop,你可以直接修改配置文件中的详细参数,如我们前文提到的 “预置” 界面以及预置界面内容都可以在配置文件中设置 :

打开网易新闻 查看精彩图片

此外 btop 还有很多好看的主题配色,但默认安装的情况下只带了一个Default的,如果你想切换用其他的主题,需要先下载这些主题,主题文件在这里:https://github.com/aristocratos/btop/tree/main/themes

下载好以后放到本地对应的文件夹中~/.config/btop/themes

然后你就可以要界面上进行主题的切换了,具体流程是先按快捷键m,然后选 OPTIONS

打开网易新闻 查看精彩图片

接着在 Color theme 中就能看到你当前拥有的 theme 数据,按方向键就可以切换主题配色了:

打开网易新闻 查看精彩图片

主题有很多,我这里给大家一个完整的预览:

打开网易新闻 查看精彩图片

我目前使用的就是Default我觉得最符合我的审美。

最后

用了 btop 后你就再也回不去了,一般情况下再也不会想用 htop 和 top 了,大家没有换的可以直接换了。