Skip to content

Instantly share code, notes, and snippets.

@joemiller
Last active January 12, 2024 15:39
Show Gist options
  • Star 77 You must be signed in to star a gist
  • Fork 45 You must be signed in to fork a gist
  • Save joemiller/4069513 to your computer and use it in GitHub Desktop.
Save joemiller/4069513 to your computer and use it in GitHub Desktop.
shell: quick linux scripts for showing network bandwidth or packets-per-second
#!/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
#!/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
@mmslavin
Copy link

Thanks you Joe Miller! Been struggling for a way to do this, and all my solutions were very convoluted. Your scripts gave me the clues I needed to pull what I needed in a simple fashion. Very much appreciated!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment