16 lines
383 B
Bash
Executable File
16 lines
383 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 "%5sB %5sB\\n" $(numfmt --to=iec $rx $tx)
|