Refactor nettraf
No longer relies on paste(1p).
This commit is contained in:
parent
16874b6716
commit
63aef514d7
1 changed files with 14 additions and 8 deletions
|
@ -10,13 +10,19 @@ case $BLOCK_BUTTON in
|
|||
6) "$TERMINAL" -e "$EDITOR" "$0" ;;
|
||||
esac
|
||||
|
||||
logfile=${XDG_CACHE_HOME:-$HOME/.cache}/netlog
|
||||
[ -f "$logfile" ] || echo "0 0" > "$logfile"
|
||||
read -r rxprev txprev < "$logfile"
|
||||
update() {
|
||||
sum=0
|
||||
for arg; do
|
||||
read -r i < "$arg"
|
||||
sum=$(( "$sum" + "$i" ))
|
||||
done
|
||||
cache=${XDG_CACHE_HOME:-$HOME/.cache}/${1##*/}
|
||||
[ -f "$cache" ] && read -r old < "$cache" || old=0
|
||||
printf %d\\n "$sum" > "$cache"
|
||||
printf %d\\n $(( ("$sum" - "$old") / 1024 ))
|
||||
}
|
||||
|
||||
rxcurrent=$(($(paste -d '+' /sys/class/net/[ew]*/statistics/rx_bytes)))
|
||||
txcurrent=$(($(paste -d '+' /sys/class/net/[ew]*/statistics/tx_bytes)))
|
||||
rx=$(update /sys/class/net/[ew]*/statistics/rx_bytes)
|
||||
tx=$(update /sys/class/net/[ew]*/statistics/tx_bytes)
|
||||
|
||||
printf "🔻%dKiB 🔺%dKiB\\n" "$(((rxcurrent-rxprev)/1024))" "$(((txcurrent-txprev)/1024))"
|
||||
|
||||
echo "$rxcurrent $txcurrent" > "$logfile"
|
||||
printf "🔻%dKiB 🔺%dKiB\\n" "$rx" "$tx"
|
||||
|
|
Loading…
Reference in a new issue