一,spool配置项
- set colsep ' |' //域输出分隔符
- set echo off //显示start启动的脚本中的每个sql命令,缺省为on
- set feedback off //回显本次sql命令处理的记录条数,缺省为on
- set heading off //输出域标题,缺省为on
- set pagesize 0 //输出每页行数,缺省为24,为了避免分页,可设定为0。
- set termout off //显示脚本中的命令的执行结果,缺省为on
- set trimout on //去除标准输出每行的拖尾空格,缺省为off
- set trimspool on //去除重定向(spool)输出每行的拖尾空格,缺省为off
- set linesize 3000 //输出每行大小,尽量设置大点,避免被截断
二,脚本制作
2.1,配置脚本
我们在/oracle/app/oracle目录下面创建一个spool_txt.sh脚本,然后配置脚本内容
2.2,运行脚本
bash
sqlplus -s / as sysdba <<EOF
set colsep '|'
set trimspool on
set linesize 3000
set feedback off
set pagesize 0
set heading off
set termout off
set trimout on
spool promt.txt
select * from dba_data_files;
spool off
EOF
我们直接在oracle下运行该脚本,然后查看输出文件,可以看到数据按照我们的要求陈列如下: