这个脚本可以计算网卡设备eth0的在三秒内的流量,包括发送出去的和收到的流量,单位是bit。
#!/bin/bash
#######################################################################################
#This scripts can calculate your network device eth0's flow.
#Later I will update this scripts to calculate the appointed device by user.
#Version 1.0
#Date 2009-11-1
#written by zhengyu
#If you have some questions, you can contact me by send emails to .
#Thanks for using!
#######################################################################################
time=1
trytime=100
echo -e "TX(bits)\tRX(bits)"
while [ $time -lt $trytime ];do
sleeptime=3
tx_bytes1=`ifconfig eth0 |grep 'RX bytes'|awk '{print $6}'|awk -F ':' '{print $2}'`
rx_bytes1=`ifconfig eth0 |grep 'RX bytes'|awk '{print $2}'|awk -F ':' '{print $2}'`
sleep $sleeptime
tx_bytes2=`ifconfig eth0 |grep 'RX bytes'|awk '{print $6}'|awk -F ':' '{print $2}'`
rx_bytes2=`ifconfig eth0 |grep 'RX bytes'|awk '{print $2}'|awk -F ':' '{print $2}'`
tx_flow=`expr $tx_bytes2 - $tx_bytes1`
rx_flow=`expr $rx_bytes2 - $rx_bytes1`
echo -e $tx_flow"\t\t"$rx_flow
done
运行该脚本的结果大致会如下
TX(B) RX(B) 114 120 39 7 238 224 91 55 52 72 441 442 35 80 388 358 26 65 181 126 15 65 85 70 115 128 10 7 377 367 10 7 199 220 |
在这个脚本中学到几个知识点,包括echo命令的-e这个参数,以前不知道。还有while循环,awk的使用和四则运算。本人是个超级新手,正在学习中!
阅读(1020) | 评论(0) | 转发(0) |