我把它发布给超级用户但没有接受者:
https://superuser.com/questions/832578/how-to-grep-a-continuous-stream-with-paging
我想获取一个日志文件并过滤掉一些不相关的日志条目,比如INFO级别的条目.上面的Stack Overflow回答让我了解了一部分:
@H_301_4@$tail -f PHP_error_log | grep -v INFO我想要的下一篇文章就是在这个流中进行分页,例如less.较少F适用于连续流,但我不能将其应用于grep.我怎么能做到这一点?
自从发布了这个问题以来,我一直在研究这个问题并发现等待EOF出现的次数较少,并且在收到它之前一直挂起(source).这解释了为什么尝试跟随管道不起作用.我破解了一个简短的脚本来做我想做的事,非常优雅:
@H_301_4@#!/bin/bash tail -f /data/tmp/test.txt | grep --line-buffered foo > /data/tmp/foo & pid=$! echo $pid sleep 1 less +F /data/tmp/foo kill $pid rm /data/tmp/foo