4.使用shell脚本查看系统资源利用率

#!/bin/bash
function CPU() {
    util=`vmstat |awk '{if(NR==3) print $13+$14}'`
        iowait=`vmstat |awk '{if(NR==3) print $16}'`
        echo "CPU使用率: ${util}% , 等待磁盘IO使用率: ${iowait}%"
}

function MEMORY() {
    total=`free -m |awk '{if(NR==2) printf "%.1f",$2/1024}'`
    used=`free -m |awk '{if(NR==2) printf "%.1f",$2/1024-$NF/1024}'`
    available=`free -m |awk '{if(NR==2) printf "%.1f",$NF/1024}'`
    echo "总内存: ${total}G , 已使用内存:${used}G , 剩余内存: ${available}G "
}

function DISK() {
        FS=$(df -h |awk '/^\/dev/{print $1}')
        for p in $FS; do
            mounted=$(df -h |awk '$1=="'$p'"{print $NF}')
            size=$(df -h |awk '$1=="'$p'"{print $2}')
            used=$(df -h |awk '$1=="'$p'"{print $3}')
            used_percent=$(df -h |awk '$1=="'$p'"{print $5}')
            echo "硬盘挂载点: $mounted , 总大小: $size , 使用: $used , 使用率: $used_percent"
        done    
}

function TCP_STATUS() {
    summary=`ss -antp |awk '{status[$1]++}END{for(i in status) printf i":"status[i]" "}'`
    echo "TCP连接状态: $summary"
}

CPU
MEMORY
DISK
TCP_STATUS

posted @ 2022-11-28 16:15  51-devops  阅读(151)  评论(0)    收藏  举报