You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu中top命令如何以MB格式(人类可读)显示?解决-M选项报错

在Ubuntu中让top输出人类可读格式(MB单位)

嘿,这问题我太熟了!先给你解释下为啥top -M会报错——Ubuntu默认用的procps-ng版本的top根本没有-M这个参数,这个参数是RHEL/CentOS这类发行版里的top才有的,所以你操作没毛病,只是参数不兼容而已。

下面给你两种靠谱的解决思路,一种是用top自身的功能搞定,另一种是用更友好的替代工具:

方法1:用top自带的功能设置MB单位

top本身就支持调整内存显示单位,分临时调整和永久生效两种方式:

临时交互式调整(实时生效)

当top正在运行的时候,直接按这两个按键就行:

  • 按大写的E:切换顶部系统总内存(Mem、Swap行)的显示单位,循环切换KB→MB→GB→TB,选到MB就停
  • 按小写的e:切换每个进程的内存(RES、VIRT这些列)的显示单位,同样能切到MB

要是想让每次启动top都默认用MB显示,也很简单:

  1. 先启动top,按上面的按键把单位调到MB
  2. 按大写的W,top会自动把当前配置保存到~/.toprc文件里,之后再开top就自动用MB显示了

命令行直接启动(一次性生效)

如果你想直接用命令行启动top就显示MB单位,可以用-E参数指定单位:

top -E m

这里的m代表MB,你也可以换成k(KB)、g(GB)这些,按需调整。

方法2:用更友好的替代工具htop

要是觉得top的操作有点麻烦,强烈推荐试试htop——它是top的增强版,默认就以人类可读的格式显示内存(自动根据大小选KB/MB/GB),界面也比top直观太多,还支持鼠标操作。

先安装它:

sudo apt update && sudo apt install htop

直接运行htop就能看到清晰的内存使用情况,完全不用手动调单位,爽得很~

另外,如果你需要一次性输出类似du -h的静态格式(不是交互式的),也可以用ps命令配合awk来实现:

ps aux --sort=-%mem | awk '{printf "%s %.2fMB\n", $0, $6/1024}'

这个命令会按内存使用率从高到低排序进程,还把内存(原本是KB)转换成MB显示,保留两位小数,看着更清楚。

内容的提问来源于stack exchange,提问作者Ștefan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:23:35