您的位置:首页 > 运维架构 > Linux

linux查看网卡平均流量的脚本

2014-06-20 18:20 211 查看
#!/bin/bash

#Author: xxxx 2014-6-20

#Example: sh net_IO_kpi.sh



#请输入需要查询的网卡的接口:"

echo -e "Please enter the required query interface card :
\\033[1;32m "

read eth

echo -e "\\033[0m"

#你要查询的网卡接口为$eth

echo -e "You want to query interface card :
\\033[1;32m" $eth

echo -e "\\033[0m"

#输入需要等到的时间(秒):

echo -e "Please enter the need to wait until the time (in seconds) :
\\033[1;32m "

read sec

echo -e "\\033[0m"

#你计算的是"$sec"秒内的平均流量,请等待.

#echo -e "Your calculation is
\\033[1;32m $sec\\033[1;37m seconds_average_flow,Please wait."

echo -e "Your calculation is
\\033[1;32m "$sec"\\033[1;37m seconds_average_flow,\\033[1;31m Please wait."

echo -e "\\033[0m"

infirst=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://')

outfirst=$(awk '/'$eth'/{print $10 }' /proc/net/dev)

sumfirst=$(($infirst+$outfirst))

sleep $sec"s"

inend=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://')

outend=$(awk '/'$eth'/{print $10 }' /proc/net/dev)

sumend=$(($inend+$outend))

sum=$(($sumend-$sumfirst))

#$sec"秒内总流量为:"$sum"bytes"

echo -e "\\033[1;32m $sec
\\033[1;37m seconds_flow :
\\033[1;32m $sum\\033[1;37m bytes"

echo -e "\\033[0m"

aver=$(($sum/$sec))

#"平均流量为:"$aver"bytes/sec"

echo -e "average_flow:
\\033[1;32m "$aver"\\033[1;37m bytes/sec"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: