#!/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
shell操作菜单
猜你喜欢
转载自microjava.iteye.com/blog/549066
今日推荐
周排行