#!/bin/bash
function usage
{
echo "use ./test_net.sh ethX time"
echo "$1 is you network interface "
echo "$2 is the last time!"
echo "for example: ./test_net.sh eth0 2"
exit 100
}
if [ $# -lt 2 -o $# -gt 2 ];then
usage
fi
eth=$1
time=$2
old_inbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $3}‘`
old_outbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $11}‘`
while true
do
sleep $time
new_inbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $3}‘`
new_outbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $11}‘`
inbw=`expr $((($new_inbw-$old_inbw)/$time))`
outbw=`expr $((($new_outbw-$old_outbw)/$time))`
echo "$eth: IN:$inbw bytes OUT:$outbw bytes"
old_inbw=${new_inbw}
old_outbw=${new_outbw}
done
exit 0
# ./test_network.sh eth0 2