use File::Find; $folder = '/usr28/users/mpcamp/ZDOCK/'; find (\&first, $folder); sub first { if ($_ =~ /com1/) { print "Processing $File::Find::dir/$_ \n\n"; open (FILE1, "output"); while (($num1 = ) && ($num2 = )) { ###do something