Как искать строку в нескольких файлах и возвращать имена файлов в PowerShell

Kak Iskat Stroku V Neskol Kih Fajlah I Vozvrasat Imena Fajlov V Powershell



PowerShell — это утилита Windows, позволяющая искать строки в нескольких файлах. Кроме того, он возвращает имена файлов, которые содержат соответствующую строку. PowerShell использует « строка выбора ' и ' ссл ” командлеты для поиска строк в нескольких файлах. В частности, «select-string» эквивалентен « схватить ” команды Linux, которая используется для поиска текстовых шаблонов в файлах.

Этот пост продемонстрирует различные методы поиска строки в нескольких файлах.

Как найти строку в файлах и вернуть имена файлов в PowerShell?

Эти перечисленные методы можно использовать для поиска строки в нескольких файлах:







Способ 1: поиск строки в нескольких файлах и возвращение имен файлов с помощью командлета «select-string»

Строку можно искать в нескольких файлах с помощью « строка выбора ” командлет. Этот командлет выбирает строки и ищет текстовые шаблоны в нескольких файлах следующим образом:



> Get-Childitem C:\Док -рекурсия | строка выбора -шаблон 'ЛинуксПодсказка'

Здесь:



  • Get-ChildItem Командлет используется для извлечения файла из указанного места.
  • -рекурсия ” флаг заставляет искать совпадающую строку во вложенных папках.
  • | Оператор канала используется для отправки вывода команды в качестве ввода следующей команды.
  • -шаблон Флаг определяет конкретную строку для поиска.

Вывод





Данный вывод указывает, что в соответствии с указанным шаблоном была возвращена совпавшая строка с соответствующими именами файлов.



Способ 2: поиск строки в нескольких файлах и возвращение имен файлов с помощью командлета «sls»

ссл ” является псевдонимом “ строка выбора ” и работает так же. “ ссл ” используется с “ лс ” командлет.

Мы предоставили пример, чтобы продемонстрировать работу « ссл ” для поиска строки в нескольких файлах:

> лс C:\Док - р | ссл 'ЛинуксПодсказка'

Здесь:

  • лс Командлет используется для вывода списка файлов и папок.
  • ” является псевдонимом “ -рекурсия Командлет, используемый для принудительного поиска строки во вложенных папках:

Можно заметить, что имена файлов с указанной строкой были успешно извлечены.

Заключение

Чтобы найти строку в нескольких файлах в PowerShell, используйте « строка выбора ' или ' ссл ” командлеты. В первом методе используйте «select-string» с командлетом «Get-ChildItem», флагами «-recurse» и «-pattern» и конвейером (|), который соединяет вывод одной команды с вводом другой. . В команде «sls» используйте все псевдонимы команд, использованных в первом подходе. Потому что «sls» — это псевдоним командлета «select-string». В этом посте представлено несколько методов поиска строки в нескольких файлах.