dmesg
(display message或者driver message)是Linux下用于显示内核启动信息和运行时状态的命令行工具。它可以帮助你监控系统资源,例如CPU、内存、磁盘等的使用情况。以下是如何使用dmesg
监控系统资源的方法:
打开终端。
输入dmesg
命令,然后按回车键。这将显示内核环缓冲区中的所有消息。这些消息包括硬件检测、驱动程序加载、系统事件等信息。
dmesg
若要实时查看dmesg
输出,可以使用watch
命令。例如,每隔2秒刷新一次dmesg
输出:
watch -n 2 dmesg
若要筛选特定关键字,可以使用grep
命令。例如,查找与内存相关的消息:
dmesg | grep -i memory
若要查看特定时间段的dmesg
输出,可以使用-T
选项显示人类可读的时间戳,并结合awk
或sed
等文本处理工具进行筛选。例如,查看过去1小时内的dmesg
输出:
dmesg -T | awk '/[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}/ {print $0; getline} {if (sysdate - mktime($1 " " $2 " " $3 " " $4 " " $5 " " $6 " " $7) > 3600) exit}'
若要持续监控特定资源,可以将上述命令放入一个循环中。例如,每隔5秒检查一次内存使用情况:
while true; do dmesg | grep -i memory; sleep 5; done
请注意,dmesg
主要用于诊断和调试系统问题,而不是实时监控系统资源。对于实时监控系统资源,建议使用其他工具,如top
、htop
、vmstat
、free
等。