1828490 Members
2713 Online
109978 Solutions
New Discussion

Script help

 
SOLVED
Go to solution
allanm77
Frequent Advisor

Script help

Hi All,

 

I have the following script to search for a particular text within log files. 

 

It searches within current logs and not older logs and I want it to search older logs as well.

 


/Logs/INST-B-2_server-1_1234  <== Current Logs
/Logs/INST-B-2_server-1_1234.20120220153136 <=== Older logs

 

cat file
server-1.corp.foobar.com:INST-B-2:ENV1:1234
server-2.corp.foobar.com:INST-A-2:ENV1:2334
server-2.corp.foobar.com:INST-A-3:ENV1:4556

 

#!/bin/sh

FINDST=$1
INSTANCE=$2
SERVERFILE=file
OLDLIMITER=${LIMITER}
LIMITER=":"
while read SERVER SERVICE ENVN PORT
do
    [ $(echo ${SERVICE}) != ${INSTANCE} ] && continue
    ssh -f ${HOST} "grep -n -s -H -A1 ${FINDST} /Logs/${SERVICE}_${SERVER%%.corp.foobar.com}_${PORT}"
done < ${SERVERFILE}
LIMITER=${OLDLIMITER}
exit 0

 Thanks,

Allan.

1 REPLY 1
Dennis Handly
Acclaimed Contributor
Solution

Re: Script help

>LIMITER=":"

 

Did you intend this to be the shell variable IFS?

 

>/Logs/INST-B-2_server-1_1234.20120220153136 <=== Older logs

 

Just add a "*":

ssh -f ${HOST} "grep -n -s -H -A1 ${FINDST} /Logs/${SERVICE}_${SERVER%%.corp.foobar.com}_${PORT}*"