Подтвердить что ты не робот

Silver Searcher - Как игнорировать файл

Согласно документам, это должно быть

--ignore PATTERN

У меня есть файл, содержащий теги с названием "теги". Я пробовал следующее, каждый из них по-прежнему ищет файл тега.

ag -Qt --ignore ".*tags" "asdf"

ag -Qt --ignore .*tags "asdf"

ag -Qt --ignore "tags" "asdf"

ag -Qt --ignore tags "asdf"

ag -Qt --ignore *tags

и никто из них не работает.

Если я использую то, что предлагалось здесь, тогда ag вообще не принимает его

Я попытался обойти это, переименовав его в temp.tags и используя шаблон *.tags, чтобы попытаться проигнорировать его, но он все равно не работает.

Любые идеи?

4b9b3361

Ответ 1

После некоторых исследований кажется, что это известная проблема, задокументированная здесь. Где, если вы выполните поиск --all -t ext (-t), он переопределит --ignore, так как он ищет все тексты. Эта проблема присутствует и для --unrestricted.

Ответ 2

Поместите список исключаемых файлов в .agignore.

Примечание: как упоминалось в @DenilsonSáMaia, .agignore будет устаревать в пользу .ignore geoff.greer.fm/2016/09/26/ignore

Ответ 3

Добавьте только несколько --ignore, по крайней мере это работает для меня:

ag -Qt --ignore ".*tags" --ignore asdf

Если вы не ставите кавычки, они интерпретируются как каталог, если вы ставите кавычки как PATTERN

Ответ 4

Я обнаружил, что --ignore не принимает регулярное выражение.

Это должно помочь:

ag --ignore="*_test.rb" "SomeAwesomeClass"

Ответ 5

Я пробовал ссылку, которую вы разместили (используя glob вместо regex), но удалил знак "=", и он сработал.

Ответ 6

Для меня следующие работы (в ag версия 0.18.1):

ag --ignore TAGS;*.pdf;*.json "search_term"

Ответ 7

Начиная с v2.2.0 (скорее всего, и более ранние версии; я просто перехожу к той версии, которая у меня есть), все эти ответы, похоже, не работают. Что сработало для меня:

ag searchterm --ignore=*.log --ignore=*.txt

Обратите внимание на = после опции ignore.

Ответ 8

Вы также можете создавать файлы .ignore, чтобы игнорировать вещи, которые есть в вашем исходном хранилище..ignore использует те же шаблоны, что и .gitignore и .hgignore. Использование .ignore может значительно улучшить скорость поиска.,

Если вам нужен глобальный файл .ignore, попробуйте добавить этот псевдоним:

alias ag='ag --path-to-ignore ~/.ignore' 

в ваш файл ~/.bash_profile (или аналогичный)

Ответ 9

Вы пробовали использовать одинарные кавычки? Я знаю, что определенно был в тупике, используя двойные кавычки и никаких кавычек, чтобы найти только одинарные кавычки.

ag -Qt --ignore '*tags'