Perlseeker_1 has asked for the wisdom of the Perl Monks concerning the following question:
I have a directory under which i have some files as mentioned below
check.1.ABC.dat.gz check.1.ABC_TT1.dat check.1.AB_TT1.dat check.1.ABC.dat
I am executing some unix commands on the files like wc, tail
I am using that output from unix commands and placing that output on exceel sheet
open(DETAIL, "> $DetailFilename") or die("Error: $!"); print DETAIL "$DetailFileHeader\n"; opendir( DIR, $dir ); my @files = grep( /$pattern/, readdir(DIR) ); closedir(DIR); chdir($dir); foreach my $file (@files) { if (($file=~ m/^Gkel_/) && (substr($file, -2) eq 'gz')) { $Gkel_file = $file; my $result = `gunzip -c $file|tail -1`; $Count = substr($result,22,8); system(`gunzip -f $file`); } elsif ($file=~ m/^check.*TT1.dat$/) { my $result = `wc -l $file`; my ($count, $file_name) = split(' ',$result); $result{$hashkey}->[0] = $file_name; $result{$hashkey}->[1] = $count; $hashkey++; } } opendir( DIR, $dir ); my @files = grep( /$pattern/, readdir(DIR) ); closedir(DIR); chdir($dir); foreach my $file (@files) { if (($file=~ m/^Gkel_/) && (substr($file, -2) ne 'gz')) { my $result = `wc -l $file`; my ($count, $file_name) = split(' ',$result); $file1 = substr($file,5,50); $Gkel_file1 = $file_name; $Count1 = $count; system(`mv $file $file1`); } } for my $key (sort keys %result) { $Count1 = $Count1 - $result{$key}->[1]; print DETAIL "$pattern-2013,$Gkel_file,$Count,$Count,$result{$key}->[0 +],$result{$key}->[1],$file1,$Count1,$Count1,TRUE\n"; }
Ouput what i am getting now
Jun-2013 Gkel_check.1.ABC.dat.gz 108418 108418 check.1.ABC +_TT1.dat 470 ,check.1.ABC.dat 107672 107672 TRUE Jun-2013 Gkel_check.1.ABC.dat.gz 108418 108418 check.1.AB_ +TT1.dat 278 ,check.1.ABC.dat 108142 108142 TRUE
Expected Ouput
Jun-2013 Gkel_check.1.ABC.dat.gz 108,418 108,418 check.1.A +BC_TT1.dat 470 check.1.ABC.dat 107,670 107,670 TRUE check.1.AB_TT1.dat 278
|
|---|