Wednesday, 21 May 2014

Pattern Extraction + perl

Extracting last row from certain pattern in a file , that should be arranged , four in a row

19052014_1559 Java_Version Sun Microsystems Inc. 1.4.2_11
19052014_1559 HeapSizeMax 1580793856
19052014_1559 HeapFreeCurrent 1367237048
19052014_1559 HeapSizeCurrent 1580793856
19052014_1559 HeapFreePercent 86.0
19052014_1607 Java_Version Sun Microsystems Inc. 1.4.2_11
19052014_1607 HeapSizeMax 1580793856
19052014_1607 HeapFreeCurrent 1357926040
19052014_1607 HeapSizeCurrent 1580793856
19052014_1607 HeapFreePercent 85.0
19052014_1615 Java_Version Sun Microsystems Inc. 1.4.2_11
19052014_1615 HeapSizeMax 1580793856
19052014_1615 HeapFreeCurrent 1352909344
19052014_1615 HeapSizeCurrent 1580793856

---------------------------------------------------------------------------------------------------------------------------------------

Output:

1580793856, 1367237048, 1580793856, 86.0

----------------------
1580793856, 1357926040, 1580793856, 85.0

----------------------
1580793856, 1352909344, 1580793856, 85.0
 


--------------------------------------------------------------------------------------------------------------------------------------

open("FILE","kishtry");
$y=0;
while($line=<FILE>)
{
     if($line =~ /Java_Version/)
         {
         $x=0;
        }
    else
        {
         $x=1;
        }

    @s=split(/ /,$line);

    if ($x == 1)
    {
        if($y < 3 )
        {
        chomp($s[@s-1]);
        print "$s[@s-1], ";
        $y=$y+1;
        }
        else
        {
        print "$s[@s-1]\n";
        $y=0;
                print "----------------------\n";
        }
    }
}

    close(FILE);
                
---------------------------------------------------------------------------------------------------------------------------------------




No comments:

Post a Comment