0

私はperlFile:: Tailライブラリを使用して、ファイルの出力を調整し、その出力を解析しています。

スクリプトを開始してから出力を開始するまでに約10秒の遅延があるように見えることを除いて、すべてが正常に機能しています。最初の読み取り後、正常に動作し、すべての出力が瞬時に行われます。遅延中のすべての書き込みは、動作を開始すると出力されるように見えるので、データが失われることはありません。通常の「tail-f」を実行するとすぐに機能するため、読んでいるファイルとは何の関係もないと思います。

スクリプト全体を次に示します。

#!/bin/perl
use File::Tail;

$file=File::Tail->new("file.txt");

while (defined($line=$file->read)) {
    print "$line\n";
}

オンラインのどこかの例からこれをコピーしました。私はperlやFile::Tailにあまり詳しくありません。何か間違ったことをしていることを望んでいます。どんな助けでもいただければ幸いです。

4

1 に答える 1

1

intervalドキュメントのオプションを参照してください。

ファイルが最初にチェックされる前にスリープに費やされる最初の秒数(実数)。デフォルトは10秒です。これは、「File :: Tail」が10秒間スリープしてから、ファイルに新しい行がいくつ表示されたかを判別することを意味します。

于 2012-09-07T13:31:08.577 に答える