В вычислительной технике findstr — это команда в интерпретаторах командной строки ( оболочках ) Microsoft Windows [1] [2] и ReactOS . [3] Она используется для поиска определенной текстовой строки в компьютерных файлах . [4]
Команда отправляет указанные строки на стандартное устройство вывода . [5]
Она похожа на find
команду . Однако, в то время как find
команда поддерживает UTF-16 , findstr
не поддерживает. С другой стороны, findstr
поддерживает регулярные выражения , которые find
не поддерживают. findstr
Программа была впервые выпущена как часть Windows 2000 Resource Kit под названием qgrep
. [6]
findstr
не может искать нулевые байты, обычно встречающиеся в компьютерных файлах Unicode . [7]
FINDSTR флаги строк [диск:][путь]имя_файла[...]
Аргументы:
flags
Это может быть любая комбинация флагов, описанных ниже.strings
Текст для поиска.[drive:][path]filename
Указывает файл или файлы для поиска.Флаги:
/B
Соответствует шаблону, если находится в начале строки./E
Соответствует шаблону, если находится в конце строки./L
Использует строки поиска буквально./R
Использует строки поиска как регулярные выражения./S
Поиск соответствующих файлов в текущем каталоге и всех подкаталогах./I
Указывает, что поиск не будет чувствителен к регистру./X
Печатает строки, которые точно совпадают./V
Печатает только строки, не содержащие совпадений./N
Выводит номер строки перед каждой совпадающей строкой./M
Если файл содержит совпадение, выводит только имя файла./O
Печатает смещение символа перед каждой совпадающей строкой./P
Пропускать файлы с непечатаемыми символами./OFF[LINE]
Не пропускайте файлы с установленным атрибутом «офлайн»./A:attr
Указывает атрибут цвета с двумя шестнадцатеричными цифрами. См. "color /?"/F:file
Считывает список файлов из указанного файла (/ обозначает console)./C:string
Использует указанную строку как буквальную строку поиска./G:file
Получает строки поиска из указанного файла (/ обозначает console)./D:dir
Поиск в списке каталогов, разделенных точкой с запятойПримечание: Следующая команда отображает подробную справку по этой команде:
НАЙТИСТР /?
Сохраните запущенные службы в файле _services.txt и найдите в этом файле строки, содержащие слово «network» (без учета регистра):
@ echo off set searchstr = сеть чистый старт > _services.txt FINDSTR /I " %searchstr% " _services.txt пауза
вывод будет следующим:
Сетевые подключения Служба списка сетей Служба определения местоположения в сети Служба интерфейса сетевого магазина Windows Media Player Служба общего доступа к сети Нажмите любую клавишу, чтобы продолжить...