grep awk 之buffer问题
浏览:1506次 出处信息
问题
如下命令可以看到我们预期的输出:
while :; do echo abcd; sleep 1; done|grep abcd
如下命令不能看到预期的输出: (不是立即看到,其实,只要等等她就会来)
while :; do echo abcd; sleep 1; done|grep abcd|grep abcd
原因: 第一个grep命令buffer了输出
解决办法: 添加 -line-buffered 选项
同样, awk 也有类似问题,但是使用awk就没有添加选项这么幸运了;可以通过在awk的输出后面添加 system(“”); 来刷新buffer,如:
# while :; do echo abcd; sleep 1; done|awk '{print $0;system("");}'|awk '{print $0;}'
建议继续学习:
- Linux命令行里的“瑞士军刀” (阅读:10356)
- AWK 简明教程 (阅读:8218)
- Buffer和cache的区别是什么? (阅读:6861)
- awk命令,实现文件的合并与拆分 (阅读:6667)
- Linux grep命令用法 (阅读:6093)
- AWK介绍 (阅读:5542)
- Linux操作系统中内存buffer和cache的区别 (阅读:5340)
- 更快的IP库查找方法以及AWK中的二分查找 (阅读:5363)
- grep 正则表达式选项要记得转义 (阅读:5236)
- awk 实例之二维数组 (阅读:5012)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:Linux下的CPU使用率与服务器负载的关系与区别
后一篇:15年运维经验老兵对公有云的深度剖析 >>
文章信息
- 作者:phpor 来源: PHPor 的Blog
- 标签: awk buffer grep
- 发布时间:2015-04-26 22:55:40
建议继续学习
近3天十大热文
- [52] WEB系统需要关注的一些点
- [49] Go Reflect 性能
- [49] Oracle MTS模式下 进程地址与会话信
- [46] 图书馆的世界纪录
- [46] Twitter/微博客的学习摘要
- [46] 如何拿下简短的域名
- [46] IOS安全–浅谈关于IOS加固的几种方法
- [46] find命令的一点注意事项
- [44] android 开发入门
- [44] 【社会化设计】自我(self)部分――欢迎区