go語言獲得linux下網絡卡上行與下行流量

2021-10-04 17:43:53 字數 1127 閱讀 5373

linux系統下/proc/net/dev儲存網路裝置的統計資訊

如上圖所示:

第一列: 網絡卡名

第二列: 對應網絡卡接收位元組數

第九列: 對應網絡卡傳送位元組數

通過以上資訊,我們就可以計算出網絡卡的上行與下行的流量情況,**實現如下:

package main

import (

"fmt"

"io/ioutil"

"strconv"

"strings"

"time"

)// 分割字串

func splitstr(s, sep string) string

break

} left := s[:i]

right := s[i+1:]

right = strings.trim(right, sep)

s = right

} return rarr

}// 獲得所有網絡卡的上行與下行流量

func getbandwith() (map[string]int64, map[string]int64, error)

rmap := make(map[string]int64)

tmap := make(map[string]int64)

linearr := strings.split(string(d), "\n")

for i := 2; i < len(linearr); i++ else

} }return rmap, tmap, nil

}func main()

var recv int64

var send int64

if r, ok := rmap[ethx]; ok

rlast = r

} else

if t, ok := tmap[ethx]; ok

tlast = t

} fmt.println(recv/1024, " ks : ", send/1024, " ks")

}}

linux下網絡卡配置補充

redhat 9.0的網絡卡配置檔案可以位於以下三個位置。etc sysconfig network scripts ifcfg eth0 etc sysconfig networking devices ifcfg eth0 etc sysconfig networking profiles de...

Linux 下網絡卡配置引數

在 linux 下如果想修改網絡卡的引數有很多種方法,第一種方法是修改 etc network inte ces 檔案,這種方法可以在重啟後依然有效 另外一種方法是使用 ifconfig 指令,這種方法只能臨時性的修改網絡卡引數,在重啟後會失效。第一種 修改 inte ces 檔案 inte ces...

Linux環境下網絡卡配置

device eth0 hwaddr 08 00 27 0d 3c f6 type ethernet uuid 73ff4482 1baf 4c9b b859 720ca92a704a onboot yes nm controlled yes bootproto static ipaddr 192....