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

Dav*_*ave 1 bash logging

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

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

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

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

谢谢!

che*_*ner 5

使用awk:

awk -F, '!arr[$1]++ { print }' LOGFILE
Run Code Online (Sandbox Code Playgroud)

awk程序使用一个数组来保持特定'field1:value1`字符串被看到的次数,但仅在第一次打印输入行.