免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1105 | 回复: 3
打印 上一主题 下一主题

[其他] 如何判断2个端口是否在一个pid 上 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-09-09 13:02 |只看该作者 |倒序浏览
本帖最后由 梦落花香Z 于 2016-09-09 13:04 编辑

如果在同一个pid上就是输出正常,否则就输出错误

a.png (4.93 KB, 下载次数: 48)

a.png

论坛徽章:
0
2 [报告]
发表于 2016-09-09 14:12 |只看该作者
没看懂你是啥意思。如果你要判断两个端口被同一个进程同时监听,可以用netstat -tnlpu命令查看。
会在输出端口的同时在最后一列打印出进程pid。

论坛徽章:
0
3 [报告]
发表于 2016-09-09 14:15 |只看该作者
回复 2# lll1985911

对,如何用脚本判断上面的是否一一对应。

论坛徽章:
0
4 [报告]
发表于 2016-09-09 17:01 |只看该作者
#!/bin/bash
number=($(cat /root/start/startscript/mq112start |awk -F. '{print $1}'|awk -F activemq '{print $2}'))
number1=($(cat /root/start/startscript/mq112start |awk -F. '{print $2}'|awk -F / '{print $1}'))
line=`cat /root/start/startscript/mq112start |wc -l`

p=0
while (($p < $line));do

for i in ${number[$p]};do
    netstat -nptl |grep java |egrep '\<'"$i"'\>' > /dev/null 2>&1
        if [ $? -eq 0 ];then
            mqpid=`netstat -nptl |grep java |egrep '\<'"$i"'\>'|awk '{print $NF}' |awk -F / '{print $1}'`
        else
            echo -e "\033[31m \033[5m activemq  $i is failure \033[0m"  
        fi
done

for o in ${number1[$p]};do
    netstat -nptl |grep java |egrep '\<'"$o"'\>' > /dev/null 2>&1
        if [ $? -eq 0 ];then
            mqpid1=`netstat -nptl |grep java |egrep '\<'"$o"'\>'|awk '{print $NF}' |awk -F / '{print $1}'`
                if [ $mqpid -eq $mqpid1 ];then
                    echo "activemq $i and $o is normal"
                else
                    echo -e "\033[31m \033[5m activemq $i and $o is failure \033[0m"  
                fi
        else
            echo -e "\033[31m \033[5m activemq  $o is failure \033[0m"  
        fi
done

let "p++"
done


搞定了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP