Я замечательный Perl-кодер, и у меня много проблем с выяснением причины этой конкретной проблемы. Кажется, что это переменная проблема.
sub patch_check {
my $pline;
my $sline;
while (<SYSTEMINFO>) {
chomp($_);
$sline = $_;
while (<PATCHLIST>) {
chomp($_);
$pline = $_;
print "sline $sline pline $pline underscoreline $_ "; #troubleshooting
print "$sline - $pline\n";
if ($pline =~ /($sline)/) {
#print " - match $pline -\n";
}
} #end while
}
}
Есть еще код, но я не думаю, что он уместен. Когда я печатаю $ sline в первом цикле, он работает нормально, но не во втором цикле. Я попытался сделать переменные глобальными, но это тоже не сработало.
Суть подчиненной формы заключается в том, что я хочу открыть файл (исправления) и посмотреть, находится ли он в (systeminfo). Я также пытался читать файлы в массивы и делать циклы foreach.
У кого-нибудь есть другое решение?