SQL*PLUS Spool Output


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting SQL*PLUS Spool Output
# 1  
Old 08-11-2011
SQL*PLUS Spool Output

Hi,
Im writing a script to run a bit of sql(via sqlplus) that pulls back some data and spools it to a file, I want the spool file to only display the data, with no sql command at the top and no reports at the bottom ie(# of records recieved).

I am currently doing it via a grep command but ideally I would like to just turn this reporting off. I have tried to use set echo off, set termout off, set feedback off with no luck.

I'm pretty new to shell so could be a rookie mistake.

CODE:


Code:
#!/bin/bash

#Checks if dir exists and creates it if not

datedDir=`date +'%Y%m%d'`
mkdir -p $datedDir

#Sets the Log file name to passed in variable
logFile=${datedDir}/$1

set echo off
set verify off
set termout off
set feedback off

sqlplus -s DB/USER@PW << ENDOFSQL

set pagesize 0

spool $logFile

select * from all

spool off

ENDOFSQL

timeStamp=`date +'%Y%m%d%H%M%S'`


grep -v '[a-zA-Z^$]' ${logFile}.lst > ${logFile}_$timeStamp.dat

# removes the spooled file
rm ${logFile}.lst

touch ${logFile}_$timeStamp.rdy

exit;


My out put is :

Code:
SQL> select ........

data

### rows selected

I would just like the data

Last edited by pludi; 08-11-2011 at 06:07 PM..
# 2  
Old 08-11-2011
First, the 'sets' need to be within the sql plus call:

Code:
sqlplus -s DB/USER@PW << ENDOFSQL
set echo off
 set verify off
 set termout off
 set feedback off
 
set pagesize 0
spool $logFile
select * from all
spool off

ENDOFSQL

Second, I set:

Code:
set echo off
set show off
set term on
set heading off
set feedback off
set linesize 200
set pages 0

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Append date to sql*plus spool (log) file in shell script

SQL*Plus version : 11.2.0.4 OS : Oracle Linux 6.5 SQL*Plus is a client application to connect to oracle database. The log file for this tool is generated via spool command as shown below. I am trying to append date ( $dateString ) to spool file as shown below. $ cat test2.sh #!/bin/bash... (4 Replies)
Discussion started by: kraljic
4 Replies

2. Shell Programming and Scripting

Storing multiple sql queries output into variable by running sql command only once

Hi All, I want to run multiple sql queries and store the data in variable but i want to use sql command only once. Is there a way without running sql command twice and storing.Please advise. Eg : Select 'Query 1 output' from dual; Select 'Query 2 output' from dual; I want to... (3 Replies)
Discussion started by: Rokkesh
3 Replies

3. Programming

create a spool file based on values passed from korn shell to sql script

this is my issue. 4 parameters are passed from korn shell to sql script. parameter_1= varchar2 datatype or no value entered my user. parameter_2= number datatype or no value entered my user. parameter_3= number datatype or no value entered my user. parameter_4= number datatype or no... (5 Replies)
Discussion started by: megha2525
5 Replies

4. Shell Programming and Scripting

UNIX/SQL loop to spool files!!

I want to spool files from unix using a sql script that would take values from another sql query within the KSH script.. unix loop select order_date from date_tbl for each order_Date i need to call this spool script with the value sqlplus scott/tiger@order_db @/ordspool/order_date.sql... (2 Replies)
Discussion started by: vr23
2 Replies

5. Shell Programming and Scripting

Passing filename dynamically in SPOOL of SQL*PLUS in shell script

Hi all, I am executing shell script in which I am using SQLLDR In this SQLLDR I am passing text file having PL/SQL script. This script will produce some formated output, this output I have to spool in another text file. Currently I have given this in script file as following Spool... (2 Replies)
Discussion started by: shekharjchandra
2 Replies

6. Shell Programming and Scripting

Help supressing spool output from screen when calling sqlplus from script

I'm calling an embedded sql from my shell script file. This sql does simple task of spooling out the contents of the table (see below my sample code) into a spool file that I specify. So far so good, but the problem is that the output is also displayed on screen which I do NOT want. How can I... (3 Replies)
Discussion started by: MxC
3 Replies

7. Shell Programming and Scripting

manipulate & format the output of spool command

Hi All, I am spooling the data some sql queries into a single file but wanted to know how to format the data of the file generated by spool. #!/bin/sh unset -f USAGE USAGE () { clear echo "############################USAGE#######################\n" echo "Incorrect number of... (2 Replies)
Discussion started by: ss_ss
2 Replies

8. Programming

Single sql query to spool to multiple files

Is there anyway to spool my select statement into spool files of max 10000 records each? eg I have a select statement that will return 45000 records. A normal spool command will output the 45000 into just one spool file. How can I make sqlplus do this? 00001 - 10000 records --- spool... (3 Replies)
Discussion started by: Leion
3 Replies

9. Shell Programming and Scripting

To spool output from a database query

Hi all, I would want to spool file for a database query, however by using crontab, the file is not spooled. Below shows my script: ORACLE_HOME="/u01/oraprod/perpdb/10.1.0/db_1" OUTFILE="/tmp/invalid.out" FILE="$HOME/admin/scripts" $ORACLE_HOME/bin/sqlplus -s "/as sysdba"... (0 Replies)
Discussion started by: *Jess*
0 Replies

10. Windows & DOS: Issues & Discussions

SQL Spool equivalent command in DOS

This question maybe in the wrong category but I'm posting here due to urgency. In DOS is there a command to perform a similar function to spool command in SQL or Script command in UNIX? I want to print all command line output to a file but I don't want to use the echo command for each line. ... (2 Replies)
Discussion started by: stevefox
2 Replies
Login or Register to Ask a Question