Команда ‘grep’

Команда ‘grep‘ позволяет искать по данным, которые поступают на ее вход. Направить данные в эту команду можно с помощью вертикальной черты, например:

$ ls -al | grep bash

Здесь используется две команды, разделенные вертикальной чертой. Команда ls выводит на экран список файлов, и полученный результат передается на вход команде ‘grep‘, которая ищет слово bash в входных данных.

Другой вариант использования команды grep, это поиск данных в файле. Например

$ cat .bashrc | grep alias

Команда слева выводит содержимое файла .bashrc, а правая команда ищет в результате строки, в которых есть слово alias.

Если необходимо просто найти информацию в файле, то можно обойтись одной командой grep без вертикальных линий и дополнительных команд. Формат команды следующий:

grep что где

Допустим, нам необходимо проверить, есть ли в файле /etc/hosts адрес сайта roadit.ru. Это можно сделать следующим образом

$ grep roadit.ru /etc/*

Данная команда осуществит поиск названия сайта «roadit.ru» во всех файлах каталога /etc. Так же можно искать во всех файлах, начинающихся на h:

$ grep roadit.ru /etc/h*

Либо полностью указать имя файла, где необходимо произвести поиск:

$ grep roadit.ru /etc/hosts

Опции.

-w — используется для нахождения соответствий только целым словам.

-i — для игнорирования регистра букв.

Данная команда найдет все строки, содержащие слова text в файле file, не зависимо от регистра букв, то есть Text, TEXT и т.д.

-l — позволяет вывести только имена файлов, содержащих искомые строки, но не сами строки

Слово ‘text’ содержится в файле file

Was this helpful?

0 / 1

Добавить комментарий 0