#!perl.exe -w use strict; my $filename='e:\test.out.txt'; my $output='e:\out.txt'; sub body { if (-r $filename) { open(FILE,"<$filename") || die "$filename: $!\n"; my (@output, $section); while() { chomp; if (/Datasource:/) { push @output, "\n$_"; } if (/Passed:/) { $section="passed"; next; } elsif (/Failed:/) { $section="failed"; push @output, "\n$_"; next; } elsif (/Exception:/) { $section="except"; push @output, "\n$_"; next; } if ($section ne "passed") { if (/(test\.)|(Summary:)/) { push @output, "\n$_"; } } } close(FILE); open(OUTPUT, "> $output") || die "$output: $!\n"; print OUTPUT @output; close(OUTPUT); } else { print("cant read file $filename\n"); } }