X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=dupemerge;a=blobdiff_plain;f=dm6;h=8c1e3e964f6711ecc7c6f0ec4e9ad32634c7ebe8;hp=8638e28c55e8d76e9772dde939a22d60af98616e;hb=c75590d6bcfd8cb83a348a3b066a1b26c16fd316;hpb=d4d387b85ba81deb83ec60a8e41f546f58136b20 diff --git a/dm6 b/dm6 index 8638e28..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.20100514 +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";