运维脚本---------实时流量

# cat /proc/net/dev 查看的是所有硬件设备的网络传输情况,查到的是累计值
#想要传输实时,则需要将下一秒(下一时间)获得的值减去前一秒(当前时间)

#! /bin/bash
NIC=$1
echo -e " In -------------- Out"
while true;do
    OLD_IN=$(awk '$0~"'$INC'"{print $2}' /proc/net/dev)
    OLD_OUT=$(awk '$0~"'$INC'"{print $10}' /proc/net/dev)
    sleep 1
    NEW_IN=$(awk '$0~"'$INC'"{print $2}' /proc/net/dev)
    NEW_OUT=$(awk '$0~"'$INC'"{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
done

注意:%.1f表示保留一位小数,这里的1为阿拉伯数字1,可以是2~9这些,表示保留的小数点后几位

posted @ 2022-08-19 22:25  CiscoLee  阅读(44)  评论(0编辑  收藏  举报