统计网卡流量的二个shell脚本(ifconfig)(图文)
则这样: 复制代码 代码示例: #sh interface.sh eth1 二, 2,共监测10次, 间隔时间一秒,使用ifconfig及awk、expr等命令。
提供网卡接口为参数,通过awk命令的数据处理, 并将实时网卡数据写入文件/home/toplover/ifconfig_log中,比如要测试eth1网卡接口上的流量,及流量汇总数据,使用ifconfig命令监测网卡eth0的实时流量,均是实时变化的, 复制代码 代码示例: #!/bin/bash #filename interface.sh # 统计网卡流量 if [ -n $1 ]; then eth_name=$1 else eth_name=eth0 fi n=10 #监测10次 date rm -rf /home/toplover/ifconfig_log while (( $n = 0 )) do n=$(($n - 1)); date /home/toplover/ifconfig_log ifconfig $eth_name /home/toplover/ifconfig_log sleep 1 done grep RX bytes: /home/toplover/ifconfig_log | awk -F[:| ] '{print $13}' | awk 'BEGIN{tmp=$1}{if(FNR 1)print $1-tmp}{tmp=$1}' 调用示例,计算网口上注入、流出网卡的流量。
使用ifconfig获取当前网卡的实时流量数据, 脚本内容: 复制代码 代码示例: #!/bin/bash #filename interface2.sh if [ -n $1 ]; then eth_name=$1 else eth_name=eth0 fi i=0 send_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_o recv_n=$recv_o while [ $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 done 调用示例: 输出结果: 说明:注意观察红线标注的数据。
, 脚本内容: 复制代码 代码示例: #!/bin/bash #filename interface.sh # 统计网卡流量 n=10 #监测10次 date rm -rf /home/toplover/ifconfig_log while (( $n = 0 )) do n=$(($n - 1)); date /home/toplover/ifconfig_log ifconfig eth0 /home/toplover/ifconfig_log sleep 1 done grep RX bytes: /home/toplover/ifconfig_log | awk -F[:| ] '{print $13}' | awk 'BEGIN{tmp=$1}{if(FNR 1)print $1-tmp}{tmp=$1}' 代码说明: 1,我们这里循环调用1万次监测数据, 调用示例: 输出结果: 以下是对以上脚本的改进版。
一,也是此脚本的唯一参数,打印出直观的数据, 为了直观的看出流量的实时变化,。
相关热词: shell
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/jiaob/shell/9510.shtml
相关文章
热门TAG
命令 外链 企业网站 白帽 php 织梦教程 dedecms修改内容 javascript 织梦 功能 标签 调用 详解 技巧 权重 服务器 网站流量 Dedecms 织梦cms HTML tags标签 python jquery教程 jquery windows 蜘蛛 搜索引擎 网站收录 JSP 实例解析最新文章
-
PHP生成奖状
时间:2021-01-06
-
python实现输入五个数并求
时间:2021-01-06
-
php检测网站是否正常打开
时间:2021-01-05
-
python怎么右对齐
时间:2021-01-05
-
Python3爬虫入门之Python3的安
时间:2021-01-05
-
如何用PHP接收http请求头信
时间:2021-01-05
-
数据库怎么连接用php写的
时间:2021-01-05
-
php后缀怎么打开
时间:2021-01-05
热门文章
-
解析shell字段分隔符的用法(图文)
时间:2020-12-22
-
Python3爬虫进阶:MongoDB存储(非关系型数
时间:2020-12-29
-
如何在Linux或者UNIX下调试Bash Shell脚本
时间:2020-12-22
-
关于php中匿名函数与回调函数的详解
时间:2020-12-29
-
php文档怎么打开
时间:2020-12-29
-
php检测网站是否正常打开
时间:2021-01-05
-
PHP PHP_EOL 换行符
时间:2020-12-29
-
python实现输入五个数并求平均值
时间:2021-01-06
-
浅谈Linux Shell的管道与重定向
时间:2020-12-23
-
如何检测Django是否安装成功
时间:2020-12-29
