The following script does what is asked (and no more), using only Perl (with one core module) and looking in the current directory only (no recursion):
use strict;
use warnings;
use Cwd;
@ARGV == 1 or die "USAGE: $0 <search_line>\n";
printf "Searching directory '%s' for the line '%s':\n\n",
Cwd::getcwd(), $ARGV[0];
my $found = 0;
opendir my $dh, '.'
or die "Unable to open the current directory: $!";
while (my $file = readdir($dh))
{
if (-f $file)
{
open my $fh, '<', $file
or die "Unable to open file '$file' for reading: $!";
while (my $line = <$fh>)
{
chomp $line;
if ($line eq $ARGV[0])
{
print "Found match in file '$file'\n";
$found = 1;
last;
}
}
close $fh
or die "Unable to close file '$file': $!";
}
}
closedir $dh
or die "Unable to close the current directory: $!";
print "No matches found\n" unless $found;
HTH,
Athanasius <°(((>< contra mundum
|