CMD Master
Назад до блогу
Arnošt Havelka

Пошук тексту у файлах за допомогою grep

Знайдіть рядки, що збігаються, у файлі, а регістр літер ігноруйте через grep -i.

Почати інтерактивний урок
Пошук тексту у файлах за допомогою grep

grep друкує лише ті рядки, які містять шаблон. Так ви шукаєте TODO у коді або витягуєте попередження з журналу, не відкриваючи весь файл.

Знайдіть рядки, що збігаються зі словом

Спочатку шаблон, потім ім’я файлу. Лапки захищають пробіли й спеціальні символи.

Спробуйте команду

Витягніть рядки, що збігаються, з файлу!

Складіть команду
grep
Термінал
C:\Users\User>grep 'TODO' code.js

Знайдіть позначку в коді:

Command Prompt
// TODO: fix bug function test() {}
C:\Users\User>cat code.js

Рядки без збігу лишаються прихованими. Якщо нічого не збіглося, grep нічого не друкує і ви знову бачите запрошення.

Ігнорувати регістр літер: grep -i

У журналах змішані WARN і warn. -i вважає їх одним словом.

printf '%s\n' 'WARN: Slow response' 'warn: timeout' > log.txt
grep -i 'warn' log.txt

Це надрукує і WARN: Slow response, і warn: timeout.

Command Prompt
warn: timeout
C:\Users\User>grep 'warn' log.txt

Почніть із шаблону в лапках і імені файлу. Додавайте -i, щойно регістр починає заважати.


Перевірка знань

1 / 3

Що друкує grep?

Посилання

Ці посилання на документацію надають авторитетну інформацію про команди, використані в цій статті.

Далі

Пошук файлів за іменем у Bash

Шукайте дерево через find . -name, а лише папки показуйте через -type d.