my $folder = '//..'; find (\&process, $folder); sub process { if ( $File::Find::name =~ /\learn$/ ) { open (FILE, $File::Find::name ) or die "Cannot open file: $!"; while ( $line = ) { $/= "# input for"; $line =~ s/.....; push(@outLines, $line ); } print to outputfile... } }