Несколько примеров использования команды grep, основы Linux курс Тарту

Несколько примеров использования команды grep, основы Linux курс Тарту

Статьи

Невозможно представить себе серьезную работу с Линукс без использования фильтрации вывода. Потому что такая функция позволяет существенно экономить время. И заметно упрощает рутинные задачи в сфере системного администрирования. Сегодня мы расскажем о нескольких полезных примерах использования команды grep — это входит в основы Linux курс Тарту. И гарантированно поможет вам как на собеседовании, так и после трудоустройства в отрасли информационных технологий.

Отображение соседних строк в результатах фильтрации, основы Linux курс Тарту

Скорее всего, наши постоянные читателя уже представляют себе, как работает утилита grep. Однако для тех, кто лишь недавно присоединился к нашей компании, расскажем в двух словах. Данная утилита позволяет вывести на экран строки вывода / файла, соответствующие искомому шаблону. И это очень удобно, так как упрощает поиск нужной информации. Такое использование входит в базовый курс Linux Тарту.

Однако часто для лучшего понимания данных нужен также и контекст. К счастью, разработчики предусмотрели возможность выведения помимо строк, соседствующих с теми. В которых обнаружено совпадение с искомым регулярным выражением. Для этого введите команду grep с опцией -C и после пробела число. В таком случае команда покажет заданное количество соседних строк.

Если вас интересуют строки, идущие после искомого шаблона — введите опцию -A и число. Если же вам нужны строки, предшествующие искомому шаблону — то замените опцию на -B и укажите их количество. Этот простой прием существенно расширяет возможности использования команды для поиска нужной информации.

Применение инвертированных условий поиска в grep

Стоит отметить, что в некоторых случаях вы не будете знать точно, что ищете в тексте файла или вывода программы. Однако вы будете точно знать, какие данные вам не нужны. Предположим, что по работе вам нужно проанализировать содержимое большого файла с настройками. Большую часть которого составляют закомментированные строки с пояснениями.

Чтобы сделать текст более коротким и убрать все лишнее, достаточно применить инвертирование условий поиска. И задать в качестве искомого шаблона символ «#» («решетка»). При этом для инвертирования условий стоит добавить к команде grep опцию -v. Главное — не забудьте взять искомый шаблон в кавычки. В результате выполнения данной команды все строки с комментариями будут скрыты. И в выводе останутся лишь строки с параметрами. Чтобы узнать больше — советуем пройти наши курсы Red Hat Linux Тарту.

Рекурсивный поиск по всем каталогам с помощью grep

Другой важный прием использования команды grep — это рекурсивный поиск по содержимому каталога с подкаталогами. Давайте подробнее разберемся в примере использования этой функции. Введите в командную строку команду grep с опцией -r и добавьте к ней два аргумента:

  • сначала — искомый шаблон ‘sudo’;
  • затем — каталог для начала рекурсивного поиска ~/.

В результате утилита проверит все каталоги в вашем домашнем каталоге и предмет содержания искомого шаблона в файлах. Скорее всего, найдет совпадения в скрытом файле .bash_history. Содержащем историю использования команд в вашей учетной записи. В результате вы увидите все примеры использования команды sudo за последнее время. Согласитесь, это довольно удобно.

Скорее всего, в работе вам понадобятся и другие примеры использования этой интересной утилиты. Чтобы узнать больше и стать специалистом — советуем уже сегодня записаться на Linux курс лекций Тарту. Тем более, что пройти его на платформе SEDICOMM University можно онлайн. По индивидуальному графику, в своем темпе и с комфортным уровнем нагрузок.

Команда SEDICOMM University: Академия Cisco, Linux Professional Institute, Python Institute.