1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
   | #!/usr/bin/env perl
 
use strict;
use warnings;
use POSIX;
 
#cette fonction sert a convertir le timestamp contenu dans le fichier a traiter
sub getHDate {
        my %Date = ();
        my ($sec,$min,$hour,$mday,$mon,$year) = localtime(time); 
        $year += 1900;
        $mon += 1;
 
        $Date{second}   = $sec;
        $Date{minute}   = $min;
        $Date{hour}     = $hour;
        $Date{day}      = $mday;
        $Date{month}    = $mon;
        $Date{year}     = $year;
       return %Date;
}
 
open( FDESC , "< cmptest" ) or die "Can't open cmptest : $!";
 
foreach my $line ( readline(*FDESC) ) {
	my ( $timestamp, $Type, $Purify, $User, $Nb_test, $Test_duration, $Total_exec_time,$Prod )  ;
	my @Liste = split ( /\s+/ , $line ) ;
	my $Nb_el = @Liste ;
	( $timestamp, $Type, $Purify, $User, $Nb_test, $Test_duration, $Total_exec_time, $Prod ) = @Liste ;
	my $avrg_test_time =  $Test_duration/$Nb_test ;
	my %now_date = getHDate( $timestamp );
	my $Date = sprintf ( "%4d-%02d-%02d" , $now_date{year} ,  $now_date{month} , $now_date{day}) ;
	printf "$Date  $avrg_test_time  $Prod \n";
}				
close(FDESC); | 
Partager