shell操作菜单


#!/bin/sh

#The path of shell and binary files
SHELL_PATH=/home/pcl/bin

#The path of oracle
ORACLE_HOME=/oracle/app/product/10g

#The path of WebSphere
#WEBSPHERE_HOME=/was/profiles/
WEBSPHERE_HOME=/was/cxgz/cxgz

#The user name of database used for query
DB_USERNAME=oracle


#The base location of oracle data for store backup files
DB_BAK_BASEPATH=/oraback/cxgzdb/


display_menu()
{
#Clear the screen
clear

#Show menu
echo "*========================================================================*"
echo "* *"
echo "* ######储蓄国债系统日常系统维护 *"
echo "* *"
echo "* 主机名:`hostname`\c"

hostname_len=`hostname|wc -c`
while [ $hostname_len -lt 53 ]
do
echo " \c"
hostname_len=`expr $hostname_len + 1`
done

echo "`date +%Y/%m/%d` *"
echo "*------------------------------------------------------------------------*"
echo "* 1. 启动储蓄国债数据库 *"
echo "* 2. 停止储蓄国债数据库 *"
echo "* 3. 启动国债管理 WebSphere *"
echo "* 4. 停止国债管理 WebSphere *"
echo "* 5. 启动国债前台 WebSphere *"
echo "* 6. 停止国债前台 WebSphere *"
echo "* 7. 启动国债MCIP应用 *"
echo "* 8. 停止国债MCIP应用 *"
echo "* 9. 储蓄国债数据库全备份 *"
echo "* 10. 备份数据全备份到磁带机 *"
echo "* 0. 退出 *"
echo "**************************************************************************"
}

get_char()
{
SAVEDSTTY=`stty -g`
stty -echo
stty raw
dd if=/dev/tty bs=1 count=1 2> /dev/null
stty -raw
stty echo
stty $SAVEDSTTY
}


while :
do

display_menu

while :
do
echo "请选择本次操作:\c"
read CHOISE
case $CHOISE in
1|2|3|4|5|6|7|8|9|10|0)
break
;;

*)
echo "无效的选项,请重新选择"
;;
esac
done;

case $CHOISE in


1)
echo "确认要启动储蓄国债数据库吗?[y|n]\c"
read CHOISE
case $CHOISE in
y|Y)

echo "开始启动储蓄国债数据库..."
proc=`ps -ef|grep ora_|grep cxgzdb|grep -v grep|wc -l`
if [ $proc -gt 0 ];
then
echo "储蓄国债数据库已启动"
else

su - oracle -c "export ORACLE_SID=cxgzdb;startdb.sh"

proc=`ps -ef|grep ora_|grep cxgzdb|grep -v grep|wc -l`
if [ $proc -lt 1 ];
then
echo "储蓄国债数据库启动失败"
fi
fi

echo "按任意键返回菜单\c"
get_char
;;
esac
;;

2)
echo "确认要停止储蓄国债数据库吗?[y|n]\c"
read CHOISE;
case $CHOISE in
y|Y)

echo "开始停止储蓄国债数据库..."
proc=`ps -ef|grep ora_|grep cxgzdb|grep -v grep|wc -l`
if [ $proc -lt 1 ]
then
echo "储蓄国债数据库未启动"
else

su - oracle -c "export ORACLE_SID=cxgzdb;stopdb.sh"

proc=`ps -ef|grep ora_|grep cxgzdb|grep -v grep|wc -l`
if [ $proc -gt 0 ]
then
echo "储蓄国债数据库停止失败"
fi
fi

echo "按任意键返回菜单\c"
get_char
;;
esac
;;

3)
echo "确认要启动国债管理 WebSphere吗?[y|n]\c"
read CHOISE
case $CHOISE in
y|Y)
echo "开始启动国债管理 WebSphere"
proc=`ps -ef|grep java|grep savings|grep -v grep|wc -l`
if [ $proc -gt 0 ];
then
echo "国债管理 WebSphere已启动"
else
$WEBSPHERE_HOME/savings/bin/startServer.sh server1
proc=`ps -ef|grep java|grep savings|grep -v grep|wc -l`
if [ $proc -lt 1 ];
then
echo "国债管理 WebSphere启动失败"
fi
fi
echo "按任意键返回菜单\c"
get_char
;;
esac
;;

4)
echo "确认要停止国债管理 Websphere吗?[y|n]\c"
read CHOISE;
case $CHOISE in
y|Y)
echo "开始停止国债管理 Websphere..."
proc=`ps -ef|grep java|grep savings|grep -v grep|wc -l`
if [ $proc -lt 1 ]
then
echo "国债管理 Websphere未启动"
else
$WEBSPHERE_HOME/savings/bin/stopServer.sh server1
sleep 5
proc=`ps -ef|grep java|grep savings|grep -v grep|wc -l`
if [ $proc -gt 0 ]
then
echo "国债管理 Websphere停止失败"
fi
fi
echo "按任意键返回菜单\c"
get_char
;;
esac
;;
5)
echo "确认要启动国债前台 WebSphere吗?[y|n]\c"
read CHOISE
case $CHOISE in
y|Y)
echo "开始启动国债前台 WebSphere"
proc=`ps -ef|grep java|grep cxgz|grep -v grep|wc -l`
if [ $proc -gt 0 ];
then
echo "国债前台 WebSphere已启动"
else
$WEBSPHERE_HOME/bin/startServer.sh server1
proc=`ps -ef|grep java|grep cxgz|grep -v grep|wc -l`
if [ $proc -lt 1 ];
then
echo "国债前台 WebSphere启动失败"
fi
fi
echo "按任意键返回菜单\c"
get_char
;;
esac
;;

6)
echo "确认要停止国债前台 Websphere吗?[y|n]\c"
read CHOISE;
case $CHOISE in
y|Y)
echo "开始停止国债前台 Websphere..."
proc=`ps -ef|grep java|grep cxgz|grep -v grep|wc -l`
if [ $proc -lt 1 ]
then
echo "国债前台 Websphere未启动"
else
$WEBSPHERE_HOME/bin/stopServer.sh server1
sleep 5
proc=`ps -ef|grep java|grep cxgz|grep -v grep|wc -l`
if [ $proc -gt 0 ]
then
echo "国债前台 Websphere停止失败"
fi
fi
echo "按任意键返回菜单\c"
get_char
;;
esac
;;
7)
echo "确认要启动国债应用吗?[y|n]\c"
read CHOISE;
case $CHOISE in
y|Y)
echo "开始启动应用..."

su - gzjy -c "startgzjy.sh"

echo "按任意键返回菜单\c"
get_char
;;
esac
;;

8)
echo "确认要停止国债应用吗?[y|n]\c"
read CHOISE;
case $CHOISE in
y|Y)
echo "开始停止国债应用..."

su - gzjy -c "stopgzjy.sh"


echo "按任意键返回菜单\c"
get_char
;;
esac
;;

9)
echo "确认要备份储蓄国债数据库数据吗?[y|n]\c"
read CHOISE;
case $CHOISE in
y|Y)
export ORACLE_SID=cxgzdb
# echo "检查储蓄国债数据库状态..."
proc=`ps -ef|grep ora_|grep cxgzdb|grep -v grep|wc -l`
if [ $proc -lt 1 ]
then
echo "cxgzdb数据库未启动,请先启动数据库..."
else
echo "开始 $ORACLE_SID 数据库备份"
DB_BAK_PATH=$DB_BAK_BASEPATH
echo "备份目录:$DB_BAK_PATH"
echo "装载 $ORACLE_SID 数据库进行RMAN备份"
su - oracle -c "$SHELL_PATH/oraRMAN.sh $ORACLE_SID $DB_BAK_PATH "
fi
echo "按任意键返回菜单\c"
get_char
;;
esac
;;
10)
echo "确认要开始将备份数据全备份到磁带机吗?[y|n]\c"
read CHOISE
case $CHOISE in
y|Y)

echo "\n开始备份磁带...\c"
# echo "\n请在磁带机中放入磁带...回车开始备份...... \c"
# read ans

/home/pcl/bin/tape_backup.sh $DB_BAK_BASEPATH/fullbackup
if [ $? -ne 0 ]
then
echo "备份到磁带(/dev/rmt0)未能成功请检查备份日志!\n"
echo "^[[41m An error encountered!^[[40m"
exit 1
fi
echo "\n按任意键返回菜单\c"
get_char
;;
esac
;;


0)
exit 0;
;;

esac

done
#stty -echo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值