Как игнорировать несколько файлов с помощью `ag` Silver Searcher

Существует опция --ignore которая позволяет указывать файлы для игнорирования. На данный момент мне удалось игнорировать несколько файлов, выполнив --ignore file1 --ignore file2.......

Попытка использовать --ignore "*assets*|*scripts*" ничего не делает. Итак, есть ли улов, о котором я не знаю?

Вы можете использовать расширение скобок, например

 ag pattern --ignore={'*assets*','*scripts*'} path_to_search 

или, как предлагает Гленн , замещение процесса:

 ag pattern -p <(printf "*%s*\n" assets scripts) path_to_search 

формат –ignore pattern_to_exclude

 ➜ proj git:(develop) ✗ ag User -l | wc 82 82 2951 ➜ proj git:(develop) ✗ ag User -l --ignore 'tests*' | wc 65 65 2348 

доказательство

 ➜ exp tree . ├── good.py ├── migrations.py ├── test2.py ├── test_another.py └── tests.py ➜ for i in *.py; do echo "User" > $i; done ➜ exp ag -l --ignore 'test*' --ignore 'migrations*' User good.py 

поэтому был возвращен только один файл good.py , все остальные были отфильтрованы из-за шаблона

Вы можете добавить

 *assets* *scripts* 

в файл .gitignore или .ignore .

Из файла readme:

 It ignores file patterns from your .gitignore and .hgignore. If there are files in your source repo you don't want to search, just add their patterns to a .ignore file.