使用正则表达式从行中提取子字符串,并删除具有重复子字符串的行

use*_*637 0 regex linux bash awk sed

我有一个文本文件,其中包含以下形式的一些行

*,[anything, even blanks],[dog|log|frog],[dog|log|frog],[0|1],[0|1],[0|1]
Run Code Online (Sandbox Code Playgroud)

我想删除具有相同值*(不区分大小写)的重复行,即剩下的任何内容,[anything, even blanks],[dog|log|frog],[dog|log|frog],[0|1],[0|1],[0|1]

例如,这是一个示例文本文件

test,bar,log,dog,0,0,0
one
foo,bar,log,dog,0,0,0
/^test$/,bar,log,dog,0,0,0
one
FOO,,frog,frog,1,1,1
Run Code Online (Sandbox Code Playgroud)

生成的文本文件应该foo删除重复(只要重复项被删除,顺序对我来说无关紧要,只留下1个唯一的)

test,bar,log,dog,0,0,0
one
/^test$/,bar,log,dog,0,0,0
one
FOO,,frog,frog,1,1,1
Run Code Online (Sandbox Code Playgroud)

我能做到的最简单的bash命令是什么?

Ed *_*ton 5

awk -F, '!seen[tolower($1)]++' file
Run Code Online (Sandbox Code Playgroud)