#!/usr/bin/perl -w use strict; my $base_dir = "$ENV{HOME}/sa/current"; my @sub_dir = qw(cluster1 cluster2 cluster3 cluster4 cluster5); my (%all_files, %file); foreach my $sub_dir (@sub_dir) { opendir DIR, "$base_dir/$sub_dir" or die "Cannot access $base_dir/$sub_dir: $!\n"; my @files = grep /[^.]/, readdir DIR; foreach my $file (@files) { my $line_count = 0; open FILE, "$base_dir/$sub_dir/$file" or die "file not available: $!\n"; $line_count++ while ; close FILE; $file{$sub_dir}{$file} = $line_count; $all_files{$file}++; } } # print out a nice HTML table print "\n"; print "\n \n"; print " \n" for @sub_dir; print "\n"; for my $file (keys %all_files) { print "\n"; print " \n"; for my $sub_dir (@sub_dir) { # avoid undefined warnings if file does not exist # in one or more of our subdirs my $file_size = $file{$sub_dir}{$file} || "undef"; print " \n"; } print "\n"; } print "
File name$_
$file$file_size
\n";