我有一个子进程动态写入一些信息。有时我需要获得此文件最后一行的N
个数。但是当父进程正在读取文件时,子进程将继续写入它
我已经读过锁定它并解锁没有任何意义,但我不确定。我不会写任何来自父进程的东西,所以我只需要打开就可以阅读
我找到了模块File::Tail
,但没有理解如何使用它来获取N
个最后几行,请提供一些简单的示例。
另外我需要建议是否有必要在这种情况下使用锁定?
答案 0 :(得分:0)
要阅读文件的最后N
行,您可以使用CPAN模块File::ReadBackwards
。
use File::ReadBackwards;
my $lastlines = File::ReadBackwards->new("file.txt");
print reverse map { $lastlines->readline() } (1 .. 2);
这将打印文件的最后2行。将2替换为您想要的任何数字。