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; /*定义输出一维数组的函数 ...
随机推荐
- easyui-datagrid 使用笔记
1.清空所有行和所有列 $('#dgJGQuery').datagrid({ columns: [], url: '', data: [] }); 2.采用 datagrid-groupview 分组 ...
- SAP 资产相关日期
1. Capitalized Date(资本化日期) 可以手工输入资本化日期,或者如果不输入,则通常默认写入First Acquisition Date (资产第一次购置时输入资产价值日). 2.As ...
- flvjs的unload(),detachMediaElement(),destroy()报错,undefined,not a function解决方案
首先,真的被网上一堆各种转载复制粘贴坑了不少,最后直接到GitHub上flvjs的看作者的demo和docs才解决,具体如下. 1.引入flvjs文件,新建实例 var flvUrl = '直播流地址 ...
- 优化SQL集一
-->寻找低效的SQL语句 ,下面的语句主要适用于从视图v$sqlarea中获得当前运行下且耗用buffer_gets较多的SQL语句 SELECT exec ...
- Phoenix核心功能原理及应用场景介绍以及Calcite 查询计划生成框架介绍
Phoenix是一个开源的HBase SQL层.它不仅可以使用标准的JDBC API替代HBase Client API创建表,插入和查询HBase,也支持二级索引.事物以及多种SQL层优化. 此系列 ...
- python的路径问题
## 文件路径出错问题 """ 如何获取与当前文件相关的地址 """ import os # 当前文件的完整路径 print(__file_ ...
- AcWing 34. 链表中环的入口结点
习题地址 https://www.acwing.com/problem/content/description/86/ 题目描述给定一个链表,若其中包含环,则输出环的入口节点. 若其中不包含环,则输出 ...
- 2个ajax的相互调用解决异步问题
- WPF 在使用 ItemsSource 之前,项集合必须为空
原文:WPF 在使用 ItemsSource 之前,项集合必须为空 <DataGrid x:Name="datagrid" ItemsSource="{Bindin ...
- win10系统使用Telnet命令时提示“telnet不是内部或外部命令”
in10系统使用Telnet命令时提示“telnet不是内部或外部命令”问题的处理方案 win10系统使用的过程中很多用户会遇到使用Telnet命令时提示“telnet不是内部或外部命令”的问题,这样 ...