我的脚本每分钟读取一次日志文件并选择(并根据)时间戳从前一分钟开始的行。
这很容易(正则表达式只是“^$timestamp”),但是当日志变大时可能需要一段时间。
我的想法是我想要的行总是在文件的底部附近,所以如果我从底部开始向上搜索,我会搜索更少的行,当我到达前一分钟时停止有兴趣。
我的问题是,如何从文件底部而不是顶部进行搜索?我什至可以说“读取行 $length”,甚至可以说“读取行 n”(如果可以的话,我可以做一种二进制搜索来查找文件的长度并从那里向后工作)?
最后一个问题:这会更快吗(即使它不会更快,我仍然想知道怎么做)?
理想情况下,我想在我自己的代码中完成这一切,而不需要安装任何额外的东西。
谢谢