#!usr/bin/perl -w use strict; my $directory = "/Users/My_folder/electrical_records"; opendir (DIR, $directory) or die $!; open (my $out, ">electrical_RESULT.txt"); my @files = grep {/_*_.txt/} readdir DIR; foreach my $file (@files) { while (my $file = readdir(DIR)) { next if /^\s$/; # skip blank lines my ($meter_read, $energy_consumption) = (split /\s+/)[4,7]; # energy consumption must meet min, max criteria if ($energy_consumption =~ /^[^0-1-.]/ or ( $energy_consumption < 60 or $energy_consumption > 120)) { print $out " $meter_read \ $energy_consumption \ n"; } } closedir(DIR); }