tc_song 2016-03-30 03:13 采纳率: 0%
浏览 637

linux中netstat某个瞬间值不准确,求大神指点

使用netstat监控端口时,连续两次查看的端口状态不一致,实际上这个端口应该是一直连接这的。
下面是我的bash监控脚本:

for((i=0; i do
netstat -an|grep $locPort >$TMPFILE
count=cat $TMPFILE|grep ESTABLISHED|awk '{print $4}'|grep $locPort|wc -l
count1=cat $TMPFILE|grep LISTEN| awk '{print $4}'|grep $locPort|wc -l
count2=cat $TMPFILE|awk '{print $4}'|grep $locPort|wc -l
local msgBuf1=0
local msgBuf2=0
msgBuf1=cat $TMPFILE|awk '{print $2,$3,$4,$6}' |grep $locPort|grep ESTABLISHED|awk '{print $1}'
msgBuf2=cat $TMPFILE|awk '{print $2,$3,$4,$6}' |grep $locPort|grep ESTABLISHED|awk '{print $2}'
msgBuf1=${msgBuf1:-0}
msgBuf2=${msgBuf2:-0}
if [ $count -eq 1 -a $count1 -eq 1 -a $count2 -eq 2 -a $msgBuf1 -eq 0 -a $msgBuf2 -eq 0 ] ;then
status="OK"
break
else
status="ERROR"
cat $TMPFILE >&3
echo "++++++++++++++++++++" >&3
netstat -an|grep $locPort >&3
echo "sleep 1s"
sleep 1s
continue
fi
done

下面是输出内容:

tcp 0 0 10.5.177.44:20203 0.0.0.0:* LISTEN
tcp 0 0 ::ffff:10.5.177.44:12184 ::ffff:10.5.177.44:20203 ESTABLISHED
++++++++++++++++++++
tcp 0 0 10.5.177.44:20203 0.0.0.0:* LISTEN
tcp 0 0 10.5.177.44:20203 10.5.177.44:12184 ESTABLISHED
tcp 0 0 ::ffff:10.5.177.44:12184 ::ffff:10.5.177.44:20203 ESTABLISHED

该监控程序大部分时候都是正常的,但是偶然性会出现上面这种情况,sleep1秒后端口状态又正常了,应用程序是长连接,这期间应用也是正常的。求大神指点。

  • 写回答

1条回答

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-10-27 23:58
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)