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

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

注:1kb=8字节,1Mb=1024kb

#!/bin/sh
 
if [ "$1" = "" ];then    #判断后面是否有跟参数
    echo -e "\n      use interface_name after the script,like \"script eth0\"...\n"
    exit -1
fi
 
echo -e "\n      start monitoring the $1,press \"ctrl+c\" to stop"
echo ----------------------------------------------------------
 
file=/proc/net/dev    #内核网卡信息文件
while true
    do
    RX_bytes=`cat $file|grep $1|sed ‘s/^ *//g‘|awk -F‘[ :]+‘ ‘{print $2}‘`    #这里sed这一步为了同时兼容centos6和7
    TX_bytes=`cat $file|grep $1|sed ‘s/^ *//g‘|awk -F‘[ :]+‘ ‘{print $10}‘`
    sleep 10
    RX_bytes_later=`cat $file|grep $1|sed ‘s/^ *//g‘|awk -F‘[ :]+‘ ‘{print $2}‘`
    TX_bytes_later=`cat $file|grep $1|sed ‘s/^ *//g‘|awk -F‘[ :]+‘ ‘{print $10}‘`
 
    #B*8/1024/1024=Mb
    speed_RX=`echo "scale=2;($RX_bytes_later - $RX_bytes)*8/1024/1024/10"|bc`
    speed_TX=`echo "scale=2;($TX_bytes_later - $TX_bytes)*8/1024/1024/10"|bc`
 
    printf "%-3s %-3.1f %-10s %-4s %-3.1f %-4s\n" IN: $speed_RX Mb/s OUT: $speed_TX Mb/s
done
时间: 2024-12-30 13:53:19

查看Linux服务器网卡流量小脚本shell的相关文章

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

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

iftop 监控linux服务器网卡流量

(1)源码编译安装iftop 安装iftop必需的软件库: [[email protected] ~]#yum install  libpcap libpcap-devel ncurses ncurses-devel [[email protected] ~]#yum install  flex byacc 下载iftop,编译安装: [[email protected] ~]#wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17

网卡流量监控脚本 ( 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

查看linux server网络流量的shell脚本

之前写过一个查看linux服务器当前流量的小脚本,很简单,但能直观的给我们一些信息 #!/bin/sh ###统计10s内的平均流量,以Mb为单位 if [ "$1" = "" ];then    echo -e "\n      use interface_name after the script,like \"$0 eth0\"...\n"    exit -1 fi echo -e "\n      star

通过Nethogs查看服务器网卡流量情况

在日常运维工作中,会碰到服务器带宽飙升致使网站异常情况.作为运维人员,我们要能非常清楚地了解到服务器网卡的流量情况,观察到网卡的流量是由哪些程序在占用着. 今天介绍一款linux下查看服务器网卡流量占用情况的工具:Nethogs,来自github上的开源工具.它不依赖内核中的模块.当我们的服务器网络异常时,可以通过运行nethogs程序来检测是那个程序占用了大量带宽.节省了查找时间. Nethogs安装: 方法一:在epel源中可以直接yum安装[[email protected] src]#

linux服务器批量部署应用系统shell脚本(Tomcat/jetty)

linux服务器批量部署应用系统shell脚本: 1.请更换代码内的服务器地址(Tomcat或jetty服务器) serverRoot=/home/undoner/java_tool/apache-tomcat-7.0.61 serverDir=/home/undoner/java_tool/apache-tomcat-7.0.61/webapps 2.请更换工程所属配置文件名称 /WEB-INF/classes/install.properties 3.请将war包上传至本命令同级的目录,执行

查看Linux服务器网络状态(转)

转载自http://blog.chinaunix.net/uid-26413552-id-3202366.html 查看Linux服务器网络状态 ifconfig 用来显示所有网络接口的详细情况的,如:ip地址,子网掩码等. ethx是以太网网卡的名称. 配置文件在/etc/sysconfig/network-scripts/ifcfg-eth0中 DEVICE="eth0" HWADDR="00:0C:29:68:C0:8C" NM_CONTROLLED=&quo

查看Linux服务器内存使用情况

一个服务器,最重要的资源之一就是内存,内存够不够用,是直接关系到系统性能的关键所在. 本文介绍如何查看Linux服务器内存使用情况, 1.free命令 free -m [[email protected] ~]# free -m            total       used       free     shared    buffers     cachedMem:          1526        182       1344          0         16  

查看Linux服务器的CPU详细信息

查看Linux服务器的CPU详细信息 在Linux系统中,CPU的信息在启动的过程中被装载到虚拟目录/proc下的cpuinfo文件中,我们可以通过cat /proc/cpuinfo查看如下: 下面我们来分析其中几个比较重要的指标: processor 逻辑处理器的id. physical id 物理封装的处理器的id. core id 每个核心的id. cpu cores 位于相同物理封装的处理器中的内核数量. siblings 位于相同物理封装的处理器中逻辑处理器的数量. 判断Linux服务