foreach my $filename (sort keys(%{$inode_to_file_name{$candidate}})) {
print STDERR "\t\tDigesting file $filename\n" if $debug;
if ((-l $filename) || ! -f _) {
+ print STDERR "\n" if $progress;
warn "Bogon file " . tick_quote($filename);
$input_bogons++;
delete $inode_to_file_name{$candidate}->{$filename};
if ($link_done) {
delete $inode_to_file_name{$to_inode}->{$to_file};
- $inode_to_file_name{$from_inode}->{$to_file} = undef;
+ $inode_to_file_name{$from_inode}->{$to_file} = undef unless ($dry_run);
$hash_to_inode{$digest} = [ $from_inode ];
$hard_links++;
undef %inode_to_file_name;
}
+my $last_time = 0;
+
while (<FIND>) {
my ($weak_key, $size, $dev, $ino, $name) = m/^((\d+) \d+ \d+ \d+ -?[\d.]+) (\d+) (\d+) (.+)\0$/so;
die "read error: $!\nLast input line was '$_'" unless defined($name);
$skip_compares = $skip_compare_preference;
}
+ if ($progress) {
+ my $this_time = time();
+ if ($this_time != $last_time) {
+ $last_time = $this_time;
+ print STDERR "($size)";
+ }
+ }
+
$input_links++;
merge_files if $weak_key ne $current_key;
$current_key = $weak_key;