linux--oracle之spool
#! /bin/sh
sqlplus -s 用户名/密码<<EOF
set head off
set linesize 20000
set echo off
set feedback off
set pagesize 0
set termout off
set trimout on
set trimspool on
spool /home/test.txt
select empno || '|' || ename || '|' || job || '|' ||
mgr || '|' || hiredate || '|' || sal || '|' ||
comm || '|' || deptno from emp;
spool off
exit;
EOF
spool常用的设置:
set head off:输出域标题,缺省为on
set linesize 20000:linesize可以设置的大点,防止一行长度不够
set echo off:显示sqlplus中的每个sql命令本身,缺省为on
set feedback off:回显本次sql命令处理的记录条数,缺省为on
set pagesize 0:输出每页行数,缺省为24,为了避免分页,可设定为0
set termout off:显示脚本中的命令的执行结果,缺省为on
set trimout on:去除标准输出每行的拖尾空格,缺省为off
set trimspool on:去除重定向(spool)输出每行的拖尾空格,缺省为off