Как узнать, какой файл содержит результат grep?

linux unix grep

30 просмотра

1 ответ

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

cat *.txt | grep Ya_Mahdi

и grep показывает Ya_Mahdi.

Мне нужно знать, какой файл содержит текст. Является ли это возможным?

Автор: m.r226 Источник Размещён: 08.11.2019 11:03

Ответы (1)


4 плюса

Решение

Просто избавьтесь catи предоставьте список файлов grep:

grep Ya_Mahdi *.txt

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

Вы можете использовать findдля пуленепробиваемого решения:

find --maxdepth 1 -name '*.txt' -exec grep -H Ya_Mahdi {} +
Автор: Frank Schmitt Размещён: 20.08.2016 08:19
Вопросы из категории :
32x32