Linux tail + grep + less

标签 linux grep feed tail less-unix

我想查看我网站访问日志的实时输出。我只想查看某些类型的条目,在本例中,是与“.php”匹配的条目。

这工作正常,但换行到下一行,我不希望这样:

tail -f access-log | fgrep ".php" --line-buffered

这可以很好地避免换行,但它没有被过滤:

less +F -S access-log

我更喜欢查看没有换行到下一行的文件,因为它更容易在输出中看到结构,这就是我想要 less -S 的原因。

这种方法可行,但“光标”不会停留在文件底部,我输入的任何命令都会使 less 挂起(按“SHIFT + f”停留在文件底部流来时底部):

tail -f access-log | fgrep ".php" --line-buffered | less -S

但这根本不起作用:

tail -f access-log | fgrep ".php" --line-buffered | less +F -S

那么,有没有办法实现我想要的呢?

我也采用开箱即用的解决方案,也许可以使用 sed 进行切割,这样每一行都不会比我的屏幕长?

最佳答案

我建议使用 bash:

tail -f access-log | fgrep ".php" --line-buffered | cut -c 1-$COLUMNS

关于Linux tail + grep + less,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44032957/

相关文章:

python - Jenkins Python 打印控制台输出

regex - 解析日志文件,检查日期,报告结果

linux - 如何通过将 Grep 输出管道传输到 Sed 来添加变量模式?

java.io.FileNotFoundException :

database-design - MongoDB RSS Feed 条目,将条目嵌入 Feed 对象中?

node.js - 从 .desktop 文件运行 Node

linux - 将 Mercurial 与 Linux Mint 一起使用

linux - 用于拆分不同文件的 csv 数据

regex - Grep 并仅打印字符串的开头和结尾

facebook-graph-api - 页面Feed中的LIMIT,SINCE和UNTIL参数