Subversion Repositories zfs_utils

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
19 rodolico 1
#! /usr/bin/env perl
2
 
3
use strict;
4
use warnings;
5
 
6
my %data;
7
 
8
while ( my $line = <> ) {
9
   chomp $line;
10
   my ($date, $time, $dataset, $seconds, $bytes) = split /\s/, $line;
11
   $data{$date}{$dataset}{'size'} = $bytes;
12
   $data{$date}{$dataset}{'time'} = $seconds;
13
}
14
 
15
my @dates = sort keys %data;
16
my %datasets;
17
foreach my $ds ( @dates ) {
18
   foreach my $set ( keys %{$data{$ds}} ) {
19
      $datasets{$set}++;
20
   }
21
}
22
 
23
my @report;
24
push @report, "Date\t" . join( "\t\t", sort keys %datasets );
25
foreach my $dates ( @dates ) {
26
   my @line;
27
   push @line, $dates;
28
   foreach my $column ( sort keys %datasets ) {
29
      push @line, $data{$dates}{$column}{'size'} ? $data{$dates}{$column}{'size'} : '';
30
      push @line, $data{$dates}{$column}{'time'} ? $data{$dates}{$column}{'time'} : '';
31
   }
32
   push @report, join( "\t", @line );
33
}
34
 
35
print join( "\n", @report ) . "\n";
36
1;