由于是游戏业务,环境主要是Nginx+Tomcat+Java Program

gps脚本环境以及效果图如下:

#!/bin/bash

function Printf (){
if [ $ == ];then
printf '%-50s\n' "+-----------------+------------------+-----------------+"
shift
fi
printf '%1s %-10s %1s %10s %1s %10s %1s\n' "|" "$1" "|" "$2" "|" "$3" "|"
printf '%-50s\n' "+-----------------+------------------+-----------------+"
} function GameStatus (){
Port=$
Path=$
Name=$
local SiteValue=$
Ppid=$
nc -vz 127.0.0.1 ${Port} >/dev/null >&
if [ $? == ];then
Status=$(echo -e "\e[32m OK \e[0m")
else
Status=$(echo -e "\e[31mError\e[0m")
fi
if [[ -z ${Ppid} ]];then
if [ "$USER" == "root" ];then
Pid=$(netstat -nltp | egrep -w "0.0.0.0:${Port}|0 :::${Port}" | awk '{print $7}' | sed 's#/.*##')
else
Pid=$(sudo netstat -nltp | egrep -w "0.0.0.0:${Port}|0 :::${Port}" | awk '{print $7}' | sed 's#/.*##')
fi
else
Pid=$(ps -ef | grep -i "${Path}/" |grep -i "${Name}/" |grep -v "grep" | awk '{print $2}')
fi
printf '%-20s %-6s %-15s %-12s %-25s %-6s %-15s\n' "${Date}" "${Pid}" "${Name}" "${SiteValue}" "${Path}" "${Port}" "Status:[${Status}]"
} function GameCheck (){
GamePath=(/ccu/server /usr/local/tomcat /data/dandantang)
GsPort=( )
GameStatus /usr/local/nginx Nginx " "
echo -e "\e[35m--------------------------------------------------------------------------------------------------------------------------------------------\e[0m"
for (( i=;i<;i++ ))
do
GameStatus ${GsPort[$i]} ${GamePath[$i]} GameServer
echo -e "\e[35m--------------------------------------------------------------------------------------------------------------------------------------------\e[0m"
done
} Online_check(){
echo -e "\e[35m-------------------------- Online Info. ----------------------------\e[0m"
local Ports="9200 9300"
local Sum_online=
for Port in $Ports
do
local Port_online=`netstat -ntp|awk -v a= \
'/ESTABLISHED/&&$4~":'$Port'"{a+=1}END{print a}'`
Sum_online=$(($Sum_online + $Port_online))
case $Port in
)
Port_name="Gameserver1_port(9200):"
;;
)
Port_name="Gameserver2_port(9300):"
;;
esac
printf "%-25s%14s\n" "$Port_name" "$Port_online"
done printf "%-25s%14s\n" "Gameonline:" "$Sum_online"
} Date=`date '+[%Y-%m-%d %H:%M:%S]'`
echo "Main Site:$(hostname)"
echo -e "\e[35m--------------------------------------------------------------------------------------------------------------------------------------------\e[0m"
GameCheck
Online_check

gps

Linux 检查端口gps命令的更多相关文章

  1. linux——nmap端口扫描命令

    先安装 nmap :apt-get install nmap 端口扫描命令nmap -sS 172.16.55.100nmap -Pn 172.16.55.100第一组渗透测试指令,用于情报收集. 要 ...

  2. linux 查看端口号命令

    Linux下如果我们需要知道2809号端口的情况的话,我们可以这样,如下命令: $netstat -pan|grep 24800 tcp        0      0 0.0.0.0:24800   ...

  3. linux查看端口常用命令

    netstat命令参数: -t : 指明显示TCP端口 -u : 指明显示UDP端口 -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序) -p ...

  4. Linux查看端口信息命令

    netstat -tlnp|grep 端口 eg: netstat -tlnp|grep 9889

  5. linux查看主机端口进程命令

    1.查看主机信息 # more /etc/hosts # Do not remove the following line, or various programs # that require ne ...

  6. 怎样在linux或者Unix上检查端口是否在使用

     英文原文链接:https://www.cyberciti.biz/faq/unix-linux-check-if-port-is-in-use-command/ Question 1: 怎样在lin ...

  7. Netstat -tln 命令是Linux查看端口使用情况

    Netstat -tln 命令是Linux查看端口使用情况

  8. Linux下如何通过命令检查网卡是否插上网线

    How To:Linux下如何通过命令检查网卡是否插上网线   主要工具为ethtool来检查,主要关注的字段为"Link detected",注意如下的输出,其中em4实际物理上 ...

  9. Linux系统使用ss命令查看端口状态

    Linux系统使用ss命令查看端口状态 目录 1.可用工具 2.ss帮助 2.1 选项分类说明 2.2 过滤选项family 2.3 过滤选项state 2.4 状态之间的关系 3.ss的使用 3.1 ...

随机推荐

  1. 阿里云服务器使用镜像市场上的环境以后sql不能远程问题

    关于阿里云的服务器,首先要说的就是买了以后是没有环境的,什么都需要自己配置,也是在这个上面栽了很多跟头最后去的镜像市场买的一个IIS8+SQL2016的asp.net环境 怎么说呢,感觉有些问题的本源 ...

  2. socket流程

  3. semantic-ui 分割线

    分割线即原生html中的<hr>标签.不过semantic-ui中将<hr>美化了一下下. 1.基础分割线 需要注意的是分割线只能使用div标签和p标签,不能使用span标签. ...

  4. java kill thread command line

    multithreading - How do you kill a Thread in Java? - Stack Overflowhttps://stackoverflow.com/questio ...

  5. 便捷的ajax请求

    为什么要做这个呢?如果后端给的数据不单有JSON字符串,还有对象呢?这个时候我们就要每个都处理(JSON.parse).万一后端又改了,所有都是对象呢?如此一来我们就需要对我们的ajax进行封装. 这 ...

  6. react render

    实际上react render方法返回一个虚拟dom 并没有去执行渲染dom 渲染的过程是交给react 去完成的 这就说明了为什么要在所有数据请求完成后才去实现render 这样做也提高了性能.只调 ...

  7. Laravel 5.6 模型关联 user 表后查询 user 表数据只能获取第一条数据,不知道怎么获取第二条

    按照开发手册的说法,肯定是指令不够全,附代码图 如果, tests 是文章表, users 是用户表 test.com/tests/1 是 id 为 1 的文章地址( get 访问) 假如 Tests ...

  8. java获取本机ip(排除虚拟机等一些ip)最终解,总算找到方法了

    本文参考https://blog.csdn.net/u011809209/article/details/77236602 本文参考https://blog.csdn.net/yinshuomail/ ...

  9. yum仓库搭建

    1. 创建yum仓库目录 mkdir -p /application/yum/centos6.6/x86_64/ cd /application/yum/centos6.6/x86_64/ rz  # ...

  10. linux 挂载windows下目录,其它linux机器nfs的目录,自己dd的文件

    如有转载,不胜荣幸.http://www.cnblogs.com/aaron-agu/ 挂载window下共享的目录 //192.168.0.11/share /mnt 挂载其它linux机器下目录 ...