awk的日常使用-创建简单脚本完成日常系统监控

#!/bin/bash

## 磁盘使用情况,使用gsub替换百分比中的百分号
df_use=`df | awk '{if($6=="/") {gsub(/%/,"",$5);print $5}}'`
## 内存占用 -t 汇总 %.nf 代表小数保留n位
mem_use=`free -t | grep "Mem" | awk '{printf("%.1f",($3/$2)*100)}'`
## 获取CPU核心数
core_num=`cat /proc/cpuinfo | grep 'processor' | wc -l`
## 负载情况-单个核心一分钟内的负载情况(此处的$1代表的是一分钟内的负载)
load_avg=`cat /proc/loadavg | awk '{printf("%.2f",$1/'$core_num')}'`


if [[ $df_use < 85 ]];then
    echo Disk-Root $df_use% OK
else
    echo Disk-Root $df_use% Alert

fi

if [[ $mem_use < 90 ]];then
    echo Memory $mem_use% OK
else
    echo Memory $mem_use% Alert
fi

if [[ $load_avg < 0.7 ]];then
    echo Loadaverage $load_avg OK
else
    echo Loadaverage $load_avg Alert
fi

你可能感兴趣的:(linux,系统运维,shell)