【发布时间】:2019-04-26 20:09:26
【问题描述】:
我有一个 CSV 文件,我需要在其中删除 FIRST 字段匹配的条目,即使其他字段不匹配也是如此。此外,剩下的行应该是日期最高的其他字段之一所在的行。
这是我的数据的样子:
"47917244","000","OTC","20180718","7","2018","20180719","47917244","20180719"
"47917244","000","OTC","20180718","7","2018","20180731","47917244","20180731"
"47917244","000","OTC","20180718","7","2018","20180830","47917244","20180830"
所有 3 行在第一个字段中具有相同的值。第 9 个字段是一个日期字段,我想对它进行重复数据删除,保留日期值最高的第三行,但删除其他两行。
【问题讨论】:
-
您检查了
uniq的-f标志吗? -
如果您发布您迄今为止尝试过的内容,您将获得更好的结果。
-
@accdias 这与他想要的相反。
-f 1忽略第一个字段,但第一个字段是他想要唯一的字段。 -
@Barmar,我说要检查
-f而不是-f 1。 -
来自
man uniq关于-f标志:“避免比较前N 个字段” 也许我遗漏了一些东西,但是当它是“操作需要比较的前 N 个字段。Sort显然会产生更好的结果。