linux 网络测试脚本,linux下用脚本监测网卡流量

很多情况下查看linux服务器网络当前带宽都需要用到类似vnstat,ifstat,bmon,nload,iftop这些软件来查看,但是比较严谨的管理员都会遵守一个原则,不是需要用到的服务或者软件都不装,使系统最小化,运行状态最佳化.

所以就有了下面这个linux下用脚本监测网卡流量的脚本:

#!/bin/bash

#linux下用脚本监测网卡流量 by:fcbu.com

echo -n "请输入需要查询的网卡的接口:"

read eth

echo "你要查询的网卡接口为"$eth

echo -n "输入需要等到的时间(秒):"

read sec

echo "你计算的是"$sec"秒内的平均流量"

infirst=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://')

outfirst=$(awk '/'$eth'/{print $10 }' /proc/net/dev)

sumfirst=$(($infirst $outfirst))

sleep $sec"s"

inend=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://')

outend=$(awk '/'$eth'/{print $10 }' /proc/net/dev)

sumend=$(($inend $outend))

sum=$(($sumend-$sumfirst))

ksum=$(($sum/8/1024))

echo $sec"秒内总流量为:"$sum"bytes" "=" $ksum"M"

aver=$(($sum/$sec))

kaver=$(($aver/8/1024))

echo "平均流量为:"$aver"bytes/sec" "=" $kaver"M/s"

将上面shell代码保存为netview.sh

然后修改权限 chmod 755 netview.sh

需要查看带宽的时候执行这个脚本就行了,如下:

[root@localhost shellscript]# ./netview.sh

请输入需要查询的网卡的接口:eth0

你要查询的网卡接口为eth0

输入需要等到的时间(秒):10

你计算的是10秒内的平均流量

10秒内总流量为:3543373bytes = 432M

平均流量为:354337bytes/sec = 43M/s

时间是可以随意调整的,这个脚本有两个作用,一个是可以看你定义的时间段内总流量是多少,也可以看这个时间段内的平均流量是多少.

代码很简单,大家可以随意使用或者拿去修改扩充功能.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值