Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Beyond a basic Oracle EXP/IMP shell script: Error Handling & Exit Status?
Comment below ...
-----Original Message-----
From: Marquez, Chris [mailto:cmarquez_at_collegeboard.org]
Sent: Thursday, August 18, 2005 3:47 PM
To: Reidy, Ron; oracle-l_at_freelists.org
Subject: RE: Beyond a basic Oracle EXP/IMP shell script: Error Handling & Exit Status?
Ron,
Thanks I appreciate the comments.
I have not looked into 'typeset' command yet (maybe if I do it will answer my next question?
I used a simple EXP shell script I have and forced the 3 possible outcomes;
Export terminated successfully with warnings. Export terminated successfully without warnings. EXP-00000: Export terminated unsuccessfully
"Export terminated..." should produce "0"
and
"Export terminated unsuccessfully" should produce "1"
however " $? " is always "0" for each?
This snip shell code
echo 'EXP ERROR CODE ' >> $log_file 2>&1
[Reidy, Ronald] The above will reset $? to 0 (assuming success). Change your code to something like this:
typeset -i rc=-1
exp <<eof >>$log 2>&1
...
exit
eof
rc=$?
if [[ $rc -eq 0 ]]; then
## egrep for the "unsuccessfull" error message
if [[ `/bin/egrep -c "your_text_here" $log` -ge 1 ]]; then
# handle the warning
fi
else
# handle the non-0 error messages
fi
echo $? >> $log_file
Either "EXP-00000: Export terminated unsuccessfully" != "Export terminated unsuccessfully" or EXP is never populating " $? " correctly?
Reference;
Doc ID: Note:281725.1 Subject: Database Utilities - Export and Import Exit Codes (Errorlevel)
Chris Marquez
Oracle DBA
-----Original Message-----
From: Reidy, Ron [ <mailto:Ron.Reidy_at_arraybiopharma.com> mailto:Ron.Reidy_at_arraybiopharma.com]
Sent: Thu 8/18/2005 4:19 PM
To: Marquez, Chris; oracle-l_at_freelists.org
Subject: RE: Beyond a basic Oracle EXP/IMP shell script: Error Handling & Exit Status?
Comments below ...
-----Original Message-----
From: oracle-l-bounce_at_freelists.org [ <mailto:oracle-l-bounce_at_freelists.org> mailto:oracle-l-bounce_at_freelists.org]On Behalf Of Marquez, Chris
Sent: Thursday, August 18, 2005 2:14 PM
To: oracle-l_at_freelists.org
Subject: Beyond a basic Oracle EXP/IMP shell script: Error Handling & Exit Status?
All,
OK, OK, OK...my task (specifically).
1.) I need to know (or test) if my script completes successfully and assign a value.
[Reidy, Ronald] Use the 'typeset' command to declare a variable (typeset -i rc). At the end oif the exp/imp command assign the value of the return code (rc=$?). Test it from there.
2.) I need to know if/where my script dies/aborts/terminates in the middle and assigning a value....rolling variable?
"if step A complete then v_stats=...if step B complete then v_stats=..."
3.) I need to get a positive or negative return code from Oracle EXP/IMP utility and pass it to shell script (#2 above).
[Reidy, Ronald] exp/imp return positive codes only. 0 = OK, anything else indicates a warning or failure
I'm all ears...and ready for code samples-scripts, docs, links and references.
Thanks,
Chris Marquez
Oracle DBA
This electronic message transmission is a PRIVATE communication which contains information which may be confidential or privileged. The information is intended to be for the use of the individual or entity named above. If you are not the intended recipient, please be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. Please notify the sender of the delivery error by replying to this message, or notify us by telephone (877-633-2436, ext. 0), and then delete it from your system.
This electronic message transmission is a PRIVATE communication which contains information which may be confidential or privileged. The information is intended to be for the use of the individual or entity named above. If you are not the intended recipient, please be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. Please notify the sender of the delivery error by replying to this message, or notify us by telephone (877-633-2436, ext. 0), and then delete it from your system.
-- http://www.freelists.org/webpage/oracle-lReceived on Thu Aug 18 2005 - 17:08:29 CDT
![]() |
![]() |