X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=dupemerge;a=blobdiff_plain;f=dm6;h=8c1e3e964f6711ecc7c6f0ec4e9ad32634c7ebe8;hp=dbec0475301f71e49e7fdc90adff13ffc6978b92;hb=c75590d6bcfd8cb83a348a3b066a1b26c16fd316;hpb=c1da73dc81f50e5c2d98951935a443e056fb2448 diff --git a/dm6 b/dm6 index dbec047..8c1e3e9 100755 --- a/dm6 +++ b/dm6 @@ -41,7 +41,7 @@ sub usage { Usage: $0 link-dir Hashes a NUL-separated list of files on stdin into link-dir. -Version: 0.20100518 +Version: 0.20100522 USAGE } @@ -168,7 +168,6 @@ while () { # Compute digest print STDERR 'd'; my $digest = digest($file); - print STDERR "\b"; # Base64 uses /, we prefer _ $digest =~ y:/:_:; @@ -219,8 +218,8 @@ while () { # Garbage collection print STDERR "\nGarbage collection in '$link_dir'..."; chdir($link_dir) || die "chdir: $link_dir: $!"; -print STDERR "\nRemoving files with link count < 3..."; -system("find . -type f -links -3 -print0 | xargs -0rt rm -f") and die "system: exit status $?"; +print STDERR "\nRemoving files with link count < 3 and temporary links..."; +system('find . -type f \( -links -3 -o -name ".*" \) -print0 | xargs -0rt rm -f') and die "system: exit status $?"; print STDERR "\nRemoving empty directories..."; system("find . -type d -empty -print0 | xargs -0rt rmdir -p --ignore-fail-on-non-empty") and die "system: exit status $?"; print STDERR "\nDone.\n";