Shell

推荐列表 站点导航

当前位置:首页 > 脚本编程 > Shell >

计算网卡流量的shell脚本(代码分享)

来源:网络整理  作者:网友投稿  发布时间:2020-12-27 00:00
本文介绍一段可以计算网卡实时流量的shell脚本,有研究shell编程的朋友,可以作个参考。...

用shell脚本统计网卡的流量。

代码:
 

复制代码 代码示例:

#!/bin/bash
#mysql 启动脚本 
#Author=ftqzy 
#Modified=2013-07-25 
#Version=1.0
#function=通过/proc/net/dev文件记录一段时间内的数值差,求得平均值,分别得到一段内跑的流量和在该时间段内平均每秒跑的速度
#System=CentOS 5.5 64bit
 
echo -n 
"请输入需要查询的网卡的接口:" 
read eth 
 
echo "你要查询的网卡接口为"$eth 
 
echo -n 
"输入需要等到的时间(秒):" 
read sec 
 
echo "你计算的是"$sec"秒内的平均流量" 
 
#第一次读取网卡in与out的值,做为初始值
#In流量初始值:
in_=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://') 
#Out流量初始值:
out_=$(awk '/'$eth'/{print $9 }' /proc/net/dev) 
#第一次网卡流量总和:
sum_=$(($in_ + $out_))
 
#使脚本休息$sec秒,计算$sec秒中产生的流量
sleep $sec"s"
 
#第二次读取网卡in与out的值,使其与第一次读取的初始值相减得到在$sec秒中服务器所跑流量
#In流量:
_in=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://') 
#Out流量:
_out=$(awk '/'$eth'/{print $9 }' /proc/net/dev) 
#In与Out流量总和
_sum=$(($inend+$outend))
#在$sec秒中产生的流量:
sum=$(($_sum - $sum_)) 
 
echo 
$sec"秒内总流量为:"$sum"bytes" 
#求得在$sec秒内,平均每秒所跑流量:
aver=$(($sum/$sec)) 
echo 
"平均流量为:"$aver"bytes/sec" 

相关热词: shell

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://www.juheyunku.com/jiaob/shell/9588.shtml

相关文章
最新文章
PHP生成奖状 PHP生成奖状

时间:2021-01-06

python实现输入五个数并求 python实现输入五个数并求

时间:2021-01-06

php检测网站是否正常打开 php检测网站是否正常打开

时间:2021-01-05

python怎么右对齐 python怎么右对齐

时间:2021-01-05

Python3爬虫入门之Python3的安 Python3爬虫入门之Python3的安

时间:2021-01-05

如何用PHP接收http请求头信 如何用PHP接收http请求头信

时间:2021-01-05

数据库怎么连接用php写的 数据库怎么连接用php写的

时间:2021-01-05

php后缀怎么打开 php后缀怎么打开

时间:2021-01-05

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

计算网卡流量的shell脚本(代码分享)

2020-12-27 编辑:网友投稿

用shell脚本统计网卡的流量。

代码:
 

复制代码 代码示例:

#!/bin/bash
#mysql 启动脚本 
#Author=ftqzy 
#Modified=2013-07-25 
#Version=1.0
#function=通过/proc/net/dev文件记录一段时间内的数值差,求得平均值,分别得到一段内跑的流量和在该时间段内平均每秒跑的速度
#System=CentOS 5.5 64bit
 
echo -n 
"请输入需要查询的网卡的接口:" 
read eth 
 
echo "你要查询的网卡接口为"$eth 
 
echo -n 
"输入需要等到的时间(秒):" 
read sec 
 
echo "你计算的是"$sec"秒内的平均流量" 
 
#第一次读取网卡in与out的值,做为初始值
#In流量初始值:
in_=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://') 
#Out流量初始值:
out_=$(awk '/'$eth'/{print $9 }' /proc/net/dev) 
#第一次网卡流量总和:
sum_=$(($in_ + $out_))
 
#使脚本休息$sec秒,计算$sec秒中产生的流量
sleep $sec"s"
 
#第二次读取网卡in与out的值,使其与第一次读取的初始值相减得到在$sec秒中服务器所跑流量
#In流量:
_in=$(awk '/'$eth'/{print $1 }' /proc/net/dev |sed 's/'$eth'://') 
#Out流量:
_out=$(awk '/'$eth'/{print $9 }' /proc/net/dev) 
#In与Out流量总和
_sum=$(($inend+$outend))
#在$sec秒中产生的流量:
sum=$(($_sum - $sum_)) 
 
echo 
$sec"秒内总流量为:"$sum"bytes" 
#求得在$sec秒内,平均每秒所跑流量:
aver=$(($sum/$sec)) 
echo 
"平均流量为:"$aver"bytes/sec" 

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://www.juheyunku.com/jiaob/shell/9588.shtml

相关文章

风云图片

推荐阅读

返回Shell频道首页