I am using a shell script to 'spool' a query. Here is a toy version:
#!/bin/sh
sqlplus -s userid/pass@SID << EOF
set echo off
set term off
set trims on
set pages 0
set feedback off
set linesize 1000
set colsep "|"
SPOOL $2
SELECT 'HEADER1|HEADER2|HEADER3' FROM DUAL
UNION ALL
SELECT
COLUMN1||'|'||
COLUMN2||'|'||
COLUMN3
FROM $1;
SPOOL OFF
EXIT 0;
EOF
And submitting using
nohup sh sqlquery.sh intable outtable > log &
The query runs fine and is formatted exactly how I would like, but the rows returned by the query are written to both the spool file and the log... I thought 'set echo off' would take care of this, but I am obviously missing something.
Any ideas?