X-Git-Url: https://defaria.com/gitweb/?a=blobdiff_plain;f=bin%2Fbigfiles.pl;h=3c539c2c3590ec8e1a65e8cdca64fde824bf3c0d;hb=7741c29ab943bbd7972f74f17d357bf0cdb19f7b;hp=ec9f2a26f13317a50dd264963835dc3eacd8f7d7;hpb=020a4a5ea2be725b155cae3a2cadc9aba3911b9b;p=clearscm.git diff --git a/bin/bigfiles.pl b/bin/bigfiles.pl index ec9f2a2..3c539c2 100755 --- a/bin/bigfiles.pl +++ b/bin/bigfiles.pl @@ -2,11 +2,11 @@ ################################################################################ # # File: $RCSfile: bigfiles.pl,v $ -# Revision: $Revision: 1.3 $ +# Revision: $Revision: 1.3 $ # Description: Reports large files # Author: Andrew@DeFaria.com # Created: Mon May 24 09:09:24 PDT 1999 -# Modified: $Date: 2011/04/18 05:15:29 $ +# Modified: $Date: 2011/04/18 05:15:29 $ # Language: Perl # # (c) Copyright 2001, ClearSCM, Inc., all rights reserved @@ -36,14 +36,14 @@ sub Usage { } # usage sub Bigfiles { - my $size = shift; - my @dirs = @_; + my $size = shift; + my @dirs = @_; my @files; foreach (@dirs) { next if !-d "$_"; - my $cmd = "find \"$_\" -xdev -type f -size +$size -exec ls -lLGQ {} \\;"; + my $cmd = "find \"$_\" -xdev -type f -size +$size -exec ls -lLG {} \\;"; my @lines = `$cmd`; foreach (@lines) { @@ -51,11 +51,13 @@ sub Bigfiles { my %info; - if (/\S+\s+\d+\s+(\S+)\s+(\d+).*\"\.\/(.*)\"/) { - $info {user} = $1; - $info {filesize} = $2; - $info {filename} = $3; - push @files, \%info; + #if (/\S+\s+\d+\s+(\S+)\s+(\d+).*\"\.\/(.*)\"/) { + if (/\S+\s+\d+\s+(\S+)\s+\S+ \S+\s+(\d+)\s+\S+\s+\d+\s+\S+\s+(\S+)/){ + $info {user} = $1; + $info {filesize} = $2; + $info {filename} = $3; + + push @files, \%info; } # if } # foreach } # foreach @@ -63,11 +65,11 @@ sub Bigfiles { return @files; } # Bigfiles -my $lines = defined $ENV {LINES} ? $ENV {LINES} :-24; -my $top = $lines - 2; -my $bytes_in_meg = 1048576; -my $block_size = 512; -my $size_in_meg = 1; +my $lines = $ENV{LINES} || 24; +my $top = $lines - 2; +my $bytes_in_meg = 1048576; +my $block_size = 512; +my $size_in_meg = 1; my %opts; my $result = GetOptions ( @@ -79,19 +81,20 @@ my $result = GetOptions ( 'size=i', ); -my @dirs = @ARGV ? @ARGV : "."; - +my @dirs = @ARGV || '.'; my $size = $opts {size} ? $opts {size} * $bytes_in_meg / $block_size : 4096; # Now do the find verbose "Directory:\t$_" - foreach (@dirs); -verbose "Size:\t\t$size_in_meg Meg ($size blocks)"; -verbose "Top:\t\t$top"; -my $head = $top ? "cat" : "head -$top"; +foreach (@dirs) { + verbose "Size:\t\t$size_in_meg Meg ($size blocks)"; + verbose "Top:\t\t$top"; + + my $head = $top ? "cat" : "head -$top"; -my @files = Bigfiles $size, @dirs; + my @files = Bigfiles $size, @dirs; +} # for each foreach (@files) { my %info = %{$_};