79 lines
1.8 KiB
Bash
Executable File
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
|
|
|