中国开发网: 论坛: 程序员情感CBD: 贴子 586267
python
无聊,贴个shell 脚本玩玩
set -x
WKDIR=$3
DBCON=$4
TABLENAME=$1
VARLOOP=$2
#DBCON="dwhgxcm/"$VARPASSWORD"@dwhgxcm"
cd $WKDIR/$TABLENAME
ls -R *$TABLENAME$VARLOOP*.AVL >$WKDIR/$TABLENAME/ETL.txt
echo 'OPTIONS (SKIP=0,ERRORS=0,DIRECT=TRUE)'>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
#echo 'unrecoverable' >>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo 'load data' >>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
#for /f "tokens=1* delims= " %d in (D:\GXYD_WorkStage\#TableName\ETL.TXT) do echo infile '%d'>>D:\GXYD_WorkStage\#TableName\#TableName#VAR_Loop.ctl
awk -v ver="'" '{print "infile " ver$1ver}' $WKDIR/$TABLENAME/ETL.txt >>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo "BADFILE '$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.bad'">>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo "DISCARDFILE '$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.dsc'">>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo 'DISCARDMAX 1' >>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo "append into table \"$TABLENAME\"" >>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo "fields terminated by X'09'">>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo 'trailing nullcols'>>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
echo "( record_type, pdp_context_sign, mobile_number, imsi_number, sgsn_address,
net_ability, district_id, route_area, basic_stop_id, paid_id, ggsn_address,
net_id, sp_id, pdp_type, pdp_address, sgsn_change_sign, break_reason,
merge_result_sign, attach_area, roam_area, cost_user_type, cost_type,
roam_type, cost_busi_type, start_time, comm_time, tariff_level1,
flow_up_level1, flow_down_level1, comm_time_level1, tariff_level2,
flow_up_level2, flow_down_level2, comm_time_level2, tariff_level3,
flow_up_level3, flow_down_level3, comm_time_level3, tariff_level4,
flow_up_level4, flow_down_level4, comm_time_level4, tariff_level5,
flow_up_level5, flow_down_level5, comm_time_level5, tariff_level6,
flow_up_level6, flow_down_level6, comm_time_level6, basic_fee_tongxin,
fee1, fee2, fee3, fee_all, basic_fee_tongxin_n, other_fee_privilege_n,
flow_privilege_n, privilege_type_n, deal_time, fee1_privilege_n,
fee2_privilege_n, fee3_privilege_n, comm_bill_type, unknow1,
unknow2, unknow3, update_time \"nvl(:UPDATE_TIME,to_date('"$VAR_Loop"','YYYYMMDD'))\")">>$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl
sqlldr userid=$DBCON control=$WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl parallel=true direct=false BINDSIZE=8388608 READSIZE=8388608
#rm -f $WKDIR/$TABLENAME/ETL.TXT
#rem del /q D:\GXYD_WorkStage\$TABLENAME$VARLOOP\$TABLENAME$VARLOOP.ctl
# rm -f $WKDIR/$TABLENAME/$TABLENAME$VARLOOP.ctl

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录