【问题标题】:Need a quick way of removing partial duplicates from a log需要一种从日志中删除部分重复项的快速方法
【发布时间】:2013-06-14 13:04:08
【问题描述】:

我正在使用 bash 脚本从日志文件中 grep 出一些行。这个日志文件的基本格式是:

字段1:值1,字段2=值2,字段3=值3, field4=value4,value5,value6, field5=value7

有时会有一些行中 field1: value1 相同,但其他一些信息要么相同,要么不同。我想过滤掉这些行,这样我就只 grep 出任何具有相同“field1:value1”元组的第一个实例。

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

谢谢!

【问题讨论】:

    标签: bash logging


    【解决方案1】:

    使用awk

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

    awk 程序使用数组来记录特定 'field1: value1' 字符串出现的次数,但仅在第一次打印传入的行。

    【讨论】:

      猜你喜欢
      • 2016-10-04
      • 1970-01-01
      • 2019-07-17
      • 1970-01-01
      • 2017-07-11
      • 1970-01-01
      • 2011-08-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多