如何减少实时日志数据?

时间:2015-10-11 14:08:06

标签: bash

程序会生成一个日志文件,我正在观看。不幸的是,日志文件有时包含相同行1的50倍。 有没有可能得到而不是

program.sh

Line 1
Line 1
Line 1
Line 1
...
Line 1
Line 1
Line 2

就像这样:

program.sh

Line 1
 \= repeated 43 times
Line 2

1 个答案:

答案 0 :(得分:1)

你可以使用这个awk:

awk 'function prnt() { print p; if (c>1) print "  \\= repeated " c " times"; }
    p && p != $0{prnt(); c=0} {p=$0; c++}; END{prnt()}' file
Line 1
  \= repeated 43 times
Line 2