#!/bin/sh
usage(){
echo “Usage: $0 [-i INTERFACE] [-s INTERVAL] [-c COUNT]”
echo
echo “-i INTERFACE”
echo “ The interface to monitor, default is eth0.”
echo “-s INTERVAL”
echo “ The time to wait in seconds between measurements, default is 3 seconds.”
echo “-c COUNT”
echo “ The number of times to measure, default is 10 times.”
exit 3
}
readargs(){
while [ "$#" -gt 0 ] ; do
case “$1″ in
-i)
if [ "$2" ] ; then
interface=”$2″
shift ; shift
else
echo “Missing a value for $1.”
echo
shift
usage
fi
;;
-s)
if [ "$2" ] ; then
sleep=”$2″
shift ; shift
else
echo “Missing a value for $1.”
echo
shift
usage
fi
;;
-c)
if [ "$2" ] ; then
counter=”$2″
shift ; shift
else
echo “Missing a value for $1.”
echo
shift
usage
fi
;;
*)
echo “Unknown option $1.”
echo
shift
usage
;;
esac
done
}
checkargs(){
if [ ! "$interface" ] ; then
interface=”eth0″
fi
if [ ! "$sleep" ] ; then
sleep=”3″
fi
if [ ! "$counter" ] ; then
counter=”10″
fi
}
printrxbytes(){
/sbin/ifconfig “$interface” | grep “RX bytes” | cut -d: -f2 | awk ‘{ print $1 }'
}
printtxbytes(){
/sbin/ifconfig “$interface” | grep “TX bytes” | cut -d: -f3 | awk ‘{ print $1 }'
}
bytestohumanreadable(){
multiplier=”0″
number=”$1″
while [ "$number" -ge 1024 ] ; do
multiplier=$(($multiplier+1))
number=$(($number/1024))
done
case “$multiplier” in
1)
echo “$number Kb”
;;
2)
echo “$number Mb”
;;
3)
echo “$number Gb”
;;
4)
echo “$number Tb”
;;
*)
echo “$1 b”
;;
esac
}
printresults(){
while [ "$counter" -ge 0 ] ; do
counter=$(($counter
主站蜘蛛池模板:
天祝|
襄樊市|
财经|
彰化市|
石林|
宁德市|
察雅县|
巨鹿县|
惠安县|
阜阳市|
宝山区|
敦煌市|
乐昌市|
正阳县|
天津市|
顺昌县|
塘沽区|
南京市|
通城县|
济宁市|
旺苍县|
南投市|
疏附县|
汾西县|
方山县|
临漳县|
广平县|
佛冈县|
大连市|
白朗县|
资兴市|
安福县|
乌兰浩特市|
望都县|
大兴区|
鹿邑县|
阳朔县|
田东县|
芜湖县|
潜山县|
象山县|