Архив метки: grep

Если grep:argument list too long — ищем данные в несколько потоков

Бывает, если у вас большое количество файлов и вы хотите использовать для этого стандартный grep (например: grep -h pattern ./*), то вполне можете получить сообщение : argument list too long .

Чтобы избежать этого, можно использовать find и для ускорения процесса (железо вам позволяет это делать), то можно распаралелить потоки и воспользоваться следующей командной:

find . -type f -print0 | xargs -n1000 -r0P3 grep pattern

Где:

-n1000 — одновременно максимум 1000 файлов

P3 — используем паралельно 3 процессора

pattern — ваша строка для поиска