in reply to Get the Total Size & Total Files in a Directory
#!/usr/bin/perl -w use File::Find; use strict; my $total = 0; my $count = 0; my $largest = 0; my $lfile; my $dir = $ARGV[0] || '.'; find sub { return if -l or -d; # comment out these 2 lines to recurse my $n = ($File::Find::name) =~ tr!/!!; #count slashes return $File::Find::prune = 1 if ($n > 1); #no subdirs $total += -s $_; $count++; if( (-s $_) > $largest){ $largest = -s $_; $lfile = $_} },$dir; my $megs = sprintf "%5.2f",($total/(1024*1024)); print "Total size of $count files in $dir:$megs Mbytes\n"; print "Largest file is $lfile at $largest\n";
|
|---|