一个程序发布的shell脚本实例(转)

 
发表人:OracleERPR12 | 发表时间: 2007年十一月07日, 16:52

一个程序发布的shell脚本实例,包括Form,library,Database object,concurrent register

把以下代码Copy到txt文本文件中,文本后缀名改为.sh

#!/bin/bash

#--
#---------------------------------------------------------------------------------------------
#-- File Name : XXUTS_MFG_ITEM_REVISION_Form_INSTALL.sh
#-- Purpose : QuQ Status Maintain Form
#-- Author : Simon
#-- Initial Build Date: 20-Aug-2007
#-- Version : 1.0
#--
#-- Modification History
#---------------------------------------------------------------------------------------------
#-- | WHEN | Ver | WHO | WHAT
#---------------------------------------------------------------------------------------------
#--
#-- 20-Aug-2007 | 1.0 | Heming | $UT$CMPEXT131 Inital Creation
# QuQ Status Maintain Form
#-- 04-Oct-2007 | 1.1 | Johnny Qu | Modify to follow the same process
#---------------------------------------------------------------------------------------------
#
#
#--------------------------------------------------------------------------
# Set the environmental variables and other administrative requirements.
#--------------------------------------------------------------------------
INSTALL_DIR=$XXUTS_TOP/install/CMPEXT131
OUT_DIR=$XXUTS_TOP/out
FORMS_DIR=$XXUTS_TOP/forms/US
OUTFILE=$OUT_DIR/XXUTS_MFG_ITEM_REVISION_Form_INSTALL.out

echo `date` > $OUTFILE

#--------------------------------------------------------------------------
# Define the function to get the APPS password.
#--------------------------------------------------------------------------
Psswd()
{
echo "Please enter APPS login =>"
stty -echo
read apps_login
stty echo

echo "Please enter APPS password =>"
stty -echo
read apps_pwd
stty echo
}

#--------------------------------------------------------------------------
# Function to move files.
#--------------------------------------------------------------------------
CreateCMP()
{

mkdir $INSTALL_DIR >> $OUTFILE

mv $XXUTS_TOP/install/XXUTS_MFG_ITEM_REVISION_Form_INSTALL.sh $INSTALL_DIR >> $OUTFILE
mv $XXUTS_TOP/install/XXUTS_MFG_ITEM_REVISION.fmb $INSTALL_DIR >> $OUTFILE
mv $XXUTS_TOP/install/XXUTS_ITEM_QUALIFY_STATUS_OBJECT.sql $INSTALL_DIR >> $OUTFILE
mv $XXUTS_TOP/install/XXUTS_MFG_Item_revision_pk.pck $INSTALL_DIR >> $OUTFILE
mv $XXUTS_TOP/install/XXUTS_AUTO_REFRESH_MPN_REG.sql $INSTALL_DIR >> $OUTFILE
mv $XXUTS_TOP/install/XXUTS_AUTO_REFRESH_MPN.ldt $INSTALL_DIR >> $OUTFILE
mv $XXUTS_TOP/install/XXUTS_MFG_ITEM_REVISION.pll $INSTALL_DIR >> $OUTFILE


cd $INSTALL_DIR

}

#--------------------------------------------------------------------------
# Function to copy files.
#--------------------------------------------------------------------------
CopyFiles()
{

cp XXUTS_MFG_ITEM_REVISION.fmb $FORMS_DIR >> $OUTFILE

}


#--------------------------------------------------------------------------
# Function to execute the script. to create the table and packages
#--------------------------------------------------------------------------
CreateDBObjs()
{
sqlplus $apps_login/$apps_pwd @XXUTS_ITEM_QUALIFY_STATUS_OBJECT.sql >>$OUTFILE
sqlplus $apps_login/$apps_pwd @XXUTS_MFG_Item_revision_pk.pck >>$OUTFILE

}

#-----------------------------------------------------------------------------
# Upload concurrent program definitions
#-----------------------------------------------------------------------------
CreateConcPgm()
{
$FND_TOP/bin/FNDLOAD $apps_login/$apps_pwd 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct XXUTS_AUTO_REFRESH_MPN.ldt >>$OUTFILE


}


#--------------------------------------------------------------------------
# Function to register AOL objects
#--------------------------------------------------------------------------

AolRegister()
{
sqlplus $apps_login/$apps_pwd @XXUTS_AUTO_REFRESH_MPN_REG.sql >> $OUTFILE
}

#--------------------------------------------------------------------------
# Function to compile libraries.
#--------------------------------------------------------------------------
CreateLibs()
{
cd $INSTALL_DIR
cp XXUTS_MFG_ITEM_REVISION.pll $AU_TOP/resource >> $OUTFILE

cd $AU_TOP/resource

frmcmp_batch module=XXUTS_MFG_ITEM_REVISION.pll module_type=library userid=$apps_login/$apps_pwd >> $OUTFILE
}

#--------------------------------------------------------------------------
# Function to compile forms.
#--------------------------------------------------------------------------
CreateForms()
{
cd $FORMS_DIR
frmcmp_batch module=$FORMS_DIR/XXUTS_MFG_ITEM_REVISION.fmb module_type=form. userid=$apps_login/$apps_pwd >> $OUTFILE
}

#---------------------------------------------------------------------
# Call the functions
#---------------------------------------------------------------------

Psswd
echo -e "nCREATING CMP Folder...n" >> $OUTFILE
CreateCMP

echo "Creating Objects ......."
CreateDBObjs

echo "Loading Program ........."
CreateConcPgm

echo "Registering Program ......"
AolRegister

echo -e "nMOVING Files...n" >> $OUTFILE
CopyFiles

echo -e "nCOMPILING Forms...XXUTS_MFG_ITEM_REVISION.fmbn" >> $OUTFILE
CreateForms

echo -e "nCOMPILING Libraries...n" >> $OUTFILE
CreateLibs

echo -e "nDone.n" >> $OUTFILE

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24627116/viewspace-755550/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/24627116/viewspace-755550/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 上线前的备份工作: 按日期生成上线记录文件夹 文件结构目录和正式环境保持一致 备份你所涉及到的修改文件 2. 上线前的准备工作: 把你修改到的patch文件 到 PATCH_ROOT 目录中 文件结构目录和正式环境保持一致 3. 上线工作: diff -r -b 比较 备份环境 和 发布环境 文件差异; 再次确定修改是否正确 PATCH_ROOT 下的文件夹和文件 发布到正式环境 即可; 完成上线后,要检查系统功能是否正确。 4. 回滚工作: BAK_ROOT 下的文件夹和文件 回滚到正式环境 即可 ; 完成回滚后 要检查系统功能是否正确回滚。 5. shell脚本功能: === 参数配置 ===: #指定正式环境的路径 正式环境的文件 WEB_ROOT=/var/www/html echo ${WEB_ROOT} #指定发布环境的路径 发布环境的文件 PAT_ROOT=/home/chenlong/blog echo ${PAT_ROOT} #指定发布管理日志的路径 记录发布过程,完成文件备份和文件patch PUB_ROOT=/home/chenlong/Publish === 使用方法 ===: #./apply.sh blog /home/chenlong/patch_sh/list20100520.txt 例如 -bash-3.2$ ./apply.sh blog /home/chenlong/patch_sh/list20100520.txt /var/www/html /home/chenlong/blog /home/chenlong/Publish blog /home/chenlong/patch_sh/list20100520.txt /home/chenlong/patch_sh === cmd === :/home/chenlong/patch_sh/apply_cp.sh /var/www/html/wp-includes/js/common.js /home/chenlong/Publish/blog/2010-05-21/bak /bin/cp /var/www/html/wp-includes/js/common.js /home/chenlong/Publish/blog/2010-05-21/bak/var/www/html/wp-includes/js/common.js === cmd === :/home/chenlong/patch_sh/apply_cp.sh /var/www/html/upload_editor.php /home/chenlong/Publish/blog/2010-05-21/bak /bin/cp /var/www/html/upload_editor.php /home/chenlong/Publish/blog/2010-05-21/bak/var/www/html/upload_editor.php === cmd === :/home/chenlong/patch_sh/apply_cp.sh /var/www/html/BM/Tpl/default/Admin/Img/index.php /home/chenlong/Publish/blog/2010-05-21/bak /bin/cp /var/www/html/BM/Tpl/default/Admin/Img/index.php /home/chenlong/Publish/blog/2010-05-21/bak/var/www/html/BM/Tpl/default/Admin/Img/index.php === cmd === :/home/chenlong/patch_sh/apply_cp.sh /home/chenlong/blog/wp-includes/js/common.js /home/chenlong/Publish/blog/2010-05-21/patch /bin/cp /home/chenlong/blog/wp-includes/js/common.js /home/chenlong/Publish/blog/2010-05-21/patch/home/chenlong/blog/wp-includes/js/common.js === cmd === :/home/chenlong/patch_sh/apply_cp.sh /home/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值