open MISS, 'missing.txt' or die "Cant open missing: $!\n"; my %missing = map {(lc($_),$_)} ; close MISS; opendir DIR, '.' or die "Can't open pwd: $!\n"; while (defined($_=readdir(DIR))) { # convert filename to lowercase and see if it is in list if (exists $missing{lc($_)} ) { symlink($_, $missing{lc($_)}); delete $missing{lc($_)}; } } closedir DIR; print "Still not found:\n\n" . join("\n", keys %missing) . "\n";