@duke0001
My feeling is don't delete the log file, just null it.
Code:
if [ -f $LOGFILE ]; then
> $LOGFILE
fi
The error message is flagged as line 41. There are not 41 lines in the script posted.
Is this the complete script?
Is this the right script?
Is there some displaced spurious code way down beyond what you think is the last line of the script I wonder????
I have found. This part is working. It do remove log file that was touched by me.
The problem is it cannot create a new log file to apend execution information.
Code:
if [ -f $LOGFILE ]; then
> $LOGFILE
fi
---------- Post updated at 04:44 PM ---------- Previous update was at 04:41 PM ----------
OK. here is the whole script code. remember this script do work on other two or three Linux servers.
Code:
#!/bin/ksh
# This shell performs a full clean audit files of each DB that is running
export PATH=/opt/oracle/product/11.2.0.2/dbhome_1/bin:/usr/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/oracle/bin
export ORACLE_PATH=/opt/oracle/scripts/sql:$ORACLE_HOME/rdbms/admin
export SCRIPTSDIR=/opt/oracle/scripts
export SCRIPTSLOG=/opt/oracle/logs
export LOGFILE=$SCRIPTSLOG/audit_clean.log
export ORACLE_BASE=/opt/oracle
export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P15
export ORATAB=/etc/oratab
export ORACLE_HOME=/opt/oracle/product/11.2.0.2/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH:/usr/contrib/bin
EMAILFILE=`cat $SCRIPTSDIR/emaildba.lst`
if [ -f $LOGFILE ]; then
rm $LOGFILE
fi
set -A emaillist $EMAILFILE
orasids=`cat /etc/oratab | grep '11.2.0.2/dbhome_1:Y$' | awk -F: '{print $1}' -`
for sid in ${orasids[*]}
do
export ORACLE_SID=$sid
export SYSPW=`cat /opt/oracle/scripts/cron/.sys_pw_$ORACLE_SID`
echo "----------------------------------------------" >> $LOGFILE
echo "Job: Clean Audit files" >> $LOGFILE
echo "Database: $ORACLE_SID \t \t \t \t Hostname: `hostname`" >> $LOGFILE
echo "----------------------------------------------" >> $LOGFILE
sqlplus -s << EOF
/ as sysdba
@/opt/oracle/scripts/sql/clean_audit.sql
exit
EOF
done
for rec in ${emaillist[*]}
do
mailx -s "Full audit files cleaned on `hostname`" $rec < $LOGFILE
done
exit 0
Last edited by methyl; 06-28-2012 at 06:05 PM..
Reason: please use code tags.
There is a strong hint that this is an oracle process.
Are you logged in as user oracle?
Line 42 (numbered from zero) seems to be the mailx line. Strangely the "same" error message has been displaced by one line.
Please visually check the script for funny characters. This sed just displays normal end-of-line as a dollar sign and makes non-printable characters visible. It does not change the file.
I have modified script as this. It has not pumped back any error message. The log file has been created in log directory. Only is the email part didn't work. I will look at and come back to keep you posted.
Code:
#!/bin/ksh
# This shell performs a full clean audit files of each DB that is running
export PATH=/opt/oracle/product/11.2.0.2/dbhome_1/bin:/usr/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/oracle/bin
export ORACLE_PATH=/opt/oracle/scripts/sql:$ORACLE_HOME/rdbms/admin
export SCRIPTSDIR=/opt/oracle/scripts
export SCRIPTSLOG=/opt/oracle/logs
export LOGFILE=$SCRIPTSLOG/audit_clean.log
export ORACLE_BASE=/opt/oracle
export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P15
export ORATAB=/etc/oratab
export ORACLE_HOME=/opt/oracle/product/11.2.0.2/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH:/usr/contrib/bin
EMAILFILE=`cat $SCRIPTSDIR/emaildba.lst`
set -A emaillist $EMAILFILE
orasids=`cat /etc/oratab | grep '11.2.0.2/dbhome_1:Y$' | awk -F: '{print $1}' -`
echo "Job: Removing audit file on `hostname` at `date`" > $LOGFILE
echo " " >> $LOGFILE
echo "-----------------------------------------------------------------" >> $LOGFILE
for sid in ${orasids[*]}
do
export ORACLE_SID=$sid
export SYSPW=`cat /opt/oracle/scripts/cron/.sys_pw_$ORACLE_SID`
echo "----------------------------------------------" >> $LOGFILE
echo "Database: $sid Hostname: `hostname`" >> $LOGFILE
echo "----------------------------------------------" >> $LOGFILE
sqlplus -s
/ as sysdba
@/opt/oracle/scripts/sql/clean_audit.sql
done
exit
for rec in ${emaillist[*]}
do
mailx -s "Full audit files cleaned on `hostname`" $rec < $LOGFILE
done
exit 0
Last edited by methyl; 06-28-2012 at 06:28 PM..
Reason: please use code tags. It is so important.
Hi, The below commands works fine on serverB
. /etc/profile;
cd /export/home/user2/utils/plugin/
./runme.shHowever, when i run the same commands from serverA it fails
$ ssh -q user2@serverB ". /etc/profile; cd /export/home/user2/utils/plugin; ./runme.sh"Output Error:
Please find the below... (8 Replies)
Hi,
While running tcpdump command on my Fedora 16 machine I am get shared library issue.
# tcpdump
tcpdump: error while loading shared libraries: libcrypto.so.6: cannot open shared object file: No such file or directory
# which tcpdump
/usr/software/sbin/tcpdump
I have tried... (3 Replies)
Hi Guys,
I am facing this Error
bash-2.03$ ./curl -V
ld.so.1: curl: fatal: libldap.so.5: open failed: No such file or directory
Killed
bash-2.03$
while executing
./curl -V in /opt/sfw/bin directory.
I am using Sun Solaris 10.
which package upgrage can give me this missing... (9 Replies)
Hello folks!
I am new to Shell and awk scripting.
This is my shell script that receives a string as an input from the user from the stdin.
#!bin/sh
printf "Enter your query\n"
read query
cmd=`echo $query | cut -f 1 -d " "`
input_file=`echo $query | cut -f 2 -d " "`
printf $input_file... (10 Replies)
Hi,
I am running this command through a shell script and getting the error mentioned in the subject line:
testing.awk -f x.txt TNAME
My testing.awk file contains something like
++++++++++++++++++
#!/usr/bin/awk -f
BEGIN{
TAB_NAME="INSERT_ONE_" ARGV ;
}
if ( $1=="JAM_ONE" &&... (1 Reply)
We are trying to install third party software on this unix server...
Here is the error message we are getting...
error while loading shared libraries: libodbc.so.1: cannot open shared object file: No such file or directory
It seems like odbc driver is not installed...
>rpm -q unixODBC... (1 Reply)
Hi Friends
I have a compiler(Sun Forte,I believe) running in my Solaris 9 box.
since y'day my development team is finding this error when they compile:
ld.so.1: expr: fatal: libgmp.so.3: open failed: No such file or directory
I ran a search for this file and found it in one of my file... (2 Replies)