BayaiM__SQLLDR_linux_shell高级版
BayaiM__SQLLDR_linux_shell高级版
1.因公司在职,商业机密,顾IP地方加了"*"号,你可以任意写一个数字做IP做就好。
2.不要瞎BB,哥自己写的,挺实用的,里面告诉你许多来龙去脉。
3.也算是知识分享,不算泄露什么鸟。
=========================================================
-----------------------------------------------------------------------------------------------------------------
[root@oradata script]# cat wx_zfb.sh
#!/bin/bash
TDATE=`date -d '1 days ago' +%Y%m%d`
Path_wx="/home/ftp/2gdata/wx/$TDATE"
Path_wxwal="/home/ftp/2gdata/wxwal/$TDATE"
Path_jyt_wk="/home/ftp/2gdata/jyt_wk/$TDATE"
Path_zfb_nosett="/home/ftp/2gdata/zfb_nosett/$TDATE"
Path_zfb_sett="/home/ftp/2gdata/zfb_sett/$TDATE"
Path_xnzh="/home/ftp/2gdata/xnzh/$TDATE"
if [ -d "${Path_wx}" ]; then
rm -rf "${Path_wx}"
fi
if [ -d "${Path_wxwal}" ]; then
rm -rf "${Path_wxwal}"
fi
if [ -d "${Path_jyt_wk}" ]; then
rm -rf "${Path_jyt_wk}"
fi
if [ -d "${Path_zfb_nosett}" ]; then
rm -rf "${Path_zfb_nosett}"
fi
if [ -d "${Path_zfb_sett}" ]; then
rm -rf "${Path_zfb_sett}"
fi
if [ -d "${Path_xnzh}" ]; then
rm -rf "${Path_xnzh}"
fi
mkdir -p "${Path_wx}"
mkdir -p "${Path_wxwal}"
mkdir -p "${Path_jyt_wk}"
mkdir -p "${Path_zfb_nosett}"
mkdir -p "${Path_zfb_sett}"
mkdir -p "${Path_xnzh}"
ftp -n<<!
open 172.16.3.*
user js_ls ls3ppqvm
binary
cd /xqfdzwj/wx
lcd ${Path_wx}
prompt
mget 48023010_${TDATE}.txt.gz
close
bye
!
#cd /home/ftp/2gdata/wx/${TDATE} && gunzip -n -q 48023010_${TDATE}.txt.gz
#gunzip -n -q /home/ftp/2gdata/wx/${TDATE}/48023010_${TDATE}.txt.gz
ftp -n<<!
open 172.16.3.*
user js_ls ls3ppqvm
binary
cd /xqfdzwj/wxwal
lcd ${Path_wxwal}
prompt
get 48023010_${TDATE}.txt.gz
close
bye
!
#cd /home/ftp/2gdata/wxwal/${TDATE} && gunzip -n -q 48023010_${TDATE}.txt.gz
gunzip -n -q /home/ftp/2gdata/wxwal/${TDATE}/48023010_${TDATE}.txt.gz
ftp -n<<!
open 172.16.3.*
user js_ls ls3ppqvm
binary
cd /xqfdzwj/jyt_wk
lcd ${Path_jyt_wk}
prompt
get 48023010_${TDATE}.txt.gz
close
bye
!
#cd /home/ftp/2gdata/jyt_wk/${TDATE} && gunzip -n -q 48023010_${TDATE}.txt.gz
gunzip -n -q /home/ftp/2gdata/jyt_wk/${TDATE}/48023010_${TDATE}.txt.gz
ftp -n<<!
open 172.16.3.*
user js_ls ls3ppqvm
binary
cd /xqfdzwj/zfb_nosett
lcd ${Path_zfb_nosett}
prompt
get 48023010_${TDATE}.txt.gz
close
bye
!
#cd /home/ftp/2gdata/zfb_nosett/${TDATE} && gunzip -n -q 48023010_${TDATE}.txt.gz
gunzip -n -q /home/ftp/2gdata/zfb_nosett/${TDATE}/48023010_${TDATE}.txt.gz
ftp -n<<!
open 172.16.3.*
user js_ls ls3ppqvm
binary
cd /xqfdzwj/zfb_sett
lcd ${Path_zfb_sett}
prompt
get 48023010_${TDATE}.txt.gz
close
bye
!
#cd /home/ftp/2gdata/zfb_sett/${TDATE} && gunzip -n -q 48023010_${TDATE}.txt.gz
gunzip -n -q /home/ftp/2gdata/zfb_sett/${TDATE}/48023010_${TDATE}.txt.gz
ftp -n<<!
open 172.16.3.*
user js_ls ls3ppqvm
binary
cd /xqfdzwj/xnzh
lcd ${Path_xnzh}
prompt
get 48023010_${TDATE}.txt.gz
close
bye
!
#cd /home/ftp/2gdata/xnzh/${TDATE} && gunzip -n -q 48023010_${TDATE}.txt.gz
gunzip -n -q /home/ftp/2gdata/xnzh/${TDATE}/48023010_${TDATE}.txt.gz
gunzip -n -q /home/ftp/2gdata/wx/${TDATE}/48023010_${TDATE}.txt.gz
----------------------------------------------------------------------------------------------------------------------
2.1 >>
[root@oradata wx]# cat wx_all.sh
#!/bin/bash
sh /home/oracle/u01/sqlldr/wx/01_wx.sh
sh /home/oracle/u01/sqlldr/wx/02_wxwal.sh
sh /home/oracle/u01/sqlldr/wx/03_jyt_wk.sh
sh /home/oracle/u01/sqlldr/wx/04_zfb_nosett.sh
sh /home/oracle/u01/sqlldr/wx/05_zfb_sett.sh
sh /home/oracle/u01/sqlldr/wx/06_xnzh.sh
2.2 >>
[root@oradata wx]# cat 01_wx.sh
#!/bin/bash
TDATE=`date -d '1 days ago' +%Y%m%d`
file_tt="/home/ftp/2gdata/wx/$TDATE/48023010_${TDATE}.txt"
echo "
load
infile '${file_tt}'
append INTO TABLE union_wx
FIELDS TERMINATED BY '","'
trailing nullcols
(
dateofstlm ,
timeofloctxn ,
mchtid_sl ,
sl_appid ,
mchtid_js ,
js_appid ,
termid ,
amountoftxn ,
totalfee ,
invtfee ,
brandfee ,
txnclass ,
panval ,
card_issuer ,
card_type ,
singleorgcode ,
term_serial_no ,
swsystraceaudnum ,
referenceno ,
authorization_no ,
orig_term_serial_no ,
originalsysno ,
ori_referenceno ,
mcc ,
isdz ,
isfr ,
mchtid_sld ,
appid ,
pointfee ,
issuerfee ,
isqs ,
termid_sld ,
transaction ,
sendinsid ,
oriclearingdate ,
reserve ,
is_T0 ,
T0_invtfee ,
new3 ,
jdbj ,
jhf ,
zjqsf ,
new7 ,
new8 ,
new9 ,
ddh ,
tsjf ,
tsjflx ,
fbjgbs ,
kzhdj ,
fsylbzk ,
srcReserve ,
systemId ,
UNION_TYPE CONSTANT '01'
)
">/home/oracle/u01/sqlldr/wx/wx.ctl && sqlldr oggadmin/umsogg@umsdb CONTROL=/home/oracle/u01/sqlldr/wx/wx.ctl log=/home/oracle/u01/sqlldr/wx/wx.log skip=1 rows=200000
01_ * 至 06_* 都是类推
InvtFee position(242:253),
PosRemark position(254:255),
InvtFee3 position(261:267),
AccountType position(269:270),
TotalFee position(827:835)
EXT_BILL_NO \"trim(:EXT_BILL_NO)\",
APPID \"trim(:APPID)\",
ORD_STATUS \"trim(:ORD_STATUS)\",
INSERT_TIME CONSTANT '${TDATE}'
)
3.
-------------------------------------------------------------------------------------
[root@oradata intelligent_pos]# cat intelligent_pos_one.sh
#!/bin/bash
#TDATE=`date -d '1 days ago' +%Y%m%d`
#TTXT=`date -d '1 days ago' +'%Y''-'%m'-'%d`
#INDATE=`date -d '1 days ago' +%Y%m%d`
#INSERT_TIME=`date +"%Y%m%d"`
for TDATE in {20170619..20170620}
do
T1=(1)
TDATE0=`expr $TDATE - $T1`
TTXT=${TDATE0:0:4}'-'${TDATE0:4:2}'-'${TDATE0:6:2}
echo "
DELETE FROM UNION_INTELLIGENT_POS T WHERE T.INSERT_TIME='$TDATE';
TRUNCATE TABLE UNION_INTELLIGENT_POS_TEMP;
exit
">/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos.sql && sqlplus oggadmin/umsogg@umsdb @/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos.sql
file_tt="/home/ftp/2gdata/intelligent_pos/$TDATE0/100200${TTXT}.txt"
echo "
load
infile '${file_tt}'
append INTO TABLE UNION_INTELLIGENT_POS_TEMP
FIELDS TERMINATED BY '|'
trailing nullcols
(
CHN_ID \"trim(:CHN_ID)\",
PAY_NO \"trim(:PAY_NO)\",
TRANS_TYPE \"trim(:TRANS_TYPE)\",
MRCH_NAME \"trim(:MRCH_NAME)\",
CARD_NO \"trim(:CARD_NO)\",
PROCESS_CODE \"trim(:PROCESS_CODE)\",
TRANS_AMT \"trim(:TRANS_AMT)\",
TRMNL_FLOWNO \"trim(:TRMNL_FLOWNO)\",
TRANS_TIME \"trim(:TRANS_TIME)\",
TRANS_DATE \"trim(:TRANS_DATE)\",
CARD_EXPIRE_DATE \"trim(:CARD_EXPIRE_DATE)\",
SETTLEMENT_DATE \"trim(:SETTLEMENT_DATE)\",
POS_ENTRYMODE \"trim(:POS_ENTRYMODE)\",
ACQUIRING_CODE \"trim(:ACQUIRING_CODE)\",
TRMNL_REFERNO \"trim(:TRMNL_REFERNO)\",
AUTH_CODE \"trim(:AUTH_CODE)\",
RESP_CODE \"trim(:RESP_CODE)\",
TRMNL_NO \"trim(:TRMNL_NO)\",
MRCH_NO \"trim(:MRCH_NO)\",
TRMNL_BATCHNO \"trim(:TRMNL_BATCHNO)\",
CARD_TYPE \"trim(:CARD_TYPE)\",
CRE_TIME \"trim(:CRE_TIME)\",
UPD_TIME \"trim(:UPD_TIME)\",
EXT_ORD_NO \"trim(:EXT_ORD_NO)\",
EXT_BILL_NO \"trim(:EXT_BILL_NO)\",
APPID \"trim(:APPID)\",
ORD_STATUS \"trim(:ORD_STATUS)\",
INSERT_TIME CONSTANT '${TDATE}'
)
">/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos.ctl && sqlldr oggadmin/umsogg@umsdb CONTROL=/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos.ctl log=/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos.log rows=200000
echo "
INSERT INTO UNION_INTELLIGENT_POS SELECT DISTINCT * FROM UNION_INTELLIGENT_POS_TEMP t WHERE T.INSERT_TIME='$TDATE';
COMMIT;
TRUNCATE TABLE UNION_INTELLIGENT_POS_TEMP;
EXIT;
">/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos_temp.sql && sqlplus oggadmin/umsogg@umsdb @/home/oracle/u01/sqlldr/intelligent_pos/intelligent_pos_temp.sql
done
BayaiM__SQLLDR_linux_shell高级版的更多相关文章
- yii2高级版账号密码问题
yii2高级版默认后台没有密码,生成账号密码步骤: 1. CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` ...
- PHP框架Yii2.0安装(基础版、高级版)
最近农成也是切入了yiiframework 2.0,就是安装yii2.0就花费了不少的时间,为此做了很多的弯路,特此写一篇博文来给后面学习的同学少走一点的弯路.写的不好的地方欢迎各位学习的同学们能够指 ...
- Win7家庭普通版、家庭高级版、专业版、旗舰版版本差别
刚才我们发了一个大图片:<Windows7.Vista.XP 三大系统功能差异比较一览图>,现在,再发一张对比图片,简要的看看Windows7家庭普通版.家庭高级版.专业版.旗舰版这四个版 ...
- 【Win7激活工具2013版下载】适用于旗舰版、家庭高级版等所有版本32/64位 OEM激活
虽然现在Win8已经发布了,但是身边总是还有一些朋友在用着Win7系统,而近期微软频繁的推送补丁包,导致之前的那些激活都失效了.找了网络上很多工具,之前的那些有的已经不能用了,激活不了,今天就推荐一些 ...
- 宣布正式发布 Biz Talk Services、Azure Active Directory 和 Traffic Manager, 同时发布 Azure Active Directory 高级版预览
除经济优势之外,云计算还在可转化为竞争优势的应用程序开发方面提供了更大的灵活性.我们很高兴看到每天创建的新 Windows Azure 订阅超过 1000 个,更令人兴奋的是,有一半客户使用价值更高的 ...
- 自定义高级版python线程池
基于简单版创建类对象过多,现自定义高级版python线程池,代码如下 #高级线程池 import queue import threading import time StopEvent = obje ...
- 希尔排序之C++实现(高级版)
希尔排序之C++实现(高级版) 一.源代码:ShellSortHigh.cpp /*希尔排序基本思想: 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分组. 所有距离为d1的倍数的记录放在同 ...
- 直接插入排序(高级版)之C++实现
直接插入排序(高级版)之C++实现 一.源代码:InsertSortHigh.cpp /*直接插入排序思想: 假设待排序的记录存放在数组R[1..n]中.初始时,R[1]自成1个有序区,无序区为R[2 ...
- 冒泡排序(高级版)之C++实现
冒泡排序(高级版)之C++实现 一.源代码:BubbleSortHigh.cpp #include<iostream> using namespace std; /*定义输出一维数组的函数 ...
随机推荐
- Unitest自动化测试基于HTMLTestRunner报告案例
报告效果如下: HTMLTestRunner脚本代码如下: #coding=utf-8 # URL: http://tungwaiyip.info/software/HTMLTestRunner.ht ...
- 【C#】学习笔记 Linq相关
Language-Integrated Query(语言集成查询) 写了个demo,具体看
- linux下挂载iso镜像文件
linux挂载iso镜像可以分为两种,直接挂载镜像和上传镜像文件至服务器进行挂载 一.虚拟机镜像挂载 测试时使用虚拟机,此时可以直接在虚拟机的设置中将镜像文件直接选择并进行挂载,无需上传至虚拟机服务器 ...
- (办公)mysql索引
举个例子:20多w的数据,查询语句,什么都没有查到,既没有走到主键索引,普通索引,什么都没走,走的就非常慢. 下面要加索引,并了解mysql索引的作用,以及如何使用他们索引. 介绍MysqlMySQL ...
- python3 邮件方式发送测试报告
以邮件方式发送测试报告 import smtplib from email.mime.text import MIMEText class SendEmail: """邮 ...
- [C5W2] Sequence Models - Natural Language Processing and Word Embeddings
第二周 自然语言处理与词嵌入(Natural Language Processing and Word Embeddings) 词汇表征(Word Representation) 上周我们学习了 RN ...
- LG4158 「SCOI2009」粉刷匠 线性DP
问题描述 LG4158 题解 设\(opt[i][j][k]\)代表到\((i,k)\)刷了\(j\)次的方案数. 一开始DP顺序有点问题,调了很长时间. 务必考虑清楚DP顺序问题 \(\mathrm ...
- 设计模式-Composite(结构型模式) 用于 递归构建 树 状 的组合结构,与Decorator的区别是 Composite旨在通过构造子类而添加新操作,而Decorator直接添加新操作。
以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //Component.h #pragma once class Component { public: Component( ...
- docker /var/lib/docker/aufs/mnt 目录满了怎么清理
1.创建脚本文件 vi cleandocker.sh 内容如下: #!/bin/sh echo "==================== start clean docker contai ...
- Linux 编译工具 gcc/g++、Make/Makefile、CMake/CMakeLists.txt、qmake
前言 编译器的主要工作流程: 源码(Source Code)>> 预处理器(Preprocessor)>> 编译器(Compiler)>> 汇编程序(Assembl ...