#!/usr/bin/bash ## @date: 2024-09-09 ## This is a script for security operation indicator monitoring! export LANG="zh_CN.UTF-8" ##当前系统时间 DATE_time=$(date -d "0 day" +%Y年%m月%d日%H时%M分%S秒) ##服务器IP地址 IP_addr=$(ifconfig eth0 | grep inet | grep -v inet6 | awk '{print $2}') ##CPU占用率 CPU=100.0 CPU_free=$(top -b -n 1 | grep Cpu | awk '{print $8}') CPU_used=$(awk 'BEGIN{printf "%.1f%\n",'$CPU' - '$CPU_free'}') sleep 2 ##内存使用率 RAM_total=$(free -m | grep Mem | awk '{print $2}') RAM_used=$(free -m | grep Mem | awk '{print $3}') RAM_percent=$(awk 'BEGIN{printf "%.1f%\n",('$RAM_used'/'$RAM_total')*100}') sleep 2 ##磁盘使用率 Disk_totalSpace=$(df -m | sed '1d;/ /!N;s/\n//;s/ \+/ /;' | awk '{totalSpace+=$2} END{print totalSpace}') Disk_used=$(df -m | sed '1d;/ /!N;s/\n//;s/ \+/ /;' | awk '{used+=$3} END{print used}') Disk_percent=$(awk 'BEGIN{printf "%.1f%\n",('$Disk_used'/'$Disk_totalSpace')*100}') sleep 2 ##带宽使用率 ##执行查看带宽命令,10秒内执行5次,取平均值 i=1 Receive_result=0.000 Transmit_result=0.000 while(($i<=5)) do Receive_before=$(cat /proc/net/dev | grep 'eth' | tr : " " | awk '{print $2}') Transmit_before=$(cat /proc/net/dev | grep 'eth' | tr : " " | awk '{print $10}') sleep 2 Receive_after=$(cat /proc/net/dev | grep 'eth' | tr : " " | awk '{print $2}') Transmit_after=$(cat /proc/net/dev | grep 'eth' | tr : " " | awk '{print $10}') Receive_bandwidth=$(awk 'BEGIN{printf "%.3f\n",('$Receive_after'-'$Receive_before')/1024/1024/2*8}') Transmit_bandwidth=$(awk 'BEGIN{printf "%.3f\n",('$Transmit_after'-'$Transmit_before')/1024/1024/2*8}') Receive_result=$(awk 'BEGIN{printf "%.3f\n",('$Receive_result'+'$Receive_bandwidth')}') Transmit_result=$(awk 'BEGIN{printf "%.3f\n",('$Transmit_result'+'$Transmit_bandwidth')}') let "i++" done Receive_average=$(awk 'BEGIN{printf "%.3fMbps\n",('$Receive_result'/5)}') Transmit_average=$(awk 'BEGIN{printf "%.3fMbps\n",('$Transmit_result'/5)}')
Shell脚本监控Centos 7系统运行状态
不会代码的小徐2024-09-13 17:43
相关推荐
哈基咪怎么可能是AI3 小时前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️十日十行19 小时前
Linux和window共享文件夹木心月转码ing1 天前
WSL+Cpp开发环境配置蝎子莱莱爱打怪2 天前
Centos7中一键安装K8s集群以及Rancher安装记录崔小汤呀2 天前
最全的docker安装笔记,包含CentOS和Ubuntu何中应2 天前
vi编辑器使用何中应2 天前
Linux进程无法被kill何中应2 天前
rm-rf /命令操作介绍何中应2 天前
Linux常用命令葛立国2 天前
从 / 和 /dev 说起:Linux 文件系统与挂载点一文理清