grep, какие альтернативы использовать в Windows
Команда грэп является важным инструментом для поиска текста в содержимом файлов или входных потоков. Его название происходит от Глобальная печать регулярных выражений: отражает его способность искать сложные закономерности в больших объемах текста.
grep — это утилита из командная строка доступны в системах Unix-подобный, в Linux и macOS. Отсутствует в Windows, он предназначен для поиск текста который удовлетворяет критериям, содержащимся в регулярном выражении или простой строке.
Как работает команда grep
При использовании grep команда считывает входные данные построчно и печатает строки, содержащие шаблон указанный пользователем.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Например, grep «error» log.txt ищет слово ошибка в файле с указанным именем (в данном случае это может быть файл реестра).
Опять же, grep -r “TODO” /path/project ищет строку TODO во всех файлах, содержащихся в указанном каталоге и в его подпапках: указанный параметр фактически создает рекурсивный поиск.
С помощью команды grep -c “предупреждение” error_log.txt можно даже подсчитать явления слова предупреждение в файле error_log.txt.
Самый простой регулярное выражение grep “^start” file.txt помогает найти все строки, начинающиеся с начинать в файле .txt.
Команда grep также предлагает возможность игнорировать регистр, обратить поиск (отобразить строки, не соответствующие указанной строке), отобразить номер строки для каждого совпадения, показать только имена файлов с совпадениями.
Что использовать в Windows как альтернативу grep
окно терминала Linux является мощным инструментом, поскольку позволяет в мгновение ока выполнять операции, которые было бы сложно и утомительно выполнять с помощью графического интерфейса.
Хотя Windows предлагает кое-что альтернатива к команде grep. Ниже мы видим лучшие подходы, которые можно применить.
команда findstr
Самый очевидный вариант — использовать историю findstr из командной строки. Например, следующий оператор проверяет наличие строки ошибка файл log.txt:
findstr “errore” log.txt
Следующая команда позволяет вам искать файлы в текущем каталоге и во всех подпапках (/S), игнорируя чувствительность к регистру (/I):
findstr /S /I “ошибка” *.txt
Командлет PowerShell
Более эффективной альтернативой является использование команды PowerShell Select-String. Следующий оператор позволяет вам искать указанную строку в текстовом файле:
Select-String -Pattern “errore” -Path “log.txt”
С этим синтаксис, вы также можете выполнять более сложный поиск. Например, в командлет то, что следует за строкой «ошибка 403», ищется полностью, а не разбивается на две части, как это происходит вместо этого. findstr:
Select-String – Pattern “403 error” – Path “log.txt”
PowerShell указывает не только имя файла, содержащего каждое вхождение, но и номер строки, в которой оно встречается.
Следующий командлет ищет вхождения указанной строки во всех файлах с расширением .txt. Файлы могут находиться как в указанном каталоге, так и в любых подпапках.
Get-ChildItem -Path “D:\Documenti” -Filter *.txt -Recurse | Select-String -Pattern “403 error”
Используйте Notepad++ для поиска внутри файлов
Популярный текстовый редактор Блокнот++ объединяет практическую функцию поиска текстов в файлах, хранящихся в системе.
Для этого просто нажмите на меню Исследоватьявляются Найти в файлах затем введите строку для поиска в поле Находки.
В Фильтрывы можете, например, указать *.txt в поле Папкадолжен быть указан каталог, в котором нужно искать.
Одним щелчком мыши ваш Найти всехNotepad++ отображает список всех файлов, содержащих искомую строку.
Получите доступ к файловой системе Windows из WSL и используйте grep
Windows 10 и Windows 11 позволяют запускать дистрибутивы Linux в окне и загружать программы-пингвины даже с графическим интерфейсом. Все это возможно благодаря виртуализации и ВСЛ (Подсистема Windows для Linux).
Предполагая, что вы установили, например, Убунту В Windows 10 или Windows 11 доступ к базовой файловой системе операционной системы Microsoft можно получить из окна WSL.
Для этого вы можете ввести следующую команду, чтобы перейти к папке, над которой вы хотите работать:
компакт-диск /mnt/d/Документы
В этом случае вы переходите в папку D:\Documents (можете сделать соответствующие замены в предыдущей команде).
На этом этапе можно использовать синтаксис команды grep, как описано в начале.
Вступительное изображение предоставлено: iStock.com – Аняберкут
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)