Вы когда-нибудь слышали о FINDSTR и Select-String ? Select-String-это командлет, который используется для поиска текста и шаблонов во входных строках и файлах. Он похож на grep в Linux и FINDSTR в Windows. В этом руководстве мы увидим, что и как использовать команды FINDSTR и Select-String в Windows 11/10.
Что такое FINDSTR и как использовать FINDSTR
FINDSTR-это команда, используемая для поиска определенного текста в файлах в Windows. Строка Find при кратком превращении стала FINDSTR. Он также используется для поиска файлов с определенным текстом. Существуют различные команды FINDSTR для выполнения различных функций. Впервые он был выпущен вместе с Windows 2000 Resource Kit под названием qgrep . Это встроенный инструмент в Windows, и его файл доступен в формате.exe. FINDSTR не выполняет поиск нулевых байтов, таких как пробелы, в формате Unicode.
Существуют некоторые основные правила использования команды findstr в командной строке или других интерпретаторах командной строки, разработанные Microsoft . Это:
Каждая команда FINDSTR должна содержать строку, за которой следует имя файла. Вы можете использовать буквальные символы и метасимволы в командах FINDSTR. Буквенные символы не имеют особого значения в синтаксисе. Буквы и цифры называются буквальными символами. Мета-символы-это символы, каждый из которых имеет определенное значение. Ниже приведены допустимые метасимволы в синтаксисе и их значения.
Вы должны создать текстовый файл с поиском c riteria в отдельной строке, если вы хотите найти несколько строк. Используйте пробелы между строками для поиска нескольких строк в одной команде, за исключением синтаксиса с/c.
Параметры и их значения в синтаксисе findstr
Использование команд findstr
1] Для поиска слова microsoft или windows в файле xy вы должны использовать:
findstr microsoft windows xy
2] Для поиска для слова microsoft windows в файле xy вы должны использовать:
findstr/c:”microsoft windows”xy
В приведенной выше команде/c используется для поиска указанного текста «Microsoft Windows» в файле.
3] Если вы хотите найти в текстовом файле twc.txt вхождения слова Microsoft с большой буквы, вы должны использовать:
findstr Microsoft twc.txt
4] Если вы хотите найти определенное слово Microsoft в каталоге и его подкаталогах, не придавая значения регистрам, используйте:
findstr/s/i Microsoft *. *
В приведенном выше синтаксисе/s используется для поиска в текущем каталоге и его подкаталогах./i используется для игнорирования регистра типа (заглавная M) в строке Microsoft.
5] Если вы хотите найти строки, начинающиеся с To с несколькими пробелами перед словом, и хотите отобразить номер строки, где строки встречаются, используйте:
findstr/b/n/r/c: ^ * To *.bas
6] Если вы хотите искать несколько строк в нескольких файлах с критерии поиска в stringlist.txt и список файлов в filelist.txt, и вы хотите увидеть результаты, хранящиеся в файле result.out, используйте:
findstr/g:stringlist.txt/f:filelist.txt > results.out
7] Если вы хотите найти файлы, содержащие слово thewindowsclub в определенном каталоге и его подкаталогах, используйте:
findstr/s/i/m \
8] Если вы хотите найти файлы, содержащие thewindowsclub и другие слова, начинающиеся с подобных тезисов, термометра и т. д., используйте:
findstr/s/i/m \ Это способы использования команд findstr в интерпретаторах командной строки, таких как командная строка и т. д. должны понимать каждый параметр и его функцию, а также метасимволы и их значение, чтобы писать синтаксис и регулярно использовать команду findstr. Представьте себе вы пишете фрагменты кода в PowerShell и потеряли из виду определенные строки и текст в этом файле PowerShell. Вам нужно найти это во многих тысячах строк кода в тысячах строк и слов. Появляется команда Select-String, которая позволяет вам искать строки и текст в этих входных файлах PowerShell. Он похож на grep в Linux. Select-String-это командлет, который используется для поиска текста и шаблонов во входных строках и файлах. Он похож на grep в Linux и FINDSTR в Windows. При использовании Select-String для поиска некоторого текста он находит первое совпадение в каждой строке и отображает имя файла, номер строки и всю строку, в которой произошло совпадение. Его можно использовать для поиска нескольких совпадений в строке или для отображения текста до или после совпадения или для получения результатов в логических выражениях, таких как True или False. Вы также можете использовать его для отображения всего текста, кроме совпадения с выражением, которое вы используете в команде. Подстановочные знаки, которые вы используете в FINDSTR, также можно использовать в Select-String. Кроме того, Select-String работает с различными кодировками файлов, такими как ASCII, Unicode и т. Д. Он использует Byte-Order-Mark (BOM) для определения кодировки файла. Если спецификация отсутствует в файле, Select-String примет файл как UTF8. Microsoft предусмотрела и разработала следующие параметры, которые будут использоваться в синтаксисе.. -AllMatches Он используется для поиска всех совпадений в строке, в отличие от первого совпадения в строке, которое обычно выполняет Select-Sting. -CaseSensitive Он означает, что совпадение чувствительно к регистру. По умолчанию Select-String не чувствителен к регистру. -Context Он используется для захвата указанного количества строк, которые вы вводите до и после строки соответствия. Если вы введете 1, он захватит одну строку до и после совпадения. -Culture В кодировании есть определенные культуры, такие как порядковый, инвариантный и т. Д. Этот параметр используется для указания культуры в синтаксисе. -Encoding Он используется для указания формата кодировки текста в таких файлах, как ASCII, UTF8, UTF7, Unicode, и т. д. -Exclude Этот параметр используется для исключения определенного текста из файла. -Include Этот параметр используется для включения определенного текста в файл. -InputObject Используется для указания текста для поиска. -List Он используется для получения списка файлов, соответствующих тексту. -LiteralPath Используется для указания пути для поиска. -NoEmphasis Как правило, Select-String выделяет совпадение в файле. Этот параметр используется, чтобы избежать выделения. -NotMatch Он используется для поиска текста, не соответствующего указанному шаблону. -Path Он используется для указания пути для поиска вместе с использованием подстановочных знаков. -Pattern Параметр используется для поиска совпадения в каждой строке в качестве шаблона. -Quiet Этот параметр используется для получения вывода в виде логических значений, таких как True или False. -Raw Он используется для просмотра только совпадающих объектов, а не для информации о совпадении. -SimpleMatch Параметр используется для указания простого совпадения, а не совпадения по регулярному выражению. FINDSTR-это исполняемый файл, созданный до эпохи PowerShell, который используется для поиска текста и строк в файлах. Select-String-это командлет PowerShell, который используется для поиска текста и шаблонов в файлах. По сравнению с FINDSTR, Select-String является более мощным и сложным командлетом, который отображает много информации о совпадении. Select-String-это PowerShell-эквивалент grep, доступный в Windows. Он работает так же, как grep, и предоставляет подробную информацию о совпадении в соответствии с параметрами, которые мы используем в синтаксисе. Да, FINDSTR работает в файлах Word. Но он не может показать найденные совпадения, даже если введенные вами строки присутствуют в файле. Он может давать результаты в двоичных файлах в форматах.doc, но не в форматах.docx по неизвестным техническим причинам. Связанное чтение : Как проверить версию PowerShell в Windows. Что такое Select-String и его параметры
Параметры Select-String
Разница между FINDSTR и Select-String
Что такое PowerShell, эквивалент grep?
Работает ли FINDSTR с файлами Word?