top在 Linux 服务器上,或类 Unix 的机器上,一般我们想查看每个进程的 CPU 使用率、内存使用情况以及其他相关信息时会使用 top 命令。
wttw3tv1fvu640115027826.png
top 是一个标准的 Linux/Unix 工具,实际上我从一开始接触 Linux 就一直使用 top , 一般是两种场景:
Linux 服务器上用
自己的 Mac 电脑上用
top 有一些常用的功能,比如可以动态的显示进程的情况,按照 CPU 、内存使用率排序等。说实话,这么多年了,使用最多的还就是 top ,一来是因为习惯了,工具用惯了很多操作都是肌肉记忆。二来是 top 一般系统自带不用安装,省事儿。
htoptop 挺好的,但 top 对于初学者和小白用户不太友好,尤其是它的用户界面和操作。于是后来有了 htop
cohay0jkf4v640115027926.png
htop 是 top 的一个增强替代品,提供了更加友好的用户界面和更多的功能。与 top 相比,htop 默认以颜色区分不同的信息,并且支持水平滚动查看更多的进程信息。htop 还允许用户使用方向键来选择进程,并可以直接发送信号给进程(如 SIGKILL)。htop 支持多种视图和配置选项,使得用户可以根据自己的喜好定制显示的内容。
htop 我也用了几年,确实舒服一些,但由于需要安装和我对 top 的肌肉记忆 ,htop 在我的使用中并未完全替代 top。 直到 btop 的出现
btop现在,我本机使用的是 btop,有了 btop,top 和 htop 一点儿都不想用了,哈哈。
在服务器上有时候因为懒不想安装,一部分时间还是 top,一部分用 btop。
kb1baz2wzsd640115028027.png
第一印象是真漂亮啊,然而它不止好看,功能也是很实用,操作还很简单,你说能不喜欢它吗?
说是 btop ,实际上人家真正的名字是 btop++ , 用 C++ 开发的
s2l5aleaccq640115028127.png
安装btop 支持各种类 Unix 系统,你可以在它的文档中找到对应系统的安装方法 https://github.com/aristocratos/btop
ou4u1bwlgp5640115028227.png
本文演示,我是用我自己的 Mac 笔记本电脑,用 Mac 安装很简单,用 brew 一行搞定
brew install btop
我的系统情况是这样的:
c3zysxjybjf640115028327.png
安装完成后,直接运行 btop 就可以看到如上图的界面了。
功能界面打开 btop 后不要被它的界面唬住了,其实非常的简单,我们来介绍一下。
打开 btop 后,其实显示的是它给你的 “预置” 界面。 默认有 4 个预置界面,你可以按 p 键进行切换。命令行界面上会分别显示:
preset 0
preset 1
preset 2
preset 3
cforhcxpq1t640115028428.png
你可能注意到了,这 4 个预置界面中有很多内容是重复的,没错,其实 btop 一共就 4 个模块,预置界面只是把不同的模块拼在一起显示罢了。这 4 个模块分别是:
CPU 模块
存储 模块
网络 模块
进程 模块
这 4 个模块对应的快捷键分别就是 1,2,3,4 你按一下模块显示,再按一下模块隐藏。
mf0spma43uz640115028528.jpg
所以如果你对预置界面的内容想立刻调整,就可以按快捷键来显示/隐藏 你想要的模块,当然预置界面也是可以通过配置文件调整的,这个我们后面说。
CPU 模块CPU 模块可以显示 CPU 型号、各内核的使用率、温度,CPU 整体的负载,以及一个直观的图象,所有数据都是实时显示的。
5psxdpwhber640115028628.png
存储 模块存储模块包括两部分,一个是内存使用情况,一个是磁盘使用情况:
qgpb1ftfhqj640115028728.png
因为比较直观,具体内容我就不解释了。
网络模块网络模块可以看下网络的整体负载和吞吐情况,主要包括上行和下行数据汇总,你可以通过按快捷键 b和n 来切换看不同的网卡。
3emry2gcxes640115028828.png
进程模块初始的进程模块可以看到:
pid
Program: 进程名称
Command: 执行命令的路径
Threads: 进程包含的线程数
User: 启动进程的用户
MemB: 进程所占用内存
Cpu%: 进程所占用 CPU 百分比
hrlxax4ejwm640115028929.png
你可以按快捷键 e 显示树状视图:
xz3yakahjvy640115029029.png
可以按快捷键 r 对进行排序,按一下是倒序,再按一下是正序。具体排序列可以按左右箭头,根据界面显示进行选择,比如我要按照内存使用排序,那么右上角就是这样的:
qicjqrrrmzl640115029129.png
按 f 键输入你想过滤的内容然后回车,可以过滤一下界面显示的内容,比如我只想看 chrome 的进程情况:
jrvrnhsuwqv640115029230.png
还可以通过 上下箭头选中某一个进程按回车查看进程详情,再次按回车可以隐藏详情:
zqxfaz0gtv5640115029330.png
显示进程详情后可以对进程进行操作,比如 Kill 只需要按快捷键 k 就可以了,然后会弹出提示:
a51ijl1b4zc640115029430.png
主题怎么样,是不是很方便,操作简单,上手容易,还好看。关于 btop 的主要操作就这些了,剩下的可以参考 help 和 menu 中显示的内容自行操作和设置都很简单。
btop 的配置文件默认在这里:$HOME/.config/btop ,你可以直接修改配置文件中的详细参数,如我们前文提到的 “预置” 界面以及预置界面内容都可以在配置文件中设置 :
n4nrcbil1st640115029531.png
此外 btop 还有很多好看的主题配色,但默认安装的情况下只带了一个 Default 的,如果你想切换用其他的主题,需要先下载这些主题,主题文件在这里:https://github.com/aristocratos/btop/tree/main/themes
下载好以后放到本地对应的文件夹中 ~/.config/btop/themes
然后你就可以要界面上进行主题的切换了,具体流程是先按快捷键 m ,然后选 OPTIONS
1guirqjmeg5640115029631.png
接着在 Color theme 中就能看到你当前拥有的 theme 数据,按方向键就可以切换主题配色了:
fs5nk55xml4640115029731.png
主题有很多,我这里给大家一个完整的预览:
我目前使用的就是 Default 我觉得最符合我的审美。
最后用了 btop 后你就再也回不去了,一般情况下再也不会想用 htop 和 top 了,大家没有换的可以直接换了 |