千家信息网

如何使用shell统计网卡流量

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,小编给大家分享一下如何使用shell统计网卡流量,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用shell脚本计算Lin
千家信息网最后更新 2025年02月03日如何使用shell统计网卡流量

小编给大家分享一下如何使用shell统计网卡流量,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

使用shell脚本计算Linux网卡流量,方法中最关键点:

代码如下:


ifconfig $eth_name | grep bytes | awk '{print $6}' | awk -F : '{print $2}'



通过ifconfig eth0|grep bytes 得到输入输出的流量。

代码如下:


/@rac2=>dd2$ifconfig eth0|grep bytes
RX bytes:1638005313300 (1.4 TiB) TX bytes:3408060482049 (3.0 TiB)



再将结果通过awk 得出所要的字段值。
固定时间得到这些值,在写个循环计算一下就能得到网卡流量。
完整代码:

代码一:

#!/bin/bash# 统计网卡流量# link:www.yisu.com# date:2013/2/26n=10 daterm -rf /tmp/ifconfig_logwhile (( $n >= 0 ))do n=$(($n - 1)); date >> /tmp/ifconfig_log ifconfig eth2 >> /tmp/ifconfig_log sleep 1done grep "RX bytes:" /tmp/ifconfig_log | awk -F"[:| ]" '{print $13}' | awk 'BEGIN{tmp=$1}{if(FNR > 1)print $1-tmp}{tmp=$1}'

代码二:

#!/bin/bashif [ -n "$1" ]; then eth_name=$1else eth_name="eth0"fii=0send_o=`ifconfig $eth_name | grep bytes | awk '{print $6}' | awk -F : '{print $2}'`recv_o=`ifconfig $eth_name | grep bytes | awk '{print $2}' | awk -F : '{print $2}'`send_n=$send_orecv_n=$recv_owhile [ $i -le 100000 ]; do send_l=$send_n recv_l=$recv_n sleep 1 send_n=`ifconfig $eth_name | grep bytes | awk '{print $6}' | awk -F : '{print $2}'` recv_n=`ifconfig $eth_name | grep bytes | awk '{print $2}' | awk -F : '{print $2}'` i=`expr $i + 1` send_r=`expr $send_n - $send_l` recv_r=`expr $recv_n - $recv_l` total_r=`expr $send_r + $recv_r` send_ra=`expr \( $send_n - $send_o \) / $i` recv_ra=`expr \( $recv_n - $recv_o \) / $i` total_ra=`expr $send_ra + $recv_ra` sendn=`ifconfig $eth_name | grep bytes | awk -F \( '{print $3}' | awk -F \) '{print $1}'` recvn=`ifconfig $eth_name | grep bytes | awk -F \( '{print $2}' | awk -F \) '{print $1}'` clear echo "=================================================="  echo "Last second :  Send rate: $send_r Bytes/sec Recv rate: $recv_r Bytes/sec Total rate: $total_r Bytes/sec" echo "Average value:  Send rate: $send_ra Bytes/sec Recv rate: $recv_ra Bytes/sec Total rate: $total_ra Bytes/sec" echo "Total traffic after startup:  Send traffic: $sendn Recv traffic: $recvn" echo "=================================================="done

代码三:

#!/bin/bash  # Link: www.51bbo.com  ###  while :  do    Time=`date +%F" "%T.%N`    rx_before=`ifconfig eth0 |sed -n 8p |awk '{print $2}'| cut -c7-`    tx_before=`ifconfig eth0 |sed -n 8p |awk '{print $6}'| cut -c7-`    sleep 2    rx_after=`ifconfig eth0 |sed -n 8p |awk '{print $2}'| cut -c7-`    tx_after=`ifconfig eth0 |sed -n 8p |awk '{print $6}'| cut -c7-`     rx_result=$[(rx_after - rx_before)/512]    tx_result=$[(tx_after - tx_before)/512]    echo -e "$Time nNow_In_Speed: '$rx_result'Kbps Now_OUt_Speed: '$tx_result'Kbpsn"  done

以上是"如何使用shell统计网卡流量"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

流量 代码 网卡 统计 篇文章 内容 不怎么 关键 关键点 大部分 字段 方法 时间 更多 知识 结果 脚本 行业 资讯 资讯频道 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 幼儿园画一幅关于网络安全的画 模拟人生连接不上服务器 怎么连接逍遥魔兽数据库 学校网络安全知识竞赛推广语 湖北人工智能软件开发哪家可靠 移动研究院软件开发面试 打开数据库提示错误 网络安全五先锋股票 建筑服务器有什么好处 电商会员系统数据库设计 服务器远控安全吗 数据库发布 互联网板块属于科技股吗 saber会话服务器无法启用 深圳云展天下网络技术有限公司 小白手机续航数据库2021 中国联通网络安全清风队 中班网络安全教育ppt 服务好的app软件开发 2021中国高校网络技术大赛 服务器为什么有4个网 学网络技术的中职的工资是多少 异业联盟会员软件开发定制 什么是标准文本数据库 saber会话服务器无法启用 为啥打开58显示服务器异常 软件开发工程师表扬信范文 传智播客企业级软件开发作业一 中专学计算机网络技术好不好 南开分局网络安全保卫支队
0