statusbar-scripts/sb-net
2023-08-23 19:45:38 +02:00

19 lines
424 B
Bash
Executable File

#!/bin/sh
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 "%4sB ↕ %4sB\\n" $(numfmt --to=iec $rx $tx)