Что такое grep в Linux

«Что такое grep в Linux» — вопрос из категории Linux, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

grep (Global Regular Expression Print) — утилита командной строки Linux для поиска текста по шаблону (регулярным выражениям) в файлах или потоке данных.

Основные флаги:

  • -i — игнорировать регистр
  • -v — инвертировать поиск (вывести строки, не содержащие шаблон)
  • -r — рекурсивный поиск в директориях
  • -n — показывать номера строк

Примеры:

# Поиск слова "error" в файле
grep "error" log.txt

# Поиск с игнорированием регистра
grep -i "warning" log.txt

# Рекурсивный поиск в директории
grep -r "func main" /path/to/project

Аналог в Go:
Для подобного функционала можно использовать strings.Contains() или регулярные выражения (regexp).

if strings.Contains(line, "error") {
    fmt.Println(line)
}