shell script

上一篇 / 下一篇  2014-12-11 15:47:17 / 个人分类:ORACLE数据库

#!/bin/sh
#define variable
typeset TOTAL=3000000
typeset KEY=300000000
typeset MSISDN=8613800000000
typeset FAKEID=1000000000
typeset ACCTID=10000000000
typeset LOGKEY=400000000
typeset RECID=20000000
typeset ACCTIDTMP=9990000
typeset CBPID=101
typeset PROVINCEID=250
typeset AREAID=25
typeset SYSDB="sysdb"
typeset USERDB="userdb"
typeset CBEDB="cbedb"
typeset EFFECTTIME='2012-12-1 08:13:06'
typeset EXPIRETIME='2037-1-1'
#STATUS1: 0:EFFECT;3:EXPIRED
typeset STATUS=0
typeset PRODUCTKEY=1000016538
typeset CHANNELID=10010000
function gen_pdb_ts_productorder
{
awk \
'BEGIN{num=0;total='$TOTAL';key='$KEY';recid='$RECID';acctid='$ACCTID';acctidtmp='$ACCTIDTMP'}
{
while(num < total)
{
printf("%s|%s%s|'$PRODUCTKEY'|'"$EFFECTTIME"'|'"$EXPIRETIME"'|'"$EFFECTTIME"'|'000000000000000'|'$STATUS'||0|'$CBPID'|''|'"$EFFECTTIME"'|''|''|'"$EFFECTTIME"'|''|\n",key,acctidtmp,acctid);
num++;
key++;
acctid++;
}
}' readme.txt > ./temp/ts_productorder.unl
}
function gen_pdb_mdsp_t_prodorderex
{
awk \
'BEGIN{num=0;total='$TOTAL';key='$KEY';fakeid='$FAKEID';acctid='$ACCTID';acctidtmp='$ACCTIDTMP'}
{
while(num < total)
{
printf("%s%s|'"$EFFECTTIME"'|'"$EXPIRETIME"'|-1|-1|0|1|-1|0|0|0|-1|-1|-1|-1|-1|-1|''||0||0\n",acctidtmp,acctid);
num++;
acctid++;
}
}' readme.txt > ./temp/mdsp_t_prodorderex.unl
}

function gen_pdb_ts_prodorderattr
{
awk \
'BEGIN{num=0;total='$TOTAL';key='$KEY';recid='$RECID';acctid='$ACCTID';acctidtmp='$ACCTIDTMP'}
{
while(num < total)
{
printf("%s%s|'"$EFFECTTIME"'|'"$EXPIRETIME"'|93717|'$CHANNELID'|'$CBPID'|''|'"$EFFECTTIME"'|''|''|'"$EFFECTTIME"'|''|\n",acctidtmp,acctid);
printf("%s%s|'"$EFFECTTIME"'|'"$EXPIRETIME"'|93789|'0'|'$CBPID'|''|'"$EFFECTTIME"'|''|''|'"$EFFECTTIME"'|''|\n",acctidtmp,acctid);
printf("%s%s|'"$EFFECTTIME"'|'"$EXPIRETIME"'|93811|'0'|'$CBPID'|''|'"$EFFECTTIME"'|''|''|'"$EFFECTTIME"'|''|\n",acctidtmp,acctid);
printf("%s%s|'"$EFFECTTIME"'|'"$EXPIRETIME"'|94025|%s|'$CBPID'|''|'"$EFFECTTIME"'|''|''|'"$EFFECTTIME"'|''|\n",acctidtmp,acctid,fakeid);
num++;
acctid++;
fakeid++;
}
}' readme.txt > ./temp/ts_prodorderattr.unl
}
 
function gen_pdb_tb_interactsrvlog
{
awk \
'BEGIN{num=0;total='$TOTAL';key='$KEY';logkey='$LOGKEY';msisdn='$MSISDN';fakeid='FAKEID';acctid='$ACCTID';acctidtmp='$ACCTIDTMP'}
{
while(num < total)
{
printf("%s|4050001|'4050001'|%s|%s|1|''|||||0|405000000|Operation successfully!|1||''|''|''|''|''|''|''|''|''|''|'"$EFFECTTIME"'|'"$EFFECTTIME"'|''|''|'"$EFFECTTIME"'|''|'$PRODUCTKEY'|0|0|0|''|0||||||''|''|''|''|''|''|''|''|''|%s%s|''|''|\n",logkey,msisdn,key,acctidtmp,acctid);
num++;
key++;
msisdn++;
logkey++;
acctid++;
}
}' readme.txt > ./temp/tb_interactsrvlog.unl
}
 
date
gen_pdb_ts_productorder
gen_pdb_ts_prodorderattr
gen_pdb_mdsp_t_prodorderex
gen_pdb_tb_interactsrvlog

sqlplus userdb/userdb@$USERDB << xEOF
    truncate table ts_productorder;
    truncate table ts_prodorderattr;
    truncate table MDSP_T_PRODORDEREX;
    truncate table tb_interactsrvlog;
    quit
xEOF
sqlldr userdb/userdb@$USERDB control=./config/ts_productorder.ctl log=./log/ts_productorder.log direct=y streamsize=10485760&
sqlldr userdb/userdb@$USERDB control=./config/ts_prodorderattr.ctl log=./log/ts_prodorderattr.log direct=y  streamsize=10485760&
sqlldr userdb/userdb@$USERDB control=./config/mdsp_t_prodorderex.ctl log=./log/mdsp_t_prodorderex.log direct=y streamsize=10485760 &
sqlldr userdb/userdb@$USERDB control=./config/tb_interactsrvlog.ctl log=./log/tb_interactsrvlog.log direct=y streamsize=10485760&
wait
echo "The $TOTAL Effective ordering relations preset completed!\n "
##Set invalid order relationship
INVALID_TOTAL=3000000
typeset EFFECTTIME="2012-12-1 08:13:06"
typeset EXPIRETIME="2012-12-31"
#STATUS1: 0:EFFECT;3:EXPIRED
typeset STATUS=3
ACCTID=`expr $ACCTID + $TOTAL`
LOGKEY=`expr $LOGKEY + $TOTAL`
RECID=`expr $RECID + $TOTAL`
gen_pdb_ts_productorder
gen_pdb_ts_prodorderattr
gen_pdb_mdsp_t_prodorderex
gen_pdb_tb_interactsrvlog
sqlldr userdb/userdb@$USERDB control=./config/ts_productorder.ctl log=./log/ts_productorder.log direct=y streamsize=10485760&
sqlldr userdb/userdb@$USERDB control=./config/ts_prodorderattr.ctl log=./log/ts_prodorderattr.log direct=y streamsize=10485760&
sqlldr userdb/userdb@$USERDB control=./config/mdsp_t_prodorderex.ctl log=./log/mdsp_t_prodorderex.log direct=y streamsize=10485760&
sqlldr userdb/userdb@$USERDB control=./config/tb_interactsrvlog.ctl log=./log/tb_interactsrvlog.log direct=y streamsize=10485760&
wait
date

TAG:

 

评分:0

我来说两句

Open Toolbar