use strict; use File::Basename; my %DIR; my %ROUTINE = map { ($_ => 1) } qw(dts_ql.list dts.list control.par); while (<>) { chomp; my ($base, $dir) = fileparse($_); # print "$base [$dir]\n"; if (my $old = $DIR{$base}) { if ($ROUTINE{$base}) { } elsif ($base =~ /^SWIFT_TLE/ or $base =~ /pob\.cat\.gz$/ or $base =~ /[sx]\.mkf\.gz$/ or $base =~ /xbf_rw\.img\.gz$/) { # expected } else { print "$base in $old and $dir\n"; } } $DIR{$base} = $dir; }