Linux系统端口检测脚本
执行脚本一键检测服务器上中间件端口是否存在
#!/bin/bash
#端口连通性检测
#加入字典变量
PORT_LIST="3306 9200 9876 6379 6030 "
REMOTE_HOST=127.0.0.1
TIMEOUT_SEC=5
dic=([3306]="MySQL" [9200]="es" [9876]="rocketmq" [6379]="redis" [6030]="TDengine" [80]="web")
declare -A dict
for PORT in $PORT_LIST ;do
timeout $TIMEOUT_SEC bash -c "echo > /dev/tcp/$REMOTE_HOST/$PORT" &>/dev/null; res=$?
if [ $res -eq 0 ]
then
echo -e "\033[32m 服务端口:${dic[$PORT]}:$PORT 状态:OPEN \033[0m" #green
elif [ $res -eq 1 ]
then
echo -e "\033[31m ERROR:服务端口:${dic[$PORT]}:$PORT 状态:NOT LISTEN \033[0m" #red
fi
done
#posting_check() {
#netstat -lntp|grep 7018 &>/dev/null
#if [[ $? -eq 0 ]];then
# echo -e "\033[32m 过账服务:posting 状态:OPEN \033[0m" #green
#else
# echo -e "\033[31m ERROR:过账服务:posting 状态:NOT LISTEN \033[0m" #red
#fi
#}
#posting_check