我正在运行以下代码:
open my $fh, "<", $file;
$/ = undef;
my $report = <$fh>;
$/ = "\n";
close $fh;
print("$report\n\n");
$file 指的是一个看起来像这样的文本文件:
a 1
b 2
c 3
我在两个不同的 Linux 机器上运行了这段代码。其中之一给了我预期的输出(与文本文件中显示的完全相同)。另一个给了我这个:
GLOB(0x80f1174)
...这有效地阻止了我进一步操纵内容。
我检查了 Perl 版本——给我预期输出的是 5.10,而另一个是 5.8。但是,我在过去使用 5.8 对类似文件执行了完全相同的代码。
我还尝试通过 :set ff=unix 将文件从 DOS 转换为 UNIX,但无济于事。