免费注册 查看新帖 |

Chinaunix

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

Linux下查看网卡流量的工具 [复制链接]

论坛徽章:
3
数据库技术版块每日发帖之星
日期:2015-06-18 22:20:00数据库技术版块每日发帖之星
日期:2015-06-21 22:20:00数据库技术版块每日发帖之星
日期:2015-08-27 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-02-09 20:12 |只看该作者 |倒序浏览

工具运行效果如下:
#iftop eth0 1 3
    ifname       in_bytes/s      out_bytes/s    total_bytes/s
      eth0              446              418              864
      eth0               70              182              252
      eth0               70              182              252

脚本内容如下:
#!/bin/bash
# osdba 2008.11.09 monitor the interface's network traffic.
#
chengdata@gmail.com
if [ $# -ne 3 ];then
   echo example: ntop eth0 1
10
   exit
fi
eth=$1
count=$3
interval=$2
infirst=$(cat /proc/net/dev |tr ':' ' '|awk  '/'$eth'/{print $2}')
if
[ -z "$infirst" ];then
    echo The network interface $eth is
not exits!
    exit 1;
fi
outfirst=$(cat /proc/net/dev |tr ':' ' '|awk  '/'$eth'/{print
$10}')
echo "ifname" "in_bytes/s" "out_bytes/s" "total_bytes/s" |awk
'{printf("%10s %16s %16s %16s\n",$1,$2,$3,$4)}'
sleep
$interval"s"
i=0
while [ "$i" -lt "$count" ]
do
   
inend=$(cat /proc/net/dev |tr ':' ' '|awk  '/'$eth'/{print
$2}')
   outend=$(cat /proc/net/dev |tr ':' ' '|awk  
'/'$eth'/{print $10}')
   
sumin=$((($inend-$infirst)/$interval))
   
sumout=$((($outend-$outfirst)/$interval))
   
sum=$(($sumin+$sumout))
   echo $eth $sumin $sumout $sum |awk '{printf("%10s %16s %16s
%16s\n",$1,$2,$3,$4)}'
   infirst=$inend
   outfirst=$outend
   i=$(($i+1))
   
sleep $interval"s"
done

脚本下载:

文件:
iftop.rar
大小:
0KB
下载:
下载


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

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP