I wrote a script to give me an overview about my internet-volume-usage.
dependencies: cat, grep, sed, tr, echo, bc, revCode:!/bin/bash # # Usage : $0 Jun # # (c) Stefan Wagner 2004 - feel free to use, update or delete # function usage () { echo Usage : $0 MONTH echo Example : $0 Jun } function msgexit () { echo $1 exit $2 } if [ $# -ne 1 ] ; then usage exit 2 fi # file=/var/log/pppstatus/pppstatus.ppp0.$1-2004.log # [ -f $file ] || msgexit "file not found: $file" 1 bytes=$(cat $file | grep 'RX Bytes:' | sed 's/.*RX Bytes: //g' | sed 's/RX Err.*//g') # echo "by:" $bytes equation=$(echo $bytes | tr ' ' '+' | sed 's/ *+/+/g;s/+$//g') # echo "eq:" $equation echo -n "sum=" zahl=$( echo "$equation" | bc) echo $zahl | rev | sed 's/\([0-9]\{3\}\)/\1./g' | rev | sed 's/^\.//'
problems:
- My account isn't measured by calendarian months, but from 20.x to 19.x+1
- In year 2005, 06, 07 ... you have to update the script.
- It evaluates only the downstream, not upstream
- no errorhandling
- Information isn't valid, if account is used from several computers/ installations.
- For US-Numberformat you have to replace '.' in the last line by ','.
goals: Gives a rough overview about monthly traffic, is easy to adopted for comming years, easy in usage and formats it's output in good readable way (Summe=1.345.367.245).
How it works: The logfile is searched for the 'RX: ....' - pattern, everything around is stripped off.
The numbers are transformed to an equation, which is passed to bc, (the commandline calculator) and the result formatted for better human readability.
Feedback is welcome.

NETGEAR GS308EP Essential Series 8-Port Gigabit PoE+ Unmanaged Switch
$39.99
5Ports Gigabit Network Switch w/ 4 PoE+ Ports Total 52W each port 30W Plug&Play
$31.99
10-Port Gigabit PoE Network Switch with 8 PoE+ Ports with 2 Combo SFP Slots 125W
$39.99
Cisco WS-C3650-12X48UR-L 48-Port Stackable Layer 3 8x10G SFP+ Port Switch
$129.99
TP-Link TL-SG105 5-Port Gigabit Ethernet Unmanaged Metal Desktop Network Switch
$19.99
TP-Link TL-SG105, 5 Port Gigabit Unmanaged Ethernet Switch, Network Hub, Ethern
$15.25
Cisco Catalyst 2960-48TT-L 48-Port Fast Ethernet Managed Rackmount Switch
$46.99
Arista DCS-7010T-48-R 48P 1GbE 4P 10GbE SFP+ RA Switch with rack mounts
$69.00
NETGEAR 5-Port Gigabit Ethernet Unmanaged Switch (Gs305) - Desktop Quiet Fanless
$25.99
TP-Link TL-SG1048 48-Port Gigabit Rackmount Switch New Factory Sealed
$199.99