zoukankan      html  css  js  c++  java
  • shell小脚本--网速监控

      在windows中,我们可以在360等管家软件中显示网速,在linux下想要查看实时的网速怎么办呢?当然在linux下也有很多优秀的软件可以实时显示网络状况!但是在这里我们使用shell脚本来先完成网络上传与下载流量的实时显示:

      思路:  

        在执行ifconfig查看网卡信息的时候,可以看到以下内容:

    $ ifconfig  wlp2s0 
    wlp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.0.101  netmask 255.255.255.0  broadcast 192.168.0.255
            inet6 fe80::a67b:d8cd:4fab:56bb  prefixlen 64  scopeid 0x20<link>
            ether b8:ee:65:1f:a0:d7  txqueuelen 1000  (以太网)
            RX packets 172968  bytes 211898232 (211.8 MB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 125730  bytes 13891021 (13.8 MB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        这里有一些字段,字段详细的内容 可以百度搜索。在这里我们用到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 1 #保存最新的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 : DN : $[(($down_speed_now-$down_speed_old))] B/s $down_speed KB/s" echo -e " UP : $[(($up_speed_now-$up_speed_old))] B/s $up_speed KB/s" done

      运行效果:

    $ ./netspeed.sh 
    speed : 
        DN : 81894 B/s      79 KB/s
        UP : 13425 B/s      13 KB/s
    speed : 
        DN : 2209563 B/s      2157 KB/s
        UP : 184518 B/s      180 KB/s
    speed : 
        DN : 580299 B/s      566 KB/s
        UP : 49619 B/s      48 KB/s
    speed : 
        DN : 472 B/s      0 KB/s
        UP : 164 B/s      0 KB/s
    speed : 
        DN : 432 B/s      0 KB/s
        UP : 594 B/s      0 KB/s
    speed : 
        DN : 162 B/s      0 KB/s
        UP : 328 B/s      0 KB/s

    TODO:


    版本二:

      

  • 相关阅读:
    IDEA在debug时修改变量值
    CSS覆盖公共样式中的某个属性
    POI获取单元格的宽和高
    MySQL将一张表的某些列数据,复制到另外一张表,并且修改某些内容
    哈希是什么?为什么哈希存取比较快?
    工厂模式
    观察者模式
    instanceof判断的对象可以是接口
    JeeSite框架中httpSession.invalidate();无效
    HSQL可视化工具
  • 原文地址:https://www.cnblogs.com/zhuandshao/p/7360634.html
Copyright © 2011-2022 走看看