测试网卡流量shell脚本

#!/bin/bash
function usage
{
        echo "use ./test_net.sh ethX time"
        echo "$1 is you network interface "
        echo "$2 is the last time!"
        echo "for example: ./test_net.sh eth0 2"
        exit 100
}

if [ $# -lt 2 -o $# -gt 2 ];then
        usage
fi

eth=$1
time=$2

old_inbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $3}‘`
old_outbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $11}‘`

while true
do
        sleep $time
        new_inbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $3}‘`
        new_outbw=`cat /proc/net/dev | grep $eth | awk -F‘[: ]+‘ ‘{print $11}‘`
        inbw=`expr $((($new_inbw-$old_inbw)/$time))`
        outbw=`expr $((($new_outbw-$old_outbw)/$time))`
        echo "$eth: IN:$inbw bytes  OUT:$outbw bytes"
        old_inbw=${new_inbw}
        old_outbw=${new_outbw}
done
exit 0

# ./test_network.sh  eth0 2

时间: 2024-10-29 06:40:45

测试网卡流量shell脚本的相关文章

查看Linux服务器网卡流量小脚本shell和Python各一例

有时我们需要较为实时的查看服务器上的网卡流量,这里我写了两个小脚本,一个用shell(先写的,一次只能查看一个网卡),另一个用Python(后写的,一次可查看多个网卡).脚本中都用了while true"死循环",每隔10s从"/proc/net/dev"中取一次值并根据10s内的差值计算10s内的平均带宽:按ctrl+c停止执行.脚本兼容centos6和7 两个脚本都不太复杂,而且脚本中注释也比较细致,所以我就不过多解释脚本内容了.直接上图上脚本: shell版-

查看Linux服务器网卡流量小脚本shell

有时我们需要较为实时的查看服务器上的网卡流量,这里我写了个shell小脚本.脚本中用了while true"死循环",每隔10s从"/proc/net/dev"中取一次值并根据10s内的差值计算10s内的平均带宽:按ctrl+c停止执行.脚本兼容centos6和7,脚本不太复杂,而且脚本中注释也比较细致,所以我就不过多解释脚本内容了. 注:1kb=8字节,1Mb=1024kb #!/bin/sh   if [ "$1" = ""

zabbix自定义网卡流量监控脚本and解决图形字体方块问题

1.  在客户端修改配置文件  /etc/zabbix/zabbix_agentd.conf需要改动两个地方:(1)  UnsafeUserParameters=1(2) UserParameter=my.net.if[*],/usr/local/sbin/zabbix/net.sh $1 $2   //其中UserParameter用来自定义键值,(类似于net.if.in),自己写的脚本往往会有参数,所以需要加[*],这是固定写法,如果脚本压根就没有什么参数,那么这个[*]就省了.逗号后面就

网卡流量监控脚本 ( Shell )

#!/bin/bash # Traffic Monitor # author: Xiao Guaishou get_traffic_info(){ recv=`cat /proc/net/dev | awk -F '[: ]+' '/'"$dev"'/{print $3}'` sent=`cat /proc/net/dev | awk -F '[: ]+' '/'"$dev"'/{print $11}'` } get_traffic_rate(){ In=`echo

shell学习之条件测试(参考shell脚本编程诀窍)

1关于test测试,查看man文档知 表达式的判断 ( EXPRESSION )                    #EXPRESSION is true ! EXPRESSION                      #EXPRESSION is false EXPRESSION1 -a EXPRESSION2        #both are true,-o means or 字符串是否为空,相等 -n STRING  #the length of STRING is nonzero

监控流量shell脚本

# vi /etc/rc.d/traffic_monitor.sh---------------------------------------------- #!/bin/bash PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin; export PATH function traffic_monitor { # 系统版本 OS_NAME=$(sed -n '1p' /etc/issue) # 网口名 eth=$

网卡流量监控脚本

#!/bin/bash while [ "1" ] do eth=$1 RXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $2}') TXpre=$(cat /proc/net/dev | grep $eth | tr : " " | awk '{print $10}') sleep 1 RXnext=$(cat /proc/net/dev | grep $eth | t

网卡流量监控脚本 ( Python )

#!/usr/bin/env python # coding: utf-8 # author: Xiao Guaishou try: import psutil except ImportError: print('Error: psutil module not found!') exit() def get_key(): key_info = psutil.net_io_counters(pernic=True).keys() recv = {} sent = {} for key in k

shell编程之【zabbix自定义监控网卡流量脚本】

之前写了一篇文章主要介绍zabbix的搭建使用http://msiyuetian.blog.51cto.com/8637744/1705396 下面这篇文章主要介绍zabbix自定义监控网卡流量的脚本实现 前期准备 1.说明 server ip :192.168.0.115 client ip :192.168.0.114 2.开启服务 因为之前搭建过zabbix环境,这里就不重复了,直接开启服务端的所需服务: [[email protected] ~]# /etc/init.d/httpd s