Linux查看网卡流量的shell脚本
2023-09-11 14:18:55 时间
公司内网不通外网,不能下载网络监控工具,就可以使用下面的脚本,复制过去监测一下。
#!/bin/bash
R2=`cat /sys/class/net/$1/statistics/rx_bytes`
T2=`cat /sys/class/net/$1/statistics/tx_bytes`
NUM=100000
if [ -z "$1" ]; then
echo
echo usage: $0 network-interface
echo
echo e.g. $0 eth0
echo
exit
fi
while true
do
R1=`cat /sys/class/net/$1/statistics/rx_bytes`
T1=`cat /sys/class/net/$1/statistics/tx_bytes`
TBPS=`expr $T1 - $T2`
RBPS=`expr $R1 - $R2`
TKBPS=`expr $TBPS / 1024`
RKBPS=`expr $RBPS / 1024`
eval `date "+day=%d; month=%m; year=%Y; hour=%H; minute=%M second=%S"`
INSTFIL4="$hour:$minute:$second"
if [ $RKBPS -gt 1024 ] || [ $TKBPS -gt 1024 ];then
RMBPS=$(printf "%.2f" `echo "scale=2;$RKBPS/1024"|bc`)
TMBPS=$(printf "%.2f" `echo "scale=2;$TKBPS/1024"|bc`)
echo -e "$INSTFIL4 发送 $1: \033[31m$TMBPS\033[0m mb/s 下载 \033[32m$RMBPS\033[0m mb/s "
elif [ $RKBPS -gt 1024 ] && [ $TKBPS -lt 1024 ];then
RMBPS=$(printf "%.2f" `echo "scale=2;$RKBPS/1024"|bc`)
echo -e "$INSTFIL4 发送 $1: \033[31m$TKBPS\033[0m kb/s 下载 \033[32m$RMBPS\033[0m mb/s "
elif [ $RKBPS -lt 1024 ] && [ $TKBPS -gt 1024 ];then
TMBPS=$(printf "%.2f" `echo "scale=2;$TKBPS/1024"|bc`)
echo -e "$INSTFIL4 发送 $1: \033[31m$TMBPS\033[0m mb/s 下载 \033[32m$RKBPS\033[0m kb/s "
else
echo -e "$INSTFIL4 发送 $1: \033[31m$TKBPS\033[0m kb/s 下载 \033[32m$RKBPS\033[0m kb/s "
fi
R2=`cat /sys/class/net/$1/statistics/rx_bytes`
T2=`cat /sys/class/net/$1/statistics/tx_bytes`
sleep 1s
done
vyos网络操作系统安装不了bc命令,脚本不能运行,所以改成下面的
#!/bin/bash
R2=`cat /sys/class/net/$1/statistics/rx_bytes`
T2=`cat /sys/class/net/$1/statistics/tx_bytes`
NUM=100000
if [ -z "$1" ]; then
echo
echo usage: $0 network-interface
echo
echo e.g. $0 eth0
echo
exit
fi
while true
do
R1=`cat /sys/class/net/$1/statistics/rx_bytes`
T1=`cat /sys/class/net/$1/statistics/tx_bytes`
TBPS=`expr $T1 - $T2`
RBPS=`expr $R1 - $R2`
TKBPS=`expr $TBPS / 1024`
RKBPS=`expr $RBPS / 1024`
eval `date "+day=%d; month=%m; year=%Y; hour=%H; minute=%M second=%S"`
INSTFIL4="$hour:$minute:$second"
if [ $RKBPS -gt 1024 ] || [ $TKBPS -gt 1024 ];then
# RMBPS=$(printf "%.2f" `echo "scale=2;$RKBPS/1024"|bc`)
# TMBPS=$(printf "%.2f" `echo "scale=2;$TKBPS/1024"|bc`)
RMBPS=`expr $RKBPS / 1024`
TMBPS=`expr $TKBPS / 1024`
echo -e "$INSTFIL4 发送 $1: \033[31m$TMBPS\033[0m mb/s 下载 \033[32m$RMBPS\033[0m mb/s "
elif [ $RKBPS -gt 1024 ] && [ $TKBPS -lt 1024 ];then
#RMBPS=$(printf "%.2f" `echo "scale=2;$RKBPS/1024"|bc`)
RMBPS=`expr $RKBPS / 1024`
echo -e "$INSTFIL4 发送 $1: \033[31m$TKBPS\033[0m kb/s 下载 \033[32m$RMBPS\033[0m mb/s "
elif [ $RKBPS -lt 1024 ] && [ $TKBPS -gt 1024 ];then
#TMBPS=$(printf "%.2f" `echo "scale=2;$TKBPS/1024"|bc`)
TMBPS=`expr $TKBPS / 1024`
echo -e "$INSTFIL4 发送 $1: \033[31m$TMBPS\033[0m mb/s 下载 \033[32m$RKBPS\033[0m kb/s "
else
echo -e "$INSTFIL4 发送 $1: \033[31m$TKBPS\033[0m kb/s 下载 \033[32m$RKBPS\033[0m kb/s "
fi
R2=`cat /sys/class/net/$1/statistics/rx_bytes`
T2=`cat /sys/class/net/$1/statistics/tx_bytes`
sleep 1s
done
相关文章
- Linux系统虚拟内存空间
- [Linux] linux awk命令详解
- Linux启动网卡时出现RTNETLINK answers: File exists错误解决方法
- Linux/CentOS服务器 一个网卡绑定多IP地址(永久设置)
- linux获取文件大小的函数
- Linux Shell脚本自动化编程实战- shell函数
- Spark修炼之道(基础篇)——Linux大数据开发基础:第十二节:Shell编程入门(四)
- Linux下Apache ActiveMQ5.9的安装配置与测试
- Linux Shell脚本自动化编程实战-shell变量(二)
- Linux Shell脚本自动化编程实战- shell并发
- Linux等保密码策略
- Linux网络配置之虚拟网卡的配置(ubuntu 16.04)案例
- Linux网络配置之虚拟网卡的配置(ubuntu 16.04)
- shell - Linux - win10 拷贝shell 脚本到Linux 执行报错 -bash: ./myshell.sh: /bin/bash^M: bad interpreter: No such file or directory
- Linux命令: 在线使用linux命令环境
- L86.linux命令每日一练 -- 第12章 Linux系统常用内置命令(二)
- L70.linux命令每日一练 -- 第十章 Linux网络管理命令 -- nc和ssh
- L63.linux命令每日一练 -- 第九章 Linux进程管理命令 -- runlevel、init和service
- L51.linux命令每日一练 -- 第八章 Linux磁盘与文件系统管理命令 -- mkfs和dumpe2fs
- L33.linux命令每日一练 -- 第五章 Linux信息显示与搜索文件命令 -- du和date
- Linux系统的网卡路由配置
- geo ftp环境变量 export source ~/.bashrc Linux中filezilla下载ftp文件 ftp.ncbi.nlm.nih.gov linux下载 ftp下载geo非原始数
- Linux系列 常用命令(目录和文件管理)vi和vim 编辑使用,(笔记)
- Kafka集群安装部署(超详细操作演示)—— Linux