From 4054e752d00721a9a0c5da43ebbf949544e33b59 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sun, 9 Jan 2011 11:28:40 +0100 Subject: hashl list: Print filesize --- bin/hashl | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/bin/hashl b/bin/hashl index 084b4d2..8ee20d5 100755 --- a/bin/hashl +++ b/bin/hashl @@ -74,6 +74,16 @@ sub get_total { } } +sub si_size { + my @post = ('', 'ki', 'Mi', 'Gi', 'Ti'); + my $bytes = shift; + while ($bytes > 1024) { + $bytes /= 1024; + shift @post; + } + return sprintf("%5.1f%sB", $bytes, $post[0]); +} + sub drop_deleted { for my $file (keys %{$db->{'files'}}) { if (! -e $file) { @@ -352,7 +362,12 @@ sub cmd_list { ); for my $name (sort keys %{$db->{'files'}}) { my $file = $db->{'files'}->{$name}; - printf("%s %s\n", $file->{'hash'}, $name); + printf( + "%s %-8s %s\n", + $file->{'hash'}, + si_size($file->{'size'}), + $name + ); } } -- cgit v1.2.3