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

简介:

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/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
   本文转自激情燃烧的岁月博客51CTO博客,原文链接http://blog.51cto.com/liuzhengwei521/1786936如需转载请自行联系原作者

weilovepan520
相关文章
|
17天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
20天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 <<EOF binary put file.txt quit EOF ```
29 4
|
22小时前
|
Linux
如何将一个linux服务器挂载到另外一个linux服务器上
如何将一个linux服务器挂载到另外一个linux服务器上
13 1
|
2天前
|
监控 Linux 网络安全
Linux服务器如何查询连接服务器的IP
【4月更文挑战第15天】Linux服务器如何查询连接服务器的IP
9 1
|
2天前
|
监控 安全 Linux
Linux系统之安装ServerBee服务器监控工具
【4月更文挑战第22天】Linux系统之安装ServerBee服务器监控工具
40 2
|
4天前
|
Linux Shell Android开发
自动化脚本之GPIO/LED相关适用于Android/Linux
自动化脚本之GPIO/LED相关适用于Android/Linux
13 0
|
6天前
|
网络协议 安全 Linux
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
|
13天前
|
Linux 数据安全/隐私保护
Linux基础与服务器架构综合小实践
【4月更文挑战第9天】Linux基础与服务器架构综合小实践
1242 8
|
14天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
143 0
|
14天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
141 0