#string #findstr
#строка #findstr
Вопрос:
Возможно ли выполнить поиск по списку строк (более 100), например, в текстовом файле, и с помощью такой команды, как findstr, определить, какие файлы содержат какие-либо из строк? Или есть лучшая альтернатива (в Windows)?
Комментарии:
1. Уверен, что это возможно. Запустите
findstr /?
, чтобы увидеть параметры, которые вам нужно будет использовать.
Ответ №1:
Вероятно, из справки по findstr, которую я нашел:
/G:file Получает строки поиска из указанного файла (/ обозначает консоль).
и
/S Выполняет поиск соответствующих файлов в текущем каталоге и во всех подкаталогах.
итак:
C:Temp>copy con strings.txt
test
test1
test2
^Z
1 file(s) copied.
Я создал (с помощью copy con возвращает меня обратно) 3 файла test.txt test1.txt и test2.txt и разместили строки, которые у нас есть из strings.txt в соответствующие файлы, а затем выполнил эту команду:
C:Temp>findstr /S /G:strings.txt *.txt
strings.txt:test
strings.txt:test1
strings.txt:test2
test.txt:test
test1.txt:test1
test2.txt:test2
Он действительно нашел их, и даже нашел все три из исходного файла strings.txt .
Комментарии:
1. Спасибо, да, в моем случае не с помощью *.txt, просто *, поэтому поиск будет осуществляться по всем типам файлов