需要一种快速从日志中删除部分重复项的方法

时间:2013-06-14 13:04:09

标签: bash logging

我正在使用bash脚本从日志文件中删除一些行。此日志文件的基本格式为:

  

field1:value1,field2 = value2,field3 = value3,   field4 = value4,value5,value6,field5 = value7

有时会出现field1:value1相同的行,但其他一些信息相同或不同。我想过滤掉这些行,这样我只会查看具有相同“field1:value1”元组的任何东西的第一个实例。

如果你能找到特别简单的东西,我更喜欢一个很好的命令行单行。我绝对想把它保存在bash脚本中。这是在linux上,所以我们已经有了所有的命令行工具。

谢谢!

1 个答案:

答案 0 :(得分:5)

使用awk

awk -F, '!arr[$1]++ { print }' LOGFILE

awk程序使用数组来计算特定'field1:value1`字符串的次数,但仅在第一次打印输入行。