open(F, "+< $infile"); while (sysread F, $_, 32768) { $_ .= ; next unless /\Q$to_find\E/; # quickskip for(grep /^[^,]*?\Q$to_find\E/, split /\n/, $_) { ($filename, $cms, $path, $size, $day, $time) = split /,/; $href = "file:\\\\netd\\data".$path."\\$filename"; $href =~ s/\s/%20/g; $table .= "$path\\$filename$size$day $tim +e"; } } close(F);