原创 唐哥 成长的小学生
在Linux操作系统中,查询网卡流量并不是特别方便,而且统计方式也不直观,下面给大家整理了一个脚本,直接复制到服务器上运行即可,不存在什么依赖关系。
- 脚本内容
将内容保存到一个文件中,文件名称可以自定义,比如:
vi catnet.sh
将以下内容保存到脚本中
#!/bin/bash
NIC=$1
echo -e " In ------ Out"
while true; do
OLD_IN=$(awk '$0~"'$NIC'"{print $2}' /proc/net/dev)
OLD_OUT=$(awk '$0~"'$NIC'"{print $10}' /proc/net/dev)
sleep 1
NEW_IN=$(awk '$0~"'$NIC'"{print $2}' /proc/net/dev)
NEW_OUT=$(awk '$0~"'$NIC'"{print $10}' /proc/net/dev)
IN=$(printf "%.1f%s" "$((($NEW_IN-$OLD_IN)/1024))" "KB/s")
OUT=$(printf "%.1f%s" "$((($NEW_OUT-$OLD_OUT)/1024))" "KB/s")
echo "$IN $OUT"
sleep 1
done
图片
脚本原理就是通过每秒统计一次进出网卡的总流量,用最后一次统计的结果-上一次统计的结果,然后统计这1秒所产生的流量;
- 运行脚本
运行方法:
sh 脚本名称 + 网卡名称
【eg】操作系统中的网卡名称为ens32,则执行命令:
sh catnet.sh ens32
In:表示下载速度
Out:表示上传速度
如果你不清楚网卡的名称,也可以使用ifconfig或者ip addr show命令进行查看。