用 smem 命令获取内存使用统计信息
创始人
2024-03-02 08:47:02
0

smem 命令允许你快速查看你的网页应用的内存使用情况。

在我的编程工作中,我经常需要了解网页应用的内存使用情况。在深入研究细节和浏览器剖析工具之前,一个粗略的估计通常就足够了。

为了了解 Linux 或 macOS 上的内存使用情况,人们通常使用 tophtop。我很想看到一个单一的数字:一个进程占用了多少内存。但这些工具所显示的统计数据可能很难理解。对于网页浏览器来说,它甚至更加复杂,因为它们经常运行许多独立的进程。它们在 top 输出中显示为一个长长的列表,每一个都有自己的单独指标。

Memory usage using htop

smem 命令

幸运的是有 smem,另一个用于查看内存使用统计的命令行工具。用你选择的包管理器安装它,例如:

sudo apt install smem

要获得 Firefox 的总内存使用量,请执行:

smem -c pss -P firefox -k -t | tail -n 1

这些开关做了什么?

  • -c 开关指定要显示的列。我只对 pss 列感兴趣,它显示一个进程分配的内存。
  • -P 开关过滤进程,只包括那些名字里有 firefox 的进程。
  • -k 开关显示以 MB/GB 为单位的内存使用情况,而不是单纯的字节数。
  • -t 开关显示总数。
  • tail -n 1 过滤器只输出最后一行,也就是总数的地方。

输出是非常简单的:

$ smem -t -k -c pss -P firefox | tail -n 1
4.9G

开门见山!而且,经过又一天忙碌的工作,打开了 50 多个选项卡,Firefox 仍然只使用 5 GB。看看吧,Google Chrome。

用一个脚本更容易

为了方便起见,我创建一个名为 memory-use 的小脚本,它将进程名称作为参数。我把所有的脚本都放在 ~/bin 里,所以:

echo 'smem -c pss -P "$1" -k -t | tail -n 1' > ~/bin/memory-use && chmod +x ~/bin/memory-use

现在我可以很容易地测量任何应用的内存使用:

memory-use firefox
memory-use chrome
memory-use slack

还有更多!

该工具不仅可以显示总的内存使用情况。它甚至可以生成图形输出。

比如:

smem --pie name -c pss

显示类似这样的内容:

Pie chart output from smem

关于更多的细节,我建议查看 smem 手册页

你可以在 https://linoxide.com/memory-usage-reporting-smem/ 上找到另一个很棒的教程。

希望你喜欢!

本文最初发表在作者的博客上,并经许可转载。


via: https://opensource.com/article/21/10/memory-stats-linux-smem

作者:Tomasz Waraksa 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

安凯微获得发明专利授权:“...
证券之星消息,根据天眼查APP数据显示安凯微(688620)新获得...
2026-07-15 23:47:21
本地 AI 真正卷的是 l...
作者 |路飞 来源 | 至顶AI实验室 最近追开源模型,我养成了一...
2026-07-14 22:59:16
“AI内存芯片繁荣正在埋下...
AI内存芯片的繁荣能持续多久? 华尔街日报专栏作家James Ma...
2026-05-17 16:19:06
面壁智能正式发布并开源新一...
5月13日,澎湃新闻记者获悉,面壁智能联合清华大学、OpenBMB...
2026-05-13 23:58:43
历经三年终于出货!高端Li...
快科技5月7日消息,英国Linux硬件初创公司Star Labs ...
2026-05-08 15:07:20
价格翻番,AI带火二手手机
漫画:王建明 深圳商报首席记者 袁静娴 2025年9月以来,市场的...
2026-04-03 08:50:57

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...