Утилиты find и findstr – поиск через командную строку |

Availability

Findstr.exe is an external command that is available for the following Microsoft operating systems.

Examples

findstr "computer help" myfile.txt

In the example above, any lines containing “computer help” would be printed to the screen.

findstr /s "computer help" *.txt

Similar to the first example, the code above would find lines containing “computer help” in any txt file in the current directory and all subdirectories.

findstr /x /c:"computer help" *.txt

Match .txt files that contain an exact match on “computer help”; therefore, files that contain “computer helps” or other non-exact matches are not shown. Realize though that using /x must be a line that exactly matches “computer help”; in other words, if anything else is on the same line, it’s not an exact match.

findstr /n /i /c:"computer help" *

Search for any file containing “computer help” regardless of its case and display the line where the text is found. Below is an example of how the results in the example above may look.

Windows vista and later syntax

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file] [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]] strings [[drive:][path]file name[ ...]]

You’ll need to use spaces to separate multiple search strings unless the argument is prefixed with /C. For example, ‘FINDSTR “hello there” x.y’ searches for “hello” or “there” in file x.y. ‘FINDSTR /C:”hello there” x.y’ searches for “hello there” in file x.y.

Regular expression quick reference:

Windows xp and earlier syntax

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file] [/C:string] [/G:file] [/D:dir list] [/A:color attributes][strings] [[drive:][path]file name[ ...]]

You’ll need to use spaces to separate multiple search strings unless the argument is prefixed with /C. For example, ‘FINDSTR “hello there” x.y’ searches for “hello” or “there” in file x.y. ‘FINDSTR /C:”hello there” x.y’ searches for “hello there” in file x.y.

:/>  Стикеры и заметки на рабочий стол Windows 10 – как создать за 1 мин.

Regular expression quick reference:

Утилита find командная строка

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] “искомые_значения” [[диск:][путь]имя_файла[ …]]

И так, смотрим на описание ключей:

[/V] – произвести вывод всех строк, которые НЕ содержат заданной.

[/C] – выводится только общее число строк, содержащих заданную.

[/N] – Вывод номеров отображаемых строк.

[/I] – Поиск без учета регистра символов.

[/OFF[LINE]] – Не пропускать файлы с установленным атрибутом “Автономный”.

“искомые_значения” – собственно, строчка, поиск которой производится из командной строки Windows

[[диск:][путь]имя_файла[ …]] – тут мы прописываем один или несколько имен документов, в которых нужно произвести поиск через командную строку, можно использовать подстановочные знаки.

Хорошо, теперь давайте попробуем написать несколько примеров.

Создадим на диске D: папку TEST, в который благополучно поместим три файла с расширениями  .pdf, .txt и .mf. Для начала попробуем найти слово “const” во всех документах с расширением txt:

FIND “const” D:TEST*.txt

На выходе мы получим следующую информацию:

Утилита findstr командная строка

Утилита CMD FINDSTR  предоставляется возможность осуществить поиск текста через командную строку не только в одном файле, или группе документов заданных по шаблону, но и с возможностью загрузки готового списка. И так, прежде всего, давайте посмотрим на основной синтаксис.

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:файл][/C:строчка] [/G:файл] [/D:список_папок] [/A:цвета] [/OFF[LINE]] “искомые_значения”[[диск:][путь]имя_файла[ …]]

/B – Данный ключ определяет поиск образца лишь в началах строчек.

/E – Данный ключ определяет поиск образца лишь в конце.

/R – Фразы и слова будут приниматься как регулярные выражения.

/S – Производит поиск файлов через командную строку в текущем каталоге и всех его подпапках.

:/>  Как найти скриншот на компьютере?

/I – Данный ключ определяет, что поиск фразы из командной строки будет вестись без учета регистра.

/X – Производит вывод только тех строчек, которые содержат точное совпадение.

/V – Производит вывод только тех строчек, которые не содержат точного совпадения с искомой фразой.

/N – Производит вывод номера строчки (которые содержат точное совпадение) и ее содержимое.

/M – Производит вывод лишь имени документа, который содержит совпадение.

/O – Вывести список найденных строк через пустую строчку.

/P – Данный параметр определяет, что произойдет пропуск всех строк, которые содержат непечатаемые символы.

/OFF[LINE] – Не пропускает те документы, у которых установлен атрибут “Автономный”.

/A:цвета – Шестнадцатеричный код цвета, для получения справки можете ввести команду “COLOR /?”

/F:файл – Производит чтение списка файлов из заданного документа.

/C:строчка – Использовать значение данного параметра как искомую фразу поиска.

/G:файл – Позволяет получить список строк из заданного документа.

/D:список_папок – Тут через точку с запятой мы можем задать список каталогов, в которых нужно произвести поиск через командную строку.

“искомые_значения” – Собственно, то, что мы ищем.

[диск:][путь]имя_файла – Задаем путь к документу (документам)

Что бы разделить между собой искомые фразы, между ними вставляется пробел, если параметр не содержит префикса /C. Например,

FINDSTR “Привет мир” data.txt

ищет “Привет” или “мир” в файле data.txt, а команда

FINDSTR /C:”Привет мир” data.txt

ищет фразу “Привет мир” в  файле data.txt.

Регулярные выражения являются своеобразным бонусом, которым не то, что оболочка, но и язык программирования не всегда может похвастаться. При поиске из командной строки, регулярные выражения позволяют задавать собственные шаблоны (для справки по некоторым значениям введите в cmd findstr/? ), они также используются в сценариях сервера Windows Script Host, за это отвечает отдельный объект.

Оставьте комментарий

Adblock
detector