广告
#!/bin/bash ListeningPort=`netstat -an | grep ":10003" | awk '$1 == "tcp" && $NF == "LISTEN" {print $0}' | wc -l` if [ $ListeningPort -eq 0 ] #上面这一句就是监测游戏端口。10003就是我监测的端口,我这个游戏是mt3梦幻,掉线的话一般会失去这个端口 then { #下面三行是关闭游戏的命令,和你的shell命令一样 echo "正在关闭梦幻西游!请稍后!" ps aux | grep 'gateserver' |grep -v grep| cut -c 9-15 | xargs kill -9 sleep 1 ps aux | grep 'proxyserver' |grep -v grep| cut -c 9-15 | xargs kill -9 sleep 1 ps aux | grep 'java' |grep -v grep| cut -c 9-15 | xargs kill -9 sleep 1 echo "梦幻西游关闭成功!" echo "正在启动梦幻西游!请稍后!" service iptables stop sleep 1 #下面是启动命令 cd /home/mt3 ./s.sh sleep 5 echo "..." sleep 0.2 echo "..." sleep 0.2 echo "..." sleep 0.2 echo "..." sleep 0.2 echo "..." sleep 0.2 echo "..." echo "梦幻西游服务端启动完成" } else #下面是如果端口在就输出这一句话,我可以在日志里看见 { echo "`date` : 10003端口正常" } fi
怎么用,就是在宝塔计划任务里添加一个shell脚本,选择多少分钟,执行一次上面的脚本。方便一些后台服给玩家刷炸了,不用管。爱玩不玩
楼主辛苦了,谢谢楼主,楼主好人一生平安!