The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > Shell Programming and Scripting
Google UNIX.COM


Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts here.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
search excat string in another string (grep "fails") bora99 UNIX for Dummies Questions & Answers 0 06-05-2008 03:41 AM
Grep string and next line karthikn7974 Shell Programming and Scripting 7 05-23-2008 02:06 AM
problem with grep on search string in a txt file over multiple files m00 UNIX for Dummies Questions & Answers 2 05-18-2008 11:21 AM
ps -ef |grep <string> soliberus SUN Solaris 9 12-07-2007 12:31 AM
sed, grep, awk, regex -- extracting a matched substring from a file/string ropers Shell Programming and Scripting 2 05-23-2006 10:56 AM

Reply
 
Submit Tools LinkBack Thread Tools Search this Thread Display Modes
  #1  
Old 11-22-2007
Registered User
 

Join Date: Mar 2007
Posts: 4
how to grep for string in log file

Hi

Im running a backup scriptwhich creates a log file

how do grep for the string in the logfile so the backup script can continue to next stage otherwise it will exit

i.e

12:32:53 INF - Client completed sending data for backup

12:33:02 INF - Backup by root on client lonbob04bak using policy Business_Objects_User, sched bus_obj_user: the requested operation was successfully completed.

so want to have something like:


if

[logfile | grep "the requested operation was successfully completed"]

then continue
Reply With Quote
Forum Sponsor
  #2  
Old 11-22-2007
Cameron's Avatar
Registered User
 

Join Date: Nov 2001
Location: Brisbane, Australia
Posts: 490
Code:
if [ `grep "the requested operation was successfully completed" ${LOGFILE}` ]
then
  ... all ok ...
else
  ... gone south ...
fi
Off the cuff, so please test yourself. (just to be sure)

Last edited by Cameron; 11-22-2007 at 06:13 AM. Reason: missed a '`'
Reply With Quote
  #3  
Old 11-22-2007
sandy0077's Avatar
Registered User
 

Join Date: Aug 2007
Location: UK
Posts: 10
or maybe... u could

grep "the requested operation was successfully completed" logfile > /dev/null
if [ $? -eq 0 ]
then
continue
else
exit
fi

-
Reply With Quote
  #4  
Old 11-22-2007
Registered User
 

Join Date: Sep 2007
Posts: 21
script

#!/bin/ksh

grep "the requested operation was successfully completed" $1 >/dev/null
RESULT =`echo $?`
if [ $RESULT == 0 ]; then
echo "Continue"
else
echo "Stop"
fi

Assume this script file name is sample.sh. If your log file name is logfile, then in the command prompt give like this

$sample.sh logfile
Reply With Quote
  #5  
Old 11-22-2007
grial's Avatar
El UNIX es como un toro
 

Join Date: Jun 2006
Location: Madrid (Spain)
Posts: 531
There are several approaches depending on:
- the backup script runs outside your script.
- the backup script finishes when that line is shown inside the log.
- the backup log only has (or will have) one line containing the text.
- others...
One possibility in this case:
Code:
#!/bin/ksh

( tail -f backup.log | while read l; do
   echo ".\c"
   echo $l | grep "the requested operation was successfully completed" > /dev/null 2>&1
   (( ! $? )) && exit 0
done ) && echo "string found, continue..."

# whatever to execute after the match, down here...
At least if you want to check the log file "on the fly"...

Regards.

Last edited by grial; 11-22-2007 at 09:21 AM. Reason: comment added
Reply With Quote
Google The UNIX and Linux Forums
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes




All times are GMT -7. The time now is 07:21 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008. All Rights Reserved.Ad Management by RedTyger Visit The Complex Event Processing Blog

Content Relevant URLs by vBSEO 3.2.0