"Fossies" - the Fresh Open Source Software Archive

Member "bonnie++-1.04/bon_csv2txt.in" (20 Mar 2001, 2685 Bytes) of package /linux/privat/bonnie++_1.04.tgz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Perl source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 #!/usr/bin/perl
    2 
    3 {
    4   my $line;
    5   $iocount = 0;
    6   $filecount = 0;
    7   while($line = <STDIN>)
    8   {
    9     while($line =~ /^name,/)
   10     {
   11       $line = <STDIN>;
   12     }
   13     process($line);
   14   }
   15   printIOData();
   16 
   17   printFileData();
   18 }
   19 
   20 sub IOHeader
   21 {
   22   my $version = '@version@';
   23 print "Version  $version      ------Sequential Output------ --Sequential Input- --Random-\n";
   24 print "                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--\n";
   25 print "Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP\n";
   26 }
   27 
   28 sub FileHeader
   29 {
   30 print "                    ------Sequential Create------ --------Random Create--------\n";
   31 print "                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--\n";
   32 print "files:max:min        /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP\n";
   33 }
   34 
   35 sub process
   36 {
   37   my($line) = @_;
   38 
   39   chop($line);
   40   my $name = $line;
   41   $name =~ s/,.*$//;
   42   $line =~ s/$name,//;
   43 
   44 # $ioline contains the file-IO data, IE we strip off the data on file creation
   45   my $ioline = $line;
   46   $ioline =~ s/,[:0-9\-\+.\/]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+,[0-9\+.]+$//;
   47   $ioline =~ s/,,,,,,,,,,,,,$//;
   48   if(join('', split(/,/,$ioline)) != "")
   49   {
   50     $io[$iocount] = $name . "," . $ioline;
   51     $iocount++;
   52   }
   53 # $fileline contains the file creation data - everything but $ioline
   54   my $fileline = substr($line, length($ioline));
   55   if(join('', split(/,/,$fileline)) != "")
   56   {
   57     $file[$filecount] = $name . $fileline;
   58     $filecount++;
   59   }
   60 }
   61 
   62 sub printFileData
   63 {
   64   if($filecount < 1){ return; }
   65   FileHeader();
   66   for($i = 0; $i < $filecount; $i++)
   67   {
   68     @arr = split(/,/,$file[$i]);
   69     my $size = $arr[1];
   70     $size =~ s/:0:0:/\//;
   71     my $desc = $arr[0] . "                   ";
   72     $desc = substr($desc, 0, 18 - length($size) );
   73     $desc .= " " . $size;
   74     printf(STDOUT "%19s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s\n"
   75          , $desc, $arr[2], $arr[3], $arr[4], $arr[5], $arr[6], $arr[7]
   76          , $arr[8], $arr[9], $arr[10], $arr[11], $arr[12], $arr[13]
   77          , $arr[14], $arr[15]);
   78   }
   79 }
   80 
   81 sub printIOData
   82 {
   83   if($iocount < 1){ return; }
   84   IOHeader();
   85   for($i = 0; $i < $iocount; $i++)
   86   {
   87     @arr = split(/,/,$io[$i]);
   88     my $size = $arr[1];
   89     my $desc = $arr[0] . "                   ";
   90     $desc = substr($desc, 0, 18 - length($size) );
   91     $desc .= " " . $size;
   92     printf(STDOUT "%19s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s %5s %3s\n"
   93          , $desc, $arr[2], $arr[3], $arr[4], $arr[5], $arr[6], $arr[7]
   94          , $arr[8], $arr[9], $arr[10], $arr[11], $arr[12], $arr[13]
   95          , $arr[14], $arr[15]);
   96   }
   97 }
   98