Забанен
Сообщения: 6345
Благодарности: 1436
|
Профиль
| Цитировать
Цитата Busla:
сортировка должна быть текстовая или числовая? »
|
И что делать с дублями?
На unix-like такое делается как два пальца, например вот в убунте WSL на винде 10 сортируем как числа с убиранием дублей, второй вариант - распараллеливаем на два потока для ускорения:
Код:
time $(sort -u -n 445.txt -o 445_sorted.txt)
real 0m0.799s
user 0m2.844s
sys 0m0.453s
time $(sort --parallel=2 -u -n 445.txt -o 445_sorted.txt)
real 0m1.071s
user 0m1.609s
sys 0m0.203s
Для очень больших файлов (гигабайты, десятки гигабайт и больше) имеет смысл применять сжатие временных файлов, напр. --compress-program=lzop и указывать специальную временную директорию --temporary-directory=/mnt/1TB_partition/
UPD нагуглил скрипт, использующий всё тот же sort, но c разбитием исходного файла на куски (split,sort,merge). Автор говорит, что так быстрее. Но проверить это можно только на реально большом файле, который не помещается в память.
|
Последний раз редактировалось Jula0071, 09-02-2020 в 14:26.
Отправлено: 13:58, 09-02-2020
| #16
|