top 命令相关技巧
监控指定进程
按照名称监控进程,如果 pgrep
命令支持 -d
分隔符参数,可以:
~# top -p `pgrep -d "," java`
如果不支持,也可以使用 pidof
命令:
~# top -p `pidof java | sed 's/ /,/g'`
增加显示的项目
top 运行之后,可以按 f
键定制需要显示的项目。
例如如果想增加显示进程当前所在的 CPU 核,可以再按 j
键,项目列表就会显示:
* J: P = Last used cpu (SMP)
然后回车,top 的输出中就包含列名为 P
的项目,显示每个进程最后使用的 CPU 核。
排序
top 运行之后,可以按键切换排序:
- 按照 CPU 占用排序:
P
; - 按照内存占用排序:
M
; z
键显示颜色,x
键高亮显示排序列。
terminal is not big enough
问题
如果系统 CPU 核数太多,显示所有核 CPU 占用会报 terminal is not big enough
错误。
此时可以使用 mpstat
或 sar
命令,以下都是每 5 秒刷新:
mpstat -P ALL 5
sar -P ALL 5