#ag
#ag
Вопрос:
Мне пришлось игнорировать несколько каталогов, поэтому я попытался
ag --hidden --ignore '.git' --ignore 'plugged' -g ""
Но этот процесс повествования --ignore
каждый раз, когда я пытался игнорировать каталог, казался ненужным. Итак, я попробовал с завершением фигурной скобки bash, как показано ниже:
ag --hidden --ignore {.git,plugged} -g ""
Но это не сработало, и это справедливо. Потому что материал внутри фигурных скобок после завершения будет выглядеть как
ag --hidden --ignore .git plugged -g ""
Немного просмотрев, я попробовал:
ag --hidden --ignore={.git,plugged} -g ""
И это сработало. Но почему использование --ignore=PATTERN
дает тот же результат, что и --ignore PATTERN
, когда в документации (man ag) четко указано, как быть --ignore PATTERN
?
Ответ №1:
Это известная проблема с разбором командной строки ag
по сравнению с ее документацией. Смотрите:
- https://github.com/ggreer/the_silver_searcher/issues/778
- https://github.com/ggreer/the_silver_searcher/pull/707
В данном конкретном случае, поскольку ag
шаблон игнорирования правильно считывается со знаком равенства и без него, это больше похоже на недокументированную функцию, чем на короткое замыкание.