Самый быстрый подход, вероятно, будет wc -l
.
Команда wc
оптимизирована для выполнения именно таких задач.Маловероятно, что все, что вы можете сделать (кроме как на более мощном оборудовании), будет быстрее.
Да, подсчет строк в текстовом файле объемом 5 гигабайт идет медленно.Это большой файл.
Единственная альтернатива - хранить данные в каком-то другом формате, например, в базе данных, возможно, в файле с записями фиксированной длины.Преобразование вашего текстового файла объемом 5 гигабайт в другой формат займет по крайней мере так же неправильно, как и запуск на нем wc -l
, но может стоить того, если вымного считать линии.Невозможно сказать, что компромиссы без дополнительной информации.