我有一个perl代码,它基本上打开一个文件,读取它然后打印它但是出于某种原因,当我运行它时,我似乎无法获得任何输出或任何错误而且我不会#39不知道为什么。
这是我的代码:
#!usr/bin/perl
$syslogFile = '/Home/osboxes/Documents/syslog';
open(INFO, $syslogFile);
@lines = <INFO>;
close(INFO);
print @lines;
答案 0 :(得分:4)
这就是为什么你需要做两件事:
use strict;
use warnings;
。 open
的返回代码。 我还建议使用默认的3 arg open:
open ( my $input, '<', $syslogfile ) or die $!;
最后 - 仔细检查该文件是否包含您期望的内容。例如。它不是空的。
这样的事情:
#!/usr/bin/env perl
use strict;
use warnings;
my $syslogFile = '/Home/osboxes/Documents/syslog';
open(my $info, '<', $syslogFile) or die $!;
my @lines = <$info>;
close($info) or warn $!;
print @lines;
我怀疑它会告诉你“没有这样的文件或目录”或“权限被拒绝”。