cat <<-'EOF' > check_start_dg.sh
#!/bin/bash
HOSTMEI=$1
PDBMEI=$2
SDBMEI=$3
echo "[$(date '+%Y/%m/%d %H:%M:%S')] job start" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
CNT=0
MAXCNT=30
while true; do
ssh ${HOSTMEI} "sudo su - oracle -c 'dgmgrl / \"show database '\"'${PDBMEI}'\"';\"'" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
RET=$?
if [ ${RET} -ne 0 ] ; then
echo "[$(date '+%Y/%m/%d %H:%M:%S')] job error(${HOSTMEI} ${PDBMEI} ${RET} )" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
exit 100
fi
n=$(tail -n 11 /tmp/check_start_dg_$(date '+%Y%m').log | grep "TRANSPORT-ON" | wc -l)
ssh ${HOSTMEI} "sudo su - oracle -c 'dgmgrl / \"show database '\"'${SDBMEI}'\"';\"'" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
RET=$?
if [ ${RET} -ne 0 ] ; then
echo "[$(date '+%Y/%m/%d %H:%M:%S')] job error(${HOSTMEI} ${SDBMEI} ${RET} )" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
exit 100
fi
m=$(tail -n 11 /tmp/check_start_dg_$(date '+%Y%m').log | grep "APPLY-ON" | wc -l)
if [ ${n} -eq "1" ]&&[ ${m} -eq "1" ] ; then
break
fi
CNT=$((CNT+1))
if [ ${CNT} -ge ${MAXCNT} ] ; then
echo "[$(date '+%Y/%m/%d %H:%M:%S')] job timeout" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
exit 100
fi
sleep 60
done
echo "[$(date '+%Y/%m/%d %H:%M:%S')] job end" | tee -a /tmp/check_start_dg_$(date '+%Y%m').log
exit 0
EOF
cat check_start_dg.sh
chmod +x check_start_dg.sh
./check_start_dg.sh mmm112 act stb
cat /tmp/check_start_dg_$(date '+%Y%m').log