linux系统下/proc/net/dev存储网络设备的统计信息
如上图所示:
第一列: 网卡名
第二列: 对应网卡接收字节数
第九列: 对应网卡发送字节数
通过以上信息,我们就可以计算出网卡的上行与下行的流量情况,代码实现如下:
package main
import (
"fmt"
"io/ioutil"
"strconv"
"strings"
"time"
)
// 分割字符串
func splitStr(s, sep string) []string {
rArr := make([]string, 0, 10)
for {
s = strings.Trim(s, sep)
i := strings.Index(s, sep)
if i == -1 {
if len(s) > 0 {
rArr = append(rArr, s)
}
break
}
left := s[:i]
right := s[i+1:]
right = strings.Trim(right, sep)
s = right
rArr = append(rArr,