public
Last active

shell: quick linux scripts for showing network bandwidth or packets-per-second

  • Download Gist
netpps.sh
Shell
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
#!/bin/bash
 
 
if [ -z "$1" ]; then
echo
echo usage: $0 network-interface
echo
echo e.g. $0 eth0
echo
echo shows packets-per-second
exit
fi
 
IF=$1
 
while true
do
R1=`cat /sys/class/net/$1/statistics/rx_packets`
T1=`cat /sys/class/net/$1/statistics/tx_packets`
sleep 1
R2=`cat /sys/class/net/$1/statistics/rx_packets`
T2=`cat /sys/class/net/$1/statistics/tx_packets`
TXPPS=`expr $T2 - $T1`
RXPPS=`expr $R2 - $R1`
echo "tx $1: $TXPPS pkts/s rx $1: $RXPPS pkts/s"
done
netspeed.sh
Shell
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
#!/bin/bash
 
if [ -z "$1" ]; then
echo
echo usage: $0 network-interface
echo
echo e.g. $0 eth0
echo
exit
fi
 
IF=$1
 
while true
do
R1=`cat /sys/class/net/$1/statistics/rx_bytes`
T1=`cat /sys/class/net/$1/statistics/tx_bytes`
sleep 1
R2=`cat /sys/class/net/$1/statistics/rx_bytes`
T2=`cat /sys/class/net/$1/statistics/tx_bytes`
TBPS=`expr $T2 - $T1`
RBPS=`expr $R2 - $R1`
TKBPS=`expr $TBPS / 1024`
RKBPS=`expr $RBPS / 1024`
echo "tx $1: $TKBPS kb/s rx $1: $RKBPS kb/s"
done

example:

# sh netspeed.sh  eth0
tx eth0: 6308 kb/s rx eth0: 98 kb/s
tx eth0: 6921 kb/s rx eth0: 109 kb/s
tx eth0: 6773 kb/s rx eth0: 109 kb/s
tx eth0: 6798 kb/s rx eth0: 109 kb/s
tx eth0: 6731 kb/s rx eth0: 105 kb/s
tx eth0: 6805 kb/s rx eth0: 106 kb/s
tx eth0: 6898 kb/s rx eth0: 109 kb/s
tx eth0: 8655 kb/s rx eth0: 134 kb/s
tx eth0: 9659 kb/s rx eth0: 153 kb/s

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.