16 практических примеров команды grep в Linux
Мы используем команду grep для поиска контента в файле. Сейчас я объясню наиболее полезные команды grep, используя в Linux.
Пример текстового файла – я использую этот текстовый файл, чтобы объяснить все примеры ниже.
# cat lin1.txt This is my test file. I’m using vim editor here - Linuxinternetworks.com
1. Найти слово или фразу в указанной директории
# grep -inr “file” ./* ./lin1.txt:1:This is my test file.
Этот пример будет искать слово “файл” в каталогах. Он будет искать все файлы и каталоги в настоящем рабочем каталоге, чтобы найти нужный шаблон.
2. Найти слово или фразу в файле (с учетом регистра)
# grep “file” lin1.txt This is my test file.
Этот пример будет искать слово “файл” в файле lin1.txt и с учетом регистра.
3. Найти слово или фразу в файле (без учета регистра)
# grep -i “linuxinternetworks” lin1.txt - Linuxinternetworks.com
Этот пример будет искать слово “linuxinternetworks” в файле lin1.txt и это не зависит от регистра.
4. Используйте регулярное выражение, чтобы найти слово или фразу. Здесь использовано “. *” для пропущенных букв или слов
# grep -i “Lin.*net.*s.com” lin1.txt - Linuxinternetworks.com
Этот пример содержит регулярное выражение, и мы можем использовать “. *”, чтобы соответствовать определенным символам.
5. Подберем несколько шаблонов. Вариант “-е” используется для сопоставления более одного рисунка в команде grep. Он позволяет узнать больше, чем одно слово или фразу в заданном текстовом файле.
# grep -e “file” -e “editor” lin1.txt This is my test file. I’m using vim editor here
6. Переставить подборку. Иногда вам хочется найти переставленное в файле или каталоге. В этом случае вы должны использовать опцию “-v”, которая позволяет узнать, переставленное сопоставление с образцом в grep. Это НЕ операция
# grep -v “file” lin1.txt I’m using vim editor here - Linuxinternetworks.com
7. Подсчет моделей – Чтобы подсчитать количество имеющихся тем в файле или нескольких файлов вы должны опция “-c“
# grep -c “e” lin1.txt 3 # grep -c “editor” lin1.txt 1
8. Найдите названия файлов, которые соответствуют модели. Иногда у нас есть модели и нужно узнать названия файлов, которым соответствуют эти шаблоны. Для этого в команде grep вы должны использовать опцию “-l“
# grep -l “This” ./* ./lin1.txt ./lin2.txt ./lin3.txt
9. Обозначте линию “n” после сопоставления с образцом. Где n – число строк для обозначения после схемы поиска. Используйте опцию “-A” в команде grep
# grep -A 1 “This” lin1.txt This is my test file. I’m using vim editor here
В этом примере отображено 1 строку после шаблон поиска “This” 10. Маркирование линии “n” до сопоставления с образцом. Где n число строк, чтобы соответствовать до схемы поиска. Используйте опцию “-B” в команде grep
# grep -B 1 “editor” lin1.txt This is my test file. I’m using vim editor here
В этом примере отображается 1 строка перед поиском “editor“
11. Маркирование линии “n” вокруг сопоставления с образцом. Где n – число строк, которое соответствует ближайшим около шаблона поиска. Используйте опцию “-C” в команде grep.
# grep -C 2 “editor” lin1.txt This is my test file. I’m using vim editor here - Linuxinternetworks.com
В этом примере отображаются 2 строки до поиска “editor”
12. Показать только соответствующую строку – Опция “-о” позволяет получить только подходящий шаблон.
# grep -o “editor” lin1.txt editor
13. Узнайте подходящий шаблон с номером строки. Используйте опцию “-n“
# grep -n “editor” lin1.txt 2:I’m using vim editor here
14. Команда grep с AND оператором
Оператора AND в команде grep нет. Но вы можете использовать его, используя метод ниже
# grep -E “I’m.*here” lin1.txt I’m using vim editor here
15. Команда grep с оператором OR Вы можете использовать оператор OR в двух методах. См. примеры ниже
# grep ‘using|hello’ lin1.txt I’m using vim editor here # grep ‘using|here’ lin1.txt I’m using vim editor here # grep -E ‘using|hello’ lin1.txt I’m using vim editor here # grep -E ‘using|here’ lin1.txt I’m using vim editor here
16. Команда grep с оператором NOT. Он работает как перестановка шаблона согласования, как описано выше. Используйте опцию “-v”
# grep -v “using” lin1.txt This is my test file. - Linuxinternetworks.com
Свежие комментарии