Моє запитання схоже на це питання, але має декілька різних обмежень:
- У мене є великий
\n
розділений список слів - одне слово на рядок. Розмір файлів коливається від 2 ГБ до 10 ГБ. - Мені потрібно видалити всі повторювані рядки.
- Процес може сортувати список під час вилучення дублікатів, але це не потрібно.
- На розділі є достатньо місця для розміщення нового унікального списку слів.
Я спробував обидва ці методи, але вони обидва не вдається з помилками в пам'яті.
sort -u wordlist.lst > wordlist_unique.lst
awk '!seen[$0]++' wordlist.lst > wordlist_unique.lst
awk: (FILENAME=wordlist.lst FNR=43601815) fatal: assoc_lookup: bucket-ahname_str: can't allocate 10 bytes of memory (Cannot allocate memory)
Які ще підходи я можу спробувати?
Перегляньте рішення, використовуючи awk unix.stackexchange.com/a/30178/56820
—
ezdazuzena