Búsqueda de sitios web

PowerShell: use cadena de selección y genere solo texto coincidente


Puede utilizar la siguiente sintaxis básica en PowerShell para utilizar el cmdlet Select-String para buscar líneas que contengan texto específico y generar solo el texto coincidente:

(Select-String ...-... $my_file).Matches.Value

Este ejemplo en particular busca el patrón …-…, que coincide con tres caracteres seguidos de un guión seguido de tres caracteres más.

Busca este patrón en cada línea del archivo especificado en la ruta en la variable $my_file y devuelve solo el texto coincidente en lugar de la línea completa.

El siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica.

Ejemplo: cómo utilizar una cadena de selección y generar solo texto coincidente en PowerShell

Supongamos que tenemos un archivo ubicado en la siguiente ruta:

c:\users\bobbi\employee_id.txt

Podemos usar el cmdlet Get-Content para ver el contenido completo de este archivo:

El archivo contiene seis líneas que proporcionan información sobre el número de identificación de varios empleados de alguna empresa.

Observe que cada ID de empleado tiene el mismo patrón:

  • Patrón de identificación de empleado: tres letras seguidas de un guión seguido de tres letras

Supongamos que queremos devolver el ID del empleado solo de cada línea.

Supongamos que intentamos utilizar la siguiente sintaxis para hacerlo:

Select-String ...-... $my_file

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Esto devuelve cada línea que contiene el patrón …-… en cualquier parte de la línea.

Para devolver solo el ID del empleado de cada línea, podemos usar la siguiente sintaxis:

(Select-String ...-... $my_file).Matches.Value

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Observe que solo se devuelven los ID de los empleados de cada línea en lugar de la línea completa.

Al usar .Matches.Value podemos devolver solo el patrón exacto que buscamos en lugar de la línea completa que contenía el patrón.

Nota: Puede encontrar la documentación completa para el cmdlet Select-String en PowerShell aquí.

Artículos relacionados