显示内存使用情况、磁盘使用情况和 CPU 负载的命令

Pre*_*rem 17 shell-script

我想按以下格式显示内存使用情况、磁盘使用情况和 CPU 负载:

Memory Usage: 33/512MB (6%)    
Disk usage: 4.2/20GB (23%) 
CPU Load: 0.01
Run Code Online (Sandbox Code Playgroud)

我怎么做?

ter*_*don 41

试试这个,它适用于我的 Debian 系统。详细信息可能因您的操作系统使用的这些工具的实现而异:

#!/bin/sh
free -m | awk 'NR==2{printf "Memory Usage: %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'
df -h | awk '$NF=="/"{printf "Disk Usage: %d/%dGB (%s)\n", $3,$2,$5}'
top -bn1 | grep load | awk '{printf "CPU Load: %.2f\n", $(NF-2)}' 
Run Code Online (Sandbox Code Playgroud)

如果将上述内容另存为脚本并运行它,您将获得(来自我的系统的示例):

$ ./foo.sh 
Memory Usage: 4986/7994MB (62.37%)
Disk Usage: 23/68GB (35%)
CPU Load: 0.78
Run Code Online (Sandbox Code Playgroud)

请注意,上面的脚本给出了/分区的磁盘使用情况。你没有具体说明你想要什么,所以我猜这就是你想要的。

  • 因为这只是你复制的答案。:D (3认同)

use*_*496 5

检查上面

阅读此内容,https://lwn.net/Articles/387202/

看, 在此处输入图片说明

您可以通过应用程序查看磁盘/内存/cpu 的负载:

在此处输入图片说明

例如磁盘使用情况:

在此处输入图片说明

在目录/var/log/atop/中每天以二进制格式文件收集统计信息。您可以阅读手册页,必须有一种方法可以提取有用的信息。


X T*_*ian 2

没有一个命令可以准确地以您的特定格式显示,但以下提供了一些基本值,可以围绕这些值构建脚本,作为替代方案,也可以从 /proc 和 /sys 读取值。

free- 快速概览

vmstat 1显示系统性能 I/O 统计信息

top动态的

htop类似于顶部