Linux檢視網路流量的指令碼

wuyuanyong發表於2010-06-29

# cat stream

#! /bin/bash

# Write by Neil.xu qq:37391319 email:

# 2008-8-19 we need to monitor streams of LTS channels, so write this script


typeset in in_old dif_in dif_in1 dif_out1
typeset out out_old dif_out

in_old=$(cat /proc/net/dev | grep eth0 | sed 's=^.*:==' | awk '{ print $1 }' )
out_old=$(cat /proc/net/dev | grep eth0 | sed 's=^.*:==' | awk '{ print $9 }')

while true
do
sleep 1
in=$(cat /proc/net/dev | grep eth0 | sed 's=^.*:==' | awk '{ print $1 }')
out=$(cat /proc/net/dev | grep eth0 | sed 's=^.*:==' | awk '{ print $9 }')
dif_in=$((in-in_old))
dif_in1=$((dif_in * 8 / 1024 / 1024 ))
dif_out=$((out-out_old))
echo " IN: ${dif_in} bytes OUT: ${dif_out} bytes "
dif_out1=$((dif_out * 8 / 1024 / 1024 ))
echo "IN: ${dif_in1} mbps OUT: ${dif_out1} mbps"
in_old=${in}
out_old=${out}
done


執行效果:
# ./stream
IN: 349179 bytes OUT: 1363936 bytes
IN: 2 mbps OUT: 10 mbps
IN: 349612 bytes OUT: 1361852 bytes
IN: 2 mbps OUT: 10 mbps
IN: 348684 bytes OUT: 1358952 bytes
IN: 2 mbps OUT: 10 mbps
IN: 349998 bytes OUT: 1359092 bytes
IN: 2 mbps OUT: 10 mbps

本文出自:

或者直接使用以下命令查詢:

cat /proc/net/dev

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13879334/viewspace-1034750/,如需轉載,請註明出處,否則將追究法律責任。

相關文章