脚本如下,已验证可用,可配合crontab使用。
1 #!/bin/bash cd /opt/oracle/datafor_kf #redirect environment variables
source /opt/oracle/.bash_profile #timestamp:YYYYmmdd
fdate=`date +%Y%m%d` localGtFile="tcm_local_gtt_list_$fdate.txt"
allGtFile="tcm_all_gtt_list_$fdate.txt"
ecFile="tcm_ec_smsc_server_$fdate.txt"
spFile="tcm_sp_smsc_server_$fdate.txt" #login
/opt/oracle/app/oracle/product/12.2./dbhome_1/bin/sqlplus uid/pwd@hostname:port/db<<EOF
SET echo off
SET feedback off
SET newpage none
SET pagesize
SET linesize
SET verify off
SET term off
SET trims ON
SET heading off
SET trimspool ON
SET trimout ON
SET timing off --tcm_local_gtt_list
spool "/home/ftp_kf/$localGtFile"
SELECT province||','||busi_city||','||area_code||','||gt||','||bel_hlr||','||spc||','||ser_type from TCM_GMSCSERVER_GT;
spool off --tcm_all_gtt_list
spool "/home/ftp_kf/$allGtFile"
--used
SELECT province||','||busi_city||','||area_code||','||start_gt from TCM_CMCC_DATA_JT;
--test
--SELECT province||','||busi_city||','||area_code||','||start_gt from TCM_CMCC_DATA_JT where start_gt='';
spool off --tcm_ec_smsc_server
spool "/home/ftp_kf/$ecFile"
--used
SELECT SERVER_CODE||','||EC_NAME||','||MAIN_ACCESS_ADDR||','||'hy' type from HY_SMGATE;
--test
--SELECT SERVER_CODE||','||EC_NAME||','||MAIN_ACCESS_ADDR||','||'hy' type from HY_SMGATE where SERVER_CODE='';
spool off --tcm_sp_smsc_server
spool "/home/ftp_kf/$spFile"
SELECT SERVER_CODE||','||SP_CONTENT_NAME||','||MAIN_ACCESS_ADDR from TCM_SP_NETGATE;
spool off exit
EOF #del line where it start by 'SQL'
/bin/sed -i '/SQL/d' $localGtFile
/bin/sed -i '/SQL/d' $allGtFile
/bin/sed -i '/SQL/d' $ecFile
/bin/sed -i '/SQL/d' $spFile #del file before today
/bin/find /home/ftp_kf/* -mtime +1 -exec rm {} \;

Linux sh脚本用spool导出oracle数据库指定表表数据的更多相关文章

  1. PL/SQLDeveloper导入导出Oracle数据库方法

    前一篇博客介绍了Navicat工具备份Oracle的方法,这篇博客介绍一下使用PL/SQL Developer工具导入导出Oracle数据库的方法. PL/SQL Developer是Oracle数据 ...

  2. [转]PL/SQLDeveloper导入导出Oracle数据库方法

    原文地址:http://www.2cto.com/database/201405/305452.html 1.Oracle数据库导出步骤 1.1 Tools→Export User Objects.. ...

  3. PL/SQL Developer导入导出Oracle数据库方法

    前一篇博客介绍了Navicat工具备份Oracle的方法.这篇博客介绍一下使用PL/SQL Developer工具导入导出Oracle数据库的方法. PL/SQL Developer是Oracle数据 ...

  4. 通过命令窗口导入导出oracle数据库到dmp文件

    通过命令窗口导入导出oracle数据库到dmp文件 很多时候我们需要备份Oracle的数据库,然后将数据导入其他数据库,因为有大文本字段会导致insert无法完全导出,只能导出为dmp文件,前提是wi ...

  5. 使用exp/imp 在oracle数据库间导数据

    最近工作需要将oracle数据库的表数据导出到另一个oracle数据库表,找到了oracle 自带的命令行,并记录下导数据过程. 导数据过程分以下几步: 假设源数据库为A,目标数据库为B 1.在B上通 ...

  6. Oracle数据库间的数据复制 - SQLPlus中的COPY命令

    Copy命令可以实现不同Oracle数据库间的数据的复制,也是可以实现同一数据库的数据复制,其性能表现和导入/导出相同. 根据9i文档,说Copy命令未来会不支持,但实际上Oracle 11g仍然支持 ...

  7. 将Oracle数据库中的数据写入Excel

    将Oracle数据库中的数据写入Excel 1.准备工作 Oracle数据库"TBYZB_FIELD_PRESSURE"表中数据如图: Excel模板(201512.xls): 2 ...

  8. 向Oracle数据库中插入数据出错:ORA-01036 无效的变量名或数据

    向Oracle数据库中插入数据出错: 经过排查,因为Update数据时没有出错,所以OracleHelper没有问题: 看异常信息提示:无效的变量和数据,应该是SQL语句的问题,调试时所传的实例Use ...

  9. Oracle数据库中的数据出错的解决办法

    http://www.jcwcn.com/article/database/oracle/ 今天上班犯了一个严重的错误:把我们系统所使用的Oracle数据库中的数据给改掉了!当发现自己改错时,顿时冒了 ...

随机推荐

  1. Spring MVC-从零开始-view-ViewResolver

    主要ViewResolver简介 InternalResourceViewResolver 将逻辑视图名解析为一个路径 BeanNameViewResolver 将逻辑视图名解析为bean的name属 ...

  2. layDate——初步使用

    layui系列中layDate的使用教程网址 https://www.layui.com/laydate/ 我这里简单举例: 1.引入js <script type="text/jav ...

  3. Linux 常用解压和压缩命令

    .tar 解包 tar xvf filename.tar.tar 打包 tar cvf filename.tar dirname.gz 解压1 gunzip filename.gz.gz 解压2 gz ...

  4. MangoDB的下载和安装

    ​ 前面已经简单介绍了MongoDB,今天我们就要正式学习他了,话不多说,咱先来安装. 1.现在MongoDB已经到了4.0版本,咱先去官网下载,MongoDB官网传送门,下载的版本信息如下,点击Do ...

  5. uC/OS-III 时钟节拍(一)

    时钟节拍就是操作系统的时基,操作系统要实现时间上的管理,必须依赖于时基(时基即时间基准,操作系统的基准时钟). uC/OS-III时钟节拍的实现过程 时钟节拍就是系统以固定的频率产生中断(时基中断), ...

  6. 原创电子书《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》

    <菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...

  7. 如何增强VR的vection/self-motion?

    上一节讲到了vection是给玩家带来“移动感”的因素,它提供良好VR体验的关键之一.那么VR中我们一般用哪些方式来提供vection呢?1 首先来简单了解一下人体和空间相关的感知机制. 视觉线索 v ...

  8. 3. Git与TortoiseGit基本操作

    1. GitHub操作 本节先简单介绍 git 的使用与操作, 然后再介绍 TortoiseGit 的使用与操作. 先看看SVN的操作吧, 最常见的是 检出(Check out ...), 更新 (U ...

  9. 防DOS攻击-网络连接法

    #!/bin/bash netstat -antup | grep SYN_RECV | awk '{print $5}' |awk -F: '{print $1}'|sort|uniq -c > ...

  10. ELK 学习笔记之 Logstash之filter配置

    Logstash之filter: json filter: input{ stdin{ } } filter{ json{ source => "message" } } o ...