https://serverfault.com/questions/533513/how-to-get-tx-rx-bytes-without-ifconfig
 1 2 3 4 5 6 7
   | cat /proc/net/dev
      Inter-|   Receive                                                |  Transmit      face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
      lo:    29846937   129576     0    0    0     0          0       0 29846937   129576     0    0    0     0       0          0  wlan0:    9467393340 8027251    0    0    0     0          0       0 2559312961 5896509    0    0    0     0       0          0
 
  | 
   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
   | 
 
  ethn=$1
  RX_pre=$(cat /sys/class/net/$ethn/statistics/rx_bytes) TX_pre=$(cat /sys/class/net/$ethn/statistics/tx_bytes)
  while true; do
      sleep 1     RX_next=$(cat /sys/class/net/$ethn/statistics/rx_bytes)     TX_next=$(cat /sys/class/net/$ethn/statistics/tx_bytes)
           
      RX_delta=$((${RX_next} - ${RX_pre}))     TX_delta=$((${TX_next} - ${TX_pre}))
      RX_pre=$RX_next     TX_pre=$TX_next
      if [[ $RX_delta -lt 1024 ]]; then         RX_delta="${RX_delta} B/s"     elif [[ $RX_delta -lt 1048576 ]]; then         RX_delta=$(echo $RX_delta | awk '{printf "%.2f KB/s", $1/1024}')     else         RX_delta=$(echo $RX_delta | awk '{printf "%.2f MB/s", $1/1048576}')     fi
      if [[ $TX_delta -lt 1024 ]]; then         TX_delta="${TX_delta} B/s"     elif [[ $TX_delta -lt 1048576 ]]; then         TX_delta=$(echo $TX_delta | awk '{printf "%.2f KB/s", $1/1024}')     else         TX_delta=$(echo $TX_delta | awk '{printf "%.2f MB/s", $1/1048576}')     fi
      if [[ $RX_next -lt 1024 ]]; then         RX_total="${RX_next} B"     elif [[ $RX_next -lt 1048576 ]]; then         RX_total=$(echo $RX_next | awk '{print $1/1024 " KB"}')     elif [[ $RX_next -lt 1073741824 ]]; then         RX_total=$(echo $RX_next | awk '{print $1/1048576 " MB"}')     else         RX_total=$(echo $RX_next | awk '{print $1/1073741824 " GB"}')     fi
      if [[ $TX_next -lt 1024 ]]; then         TX_total="${TX_next} B/s"     elif [[ $TX_next -lt 1048576 ]]; then         TX_total=$(echo $TX_next | awk '{print $1/1024 " KB"}')     elif [[ $TX_next -lt 1073741824 ]]; then         TX_total=$(echo $TX_next | awk '{print $1/1048576 " MB"}')     else         TX_total=$(echo $TX_next | awk '{print $1/1073741824 " GB"}')     fi
           printf "\033[2K\t$ethn 接收:%11s %14s \t\t 发送:%11s %14s\r" "$RX_total" "$RX_delta" "$TX_total" "$TX_delta"
  done
 
 
  |