监控CPU内存和硬盘利用率的shell脚本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了监控CPU内存和硬盘利用率的shell脚本相关的知识,希望对你有一定的参考价值。

#!/bin/bash

#createdate:2016-11-15

Date=`date+%F" "%H:%M`

IP=`ifconfigeth0 | awk ‘/inet addr/ {print $2}‘ | cut -d: -f2

`

echo -e"\033[032mDate : $Date \nHost : $IP \n\033[0m"

 

echo-----------------CPU----------------

cpu_us=`vmstat|awk ‘{print $13}‘ |sed -n ‘$p‘`

cpu_sy=`vmstat|awk ‘{print $14}‘ |sed -n ‘$p‘`

cpu_id=`vmstat|awk ‘{print $15}‘ |sed -n ‘$p‘`

cpu_wa=`vmstat|awk ‘{print $16}‘ |sed -n ‘$p‘`

cpu_sum=$(($cpu_us+$cpu_sy))

cpu_info()

{

 echo -e "\033[032mCPU_Sum:$cpu_sum%(CPU_Use:${cpu_us}%,CPU_System:${cpu_sy}%)\033[0m"

 echo -e "\033[032mCPU_Idle:${cpu_id}\033[0m"

 echo -e"\033[032mCPU_Wait:${cpu_wa}\033[0m"

 

}

cpu_info;

if [ $cpu_sum-ge 90 ];then

   echo "CPU utilization$cpu_sum"|mail -s "CPU Monitor"xxxxx.com

fi

 

echo-----------------Mem-----------------

#Date=`date+%F" "%H:%M`

#IP=`ifconfigeth0 | awk ‘/inet addr/ {print $2}‘ | cut -d: -f2`

Total=`free -m |grep Mem | awk ‘{print $2}‘`

Use=`free -m|awk ‘/buffers\//{print $NF}‘`

Free=$(($Total-$Use))

#Total_cony=`echo-e | awk ‘{print $1}‘`

echo -e"\033[032mTotal : ${Total}M \nUse : ${Use}M \nFree : ${Free}M\033[0m"

 

echo-----------------IO------------------

Total=`fdisk -l| grep "Disk /dev/sd[a-z]" |awk ‘{print $1$2$3"GB"}‘`

Disk_Use=`df -h|awk ‘{print $1"="$5}‘ | sed ‘1d‘ | sed ‘s/%/%/g‘`

echo -e"\033[032mTotal : $Total\n$Disk_Use\n\033[0m"

效果图:

技术分享

有不足之处请提出,谢谢

本文出自 “通通的技术博客” 博客,转载请与作者联系!

以上是关于监控CPU内存和硬盘利用率的shell脚本的主要内容,如果未能解决你的问题,请参考以下文章

监控CPU内存和硬盘利用率的shell脚本

linux服务器性能(网卡流量CPU内存磁盘使用率)监控

Linux shell 脚本监控cpu,内存,硬盘,网络,是否存活

利用shell脚本监控linux中CPU利用率。

使用Shell写一个脚本,CPU使用率超过80%或硬盘超过85%邮件报警

利用shell脚本来监控linux系统的负载与CPU和内存使用情况