Исключение каталога из команды Grep для поиска по шаблону

Вот несколько способов добиться этого:

  1. Использование параметра «–exclude-dir»:

    grep -r "pattern" --exclude-dir="directory" path/to/search

    Этот метод позволяет исключить из поиска определенный каталог. Замените «шаблон» на желаемый шаблон поиска, «каталог» на каталог, который вы хотите исключить, а «путь/к/поиск» на путь, по которому вы хотите начать поиск.

  2. Использование опции «-I»:

    grep -rI "pattern" path/to/search | grep -v "directory"

    Этот метод использует две команды grep. Первая команда («-I») игнорирует двоичные файлы при поиске, а вторая команда («-v») отфильтровывает строки, содержащие исключенный каталог.

  3. Использование find и grep:

    find path/to/search -type f ! -path "*/directory/*" -exec grep -H "pattern" {} +

    Этот метод использует команду find для поиска файлов в указанном каталоге, исключая при этом нужный каталог. Затем выполняется команда grep для поиска шаблона в этих файлах.