Perl File::ReadBackwards を使用してみた
PerlでFile::ReadBackwardsモジュールを使用してみました。このモジュールは、ファイルを逆から読み込むので、ファイルの最後付近にある文字列を抽出したい場合に役立ちます。
使用しているPerlはWindows版なので、このモジュールのレコードセパレータは\r\nなりますが、読み込むファイルはWindows版のcurlの-oオプションの出力ファイルなのに、なぜかレコードセパレータは\nでした。
幸い、このモジュールには、レコードセパレータを変更できるようにnewメソッドの第2引数で指定できます。
修正前:
my $bw = File::ReadBackwards->new($html_file);
修正後:
my $bw = File::ReadBackwards->new($html_file,"\n");
\nは、ダブルクォーテーションで囲ってください。シングルクォーテーションでは、\とnの文字列を改行として認識して、意図した動作をしません。