8.5 ファイルに継続的に追加されるデータを読み込む
ファイルに継続的に追加されるデータを読み込みたい。しかし、ファイルのその時点でのEOFに到達すると、読み込みエラーが発生してしまう。
- EOFまで読み込み、スリープし、EOFフラグをクリアして読み込みを行う。
for (;;) { while (<FH>) { .... } sleep $SOMETIME; seek(FH, 0, 1); # EOFフラグをクリア }
- IO::Handleモジュールのclearerrメソッドを使用して、EOFフラグをクリア
use IO::Handle; for (;;) { while (<FH>) { .... } sleep $SOMETIME; FH->clearerr(); }