use TokyoCabinet;
use Data::Dump qw(dump);
-my $user = shift @ARGV || die "usage: $0 u2001\n";
+my ($user,$path) = @ARGV;
+die "usage: $0 u2001 [path]\n" unless $user;
my $dir = (getpwnam($user))[7];
-die $! unless -d $dir;
+die "$dir: $!" unless -d $dir;
-my $path = "$dir/.md5";
+my $md5 = "$dir/.md5";
-die $! unless -r $path;
+die "$md5: $!\n" unless -r $md5;
my %h;
-tie %h, "TokyoCabinet::HDB", $path || die $!;
+tie %h, "TokyoCabinet::HDB", $md5 || die $!;
-while( my($k,$v) = each(%h) ) {
- $k = "$dir/$k" if $ENV{FULL};
- print "$v $k\n";
-}
+if ( $path ) {
+ print $h{$path}, " $path\n";
+} else {
+
+ while( my($k,$v) = each(%h) ) {
+ $k = "$dir/$k" if $ENV{FULL};
+ print "$v $k\n";
+ }
+}