linux shell系統運行概況 時間 主機名 os版本 內核版本 運行時間 平均負載 磁盤總量 磁盤百分比 內存大小 內存百分比 cpu溫度報警級別 內存報警級別 CPU報警級別

#!/bin/bash
Time=`date +"%Y-%m-%d__%H:%M:%S"`
HostName=`hostname`
OsType=`cat /etc/issue.net | tr " " "_"`
KernelVersion=`uname -r`
LoadAvg=`cut -d " " -f 1-3 /proc/loadavg`
UpTime=`uptime -p | tr -s " " "_"`
eval `df --total -T -x devtmpfs -x tmpfs -m | tail -n +2 | awk \
    '{printf("DiskTotal=%s;DiskUsedP=%d", $3, $6)}'`

DiskWarningLevel="normal"
if [[ ${DiskUsedP} -gt 90 ]];then
    DiskWarningLevel="warning"
elif [[ ${DiskUsedP} -gt 80 ]];then
    DiskWarningLevel="note"
fi


MemWarningLevel="normal"

eval `free -m | head -n 2 | tail -n 1 | awk \
    '{printf("MemTotal=%s;MemUsed=%s", $2, $3)}'`
MemUsedP=$[ ${MemUsed}*100/${MemTotal} ]

if [[ ${MemUsedP} -gt 80 ]];then
    MemWarningLevel="warning"
elif [[ ${MemUsedP} -gt 70 ]];then
    MemWarningLevel="note"
fi

CpuTemp=`cat /sys/class/thermal/thermal_zone0/temp`
CpuTemp=`echo "scale=2;${CpuTemp}/1000" | bc`

CpuWarningLevel="normal"

if [[ `echo "${CpuTemp} >= 70" | bc -l` -eq 1 ]];then
    CpuWarningLevel="warning"
elif [[ `echo "${CpuTemp} >= 50" | bc -l` -eq 1 ]];then
    CpuWarningLevel="warning"
fi

echo "${Time} ${HostName} ${OsType} ${KernelVersion} ${UpTime} ${LoadAvg} ${DiskTotal} ${DiskUsedP}% ${MemTotal} ${MemUserP}% ${CpuTemp} ${DiskWarningLevel} ${MemWarningLevel} ${CpuWarningLevel}"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章