use strict; use warnings; my $dir = "V:/"; open OUTPUT, "> PEP/dirtest.txt" or die$!; print "What is acct number ?"; my $acct_number = ; my @files; my @data; my @lines; my $file; my $flag1; my $flag2; opendir(BIN, $dir) or die "Can't open $dir: $!"; @files = map {$dir.'/'.$_} grep { $_ !~ /^\./ } readdir BIN; { foreach $file (@files) { open FH, "$file"; while () { $flag2 = 1 if $flag1 and /$acct_number/; $flag1 = 1 if /NAME/; push @lines, $_ if $flag1; if (/ADJ TO TOTALS:/) { print OUTPUT @lines if $flag2; $flag1=0; $flag2=0; @lines=(); } } } } closedir(BIN);