shell小脚本--网速监控
在windows中,我们可以在360等管家软件中显示网速,在linux下想要查看实时的网速怎么办呢?当然在linux下也有很多优秀的软件可以实时显示网络状况!但是在这里我们使用shell脚本来先完成网络上传与下载流量的实时显示:
思路:
在执行ifconfig查看网卡信息的时候,可以看到以下内容:
$ ifconfig wlp2s0
wlp2s0: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 192.168.0.101 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::a67b:d8cd:4fab:56bb prefixlen scopeid 0x20<link>
ether b8:ee::1f:a0:d7 txqueuelen (以太网)
RX packets bytes (211.8 MB)
RX errors dropped overruns frame
TX packets bytes (13.8 MB)
TX errors dropped overruns carrier collisions
这里有一些字段,字段详细的内容可以百度搜索。在这里我们用到RX与TX字段里的bytes值。
RX:接收的
TX:上传的
版本一:
#!/bin/bash
# version 1 2017-08-14 while true
do
#记录初始bytes数目
down_speed_old=`ifconfig wlp2s0 | sed -n 's/RX.*bytes \([0-9]\+\).*/\1/p'`
up_speed_old=`ifconfig wlp2s0 | sed -n 's/TX.*bytes \([0-9]\+\).*/\1/p'` sleep #保存最新的bytes数目
down_speed_now=`ifconfig wlp2s0 | sed -n 's/RX.*bytes \([0-9]\+\).*/\1/p'`
up_speed_now=`ifconfig wlp2s0 | sed -n 's/TX.*bytes \([0-9]\+\).*/\1/p'` #计算下行与上行的网速
down_speed=`echo "($down_speed_now-$down_speed_old)/1024"|bc`
up_speed=`echo "($up_speed_now-$up_speed_old)/1024"|bc` echo -e "speed : \n\tDN : $[(($down_speed_now-$down_speed_old))] B/s \t $down_speed KB/s"
echo -e "\tUP : $[(($up_speed_now-$up_speed_old))] B/s \t $up_speed KB/s"
done
运行效果:
$ ./netspeed.sh
speed :
DN : B/s KB/s
UP : B/s KB/s
speed :
DN : B/s KB/s
UP : B/s KB/s
speed :
DN : B/s KB/s
UP : B/s KB/s
speed :
DN : B/s KB/s
UP : B/s KB/s
speed :
DN : B/s KB/s
UP : B/s KB/s
speed :
DN : B/s KB/s
UP : B/s KB/s
TODO:
版本二:
shell小脚本--网速监控的更多相关文章
- iOS 直播-网速监控
iOS 直播-网速监控 CXNetworkSpeed.h // // CXNetworkSpeed.h // CXNetworkSpeedDemo // // Created by xubaoaich ...
- 第一个Mac shell 小脚本
大多数程序员都喜欢偷懒的,我也不例外.相信好多Android开发的coder 在网络http请求方面,会浪费很多时间在接口调试这里..有时候,自己写了一个小测试,行还好,不行的话,还要跟写后台的哥们一 ...
- Mac shell 小脚本开发(转)
大多数程序员都喜欢偷懒的,我也不例外.相信好多Android开发的coder 在网络http请求方面,会浪费很多时间在接口调试这里..有时候,自己写了一个小测试,行还好,不行的话,还要跟写后台的哥们一 ...
- 网速监控-nload
用来监控系统网卡实时网速的. 安装 yum install nload -y # 或 apt install nload -y 使用 # 直接运行默认监控第一个网卡, 使用上下方向键来切换网卡. nl ...
- ubuntu 16.04网速监控脚本
#!/bin/bashif [ $# -ne 1 ];thendev="enp2s0"elsedev=$1fi while :doRX1=`/sbin/ifconfig $dev ...
- centos 7网速监控脚本
#!/bin/bashif [ $# -ne 1 ];thendev="eth0"elsedev=$1fi while :doRX1=`/sbin/ifconfig $dev |a ...
- 使用shell+python脚本实现系统监控并发送邮件
1.编辑shell脚本 [root@web03 ~/monitor_scripts]# cat inspect.sh #!/bin/bash # 设置磁盘的阀值 disk_max=90 # 设置监控i ...
- Linux Shell 小脚本经典收藏
原文:http://www.cnblogs.com/Javame/p/3867686.html 1.在两个文件中找出相同的号码 diff -y xx.txt oo.txt | egrep -v &qu ...
- Ubuntu 16.04安装基于nethogs衍生的网络监控软件(应用实时网速监控)
基于nethogs衍生的网络监控软件有如下所列举的: nettop显示数据包类型,按数据包的大小或数量排序. ettercap是以太网的网络嗅探器/拦截器/记录器 darkstat通过主机,协议等方式 ...
随机推荐
- SVN备份及恢复
一,SVN备份 svnadmin dump /data/svn/blzfmima/ > /tmp/full.svn.bak 其中/data/svn/blzfmima/为svn文件夹,导出成一个备 ...
- react-native 学习(二)
上一节讲到了 react-native的开发环境的配置,,这一节我门具体讲讲怎么看样式,怎么调试 看样式的话 有一个 神奇 react-native-developer tools(个人推荐,可选择性 ...
- 适配器模式(Adpater)
一.适配器模式介绍 适配器模式:将一个类的接口转换成客户希望的另外一个接口.Adapter模式使得原本由于接口不兼容而不能一起工作的类可以一起工作. 例如: NBA中的球员来自不同国家,而世界标准语言 ...
- 算法大神之路——排序
从今天开始,给自己立下一个目标,每天晚上写一篇算法与数据结构的博客,用来给自己以后的算法工程师的目标铺路! 今天晚上就以算法里面的排序,作为自己的第一章节吧. 排序,就是讲一组数据,按照特定的规则去调 ...
- mysql5.7.22在centos7.5下的安装
1.下载,解压 把下载的文件放到 /app/programs/目录下 tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz 地址:https://d ...
- java基础07 循环结构
public class While02 { public static void main(String[] args) { /** * while(循环条件){ * 循环体(循环操作) * } * ...
- Cassandra go语言client使用
关于什么是cassandra,可以参考: http://blog.csdn.net/zyz511919766/article/details/38683219 http://cassandra.apa ...
- Jacl 是 TCL 的一个备用实现
Jacl 是 TCL 的一个备用实现,它是完全使用 Java 代码编写的. wsadmin 工具使用 Jacl V1.3.2. 建议不要在 wsadmin 工具中使用 Jacl 语法 建议不要使用一个 ...
- java7(3)——增强的catch之自动释放资源
跟mutilcatch一样,java7提供了自动释放资源的方法,但还是很少看到人使用,估计是麻烦去重写close方法.不过jdk内部一些类已经改成使用增强的catch来释放资源的写法,所以我们有必要了 ...
- webpack无法通过 IP 地址访问 localhost 解决方案
解决方案: 在config里面的index.js里面的module.exports下面的dev下面的host:'localhost' 改为 host:'0.0.0.0',就可以访问啦!