getdpg
January 23, 2006, 5:12am
1
Dear All,
I am sorry i am posting again my question . Please help me rather than getting angry at me ...
I want to find out number of fails from different files ..
The files are generated in diffenent directories .The directories are created date wise .
Example :
/users/testsuite/appl/2006-01-20/
|------devel/
|-----via1/run.log
|-----via2/run.log
The file run.log contains fails . The fails record is started with ! .
I need output like this :
version :devel
via1 - 10 fails
via2 - 15 fails
version :9
sun : 5 fails
linux - 18 fails
pls help me to write this script
thanks in advance
mona
January 23, 2006, 5:35am
2
Paste sample of you input file.
getdpg
January 23, 2006, 6:09am
3
2006-01-23 05:48:47 #### Testsuite started
2006-01-23 05:48:49 (SiCat8_for_YRS: 1/526) Running daily/DB/CmdLn/CmdLn1.exp ...
2006-01-23 05:49:39 (SiCat8_for_YRS: 2/526) Running daily/DB/CmdLn/CmdLn2.exp ...
2006-01-23 05:49:42 (SiCat8_for_YRS: 3/526) Running daily/DB/CmdLn/CmdLn3.exp ...
2006-01-23 05:49:45 (SiCat8_for_YRS: 4/526) Running daily/DB/CmdLn/cliCS.exp ...
2006-01-23 05:49:47 (SiCat8_for_YRS: 5/526) Running daily/DB/CmdLn/comma.exp ...
2006-01-23 05:49:50 (SiCat8_for_YRS: 6/526) Running daily/DB/CmdLn/no_license.exp ...
2006-01-23 05:49:53 (SiCat8_for_YRS: 7/526) Running daily/DB/CmdLn/parfile.exp ...
2006-01-23 05:49:56 (SiCat8_for_YRS: 8/526) Running daily/DB/CmdLn/range.exp ...
2006-01-23 05:49:59 (SiCat8_for_YRS: 9/526) Running daily/DB/Filter/Filter1.exp ...
2006-01-23 05:50:02 (SiCat8_for_YRS: 10/526) Running daily/DB/SFM/SFMDoublePointHole.exp ...
2006-01-23 05:50:05 (SiCat8_for_YRS: 11/526) Running daily/DB/SFM/SFMDoublePointHole2.exp ...
2006-01-23 05:50:08 (SiCat8_for_YRS: 12/526) Running daily/DB/SFM/SFMDoublePointHull.exp ...
2006-01-23 05:50:11 (SiCat8_for_YRS: 13/526) Running daily/DB/SFM/SFMDoublePointHull2.exp ...
2006-01-23 05:50:15 (SiCat8_for_YRS: 14/526) Running daily/DB/SFM/SFMSelfIntersection.exp ...
2006-01-23 05:50:18 (SiCat8_for_YRS: 15/526) Running daily/DB/SFM/SFMSpeedAllAngleFlat.exp ...
2006-01-23 05:50:45 (SiCat8_for_YRS: 16/526) Running daily/DB/SFM/SFMSpeedManhatten.exp ...
2006-01-23 05:50:55 (SiCat8_for_YRS: 17/526) Running daily/DB/SFM/SFMThread.exp ...
2006-01-23 05:51:25 (SiCat8_for_YRS: 18/526) Running daily/DB/SFM/scanHoleConnect.exp ...
! 2006-01-23 05:51:28 (SiCat8_for_YRS) daily/DB/SFM/scanHoleConnect.exp: 2 fail(s).
2006-01-23 05:51:28 (SiCat8_for_YRS: 19/526) Running daily/DB/TechDB/load.exp ...
2006-01-23 05:51:31 (SiCat8_for_YRS: 20/526) Running daily/DB/TechDB/query.exp ...
2006-01-23 05:51:34 (SiCat8_for_YRS: 21/526) Running daily/DB/TechDB/remove.exp ...
2006-01-23 05:51:37 (SiCat8_for_YRS: 22/526) Running daily/DB/TechDB/save.exp ...
2006-01-23 05:51:40 (SiCat8_for_YRS: 23/526) Running daily/DB/area/area0.exp ...
2006-01-23 05:51:42 (SiCat8_for_YRS: 24/526) Running daily/DB/area/area1.exp ...
2006-01-23 05:51:45 (SiCat8_for_YRS: 25/526) Running daily/DB/area/area2.exp ...
2006-01-23 05:52:41 (SiCat8_for_YRS: 26/526) Running daily/DB/area/area3.exp ...
2006-01-23 05:53:14 (SiCat8_for_YRS: 27/526) Running daily/DB/area/area_text.exp ...
2006-01-23 05:53:18 (SiCat8_for_YRS: 28/526) Running daily/DB/attach/attach_density-insane.exp ...
2006-01-23 05:53:46 (SiCat8_for_YRS: 29/526) Running daily/DB/attach/attach_density.exp ...
2006-01-23 05:54:00 (SiCat8_for_YRS: 30/526) Running daily/DB/attach/attach_property-insane.exp ...
! 2006-01-23 05:54:04 (SiCat8_for_YRS) daily/DB/attach/attach_property-insane.exp: 4 fail(s).
2006-01-23 05:54:04 (SiCat8_for_YRS: 31/526) Running daily/DB/attach/attach_property.exp ...
! 2006-01-23 05:54:06 (SiCat8_for_YRS) daily/DB/attach/attach_property.exp: 2 fail(s).
2006-01-23 05:54:06 (SiCat8_for_YRS: 32/526) Running daily/DB/attach/attach_redundancy-insane.exp ...
2006-01-23 05:54:35 (SiCat8_for_YRS: 33/526) Running daily/DB/attach/attach_redundancy.exp ...
2006-01-23 05:55:16 (SiCat8_for_YRS: 34/526) Running daily/DB/bool/InternalMultiCrossing/hole_1.exp ...
vino
January 23, 2006, 6:28am
4
Does devel appear in your log file at all ?
See this
[/tmp]$ cat failure.ksh
#! /bin/ksh
#
TOTAL=0
FAIL=0
while read line
do
if [[ "$line" == *!* ]] ; then
FAIL=$(echo "$line" | sed -n -e 's_!.*: \([1-9][0-9]*\) fail.*_\1_p')
TOTAL=$(($TOTAL+$FAIL))
fi ;
done < failure.log
echo "$TOTAL fails"
[/tmp]$ ./failure.ksh
8 fails
[/tmp]$
mona
January 23, 2006, 6:44am
5
Try this
#!/bin/ksh
num=`sed -n -e 's/^!.*$/&/p' xyz | sed 's/.*: \([0-9]*\) fail(s)./\1/'`
TOTAL=0
for i in $num
do
(( TOTAL = TOTAL + i ))
done
print "Total number of failures is $TOTAL"
/export/home/test/mons>xyz.sh
Total number of failures is 8
mona
January 23, 2006, 6:52am
6
This will list you the number of failures in all the run.log files in all the directories from the current path
#!/bin/ksh
for j in `find . -name "run.log" -print`
do
TOTAL=0
num=`sed -n -e 's/^!.*$/&/p' $j | sed 's/.*: \([0-9]*\) fail(s)./\1/'`
for i in $num
do
(( TOTAL = TOTAL + i ))
done
print "Total number of failures in $j is $TOTAL"
done
/export/home/test/mons>xyz.sh
Total number of failures in ./UnixForum/run.log is 8
Total number of failures in ./run.log is 16
getdpg
January 23, 2006, 8:04am
7
Thanks for ur reply but iam getting error
I am getting error Total not found ..
Devel is directory .. inside that via1 and via2 is another directores which contains run.log ..
pls help
getdpg
January 23, 2006, 8:35am
8
when i am doing
grep ! run.log |wc .. I am getting total number of failuers
but i have to go inside the directory and run this command ..
my directory structure is like this
/users/testsuite/application/
inside application datewise directories r creates
2006-01-02
2006-01-03
2006-01-04
i want to generate everyday report of failuers
inside 2006-01-02 there is devel ,version8 ,version 9 .. so on directories ..
inside each directory of devel , vesrion8 sub directory of via1 , linux, sun directories
and each directory contain run.log ..
i need output
2006-01-02/devel/via1/ failuers 10
2006-01-02/devel/via2/ faiuers 15
2006-01-02/version9/via1 failuers 13
.....
so on ....
for me number of failuers records .. total number of fails ..
wc of lines ...
i will run my file
/users/testsuite/appl/sh test.sh <date as input>
waiting for reply
getdpg
January 23, 2006, 9:12am
9
hello
i am getting file but getting output failuer is zero
script i worte is as follwo
for i in *;do echo -n "$i "; find $i -name "run.log" -print |
grep ! |wc ;done |less
pls help
getdpg
January 23, 2006, 10:35am
10
pls help me anyone is there
aigles
January 23, 2006, 10:48am
11
Try this :
for i in *
do
echo -n "$i "
find $i -name "run.log" -exec grep ! {} \; | wc -l
done | less
Jean-Pierre
getdpg
January 24, 2006, 6:07am
12
Thanks to everybody for great help
thanks a lot