Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Unix Q: ksh scripting
It works for me. Using the following code:
#!/bin/ksh
#set -x
sqlplus / <<EOF | tail -1
select sysdate from dual;
exit
EOF
I get:
$ test.sh
JServer Release 8.1.7.0.0 - Production
$
With -x flag set:
$ test.sh
+ tail -1 + sqlplus nri/nri + 0< /tmp/sh27884.2
As previously mentioned, to get the last row of the actual output you need to use the '-s' flag, move the pipe to the command line and get rid of the blank lines:
#!/bin/ksh
set -x
sqlplus -s / <<EOF | grep -v ^$ | sed -n '$p'
select sysdate from dual;
exit
EOF
$ test.sh
+ sqlplus -s / + sed -n $p + grep -v ^$ + 0< /tmp/sh28234.2
or - without the -x flag (which I presume is the desired result):
$ test.sh
24.07.2002
$
Chris
-----Original Message-----
Sent: 24 July 2002 12:18
To: Multiple recipients of list ORACLE-L
Hmm, this still doesn't seem to work.
-----Original Message-----
Sent: 24 July 2002 10:38
To: Multiple recipients of list ORACLE-L
Oops, missed a quotation mark in earlier posting. Should have read:
sqlplus -s / << EOF | grep -v ^$ | sed -n '$p'
select sysdate from dual;
exit
EOF
Regards
Chris
-----Original Message-----
Sent: 24 July 2002 09:15
To: 'ORACLE-L_at_fatcity.com'
Ross,
You are hitting a couple of problems here:
1 - the 'tail' command needs to be on your first line (sqlplus / <<EOF | tail -1)
2. However, I suspect this will not give you what you want as sqlplus prints a blank line at the end. Try the following:
sqlplus -s / << EOF | grep -v ^$ | sed -n '$p
select sysdate from dual;
exit
EOF
Grep will remove blank lines - sed will print last line. I'm sure there are
many more ways of doing this.
HTH, Chris
-----Original Message-----
Sent: 24 July 2002 05:53
To: Multiple recipients of list ORACLE-L
Hi all,
Can any of our Unix gurus here transform my script below to work properly?
The intention is to print the last line of the sqlplus output.
With set -x, it appears anything after the last EOF is ignored. Why?
Thanks.
Ross
#!/bin/ksh
#set -x
sqlplus / <<EOF
select sysdate from dual;
exit
EOF | tail -1
--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: Ross Collado
INET: Ross.Collado_at_techpac.com
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). Received on Wed Jul 24 2002 - 09:03:24 CDT
![]() |
![]() |