Files
xkm-server/battle_server_999/runenv/check_battle_all.sh
2025-05-21 13:43:08 +08:00

79 lines
1.8 KiB
Bash
Executable File

#!/bin/bash -
#环境变量
export PATH=$PATH:/data/home/mmog/server_999/runenv/tools
#进程列表
proc_name=(
battle_svr_10_999_ag
)
#检查进程状态
proc_ok=()
proc_no=()
for p in ${proc_name[*]};do
num=$(ps -ef|grep "${p}"|grep -v grep|wc -l)
if [ ${num} == "0" ];then
length=${#proc_no[*]}
proc_no[${length}]=$p
else
length=${#proc_ok[*]}
proc_ok[${length}]=$p
fi
done
#本地打印格式
function local_print(){
echo "------------------------------"
echo " 墨迹大侠_中顺_999服 "
echo "------------------------------"
echo " 已启动进程信息 "
echo "------------------------------"
for i in ${proc_ok[*]};do
ps -ef|grep "${i}"|grep -v grep|sed 's/\.pid.*//g'|awk '{print $5,$NF}'|sed 's/\s.*\(battle.*_[0-9]\+\).*/ \1/g'
done
echo "------------------------------"
echo " 未启动进程信息 "
echo "------------------------------"
for i in ${proc_no[*]};do
echo "$i"
done
echo "------------------------------"
}
#远程打印格式
function remote_print(){
#打印启动进程信息
echo "<start>"
if [ "${#proc_ok[*]}" == "0" ]; then
echo "_love_"
else
for i in ${proc_ok[*]};do
ps -ef|grep "${i}"|grep -v grep|sed 's/\.pid.*//g'|awk '{print $5,$NF}'|sed 's/\s.*\(battle.*_[0-9]\+\).*/ \1/g'
done
fi
echo "<start>"
#打印停止进程信息
echo "<stop>"
if [ "${#proc_no[*]}" == "0" ]; then
echo "_love_"
else
for i in ${proc_no[*]};do
echo "$i"
done
fi
echo "<stop>"
}
#打印检查结果
function check_result(){
if [ -z $1 ];then
local_print
else
remote_print
fi
}
#打印当前进程状态
check_result $1