我正在使用
拖尾日志tail -f my_log_file
日志文件中添加的每一行如下所示:
blaaa blaaa something blaa blaa response_time 100ms blaa blaaaaa
blaaa blaaa something blaa blaa response_time 150ms blaa blaaaaa
blaaa blaaa something blaa blaa response_time 90ms blaa blaaaaa
我真正想要的是能够拖尾这个日志文件,但只显示
response_time 100ms
response_time 150ms
response_time 90ms
有没有办法用“尾巴”做到这一点? 谢谢!
答案 0 :(得分:1)
您可以管道tail
到sed
和grep
的输出来过滤它。尝试:
tail -f my_log_file | sed -e 's/.*\(response_time \S\+\).*/\1/p'
答案 1 :(得分:1)
这应该适合你:
tail -f my_log_file | grep -o 'response_time [0-9]+ms'
答案 2 :(得分:0)
sed -u 's/.* \(response_time [0-9]\{1,\}ms\) .*/\1/" my_log_file
-u是输入/输出的流版本。 工作直到第一个EOF (因此使用echo >> my_log_file
的脚本添加到文件末尾但每个操作都有一个EOF,因此停止sed,tail将等待来自外部的中断)