Команда grep — это утилита командной строки Linux, используемая для поиска какой-либо строки или файла в огромном количестве данных. Он выполняет поиск на основе регулярных выражений или строк. Grep фильтрует результат на основе предоставленного шаблона и отображает всю строку, с которой совпадает предоставленный шаблон. Операционная система Windows также предоставляет команды, эквивалентные команде Linux « схватить ». В Windows два приложения командной строки, то есть CMD и PowerShell, могут выполнять те же операции, что и grep в Windows.
В этом блоге будут продемонстрированы различные методы, которые считаются эквивалентом grep в Windows.
Способ 1: Эквивалентные команды grep в командной строке Windows
Командная строка в пользовательском интерфейсе командной строки Windows используется для выполнения команд для административного использования. Говорят, что команды «Findstr» и «Find» являются эквивалентом grep в Windows. Давайте обсудим эти команды одну за другой вместе с примерами:
Метод 1.1: команда Findstr как эквивалент Grep
Команда Findstr — это команда Windows, используемая для поиска файла, который содержит/соответствует определенной строке. Просмотрите приведенные ниже примеры, чтобы ознакомиться с основным использованием команды Findstr.
Пример 1. Использование Findstr для поиска файлов, созданных в указанную дату
Файлы могут быть расположены с использованием различных шаблонов, таких как дата, время и имя файла. Следующая команда извлечет все те файлы, которые были обновлены на дату « 29.07.2022 ». Для этого « ты ” передается с помощью “ Findstr ', указав дату ' 29.07.2022 ”:
> ты | Findstr 7 / 29 / 2022
Выводится список файлов, дата создания/обновления которых указана в команде.
Пример 2. Используйте строку Findstr, которая точно соответствует строке
Чтобы сопоставить строку или регулярное выражение, вам нужно использовать параметр «/X» с « Findstr команда:
> Findstr / Икс 'Добро пожаловать' * .текст
Мы искали ' Добро пожаловать ” из всех текстовых файлов и не найдено ни одного результата, точно соответствующего заданной строке:
Пример 3. Использование Findstr для поиска с учетом регистра
По умолчанию, если мы не указываем никакой опции, « Findstr ” выполнит поиск с учетом регистра:
> Findstr 'Добро пожаловать' * .текст
Для более четкого понимания феномена учета регистра мы провели поиск в разделе « добро пожаловать ” внутри всех “ текст » файлы:
Замечено, что не печатается результат, показывающий, что регистр слова не совпадает.
Пример 4. Использование Findstr для поиска без учета регистра
Используйте « /я ” вариант с “ Findstr ” для поиска без учета регистра. Следующая команда ищет « добро пожаловать ” строка внутри “ текст » файлы:
> Findstr / я 'добро пожаловать' * .текст
Печатаются все строки текстовых файлов, содержащие « добро пожаловать ключевое слово независимо от случая.
Метод 1.2: используйте команду Find как эквивалент Grep
Команда «Найти» — это команда Windows, используемая для поиска файлов, каталогов, задач, а также строк из файлов. Чтобы узнать, как использовать команду «Найти» в командной строке, следуйте приведенным ниже примерам.
Пример 1. Использование поиска для поиска указанной строки
Упомянутая ниже команда будет искать « добро пожаловать ” во всех текстовых файлах, присутствующих в текущем каталоге:
> Находить 'Добро пожаловать' * .текст
Соответствующие имена текстовых файлов и их строки печатаются в окне.
Пример 2. Использование поиска для поиска определенных задач
Как мы уже говорили, команда «Найти» используется для поиска строки, файлов, задач и каталогов. Давайте проверим использование команды «Найти» для поиска конкретной задачи. “ список заданий ” получит доступ ко всем задачам и отправит их в “ Находить ” команда с использованием канала “ | оператор. Затем ' Находить ” выведет указанную задачу на экран:
> список заданий | Находить 'Таскмгр'
Способ 2: Эквивалентные команды grep в Windows PowerShell
Windows PowerShell используется в качестве языка сценариев или инструмента командной строки для управления административными задачами, а также для создания и развертывания решений. В Windows PowerShell « Select-String ” используется как эквивалент команды grep.
Проверьте использование « Select-String ”, используя предоставленные примеры в Windows PowerShell.
Пример 1. Использование Select-String для поиска с учетом регистра
“ Select-String ” используется для поиска строк в файлах. Ознакомьтесь с приведенной ниже командой, чтобы понять использование « Select-String ”:
> Select-String -Дорожка 'Файл2.txt' -Шаблон 'Привет' -Деликатный случай
В приведенной выше команде:
-
- “ Select-String ” используется для поиска определенной строки.
- “ -Дорожка ” используется для определения местоположения файла.
- “ Шаблон ” определяет строку, которую мы ищем.
- В конце мы упомянули вариант « -Деликатный случай », чтобы сделать поиск чувствительным к регистру.
Строка (из текстового файла « файл.txt »), содержащий слово « Привет ” печатается в консоли PowerShell.
Пример 2. Использование Select-String для поиска строки, не соответствующей указанной строке
Использовать “ Select-String », чтобы узнать текст, не совпадающий с указанной строкой. Для этого мы упомянули « -Не соответствует ” в конце команды:
> Select-String -Дорожка 'Файл2.txt' -Шаблон 'Привет' -Не соответствует
Как видите, приведенная выше команда отобразила все строки, кроме « Привет ' от ' Файл2.txt ”:
Замечено, что строка, напечатанная на консоли, не содержит « Привет ' слово.
Вот и все! Вы узнали об эквивалентных командах Grep в Windows.
Вывод
Команда grep используется в Linux для поиска файлов и строк в файлах. “ Findstr ' а также ' Находить Команды командной строки Windows эквивалентны утилите командной строки Linux grep. Вы можете использовать « Select-String ” как команду grep в Windows PowerShell. В этом посте мы предоставили список примеров, демонстрирующих использование « Findstr », « Находить ', а также ' Выбирать – Нить », которые используются в качестве альтернативы Grep в Windows.