File:  [LON-CAPA] / capa / capa51 / CapaTools / loganalysis.pl
Revision 1.1: download - view: text, annotated - select for diffs
Tue Sep 28 21:25:35 1999 UTC (24 years, 7 months ago) by albertel
Branches: MAIN
CVS tags: HEAD
Initial revision

#!/usr/local/bin/perl

 require('getopts.pl');
 
 
 
 sub  S_Enterpath {
    local($set)=@_;
    local($notdone,$path);
    
    $notdone = 1;
    while ($notdone) {
      print "Please enter the CLASS absolute path:\n";
      $path = <>; chomp($path);
      if( $path =~ /\/$/ ) {
        $Rfullpath = "$path" . "records";
        $Lfullpath = "$path" . "records/log$set.db";
        $Wfullpath = "$path" . "records/weblog$set.db";
      } else {
        $Rfullpath = "$path" . "/records";
        $Lfullpath = "$path" . "/records/log$set.db";
        $Wfullpath = "$path" . "/records/weblog$set.db";
      }
      if( -d $path ) {
        if( -d $Rfullpath ) {
          if( -f $Lfullpath ) {
            $notdone = 0;
          } else {
            print "File [$Lfullpath] does not exist!\n";
          }
          if( -f $Wfullpath ) {
            $notdone = 0;
          } else {
            print "File [$Wfullpath] does not exist!\n";
          }
        } else {
          print "Directory [$Rfullpath] does not exist!\n";
        }
      } else {
        print "Directory [$path] does not exist!\n";
      }
    
    }
    return ($path);
  }
  
  sub S_ScanDB  {
    local($filename)=@_;
    local($line_cnt)=0;
    local($s_num,$dow,$mon,$sp,$day,$time,$yr,$ans_str);
    local(@ans_char);
    local($ii,$first);
    local($Yes_cnt,$No_cnt);
    
    open(IN, "<$filename") || die "Cannot open $filename file!";
    $Yes_cnt = 0; $No_cnt = 0;
    while (<IN>) {
      $line_cnt++;
      chomp();
      ($first,$ans_str) = split(/1997 /);
       # print "$ans_str\n";
      (@ans_char) = split(/ */,$ans_str);
       
       for($ii=0;$ii<=$#ans_char;$ii++) {
       
         $Yes_cnt++ if $ans_char[$ii] eq 'Y';
         
         $No_cnt++  if $ans_char[$ii] eq 'N';
       }
     }
     close(IN) || die "Cannot close $filename file!";
     print  "$filename contains $line_cnt lines.\n";
     print  "  Yes = $Yes_cnt, No = $No_cnt\n";
     return ($Yes_cnt,$No_cnt);
  }
  
  
  
  if(! &Getopts('s:') ) {
     print STDERR "$Usage\n";
     exit 2;
  }
  $opt_s = 1  if ! $opt_s;
  S_Enterpath($opt_s);
  
  ($Y_cntL,$N_cntL) = S_ScanDB("$Lfullpath");
  ($Y_cntW,$N_cntW) = S_ScanDB("$Wfullpath");
  $Yratio = 0.0; $Nratio = 0.0;
  $Yratio = $Y_cntW / $Y_cntL;
  $Nratio = $N_cntL / $N_cntW;
  
  printf " Y ratio = %5.2f, N ratio = %5.2f\n", $Yratio , $Nratio;
  
  
  
  
  

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>