我有一個perl代碼,基本上打開一個文件,閱讀並打印它,但由於某種原因,當我運行它,我似乎無法得到任何輸出或任何錯誤,我不知道爲什麼。似乎無法得到一個輸出,我不知道爲什麼
這裏是我的代碼:
#!usr/bin/perl
$syslogFile = '/Home/osboxes/Documents/syslog';
open(INFO, $syslogFile);
@lines = <INFO>;
close(INFO);
print @lines;
我有一個perl代碼,基本上打開一個文件,閱讀並打印它,但由於某種原因,當我運行它,我似乎無法得到任何輸出或任何錯誤,我不知道爲什麼。似乎無法得到一個輸出,我不知道爲什麼
這裏是我的代碼:
#!usr/bin/perl
$syslogFile = '/Home/osboxes/Documents/syslog';
open(INFO, $syslogFile);
@lines = <INFO>;
close(INFO);
print @lines;
這就是爲什麼你需要做兩兩件事:在你的代碼的開始
use strict;
use warnings;
。open
。我也建議3精氨酸開放大大優先於使用默認:
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;
我懷疑它會告訴你無論是「沒有這樣的文件或目錄」或「權限被拒絕」。
這不應該阻止它的工作 - 它默認閱讀。 – Sobrique
'open()或者die $!'應該告訴你一些東西......另外,'use strict'和'use warnings'會很有用。 –
@Sobrique嗯有趣,我不知道。我假設有一個錯誤,那麼'!或死「$!」'會顯示。 –