我正在做一个学校项目,其中我想获取任意给定秒或其他某个小时间增量的网络接口带宽。我正在编写的 Perl 脚本需要这个。因此它需要是非交互式的并且只打印结果。
有什么建议么?
答案1
eth0
自接口启动以来,发送和接收的字节数可以分别在/sys/class/net/eth0/statistics/tx_bytes
和中读取/sys/class/net/eth0/statistics/rx_bytes
。数据包数可以在…/tx_packets
和中读取…/rx_packets
。如果您的旧内核不提供这些文件,则数据可在 的输出中找到/sbin/ifconfig eth0
。
答案2
一个简单的方法是:
- 执行是否配置
interface name
一次,捕获其输出 - 从“RX 字节”和“TX 字节”中提取值
- 等一下
- 重复前两个步骤
- 计算增量