ファイルを最後まで読んで、特定の正規表現パターンを含む最後の行を取得する必要があります。私はFile:ReadBackwards
モジュールを持っていません。Windows上の裸のPerlで特定のパターンを含むファイルの最終行を読み取るにはどうすればよいですか?
私は以下のコードを試してみましたが、私はPerlIO::reverse
がいずれかのインストールされていないことがわかりました。
モジュールをインストールできません。これを達成するためのコードをお勧めします。
最終的に私は、パターン
(\d\d) (\w{3}) (\d{4}) (\d\d):(\d\d):(\d\d) --
で始まるファイルの行は、これは私がいつものように
open my $rev, '<:reverse', '$slogfile';
while ($line = <$rev>) { # do to contents reversely
print OUTLOG $line if $line =~ m/^(\d\d) (\w{3}) (\d{4}) (\d\d):(\d\d):(\d\d) --/;
close($rev);
}
あなたがテスト文字列を共有してくださいでした! – AbhiNickz
このように 'close'を使うと' while'ループの反復が最大1回発生します – red0ct
@ red0ctそれを得ました。ループの外側を閉じて使用します。それを指摘してくれてありがとう。 – STJ