我有一个实用程序可以连续输出程序的实时日志。但是,当日志行在终端中滚动经过我时,阅读它们可能非常困难。理想情况下,它应该滚动到一整页,然后暂停,直到准备好显示完整的新日志屏幕,然后自动滚动到该页面。
是否可以将输出通过管道传输到某些实用程序,例如less
或more
来获取分页,但同时让它缓冲以下输出,直到新页面准备好,然后在没有用户输入的情况下自动滚动到下一页?
答案1
2022 年初,我开发了一个名为pw
(PipeWatch) 用于观察快速/大量的输出。
您pw
可以设置正则表达式驱动的触发器来动态捕获通过它的文本的快照。您可以翻阅 20 个快照的历史记录。
您可以放入pw
后台;它继续运行,消耗来自管道的输入并捕获快照。
上面的插件放在一边,less
进行分页。当您使用该F命令时,您将处于跟随模式,这有点像tail -f
.您可以使用Ctrl+中断该操作C,返回到less
的命令模式,在该模式下您可以使用箭头键PgUp和PgDn/或类似于 Vi 命令的命令在文件中移动,更不用说进行搜索/了?。less
只是不在关注模式下进行分页。