监控服务器网卡上传和下载网速的脚本

1. 脚本内容编写如下

#!/bin/bash
#死循环
while :
do
    #获取ens32网卡当前流入和流出的流量
    rx_net1=$(ifconfig ens32 | awk '/RX packets/{print $5}')
    tx_net1=$(ifconfig ens32 | awk '/TX packets/{print $5}')
    sleep 1
    #获取ens32网卡1s后流入和流出的流量
    rx_net2=$(ifconfig ens32 | awk '/RX packets/{print $5}')
    tx_net2=$(ifconfig ens32 | awk '/TX packets/{print $5}')
    #计算ens32网卡每秒流入和流出的流量
    rx_net=$[($rx_net2-$rx_net1)/1024/1024]
    tx_net=$[($tx_net2-$tx_net1)/1024/1024]
    #输出计算结果
    echo "上传速度为:$rx_net MB/S,下载速度为:$tx_net MB/S"
done

注:
TX是发送(transport)的流量,RX是接收(receive)的流量

2. 测试脚本

[root@host-137 ~]#sh packets.sh 
上传速度为:56 MB/S,下载速度为:0 MB/S
上传速度为:59 MB/S,下载速度为:0 MB/S
上传速度为:51 MB/S,下载速度为:0 MB/S
上传速度为:0 MB/S,下载速度为:78 MB/S
上传速度为:0 MB/S,下载速度为:77 MB/S

猜你喜欢

转载自blog.csdn.net/m0_46674735/article/details/112523789
今日推荐