免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1827 | 回复: 0
打印 上一主题 下一主题

用脚本实时显示Linux网络流量 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-09 14:57 |只看该作者 |倒序浏览
ifconfig,会有这样的输出:
          RX bytes:1224128649 (1.1 GiB)  TX bytes:34114947 (32.5 MiB)
过一会再看,数值有所变化,两者的差值就是过去一段时间的流量。可是,这也太不人性化了……
正所谓自己动手,丰衣足食,我们自己来写一个脚本,实时显示并刷新!
脚本如下,还是哪句话,本人功力有限,写脚本的原则是够用就好。
#!/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  "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
该脚本(假设名叫traffic)默认显示eth0的流量,如果你有多个网卡,请将网卡作为参数传进去,比如:
./traffic  eth1
运行结果如下:
file:///C:/DOCUME%7E1/hrw/LOCALS%7E1/Temp/moz-screenshot-2.png

file:///C:/DOCUME%7E1/hrw/LOCALS%7E1/Temp/moz-screenshot.png
file:///C:/DOCUME%7E1/hrw/LOCALS%7E1/Temp/moz-screenshot-1.png


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/22677/showart_2115362.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP