linux下实时查看网口流量
·
./bit.sh
#!/bin/bash
ens32=enx98fc84ec6c5b
echo -e "流量进入--流量传出 "
while true; do
old_in=$(cat /proc/net/dev |grep $ens32 |awk '{print $2}')
old_out=$(cat /proc/net/dev |grep $ens32 |awk '{print $10}')
sleep 1
new_in=$(cat /proc/net/dev |grep $ens32 |awk '{print $2}')
new_out=$(cat /proc/net/dev |grep $ens32 |awk '{print $10}')
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"
done
./bits.sh enx98fc84ec6c5b
#!/bin/bash
NIC=$1
# 检查是否提供了网络接口名称
if [ -z "$NIC" ]; then
echo "Usage: $0 <NIC>"
exit 1
fi
echo -e " In (KB/s) ------ Out (KB/s)"
# 初始化旧的接收和发送字节数
OLD_STATS=$(awk -v nic="$NIC" '$0 ~ nic {print $2, $10}' /proc/net/dev)
read OLD_IN OLD_OUT <<< "$OLD_STATS"
while true; do
# 读取新的接收和发送字节数
NEW_STATS=$(awk -v nic="$NIC" '$0 ~ nic {print $2, $10}' /proc/net/dev)
read NEW_IN NEW_OUT <<< "$NEW_STATS"
# 计算差值并转换为KB/s
IN=$(printf "%.1f%s" "$((($NEW_IN-$OLD_IN)/1024/2))" "KB/s")
OUT=$(printf "%.1f%s" "$((($NEW_OUT-$OLD_OUT)/1024/2))" "KB/s")
# 输出结果
echo "$IN $OUT"
# 更新旧的接收和发送字节数为新的值
OLD_IN=$NEW_IN
OLD_OUT=$NEW_OUT
# 等待一秒后再次检查
sleep 1
done
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)