织梦CMS - 轻松建站从此开始!

罗索

用脚本实时显示Linux网络流量

jackyhwei 发布于 2011-08-22 12:47 点击:次 
ifconfig,会有这样的输出: RX bytes:1224128649 (1.1 GiB) TX bytes:34114947 (32.5 MiB)过一会再看,数值有所变化,两者的差值就是过去一段时间的流量。可是,这也太不人性化了……正所谓自己动手,丰衣足食,我们自己来写一个脚本,实时显示并刷新!
TAG:

http://blog.chinaunix.net/u/22677/showart_2115362.html

ifconfig,会有这样的输出: RX bytes:1224128649 (1.1 GiB)  TX bytes:34114947 (32.5 MiB)

过一会再看,数值有所变化,两者的差值就是过去一段时间的流量。可是,这也太不人性化了……

正所谓自己动手,丰衣足食,我们自己来写一个脚本,实时显示并刷新!

脚本如下,还是哪句话,本人功力有限,写脚本的原则是够用就好。

#!/bin/bash

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  "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

运行结果如下:

/Files/allimg/2011/1243311348-0.JPG

(秩名)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201108/14883.html]
本文出处:blog.chinaunix.net/u/22677 作者:秩名
顶一下
(2)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容