我使用perl File::Tail库来跟踪文件的输出并解析它的输出。
一切正常,除了在脚本开始输出之前,我启动脚本后似乎有大约10秒的延迟。在第一次读取之后,它工作得很好,所有的输出都是即时的。延迟期间的所有写操作似乎都是在它开始工作后输出的,所以我没有丢失任何数据。我不认为这与我正在读取的文件没有任何关系,因为运行常规的“尾部-f”会立即生效。
下面是整个脚本:
#!/bin/perl
use File::Tail;
$file=File::Tail->new("file.txt");
while (defined($line=$file->read)) {
print "$line\n";
}这是我从网上某处的一个例子中复制过来的。我不太熟悉perl或File::Tail,我希望我做错了什么。任何帮助都将不胜感激。
发布于 2012-09-07 21:31:09
请参阅文档中的interval选项:
第一次检查文件之前,休眠所用的初始秒数(实数)。默认值是10秒,这意味着"File::Tail“将休眠10秒,然后确定文件中出现了多少新行。
https://stackoverflow.com/questions/12318878
复制相似问题