Curiosamente, a maneira mais fácil parece estar olhando para /proc/net/dev
. Eu escrevi o seguinte para comparar esse arquivo duas vezes (com um segundo atraso) e, em seguida, subtrair os valores totais de bytes. Nesse caso, em1
é o adaptador de rede, então mude isso para o que você precisa olhar.
awk '/em1/ {i++; rx[i]=; tx[i]=}; END{print rx[2]-rx[1] " " tx[2]-tx[1]}' \
<(cat /proc/net/dev; sleep 1; cat /proc/net/dev)
A saída é dois números. Bytes recebidos por segundo seguidos por bytes enviados por segundo.