首页 > 技术文章 > 自定义监控脚本--监控端口

dingzp 2019-06-14 11:34 原文

#!/bin/bash

port_array=(`netstat -ntpl|egrep -i "$1"|awk {'print $4'}|awk -F':' '{if ($NF~/^[0-9]*$/) print $NF}'|sort|uniq`)
length=${#port_array[@]}

printf "{\n"
printf '\t'"\"data\":["
for ((i=0; i<$length; i++))
do
    printf '\n\t\t{'
    printf "\"{#TCP_PORT}\":\"${port_array[$i]}\""
    if [ $i -lt $[$length - 1] ]; then
        printf ','
    fi
done

printf "\n\t]\n"
printf "}\n"

输出

[root@localhost alterscripts]# ./discovery_port.sh   
{
        "data":[
                {"{#TCP_PORT}":"10050",
                {"{#TCP_PORT}":"2371",
                {"{#TCP_PORT}":"25",
                {"{#TCP_PORT}":"3306"
        ]
}

 以上是一个端口自动发现的脚本,端口自动发现的设置步骤略

推荐阅读