在没有输出重定向的情况下运行以下文件时,输出符合预期。
输出
./get_urls.pl
www.site1.com
www.site2.com
www.siten.com
将 STDOUT 重定向到文件时,文件中不会记录任何内容。
./get_urls.pl > out
cat out
-
#!/usr/bin/perl
use LWP::Simple;
use strict;
use warnings;
my $i = 1;
while (my $contents = get("http://www.validpage.com?page=$i"))
{
#print STDERR $contents."\n".$url."\n";
#print STDERR $i."\n";
my @matches = ($contents =~ /_full'>(.*)?</g);
for my $match (@matches)
{
$match =~ s/\s//g;
print $match."\n";
}
$i++;
}
print STDERR "$i total matches.\n";
我怀疑这种行为是使用 LWP::Simple 的副作用,因为当 get() 函数调用被省略时,输出会按预期重定向。