小知识:Linux用 smem 命令获取内存使用统计信息

%小知识:Linux用 smem 命令获取内存使用统计信息-猿站网-插图

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

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

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

 %小知识:Linux用 smem 命令获取内存使用统计信息-1猿站网-插图

Memory usage using htop

smem 命令

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

sudo apt install smem

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

smem c pss P firefox k t |tailn 1

这些开关做了什么?

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

输出是非常简单的:

$ smem t k c pss P firefox |tailn 1 4.9G

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

用一个脚本更容易

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

echosmem -c pss -P “$1” -k -t | tail -n 1>~/bin/memoryuse&&chmod+x ~/bin/memoryuse

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

memoryuse firefox memoryuse chrome memoryuse slack 还有更多!

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

比如:

smem pie name c pss

显示类似这样的内容:

%小知识:Linux用 smem 命令获取内存使用统计信息-2猿站网-插图

Pie chart output from smem

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

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

原文链接:https://linux.cn/article-13918-1.html

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:iis+nginx实现负载均衡的详细步骤

2023-4-23 3:05:51

建站知识

小知识:Nginx日志统计分析的常用命令总结

2023-4-23 3:15:24

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索