Как следует из названия, grep или глобальная печать регулярных выражений позволяет вам искать определенные текстовые шаблоны в содержимом файла. Его функциональные возможности включают распознавание образов, определение чувствительности к регистру, поиск по нескольким файлам, рекурсивный поиск и многое другое.
Итак, независимо от того, являетесь ли вы новичком или системным администратором, вам будет полезно знать команду grep для эффективного поиска файлов. В этом руководстве объясняется, как использовать grep в Linux, и обсуждаются его различные приложения.
Как использовать команду Grep в Linux
Основная функция команды grep — поиск определенного текста внутри файла. Вы можете сделать это, введя следующую команду:
схватить 'text_to_search' файл.txt
Пожалуйста, замените «text_to_search» на текст, который вы хотите найти, и «file.txt» на целевой файл. Например, чтобы найти строку «Привет» в файле с именем file.txt, мы будем использовать:
схватить 'Привет' файл.txt
При вводе указанной выше команды grep просканирует файл Intro.txt на наличие «Привет». В результате он показывает вывод всей строки или строк, содержащих целевой текст.
Если путь к целевому файлу отличается от вашего текущего каталога, укажите этот путь вместе с именем файла. Например:
схватить 'Привет' ~ / Документы / файл.txt
Здесь знак тильды «~» обозначает ваш домашний каталог. В приведенном выше примере показано, как можно искать фрагмент текста в одном файле. Однако, если вы хотите выполнить один и тот же поиск в нескольких файлах одновременно, упомяните их последовательно в одной команде grep:
схватить 'Привет' file.txt Linux_info.txt Пароль.txt
Если вы не уверены в регистре вашей строки (верхнем или нижнем регистре), выполните поиск без учета регистра, используя параметр i:
схватить -я 'привет' Введение.txt
Хотя введенная строка не совпадала точно, мы получили точные результаты благодаря поиску без учета регистра. Если вы хотите инвертировать изменения и проверить файлы, которые не содержат определенный шаблон, используйте опцию v:
схватить -в 'Привет' file.txt Linux_info.txt Пароль.txt
Более того, если вы хотите отображать строки, начинающиеся с определенного слова, используйте символ «^». Он служит якорем, указывающим начало строки.
схватить '^Привет' файл.txt
Приведенные выше команды будут полезны только в том случае, если вы знаете, какой файл искать. В этом случае вы можете рекурсивно искать строку внутри всего каталога, используя опцию r. Например, давайте выполним поиск «Hello» в каталоге «Документы»:
схватить -р 'Привет' ~ / Документы
Кроме того, вы также можете подсчитать, сколько раз входная строка появляется в файле с помощью опции c:
схватить -с 'Привет' Введение.txt
Аналогичным образом вы можете отобразить номера строк вместе с совпадающими строками с помощью опции n:
схватить -н 'Привет' Введение.txt
Краткий обзор
Пользователи часто помнят, что файл раньше содержал фрагмент текста, но забывают имя файла, что может привести к серьезным проблемам. Следовательно, в этом руководстве речь шла об использовании команды grep для поиска текста в содержимом файла. Кроме того, мы использовали различные примеры, чтобы продемонстрировать, как можно настроить работу команды grep с помощью нескольких параметров. Вы можете поэкспериментировать, комбинируя несколько вариантов, чтобы выяснить, какой из них лучше всего подходит для вашего случая использования.