博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
多次grep 没有看到输出
阅读量:6080 次
发布时间:2019-06-20

本文共 479 字,大约阅读时间需要 1 分钟。

tail -f xxx.log | grep aaaa | grep bbbb 发现没有日志输出
但log中的那条记录包含aaaa 和 bbbb,就是说tail  -f xxx.log | grep aaaa可以输出,tail -f xxx.log | grep bbbb可以输出
 
对日志记录做多次grep过滤输出,格式如下:
tail -f log | grep xxx | grep yyy
发现grep失效,无法做正确输出。google研究了一下,原因如下:
管道 | 是全缓冲的,一般来说buffer_size为4096,有些是8192。不管具体值多少,只有buffer_size满了,才会看到输出。
在操作里  >>file 这个操作也是全缓冲的。调整如下
tail -f log | grep --line-buffer xxx | grep --line-buffer yyy
结果输出正常。
grep当带上了 --line-buffer 的时候,每输出一行,就刷新一次。
在unix里,块设备和普通文件,以及管道都是全缓冲的。
虽千万人,吾往矣!

转载地址:http://ryegx.baihongyu.com/

你可能感兴趣的文章
电子书下载:Construct Game Development Beginner's Guide
查看>>
此实现不是 Windows 平台 FIPS 验证的加密算法的一部分的解决办法方案
查看>>
git学习笔记(二)—— 创建版本库&&版本管理
查看>>
.Net Remoting(应用程序域) - Part.1
查看>>
windows server 2008下的一些设置技巧及优化
查看>>
[置顶] lvs-tun隧道模式搭建
查看>>
PHP ADLogin
查看>>
Web服务器 之 Debian下给apache加载ssl
查看>>
CTreeCtrl控件使用技巧
查看>>
第三届云计算大会 - Dell云计算: 企业的有效转型策略(转载)
查看>>
关于延迟时间的一点智慧
查看>>
33.NET对加密和解密的支持
查看>>
MVC文件图片ajax上传轻量级解决方案,使用客户端JSAjaxFileUploader插件02-多文件上传...
查看>>
jQuery显示和隐藏 常用的状态判断方法
查看>>
[翻译]Shape comparison language
查看>>
【Android Lock Pattern】图案解锁(一):LockPatternView源代码
查看>>
NLP常用信息资源
查看>>
精益求精--卓越的互联网产品设计与管理
查看>>
关于aspnet 2.0
查看>>
JavaScript验证Email地址
查看>>