HPE Community read-only access December 15, 2018
This is a maintenance upgrade. You will be able to read articles and posts, but not post or reply.
Hours:
Dec 15, 4:00 am to 10:00 am UTC
Dec 14, 10:00 pm CST to Dec 15, 4:00 am CST
Dec 14, 8:00 pm PST to Dec 15, 2:00 am PST
System Administration
cancel
Showing results for 
Search instead for 
Did you mean: 

script for the error logs from multiple directories

 
SOLVED
Go to solution
Grayh
Trusted Contributor

script for the error logs from multiple directories

I have the following directories under the dir /var/MS/YER

ROW21_M2_HP1_20080809.163321_FTS_101/
ROW23_M2_HP1_20080809.164402_FTS_101/
ROW24_M2_HP1_20080809.165257_FTS_101/
ROW28_NO_HP1_20080809.171014_FTS_101/
ROW02_NO_HP1_20080809.171249_FTS_101/
ROW03_NO_HP1_20080809.172207_FTS_101/
ROW05_NO_HP1_20080809.173117_FTS_101/
ROW06_NO_HP1_20080809.173942_FTS_101/
ROW09_NO_HP1_20080809.174756_FTS_101/
ROW12_NO_HP1_20080809.175616_FTS_101/
ROW15_NO_HP1_20080809.180438_FTS_101/

I have a .log file in each of the directories above..

Is there a way or script by which I can grep for the string "failed" & the no. of failures(count) from all of the logs in the directories.

plz help
4 REPLIES
Tingli
Esteemed Contributor
Solution

Re: script for the error logs from multiple directories

grep failed /var/MS/YER/ROW*101/*.log | wc -l
James R. Ferguson
Acclaimed Contributor

Re: script for the error logs from multiple directories

Hi:

If you want the actual matching lines along with a count of the lines matched at the end, you could use:

# cat ./filter
#!/usr/bin/sh
LOG=/tmp/$(basename $0).$$
trap 'rm ${LOG}' EXIT
grep failed /var/MS/YER/ROW*101/*.log > ${LOG}
cat ${LOG}
wc -l < ${LOG}
exit

...run as:

# ./filter

By the way, please evaulate the answers you received to your previous post, too :-)

http://forums.itrc.hp.com/service/forums/questionanswer.do?threadId=1324828

Regards!

...JRF...
Grayh
Trusted Contributor

Re: script for the error logs from multiple directories

Thanks JRF,

I am about to run this script now... I have a small doubt...

what does the following line do in the script

trap 'rm ${LOG}' EXIT
James R. Ferguson
Acclaimed Contributor

Re: script for the error logs from multiple directories

Hi (again):

> what does the following line do in the script

trap 'rm ${LOG}' EXIT

This simply removes the file named by ${LOG} when the script exits. It's a convenient way to perform simple cleanup code, automatically, without explicitly calling a function or in-lining code, from any point in your script, when it exits.

Regards!

...JRF...