Linux操作系统CPU、Mem、Disk资源便捷查看命令汇总

347 阅读1分钟

本文已参与 ⌈新人创作礼⌋ 活动,一起开启掘金创作之路

Linux操作系统资源监控命令汇总

内存使用率监控

echo "Mem:`free -m | awk 'NR==2{printf "%.2f%%\t\t", $3*100/$2 }'`"

image.png 注:free -m 是用于显示已使用和空闲内存的命令,输出如下;将total与used做运算后可计算去内存使用情况

printf "%.2f%%\t\t"作用是格式化数据显示方式,以%方式显示。

image.png

CPU使用率监控

sar | grep Average | awk '{ printf  "%.2f%%\t\t\n", 100-$NF }'
sar | tail -1 | awk '{ printf  "%.2f%%\t\t\n", 100-$NF }'

注:sar最后一行为包含关键字Average的一行,为系统近期的平均资源使用情况;因此可以利用过滤关键字Average或借助tail命令取出最后一行;再使用awk命令打印出最后一列(%idle),同时与100做差值运算即可计算出CPU近期的使用情况。 image.png

磁盘使用率监控

df -h | grep -Ev 'Filesystem|tmpfs'| awk '{ print $1,$5 }'

image.png

将上述三个命令整合到一起,使用shell脚本执行:

[root@Vm_Centos ~]# cat jk.sh
#!/bin/bash
Cpu=`sar | grep Average | awk '{ printf  "%.2f%%\t\t\n", 100-$NF }'`;
Mem=`free -m | awk 'NR==2{printf "%.2f%%\t\t", $3*100/$2 }'`;
Disk=`df -h | grep -Ev 'Filesystem|tmpfs'| awk '{ print $1,$5 }'`;
#
echo "CPU utilization:      $Cpu";
echo "Memory utilization:   $Mem";
echo "Disk utilization:     $Disk";

[root@Vm_Centos ~]# 

image.png

查看CPU型号和CPU核数量

cat /proc/cpuinfo | grep name | awk -F: '{ print $2 }'

cat /proc/cpuinfo | grep name | awk -F: '{ print $2 }'| uniq -c

注:awk命令以冒号为分隔符,打印出第二列 image.png

通过uniq命令,重复值去重,并统计重复次数。

可以看出,我的主机只有一核,型号为6148,主频2.40GHz

image.png