сортировка и уникальные CSV-файлы

используя команды linux, у меня есть CSV-файл в кавычках, который я отсортировал по первому столбцу, а затем по второму столбцу, теперь я хочу удалить дубликаты, где они совпадают в первом и втором столбце, как это можно сделать? uniq кажется недостаточным, или нет?


person user775187    schedule 13.06.2011    source источник


Ответы (2)


Вы можете перевернуть (обновить) файл, затем uniq, игнорируя первые поля N-2 (все, кроме первых двух столбцов), затем снова обработать.

rev | uniq -f N-2 -u | rev
person mjvotaw    schedule 13.06.2011

Ладно, теперь я лучше понимаю, что тебе нужно. Как насчет использования awk?

http://www.unix.com/shell-programming-scripting/62574-finding-duplicates-columns-removing-lines.html

person Swift    schedule 13.06.2011
comment
Может возникнуть проблема, если столбцов более 2. - person pavium; 13.06.2011
comment
Я уже отсортировал файл, и uniq не сработал бы с моим проблемным ограничением, я считаю строки одинаковыми, только если их первые два столбца совпадают. - person user775187; 13.06.2011
comment
Да, но uniq будет рассматривать всю строку, если только вы не скажете ему учитывать только первые два поля. Что-то вроде @mjvotaw предложил - person pavium; 13.06.2011