1
0
Fork 0
dotfiles/.local/bin/statusbar/sb-nettraf

20 lines
437 B
Bash
Executable File

#!/bin/sh
big="\e[11m"
reset="\e[10m"
update() {
sum=0
for arg; do
read -r i <"$arg"
sum=$((sum + i))
done
cache=/tmp/${1##*/}
[ -f "$cache" ] && read -r old <"$cache" || old=0
printf %d\\n "$sum" >"$cache"
printf %d\\n $((sum - old))
}
rx=$(update /sys/class/net/[ew]*/statistics/rx_bytes)
tx=$(update /sys/class/net/[ew]*/statistics/tx_bytes)
printf "$big$reset%5sB $big$reset%5sB\\n" $(numfmt --to=iec "$rx" "$tx")