我将一些调试信息转储到我用来监视的文本文件中tail -f
。
是否有一个工具可以让我将tail -f
数据通过管道传输到屏幕上,以便能够使用正则表达式命令(例如在 vim 中搜索)搜索屏幕上的文本?
答案1
使用less
。less
从您要监视的文本文件开始:
less some_file
如果您想搜索模式,请使用斜杠开始搜索模式:
/<pattern> # forward search
?<pattern> # backward search
如果要过滤输出,请使用 & 符号:
&<pattern>
然后使用 开始连续输出shiftf。您可以使用 和 退出连续输出显示ctrlc并优化或取消过滤模式或开始搜索。
答案2
如果你找不到其他东西,你可以尝试见txt,它可以以可配置的时间间隔(1秒粒度)监视和更新加载的文件,并具有PCRE搜索功能。
不幸的是,它也做了太多其他的事情;我大约 5 年前编写了它,这是我的第一个“大型” C 项目;源代码非常丑陋,哈哈,但它通常有一些警告,除非输入非常大或包含大量奇怪的字符,否则这些警告不会影响你正在做的事情。
也就是说,如果这是一个缺乏的利基市场,我会考虑为此目的进行改造。我通常只是在调试时停止/启动事物并处理静态日志,但是流式输入并执行正则表达式是一个好主意。