test
#!/bin/bash
################ Version Info ##################
# Create Date: 2021-06-23
# Author: Mike
# Version: 1.0
# Attention: Stop cdassign.sh and runjob.sh
################################################
if [ `whoami` != "root" ];then
echo "ERROR: this scripts must be executed by root"
exit
fi
if [ ! -f /sysp/cdadminlib/working/cdcontrol.log ];then
touch /sysp/cdadminlib/working/cdcontrol.log
chown mdwcdu01.conn /sysp/cdadminlib/working/cdcontrol.log
chmod 775 /sysp/cdadminlib/working/cdcontrol.log
fi
host=`hostname`
scname="infrastop.sh"
date=`date +%Y%m%d`
datest=`date +%H%M%S`
stop()
{
echo "$host|$scname|start|$date|$datest" >>/sysp/cdadminlib/working/cdcontrol.log
#/sysp/cdadminlib/scripts/support/cdinfracontrol.sh $host disble
echo "hello world"
sleep 2
Status=`cat /sysp/cdadminlib/working/weighted_host.log |grep $host |awk -F "|" '{print $(NF-1)}'`
num=1
for i in `seq 3`
do
if [ "$Status" = "A" ] || [[ -s /sysp/cdadminlib/working/$host.tmp ]];then
#/sysp/cdadminlib/scripts/support/cdinfracontrol.sh $host disble
echo "hello world"
sleep 2
let num=$num+1
if [ $num -gt 2 ];then
echo "Error:$host still active in /sysp/cdadminlib/working/weighted_host.log or hosname.tmp not empty!"
echo "$host|$scname|Disable Fail|$date|$datest">>/sysp/cdadminlib/working/cdcontrol.log
exit
fi
fi
done
for i in `seq 3`
do
cdassignpid=`ps -ef |grep cdassign|grep -v grep |awk -F " " '{print $2}'`
#echo "cdassignpid="$cdassignpid
[[ ! -z $cdassignpid ]] && kill -9 $cdassignpid
if [ $? -eq 0 ] ;then
sleep 3
# nohup ./cdassign.sh & >/dev/null
ps -ef |grep cdassign|grep -v grep
if [ $? -eq 0 ];then
nocdassignpid=1
else
nocdassignpid=0
break
fi
fi
done
#echo "cdassign-----" $nocdassignpid
for i in `seq 3`
do
runjobpid=`ps -ef |grep runjob|grep -v grep |awk -F " " '{print $2}'`
#echo "runjobpid="$runjobpid
[[ ! -z $runjobpid ]] && kill -9 $runjobpid
if [ $? -eq 0 ] ;then
sleep 3
#nohup ./runjob.sh & >/dev/null
ps -ef |grep runjob|grep -v grep
if [ $? -eq 0 ];then
norunjobpid=1
else
norunjobpid=0
break
fi
fi
done
#echo "runjob-----" $norunjobpid
if [[ $nocdassignpid -eq "0" ]] && [[ $norunjobpid -eq "0" ]];then
echo "cdassign.sh and runjob.sh are stopped successfully!"
echo "$host|$scname|end|$date|$datest" >>/sysp/cdadminlib/working/cdcontrol.log
elif [[ $nocdassignpid -ne "0" ]] && [[ $norunjobpid -ne "0" ]];then
echo "cdassign.sh and runjob.sh are not stopped,please check!"
echo "$host|$scname|runjob.sh and cdassign.sh cannot be killed not stop|$date|$datest" >>/sysp/cdadminlib/working/cdcontrol.log
elif [[ $nocdassignpid -eq "0" ]] && [[ $norunjobpid -ne "0" ]];then
echo "runjob.sh not stopped and cdassign.sh stopped.please check!"
echo "$host|$scname|runjob.sh NOT stopped|$date|$datest">>/sysp/cdadminlib/working/cdcontrol.log
else
echo "cdassign.sh not stopped and runjob.sh stopped,please check!"
echo "$host|$scname|cdassign.sh NOT stopped|$date|$datest" >>/sysp/cdadminlib/working/cdcontrol.log
fi
}
case "$1" in
stop)
stop
;;
*)
echo "usage: $0 {start | stop | restart}"
esac
浙公网安备 33010602011771号