Можно ли заставить серебряный искатель искать файлы по списку или по цепочке?

Для вывода только имен файлов, соответствующих поиску, есть: ag -l

Что мне использовать, если я хочу выполнить поиск только по файлам из списка? Или, может быть, можно таким образом связать поиски?


ag
person yatsek    schedule 09.03.2018    source источник


Ответы (2)


Используйте стандартное перенаправление ввода:

ag "SEARCH_PATTERN" < file1, file,2, file3... 

Или используйте подстановочный знак для поиска целевых файлов с параметром -g. Шаблон будет выглядеть так:

ag -g "FILE_PATTERN" "SEARCH_PATTERN"  

Таким образом, пример будет следующим:

   ag -G '.*.txt' "pattern"

Или загружать файлы или шаблоны поиска в ag из файла .txt, содержащего список записей, используя цикл for оболочки; Например:

while IFS= read -r patterns; do ag -o "$patterns" ~/somewhere ; done < names.txt
person gregory    schedule 11.04.2018

На этой странице я увидел как тот факт, что ag -l возвращает список имен файлов, так и то, что ag принимает стандартный ввод файлов. Это заставило меня задуматься о другом способе, который отлично сработал для меня. Хотел поделиться

ag -l <first_search> | xargs ag -l <second_search> | xargs ag -l ...
person Iwnnay    schedule 25.06.2019