cod*_*ero 6 perl stdin tail output-buffering
还有很多其他类似的线程,但通常的结论是"Install File :: Tail".但是,我在一个旧盒子上,我们正在退役,我只想写一个单行来监视日志.我尝试安装File :: Tail,但CPAN的环境不起作用,我不想花时间弄清问题是什么.
我只想要一个基本脚本来解析一个IP地址,并为我保留一个计数.但是出于某种原因,即使这个简单的测试也行不通:
$ tail -f snmplistener.log|grep IPaddress |perl -ne 'print "LINE: $_\n";'
Run Code Online (Sandbox Code Playgroud)
我认为它与输出缓冲有关,但我总是对它的工作原理有点模糊.我怎样才能使这个单线工作?
mob*_*mob 10
tail -f通常不会缓冲输出,但grep可能会.将"grep"功能移动到Perl one-liner中:
tail -f snmplistener.log | perl -ne 'print "LINE: $_\n" if /IPaddress/'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6184 次 |
| 最近记录: |