grep awk 之buffer问题
浏览:1528次 出处信息
问题
如下命令可以看到我们预期的输出:
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命令行里的“瑞士军刀” (阅读:10389)
- AWK 简明教程 (阅读:8235)
- Buffer和cache的区别是什么? (阅读:6883)
- awk命令,实现文件的合并与拆分 (阅读:6682)
- Linux grep命令用法 (阅读:6121)
- AWK介绍 (阅读:5559)
- Linux操作系统中内存buffer和cache的区别 (阅读:5353)
- 更快的IP库查找方法以及AWK中的二分查找 (阅读:5386)
- grep 正则表达式选项要记得转义 (阅读:5253)
- awk 实例之二维数组 (阅读:5023)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:Linux下的CPU使用率与服务器负载的关系与区别
后一篇:15年运维经验老兵对公有云的深度剖析 >>
文章信息
- 作者:phpor 来源: PHPor 的Blog
- 标签: awk buffer grep
- 发布时间:2015-04-26 22:55:40
建议继续学习
近3天十大热文
-
[61] ABTest 平台设计 - 如何进行流量分桶
-
[47] 如何拿下简短的域名
-
[44] 图书馆的世界纪录
-
[43] android 开发入门
-
[42] 【社会化设计】自我(self)部分――欢迎区
-
[42] Oracle MTS模式下 进程地址与会话信
-
[41] 流程管理与用户研究
-
[41] Twitter/微博客的学习摘要
-
[40] Go Reflect 性能
-
[40] IOS安全–浅谈关于IOS加固的几种方法