Я пытаюсь удалить дубликаты из Inputfile.txt. Дублирующая логика применяется на основе определенных полей. Например, 911548.PP.K содержит эти поля как дубликаты 5319,4790,10/03/2017 — в нем есть три записи из трех, которые нам нужно удалить, что иметь более низкую дату в последнем поле. Согласно этой записи 04.10.2017 необходимо удалить и сохранить большую дату. В этом случае 911548.PP.K имеет две записи с одинаковой большей датой, поэтому выберите любую из них.
У меня есть другой сценарий, который не работает с приведенным ниже сценарием, этот ключ имеет две записи 154610.PP.K, но поля, которые мы проверяем, дублируют его разные. Например:
154610 5643,1293,10/03/2017 and
154610 9835,83932,10/03/2017
В этом случае следует удалить запись, поскольку повторяющиеся поля не совпадают, поэтому эти ключи не считаются дублирующейся записью.
Но нижеприведенная команда оболочки рассматривает эту запись как дублирующую, как это исправить?
awk -F ' |,' '{t=$NF;gsub("/","",t);if(b[$1]<t){a[$1]=$0;b[$1]=t}}END{for(x in a)print a[x]}' inputfile.txt
Входной файл.txt
194365.PP.K 06ae6a319ec8,7012,3692,10/03/2017,7,Q,MM,f9cd8.csv,4754454,csv,,405a1.csv,4,25139,txt,10/04/2017
911548.PP.K 876d4108-b08,5319,4790,10/03/2017,7,Q,NN,g8ijk.csv,4754454,csv,,e9051.csv,4,25139,txt,10/04/2017
154610.PP.K 9c9d9d2a-j9k,5643,1293,10/03/2017,7,Q,PP,6001j.csv,4754454,csv,,907a1.csv,4,25139,txt,10/04/2017
223410.PP.K ab16e77a-09j,8403,43011,10/03/2017,7,Q,OO,f2cd.csv,4754454,csv,,a97ai.csv,4,25139,txt,10/04/2017
234173.PP.K fa180bd-81d3,4608,4697,10/03/2017,7,Q,EC,0015d8.csv,4754454,csv,,we405.csv,4,25139,txt,10/04/2017
911548.PP.K 876d4108-b08,5319,4790,10/03/2017,7,Q,NN,g8ijk.csv,4754454,csv,,e9051.csv,4,25139,txt,10/05/2017
911548.PP.K 876d4108-b08,5319,4790,10/03/2017,7,Q,NN,g8ijk.csv,4754454,csv,,e9051.csv,4,25139,txt,10/05/2017
154610.PP.K 9c9d9d2a-j9k,9835,83932,10/03/2017,7,Q,PP,6001j.csv,4754454,csv,,907a1.csv,4,25139,txt,10/04/2017
Выходной файл.txt
194365.PP.K 06ae6a319ec8,7012,3692,10/03/2017,7,Q,MM,f9cd8.csv,4754454,csv,,405a1.csv,4,25139,txt,10/04/2017
154610.PP.K 9c9d9d2a-j9k,5643,1293,10/03/2017,7,Q,PP,6001j.csv,4754454,csv,,907a1.csv,4,25139,txt,10/04/2017
223410.PP.K ab16e77a-09j,8403,43011,10/03/2017,7,Q,OO,f2cd.csv,4754454,csv,,a97ai.csv,4,25139,txt,10/04/2017
234173.PP.K fa180bd-81d3,4608,4697,10/03/2017,7,Q,EC,0015d8.csv,4754454,csv,,we405.csv,4,25139,txt,10/04/2017
911548.PP.K 876d4108-b08,5319,4790,10/03/2017,7,Q,NN,g8ijk.csv,4754454,csv,,e9051.csv,4,25139,txt,10/05/2017
154610.PP.K 9c9d9d2a-j9k,9835,83932,10/03/2017,7,Q,PP,6001j.csv,4754454,csv,,907a1.csv,4,25139,txt,10/04/2017