Как извлечь строки из txt файла в Linux

Я только что понял это, должно быть, нужно было поспать на нем. Мне не хватает одного из дефисов в исключении. Должно быть, он считывал его как дополнительные параметры, не вызывая никаких синтаксических ошибок, а флаг контрольной суммы -c, вероятно, вызывал его замедление.

Спасибо всем за внимание!

0
24.04.2020, 11:15
2 ответа

Попробуйте это:

grep -F '.co.uk' file > filtered_file

-Fпозволяет grepискать фиксированную строку вместо шаблона, что делает его намного быстрее, особенно учитывая ваши 25 миллионов строк. Тогда вам также не нужно экранировать точки, которые являются специальными символами для шаблона.

Обратите внимание, что при этом также будут найдены такие строки, как example.co.uk.comили example.co.uk/index.html. Если вы хотите, чтобы .co.ukвсегда был в конце, используйте этот ответ .

4
19.03.2021, 02:26

Учитывая файл типа:

foo.co.uk
bar.co.uk
baz.foo.bar

используйте команду:

grep "\.co\.uk$" file

Выход:

foo.co.uk
bar.co.uk
4
19.03.2021, 02:26

Теги

Похожие вопросы