是否有一个应用程序可以以类似的方式显示内存使用情况?
我想在我的终端中运行一个运行应用程序,向我显示内存使用情况,类似于top
显示CPU和其他信息, iotop
显示顶级I / O用户。
这样的应用程序是否存在?
PS我知道top也显示内存使用情况,但我说的是按顶级内存使用排序而不显示任何其他信息(类似于iotop
function)。
我能找到的最接近的是memtop
,这是一个可以在Google Code上找到的Python脚本。
截图:
如何使用memtop
- 这是一个Python脚本,所以只需要做一个
sudo mv memtop-1.0.0.py /usr/bin/memtop.py
和一个chmod +x /path/to/memtop.py
来使它可执行 - 默认更新周期为15分钟; 使用开关
-p 1
使其1分钟等(除非你修改源,否则不能低于它) - 使用
-l N
,其中N是您要显示的进程数,具体取决于终端的大小。 - 使用
-m
显示“更多”信息,即屏幕截图底部的交换/页面统计信息。
htop伪装成memtop选项
如果你不使用htop
,那么使用F2-setup选项将其设置为memtop
非常容易:
- htop config存储在
~/.config/htop/htoprc
,所以只需删除htoprc
即可恢复正常的htop 。
我不知道有任何具体的应用程序可以实时监控您的需求,但我确实找到了一些可能有用的信息。
首先是一个打印此信息的简单命令ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS
(在这里找到: http : //www.linuxquestions.org/questions/linux-general-1/how-to-show-the-memory-usage-per-process-160181/ )
第二部分是关于脚本执行相同操作的更多信息:
http://unixlive.editboard.com/t4-memory-usage-retrieval-on-linux-process-wise-and-general
和
http://unixlive.editboard.com/t5-how-much-ram-is-used-per-program
您可以编写自己的脚本/程序以满足您的需求。 您需要的信息全部在/proc/
中实时更新,但您必须解决两个问题:
- 我怀疑是否有任何一个文件实时列出所有进程及其内存使用情况。 相反,每个进程都有自己的文件(在
/proc/[pid]/
),并且用于查找此信息的一些潜在文件不是人类可读的 – 尽管我怀疑statm
和status
具有必要的信息并且都是人类可读的。 - 实时显示所有这些信息。 我对bash脚本或编程知之甚少,但为了实时显示信息,你需要使用像管道一样的
tail
命令来排序/打印每个进程所需的信息。
不是一个完整的答案,但希望这能为您提供一些您可以尝试的想法。 祝好运!
尝试watch memstat -w
或者watch free -m
。
htop很棒。 它相当轻便(与gnome-system-monitor不同。对我而言,系统监控程序通常应该是使用率最高的程序。)
按F6,然后使用箭头键或鼠标切换到MEM%排序。